changeset 12733:b67c2d580a25 stable

maint: clean up top-level directory * build-aux/bootstrap: Rename from bootstrap. * build-aux/bootstrap.conf: Rename from bootstrap.conf. * build-aux/changelog.tmpl: Rename from changelog.tmpl. * build-aux/bootstrap.conf: Update for new file locations. * build-aux/common.mk: Rename from common.mk. * build-aux/diff-template: Rename from diff-template. * build-aux/mk-opts.pl: Rename from mk-opts.pl. * build-aux/mkinstalldirs: Rename from mkinstalldirs. * build-aux/move-if-change: Rename from move-if-change. * etc/CHECKLIST: Rename from CHECKLIST. * etc/HACKING: Rename from HACKING. * etc/NEWS.1: Rename from NEWS.1. * etc/NEWS.2: Rename from NEWS.2. * etc/NEWS.3: Rename from NEWS.3. * etc/OLD-ChangeLogs/ChangeLog: Rename from OLD-ChangeLogs/ChangeLog. * etc/OLD-ChangeLogs/ChangeLog.1: Rename from OLD-ChangeLogs/ChangeLog.1. * etc/OLD-ChangeLogs/doc-ChangeLog: Rename from OLD-ChangeLogs/doc-ChangeLog. * etc/OLD-ChangeLogs/libcruft-ChangeLog: Rename from OLD-ChangeLogs/libcruft-ChangeLog. * etc/OLD-ChangeLogs/liboctave-ChangeLog: Rename from OLD-ChangeLogs/liboctave-ChangeLog. * etc/OLD-ChangeLogs/scripts-ChangeLog: Rename from OLD-ChangeLogs/scripts-ChangeLog. * etc/OLD-ChangeLogs/src-ChangeLog: Rename from OLD-ChangeLogs/src-ChangeLog. * etc/OLD-ChangeLogs/test-ChangeLog: Rename from OLD-ChangeLogs/test-ChangeLog. * etc/PROJECTS: Rename from PROJECTS. * etc/README.Cygwin: Rename from README.Cygwin. * etc/README.Linux: Rename from README.Linux. * etc/README.MacOS: Rename from README.MacOS. * etc/README.MinGW: Rename from README.MinGW. * etc/README.Windows: Rename from README.Windows. * etc/README.devel: Rename from README.devel. * etc/README.ftp: Rename from README.ftp. * etc/README.gnuplot: Rename from README.gnuplot. * etc/README.kpathsea: Rename from README.kpathsea. * etc/README.mirrors: Rename from README.mirrors. * etc/README.snapshots: Rename from README.snapshots. * etc/gdbinit: Rename from gdbinit. * m4/acinclude.m4: Rename from acinclude.m4. * src/mkoctfile.cc.in: Rename from mkoctfile.cc.in. * src/mkoctfile.in: Rename from mkoctfile.in. * src/octave-config.cc.in: Rename from octave-config.cc.in. * src/octave-config.in: Rename from octave-config.in. * config.guess, config.sub, missing, octave-sh: Delete. * Makefile.am: Include build-aux/common.mk instead of common.mk. * examples/Makefile.am, libcruft/Makefile.am, liboctave/Makefile.am, liboctave/config-ops.sh, scripts/Makefile.am, src/DLD-FUNCTIONS/config-module.sh, test/Makefile.am, autogen.sh, doc/Makefile.am, doc/faq/Makefile.am, doc/icons/Makefile.am, doc/interpreter/Makefile.am, doc/interpreter/config-images.sh, doc/liboctave/Makefile.am, doc/refcard/Makefile.am, build-aux/common.mk, src/Makefile.am: Update for new file locations. * Makefile.am: Don't build mkoctfile or octave-config here. * README: Update INSTALL info. * build-aux/mkinstalldirs: Update to new version. * src/Makefile.am (mkoctfile, octave-config): New targets.
author John W. Eaton <jwe@octave.org>
date Fri, 10 Jun 2011 14:35:42 -0400
parents 10f6727fbaa8
children 8665c7957fdc 76e2c55906de
files CHECKLIST HACKING Makefile.am NEWS.1 NEWS.2 NEWS.3 OLD-ChangeLogs/ChangeLog OLD-ChangeLogs/ChangeLog.1 OLD-ChangeLogs/doc-ChangeLog OLD-ChangeLogs/libcruft-ChangeLog OLD-ChangeLogs/liboctave-ChangeLog OLD-ChangeLogs/scripts-ChangeLog OLD-ChangeLogs/src-ChangeLog OLD-ChangeLogs/test-ChangeLog PROJECTS README README.Cygwin README.Linux README.MacOS README.MinGW README.Windows README.devel README.ftp README.gnuplot README.kpathsea README.mirrors README.snapshots acinclude.m4 autogen.sh bootstrap bootstrap.conf build-aux/bootstrap build-aux/bootstrap.conf build-aux/changelog.tmpl build-aux/common.mk build-aux/diff-template build-aux/mk-opts.pl build-aux/mkinstalldirs build-aux/move-if-change changelog.tmpl common.mk config.guess config.sub diff-template doc/Makefile.am doc/faq/Makefile.am doc/icons/Makefile.am doc/interpreter/Makefile.am doc/interpreter/config-images.sh doc/liboctave/Makefile.am doc/refcard/Makefile.am etc/CHECKLIST etc/HACKING etc/NEWS.1 etc/NEWS.2 etc/NEWS.3 etc/OLD-ChangeLogs/ChangeLog etc/OLD-ChangeLogs/ChangeLog.1 etc/OLD-ChangeLogs/doc-ChangeLog etc/OLD-ChangeLogs/libcruft-ChangeLog etc/OLD-ChangeLogs/liboctave-ChangeLog etc/OLD-ChangeLogs/scripts-ChangeLog etc/OLD-ChangeLogs/src-ChangeLog etc/OLD-ChangeLogs/test-ChangeLog etc/PROJECTS etc/README.Cygwin etc/README.Linux etc/README.MacOS etc/README.MinGW etc/README.Windows etc/README.devel etc/README.ftp etc/README.gnuplot etc/README.kpathsea etc/README.mirrors etc/README.snapshots etc/gdbinit examples/Makefile.am gdbinit libcruft/Makefile.am liboctave/Makefile.am liboctave/config-ops.sh m4/acinclude.m4 missing mk-opts.pl mkinstalldirs mkoctfile.cc.in mkoctfile.in move-if-change octave-config.cc.in octave-config.in octave-sh scripts/Makefile.am src/DLD-FUNCTIONS/config-module.sh src/Makefile.am src/mkoctfile.cc.in src/mkoctfile.in src/octave-config.cc.in src/octave-config.in test/Makefile.am
diffstat 100 files changed, 105160 insertions(+), 108643 deletions(-) [+]
line wrap: on
line diff
--- a/CHECKLIST	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-Things to do before making a release:
-
-  * Ask testers for the type(s) of machines they are using.
-
-  * Update the version number in src/version.h.
-
-  * Update the version number in doc/refcard/refcard.tex.
-
-  * Add a `Version M.N.P released.' line to the ChangeLog.
-
-  * Update the NEWS file.
-
-  * Check the README file.
-
-  * Run autoconf, autoheader, and configure before making tar files.
-
-  * Update the NEWS and README.octave files in the anonymous ftp
-    directory.
--- a/HACKING	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,215 +0,0 @@
--*- outline -*-
-
-This file attempts to describe the rules to use when hacking Octave.
-DO NOT put this file into the distribution.
-
-* Working from the repository
-
-These notes are intended to help people working on sources checked-out from
-the savannah source code repository.
-These requirements do not apply when building from a distribution
-tarball.
-
-** Requirements
-
-We've opted to keep only the highest-level sources in the repository.
-This eases our maintenance burden, (fewer merges, etc.), but imposes
-more requirements on anyone wishing to build from the just-checked-out
-sources.  For example, you have to use the latest stable versions of
-the maintainer tools we depend upon, including:
-
-  - Autoconf <http://www.gnu.org/software/autoconf/>
-  - Automake <http://www.gnu.org/software/automake/>
-  - Bison <http://www.gnu.org/software/bison/>
-  - Flex <http://www.gnu.org/software/flex/>
-  - Git <http://git-scm.com/>
-  - Gnulib <http://www.gnu.org/software/gnulib/>
-  - GNU Make <http://www.gnu.org/software/make/>
-  - Gzip <http://www.gnu.org/software/gzip/>
-  - Libtool <http://www.gnu.org/software/libtool/>
-  - Mercurial <http://mercurial.selenic.com/>
-  - Perl <http://www.cpan.org/>
-  - Rsync <http://samba.anu.edu.au/rsync/>
-  - Tar <http://www.gnu.org/software/tar/>
-
-Only building the initial full source tree will be a bit painful.
-Later, after synchronizing from the repository, a plain `make' should
-be sufficient.
-
-** First checkout
-
-Obviously, if you are reading these notes, you did manage to check out
-this package from the repository.  For the record, you will find all the
-relevant information on downloading sources at:
-
-  http://www.gnu.org/software/octave/download.html
-
-After checking out Octave, you will need to run the autogen.sh script:
-
-  $ ./autogen.sh
-
-This script will examine the source tree and generate some Makefile
-fragments and then runs the bootstrap script.  The bootstrap script comes
-from gnulib, but is kept in the Octave source archive.  It should be
-updated from the gnulib sources as necssary.  The bootstrap script takes
-care of checking out a copy of gnulib, running the autotools, and
-generating the configure script.
-
-If you have a copy of gnulib in some directory apart from the Octave
-source tree, then pass the name of the directory containing gnulib-tool
-to the bootstrap script using the option: 
-
-  --gnulib-srcdir=DIRNAME
-
-If you have downloaded gnulib directly, DIRNAME will be the directory where
-gnulib was unpacked.  If you have installed gnulib using a package 
-manager, DIRNAME is likely to be /usr/bin or /usr/local/bin(where the
-gnulib-tool script resides).
-
-By using an external gnulib directory, you can share a single gnulib source
-tree among several projects.  Regardless of the location of the gnulib
-sources, the bootstrap script will try to update them if it appears
-that they are checked out using git.  Otherwise, it is your
-responsibility to keep the gnulib sources up to date.  They change
-frequently, so the best way to stay current is probably to use git to
-do the job.
-
-Additional options besides --gnulib-srcdir can be passed to autogen.sh and
-they will be forwarded without modification to the bootstrap script.
-
-Once the autogen.sh and bootstrap scripts complete successfully, you may
-run
-
-  $ ./configure
-  $ make
-  $ make check
-
-At this point, there should be no difference between your local copy,
-and the master copy:
-
-  $ hg diff
-
-should output no difference.
-
-** Coding style
-
-The most important advice is to follow any conventions you detect in the
-file being edited.  In addition, Octave maintainers have written a lot
-on the subject.  See "Appendix C: Tips and Standards" and
-"Appendix D: Contributing Guidelines" in the PDF documentation.
-
-* Bugs and patches
-
-See the file BUGS in this directory for more guidance on reporting bugs
-and preparing patches.
-
-* Code layout
-
-An overview of the directory layout of Octave's source files:
-
-  doc           -- Texinfo documentation for Octave
-
-  examples      -- some example files
-
-  libcruft      -- various numerical libraries (mostly Fortran)
-    amos           * bessel functions
-    blas-xtra      * wrappers for blas functions used in Octave
-    daspk          * large scale differential algebraic equation solver
-    dasrt          * differential algebraic equation solver with root finding
-    dassl          * differential-algebraic system solver
-    fftpack        * subroutines for fast fourier transforms
-    lapack-xtra    * wrappers for lapack functions used in Octave
-    misc           * miscellaneous utilities
-    odepack        * odinary differential equation solver
-    ordered-qz     * code for ordering eigenvalues for QZ factorization
-    quadpack       * subroutines for numerical integration
-    ranlib         * random number generators
-    slatec-err     * slatec error handling library
-    slatec-fn      * various special function subroutines
-
-  liboctave     -- the C++ interfaces to the numerical libraries and
-                   various OS facilities
-
-  scripts       -- functions written in the Octave language
-    audio          * play and record sound files (system dependent)
-    deprecated     * older deprecated functions
-    elfun          * elementary mathematical functions
-    @ftp           * ftp object class
-    general        * utility functions
-    geometry       * geometry algorithms
-    image          * image processing
-    help           * help subsystem functions
-    io             * input/output functions
-    linear-algebra * linear algebra stuff
-    miscellaneous  * stuff that doesn't fit anywhere else
-    optimization   * zero finders and minimizers
-    path           * functions for path manipulation
-    pkg            * the package manager
-    plot           * plotting functions
-    polynomial     * polynomial manipulation
-    set            * set manipulation
-    signal         * signal processing
-    sparse         * sparse matrix support
-    specfun        * special mathematical functions
-    special-matrix * functions for generating special types of matrices
-    startup        * initialization functions
-    statistics     * statistical functions, distributions, and tests
-    strings        * character string manipulation
-    testfun        * unit testing
-    time           * time and date functions
-
-  src           -- the interpreter itself
-
-  test          -- tests for the interpreter
-    test_*.m       * fixed tests for the interpreter
-    fntests.m      * script to run function tests embedded in C++ and .m files
-
-
-----
-John W. Eaton
-jwe@octave.org
-
-
-Last updated: Sat Jan 22 22:00:25 PST 2011
-
-################################################################################
-
-Copyright (C) 2009,2011 John W. Eaton
-
-This file is part of Octave.
-
-Octave is free software; you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 3 of the License, or (at
-your option) any later version.
-
-Octave is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with Octave; see the file COPYING.  If not, see
-<http://www.gnu.org/licenses/>.
-
-
-This file was adapted for Octave from the HACKING file that is part of
-GNU Bison, which contained the following Copyright notice:
-
-  Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009
-  Free Software Foundation, Inc.
-
-  This file is part of GNU Bison.
-
-  This program is free software: you can redistribute it and/or modify
-  it under the terms of the GNU General Public License as published by
-  the Free Software Foundation, either version 3 of the License, or
-  (at your option) any later version.
-
-  This program is distributed in the hope that it will be useful,
-  but WITHOUT ANY WARRANTY; without even the implied warranty of
-  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  GNU General Public License for more details.
-
-  You should have received a copy of the GNU General Public License
-  along with this program.  If not, see <http://www.gnu.org/licenses/>.
--- a/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include common.mk
+include build-aux/common.mk
 
 ## Avoid making multiple subdirs in parallel which can lead 
 ## to a confusing error message stream
@@ -36,39 +36,33 @@
   INSTALL \
   INSTALL.OCTAVE \
   NEWS \
-  NEWS.1 \
-  NEWS.2 \
-  NEWS.3 \
-  OLD-ChangeLogs/ChangeLog \
-  OLD-ChangeLogs/ChangeLog.1 \
-  OLD-ChangeLogs/doc-ChangeLog \
-  OLD-ChangeLogs/libcruft-ChangeLog \
-  OLD-ChangeLogs/liboctave-ChangeLog \
-  OLD-ChangeLogs/scripts-ChangeLog \
-  OLD-ChangeLogs/src-ChangeLog \
-  OLD-ChangeLogs/test-ChangeLog \
-  PROJECTS \
   README \
-  README.Cygwin \
-  README.gnuplot \
-  README.Linux \
-  README.MacOS \
-  README.MinGW \
-  README.Windows \
-  README.kpathsea \
   autogen.sh \
-  bootstrap \
-  bootstrap.conf \
-  gdbinit \
-  missing \
-  mk-opts.pl \
-  mkinstalldirs \
-  mkoctfile.cc.in \
-  mkoctfile.in \
-  move-if-change \
-  octave-config.cc.in \
-  octave-config.in \
-  octave-sh \
+  build-aux/bootstrap \
+  build-aux/bootstrap.conf \
+  build-aux/mk-opts.pl \
+  build-aux/mkinstalldirs \
+  build-aux/move-if-change \
+  etc/NEWS.1 \
+  etc/NEWS.2 \
+  etc/NEWS.3 \
+  etc/OLD-ChangeLogs/ChangeLog \
+  etc/OLD-ChangeLogs/ChangeLog.1 \
+  etc/OLD-ChangeLogs/doc-ChangeLog \
+  etc/OLD-ChangeLogs/libcruft-ChangeLog \
+  etc/OLD-ChangeLogs/liboctave-ChangeLog \
+  etc/OLD-ChangeLogs/scripts-ChangeLog \
+  etc/OLD-ChangeLogs/src-ChangeLog \
+  etc/OLD-ChangeLogs/test-ChangeLog \
+  etc/PROJECTS \
+  etc/README.Cygwin \
+  etc/README.Linux \
+  etc/README.MacOS \
+  etc/README.MinGW \
+  etc/README.Windows \
+  etc/README.gnuplot \
+  etc/README.kpathsea \
+  etc/gdbinit \
   run-octave.in
 
 include m4/module.mk
@@ -82,30 +76,7 @@
 	echo "Documentation disabled.  Cannot package distribution!" ; exit 1;
 endif
 
-if AMCOND_BUILD_COMPILED_AUX_PROGRAMS
-bin_PROGRAMS = \
-  mkoctfile \
-  octave-config
-
-mkoctfile_SOURCES =
-nodist_mkoctfile_SOURCES = mkoctfile.cc
-
-octave_config_SOURCES =
-nodist_octave_config_SOURCES = octave-config.cc
-
-BUILT_SOURCES = \
-  mkoctfile.cc \
-  octave-config.cc \
-  run-octave
-
-else
-bin_SCRIPTS = \
-  mkoctfile \
-  octave-config
-
-BUILT_SOURCES = \
-  run-octave
-endif
+BUILT_SOURCES = run-octave
 
 noinst_SCRIPTS = run-octave
 
@@ -134,27 +105,11 @@
 check: all
 	$(MAKE) -C test check
 
-if AMCOND_BUILD_COMPILED_AUX_PROGRAMS
-octave-config.cc: octave-config.cc.in Makefile
-	@$(do_subst_default_vals)
-
-mkoctfile.cc: mkoctfile.cc.in Makefile
-	@$(do_subst_config_vals)
-else
-octave-config: octave-config.in Makefile
-	@$(do_subst_default_vals)
-	chmod a+rx $@
-
-mkoctfile: mkoctfile.in Makefile
-	@$(do_subst_config_vals)
-	chmod a+rx $@
-endif
-
 run-octave: run-octave.in Makefile
 	@$(do_subst_script_vals)
 	chmod a+rx "$@"
 
-.gdbinit: gdbinit
+.gdbinit: etc/gdbinit
 	if [ -f .gdbinit ]; then \
 	  echo "refusing to overwrite .gdbinit with newer version from $<" 1>&2; \
 	else \
@@ -166,7 +121,7 @@
 .PHONY: AUTHORS BUGS INSTALL.OCTAVE
 
 ChangeLog:
-	(cd $(srcdir); hg log --style=changelog.tmpl --prune=b0e60ad4ae26 --only-branch=`hg branch`; echo ""; echo "See the files in the directory OLD-ChangeLogs for changes before 2011-04-19") > $@.t
+	(cd $(srcdir); hg log --style=changelog.tmpl --prune=b0e60ad4ae26 --only-branch=`hg branch`; echo ""; echo "See the files in the directory etc/OLD-ChangeLogs for changes before 2011-04-19") > $@.t
 	mv $@.t $@
 .PHONY: ChangeLog
 
--- a/NEWS.1	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1602 +0,0 @@
-Summary of changes for version 1.1.1:
-------------------------------------
-
-  * New built-in variables, default_return_value and
-    define_all_return_values.
-
-    If define_all_return_values is set to "false", Octave does not do
-    anything special for return values that are left undefined, and
-    you will get an error message if you try to use them.  For
-    example, if the function
-
-      function [x, y] = f ()
-        y = 1;
-      endfunction
-
-    is called as
-
-      octave:13> [a, b] = f ()
-
-    Octave will print an error message for the attempt to assign an
-    undefined value to `a'.
-
-    This is incompatible with Matlab, which will define the return
-    variable `x' to be the empty matrix.  To get the Matlab-like
-    behavior, you can set the variable define_all_return_values to
-    "true" (the default is "false") and default_return_value to `[]'
-    (the default).  Then, any return values that remain undefined when
-    the function returns will be initialized to `[]'.
-
-    If the function is called without explicitly asking for an output,
-    it will succeed.  This behavior is compatible and unchanged from
-    previous versions of Octave.
-
-  * New built-in variable suppress_verbose_help_message.  If set to
-    "true", Octave will not add additional help information to the end
-    of the output from the help command and usage messages for
-    built-in commands.  The default value is "false".
-
-  * New built-in variable PS4 is used as the prefix of echoed input
-    (enabled with the --echo-input (-x) option).
-
-  * The function size() now accepts an optional second argument.
-
-  * Output from `save - ...' now goes through the pager.
-
-  * The break statement may also be used to exit a function, for
-    compatibility with Matlab.
-
-  * The directory tree for installing Octave is now closer to
-    conforming with the current GNU standards.
-
-  * More bug fixes.
-
-Summary of changes for version 1.1.0:
-------------------------------------
-
-  * Octave now requires g++ 2.6.3 or later.  This change is necessary
-    to make template instantiations cleaner, and to avoid having to
-    have special cases in the code for earlier versions of gcc.
-
-  * A new data structure type has been added.  The implementation uses
-    an associative array with indices limited to strings, but the
-    syntax is more like C-style structures.  here are some examples of
-    using it.
-
-    Elements of structures can be of any type, including structures:
-
-      octave:1> x.a = 1;
-      octave:2> x.b = [1, 2; 3, 4];
-      octave:3> x.c = "string";
-      octave:4> x
-      x =
-
-      <structure: a b c>
-
-      octave:5> x.a
-      x.a = 1
-      octave:6> x.b
-      x.b =
-
-        1  2
-        3  4
-
-      octave:7> x.c
-      x.c = string
-      octave:8> x.b.d = 3
-      x.b.d = 3
-      octave:9> x.b
-      x.b =
-
-      <structure: d>
-
-      octave:10> x.b.d
-      x.b.d = 3
-
-    Functions can return structures:
-
-      octave:1> a = rand (3) + rand (3) * I;
-      octave:2> function y = f (x)
-      > y.re = real (x);
-      > y.im = imag (x);
-      > endfunction
-      octave:3> f (a)
-      ans =
-
-      <structure: im re>
-
-      octave:4> ans.im
-      ans.im =
-
-        0.093411  0.229690  0.627585
-        0.415128  0.221706  0.850341
-        0.894990  0.343265  0.384018
-
-      octave:5> ans.re
-      ans.re =
-
-        0.56234  0.14797  0.26416
-        0.72120  0.62691  0.20910
-        0.89211  0.25175  0.21081
-
-    Return lists can include structure elements:
-
-      octave:1> [x.u, x.s, x.v] = svd ([1, 2; 3, 4])
-      x.u =
-
-        -0.40455  -0.91451
-        -0.91451   0.40455
-
-      x.s =
-
-        5.46499  0.00000
-        0.00000  0.36597
-
-      x.v =
-
-        -0.57605   0.81742
-        -0.81742  -0.57605
-
-      octave:8> x
-      x =
-
-      <structure: s u v>
-
-    This feature should be considered experimental, but it seems to
-    work OK.  Suggestions for ways to improve it are welcome.
-
-  * Octave now supports a limited form of exception handling modeled
-    after the unwind-protect form of Lisp:
-
-      unwind_protect
-        BODY
-      unwind_protect_cleanup
-        CLEANUP
-      end_unwind_protect
-
-    Where BODY and CLEANUP are both optional and may contain any
-    Octave expressions or commands.  The statements in CLEANUP are
-    guaranteed to be executed regardless of how control exits BODY.
-
-    This is useful to protect temporary changes to global variables
-    from possible errors.  For example, the following code will always
-    restore the original value of the built-in variable
-    do_fortran_indexing even if an error occurs while performing the
-    indexing operation.
-
-      save_do_fortran_indexing = do_fortran_indexing;
-      unwind_protect
-        do_fortran_indexing = "true";
-        elt = a (idx)
-      unwind_protect_cleanup
-        do_fortran_indexing = save_do_fortran_indexing;
-      end_unwind_protect
-
-    Without unwind_protect, the value of do_fortran_indexing would not
-    be restored if an error occurs while performing the indexing
-    operation because evaluation would stop at the point of the error
-    and the statement to restore the value would not be executed.
-
-  * Recursive directory searching has been implemented using Karl
-    Berry's kpathsea library.  Directories below path elements that
-    end in // are searched recursively for .m files.
-
-  * Octave now waits for additional input when a pair of parentheses
-    is `open' instead of giving an error.  This allows one to write
-    statements like this
-
-      if (big_long_variable_name == other_long_variable_name
-          || not_so_short_variable_name > 4
-          && y > x)
-        some (code, here);
-
-    without having to clutter up the if statement with continuation
-    characters.
-
-  * Continuation lines are now allowed in string constants and are
-    handled correctly inside matrix constants.
-
-  * Both `...{whitespace}\n' and `\{whitespace}\n' can be used to
-    introduce continuation lines, where {whitespace} may include
-    spaces, tabs and comments.
-
-  * The script directory has been split up by topic.
-
-  * Dynamic linking mostly works with dld.  The following limitations
-    are known problems:
-
-    -- Clearing dynamically linked functions doesn't work.
-
-    -- Dynamic linking only works with dld, which has not been ported
-       to very many systems yet.
-
-    -- Configuring with --enable-lite-kernel seems to mostly work to
-       make nonessential built-in functions dynamically loaded, but
-       there also seem to be some problems.  For example, fsolve seems
-       to always return info == 3.  This is difficult to debug since
-       GDB doesn't appear to allow breakpoints to be set inside
-       dynamically loaded functions.
-
-    -- Octave uses a lot of memory if the dynamically linked functions
-       are compiled with -g.  This appears to be a limitation with
-       dld, and can be avoided by not using -g to compile functions
-       that will be linked dynamically.
-
-  * fft2 and ifft2 are now built-in functions.
-
-  * The `&&' and `||' logical operators are now evaluated in a
-    short-circuit fashion and work differently than the element by
-    element operators `&' and `|'.  See the Octave manual for more
-    details.
-
-  * Expressions like 1./m are now parsed as 1 ./ m, not 1. / m.
-
-  * The replot command now takes the same arguments as gplot or
-    gsplot (except ranges, which cannot be respecified with replot
-    (yet)) so you can add additional lines to existing plots.
-
-  * The hold command has been implemented.
-
-  * New function `clearplot' clears the plot window.  The name `clg'
-    is aliased to `clearplot' for compatibility with Matlab.
-
-  * The commands `gplot clear' and `gsplot clear' are equivalent to
-    `clearplot'.  (Previously, `gplot clear' would evaluate `clear' as
-    an ordinary expression and clear all the visible variables.)
-
-  * The Matlab-style plotting commands have been improved.  They now
-    accept line-style arguments, multiple x-y pairs, and other plot
-    option flags.  For example,
- 
-      plot (x, y, "@12", x, y2, x, y3, "4", x, y4, "+")
-
-    results in a plot with
-
-      y  plotted with points of type 2 ("+") and color 1 (red).
-      y2 plotted with lines.
-      y3 plotted with lines of color 4.
-      y4 plotted with points which are "+"s.
-
-    the help message for `plot' and `plot_opt' provide full
-    descriptions of the options.
-
-  * NaN is now dropped from plot data, and Inf is converted to a
-    very large value before calling gnuplot.
-
-  * Improved load and save commands:
-
-    -- The save and load commands can now read and write a new binary
-       file format.  Conversion to and from IEEE big and little endian
-       formats is handled automatically.  Conversion for other formats
-       has not yet been implemented.
-
-    -- The load command can now read Matlab .mat files, though it is
-       not yet able to read sparse matrices or handle conversion for
-       all data formats.
-
-    -- The save command can write Matlab .mat files.
-
-    -- The load command automatically determines the save format
-       (binary, ascii, or Matlab binary).
-
-    -- The default format for the save command is taken from the
-       built-in variable `default_save_format'.
-
-    -- The save and load commands now both accept a list of globbing
-       patterns so you can easily load a list of variables from a
-       file.
-
-    -- The load command now accepts the option -list, for listing the
-       variable names without actually loading the data.  With
-       -verbose, it prints a long listing.
-
-    -- The load command now accepts the option -float-binary, for
-       saving floating point data in binary files in single precision.
-
-  * who and whos now accept a list of globbing patterns so you can
-    limit the lists of variables and functions to those that match a
-    given set of patterns.
-
-  * New functions for manipulating polynomials
-      
-      compan     -- companion matrix corresponding to polynomial coefficients
-      conv       -- convolve two vectors
-      deconv     -- deconvolve two vectors
-      roots      -- find the roots of a polynomial
-      poly       -- characteristic polynomial of a matrix
-      polyderiv  -- differentiate a polynomial
-      polyinteg  -- integrate a polynomial
-      polyreduce -- reduce a polynomial to minimum number of terms
-      polyval    -- evaluate a polynomial at a point
-      polyvalm   -- evaluate a polynomial in the matrix sense
-      residue    -- partial fraction expansion corresponding to the ratio
-                    of two polynomials
-
-  * New functions for manipulating sets
-
-      create_set   -- create a set of unique values
-      complement   -- find the complement of two sets
-      intersection -- find the intersection of two sets
-      union        -- find the union of two sets
-
-  * New elementary functions:
-
-      acot   acoth   acsc   acsch
-      asec   asech   cot    coth
-      csc    csch    log2   sec
-      sech
-
-  * New special functions:
-
-      beta   -- beta function
-      betai  -- incomplete beta function
-      gammai -- incomplete gamma function
-
-  * New image processing functions:
-
-      colormap  -- set and return current colormap
-      gray      -- set a gray colormap
-      gray2ind  -- image format conversion
-      image     -- display an image
-      imagesc   -- scale and display an image
-      imshow    -- display images
-      ind2gray  -- image format conversion
-      ind2rgb   -- image format conversion
-      loadimage -- load an image from a file
-      ntsc2rgb  -- image format conversion
-      ocean     -- set a color colormap
-      rgb2ind   -- image format conversion
-      rgb2ntsc  -- image format conversion
-      saveimage -- save an image to a file
-
-  * New time and date functions:
-
-      tic          -- set wall-clock timer
-      toc          -- get elapsed wall-clock time, since timer last set
-      etime        -- another way to get elapsed wall-clock time
-      cputime      -- get CPU time used since Octave started
-      is_leap_year -- is the given year a leap year?
-
-  * Other new functions:
-
-      bug_report -- submit a bug report to the bug-octave mailing list
-
-      toascii -- convert a string to a matrix of ASCII character codes
-
-      octave_tmp_file -- generate a unique temporary file name
-
-      undo_string_escapes -- replace special characters in a string by
-                             their backslash forms
-
-      is_struct -- determine whether something is a structure data type
-
-      feof   -- check EOF condition for a specified file
-      ferror -- check error state for a specified file
-      fread  -- read binary data from a file
-      fwrite -- write binary data to a file
-
-      file_in_path -- check to see if named file exists in given path
-
-      kbhit  -- get a single character from the terminal
-
-      axis   -- change plot ranges
-      hist   -- plot histograms
-
-      diary  -- save commands and output to a file
-
-      type   -- show the definition of a function
-      which  -- print the type of an identifier or the location of a
-                function file
-
-      isieee  -- Returns 1 if host uses IEEE floating point
-      realmax -- Returns largest floating point number
-      realmin -- Returns smallest floating point number
-
-      gcd     -- greatest common divisor
-      lcm     -- least common multiple
-
-      null    -- orthonormal basis of the null space of a matrix
-      orth    -- orthonormal basis of the range space of a matrix
-
-      fft2    -- two-dimensional fast fourier transform
-      ifft2   -- two-dimensional inverse fast fourier transform
-      filter  -- digital filter
-      fftfilt -- filter using fft
-      fftconv -- convolve to vectors using fft
-      sinc    -- returns sin(pi*x)/(pi*x)
-      freqz   -- compute the frequency response of a filter
-
-  * The meaning of nargin (== args.length ()) in built-in functions
-    has been changed to match the meaning of nargin in user-defined
-    functions.
-
-  * Variable return lists.  Octave now has a real mechanism for
-    handling functions that return an unspecified number of values,
-    so it is no longer necessary to place an upper bound on the number
-    of outputs that a function can produce.
-
-    Here is an example of a function that uses the new syntax to
-    produce n values:
-
-      function [...] = foo (n)
-        for i = 1:n
-          vr_val (i * x);
-        endfor
-      endfunction
-
-  * New keyword, all_va_args, that allows the entire list of va_args
-    to be passed to another function.  For example, given the functions
-
-      function f (...)
-        while (nargin--)
-          disp (va_arg ())
-        endwhile
-      endfunction
-      function g (...)
-        f ("begin", all_va_args, "end")
-      endfunction
-
-    the statement
-
-      g (1, 2, 3)
-
-    prints
-
-      begin
-      1
-      2
-      3
-      end
-
-    all_va_args may be used more than once, but can only be used
-    within functions that take a variable number of arguments.
-
-  * If given a second argument, svd now returns an economy-sized
-    decomposition, eliminating the unnecessary rows or columns of U or
-    V.
-
-  * The max and min functions correctly handle complex matrices in
-    which some columns contain real values only.
-
-  * The find function now handles 2 and 3 output arguments.
-
-  * The qr function now allows computation of QR with pivoting.
-
-  * hilb() is much faster for large matrices.
-
-  * computer() is now a built-in function.
-
-  * pinv() is now a built-in function.
-
-  * The output from the history command now goes through the pager.
-
-  * If a function is called without assigning the result, nargout is
-    now correctly set to 0.
-
-  * It is now possible to write functions that only set some return
-    values.  For example, calling the function
-
-      function [x, y, z] = f () x = 1; z = 2; endfunction
-
-    as
-
-      [a, b, c] = f ()
-
-    produces:
-
-      a = 1
-
-      b = [](0x0)
-
-      c = 2
-
-  * The shell_cmd function has been renamed to system (the name
-    shell_cmd remains for compatibility).  It now returns [output, status].
-
-  * New built-in variable `OCTAVE_VERSION'.  Also a new function,
-    version, for compatibility with Matlab.
-
-  * New built-in variable `automatic_replot'.  If it is "true", Octave
-    will automatically send a replot command to gnuplot each time the
-    plot changes.  Since this is fairly inefficient, the default value
-    is "false".
-
-  * New built-in variable `whitespace_in_literal_matrix' allows some
-    control over how Octave decides to convert spaces to commas in
-    matrix expressions like `[m (1)]'.
-
-    If the value of `whitespace_in_literal_matrix' is "ignore", Octave
-    will never insert a comma or a semicolon in a literal matrix list.
-    For example, the expression `[1 2]' will result in an error
-    instead of being treated the same as `[1, 2]', and the expression
-
-      [ 1, 2,
-        3, 4 ]
-
-    will result in the vector [1 2 3 4] instead of a matrix.
-
-    If the value of `whitespace_in_literal_matrix' is "traditional",
-    Octave will convert spaces to a comma between identifiers and `('.
-    For example, given the matrix
-
-      m = [3 2]
-
-    the expression
-
-      [m (1)]
-
-    will be parsed as
-
-      [m, (1)]
-
-    and will result in
-
-      [3 2 1]
-
-    and the expression
-
-      [ 1, 2,
-        3, 4 ]
-
-    will result in a matrix because the newline character is converted
-    to a semicolon (row separator) even though there is a comma at the
-    end of the first line (trailing commas or semicolons are ignored).
-    This is apparently how Matlab behaves.
-
-    Any other value for `whitespace_in_literal_matrix' results in
-    behavior that is the same as traditional, except that Octave does
-    not convert spaces to a comma between identifiers and `('.
-    For example, the expression
-
-      [m (1)]
-
-    will produce 3.  This is the way Octave has always behaved.
-
-  * Line numbers in error messages for functions defined in files and
-    for script files now correspond to the file line number, not the
-    number of lines after the function keyword appeared.
-
-  * Octave now extracts help from script files.  The comments must
-    come before any other statements in the file.
-
-  * In function files, the first block of comments in the file will
-    now be interpreted as the help text if it doesn't look like the
-    Octave copyright notice.  Otherwise, Octave extracts the first set
-    of comments after the function keyword.
-
-  * The function clock is more accurate on systems that have the
-    gettimeofday() function.
-
-  * The standard output stream is now automatically flushed before
-    reading from stdin with any of the *scanf() functions.
-
-  * Expanded reference card.
-
-  * The Octave distribution now includes a frequently asked questions
-    file, with answers.  Better answers and more questions (with
-    answers!) are welcome.
-
-  * New option --verbose.  If Octave is invoked with --verbose and not
-    --silent, a message is printed if an octaverc file is read while
-    Octave is starting.
-
-  * An improved configure script generated by Autoconf 2.0.
-
-  * Lots of bug fixes.
-
-Summary of changes for version 1.0:
-----------------------------------
-
-  * C-style I/O functions now handle files referenced by name or by
-    number more consistently.
-
-Summary of changes for version 0.83:
------------------------------------
-
-  * Loading global symbols should work now.
-
-  * Clearing the screen doesn't reprint the prompt unnecessarily.
-
-  * The operations <complex scalar> OP <real matrix> for OP == +, -,
-    *, or ./ no longer crash Octave.
-
-  * More portability and configuration fixes.
-
-Summary of changes for version 0.82:
------------------------------------
-
-  * Octave now comes with a reference card.
-
-  * The manual has been improved, but more work remains to be done.
-
-  * The atanh function now works for complex arguments.
-
-  * The asin, acos, acosh, and atanh functions now work properly when
-    given real-valued arguments that produce complex results.
-
-  * SEEK_SET, SEEK_CUR, and SEEK_END are now constants.
-
-  * The `using' qualifier now works with gplot and gsplot when the
-    data to plot is coming directly from a file.
-
-  * The strcmp function now works correctly for empty strings.
-
-  * Eliminated bogus parse error for M-files that don't end with `end'
-    or `endfunction'.
-
-  * For empty matrices with one nonzero dimension, the +, -, .*, and
-    ./ operators now correctly preserve the dimension.
-
-  * Octave no longer crashes if you type ^D at the beginning of a line
-    in the middle of defining a loop or if statement.
-
-  * On AIX systems, Back off on indexing DiagArray via Proxy class to
-    avoid gcc (or possibly AIX assembler?) bug. 
-
-  * Various other bug and portability fixes.
-
-Summary of changes for version 0.81:
------------------------------------
-
-  * Octave no longer dumps core if you try to define a function in
-    your .octaverc file.
-
-  * Fixed bug in Array class that resulted in bogus off-diagonal
-    elements when computing eigenvalue and singular value
-    decompositions.
-
-  * Fixed bug that prevented lsode from working on the SPARCstation,
-    at least with some versions of Sun's f77.  This bug was introduced
-    in 0.80, when I changed LSODE to allow the user to abort the
-    integration from within the RHS function.
-
-  * Fixed bug that prevented global attribute of variables from being
-    saved with save(), and another that prevented load() from working
-    at all.
-
-Summary of changes for version 0.80:
------------------------------------
-
-  * I have started working on a manual for the C++ classes.  At this
-    point, it is little more than a list of function names.  If you
-    would like to volunteer to help work on this, please contact
-    maintainers@octave.org.
-
-  * The patterns accepted by the save and clear commands now work like
-    file name globbing patterns instead of regular expressions.  I
-    apologize for any inconvenience this change may cause, but file
-    name globbing seems like a more reasonable style of pattern
-    matching for this purpose.
-
-  * It is now possible to specify tolerances and other optional inputs
-    for dassl, fsolve, lsode, npsol, qpsol, and quad.  For each of
-    these functions, there is a corresponding function X_options,
-    which takes a keyword and value arguments.  If invoked without any
-    arguments, the X_options functions print a list of possible
-    keywords and current values.  For example,
-
-      npsol_options ()
-
-    prints a list of possible options with values, and
-
-      npsol_options ("major print level", 10)
-
-    sets the major print level to 10.
-
-    The keyword match is not case sensitive, and the keywords may be
-    abbreviated to the shortest unique match.  For example,
-
-      npsol_options ("ma p", 10)
-
-    is equivalent to the statement shown above.
-
-  * The new built-in variable save_precision can be used to set the
-    number of digits preserved by the ASCII save command.
-
-  * Assignment of [] now works in most cases to allow you to delete
-    rows or columns of matrices and vectors.  For example, given a
-    4x5 matrix A, the assignment
-
-      A (3, :) = []
-
-    deletes the third row of A, and the assignment
-
-      A (:, 1:2:5) = []
-
-    deletes the first, third, and fifth columns.
-
-  * Variable argument lists.  Octave now has a real mechanism for
-    handling functions that take an unspecified number of arguments,
-    so it is no longer necessary to place an upper bound on the number
-    of optional arguments that a function can accept.
-
-    Here is an example of a function that uses the new syntax to print
-    a header followed by an unspecified number of values:
-
-      function foo (heading, ...)
-        disp (heading);
-        va_start ();
-        while (--nargin)
-          disp (va_arg ());
-        endwhile
-      endfunction
-
-    Note that the argument list must contain at least one named
-    argument (this restriction may eventually be removed), and the
-    ellipsis must appear as the last element of the argument list.
-
-    Calling va_start() positions an internal pointer to the first
-    unnamed argument and allows you to cycle through the arguments
-    more than once.  It is not necessary to call va_start() if you
-    do not plan to cycle through the arguments more than once.
-
-  * Recursive functions should work now.
-
-  * The environment variable OCTAVE_PATH is now handled in the same
-    way as TeX handles TEXINPUTS.  If the path starts with `:', the
-    standard path is prepended to the value obtained from the
-    environment.  If it ends with `:' the standard path is appended to
-    the value obtained from the environment.
-
-  * New functions, from Kurt Hornik (hornik@neuro.tuwien.ac.at) and
-    the Department of Probability Theory and Statistics TU Wien,
-    Austria:
-
-     corrcoef    -- corrcoef (X, Y) is the correlation between the i-th
-                    variable in X and the j-th variable in Y
-                    corrcoef (X) is corrcoef (X, X)
-     cov         -- cov (X, Y) is the covariance between the i-th
-                    variable in X and the j-th variable in Y
-                    cov (X) is cov (X, X)
-     gls         -- generalized least squares estimation
-     kurtosis    -- kurtosis(x) = N^(-1) std(x)^(-4) SUM_i (x(i)-mean(x))^4 - 3
-                    If x is a matrix, return the row vector containing
-                    the kurtosis of each column
-     mahalanobis -- returns Mahalanobis' D-square distance between the
-                    multivariate samples X and Y, which must have the
-                    same number of components (columns), but may have
-                    a different number of observations (rows)
-     ols         -- ordinary least squares estimation
-     pinv        -- returns the pseudoinverse of X; singular values
-                    less than tol are ignored
-     skewness    -- skewness (x) = N^(-1) std(x)^(-3) SUM_i (x(i)-mean(x))^3
-                    if x is a matrix, return the row vector containing
-                    the skewness of each column
-
-  * Errors in user-supplied functions called from dassl, fsolve,
-    lsode, npsol, and quad are handled more gracefully.
-
-  * Programming errors in the use of the C++ classes within Octave
-    should no longer cause Octave to abort.  Instead, Octave's error
-    handler function is called and execution continues as best as is
-    possible.  This should result in eventually returning control to
-    the top-level Octave prompt.  (It would be nice to have a real
-    exception handling mechanism...)
-
-  * A number of memory leaks have been eliminated.  Thanks to
-    Fong Kin Fui <fui@ee.nus.sg> for reporting them.
-
-  * The C++ matrix classes are now derived from a generic
-    template-based array class.
-
-  * The readline function operate-and-get-next (from bash) is now
-    available and bound to C-O by default.
-
-  * Octave now uses the version of readline currently distributed with
-    bash-1.13.  On some systems, interactive invocations of Octave
-    will now blink the cursor to show matching parens.
-
-  * By default, include files are now installed in
-    $prefix/include/octave instead of $prefix/include.
-
-  * Octave now uses a config.h file instead of putting all defines on
-    the compiler command line.
-
-Summary of changes for version 0.79:
------------------------------------
-
-  * New control systems functions:
-
-     dgram -- Returns the discrete controllability and observability gramian.
-     dlqr  -- Discrete linear quadratic regulator design.
-     dlqe  -- Discrete linear quadratic estimator (Kalman Filter) design.
-     c2d   -- Convert continuous system description to discrete time
-              description assuming zero-order hold and given sample time.
-
-  * The max (min) functions can now return the index of the max (min)
-    value as a second return value.
-
-Summary of changes for version 0.78:
------------------------------------
-
-  * Octave's handling of global variables has been completely
-    rewritten.  To access global variables inside a function, you must
-    now declare them to be global within the function body.  Likewise,
-    if you do not declare a variable as global at the command line,
-    you will not have access to it within a function, even if it is
-    declared global there.  For example, given the function
-
-      function f ()
-        global x = 1;
-        y = 2;
-      endfunction
-
-    the global variable `x' is not visible at the top level until the
-    command
-
-      octave:13> global x
-
-    has been evaluated, and the variable `y' remains local to the
-    function f() even if it is declared global at the top level.
-
-    Clearing a global variable at the top level will remove its global
-    scope and leave it undefined.  For example,
-
-      octave:1> function f ()   # Define a function that accesses
-      >  global x;              #   the global variable `x'.
-      >  x
-      > endfunction
-      octave:2> global x = 1    # Give the variable `x' a value.
-      octave:3> f ()            # Evaluating the function accesses the
-      x = 1                     #   global `x'.
-      octave:4> clear x         # Remove `x' from global scope, clear value.
-      octave:5> x = 2           # Define new local `x' at the top level
-      x = 2
-      octave:6> f               # The global `x' is no longer defined.
-      error: `x' undefined near line 1 column 25
-      error: evaluating expression near line 1, column 25
-      error: called from `f'
-      octave:7> x               # But the local one is.
-      x = 2
-
-  * The new function, `is_global (string)' returns 1 if the variable
-    named by string is globally visible.  Otherwise, returns 0.
-
-  * The implementation of `who' has changed.  It now accepts the
-    following options:
-
-      -b -builtins   -- display info for built-in variables and functions
-      -f -functions  -- display info for currently compiled functions
-      -v -variables  -- display info for user variables
-      -l -long       -- display long info
-
-    The long output looks like this:
-
-      octave:5> who -l
-
-      *** currently compiled functions:
-
-      prot  type               rows   cols  name
-      ====  ====               ====   ====  ====
-       wd   user function         -      -  f
-
-      *** local user variables:
-
-      prot  type               rows   cols  name
-      ====  ====               ====   ====  ====
-       wd   real scalar           1      1  y
-
-      *** globally visible user variables:
-
-      prot  type               rows   cols  name
-      ====  ====               ====   ====  ====
-       wd   complex matrix       13     13  x
-
-    where the first character of the `protection' field is `w' if the
-    symbol can be redefined, and `-' if it has read-only access.  The
-    second character may be `d' if the symbol can be deleted, or `-'
-    if the symbol cannot be cleared.
-
-  * The new built-in variable ignore_function_time_stamp can be used
-    to prevent Octave from calling stat() each time it looks up
-    functions defined in M-files.  If set to "system", Octave will not
-    automatically recompile M-files in subdirectories of
-    $OCTAVE_HOME/lib/VERSION if they have changed since they were last
-    compiled, but will recompile other M-files in the LOADPATH if they
-    change.  If set to "all", Octave will not recompile any M-files
-    unless their definitions are removed with clear.  For any other
-    value of ignore_function_time_stamp, Octave will always check to
-    see if functions defined in M-files need to recompiled.  The
-    default value of ignore_function_time_stamp is "system".
-
-  * The new built-in variable EDITOR can be used to specify the editor
-    for the edit_history command.  It is set to the value of the
-    environment variable EDITOR, or `vi' if EDITOR is not set, or is
-    empty.
-
-  * There is a new built-in variable, INFO_FILE, which is used as the
-    location of the info file.  Its initial value is
-    $OCTAVE_HOME/info/octave.info, so `help -i' should now work
-    provided that OCTAVE_HOME is set correctly, even if Octave is
-    installed in a directory different from that specified at compile
-    time.
-
-  * There is a new command line option, --info-file FILE, that may be
-    used to set Octave's idea of the location of the info file.  It
-    will override any value of OCTAVE_INFO_FILE found in the
-    environment, but not any INFO_FILE="filename" commands found in
-    the system or user startup files. 
-
-  * Octave's Info reader will now recognize gzipped files that have
-    names ending in `.gz'.
-
-  * The save command now accepts regular expressions as arguments.
-    Note that these patterns are regular expressions, and do not work
-    like filename globbing.  For example, given the variables `a',
-    `aa', and `a1', the command `save a*' saves `a' and `aa' but not
-    `a1'.  To match all variables beginning with `a', you must use an
-    expression like `a.*' (match all sequences beginning with `a'
-    followed by zero or more characters).
-
-  * Line and column information is included in more error messages.
-
-Summary of changes for version 0.77:
------------------------------------
-
-  * Improved help.  The command `help -i topic' now uses the GNU Info
-    browser to display help for the given topic directly from the
-    Texinfo documentation.
-
-  * New function: chol -- Cholesky factorization.
-
-Summary of changes for version 0.76:
------------------------------------
-
-  * Better run-time error messages.  Many now include line and column
-    information indicating where the error occurred.  Octave will also
-    print a traceback for errors occurring inside functions. If you
-    find error messages that could use improvement, or errors that
-    Octave fails to catch, please send a bug report to
-    bug@octave.org.
-
-  * If gplot (or gsplot) is given a string to plot, and the string
-    does not name a file, Octave will pass the string along to gnuplot
-    directly.  This allows commands like
-
-      gplot "sin (x)" w l, data w p
-
-    to work (assuming that data is a variable containing a matrix of
-    values).
-
-  * Long options (--help, --version, etc.) are supported.
-
-Summary of changes for version 0.75:
------------------------------------
-
-  * The documentation is much more complete, but still could use a lot
-    of work.
-
-  * The history function now prints line numbers by default.  The
-    command `history -q' will  omit them.
-
-  * The clear function now accepts regular expressions.
-
-  * If gplot (or gsplot) is given a string to plot, and the string
-    names a file, Octave attempts to plot the contents of the file.
-
-  * New functions:
-
-    history:
-
-      run_history  -- run commands from the history list.
-      edit_history -- edit commands from the history list with your
-                      favorite editor.
-
-    linear algebra:
-
-      balance         -- Balancing for algebraic and generalized
-                         eigenvalue problems.
-      givens          -- Givens rotation.
-      is_square       -- Check to see if a matrix is square.
-      qzhess          -- QZ decomposition of the matrix pencil (a - lambda b).
-      qzval           -- Generalized eigenvalues for real matrices.
-      syl             -- Sylvester equation solver.
-
-    control systems:
-
-      is_symmetric    -- Check to see if a matrix is symmetric.
-      abcddim         -- Check dimensions of linear dynamic system [A,B,C,D].
-      is_controllable -- Check to see if [A,B,C,D] is controllable.
-      is_observable   -- Check to see if [A,B,C,D] is observable.
-      are             -- Solve algebraic Ricatti equation.
-      dare            -- Solve discrete-time algebraic Ricatti equation.
-      lqe             -- Kalman filter design for continuous linear system.
-      lqr             -- Linear Quadratic Regulator design.
-      lyap            -- Solve Lyapunov equation.
-      dlyap           -- Solve discrete Lyapunov equation.
-      tzero           -- Compute the transmission zeros of [A,B,C,D].
-
-Summary of changes for version 0.74:
------------------------------------
-
-  * Formal parameters to functions are now always considered to be
-    local variables, so things like
-
-      global x = 0
-      global y = 0
-      function y = f (x) x = 1; y = x; end
-      f (x)
-
-    result in the function returning 1, with the global values of x
-    and y unchanged.
-
-  * Multiple assignment expressions are now allowed to take indices,
-    so things like
-
-      octave:13> [a([1,2],[3,4]), b([5,6],[7,8])] = lu ([1,2;3,4])
-
-    will work correctly.
-
-Summary of changes for version 0.73:
------------------------------------
-
-  * Saving and loading global variables works correctly now.
-
-  * The save command no longer saves built-in variables.
-
-  * Global variables are more reliable.
-
-  * Matrices may now have one or both dimensions zero, so that
-    operations on empty matrices are now handled more consistently.
-
-    By default, dimensions of the empty matrix are now printed along
-    with the empty matrix symbol, `[]'.  For example:
-
-      octave:13> zeros (3, 0)
-      ans = 
-
-      [](3x0)
-
-    The new variable `print_empty_dimensions' controls this behavior.
-    
-    See also Carl de Boor, An Empty Exercise, SIGNUM, Volume 25,
-    pages 2--6, 1990, or C. N. Nett and W. M. Haddad, A
-    System-Theoretic Appropriate Realization of the Empty Matrix
-    Concept, IEEE Transactions on Automatic Control, Volume 38,
-    Number 5, May 1993.
-
-  * The right and left division operators `/' and `\' will now find a
-    minimum norm solution if the system is not square, or if the
-    coefficient matrix is singular.
-
-  * New functions:
-
-      hess   -- Hessenberg decomposition
-      schur  -- Ordered Schur factorization
-      perror -- print error messages corresponding to error codes
-                returned from the functions fsolve, npsol, and qpsol
-                (with others to possibly be added later).
-
-  * Octave now prints a warning if it finds anything other than
-    whitespace or comments after the final `end' or `endfunction'
-    statement.
-
-  * The bodies of functions, and the for, while, and if commands are
-    now allowed to be empty.
-
-  * Support for Gill and Murray's QPSOL has been added.  Like NPSOL,
-    QPSOL is not freely redistributable either, so you must obtain
-    your own copy to be able to use this feature.  More information
-    about where to find QPSOL and NPSOL are in the file README.NLP.
-
-Summary of changes for version 0.72:
------------------------------------
-
-  * For numeric output, columns are now lined up on the decimal point.
-    (This requires libg++-2.3.1 or later to work correctly).
-
-  * If octave is running interactively and the output intended for the
-    screen is longer than one page and a pager is available, it is
-    sent to the pager through a pipe.  You may specify the program to
-    use as the pager by setting the variable PAGER.  PAGER may also
-    specify a command pipeline.
-
-  * Spaces are not always significant inside square brackets now, so
-    commands like
-
-      [ linspace (1, 2) ]
-
-    will work.  However, some possible sources of confusion remain
-    because Octave tries (possibly too hard) to determine exactly what
-    operation is intended from the context surrounding an operator.
-    For example:
-
-    -- In the command 
-
-         [ 1 - 1 ]
-
-       the `-' is treated as a binary operator and the result is the
-       scalar 0, but in the command
-
-         [ 1 -1 ]
-
-       the `-' is treated as a unary operator and the result is the
-       vector [ 1 -1 ].
-
-    -- In the command
-
-         a = 1; [ 1 a' ]
-
-       the single quote character `'' is treated as a transpose operator
-       and the result is the vector [ 1 1 ], but in the command
-
-         a = 1; [ 1 a ' ]
-
-       an error message indicating an unterminated string constant is
-       printed.
-
-  * Assignments are just expressions now, so they are valid anywhere
-    other expressions are.  This means that things like
-
-      if (a = n < m) ... endif
-
-    are valid.  This is parsed as:  compare `n < m', assign the result
-    to the variable `a', and use it as the test expression in the if
-    statement.
-
-    To help avoid errors where `=' has been used but `==' was
-    intended, Octave issues a warning suggesting parenthesis around
-    assignments used as truth values.  You can suppress this warning
-    by adding parenthesis, or by setting the value of the new built-in
-    variable `warn_assign_as_truth_value' to 'false' (the default
-    value is 'true').
-
-    This is also true for multiple assignments, so expressions like
-
-      [a, b, c] = [u, s, v] = expression
-
-    are now possible.  If the expression is a function, nargout is set
-    to the number of arguments for the right-most assignment.  The
-    other assignments need not contain the same number of elements.
-    Extra left hand side variables in an assignment become undefined.
-
-  * The default line style for plots is now `lines' instead of
-    `points'.  To change it, use the `set data style STYLE' command.
-
-  * New file handling and I/O functions:
-
-      fopen    -- open a file for reading or writing
-      fclose   -- close a file
-      fflush   -- flush output to a file
-      fgets    -- read characters from a file
-      frewind  -- set file position to the beginning of a file
-      fseek    -- set file position
-      ftell    -- tell file position
-      freport  -- print a report for all open files
-      fscanf   -- read from a file
-      sscanf   -- read from a string
-      scanf    -- read from the standard input
-
-  * New built-in variables for file and I/O functions:
-
-      stdin    -- file number corresponding to the standard input stream.
-      stdout   -- file number corresponding to the standard output stream.
-      stderr   -- file number corresponding to the standard error stream.
-
-    The following may be used as the final (optional) argument for
-    fseek: 
-
-      SEEK_SET -- set position relative to the beginning of the file.
-      SEEK_CUR -- set position relative to the current position.
-      SEEK_END -- set position relative to the end of the file.
-
-  * New function: setstr -- convert vectors or scalars to strings
-    (doesn't work for matrices yet).
-
-  * If possible, computer now prints the system type instead of
-    always printing `Hi Dave, I'm a HAL-9000'.
-
-  * Octave now properly saves and restores its internal state
-    correctly in more places.  Interrupting Octave while it is
-    executing a script file no longer causes it to exit.
-
-  * Octave now does tilde expansion on each element of the LOADPATH.
-
-  * A number of memory leaks have been plugged.
-
-  * Dependencies for C++ source files are now generated automatically
-    by g++.
-
-  * There is a new command line option, -p PATH, that may be used to
-    set Octave's loadpath from the command line.  It will override any
-    value of OCTAVE_PATH found in the environment, but not any
-    LOADPATH="path" commands found in the system or user startup files.
-
-  * It is now possible to override Octave's default idea of the
-    location of the system-wide startup file (usually stored in
-    $(prefix)/lib/octave/octaverc) using the environment variable
-    OCTAVE_HOME.  If OCTAVE_HOME has a value, Octave will look for
-    octaverc and its M-files in the directory $OCTAVE_HOME/lib/octave.
-
-    This allows people who are using binary distributions (as is
-    common with systems like Linux) to install the real octave binary
-    in any directory (using a name like octave.bin) and then install
-    a simple script like this
-
-      #!/bin/sh
-      OCTAVE_HOME=/foo/bar/baz
-      export OCTAVE_HOME
-      exec octave.bin
-
-    to be invoked as octave.
-
-
-Summary of changes for version 0.71:
------------------------------------
-
-  * Much improved plotting facility.  With this release, Octave does
-    not require a specially modified version of gnuplot, so gnuplot
-    sources are no longer distributed with Octave.  For a more
-    detailed description of the new plotting features, see the file
-    PLOTTING.
-
-  * New plotting commands:
-
-      plot            -- 2D plots
-      semilogx        -- 2D semilog plot with logscale on the x axis
-      semilogy        -- 2D semilog plot with logscale on the y axis
-      loglog          -- 2D log-log plot
-      mesh            -- 3D mesh plot
-      meshdom         -- create matrices for 3D plotting from two vectors
-      contour         -- contour plots of 3D data
-      bar             -- create bar graphs
-      stairs          -- create stairstep plots
-      polar           -- 2D plots from theta-R data
-      grid            -- turn plot grid lines on or off
-      xlabel, ylabel  -- place labels on the x and y axes of 2D plots
-      sombrero        -- demonstrate 3D plotting
-      gplot           -- 2D plot command with gnuplot-like syntax
-      gsplot          -- 3D plot command with gnuplot-like syntax
-      set             -- set plot options with gnuplot syntax
-      show            -- show plot options with gnuplot syntax
-      closeplot       -- close stream to gnuplot process
-      purge_tmp_files -- delete temporary files created by plot command
-
-  * Other new commands:
-
-      ls, dir         -- print a directory listing
-      shell_cmd       -- execute shell commands
-      keyboard        -- get input from keyboard, useful for debugging
-      menu            -- display a menu of options and ask for input
-      fft             -- fast fourier transform
-      ifft            -- inverse fast fourier transform
-
-  * Strings may be enclosed in either single or double quote
-    characters.  Double quote characters are not special within single
-    quote strings, and single quotes are not special within double
-    quote strings.
-
-  * Command name completion now works for M-file names too.
-
-  * Better help and usage messages for many functions.
-
-  * Help is now available for functions defined in M-files.  The first
-    block of comments is taken as the text of the help message.
-
-  * Numerous changes in preparation to support dynamic loading of
-    object files with dld.
-
-  * Bug fixes to make solving DAEs with dassl actually work.
-
-  * The command `save file' now saves all variables in the named file.
-
-  * If do_fortran_indexing is 'true', indexing a scalar with
-    [1,1,1,...] (n times) replicates its value n times.  The
-    orientation of the resulting vector depends on the value of
-    prefer_column_vectors.
-
-  * Things like [[1,2][3,4]] no longer cause core dumps, and invalid
-    input like [1,2;3,4,[5,6]] now produces a diagnostic message.
-
-  * The cd, save, and load commands now do tilde expansion.
-
-  * It's now possible to clear global variables and functions by name.
-
-  * Use of clear inside functions is now a parse error.
-
-Summary of changes for version 0.70:
------------------------------------
-
-  * Better parse error diagnostics.  For interactive input, you get
-    messages like
-
-      octave:1> a = 3 + * 4;
-
-      parse error:
-
-          a = 3 + * 4;
-                  ^
-
-    and for script files, the message includes the file name and input
-    line number:
-
-      octave:1> foo
-
-      parse error near line 4 of file foo.m:
-
-          a = 3 + * 4;
-                  ^
-
-  * New built-in variable PS2 which is used as the secondary prompt.
-    The default value is '> '.
-
-  * New file, octave-mode.el, for editing Octave code with GNU Emacs.
-    This is a modified version of Matthew R. Wette's matlab-mode.el.
-
-  * Better support for missing math functions.
-
-  * User preferences are now cached in a global struct so we don't
-    have to do a symbol table lookup each time we need to know what
-    they are.  This should mean slightly improved performance for
-    evaluating expressions.
-
-Summary of changes for version 0.69:
------------------------------------
-
-  * Multiple assignments are now possible, so statements like
-
-      a = b = c = 3;
-      a = b = c = [1,2;3,4];
-
-    or
-
-      c = (a = (b = 2) * 3 + 4) * 5
-
-    are legal, as are things that have even more bizarre effects, like
-
-      a(4:6,4:6) = b(2:3,2:3) = [1,2;3,4];
-
-    (try it).
-
-  * Improved parsing of strings (but they still don't work as matrix
-    elements).
-
-  * An M-file may now either define a function or be a list of
-    commands to execute.
-
-  * Better detection and conditional compilation of IEEE functions
-    isinf, finite, and isnan.
-
-  * Replacements for acosh, asinh, atanh, and gamma from the BSD math
-    library for those systems that don't have them.
-
-Summary of changes for version 0.68:
------------------------------------
-
-  * New functions:
-
-      eval  -- evaluate a string as a sequence of Octave commands. 
-      input -- print a prompt and get user input.
-
-Summary of changes for version 0.67:
------------------------------------
-
-  * New functions:
-
-      find -- return the indices of nonzero elements.
-
-  * Zero-one style indexing now works.  For example,
-
-      a = [1,2,3,4];
-      b = a([1,0,0,1])
-
-    sets b to the first and fourth elements of a.
-
-    Zero-one style indexing also works for indexing the left hand side
-    of an assignment.  For example,
-
-      a = rand (1,2;3,4);
-      a([0,1],:) = [-1,-2]
-
-    sets the second row of a to [-1 -2]
-
-    The behavior for the ambiguous case
-
-      a = [1,2,3,4];
-      b = a([1,1,1,1]);
-
-    is controlled by the new global variable `prefer_zero_one_indexing'.
-    If this variable is equal to 'true', b will be set to [1 2 3 4].
-    If it is false, b will be set to [1 1 1 1].  The default value is
-    'false'.
-
-  * Using the new global variable `propagate_empty_matrices', it is
-    possible to have unary and binary operations on empty matrices
-    return an empty matrix.  The default value of this variable is
-    'warn', so that empty matrices are propagated but you get a
-    warning.  Some functions, like eig and svd have also been changed
-    to handle this.
-
-  * Empty matrices can be used in conditionals, but they always
-    evaluate to `false'.  With propagate_empty_matrices = 'true', both
-    of the following expressions print 0: 
-
-      if  [], 1, else 0, end
-      if ~[], 1, else 0, end
-
-  * Octave no longer converts input like `3.2 i' or `3 I' to complex
-    constants directly because that causes problems inside square
-    brackets, where spaces are important.  This abbreviated notation
-    *does* work if there isn't a space between the number and the i,
-    I, j, or J.
-
-Summary of changes for version 0.66:
------------------------------------
-
-  * Logical unary not operator (~ or !) now works for complex.
-
-  * Left division works.
-
-  * Right and left element by element division should work correctly
-    now.
-
-  * Numbers like .3e+2 are no longer errors.
-
-  * Indexing a matrix with a complex value doesn't cause a core dump.
-
-  * The min and max functions should work correctly for two arguments.
-
-  * Improved (I hope!) configuration checks.
-
-  * Octave is now installed as octave-M.N, where M and N are version
-    numbers, and octave is a link to that file.  This makes it
-    possible to have more than one version of the interpreter installed.
-
-Summary of changes for version 0.63:
------------------------------------
-
-  * The reshape function works again.
-
-  * Octave now converts input like `3.2i' or `3 I' or `2.3e5 j' to be 
-    complex constants directly, rather than requiring an expression
-    like `3.3 * i' to be evaluated.
-
-Summary of changes for version 0.61:
------------------------------------
-
-  * Octave has been successfully compiled using gcc 2.3.3 and libg++ 2.3.
-    on a 486 system running Linux.
-
-  * The win_texas_lotto function is now called texas_lotto (it's a
-    script file, and win_texas_lotto.m is too long for some Linux and
-    System V systems).
-
-Summary of changes for version 0.57:
-------------------------------------
-
-  * The C-like formatted print functions printf, fprintf, and sprintf
-    finally work. 
-
-Summary of changes for version 0.56:
-------------------------------------
-
-  * By default, octave prints a short disclaimer when it starts.
-    (You can suppress it by invoking octave with -q).
-
-  * You can keep octave from reading your ~/.octaverc and .octaverc
-    files by invoking it with -f.
-
-  * When returning two values, eig now returns [v, d] instead of
-    [lambda, v], where d is a diagonal matrix made from lambda.
-
-  * The win_texas_lotto function now produces a sorted list.
-
-  * New functions:
-
-      expm -- matrix exponential.
-      logm -- matrix logarithm.
-
-Summary of changes for version 0.55:
-------------------------------------
-
-  * The following (C-style) backslash escape sequences work in quoted
-    strings (useful(?) with printf()):
-
-      \a  bell         \r  carriage return
-      \b  backspace    \t  horizontal tab
-      \f  formfeed     \v  vertical tab
-      \n  newline      \\  backslash
-
-  * Use of `...' at the end of a line will allow a statement to
-    continue over more than one line.
-
-  * The names `inf' and `nan' are now aliases for `Inf' and `NaN',
-    respectively.
-
-  * New functions:
-
-      casesen -- print a warning if the luser tries to turn off case
-                 sensitivity.
-      median  -- find median value.
-      norm    -- compute the norm of a matrix.
-      sort    -- sort columns.
-
-  * New variable, `silent_functions'.  If silent_functions == 'true',
-    the results of expressions are not printed even if they are not
-    followed by a semicolon.  The disp() and printf() functions still
-    result in output.  The default value for this variable is 'false'.
-
-  * New variable `return_last_value_computed'.  If it is 'true',
-    functions defined in script files return the last value computed
-    if a return value has not been explicitly declared.  The default
-    value for this variable is 'false'.
-
-Summary of changes for version 0.52:
-------------------------------------
-
-  * Name completion works for function and variable names currently in
-    the symbol tables.  Coming soon: completion for names of functions
-    defined in script files but not yet compiled. 
-
-  * The initial value of do_fortran_indexing is now false, and the
-    initial value of prefer_column_vectors is now true.  Swap the
-    values of these variables if you want behavior that is more like
-    Matlab.
-
-  * All script files check the number of input arguments before doing
-    much real work.
-
-  * The identifiers `i' and `j' are now also names for sqrt(-1).
-    These symbols may be used for other purposes, but their original
-    definition will reappear if they are cleared.
-
-  * The symbol tables are now implemented with hash tables for faster
-    searching. 
-
-  * A small amount of help is now available for most built-in
-    operators, keywords and functions.  Coming soon: help for script
-    files.
-
-  * Without any arguments, the help command now lists all known
-    built-in operators, keywords and functions.
-
-  * Generic parse errors are now signalled by `Eh, what's up doc?',
-    which is closer to what Bugs actually says.
-
-  * The who command now only prints variable names by default.
-    Use the -fcn (or -fcns, or -functions) switch to print the names of
-    built-in or currently compiled functions.
-
-Summary of changes for version 0.51:
-------------------------------------
-
-  * Major overhaul of array indexing.
-
-  * The colloc function actually works now.
-
-Summary of changes for version 0.50:
-------------------------------------
-
-  * The lsode and dassl functions now return the states only,
-    instead of the time and the states, so you must keep track of
-    the corresponding times (this is easy though, because you have
-    to specify a vector of desired output times anyway).
-
-  * Solution of NLPs with NPSOL now works on the SPARC.
-
-  * New keywords `endif', `endfor', `endfunction', `endif', and
-    `endwhile', which allow for better diagnostics.  The `end' keyword
-    is still recognized.  All script files have been changed to use
-    these new keywords in place of `end'.
-
-  * It is now possible to uninstall Octave by doing a `make uninstall'
-    in the top level directory.
-
-  * The Makefiles are much closer to conforming with GNU coding standards.
-
-  * New functions:
-
-      win_texas_lotto  -- produce six unique random numbers between 1 and 50.
-      quad             -- numerical integration.
-      lu               -- LU factorization
-      qr               -- QR factorization
-      dassl            -- Solution of DAEs using DASSL.
-
-  * New files:
-
-      THANKS -- A list of people and organizations who have supported
-                the development of Octave.
-
-      NEWS   -- This file, listing recent changes.
-
-  * Help is now available at the gnuplot prompt.
--- a/NEWS.2	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1036 +0,0 @@
-Summary of changes for version 2.1.x:
-------------------------------------
-
-  * Given a matrix, X, and a boolean index, idx, of the same shape as
-    X, X(idx) and X(idx) = RHS now work no matter what the value of
-    do_fortran_indexing is.
-
-  * If you are using GNU Emacs 19.34 or earlier, you will need to add
-    the following code to your ~/.emacs file in order to use Emacs
-    Octave mode:
-
-      ;; Set up the custom library.
-      ;; taken from http://www.dina.kvl.dk/~abraham/custom/
-      (eval-and-compile
-	(condition-case ()
-	    (require 'custom)
-	  (error nil))
-	(if (and (featurep 'custom) (fboundp 'custom-declare-variable))
-	    nil ;; We've got what we needed
-	  ;; We have the old custom-library, hack around it!
-	  (defmacro defgroup (&rest args)
-	    nil)
-	  (defmacro defcustom (var value doc &rest args) 
-	    (` (defvar (, var) (, value) (, doc))))))
-
-  * When `format +' is in effect, Octave uses the following symbols to
-    provide more information about the values in a matrix:
-
-      +      postive real
-      -      negative real
-      i      pure imaginary
-      c      complex
-      blank  zero
-
-  * The ++ and -- operators now work for indexed matrices, and the
-    following operators now work:
-
-      +=, -=, *=, /=, \=, <<=, >>=, .*=, ./=, .\=, &=, |=
-
-    These operators are currently implemented using a relatively
-    inefficient brute-force method but hey, they work.
-
-  * The built-in variable argv is now a list of strings instead of a
-    string vector.
-
-  * The value of LOADPATH set by the environment variable
-    OCTAVE_PATH, the -p or --path command line options, or on the
-    command line is no longer modified to include the default path.
-    Instead it is left as specified.  Its default value is now ":",
-    which tells Octave to search the default path, and the new
-    built-in variable DEFAULT_LOADPATH contains the default list of
-    directories to search.  
-
-  * The function file_in_path no longer does any special processing of
-    its PATH argument.  To search LOADPATH for files, it is now
-    generally better to use the new function file_in_loadpath.
-
-  * If fread is given a skip parameter, the skip is performed after
-    the read instead of before (for compatibility with Matlab).
-
-  * The new built-in variable `crash_dumps_octave_core' controls
-    whether Octave writes user variables to the file `octave-core'
-    when it crashes or is killed by a signal.  The default value is 1
-    (0 if you use --traditional).
-
-  * If LOADPATH contains a doubled colon, the default path is inserted
-    in its place.  This is similar to the substitution that also takes
-    place for leading or trailing colons in the LOADPATH.
-
-  * Loops of the form `for i = STRING ... endfor' are now allowed.
-
-  * It is now possible to set the iteration limit for lsode using
-    lsode_options ("step limit", N).
-
-  * New functions:
-
-      is_complex  -- tell whether a variable is complex
-      rehash      -- re-initialize the cache of directories in LOADPATH
-      graw        -- send a string to the gnuplot subprocess
-
-  * New functions from Kurt Hornik's Octave-ci package:
-
-    In finance (new directory):
-
-      fv    -- future value of an investment
-      fvl   -- future value of an initial lump sum investment
-      irr   -- internal rate of return of an investment
-      nper  -- number of payments needed for amortizing a loan
-      npv   -- net present value of a series of payments
-      pmt   -- amount of periodic payment needed to amortize a loan
-      pv    -- present value of an investment
-      pvl   -- present value of an investment that pays off at the end
-      rate  -- rate of return of an investment
-      vol   -- volatility of financial time series data
-
-    In linear-algebra:
-
-      dmult -- rescale the rows of a matrix
-
-    In signal:
-
-      arch_fit       -- fit an ARCH regression model
-      arch_rnd       -- simulate an ARCH process
-      arch_test      -- test for conditional heteroscedascity
-      arma_rnd       -- simulate an ARMA process
-      autocor        -- compute autocorrelations
-      autocov        -- compute autocovariances
-      autoreg_matrix -- design matrix for autoregressions
-      bartlett       -- coefficients of the Bartlett (triangular) window
-      blackman       -- coefficients of the Blackman window
-      diffpara       -- estimate the fractional differencing parameter
-      durbinlevinson -- perform one step of the Durbin-Levinson algorithm
-      fractdiff      -- compute fractional differences
-      hamming        -- coefficients of the Hamming window
-      hanning        -- coefficients of the Hanning window
-      hurst          -- estimate the Hurst parameter
-      periodogram    -- compute the periodogram
-      rectangle_lw   -- rectangular lag window
-      rectangle_sw   -- rectangular spectral window
-      sinetone       -- compute a sine tone
-      sinewave       -- compute a sine wave
-      spectral_adf   -- spectral density estimation
-      spectral_xdf   -- spectral density estimation
-      spencer        -- apply Spencer's 15-point MA filter
-      stft           -- short-term Fourier transform
-      synthesis      -- recover a signal from its short-term Fourier transform
-      triangle_lw    -- triangular lag window
-      triangle_sw    -- triangular spectral window
-      yulewalker     -- fit AR model by Yule-Walker method
-
-    In statistics/base (new directory):
-
-      center     -- center by subtracting means
-      cloglog    -- complementary log-log function
-      cor        -- compute correlations
-      cov        -- compute covariances
-      cut        -- cut data into intervals
-      iqr        -- interquartile range
-      kendall    -- kendall's rank correlation tau
-      logit      -- logit transformation
-      mean       -- compute arithmetic, geometric, and harmonic mean
-      meansq     -- compute mean square
-      moment     -- compute moments
-      ppplot     -- perform a PP-plot (probability plot)
-      probit     -- probit transformation
-      qqplot     -- perform a QQ-plot (quantile plot)
-      range      -- compute range
-      ranks      -- compute ranks
-      run_count  -- count upward runs
-      spearman   -- spearman's rank correlation rho
-      statistics -- compute basic statistics
-      studentize -- subtract mean and divide by standard deviation
-      table      -- cross tabulation
-      values     -- extract unique elements
-      var        -- compute variance
-
-    In statistics/distributions (new directory):
-
-      beta_cdf           -- CDF of the Beta distribution
-      beta_inv           -- Quantile function of the Beta distribution
-      beta_pdf           -- PDF of the Beta distribution
-      beta_rnd           -- Random deviates from the Beta distribution
-
-      binomial_cdf       -- CDF of the binomial distribution
-      binomial_inv       -- Quantile function of the binomial distribution
-      binomial_pdf       -- PDF of the binomial distribution
-      binomial_rnd       -- Random deviates from the binomial distribution
-
-      cauchy_cdf         -- CDF of the Cauchy distribution
-      cauchy_inv         -- Quantile function of the Cauchy distribution
-      cauchy_pdf         -- PDF of the Cauchy distribution
-      cauchy_rnd         -- Random deviates from the Cauchy distribution
-
-      chisquare_cdf      -- CDF of the chi-square distribution
-      chisquare_inv      -- Quantile function of the chi-square distribution
-      chisquare_pdf      -- PDF of the chi-square distribution
-      chisquare_rnd      -- Random deviates from the chi-square distribution
-
-      discrete_cdf       -- CDF of a discrete distribution
-      discrete_inv       -- Quantile function of a discrete distribution
-      discrete_pdf       -- PDF of a discrete distribution
-      discrete_rnd       -- Random deviates from a discrete distribution
-
-      empirical_cdf      -- CDF of the empirical distribution
-      empirical_inv      -- Quantile function of the empirical distribution
-      empirical_pdf      -- PDF of the empirical distribution
-      empirical_rnd      -- Bootstrap samples from the empirical distribution
-
-      exponential_cdf    -- CDF of the exponential distribution
-      exponential_inv    -- Quantile function of the exponential distribution
-      exponential_pdf    -- PDF of the exponential distribution
-      exponential_rnd    -- Random deviates from the exponential distribution
-
-      f_cdf              -- CDF of the F distribution
-      f_inv              -- Quantile function of the F distribution
-      f_pdf              -- PDF of the F distribution
-      f_rnd              -- Random deviates from the F distribution
-
-      gamma_cdf          -- CDF of the Gamma distribution
-      gamma_inv          -- Quantile function of the Gamma distribution
-      gamma_pdf          -- PDF of the Gamma distribution
-      gamma_rnd          -- Random deviates from the Gamma distribution
-
-      geometric_cdf      -- CDF of the geometric distribution
-      geometric_inv      -- Quantile function of the geometric distribution
-      geometric_pdf      -- PDF of the geometric distribution
-      geometric_rnd      -- Random deviates from the geometric distribution
-
-      hypergeometric_cdf -- CDF of the hypergeometric distribution
-      hypergeometric_inv -- Random deviates from hypergeometric distribution
-      hypergeometric_pdf -- PDF of the hypergeometric distribution
-      hypergeometric_rnd -- Random deviates from hypergeometric distribution
-
-      kolmogorov_smirnov_cdf -- CDF of the Kolmogorov-Smirnov distribution
-
-      laplace_cdf        -- CDF of the Laplace distribution
-      laplace_inv        -- Quantile function of the Laplace distribution
-      laplace_pdf        -- PDF of the Laplace distribution
-      laplace_rnd        -- Random deviates from the Laplace distribution
-
-      logistic_cdf       -- CDF of the logistic distribution
-      logistic_inv       -- Quantile function of the logistic distribution
-      logistic_pdf       -- PDF of the logistic distribution
-      logistic_rnd       -- Random deviates from the logistic distribution
-
-      lognormal_cdf      -- CDF of the log normal distribution
-      lognormal_inv      -- Quantile function of the log normal distribution
-      lognormal_pdf      -- PDF of the log normal distribution
-      lognormal_rnd      -- Random deviates from the log normal distribution
-
-      normal_cdf         -- CDF of the normal distribution
-      normal_inv         -- Quantile function of the normal distribution
-      normal_pdf         -- PDF of the normal distribution
-      normal_rnd         -- Random deviates from the normal distribution
-
-      pascal_cdf         -- CDF of the Pascal (negative binomial) distribution
-      pascal_inv         -- Quantile function of the Pascal distribution
-      pascal_pdf         -- PDF of the Pascal (negative binomial) distribution
-      pascal_rnd         -- Random deviates from the Pascal distribution
-
-      poisson_cdf        -- CDF of the Poisson distribution
-      poisson_inv        -- Quantile function of the Poisson distribution
-      poisson_pdf        -- PDF of the Poisson distribution
-      poisson_rnd        -- Random deviates from the Poisson distribution
-
-      stdnormal_cdf      -- CDF of the standard normal distribution
-      stdnormal_inv      -- Quantile function of standard normal distribution
-      stdnormal_pdf      -- PDF of the standard normal distribution
-      stdnormal_rnd      -- Random deviates from standard normal distribution
-
-      t_cdf              -- CDF of the t distribution
-      t_inv              -- Quantile function of the t distribution
-      t_pdf              -- PDF of the t distribution
-      t_rnd              -- Random deviates from the t distribution
-
-      uniform_cdf        -- CDF of the uniform distribution
-      uniform_inv        -- Quantile function of the uniform distribution
-      uniform_pdf        -- PDF of the uniform distribution
-      uniform_rnd        -- Random deviates from the uniform distribution
-
-      weibull_cdf        -- CDF of the Weibull distribution
-      weibull_inv        -- Quantile function of the Weibull distribution
-      weibull_pdf        -- PDF of the Weibull distribution
-      weibull_rnd        -- Random deviates from the Weibull distribution
-
-      wiener_rnd         -- Simulate a Wiener process
-
-    In statistics/models (new directory):
-
-      logistic_regression             -- ordinal logistic regression
-      logistic_regression_derivatives -- derivates of log-likelihood
-                                         in logistic regression
-      logistic_regression_likelihood  -- likelihood in logistic regression
-
-    In statistics/tests (new directory):
-
-      anova                       -- one-way analysis of variance
-      bartlett_test               -- bartlett test for homogeneity of variances
-      chisquare_test_homogeneity  -- chi-square test for homogeneity
-      chisquare_test_independence -- chi-square test for independence
-      cor_test                    -- test for zero correlation
-      f_test_regression           -- test linear hypotheses in linear
-                                     regression model
-      hotelling_test              -- test for mean of a multivariate normal
-      hotelling_test_2            -- compare means of two multivariate normals
-      kolmogorov_smirnov_test     -- one-sample Kolmogorov-Smirnov test
-      kolmogorov_smirnov_test_2   -- two-sample Kolmogorov-Smirnov test
-      kruskal_wallis_test         -- kruskal-Wallis test
-      manova                      -- one-way multivariate analysis of variance
-      mcnemar_test                -- mcnemar's test for symmetry
-      prop_test_2                 -- compare two proportions
-      run_test                    -- run test for independence
-      sign_test                   -- sign test
-      t_test                      -- student's one-sample t test 
-      t_test_2                    -- student's two-sample t test
-      t_test_regression           -- test one linear hypothesis in linear
-                                     regression model
-      u_test                      -- mann-Whitney U-test
-      var_test                    -- f test to compare two variances
-      welch_test                  -- welch two-sample t test
-      wilcoxon_test               -- wilcoxon signed-rank test
-      z_test                      -- test for mean of a normal sample with
-                                     known variance
-      z_test_2                    -- compare means of two normal samples with
-                                     known variances
-
-  * The save command now accepts the option -append to save the
-    variables at the end of the file, leaving the existing contents.
-
-  * New command-line option --no-history (also available using the
-    single character option -H) inhibits saving command history.
-
-  * The mkoctfile script now accepts -DDEF options and passes them on
-    to the C and C++ compilers.
-
-  * Running `make check' should work now before you run `make install', 
-    even if you build a copy of Octave that depends on shared versions
-    of the Octave libraries.
-
-  * For matrices, x(:) now works and returns a column vector no matter
-    what the value of do_fortran_indexing is.
-
-  * New keywords __FILE__ and __LINE__ expand to the name of the file
-    that is being read and the current input line number, respectively.
-
-  * Octave's expression parser is more general and consistent.  It is
-    now possible to access structure elements and index arbitrary
-    values.  For example, expressions like
-
-      my_home_dir = getpwuid (getuid ()) . dir;
-
-    and
-
-      svd (x) (1:5)
-
-    now work.
-
-  * New built-in variable `print_rhs_assign_val' controls what is
-    printed when an assignment expression is evaluated.  If it is
-    zero, the value of the variable on the left hand side (after the
-    assignment) is printed.  If it is nonzero, the value of the right
-    hand side (i.e., the result of the expression) is printed.  The
-    default value of is zero, so the behavior is the same as in
-    previous versions of Octave.
-
-  * tmpnam now takes two optional arguments, DIR, and PREFIX.  For
-    example, tmpnam ("/foo", "bar-") returns a file name like
-    "/foo/bar-10773baa".  If DIR is omitted or empty, the value of the
-    environment variable TMPDIR, or /tmp is used.  If PREFIX is 
-    omitted, "oct-" is used.
-
-  * The built-in variable `PWD' has been removed.  If you need to get
-    the value of the current working directory, use the pwd() function
-    instead.
-
-  * New operators.  Octave's parser now recognizes the following
-    operators:  << >> += -= *= /= .+= .-= .*= ./= &= |= <<= >>=.  So
-    far, there are only a few operations defined that actually use
-    them (this should change before 2.1 is released).
-
-  * New built-in data types:
-
-    logical:
-
-      A true value is represented by 1, and false value by 0.
-      Comparison operations like <, <=, ==, >, >=, and != now return
-      logical values.  Indexing operations that use zero-one style
-      indexing must now use logical values.  You can use the new
-      function logical() to convert a numeric value to a logical
-      value.  This avoids the need for the built-in variable
-      `prefer_zero_one_indexing', so it has been removed.  Logical
-      values are automatically converted to numeric values where
-      appropriate.
-
-    file:
-
-      A file object represents an open Octave stream object.  The
-      fopen function now returns a file object instead of an integer.
-      File objects can be converted to integers automatically, and the
-      other functions that work with file ids still work with
-      integers, so this change should be backward compatible.
-
-      The binary left-shift operator `<<' has been defined to work as
-      in C++ for file objects and built-in types.  For example,
-
-        my_stream = fopen ("foo", "w");
-        my_stream << "x = " << pi << " marks the spot\n";
-
-      writes `x = 3.1416 marks the spot' in the file foo.
-
-      The built-in variables stdin, stdout, and stderr are now also
-      file objects instead of integers.
-
-    list:
-
-      A list is an array of Octave objects.  It can be indexed using
-      the normal indexing operator.  For example,
-
-        x = list ([1,2;3,4], 1, "foo");
-        stdout << x(2) << "\n"
-        1
-        stdout << x;
-        (
-         [1] =
-        
-           1  2
-           3  4
-        
-          [2] = 1
-          [3] = foo
-        )
-
-      There is currently no special syntax for creating lists; you
-      must use the list function.
-
-  * Commas in global statements are no longer special.  They are now
-    treated as command separators.  This removes a conflict in the
-    grammar and is consistent with the way Matlab behaves.  The
-    variable `warn_comma_in_global_decl' has been eliminated.
-
-  * It is now possible to declare static variables that retain their
-    values across function calls.  For example,
-
-      function ncall = f () static n = 0; ncall = ++n; endfunction
-
-    defines a function that returns the number of times that it has
-    been called.
-
-  * Within user-defined functions, the new automatic variable `argn'
-    contains the names of the arguments that were passed to the
-    function.  For example,
-
-      function f (...)
-        for i = 1:nargin
-          stdout << "argn(" << i << ") = `" << deblank (argn(i,:)) \
-                 << "' and its value is " << va_arg () << "\n";
-        endfor
-      endfunction
-      f (1+2, "foo", sin (pi/2))
-
-    prints
-
-      argn(1) = `1 + 2' and its value is 3
-      argn(2) = `"foo"' and its value is foo
-      argn(3) = `sin (pi)' and its value is 1
-
-    on the standard output stream.  If nargin is zero, argn is not defined.
-  * Functions like quad, fsolve, and lsode can take either a function
-    name or a simple function body as a string.  For example,
-
-      quad ("sqrt (x)", 0, 1)
-
-    is equivalent to
-
-      function y = f (x) y = sqrt (x); endfunction
-      quad ("f", 0, 1)
-
-  * If the argument to eig() is symmetric, Octave uses the specialized
-    Lapack subroutine for symmetric matrices for a significant
-    increase in performance.
-
-  * If the argument to lsode that names the user-supplied function is
-    a 2-element string array, the second element is taken as the name
-    of the Jacobian function.  The named function should have the
-    following form:
-
-      JAC = f (X, T)
-
-    where JAC is the Jacobian matrix of partial derivatives of the
-    right-hand-side functions that define the set of differential
-    equations with respect to the state vector X.
-
-  * Global variables are now initialized to the empty matrix, for
-    compatibility with Matlab.
-
-  * Explicit initialization of global variables only happens once.
-    For example, after the following statements are evaluated, g still
-    has the value 1.
-
-      global g = 1
-      global g = 2
-
-    This is useful for initializing global variables that are used to
-    maintain state information that is shared among several functions.
-
-  * Structure elements completion on the command line actually works
-    now.
-
-  * The new built-in variable `fixed_point_format' controls whether
-    Octave uses a scaled fixed-point format for displaying matrices.
-    The default value is 0 unless you use --traditional.
-
-  * The function sumsq now computes sum (x .* conj (x)) for complex values.
-
-  * The new built-in variable max_recursion_depth allows you to
-    prevent Octave from attempting infinite recursion.  The default
-    value is 256.
-
-  * Octave now uses kpathsea 3.2.
-
-  * New configure option, --enable-readline.
-
-  * New configure option, --enable-static.
-
-Summary of changes for version 2.0.7:
-------------------------------------
-
-  This is a bug-fixing release.  There are no new user-visible features.
-
-Summary of changes for version 2.0.6:
-------------------------------------
-
-  This is primarily a bug-fixing release.  There are only a few new
-  user-visible features.
-
-  * The new built-in variable default_eval_print_flag controls whether
-    Octave prints the results of commands executed by eval() that do
-    not end with semicolons.  The default is 1.
-
-  * The new built-in constant OCTAVE_HOME specifies the top-level
-    directory where Octave is installed.
-
-  * Octave no longer includes functions to work with NPSOL or QPSOL,
-    because they are not free software.
-
-  * The new built-in variable called kluge_procbuf_delay specifies the
-    number of microseconds to delay in the parent process after
-    forking.  By default on gnu-win32 systems, it's set to 500000 (1/2
-    second).  On other systems, the default value is 0.  Delaying for
-    a short time in the parent after forking seems to avoid problems
-    in which communicating with subprocesses via pipes would sometimes
-    cause Octave to hang.  I doubt that the delay is really the right
-    solution.  If anyone has a better idea, I'd love to hear it.
-
-Summary of changes for version 2.0.5:
-------------------------------------
-
-  * A `switch' statement is now available.  See the Statements chapter
-    in the manual for details.
-
-  * Commands like ls, save, and cd may now also be used as formal
-    parameters for functions.
-
-  * More tests.
-
-Summary of changes for version 2.0.4:
-------------------------------------
-
-  * It is now possible to use commands like ls, save, and cd as simple
-    variable names.  They still cannot be used as formal parameters
-    for functions, or as the names of structure variables.  Failed
-    assignments leave them undefined (you can recover the original
-    function definition using clear).
-
-  * Is is now possible to invoke commands like ls, save, and cd as
-    normal functions (for example, load ("foo", "x", "y", "z")).
-
-Summary of changes for version 2.0.3:
-------------------------------------
-
-  * The manual has been completely revised and now corresponds much
-    more closely to the features of the current version.
-
-  * The return value for assignment expressions is now the RHS since
-    that is more consistent with the way other programming languages
-    work.  However, Octave still prints the entire LHS value so that
-
-      x = zeros (1, 2);
-      x(2) = 1
-
-    still prints
-
-      x =
-
-        0  1
-
-    but an assignment like
-
-      z = x(2) = 1
-
-    sets z to 1 (not [ 0, 1 ] as in previous versions of Octave).
-
-  * It is now much easier to make binary distributions.  See the
-    Binary Distributions section of the manual for more details.
-
-Summary of changes for version 2.0.2:
-------------------------------------
-
-  * Octave now stops executing commands from a script file if an error
-    is encountered.
-
-  * The return, and break commands now cause Octave to quit executing
-    commands from script files.  When used in invalid contexts, the
-    break, continue, and return commands are now simply ignored
-    instead of producing parse errors.
-
-  * size ("") is now [0, 0].
-
-  * New functions:
-
-      sleep   -- pause execution for a specified number of seconds
-      usleep  -- pause execution for a specified number of microseconds
-
-Summary of changes for version 2.0:
-----------------------------------
-
-  * The set and show commands for setting and displaying gnuplot
-    parameters have been replaced by gset and gshow.  This change will
-    probably break lots of things, but it is necessary to allow for
-    compatibility with the Matlab graphics and GUI commands in a
-    future version of Octave.  (For now, the old set and show commands
-    do work, but they print an annoying warning message to try to get
-    people to switch to using gset.)
-
-  * Octave has been mostly ported to Windows NT and Windows 95 using
-    the beta 17 release of the Cygnus GNU-WIN32 tools.  Not everything
-    works, but it is usable.  See the file README.WINDOWS for more
-    information.
-
-  * Dynamic linking works on more systems using dlopen() and friends
-    (most modern Unix systems) or shl_load() and friends (HP/UX
-    systems).  A simple example is provided in examples/hello.cc.
-    For this feature to work, you must configure Octave with
-    --enable-shared.  You may also need to have a shared-library
-    version of libg++ and libstdc++.
-
-  * New data types can be added to Octave by writing a C++ class.  On
-    systems that support dynamic linking, new data types can be added
-    to an already running Octave binary.  A simple example appears in
-    the file examples/make_int.cc.  Other examples are the standard
-    Octave data types defined in the files src/ov*.{h,cc} and
-    src/op-*.cc.
-
-  * The configure option --enable-bounds-check turns on bounds
-    checking on element references for Octave's internal array and
-    matrix classes.  It's enabled by default.  To disable this
-    feature, configure Octave with --disable-bounds-check.
-
-  * The C-style I/O functions (fopen, fprintf, etc.) have been
-    rewritten to be more compatible with Matlab.  The fputs function
-    has also been added.  Usage of the *printf functions that was
-    allowed in previous versions of Octave should still work.
-    However, there is no way to make the new versions of the *scanf
-    functions compatible with Matlab *and* previous versions of
-    Octave.  An optional argument to the *scanf functions is now
-    available to make them behave in a way that is compatible with
-    previous versions of Octave.
-
-  * Octave can now read files that contain columns of numbers only,
-    with no header information.  The name of the loaded variable is
-    constructed from the file name.  Each line in the file must have
-    the same number of elements.
-
-  * The interface to the pager has changed.  The new built-in variable
-    `page_output_immediately' controls when Octave sends output to the
-    pager.  If it is nonzero, Octave sends output to the pager as soon
-    as it is available.  Otherwise, Octave buffers its output and
-    waits until just before the prompt is printed to flush it to the
-    pager.
-
-  * Expressions of the form
-
-      A(i,j) = x
-
-    where X is a scalar and the indices i and j define a matrix of
-    elements now work as you would expect rather than giving an error.
-    I am told that this is how Matlab 5.0 will behave when it is
-    released.
-
-  * Indexing of character strings now works.
-
-  * The echo command has been implemented.
-
-  * The document command is now a regular function.
-
-  * New method for handling errors:
-
-      try
-        BODY
-      catch
-        CLEANUP
-      end_try_catch
-
-    Where BODY and CLEANUP are both optional and may contain any
-    Octave expressions or commands.  The statements in CLEANUP are
-    only executed if an error occurs in BODY.
-
-    No warnings or error messages are printed while BODY is
-    executing.  If an error does occur during the execution of BODY,
-    CLEANUP can access the text of the message that would have been
-    printed in the builtin constant __error_text__.  This is the same
-    as eval (TRY, CATCH) (which may now also use __error_text__) but
-    it is more efficient since the commands do not need to be parsed
-    each time the TRY and CATCH statements are evaluated.
-
-  * Octave no longer parses the help command by grabbing everything
-    after the keyword `help' until a newline character is read.  To
-    get help for `;' or `,', now, you need to use the command
-    `help semicolon' or `help comma'.
-
-  * Octave's parser now does some simple constant folding.  This means
-    that expressions like 3*i are now evaluated only once, when a
-    function is compiled, and the right hand side of expressions like
-    a = [1,2;3,4] are treated as true matrix constants rather than
-    lists of elements which must be evaluated each time they are
-    needed.
-
-  * Built-in variables that can take values of "true" and "false" can
-    now also be set to any nonzero scalar value to indicate "true",
-    and 0 to indicate "false".
-
-  * New built-in variables `history_file', `history_size', and
-    `saving_history'.
-
-  * New built-in variable `string_fill_char' specifies the character
-    to fill with when creating arrays of strings.
-
-  * If the new built-in variable `gnuplot_has_frames' is nonzero,
-    Octave assumes that your copy of gnuplot includes support for
-    multiple plot windows when using X11.
-
-    If the new built-in variable `gnuplot_has_multiplot' is nonzero,
-    Octave assumes that your copy of gnuplot has the multiplot support
-    that is included in recent 3.6beta releases.
-
-    The initial values of these variables are determined by configure,
-    but can be changed in your startup script or at the command line
-    in case configure got it wrong, or if you upgrade your gnuplot
-    installation.
-
-  * The new plot function `figure' allows multiple plot windows when
-    using newer versions of gnuplot with X11.
-
-  * Octave now notices when the plotter has exited unexpectedly.
-
-  * New built-in variable `warn_missing_semicolon'.  If nonzero, Octave
-    will warn when statements in function definitions don't end in
-    semicolons.  The default value is 0.
-
-  * Octave now attempts to continue after floating point exceptions
-    or out-of-memory errors.
-
-  * If Octave crashes, it now attempts to save all user-defined
-    variables in a file named `octave-core' in the current directory
-    before exiting.
-
-  * It is now possible to get the values of individual option settings
-    for the dassl, fsolve, lsode, npsol, qpsol, and quad functions
-    using commands like
-
-      dassl_reltol = dassl_options ("relative tolerance");
-
-  * The svd() function no longer computes the left and right singular
-    matrices unnecessarily.  This can significantly improve
-    performance for large matrices if you are just looking for the  
-    singular values.
-
-  * The filter() function is now a built-in function.
-
-  * New function randn() returns a pseudo-random number from a normal
-    distribution.  The rand() and randn() functions have separate
-    seeds and generators.
-
-  * Octave's command-line arguments are now available in the built-in
-    variable `argv'.  The program name is also available in the
-    variables `program_invocation_name' and `program_name'.  If
-    executing a script from the command line (e.g., octave foo.m) or
-    using the `#! /bin/octave' hack, the program name is set to the
-    name of the script.
-
-  * New built-in variable `completion_append_char' used as the
-    character to append to successful command-line completion
-    attempts.  The default is " " (a single space).
-
-  * Octave now uses a modified copy of the readline library from
-    version 1.14.5 of GNU bash.
-
-  * In prompt strings, `\H' expands to the whole host name.
-
-  * New built-in variable `beep_on_error'.  If nonzero, Octave will try
-    to ring your terminal's bell before printing an error message.
-    The default value is 0.
-
-  * For functions defined from files, the type command now prints the
-    text of the file.  You can still get the text reconstructed from
-    the parse tree by using the new option -t (-transformed).
-
-  * New command-line argument --traditional sets the following
-    preference variables for compatibility with Matlab:
-
-      PS1                           = ">> "
-      PS2                           = ""
-      beep_on_error                 = 1
-      default_save_format           = "mat-binary"
-      define_all_return_values      = 1
-      do_fortran_indexing           = 1
-      empty_list_elements_ok        = 1
-      implicit_str_to_num_ok        = 1
-      ok_to_lose_imaginary_part     = 1
-      page_screen_output            = 0
-      prefer_column_vectors         = 0
-      prefer_zero_one_indexing      = 1
-      print_empty_dimensions        = 0
-      treat_neg_dim_as_zero         = 1
-      warn_function_name_clash      = 0
-      whitespace_in_literal_matrix  = "traditional"
-
-  * New functions:
-
-      readdir  -- returns names of files in directory as array of strings
-      mkdir    -- create a directory
-      rmdir    -- remove a directory
-      rename   -- rename a file
-      unlink   -- delete a file
-      umask    -- set permission mask for file creation
-      stat     -- get information about a file
-      lstat    -- get information about a symbolic link
-      glob     -- perform filename globbing
-      fnmatch  -- match strings with filename globbing patterns
-      more     -- turn the pager on or off
-      gammaln  -- alias for lgamma
-
-  * New audio functions from Andreas Weingessel
-    <Andreas.Weingessel@ci.tuwien.ac.at>.
-
-      lin2mu     -- linear to mu-law encoding
-      loadaudio  -- load an audio file to a vector
-      mu2lin     -- mu-law to linear encoding
-      playaudio  -- play an audio file
-      record     -- record sound and store in vector
-      saveaudio  -- save a vector as an audio file
-      setaudio   -- executes mixer shell command
-
-  * New plotting functions from Vinayak Dutt.  Ones dealing with
-    multiple plots on one page require features from gnuplot 3.6beta
-    (or later).
-
-      bottom_title  -- put title at the bottom of the plot
-      mplot         -- multiplot version of plot
-      multiplot     -- switch multiple-plot mode on or off
-      oneplot       -- return to one plot per page
-      plot_border   -- put a border around plots
-      subplot       -- position multiple plots on a single page
-      subwindow     -- set subwindow position for next plot
-      top_title     -- put title at the top of the plot
-      zlabel        -- put a label on the z-axis
-
-  * New string functions
-
-      bin2dec  -- convert a string of ones and zeros to an integer
-      blanks   -- create a string of blanks
-      deblank  -- delete trailing blanks
-      dec2bin  -- convert an integer to a string of ones and zeros
-      dec2hex  -- convert an integer to a hexadecimal string
-      findstr  -- locate occurrences of one string in another
-      hex2dec  -- convert a hexadecimal string to an integer
-      index    -- return position of first occurrence a string in another
-      rindex   -- return position of last occurrence a string in another
-      split    -- divide one string into pieces separated by another
-      str2mat  -- create a string matrix from a list of strings
-      strrep   -- replace substrings in a string
-      substr   -- extract a substring
-
-    The following functions return a matrix of ones and zeros.
-    Elements that are nonzero indicate that the condition was true for
-    the corresponding character in the string array.
-
-      isalnum   -- letter or a digit
-      isalpha   -- letter
-      isascii   -- ascii
-      iscntrl   -- control character
-      isdigit   -- digit
-      isgraph   -- printable (but not space character)
-      islower   -- lower case
-      isprint   -- printable (including space character)
-      ispunct   -- punctuation
-      isspace   -- whitespace
-      isupper   -- upper case
-      isxdigit  -- hexadecimal digit
-
-    These functions return new strings.
-
-      tolower  -- convert to lower case
-      toupper  -- convert to upper case
-
-  * New function, fgetl.  Both fgetl and fgets accept an optional
-    second argument that specifies a maximum number of characters to
-    read, and the function fgets is now compatible with Matlab.
-
-  * Printing in hexadecimal format now works (format hex).  It is also
-    possible to print the internal bit representation of a value
-    (format bit).  Note that these formats are only implemented for
-    numeric values.
-
-  * Additional structure features:
-
-    -- Name completion now works for structures.
-
-    -- Values and names of structure elements are now printed by
-       default.  The new built-in variable `struct_levels_to_print'
-       controls the depth of nested structures to print.  The default
-       value is 2.
-
-    -- New functions:
-
-       struct_contains (S, NAME) -- returns 1 if S is a structure with
-                                    element NAME; otherwise returns 0.
-
-       struct_elements (S)       -- returns the names of all elements
-                                    of structure S in an array of strings. 
-
-  * New io/subprocess functions:
-
-      fputs    -- write a string to a file with no formatting
-      popen2   -- start a subprocess with 2-way communication
-      mkfifo   -- create a FIFO special file
-      popen    -- open a pipe to a subprocess
-      pclose   -- close a pipe from a subprocess
-      waitpid  -- check the status of or wait for subprocesses
-
-  * New time functions:
-
-      asctime    -- format time structure according to local format
-      ctime      -- equivalent to `asctime (localtime (TMSTRUCT))'
-      gmtime     -- return time structure corresponding to UTC
-      localtime  -- return time structure corresponding to local time zone
-      strftime   -- print given time structure using specified format
-      time       -- return current time
-
-    The `clock' and `date' functions are now implemented in M-files
-    using these basic functions.
-
-  * Access to additional Unix system calls:
-
-      dup2     -- duplicate a file descriptor
-      exec     -- replace current process with a new process
-      fcntl    -- control open file descriptors
-      fork     -- create a copy of the current process
-      getpgrp  -- return the process group id of the current process
-      getpid   -- return the process id of the current process
-      getppid  -- return the process id of the parent process
-      getuid   -- return the real user id of the current process
-      getgid   -- return the real group id of the current process
-      geteuid  -- return the effective user id of the current process
-      getegid  -- return the effective group id of the current process
-      pipe     -- create an interprocess channel
-
-  * Other new functions:
-
-      commutation_matrix  -- compute special matrix form
-      duplication_matrix  -- compute special matrix form
-      common_size.m       -- bring arguments to a common size
-      completion_matches  -- perform command completion on string
-      tilde_expand        -- perform tilde expansion on string
-
-      meshgrid  -- compatible with Matlab's meshgrid function
-      tmpnam    -- replaces octave_tmp_file_name
-      atexit    -- register functions to be called when Octave exits
-      putenv    -- define an environment variable
-      bincoeff  -- compute binomial coefficients
-      nextpow2  -- compute the next power of 2 greater than a number
-      detrend   -- remove a best fit polynomial from data
-      erfinv    -- inverse error function
-      shift     -- perform a circular shift on the elements of a matrix
-      pow2      -- compute 2 .^ x
-      log2      -- compute base 2 logarithms
-      diff      -- compute differences of matrix elements
-      vech      -- stack columns of a matrix below the diagonal
-      vec       -- stack columns of a matrix to form a vector
-      xor       -- compute exclusive or
-
-  * Functions for getting info from the password database on Unix systems:
-
-      getpwent  -- read entry from password-file stream, opening if necessary
-      getpwuid  -- search for password entry with matching user ID
-      getpwnam  -- search for password entry with matching username
-      setpwent  -- rewind the password-file stream
-      endpwent  -- close the password-file stream
-
-  * Functions for getting info from the group database on Unix systems:
-
-      getgrent  -- read entry from group-file stream, opening if necessary
-      getgrgid  -- search for group entry with matching group ID
-      getgrnam  -- search for group entry with matching group name
-      setgrent  -- rewind the group-file stream
-      endgrent  -- close the group-file stream
-
-  * The New function octave_config_info returns a structure containing
-    information about how Octave was configured and compiled.
-
-  * New function getrusage returns a structure containing system
-    resource usage statistics.  The `cputime' function is now defined
-    in an M-file using getrusage.
-
-  * The info reader is now a separate binary that runs as a
-    subprocess.  You still need the info reader distributed with
-    Octave though, because there are some new command-line arguments
-    that are not yet available in the public release of Info.
-
-  * There is a new built-in variable, INFO_PROGRAM, which is used as
-    the name of the info program to run.  Its initial value is
-    $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH/info, but that value can
-    be overridden by the environment variable OCTAVE_INFO_PROGRAM, or
-    the command line argument --info-program NAME, or by setting the
-    value of INFO_PROGRAM in a startup script.
-
-  * There is a new built-in variable, EXEC_PATH, which is used as
-    the list of directories to search when executing subprograms.  Its
-    initial value is taken from the environment variable
-    OCTAVE_EXEC_PATH (if it exists) or PATH, but that value can be
-    overridden by the command line argument --exec-path PATH, or
-    by setting the value of EXEC_PATH in a startup script.  If the
-    EXEC_PATH begins (ends) with a colon, the directories
-    $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH and $OCTAVE_HOME/bin are
-    prepended (appended) to EXEC_PATH (if you don't specify a value
-    for EXEC_PATH explicitly, these special directories are prepended
-    to your PATH).
-
-  * If it is present, Octave will now use an `ls-R' database file to
-    speed up recursive path searching.  Octave looks for a file called
-    ls-R in the directory specified by the environment variable
-    OCTAVE_DB_DIR.  If that is not set but the environment variable
-    OCTAVE_HOME is set, Octave looks in $OCTAVE_HOME/lib/octave.
-    Otherwise, Octave looks in the directory $datadir/octave (normally
-    /usr/local/lib/octave).
-
-  * New examples directory.
-
-  * There is a new script, mkoctfile, that can be used to create .oct
-    files suitable for dynamic linking.
-
-  * Many more bug fixes.
-
-  * ChangeLogs are now kept in each subdirectory.
-
-See NEWS.1 for old news.
--- a/NEWS.3	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,200 +0,0 @@
-Summary of important user-visible changes for version 3.0:
----------------------------------------------------------
-
- ** Compatibility with Matlab graphics is much better now.  We now
-    have some graphics features that work like Matlab's Handle
-    Graphics (tm):
-
-    + You can make a subplot and then use the print function to
-      generate a file with the plot.
-
-    + RGB line colors are supported if you use gnuplot 4.2.  Octave
-      can still use gnuplot 4.0, but there is no way to set arbitrary
-      line colors with it when using the Matlab-style plot functions.
-      There never was any way to do this reliably with older versions
-      of gnuplot (whether run from Octave or not) since it only
-      provided a limited set to choose from, and they were terminal
-      dependent, so choosing color 1 with the X11 terminal would be
-      different from color 1 with the PostScript terminal.  Valid RGB
-      colors for gnuplot 4.0 are the eight possible combinations of 0
-      and 1 for the R, G and B values. Invalid values are all mapped
-      to the same color.
-
-      This also affects patch objects used in the bar, countour, meshc
-      and surfc functions, where the bars and contours will be
-      monochrome. A workaround for this is to type "colormap gmap40"
-      that loads a colormap that in many cases will be adequate for
-      simple bar and contour plots.
-
-    + You can control the width of lines using (for example):
-
-	line (x, y, "linewidth", 4, "color", [1, 0, 0.5]);
-
-      (this also shows the color feature).
-
-    + With gnuplot 4.2, image data is plotted with gnuplot and may be
-      combined with other 2-d plot data.
-
-    + Lines for contour plots are generated with an Octave function, so
-      contour plots are now 2-d plots instead of special 3-d plots, and
-      this allows you to plot additional 2-d data on top of a contour
-      plot.
-
-    + With the gnuplot "extended" terminals the TeX interpreter is
-    emulated. However, this means that the TeX interpreter is only
-    supported on the postscript terminals with gnuplot 4.0. Under
-    gnuplot 4.2 the terminals aqua, dumb, png, jpeg, gif, pm, windows,
-    wxt, svg and x11 are supported as well.
-
-    + The following plot commands are now considered obsolete and will
-      be removed from a future version of Octave:
-
-	__gnuplot_set__
-	__gnuplot_show__
-	__gnuplot_plot__
-	__gnuplot_splot__
-	__gnuplot_replot__
-
-      Additionally, these functions no longer have any effect on plots
-      created with the Matlab-style plot commands (plot, line, mesh,
-      semilogx, etc.).
-
-    + Plot property values are not extensively checked.  Specifying
-      invalid property values may produce unpredictable results.
-
-    + Octave now sends data over the same pipe that is used to send
-      commands to gnuplot.  While this avoids the problem of
-      cluttering /tmp with data files, it is no longer possible to use
-      the mouse to zoom in on plots.  This is a limitation of gnuplot,
-      which is unable to zoom when the data it plots is not stored in
-      a file.  Some work has been done to fix this problem in newer
-      versions of gnuplot (> 4.2.2).  See for example, this thread
-
-        http://www.nabble.com/zooming-of-inline-data-tf4357017.html#a12416496
-
-      on the gnuplot development list.
-
-
- ** The way Octave handles search paths has changed.  Instead of
-    setting the built-in variable LOADPATH, you must use addpath,
-    rmpath, or path to manipulate the function search path.  These
-    functions will maintain "." at the head of the path, for
-    compatibility with Matlab.
-
-    Leading, trailing or doubled colons are no longer special.
-    Now, all elements of the search path are explicitly included in
-    the path when Octave starts.  To display the path, use the path
-    function.
-
-    Path elements that end in // are no longer searched recursively.
-    Instead, you may use addpath and the genpath function to add an
-    entire directory tree to the path.  For example,
-
-      addpath (genpath ("~/octave"));
-
-    will add ~/octave and all directories below it to the head of the
-    path.
-
-
- ** Previous versions of Octave had a number of built-in variables to
-    control warnings (for example, warn_divide_by_zero).  These
-    variables have been replaced by warning identifiers that are used
-    with the warning function to control the state of warnings.
-
-    For example, instead of writing
-
-      warn_divide_by_zero = false;
-
-    to disable divide-by-zero warnings, you should write
-
-      warning ("off", "Octave:divide-by-zero");
-
-    You may use the same technique in your own code to control
-    warnings.  For example, you can use
-
-      warning ("My-package:phase-of-the-moon",
-               "the phase of the moon could cause trouble today");
-
-    to allow users to control this warning using the
-    "My-package:phase-of-the-moon" warning identifier.
-
-    You may also enable or disable all warnings, or turn them into
-    errors:
-
-      warning ("on", "all");
-      warning ("off", "all");
-      warning ("error", "Octave:divide-by-zero");
-      warning ("error", "all");
-
-    You can query the state of current warnings using
-
-      warning ("query", ID)
-      warning ("query")
-
-    (only those warning IDs which have been explicitly set are
-    returned).
-
-    A partial list and description of warning identifiers is available
-    using
-
-      help warning_ids
-
-
- ** All built-in variables have been converted to functions.  This
-    change simplifies the interpreter and allows a consistent
-    interface to internal variables for user-defined packages and the
-    core functions distributed with Octave.  In most cases, code that
-    simply accesses internal variables does not need to change.  Code
-    that sets internal variables will change.  For example, instead of
-    writing
-
-      PS1 = ">> ";
-
-    you will need to write
-
-      PS1 (">> ");
-
-    If you need write code that will run in both old and new versions
-    of Octave, you can use something like
-
-      if (exist ("OCTAVE_VERSION") == 5)
-        ## New:
-        PS1 (">> ");
-      else
-        ## Old:
-        PS1 = ">> ";
-      endif
-
-
- ** For compatibility with Matlab, the output order of Octave's
-    "system" function has changed from
-
-      [output, status] = system (cmd);
-
-    to
-
-      [status, output] = system (cmd);
-
-
- ** For compatibility with Matlab, the output of Octave's fsolve
-    function has been changed from
-
-      [x, info, msg] = fsolve (...);
-
-    to
-
-      [x, fval, info] = fsolve (...);
-
-
- ** For compatibility with Matlab, normcdf, norminv, normpdf, and
-    normrnd have been modified to compute distributions using the
-    standard deviation instead of the variance.
-
-
- ** For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
-    expcdf, expinv, exppdf and exprnd have been modified to compute 
-    the distributions using the standard scale factor rather than
-    one over the scale factor.
-
-
-See NEWS.2 for old news.
--- a/OLD-ChangeLogs/ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6999 +0,0 @@
-2011-04-14  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add colstyle to list of new functions for 3.4
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add perror, strerror to list of functions deprecated in 3.4
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add cquad to list of functions deprecated in 3.4
-
-2011-03-24  Jarno Rajahalme  <jarno.rajahalme@gmail.com>
-
-	* configure.ac: Try again with "-ff2c" if fortran compiler is
-	found incompatible. On OSX, try again with
-	libcruft/misc/blaswrap.c, if "-ff2c" also fails.
-
-2011-03-17  Iain Murray  <iain@iainmurray.net>
-
-	* bootstrap.conf (gnulib_modules): Include nproc in the list.
-
-2011-03-08  Rik  <octave@nomad.inbox5.com>
-
-	* mk-opts.pl: Recode using more modern Perl syntax.
-	Use my, not local, for lexically-scoped variables.
-	Use ALL_CAPITALS for global variable names.
-	Change code to remove any warnings from Perl lint (-w).
-	Inline small subroutines for better readability.
-	Use here documents and qq operator to avoid excessive backlashing of ".
-	Add more informative usage() information.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Deprecate is_duplicate_entry.
-
-2011-03-01  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Add Fink packages needed to support print output.
-
-2011-02-28  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Mention new functions isrow, iscolumn.
-
-2011-02-23  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* .hgignore: Cleanup and more files to be ignore that get added
-	to the source during build time.
-
-2011-02-22  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: New explicit 'make check' target.
-
-2011-02-21  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Note that PCRE is now required to build Octave.
-	* configure.ac: Improve check for PCRE, which is now required.
-	Don't check for -lregex.
-
-2011-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* README.MacOS: Keep line length below 80, use 2 spaces to start
-	sentences.
-
-2011-02-16  Richard Campbell  <rlcamp.pdx@gmail.com>
-
-	* README.MacOS: Updated Readme.MacOS section 2.2.1 with results of test
-	compilation on vanilla machine.
-
-2011-02-15  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.ac: Use AC_COMPILE_IFELSE to check for OpenGL
-	support in FLTK.
-
-2011-02-09  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Update.
-
-2011-02-09  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Spelling corrections.
-
-2011-02-08  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Fix FFTW CCFLAGS.
-
-2011-02-08  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Use indentation of 2 spaces rather than 3 in code examples.
-
-2011-02-08  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Add detail.
-
-2011-02-08  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Add note about subfunctions.
-
-2011-02-06  John W. Eaton  <jwe@octave.org>
-
-	* PROJECTS, README.devel: Use maintainers@octave.org instead of
-	octave-maintainers@octave.org.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* PROJECTS: Point to maintained list on Octave Wiki.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* mkoctfile.in, octave-config.in: Update usage strings.
-
-2011-02-04  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Add new doc/icons/Makefile to list of Makefiles to build
-	* examples/Makefile.am: Move building of .desktop files and distribution
-	of icons to doc/icons directory.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Deprecate glpkmex function.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_PROG_GHOSTSCRIPT): Update warning message.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Remove code to print warning for missing ARPACK.
-	* README.MacOS: Remove arpack from list of prerequisite software.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Deprecate saveimage function.
-
-2011-01-28  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Spelling corrections.
-	* README.MacOS: Additional modifications for building Octave manually.
-	* README.MacOS: Modify instructions for building Octave manually.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for ARPACK.
-	* common.mk (ARPACK_CPPFLAGS, ARPACK_LDFLAGS, ARPACK_LIBS):
-	Delete variables.
-	(do_subst_config_vals): Don't substitute them.
-
-2011-01-27  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Modify instructions for MacPorts to "deactivate"
-	rather than "uninstall" octave.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl, mkoctfile.cc.in, mkoctfile.in: Untabify.
-
-	* mkf77def.in, mk-opts.pl, mkoctfile.cc.in, structdemo.cc,
-	unwinddemo.cc, fortdemo.cc, paramdemo.cc,
-	celldemo.cc,stringdemo.cc, hello.cc, embedded.cc, helloworld.cc:
-	Strip trailing whitespace.
-
-2011-01-26  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS: Modify organization, and update for MacPorts.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap: Update from gnulib sources.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (INSTALL_SCRIPT): Update commend about UGLY_DEFS.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OPENGL_LIBS): Don't add -L/usr/X11R6/LIB to
-	LDFLAGS in test.  Bug #32160.
-
-2011-01-25  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Directly run makefile rules in doc/interpreter directory
-	for AUTHORS, BUGS, INSTALL.OCTAVE files.
-
-2011-01-25  John W. Eaton  <jwe@octave.org>
-
-	* autogen.sh (AUTOMAKE): Add --foreign to the automake command.
-	Check for required GNU files here instead of having automake do it.
-	Export AUTOMAKE so our options are actually used.
-
-2011-01-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (EXTRA_DIST): Remove ROADMAP from the list.
-
-2011-01-24  Rik  <octave@nomad.inbox5.com>
-
-	* AUTHORS: Remove.  File now auto-generated from contributors.texi.
-	* Makefile.am: Add rule for AUTHORS file.
-
-2011-01-24  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Note change in audio/mu2lin.
-
-2011-01-22  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* README.MinGW: Small corrections to documentation.
-
-2011-01-22  Rik  <octave@nomad.inbox5.com>
-
-	* README.devel: Update for 3.4 release.
-
-2011-01-22  Rik  <octave@nomad.inbox5.com>
-
-	* HACKING: Revise and incorporate all of file ROADMAP.
-	* ROADMAP: Deleted.
-
-2011-01-22  Rik  <octave@nomad.inbox5.com>
-
-	* README.Windows: Reference README.MinGW
-	* README.MinGW: Replace placeholder with actual instructions
-
-2011-01-22  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.5.0+.
-	(OCTAVE_API_VERSION_NUMBER): Now 44.
-	(OCTAVE_RELEASE_DATE): Now 2011-01-22.
-	(OCTAVE_COPYRIGHT): Update year.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* README.Cygwin, README.MacOS, README.Windows, README.ftp: Update
-	documentation files for 3.4 release.
-
-	* README.MinGW: Create placeholder for new README file.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap: Update from gnulib sources.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac, NEWS: Update for backend -> graphics_toolkit change.
-
-2011-01-17  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add quadcc to list of new functions added.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.cc.in (main): Add + missing from previous change.
-
-2011-01-15  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.54.
-	(OCTAVE_API_VERSION_NUMBER): Now 42.
-	(OCTAVE_RELEASE_DATE): Now 2010-11-19.
-
-2011-01-15  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Add krylovb to deprecated function list.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add replot to deprecated function list.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include filemode in the list.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap (gnulib_path): Set default gnulib path with ${x:=y},
-	not ${x=y}.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap, bootstrap.conf: Update from gnulib sources.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include mkstemp in the list.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)):
-	Eliminate some code duplication.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)): Check for
-	-Wcast-qual and -Wcast-align and add them to WARN_CFLAGS and
-	WARN_CXXFLAGS.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)): Check for
-	-Wpointer-arith, -Wmissing-prototypes, -Wstrict-prototypes, and
-	-Wwrite-strings and add them to WARN_CFLAGS.  Check for
-	-Wpointer-arith and add them to WARN_CXXFLAGS.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl: Generate initialization lists and in-line code for
-	copying.
-
-2011-01-11  Rik  <octave@nomad.inbox5.com>
-
-	* ROADMAP: Update guide to Octave directory structure.
-
-2011-01-11  Rik  <octave@nomad.inbox5.com>
-
-	* README.mirrors: Update ftp links.
-
-2011-01-06  Rik  <octave@nomad.inbox5.com>
-
-	* README: Update links and disk space requirements.
-
-2011-01-06  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* run-octave.in: Add a -gud option so that gdb can be called from
-	Emacs's GUD mode and similar.
-
-2011-01-06  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in, mkoctfile.cc.in: Substitute and use LAPACK_LIBS.
-	Bug #32009.
-
-2011-01-04  Rik  <octave@nomad.inbox5.com>
-
-	* README.MacOS: Update CFLAGS recommendation to use -O2.
-
-2011-01-04  Rik  <octave@nomad.inbox5.com>
-
-	* README.gnuplot: Update recommendation to version 4.4.
-
-2011-01-04  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* README.Cygmin: Update build instructions before 3.4 release.
-
-2010-12-31  Kai Habel  <kai.habel@gmx.de>
-
-	* NEWS: Add curl and divergence to new functions list.
-
-2010-12-20  Ben Abbott  <bpabbott@mac.com>
-
-	* README.MacOS, Makefile.am: Update build insructions for MacOS and
-	distribute file in tarball.
-
-2010-12-20  Rik  <octave@nomad.inbox5.com>
-
-	* README.Cray, SENDING-PATCHES, Makefile.am: Remove obsolete files.
-
-2010-12-18  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Deprecate sphcat and spvcat functions.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* README.MacOS: New file documenting build instructions for Mac OSX.
-
-2010-12-09  Kai Habel  <kai.habel@gmx.de>
-
-	* NEWS: Add pie3 to new functions list.
-
-2010-12-09  Marco Atzeri  <marcox_atzeri@yahoo.it>
-
-	* configure.ac: Don't add -lwsock32 to LIBS on cygwin systems.
-
-2010-11-21  Kai Habel  <kai.habel@gmx.de>
-
-	* NEWS: Add uigetdir, uigetfile, uiputfile.
-
-2010-11-19  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (bin_SCRIPTS): Remove run-octave from the list.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.54+.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.54.
-	(OCTAVE_API_VERSION_NUMBER): Now 42.
-	(OCTAVE_RELEASE_DATE): Now 2010-11-19.
-
-2010-11-15  Kai Habel  <kai.habel@gmx.de>
-
-	* NEWS: Add saveas. Fix uimenu.
-
-2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* mkoctfile.cc.in: replace %OCTAVE_CONF_F77_INTEGER8_FLAG% with
-	%OCTAVE_CONF_F77_INTEGER_8_FLAG%.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for nan.h.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AH_BOTTOM): Eliminate special case for __DECCXX: 
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Eliminate special cases for nextstep.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Eliminate special checks for SCO systems.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Update deprecated function list with dispatch.
-
-2010-11-09  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Fix typo where variable name was missing '$'
-
-2010-11-09  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Properly m4 quote AS_HELP_STRING.
-
-2010-11-09  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Remove redundant warning message when '--without-opengl'
-	option used.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for trunc, copysign, or _copysign.
-
-2010-11-08  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (--without-opengl): New configure option.
-
-2010-11-03  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include copysign in the list.
-
-2010-10-28  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Update deprecated function list with autocov and autocor.
-
-2010-10-25  Kai Habel  <kai.habel@gmx.de>
-
-	* NEWS: Add uimenu.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Update deprecated function list for version 3.4.
-
-2010-10-22  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (EXTRA_DIST): Include bootstrap and bootstrap.conf
-	in the list.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.53+.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.53.
-	(OCTAVE_API_VERSION_NUMBER): Now 41.
-	(OCTAVE_RELEASE_DATE): Now 2010-10-19.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* examples/make_int.cc (Fmake_int): Don't pass arg to mlock.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* examples/structdemo.cc (Fstructdemo): Use octave_scalar_map
-	instead of Octave_map.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Style fixes.
-
-2010-09-29  John P. Swensen  <jpswensen@gmail.com>
-
-	* configure.ac: Allow selection of GraphicsMagick or ImageMagick
-	at configure time using "--with-magick=" option.
-
-2010-09-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* m4/ax_blas.m4: Update.
-
-2010-09-23  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in, octave-bug.cc.in: Delete
-	* Makefile.am (EXTRA_DIST): Remove them from the list.
-	(bin_PROGRAMS): Remove octave-bug from the list.
-	(octave_bug_SOURCES, nodist_octave_bug_SOURCES): Delete variables.
-	(BUILT_SOURCES): Remove octave-bug.cc from the list.
-	(bin_SCRIPTS): Remove octave-bug from the list.
-	(octave-bug.cc, octave-bug): Delete rules.
-
-2010-09-20  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include mktime in the list.
-
-2010-09-18  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (BUILT_SOURCES): Include run-octave in the list.
-
-2010-09-16  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (SCRIPTS_EXE_SUFFIX) Delete variable and all uses.
-	(BUILD_COMPILED_AUX_PROGRAMS): New variable.
-	(AMCOND_BUILD_COMPILED_AUX_PROGRAMS): New Automake conditional.
-	* Makefile.am (SCRIPTS_EXE_SUFFIX, BUILT_SHELL_FILES): Delete
-	variables and all uses.
-	(bin_SCRIPTS, bin_PROGRAMS, mkoctfile_SOURCES,
-	nodist_mkoctfile_SOURCES, octave_config_SOURCES,
-	nodist_octave_config_SOURCES, octave_bug_SOURCES,
-	nodist_octave_bug_SOURCES, BUILT_SOURCES): Define conditionally
-	based on AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
-	(noinst_SCRIPTS): New variable.
-	(CLEANFILES): Include $(bin_PROGRAMS) $(bin_SCRIPTS)
-	$(BUILT_SOURCES) in the list.
-	(all-local): Also depend on $(bin_PROGRAMS) and $(noinst_SCRIPTS).
-	(octave-bug.cc, octave-config.cc, mkoctfile.cc, octave-bug)
-	(octave-config, mkoctfile): Make rules conditional on
-	AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
-	(make-version-links, remove-version-links): Define different
-	rules conditional on AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
-
-2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-09-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* m4/ax_blas_f77_func.m4: Update.
-
-2010-09-07  Ben Abbott  <bpabbott@mac.com>
-
-	* acinclude.m4, configure.ac, m4/module.mk: Update acx_*.m4
-	macros to the newer ax_*.m4 versions.
-	* ax_blas.m4, ax_lapack.m4, ax_blas_f77_func.m4,
-	ax_pthread.m4: Add files.
-	* acx_blas.m4, acx_lapack.m4, acx_blas_f77_func.m4,
-	acx_pthread.m4: Remove files.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-08-21  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Add randi to list of new functions
-
-2010-08-09  John Swensen  <jpswensen@gmail.com>
-
-	* mkoctfile.in: Add ability to pass -pthread through to linker.
-
-2010-08-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-08-09  Rik  <octave@nomad.inbox5.com>
-
-	* examples/Makefile.am: Don't echo 'echo' command when building
-	octave.desktop.
-
-2010-08-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-08-05  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Change warning messages about freetype and fontconfig
-	to reflect their requirement for native graphics.  Bug #30594.
-
-2010-08-05  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Remove distribution of emacs directory
-
-	* emacs/info-emacs-info, emacs/info-emacs-octave-help, emacs/module.mk,
-	emacs/NEWS, emacs/octave-hlp.el, emacs/octave-inf.el,
-	emacs/octave-mod.el, emacs/octave-tags, emacs/octave-tags.1,
-	emacs/README, emacs/TODO: Remove from further hg checkouts.
-
-2010-08-05  Rik  <octave@nomad.inbox5.com>
-
-	* ChangeLog: Correct date in version upgrade 3.3.52+ comment.
-
-2010-08-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.52+.
-
-2010-08-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.52.
-	(OCTAVE_API_VERSION_NUMBER): Now 40.
-	(OCTAVE_RELEASE_DATE): Now 2010-08-01.
-
-2010-07-30  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: add .gdbinit to the DISTCLEANFILES list
-
-2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Include list of new functions.
-
-2010-07-08  Rik  <octave@nomad.inbox5.com>
-
-	* NEWS: Update with addition of engineering format.
-
-2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mkoctfile.in: F77_INTEGER_8_FLAG -> OCTAVE_CONF_F77_INTEGER_8_FLAG.
-
-2010-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.ac: Temporarily include F77_INTEGER_8_FLAG in FFLAGS for
-	BLAS checking.
-	* mkoctfile.in: Include F77_INTEGER_8_FLAG in ALL_FFLAGS.
-	* mkoctfile.cc.in: Ditto.
-
-2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-05-11  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Capitalize ARPACK in messages.
-
-2010-05-04  John W. Eaton  <jwe@octave.org>
-
-	* ROADMAP: Delete entry for villad.
-
-2010-04-26  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: fix bug with shell HERE document introduced in
-        previous change.
-
-2010-04-26  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* configure.ac: make all graphics related tests inter-dependent
-
-2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-04-16  David Bateman  <dbateman@free.fr>
-
-	* PROJECTS: Update for new sparse functionality.
-
-2010-04-14  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* NEWS: Update.
-
-2010-04-08  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makefile.am (make-version-links, remove-version-links):
-	Use SCRIPTS_EXE_SUFFIX for scripts, not EXEEXT.
-
-2010-04-07  John W. Eaton  <jwe@octave.org>
-
-	* README.ftp, README.devel:
-	Update from Judd Storrs <jstorrs@gmail.com>.
-
-2010-03-27  David Bateman  <dbateman@free.fr>
-
-	* acinclude.m4 (OCTAVE_CHECK_OPENMP): Macro to check for OpenMP support
-	* configure.ac: Use it here. Disable OpenMP support by default
-
-2010-03-25  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Sort the list.
-
-2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* bootstrap.conf: Include roundf, trunc, truncf.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.51+.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_INIT): Version is now 3.3.51.
-	(OCTAVE_API_VERSION_NUMBER): Now 39.
-	(OCTAVE_RELEASE_DATE): Now 2010-03-24.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Style fixes.
-
-2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-03-15  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AH_BOTTOM): Define GNULIB_NAMESPACE.
-
-2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-03-01  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS,
-	OCTAVE_CXX_COMPLEX_SETTERS): New macros.
-	* configure.ac: Use them.
-
-2010-02-25  John W. Eaton  <jwe@octave.org>
-
-	* gdbinit: New file.
-	* Makefile.am (EXTRA_DIST): Add it to the list.
-	(all-local): Depend on .gdbinit.
-	(.gdbinit): New rule.
-
-2010-02-22  John W. Eaton  <jwe@octave.org>
-
-	* boostrap: Update from gnulib/build-aux/bootstrap.
-
-2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* configure.ac: Define NOMINMAX under MSVC.
-
-	* configure.ac: Add pcre_config --cflags to XTRA_CXXFLAGS instead of
-	CPPFLAGS.
-
-2010-02-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Add $COLAMD_LDFLAGS $COLAMD_LIBS $AMD_LDFLAGS,
-	and $AMD_LIBS to LIBS when checking for cholmod library.
-
-2010-02-17  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_CHECK_FORTRAN_INTEGER_SIZE): Save and
-	restore FFLAGS.  Temporarily add F77_INTEGER_8_FLAG to FFLAGS.
-	* common.mk (F77_INTEGER_8_FLAG): New variable.
-	(do_subst_config_vals): Substitute it.
-	* configeure.ac: Don't add -fdefault-integer-8 to FFLAGS.
-	Substitute F77_INTEGER_8_FLAG.  Improve --enable-64 warning.
-
-2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-02-08  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include progname in the list.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-02-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for gethostname.
-	* bootstrap.conf (gnulib_modules): Include gethostname in the list.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for fcntl.h or fcntl.
-	* bootstrap.conf (gnulib_modules): Include fcntl in the list.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_HAVE_C99_VSNPRINTF): Delete.
-	* configure.ac: Don't call OCTAVE_HAVE_C99_VSNPRINTF.
-	Don't check for snprintf, vfprintf, vsprintf, vsnprintf, or _snprintf.
-	* bootstrap.conf (gnulib_modules): Include vsprintf in the list.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for strerror.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for raise or strdup.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for poll or usleep.
-	* bootstrap.conf (gnulib_modules): Include nanosleep and sleep
-	in the list.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for sigaction, sigpending,
-	sigprocmask, or sigsuspend.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for getcwd.
-	* bootstrap.conf (gnulib_modules): Include getcwd in the list.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Assume signal.h provides sigset_t and sig_atomic_t.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't call OCTAVE_SIGNAL_CHECK,
-	OCTAVE_REINSTALL_SIGHANDLERS, AC_C_CONST, AC_HEADER_STDC, or
-	AC_STRUCT_TM, AC_TYPE_SIGNAL.
-	Don't define RETSIGTYPE_IS_VOID.
-	* acinclude.m4 (OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS):
-	Don't call AC_TYPE_SIGNAL.  Assume sighandler return type is void.
-	(OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS): Delete macros.
-	* bootstrap.conf (gnulib_modules): Include sigaction, signal,
-	and sigprocmask in the list.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for stdint.h.
-	(AH_BOTTOM): Unconditionally include stdint.h.
-	Delete fallback integer type definitions.
-	* bootstrap.conf (gnulib_modules): Include stdint in the list.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for atexit or on_exit.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for bcopy, bzero, or memmove.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include sys_time, sys_times,
-	and time in the list.
-	* configure.ac: Don't check for sys/time.h, sys/times.h,
-	sys/stat.h, sys/utimes, or utimes.h.
-	Don't call AC_HEADER_TIME.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* acinclue.m4 (OCTAVE_STRPTIME_BROKEN): Delete.
-	* configure.ac: Don't call it.
-
-2010-02-01  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_PROG_MAKEINFO): Delete macro.
-	* configure.ac: Don't call it.  Don't issue warning about
-	makeinfo in summary.
-
-2010-01-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for standard C headers (by now, I
-	think we can safely assume they exist).  Don't check for
-	varargs.h.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include sys_stat in the list.
-	* configure.ac: Don't check for sys/types.h or unistd.h.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include unistd in the list.
-	Keep list sorted.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Delete checks for rename, link, readlink, rmdir,
-	strcasecmp, stricmp, strncasecmp, strnicmp, strptime, symlink,
-	and unlink.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include pathmax and readlink
-	in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include symlink in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include link in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include unlink in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include strptime in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include rename in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include rmdir in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include c-strcase in the list.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include getopt-gnu in the list.
-
-2010-01-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* bootstrap.conf: Add round module.
-	* configure.ac: Allow to use MSVC with *mingw* build host. Check for
-	opendir in -ldirent. Add -ladvapi32 to LIBS.
-
-2010-01-15  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Edit.
-
-2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Handle --enable-docs.  Print warning in summary
-	if building documentation is disabled.
-	* Makefile.am (SUBDIRS): Use @DOCDIR@ instead of doc.
-	(dist-hook): New target, conditional on AMCOND_BUILD_DOCS.
-
-2010-01-09  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for nlink_t.
-	(AH_BOTTOM): Don't define nlink_t here.
-
-2010-01-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for times.
-	* bootstrap.conf (gnulib_modules): Include times in the list.
-
-2010-01-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Don't check for gettimeofday, or whether
-	gettimeofday accepts one or two arguments.
-	* bootstrap.conf (gnulib_modules): Include gettimeofday in the list.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include mkfifo in the list.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Remove nonexistent fstat module.
-
-2009-12-22  Rik  <octave@nomad.inbox5.com>
-
-	* WWW/: remove web directory no longer used
-
-2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-12-27  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Use libtool cache variables to simplify checks
-	for dynamic linking api.
-
-2009-12-26  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include fstat, lstat, and
-	stat in the list.
-	* configure.ac: Don't check for fstat, lstat, or stat.
-
-2009-12-25  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include mkdir in the list.
-	* configure.ac: Don't check for mkdir.
-	Don't call OCTAVE_MKDIR_TAKES_ONE_ARG.
-	* acinclude.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): Delete.
-
-2009-12-25  John W. Eaton  <jwe@octave.org>
-
-	* bootstrap.conf (gnulib_modules): Include crypto/md5 in the list.
-
-2009-12-22  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac: Remove second redundant test for nlink_t
-
-2009-12-21  Rik  <octave@nomad.inbox5.com>
-
-	* dlfcn directory: Remove dlfcn directory with leftover code from 1996
-
-2009-12-20  Rik  <octave@nomad.inbox5.com>
-
-	* acinclude.m4: use M4 quoting for arguments to autoconf macros
-
-2009-12-20  Rik  <octave@nomad.inbox5.com>
-
-	* configure.ac, acinclude.m4: Better warnings when gnuplot is not
-	installed but native graphics are available
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* emacs/module.mk, examples/Makefile.am, info-emacs-info,
-	info-emacs-octave-help: Distribute emacs specific files from emacs
-	directory rather than examples directory
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* m4/module.mk, Makefile.am: Redo previous patch with distribution
-	triggered by m4/module.mk.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Distribute m4/gnulib-cache.m4 per recommendation
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am, examples/Makefile.am, common.mk, configure.ac: Eliminate
-	TOPDIR variable in favor of built-in automake variables of top_builddir
-	and top_srcdir.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Use M4 quoting for arguments to autoconf macros containing
-	variables
-
-2009-12-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fsize_equal): Allow calling with zero arguments.
-	variables
-
-2009-12-15  John W. Eaton  <jwe@octave.org>
-
-	* README.MSVC: Delete section about obtaining glob library.
-	* bootstrap.conf (gnulib_modules): Add fnmatch and glob to the list.
-	* common.mk (LIBGLOB): Delete variable.
-	(do_subst_config_vals): Don't substitute it.
-	* octave-bug.in, octave-bug.cc.in: Eliminate LIBGLOB variable.
-	* configure.ac: Don't check for glob.h or the glob and fnmatch
-	functions.  Eliminate LIBGLOB variable.
-
-2009-12-11  Rik  <octave@nomad.inbox5.com>
-
-	* HACKING: Elaborate which DIRNAME to use for --gnulib-srcdir option.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Add $PTHREAD_LIBS to $LIBS and $PTHREAD_CFLAGS
-	to $CFLAGS for subsequent tests.
-
-2009-12-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: remove install-extras target and use automake syntax to
-	distribute NEWS file.
-	* examples/Makefile.am: remove install-images target and use automake
-	syntax to distribute image data.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* .dir-locals.el: Correctly set indent-tabs-mode for ChangeLogs,
-	and Makefiles.
-
-	* common.mk (cp_update_rule): New macro.
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in, mkoctfile.cc.in: If output file is specified and
-	it does not end in output_ext, append output_ext.
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in, mkoctfile.cc.in: When compiling files in
-	subdirectories, place object files in current directory by
-	default.
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.cc.in: Accept long options with single -.
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Accept long options with single -.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* HACKING: Clarify gnulib checkout and use.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Remove URL argument from AC_INIT.
-	Use AC_CONFIG_AUX_DIR.  Move AM_INIT_AUTOMAKE after other
-	AC_CONFIG setup macros.  Use gl_EARLY and gl_INIT for gnulib.
-	Add libgnu/Makefile to the list of AC_CONFIG_FILES.  Eliminate
-	special case check for for strftime.
-	* bootstrap: New file, from gnulib.
-	* bootstrap.conf: New file, from gnulib.  Override bootstrap
-	defaults for checkout_only_file, gnulib_tool_option_extras,
-	gnulib_name, and source_base.
-	(gnulib_modules): Add strftime to the list.
-	* autogen.sh: Simply generate makefile fragments and call
-	bootstrap to do the rest of the initial setup.
-	* Makefile.am (SUBDIRS): Add libgnu to the list.
-	* libgnu/Makefile.am: New directory and file.
-	* INSTALL: Remove our copy so version from gnulib will be
-	distributed.
-	* HACKING: New file.
-
-2009-12-08  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: add BUGS and OCTAVE.INSTALL to DISTCLEANFILES
-
-2009-12-08  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Update gnuplot status message.
-	* acinclude.m4 (OCTAVE_PROG_GNUPLOT): Likewise.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* examples/make_int.cc: Delete Emacs local variables.
-
-	* .dir-locals.el: New file.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* examples/firstmexdemo.c, examples/fortdemo.cc,
-	examples/funcdemo.cc, examples/hello.cc, examples/make_int.cc,
-	examples/mycell.c, examples/myfeval.c, examples/myfunc.c,
-	examples/mypow2.c, examples/mysparse.c, examples/mystring.c,
-	examples/mystruct.c, examples/paramdemo.cc,
-	examples/stringdemo.cc, examples/structdemo.cc,
-	examples/unwinddemo.cc, examples/embedded.cc: Untabify.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (OCTAVE_API_VERSION_NUMBER): New variable.
-	(OCTAVE_API_VERSION): Define using OCTAVE_API_VERSION_NUMBER.
-	* common.mk (OCTAVE_API_VERSION_NUMBER): New variable.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Check $have_x = yes, not just $have_x.
-	From Carmine Paolino <earcar@gmail.com>.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Require auotconf 2.62.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* common.mk (OCTAVE_VERSION, OCTAVE_API_VERSION)
-	(OCTAVE_RELEASE_DATE, OCTAVE_COPYRIGHT, OCTAVE_IDX_TYPE):
-	New substituted variables.
-	(version): Define from $(OCTAVE_VERSION).
-	(api_version): Define from $(OCTAVE_API_VERSION).
-	(do_subst_texinfo_vals): Delete macro.
-
-	* configure.ac (AC_CONFIG_HEADER): Quote arg.
-	(AC_CONFIG_FILES): Remove mxarray.h and version.h from the list.
-
-	* examples/Makefile.am (CLEANFILES): New variable.
-
-2009-11-30  Kacper Kowalik  <xarthisius.kk@gmail.com>
-
-	* acinclude.m4 (OCTAVE_HDF5_HAS_ENFORCED_16_API): New macro that
-	tests whether the HDF5 library has an enforced v1.6 API and detects
-	v1.8 APIs.
-	* configure.m4: Adapt test for HDF5 libraries to support v1.8
-	HDF5 libraries.
-
-2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* configure.ac (HAVE_H5GGET_NUM_OBJS) Remove define.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* NEWS: Document ftp objects.
-	* configure.ac: Document that curl libraries impact ftp objects.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-11-25  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* acinclude.m4 (OCTAVE_PROG_GNUPLOT): Don't check for pgnuplot or
-	pipe-gnuplot on Windows systems.  Set default to gnuplot for all
-	systems.
-	(OCTAVE_PROG_GHOSTSCRIPT): Check for gswin32c first on Windows
-	systems, then gs.
-
-2009-11-25  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am examples/Makefile.am liboctave/Makefile.am
-	scripts/Makefile.am src/Makefile.am test/Makefile.am:
-	Remove unnecessary .PHONY targets for common targets which
-	Automake supplies already.  Examples are local-all, install-local-data
-
-2009-11-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_MSG_NOTICE): Report graphics (fltk) CFLAGS.
-	Report fontconfig CFLAGS and LIBS.
-	Report freetype2 CFLAGS and LIBS.
-
-2009-11-21  John W. Eaton  <jwe@octave.org>
-
-	* common.mk: Substitute FT2_CFLAGS.
-	* configure.ac: Remove spurious lines in check for freetype.  Add
-	$FT2_CFLAGS to $XTRA_CXXFLAGS.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-11-16  John W. Eaton  <jwe@octave.org>
-
-	* common.mk (AM_CXXFLAGS): Don't include DLL_CXXDEFS in the list.
-	(CONFIGURE_CFLAGS): New variable.
-	(AM_CFLAGS): Define similar to AM_CXXFLAGS.
-
-2009-11-12  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac (AC_CONFIG_FILES): Also generate libcruft/mkf77def.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* acinclude.m4 (OCTAVE_IEEE754_DATA_FORMAT): Fail if IEEE 754
-	format is not detected.
-
-2009-11-11  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* configure.ac: Remove tests for ftgl.
-
-2009-11-11  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.ac: Remove -mwindows from FLTK_LDFLAGS.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Fail if LT_INIT it is not defined.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Update.
-
-	* configure.ac: Exit with error if BLAS or LAPACK libraries are
-	not found or if the BLAS library is found to be incompatible with
-	the Fortran compiler.  Eliminate warn_blas_f77_incompatible
-	variable.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Set octincludedir to
-	$(includedir)/octave-$(version)/octave, not
-	$(includedir)/octave-$(version).
-	* mkoctfile.in: Set DEFAULT_INCFLAGS to -I$octincludedir/.. and
-	-I$octincludedir instead of -I$octincludedir and
-	-I$octincludedir/octave.
-
-	* configure.ac: Pass args to AC_INIT.  Invoke AM_INIT_AUTOMAKE and
-	AC_PROG_LIBTOOL.  Don't call AC_PROG_RANLIB.  Set version info here.
-	Call AC_CONFIG_MACRO_DIR.  Give same warning for gcc 1.x and 2.x.
-	Use AM_CONDITIONALS for FFTW, BLAS, and LAPACK.  Don't set
-	variables with calls to ACX_BLAS_WITH_F77_FUNC or ACX_LAPACK.
-	Don't substitute BLAS_DIR or LAPACK_DIR.  Use LT_INIT.  Eliminate
-	--enable-shared and --enable-static options (now provided by
-	LT_INIT).  Set SHARED_LIBS and STATIC_LIBS variables based on
-	LT_INIT variables.  Handle dlopen libraries with info from
-	LT_INIT.  Substitute NO_UNDEFINED_FLAG (only set on Windows
-	sytems).  Include $LAPACK_LIBS in $LIBS when checking for qrupdate
-	and cholmod.  Handle --enable-dl consistently with other --enable
-	options.  Don't copy $srcdir/Makefile in AH_BOTTOM commands.
-	Substitute LEX_OUTPUT_ROOT.  Use AM_CONDITONAL for
-	ENABLE_DYNAMIC_LINKING.  Reindent configure summary.
-	(AC_CONFIG_FILES): Don't list Makefiles in libcruft
-	subdirectories.  Generate Makefile and src/version.h.  Don't
-	generate Makeconf, octMakefile, m4/Makefile, emacs/Makefile,
-	examples/@polynomial/Makefile, or examples/@FIRfilter/Makefile.
-
-	* run-octave.in Call libtool to execute src/octave.
-	(ldpreloadsep, liboctinterp, liboctave, libcruft): Delete variables.
-	(INFOFILE): Find it in $top_srcdir, not $builddir.
-
-	* acinclude.m4: Rename from aclocal.m4.
-	(OCTAVE_PROG_FLEX): Don't include -t in LFLAGS.
-
-	* autogen.sh: Exit immediately on error.  Use libtoolize, aclocal,
-	and automake.  Only run autoconf and autoheader in top-level and
-	scripts directories.
-	Run liboctave/config-ops.sh, doc/interpreter/config-images.sh, and
-	src/DLD-FUNCTIONS/config-module.sh, to generate source lists for
-	subdirectories.
-
-	* AUTHORS, Makefile.am, common.mk, m4/module.mk, emacs/module.mk,
-	examples/@FIRfilter/module.mk, examples/@polynomial/module.mk,
-	examples/Makefile.am: New files.
-	* Makeconf.in, Makefile, octMakefile.in, m4/Makefile.in,
-	emacs/Makefile.in, install-sh, examples/Makefile.in,
-	examples/@FIRfilter/Makefile.in, examples/@polynomial/Makefile.in:
-	Delete.
-
-2009-11-09  David Grundberg  <davidg@cs.umu.se>
-
-	* configure.ac: Use AMD_CPPFLAGS while checking for UMFPACK.
-
-2009-10-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* configure.in: Add support for dlopen on Mac systems.
-
-2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.ac: Define HAVE_QRUPDATE_LUU if qrupdate supports LU updates.
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.ac: Use the LANG argument to OCTAVE_CHECK_LIBRARY to avoid
-	ugly names.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-09-18  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4: Consistently quote first arg to AC_DEFUN.
-
-2009-09-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Also AC_DEFINE OCTAAVE_IDX_TYPE.
-	(AH_BOTTOM): Include contents of libcruft/misc/oct-dlldefs.h and
-	liboctave/oct-types.h here.  Use C-style comments.
-	(AC_CONFIG_FILES): Remove liboctave/oct-types.h from the list.
-
-2009-09-15  John W. Eaton  <jwe@octave.org>
-
-	* configure.ac: Rename from configure.in.
-	(AC_CONFIG_FILES): Add m4/Makefile to the list.
-	* acx_blas.m4, acx_lapack.m4, acx_blas_f77_func.m4,
-	acx_pthread.m4: Move to m4 subdirectory.
-	* m4/Makefile.in: New file.
-	* octMakefile.in (M4_FILES): Adjust for new m4 subdirectory.
-	Rename all instances of configure.in to configure.ac.
-	(CONF_DISTSUBDIRS, DISTSUBDIRS): Add m4 to the lists.
-
-	* configure.in: Substitute ac_config_headers.
-	* octMakefile.in (CONFIG_FILES): Include @ac_config_headers@ in
-	the list.  From Thorsten Meyer <thorsten.meyier@gmx.de>.
-
-2009-09-04  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (SPARSE_CPPFLAGS, SPARSE_LDFLAGS, FFTW_CPPFLAGS,
-	FFTW_LDFLAGS): Don't sort lists.
-
-2009-09-02  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makeconf.in: Order SPARSE_LIBS so linking succeeds on Cygwin.
-
-2009-09-04  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	*  README.Cygwin: Update version info.
-
-2009-09-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (ldpreloadsep): New variable.  Set to ':' for Cygwin.
-	* Makeconf.in (do-subst-script-vals): Substitute it.
-	* run-octave.in: Use it to seprate elements in the LD_PRELOAD variable.
-
-2009-09-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): If HAVE_Z is defined, define HAVE_ZLIB.
-
-2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in (FLOAT_TRUNCATE): New config macro.
-
-2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* acx_blas_f77_func.m4 (ACX_BLAS_F77_FUNC): Check for correct INTEGER
-	size.
-
-2009-09-01  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_REQUIRE_64_BIT_FORTRAN_INTEGERS): New macro.
-	* configure.in: Use it, if building with --enable-64.
-	Move checks for Fortran compiler ahead of checks for libraries.
-
-2009-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-08-27  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Properly save and restore CPPFLAGS and LIBS when
-	checking for GraphicsMagick++.  Don't temporarily change LDFLAGS.
-
-2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (m4_ifblank, m4_ifnblank): State FSF copyright and markup
-	as FIXME.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Restore LIBS after checking for ARPACK.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for UMFPACK.
-	* octave-bug.in, octave-bug.cc.in: Substitute UMFPACK_CPPFLAGS and
-	UMFPACK_LDFLAGS.
-	* Makeconf.in (UMFPACK_CPPFLAGS, UMFPACK_LDFLAGS): New variables.
-	(do-subst-config-vals): Substitute them.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for qrupdate.
-	* octave-bug.in, octave-bug.cc.in: Substitute QRUPDATE_CPPFLAGS and
-	QRUPDATE_LDFLAGS.
-	* Makeconf.in (QRUPDATE_CPPFLAGS, QRUPDATE_LDFLAGS): New variables.
-	(do-subst-config-vals): Substitute them.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in: Correct substitutions.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Allow empty list of header files.
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for arpack.
-	* octave-bug.in, octave-bug.cc.in: Substitute ARPACK_CPPFLAGS and
-	ARPACK_LDFLAGS.
-	* Makeconf.in (ARPACK_CPPFLAGS, ARPACK_LDFLAGS): New variables.
-	(do-subst-config-vals): Substitute them.
-
-2009-08-26  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* mkoctfile.cc.in: Fix typo.
-	* octave-bug.cc.in: Correct substututions.
-
-2009-08-25  David Grundberg  <individ@acc.umu.se>
-
-	* configure.in: Run PKG_PROG_PKG_CONFIG earlier. Use pkg-config
-	instead of GraphicsMagick++-config. Determine only -I, -L and -l
-	flags and put them in MAGICK_CPPFLAGS, MAGICK_LDFLAGS and
-	MAGICK_LIBS respectively. Substitute these variables.
-	Remove variables MAGICK_CONFIG and MAGICK_INCFLAGS.
-	Test linking against GraphicsMagick++.
-	* Makeconf.in: Don't run $(MAGICK_CONFIG) here. Use substituted
-	valued from MAGICK_CPPFLAGS, MAGICK_LDFLAGS and MAGICK_LIBS.
-	Remove variables MAGICK_CONFIG and MAGICK_INCFLAGS.
-
-2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* acx_blas_f77_func.m4: Fix typo.
-
-2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-08-18  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API): If test fails, set
-	octave_hdf5_ok to no instead of setting HAVE_HDF5 to false.
-	* configure.in: Check octave_hdf5_ok instead of HAVE_HDF5.
-	Set TEXINFO_HDF5 if HDF5 library is found.
-
-2009-08-18  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (ALL_CPPFLAGS): Add HDF5_CPPFLAGS to the list.
-	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API):
-	Set HAVE_HDF5 to false, not WITH_HDF5.
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for HDF5
-	library.  Print HDF5_CPPFLAGS and HDF5_LDFLAGS in the summary.
-	* octave-bug.in, octave-bug.cc.in, Makeconf.in: Substitute
-	HDF5_CPPFLAGS and HDF5_LDFLAGS.
-
-2009-08-18  John W. Eaton  <jwe@octave.org>
-
-	* acx_blas_f77_func.m4 (ACX_BLAS_F77_FUNC): Save and restore LIBS.
-
-2009-08-18  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Use variables named
-	octave_check_library_save_XXX instead of save_XXX.
-	* configure.in: Add Z_LDFLAGS and Z_LIBS to LIBS, and Z_CPPFLAGS
-	to CPPFLAGS in checks for curl and glpk libraries.
-
-2009-08-18  David Grundberg  <individ@acc.umu.se>
-
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Clear QHULL_LIBS etc on
-	errors. Interpret --without-qhull etc correctly.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in, mkoctfile.cc.in (FFTW3_LDFLAGS, FFTW3_LIBS,
-	FFTW3F_LDFLAGS, FFTW3F_LIBS): Substitute instead of FFTW_LIBS.
-	(FFTW_LIBS): Define from FFTW3_LDFLAGS, FFTW3_LIBS,
-	FFTW3F_LDFLAGS, and FFTW3F_LIBS variables.
-
-	* octave-bug.cc.in, octave-bug.in (Z_CPPFLAGS, Z_LDFLAGS):
-	Substitute and display them.
-	(Z_LIBS): Rename from ZLIB_LIBS.
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for ZLIB.
-	Print Z_CPPFLAGS and Z_LDFLAGS in the summary.
-	* Makeconf.in (Z_CPPFLAGS, Z_LDFLAGS): New variables.
-	(Z_LIBS): Rename from ZLIB_LIBS.
-	(do-subst-config-vals): Substitute them.
-
-	(ALL_CPPFLAGS): New variable.
-	(%.o : %.c, %.o : %.cc, pic/%.o : %.c, pic/%.o : %.cc):
-	Use $(ALL_CPPFLAGS) instead of $(CPPFLAGS) in command.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in, octave-bug.cc.in: Include AMD_CPPFLAGS,
-	AMD_LDFLAGS, AMD_LIBS, ARPACK_LIBS, BLAS_LIBS, CAMD_CPPFLAGS,
-	CAMD_LDFLAGS, CAMD_LIBS, CARBON_LIBS, CCOLAMD_CPPFLAGS,
-	CCOLAMD_LDFLAGS, CCOLAMD_LIBS, CHOLMOD_CPPFLAGS, CHOLMOD_LDFLAGS,
-	CHOLMOD_LIBS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS, COLAMD_LIBS,
-	CURL_CPPFLAGS, CURL_LDFLAGS, CURL_LIBS, CXSPARSE_CPPFLAGS,
-	CXSPARSE_LDFLAGS, CXSPARSE_LIBS, DL_LIBS, FFTW3_CPPFLAGS,
-	FFTW3_LDFLAGS, FFTW3_LIBS, FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS,
-	FFTW3F_LIBS, GRAPHICS_LIBS, GLPK_CPPFLAGS, GLPK_LDFLAGS,
-	GLPK_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS, PTHREAD_LIBS,
-	QHULL_CPPFLAGS, QHULL_LDFLAGS, QHULL_LIBS, QRUPDATE_LIBS,
-	READLINE_LIBS, REGEX_LIBS, TERM_LIBS, UMFPACK_LIBS, X11_INCFLAGS,
-	X11_LIBS, and ZLIB_LIBS in the summary of varibles.
-
-	* configure.in: Include LEXLIB and LIBGLOB in the summary.
-
-2009-08-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* aclocal.m4 (OCTAVE_HDF5_DLL): Include HDF5_LIBS in LIBS before
-	attempting link.
-
-2009-08-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4: Define the autoconf 2.64+ m4sugar macros `m4_ifblank'
-	and `m4_ifnblank' if on earlier autoconfs.
-
-2009-08-13  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (GLPK_CPPFLAGS, GLPK_LDFLAGS,
-	AMD_CPPFLAGS, AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS,
-	CCOLAMD_CPPFLAGS, CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS,
-	CHOLMOD_LDFLAGS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS,
-	CXSPARSE_CPPFLAGS, CXSPARSE_LDFLAGS): New variables.
-	(do-subst-config-vals): Substitute Them.
-	(SPARSE_CPPFLAGS, SPARSE_LDFLAGS, SPARSE_LIBS, FFTW_CPPFLAGS,
-	FFTW_LDFLAGS, FFTW_LIBS): New variables.
-
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for GLPK, AMD,
-	CAMD, CCOLAMD, CHOLMOD, COLAMD, CXSPARSE, FFTW3, and FFTW3F
-	libraries.  Print GLPK_CPPFLAGS, GLPK_LDFLAGS, AMD_CPPFLAGS,
-	AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS, CCOLAMD_CPPFLAGS,
-	CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS, CHOLMOD_LDFLAGS,
-	COLAMD_CPPFLAGS, COLAMD_LDFLAGS, CXSPARSE_CPPFLAGS,
-	CXSPARSE_LDFLAGS, FFTW3_CPPFLAGS, FFTW3_LDFLAGS, FFTW3_LIBS,
-	FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS, and FFTW3F_LIBS in the summary.
-	(AH_BOTTOM): Define HAVE_FFTW if HAVE_FFTW3 and HAVE_FFTW3F are
-	both defined.
-
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): New optional arguments for
-	language and doc string.
-
-2009-08-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Prepend to LIBS rather than
-	replacing.
-
-2009-08-13  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (QHULL_CPPFLAGS, QHULL_LDFLAGS, CURL_CPPFLAGS,
-	CURL_LDFLAGS): New variables.
-	(do-subst-config-vals): Substitute QHULL_CPPFLAGS, QHULL_LDFLAGS,
-	CURL_CPPFLAGS, and CURL_LDFLAGS
-	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for qhull and
-	curl libraries.  Print QHULL_CPPFLAGS, QHULL_LDFLAGS,
-	CURL_CPPFLAGS, and CURL_LDFLAGS in the summary.  Print glpk
-	library warning at time of check.  Use AC_MSG_WARN, not
-	AC_MSG_RESULT, to print fftw warning.
-	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): New macro.
-	(AC_CHECK_QHULL_VERSION, AC_CHECK_QHULL_OK):
-	Implement with modern autoconf macros.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Define and substitute TERM_LIBS instead of
-	TERMLIBS.  Don't add TERM_LIBS to LIBS.  Define DL_LIBS instead of
-	adding them to LIBS.  Display TERM_LIBS and DL_LIBS in summary
-	reporrt.
-	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Define and substitute
-	READLINE_LIBS instead of LIBREADLINE.  Don't add readline library
-	to LIBS.  Display READLINE_LIBS in summary report.  Temporarily
-	add TERM_LIBS to LIBS when checking for readline library.
-	* Makeconf.in, mkoctfile.cc.in, mkoctfile.in:
-	Use READLINE_LIBS instead of LIBREADLINE and TERM_LIBS instead of
-	TERMLIBS.  Substitute DL_LIBS.
-	(do-subst-config-vals): Substitute TERM_LIBS and DL_LIBS.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Generate separate variables for HDF5_LIBS and
-	ZLIB_LIBS.  Don't add them to LIBS.  Add separate entries for them
-	in the summary report.
-	* Makeconf.in (HDF5_LIBS, ZLIB_LIBS): New variables.
-	(do-subst-config-vals): Substitute AMD_LIBS, ARPACK_LIBS,
-	CAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS, COLAMD_LIBS, CXSPARSE_LIBS,
-	FT2_LIBS, GRAPHICS_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS,
-	PTHREAD_LIBS, QHULL_LIBS, QRUPDATE_LIBS, REGEX_LIBS, UMFPACK_LIBS,
-	ZLIB_LIBS.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* acx_pthread.m4: New file.
-	* configure.in: Include it and invoke ACX_PTHREAD macro.  Print
-	ptrhead flags and libraries in summary output.
-	* Makeconf.in (PTHREAD_CFLAGS, PTHREAD_LIBS): Substitute values.
-	(ALL_CFLAGS, ALL_CXXFLAGS): Include $(PTHREAD_CFLAGS).
-
-2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-07-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-07-16  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (MAGICK_LIBS): Don't pass --ldflags to $(MAGICK_CONFIG).
-
-2009-07-09  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Don't use system strftime on MinGW systems.
-
-2009-06-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Correct info.
-	* NEWS: Update.
-
-2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* aclocal.m4: Add pkg.m4 macros.
-	* configure.in (HAVE_FREETYPE): New defined variable.
-	* configure.in: Add configure tests for Fontconfig detection.
-
-2009-06-23  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* run-octave.in: Exclude @-files from path.  Remove CVS exclusions.
-
-2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Update.
-
-2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* examples/@polynomial/subsref.m: Handle ':' correctly.
-	* examples/@polynomial/subsasgn.m: Ditto.
-
-2009-06-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* example/@polynomial/numel.m: New method.
-	* example/@polynomial/Makefile.in: Include it.
-
-2009-05-22 Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* mkoctfile.cc.in: mask MSVC specific linker flags for mex output
-
-2009-06-02  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* examples/@polynomial: Fix end method for zero based indexing.
-
-2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* examples/@polynomial/subsref.m: Allow chained subscripts,
-	fix behavior according to docs.
-	* examples/@polynomial/subsasgn.m: Allow chained subscripts,
-	fix behavior according to docs.
-
-2009-06-02  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* examples/@polynomial: Remove tabs from all functions so
-	documentation looks right.  Fix a bunch of methods
-	that didn't work.  Add a method referred to in the docs
-	that didn't exist.
-
-2009-05-26  John W. Eaton  <jwe@octave.org>
-
-	* src/dirfns.cc (Fpathsep): Allow path separator to be set.
-
-2009-03-17  Thomas Weber  <thomas.weber.mail at gmail.com>
-
-	* configure.in: fix typo with regards to termios.h
-
-2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* examples/@FIRfilter/Makefile.in: New file.
-	* examples/Makefile.in: Include it.
-	* configure.in: Ditto.
-
-2009-05-24  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.in: (SCRIPTS_EXE_SUFFIX) Define to ".exe" for
-	mingw32 compilation (similar to msvc)
-
-2009-05-24  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* examples/@FIRfilter: added FIRfilter class example.
-
-2009-05-22  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* src/sysdep.cc: Removed CYGWIN_init
-
-2009-05-21  Marco Atzeri  <marco_atzeri@yahoo.it>
-	* configure.in: Correct my mistake in cygwin SHLBINPRE SHLBIN
-
-2008-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* aclocal.m4 (AC_CHECK_QHULL_OK): Do not use -lm under
-	Windows systems.
-	* configure.in: Add -luser32 to LIBS under Windows.
-
-	* configure.in (SCRIPTS_EXE_SUFFIX): New substituted
-	variable. Define to ".exe" for MSVC compilation.
-	* octMakefile.in (SCRIPTS_EXE_SUFFIX): New variable.
-	(DISTFILES): Add mkoctfile.cc.in, octave-config.cc.in and
-	octave-bug.cc.in.
-	(SHELL_SCRIPTS): Use SCRIPTS_EXE_SUFFIX.
-	(mkoctfile.cc, mkoctfile$(EXEEXT)): New build rules.
-	(octave-config.cc, octave-config$(EXEEXT)): Likewise.
-	(octave-bug.cc, octave-bug$(EXEEXT)): Likewise.
-	(install, install-strip, uninstall): Use SCRIPTS_EXE_SUFFIX.
-	(maintainer-clean, distclean): Remove mkoctfile.[cc|o|exe],
-	octave-config.[cc|o|exe] and octave-bug.[cc|o|exe].
-	(clean): Remove mkoctfile$(EXEEXT), octave-config$(EXEEXT),
-	octave-bug$(EXEEXT) and the corresponding object files.
-
-2009-05-07  Rik  <rdrider0-list@yahoo.com>
-
-	* README.mirrors: Remove invalid mirror sites which no longer exist.
-
-2009-05-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.in, mkoctfile.in, mkoctfile.cc.in, octave-bug.in,
-	octave-bug.cc.in: Eliminate last remnants of f2c goop.
-
-2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* configure.in, Makeconf.in: (SHLPRE): Rename from SHLLIBPRE.
-
-2009-05-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Include the whole 3.x g++ series as problematic.
-	* Makefile: Don't mention that g++-3.x might work.
-
-2009-05-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Put -lftgl ahead of $FT2_LIBS, and $FT2_LIBS ahead
-	of $OPENGL_LIBS.
-
-2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
-
-	* aclocal.m4 (OCTAVE_HAVE_C99_VSNPRINTF): New macro.
-	* configure.in: Use it.
-
-	* configure.in (rs6000-ibm-aix* | powerpc-ibm-aix*): Set
-	library_path_var to LIBPATH.
-	(hppa*-hp-hpux*): Set library_path_var to SHLIB_PATH.
-	(ia64*-hp-hpux*): New case for shared library variables.
-
-	* configure.in: Provide decls for exp2, round, and tgamma if they
-	are missing.
-
-2009-04-11  David Bateman  <dbateman@free.fr>
-
-	* NEWS: Add new graphics functions.
-
-2009-04-05  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Use AC_USE_SYSTEM_EXTENSIONS instead of
-	AC_GNU_SOURCE, AC_AIX, AC_MINIX, and AC_ISC_POSIX.
-	Require Autoconf 2.60.
-
-	* configure.in: Add -Wformat to extra warning flags.  Add
-	-Wconversion to strict warning flags.
-
-2009-04-02  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-script-install): Use $(INSTALL_DATA) instead of
-	mv to install PKG_ADD file.
-
-2009-04-02  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makeconf.in (do-subst-script-vals): Use SHLLIBPRE instead of
-	LIBPRE for names for shared libraries.
-
-2009-03-28  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* configure.in: For cygwin, set LIBPRE=lib and clear CPICFLAG,
-	CXXPICFLAG, and FPICFLAG.
-
-2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (OCTAVE_CMATH_FUNC): Add missing AC_LANG_POP.
-	* configure.in: Enclose string in quotes.
-
-2009-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: More updates.
-
-2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (OCTAVE_CMATH_FUNC): New macro.
-	* configure.in: Use it.
-
-2009-03-09  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Use doc-cache instead of DOC for doc cache file.
-	* configure.in: Likewise.
-
-	* configure.in (--enable-extra-warning-flags): New option to
-	control extra compiler warning flags.
-	(--enable-strict-warning-flags): Rename from --enable-picky-flags.
-	(GXX_STRICT_FLAGS): Remove -Wenum-clash from the list.
-
-2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
-
-	* NEWS: Mention 'histc'.
-
-2009-03-07  John W. Eaton  <jwe@octave.org>
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (doc_cache_file): New default variable
-	* Makeconf.in (@doc_cache_file, do-subst-default-vals): Substitute it.
-
-2009-02-24  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in (DOCFILE): New variable.  Pass --doc-cache-file
-	option to Octave.
-
-	* configure.in: Copy Makefile to build directory if not building
-	in srcdir.
-
-2009-02-24  Thorsten Meyer  <thorsten@hexe>
-
-	* configure.in: AC_SUBST ac_config_files.
-	* Makeconf.in (config_opts): Define CONFIG_SUBDIRS variable.
-	* Makefile: Add make target for configuration files.
-	* octMakefile.in: Add make targets for configuration files,
-	config.status and configure.
-
-	* Makefile.in: Rename to Makefile.
-	* configure.in: Remove Makefile from list of autogenerated
-	configuration files.
-	* octMakefile.in: Remove references to Makefile.in, add Makefile
-	to list of CONF_DISTFILES.
-	* octMakefile.in (maintainer-clean distclean): Don't delete Makefile.
-
-2009-02-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.in: Check for mkstemps on MinGW platform
-	(HAVE_MKSTEMPS): Define if mkstsmps is avilable in libiberty.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Mention cummin and cummax
-
-2009-02-17  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_GPERF): Don't run gperf.
-
-	* Makeconf.in (do-subst-config-vals): Substitute CARBON_LIBS,
-	X11_INCFLAGS, and X11_LIBS.
-
-2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* Makeconf.in: Substitute CARBON_LIBS.
-	* configure.in: Use CARBON_LIBS instead of LIBS for framework Carbon.
-
-	* configure.in: Fix test for X11 if "--without-x" is given.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Yet more updates.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Mention command-style parsing changes.  More updates.
-
-2009-02-13  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: Update for release.
-
-2009-02-11 Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* aclocal.m4 (OCTAVE_GLUTESSCALLBACK_THREEDOTS): New macro.
-	(OCTAVE_OPENGL): Use it in OpenGL check.
-
-2009-02-11 Ben Abbott  <bpabbott@mac.com>
-
-	* configure.in: Include FTGLTextureFont.h when FTGL_UPPER_CASE is
-	not defined.
-
-2009-02-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (octetcdir): New default value.
-	* Makeconf.in (octetcdir): New variable.
-	(do-subst-default-vals): Substitute octetcdir.
-	* octMakefile.in (install, uninstall): Use $(octetcdir) for NEWS.
-	(DIRS_TO_MAKE): Add $(octetcdir) to the list.
-
-2009-02-10  Rafael Laboissiere  <rafael@debian.org>
-
-	* examples/Makefile.in: Run some clean targets on sub-directory
-	@polynomial.
-
-2009-02-09  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (dist): Create subdirs of examples, not scripts.
-
-	* examples/@polynomial/Makefile.in (do-mkpkgadd):
-	Provide special definition for this directory.
-
-	* examples/Makefile.in (EXAMPLE_SOURCES): Delete unused variable.
-	(SUBDIRS, DISTSUBDIRS): Don't reset to empty.
-
-2009-02-08  John W. Eaton  <jwe@octave.org>
-
-	* install-octave.in: Delete.
-	* configure.in: Delete AC_CONFIG_COMMANDS macro that was used to
-	make install-octave executable.
-
-2009-02-07  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (all): Display $(prefix) in summary message.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API): New macro.
-	* configure.in: Use it in HDF5 check.
-
-2009-02-04  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* configure.in: Use separate cases for *-*-mingw* and *-*-cygwin*
-	to set variables related to creating shared libraries.
-
-2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (AC_CHECK_QHULL_OK): New macro, based on suggestion by
-	Petr Mikulik <mikulik@physics.muni.cz>.
-	* configure.in: Call it.
-
-2009-02-01  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* autogen.sh: Remove printing of cvs motd.
-
-2009-01-30  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* configure.in (SHLLIBPRE, SHLBINPRE): Fix definitions for Cygwin.
-	(SHLEXT, SHLLIB, SHLBIN, SONAME_FLAGS): Fix definitions for Cygwin
-	and MinGW.
-
-2009-01-30  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.in: Add -lgdi32 to LIBS on *-*-msdosmsvc* and
-	*-*-mingw* systems.
-
-2009-01-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* aclocal.m4 (OCTAVE_HAVE_FRAMEWORK): Add support for
-	--with-framework-<name> and replace "$ac_safe" by "$1".
-	* configure.in: Change "have_carbon" with
-	"have_framework_carbon".
-
-2009-01-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check to see that pcre library has pcre_compile
-	function.
-
- 	* configure.in (SHLLIBPRE, SHLBINPRE): New variables.  AC_SUBST them.
- 	(*-*-cygwin*): Set LIBPRE and SHLBINPRE to cyg and SHLLIBPRE to lib.
-	Use SHLLIBPRE and SHLLIB in definition of SONAME_FLAGS.
-	(*-*-msdosmsvc): Make SHLBINPRE and SHLLIBPRE empty.
- 	Adjust definition of SONAME_FLAGS for SHLLIBPRE.
-
-	* Makeconf.in (SHLLIBPRE, SHLBINPRE): Substitute new variables here.
-	From Marco Atzeri <marco_atzeri@yahoo.it>.
-
-2009-01-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* configure.in: Add of -lregex to REGEX_LIBS.
-
-2009-01-26  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* aclocal.m4 (OCTAVE_HAVE_FRAMEWORK): New macro.
-	* configure.in: Use it.
-
-2009-01-22  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): Define OCTAVE_USE_OS_X_API if
-	__APPLE__ and __MACH__ are defined.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Fix qrupdate warning message.
-
-2009-01-21  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in: Substitute X11_INCFLAGS and X11_LIBS.
-	* configure.in: Use AC_PATH_X to check for X11 header files and
-	libraries.
-
-	* THANKS, Announce: Remove obsolete files.
-	* octMakefile.in (DISTFILES): Remove THANKS from the list.
-
-2009-01-20  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for fstat.
-
-2008-12-23  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Add configuration test for ARPACK.
-	* Makeconf.in (ARPACK_LIBS): Add variable with location of ARPACK
-	library.
-	* NEWS: Document that eigs and svds were moved to Octaave.
-
-2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Remove the OCTAVE_LOCAL_BUFFER stuff (moved to
-	liboctave).
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* NEWS: Document more new features.
-
-2008-12-03  John W. Eaton  <jwe@octave.org>
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2008-11-18  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.cc.in, octave-bug.cc.in: Style fixes.
-
-2008-11-13  Ben Abbott  <bpabbott@mac.com>
-
-	* src/graphics.h.in: Add props screensize & screenpixelsperinch.
-
-2008-11-08  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* Makeconf.in: export PERL variable for use in scripts/mkdoc
-
-2008-10-30  David Bateman  <dbateman@free.fr>
-
-	* NEWS: Minor update to document improved indexing code.
-
-2008-10-23  Jason Riedy  <jason@acm.org>
-
-	* configure.in: Take care to use FT2_CFLAGS when checking
-	for FTGL headers.
-
-2008-10-22  David Bateman  <dbateman@free.fr>
-
-	* examples/@polynomial: Move examples/polynomial here.
-	* examples/@polynomial/Makefile.in: Update for new location.
-	* examples/Makefile.in: Ditto.
-	* configure.in: Change locate of examples/@polynomial makefile
-	in AC_CONFIG_FILES.
-
-2008-10-16  David Bateman  <dbateman@free.fr>
-
-	* NEWS: Minor update.
-
-2008-10-15  David Bateman  <dbateman@free.fr>
-
-	* examples/polynomial/display.m, examples/polynomial/double.m,
-	examples/polynomial/end.m, examples/polynomial/get.m,
-	examples/polynomial/mtimes.m, examples/polynomial/plot.m,
-	examples/polynomial/polynomial.m,
-	examples/polynomial/polynomial_superiorto.m,
-	examples/polynomial/polyval.m, examples/polynomial/set.m,
-	examples/polynomial/subsasgn.m, examples/polynomial/subsref.m:
-	New example files for a sample OOP class.
-	* examples/polynomial/Makefile.in: Add a makefile for this new
-	directory
-	* examples/Makefile.in: Reference the new subdirectory here.
-	* configure.in: Add the new makefile to AC_CONFIG_FILES.
-
-2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Check for sizeof (long double) and randl.
-
-2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* aclocal.m4 (OCTAVE_FAST_INT_OPS): New macro.
-	* configure.in: Call OCTAVE_FAST_INT_OPS
-
-2008-09-08  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.cc.in, octave-bug.cc.in, octave-config.cc.in: Style fixes.
-
-2008-09-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* mkoctfile.cc.in, octave-bug.cc.in, octave-config.cc.in: New files.
-
-2008-08-28  David Bateman  <dbateman@free.fr>
-
-	* NEWS: Update for some of the graphics changes
-
-2008-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* acx_blas_f77_func.m4, acx_lapack.m4: Update macros from
-	<http://autoconf-archive.cryp.to/>.
-
-2008-08-07  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_STRING_NPOS): Delete.
-	* configure.in (OCTAVE_STRING_NPOS): Delete use.
-
-2008-08-04  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-script-vals): Also substitute SED.
-	* run-octave.in: Use sed to append : to path elements
-	instead of using the find expression "-exec echo '{}':".
-	Substitute SED here.
-
-	* aclocal.m4: Fail if no usable version of sed is found.
-
-	* Makefile.in (header-msg): Mention GNU Make requirement.
-	Update GCC version info.
-
-2008-07-31  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (DISTFILES): Add "missing" to the list.
-
-2008-07-30  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (CXX_ABI, OCTAVE_CXX_PREPENDS_UNDERSCORE,
-	OCTAVE_PROG_NM): Delete macros.
-	* configure.in: Delete uses.
-
-2008-07-29  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* aclocal.m4 (OCTAVE_OPENGL): Handle MinGW the same as MSVC.
-
-2008-07-29  David Bateman  <dbateman@free.fr>
-
-	* NEWS.3: Copy from NEWS.
-	* NEWS: Initial update in preparation for a 3.2 release.
-
-2008-07-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: If FTGL.h is found, then also include
-	FTGLTextureFont.h in test code.
-
-2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* configure.in: Remove GRAPHICS_OPENGL variable.
-
-2008-07-21  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_OPENGL): Fix shell syntax problems.
-	Handle HAVE_GL_GL_H and HAVE_OPENGL_GL_H in link test.
-
-	* configure.in: Don't define and substitute FLTK_BACKEND_SRC or
-	GL_RENDER_SRC.
-	(HAVE_FLTK): AC_DEFINE if FLTK is available.
-	(HAVE_OPENGL): AC_DEFINE if OpenGL is available.
-
-2008-07-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Extend FTGL test to test for both ftgl.h and FTGL.h.
-	Use HAVE_FTGL_UPPERCASE to indicate the latter (version <= 2.1.2).
-
-2008-07-19 Rafael Laboissiere  <rafael@debia8n.org>
-
-	* octMakefile.in (CONF_DISTFILES): Include acx_blas_f77_func.m4 in
-	the list.
-
-2008-07-18 Carlo de Falco  <carlo.defalco@gmail.com>
-
-	* aclocal.m4: Search for gl.h and glu.h in OpenGL/ as well as in GL/.
-
-2008-07-18  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Fix FTGL test to handle either FTGL/ftgl.h or ftgl.h.
-	(warn_freetype, warn_ftgl, warn_fltk_config, warn_fltk_opengl):
-	New variables.  Use these instead of overloading warn_graphics.
-
-2008-07-17  David Bateman  <dbateman@free.fr>
-
-	* configure.in (HAVE_MAGICK): New define for presence of
-	GraphicsMagick.
-
-2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* configure.in: Add check for pthread.h.
-
-2008-07-14  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (MAGICK_CONFIG): Substitute here.
-	(MAGICK_INCFLAGS, MAGICK_LIBS): Define using GraphicsMagick++
-	config script.
-	(do-subst-config-vals): Include MAGICK_LIBS and MAGICK_INCFLAGS in
-	list of substitutions.
-	* configure.in: Check for GraphicsMagick++ config script.
-
-2008-07-10  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (DIRS_TO_MAKE): Delete $(localfcnfilepath) and
-	$(localoctfilepath) from the list.  Include $(datadir)
-	$(localfcnfiledir) $(localapifcnfiledir) $(localverfcnfiledir)
-	$(localoctfiledir) $(localapioctfiledir) $(localveroctfiledir)
-	$(imagedir) and $(localapiarchlibdir) in the list.
-
-	* configure.in: Look for FTGL/ftgl.h instead of FTGL/FTGL.h.  Also
-	look for ftgl.h.
-
-2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* configure.in: new substituted variables GL_RENDER_SRC and
-	FLTK_BACKEND_SRC.
-
-2008-06-20  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makeconf.in: Add GRAPHICS_CFLAGS substitution.
-	* configure.in: Add checks for hypotf and _hypotf.
-
-2008-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Move LIBS and CXXFLAGS restoration into
-	the proper block.
-
-2008-06-05  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Add FT2_CFLAGS to XTRA_CXXFLAGS, not CXXFLAGS.
-	Don't add FT2_LIBS to LIBS.
-	Don't generate src/graphics/Makefile, src/graphics/Makerules,
-	src/graphics/opengl/Makefile, or src/graphics/fltk_backend/Makefile.
-
-	* Makeconf.in (FT2_LIBS, GRAPHICS_LIBS): Substitute here.
-
-2008-06-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* configure.in: Use AC_TRY_LINK in FTGL test.
-	Include FT_CFLAGS in CXXFLAGS.
-
-	* aclocal.m4 (OCTAVE_OPENGL): Note FIXME for apple.
-
-	* configure.in: Check for FTGL library.
-
-	* configure.in: Remove check for Fl/glu.h header.
-
-	* aclocal.m4 (AC_CHECK_FT2): New macro to check for freetype2.
-
-	* configure.in: Check for FLTK and corresponding compiler flags.
-
-2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* configure.in: Double-quote warn_graphics variable.
-
-	* aclocal.m4 (OCTAVE_OPENGL): New function to detect OpenGL
-	headers and libraries.
-	* configure.in (OCTAVE_OPENGL): Use it.
-	(OCTGRAPHICS_DLL_DEFS): New define to build
-	graphics-related DLL.
-	(AC_CONFIG_FILES): Generate additional files for graphics
-	related libraries.
-	* Makeconf.in (OPENGL_LIBS): New variable.
-
-	* .hgignore: Also ignore build-.*, configure, and autom4te.cache.
-
-2008-05-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mk-opts.pl (emit_print_function, emit_set_function,
-	emit_show_function): Support float type.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* configure.in (AC_CHECK_FUNCS): Add expm1, lgammaf, lgammaf_r,
-	log1pf and tgammaf. Also check for libfftw3f.
-
-2008-04-09  Rafael Laboissiere  <rafael@debian.org>
-
-	* example/octave.desktop.in: Drop the Encoding key, which is
-	deprecated by the FreeDesktop standard.
-
-2008-04-04  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-check-m-sources): New macro.
-
-2008-04-03  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* README.Cygwin: Update.
-
-2008-04-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* acx_blas_f77_func.m4: New file.
-	* configure.in: Call ACX_BLAS_WITH_F77_FUNC instead of ACX_BLAS.
-	Supply a warning for incompatible Fortran/BLAS configuration.
-
-2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* configure.in: Check for expm1 and log1p functions.
-
-2008-03-25  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for trunc.
-
-2008-03-21  David Bateman  <dbateman@free.fr>
-
-	* configure.in (HAVE_AMD): Complete test for presence of amd.
-
-2008-03-18  David Bateman  <dbateman@free.fr>
-
-	* configure.in (AC_CHECK_FUNCS): Also check lgamma_r.
-
-2008-03-11  David Bateman  <dbateman@free.fr>
-
-	* run-octave.in: Fix typo.
-
-2008-02-21  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (install install-strip): Ignore errors
-	installing octave.desktop file.
-
-2008-02-15  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (*-*-freebsd*, *-*-openbsd*): Don't set SH_LD.
-
-2008-02-14  John W. Eaton  <jwe@octave.org>
-
-	* examples/fortdemo.cc: Don't check f77_exception_encountered.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (octave.desktop):
-	Use mv instead of move-if-change.
-
-2008-02-05  John W. Eaton  <jwe@octave.org>
-
-	* dlfcn/Makefile.in: Unconditionally include $(MAKEDEPS).
-	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
-
-2008-01-12  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4: Call AC_SUBST instead of AC_DEFINE_UNQOTED for
-	GNUPLOT_BINARY.
-	* aclocal.m4, configure.in: Use GNUPLOT instead of GNUPLOT_BINARY
-	as variable name.
-	* Makeconf.in (GNUPLOT): Substitute.
-	(do-subst-config-vals): Substitute GNUPLOT.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-12-13  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (octave-bug, octave-config, mkoctfile):
-	Also depend on $(top_srcdir)/src/version.h.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* acx_blas.m4: Use -lsunperf, not -xlic_lib=sunperf.
-	From Jim Langston <Jim.Langston@Sun.COM>.
-
-2007-12-06  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (*-*-darwin*): Only set CPICFLAG, CXXPICFLAG, and
-	FPICFLAG to "" on powerpc systems.
-
-2007-12-04  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in (LIBDLFCN): Delete variable and all uses.
-	* Makeconf.in (LIBDLFCN, DLFCN_INCFLAGS): Likewise.
-	* configure.in (DLFCN_DIR, LIBDLFCN, DLFCN_INCFLAGS): Likewise.
-	Don't generate dlfcn/Makefile.
-	* octMakefile.in (DISTSUBDIRS): Delete dlfcn from the list.
-	(SUBDIRS): Don't substitute DLFCN_DIR here.
-
-2007-12-03  Moritz Borgmann  <octave@moriborg.de>
-
-	* Makeconf.in, aclocal.m4, configure.in: Check for find program,
-	preferably gfind (on non-GNU systems).  Need a sane find for
-	run-octave script.
-	* run-octave.in: Use FIND and AWK as determined by configure.
-
-2007-12-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: If available, include <sys/types.h> in test for
-	sigset_t and sig_atomic_t.
-
-2007-11-30  Moritz Borgmann  <octave@moriborg.de>
-
-	* configure.in: Also check for sunmath.h.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* PROJECTS: condest now implemented.
-
-	* NEWS: Document the TeX interpreter mode and its limitations with
-	gnuplot 4.0.
-
-	* NEWS: Document the use of "colormap gmap40" to workaround some
-	gnuplot 4.0 colormap issues.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Don't create Makefrag.bsd.
-
-2007-11-14  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* configure.in: Rework pcre.h tests to work with autoconf 2.59,
-	and avoid explicit pcre/pcre.h check by using pcre-config.
-
-2007-11-13  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* octave-bug.in: Try mailx, then Mail, then /usr/ucb/mail, then
-	/bin/mail.
-
-2007-11-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Only define HAVE_PCRE_H if <pcre.h> has the
-	definitions we need.  Likewise for <pcre/pcre.h>.
-
-2007-11-10  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Delete AC_SUBST_FILE(f77_rules_frag).
-
-2007-11-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Also check for pcre/pcre.h.
-
-2007-11-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Delete BLAS library calling convention
-	compatibility check.
-
-2007-10-31  John W. Eaton  <jwe@octave.org>
-
-	* README.binary-dist: Delete.
-
-	* README.MachTen: Delete.
-	* octMakefile.in (DISTFILES): Remove it from the list.
-
-2007-10-30  David Bateman  <dbateman@free.fr>
-
-	* examples/addtwomatrices.cc, examples/celldemo.cc,
-	examples/firstmexdemo.c, examples/fortdemo.cc, examples/fortsub.f,
-	examples/funcdemo.cc, examples/globaldemo.cc,
-	examples/helloworld.cc, examples/mycell.c, examples/myfeval.c,
-	examples/myfunc.c, examples/mypow2.c, examples/mysparse.c,
-	examples/mystring.c, examples/mystruct.c, examples/paramdemo.cc,
-	examples/stringdemo.cc, examples/structdemo.cc,
-	examples/unwinddemo.cc: Doc fixes for small book format.
-
-2007-10-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makeconf.in: Remove UNSETCOMSPEC trick.
-
-2007-10-25  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): Define OCTAVE_EMPTY_CPP_ARG here.
-
-2007-10-24  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (maintainer-clean distclean): No need to delete
-	Makefrag.f77 and Makerules.f77.
-	* Makeconf.in: Include rules for making .o files from .f files
-	instead of substituting @f77_rules_frag@.
-	* configure.in): Delete handling of --with-f2c and --with-f77
-	options.  No need to call OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS.
-	Delete all special cases for f2c.
-	* aclocal.m4 (OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS): Delete macro.
-
-	* FLEX.patch: Delete obsolete file.
-	* octMakefile.in (DISTFILES): Remove it from the list.
-
-	* acx_blas.m4: Use "-Wl,-framework -Wl,vecLib" instead of
-	just "-framework vecLib" in test for Mac OS X test.
-
-	* configure.in, aclocal.m4: Avoid AC_TRY_EVAL.
-
-	* aclocal.m4 (OCTAVE_STRPTIME_BROKEN): New macro.
-	* configure.in: Use it.
-
-2007-10-23  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: When checking for -lf2c, set F2CLIBS instad of
-	FLIBS, then set FLIBS to $F2CLIBS just before printing the summary.
-	Check for BLAS library calling convention compatibility.
-
-2007-10-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Delete checks for METIS.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (parse_input): Allow comment lines beginning with #.
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-	* COPYING: Update to GPLv3.
-
-	* run-octave.in: List args explicitly in exec command.
-
-2007-10-11  John W. Eaton  <jwe@octave.org>
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2007-10-10  Kim Hansen  <kimhanse@gmail.com>
-
-	* run-octave.in: Use $args.  Eliminate "if [ -n "$args" ]" conditional.
-
-2007-10-09  John W. Eaton  <jwe@octave.org>
-
-	* gdbinit.in: Delete.
-	* octMakefile.in (DISTFILES): Remove it from the list.
-	(.gdbinit): Delete rule.
-	(maintainer-clean, distclean): No need to delete .gdbinit.
-
-2007-10-09  Kim Hansen  <kimhanse@gmail.com>
-
-	* run-octave.in: Use gdb with --args, not .gdbinit.
-
-2007-10-08  John W. Eaton  <jwe@octave.org>
-
-	* emacs/octave-hlp.el, emacs/octave-inf.el, emacs/octave-mod.el:
-	Sync with GNU Emacs versions.
-	* emacs/octave-mod.el: Delete last two args from calls to
-	define-abbrev.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for lgamma and tgamma.
-
-2007-10-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (UGLY_DEFS): Delete special case for darwin.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_SED): Also check for \(X\|Y\) style
-	regular expression alternation.
-
-2007-10-01  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_CHECK_STRPTIME): Delete.
-	* configure.in: Don't use OCTAVE_CHECK_STRPTIME, simply check for
-	strptime.
-
-2007-09-18  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* aclocal.m4 (OCTAVE_CHECK_STRPTIME): New macro.
-	* configure.in: Use it.
-
-2007-09-06  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Avoid broken strptime function on Cygwin systems.
-
-2007-09-01  David Bateman  <dbateman@free.fr>
-
-	* configure.in: AC_SUBST and check the variable TEXINFO_QHULL.
-	* Makeconf.in: Use it.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Extra Qhull bits.
-
-2007-08-24  Kim Hansen  <kimhanse@gmail.com>
-
-	* run-octave.in: Use `command` instead of $(command) to accomodate
-	brain-dead shells.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Probe for the use of Qhull.
-	* aclocal.m4 (AC_CHECK_QHULL_VERSION): Macro to check whether
-	Qhull needs a version number.
-	* Makeconf.in: Add QHULL_LIBS.
-
-2007-08-23  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_SED): Don't clobber value from environment.
-	From: Christian Cornelssen <ccorn@cs.tu-berlin.de>.
-
-2007-08-23  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* aclocal.m4 (OCTAVE_PROG_GNUPLOT): Drop check for multiple plot
-	windows.
-
-2007-08-10  S�ren Hauberg  <hauberg@gmail.com>
-
-	* ROADMAP: Update for current sources.
-
-2007-07-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Also look for glpk/glpk.h.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* octMakefile.in, dlfcn/Makefile.in, emacs/Makefile.in,
-	examples/Makefile.in, test/Makefile.in: Adjust DISTFILES to allow
-	out of tree "make dist" to work.
-
-2007-07-24  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (*-*-msdosmsvc): Only add -g to DL_LDFLAGS and
-	SH_LDFLAGS if either CFLAGS or CXXFLAGS contains -g.
-
-2007-07-24  Rafael Laboissiere  <rafael@debian.org>
-
-	* Makeconf.in (RUNTEST): Delete variable substitution.
-	(do-subst-config-vals): Don't substitute %OCTAVE_CONF_RUNTEST%.
-
-2007-07-20  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* mkoctfile.in: Fix typo.
-
-2007-06-25  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (emit_print_function): Make generated function print
-	to ostream (passed as arg) instead of local buffer.  Don't call
-	print_usage in generated function.
-	(emit_options_function): Fix call to print_${class_name} in
-	generated to pass octave_stdout as arg.
-
-2007-06-18  John W. Eaton  <jwe@octave.org>
-
-	* emacs/octave-inf.el (inferior-octave-prompt): Match "octave.bin"
-	and "octave.exe" in addition to "octave".
-
-2007-06-15  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Use simple string concatenation instead of
-	sprintf in AWK program.
-
-2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in: Set NO_OCT_FILE_STRIP=true for msdosmsvc.
-
-	* aclocal.m4 (OCTAVE_HDF5_DLL): Include return statements in
-	function body used for test.
-
-	* configure.in: Check for CXSparse with C++.
-
-	* Makeconf.in (do-subst-config-vals): Also substitute ${libdir} as
-	OCTAVE_CONF_LIBDIR.
-	* mkoctfile.in: Set DEFAULT_LIBDIR and substitute OCTAVE_HOME.
-	Define LIBDIR.  Use LIBDIR to set DEFAULT_LFLAGS.
-
-2007-06-12  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* configure.in: For mingw, add -lws2_32 -lkernel32 to LIBS and set
-	_USE_MATH_DEFINES same as for msvc.
-
-2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in: Check for utime.h and sys/utime.h headers.
-	Check for utime, _chmod, _utime, and _utime32 functions.
-
-2007-06-03  David Bateman  <dbateman@free.fr>
-
-	* configure.in (AC_CONFIG_FILES): Add src/mxarray.h
-	* examples/mycell.c, examples/mypow2.c, examples/mysparse.c,
-	examples/mystring.c, examples/mystruct.c: Use mwSize and mwIndex,
-	rather than int for indexing to conform to new mex API.
-
-2007-06-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (*-*-darwin*): Fix quoting and construction of
-	MKOCTFILE_DL_LDFLAGS.
-	* mkoctfile.in (DEFAULT_BINDIR, EXEEXT): New substitutions.
-	* Makeconf.in (MKOCTFILE_DL_LDFLAGS): Delete.
-	(do-subst-config-vals): Do configure substitution of
-	MKOCTFILE_DL_LDFLAGS directly here instead of using intermediate
-	variable.  Quote this sed substitution with ' instead of ".
-
-2007-05-29  Steven Mestdagh  <steven.mestdagh@esat.kuleuven.be>
-
-	* configure.in: Delete spurious "break" in fftw3 check.
-	Use separate case for SH_LD and SH_LDFLAGS on openbsd.
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-script-uninstall): Also remove directory.
-
-2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* NEWS.2, README.MSVC, WWW/NEWS-2.html: Fix typos.
-
-2007-05-16  David Bateman  <dbateman@free.fr>
-
-	* PROJECTS: Update.
-
-2007-04-27  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (SOURCES): Add all example files to the list.
-
-	* octave-config.in: Don't set PREFIX to OCTAVE_HOME if OCTAVE_HOME
-	is empty.
-
-2007-04-27  David Bateman  <dbateman@free.fr>
-
-	* examples/mycell.c, examples/mypow2.c, examples/mystring.c,
-	examples/myprop.c: New example mex files.
-
-2007-04-26  Alex Zvoleff  <azvoleff@sbcglobal.net>
-
-	* configure.in: Don't report ARPACK libraries in summary.
-
-2007-04-25  David Bateman  <dbateman@free.fr>
-
-	* Makeconf.in (do-subst-texinfo-vals): Also substitute abs_top_srcdir.
-
-	* examples/myfunc.c, exampples/paramdemo.cc: New files
-	* examples/mystruct.c, examples/mysparse.c, fortdemo.cc: Fix a few
-	formatting issues when included in texinfo files.
-
-2007-04-25  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-texinfo-vals): Also substitute top_srcdir.
-
-	* examples/addtwomatrices.cc, examples/celldemo.cc,
-	examples/fortdemo.cc, examples/funcdemo.cc,
-	examples/globaldemo.cc, examples/helloworld.cc,
-	examples/stringdemo.cc, examples/structdemo.cc,
-	examples/unwinddemo.cc, examples/fortsub.f,
-	examples/firstmexdemo.c: New files.
-	* examples/Makefile.in (SOURCES): Add them to the list.
-
-2007-04-20  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Don't check for ARPACK.
-
-2007-03-29  Rafael Laboissiere  <rafael@debian.org>
-
- 	* emacs/octave-mod.el: Drop LOADPATH, INFO_FILE, and
- 	INFO_PROGRAM from octave-variables.
-
-	* examples/info-emacs-octave-help, examples/info-emacs-info:
-	Use gnuclient, not gnudoit.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (dist, conf-dist): Use ln, not $(LN_S).
-	* emacs/Makefile.in (dist): Likewise.
-	* examples/Makefile.in (dist): Likewise.
-	* dlfcn/Makefile.in (conf-dist): Likewise.
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2007-03-23  John W. Eaton  <jwe@octave.org>
-
-	* examples/make_int.cc (octave_integer::clone): Return type is
-	pointer to octave_base_value, not octave_value.
-	(Fdoit): Rep is reference to octave_base_value, not octave_value.
-
-2007-03-21  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* octMakefile.in (all): Print message after successful build.
-
-2007-03-05  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (GLPK_PRE_4_14): Rename from GLPK_PRE_4_15.
-
-2007-02-27  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-script-uninstall): Remove PKG_ADD.
-	* examples/Makefile.in (uninstall): Don't remove files listed in
-	$(SCRIPTS) from $(srcdir).
-	Remove www.octave.org-octave.desktop, not octave.desktop.
-
-	* run-octave.in (run-octave.in): Use --no-initial-path.
-	Rename to qargs to args.  Use $args not "$args" when invoking Octave.
-	Try harder to get quoting right when passing args to Octave.
-
-2007-02-26  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (DISTDIRS): Eliminate variable.
-
-2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* octMakefile.in, dlfcn/Makefile.in, emacs/Makefile.in:
-	Use $(LN_S) instead of ln or ln -s.
-
-	* octMakefile.in (dist): Use -9 instead of --best with gzip/bzip2.
-
-2007-02-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Also warn about missing functionality for
-	--without-glpk or --without-curl options.  Print curl library
-	warning in summary.
-
-2007-02-20  Rafael Laboissiere  <rafael@debian.org>
-
-	* configure.in: Check for versions of GLPK prior to 4.15 and set
-	the GLPK_PRE_4_15 macro accordingly.
-
-2007-02-16  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Use OCTAVE_PREFIX, not OCTAVE_CONF_PREFIX, in sed
-	substitutions.
-	* octave-conf.in: Define DATAROOTDIR, not DATADIR, from
-	OCTAVE_DATAROOTDIR.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-2007-02-15  John W. Eaton  <jwe@octave.org>
-
-	* octave-config.in (DATAROOTDIR): Include in list of vars.
-	Substitute OCTAVE_HOME.
-
-	* Makeconf.in (MKOCTFILE_INCFLAGS, MKOCTFILE_LFLAGS): Delete vars.
-	(do-subst-config-vals): Don't substitute them.
-	Also substitute OCTAVE_CONF_INCLUDEDIR, OCTAVE_CONF_OCTINCLUDEDIR,
-	OCTAVE_CONF_OCTLIBDIR, and OCTAVE_CONF_PREFIX here.
-	* mkoctfile.in (OCTAVE_CONF_OCTINCLUDEDIR, OCTAVE_CONF_INCLUDEDIR,
-	OCTAVE_CONF_OCTLIBDIR): Substitute values and perform OCTAVE_HOME
-	substitution here.
-	(DEFAULT_INCFLAGS, DEFAULT_LFLAGS): New variables.  Use them to
-	set default values for INCFLAGS and LFLAGS.
-
-2007-02-09  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Handle .a files.
-
-2007-02-08  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (all): Depend on dist-info-files.
-	(dist): Delete dist-info-files dependency.
-
-	* configure.in: Rewrite if !( X ) ... fi as if X; true; else ... fi.
-	Also check for _glp_lpx_simplex.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-script-install): Use $(FCN_FILES) for list of
-	files instead of $(FCN_FILES_NO_DIR).  Use basename to get
-	filename with no directory part.
-
-2007-02-07  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* aclocal.m4 (OCTAVE_HDF5_DLL): New macro.
-	* configure.in: Use it.
-
-2007-02-05  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for realpath function.
-
-	* demo.m: Delete obsolete file.
-
-2007-01-29  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (*-*-msdosmsvc): Set NO_OCT_FILE_STRIP to true.
-
-2007-01-24  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (install): Install NEWS file.
-	(uninstall): Remove it.
-
-2007-01-08  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Replace sparsesuite with suitesparse to match
-	upstream name.
-
-2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* acx_blas.m4, acx_lapack.m4: Handle f2c calling convention.
-
-2006-12-05  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Don't check for strptime on *-apple-darwin* systems.
-
-2006-11-28  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Construct default output file from basename of
-	input file name.
-
-2006-11-28  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Check for sparse header files in the sparsesuite
-	sub-directory. In the cholmod tests, include the camd libraries, as
-	this might be a dependency for cholmod.
-
-2006-11-15  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Don't forget LD_PRELOAD if there are args.
-
-2006-11-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: If warning message is printed, print additional
-	final note about missing libraries.
-
-2006-11-13  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Substitute liboctinterp, liboctave, and libcruft.
-	Use them to set LD_PRELOAD.
-	* Makeconf.in (do-subst-script-vals): Also substitute
-	liboctinterp, liboctave, and libcruft.
-
-2006-11-13  Rafael Laboissiere  <rafael@debian.org>
-
-	* mkoctfile.in: Add -Wl,... options to ldflags, not pass_on_flags.
-
-2006-11-11  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (octave.desktop):
-	Use $(simple-move-if-change-rule) here.
-
-	* Makeconf.in (simple-move-if-change-rule,
-	(builddir-move-if-change-rule): New macros.
-
-2006-11-11  S�ren Hauberg  <hauberg@gmail.com>
-
-	* examples/Makefile.in (uninstall): Add missing semicolon.
-
-2006-11-09  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (uninstall): New target.
-
-2006-11-09  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (OCTAVE_LOCAL_BUFFER): Don't access first element
-	if size is 0.
-
-2006-11-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (CRUFT_DLL_DEFS, OCTAVE_DLL_DEFS, OCTINTERP_DLL_DEFS):
-	Also rename in AC_SUBST calls.
-	* Makeconf.in (ALL_CFLAGS): Use DLL_CDEFS instead of XTRA_CDEFS.
-	(ALL_CXXFLAGS): Use DLL_CDEFS instead of XTRA_CXXDEFS.
-
-2006-11-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (CRUFT_DLL_DEFS): Rename from XTRA_CRUFT_DEFS.
-	(OCTAVE_DLL_DEFS): Rename from XTRA_OCTAVE_DEFS.
-	(OCTINTERP_DLL_DEFS): Rename from XTRA_OCTINTERP_DEFS.
-	(XTRA_CRUFT_LINK_FLAGS): Rename from XTRA_CRUFT_LINK_DEPS.
-
-2006-11-02  John W. Eaton  <jwe@octave.org>
-
-	* README.Cygwin: Rename from README.Windows.
-	* README.MSVC: New file.
-	* README.Windows: Point to the README.Cygwin and README.MSVC files.
-
-2006-11-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for PCRE macros we use.  Warn if regex
-	library is not found.  Print hdf5, zlib, umfpack, colamd, ccolamd,
-	cholmod, and cxsparse warnings when we detect the problems.
-
-	* run-octave.in: Handle quoted args properly in exec call?
-
-2006-10-29  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Handle spaces in directory names.
-
-2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (AH_BOTTOM): If using MSVC, define __WIN32__ before
-	other #ifdefs that use it.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): Move DLL defs to
-	libcruft/misc/oct-dlldefs.h and include it here.
-
-	* aclocal.m4 (OCTAVE_PROG_TEXI2PDF): Require OCTAVE_PROG_TEXI2DVI.
-	If texi2pdf is not found but texi2dvi is available, set TEXI2PDF
-	to "$TEXI2DVI --pdf".
-	(OCTAVE_PROG_GHOSTSCRIPT): Also check for gswin32 on Windows systems.
-
-	* Makeconf.in (UNSETCOMSPEC): Define if COMSPEC is defined.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (OCTAVE_EXPORT, OCTAVE_IMPORT): New macros
-	(CRUFT_API, OCTAVE_API, OCTINTERP_API): Define using OCTAVE_EXPORT
-	and OCTAVE_IMPORT.
-
-2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in (*-*-msdosmsvc): Set library_path_var.
-	Check for _WIN32_WINNT >= 0x0403.  Define _USE_MATH_DEFINES if it
-	is needed.
-	(XTRA_CRUFT_LINK_DEPS): New variable.  Substitute it.
-
-	* aclocal.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): Perform check with C++
-	compiler.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_PAGER): Also check for more.com for
-	*-*-mingw* and *-*-msdosmsvc systems.
-
-	* configure.in (F77_TOLOWER, F77_APPEND_UNDERSCORE,
-	F77_APPEND_EXTRA_UNDERSCORE): New variables.  Substitute them.
-	* Makeconf.in (F77_TOLOWER, F77_APPEND_UNDERSCORE,
-	F77_APPEND_EXTRA_UNDERSCORE): Substitute here.
-	(do-subst-f77-mangling): New macro.
-
-	* emacs/octave-inf.el (inferior-octave-has-built-in-variables):
-	New defvar.
-	(inferior-octave-resync-dirs): Check to see whether Octave has
-	built-in variables and set inferior-octave-has-built-in-variables.
-	Check inferior-octave-has-built-in-variables to decide whether to
-	send commands that set built-in variables or call functions to
-	change Octave's behavior.
-	Send "disp (pwd ())" to Octave instead of just "pwd".
-	(inferior-octave-startup): Send "more off" to Octave instead of
-	"page_screen_output = 0".
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (RETSIGTYPE_IS_VOID): Define if
-	"$ac_cv_type_signal" = "void".
-
-	* configure.in (*-*-msdosmsvc): Don't check for strftime.
-
-	* configure.in (INCLUDE_DEPS): Set and substitute.
-	(DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): Rearrange way these are set.
-
-	* Makeconf.in (INCLUDE_DEPS): Substitute here, and use to set default
-	value for omit_deps.
-
-2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makeconf.in (ALL_CFLAGS): Include $(XTRA_CDEFS) in the list.
-	(ALL_CXXFLAGS): Include $(XTRA_CXXDEFS) in the list.
-
-	* configure.in (XTRA_CRUFT_DEFS, XTRA_OCTAVE_DEFS,
-	XTRA_OCTINTERP_DEFS): Define and substitute.
-	(AH_BOTTOM) [_MSC_VER]: include definitions for CRUFT_API,
-	OCTAVE_API, and OCTINTERP_API.
-
-	* configure.in (*-*-msdosmsvc): Add "-EHs -MD" to CXXFLAGS.
-	Add "-MD" to CFLAGS.  Add "-MD" to CONFLIB_ARG when checking for
-	libf2c.
-
-	* configure.in (*-*-msdosmsvc): Generate replacement unistd.h.
-	* octMakefile.in (maintainer-clean, distclean): Also remove unistd.h.
-
-	* configure.in (*-*-msdosmsvc): Default sepchar is ';'.
-	Define default LIBS (link against kernel32 and ws2_32).
-	Force having LoadLibrary API.
-
-	* configure.in (AH_BOTTOM) [_MSC_VER]: Define __WIN32__.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in (OCTAVE_VERSION): No need to quote replacement here.
-
-2006-10-24  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Only modify .gdbinit if -g option is given.
-	Use $(/bin/pwd) instead of $(pwd).
-
-2006-10-23  John W. Eaton  <jwe@octave.org>
-
-	* emacs/Makefile.in (SOURCES, DISTFILES, install, install-strip,
-	uninstall): Handle otags name change.
-	* emacs/octave-tags, emacs/octave-tags.1: Rename from otags.
-
-2006-10-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for _isnan, _finite, and _copysign.
-
-2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE, OCTAVE_CXX_ABI): Use
-	$ac_objext instead of assuming .o.
-	(OCTAVE_PROG_GNUPLOT): Handle *-*-msdos the same as *-*-cygwin*
-	and *-*-mingw32*.
-
-2006-10-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for curl_easy_escap instead of
-	curl_global_init.
-
-2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* configure.in [_MSC_VER]: Disable some warnings.
-	(*-*-msdos): New case for shared libraries.
-	(LIBPRE): New variable.
-	* Makeconf.in: Substitute it.
-
-2006-10-12  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): Don't unconditionally #define
-	OCTAVE_HAVE_POSIX_FILESYSTEM followed by a conditional #undef
-	OCTAVE_HAVE_POSIX_FILESYSTEM since autoconf is commenting out the
-	#undef.
-
-2006-10-09  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (CURL_LIBS, do-subst-config-vals):
-	Substitute CURL_LIBS.
-
-	* configure.in: Check for libcurl.
-
-2006-10-04  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (library_path_var): Substitute value from configure.
-	(do-subst-script-vals): Add library_path_var to the list.
-	* run-octave.in: Substitute value here.
-
-2006-10-03  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Warn if PCRE library is not found.
-
-	* configure.in: Include CAMD_LIBS, AMD_LIBS, and REGEX_LIBS in the
-	summary.
-
-2006-10-03  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Check for libcamd.
-	* Makeconf.in (CAMD_LIBS): New variable.
-
-2006-09-27  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in [--mex]: Include -I. in incflags.
-	From S�ren Hauberg <hauberg@gmail.com>.
-
-2006-09-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CONFIG_FILES):
-	Remove doc/interpreter/images/Makefile from the list.
-
-2006-09-16  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in: Delete LIBPLPLOT variables.
-
-2006-09-15  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for locale.h and setlocale.
-
-2006-09-13  Christopher Hulbert  <cchgroupmail@gmail.com>
-
-	* run-octave.in (LD_LIBRARY_PATH): Also append LD_LIBRARY_PATH
-	from environment.
-
-2006-08-25  Alexander Barth  <abarth@marine.usf.edu>
-
-	* mkoctfile.in: Accept .f90 and .F90 as Fortran files.
-	Pass $incflags and $defs to Fortran compiler.
-
-2006-08-18  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-texinfo-vals): Don't substitute
-	%CANONICAL_HOST_TYPE%.
-
-2006-08-17  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_GHOSTSCRIPT, OCTAVE_PROG_MAKEINFO,
-	OCTAVE_PROG_TEXI2DVI, OCTAVE_PROG_TEXI2PDF): New macros.
-	* configure.in: Use them.  Maybe print warnings in summary.
-
-2006-07-27  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (localapiarchlibdir): Substitute it here.
-	(do-subst-default-vals): Include it in the sed command here.
-	* configure.in (localapiarchlibdir): New variable.
-	* octave-config.in: Don't quote %VAR% values.
-	(LOCALAPIARCHLIBDIR): New variable.
-
-2006-07-27  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* octave-config.in (OCTAVE_FCNFILEPATH, OCTAVE_IMAGEPATH,
-	OCTAVE_LOCALFCNFILEPATH, OCTAVE_LOCALOCTFILEPATH): Delete variables.
-
-2006-07-26  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in (Options): Accept -g.
-
-	* configure.in: Check for exp2 and log2.
-
-2006-07-25  David Bateman  <dbateman@free.fr>
-
-	* mysparse.c: New file.
-
-2006-06-27  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (maintainer-clean distclean): Remove
-	$(SHELL_SCRIPTS) instead of naming files individually.
-	Also remove .gdbinit.
-
-2006-06-21  John W. Eaton  <jwe@octave.org>
-
-	* examples/myfeval.c, examples/myfevalf.f, examples/myhello.c,
-	examples/myset.c, examples/mystruct.c: New files.
-
-	* mkoctfile.in: New option, --mex.
-
-2006-06-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (--enable-64): Include "(EXPERIMENTAL)" in help text.
-	Also set warn_64_bit if no suitable type for octave_idx_type is found.
-	If --enable-64 is specified, print warning in summary message.
-
-2006-06-12  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_CXX_BROKEN_REINTERPRET_CAST): New macro.
-	* configure.in: Use it.
-	* AH_BOTTOM: Conditionally define FCN_PTR_CAST here.
-
-2006-06-08  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-default-vals): Also substitute
-	OCTAVE_DATAROOTDIR.
-
-2006-06-06  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (datarootdir): New variable.
-
-	* acx_lapack.m4 (acx_lapack_ok):
-	Use AC_LINK_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_LINK
-
-	* aclocal.m4: Use AC_RUN_IFELSE+AC_LANG_SOURCE instead of AC_TRY_RUN.
-
-	* acx_blas.m4, acx_lapack.m4, configure.in, aclocal.m4:
-	Use AS_HELP_STRING instead of AC_HELP_STRING.
-
-	* configure.in: Outside of other macros, use AC_MSG_NOTICE instad
-	of AC_MSG_RESULT.  Check for sys_siglist using method from
-	autoconf manual.
-
-	* configure.in, Makeconf.in: octMakefile.in: Delete plplot cruft.
-
-	* configure.in, aclocal.m4:
-	Use AC_LINK_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_LINK
-	Use AC_COMPILE_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_COMPILE.
-	Use AS_HELP_STRING consistently with AC_ARG_WITH and AC_ARG_ENABLE.
-
-2006-05-23  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for inttypes.h and stdint.h.
-
-2006-05-19  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (emit_print_function, emit_options_function):
-	Generate print_usage calls with no args.
-
-2006-05-11  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (localfcnfilepath, localoctfilepath, fcnfilepath,
-	imagepath): Delete variables.
-	* Makeconf.in (localfcnfilepath, localoctfilepath, fcnfilepath,
-	imagepath): Likewise.
-	(do-subst-default-vals): Don't substitute them.
-
-	* run-octave.in: Pass --image-path to octave.
-	Use find to recursively add directories to loadpath.
-	Fixup set args command in .gdbinit here.
-
-2006-05-09  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (abs_top_srcdir): Substitute value here.
-
-2006-05-05  David Bateman  <dbateman@free.fr>
-
-	    * Makeconf.in (do-subst-scripts-vals): Also replace
-	    abs_top_srcdir.
-	    * run-octave.in: Define top_srcdir as an absolute path.
-
-2006-05-04  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (SHELL_SCRIPTS): Include run-octave in the list.
-
-2006-05-02  John W. Eaton  <jwe@octave.org>
-
-	* NEWS: New contents for 3.0.
-	* NEWS.2: Move contents of NEWS here.
-
-2006-04-29  John W. Eaton  <jwe@octave.org>
-
-	* run-octave.in: Execute $builddir/src/octave, not src/octave.
-
-2006-04-26  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* configure.in: Fix apiversion vs. api_version typo.
-
-2006-04-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (TARGETS): Include run-octave and .gdbinit in the list.
-	* Makeconf.in (subst-script-vals): New macro.
-	* octMakefile.in (run-octave, .gdbinit): New rules.
-	(DISTFILES): Include run-octave.in and gdbinit.in in the list.
-
-2006-04-17  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (emit_print_function): Emit code that uses
-	std::ostringstream directly.
-
-2006-04-13  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (CONST_CAST, DYNAMIC_CAST, REINTERPRET_CAST,
-	STATIC_CAST): Delete.
-
-2006-04-12  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: If using g++, also add -Wold-style-cast to CXXFLAGS.
-
-2006-03-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Don't check for MPI libraries.
-
-2006-03-27  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Downcase ac_cv_header_mach_o_dyld_h.
-	From Martin Costabel <costabel@wanadoo.fr>.
-
-2006-03-22  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in: (TEXINFO_COLAMD, TEXINFO_CHOLMOD, TEXINFO_UMFPACK):
-	Substitute here.
-	(do-subst-texinfo-vals): New macro definition.
-
-	* configure.in: Don't substitute OCTAVE_VERSION, OCTAVE_HOSTTYPE,
-	or OCTAVE_HOME.
-	(AC_CONFIG_FILES): Remove doc/conf.texi from the list.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Only print warnings for missing functionality in
-	summary message.
-
-2006-03-14  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (emit_print_function): Buffer extra message here and
-	pass to print_usage.
-
-2006-03-09  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-default-vals): Also substitute OCTAVE_RELEASE.
-
-2006-03-08  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Update the test for CXSPARSE for new upstream release.
-	(OCTAVE_VERSION, OCTAVE_HOSTTYPE, OCTAVE_HOME,TEXINFO_UMFPACK,
-	TEXINFO_COLAMD, TEXINFO_CHOLMOD): New variables for texinfo
-	documentation.
-	(AC_CONFIG_FILES): Add doc/interpreter/images/Makefile and
-	doc/conf.texi.
-
-2006-03-02  Kurt Hornik  <Kurt.Hornik@wu-wien.ac.at>
-
-	* emacs/octave-mod.el (octave-indent-for-comment): Make the code
-	match the comments.
-
-2006-03-02  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (ALL_SUBDIRS): Delete.
-	(SUBDIRS): Include src here.
-	(SHELL_SCRIPTS): New variable.
-	(all): Depend on $(SHELL_SCRIPTS) and $(SUBDIRS) with libcruft and
-	liboctave filtered out.
-	(src): Depend on liboctave.
-	(liboctave): Depend on libcruft.
-
-2006-02-09  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Fix for probe of colamd, cccolamd and metis. New test
-	for the presence of cxsparse.
-	Makeconf.in: Include CXSPARSE_LIBS.
-
-2006-01-19  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Use $WITH_PCRE instead of $HAVE_PCRE in shell test.
-
-2006-01-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for mach-o/dyld.h, not Mach-O/dyld.h.
-	From Martin Costabel <costabel@wanadoo.fr>.
-
-2006-01-13  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-mkpkgadd): New macro.
-
-2005-12-14  David Bateman  <dbateman@free.fr>
-
-	* Makeconf.in: Remove OCTAVE_PROG_RUNTEST.
-	* alocal.m4: Remove OCTAVE_PROG_RUNTEST.
-
-	* Makeconf.in: New tests of regex and pcre.
-
-2005-12-13  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (install install-strip): Fix typo.
-	From William Poetra Yoga Hadisoeseno <williampoetra@gmail.com>.
-
-2005-12-05  Kurt Hornik  <Kurt.Hornik@wu-wien.ac.at>
-
-	* emacs/octave-inf.el (inferior-octave-startup):
-	Force a non-empty string for secondary prompt PS2.
-
-2005-12-02  John W. Eaton  <jwe@octave.org>
-
-	* emacs/octave-mod.el (octave-electric-space): Don't indent
-	comments or strings if octave-auto-indent is nil.
-
-2005-11-30  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (install install-strip): Install images and
-	desktop file.
-
-2005-11-29  Rafael Laboissiere  <rafael@debian.org>
-
-	* emacs/octave-mod.el: Ensure that key bindings for
-	octave-mark-defun and backward-kill-word work in both XEmacs and
-	GNU Emacs.
-
-2005-11-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for uname.
-
-2005-11-21  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (DISTFILES): Don't include octave.desktop here.
-	(distclean): Remove octave.desktop here.
-	(maintainer-clean): Not here.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (distclean, maintainer-clean):
-	Also remove octave.desktop.
-	From Quentin Spencer <qspencer@ieee.org>.
-
-2005-11-01  Quentin Spencer  <qspencer@ieee.org>
-
-	* octMakefile.in (CONF_DISTFILES): Delete acx_include_dirs.m4 from
-	the list.
-
-2005-10-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_ARG_WITH(cholmod, ...)): Fix typo.
-	From Quentin Spencer <qspencer@ieee.org> and
-	Andy Adler <adler@site.uOttawa.ca>.
-
-2005-10-26  John W. Eaton  <jwe@octave.org>
-
-	* configure.in, aclocal.m4: Don't quote "yes".
-
-	* configure.in: Print warning messages for umfpack, colamd,
-	ccolamd, and cholmod as we are searching.  Avoid multiple
-	definitions of message strings.
-
-	* aclocal.m4 (OCTAVE_UMFPACK_SEPERATE_SPLIT):
-	Use new method of finding umfpack.h.
-	* configure.in: Use AC_CHECK_HEADERS instead of
-	ACX_CHECK_HEADER_IN_DIRS.
-	(AC_CONFIG_FILES): Delete liboctave/oct-sparse.h from the list.
-
-	* acx_include_dirs.m4: Delete.
-
-2005-10-26  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
-
-	* configure.in [*-*-freebsd*] (SH_LDFLAGS): Properly quote.
-	(RLD_FLAG): Set.
-
-2005-10-23  David Bateman  <dbateman@free.fr>
-
-	* configure.in (OCTAVE_UMFPACK_SEPERATE_SPLIT): Check for metis
-	separately.
-	* PROJECTS: Remove completed sparse matrix tasks.
-
-2005-10-17  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* octave.test/system/system.exp: rmdir no longer prints a
-	message if the directory does not exist.
-
-	* octave.test/system/mk-rm-dir-1.m: mkdir/rmdir return 1
-	on success and 0 on failure.
-
-2005-10-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (F77_FFLOAT_STORE_FLAG):
-	Check for -ffloat-store option for Fortran compiler and set
-	F77_FLOAT_STORE_FLAG if it works.
-	* Makeconf.in: Substitute it here.
-	(do-subst-config-vals): Substitute OCTAVE_CONF_F77_FLOAT_STORE_FLAG.
-
-2005-10-14  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_PYTHON): New macro.
-	* configure.in: Use it.
-	* Makeconf.in (PYTHON): Substitute it.
-
-2005-10-05  David Bateman  <dbateman@free.fr>
-
-	 mkoctfile.in: allow -idirafter argument.
-
-2005-09-23  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (install install-strip):
-	Conditionally install octave.desktop.
-	(IMAGE_FILES, IMAGE_FILES_NO_DIR): New macros.
-	(DISTFILES): Include IMAGE_FILES in list.
-	(install install-strip): Install image file.
-
-	* aclocal.m4 (OCTAVE_PROG_DESKTOP_FILE_INSTALL): New macro
-	* configure.in: Use it.
-	* Makeconf.in: Substitute DESKTOP_FILE_INSTALL.
-
-	* octave.desktop.in: New file.  From S�ren Hauberg <hauberg@gmail.com>.
-	* examples/Makefile.in (SOURCES): Add it to the list.
-	(octave.desktop): New target.
-	(all): Depend on octave.desktop.
-
-2005-09-22  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_PERL): New macro.
-	* configure.in: Use it.
-	* Makeconf.in (PERL): Substitute it.
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2005-09-19  David Bateman  <dbateman@free.fr>
-
-	* octMakefile.in (LN_S): Change to DESTDIR before LN_S to avoid
-	lack of symlinks under mingw.
-
-2005-09-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h.in: Move to liboctave.
-	* octMakefile.in (CONF_DISTFILES): Delete it from the list.
-	(maintainer-clean, distclean, install, install-strip, uninstall):
-	Omit rules for oct-sparse.h.
-	* configure.in: Substitute liboctave/oct-sparse.h, not oct-sparse.h.
-
-2005-09-15  David Bateman  <dbateman@free.fr>
-
-	* acx_include_dirs.m4 (AC_CHECK_HEADER_IN_DIRS): Define new macro.
-	* oct-sparse.h.in: New AC_CONFIG_FILE.
-	* configure.in: (AC_CHECK_HEADER_IN_DIRS): Use macro.
-	(AMD_LIBS, COLAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS): Probe for
-	these sparse library in addition to UMFPACK.
-	(UMFPACK_INCLUDE, AMD_INCLUDE, COLAMD_INCLUDE, CCOLAMD_INCLUDE):
-	AC_SUBST into oct-sparse.h.
-	(LIBGLOB): Probe for external glob/fnmatch, define LIBGLOB.
-	(sepchar): Define path seperation character in system dependent
-	manner. Use it with OCTAVE_SET_DEFAULT.
-	(SEPCHAR, SEPCHAR_STR): Dpend on sepchar.
-	(DL_LDFLAGS): Define for cygwin and mingw.
-	(-lwsock32): Add to LIBS.
-	(loadlibrary_api): Set for mingw/cygwin and autoconf test appears
-	broken.
-	* Makeconf.in: Don't use ";" as sed seperation to avoid confusion
-	with sepchar.
-	(LIBGLOB, AMD_LIBS, COLAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS,
-	sepchar): Substitute.
-	* octMakefile.in: (CONF_DISTFILES): Add acx_include_dirs.m4 and
-	oct-sparse.h.in
-	(oct-sparse.h): Include in install and clean directives
-
-2005-08-31  Pascal A. Dupuis  <Pascal.Dupuis@esat.kuleuven.be>
-
-	* emacs/octave-inf.el (inferior-octave-startup): Call
-	inferior-octave-resync-dirs here.
-
-2005-07-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (SH_LDFLAGS): Add -Wl,--enable-auto-image-base for
-	Cygwin and MinGW.
-
-2005-06-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AH_BOTTOM): Also define GCC_ATTR_DEPRECATED.
-
-2005-06-02  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (do-subst-default-vals): Substitute
-	${localstartupfiledir}, not ${localstartupfile} (which is undefined).
-
-2005-05-16  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Change UMFPACK_LONG_IDX to IDX_TYPE_LONG.
-
-2005-05-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CHECK_LIB($zlib_lib, ...)): Check for
-	gzclearerr instead of deflate.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_ARG_WITH(umfpack)): List -lumfpack ahead of -lamd.
-	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
-
-2005-04-29  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Add UMFPACK_LONG_IDX
-
-2005-04-21  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CONFIG_FILES): Remove install-octave from the list.
-	(AH_BOTTOM): Define SIZEOF_OCTAVE_IDX_TYPE.
-
-2005-04-14  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Only perform link step if we have some object files.
-	If only -v or --version is supplied, print version info and exit.
-
-2005-04-08  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (maintainer-clean distclean):
-	Remove install-octave from the list of files to remove.
-	(install-octave.in): Delete file.
-	(DISTFILES): Remove it from the list.
-
-	* Initial merge of 64-bit changes from Clinton Chee:
-
-	2005-04-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (--enable-64): Make default disabled.
-
-	2005-04-06  John W. Eaton  <jwe@octave.org>
-
-	* mk-opts.pl (emit_show_function, emit_set_functions,
-	emit_print_function): Also accept "octave_idx_type" and
-	"Array<octave_idx_type>".
-
-	2005-04-01  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (USE_64_BIT_IDX_T): Substitute value.
-	(do-subst-config-vals): Add to list of substitutions.
-
-	* configure.in (AC_CONFIG_FILES): Perform substitutions on
-	liboctave/oct-types.h too.
-	Handle --enable-64.
-
-2005-04-06  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Split the HDF5 and zlib detection code, so that zlib
-	can be used for compressed load/save in the absence of HDF5.
-
-	* Makeconf.in: Define UMFPACK_LIBS.
-
-	* Configure.in: Slightly alter the UMFPACK detection code so that it
-	correctly detects cblas bindings or not.
-
-2005-03-22  John W. Eaton  <jwe@octave.org>
-
-	* Makeconf.in (GLPK_LIBS): Substitute value.
-	(do-subst-config-vals): Add to list of substitutions.
-
-	* configure.in: Check for glpk.
-
-	* emacs/octave-mod.el (octave-abbrev-table): Omit fifth and sixth
-	arguments from define-abbrev for compatibility with some older
-	versions of Emacs.
-
-2005-03-21  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in: Try harder to find default pager (use code
-	similar to that used for finding default editor).
-
-2005-03-17  Shan G. Smith  <shan@cybertrails.com>
-
-	* configure.in: Move check for -lumfpack to after check for blas.
-
-2005-03-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: If first check for -lumfpack fails try again with
-	-lcblas as an additional library.
-
-	* configure.in: Change defaults to enable shared libraries and
-	dynamic linking and disable static libraries.
-
-2005-03-15  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (DISTFILES): Remove texi2dvi from the list.
-
-	* emacs/octave-inf.el, emacs/octave-mod.el, emacs/octave-hlp.el:
-	Import changes from Emacs.
-
-2005-03-14  Rafael Laboissiere  <rafael@debian.org>
-
-	* emacs/octave-mod.el (octave-end-keywords): Omit "end" from the list.
-	(octave-reserved-words): Include "end" here.
-	(octve-block-match-alist): Don't include "end" here.
-
-2005-03-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for umfpack/umfpack.h instead of just umfpack.h.
-
-2004-06-22  David Bateman  <dbateman@free.org>
-
-	* configure.in: Check for UMFPACK library and header files.
-
-2005-03-14  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Also print a warning if HDF5 library is not found.
-
-2005-03-10  John W. Eaton  <jwe@octave.org>
-
-	* mkoctfile.in: Accept -R DIR.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* examples/Makefile.in (bin-dist): Delete target.
-	(BINDISTFILES): Delete variable.
-	* emacs/Makefile.in: Likewise.
-
-	* octMakefile.in (VERSION, ARCH, binary-dist): Delete targets.
-	(XBINDISTFILES, BINDISTFILES, BINDISTSUBDIRS): Delete variables.
-
-2005-03-04  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (GXX_PICKY_FLAGS): Don't include
-	-Wmissing-prototypes or -Wstrict-prototypes.
-
-2005-03-02  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG, OCTAVE_F77_FLAG):
-	Use AC_LINK_IFELSE instead of AC_TRY_LINK.
-
-	* configure.in (OCTAVE_LOCAL_BUFFER): Use < T > instead of <T>.
-	From Clinton Chee <chee@parallel.hpc.unsw.edu.au>.
-
-2005-03-01  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CONFIG_FILES): Remove libcruft/odessa/Makefile
-	from the list.
-
-2005-03-01  Todd Neal  <tolchz@gmail.com>
-
-	* examples/make_int.cc: DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA now
-	takes three arguments.
-
-	* octMakefile.in (SUBDIRS, CLEANSUBDIRS):
-	Remove @GLOB_DIR@ from the list.
-
-2005-02-28  John W. Eaton  <jwe@octave.org>
-
-	* octMakefile.in (DISTDIRS): Remove glob from the list.
-	(dist): No need to clean up in glob subdirectory.
-	* glob: Delete directory.
-	* Makeconf.in (GLOB_INCFLAGS, LIBGLOB): Delete.
-	(do-subst-config-vals): Don't substitute them.
-	(INCFLAGS): Remove $(GLOB_INCFLAGS) from the list.
-	* configure.in: Don't test for glob or fnmatch.
-
-2005-02-22  Shan G. Smith  <shan@cybertrails.com>
-
-	* mkoctfile.in: If not linking, then use output file name
-	specified with -o.
-
-2005-02-21  John W. Eaton  <jwe@octave.org>
-
-	* texi2dvi: Delete our private version.
-
-	* Makeconf.in (MAKEINFO): Define.
-	(TEXI2DVI): Define as texi2dvi, not $(top_srcdir)/texi2dvi.
-
-2005-02-09  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for canonicalize_file_name and resolvepath.
-
-2005-02-02  John W. Eaton  <jwe@octave.org>
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2005-01-18  John W. Eaton  <jwe@octave.org>
-
-	* octave-bug.in: Try harder to find default editor (stolen from
-	bashbug).
-
-2004-12-17  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Use AC_GNU_SOURCE.
-
-2004-12-17  Orion Poplawski  <orion@cora.nwra.com>
-
-	* configure.in: Also check for signbit decl.
-
-2004-12-03  John W. Eaton  <jwe@octave.org>
-
-	* aclocal.m4 (OCTAVE_PROG_GPERF): Check with -L C++, not -L ANSI_C.
-	* Makefile.in (header-msg): Change recommended gperf version to
-	3.0.1 or more recent.
-
-2004-11-12  John W. Eaton  <jwe@octave.org>
-
-	* Back off on -ffloat-store until we decide whether it is really
-	necessary.
-
-2004-11-11  John W. Eaton  <jwe@octave.org>
-
-	* (OCTAVE_PROG_GNUPLOT): Don't set GNUPLOT_BINARY before calling
-	AC_CHECK_PROGS(GNUPLOT_BINARY, ...).
-
-	* configure.in: Use it to see if the C, C++, and Fortran compilers
-	accept -ffloat-store.
-	* aclocal.m4 (OCTAVE_F77_FLAG): New macro.
-
-2004-09-08  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (GXX_PICKY_FLAGS): Remove -fno-nonnull-objects.
-	(GCC_PICKY_FLAGS): Remove -Wnested-externs -Wid-clash-31.
-	From Quentin Spencer <qspencer@ieee.org>.
-
-	* configure.in (GCC_PICKY_FLAGS): Remove -Winline.
-
-2004-09-07  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Check for round.
-
-2004-06-22  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Use -Wl,-Bsymbolic for MKOCTFILE_DL_LDFLAGS on
-	GNU/Linux systems but not for SH_LDFLAGS.
-
-2004-04-22  John W. Eaton  <jwe@octave.org>
-
-	* configure.in: Add -Wl,-Bsymbolic to SH_LDFLAGS for GNU/Linux
-	systems.  From Fredrik Lingvall <Fredrik.Lingvall@signal.uu.se>.
-
-	* mkoctfile.in: Allow -Wx,option style options to be passed to the
-	compiler.  From Al Niessner <Al.Niessner@jpl.nasa.gov>.
-
-2004-04-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Delete code for --with-ieee754.
-	Use OCTAVE_IEEE754_DATA_FORMAT.
-
-	* aclocal.m4 (OCTAVE_IEEE754_DATA_FORMAT): New macro, based on
-	configure.in code for HAVE_IEEE754_COMPLIANCE.
-
-2004-04-06  David Bateman  <dbateman@free.fr>
-
-  	* configure.in : add the option --with-ieee754 and use it to define
-	HAVE_IEEE754_COMPLIANCE
-
-2004-04-02  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Warn about g++ 2.9x versions.
-
-2004-04-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (dist): Also make bz2 file and compute md5
-	checksums of both gz and bz2 files.
-
-2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: No longer accept --with-g77 (it is still possible
-	to use --with-f77=g77).
-
-2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for -mieee instead of -mieee-with-inexact.
-
-2004-02-20  Per Persson  <persquare@mac.com>
-
-	* mkoctfile.in (LINK_DEPS): Include $LDFLAGS in the list.
-
-2004-02-18  Per Persson  <persquare@mac.com>
-
-	* configure.in (*-*-darwin*): Define SONAME_FLAGS.
-
-2004-02-16  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Test for the presence of FFTW 3.x and use it in
-	preference to FFTW 2.x.  Define HAVE_FFTW3
-
-2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in (LINK_DEPS): Include $LIBS and $RLD_FLAG.
-	Use $OCTAVE_LIBS instead of listing libs individually.
-
-2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Delete INCLUDE_LINK_DEPS.  Fix help text.
-	Always define LINK_DEPS.
-	(LINK_DEPS): Also include FLIBS in the list.
-
-	* Makeconf.in (INCLUDE_LINK_DEPS): Don't substitute.
-	(do-subst-config-vals): Delete INCLUDE_LINK_DEPS.
-	* configure.in (INCLUDE_LINK_DEPS): Delete.
-
-	* mkoctfile (SH_LD, SH_LDFLAGS): Delete.
-	(DL_LD, DL_LDFLAGS): New variables.  Use them instead of SH_LD and
-	SH_LDFLAGS for creating .oct files.
-	Fix help text.
-
-	* configure.in (MKOCTFILE_SH_LDFLAGS): Delete.
-	(MKOCTFILE_DL_LDFLAGS): New variable, default to DL_LDFLAGS.
-
-	* Makeconf.in (do-subst-config-vals): Add DL_LD, DL_LDFLAGS, and
-	MKOCTFILE_DL_LDFLAGS to the list of substitutions.
-	Delete MKOCTFILE_SH_LDFLAGS.
-
-2004-02-14  Per Persson  <persquare@mac.com>
-
-	* configure.in (DL_LD, DL_LDFLAGS): New variables, default to
-	SH_LD and SH_LDFLAGS, respectively.
-	Define independently for SH_LD and SH_LDFLAGS for *-*-darwin* targets.
-	* Makeconf.in (DL_LD, DL_LDFLAGS): Substitute them here.
-
-2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (header-msg): Required bison version now 1.31 or later.
-
-2004-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el: If line-end-position is not defined,
-	provide it as an alias for point-at-eol.
-
-2004-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el: If line-beginning-position is not defined,
-	provide it as an alias for point-at-bol.
-
-2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM):
-	Define OCTAVE_LOCAL_BUFFER using vector<T> instead of auto_ptr.
-	Suggested by Paul Thomas <Paul.Thomas@jet.efda.org>
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean, distclean):
-	Remove Makefile and autom4te.cache.
-
-2004-01-14  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Test for the presence of the function
-	H5Gget_num_objs	in HDF5 library, and define HAVE_H5GGET_NUM_OBJS.
-
-2004-01-06  Per Persson  <persquare@mac.com>
-
-	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Recognize
-	*-*-darwin*, not *-*-darwin6*.
-
-2003-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* INSTALL: Update to newer version from autoconf.
-
-2003-11-26  Cyril Humbert  <Cyril.Humbert@univ-mlv.fr>
-
-	* octave-config.in (--m-site-dir): Echo $LOCALVERFCNFILEDIR, not
-	$OCTAVE_LOCALVERFCNFILEDIR.
-	(--oct-site-dir): Echo $LOCALVEROCTFILEDIR, not
-	$OCTAVE_LOCALVEROCTFILEDIR.
-
-2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Also maybe add -W to WARN_CFLAGS and WARN_CXXFLAGS.
-
-2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (SHLLIB_VER): Fix typo.
-
-	* Makeconf.in (WARN_CFLAGS, WARN_CXXFLAGS): Substitute them.
-	(ALL_CFLAGS, BUG_CFLAGS): Add $(WARN_CFLAGS).
-	(ALL_CXXFLAGS, BUG_CXXFLAGS): Add $(WARN_CXXFLAGS).
-	(UGLY_ALL_CXXFLAGS): Delete.
-
-	* configure.in: Add -Wall and -Wshadow to WARN_CFLAGS and
-	WARN_CXXFLAGS instead of CFLAGS and CXXFLAGS.
-
-2003-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: If we need alloca, then also include it in LIBGLOB.
-
-2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Preserve CFLAGS and CXXFLAGS before doing anything.
-	Maybe add -Wshadow to CFLAGS and CXXFLAGS.
-
-2003-10-24  Stefan Monnier  <monnier@iro.umontreal.ca>
-
-	* emacs/octave-mod.el (octave-comment-start): Simplify.
-	(octave-point): Remove.
-	(octave-in-comment-p, octave-in-string-p)
-	(octave-not-in-string-or-comment-p, calculate-octave-indent)
-	(octave-blink-matching-block-open, octave-auto-fill):
-	Use line-(beginning|end)-position instead.
-
-2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-inf.el (inferior-octave-prompt): Don't bother
-	matching "octave.bin".
-
-2003-10-29  Lute Kamstra  <lute@gnu.org>
-
-	* emacs/octave-inf.el (inferior-octave-prompt): Recognize
-	version number in prompt.
-
-2003-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-mode-syntax-table): Allow % to be a
-	comment character.
-
-2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (AWK): Substitute and export it.
-	* configure.in: Also check for AWK.
-
-2003-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_PREREQ): Require 2.57.
-
-2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): Don't define HEAVYWEIGHT_INDEXING here.
-
-2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-variables): Delete
-	propagate_empty_matrices from the list.
-
-	* ck-oct-fcns.m: Delete.
-
-2003-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Warn if --enable-dl but not --enable-shared.
-
-2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-variables): Delete
-	default_return_value and define_all_return_values from the list.
-	Add warn_undefined_return_values to the list.
-
-2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-variables):
-	Add warn_empty_list_elements and warn_resize_on_range_error to the
-	list.
-	Delete empty_list_elements_ok and resize_on_range_error from the
-	list.
-
-2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-variables): Add warn_neg_dim_as_zero
-	to the list.
-	Delete treat_neg_dim_as_zero from the list.
-
-2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-variables): Include
-	DEFAULT_EXEC_PATH, DEFAULT_LOAD_PATH, crash_dumps_octave_core,
-	sighup_dumps_octave_core, sigterm_dumps_octave_core,
-	warn_imag_to_real, warn_num_to_str, warn_str_to_num, and
-	warn_fortran_indexing in the list.
-	Delete ok_to_lose_imaginary_part, implicit_num_to_str_ok,
-	implicit_str_to_num_ok, prefer_column_vectors,
-	prefer_zero_one_indexing, and do_fortran_indexing from the list.
-
-2003-07-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-default-vals): Substitute OCTAVE_API_VERSION.
-	* octave-config.in: Handle new variable OCTAVE_API_VERSION.
-
-	* octMakefile.in (DIRS_TO_MAKE): Delete undefined vars
-	$(localfcnfilepathdirs) and $(localoctfilepathdirs) from the list.
-
-	* octave-config.in: Handle new variables OCTAVE_LOCALAPIFCNFILEDIR
-	and OCTAVE_LOCALAPIOCTFILEDIR
-
-	* configure.in (localapifcnfiledir): New variable.
-	(localfcnfilepath): Add it to the list.
-	(localapioctfiledir): New variable.
-	(localoctfilepath): Add it to the list.
-	* Makeconf.in (do-subst-default-vals): Substitute new varibles.
-
-	* Makeconf.in (getapiversion, apiversion): New macros.
-
-	* octMakefile.in (DIRS_TO_MAKE): Include $(localverarchlibdir) in
-	the list.
-
-2003-07-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Set and substitute values for startupfiledir and
-	localstartupfiledir.
-
-	* octave-config.in: Allow other configuration defaults to be
-	accessed using --variable VAR option.
-
-2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (distclean): remove install-octave here.
-
-2003-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: If user doesn't specify --enable-rpath, then
-	default is to enable it.
-
-2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (GNUPLOT_HAS_FRAMES): Eliminate variable.
-
-	* emacs/octave-mod.el (octave-variables): Eliminate
-	gnuplot_has_multiplot.
-
-2003-05-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: In check for f_open in libf2c, only use
-	-L. -lconflib if we have created libconflib.a.
-
-2003-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_GPERF): Provide struct decl so -t option
-	succeeds with gperf 3.0.
-
-	* Makeconf.in (NO_OCT_FILE_STRIP): Use -C arg for make.
-
-	* octMakefile.in (DIRS_TO_MAKE): Use $(shell ...) instead of `...`.
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in, octMakefile.in, emacs/Makefile.in,
-	examples/Makefile.in: Handle DESTDIR.
-
-2003-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (sbindir): New variable substitution.
-
-2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't define WITH_KPATHSEARCH.
-
-2003-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Look for wsock32 library on MinGW systems.
-
-2003-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (OCTAVE_LOCAL_BUFFER): Always allocate temporary
-	buffer using new.
-
-2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in octMakefile.in: Delete kpathsea targets.
-
-	* kpathsea: Delete all files and directory.
-
-	* configure.in: Don't run configure in kpathsea subdirectory.
-
-	* README.kpathsea: New file.
-	* octMakefile.in (DISTFILES): Include it in the list.
-
-	* Makeconf.in (do-subst-config-vals): Don't substitute it.
-
-	* configure.in: Also check for basename.
-	Don't substitute LIBKPATHSEA.
-
-2003-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): Don't assume that __WIN32__ will be
-	defined when __CYGWIN__ is defined.
-
-2003-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Only complain for g++ earlier than 2.95.
-	Try harder to get version number only.
-
-2003-03-05  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* aclocal.m4 (OCTAVE_DYNAMIC_AUTO_ARRAYS): New macro.
-	* configure.in: Use it.
-	(AH_BOTTOM): Check HAVE_DYNAMIC_AUTO_ARRAYS instead of __GNUG__.
-
-2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Undo previous change.
-	* Makeconf.in: Likewise.
-
-2003-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (KPATHSEA_INCFLAGS): New variable.
-	* Makeconf.in (KPATHSEA_INCFLAGS): Substitute it.
-	(do-subst-config-vals): Add it to the list.
-	(INCFLAGS): Add $(KPATHSEA_INCFLAGS).
-
-2003-02-23  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* aclocal.m4 (OCTAVE_PLACEMENT_DELETE): New macro.
-	* configure.in: Use it.
-	(AH_BOTTOM): Don't define HAVE_PLACEMENT_DELETE here.
-
-2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Allow RLD_FLAG to be set using --enable-rpath arg.
-
-	* configure.in: Fix default RLD_FLAG value for *-sgi-*.  From
-	Paul Kienzle <pkienzle@users.sf.net>.
-
-	* configure.in: Check for long long int and unsigned long long int.
-
-	* configure.in (AH_BOTTOM): Define HAVE_PLACEMENT_DELETE for gcc
-	3.2 and later.
-
-	* configure.in: Check for copysign and signbit.
-
-2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/Makefile.in (DISTFILES): Add otags.1 to the list.
-
-2003-02-18  Dirk Eddelbuettel  <edd@debian.org>
-
-	* emacs/otags.1: New file.
-
-2003-02-18  David Bateman  <dbateman@free.fr>
-
-	* configure.in: Eliminate linpack
-
-2003-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for mkstemp too.
-
-2003-02-13  Arno Klaassen  <arno@scito.com>
-
-	* configure.in: Fix SH_LD and SH_LDFLAGS for -*-*-freebsd*.
-
-2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Use '$(CXX)', '$(AR)', not "$CXX" and "$AR" when
-	setting variables for building shared libraries.
-
-2003-02-13  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* examples/make_int.cc: Support for ISO standard compilers.
-
-2003-01-22  Richard Stallman  <rms@gnu.org>
-
-	* emacs/octave-mod.el (octave-mode-map): Avoid binding keys that
-	are reserved for users.
-
-2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Fix typo in previous change.
-
-2003-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (MKOCTFILE_INCFLAGS): Skip -I$(includedir) if
-	$(includedir) is /usr/include.
-
-2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* Makeconf.in (SED): Export to subshells.
-
-2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't bother with compiler flags for
-	explicit/no-implicit template instantiation.
-
-2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in, Makeconf.in: Allow setting of BUILD_LDFLAGS.
-
-2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* autogen.sh: Use --force for autoconf and autoheader.
-
-2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (CONF_DISTFILES): Include acx_blas.m4 and
-	acx_lapack.m4.
-
-	* configure.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX,
-	BUILD_CXXFLAGS): Kluge for Sun C/C++.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Default value of BUILD_CXX is $CXX, not g++.
-	(AH_BOTTOM): Define __USE_STD_IOSTREAM if using Compaq C++ compiler.
-	For compiler/linker options, use -Wl,OPT instead of -Xlinker OPT.
-	Check for -ieee option for the C and C++ compilers on alpha systems.
-
-2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fail on all gcc 1.x and 2.x versions.
-
-2002-12-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (OCTAVE_LOCAL_BUFFER): New macro.
-
-2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Include $LIBOCTINTERP in the stand alone link command.
-	Define LIBOCTAVE, LIBOCTINTERP, LIBCRUFT, LIBREADLINE using -lLIB.
-
-2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-script-install, do-script-uninstall):
-	New macros, used in Makefiles in scripts subdirectory.
-	(do-script-install): Use new scripts/mkpkgadd script to construct
-	PKG_ADD files.
-
-2002-12-03  Nix  <nix@esperi.demon.co.uk>
-
-	* configure.in: Use AC_CHECK_DECL in conjunction with
-	AC_DECL_SYS_SIGLIST to ensure signal.h is searched.
-
-2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Dont't set SONAME_FLAGS for alpha alpha*-dec-osf*
-	systems.
-
-2002-11-29  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* mkoctfile.in: Include "$incflags $def" in commands to generate
-	dependecies.
-
-2002-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (do-subst-config-vals): Substitute OCTAVE_BINDIR.
-
-	* configure.in (MKOCTFILE_SH_LDFLAGS): New variable.
-	* Makeconf.in (do-subst-config-vals): Substitute
-	OCTAVE_CONF version of this variable.
-
-	* mkoctfile.in: Set SH_LDFLAGS from MKOCTFILE_SH_LDFLAGS, not
-	SH_LDFLAGS.
-	(VERSION): Substitute value of OCTAVE_CONF_VERSION.
-
-	* configure.in (NO_OCT_FILE_STRIP): New variable.
-	* Makeconf.in (do-subst-config-vals): Substitute it.
-	* mkoctfile.in (no_oct_file_strip_on_this_platform): New variable.
-
-2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION):
-	Delete use.
-
-	* aclocal.m4 (OCTAVE_LANG_PROG_NO_CONFDEFS): Delete.
-	(OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Delete.
-
-2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for dlopen last, to avoid broken
-	compatibility libraries.
-	Default value for SHLLIB is '$(SHLEXT)', not $SHLEXT.
-
-2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (USE_EXCEPTIONS_FOR_INTERRUPTS): No need to define.
-
-2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for sigsetjmp and siglongjmp.
-	(AH_BOTTOM): If both are found, define OCTAVE_HAVE_SIG_JUMP.
-	Also check for sig_atomic_t, typedef it if not available.
-
-2002-11-10  Per Persson  <persquare@mac.com>
-
-	* configure.in: Detect dyld API for dynamic linking on OS X.
-
-2002-11-09  Per Persson  <persquare@mac.com>
-
-	* configure.in: Use $(TOPDIR)/src/octave, not $(bindir)/octave for
-	-bundle-loader argument.
-
-	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Force result for OS X.
-
-2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Set FPICFLAG, Also set CXXPICFLAG, CPICFLAG,
-	FPICFLAG, and INCLUDE_LINK_DEPS for OS X.
-
-	* acx_blas.m4 (LIBS): Also check for Apple vecLib framework.
-
-2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): Define USE_EXCEPTIONS_FOR_INTERRUPTS.
-
-2002-11-04  Joseph P. Skudlarek  <jskud@jskud.com>
-
-	* emacs/otags: handle declarations without arguments and/or return
-	values.
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SHLEXT_VER, SHLLIB_VER, SHLBIN_VER): Use
-	$(version), not $(VERSION).
-
-2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (HAVE_DLOPEN_API, HAVE_SHL_LOAD_API,
-	HAVE_LOADLIBRARY_API): Delete.
-	(do-subst-config-vals): Don't substitute them here.
-
-2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (ENABLE_DYNAMIC_LINKING): Rename from
-	WITH_DYNAMIC_LINKING.
-	* Makeconf.in: Likewise.
-	* examples/hello.cc: Likewise.  Improve comments.
-
-	* configure.in: Revive --enable-dl to set default value for
-	WITH_DYNAMIC_LINKING.
-
-	* configure.in: Also set SHLEXT_VER, SHLLIB_VER, SHLBIN_VER.
-	* Makeconf.in: Substitute them here.
-	Also substitute SHLLINKEXT.
-
-2002-10-25  Per Persson  <persquare@mac.com>
-
-	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Fix
-	first test to properly fail on OS X.  Fix typo in final test to
-	set result.
-
-2002-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-opts.pl (emit_opt_class_header): Make set_options another
-	name for copy.
-
-2002-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Don't substitute
-	OCTAVE_CONF_OCTAVE_LITE.
-	(OCTAVE_LITE): Delete.
-
-	* Makeconf.in: Use HAVE_DLOPEN_API, HAVE_LOADLIBRARY_API, and
-	HAVE_SHL_LOAD_API instead of WITH_DL and WITH_SHL.
-
-	* configure.in: Rewrite the way we handle dynamic linking.
-	If dynamic linking is used always do what was previously only
-	enabled by --enable-lite-kernel.
-
-2002-10-17  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in: Define WITH_DYNAMIC_LINKING based on --enable-shared.
-	Add -lwsock32 to LIBS for MinGW.
-
-2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_LANG_PROG_NO_CONFDEFS): New macro.
-	(OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Use it along with
-	AC_LINK_IFELSE instead of AC_TRY_LINK.
-	Require both programs to compile for success.
-
-2002-10-16  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* aclocal.m4: Both Cygwin and MinGW don't prepend underscores.
-	* configure.in: MinGW builds shared libraries the same as Cygwin.
-	MinGW must link to winsock explicitly.
-	* install-octave.in: MinGW and Cygwin both need OCTAVE_HOME.
-
-2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in (library_path_var): New variable.
-
-2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SH_LDFLAGS): Additional options for Cygwin:
-	-Wl,--export-all-symbols -Wl,--enable-auto-import.
-
-	* Makeconf.in (TERMLIBS): Substitute here.
-
-	* configure.in: Define OCTAVE_USE_WINDOWS_API if
-	defined (__WIN32__) && ! defined (__CYGWIN__), not if
-	defined (__WIN32__) || ! defined (__CYGWIN__).
-	Also call AC_SUBST for TERMLIBS.
-
-2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in: Use correct SHLEXT and PICFLAG for Cygwin.
-	* configure.in: Cygwin must link against -loctave.dll, etc.
-
-	* configure.in: Define INCLUDE_LINK_DEPS because Cygwin needs DLLs
-	to be linked against their dependencies.
-	* Makeconf.in: Ditto.
-
-	* configure.in: Define SHLLIB and SHLBIN because Cygwin doesn't
-	link against shared libs but instead against -lxxx.dll.  LIB and
-	BIN are the link and load forms respectively of the library.
-	* Makeconf.in: Ditto, and define the corresponding XXX_VER.
-
-	* configure.in: Remove LIBOCT_READLINE and LIBOCT_PATHSEARCH
-	because they are merged into LIBOCTAVE to avoid circular
-	dependencies.
-	* Makeconf.in: Ditto.
-	* mkoctfile.in: Ditto.
-
-	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Define LIBREADLINE because
-	Cygwin requires liboctave to be linked against -lreadline so
-	including it in LIBS isn't sufficient.
-	* mkoctfile.in: Substitute and use LIBREADLINE here.
-
-	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Force no for cygwin.
-
-2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): Maybe define OCTAVE_USE_WINDOWS_API
-	and OCTAVE_HAVE_WINDOWS_FILESYSTEM.
-
-2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_GNUPLOT): AC_DEFINE GNUPLOT_BINARY
-	Default value on Windows systems is pgnuplot.
-	If not cross compiling and no gnuplot program is found, set
-	default to gnuplot.  Set defaults for multiplot and frames.  Check
-	for pgnpuplot, pipe-gnuplot, and gnuplot on Windows systems.
-
-	* configure.in (BUILD_EXEEXT): New variable.
-	* Makeconf.in (BUILD_EXEEXT): Substitute it here.
-
-	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION):
-	Add second test for OS X.
-
-2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): New macro.
-	* configure.in: Use it.
-
-	* configure.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX, BUILD_CXXFLAGS):
-	Set default values if cross compiling.
-
-	* aclocal.m4 (OCTAVE_PROG_NM): Do the right thing for cross compiling.
-	(OCTAVE_CXX_PREPENDS_UNDERSCORE): Require OCTAVE_PROG_NM.
-	(OCTAVE_CXX_ABI): Likewise.
-
-	* Makeconf.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX, BUILD_CXXFLAGS):
-	New variables for cross compiling.
-
-2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in: Check for raise.
-
-2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_SED): New macro, adapted from autoconf
-	patches mailing list archive, written by Robert Boehne
-	<rboehne@ricardo-us.com>.
-	* configure.in: Use it.
-	* Makeconf.in: Substitute SED, use $(SED), not sed.
-	(do-subst-conffig-vals): Substitute it here too.
-	* mkoctfile.in: And here.  Use $SED, not sed.
-	* octave-bug.in: Likewise.
-	* install-octave.in: Likewise.
-
-2002-09-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't define mkdir here.
-
-2002-09-25  Mumit Khan  <khan@nanotech.wisc.edu>
-
- 	* aclocal.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): New macro to determine if
- 	host mkdir accepts only one arg instead of the usual two.
- 	* configure.in: Use. Check for direct.h.
- 	(mkdir): Define.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in: Check for conio.h.
-	Check for _kbhit.
-
-2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): Don't define
-	USE_PRAGMA_INTERFACE_IMPLEMENTATION.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* configure.in: Fix syntax errors in !HAVE_XXX_T.
-	Don't require terminal control for build.
-
-2002-09-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fix typedefs used in AH_BOTTOM.
-
-2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AH_BOTTOM): If using g++, define
-	USE_PRAGMA_INTERFACE_IMPLEMENTATION.
-
-2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for sstream.
-
-2002-08-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (%.d : %.cc): Add $*.df to LHS of dependency list.
-
-2002-08-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* mk-opts.pl: Add support for INCLUDE = "...".
-
-2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-opts.pl: Handle Array<int> too.
-
-2002-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-opts.pl (emit_options_function): Emit newline at EOF.
-
-2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Use $@-t instead of $@.tmp or $@.t.
-
-2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-opts.pl: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_CONFIG_FILES): Add libcruft/dasrt/Makefile to
-	the list.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_CONFIG_FILES): Add libcruft/odessa/Makefile to
-	the list.
-
-2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Maybe add -fno-coalesce-templates to XTRA_CXXFLAGS
-	on darwin systems.
-	(SH_LDFLAGS): Set this on darwin systems.
-	(UGLY_DEFS): Cope with broken sed or shell quoting on darwin systems.
-
-2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_ISO_COMPLIANT_LIBRARY): Omit cwctype.
-
-2002-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_AIX): Move before AC_MINIX and AC_ISC_POSIX.
-	(AH_BOTTOM): Move contents of acconfig.h here.
-	* acconfig.h: Delete.
-	* octMakefile.in (CONF_DISTFILES): Delete acconfig.h from the list.
-
-2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_CONFIG_FILES): Add libcruft/daspk/Makefile to
-	the list.
-
-2002-04-24  Kurt Hornik  <hornik@ci.tuwien.ac.at>
-
-	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): Also handle flags
-	that contain : and =.
-
-2002-04-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess, config.sub: Update from FSF sources.
-
-2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Declare F2C and F2CFLAGS with AC_ARG_VAR.
-	Delete AC_SUBST calls for F77, FFLAGS, FLIBS, F2C, F2CFLAGS (no
-	need to do this explicitly now).
-
-2002-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Set and substitute EXEEXT, not EXE.
-
-	* configure.in (EXE): Delete check and substitution.
-	* install-octave.in: Use EXEEXT instead of EXE.
-
-	* configure.in: Use AC_CHECK_MEMBERS, not OCTAVE_STRUCT_GR_PASSWD.
-	Use AC_CHECK_TYPES, not AC_CHECK_TYPE or OCTAVE_CHECK_TYPE.
-	* aclocal.m4 (OCTAVE_STRUCT_GR_PASSWD, OCTAVE_CHECK_TYPE): Delete.
-	* acconfig.h (dev_t, ino_t, nlink_t, sigset_t): Typedef if not found.
-
-2002-04-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4: Replace AC_LANG_SAVE, AC_LANG_C, AC_LANG_CPLUSPLUS,
-	and AC_LANG_RESTORE with AC_LANG_PUSH and AC_LANG_POP.
-	Use AS_MESSAGE_LOG_FD instead of AC_FD_CC.
-	* configure.in: Delete second arg in AC_CHECK_SIZEOF calls.
-
-2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* configure.in: Correct usage of AC_ARG_WITH for --with-fftw.
-
-	* configure.in: Update for autoconf 2.5x.
-	Minor syntax changes to new recommended syntaxes and macros.
-	Apply changes from autoupdate plus eliminate some warning
-	messages, deprecated uses of changequote, etc.
-	Use autoheader templates to generate config.h.in.
-	Replace most of Octave's Fortran support macros with those in the
-	new autoconf.
-	Eliminate most uses of internal (undocumented) autoconf cache vars.
-	Replace BLAS/LAPACK detection new macros ACX_BLAS/ACX_LAPACK from
-	the autoconf macro repository.
-	* acx_blas.m4, acx_lapack.m4: New files.
-	* acconfig.h: Delete lines that can be automatically generated
-	from new info in configure.in and aclocal.m4.
-	If it is not already defined, define F77_FUNC for use with f2c.
-	* aclocal.m4 (OCTAVE_PROG_G77, OCTAVE_FLIBS, OCTAVE_F77_MAIN_FLAG,
-	OCTAVE_F77_UPPERCASE_NAMES, OCTAVE_F77_APPEND_UNDERSCORE,
-	OCTAVE_F2C_F77_COMPAT): Delete definitions.
-	Use autoheader templates to generate config.h.in.
-	* Makeconf.in, mkoctfile.in (FORTRAN_MAIN_FLAG): Delete all uses.
-
-2001-11-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave-bug.in (BLAS_LIBS, FFTW_LIBS, LD_CXX): Substitute and
-	print values.
-	* mkoctfile.in: Accept --compile as an alias for -c.
-	New option, --link-stand-alone.
-	New option, --no-pathsearch.
-	New option, --no-readline.
-	Substitute RLD_FLAG, FLIBS, LIBKPATHSEA, LIBOCTINTERP,
-	LIBOCTAVE, LIBOCT_READLINE, LIBOCT_PATHSEARCH, LIBCRUFT,
-	BLAS_LIBS, FFTW_LIBS, and LIBS.
-	* Makeconf.in (MKOCTFILE_LFLAGS): New variable.
-	(do-subst-config-vals): Substitute FFTW_LIBS, LD_CXX,
-	LIBOCT_PATHSEARCH, LIBOCT_READLINE, MKOCTFILE_LFLAGS.
-
-2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LIBOCT_READLINE, LIBOCT_PATHSEARCH): New variables.
-	* Makeconf.in: Substitute them here.
-
-2001-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (dist): Omit long-gone info subdir.
-	Fix find command for removing Makefile in kpathsea and glob subdirs.
-
-2001-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Substitute F2C and F2CFLAGS. Make it possible to
-	use f2c and a C compile to compiling Fortran source files.  Print
-	warnings and error message on stderr, not stdout.  Issue warnings
-	if it is not possible to comiple Fortran, C, or C++ files.
-
-	* configure.in (%.c : %.f): Don't use cat in F2C rule.
-
-2001-07-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Substitute DEPEND_FLAGS and
-	DEPEND_EXTRA_SED_PATTERN.
-	* mkoctfile.in: Handle --depend.
-
-2001-07-25  Rafael Laboissiere  <rafael@laboissiere.net>
-
-       * octave-config.in: New file.
-       * Makeconf.in (do-subst-default-vals): Substitute OCTAVE_VERSION.
-       * Makefile.in (TARGETS): Add octave-config to list.
-       * octMakefile.in (DISTFILES): Add octave-config.in to list.
-       (BINDISTFILES): Add octave-config to list.
-       (all): Add octave-config dependency.
-       (octave-config): New rule.
-       (install): Install octave-config.
-       (uninstall): Delete octave-config from bindir.
-       (maintainer-clean): Delete octave-config.
-       (binary-dist): Add octave-config dependency.
-
-2001-06-29  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_ABI): Use "sun_v5" instead of "sun".
-
-	* aclocal.m4 (OCTAVE_CXX_ABI): New macro.
-	(OCTAVE_CXX_PREPENDS_UNDERSCORE): Add missing return value.
-	* configure.in: Use.
-	* acconfig.h (CXX_ABI): New macro.
-
-2001-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Quote the call to AC_CHECK_FUNC inside the
-	AC_CHECK_LIB macro when checking for lapack.  For autoconf 2.50
-
-	* aclocal.m4: Changes for autoconf 2.50:
-	Convert dnl comments inside AC_DEFUN to ###.
-	(OCTAVE_FLIBS): Use [] quoting instead of changequote.
-
-2001-05-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in: Remove remaining references to readline.
-	(CONF_DISTFILES): Add autogen.sh to the list.
-
-2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* configure.in: Support for --with-fftw.
-	(FFT_DIR, FFTW_LIBS): New substitutions.
-	* Makeconf.in (FFTW_LIBS): New variable.
-	* acconfig.h (HAVE_FFTW): New macro.
-
-2001-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Require readline unless
-	--disable-readline is specified.
-
-	* configure.in: Don't define TERMLIBS.  Do add terminal lib(s) to LIBS.
-	* octave-bug.in: Delete references to TERMLIBS.
-	* Makeconf.in: Likewise.
-
-	* Makeconf.in (LIBREADLINE): Delete substitution.
-	(do-subst-config-vals): Likewise.
-	* octMakefile.in (SUBDIRS): Delete @READLINE_DIR@ from the list.
-	* configure.in (AC_CONFIG_SUBDIRS): Delete $READLINE_DIR from the list.
-
-	* configure.in (VOID_SIGHANDLER): Don't check or substitute here.
-
-2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (install, install-strip): Don't use mk-includedir-link
-
-	* Makeconf.in (mk-includedir-link, mk-libdir-link): Delete definitions.
-
-2001-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (mk-libdir-link): Undo previous change
-
-2001-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Only check for libz if checking for HDF5 libraries.
-	Allow user to specify HDF5 library name on command line, same as
-	for BLAS libraries.  Include BLAS and HDF5 libs in summary output.
-
-2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (CONF_DISTFILES): Remove config.h.bot from the list.
-
-2001-04-19  David Livings  <david.livings@asa.co.uk>
-
-	* Makeconf.in (mk-libdir-link): Omit check for $(octlibdir)/octave
-	existing as a directory.
-
-2001-02-28  Albert Chin-A-Young  <china@thewrittenword.com>
-
-	* configure.in: Check for getpwnam in libsun only after checking
-	default libraries first.  Check for gethostname in libsocket only
-	after checking default libraries first.
-
-2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Allow for using f2c when setting functions to look
-	for in the BLAS and Lapack libraries.
-	From Kurt Hornik <Kurt.Hornik@ci.tuwien.ac.at>.
-
-2001-02-10  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* test/octave.test/string/dec2hex-1.m: Don't assume hex format
-	produces lower case letters.
-
-2001-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* acconfig.h: Merge contents of config.h.bot.
-	* config.h.bot: Delete.
-
-	* autogen.sh: Allow running of autoconf or autoheader to be skipped.
-
-2001-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* readline: Update to new version (4.2-beta1).
-
-2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* configure.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): New variables.
-	* Makeconf.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Likewise.
-
-	* configure.in (XTRA_CXXFLAGS): Use -fno-implicit templates for
-	pre-gcc3 compilers. Remove -fno-rtti and -fno-exceptions.
-	(DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): New macros.
-	(BLAS_LIBS): Fix test for sunperf library on Sun Solaris.
-	(CPICFLAG, CXXPICFLAG, FPICFLAG, SH_LDFLAGS, RLD_FLAG): Add Sun
-	compiler support.
-	* Makefile.in (DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): New
-	variables.
-	(%.d : %.cc): Use.
-	(%.d : %.c): Likewise.
-	* acconfig.h (CXX_ISO_COMPLIANT_LIBRARY): Add #undef.
-
-2001-01-31  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* Makeconf.in (%.d : %.cc): Strip the directory portion of the
-	target.
-	(%.d : %.c): Likewise.
-
-	* aclocal.m4 (OCTAVE_CXX_ISO_COMPLIANT_LIBRARY): New macro.
-	* configure.in: Use it.
-
-2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Substitute
-	OCTAVE_CONF_CANONICAL_HOST_TYPE here too.
-	* octave-bug.in: Substitute OCTAVE_CONF_CANONICAL_HOST_TYPE, not
-	OCTAVE_CANONICAL_HOST_TYPE.
-
-2000-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4: Give gperf a keyword, to avoid complaints from newer
-	versions.
-
-2000-11-27  Marcus.Brinkmann  <Marcus.Brinkmann@ruhr-uni-bochum.de>
-
-	* configure.in: Handle *-*-gnu* the same as *-*-linux* for shared
-	library creation.
-
-2000-11-03  Andy Adler  <en254@freenet.carleton.ca>
-
-	* mkoctfile.in: Handle -c to mean compile only.
-
-2000-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Handle --print.
-
-2000-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_GPERF): Check that gperf supports flags
-	we use.
-
-	* missing: New file, modified from the missing script provided by
-	automake (never create files, just exit with failure status).
-	* aclocal.m4 (OCTAVE_PROG_BISON, OCTAVE_PROG_FLEX, OCTAVE_PROG_GPERF):
-	Use $(top_srcdir)/missing as replacement script.
-
-	* aclocal.m4 (OCTAVE_PROG_FLEX, OCTAVE_PROG_BISON): New macros.
-	* configure.in: Use them.
-
-2000-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* autogen.sh: Don't run configure.
-
-	* configure.in (SPECIAL_MATH_LIB): Delete code related to this var.
-	* Makeconf.in: Ditto.
-	(BLAS_LIBS, LIBS): Substitute here.
-	(do-subst-config-vals): Put BLAS_LIBS in oct-conf.h.
-
-2000-07-20  Joao Cardoso  <jcardoso@inescn.pt>
-
-	* configure.in: (LD_CXX): Define and substitute.
-	For sco3.2v5 systems, set SONAME_FLAGS and RLD_FLAG.
-	* Makeconf.in (LD_CXX): Allow substitution.
-
-2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DISTSUBDIRS): Define in terms of $(ALL_SUBDIRS).
-
-2000-07-17  Joao Cardoso  <jcardoso@inescn.pt>
-
-	* configure.in (LIBGLOB): Set to be the two object files in the
-	glob directory instead of libglob.a.
-
-2000-07-05  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
-
-	* Use BLAS_LIBS to save the names of BLAS libraries instead of
-	adding them to LIBS, then substitute BLAS_LIBS.
-
-2000-06-30  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
-
-	* configure.in: Support for --with-fastblas (ATLAS).
-
-2000-06-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for long long data type.
-
-2000-06-29  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
-
-	* acconfig.h (HAVE_HDF5): Add undef.
-	* configure.in: Handle --with-hdf5.
-
-2000-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave-bug.in: Substitute correct values for config_opts,
-	MACHINE, and CXXFLAGS.
-
-2000-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (GPERF): Allow substitution.
-
-2000-06-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_GPERF): New macro.
-	* configure.in: Use it.  Print warning at end if gperf is missing.
-
-2000-04-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Try moving output file first.  But comment these
-	lines and let people who have trouble enable them.
-
-2000-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Remove output file before linking.
-
-	* octMakefile.in (DIRS_TO_MAKE): Create $(octincludedir)/octave.
-	(install install-strip): Install config.h in $(octincludedir)/octave,
-	not $(octincludedir).
-
-2000-03-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DIRS_TO_MAKE): Double up on $ in awk command to
-	get them past Make.
-
-2000-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (SUBDIRS): Omit src.
-	(ALL_SUBDIRS): New variable.  Include src here.
-	(all): Depend on src instead of $(SUBDIRS).
-	(src): New target.  Depend on $(SUBDIRS).
-
-	* Makefile.in (.NOTPARALLEL): New target, for GNU Make 3.79.
-	* octMakefile.in (.NOTPARALLEL): Likewise.
-
-2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for vsnprintf.
-
-2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (liboctave.$(SHLEXT)): Delete target before rebuilding.
-
-2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
-
-	* Makeconf.in (%.o : %.c): Pass -o to compile command.
-	(%.o : %.cc): Ditto.
-	* configure.in (%.o : %.f): Ditto.
-
-2000-03-08  Stephen Eglen  <stephen@gnu.org>
-
-	* emacs/octave-mod.el (octave-font-lock-keywords): To font-lock
-	the builtin operators, use `font-lock-builtin-face' for Emacs
-	and `font-lock-preprocessor-face' for XEmacs.
-
-2000-03-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: For building shared libaries, handle
-	i386-pc-solaris2* the same as sparc-sun-solaris2*.
-
-2000-02-29  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* examples/make_int.cc (make_int): Handle new operator names.
-
-2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean distclean): Don't delete Makefile.
-	(dist): Delete stamp-auto.
-
-2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (octincludedir): Delete trailing /octave here.
-	* Makeconf.in (mk-includedir-link): Append it here.
-	(MKOCTFILE_INCFLAGS): Use both -I$(octincludedir) and
-	-I$(octincludedir)/octave.
-
-	* configure.in (localveroctfiledir, localverarchlibdir,
-	localverfcnfiledir): New variables.
-	(localfcnfilepath): Prepend localverfcnfiledir.
-	(localoctfilepath): Prepend localveroctfiledir.
-	* Makeconf.in: Substitute them here.
-
-	* Makeconf.in (do-subst-default-vals): Substitute
-	OCTAVE_LOCALVERARCHLIBDIR, OCTAVE_LOCALVERFCNFILEDIR,
-	OCTAVE_LOCALVEROCTFILEDIR.
-
-2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess: Update to latest from subversions.gnu.org.
-	* config.sub: Likewise.  Recognize sv1-cray as a basic_machine.
-
-	* Makeconf.in (MKOCTFILE_INCFLAGS): New macro.
-	(do-subst-conf-vals): Substitute it.
-	* mkoctfile.in: Set INCFLAGS from OCTAVE_CONF_MKOCTFILE_INCFLAGS.
-
-	* mkoctfile.in: Fix names in substititions.
-	* octave-bug.in: Likewise.
-
-2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-default-vals, do-subst-config-vals):
-	Substitute more complete set of values.
-
-2000-02-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (octave_cv_string_npos): Add std:: qualifier.
-
-2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-begin-keywords): Add "do".
-	(octave-end-keywords): Add "until".
-	(octave-abbrev-table): Add "u" as abbrev for "until ()"
-	(octave-block-match-alist): Add do-until.
-
-2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't look for the sunmath library.
-	Don't check for infinity or quiet_nan.
-
-	* emacs/octave-mod.el (octave-mode-syntax-table):
-	Undo previous change, but add a comment explaining why.
-
-	* install-octave.in: Exit on any error instead of continuing.
-	Install Octave binary last.
-
-2000-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-mode-syntax-table):
-	Make `%' a comment start character too.
-
-2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for strptime and localtime_r.
-
-1999-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (XTRA_CXXFLAGS, XTRA_CFLAGS): Use -mminimal-toc on
-	AIX systems.
-
-1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/README: New file.
-	* emacs/Makefile.in (DISTFILES, BINDISTFILES): Add it to the lists.
-
-	* emacs/Makefile.in: Don't distribute .elc files.
-
-1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for select and poll.  Also check for poll.h
-	and sys/poll.h.
-
-1999-10-19  Geoff Jacobsen  <geoffj@casquet.inet.net.nz>
-
-	* autogen.sh: New file.
-
-1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in: Use `$(MAKE) -C dir' instead of `cd dir; $(MAKE)'.
-
-Mon Sep 20 11:02:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-inf.el, emacs/octave-mod.el: Update to match FSF
-	sources plus code that will make it work if Emacs doesn't have the
-	customize code.
-
-Tue Sep 14 07:57:06 1999  Kurt Hornik  <hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-inf.el (inferior-octave-startup): Always pass "-i"
-	and "--no-line-editing" to Octave subprocess.
- 	(inferior-octave-startup-args): Default to nil.
-
-Mon Sep  6 10:50:10 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-inf.el (inferior-octave-startup-args):
-	Add --no-line-editing to the list.
-
-Fri Jul  9 09:15:24 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Try to handle IEEE FP flags for g77 on Alphas.
-
-Thu Jul  8 19:56:37 1999  Stephen Eglen  <stephen@gnu.org>
-
-	* emacs/octave-inf.el (inferior-octave-directory-tracker):
-	Change regexp so that it doesn't match commands beginning with `cd'.
-
-Wed Jun 23 13:20:11 1999  Mumit Khan  <khan@xraylith.wisc.edu>
-
-	* configure.in (HAVE_TERMIOS_H): Avoid autoheader lossage.
-
-Sun Jun 20 23:05:18 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for sys/ioctl.h.
-
-Mon May 10 09:06:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_G77): Also match "FSF-g77", for egcs.
-
-Thu Apr  8 19:20:09 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* examples/hello.cc (Fhello): octave_value::print now requires a
-	stream arg.
-
-Wed Feb  3 01:02:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Use AC_OUTPUT_COMMANDS to chmod install-octave so
-	that the command will also executed in config.status.
-
-Thu Jan 28 21:05:32 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Do substitution on
-	CANONICAL_HOST_TYPE, not TARGET_HOST_TYPE.
-	(do-subst-default-vals): Likewise.
-
-Wed Jan 20 12:56:02 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't put -O in FFLAGS for powerpc-apple-machten*.
-
-Wed Dec  9 14:02:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (RDYNAMIC_FLAG): Substitute RDYNAMIC_FLAG here.
-	* configure.in: Check for G++ compiler flag -rdynamic if setting
-	up to support dynamic linking, and substitute RDYNAMIC_FLAG if
-	-rdynamic is accepted.
-	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): Clarify usage comment.
-
-Mon Dec  7 19:49:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for -lm just after compiler tests.
-	Remove -lm from other macro calls.  Don't check for -lm on NeXT
-	systems.  Eric Norum <eric@skatter.usask.ca> says /lib/libsys_s.a
-	has all the routines that are traditionally in libc.a and libm.a
-	on *NIX systems.  NeXT also supplies a libm.a, but it seems to be
-	horribly buggy.
-
-Sat Dec  5 10:48:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Correctly handle -?.
-
-Fri Dec  4 18:05:51 1998  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-mod.el (octave-abbrev-start): Use the correct name
-	of the abbrev table, and provide support for XEmacs.
-	(octave-xemacs-p): New variable.
-
-Tue Nov 24 23:31:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for strftime too.
-	Avoid checking for termios.h on NeXT systems.
-
-Thu Nov 19 16:07:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): New macro.
-	* configure.in: Use it.
-	* acconfig.h: Add #undef for it.
-
-Thu Nov 12 10:42:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/otags: New script from Mario Storti
-	<mstorti@minerva.unl.edu.ar>.
-	* emacs/Makefile.in: Add it to the list of files to distribute and
-	install.
-
-Wed Nov 11 17:26:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Add libcruft/amos/Makefile.
-	Delete libcruft/specfun/Makefile.
-
-Mon Nov  9 08:53:03 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (LIBGLOB): Add a place for substitution to occur.
-	(GLOB_INCFLAGS): Define as @GLOB_INCFLAGS@, not @DLFCN_INCFLAGS@.
-	(do-subst-config-vals): Don't forget LIBGLOB.
-	* octave-bug.in (LIBGLOB): Substitute here too, and add it to the
-	list of configuration items to print.
-
-Mon Nov  2 20:33:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Define __NO_MATH_INLINES.
-	* acconfig.h: Add #undef for it.
-
-	* configure.in (AC_OUTPUT): Escape newlinew in macro call with \.
-
-	* install-octave.in (SHLEXT): Substitute.
-	(SHLEXT_VER): Define.
-	Use them for installing shared libraries.
-	Use subshells to avoid having to cd back to $distdir.
-	(distdir): Delete variable.
-
-Fri Oct  2 14:23:59 1998  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* octave-inf.el (inferior-octave-prompt):  Also match prompts of
-	the form `octave.bin:1>' which come from using precopiled binary
-	versions.
-
-Thu Sep 24 13:51:03 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Add libcruft/ordered-qz to the list.
-	Delete libcruft/balgen and libcruft/eispack from the list.
-
-Mon Aug 31 12:07:02 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.sub: Accept armv4 everywhere arm is allowed.
-
-Tue Aug 18 17:02:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Allow -DDEF on command line.
-
-Thu Jun 18 20:24:40 1998  Roman Hodek  <Roman.Hodek@informatik.uni-erlangen.de>
-
-	* configure.in (RLD_FLAG): Set correctly for Linux on all
-	architectures.  From
-
-Thu May 28 10:17:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: When checking for glob stuff, make sure that the
-	systsem header file has all the definitions that we need.  If not,
-	set up to use our replacement library.
-
-Mon May 18 11:33:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Fix typos in case statement.
-
-Fri May 15 00:34:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Make sure install-octave is executable.
-
-	* install-octave.in (oct_files): Don't cd to src.
-	(have_find): Delete variable (assume all systems have find).
-
-Thu May 14 10:29:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_SET_DEFAULT): Allow values to come from the
-	environment.
-
-	* Makefile.in (binary-dist): Don't set LDFLAGS to -static.
-	Run configure with --enable-shared and --enable-lite-kernel.
-
-	* octMakefile.in (DISTFILES): Include README.MachTen in the list.
-	(XBINDISTFILES): Include README.MachTen in the list.
-	Delete README.NLP from the list
-	* README.MachTen: New file.
-
-	* configure.in: Add -mno-fp-in-toc on ibm-aix4 systems.
-	From Philippe.Defert@cern.ch <Philippe.Defert@cern.ch>.
-
-Tue May  5 14:43:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_PROG_G77): Compile trivial program instead of
-	just running ${f77-f77} -v on nothing.
-	Convert all uses of $F77 to ${F77-f77}.
-
-Mon May  4 12:08:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-mode): Make comment-multi-line local
-	and set to nil.
-
-Tue Apr 28 14:28:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Really do skip -lkernel32.
-
-Thu Apr 23 23:26:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* kpathsea: Update to version 3.2.
-
-Mon Apr 20 21:58:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (dlfcn.h): Add check.
-
-Sat Apr 18 20:15:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (USE_GNU_INFO): Delete everything related to this.
-	* acconfig.h (USE_GNU_INFO): Delete undef.
-
-Tue Apr 14 15:33:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* install-octave.in: Improve error messages if version number or
-	host architecture can't be found.
-
-	* install-octave.in: Don't install info reader.
-
-Fri Mar 27 02:54:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Use a Fortran subroutine
-	instead of a function.
-
-Tue Mar 10 17:28:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (RLD_FLAG): Use $(octlibdir), not $(libdir).
-
-Mon Mar  2 00:02:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* install-octave.in: Explicitly set permissions on ls-R files.
-
-	* configure.in: Don't disable GNU Info on cygwin32 systems.
-
-	* install-octave.in: New file.
-	* configure.in: Create install-octave.
-	* octMakefile.in (distclean, maintainer-clean): Delete install-octave.
-	(DISTFILES): Distribute install-octave.in, not install-octave.
-
-Sun Mar  1 23:15:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fix typo in test for glob and fnmatch headers.
-
-Fri Feb 27 15:43:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fix support for dlopen on SCO systems.
-
-Mon Feb 23 13:06:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (ieee_fp_flag): Use -mieee-with-inexact on Alphas.
-	Use octave_cv_f77_is_g77, not just f77_is_g77.
-
-Fri Feb 20 00:38:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in, Makeconf.in: Try to set things up to use the
-	system glob and fnmatch headers and functions if they exist.
-	Better handling of include and lib flags.
-
-Thu Feb 19 01:21:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't check for gamma or lgamma
-	* acconfig.h: Delete undef for HAVE_GAMMA and HAVE_LGAMMA.
-
-Wed Feb 18 15:05:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't check for vfork.
-
-Wed Feb 11 19:41:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (mk-libdir-link): Don't create link if a directory
-	named $(libdir)/octave already exists.
-
-Mon Feb  9 14:47:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (INSTALL_SUBDIRS): Delete @INFO_DIR@.
-
-Thu Feb  5 03:04:09 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for vfork.
-
-	* config.h.bot (X_CAST): New macro.
-
-Wed Feb  4 01:42:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): If ld_run_path is not absolute, kill it.
-
-Tue Feb  3 00:24:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-vals): Substitute $(libexecdir) too.
-
-Mon Feb  2 22:42:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Define octlibdir.
-	* Makeconf.in: Substitute value.
-	(do-subst-config-vals): Set LIBDIR to $(octlibdir).
-	(do-subst-default-vals): Substitute OCTLIBDIR too.
-
-Sat Jan 31 19:29:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* acconfig.h: Add #undefs for HAVE_GAMMA and HAVE_LGAMMA to avoid
-	bug in autoconf, but #if 0 them out to avoid warning messages
-	about redefining them.
-
-Mon Jan 26 13:26:09 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Substitute XTRA_CFLAGS and
-	XTRA_CXXFLAGS.
-	* mkoctfile.in: Substitute XTRA_CFLAGS and XTRA_CXXFLAGS, not
-	GCC_IEEE_FP_FLAG, HOST_CXXFLAGS, and NO_IMPLICIT_TEMPLATES.
-	(ALL_CFLAGS): Use XTRA_CFLAGS, not GCC_IEEE_FP_FLAG here.
-	(ALL_CXXFLAGS): Use XTRA_CXXFLAGS, not GCC_IEEE_FP_FLAG,
-	HOST_CXXFLAGS, and NO_IMPLICIT_TEMPLATES here.
-
-Sun Jan 25 01:59:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: (GXX_PICKY_FLAGS): Add -Weffc++.
-	Use OCTAVE_CC_FLAG and OCTAVE_CXX_FLAG to add -Wall and for adding
-	picky flags in AC_ARG_ENABLE(picky-flags ...) macro.
-
-	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Require OCTAVE_PROG_G77.
-	Handle cross compiling with g77.
-	(OCTAVE_REINSTALL_SIGHANDLERS): Provide defaults for cross compiling.
-
-	* aclocal.m4 (OCTAVE_PROG_AR, OCTAVE_PROG_G77, OCTAVE_PROG_PAGER,
-	OCTAVE_PROG_GNUPLOT, OCTAVE_PROG_RUNTEST, OCTAVE_F77_MAIN_FLAG):
-	New macros.
-	* configure.in: Use them in place of in-line code.
-
-Sat Jan 24 00:33:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_HOST_TYPE): Don't set target_host_type.
-	* configure.in: Use canonical_host_type in place of target_host_type.
-
-Fri Jan 23 02:47:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Also check for -fno-rtti.
-
-Thu Jan 15 23:12:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess, config.sub: Update to new version from the FSF.
-	* configure.in: Match alpha*-... instead of just alpha-... to cope
-	with new strings like alphaev56-dec-osf4.0b returned from
-	config.guess.
-
-	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): New macros.
-	* configure.in: Use them to find out if the C and C++ compilers
-	support -mieee-fp, -mieee, -fno-implicit-templates, and
-	-fno-exceptions instead of relying on version information.  Add
-	found flags to XTRA_CFLAGS and XTRA_CXXFLAGS instead of using
-	GCC_IEEE_FP_FLAG and NO_IMPLICIT_TEMPLATES.
-	Delete unused variable HOST_CXXFLAGS.
-	* Makeconf.in: Use XTRA_CFLAGS and XTRA_CXXFLAGS instead of
-	GCC_IEEE_FP_FLAG and NO_IMPLICIT_TEMPLATES.
-	Delete unused variable HOST_CXXFLAGS.
-
-Thu Dec 11 09:43:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot: Define CONST_CAST and STATIC_CAST too.
-
-	* configure.in (SH_LD): Set default to $CXX, not $CC.
-
-Mon Dec  1 00:49:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Add libcruft/slatec-err/Makefile.
-
-Sun Nov 30 18:19:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for gamma and lgamma too.
-
-Fri Nov 28 23:21:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Include libcruft/specfun/Makefile.
-
-Fri Nov 28 13:32:26 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* octave-inf.el (inferior-octave-directory-tracker):  Anchor
-	regexp match to beginning of command string.
-
-Wed Nov 26 00:38:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SPECIAL_MATH_LIB): If libdxml exists on DU
-	systems, define SPECIAL_MATH_LIB.
-	* Makeconf.in (SPECIAL_MATH_LIB): Substitute it.
-
-Wed Nov 19 01:54:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL): Don't forget
-	to call AC_LANG_RESTORE.
-
-	* configure.in (CXX_VERSION): Require 2.7.2 or later.
-
-Wed Nov 19 01:38:58 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL): New macro
-	check for new friend template declaration syntax (guiding
-	declarations in DWP).
-	* configure.in: Use it.
-	* config.h.in: Add undef for CXX_NEW_FRIEND_TEMPLATE_DECL.
-
-	* configure.in (CC_VERSION, CXX_VERISON): Check for egcs snapshots.
-
-Mon Oct 20 01:31:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Reprint important warning messages at the end of
-	the run.
-
-Fri Oct 17 04:43:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Include the following change from RMS for octave-mode.el:
-
-	1997-04-22  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
-
-	* octave-mod.el (inferior-octave-output-list): Declare here
-	to avoid compiler warnings.
-	(inferior-octave-output-string): Likewise.
-	(inferior-octave-receive-in-progress): Likewise.
-
-Tue Oct 14 10:48:28 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-mod.el (octave-block-match-alist):  Move
-	`otherwise' to right after `case' to have octave-close-block()
-	correctly close a `switch' block by `endswitch'.
-
-Thu Oct  2 01:37:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Ignore -lc and -lgcc.
-	From "Ram'on Garc'ia Fern'andez" <ramon@juguete.quim.ucm.es>
-
-	* mkoctfile.in: Handle -IDIR option.
-
-Thu Sep 25 11:47:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Really add link options to link command.
-	Also handle -LDIR options.
-
-Fri Sep 19 09:35:59 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* octave-inf.el (inferior-octave-startup-args):  Set to '("-i") to
-	force interactive behavior.
-
-Wed Sep 10 15:31:03 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-mod.el (octave-auto-indent):  New variable.
-	(octave-electric-semi, octave-electric-space):  Use it.
-
-	* emacs/octave-mod.el (octave-maybe-insert-continuation-string):  New
-	function.
-	(octave-auto-fill):  No longer calls do-auto-fill.  Should now
-	avoid breaking lines after comment starts or before code line
-	continuation expressions.
-	(octave-fill-paragraph):  Move forward a line if octave-auto-fill
-	gave up.
-
-	* emacs/octave-mod.el (octave-before-magic-comment-p):  New function.
-	(octave-comment-indent):  Handle magic comments correctly.
-	(calculate-octave-indent):  Handle magic comments correctly.
-
-	* emacs/octave-inf.el (inferior-octave-prompt):  Include the `debug'
-	prompt issued by the Octave `keyboard' command.
-
-	* emacs/octave-mod.el (octave-abbrev-table):  Added abbrevs for switch,
-	case, otherwise, and endswitch.
-	(octave-begin-keywords):  Added switch.
-	(octave-else-keywords):  Added case and otherwise.
-	(octave-end-keywords):  Added endswitch.
-	(octave-block-match-alist):  Added an entry for switch syntax.
-	(calculate-octave-indent):  Added support for switch syntax.
-	(octave-block-end-offset):  New function.
-	(octave-comment-indent):  Fix a typo.
-
-	* emacs/octave-hlp.el:  Provide octave-hlp.
-
-	* emacs/octave-inf.el:  Provide octave-inf.
-
-Sun Sep  7 23:16:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in Don't use OCTAVE_SET_DEFAULT to set values for
-	bindir, datadir, exec_prefix, includedir, infodir, libdir,
-	libexecdir, mandir.
-	Don't use AC_PREFIX_DEFAULT, since we don't want to override the
-	default setting anyway.
-
-Tue Aug 26 13:30:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave-bug.in: CC bug report to user if $USER or $LOGNAME is set.
-
-Mon Aug 25 11:06:54 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave-bug.in: Avoid clobbering existing dead bug report files
-	by numbering them.
-
-Wed Aug 13 20:34:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-before-magic-comment-p): New function.
-	(calculate-octave-indent, octave-comment-indent): Use it.
-
-Sun Aug  3 15:33:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* info: Delete subdirectory.
-	* Makefile.in (TARGETS, help): Delete info.
-	* octMakefile.in (DISTSUBDIRS, BINDISTSUBDIRS): Delete info
-	(binary-dist): Don't strip info/info.
-	* install-octave: Don't install info.
-	* configure.in: Don't run configure in info subdirectory.
-
-Fri Jul 25 14:05:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Avoid adding -lcrt0.o to FLIBS.
-
-Thu Jul 17 13:31:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Only accept an ld_run_path that is
-	absolute.
-
-Wed Jul  9 19:27:38 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Also check for getwd.
-
-Tue Jul  8 17:47:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Avoid grabbing an argument starting
-	with a - as an option for another argument.
-
-Wed Jul  2 21:34:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-auto-indent): New variable.
-	(octave-electric-semi, octave-electric-space): Use it.
-
-Thu Jun 26 22:16:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Only set GCC_IEEE_FP_FLAG to -mieee-fp on Intel
-	systems if it seems to work.
-
-Mon Jun 23 09:16:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (BOUNDS_CHECKING): Fix comment, allow bounds
-	checking to be enabled.
-
-Fri Jun 20 14:26:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Define SH_LD, SH_LDFLAGS, and RLD_FLAG for
-	sparc-sun-sunos4*.
-
-	* mkoctfile.in: Handle --strip.
-
-Sun Jun 15 16:24:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DISTSUBDIRS): Delete readline.
-	(BINDISTSUBDIRS): Delete readline and kpathsea.
-	(DISTDIRS): Add readline.
-
-Wed Jun 11 16:28:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Allow more options, support for C and Fortran
-	source, existing object files, etc.  Based on patch from Guido
-	Dietz <guido@aia009.aia.RWTH-Aachen.De>.
-
-Fri Jun  6 15:20:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Use eval to invoke compilation and linking
-	commands.
-
-	* octMakefile.in (dist, binary-dist): Don't worry about npsol or qpsol.
-	* configure.in: Don't create libcruft/fsqp/Makefile,
-	libcruft/npsol/Makefile, or libcruft/qpsol/Makefile.
-
-	* octMakefile.in (DISTFILES): Don't distribute MAKEINFO.PATCH.
-
-	* octMakefile.in (DISTFILES): Don't distribute README.NLP.
-	* configure.in: Delete checks for FSQP, NPSOL, and QPSOL.
-	* acconfig.h: Delete undefs for FSQP, NPSOL, and QPSOL.
-
-	* readline: Update to new version (2.1).
-
-Thu Jun  5 01:38:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SONAME_FLAGS): Define for some systems.
-	* Makeconf.in: Substitute value here.
-
-	* Makeconf.in (STATIC_LIBS): New variable.
-	* configure.in: Handle --enable-static.
-
-	* Makeconf.in (LIBEXT, SHLEXT_VER): New macros.
-	(octlibdir, mk-libdir-link): Delete.
-
-Wed Jun  4 00:07:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (mk-includedir-link, mk-libdir-link): Make them work.
-
-	* configure.in (OCTAVE_PROGRAM_INVOCATION_NAME): Delete check.
-	* aclocal.m4 (OCTAVE_PROGRAM_INVOCATION_NAME): Delete macro.
-
-Mon Jun  2 13:56:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Move checks for RANLIB, AR, and ARFLAGS before
-	checks for libf2c.
-
-Fri May 30 14:59:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fix typo in check for $with_f77.
-
-Thu May 22 16:48:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Remove duplicate entry for emacs/Makefile.
-
-	* octMakefile.in (INSTALL_SUBDIRS): New macro.
-	(install): Use it.
-
-	* kpathsea: Update to new version (3.0).
-
-	* readline: Update to new version (2.1-beta2).
-
-Wed May 21 16:33:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (install, install-strip): Append version
-	information to octave-bug and mkoctfile.
-	(install, install-strip): Remove octave-bug and mkoctfile first.
-	Ensure link is made in include directory.
-
-	* configure.in (octlibdir): New variable.
-	* Makeconf.in: Substitute it here.
-	(do-subst-config-vals): Add -I${octincludedir} to INCFLAGS.
-	Add -L${octlibdir} to LIBFLAGS.
-
-	* Makeconf.in (mk-includedir-link, mk-libdir-link): New macros.
-
-Mon May  5 00:58:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Make --enable-readline work again.
-	* Makeconf.in: Ditto.
-
-Tue Apr  8 12:38:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in: Do substitute SH_LD and SH_LDFLAGS.  Don't
-	substitute or use LIBFLAGS, RLD_FLAG, OCTAVE_LIBS, FLIBS, LEXLIB,
-	TERMLIBS, LIBS, LDFLAGS, LIBPLPLOT, or LIBDLFCN.  Use $SH_LD and
-	$SH_LDFLAGS, not $CXX -shared.
-
-	* Makeconf.in (do-subst-config-vals): Also substitute SH_LD and
-	SH_LDFLAGS.
-
-Fri Mar 28 16:53:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't add -fpe1 to FFLAGS on Alpha OSF/1 systems
-	unless we are also using a version of gcc that appears to support
-	IEEE floating point.
-
-	* aclocal.m4 (OCTAVE_FLIBS): Require OCTAVE_HOST_TYPE.
-	Skip -lkernel32 on cygwin32 systems.
-
-Wed Mar 26 17:04:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* COPYING: Update to latest version that includes correct address
-	for the FSF.
-
-Tue Mar 25 21:46:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CXXLIBS): Delete macro definition.
-	* configure.in, mkoctfile.in, Makeconf.in, octave-bug.in:
-	Delete use of OCTAVE_CXXIBS.
-
-Thu Mar 13 11:44:46 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Move extra checks for Fortran compiler above
-	checks for dynamic linking and shared library stuff.
-	Handle --with-f77.  Check for Fortran compiler compatibility, even
-	if using g77.  Handle --enable-picky-flags.
-
-	* configure.in: Don't set special PIC options on SGI systems,
-	since PIC is apparently the default.
-
-	* aclocal.m4 (OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS,
-	OCTAVE_HOST_TYPE, OCTAVE_SET_DEFAULT): New macros.
-	* configure.in: Use them.
-
-	* octMakefile.in (distclean): Don't remove configure, config.h.in,
-	BUGS, or INSTALL.OCTAVE.
-
-Wed Mar 12 16:56:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): Don't try to set INSTALL_PROGRAM here.
-
-	* emacs/Makefile.in (install-strip): New target.
-	* dlfcn/Makefile.in: Ditto.
-	* examples/Makefile.in: Ditto.
-
-Sun Mar  9 03:44:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot (STATIC_CAST): Delete definition.
-
-Thu Mar  6 03:26:41 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-hlp.el: Provide octave-hlp.
-	* emacs/octave-inf.el: Provide octave-inf.
-
-	* examples/info-emacs-octave-help: Require octave-hlp instead of
-	loading it.
-
-Tue Mar  4 12:19:24 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* emacs/octave-mod.el: Properly indent switch statement.
-
-Mon Mar  3 15:44:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dlfcn/Makefile.in (DISTFILES): Add ftp-site.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Improve checks for gettimeofday.
-
-	* Version 2.0.5 released.
-
-Sat Mar  1 01:34:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (dist): Also delete CVS junk
-
-	* config.h.bot: Unconditionally define WITH_KPATHSEARCH.
-
-Fri Feb 28 01:56:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mod.el (octave-end-keywords): Add endswitch.
-	(octave-end-keywords): Add otherwise and case.
-	(octave-else-keywords): Add switch.
-	(octave-abbrev-table): Add abbrevs for all of them.
-
-	* configure.in (f77_rules_frag): Set default value to /dev/null
-	and redfine as needed.
-	(bsd_gcc_kluge_targets_frag): Likewise.
-
-Wed Feb 26 12:17:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean): Delete some more stuff.
-
-Fri Feb 21 20:38:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Remove extra -L from
-	RLD_FLAG substitution.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-	* configure.in (SH_LDFLAGS): Add -fPIC for HP-UX.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SH_LDFLAGS): Fix typo in last change.
-	(RLD_FLAG): Don't forget to put -shared in SH_LDFLAGS for alpha
-	systems.
-
-	* Version 2.0.3 released.
-
-Tue Feb 18 00:33:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (binary-dist): Strip src/octave and info/info.
-
-	* examples/oregonator.m, examples/oregonator.cc: New files.
-	* examples/Makefile.in (SOURCES): Add them to the list.
-
-Fri Feb 14 14:07:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* install-octave: Don't fail if LIBRARIES file is missing.
-	Don't try to install .oct files if there aren't any.
-
-	* octMakefile.in (bin-dist-type): Delete target.
-	(binary-dist): Don't depend on bin-dist-type.
-	Don't delete config.status or config.h here.
-	(BINDISTFILES): Include config.status and config.h here.
-	(dist): Don't delete Makefile here.
-	(binary-dist): Avoid empty chmod command.
-
-	* Makefile.in (config-check): New target.
-	(all): Depend on config-check.
-	(static-binary-distribution, dynamic-binary-distribution): Delete.
-	(binary-distribution): If in source directory, run configure and
-	make with appropriate args.
-
-	* octMakefile.in (maintainer-clean, distclean): Don't delete Makefile.
-	(CONF_DISTFILES): Distribute Makefile too.
-
-Thu Feb 13 16:25:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (SH_LD, SH_LDFLAGS): New variables.
-	* Makeconf.in: Substitute them.
-
-	* configure.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Delete.
-
-	* Makeconf.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Delete.
-
-	* octave-bug.in: Reinstate RLD_FLAG.
-	* mkoctfile.in: Likewise.
-	* Makeconf.in: Likewise.
-
-	* configure.in: Reinstate RLD_FLAG, but make it optional.
-
-Tue Feb  4 14:10:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (binary-dist): Use find and xargs instead of
-	requiring chmod to support X.
-
-Mon Feb  3 23:51:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* examples/info-emacs-octave-help: Update from Kurt Hornik.
-
-Fri Jan 31 20:41:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dlfcn/Makefile.in (all): Make libdlfcn.a, not dlfcn.a.
-
-Wed Jan 29 00:18:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Use -M instead of -MM to generate dependencies.
-	Don't strip $(srcdir) from output.
-
-	* examples/Makefile.in (install): Install info-emacs-info and
-	info-emacs-octave-help in $(archlibdir).
-
-	* configure.in (INSTALL_SCRIPT): Substitute this in Makefiles.
-	* octMakefile.in (INSTALL_SCRIPT): New macro.
-	(install): Use it.
-	* Makefile.in (install-strip): New target.
-
-Tue Jan 28 09:48:32 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Don't look for values-X*.o.  This is
-	apparently added automatically now by gcc.  Don't put space
-	between -L and directory name.
-
-	* Makefile.in (help): New target.
-	(header-msg): extract from all.
-	(all, help): Depend on header-msg.
-
-	* aclocal.m4 (ld_run_path): Fix typo in last fix.
-
-Mon Jan 27 00:10:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-	* configure.in: Add check for usleep().
-	(bsd_gcc_kluge_targets_frag): New fragment.
-
-	* Makefile.in: Delete `internal' targets.
-	(static-binary-dist, dynamic-binary-dist): Special cases.
-
-	* octMakefile.in (static-binary-dist, dynamic-binary-dist):
-	New targets.
-	(binary-dist, bin-dist): Delete.
-
-Sun Jan 26 19:39:51 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/Makefile.in: New file.
-	* configure.in: create emacs/Makefile.
-	* octMakefile.in: Move/add emacs dir to the appropriate lists.
-
-Sat Jan 25 22:27:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_CHECK_TYPE): New macro, stolen from bash.
-	* configure.in: Use it.
-	* acconfig.h: Add #undef for sigset_t.
-
-	* configure.in (RLD_FLAG): Delete.
-	* mkoctfile.in (RLD_FLAG): Delete.
-	* octave-bug.in (RLD_FLAG): Delete.
-	* Makeconf.in (RLD_FLAG): Delete.
-
-	* Makefile.in (bin-dist): New target.
-
-	* install-octave: Rename from doinstall.sh.  Update for 2.x.
-
-Wed Jan 22 11:14:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (ld_run_path): Anchor search at beginning of line to
-	avoid GNU sed bug on HP-UX systems.  Use just one sed command.
-
-	* emacs/octave-hlp.el, emacs/octave-inf.el, emacs/octave-mod.el:
-	New files from Kurt Hornik.
-	* emacs/octave.el: Delete.
-
-Mon Jan 20 11:16:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkoctfile.in (ALL_CXXFLAGS): Delete reference to -lg++.
-
-	* configure.in (RLD_FLAG): For sparc-sun-sunos4*, remove space
-	between -L and $(libdir).
-	(FPICFLAG): If using g77, set it to -fPIC.
-
-Sun Jan 19 15:57:20 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in, configure.in: Delete FUGLY.
-
-Wed Jan  8 23:12:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (DEFAULT_PAGER): On cygwin32 systems, also look for
-	more.com.
-
-Tue Jan  7 00:16:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Thu Dec 19 16:18:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Only add -Xlinker args if compiler is
-	gcc.
-
-Sat Dec 14 09:46:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* README.Linux: New file.
-	* octMakefile.in: Distribute it.
-
-Fri Dec 13 22:37:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (TERMLIBS): Look for termcap and terminfo after
-	ncurses and curses.
-
-Thu Dec 12 02:27:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (ALL_LDFLAGS): Add CPICFLAG here since gcc needs it
-	on some systems.
-
-	* configure.in (FPICFLAGS): Set to -fPIC if using g77 on HP/UX.
-
-	* Makefile.in, octMakefile.in: Delete all doc-dist, local-dist,
-	and split-dist targets.  Likewise for all other Makefiles in the
-	subdirectories.
-
-	* README.Windows: Renamed from README.WINDOWS.
-
-Tue Dec 10 01:33:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-	* octMakefile.in (binary-dist): Print message instead of making a
-	binary distribution.
-
-Mon Dec  9 11:28:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* README.WINDOWS: New file.
-	* octMakefile.in: Distribute it.
-
-	* configure.in: Substitute EXE.  On cygwin32 systems, set it to .exe.
-	* Makeconf.in (EXE): Add definition.
-
-	* configure.in: On cygwin32 systems, set default to disable GNU info.
-
-	* aclocal.m4 (OCTAVE_STRING_NPOS): New macro.
-	* configure.in: Call it.
-
-	* acconfig.h: Add undef for NPOS.
-	* config.h.bot: Remove kluge for deciding whether to define NPOS.
-
-Thu Dec  5 11:05:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.sub: Update to current version from FSF.
-
-	* Makeconf.in (ALL_LDFLAGS): Add $(FORTRAN_MAIN_FLAG).
-	* configure.in (FORTRAN_MAIN_FLAG): Substitute it.
-
-	* octave-bug.in: Prompt for abort, edit, list, or send.
-	Get subject from message in case it has been edited.
-
-	* configure.in: When looking for libf2c, provide definitions for
-	MAIN_ and MAIN__.
-
-Tue Dec  3 11:35:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess: Delete second copy of script in file.
-
-Sun Nov 24 21:40:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Set GCC_IEEE_FP_FLAG to -mieee-fp on all x86
-	systems, not just those running Linux.
-
-Fri Nov 22 15:10:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave.el: Update from Kurt Hornik to with fixes for
-	fill-paragraph.
-
-Wed Nov 20 00:33:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.93.
-
-	* aclocal.m4 (OCTAVE_STRUCT_GR_PASSWD): New macro.
-	* configure.in: Use it.
-	* acconfig.h (HAVE_GR_PASSWD): Add undef.
-
-Tue Nov 19 23:10:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (INCFLAGS): Add libcruft/misc directory.
-
-Thu Nov 14 00:07:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave.el (octave-text-functions): Change set and show to
-	gset and gshow.
-
-	* Makeconf.in (TEXI2DVI): Define to be our own private version.
-
-	* texi2dvi: New file.
-	* octMakefile.in (DISTFILES): Add it to the list.
-
-	* configure.in: Don't substitute values in src/mk-oct-links.in.
-
-	* emacs/octave.el: Update to version 0.8.6, from Kurt Hornik.
-
-	* configure.in (RLD_FLAG): Surround case pattern in changequote.
-
-	* Version 1.92.
-
-Wed Nov 13 11:04:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't set or substitute LIBINFO.
-	(infofile): Set and substitute a default value.
-
-	* Makeconf.in (do-subst-default-values): Substitute it here.
-
-	* configure.in: If running on an SCO system, define SCO, and force
-	HAVE_ISINF and HAVE_ISNAN to be defined.
-	Also check for ieeefp.h and nan.h.
-	* acconfig.h (HAVE_ISINF, HAVE_ISNAN, SCO): Add undefs.
-
-Tue Nov 12 21:50:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MAKEINFO.PATCH: Update to use patch relative to texinfo-3.9.
-
-	* INFO.PATCH: New file.
-	* octMakefile.in (DISTFILES): Add it.
-
-	* info: Update to current release from texinfo-3.9.
-
-Mon Nov 11 23:56:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot: Only check value of __GNUC__ and __GNUC_MINOR__ if
-	__GNUC__ is defined.
-
-Fri Nov  8 11:15:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (version): Look in $(TOPDIR)/src then
-	$(srcdir)/$(TOPDIR)/src for version.h.
-
-	* configure.in (TERMLIBS): Print warning message if no term
-	library is found.
-	(CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH): Delete.
-	* Makeconf.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH):
-	Delete.
-	(do-subst-default-vals): Delete CXXLIB_LIST, CXXLIB_PATH,
-	FLIB_LIST, and FLIB_PATH from the list.
-
-Thu Nov  7 12:43:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (bin-dist-tar): Delete references to octtopnm.
-
-	* configure.in (RLD_FLAG): Define if x86-linux.
-
-	* Version 1.91.
-
-Wed Nov  6 16:26:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add checks for group stuff.
-
-Tue Nov  5 12:32:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add checks for geteuid, getuid.
-
-	* configure.in: Comment out code to handle --enable-readline since
-	it doesn't work yet.
-
-	* aclocal.m4 (OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS):
-	New checks stolen from bash 2.0 config.
-	* configure.in: Use them.
-
-	* acconfig.h: Add #undefs for HAVE_BSD_SIGNALS, HAVE_POSIX_SIGNALS,
-	HAVE_USG_SIGHOLD, and MUST_REINSTALL_SIGHANDLERS.
-
-Mon Nov  4 11:31:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for gethostname in libsocket.  Apparently
-	needed for some SCO systems.
-
-	* emacs/octave.el: Update to version 0.8.5 from Kurt Hornik.
-
-Fri Nov  1 01:33:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (octave-bug, mkoctfile): After substituting
-	values, chmod a+rx.
-
-Thu Oct 31 13:50:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DISTFILES): Add NEWS.[0-9].
-	* NEWS.1: Old news.
-	* NEWS: Just keep news since last major release.
-
-Wed Oct 30 01:04:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* configure.in: Default is now no internal bounds checking.
-
-	* Makefile.in (all): Fix message to say 2.7.2, not 2.7.0.
-
-	* config.h.bot (GCC_ATTR_NORETURN): Rename from NORETURN.
-	(GCC_ATTR_UNUSED): Rename from GCC_ATTRIBUTE_UNUSED.
-	(NPOS): Define if using gcc 2.8.x or later.
-
-	* octMakefile.in (DIRS_TO_MAKE): Add localarchlibdir to list.
-
-	* configure.in (localarchlibdir): New variable.
-	* Makeconf.in (localarchlibdir): Substitute it.
-	(do-subst-default-vals): Likewise.
-
-Sun Oct 27 14:03:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (do-subst-config-vals): Split into two sed commands
-	to try to avoid fixed limits in some seds and/or systems.
-
-Fri Oct 25 01:13:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot: Add definition for GCC_ATTRIBUTE_UNUSED.
-
-	* configure.in: Define RUSAGE_TIMES_ONLY if cygwin32.
-	* acconfig.h: Add undef.
-
-Thu Oct 24 21:17:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess: Update to version that understands what to do for
-	cygwin32 systems.
-
-Fri Oct 18 12:23:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't comment out substitutions for plplot stuff.
-
-Wed Oct 16 12:01:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* examples/Makefile.in (install): New target.
-
-Tue Oct 15 14:40:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Comment out plplot stuff.
-	In commands to get gxx_version and gcc_version, use simpler sed
-	command to avoid confusing brain-dead vendor-supplied seds.
-
-Mon Oct 14 11:09:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean distclean): Remove mkoctfile too.
-	(kpathsea.info): New target.
-	(dist-info-files): New target.
-	(links-for-dist, links-for-bin-dist, local-dist-tar):
-	Depend on dist-info-files instead of individual files.
-
-Sat Oct 12 00:17:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* examples/Makefile.in (clean, mostlyclean): New targets.
-
-	* octMakefile.in (CLEANSUBDIRS): New macro.
-	Use it for clean targets.
-
-	* config.h.bot (STATIC_CAST, DYNAMIC_CAST, REINTERPRET_CAST):
-	New macros.
-
-Wed Sep 25 12:24:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't look in /usr/ucb/include to find getrusage
-	on Solaris systems since that just seems to cause trouble.
-	* Makeconf.in (UCB_INCFLAGS): Delete.
-
-Fri Aug 30 09:07:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (TERMLIBS): Add check for ncurses.
-
-Tue Aug 20 21:40:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Always set FPICFLAG, CPICFLAG, CXXPICFLAG, SHLEXT,
-	RLD_FLAG, DLFCN_DIR, even if SHARED_LIBS is false.
-
-Thu Aug 15 14:39:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (gxx_version, gcc_version): Strip out cygnus- from
-	the version number.
-
-Tue Jul 30 12:55:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Also check for -bI:FILE arg to ld,
-	for AIX systems.
-
-Thu Jul 25 03:09:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: On AIX systems, add "-ll -lld" to LIBDLFCN.
-
-Fri Jul 19 13:02:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: If using g77 on alpha, don't add -fpe1 to FFLAGS.
-
-Mon Jul 15 14:26:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.sub: Update to new version from FSF (gcc sources).
-
-Thu Jun 13 16:38:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Look for g77 before other fortran compilers.
-
-Thu Jun  6 00:05:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add check for multiple plot windows in gnuplot.
-	* acconfig.h: Add #undef for GNUPLOT_HAS_FRAMES.
-
-Wed May 22 15:05:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (UCB_INCFLAGS): Another kluge to try to find
-	getrusage on Solaris systems.
-	* Makeconf.in Substitute it.
-
-	* configure.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Define.
-	* Makeconf.in: Substitute.
-
-Wed May 22 02:42:32 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
-
-	* emacs/octave.el (octave-indent-new-line): Protect
-	octave-indent-line with save-excursion.
-	(octave-calc-indent-this-line): Attempt to handle end tokens that
-	are not on separate lines.
-	(octave-electric-semi): Make `;' self-insert if inside comment.
-	(octave-previous-line): Don't try to go back past the beginning of
-	the buffer.
-
-Tue May 21 23:11:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (F77): Also check for f90.
-
-Mon May 20 12:22:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave.el (octave-indent-new-line): Make it do what the
-	docstring says it does.
-
-	* octave-bug.in: Fix previous change so it also matches things
-	like 1.90, not just 1.1.90.
-
-Fri May 17 09:58:49 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
-
-	* emacs/octave.el (octave-electric-semi): Also call octave-indent-line
-	to indent the current line after inserting a semicolon.
-
-Fri May 17 02:53:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DIRS_TO_MAKE): Add octincludedir.
-	(all): Add mkoctfile.
-
-	* configure.in: Don't set values for exec_prefix, bindir, datadir,
-	libdir, libexecdir, includedir, mandir, or infodir, so that they
-	can be set from the configure command line.
-
-	* configure.in, Makeconf.in: Handle mandir, man1dir and man1ext.
-	Change topincludedir to includedir.  Use octincludedir as the
-	subdirectory of includedir where we really install include files.
-
-	* octave-bug.in (BUGADDR): Also set to octave-maintainers if this
-	looks like a pretest version number.
-
-	* Makeconf.in (do-subst-config-vals): Use $< instead of
-	referencing $(srcdir) directly.
-	(do-subst-default-vals): Likewise.
-
-	* octMakefile.in (octave-bug): Depend on octave-bug.in
-	(mkoctfile): Likewise, depend on mkoctfile.in.
-
-Thu May 16 11:49:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DISTFILES): Add mkoctfile.in.
-	(install): Install mkoctfile too.
-
-	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Fix typo in last change
-
-Mon May 13 04:02:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (UGLY_DEFS): Quote " with more \'s.
-
-	* Makeconf.in (do-subst-config-vals): Quote substitutions here.
-	* octave-bug.in, mkoctfile: Not here.
-
-	* octMakefile.in (octave-bug, mkoctfile): Depend on Makeconf,
-	octMakefile.
-
-	* Makeconf.in (do-subst-default-vals): New definition, from
-	src/Makefile.in.
-
-	* Makeconf.in (do-subst-config-vals): Define here.
-	* octMakefile.in: Not here.
-
-	* octave-bug.in: Handle more configuration stuff.
-
-	* configure.in (config_opts): Set from ac_configure_args and subst.
-	* Makeconf.in: Handle config_opts.
-	* octMakefile.in (do-subst-config-vals): Substitute them.
-
-Sun May 12 03:37:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (TERMLIBS): Substitute here.
-
-	* configure.in (topincludedir): New variable.
-	* Makeconf.in (libexecdir): Substitute it.
-
-	* octMakefile.in (do-subst-config-vals): Define new command.
-	(octave-bug): Use it.
-	(mkoctfile): New target.
-
-	* Makefile.in (TARGETS): Add mkoctfile.
-
-	* examples: New subdirectory.
-	* octMakefile.in: Add it to the appropriate lists.
-	* configure.in: Create examples/Makefile.
-
-	* octMakefile.in (DIRS_TO_MAKE): Add $(libdir) here.
-	(install): Use INSTALL_PROGRAM to install octave-bug script.
-	Also install config.h.
-
-	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Provide a definition for
-	MAIN__ on Linux systems.
-
-Tue Apr 30 05:44:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Handle --enable-bounds-check.
-	* acconfig.h: Add undef for BOUNDS_CHECKING
-
-Mon Apr 29 01:42:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_FUNC_SETVBUF_REVERSED): Delete.  Octave doesn't
-	need this check (it was for info, which has its own configure now).
-
-Sun Apr 28 05:41:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (DEFAULT_PAGER): Don't append -e to less here.
-
-Sat Apr 27 22:23:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for pid_t and sys/types.h.
-
-Tue Apr 23 17:44:18 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for fcntl.h, not sys/fcntl.h.
-	Add checks for various system calls.
-
-Sun Apr  7 16:42:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for strdup.
-
-	* Makefile.in (TARGETS): Add dlfcn.
-	* octMakefile.in (DISTSUBDIRS): Add dlfcn.
-	(SUBDIRS): Add @DLFCN_DIR@.
-	* configure.in: On AIX systems: set DLFCN_DIR=dlfcn when doing
-	shared libraries, bypass checks for dlopen, etc., set and
-	substitute LIBDLFCN and DLFCN_INCFLAGS.  Create dlfcn/Makefile.
-
-Sat Apr  6 21:45:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (%.d : %.cc, %.d : %.c): Add dependency for pic/%.o.
-
-Fri Mar 29 13:38:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean distclean): Delete mk-oct-links.
-
-Wed Mar 27 09:05:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_FLIBS): Fix typo in message.
-
-Tue Mar 26 02:41:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (UGLY_DEFS): Undo previous change.
-	When checking for various libraries, don't check for main(), but
-	instead look for functions that are actually supposed to be in
-	those libraries.
-	Require autoconf 2.9.
-	If using solaris2, don't add /usr/ucblib/libucb.a to LIBS until
-	near the very end, then check for for getrusage and times just
-	after that.
-
-	* Makeconf.in (UGLY_DEFS): Ditto.
-
-	* octave-bug.in: Don't send empty bug reports.
-
-Sat Mar 23 04:55:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (DISTDIRS): Omit plplot for now.
-	* Makefile.in (TARGETS): Likewise.
-
-Fri Mar 22 06:15:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add checks for sys/times.h and times().
-	(GCC_IEEE_FP_FLAG): Define this if using gcc 2.8.x or later on
-	Alpha/OSF systems.
-
-Wed Mar 20 02:04:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (octave.info): cd to doc/interpreter, not doc.
-
-Sun Mar  3 10:01:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot: Define HEAVYWEIGHT_INDEXING here.
-
-	* Makefile.in (TARGETS): Remove dld.
-	* octMakefile.in (DISTSUBDIRS): Ditto.
-	* configure.in: Don't create dld/Makefile.
-	Do create doc/fac/Makefile, doc/interpreter/Makefile,
-	doc/liboctave/Makefile, and doc/refcard/Makefile.
-
-Thu Feb 29 08:55:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (%.o : %.c): Use pattern rule instead of suffix rule.
-	(%.o : %.cc): Likewise.
-	(pic/%.o : %.c, pic/%.o : %.cc): Use separate rules instead of
-	expecting one rule to generate two output files.
-	* configure.in (f77_rules_frag): Use separate rules here too.
-
-Mon Feb 26 03:34:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: If --disable-dl or --disable-shl, don't check for
-	dynamic linking functions.
-	(includedir): Append version.
-
-Wed Feb 14 12:20:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (snapshot-version): Don't quote version number.
-
-	* aclocal.m4 (OCTAVE_FLIBS): Avoid setting FLIBS=" ".
-
-Sat Feb 10 12:59:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* glob/Makefile.in (install): New target.
-
-Fri Feb  9 14:00:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Fix help text for --enable-shared option.
-
-Thu Feb  8 10:17:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (CONF_DISTFILES): New variable.
-	(DISTFILES): Use it instead of listing things twice.
-	(CONF_DISTSUBDIRS): New variable.
-	(conf-dist): New target.
-
-	* Makefile.in (TARGETS): Add conf-dist.
-
-	* configure.in (CXX_VERSION, CC_VERSION): Substitute them.
-	* octMakefile.in (octave-bug): Substitute them here too.
-	* octave-bug.in: Put them in the configuration message.
-
-Sat Feb  3 08:53:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: RLD_FLAG should be empty by default, but give it a
-	value for alpha-dec-osf* systems.
-
-Fri Feb  2 23:03:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in: Actually do add substitutions for FPICFLAG,
-	CPICFLAG, and CXXPICFLAG.
-
-Thu Feb  1 14:58:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (%.c : %.f): Fix typo.
-
-Wed Jan 24 14:47:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Also configure in glob subdirectory.
-	Make pattern rule say how to make .o from .f, not .f from .o.  Duh.
-
-	* octMakefile.in: Add glob stuff to the appropriate lists.
-	* Makeconf.in: Likewise.
-
-	* aclocal.m4: Add test for program_invocation_name.
-	* configure.in: Use it here.
-
-	* acconfig.h: Add #undef here.
-
-Mon Jan 22 17:32:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add checks for mode_t, off_t, size_t, uid_t,
-	dev_t, ino_t, and nlink_t typedefs.
-	* acconfig.h: Add undefs for dev_t, ino_t, and nlink_t.
-
-Sat Jan 20 21:05:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: For Fortran rules, use pattern rules instead of
-	suffix rules.
-
-Fri Jan 19 12:38:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: When checking for libf2c.a, add -lm and an extra lib.
-
-Wed Jan 10 16:36:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.i: Add missing colon in .o.f pattern for f2c rules.
-
-Mon Jan  8 23:18:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_PROG_LN_S): New check.
-	* Makeconf.in (LN_S): Substitute it.
-
-	* configure.in (libexecdir): New variable.
-	(archlibdir, octfiledir, localoctfiledir): Use it instead of libdir.
-	(datadir): Default to $(prefix)/share instead of $(prefix)/lib.
-
-	* Makeconf.in (libexecdir): Substitute it.
-
-	* configure.in (localoctfiledir): Use $(libdir), not $(datadir).
-
-Sun Jan  7 18:40:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* aclocal.m4 (OCTAVE_SMART_PUTENV): New macro, extracted from
-	the kpathsearch library.
-	* configure.in: Call it.
-
-Fri Dec 29 22:07:52 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makeconf.in (subdir-for-command): New definition for
-	SUBDIR_FOR_COMMAND using GNU Make `foreach' instead of shell `for'
-	command.
-	* libcruft/Makefile.in, scripts/Makefile.in, octMakefile.in:
-	Invoke new definition with `@'.
-
-Wed Dec 27 14:27:48 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (SUBDIRS): Delete DLD_DIR.
-	(distclean): Delete Makerules.f77.
-
-	* Makeconf.in (WITH_DLD): Delete variable.
-
-	* configure.in: Delete support for dynamic linking with dld.
-
-	* configure.in, Makeconf.in: Use consistent names for WITH_DL,
-	WITH_SHL, OCTAVE_LITE, and SHARED_LIBS
-
-	* config.h.bot: Undo previous change.
-	* acconfig.h: Add #undef for WITH_DYNAMIC_LINKING.
-	* Makeconf.in: Substitute it here too.
-	* configure.in: Set it here.
-
-Tue Dec 26 00:12:14 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_CONFIG_SUBDIRS): Delete libcruft.
-	(AC_OUTPUT): List libcruft files here.
-
-	* configure.in, Makeconf.in: Handle Fortran compilation rules
-	using an included fragment in Makeconf.
-
-Mon Dec 25 22:14:21 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (CPICFLAG, CXXPICFLAG, FPICFLAG): New variables.
-	* Makeconf.in: Substitute them.
-
-	* configure.in: Handle --enable-shared option.
-	Handle Fortran source files differently.
-	* Makeconf.in (SHARED_LIBS): Substitute shared_libs.
-	(SHLEXT, RLD_FLAG, fortran_rules_flag): Substitute these too.
-	(.c.o, .cc.o): Handle creating position independent code for
-	shared libraries.
-
-Sun Dec 24 00:29:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot: Maybe define WITH_DYNAMIC_LINKING.
-
-	* Makeconf.in (WITH_DL, WITH_SHL): Substitute values.
-	* acconfig.h: Add undefs for WITH_DL and WITH_SHL.
-	* configure.in: Handle --enable-dl and --enable-shl.
-	Check for -ldl and dlopen, dlsym, dlclose, and dlerror.
-	Check for -ldld and shl_load, shl_findsym.
-	(have_fortran_compiler): Quit if no suitable Fortran compiler is
-	found.
-
-Fri Nov  3 03:33:42 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* emacs/octave-mode.el: Rename from octave.el.
-
-Wed Oct 11 19:22:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (GNUPLOT_BINARY): When checking for multiplot,
-	issue a `set term unknown' command first.
-
-Wed Oct  4 01:42:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.guess: Add entry for PowerPC Macs running Machten.
-
-	* octMakefile.in (dist-z): Remove old .gz file before creating new one.
-
-Mon Oct  2 19:17:22 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check to see if it looks like gnuplot supports
-	multiplot.
-	* acconfig.h: Add undef for GNUPLOT_HAS_MULTIPLOT.
-
-	* acconfig.h: #undefs for HAVE_FINITE, HAVE_ISNAN, HAVE_ISINF,
-	HAVE_TERMIOS_H, HAVE_TERMIO_H, and HAVE_SGTTY_H removed.  This
-	file should only have things that autoheader can't figure out.
-
-Sun Oct  1 17:08:37 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (clean-tar): Also omit directories called OLD and
-	files beginning with =.
-
-Fri Sep 29 01:04:31 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ROADMAP: New file.
-	* (DISTFILES): Include it.
-
-	* emacs: New subdirectory for Emacs-related stuff.
-	* octMakefile.in (DISTDIRS, BINDISTSUBDIRS): Include emacs.
-	(DISTFILES, BINDISTFILES): Don't include octave-mode.el.
-
-Tue Sep 26 03:56:39 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't add -Wno-unused to CFLAGS or CXXFLAGS.
-	* config.h.bot: Remove definition of UNUSED.
-
-	* config.sub: Replace with current version from FSF.
-	* config.guess: Likewise.
-
-Thu Sep 21 20:29:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AR, ARFLAGS): Set defaults for these, but also
-	allow them to come from the environment.
-	* Makeconf.in (AR, ARFLAGS): New variables to substitute.
-
-Wed Sep 20 00:51:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octMakefile.in (maintainer-clean): Also remove Makeconf,
-	config.cache, config.h, and config.log.
-
-Tue Sep 19 17:20:32 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.h [HAVE_SIGACTION && HAVE_SIGPROCMASK &&
-	HAVE_SIGPENDING && HAVE_SIGSUSPEND]: #define HAVE_POSIX_SIGNALS.
-
-	* configure.in: Check for sigaction(), sigprocmask(),
-	sigpending(), and sigsuspend() functions.
-	Don't do anything special about checking for termios.h, termio.h,
-	and sgtty.h.
-
-Mon Sep 18 22:39:33 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* config.h.bot [__GNUC__]: Define NORETURN.
-
-Fri Sep 15 05:12:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_C_BIGENDIAN): Remove test.
-
-Thu Sep 14 02:07:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (LIBPLPLOT): Disable plplot by default for now.
-	Check for mkdir, rmdir, rename, and umask.
-
-	* All Makefile.in files: Convert from realclean to
-	maintainer-clean, for GNU coding standards.
-
-	* configure.in: Call AC_FUNC_CLOSEDIR_VOID.
-
-Wed Sep 13 03:25:37 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Do check for IEEE functions on the Alpha.
-
-Mon Sep 11 19:08:47 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Call AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_BLOCKS,
-	and AC_STRUCT_ST_RDEV.
-
-Tue Sep  5 02:02:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Check for sys/param.h and sys/stat.h
-	Use AC_HEADER_TIME, not AC_TIME_WITH_SYS_TIME.
-	Use AC_HEADER_SYS_WAIT.
-
-Thu Aug 24 15:35:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Don't set or call AC_SUBST for CXXFLAGS or CFLAGS,
-	and don't call AC_SUBST for LDFLAGS -- autoconf takes care of this.
-	If adding -Wall, add -Wno-unused too.
-
-Tue Aug 22 01:37:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (all): Update message.
-
-	* config.h.bot: New file.
-	* octMakefile.in (DISTFILES): Add it to the list.
-
-	* acconfig.h (USE_PLPLOT): Add #undef.
-
-Mon Aug 21 19:33:33 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (NO_DEP_TARGETS): New variable, for targets that can
-	be made without updating dependency files.
-
-Sun Jun 25 18:27:49 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (FFLAGS): Add -fpe1 on alpha-dec-osf1 systems.
-
-Thu May  4 22:26:34 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: export CC, CXX, and F77 before calling
-	AC_CONFIG_SUBDIRS.
-
-Mon May  1 14:17:07 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Handle --with-plplot.
-	(AC_CONFIG_SUBDIRS): Add plplot directory if --with-plplot.
-	* plplot: New subdirectory.
-	* Makefile.in (plplot): New target.
-	* octMakefile.in (SUBDIRS): Add @PLPLOT_DIR@.
-	(DISTDIRS): Add plplot.
-
-	* acconfig.h: Add #undef for GETTIMEOFDAY_NO_TZ.
-
-	* configure.in: Improve check for gettimeofday.
-
-Mon May  1 12:50:03 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
-
-	* acconfig.h (OCTAVE_LITE): Fix comment.
-
-Tue Apr 11 20:31:52 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (INFO_DIR, READLINE_DIR): New variables.
-	If $USE_GNU_INFO, AC_DEFINE it, don't AC_SUBST it.
-	Likewise, for USE_READLINE.
-
-	* octMakefile.in (SUBDIRS): Substitute INFO_DIR and READLINE_DIR.
-
-	* aclocal.m4 (OCTAVE_F77_UPPERCASE_NAMES): New macro.
-	(OCTAVE_F77_APPEND_UNDERSCORES): Require it.
-	* configure.in: Use it.
-	(info_subdir): If $USE_GNU_INFO, then run configure in info
-	subdirectory too.
-	Don't check for sys/ttold.h or sys/ptem.h.
-
-Mon Apr 10 00:17:57 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (UGLY_DEFS): Delete commands to create this.
-	* Makeconf.in (UGLY_DEFS): Delete substitution.
-	* Makeconf.in (UGLY_ALL_CFLAGS): Delete definition.
-
-	* configure.in: Add scripts and libcruft to CONFIG_SUBDIRS.
-	Don't edit scripts or libcruft Makefiles here.
-	Reorganize checking for the Fortran compiler.
-
-	* octMakefile.in (DISTFILES): Delete f2c-compat.sh flibs.sh
-	cxxlibs.sh from list.  Add aclocal.m4.
-	* configure.in: Use new macros defined in aclocal.m4.  Don't use
-	external shell scripts.  Cache values.
-
-	* aclocal.m4: New file.
-
-Sun Apr  9 12:47:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Print status message before exiting.
-	Cache CXXLIBS and FLIBS.
-
-	* acconfig.h: Delete #undefs for floating point format.
-	* octMakefile.in (DISTFILES): Delete float-type.c from list.
-	* configure.in: Don't try to determine floating point format at
-	configuration time.
-
-Mon Apr  3 21:46:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Create scripts/time/Makefile too.
-
-	* configure.in (gxx_version): Handle new gcc version message.
-	(gcc_version): Likewise.
-
-Wed Mar 29 22:59:42 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (AC_STRFTIME): Delete check.
-	(AC_STRUCT_TIMEZONE): New check.
-
-Wed Mar 22 08:31:21 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makeconf.in (ALL_FFLAGS, FUGLY): New variables.
-
-	* configure.in: Use AC_ARG_ENABLE and AC_ARG_WITH consistently.
-	Handle --with-g77.  Substitute new variable FUGLY.  If F77 is g77,
-	set it to -fugly.  Substitute command for making .o from .f.
-
-Tue Mar 21 14:24:32 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* cxxlibs.sh: Extract -R options like -L options.
-	* configure.in (FLIB_PATH, FLIB_LIST): Extract -R options along
-	with -L options.
-
-Tue Mar 21 14:20:55 1995  Paul Eggert  <eggert@twinsun.com>
-
-	* configure.in (CXX): Export; cxxlibs.sh needs this.
-	(FLIB_LIST, CXXLIB_LIST): Extract -R options along with -L options.
-
-	* flibs.sh: Treat `-L foo' like `-Lfoo'.  Extract -R options
-	like -L options.
-
-Tue Mar 21 08:08:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* flibs.sh: Search for values-X*.o, not values-*.o.
-
-Fri Mar 10 10:32:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makeconf.in (SUBDIR_FOR_COMMAND): New command definition.
-	* octMakefile.in: Use it.
-
-	* octMakefile.in (install, uninstall, tags, TAGS, clean,
-	mostlyclean, distclean, realclean): Combine actions.
-
-Tue Feb 28 21:24:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (FC): Set to $F77 and substitute it.
-	* Makeconf.in (FC): Add substitution line.
-
-Sun Feb 26 00:20:19 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* dointsall.sh: Create ls-R database.
-
-	* configure.in: Configure kpathsea using AC_CONFIG_SUBDIRS().
-	Remove check for SMART_PUTENV.
-	Remove kpathsea/c-auto.h from AC_CONFIG_HEADER().
-
-	* make: New directory, for kpathsea configuration.
-	* octMakefile.in (DISTDIRS): Add it
-
-	* kpathsea: Update with 2.6 distribution.
-
-	* Makefile.in (TARGETS): New variable.  Combine all identical targets.
-
-	* configure.in (LIBINFO, LIBREADLINE): New variables to substitute.
-
-Sat Feb 25 18:47:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* acconfig.h (USE_READLINE): Add #undef.
-	* configure.in: Add support for --enable-readline.
-
-	* acconfig.h (USE_GNU_INFO): Add #undef.
-	* configure.in: Add support for --enable-info.
-
-	* acconfig.h (RUN_IN_PLACE): Delete #undef.
-
-See ChangeLog.1 for earlier changes.
--- a/OLD-ChangeLogs/ChangeLog.1	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10392 +0,0 @@
-Thu Feb 23 09:32:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Version 1.1.1 released.
-
-	* src/idx-vector.cc (idx_vector (const Range&)): Always initialize
-	data to 0.
-	(idx_vector (const Matrix&, int, const char *, int)): Likewise.
-	(idx_vector (const idx_vector&): Likewise, do it first.
-	* src/idx-vector.h (~idx_vector): Simply delete data.
-
-	* octMakefile.in: Combine libcruft, liboctave,dld, info, readline,
-	kpathsea, src, scripts, and doc targets into just one.
-	(all): Depend on $(SUBDIRS).
-	* libcruft/Makefile.in (make-objects): Change to $(SUBDIRS)
-	target that doesn't use a loop.
-	(all): Depend on $(SUBDIRS).
-
-Wed Feb 22 07:27:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Don't leave @LIBDLD@ on a line by itself.
-
-	* src/tc-rep-idx.cc (fortran_style_matrix_index): Handle zero-one
-	indexing as a separate case.
-	(fortran_style_matrix_index): Check for out-of-bounds index.
-
-	* src/idx-vector.cc (init_state): Don't forget len, num_zeros, and
-	the one_zero flag for vectors of all zero elements.
-	(convert_one_zero_to_idx): Set data to zero after deleting it.
-
-	* src/data.cc (check_dimensions):
-	Handle case of treat_neg_dim_as_zero = "warn".
-
-Tue Feb 21 08:18:19 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-misc.cc (initialize_undefined_elements): Don't declare
-	arg const.
-
-	* src/sysdepl.cc (octave_getcwd): Declare arg as char *, not
-	const char *.
-
-	* src/input.cc (match_sans_spaces): Initialize ep from copy of
-	arg, not arg itself.
-
-	* octMakefile.in (snapshot-version): Look for OCTAVE_VERSION,
-	not just VERSION.  Don't end #define with a semicolon.
-
-Mon Feb 20 15:57:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/image/Makefile.in (clean): Delete octtopnm.o and octtopnm.
-
-Fri Feb 17 08:12:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/variables.cc (maybe_add_default_load_path): New function,
-	extracted from default_path(), which no longer needs it.
-	* src/user-prefs.cc (sv_loadpath): Call it here.
-
-Wed Feb 15 15:13:22 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/octave.cc (verbose_usage): Format help message more like
-	the help messages of other GNU programs.
-
-	* src/variables.cc (install_builtin_variables): New builtin
-	variable, suppress_verbose_help_message.
-	* src/user-prefs.cc (user_prefs): New field,
-	suppress_verbose_help_message.
-	* src/user-prefs.cc (suppress_verbose_help_message): New function.
-	* src/help.cc (additional_help_message): Check
-	user_pref.suppress_verbose_help_message before printing message.
-
-Tue Feb 14 15:36:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/sysdep.cc (octave_chdir): New function.
-	* src/dirfns.cc (change_to_directory): Use it.
-
-	* src/sysdep.cc (octave_getcwd): New function.
-	* src/dirfns.cc (get_working_directory, Fpwd): Use it.
-	* src/input.cc (decode_prompt_string): Likewise.
-
-	* src/version.h (VERSION): New #define.
-	(version_string): Use it.
-	(OCTAVE_COPYRIGHT): New #define.
-	(OCTAVE_NAME_AND_VERSION): New #define.
-	(OCTAVE_NAME_VERSION_AND_COPYRIGHT): New #define.
-	(OCTAVE_STARTUP_MESSAGE): New #define.
-	* src/octave.cc (main): Use new macros from version.h
-	(print_version_and_exit): Likewise.
-	(verbose_usage): Likewise.
-	(Fwarranty): Likewise.
-
-	* Makeconf.in (version): Make work with new version.h.
-	* octMakefile.in (snapshot-version): Likewise.
-
-	* src/variables.cc (default_path): Use SEPCHAR instead of literal ':'.
-	* src/utils.cc (pathstring_to_vector): Likewise.
-	* src/octave.cc (initialize_globals): Likewise, use SEPCHAR_STR to
-	construct format string instead of using literal `:'.
-
-	* configure.in: Call AC_DEFINE for SEPCHAR and SEPCHAR_STR.
-	* acconfig.h: Add #undefs for SEPCHAR and SEPCHAR_STR.
-
-	* src/dynamic-ld.cc: Don't include dld.h unless WITH_DLD.
-
-	* src/octave.cc (parse_and_execute): Close file.
-
-Mon Feb 13 19:39:12 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
-
-	* scripts/general/linspace.m: Delete.
-	* src/data.cc (Flinspace): New function.
-	* liboctave/dRowVector.cc (linspace): New function.
-	* liboctave/CRowVector.cc (linspace): New function.
-
-Sun Feb 12 21:23:54 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/load-save.cc (read_mat_binary_data): Only convert to string
-	if the number of rows is 1.
-
-	* scripts/image/saveimage.m: Force ASCII save.
-
-Thu Feb  9 08:46:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/elfun/sec.m: Returned variable is `w', not `y'.
-	* scripts/elfun/sech.m: Likewise.
-
-Wed Feb  8 10:51:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/f-find.cc (find_nonzero_elem_idx): Increment i, j indices by
-	1 before stashing them.
-
-Fri Feb  3 15:44:03 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-misc.cc
-	(tree_parameter_list::initialize_undefined_elements): New function.
-	* src/tree-expr.cc (tree_function::eval): Use it to define return
-	values.
-	(tree_simple_assignment_expression:eval): Complain if RHS is undefined.
-	(tree_multi_assignment_expression:eval): Complain if any of the
-	RHS values are undefined.
-	* src/user-prefs.h (init_user_prefs): New structure element,
-	define_all_return_values.
-	* src/user-prefs.cc (define_all_return_values): New function.
-	* src/variables.cc (install_builtin_variables): Add DEFVARs for
-	default_return_value and define_all_return_values.
-	(builtin_any_variable): New function.
-
-Wed Feb  1 08:02:28 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/parse.y (parse_error): Call yyerror() here.
-	(input): Not here.
-
-	* src/lex.l (handle_string): Call have_continuation and
-	have_ellipsis_continuation with 0 arg, to disallow comments after
-	continuation characters inside strings.
-	(have_continuation): New arg, trailing_comments_ok with default
-	value of 1.  If !trailing_comments_ok, don't allow comments to
-	follow continuation token.
-	(have_ellipsis_continuation): New arg, trailing_comments_ok, with
-	default value of 1.  Pass it along to have_continuation.
-
-	* src/parse.y (yyerror): Call parse_error with first arg == "%s",
-	since msg might contain format specifiers.
-
-	* src/tree-expr.cc (tree_index_expression::eval (int)): Detect
-	undefined elements in argument list and print error message.
-	(tree_index_expression::eval (int, int, const Octave_object&)):
-	Likewise.
-
-	* configure.in: Only set CFLAGS, CXXFLAGS, LDFLAGS, FFLAGS, and
-	F2CFLAGS if they are not already set in the environment.
-
-	* doinstall.sh: Add -print to find commands.
-
-Tue Jan 31 13:26:53 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (<MATRIX>{S}*\,{S}*): Eat any trailing continuation
-	here.  Use value returned from eat_continuation to decide whether
-	to insert a row separator.
-	(<MATRIX>{S}+): Likewise.
-	(<MATRIX>{SNLCMT}*\n{SNLCMT}*): Eat any trailing whitespace here.
-
-	* lex.l (ATE_SPACE_OR_TAB, ATE_NEWLINE): New macros.
-	(eat_whitespace): Use them to set return value.
-
-Mon Jan 30 14:02:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/user-prefs.cc (set_output_precision): Don't pass NaN to NINT.
-	(set_output_max_field_width): Likewise.
-	(set_save_precision): Likewise.
-	* src/file-io.cc (return_valid_file): Likewise.
-	(fgets_internal): Likewise.
-	(fseek_internal): Likewise.
-	(process_printf_format): Likewise.
-	(fread_internal): Likewise.
-	* src/f-colloc.cc (Fcolloc): Likewise.
-	* src/f-fft.cc (Ffft): Likewise.
-	* src/f-fft2.cc (Ffft2): Likewise.
-	* src/f-ifft.cc (Fifft): Likewise.
-	* src/f-ifft2.cc (Fifft2): Likewise.
-	* src/f-npsol.cc (do_npsol_option): Likewise.
-	* src/f-qpsol.cc (do_qpsol_option): Likewise.
-	* src/f-rand.cc (Frand): Likewise.
-	* src/pr-output.cc (all_elements_are_ints): Likewise.
-	* src/tree-plot.cc (subplot_using::eval): Likewise.
-	(subplot_style::print): Likewise.
-	* src/sysdep.cc (Fpause): Likewise.
-	* src/tc-rep.cc (TC_REP::valid_as_scalar_index): Likewise.
-	(TC_REP::valid_as_zero_index): Likewise.
-	(TC_REP::convert_to_str): Likewise.
-	* src/tc-rep-idx.cc (TC_REP::do_scalar_index): Likewise.
-	(TC_REP::fortran_style_matrix_index): Likewise.
-	* src/tc-rep-ass.cc (TC_REP::fortran_style_matrix_assignment):
-	Likewise.
-
-Sat Jan 28 13:09:44 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/general/tril.m: Allow the k == nc for k > 0 and
-	-k == nr for k < 0.  Make faster by eliminating nested loops.
-	* scripts/general/triu.m: Likewise.
-
-Fri Jan 27 08:32:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* libcruft/lapack: Update with files from LAPACK 2.0.
-
-	* src/lex.l (\[{S}*): Don't call fixup_column_count() here.
-	Don't use TOK_RETURN here, since we call eat_whitespace().
-	(eat_whitespace): Decrement current_input_column when calling
-	yyunput().
-	(<MATRIX>{SNLCMT}*\n{SNLCMT}): Always call fixup_column_count().
-
-	* src/parse.y (rows): Don't accept repeated semicolons.
-	(matrix_row): Likewise, for commas.
-
-	* src/Makefile.in (LIBOBJS): Delete.
-
-	* liboctave/f77-uscore.h: Don't use C++ style comments.
-
-	* octMakefile.in (DISTDIRS): Don't include bsd-math.
-	* src/Makefile.in (VPATH): Don't include bsd-math directory.
-	(SOURCES): Include acosh.c, asinh.c, atanh.c, erf.c erfc.c, and
-	lgamma.c.
-	* configure.in: Create libcruft/slatec-fn/Makefile.
-	Use AC_CHECK_FUNCS to look for acosh, asinh, atanh.
-	Don't do anything special if they are missing.
-	* src/acosh.c, src/asinh.c, src/atanh.c, src/erf.c, src/erfc.c,
-	src/lgamma.c: New files.
-	* acconfig.h: Delete #undefs for ACOSH_MISSING, ASINH_MISSING,
-	and ATANH_MISSING.
-	* libcruft/Makefile.in (CRUFT_DIRS): Add slatec-fn.
-	* libcruft/slatec-fn: New directory.
-
-	* configure.in: Don't try to use IEEE floating point on m68k HP
-	systems.
-
-Thu Jan 26 12:57:05 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (maybe_unput_comma):  New function, extracted from
-	handle_identifier().  Correctly handle the dot in things like
-	`a.b' inside matrix lists.
-	(handle_identifier): Use it.  Don't allow things like [a .1] or
-	[a.b .1] to fool us.
-
-Wed Jan 25 08:04:16 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/Makefile.in (realclean): Don't depend on distclean.  Do
-	delete Makefile here.
-
-	* flibs.sh: Also check for /*values-*.o, for Sun Fortran 2.x.
-	* configure.in (FLIB_LIST, CXXLIB_LIST, FLIB_PATH, CXXLIB_PATH):
-	Delete any .o files found here.
-	When checking for -lm, also append -lc on Linux systems.
-
-	* mkinstalldirs: Create directories with mode 0755, to avoid
-	problems because the installers umask is too restrictive.
-
-	* octave-bug.in: Don't use rmail, it crashes on Ultrix systems if
-	the message file isn't just right.  Use nested if statements
-	instead of ||, for Ultrix /bin/sh.  Avoid Ultrix awk crash.
-
-	* scripts/linear-algebra/trace.m: Handle row and column vectors as
-	a special case.
-	* scripts/linear-algebra/null.m: Likewise.
-	* scripts/linear-algebra/orth.m: Likewise.
-
-Tue Jan 24 08:11:51 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octave-bug.in: Add F2C, F2CFLAGS, FLIBS, and LDFLAGS to report.
-	* Makefile.in (octave-bug): Substitute them.
-
-Mon Jan 23 20:42:55 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-misc.cc (tree_if_clause::is_else_clause): New function.
-	(tree_if_command_list::print_code): Use it to decide whether to
-	print "else" or "elseif" here.
-	(tree_if_clause::print_code): Don't print "else" here.
-
-	* scripts/image/colormap.m: Fix logic for initializing default
-	colormap and handling subsequent calls with no arguments.
-
-	* src/lex.h (TOK_PUSH_AND_RETURN): Correct last change.
-
-Sun Jan 22 18:02:37 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (handle_identifier): Handle incrementing
-	current_input_column here.
-	({IDENT}{S}*): Not here.
-
-	* src/lex.h (TOK_PUSH_AND_RETURN): New macro.
-	* src/lex.l: Use it.
-
-	* src/parse.y (yyerror): If printing input line, always print `^'
-	error marker too.
-
-	* src/parse.y (command [BREAK]): Allow break to occur in function
-	bodies too.
-	* src/tree-expr.cc (tree_function::eval): Also check to see if
-	function exited because of a break statement.
-
-Fri Jan 20 10:48:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* config.guess: Replace with current version from FSF.
-	* config.sub: Likewise.
-
-	* src/tempname.c: Include statdefs.h.
-
-	* src/tree-expr.cc (eval): Improve error messages.
-
-Thu Jan 19 08:33:50 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (handle_string): Properly handle pending escapes.
-	Call error() for unterminated string constants.
-	* src/parse.y (input): For parse errors, call yyerror().
-
-	* test/config/unix-octave.exp (octave_start): Correctly set OSPATH
-	from $OCTAVE_SCRIPT_PATH, not to the string OCTAVE_SCRIPT_PATH.
-
-	* test/Makefile.in (OCTAVE_SCRIPT_PATH): Delete surrounding quotes
-	in definition.
-
-	* doc/texinfo.tex: Move to version 2.140.
-
-	* src/f-rand.cc (Frand): Use different method for generating
-	initial seed so that it varies more each time Octave starts.
-
-	* src/file-io.cc (feof_internal): Use args(0), not args(1).
-
-	* src/Makefile.in (SOURCES): Use tempnam.c, not tmpnam.c.
-	* src/tempnam.c: New file, from the GNU C library.
-
-Wed Jan 18 08:10:31 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/user-prefs.h (user_prefs): New field, read_only_constants.
-	* src/user-prefs.cc (read_only_constants): New function.
-	* src/variables.cc (install_builtin_variables): Add DEFVAR for
-	read_only_constants, but leave it #if 0'd out since we're not
-	really ready for it yet..
-	* src/symtab.cc (symbol_record::read_only_error): Check
-	user_prefs.read_only_constants to see if it is ok to redefine
-	constants that are marked as read-only.
-
-	* src/user-prefs.h (user_prefs): New field, ps4.
-	* src/user-prefs.cc (sv_ps4): New function.
-	* src/variables.cc (install_builtin_variables): Add DEFVAR for PS4.
-	* src/input.cc (do_input_echo): New function.  Use PS4 variable as
-	prefix of echoed input.  Send echoed input through the pager.
-
-	* flibs.sh: Ignore -lang* options.
-
-	* src/load-save.cc (Fsave): Send `save - ...' output through the
-	pager.
-
-	* doc/Makefile.in: Create and distribute refcards of various sizes.
-	Delete rules for making refcard.tex from refcard.tex.in.
-	Don't make or distribute refcard-local.
-	* doc/refcard.tex: Handle setting paper size with \refcardsize.
-	* doc/refcard-a4.tex, doc/refcard-legal.tex, doc/refcard-letter.tex:
-	New files.
-
-Mon Jan 16 13:19:29 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tc-rep-ass.cc (TC_REP::do_scalar_assignment): Handle
-	assignments like a(0) = [].
-	* src/tc-inlines.h (valid_zero_index): New function.
-	* src/tc-rep.cc (valid_as_zero_index): New function.
-	* src/tree-const.h (valid_as_zero_index): New function.
-
-	* src/parse.y (func_def2): Check user_prefs before warning about
-	function name and function file name conflict.
-	* src/user-prefs.h (user_prefs): New field, warn_function_name_clash.
-	* src/user-prefs.cc (warn_function_name_clash): New function.
-	* src/variables.cc (install_builtin_variables): Add DEFVAR for
-	warn_function_name_clash.
-
-	* scripts/image/octtopnm.c: Include stdlib.h instead of malloc.h.
-
-Sun Jan 15 15:08:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* readline/rldefs.h: Use new #defines for directory headers now
-	that we are using autoconf 2.
-
-	* scripts/special-matrix/hankel.m: Use .', instead of '.
-
-	* src/input.cc (match_sans_spaces): Use strcmp, not strncmp.
-
-	* src/tc-rep-ass.cc (TC_REP::fortran_style_matrix_assignment):
-	For scalar index, don't do assignment if RHS and LHS are both empty.
-
-	* src/data.cc (Fsize): Handle optional second arg.
-
-	* src/tree-expr.cc (tree_function::eval (int)): Correctly set
-	nargin and nargout to zero when evaluating function.
-
-	* src/lex.l (handle_string): Correct handling of string escapes.
-
-Thu Jan 12 15:25:34 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Version 1.1.0 released.
-
-	* octMakefile.in (bin-dist-tar): Ignore errors on strip commands.
-
-	* src/tree-expr.cc (tree_builtin::eval (int)): Set nargout to 0
-	when calling function.
-
-	* doc/Makefile.in (FORMATTED): Add refcard.dvi and refcard.ps so
-	that they are distributed along with the other docs.
-	* octMakefile.in (clean-doc-dist-tar): Delete target.
-	(doc-dist): Depend on doc-dist-tar, not	clean-doc-dist-tar.
-
-Tue Jan 10 14:29:43 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/help.cc (print_usage): Print warning if symbol isn't found.
-
-	* src/utils.cc (Fundo_string_escapes): Fix typo in call to
-	print_usage().
-
-	* src/octave.cc (Fsystem): Correctly compute exit code.
-
-	* scripts/miscellaneous/etime.m: Complain if args are not the
-	right length, not if they are.  Reverse sense of test for years.
-	Duh.
-
-	* src/f-find.cc (find_to_fortran_idx): For the case of one output
-	argument, return a row vector if the original argument to find was
-	a row vector.
-
-Mon Jan  9 12:57:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (grab_help_text): Always overwrite help_buf.
-	({CCHAR}): Don't call grab_help_text() if there is already
-	something in help_buf.
-
-Sat Jan  7 12:28:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (HOST_CXXFLAGS): New variable to substitute.
-	* Makeconf.in (ALL_CXXFLAGS, UGLY_ALL_CXXFLAGS, BUG_CXXFLAGS):
-	Add $(HOST_CXXFLAGS).
-
-Fri Jan  6 13:07:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/special-matrix/toeplitz.m: Use .' instead of '.
-
-Tue Jan  3 18:14:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* test: Rewrite many tests to not run Octave interactively.  This
-	makes the log files much more readable.
-
-	* octMakefile.in (clean-tar): Delete octave-test/npsol directory,
-	not just test/octave.test/npsol.exp.  Likewise, add a command for
-	deleting qpsol tests.
-
-Mon Jan  2 20:02:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/octave.cc (main): Return 0 if error_state is not set.
-
-	* src/error.cc (error_1): New function.
-	(error): Use it.
-	(parse_error): New function.
-	* src/parse.y: Never call error and yyerror; just use yyerror.
-	(yyerror): Improve logic.  Use new parse_error() function so that
-	error_state is always set for a parse error.  Don't use
-	ostream::form().
-	(ABORT_PARSE): Don't call reset parser here.
-	(colon_expr): Don't call yyerror here.  An error message is
-	printed by tree_colon_expression::chain() if it fails.
-
-Mon Dec 26 20:11:01 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-expr.cc (eval): Only call multi-arg form of eval for
-	object_to_eval if necessary.
-
-Fri Dec 23 00:08:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l: Don't increment promptflag anywhere.
-	(eat_continuation): New function.
-	(eat_whitespace): Handle embedded continuations.  Return nonzero
-	if whitespace consumed.
-	(handle_close_brace): Don't pass yytext.  Do pass flag indicating
-	whether whitespace follows brace.
-	(handle_identifier): Check for next token being `=' here.  Pass
-	flag indicating whether whitespace follows identifier.
-	(<MATRIX>{SNLCMT}*;{SNLCMT}*): Call eat_whitespace() here.
-	({IDENT}{S}*): Call eat_continuation() here.
-	(do_comma_insert_check): And here, but put a space back if
-	whitespace is gobbled.
-	(have_continuation, have_ellipsis_continuation): Decrement
-	promptflag here.
-
-Wed Dec 21 09:56:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-plot.cc (Fclearplot): Send "set nolabel" too.
-
-Mon Dec 19 17:50:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-plot.h, src/tree-plot.cc (subplot): Rename using to
-	using_clause to avoid new C++ keyword.  Rename title and style to
-	match.
-
-Fri Dec 16 00:09:01 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Don't check for fpsetmask.
-	* src/sysdep.cc (sysdep_init): Don't check HAVE_FPSETMASK
-
-Thu Dec 15 00:28:52 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/variables.cc (install_builtin_variables) [default_save_format]:
-	Fix doc string.
-
-	* configure.in: Rework DEFAULT_DOT_O_FROM_DOT_F and
-	DEFAULT_DOT_C_FROM_DOT_F to avoid embedded newlines.
-	* Makeconf.in: Likewise.
-
-	* src/pager.cc (flush_output_to_pager): Close stream before
-	resetting signal handler.
-
-	* src/help.cc (Fhelp): Call fcn_file_in_path here.  Delete it too.
-	Print file name before help message.
-	* src/variables.cc (get_help_from_file): Don't call
-	fcn_file_in_path here.
-	(gobble_leading_white_space): Correctly grab only first set of
-	comments.
-
-Wed Dec 14 11:42:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/parse.y (pager_buf): Don't make it a fixed-size array.
-	* src/variables.cc (get_help_from_file): New function.
-	(gobble_leading_white_space): Return first block of comments for
-	later use as help string.
-	(looks_like_octave_copyright): New function.
-	(parse_fcn_file): Stash help from gobble_leading_white_space in
-	global help_buf.
-	* src/lex.l (grab_help_text): Don't overwrite help found by
-	gobble_leading_white_space.
-	(reset_parser): Delete help_buf.
-	* src/help.cc (Fhelp): Only try to get help from symbol records
-	that are defined.  If all else fails, try get_help_from_file.
-
-	* src/pager.cc (flush_output_to_pager): Re-initialize pager_buf
-	immediately after extracting message.  Delete message immediately
-	after sending it to the output stream.  Ignore interrupts while
-	running pager.
-
-	* octMakefile.in (clean-tar): Delete npsol.exp and any .m files
-	that are in the test/octave.test directory.
-	(install): Use $(INSTALL), not just install.
-
-	* src/lex.l (reset_parser): Don't reset input column or line
-	number if reading from a script file or a function file.
-	(is_keyword): Don't set line number to 1 if reading function file
-	or script file.
-	* src/variables.cc (gobble_leading_whitespace): Count lines.
-	* src/octave.cc (main): If reading file, set reading_script_file
-	and curr_fcn_file_name before calling get_input_from_file().
-
-	* src/tc-rep.cc (TC_REP::matrix_value): If implicit_str_to_num_ok,
-	convert empty string to empty matrix.
-
-Tue Dec 13 20:25:34 1994  Frederick (Rick) A Niles <niles@axp745.gsfc.nasa.gov>
-
-	* liboctave/dbleQR.cc, liboctave/dbleQRP.cc, liboctave/CmplxQR.cc,
-	liboctave/CmplxQRP.cc: Get economy-sized dimensions correct.
-
-	* libcruft/misc/i1mach.f, libcruft/misc/gen-d1mach.c,
-	libcruft/ranlib/ignuin.f: Prevent warnings about variable may be
-	used before defined.
-
-Tue Dec 13 11:07:34 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/variables.cc: Change commas_in_literal_matrix to
-	whitespace_in_literal_matrix.
-	* src/user-prefs.h (user_preferences): Likewise.
-	* src/user-prefs.cc (init_user_prefs): Likewise.
-	(whitespace_in_literal_matrix): Likewise, rename function.
-	* src/lex.l: Likewise.
-	(nesting_level): Rename from in_brace_or_paren.
-	(<MATRIX>{SNLCMT}*\n{SNLCMT}*): Make separate case from
-	<MATRIX>{SNLCMT}*;{SNLCMT}.  Check nesting level to decide whether
-	to convert newline to semicolon.
-	({NL}, {CCHAR}): Check nesting level to decide whether to eat
-	or return newline.
-	("("): Decrement promptflag.
-	(")"): Increment promptflag.
-
-Mon Dec 12 00:02:51 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/Makefile.in, scripts/*/Makefile.in (install): Don't
-	depend on all.
-
-	* octMakefile.in: Put doc dir last.
-	* doc/Makefile.in (dir): New file.
-	(DISTFILES): Distribute dir.
-	(install): Install dir if it does not already exist in $(infodir).
-	Otherwise, print message.
-
-	* src/lex.l: Handle {IDENT}{S}*/= with yyinput() instead of
-	trailing context.
-	(handle_close_brace): New function.
-	(handle_number): New function.
-	(have_continuation, handle_ellipsis_continuation, handle_string):
-	New functions for handling strings and continuation lines in
-	string constants.
-	(eat_whitespace): New function eliminates need for NEW_MATRIX
-	start state.
-
-Sun Dec 11 15:53:03 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l: Eliminate special case for eating whitespace when
-	start state is <TEXT_FCN>.
-	Merge three cases for handling `]' for <MATRIX> start state.
-
-Fri Dec  9 12:21:35 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l: Handle `\' as a continuation character too.
-	Allow comments and blanks to follow continuation characters.
-	Improve handling of comments in matrices.  Create a few more
-	definitions for patterns.  Restructure source.
-
-	* configure.in: Check for bcopy too.
-
-	* configure.in (gxx_version): Don't use -fno-implicit-templates on
-	AIX systems with g++ 2.6.x.
-
-	* octave-bug.in: Check for CC: lines too.  Use case-insensitive
-	match for To: and Cc: lines.  Actually send file that has header
-	separator stripped.  Print list of CC: addresses too.
-
-	* src/input.cc (get_user_input): If user enters empty string,
-	return empty matrix or empty string.
-
-	* src/help.cc (Fhelp, Ftype, Fwhich): Don't allow lookup_by_name
-	to execute script files.
-
-Thu Dec  8 23:20:02 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tc-rep.cc (print): Don't check `print', which is not a
-	variable in this context.
-
-Wed Dec  7 10:52:59 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/configure.in: Check for fpsetmask.
-	* src/sysdep.cc (sysdep_init): Check HAVE_FPSETMASK.  Only call it
-	if either __386BSD__ or __FreeBSD__ is defined.
-	Don't check __386BSD__ as a condition for including
-	floatingpoint.h.
-
-Mon Dec  5 12:29:07 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/utils.cc: Update directory header macro names for autoconf 2.
-	* src/dirfns.cc: Likewise.
-
-Sun Dec  4 22:00:40 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octMakefile.in (DISTFILES): Don't distribute GCC.PATCH, since it
-	is not needed with gcc 2.6.3.
-
-	* configure.in: Really do disable IEEE floating point functions on
-	the Alpha.
-
-Wed Nov 30 11:42:44 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* doc/FAQ.texi: New file.
-	* doc/Makefile.in: Create info, dvi, and ps files and distribute
-	them.
-
-	* Makefile.in (all): Expand initial message.
-
-Sat Nov 26 21:47:05 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/octave.cc (Fcomputer): Always append ios::ends to ostrstream
-	before returning.
-
-Mon Nov 21 09:41:34 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l: When start state is TEXT_FCN, gobble blanks with
-	pattern that matches only blanks before other patterns that can
-	also match just blanks.  Always check whether in_brace_or_paren
-	stack is empty before trying to use it.
-
-	* src/parse.y (make_multi_val_ret): Call constructor for
-	tree_simple_assignment_expression with correct number of args.
-
-	* scripts/plot/shg.m: New function.
-
-	* src/f-qpsol.cc (Fqpsol): Correct for changes in meaning of
-	nargin and the way args is loaded.
-	* src/f-npsol.cc (Fnpsol): Likewise.
-
-	* scripts/polynomial/roots.m: Return empty matrix for scalar or
-	empty matrix args.
-
-	* src/tree-plot.cc (gnuplot_terminal_type): New static variable.
-	(Fset): If this is a set term command, set gnuplot_terminal_type.
-	(open_plot_stream): Use gnuplot_terminal_type if it is set.
-
-	* src/idx-vector.cc (idx_vector::init): Don't check max value of
-	index vector against dimension here.  We may need to resize.
-	* src/tc-rep-idx.cc (do_scalar_index): Do check idx-vector max
-	value here.
-
-	* src/lex.l (is_plot_keyword): Don't set past_plot_range here.
-	Don't accept abbreviations for clear.
-	(handle_identifier): Don't call is_plot_keyword unless plotting.
-	Set past_plot_range here, before checking for plot option keywords.
-
-Fri Nov 18 17:25:59 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/data.cc (Fis_struct): New function.
-
-Thu Nov 17 18:13:56 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octMakefile.in (DISTFILES): Distribute GCC.PATCH.  Don't
-	distribute LIBG++.PATCH.
-
-	* src/tree-plot.cc (Fclearplot): Turn off grid and reset
-	plot_line_count to zero.
-
-	* configure.in: Check for sys/resource.h.
-	Create scripts/strings/Makefile too.
-
-	* src/timefns.cc: Surround inclusion of sys/resource.h in extern "C".
-	Only include sys/resource.h if both HAVE_SYS_RESOURCE_H and
-	HAVE_GETRUSAGE are defined.
-
-Wed Nov 16 09:26:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/plot/plot_opt.m: New function.
-	* scripts/plot/semilogx.m, scripts/plot/semilogx.m,
-	scripts/plot/loglog.m, scripts/plot/plot.m: Handle additional
-	args and format strings.
-	* scripts/plot/polar.m: Handle format arg.
-	* scripts/plot/polar_int_1.m, scripts/plot/polar_int_2.m: Extract
-	from polar_int.m.
-	* scripts/plot/plot_int_1.m, scripts/plot/plot_int_2.m: Extract
-	from plot_int.m.
-	* scripts/plot/plot_2_s_s.m, scripts/plot/plot_2_v_v.m,
-	scripts/plot/plot_2_m_m.m, scripts/plot/plot_2_v_m.m,
-	scripts/plot/plot_2_m_v.m: Handle format arg.
-
-	* scripts/strings/strcmp.m: Move here.
-	* scripts/general/strcmp.m: From here.
-
-	* src/xdiv.cc (result_ok): Issue warning instead of error if warn
-	is nonzero.
-
-Tue Nov 15 15:54:19 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-plot.cc (Fcloseplot): Clear title and labels too.
-
-	* src/help.cc (keywords): Add entries for all_va_args,
-	unwind_protect, unwind_protect_cleanup, and end_unwind_protect.
-
-	* liboctave/Makefile.in: Use -include for dependency files.
-	* src/Makefile.in: Likewise.
-
-Mon Nov 14 10:28:23 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-misc.cc (convert_to_const_vector): Resize vector before
-	returning.
-
-	* src/lex.l (plot_style_token): Also allow "steps", "boxes", and
-	"boxerrorbars".
-
-	* src/parse.y (UNWIND): Rename from UNWIND_PROTECT.
-	(CLEANUP): Rename from UNWIND_PROTECT_CLEANUP.
-	(command): Allow optsep after UNWIND and CLEANUP tokens.
-	* src/lex.l (is_keyword): Use new token names
-
-	* src/tree-const.h (tree_constant::all_va_args): New enum.
-	(tree_constant (tree_constant::all_va_args t)): New constructor.
-	(is_all_va_args): New function.
-	(is_empty, is_zero_by_zero, make_numeric_or_magic,
-	make_numeric_or_range_or_magic): Handle	all_va_args type.
-	* src/tc-rep.h (constant_type::all_va_args): New enum element.
-	(is_all_va_args): New function.
-	* src/tc-rep.cc (TC_REP::tree_constant_rep (TC_REP::constant_type),
-	TC_REP::print_code): Handle all_va_args.
-	* src/tree-misc.cc (tree_argument_list::convert_to_const_vector):
-	Handle all_va_args.
-	* src/tree-expr.cc (tree_index_expression::eval): After call to
-	tree_argument_list::convert_to_const_vector (), check error_state.
-	(tree_simple_assignment_expression::eval): Likewise.
-	(tree_function::octave_all_va_args): New function.
-	* src/parse.y (ALL_VA_ARGS): New token.
-	(arg_list): Handle ALL_VA_ARGS.
-	* src/lex.l (is_keyword): Handle all_va_args.
-
-	* src/tree-expr.cc (tree_identifier::bump_value): Check read-only
-	status of sym before altering value.
-	(tree_prefix_expression::eval): Check error_state after call to
-	tree_identifier::bump_value ().
-
-	* src/variables.cc (bind_nargin_and_nargout): Don't make nargin
-	and nargout read only.
-
-	* scripts/strings: New subdirectory for string functions.
-	* scripts/Makefile.in (SUBDIRS): Add strings.
-	* scripts/strings/strcat.m: New function.
-
-Fri Nov 11 14:17:31 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/load-save.cc (extract_keyword): Allow trailing blanks on the
-	input line.
-
-Thu Nov 10 09:53:35 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/general/reshape.m, scripts/image/ind2gray.m,
-	scripts/image/ind2gray.m, scripts/image/ind2rgb.m,
-	scripts/image/rgb2ind.m: unwind_protect do_fortran_indexing.
-	* scripts/general/strcmp.m: unwind_protect implicit_str_to_num_ok.
-	* scripts/miscellaneous/menu.m: unwind_protect page_screen_output.
-
-	* src/parse.y (UNWIND_PROTECT, UNWIND_PROTECT_CLEANUP): New tokens.
-	(command): Handle unwind-protect.
-	* src/lex.l (is_keyword): Handle unwind_protect,
-	unwind_protect_cleanup, and end_unwind_protect.
-	* src/tree-cmd.cc (tree_unwind_protect_command): New class, to
-	handle unwind-protect.
-
-	* src/token.h (end_tok_type): New field, end_unwind_protect.
-
-	* src/error.cc (verror): Flush pending output to pager here.
-	(error): Not here.
-
-	* src/tc-rep.cc (force_numeric): Don't jump to top level on error.
-	* src/tc-rep.cc, src/tc-rep-ass.cc, src/tc-rep-idx.cc: Check
-	error_state after calls to make_numeric* functions.
-
-	* src/f-lpsolve.cc: Define Flp_solve and Flp_solve_options, not
-	Flpsolve or Flpsolve_options.
-
-	* src/utils.cc (Ffile_in_path): Define Ffile_in_path, not
-	Ffile_in_pat.
-
-	* src/f-inv.cc: Add DEFUN for inverse.
-
-Wed Nov  9 09:30:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/load-save.cc (read_mat_file_header): Check for mopt < 0 too.
-	Don't fail if reading mopt fails.
-	(save_mat_binary_data): Handle range data as a special case.
-	(get_default_save_format): Also accept `mat-binary' and
-	`mat_binary'.
-	(Fsave): Add ios::trunc to flags for opening output file.
-
-	* src/parse.y (func_def2): Stash function name before stashing
-	file name.
-
-	* src/utils.cc (fcn_file_in_path): Don't append `.m' if the name
-	already ends in `.m'.
-	(oct_file_in_path): Likewise, for `.oct'.
-
-	* src/error.cc (usage): Set error state to -1, so we get traceback
-	information after a call to usage.
-
-	* src/tree-expr.cc (stash_fcn_file_name): Store full name of the
-	file.
-
-	* scripts/*/*.m: Change messages to say `invalid' instead of
-	`illegal', since no laws are being broken by using these functions
-	incorrectly.
-
-	* src/timefns.cc (Fcputime): New function.
-	* configure.in: Check for getrusage.
-
-	* src/scripts/miscellaneous/tic.m: New function.
-	* src/scripts/miscellaneous/toc.m: New function.
-	* src/scripts/miscellaneous/etime.m: New function.
-	* src/scripts/miscellaneous/is_leap_year.m: New function.
-
-	* src/error.cc (Fwarning, Fusage): New functions.
-	* scripts/*/*.m: Use them instead of printing warning and usage
-	messages directly with disp, printf, or fprintf.
-
-	* src/file-io.cc (close_files): Check Pix before using.
-	(file_count): Delete unnecessary variable.  Instead, use
-	DLList::length to get the number of files in the list.
-
-	* src/sighandlers.cc (install_signal_handlers): Explicitly ignore
-	SIGPOLL and SIGIO.
-
-Tue Nov  8 15:26:50 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/general/logspace.m: Lose fractional part of third arg.
-	Don't round, for compatibility with Matlab.
-	* scripts/general/linspace.m: Likewise.
-
-	* liboctave/CMatrix.cc (row_min, row_max, row_min_loc, row_max_loc):
-	Handle case of row containing only real elements.
-	(column_min, column_max, column_min_loc, column_max_loc):
-	Likewise, for columnwise operations.
-	* src/f-minmax.cc (two-complex-arg min, max): Handle case of both
-	columns containing only real elements.
-
-	* src/variables.cc (Fclear): Pass 0 to symbol_table::list() for
-	pats and npats.
-
-Mon Nov  7 20:22:36 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* liboctave/dColVector.cc (operator +=): Don't return reference to
-	temporary.
-	(operator -=): Likewise.
-	* liboctave/CMatrix.cc (operator +=, operator -=): Likewise.
-
-Sun Nov  6 23:15:24 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octMakefile.in (DISTSUBDIRS): Don't use $(SUBDIRS) here.
-
-	* src/load-save.cc (Fsave): Open output file with mode ==
-	ios::out, not ios::in.
-
-Sat Nov  5 18:18:11 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (HAVE_SYS_SIGLIST): Check for sys_siglist variable,
-	even if it isn't declared in a system header.
-	* acconfig.h (HAVE_SYS_SIGLIST): Add #undef.
-	* src/sighandlers.cc (sys_siglist): Define our own if
-	HAVE_SYS_SIGLIST is not defined, not if SYS_SIGLIST_DECLARED is
-	not defined.
-
-	* src/tree-plot.cc (Fclearplot): New function.
-	(clg): Alias for clearplot.
-
-	* src/parse.y (CLEAR): New token.
-	(statement): Handle PLOT CLEAR as a special case.
-	* src/lex.l (is_plot_keyword): Handle CLEAR here too.
-
-Fri Nov  4 08:44:57 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* All: Remove remaining #pragma interface/implementation statements.
-
-	* src/tree-plot.cc (subplot): Move actual code here from .h file.
-
-	* src/tree-expr.cc (tree_expression): Declare destructor virtual.
-	Delete unnecessary destructors.
-
-	* src/SLStack.h, src/SLStack.cc (operator =): Return reference to
-	SLStack, not void.
-
-	* src/f-qzval.cc (Fqzval): Rename from Fqzvalue.  Change Help
-	and usage messages too.
-
-	* scripts/plot/plot_int.m: Really figure out if there are any
-	imaginary parts.
-
-	* scripts/control/are.m: Fix typo.
-
-Thu Nov  3 18:44:11 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/load-save.cc (save_ascii_data): Handle new arg,
-	strip_nan_and_inf.  Change callers.
-	(strip_infnan): New functions.
-	(save_three_d): Strip inf and nan values here too.
-
-	* src/tree-plot.h (subplot_using): New data have_values and val.
-	* src/tree-plot.cc (subplot_using::eval, subplot_using::values):
-	New functions.
-	(subplot_style::errorbars): New function.
-	(subplot::extract_plot_data, subplot::handle_plot_data): New functions.
-	(subplot::print): Improve handling of data.
-
-Wed Nov  2 08:11:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/file-io.cc (do_scanf): If reading from stdin, flush stdout
-	first.
-
-	* configure.in: Leave some comments in the configure file.
-	Improve checking for termios.h, termio.h, and sgtty.h.
-
-	* src/variables.cc (install_builtin_variables): DEFVAR realmax and
-	realmin here.
-	* src/sysdep.cc: Instead of DEFUNing them here.
-
-	* src/variables.cc (do_who): Accept globbing patterns as args.
-	(maybe_list): Handle them here.
-
-	* src/symtab.cc (matches_patterns): New function.
-	(symbol_table::list, symbol_table::long_list): Accept list of
-	patterns, and use matches_patterns to see if the given string is a
-	match.  Change all callers.
-
-	* src/load-save.cc (read_binary_data): Don't fail if reading
-	name_len fails.
-	(do_load): Quit quietly if nothing is left to read.  Clean up doc
-	and name in all cases.
-
-Tue Nov  1 16:34:20 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/lex.l (")"): Set cant_be_identifier to 1 here too.
-
-	* src/tree-plot.cc: Use abbreviations for gnpulot plot, splot,
-	replot, with, using, and title commands.
-
-Mon Oct 31 14:26:12 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/variables.cc (Fclear): Look in global symbol table for
-	user-defined function names.
-
-	* src/load-save.cc (do_load): New function.
-	(Fload): Use it to avoid assigning streams.
-	(write_binary_header): New function.
-	(save_vars): New function.
-	(Fsave): Use it to avoid assigning streams.
-
-	* libcruft/linpack/zgesl.f (zgesl): Comment out unused varialbes
-	and statement functions.
-
-	* src/sysdep.cc (Fisieee): New function.
-	(Frealmax, Frealmin): Ditto.
-
-	* scripts/miscellaneous/version.m: New file.
-
-Fri Oct 28 14:52:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octMakefile.in (distclean): Also delete config.cache and
-	config.log.
-
-	* Makeconf.in (CPPFLAGS): Allow substitution.
-
-	* configure.in: Use AC_PREFIX_DEFAULT.
-
-	* configure.in: Use AC_CANONICAL_HOST instead of doing this
-	ourselves.
-
-	* install-sh: Rename from install.sh.
-	* octMakefile.in (DISTFILES): Distribute install-sh, not install.sh.
-
-Mon Oct 24 10:04:27 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octave-bug.in: Print message if bug report appears to have been
-	mailed successfully.  Otherwise, exit with error status.
-
-Fri Oct 21 14:05:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tc-rep-ass.cc (TC_REP::do_vector_assign (rhs, idx-vector)):
-	Handle all four cases of row/colum mixing.  Report an error if the
-	RHS is a matrix.
-
-	* src/tc-rep-idx.cc (TC_REP::do_index): Don't barf on indexing an
-	empty matrix with colon(s).
-	(TC_REP::do_scalar_index): Create index vector with  z_len = 1.
-	(TC_REP::do_matrix_index (Range, tree_constant)): Correctly handle
-	case of colon as second arg.
-
-	* octave-bug.in: Put mail commands in subshells so error message
-	really do go away.
-
-Thu Oct 20 11:05:36 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* octave-bug.in: If passing $SUBJECT on the command line to a
-	mailer, quote it.  Don't assume /bin/mail takes any args other
-	than a recipient address.  Do the right thing if the To: line
-	changes.
-
-	* src/tc-rep.cc (TC_REP::rows, TC_REP::columns): Return -1 for
-	anything that doesn't really have rows or columns.
-
-	* src/tc-rep-idx.cc (fortran_style_matrix_index): Check max and
-	min index values.
-
-	* Makefile.in (FORCE): New phony target.  Used instead of .PHONY
-	to be portable.
-
-	* octave-bug.in: Try harder to mail the message.
-
-	* src/dynamic-ld.cc: Undefine true, false, and boolean after
-	including kpathse/pathsearch.h.
-
-	* src/sysdep.cc: Include <float.h>.
-
-Wed Oct 19 10:28:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in (CXXLIB_LIST, FLIB_LIST, CXXLIB_PATH, FLIB_PATH):
-	Be careful not to match -l or -L in the middle of a word.
-
-	* src/f-minmax.cc: Correctly handle mixed scalar/matrix args.
-
-	* octMakefile.in: Rename from Makefile.in.
-	* Makefile.in: New file.  For `all' target, print message and
-	execute make again using octMakefile.  For other targets, just
-	execute make again using octMakefile.
-
-	* configure.in: Check for sys_siglist.
-	* src/sighandlers.h [! HAVE_SYS_SIGLIST]: Provide an external
-	declaration.
-	* src/sighandlers.cc (generic_sig_handler): New function, replaces
-	most individual signal handler functions.
-	(sigint_handler, sigpipe_handler): Restore signal handler before
-	doing anything else.
-	[! HAVE_SYS_SIGLIST] (sys_siglist): Provide our own definition.
-
-	* config.guess: Update from FSF sources.
-
-Tue Oct 18 23:36:24 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* flibs.sh: Don't pass -Y P,path.  Instead, turn it into a series
-	of -L dir args.
-
-	* configure.in: Update for autoconf 2.0.
-	Delete support for --enable-run-in-place (it is too hard to make
-	this work reliably...).
-
-Mon Oct 17 11:40:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/user-prefs.cc (init_user_prefs): Declare to return void,
-	not int.
-
-	* configure.in: Change quote characters around tr command.  Some
-	systems actually do need the []'s for ranges...
-
-Sun Oct 16 12:22:14 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tempname.c, src/tmpnam.c: New files.
-	* src/Makefile.in (SOURCES): Add them.
-	* src/dirfns.cc: Delete functions extracted from glibc.
-
-	* configure.in (localfcnfiledir, localoctfiledir, imagedir):
-	New variables.  Use them to define localfcnfilepath,
-	localoctfilepath, and imagepath.
-	* Makeconf.in: Substitute them here.
-
-	* src/utils.cc (get_fcn_file_names) [WITH_DLD]: Also match .oct
-	files.
-
-	* dld/find_exec.c (dld_find_executable): Don't be fooled by
-	directories or other special files in PATH.
-	(ABSOLUTE_FILENAME_P): Also return true if the name includes a
-	`/'.  This isn't necessarily an absolute path, but we will turn it
-	into one later.
-	* src/dynamic-ld.cc (octave_dld_init): Call make_absolute() on
-	value returned from dld_find_executable().
-
-Sat Oct 15 08:35:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* flibs.sh: Undo previous change.  Only substitute spaces for
-	commas if it looks like we have output from xlf.  Handle -Y and
-	LD_RUN_PATH using gcc's -Xlinker option.
-
-	* Makefile.in (snapshot-version): Use move-if-change for version.h.
-
-Fri Oct 14 09:18:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/image/Makefile.in (SOURCES): Don't forget octtopnm.c.
-
-	* Makefile.in (BINDISTFILES): Distribute octave-bug too.
-
-	* configure.in (imagepath): Install at same level as fcnfiledir,
-	not below it.
-
-	* doinstall.sh: Correctly extract version numbers that are not all
-	digits.  Also install images too.  Also install octaverc.  Ask
-	octave for the target host type.  Also create site/m and
-	site/oct directories.  Also install octave-bug.
-
-	* scripts/image/Makefile.in (DISTFILES): Distribute demo image
-	files too.
-
-	* doinstall.sh: Update for new directory organization.
-
-	* src/variables.cc (subst_octave_home): Make it work for multiple
-	substitutions.
-
-	* flibs.sh: Handle -Y P,path:of:lib:dirs output from f77 on Solaris.
-
-	* src/strfns.cc (Ftoascii): New file, new function.
-	(Fisstr, Fsetstr): Move here, fromd ata.cc.
-
-	* src/Makefile.in (SOURCES): Include it.
-
-Thu Oct 13 11:58:03 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/signal/filter.m: Postpad `b' before reshaping.
-
-	* mkinstalldirs: New file.
-	* Makefile.in: Distribute it, don't make mkpath.
-	* All Makefile.in files: Use it instead of mkpath.
-
-	* src/utils.cc (Foctave_tmp_file): New function.
-
-	* src/utils.cc (undo_string_escape): Move here from tc-rep.cc,
-	rename from undo_string_escapes, and make extern.
-	(undo_string_escapes): New function, for undoing a whole string.
-	(Fundo_string_escapes): New function.
-
-	* scripts/miscellaneous/dump_prefs.m,
-	scripts/miscellaneous/dump_1_pref.m: New functions.
-	* scripts/miscellaneous/bug_report.m: Record user preferences in a
-	file and pass the name of the file to octave-bug.  Use
-	octave_tmp_file to generate tmp file name.
-	* octave-bug.in: Accept a final file-name arg as a file that
-	contains a list of user-preferences.
-
-Wed Oct 12 09:09:37 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Redefine archlibdir and octfiledir so that oct
-	and exec directories are at the same level as the m directory.
-	Redefine localoctfilepath so that site/oct is a the same level as
-	site/m.
-
-	* Makeconf.in (F77): Substitute it.
-	(BUG_CFLAGS, BUG_CXXFLAGS): New vars.
-	* configure.in:
-	* scripts/bug_report.m: New file.
-	* octave-bug.in: New file.
-	* Makefile.in (DISTFILES): Distribute octave-bug.in.
-	(dirs_to_make): Add $bindir.
-	(all): Add octave-bug.
-	(octave-bug): New target.
-	(install): Install it.
-	* src/defaults.h.in: Add defines for bindir.
-	* src/Makefile.in (defaults.h): Substitute it.
-	* src/variables.cc (octave_bin_dir): New function.
-	* src/octave.cc (initialize_globals): Also add $bindir to path.
-
-	* configure.in: Check for gettimeofday. Add AC_TIME_WITH_SYS_TIME.
-	* src/systime.h: New file.
-	* src/timefns.h: Use gettimeofday if available.
-	* src/Makefile.in (INCLUDES): Add systime.h.
-
-Mon Oct 10 14:34:56 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/octave.cc (verbose_flag): New global variable.
-	(long_opts): Add "verbose".
-	(usage_string): Update.
-	(main): Set verbose_flag if given --verbose.
-	(execute_startup_files): Don't print messages about reading
-	startup files if verbose_flag is not set.
-
-	* src/tree-expr.cc (apply_mapper_fcn): Handle scalars as a special
-	case, but then just try to convert other arg types to a matrix.
-
-	* src/f-det.cc (Fdet): Check if arg is complex type, but not
-	necessarily a complex matrix.
-	* src/f-schur.cc (Fschur): Likewise, and also for real types.
-	* src/f-lu.cc (Flu): Likewise.
-	* src/f-minmax.cc (Fmin, Fmax): Likewise.
-
-Sun Oct  9 21:04:17 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tc-rep-ass.cc (TC_REP::assign): If LHS is undefined, don't
-	try to force it to be a numeric type.
-
-Fri Oct  7 09:05:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: Define LD_STATIC_FLAG for Alpha OSF/1 1.3 systems.
-
-	* src/tc-rep-idx.cc (TC_REP::do_index): Only work for numeric
-	types, but don't panic if conversion doesn't work.
-	* src/tc-rep-ass.cc (TC_REP::assign): Likewise.
-
-	* src/tc-rep.cc (TC_REP::gripe_wrong_type_arg): New function.
-
-	* src/gripes.cc (gripe_wrong_type_arg): Define here.
-	* src/tree-const.cc: Not here.
-
-Wed Oct  5 16:24:38 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/file-io.cc (do_scanf): Don't panic if string is NULL.
-
-	* src/gripes.cc (gripe_unrecognized_float_fmt): New function.
-	(gripe_2_or_3_dim_plot): Ditto.
-	(gripe_unrecognized_data_fmt): Ditto.
-	(gripe_data_conversion): Ditto.  Use it in load-save.cc data
-	conversion routines that aren't implemented yet.
-
-	* src/load-save.cc (do_double_format_conversion): Don't panic on
-	unrecognized floating point formats.
-	(do_float_format_conversion): Likewise.
-	(write_doubles): Don't panic if data format is unrecognized.
-	(do_save): Likewise
-	(install_loaded_variable): Don't panic for unknown symbol types.
-	(read_binary_data): Also check error_state after calls to read_doubles.
-
-	* src/symtab.cc (symbol_table::rename): Don't panic if symbol
-	can't be renamed.
-	* src/parse.y (return_list): Abort parse if renaming results in an
-	error.
-
-	* src/tree-misc.cc (tree_if_command::eval): Don't panic if all
-	(all (cond)) is not a scalar.
-
-	* src/tree-expr.cc (tree_unary_expression::print_code): Don't
-	panic if expression type is unknown.
-
-	* src/tree-plot.cc (tree_plot_command::eval): Don't panic if plot
-	is not 2 or 3 dimensional.
-	(tree_plot_command::print_code, subplot::print, save_in_tmp_file):
-	Likewise.
-
-	* src/variables.cc (alias_builtin): Panic with better message.
-	(subst_octave_home): Don't panic if OCTAVE_HOME doesn't contain
-	OCTAVE_PREFIX.
-
-	* src/tc-inlines.h (REP_RHS_MATRIX): Use panic_impossible()
-	instead of abort().
-	(REP_ELEM_ASSIGN, CRMATRIX): Likewise.
-
-	* src/data.cc (Fdiag, make_diag): Do work here.
-	* src/tc-rep.cc (TC_REP::diag, make_diag): Not here.
-	* src/tc-rep.h (TC_REP::diag): Delete.
-	* src/tree-const.h (tree_constant::diag): Delete.
-
-Tue Oct  4 08:35:37 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/f-fft.cc (Ffft): Correctly set n_points for row vectors if
-	nargin == 1.
-	* src/f-ifft.cc (Fifft): Likewise.
-
-	* src/load-save.cc (Fsave): Declare file and stream static.
-
-Mon Oct  3 10:40:50 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tree-expr.cc (octave_va_arg): Correct arg count and index to
-	match recent change to arg passing/nargin.
-	(define_param_list): Always set num_named_args = param_list->length ().
-
-	* readline/Makefile.in (install): Don't install libreadline.a by
-	default.
-	(uninstall): Now no need to delete it.
-
-	* configure.in (localfcnfilepath, localoctfilepath): Change to
-	match organization of system fcn and oct files, and enable
-	recursive searching in both.  Enable recursive searching in
-	$(octfiledir).
-	(includedir): Change to $(prefix)/include/octave.
-
-Sun Oct  2 10:14:18 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: For now, disable IEEE floating point functions on
-	the Alpha.  This is braindead, but at least prevents divide by
-	zero crashes...
-
-	* src/file-io.cc (fseek_internal): Use values for origin that
-	match what we use to define SEEK_SET, SEEK_CUR, and SEEK_END in
-	variables.cc.
-
-	* dld: Merge various changes for Linux from dld 3.2.4 that is
-	being distributed with jacal.
-
-	* src/file-io.cc (fwrite_internal): Correct indexing of args.
-
-	* src/tree-expr.cc (apply_mapper_fcn): New function.
-	(tree_builtin::eval): Use it instead of tree_constant::mapper().
-	* src/tree-const.h (tree_constant::mapper): Delete.
-	* src/tc-rep.cc, src/tc-rep.h (TC_REP::mapper): Delete.
-
-	* src/data.cc (Fcumprod, Fcumsum, Fprod, Fsum, Fsumsq): Do work here.
-	* src/tc-rep.cc (TC_REP::cumprod, TC_REP::cumsum, TC_REP::prod,
-	TC_REP::sum, TC_REP::sumsq): Not here.  Delete.
-	* src/tc-rep.h (TC_REP::cumprod, TC_REP::cumsum, TC_REP::prod,
-	TC_REP::sum, TC_REP::sumsq): Delete
-	* src/tree-const.h (tree_constant::cumprod, tree_constant::cumsum,
-	tree_constant::prod, tree_constant::sum, tree_constant::sumsq):
-	Delete.
-
-	* tree-const.h: Don't check gcc minor version number.
-	* tc-rep.h: Likewise.
-
-	* src/file-io.h (class file_info): Declare here.
-	* src/file-io.cc: Not here.
-
-	* configure.in (LIBOCTDLD, LIBDLD): Remove ../ prefix.
-	* Makefile.in (distclean, realclean): Don't remove *.a.
-	* src/Makefile.in (OCTAVE_LIBS): Correct directory spec for libs.
-	Build, install, and clean liboctdld.a, not ../liboctdld.a.
-	* dld/Makefile.in: Build, install, and clean libdld.a, not ../libdld.a.
-	* info/Makefile.in: Likewise, for libinfo.a.
-	* kpathsea/Makefile.in: Likewise, for libkpathsea.a.
-	* libcruft/Makefile.in: Likewise, for libcruft.a.
-	* liboctave/Makefile.in: Likewise, for liboctave.a.
-	* readline/Makefile.in: Likewise, for libreadline.a.
-
-	* configure.in (gxx_version): Require 2.6.x or later.  Don't
-	define EXTERNAL_TEMPLATES.  Do define NO_IMPLICIT_TEMPLATES.
-	* liboctave/Array-C.cc, liboctave/Array-d.cc, src/Array-tc.cc,
-	src/DLList-fi.cc src/SLStack-tok.cc, src/SLStack-ue.cc,
-	src/SLStack-tm.cc, src/SLStack-pc.cc, src/SLStack-i.cc,
-	src/SLList-tc.cc, src/SLStack-sym.cc, src/SLStack-ui.cc,
-	src/SLList-misc.cc, src/SLList-expr.cc, src/SLList-plot.cc,
-	src/Map-tc.cc: New files.  Instantiate templates here.
-	* libocave/Array.cc, src/Map.cc, src/Stack.cc, src/SLStack.cc:
-	Not here.  Remove #pragma implementation hack.
-	* liboctave/Array.h, src/Stack.h, src/Map.h, src/SLStack.h: Remove
-	#pragma interface hack.
-	* Makeconf.in: Substitute NO_IMPLICIT_TEMPLATES, not
-	EXTERNAL_TEMPLATES.
-	(ALL_CXX_FLAGS, UGLY_ALL_CXX_FLAGS): Use $(NO_IMPLICIT_TEMPLATES),
-	not $(EXTERNAL_TEMPLATES).
-	* acconfig.h: Remove USE_EXTERNAL_TEMPLATES #undef.
-	* src/Makefile.in (XALL_CXX_FLAGS): Delete -fno-implicit-templates.
-	(TI_SRC, TI_OBJ): New variables.
-	(libtinst.a): New target.
-	* liboctave/Makefile.in (TI_SRC): New variable.
-	(SOURCES): Add it to list.
-
-Fri Sep 30 09:52:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/Makefile.in: Automatically generate more lists.
-	Use := in more places.
-	* src/Array-C.cc src/Array-d.cc src/Array-tc.cc src/Map-tc.cc
-	src/Stack-i.cc src/SLStack-pc.cc src/SLStack-sym.cc
-	src/SLStack-tok.cc src/SLStack-tm.cc src/SLStack-ue.cc:
-	New template instantiation files.
-	* configure.in: If using gcc 2.6.x or later, use
-	-fno-implicit-templates instead of -fexternal-templates.
-
-	* src/tc-inlines.h: Rename from tc-inlines.cc.
-
-	* src/parse.y (looking_at_indirect_ref): New global flag, for
-	parser feedback.
-	(tree_indirect_ref_type): New token type.
-	(TEXT_ID): New token.
-	(indirect_ref): New non-terminal.
-	(make_index_expression): New function.
-	(variable): Use it to build variable from indirect_ref, not just
-	identifier.
-
-	* src/lex.l (handle_identifier): Handle identifiers differently if
-	looking at an indirect reference.  Add `.' to list of other ops.
-
-	* src/tree-expr.cc (tree_identifier::do_lookup): Handle new
-	exec_script arg.
-	(tree_identifier::assign): New functions for assignment to a
-	strucutre element.
-	(print_constant): New function.
-	(tree_identifier::eval, tree_indirect_ref::eval): Use it.
-	(
-
-	* src/tree-expr.h (tree_indirect_ref): New class for handling
-	structure references.
-	(tree_expression::is_indirect_ref): New virtual function.
-	(tree_fvc::lookup_map_element): New virtual function.
-	(tree_index_expression, tree_simple_assignment_expression):
-	Add new constructors for handling indirect references.
-
-	* src/oct-map.h: New file, for class managing Octave's
-	structure/map type.
-
-	* src/tree-misc.cc (tree_global::eval): Don't allow individual
-	structure elements to be tagged global.
-
-	* src/tc-rep.h (tree_constant_rep): Add new field, a_map, and a
-	new type_tag, map_constant.
-	* src/tree-const.cc (tree_constant::is_map): New function.
-	* src/tree-const.cc (tree_constant::map_value,
-	tree_constant::assign_map_element, tree_constant::make_unique,
-	tree_constant::lookup_map_element,
-	tree_constant::make_unique_map_element): New functions.
-
-	* src/Map.h (CHNode::CHNode): Copy key.
-	(CHNode::~CHNode): Delete it.
-	(CHMap::contents): Don't declare return value const.
-
-	* src/tc-inlines.cc: Move some macros here from tc-rep.cc so they
-	can appear in one place and be shared by tc-rep-idx.cc,
-	tc-rep-ass.cc, and tc-pre.cc.
-
-	* src/tc-rep-idx.cc, src/tc-rep-ass.cc: New files, extracted from
-	tc-rep.cc to make compilation of tc-rep stuff faster and require
-	less memory.
-
-	* src/variables.cc (Fwhos): Correctly insert "-long" into arg list
-	for Fwho.
-
-Mon Sep 26 12:59:55 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* test/Makefile.in (OCTAVE_SCRIPT_PATH): Append `//' for recursive
-	searching.
-
-Fri Sep 23 07:53:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/plot/bar.m: Don't return values if nargout == 0.
-	* scripts/plot/hist.m: Likewise.
-	* scripts/plot/stairs.m: Likewise.
-
-	* src/tree-plot.cc (Fishold): New function.
-	(plot_line_count, parametric_plot, clear_before_plotting):
-	Declare static.
-
-	* src/f-fft.cc (Ffft): Handle row vector as a special case.
-	* src/f-ifft.cc (Fifft): Ditto.
-
-Thu Sep 22 13:20:53 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/help.cc (print_symbol_type): New function, extracted from Fwhich.
-	(Fwhich): Use it.
-	(Fhelp): Use it to print type info before help message.
-
-	* src/dynamic-ld.cc: Hide all DLD-specific functions behind
-	#ifdef WITH_DLD.
-
-	* scripts/startup: New directory.
-	* scripts/startup/Makefile.in: New file.
-	* scripts/startup/octaverc: New file.  Don't overwrite existing
-	file when nstalling.
-	* configure.in: Generate Makefile in scripts/startup.
-	* scripts/Makefile.in (SUBDIRS): Add startup.
-	* src/defaults.h.in (OCTAVE_STARTUPFILEDIR): New macro.
-	* src/variables.cc (get_site_defaults): Look for octaverc in
-	OCTAVE_STARTUPFILEDIR.
-
-	* configure.in (fcnfiledir): Make it end in `//'.
-
-	* src/error.cc (Ferror): Correct indexing error.
-
-	* src/Map.h, src/Map.cc: New files implementing associative arrays.
-	* src/Makefile.in: Include them in the list of files to distribute
-	and compile.
-
-Wed Sep 21 09:50:19 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (DISTSUBDIRS): Add dld to the list.
-
-	* scripts/plot/hist.m: New function file.
-
-	* src/tc-rep.cc (TC_REP::do_matrix_index (tree_constant,
-	tree_constant): For case of scalar as first arg, move call to
-	index check to the TC_REP::do_matrix_index (int, tree_constant)
-	function.
-	(TC_REP::do_matrix_index (int, tree_constant): Be compatible with
-	Matlab for indexing of the form row_vector (0, :).
-	(TC_REP::do_matrix_index (tree_constant, int): Likewise, for
-	indexing of the form col_vector (:, 0).
-	(TC_REP::do_matrix_assignment): Similar changes for assignment.
-
-Tue Sep 20 17:48:39 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/parse.y (return_list, return_list1): New nonterminals.
-	Rename from func_def1a.  Handle variable number of return values.
-	* src/tree-expr.h (tree_function::vr_list): New field.
-	* src/tree-expr.cc (delete_vr_list): New function.
-	(tree_function::octave_vr_val, tree_function::takes_var_return):
-	New functions, for variable return lists.
-	(tree_function::define_ret_list, tree_function::eval): Handle vr_list.
-	(Fvr_val): New function.
-	* src/tree-misc.h (tree_va_return_list): New list class.
-	* src/tree-misc.cc (tree_parameter_list::convert_to_const_vector):
-	Take pointer to tree_va_return_list as arg, and append the values
-	found there.
-
-	* src/arith-ops.cc (mx_stupid_bool_op): Correctly handle empty
-	matrices for == and != ops.
-
-	* src/variables.cc (Fis_global): Check args(0), not args(1).
-	(Fexist): Likewise.
-	(install_builtin_mapper): Set nargin_max to 1, not 2.
-
-	* src/dynamic-ld.cc (octave_dld_init): Make raw program name
-	absolute before calling dld_find_executable.
-
-	* src/octave.cc (initialize_error_handlers): New function.
-	(main): Call init_user_prefs and initialize_error_handlers.
-	Rearrange order of calls to initialization functions.
-
-	* src/user-prefs.cc (init_user_prefs): New function.
-
-	* src/data.cc (map): Correct condition for assert ().  Correct
-	handling of empty args.
-
-	* src/f-lsode.cc src/f-dassl.cc src/f-quad.cc src/f-npsol.cc
-	src/f-fsolve.cc: Pass correct number of args to
-	takes_correct_nargs ().
-	* src/variables.cc (takes_correct_nargs): Use %s, not %c in format
-	string.
-
-	* src/f-ifft2.cc src/f-expm.cc src/f-det.cc src/f-svd.cc
-	src/f-syl.cc src/f-schur.cc src/f-qzval.cc src/f-qr.cc
-	src/f-pinv.cc src/f-lu.cc src/f-log.cc src/f-inv.cc src/f-hess.cc
-	src/f-eig.cc src/f-chol.cc src/f-balance.cc src/f-lsode.cc
-	src/f-dassl.cc src/f-quad.cc src/f-npsol.cc src/f-fsolve.cc:
-	Correctly handle return value from empty_arg ().
-	* src/utils.cc (empty_arg): Clarify usage, correct return value if
-	arg is empty but no message is printed.
-
-	* src/Makefile.in (dist): Delete builtins.cc too.
-
-	* configure.in (DYNAMIC_LD_OBJ): Delete.
-	* src/Makefile.in (OBJECTS): Don't substitute DYNAMIC_LD_OBJ.
-	Always include dynamic-ld.o.
-
-	* configure.in: Generate Makefile in scripts/elfun and
-	scripts/specfun.
-
-	* Makeconf.in (version): Use `:=' and `$(shell )', not just `='
-	and backticks, so we only extract the version number once.
-
-Mon Sep 19 09:04:30 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/tc-rep.h (represent_strings_with_doubles): New field in
-	tree_constant_rep class.
-
-	* tree-misc.cc (tree_argument_list::convert_to_const_vector):
-	Don't allocate extra arg for function name.
-	* sysdep.cc, pr-output.cc, input.cc, file-io.cc, error.cc,
-	tc-rep.cc, tree-expr.cc, f-svd.cc, f-sort.cc, f-schur.cc,
-	f-rand.cc, f-qzval.cc, f-quad.cc, f-qr.cc, f-qpsol.cc, f-pinv.cc,
-	f-npsol.cc, f-minmax.cc, f-lu.cc, f-lsode.cc, f-log.cc, f-inv.cc,
-	f-ifft2.cc, f-ifft.cc, f-hess.cc, f-givens.cc, f-fsolve.cc,
-	f-fft2.cc, f-fft.cc, f-expm.cc, f-eig.cc, f-det.cc, f-dassl.cc,
-	f-colloc.cc, f-chol.cc, f-balance.cc, f-syl.cc, variables.cc,
-	tree-misc.cc, data.cc, octave.cc, utils.cc, defun-int.h:
-	Change meaning and usage of nargin and args.length() to cope with
-	above change.  This makes nargin mean the same thing in built-in
-	functions as it does in M-files.
-
-Sat Sep 17 09:29:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* scripts/general/nargchk.m: New function.
-
-Fri Sep 16 08:48:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makeconf.in (FLIB_LIST, FLIB_PATH, CXXLIBS, CXXLIB_LIST,
-	CXXLIB_PATH): Set these.
-
-	* cxxlibs.sh: New file.
-	* configure.in: Use it to determine extra C++ libraries to link
-	to.  Use sed magic to extract list of libraries and directories
-	from FLIBS and CXXLIBS.
-	* Makefile.in: (DISTFILES): Include cxxlibs.sh.
-
-	* configure.in: Change AC_VERBOSE messages to match
-	autoconf-generated messages.
-
-	* src/dynamic-ld.cc (dld_octave_resolve_reference): Search library
-	path for list of files to link.
-
-	* src/utils.cc (pathstring_to_vector): Un-#if 0 it.
-
-	* Makefile.in: Install liboctdld.a if not linking to it.
-	(defaults.h): Substitute FLIB_LIST, FLIB_PATH, CXXLIB_LIST,
-	CXXLIB_PATH.
-
-Thu Sep 15 09:31:29 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makeconf.in (LD_STATIC_FLAG): Actually substitute LD_STATIC_FLAG.
-	(ALL_LDFLAGS): Include it here.
-
-	* configure.in: Check for signgam declaration in math.h
-	* acconfig.h: Add #undef for SIGNGAM_DECLARED.
-	* src/mappers.h: Provide our own declaration of signgam if
-	HAVE_LGAMMA but not SIGNGAM_DECLARED.
-
-Wed Sep 14 11:28:09 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/dynamic-ld.cc (mangled_octave_builtin_name,
-	mangle_octave_oct_file_name, load_octave_builtin,
-	load_octave_oct_file, init_dynamic_linker): New functions.
-	[WITH_DLD] (octave_dld_init, dld_octave_resolve_reference,
-	dld_octave_builtin, dld_octave_oct_file): New functions to handle
-	details of dynamic linking using dld.
-
-	* src/variables.cc (load_fcn_from_file) [WITH_DLD]: Handle looking
-	for .oct file to link at run time.
-
-	* src/tree-expr.cc (tree_builtin::tree_builtin): Always init my_name.
-	(tree_builtin::eval): If no definition, try to load one using
-	load_octave_builtin().
-
-	* src/octave.cc (main): Initialize dynamic linking here.
-
-	* src/defun-int.h (DEFINE_FUN_STRUCT, DEFINE_FUN_STRUCT_FUN):
-	New macros.
-	* src/defun-dld.h (DEFUN_DLD_BUILTIN): Rename from DEFUN_DLD and
-	handle case of WITH_DLD && OCTAVE_LITE && MAKE_BUITLINS.
-	(DEFUN_DLD): Use this for external user-supplied functions that
-	are intended to be dynamically linked.
-
-	* configure.in: Handle --enable-lite-kernel.  Call AC_SUBST for
-	use_dld and lite_kernel.  Define LIBOCTDLD unless doing dynamic
-	linking and small kernel requested.
-	* acconfig.h: Add #undefs for OCTAVE_LITE and SMART_PUTENV.
-	* Makeconf.in: Define WITH_DLD from @use_dld@ and OCTAVE_LITE from
-	@lite_kernel@.
-
-	* src/octave.cc (Fsystem): Rename from shell_cmd.
-	(Fshell_cmd): Define as alias to Fsystem.
-
-Mon Sep 12 20:19:20 1994  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* src/mappers.cc: Include error.h and math.h.
-
-Sat Sep 10 11:49:11 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makefile.in: Clean up rules for making distributions.
-	(DISTDIRS): Distribute kpathsea
-
-Fri Sep  9 08:46:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/dMatrix.cc (pseudo_inverse): New function.
-	* liboctave/CMatrix.cc (pseudo_inverse): New function.
-	* src/f-pinv.cc: New file, for pinv().
-	* src/Makefile.in (DLD_SRC): Add f-pinv.cc.
-	(DLD_OBJ): Add f-pinv.o.
-	* scripts/linear-algebra/pinv.m: Delete.
-
-	* configure.in: Define and substitute $imagepath.
-	* src/Makefile.in: Substitute OCTAVE_IMAGEPATH.
-	* src/defaults.h.in: Add OCTAVE_IMAGEPATH.
-	* src/variables.cc (install_builtin_variables): Define IMAGEPATH.
-	* src/user-prefs.cc (image_path): New function.
-	* Makeconf.in (imagepath): substitute it.
-
-	* src/octave.cc (initialize_globals): Ensure that $archlibdir is
-	in the user's PATH.
-
-	* utils.cc (search_path_for_file, Ffile_in_path): New functions.
-
-	* configure.in: Append `//' to $fcnfiledir, for recursive
-	searching.
-	(AC_OUTPUT): Edit makefiles in script subdirectories too.
-
-	* scripts: Regroup function files in the following directories,
-	each with its own Makefile.in:
-
-	   image           plot        signal          control
-	   linear-algebra  polynomial  special-matrix  general
-	   miscellaneous   set         statistics
-
-	* src/help.cc (simple_help): Use kpathsea functions to find files
-	in path.
-	* src/utils.cc (get_fcn_file_names): Likewise.
-	(pathstring_to_vector): #if 0 out.
-
-Thu Sep  8 16:59:42 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Makefile.in (OCTAVE_LIBS): Include ../libkpathsea.a.
-	* configure.in: Include configure stuff for kpathsea here too.
-	* Makefile.in (kpathsea): New target.
-	* src/utils.cc (file_in_path): Use kpathsea function instead of
-	doing our own searching.
-	* kpathsea/Makefile.in (lib): Define as ../libkpathsea.a, not just
-	kpathsea.a.
-
-Wed Sep  7 09:39:20 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/user-prefs.cc (check_str_pref): Fix comment.
-
-	* src/utils.cc (empty_arg): Check flag == 0, not is_empty > 0.
-
-	* src/f-fft2.cc (Ffft2): New file and function.
-	* src/f-ifft2.cc (Fifft2): Likewise.
-	* src/fft2.m, src/ifft2.m: Delete.
-
-	* src/f-fft.cc (Ffft): Handle second arg.  Depending on value of
-	propagate_empty_matrices, return empty matrix for empty arg.
-	* src/f-ifft.cc (Fifft): Likewise.
-
-	* liboctave/CMatrix.cc (fourier2d, ifourier2d): New functions.
-	* liboctave/dMatrix.cc (fourier2d, ifourier2d): New functions.
-
-	* src/tree-misc.cc (eval (int, int)): New function.
-	* src/octave.cc (eval_string, Feval): Handle multiple output args.
-
-	* src/error.cc (suppress_octave_error_messages): New global.
-	(error): Check it to see if messages should be printed.
-	* src/octave/cc (Feval): Set it if `catch' arg is supplied.
-
-	* src/octave.cc (Feval): Handle second `catch' arg.
-
-	* src/load-save.cc (read_mat_file_header): Init swap to zero.
-
-	* doc/octave.1: New simple man page.
-	* doc/Makefile.in: Distribute and install it.
-
-	* src/variables.cc (Fclear): Handle -x option for exclusive clear.
-
-Tue Sep  6 16:00:34 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/load-save.cc (save_mat_binary_data): New function.
-	(do_save): Handle LS_MAT_BINARY.
-	(Fsave): Handle -mat-binary.
-	(Changes from G. Beyerle <gbeyerle@AWI-Potsdam.DE>.)
-
-	* src/variables.cc (subs_octave_home, octave_arch_lib_dir):
-	New functions.
-	(octave_home, octave_info_dir, octave_lib_dir, default_path):
-	Fix for new directory organization.
-
-	* src/tree-expr.h (tree_multi_val_ret): New class to serve as a
-	base for objects that can produce more than one value when
-	evaluated.
-	(tree_fvc, tree_index_expression, tree_multi_assignment_expression):
-	Use it as a base.
-
-	* src/parse.y (make_multi_val_re): New function.
-	(expression): Use it to construct multiple value assignments.
-
-	* configure.in, Makefile.in, Makeconf.in, src/defaults.h.in:
-	Revamp directory structure used for installed versions of Octave.
-
-	* src/f-schur.cc (Fschur): Correct argument count in error message.
-
-	* src/octave.cc (Fcomputer): New function.
-	* scripts/computer.in: Delete.
-	* scripts/Makefile.in: Don't edit or distribute computer.in.
-
-Thu Sep  1 09:02:06 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/variables.cc (install_builtin_variables): New builtin
-	variable, OCTAVE_VERSION.
-
-Tue Aug 30 17:18:14 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-expr.cc: Include string.h
-	(tree_matrix::eval): Fix handling of strings to work as in 1.0.
-
-Mon Aug 29 14:55:14 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.l: Handle ".+" and ".-" too.
-
-	* src/dirfns.cc (dir_acess, exists, gen_tempname, tempnam): New
-	functions from glibc.
-	* src/utils.cc (octave_tmp_file_name): Use tempnam.
-	(choose_temp_base_try): Delete.
-	* configure.in: Check for tempnam.
-
-	* src/load-save.cc (Fsave): Only write floating point format if
-	doing binary save.
-
-	* liboctave/Array.cc (operator =): Check to see if assignment is
-	to same object.
-
-Sun Aug 28 23:32:59 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/CollocWt.cc (CollocWt::init): Call delete [] on vectors.
-	* liboctave/NPSOL.cc (NPSOL::minimize): Eliminate some memory leaks.
-	* liboctave/QPSOL.cc (QPSOL::minimize): Likewise.
-	* liboctave/NLEqn.cc (NLEqn::solve): Likewise.
-
-Thu Aug 25 09:27:04 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* info/session.c (info_get_input_char): Don't exit immediately if
-	we see EOF on the input stream.
-
-	* scripts/kurtosis.m, scripts/skewness.m: Update from KH.
-
-Wed Aug 24 00:19:49 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* dld/Makefile.in, scripts/Makefile.in, doc/Makefile.in,
-	readline/Makefile.in, info/Makefile.in, libcruft/Makefile.in,
-	liboctave/Makefile.in, src/Makefile.in (INSTALL, INSTALL_PROGRAM,
-	INSTALL_DATA): Define here.
-	* Makeconf.in: Not here.
-
-	* src/tree-plot.cc (send_to_plot_stream): Handle
-	user_pref.automatic_replot.
-	* src/variables.cc (install_builtin_variables):
-	Add DEFVAR for automatic_replot.
-	* src/user-prefs.cc (automatic_replot): New function.
-	* src/user-prefs.h (user_preferences): Add automatic_replot to the
-	list.
-
-	* src/data.cc (Fatan2): Make work for mixed scalar and Matrix args.
-	(map): New functions for two arg mappers (like atan2).
-
-	* src/f-fsqp.cc: Don't surround everything in FSQP_MISSING, so
-	that trying to use fsqp will result in a message about fsqp not
-	being freely redistributable.
-	* src/f-npsol.cc: Likewise, for NPSOL_MISSING.
-	* src/f-qpsol.cc: Likewise, for QPSOL_MISSING.
-
-Tue Aug 23 12:56:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-expr.cc (tree_identifier::eval): Don't call delete for
-	ans_id.  The destructor for tree_simple_assignment_expression does
-	this now.
-
-	* src/Makefile.in (%.def : %.cc): Use sed, not awk.
-	(realclean, distclean, local-dist, dist): Delete .d and .def files.
-
-	* liboctave/Array.h (DiagArray::Proxy): Make compilation
-	conditional on gcc version, not just _AIX.
-
-	* src/utils.cc (octave_tmp_file_name, choose_temp_base_try): New
-	functions, stolen from GCC.  If HAVE_MKTEMP is not defined, just
-	call tmpnam; otherwise, try harder to please.
-	* src/tree-plot.cc (save_in_tmp_file): Use it, instead of calling
-	tmpnam() directly.
-	* src/file-io.cc (do_scanf): Likewise.
-	* src/octave-hist.cc (mk_tmp_hist_file): Likewise.
-	* configure.in: Check for mktemp.
-
-	* src/tree-const.h (is_matrix_type, is_scalar_type): Make private.
-	* src/tc-rep.h (is_matrix_type, is_scalar_type): Likewise.
-
-	* src/tc-rep.h (force_numeric, make_numeric,
-	make_numeric_or_magic, make_numeric_or_range_or_magic): Make
-	private.
-	(make_numeric_or_range): #if 0 out.
-
-	* src/utils.cc (empty_arg): Correctly set return value.
-
-	* src/arith-ops.cc: Don't include setjmp.h.
-	* src/utils.cc: Surround setjmp.h with extern "C".
-	* src/octave.cc: Likewise.
-
-	* src/sighandlers.cc (octave_new_handler): New function.
-	(install_signal_handlers): Call it.
-
-	* src/f-qzval.cc (Fqzvalue): Don't call make_numeric for args.
-	Check error state after attempting to extract values.  Simplify
-	where possible.
-	* src/f-colloc.cc (Fcolloc): Likewise.
-	* src/f-rand.cc (Frand): Likewise.
-	* src/f-sort.cc (Fsort): Likewise.
-	* src/f-find.cc (Ffind): Likewise.
-	* src/f-minmax.cc (Fmin, Fmax): Likewise.
-	* src/f-fft.cc (Ffft): Likewise.
-	* src/f-ifft.cc (Fifft): Likewise.
-	* src/f-svd.cc (Fsvd): Likewise.
-	* src/f-inv.cc (Finv): Likewise.
-	* src/f-det.cc (Fdet): Likewise.
-	* src/f-eig.cc (Feig): Likewise.
-	* src/f-lu.cc (Flu): Likewise.
-	* src/f-hess.cc (Fhess): Likewise.
-	* src/f-qr.cc (Fqr): Likewise.
-	* src/f-givens.cc (Fgivens): Likewise.
-	* src/f-syl.cc (Fsyl): Likewise.
-	* src/f-log.cc (Flog): Likewise.
-	* src/f-expm.cc (Fexpm): Likewise.
-	* src/f-balance.cc (Fbalance): Likewise.
-	* src/f-schur.cc (Fschur): Likewise.
-	* src/f-chol.cc (Fchol): Likewise.
-	* src/f-npsol.cc (Fnpsol, npsol_options): Likewise.
-	* src/f-fsolve.cc (Ffsolve, fsolve_options): Likewise.
-	* src/f-dassl.cc (Fdassl, dassl_options): Likewise.
-	* src/f-lsode.cc (Flsode, lsode_options): Likewise.
-	* src/f-quad.cc (Fquad, quad_options): Likewise.
-	* src/tree-expr.cc (tree_matrix::eval): Likewise, while building
-	matrix.
-	(tree_colon_expression::eval): Likewise, for elements of range.
-	* src/variables.cc (is_valid_function, Fis_global, Fexist):
-	Likewise.
-	* src/sysdep.cc (Fgetenv, Fpause): Likewise.
-	* src/octave.cc (eval_string, Fshell_cmd): Likewise.
-	* src/input.cc (get_user_input): Likewise.
-	* src/file-io.cc (return_valid_file, fopen_file_for_user,
-	fgets_internal, fseek_internal, process_printf_format, do_printf,
-	do_scanf, fread_internal, fwrite_internal, feof_internal):
-	Likewise.
-
-	* src/tc-rep.cc (TC_REP::string_value): Call error() and return 0
-	instead of crashing if not string_constant.
-
-	* src/file-io.cc (fopen_file_for_user): Take string as first arg,
-	not tree_constant.  Change callers.
-	(fgets_internal, fseek_internal): Correct check for int arg.
-	(process_scanf_format): Use isspace instead of checking directly
-	(and incorrectly) for white space characters.
-
-	* src/tree-expr.cc (tree_matrix::eval, tree_unary_expression::eval,
-	tree_binary_expression::eval, tree_colon_expression::eval,
-	tree_simple_assignment_expression::eval ): Eliminate uneccesary
-	conversions to and from Octave_object/tree_constant.
-
-Mon Aug 22 18:35:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/data.cc (Fatan2): New function.
-
-	* src/data.cc (get_dimensions): Don't call make_numeric for args.
-	Check error state after attempting to extract values.
-
-Fri Aug 19 08:28:24 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-misc.h (tree_parameter_list::tree_parameter_list)):
-	Initialize marked_for_varargs to zero.
-
-	* src/load-save.cc: Add float variants of the conversion routines.
-	(LS_DO_READ): Add swap parameter and only swap bytes if it is true.
-	(read_doubles): Pass swap to LS_DO_READ.  Handle float data.
-	(LS_DO_WRITE): Copy data to tmp buffer to avoid destroying data.
-	(do_double_format_conversion): Rename from do_float_format_conversion.
-	(do_float_format_conversion): New function to handle conversion
-	for float data.
-	(read_mat_binary_data): Use read_doules for all cases.  Handle
-	float data.
-	(too_large_for_float): New function.
-	(save_binary_data): Save data format for scalars and ranges too.
-	(read_binary_data): Read data format for scalars and ranges too.
-	(do_save, save_vars): New arg, save_as_floats.
-	(Fsave): New option, -float-binary.
-
-	* src/utils.cc (empty_arg): New function.
-	* src/f-balance.cc (Fbalance): Use it to simplify handling of
-	empty arguments.
-	* src/f-chol.cc (Fchol): Likewise.
-	* src/f-det.cc (Fdet): Likewise.
-	* src/f-eig.cc (Feig): Likewise.
-	* src/f-expm.cc (Fexpm): Likewise.
-	* src/f-fft.cc (Ffft): Likewise.
-	* src/f-hess.cc (Fhess): Likewise.
-	* src/f-ifft.cc (Fifft): Likewise.
-	* src/f-inv.cc (Finv): Likewise.
-	* src/f-log.cc (Flogm, Fsqrtm): Likewise.
-	* src/f-lu.cc (Flu): Likewise.
-	* src/f-qr.cc (Fqr): Likewise.
-	* src/f-schur.cc (Fschur): Likewise.
-	* src/f-svd.cc (Fsvd): Likewise.
-
-	* src/tc-rep.cc (tupe_as_string): Move here.
-	* src/tree-const.cc: From here.
-
-	* src/gripes.cc (gripe_invalid_conversion): New function.
-
-Thu Aug 18 21:02:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/(print_empty_matrix): New function.
-	* src/pr-output.cc (octave_print_internal): Use it to print empty
-	matrices.
-	* src/tc-rep.cc (TC_REP::print_code, TC_REP::print): Rely on
-	octave_print_internal() to handle printing empty matrices.
-
-	* src/pr-output.cc (octave_print_internal (all variants)):
-	New arg, pr_as_read_syntax.  If nonzero, print the value in a form
-	that Octave can parse.	Declare os as ostream&, not ostrstream&.
-	* src/tc-rep.cc (TC_REP::print_code): Handle all types, not just
-	real and imaginary constants.
-	* src/help.cc (Ftype): Also print values of variables.
-
-Wed Aug 17 08:46:44 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/octave.cc (Fshell_cmd): Return output if nargout > 0 or
-	nargin > 2, otherwise, just send output to the pager.
-
-	* src/mappers.cc (xerf, xerfc, xgamma, xlgamma): New functions.
-	Put preprocessor conditionals here.
-	(install_mapper_functions): Not here.
-
-Tue Aug 16 09:55:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check for erf, erfc, and lgamma.
-	* src/mappers.cc (erf, erfc, lgamma): New mappers.
-	* src/mappers.h (Mapper_fcn): Add new field `name'.
-	* src/variables.cc (install_builtin_mapper): Save the name.
-	* src/tc-rep.cc (TC_REP::mapper): Don't crash if a mapper function
-	is missing.
-
-	* src/tc-rep-1.cc (warn_invalid_conversion): New function.
-	* src/gripes.cc (gripe_invalid_conversion): New function.
-
-	* src/parse.y (list1, parse_error): New non-terminals.
-	(list): Use them.
-	* src/lex.l: Return LEXICAL_ERROR instead of calling
-	jump_to_top_level.
-
-	* liboctave/Range.cc (matrix_value): New function.
-	* src/tc-rep.cc (TC_REP::matrix_value): Use it.
-
-	* src/tree-const.h (to_matrix, to_vector, to_scalar): Delete
-	unecessary functions.
-	* src/tc-rep.cc (TC_REP::to_matrix, TC_REP::to_vector,
-	TC_REP::to_scalar): Likewise.  Change all callers to use
-	matrix_value, vector_value, and scalar_value instead.
-
-	* src/tree-const.cc (TC_REP::matrix_value): If at all possible,
-	produce a matrix from the current constant.  Otherwise, print an
-	error message.  Don't abort or jump to the top level.
-	(TC_REP::scalar_value, TC_REP::complex_scalar_value,
-	TC_REP::vector_value, TC_REP::complex_vector_value,
-	TC_REP::complex_matrix_value): Likewise, for appropriate types.
-
-	* src/utils.cc (empty_arg): New function.
-	* src/f-svd.cc (Fsvd): Use it.	Don't call make_numeric; rely on
-	value functions to do conversion.
-
-	* src/load-save.cc (Fload): Handle -list and -verbose.
-
-Mon Aug 15 09:32:57 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-rep.cc (TC_REP): New define, so we don't have to write
-	tree_constant::tree_constant_rep:: everywhere.
-	* src/tree-const.h (class tree_constant): Nest tree_constant_rep
-	class inside tree_constant class by including tc-rep.h here.
-	* src/tc-rep.h: Don't include any other files, delete forward
-	class declarations.
-
-	* src/tc-rep.h (constant_type): Make private.
-
-	* src/parse.y (arg_list): Use tree_constant::magic_colon in
-	constructor call, not tree_constant_rep::magic_colon.
-	* src/tree-const.h (tree_constant::tree_constant
-	(tree_constant::magic_colon)): Convert arg from
-	tree_constant_rep::constant_type.
-
-	* src/f-svd.cc (Fsvd): Simplify.
-
-	* src/tree-expr.cc (any_arg_is_magic_colon): Don't use values from
-	tree_constant_rep::constant_type enum.
-	(tree_matrix::eval): Likewise.
-	* src/tree-misc.cc (tree_parameter_list::define_from_arg_vector,
-	tree_if_clause::eval):	Likewise.
-	* src/tree-cmd.cc (tree_while_command::eval,
-	tree_for_command::eval): Likewise.
-	* src/symtab.cc (symbol_record_info::symbol_record_info): Likewise.
-	* src/f-colloc.cc (Fcolloc): Likewise.
-	* src/f-npsol.cc (npsol_objective_function): Likewise.
-	* src/f-chol.cc (Fchol): Likewise.
-	* src/f-det.cc (Fdet): Likewise.
-	* src/f-eig.cc (Feig): Likewise.
-	* src/f-expm.cc (Fexpm): Likewise.
-	* src/f-fft.cc (Ffft): Likewise.
-	* src/f-find.cc (Ffind): Likewise.
-	* src/f-hess.cc (Fhess): Likewise.
-	* src/f-ifft.cc (Fifft): Likewise.
-	* src/f-inv.cc (Finv): Likewise.
-	* src/f-log.cc (Flog): Likewise.
-	* src/f-lu.cc (Flu): Likewise.
-	* src/f-minmax.cc (Fmin, Fmax): Likewise.
-	* src/f-qr.cc (Fqr): Likewise.
-	* src/f-rand.cc (rand): Likewise.
-	* src/f-schur.cc (schur): Likewise.
-	* src/f-sort.cc (Fsort): Likewise.
-	* src/f-svd.cc (Fsvd): Likewise.
-
-	* src/f-lu.cc (Flu): Handle case of nargout == 0 the same as
-	nargout == 1.
-
-	* src/tree-const.h (force_numeric): Don't return type info.
-	* src/tc-rep.cc (tree_matrix::eval): Ditto.
-	* src/tree-expr.cc (tree_matrix::eval): Don't use return value
-	from tree_constant::force_numeric().
-
-	* src/tree-const.h (is_magic_colon): New function.
-	* src/tc-rep.h (is_magic_colon): New function.
-
-	* src/load-save.cc (ascii_save_type): New function.
-	(save_binary_data, save_ascii_data, save_three_d): Don't use
-	values from tree_constant_rep::constant_type enum. Fail if write
-	is unsuccessful.  Fail but don't panic if type is unrecognized.
-	(save_vars): Check error state after call to do_save().
-
-	* src/tc-rep.cc (isstr): Delete, since we have is_string.
-	* src/tree-const.h (isstr): Ditto.
-	* src/data.cc (Fisstr): Use is_string(), not isstr().
-
-Sun Aug 14 16:12:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/load-save.cc (save_type): Add LS_U_INT, LS_CHAR and LS_FLOAT.
-	(get_save_type): Handle them.
-	(read_doubles, write_doubles): Likewise.
-
-	* src/load-save.cc (get_floating_point_format): New function.
-	(read_mat_binary_data, read_binary_file_header): Use it.
-
-	* src/lex.l: Combine {D}+\.{D}*{EXPON}?{Im} and {D}+{EXPON}?{Im}
-	patterns into the single pattern {D}+\.?{D}*{EXPON}?{Im}
-	Likewise, combine {D}+\.{D}*{EXPON}? and {D}+{EXPON}? into the
-	single pattern {D}+\.?{D}*{EXPON}?
-	({D}+/\.[\*/\\^']): New pattern to force expressions like `1./m'
-	to be parsed the same as `1 ./ m'.
-
-	* src/tree-expr.cc (do_lookup): Correctly set script_file_executed.
-
-	* src/octave.cc (long_opts): Add --silent as an alias for --quiet,
-	and --ignore-init-file as an alias for --norc.
-
-	* src/octave.cc (verbose_usage): Exit successfully to conform to
-	the GNU coding standards.
-
-Sat Aug 13 11:06:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/dirfns.cc (chdir): New alias for cd.
-
-	* src/lex.l (")"): Set convert_spaces_to_comma.
-
-	* src/*.cc: Use tree_constant::is_string(), not
-	tree_constant::is_string_type().
-
-	* src/f-balance.cc (Fbalance): Use is_string() rather than
-	checking const_type() against tree_constant_rep::string_constant.
-
-	* src/tc-rep.h (tree_constant_rep::is_string_type): Delete.
-	* src/tree-const.h (tree_constant::is_string_type): Delete.
-
-	* src/Makefile.in (%.def : %.cc): Complain if generated file is
-	empty.
-
-	* configure.in (gcc_version): Set LDFLAGS to -g, not "-g -O".
-
-	* src/lex.l (looks_like_bin_op): Also return true for things like
-	[ 1+ 2 ].
-
-	* src/data.cc (Feye, Fones): With no args, return 1.0.
-	(Fzeros): With no args, return 0.0.
-
-	* src/Makefile.in (XALL_CXXFLAGS): ALL_CXXFLAGS without
-	-fextternal-templates.
-	(%.def : %.cc): Use it instead of ALL_CXXFLAGS.
-
-	* configure.in: Don't use -O for compiling float-type.c.
-
-	* libcruft/misc/Makefile.in (XCC): Use patsubst to delete any -O#
-	flags, not just -O.
-
-Fri Aug 12 18:20:35 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	Changes for binary load/save, and reading .mat files:
-
-	* src/variables.cc (is_globally_visible): Declare extern, not
-	static.
-
-	* src/user-prefs.cc (sv_default_save_format): New function.
-	* src/user-prefs.h (default_save_format): New field in
-	user_preferences struct.
-	src/variables.cc (install_builtin_variables): Add DEFVAR for
-	default_save_format.
-
-	* src/tc-rep.h (tree_constant_rep::is_unknown,
-	tree_constant_rep::is_scalar, tree_constant_rep::is_matrix,
-	tree_constant_rep::is_complex_scalar,
-	tree_constant_rep::is_complex_matrix,
-	tree_constant_rep::is_string, tree_constant_rep::is_range):
-	New functions.
-
-	* src/tree-const.h (tree_constant::is_unknown,
-	tree_constant::is_scalar, tree_constant::is_matrix,
-	tree_constant::is_complex_scalar, tree_constant::is_complex_matrix,
-	tree_constant::is_string, tree_constant::is_range):
-	New functions.
-
-	* src/tc-rep.cc (tree_constant_rep::save,
-	tree_constant_rep::save_three_d): Move to load-save.cc and convert
-	to nonmember functions.
-
-	* src/tree-const.h (tree_constant::save,
-	tree_constant::save_three_d): Delete functions.
-
-	* src/tree-plot.cc (save_in_tmp_file): Call nonmember functions
-	save_ascii_file and save_three_d instead of tree_constant class
-	member functions.
-
-	* src/symtab.cc (symbol_table::glob): New function.
-	(symbol_table::save, symbol_record::save, symbol_def::save):
-	Delete unneeded functions.
-
-	* src/load-save.cc: New file, for load/save related functions
-	extracted from src/variables.cc and src/tc-rep.cc.
-
-	* src/error.cc (verror): Don't print name if it is null.
-
-Tue Aug  9 14:31:43 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/file-io.cc (process_printf_format): Use
-	tree_constant::is_scalar_type() and is_string_type() functions
-	instead of comparing directly with elements of the
-	tree_constant_rep::constant_type enum.
-	* src/variables.cc (builtin_real_scalar_variable): Likewise.
-	(install_loaded_variable): Likewise.
-
-	* src/tree-plot.cc (open_plot_stream): New function.
-	(send_to_plot_stream): Use it.  Do our own check for replot with
-	nothing to plot.
-	(tree_plot_command::eval): Open plot stream before doing anything.
-
-	* src/data.cc (check_dimensions): When changing negative
-	dimensions to zero, handle nr and nc separately.
-
-Mon Aug  8 20:18:17 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* variables.cc (is_valid_fcn): Use lookup_by_name() instead of
-	looking in the global symbol table directly.
-
-	* variables.cc (load_variable): Move code here.
-	* src/tc-rep.cc (tree_constant_rep::load): From here.
-	* src/tree-const.h (tree_constant::load): Delete.
-
-	* src/tree-plot.cc: Derive classes from tree_print_code and
-	implement print_code() member functions.
-
-	* src/tree-plot.cc (subplot_list::print): New function.
-	(tree_plot_command::print): Use it, and don't crash if plot_list
-	is null.
-
-	* scripts/axis.m: New function file.
-
-Sun Aug  7 17:06:16 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check for size of short, int, and long.
-
-	* float-type.c: New file.
-	* configure.in: Use it to determine the native floating point
-	format.
-	* Makefile.in: Add it to the list of files to distribute.
-	* acconfig.h (IEEE_BIG_ENDIAN, IEEE_LITTLE_ENDIAN, VAX_D_FLOAT,
-	VAX_G_FLOAT): Add #undefs.
-
-Sat Aug  6 18:23:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* config.guess: Update with new copy from gcc 2.6.0.
-
-	* src/*.cc, src/*.h, src/*.l, src/*.y: Eliminate need for tree.h.
-	* src/Makefile.in (INCLUDES): Delete it from the list.
-
-	* src/token.cc (token::token (double)): Handle saving original
-	text of constants for later use by print_code() functions.
-	(token::~token): Delete original text.
-	(token::text_rep): New function.
-	* src/lex.l: Save original text for NUM and IMAG_NUM tokens.
-	* src/parse.y: Likewise.
-
-	* src/parse.y (yyerror): Use the pager.
-
-	* src/tree-base.h (tree_print_code): New base class for trees and
-	lists of trees.
-	(tree): Derive from tree_print_code.
-	* src/tree-base.cc: New file, for tree_print_code functions, and
-	for initializing tree_print_code static members.
-	* src/tree-const.cc, src/tc-rep.cc, src/tree-plot.cc,
-	src/tree-expr.cc, src/tree-cmd.cc (all tree classes):
-	Provide print_code() member function.
-	* src/tree-misc.cc: Also derive list classes from tree-base.h and
-	provide print_code() member functions.
-
-	* src/help.cc (Ftype, Fwhich): New functions.
-
-	* src/octave-hist (do_history): Send history output through the
-	pager.
-
-	* src/variables.cc (do_who, Fwhos): New functions.
-
-	* src/tree-expr.h (tree_expression::in_parens): Declare here.
-	(tree_simple_assignment_expression::in_parens): Not here.
-	* src/parse.y (maybe_warn_assign_as_truth_value): Eliminate cast.
-
-	* src/variables.cc (load_fcn_from_file, lookup, lookup_by_name):
-	New functions, extracted from tree_identifier class.
-	(gobble_leading_whitespace, is_function_file, parse_fcn_file):
-	Move here from tree-expr.cc.
-	* src/help.cc (Fhelp): Use lookup_by_name so that looking up
-	symbols is handled in a consistent way.
-
-	* tree-expr.cc (tree_unary_expression::oper,
-	tree_binary_expression::oper, tree_prefix_expression::oper,
-	tree_postfix_expression::oper): New functions.
-
-	* tc-rep.cc (valid_scalar_indices): Define here.
-	* tc-inlines.cc: Not here.
-
-	* src/tree-const.h (tree_constant::stash_original_text): New
-	function.
-	* src/tc-rep.cc (tree_constant_rep::stash_original_text): Ditto.
-	(undo_string_escapes): Ditto.
-
-	* src/tc-rep (tree_constant_rep::do_matrix_index): Don't just
-	return *this.
-	* src/tree-const.h (tree_constant::tree_constant (tree_constant_re&)):
-	Delete.
-
-	* src/pager.cc (open_diary_file, close_diary_file,
-	maybe_write_to_diary_file, Fdiary): New functions.
-	(flush_output_to_pager): Call maybe_write_to_diary_file before
-	sending output to the screen.
-	* src/input.cc (octave_gets): Call maybe_write_to_diary file to
-	save the prompt and the user input.
-	* src/error.cc (verror): Use C++ streams, not C I/O functions.
-	Call maybe_write_to_diary file to save error messges too.
-	* src/octave.cc (clean_up_and_exit): Close diary file here.
-
-	* src/octave.cc (main): Initialize pager first.
-
-	* src/input.cc (get_user_input): Return empty matrix for no input.
-
-	* src/tree-plot.cc: Include readline/tilde.h instead of declaring
-	tilde_expand() directly.
-	* src/utils.cc: Likewise.
-
-	* src/tree-plot.cc (tree_plot_command::print_code): New function.
-	* src/tree-const.h (tree_constant::print_code): Likewise.
-
-	* src/tree-expr.h (tree_simple_assignment_expression::ans_ass):
-	New data member to flag assignments to ans.
-	* src/tree-expr.cc (tree_identifier::eval): Set it when
-	constructing assignments to ans.
-	* src/parse.y (maybe_convert_to_ans_assign): Likewise.
-
-	* src/tree-expr.h (tree_simple_assignment_expression::preserve):
-	New data member to allow preserving left hand side args that
-	shouldn't be deleted in some cases (ugh).
-	* src/tree-expr.cc (tree_multi_assignment_expression::eval):
-	Create assignment with preserve flag set.
-
-Wed Aug  3 14:27:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	Yet another massive reorganization of sources, once again
-	hopefully for the better.  A fair amount of work is not detailed
-	here, but these are the major points.  The grammar file and the
-	derivation of the tree classes are somewhat cleaner now.
-
-	* src/parse.y: Cope with changes to derivation scheme.
-
-	* src/tree-misc.cc: New file.
-	(tree_statement, tree_global): New classes.
-	(tree_global_init_list): New class, derived from SLList for the
-	list of expressions in a global command.
-	* src/tree-cmd.cc (tree_global_command): Use tree_global_init_list.
-
-	* src/tree-misc.cc (tree_argument_list): Move here from
-	tree-expr.cc, and derive from SLList instead of tree.
-	(tree_parameter_list): Likewise.
-	(tree_return_list): Likewise.
-
-	* src/tree-cmd.cc (tree_command_list): Delete class.
-	* src/tree-misc.cc (tree_statement_list): New class for keeping a
-	list of commands or expressions to evaluate.  Derive from SLList,
-	not tree.
-
-	* src/tree-plot.cc (subplot_list, plot_limits, plot_range,
-	subplot_using, subplot_style): Rename from tree_*, and
-	don't derive from tree class.
-
-	* src/tree-plot.cc: Eliminate eval member function for classes not
-	derived from tree class.
-
-	* src/tree-plot.cc, src/tree-cmd.cc: For classes derived from
-	tree-command, the eval() member function is now void eval (void).
-
-	* src/tree-base.h (tree::tree): New constructor, to initialize the
-	line and column info.  For all classes that are derived from the
-	tree class, use it instead of manipulating the data directly.
-	(line_num, column_num): Make private.
-
-	* src/tree-expr.cc (tree_simple_assignment_expression::preserve):
-	New data member, set in constructors and used by the destructor
-	when the left-hand side of the expression should not be deleted
-	(as for some temporary assignments not constructed in the parser).
-
-	* src/tree-expr.h (tree_expression::type) Rename and move here from
-	tree-base.h.  Change all uses.
-	(tree_matrix::dir): Likewise.  Change all uses.
-
-	* src/utils.cc (make_argv): Stash function name in argv[0].
-
-	* src/octave.cc (global_command): Declare as tree_statement_list,
-	not tree.
-
-	* src/parse.y (make_binary_op, make_unary_op, make_prefix_op,
-	make_postfix_op): New functions.
-
-	* src/parse.y (GLOBAL): Make it a tok_val type.
-	* src/lex.l (is_keyword): Give GLOBAL a value.
-
-Mon Aug  1 22:37:22 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.l (grab_help_text): Unput the last character read.
-
-Sun Jul 31 21:17:07 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/pr-output.cc (set_format (double, int&)): Avoid calling
-	log10 for Inf and NaN.
-
-Fri Jul 29 16:08:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/octave.cc (reading_startup_message_printed): New flag.
-	(parse_and_execute): New arg, verbose.  If true, print name of
-	file as it is read.
-	(execute_startup_files): Don't print message if
-	inhibit_startup_message is true.
-	(main): Move startup message before reading init files.
-
-Thu Jul 28 00:25:42 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Makefile.in (MATRIX_INC): Delete CmplxColVec.h from list.
-
-	* src/symtab.cc (symbol_table::rename): New function.
-	* src/parse.y (func_def2): Use it instead of tree_identifier::rename.
-	* src/tree-expr.cc (tree_identifier::rename): Delete unused function.
-
-	* src/tree-expr.cc (tree_identifier::load_fcn_from_file): New function.
-	(tree_identifier::do_lookup): Use it instead of parse_fcn_file.
-	* src/variables.cc (is_valid_function): Ditto.
-	* src/help.cc (Fhelp): Ditto.
-
-	* src/utils.cc (oct_file_in_path): New function.
-
-Wed Jul 27 08:59:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-expr.cc (tree_identifier::parse_fcn_file): Combine
-	three functions into one.
-
-	* src/utils.cc: Delete uneeded declaration of ioctl().
-	* src/sysdep.cc: Likewise.
-
-	* install.sh: New file, from autoconf distribution.
-	* Makefile.in (DISTFILES): Distribute it.
-
-Tue Jul 26 16:08:58 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/Makefile.in (DISTDIRS): New variable, for directories
-	below scripts to distribute.
-	(dist): Handle distributing whole directories named by $(DISTDIRS).
-	(local-dist): Ditto.
-
-Mon Jul 25 12:57:09 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/CmplxQRP.cc: Provide declaration for zungqr.
-	* liboctave/dbleQRP.cc: Provide declaration for dorgqr.
-
-	* src/Makefile.in (dist): Also remove y.output and defaults.h.
-	(local-dist): Ditto.
-	(realclean): Ditto.
-
-	* src/oct-obj.h (Octave_object::Octave_object (int)): Make
-	private, to avoid problems with different meanings of
-	Octave_object (int) and Octave_object (double) constructors.
-
-	* scripts/amr-image: New files for image processing from Tony
-	Richardson.  These are not in the default octave LOADPATH yet.
-	See the README file in the amr-image directory for more info on
-	how to use them.
-
-	* src/octave.cc (Fshell_cmd): Restore accidentally deleted
-	function.
-
-	* scripts/conv-amr.m, scripts/deconv-amr.m, scripts/roots-amr.m,
-	scripts/poly-amr.m, scripts/roots-tuwien.m, scripts/conv-tuwien.m,
-	scripts/deconv-tuwien.m, scripts/poly-tuwien.m:
-	New files.
-	FIXME -- For each of these functions, either one of the
-	versions will need to be selected, or they will need to be merged
-	before the next release.
-
-	* scripts/null.m, scripts/orth.m, scripts/fft2.m, scripts/ifft2.m,
-	scripts/filter.m, scripts/compan.m, scripts/polyderiv.m,
-	scripts/polyinteg.m, scripts/polyreduce.m, scripts/polyval.m,
-	scripts/polyvalm.m, scripts/postpad.m, scripts/prepad.m,
-	scripts/residue.m, scripts/sinc.m, scripts/freqz.m,
-	scripts/complement.m, scripts/intersection.m,
-	scripts/create_set.m, scripts/union.m:
-	New files.
-
-	* scripts/hilb.m: Eliminate inner loop, for speed.  From
-	romolo@URSAMAJOR.ENG.UNIPR.IT (Romolo Manfredini).
-
-Sun Jul 24 22:08:48 1994  Castor Fu (castor@drizzle.stanford.edu)
-
-	* libcruft/ranlib/genf.f (genf): Use 1.2E-38 instead of 1.0E-38
-	when checking to see if generated numbers will cause overflow.
-	This helps DEC's f77 compiler on the Alpha, which refuses to
-	generate denormalized constants.
-	* libcruft/ranlib/gennf.f (gennf): Likewise.
-
-Fri Jul 22 10:27:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Makefile.in (DEF_FILES): Depend on defun header files too.
-
-Thu Jul 21 14:40:30 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/NLFunc.h (nonlinear_fcn): Declare as pointer to
-	function taking const ColumnVector arg.
-	(jacobian_fcn): Ditto.
-
-	* src/defun-int.h (DEFINE_ARGV): Declare and define save_argc and
-	save_argv for functions that mess with argc and argv directly.
-	(DELETE_ARGV): Use save_argc and save_argv instead of argc and argv.
-
-	* src/f-lsode.cc (ODE_OPTIONS): Add const qualifier for string elts.
-	(print_lsode_option_list): Declare keyword as const char *.
-	* src/f-npsol.cc, src/f-qpsol.cc, src/f-dassl.cc, src/f-quad.cc:
-	Likewise, for corresponding structs and functions.
-
-	* liboctave/dbleSVD.h (SVD::type): New enum, for choosing type of
-	factorization.
-	* liboctave/CmplxSVD.cc (SVD::SVD): Add new optional arg for type.
-	(init): Handle case of type == SVD::economy.
-	* liboctave/dbleSVD.cc: Likewise.
-
-	QR changes from R. Bruce Tenison (btenison@eng.auburn.edu) adapted
-	for new way of defining builtin functions:
-
-	* doc/linalg.texi:  Changed QR description to include QRP
-	factorization
-
-	* src/f-qr.cc (Fqr): Handle permuted and economy QR
-	factorizations.  Handle case of 1 output arg.
-
-	* liboctave/Makefile.in (MATRIX_INC, MATRIX_SRC): Add new QRP files.
-
-	* liboctave/dbleQRP.h, liboctave/dbleQRP.cc, liboctave/CmplxQRP.h,
-	liboctave/CmplxQRP.h: New files, for QR with pivoting.
-
-	* liboctave/dbleQR.h (QR::type): New enum, for choosing type of
-	factorization.
-	* liboctave/CmplxQR.cc (QR): Add new optional arg for type.
-	Handle case of type == SVD::economy and SVD::raw.
-	* liboctave/dbleQR.cc (QR): Likewise.
-
-	* libcruft/lapack/dgeqpf.f: New file.
-	* libcruft/lapack/zgeqpf.f: Ditto.
-
-Wed Jul 20 13:12:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/*.cc, liboctave/*.h: Various cleanups to remove use of
-	NULL.  Only mention default argument values in function
-	declarations, not in their definitions (required for gcc 2.6.x).
-
-	* configure.in: If configuring for alpha-dec-osf, check for sgtty
-	first. If not found, go ahead and check for Posix terminal driver.
-
-Tue Jul 19 09:25:45 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/mx-defs.h (FILE): Don't declare as struct FILE just to
-	avoid including stdio.h.
-	* liboctave/dMatrix.cc: Do include stdio.h here.
-
-	* liboctave matrix classes: Declare operator>> correctly, and
-	return istream object.  Get friend stuff right.
-
-	* liboctave/DAE.cc (DAE::integrate): To see if the user provided a
-	Jacobian function, call DAEFunc::jacobian_function ().
-
-	* liboctave/DAE.cc (user_fun, user_jac): Qualify with class name.
-	* liboctave/ODE.cc (user_fun, user_jac): Ditto.
-
-	* liboctave/DAFunc.h (DAEJac): Declare inside class.
-	(DAERHSFunc, DAEJacFunc): Define types inside class.
-	* liboctave/ODEFunc.h (ODERHSFunc, ODEJacFunc) Likewise.
-
-	Massive reorganization of sources, hopefully for the better.
-	A fair amount of work is not detailed here, but these are the
-	major points...
-
-	* src/symtab.h (symbol_def::TYPE) Add new elements for recording
-	whether a symbol is a text function or mapper function.
-	* src/symtab.cc (symbol_def::is_text_function,
-	symbol_record::is_text_function, symbol_def::is_mapper_function,
-	symbol_record::is_mapper_function): New functions.
-	Modify existing is_* functions to cope with these changes.
-	(symbol_def::symbol_def (tree_builtin*, unsigned)): New 2nd arg.
-	(symbol_def::symbol_def (tree_function*, unsigned)): Ditto
-	(symbol_def::define (tree_builtin*, unsigned)): Ditto.
-	(symbol_def::define (tree_function*, unsigned)): Ditto.
-	* src/variables.cc (is_text_function_name): Use the new symbol
-	table functions, since we can no longer tell by looking in a
-	simple list.
-
-	* tree-expr.cc (class tree_builtin): Text functions are no longer
-	handled as a special case here.
-
-	* src/sysdep.cc (octave_ieee_init): Special case Alpha for
-	initializing Inf and NaN.
-
-	* src/tc-rep.cc: Use const in more places.
-
-	* src/data.cc src/timefns.cc, src/dirfns.cc, src/dirfns.h: New
-	files.
-
-	* src/*.cc, src/*.y, src/*.l, src/*.h: Various cleanups to remove
-	use of NULL.  Only mention default argument values in function
-	declarations, not in their definitions (required for gcc 2.6.x).
-
-	* src/g-builtins.cc, src/g-builtins.h, src/t-builtins.cc
-	src/t-builtins.h: Removed.  Functions moved to various other
-	files, where they more logically belong.
-	* src/utils.cc:  Likewise, various functions moved to other files,
-	where they more logically belong.
-	* src/mappers.cc (install_mapper_functions): Declare all mapper
-	functions here with the new DEFUN_MAPPER() macro.
-	* src/variables.cc (install_builtin_variables): Declare all
-	builtin variables here, with the new DEFVAR() macro.
-
-	* src/f-*.h: Deleted.
-	* src/f-*.cc: Delete #ifdef WITH_DLD code and use DEFUN_DLD()
-	instead to declare builtin functions that will be dynamically
-	loaded.  Give all functions a uniform return type and argument
-	list.
-
-	* src/mkdefs, src/mkbuiltins: New scripts.
-	* src/Makefile.in: Use them to generate builtins.cc automatically
-	from source files that use DEFUN.
-
-	* src/defun.h, src/defun-dld.h, src/defun-int.h: New files, to
-	define DEFUN() and DEFVAR() macros to make it possible to define
-	functions together with their help strings in one place.  The code
-	to install functions in the symbol table is now generated by
-	mkbuiltins.
-
-	* configure.in (LIBOCTDLD): New variable to define.
-	Only call AC_VERBOSE() for DYNAMIC_LD_OBJ, DLD_DIR, LIBDLD,
-	LIBOCTDLD, and LD_STATIC_FLAG if they are set.
-	* move-if-change: Move here, from src/move-if-change.
-	* Makeconf.in (%.d: %.cc): Echo simple message instead of the
-	commands actually executed.
-	(%.d: %.c): Likewise.
-
-	* src/unwind-prot.h: Include stddef.h, for size_t.
-
-Tue Jul 12 12:51:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/f-eval.cc, src/f-fill.cc, src/f-find.cc, src/f-input.cc,
-	src/f-minmax.cc, src/f-log.cc, src/f-sort.cc, src/f-eval.h,
-	src/f-fill.h, src/f-find.h, src/f-input.h, src/f-log.h,
-	src/f-minmax.h, src/f-sort.h: New files, for functions extracted
-	from tree-const.cc.
-	* src/Makefile.in: Add them to the list of INCLUDES, SOURCES, and
-	OBJECTS.
-
-	* src/f-*.cc: Clean up things a bit by letting the compiler
-	generate the tree_constant constructor calls.
-
-	* src/unwind-prot.h: Include stddef.h, for size_t.
-
-	* src/oct-obj.h (Octave_object (int, const tree_constant&)):
-	New constructor form.
-	* src/tree-const.cc (find_nonzero_elem_idx): Rewrite to handle 2
-	and 3 return values.
-
-	* src/g-builtins.cc (builtin_find): Check nargout too.
-	* src/builtins.cc (general_functions): Fix help message for find.
-
-Mon Jul 11 13:36:15 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-rep.cc	(tree_constant_rep::convert_to_row_or_column_vector):
-	If already have a row or column vector, return without doing
-	anything.
-
-Sat Jul  9 01:02:51 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/oct-obj.h (Octave_object): Make it a class, not just a
-	typedef.
-
-	* src/tree-expr.h (tree_function::curr_va_arg_number): Rename from
-	curr_arg_number.
-	(tree_function::varargs_ok): Delete unused member variable.
-	* src/tree-expr.cc (tree_function::octave_va_arg): Increment
-	cur_va_arg_number before indexing args_passed.
-	(tree_function::octave_va_start): Set curr_va_arg_number to
-	num_args_passed, not num_args_passed + 1.
-	(tree_function::takes_varargs): Call param_list::takes_varargs,
-	don't just return varargs_ok.
-	(tree_function::define_param_list): If param_list is not NULL, set
-	num_named_args and curr_va_arg_number even if function doesn't
-	take varargs.
-
-	* src/tree-expr.cc (tree_identifier::eval (int)): Only pass empty
-	arg list if evaluating a constant.
-	(tree_function::eval (int)): Always pass least one arg.
-
-	* Makeconf.in (TMP_IF_1): Add `-I../src'.
-	(TMP_IF_2): Add `-I$(TOPDIR)/src' and `-I$(top_srcdir)/src'.
-
-	* src/t-builtins.h, src/variables.h, src/file-io.h, src/f-syl.h,
-	src/f-svd.h, src/f-schur.h, src/f-rand.h, src/f-qzval.h,
-	src/f-quad.h, src/f-qpsol.h, src/f-npsol.h, src/f-lsode.h,
-	src/f-lpsolve.h, src/f-hess.h, src/f-givens.h, src/f-fsqp.h,
-	src/f-fsolve.h, src/f-eig.h, src/f-dassl.h, src/f-colloc.h,
-	src/f-balance.h, src/dynamic-ld.h, src/builtins.cc,
-	src/tree-const.cc, src/file-io.cc, src/f-syl.cc, src/f-svd.cc,
-	src/f-schur.cc, src/f-rand.cc, src/f-qzval.cc, src/f-qr.cc,
-	src/f-qpsol.cc, src/f-lu.cc, src/f-lpsolve.cc, src/f-inv.cc,
-	src/f-ifft.cc, src/f-hess.cc, src/f-givens.cc, src/f-fsqp.cc,
-	src/f-fft.cc, src/f-expm.cc, src/f-eig.cc, src/f-det.cc,
-	src/f-colloc.cc, src/f-chol.cc, src/f-balance.cc,
-	src/dynamic-ld.cc, src/f-dassl.cc, src/f-fsolve.cc,
-	src/f-lsode.cc, src/f-npsol.cc, src/f-quad.cc, src/tree-expr.h,
-	src/tc-rep.cc, src/tc-inlines.cc, src/tc-rep.h, src/tree-const.h,
-	src/g-builtins.cc, src/g-builtins.h, src/tree-expr.cc,
-	src/variables.cc: Delete nargin in favor of using args.length().
-
-	* configure.in: Check for struct exception in math.h.
-	* src/sysdep.cc (matherr): New function.
-
-Fri Jul  8 15:31:53 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-rep.cc: Include arith-ops.h.
-	(tree_constant_rep::do_scalar_index): Use `invalid', not `illegal'
-	in messages.
-
-	* src/oct-obj.h: Protect contents from multiple inclusion.
-
-	* src/tree-const.h, src/tree-expr.h: Don't include Array.h.
-
-	* src/parse.y (param_list): Allow ELLIPSIS by itself.
-	* src/tree-expr.cc (tree_identifier::mark_varargs_only,
-	tree_identifier::vararg_only): New functions.
-	(tree_function::eval): Only call define_from_arg_vector if
-	param_list is non-null and not marked as varargs_only.
-
-	* src/f-balance.h, src/f-chol.h, src/f-colloc.h, src/f-dassl.h,
-	src/f-eig.h, src/f-fsolve.h, src/f-fsqp.h, src/f-givens.h,
-	src/f-hess.h, src/f-lpsolve.h, src/f-lsode.h, src/f-lu.h,
-	src/f-npsol.h, src/f-qpsol.h, src/f-qr.h, src/f-quad.h,
-	src/f-qzval.h, src/f-rand.h, src/f-schur.h, src/f-svd.h,
-	src/f-syl.h: Include oct-obj.h, not tree-const.h to get
-	declaration of Octave_object.
-
-	* src/f-givens.cc (givens): Handle case of nargout == 0.
-	Use `invalid', not `illegal' in messages.
-	* src/f-balance.cc (balance): Likewise.
-
-	* src/f-balance.cc (balance): Print warning about two output
-	arguments for complex-valued case too.
-
-	* src/tc-rep.cc: Include arith-ops.h.
-
-Thu Jul  7 20:54:12 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/parse.y (identifier): Add missing semicolon.
-	(param_list): Ditto.
-
-	* src/f-svd.cc (svd): Handle nargout == 0 the same as nargout == 1.
-	* src/f-schur.cc (schur): Likewise.
-	* src/f-hess.cc (hess): Likewise.
-	* src/f-eig.cc (eig): Likewise.
-	* src/f-syl.cc (syl): Likewise.
-	* src/f-qzval.cc (qzvalue): Likewise.
-	* src/f-npsol.cc (npsol): Likewise.
-	* src/f-qpsol.cc (qpsol): Likewise.
-	* src/f-givens.cc (givens): Likewise.
-	* src/f-fsolve.cc (fsolve): Likewise.
-	* src/f-balance.cc (balance): Likewise.
-	* src/file-io.cc (process_scanf_format): Likewise.
-	* src/g-builtins.cc (builtin_balance, builtin_chol, builtin_dassl,
-	builtin_eig, builtin_fsolve, builtin_fsqp, builtin_lsode,
-	builtin_max, builtin_min, builtin_npsol, builtin_qpsol,
-	builtin_quad, builtin_rand, builtin_size, builtin_sort,
-	builtin_svd, builtin_schur, builtin_syl, builtin_givens,
-	builtin_hess): Likewise.
-	* src/tree-const.cc (vector_of_empties, column_max, column_min):
-	Likewise.
-
-	* src/variables.h, src/symtab.h: Include builtins.h for typedefs.
-
-	* src/tree-expr.cc(tree_multi_assignment_expression::eval): Rework
-	handling of undefined values returned from functions.
-
-	* src/tree-expr.cc (tree_identifier::is_defined): New function.
-	(tree_parameter_list::is_defined): New function.
-	(tree_parameter_list::convert_to_const_vector): Use it to avoid
-	evaluating undefined objects.
-
-	* src/f-balance.cc, src/f-eig.h, src/f-hess.cc, src/f-lu.h,
-	src/f-rand.cc, src/f-balance.h, src/f-expm.cc, src/f-hess.h,
-	src/f-npsol.cc, src/f-rand.h, src/f-chol.cc, src/f-expm.h,
-	src/f-ifft.cc, src/f-npsol.h, src/f-schur.cc, src/f-chol.h,
-	src/f-fft.cc, src/f-ifft.h, src/f-qpsol.cc, src/f-schur.h,
-	src/f-colloc.cc, src/f-fft.h, src/f-inv.cc, src/f-qpsol.h,
-	src/f-svd.cc, src/f-colloc.h, src/f-fsolve.cc, src/f-inv.h,
-	src/f-qr.cc, src/f-svd.h, src/f-dassl.cc, src/f-fsolve.h,
-	src/f-lpsolve.cc, src/f-qr.h, src/f-syl.cc, src/f-dassl.h,
-	src/f-fsqp.cc, src/f-lpsolve.h, src/f-quad.cc, src/f-syl.h,
-	src/f-det.cc, src/f-fsqp.h, src/f-lsode.cc, src/f-quad.h,
-	src/f-det.h, src/f-givens.cc, src/f-lsode.h, src/f-qzval.cc,
-	src/f-eig.cc, src/f-givens.h, src/f-lu.cc, src/f-qzval.h,
-	src/dynamic-ld.cc, src/dynamic-ld.h, src/file-io.cc,
-	src/file-io.h, src/t-biultins.cc, src/t-builtins.h,
-	src/tree-expr.cc, src/tree-expr.h, src/tree-const.cc,
-	src/tree-const.h, src/tc-inlines.cc, src/tc-rep.cc, src/tc-rep.h,
-	src/g-builtins.cc, src/g-builtins.h:
-	Cope with inital round of Octave_object changes.
-
-	* src/oct-obj.h: New file for Octave_object typedef.
-	* src/dynamic-ld.h, src/file-io.h, src/tree-const.h,
-	src/tree-expr.h: Include it.
-	* src/Makefile.in (INCLUDES): Add it to the list.
-
-Wed Jul  6 09:28:28 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libocsrc/tree-const.h:
-
-	* src/parse.y (maybe_convert_to_ans_assign,
-	maybe_warn_assign_as_truth_value): Pass tree_expression*, not tree*.
-	(ans_expression, expression, simple_expr, simple_expr1, title):
-	Declare as tree_expression_type, not tree_type.
-	(opt_list): Add missing semicolon.
-
-	* src/tc-rep.h, src/tc-rep.cc: New files, extracted from
-	tree-const.h and tree-const.cc, for the tree_constant_rep class.
-	Leave most friend functions behind, in tree-const.h.
-	Don't declare do_binary_op or do_unary_op as friends.
-
-	* src/lex.l: Include tree-plot.h and tree-const.h.
-
-	* src/variables.cc (takes_correct_nargs): Pass tree_fvc* not tree*.
-	* src/variables.cc (is_valid_function): Return tree_fvc* not tree*.
-	Change all callers.
-
-	* src/symtab.h, symtab.cc: Change declaration of symbol definition to
-	be tree_fvc* instead of tree*.  Change all callers.
-
-	* src/f-dassl.cc (dassl_fcn): Declare as tree_fvc*, not tree*.
-	* src/f-quad.cc (quad_fcn): Likewise.
-	* src/f-lsode.cc (lsode_fcn): Likewise.
-	* src/f-fsolve.cc (fsolve_fcn): Likewise.
-	* src/f-npsol.cc (npsol_fcn, npsol_constraints): Likewise.
-
-	* src/tree-plot.cc: All operations are now on tree_expression types,
-	not tree types.
-
-	* src/tree-expr.h (tree_matrix): Derive from tree_expression, not tree.
-
-	* src/tree-expr.h (tree_builtin, tree_function, tree_identifier):
-	Derive from tree_fvc, not tree.
-	* src/tree-const.h (class tree_constant): Likewise.
-
-	* src/tree-expr.h (is_identifier, is_index_expression,
-	is_assignment_expression, is_prefix_expression,
-	mark_for_possible_ans_assign, eval (with args)): Declare in
-	tree_expression class, not tree class.
-
-	* src/tree-expr.h (tree_fvc): New class, derived from
-	tree_expression, to provide a connection between functions,
-	variables, and constants.
-	(is_constant, assign, name, bump_value, max_expected_args,
-	fcn_file_name, time_parsed, is_system_fcn_file, save): Declare
-	in tree_fvc class, not in tree class.
-
-	* src/tree.h: Simply include tree-expr.h and tree-cmd.h.
-	* src/tree-expr.h, tree-expr.cc: New files, extracted from tree.h
-	and tree.cc for classes derived from tree_expression, plus some
-	helper classes.
-	* src/tree-cmd.h, tree-cmd.cc: Likewise, for classes derived from
-	tree_command.
-
-	* src/tree.cc (eval (int, int)): Merge with eval (int,
-	tree_constant*, int, int) by rearranging order of args and using
-	default arg values.  Change all callers.
-
-Tue Jul  5 14:33:33 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/Makefile.in (refcard.dvi): Run TeX on $(srcdir)/refcard.tex,
-	not just refcard.tex.
-	(refcard-local.tex): Likewise, for the local version.
-
-	* src/tree-const.cc (tree_constant_rep::do_index): Check for empty
-	matrix here.
-	(tree_constant_rep::do_vector_index) Not here.
-
-Thu Jun 30 09:41:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc (builtin_shell_command): Only take one
-	argument and return [status, output].
-	* src/procstream.cc (procstreambase::close): Return process exit
-	status.
-
-	* src/tree.cc (tree_builtin::eval (int)): Handle new style of
-	calling text functions.
-	(tree_builtin::eval (int, int): Likewise.
-	(tree_builtin::eval (tree_constant*, int, int, int): Likewise.
-	(tree_identifier::eval (tree_constant*, int, int, int)): Don't
-	count the output arguments that we create automatically (ans) when
-	figuring nargout.
-	(tree_identifier::eval (int)): Likewise.
-
-	* src/tree-const.cc: Delete text-style eval() functions.
-	* src/tree.cc: Ditto.
-
-	* src/tree-const.h: Change typedef of Text_fcn to return a pointer
-	to a tree_constant, and to include the number of output arguments
-	in the parameter list.
-	* src/t-builtins.h: Change declarations of all builtin text-style
-	functions to match.
-	* src/t-builtins.cc: Change definitions too.
-
-	* src/parse.y (word_list): Build an argument_list, not a word_list.
-	(word_list_command): Create an index_expression, not a
-	word_list_command.
-	* src/tree.cc (tree_word_list): Delete unneeded class.
-	(tree_word_list_command): Likewise.
-
-	* src/tc-extras.cc (get_dimensions): For one-arg version, expect
-	2-element vector or scalar specifying dimensions.  Don't simply
-	use the dimensions of a matrix arg.
-
-Wed Jun 29 09:52:15 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/f-det.cc (determinant): Return 0 if matrix is singular to
-	machine precision.
-
-	* liboctave/dMatrix.cc (Matrix::inverse): Declare rcond as
-	volatile to prevent optimization of the expression
-	`rcond + 1.0 == 1.0'.
-	(Matrix::determinant): Ditto.
-	(Matrix::solve): Ditto.
-	* liboctave/CMatrix.cc (ComplexMatrix::inverse): Ditto.
-	(ComplexMatrix::determinant): Ditto.
-	(ComplexMatrix::solve): Ditto.
-
-Tue Jun 28 10:53:31 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc (default_info_file): Add directory separator when
-	appending "octave.info".
-
-	* src/tree-plot.cc (plot_line_count): Make global.
-	* src/utils.cc (send_to_plot_stream): If the plot stream is not
-	open, set plot_line_count to zero.
-	(close_plot_stream): Likewise, set it to zero when closing the
-	stream.
-
-	* src/parse.y (plot_command): Allow replot without args.
-
-	* src/tree-plot.cc (clear_before_plotting): New global variable.
-	(tree_plot_command::eval): Use it to handle hold on/off.
-	* src/t-builtins.cc (builtin_hold): New function.
-	* src/builtins.cc (text_functions): Add it to the list.
-
-Fri Jun 24 11:08:36 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/token.h (plot_tok_type): Add new field, replot.
-	* src/lex.l (is_keyword): Handle replot here.
-	* src/parse.y (plot_command): And here.
-	* src/g-builtins.cc (builtin_replot): Not here.
-	* src/builtins.cc (general_functions): Or here.
-
-Tue Jun 21 10:47:08 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc (builtin_kbhit): New function.
-	* src/builtins.cc (general_functions): Add it to the list.
-
-	* src/tree-const.cc (tree_constant_rep::rows (void)): For strings
-	and ranges, only return 1 if the string or range is not empty.
-
-Thu Jun  9 20:42:06 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_builtin::eval (int)): Delete ancient code that
-	eval()'d the return value.
-	(tree_builtin::eval (int, int)): Likewise.
-	(tree_builtin::eval (int, char**, int)): Likewise.
-	(tree_builtin::eval (tree_constant*, int, int, int)): Likewise.
-	(tree_function::eval (tree_constant*, int, int, int)): Likewise.
-	(tree_colon_expression::eval (int)): Likewise.
-	(tree_unary_expression::eval (int)): Likewise.
-	(tree_binary_expression::eval (int)): Likewise.
-
-Mon Jun  6 03:48:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/file-io.cc (fread_internal): Make it work.
-	(fwrite_internal): Likewise.
-	(num_items_remaining): Renamed from get_whats_left().  Don't pass
-	nr/nc as last arg, simply return the number of items of size that
-	are left to read.
-	(get_size_conv): Delete unnecessary function.
-	* liboctave/dMatrix.cc (Matrix::read): Make it work.
-	(Matrix::write): Likewise.
-	* liboctave/dMatrix.h (conversion): Delete unecessary enum.
-
-	* src/sysdep.cc: Include <math.h>.
-	(octave_ieee_init): Cast return value of infinity() and
-	quiet_nan() to double.
-
-Sun Jun  5 14:35:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makeconf.in (getversion): Get everything between the double
-	quotes, not just numbers and periods.
-
-	* src/tree-const.cc (tree_constant_rep::do_scalar_assignment): Correct
-	typo in last change.
-
-	* src/parse.y: Include tree-plot.h and tree-const.h.
-
-	* src/Makefile.in (SOURCES): Delete tc-assign.cc and tc-index.cc
-	(INCLUDES): Add tree-plot.h.
-
-	* src/tree-plot.h: New file.  Declare plotting classes here.
-	* src/tree.h: Not here.
-
-	* src/tc-index.cc, tc-assign.cc: Delete unnecessary files.
-
-	* src/tc-extras.cc: Include EIG.h
-
-	* src/tree-const.cc (tree_constant_rep::tree_constant_rep (RowVector&,
-	int)): Provide default value for int arg.
-	(tree_constant_rep::tree_constant_rep (ColumnwVector&, int)): Ditto
-	(tree_constant_rep::tree_constant_rep (ComplexRowVector&, int)): Ditto
-	(tree_constant_rep::tree_constant_rep (ComplexColumnwVector&, int)):
-	Ditto.
-	(tree_constant_rep::tree_constant_rep (RowVector&)): Delete, now
-	handled by corresponding two arg constructor.
-	(tree_constant_rep::tree_constant_rep (ColumnwVector&)): Likewise.
-	(tree_constant_rep::tree_constant_rep (ComplexRowVector&)): Likewise.
-	(tree_constant_rep::tree_constant_rep (ComplexColumnwVector&)):
-	Likewise.
-
-	* src/tree-const.cc: Add pragma implementation.  Merge in contents of
-	tc-index.cc and tc-assign.cc so that the pragma interface/pragma
-	implementation hack will do some good.
-	* src/tree-const.h: Include mx-base.h, not Matrix.h.  Add pragma
-	interface.  Delete unnecessary constructor declarations.
-
-	* src/unwind-prot.h, src/unwind-prot.cc (unwind_elem_tag): Rename
-	from _tag.
-	(unwind_elem_fptr): Rename from _fptr.
-	(unwind_elem_ptr): Rename from _ptr.
-
-	* NLConst.cc (NLConst::NLConst): Pass vector args by reference.
-
-	* src/procstream.h, src/procstream.cc, src/idx-vector.h,
-	src/idx-vector.cc, src/token.h, src/token.cc, src/unwind-prot.h,
-	src/unwind-prot.cc, src/symtab.h, src/symtab.cc, src/tree.h,
-	src/tree.cc, liboctave/Range.h, liboctave/Range.cc,
-	liboctave/QLD.h, liboctave/QLD.cc, liboctave/ODE.h,
-	liboctave/ODE.cc, liboctave/Quad.h, liboctave/Quad.cc,
-	liboctave/Objective.h, liboctave/Objective.cc, liboctave/NPSOL.h,
-	liboctave/NPSOl.cc, liboctave/NLFunc.h, liboctave/NLFunc.cc,
-	liboctave/Bounds.h, liboctave/Bounds.cc, liboctave/QP.h,
-	liboctave/QP.cc, liboctave/NLConst.cc, liboctave/LinConst.cc,
-	liboctave/LPsolve.cc, liboctave/LP.cc, liboctave/FSQP.cc,
-	liboctave/FEGrid.cc, liboctave/QPSOL.cc, liboctave/CollocWt.cc,
-	liboctave/DAEFunc.cc, liboctave/DAEFunc.h, liboctave/DAE.cc,
-	liboctave/NLEqn.cc, liboctave/ODEFunc.cc, liboctave/QPSOL.h,
-	liboctave/ODEFunc.h, liboctave/NLP.h, liboctave/NLEqn.h,
-	liboctave/NLConst.h, liboctave/LinConst.h, liboctave/LPsolve.h,
-	liboctave/LP.h, liboctave/FSQP.h, liboctave/FEGrid.h,
-	liboctave/DAE.h, liboctave/CollocWt.h:
-	Add pragma interface/implementation.
-
-	* src/f-svd.cc, src/f-schur.cc, src/f-qr.cc, src/f-lu.cc,
-	src/f-hess.cc, src/f-det.cc, src/f-chol.cc, src/f-qzval.cc,
-	src/f-inv.cc, src/f-ifft.cc, src/f-givens.cc, src/f-fft.cc,
-	src/f-balance.cc, src/f-expm.cc, src/f-fsqp.cc, src/f-syl.cc,
-	src/xdiv.cc, src/xpow.cc, src/idx-vector.cc, src/pr-output.cc,
-	src/unwind-prot.cc, src/file-io.cc, liboctave/Bounds.h,
-	liboctave/CollocWt.h, liboctave/DAE.h, liboctave/EIG.h,
-	liboctave/FEGrid.h, liboctave/LP.h, liboctave/LPsolve.cc,
-	liboctave/LinConst.h, liboctave/NLEqn.cc, liboctave/NLEqn.h,
-	liboctave/NLP.h, liboctave/NPSOL.cc, liboctave/NPSOL.h,
-	liboctave/ODE.h, liboctave/Objective.h, liboctave/QLD.cc,
-	liboctave/QP.h, liboctave/QPSOL.h, liboctave/Quad.h:
-	Instead of including Matrix.h, only include the individual
-	matrix/vector/etc. header files that are needed.
-
-	* liboctave/QLD.cc, liboctave/ODE.cc, liboctave/NLFunc.cc,
-	liboctave/DAEFunc.cc, liboctave/DAE.cc, liboctave/NLEqn.cc,
-	liboctave/ODEFunc.cc:
-	Use 0, not NULL.
-
-	* liboctave/mx-inlines.cc: Include Complex.h.
-
-	* liboctave/mx-kludge.h: Don't enclose contents in extern "C++".
-
-	* liboctave/Matrix.h: Simply include mx-base.h and mx-ext.h.
-
-	* liboctave/mx-base.h: New file, includes all basic matrix/vector
-	header files.
-	* liboctave/mx-ext.h: New file, includes all extra matrix/vector
-	related header files.
-	* liboctave/mx-defs.h: New file, for matrix/vector related
-	defines.  Also provides forward declarations for all matrix/vector
-	classes.
-
-	* liboctave/Makefile.in: Cope with new files.
-
-	* liboctave/CmplxAEPBAL.cc, liboctave/CmplxDET.h,
-	liboctave/CmplxQR.cc, liboctave/CmplxSVD.h, liboctave/dbleDET.cc,
-	liboctave/dbleHESS.h, liboctave/dbleSCHUR.cc,
-	liboctave/CmplxAEPBAL.h, liboctave/CmplxHESS.cc,
-	liboctave/CmplxQR.h, liboctave/dbleAEPBAL.cc, liboctave/dbleDET.h,
-	liboctave/dbleLU.cc, liboctave/dbleSCHUR.h,
-	liboctave/CmplxCHOL.cc, liboctave/CmplxHESS.h,
-	liboctave/CmplxSCHUR.cc, liboctave/dbleAEPBAL.h,
-	liboctave/dbleGEPBAL.cc, liboctave/dbleLU.h, liboctave/dbleSVD.cc,
-	liboctave/CmplxCHOL.h, liboctave/CmplxLU.cc,
-	liboctave/CmplxSCHUR.h, liboctave/dbleCHOL.cc
-	liboctave/dbleGEPBAL.h, liboctave/dbleQR.cc, liboctave/dbleSVD.h,
-	liboctave/CmplxDET.cc, liboctave/CmplxLU.h, liboctave/CmplxSVD.cc,
-	liboctave/dbleCHOL.h, liboctave/dbleHESS.cc, liboctave/dbleQR.h,
-	liboctave/EIG.h, liboctave/EIG.cc:
-	New files, extracted from Matrix-ext.cc, in an attempt to allow
-	effective use of pragma interface/implementation and make
-	generated code somewhat smaller.
-	* liboctave/dColVector.cc liboctave/CColVector.cc: Likewise, from
-	ColVector.{cc,h}.
-	* liboctave/dRowVector.cc liboctave/CRowVector.cc: Likewise, from
-	RowVector.{cc,h}.
-	* liboctave/dMatrix.cc liboctave/CMatrix.cc: Likewise, from
-	Matrix.{cc,h}.
-	* liboctave/dDiagMatrix.cc liboctave/CDiagMatrix.cc: Likewise,
-	from DiagMatrix.{cc,h}.
-
-Fri Jun  3 15:32:53 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Array.h: Include assert.h.
-	(DiagArray<T>::operator T ()): [! _AIX] Only call get() if i is
-	also equal to j.
-
-	* scripts/rem.m: Allow mixing of scalar/matrix args, but complain
-	if both args are matrices and the dimensions don't agree.
-
-	* src/lex.l (grab_help_text): Correct previous change.
-
-Thu Jun  2 12:08:18 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.h (conversion): New enum, for binary read/write
-	functions.
-	* Matrix.cc (read, write) New functions.
-	* file-io.cc (feof_internal, ferror_internal, fread_internal,
-	fwrite_internal, get_size_conv, get_whats_left): New functions.
-	* g-builtins.cc (builtin_feof, builtin_ferror, builtin_fread,
-	builtin_fwrite): New functions.
-	* builtins.cc (general_functions): Add them to the list.
-
-	* configure.in: Check for infinity() and quiet_nan().
-	* sysdep.h (octave_Inf, octave_NaN): New global variables.
-	* sysdep.cc (octave_ieee_init): New function.  Initialize
-	octave_Inf and octave_NaN.
-	(sysdep_init): Call it.
-	* builtins.cc (initialize_builtins): Don't compute Inf and NaN
-	values here.
-
-Tue May 31 20:06:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/variables.cc (identifier_exists): Only return 1 for
-	variables if they are also defined.
-
-Sun May 29 20:40:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.l: Don't declare beginning_of_function as static.
-	(COMMENT): Delete unnecessary exclusive start state.
-	(\#, \%): Handle comments directly.  Try to be smart about not
-	returning a newline character when reading a matrix list.
-	(grab_help_text): Don't put a newline back on the input stream.
-	* src/parse.y (list1): Set beginning_of_function to zero here.
-
-Wed May 25 03:34:17 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/error.cc (error): If error_state is -2, don't do anything.
-	If the format string ends in a new line character, strip it, print
-	the error message, and set the error state to -2.
-	* src/tree.cc (tree_function::traceback_error): Don't set the
-	error_state if it is already negative.
-
-	* src/tree-const.cc (convert_to_row_or_column_vector): New function.
-	* src/idx-vector.cc (idx_vector::shorten): New function.
-	* src/tc-assign.cc (fortran_style_matrix_assignment
-	(tree_constant&, tree_constant&)): Handle deleting elements by
-	assignment of `[]'.  Use convert_to_row_or_column_vector to handle
-	conversion to a vector in the case of deleting some elements from
-	a matrix.  Use idx_vector::shorten() to remove unnecessary index
-	vector elements.
-	(do_scalar_assignment (tree_constant&, tree_constant*, int)):
-	Handle assignment of empty matrix.
-	If converting complex to real, delete old complex value.
-	(delete_rows (idx_vector&)): If deleting all rows of a column
-	vector, convert to empty matrix.
-	(delete_rows (Range&)): Ditto.
-	(delete_columns (idx_vector&)): If deleting all columns of a row
-	vector, convert to empty matrix.
-	(delete_columns (Range&)): Ditto.
-
-	* src/tc-extras.cc (column_max (tree_constant*, int, int)):
-	Use MAX, not MIN when trying to find the biggest scalar.
-	Likewise, find the complex scalar with the largest, not the
-	smallest absolute value.
-
-	* src/tc-assign.cc (do_matrix_assignment (tree_constant&,
-	tree_constant_rep::constant_type, tree_constant&): For case of
-	j_arg == matrix constant, don't negate return value of
-	indexed_assign_conforms().
-
-	* src/user-prefs.cc (commas_in_literal_matrix): New function.
-	Put functions in alphabetical order.
-	* src/user-prefs.h (commas_in_literal_matrix): New structure element.
-	Alphabetize structure elements and lists of functions.
-	* src/builtins.cc (string_variables): Add commas_in_literal_matrix
-	to the list.
-	* src/lex.l (<MATRIX>{SN}*\]{S}*): Pay attention to the value of
-	usre_pref.commas_in_literal_matrix when deciding whether to insert
-	a comma after seeing a ']' character.
-	(handle_identifier): Likewise.
-	(<MATRIX>{S}+): If commas are required, just eat the spaces.
-
-Tue May 24 19:49:51 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-assign.cc (tree_constant_rep::do_matrix_assignment
-	  (tree_constant&, tree_constant*, int)): Handle empty arguments
-	for two index values.
-	(tree_constant_rep::do_matrix_assignment
-	  (tree_constant&, tree_constant&)):
-	Likewise, for single index values.
-
-Mon May 23 01:43:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makefile.in (snapshot, snapshot-version): New targets.
-
-	* configure.in: Handle --enable-run-in-place (was easier than
-	doing the work to parse --run-in-place like Emacs uses).
-
-	* acconfig.h: Add #undef for RUN_IN_PLACE.
-
-	* Makeconf.in (OCTAVE_HOME): New macro.
-	* src/Makefile.in (defaults.h): Use it instead of ${prefix}.
-
-	* Makeconf.in (OCTAVE_INFO_DIR, OCTAVE_LIB_DIR): New macros.
-	* src/Makefile.in (defaults.h): Substitute them too.
-
-	* src/defaults.h.in (OCTAVE_INFO_DIR): New macro, used if
-	RUN_IN_PLACE is defined.
-	(OCTAVE_LIB_DIR): Likewise.
-
-	* src/utils.cc (octave_home): Handle RUN_IN_PLACE
-	(octave_info_dir): Ditto.
-	(octave_lib_dir): Ditto.
-
-	* src/tree-const.cc (tree_constant_rep::diag (void)): For empty
-	matrix, return empty matrix.
-	(tree_constant_rep::diag (tree_constant &)): Likewise, regardless
-	of value of arg.
-
-	* scripts/int2str.m: Format as integer, not float.
-	Don't add trailing new line character.
-
-Sun May 22 22:13:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/plot_int.m: When looking for imaginary arguments, check
-	if any element has an imaginary component, not if all elements
-	have imaginary components.
-
-Thu May 19 19:46:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/parse.y (EXPR_AND_AND, EXPR_OR_OR): New tokens, for
-	short-circuit logical AND and OR operators.
-	(simple_expression): Handle new tokens.
-	* src/lex.l (&&) [SHORT_CIRCUIT_LOGICALS]: Return EXPR_AND_AND.
-	(||) [SHORT_CIRCUIT_LOGICALS]: Return EXPR_OR_OR.
-	* src/tree.cc (tree_binary_expression::eval): Handle short-circuit
-	boolean operators.
-	(tree_binary_expression::eval_error): Print different messages for
-	or_or/or and and_and/and.
-	* src/tree-base.h (tree_expression_type): Add new structure
-	elements and_and and or_or.
-	* src/tree-const.cc (tree_constant_rep::is_true): New function.
-
-Tue May 17 17:04:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/idx-vector.cc (idx_vector::sort_uniq ()): New function.
-	* src/tc-assign.cc (tree_constant_rep::delete_rows ()): Use it.
-	(tree_constant_rep::delete_columns ()): Likewise.
-
-Mon May 16 13:31:33 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/linspace.m: Replace for loop with range operation.
-	* scripts/logspace.m: Replace for loop with element by element
-	exponentiation.
-
-Sun May  8 00:49:38 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/lqe.m: Correct comment.
-	Transpose k before returning.
-
-Fri May  6 00:47:24 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (quit_loop_now): New function.
-	(tree_while_command::eval): Use it.
-	(tree_for_command::eval): Ditto.
-
-	* src/tree.cc (tree_for_command::do_for_loop_once): New function.
-	(tree_for_command::eval): Use it.
-
-Mon May  2 19:45:39 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_for_command::eval): Handle returning,
-	breaking, and continuing for case of scalar expression in loop
-	control statement.
-
-Wed Apr 20 00:38:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.l (\[{S}*): Don't return ',' for this	match when
-	convert_spaces_to_comma is true, since that can never be the right
-	thing to do.
-
-	* All Makefile.in files: Set top_srcdir here.
-	* Makeconf.in: Not here.
-
-	* Makeconf.in: Use top_srcdir instead of root_srcdir
-
-	* configure.in: Update for autoconf-1.8.  Use AC_VERBOSE for
-	verbose messages.  Use AC_WARN and AC_ERROR instead of echo for
-	warning and error messages.  Organize feature tests a bit better.
-	Use new autoconf macros to check for C++ compiler.  Add copyright
-	notice.  Recognize --enable-dld instead of --with-dld since that
-	seems to be more in line with the intent of the --enable/--with
-	options for configure scripts.  Use new autoconf macros
-	AC_REVISION and AC_PREREQ.  Don't add -Wall to CFLAGS and CXXFLAGS
-	until after all feature tests are done.  Etc.
-
-Fri Apr 15 01:56:20 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* acconfig.h: Add #undefs for HAVE_FINITE, HAVE_ISINF, and
-	HAVE_ISNAN.
-	* configure.in: Check for floatingpoint.h.
-	* src/sysdep.cc (sysdep_init): Disable trapping on common
-	exceptions for 386BSD systems that have floatingpoint.h.
-
-	* src/utils.cc: Don't declare ioctl() with prototype.
-
-Sat Apr  9 17:48:07 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-assign.cc (tree_constant_rep::fortran_style_matrix_assignment
-	  (tree_constant&, tree_constant&)):
-	Handle case of M (X) = scalar, where X is a zero-one vector with
-	only one nonzero element.
-
-	* src/tc-assign.cc (tree_constant_rep::do_vector_assign
-	  (tree_constant&, Range&):
-	Handle case of right hand side being a scalar.
-	(tree_constant_rep::do_vector_assign (tree_constant&, idx_vector&):
-	Ditto.
-
-	* src/tc-assign.cc (tree_constant_rep::do_matrix_assignment
-	  (int,tree_constant_rep::constant_type)):
-	Allow assignment of complex scalar too.
-	(tree_constant_rep::do_matrix_assignment
-	  (tree_constant_rep::constant_type, int)):
-	Ditto.
-
-	* src/tree-const.h (REP_RHS_MATRIX): Initialize nr and nc.
-	Abort if rhs is not a real or complex matrix.
-
-Wed Apr  6 13:59:37 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Range.cc (Range::nelem_internal): Use an integer, not
-	a double, for the number of intervals.	Avoid possible problems
-	with extended precision registers on some systems (e.g. x86/Linux).
-
-Mon Mar 28 17:23:18 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc (raw_mode): For OCRNL, ONOCR, and ONLRET, check to
-	see if they are defined before using them instead of checking to
-	see if NeXT is defined.
-
-	* info/terminal.c (terminal_prep_terminal): Check to see if OCRNL
-	is defined before using it instead of checking to see if NeXT is
-	defined.
-
-Thu Mar 24 03:21:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_parameter_list::define_from_arg_vector):
-	New function.
-	(tree_parameter_list::convert_to_const_vector): Ditto.
-	(tree_function::eval): Use them instead of trying to do this
-	in-line.
-
-	* src/symtab.h (symbol_record::global_link_context): New stack for
-	saving linked_to_global flag.
-	* src/symtab.cc (symbol_record::push_context): Save
-	linked_to_global too.
-	(symbol_record::pop_context): And restore it.
-
-Wed Mar 23 16:18:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/refcard.tex.in: New file.
-	* doc/Makefile.in: Create refcard.* and refcard-local.* from
-	refcard.tex.in.
-
-Tue Mar 22 15:23:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.sh: exec $OCTAVE_HOME/bin/octave.bin, not just
-	octave.bin.
-
-Thu Mar 17 01:06:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/arith-ops.cc (do_binary_op (ComplexMatrix&, Matrix& b)):
-	Correctly handle element by element left division.
-
-	* src/g-builtins.cc (builtin_error): Return without calling error
-	(and setting error_state) if the message is empty.
-
-	* src/help.cc (operators): Correct help message for `.^'.
-
-	* src/tc-index.cc (tree_contant_rep::fortran_style_matrix_index):
-	Preserve vector orientation when indexing with a zero-one vector.
-
-	* src/tc-index.cc (tree_constant_rep::do_scalar_index): Handle
-	indexing a scalar with `0'.
-
-	* src/tc-index.cc (tree_constant_rep::do_scalar_index): Handle the
-	index `:' the same as the index `1'.
-
-Tue Mar 15 17:22:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Array.cc: Fix typo in comments about compiler flags.
-
-Wed Mar  9 15:08:21 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 1.0.1.
-
-	* src/*.h: Use the macro octave_FOO_h instead of _FOO_h to protect
-	against multiple inclusion.
-	* liboctave/*.h: Likewise.
-
-	* liboctave/*.h: Surround contents of files in extern "C++" { }.
-
-Tue Mar  8 18:06:54 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-index.cc (tree_constant_rep::do_vector_index (const
-	tree_constant&) const): Don't crash if matrix is empty.
-
-	* scripts/norm.m: Return empty matrix for empty argument.
-
-Mon Mar  7 23:34:44 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doinstall.sh: chmod new directories to 755.
-
-Sat Mar  5 13:15:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* bsd-math/log1p.c: Declare finite as returning int, not double.
-	* bsd-math/finite.c (finite): Add return type.
-
-Thu Mar  3 14:42:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/DiagMatrix.cc (operator *): Provide definitions for
-	DiagMatrix * DiagMatrix, ComplexDiagMatrix * ComplexDiagMatrix,
-	ComplexDiagMatrix * DiagMatrix, and DiagMatrix * ComplexDiagMatrix.
-
-	* liboctave/ColVector.cc (operator >>): Provide definitions for
-	real and complex column vectors.
-
-	* liboctave/RowVector.cc (operator >>): Provide definitions for
-	real and complex row vectors.
-
-Wed Mar  2 18:00:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Array.h (DiagArray::Proxy::operator & ()): Provide
-	function body.
-
-Tue Mar  1 13:18:35 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-const.cc (tree_constant::load (istream&)): Don't skip
-	past first type keyword if not global.
-	(tree_constant::load (istream&, tree_constant_rep::constant_type)):
-	Allocate storage for reading complex scalar.
-
-Sun Feb 20 14:17:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/menu.m: Don't fail on input that is empty or not a
-	scalar.
-
-	* Makefile.in (DISTFILES): Distribute ChangeLog.[0-9].
-
-	* src/lex.l (reset_parser): Don't resynch line number to command
-	history number if reading a script file.
-
-Thu Feb 17 01:36:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 1.0 released.
-
-	* src/file-io.cc (fopen_file_for_user): Improve error message.
-	(fopen_internal): Likewise.
-
-Wed Feb 16 02:21:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Try harder to find finite, isnan, and isinf.
-	Use m4 `dnl' comments, not shell `#' comments.
-
-	* src/file-io.cc (file_io_get_file): New function.
-	(fgets_internal): Use it instead of trying to do this in line.
-	(frewind_internal, fseek_internal, ftell_internal, do_printf,
-	do_scanf): Likewise.
-	* (do_scanf): Allow file name as string for fscanf.
-	* (procss_scanf_format): Delete unused argument `args'.  Delete
-	unused local variable `arg_type'.  Don't complain if we can't
-	store the result of a requested conversion.  Only return
-	successfully if a conversion actually occurs, even if we are not
-	storing the value.
-
-Sun Feb 13 13:32:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.83 released.
-
-	* Array.h (DiagArray): Move inline definitions of get() and set()
-	before use by other inline functions.
-
-Sat Feb 12 14:15:45 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check for g77 last.  Even if it is ever actually
-	released, it probably won't be stable for quite a while.
-
-	* MAKEINFO.PATCH: New file.
-	* Makefile.in (DISTFILES): Distribute it.
-
-	* liboctave/Matrix.cc (operator + (Complex, const Matrix&)):
-	Make it work.
-	(operator - (Complex, const Matrix&)): Ditto.
-	(operator * (Complex, const Matrix&)): Ditto.
-	(operator / (Complex, const Matrix&)): Ditto.
-
-Fri Feb 11 00:03:39 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check for strerror too.
-
-	* configure.in: When saving CFLAGS as XCFLAGS and then restoring
-	the value, quote the RHS.
-
-	* src/g-builtins.cc (builtin_clc): Do the dirty work to clear the
-	screen here instead of using rl_clear_screen to avoid printing
-	prompt unnecessarily.
-
-Thu Feb 10 00:26:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc: Add all the cruft that the autoconf manual
-	suggests for including dirent.h.
-
-	* info/terminal.c (terminal_prep_terminal): [HAVE_TERMIOS_H &&
-	NeXT]: Don't use OCRNL, as someone says NeXT's termios.h doesn't
-	have it.
-
-	* configure.in (GCC_IEEE_FP_FLAG): Correct check for ix86 Linux.
-	Don't try to check for CC == gcc.
-	Add GCC_IEEE_FP_FLAG to CFLAGS while checking for IEEE FP
-	functions finite, isnan, and isinf.
-
-	* readline/rldefs.h: Make definition of HAVE_POSIX_SIGNALS
-	conditional on definition of _POSIX_VERSION, not HAVE_TERMIOS_H.
-
-Wed Feb  9 02:41:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_function::octave_va_start): Rename from
-	va_start to avoid conflict with va_start macro.
-	(tree_function::octave_var_arg): Likewise, rename from va_arg.
-	* src/g-builtins.cc (builtin_va_arg): Call octave_va_arg for the
-	current function instead of va_arg.
-	(builtin_va_start): Likewise, for octave_va_start.
-
-	* Version 0.82.1.
-
-	* doc/Makefile.in (clean): Also remove octave.in, octave.rd,
-	octave.ins, and octave.rds.
-
-	* src/t-builtins.cc (load_variable): Make it work for all
-	combinations of loading global or local variables when the
-	variable to be loaded is already a global variable, local
-	variable, a function, or even undefined.
-
-Tue Feb  8 00:33:09 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.82 released.
-
-	* liboctave/mx-kludge.cc (operator + (KL_MAT_TYPE, KL_MAT_TYPE)):
-	For an empty matrix with one nonzero dimension, be sure to return
-	a result of the same size.
-	(operator - (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
-	(product (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
-	(quotient (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
-
-Mon Feb  7 01:30:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Array.h, liboctave/array.cc (DiagArray): Back off on
-	indexing via Proxy class changes for AIX systems to avoid gcc (or
-	possibly AIX assembler?) bug.
-
-	* src/tree-const.cc (tree_constant_rep::maybe_resize (int,
-	force_orient)): Don't abort for a max index of zero.
-
-	* liboctave/Matrix.h (class RowVector, friend double operator *
-	(const RowVector&, const ColumnVector&)): Add missing const in
-	declaration.
-
-	* liboctave/Matrix.cc (Matrix::fill (val, r1, c1, r2, c2)): Set nc
-	to cols(), not rows().
-	(ComplexMatrix::fill (double val, r1, c1, r2, c2)): Likewise.
-	(ComplexMatrix::fill (Complex val, r1, c1, r2, c2)): Likewise.
-
-	* All source files: To match the documenation, refer to function
-	files, not M-files.  Rename functions and variables that refer to
-	_m_file_,  mfile, or mf to refer to _fcn_file, ffile, or ff.
-
-Sun Feb  6 19:08:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/parse.y (yyerror): Don't crash if a parse error happens and
-	the current input line is NULL.
-
-Sat Feb  5 18:53:04 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/file-io.cc (initialize_file_io): Don't use variable names
-	that start with `_'.
-	* src/file-io.cc (class file_info): Likewise.
-
-Fri Feb  4 01:15:59 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/builtins.cc (general_functions): In usage message for fopen,
-	use `Valid' instead of `Legal'.
-
-	* src/file-io.cc (do_printf): Use `invalid' instead of `illegal'
-	in error message.
-	(do_scanf): Likewise.
-
-	* src/mappers.cc (atanh): Use correct formula.
-
-Thu Feb  3 22:08:40 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/refcard.tex: New file.
-	* doc/Makefile.in (all): Make refcard.ps.
-	(DISTFILES): Distribute refcard.tex, refcard.dvi, and refcard.ps.
-
-	* src/tree-const.cc (any_element_is_negative): Delete function.
-	(any_element_less_than): New function.
-	(any_element_greater_than): Ditto.
-	(tree_constant_rep::mapper): Use struct elements lower_limit,
-	upper_limit, and can_return_complex_for_real_arg to properly
-	handle functions like acos, asin, atanh, and acosh.
-
-	* src/builins.h (struct Mapper_fcn): Rename neg_arg_complex to
-	can_return_complex_for_real_arg.  New elements, lower_limit and
-	upper_limit.
-	(struct builtin mappers functions): Rename neg_arg_complex to
-	can_return_complex_for_real_arg.  New elements, lower_limit and
-	upper_limit.  Delete elements nargin_max and nargout_max.
-	* src/variables.cc (install_builtin_mapper_function): Handle new
-	struct elements can_return_complex_for_real_arg, lower_limit, and
-	upper_limit.  Don't use nargin_max and nargout_max -- they are
-	the same for all mapper functions.
-
-Wed Feb  2 05:06:56 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Matrix.h: Don't include values.h.
-	* liboctave/Matrix-ext.cc: Include float.h
-	(DET::value_will_overflow): Use DBL_MAX, not MAXDOUBLE.
-	(ComplexDET::value_will_overflow): Likewise.
-	(DET::value_will_underflow): Use DBL_MIN, not MINDOUBLE.
-	(ComplexDET::value_will_underflow): Likewise.
-	* src/tree.cc: Include limits.h, not values.h.
-	(tree_builtin::max_expected_args): Use INT_MAX, not MAXINT.
-
-	* configure.in: If compiling on an ix86, set GCC_IEEE_FP_FLAG to
-	-mieee-fp.  We should no longer require the modified crt0 code on
-	Linux systems in order to get IEEE functions.
-	* Makeconf.in (GCC_IEEE_FP_FLAG): Substitute value.
-	(ALL_CFLAGS, UGLY_ALL_CFLAGS, ALL_CXX_FLAGS, UGLY_ALL_CXX_FLAGS,
-	ALL_LDFLAGS): Use it.
-
-Tue Feb  1 22:30:46 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/builtins.cc (install_builtins): Make SEEK_SET, SEEK_CUR, and
-	SEEK_END constants.
-
-	* src/tree-plot.cc (tree_subplot_using::print): Only check column
-	number against max if max is greater than 0.
-
-Mon Jan 31 15:59:31 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/strcmp.m: Correctly handle empty strings.
-
-	* src/parse.y (input): Recognize lone simple_list and simple_list
-	followed by error and '\n'.
-
-Fri Jan 28 00:20:30 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.81 released.
-
-	* src/octave.cc (clean_up_and_exit): Call cleanup_tmp_files() here
-	too.
-
-	* configure.in: Check for atexit and on_exit.
-	* src/octave.cc: Use HAVE_ATEXIT and HAVE_ON_EXIT (instead of
-	just checking to see if sun is defined) to decide whether to
-	define atexit as on_exit.
-	(main): Don't try to call atexit if it's missing and we don't have
-	on_exit either.
-
-Thu Jan 27 22:16:48 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check for gethostname and sys/utsname.h.
-	* utils.cc (gethostname): Steal replacement from bash.  Provide
-	definition if it looks like it's missing and we have
-	sys/utsname.h.
-
-	* liboctave/Array.h (DiagArray): Define non-const indexing
-	functions here.
-	* liboctave/Array.cc (DiagArray): Not here.
-
-	* liboctave/Array.h (DiagArray::Proxy): New class to handle
-	non-const reference indexing.  Allows different action if indexing
-	on left side of assignment operator.
-
-	* src/octave.cc (main): Call initialize_pager(),
-	initialize_readline(), and install_signal_handlers() before trying
-	to read startup files.
-
-	* src/octave.cc (input_from_startup_file): New global flag.
-	(execute_startup_files): Set it to 1 before reading startup files.
-	* src/parse.y (func_def_2): If input_from_startup_file, don't try
-	to compare file name and function name.
-
-Wed Jan 26 14:39:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* readline/rldefs.h: Make better use of autoconf defines.
-
-Tue Jan 25 17:19:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Matrix.cc (ComplexMatrix (DiagMatrix)): Make sure off
-	diagonal elements are zero.
-	(ComplexMatrix (ComplexDiagMatrix): Likewise.
-	(Matrix (DiagMatrix): Likewise.
-
-Fri Jan 21 17:43:11 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* flibs.sh: Recognize libraries that match `/*.a'.
-
-Thu Jan 20 18:12:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.80.1.
-
-Wed Jan 19 14:48:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libcruft/odepack/stode.f: Don't try to `RETURN 0'.  This causes
-	lsode to fail, at least with Sun's f77.
-
-	* src/tree-const.cc (tree_constant_rep::load): Delete string
-	returned from extract_keyword.
-	* src/t-builtins.cc (builtin_load): Likewise.
-	* src/variables.cc (extract_keyword): Return new storage, not
-	static buffer.
-
-	* src/t-builtins.cc (builtin_save): If saving a named list of
-	variables, use is_globally_visible to decide whether to mark
-	variables in the current symbol table as global.
-
-Tue Jan 18 11:57:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.80 released.
-
-	* doc/Makefile.in (install): Delete commands for installing
-	liboctave.info instead of trying to comment them out.
-
-	* liboctave/Array.cc: Allow users to compile with
-	-fexternal-stemplates and USE_EXTERNAL_TEMPLATES defined to
-	generate their own .o files with new types.
-
-	* Makeconf.in (includedir): Install include files in
-	$prefix/include/octave by default.
-
-	* liboctave/Makefile.in (TEMPLATE_SRC): New macro.
-	(install): Install files listed in $(TEMPLATE_SRC) too.
-
-	* info/search.h: Conditionally declare stricmp and strnicmp.
-	* info/search.c: Conditionally define stricmp and strnicmp.
-	* config.h.in: Add undefs for HAVE_STRICMP and HAVE_STRNICMP.
-
-	* configure.in: Check for stricmp and strnicmp too.
-
-	* doc/Makefile.in: For now, don't format or try to install the
-	liboctave manual.
-	Don't distribute formatted copies of liboctave manual.
-
-Mon Jan 17 01:10:54 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/Makefile.in (clean): Remove all index files.
-
-	* src/Makefile.in (defaults.h): Depend on Makefile too.
-	* doc/Makefile.in (conf.texi): New rule for making conf.texi from
-	conf.texi.in.
-
-	* doc/conf.texi.in: New file.
-	* doc/octave.texi: Include conf.texi to get VERSION, OCTAVE_HOME,
-	and other variables that need to be set depending on the
-	configuration.
-
-	* Makefile.in (DISTFILES): Don't distribute PLOTTING.  Current
-	plotting info is in the Texinfo docs.
-
-Sat Jan 15 15:43:34 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* config.sub: New file, from libg++-2.5.2.
-	* Makefile.in: Distribute config.sub.
-	* configure.in: Use config.sub to validate system types.  If it
-	fails, continue with target_host_type and canonical_host_type set
-	to unknown.  Leave target_host_type set to any alias given as the
-	TARGET argument to configure.
-
-	* readline/rldefs.h: If ultrix and HAVE_SGTTY_H, avoid Posix
-	terminal driver.
-	* configure.in: If configuring for ultrix, check for sgtty first.
-	If not found, go ahead and check for Posix terminal driver.
-
-	* configure.in: Don't try to do anything special for readline on
-	NeXT systems.
-
-	* Makeconf.in: Define rules for making .d files here.
-	liboctave/Makefile.in: Not here.
-	src/Makefile.in: Or here.
-
-	* liboctave/Matrix.h (all Matrix/Vector operator = functions):
-	Simply call the base class operator =, then return *this.
-	(class ColumnVector): Declare RowVector a friend class, so it can
-	access the private constructor for the transpose operator.
-	(class RowVector): Likewise, for ColumnVector.
-	(class ComplexColumnVector): Likewise, for CommplexRowVector.
-	(class ComplexRowVector): Likewise, for ComplexColumnVector.
-	Numerous formatting cleanups.
-
-Thu Jan 13 13:17:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.79.90.
-
-	* builtins.cc: Include missing-math.h.
-
-	* src/missing-math.h: Provide declarations for acosh, asinh,
-	atanh, and gamma whether they are actually missing or not, because
-	they are not part of the standard math.h, and the g++/libg++
-	installation no longer provides declarations for them.
-
-	* src/sighandlers.h (RETSIGTYPE): Define here.
-	(BADSIG): Likewise.
-	(sig_handler): Likewise.
-
-	* src/g-builtins.cc: Include sighandlers.h
-	Don't define RETSIGTYPE, BADSIG, or sig_handler here.
-	* src/octave.cc: Or here.
-
-Wed Jan 12 16:12:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc: Don't check nargin/nargout in *_options
-	functions.
-
-	* src/f-qpsol.cc, src/f-quad.cc, src/f-lsode.cc, src/f-fsolve.cc,
-	src/f-dassl.cc, liboctave/QPSOL.cc, liboctave/Quad.cc,
-	liboctave/ODE.cc, liboctave/NLEqn.cc, liboctave/DAE.cc:
-	Similar changes for these classes/functions as the following
-	changes for src/f-npsol.cc and liboctave/NPSOL.cc:
-
-	* src/f-npsol.cc (npsol_opts): New static variable to hold Octave's
-	current idea of npsol options.
-	(npsol): Call nlp.copy (npsol_opts) after creating NPSOL object.
-	(npsol_option_table): New static list of options for npsol.
-	(print_npsol_option_list): New function.
-	(do_npsol_option): New function.
-	(npsol_options): Make it work.
-
-	* liboctave/NPSOL.cc (NPSOL_options): New class.
-	* (NPSOL): Also derive from NPSOL_options.
-	* (minimize): Call pass_options_to_npsol before calling npsol.
-	* (NPSOL::option): No longer works.  Print error message instead.
-	* (NPSOL::set_default_options): Now a member of NPSOL_options class.
-
-	* src/utils.cc: If missing, declare strcasecmp, strncasecmp.
-	* (almost_match): Add new argument to do case-insensitive matches.
-	* (keyword_almost_match): New function to match a string against a
-	list of keywords.
-
-	* liboctave/NLP.h (NLP): Add destructor and copy constructor.
-
-	* configure.in: Check for strcasecmp and strncasecmp.
-	* config.h.in: Add #undefs for HAVE_STRCASECMP and STRNCASECMP.
-	* src/strcasecmp.c, src/strncase.c: New files, from glibc.
-	* src/Makefile.in (SOURCES, OBJECTS): List them.
-
-	* src/builtins.cc (general_functions): Improve usage message for
-	the *_options functions.
-	(print_usage): New arg, just_usage with default value of 0.
-	If nonzero, don't print info about where to find additional help.
-
-	* src/Makefile.in (INCLUDES): Add error.h.
-	(SOURCES): Add error.h.
-
-	* src/tree.cc (tree_identifier::parse_m_file): call reset_parser
-	before calling yyparse ().
-	* src/tc-extras.cc (eval_string): Likewise.
-	Don't save previous symbol table.  That is handled by the
-	unwind protect.
-
-	* src/lex.l (reset_parser): Don't unconditionally call yyreset.
-	Add a couple of comments.
-	(yywrap): Always return 1, not 0.
-	(yy_flex_alloc, yy_flex_realloc, yy_flex_free): #if 0 out.
-
-	* src/utils.cc (raw_mode): Only complain about stdin not being a
-	tty if we are really interactive.
-
-	* src/octave.cc (main): End startup message with endl to ensure
-	flushing before other output.
-	* Turn of readline's blink_matching_paren feature if not
-	interactive, or if reading from a file specified on the command
-	line.
-
-	* src/octave.cc (main): Set the symbol table context just before
-	calling reset_parser in the main loop.
-	* src/lex.l (reset_parser): Not here.
-
-	* src/input.cc (octave_gets): Declare static.
-	(octave_read): Also handle echoing input if not using readline.
-
-	* Makefile.in (DISTFILES): Add SENDING-PATCHES to the list.
-
-Mon Jan 10 14:30:13 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/corrcoef.m, scripts/fortran_vec.m, scripts/kurtosis.m,
-	scripts/ols.m, scripts/skewness.m, scripts/cov.m, scripts/gls.m,
-	scripts/mahalanobis.m, scripts/pinv.m: New script files from Kurt
-	Hornik (hornik@neuro.tuwien.ac.at) and the Department of
-	Probability Theory and Statistics TU Wien, Austria.
-
-Sun Jan  9 01:11:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc (builtin_fsqp_options): If FSQP_MISSING is
-	defined, don't call fsqp_options; just print usage message.
-	(builtin_npsol_options): Likewise, for npsol_options.
-	(builtin_qpsol_options): Likewise, for qpsol_options.
-	* src/builtins.cc (general_functions): Provide different usage
-	message for fsqp_options depending on whether FSQP_MISSING is
-	defined.  Likewise for npsol_options and qpsol_options.
-
-Sat Jan  8 16:45:57 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libcruft/misc/dostop.c: Include config.h.
-
-	* src/variables.cc (extract_keyword): Use ostrstream instead of
-	fixed length buffer.  For keywords with string values, return
-	value in static buffer.
-	* src/t-builtins.cc (builtin_load): Handle new argument list for
-	extract_keyword.  Handle possiblity of load_variable setting
-	error_state.
-	* src/tree-const.cc (tree_constant_rep::load): Handle new argument
-	list for extract_keyword.
-
-Fri Jan  7 13:20:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/f-eig.cc (builtin_eig_2): Rename from builtin_eig.
-	* src/f-fsolve.cc (builtin_fsolve_2): Rename from builtin_fsolve.
-	* src/f-inv.cc (builtin_inv_2): Rename from builtin_inv.
-
-Thu Jan  6 12:29:41 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-base.h (tree::save): Add optional argument `precision'.
-	* src/tree-const.cc (tree_constant::save): Ditto.
-	(tree_constant_rep::save): Ditto.
-	* src/symtab.cc (symbol_def::save): Ditto.
-	(symbol_record::save): Ditto.
-	(symbol_table::save): Ditto.
-
-	* src/t-builtins.cc (builtin_save): Pass user_pref.save_precision
-	to symbol table save functions.
-	* src/builtns.cc (string_variables): Add save precision to thelist.
-	(install_builtins): Initialize it.
-	* src/user-prefs.cc (set_save_precision): New function.
-	* src/user-prefs.h (user_pref.save_precision): New data element.
-
-	* liboctave/Matrix-ext.cc: Provide correct prototypes for dgeesx
-	and zgeesx.
-	* (SCHUR::init): Don't declare a dummy_select function pointer,
-	just pass `(void *) 0' instead, since the dummy argument is never
-	supposed to be used anyway.
-
-	* src/input.cc (initialize_readline): Cast command_completer to
-	CPPFunction, not Function, now that readline has more than one
-	function typedef.
-	* Add extern declaration for free_undo_list ().
-
-	* Replace readline source from GDB with readline source from bash.
-	This allows paren matching.
-
-Wed Jan  5 01:20:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Also check for sys/select.h.
-
-	* liboctave/RowVector.cc (ComplexRowVector::operator *): Complete
-	function body.  Put code in-line rather than making a call to the
-	BLAS routine zdotu to avoid having to cope with the various ways
-	that Fortran compilers might translate this.
-
-	* src/input.cc (operate_and_get_next): New function, from bash.
-	(initialize_readline): Bind operate_and_get_next to C-O here.
-
-	* src/input.cc (command_completer, command_generator):
-	Declare static here.
-	* srs/input.h (command_completer, command_generator):
-	Not extern here.
-
-	* g-builtins.cc (builtin_warranty): Change copyright info.
-	* octave.cc (verbose_usage): Likewise.
-	(main): Likewise.
-
-Mon Jan  3 15:49:41 1994  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/fnmatch.c, src/fnmatch.h: New files for pattern matching
-	from the GNU C library.
-	* src/Makefile.in: Add them to the appropriate lists.
-	* src/t-builtins.cc (builtin_save): Use fnmatch to do pattern
-	matching instead of using regular expressions.
-	(builtin_clear): Likewise.
-	(glob_pattern_p): New function.
-	(builtin_save): Print error message and return if only given one
-	argument that contains globbing characters.
-
-	* src/symtab.cc (symbol_record::save): Don't attempt to save
-	undefined variables.
-
-Wed Dec 29 02:55:08 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/rank.m: Also need to compute SVD when nargin == 2.
-	Correct usage message.
-
-Wed Dec 15 01:44:18 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/f-lpsolve.cc, src/f-fsqp.cc, src/f-npsol.cc, src/f-qpsol.cc,
-	src/f-lsode.cc, src/f-dassl.cc, src/f-fsolve.cc, src/f-quad.cc:
-	New stub options functions, XXX_options, and XXX_options_2 (for
-	future dld use), where XXX is lpsolve, fsqp, npsol, etc.
-	* src/f-lpsolve.h, src/f-fsqp.h, src/f-npsol.h, src/f-qpsol.h,
-	src/f-lsode.h, src/f-dassl.h, src/f-fsolve.h, src/f-quad.h:
-	Declare XXX_options functions.
-	* src/builtins.cc (builtin_general_functions): Add new XXX_options
-	functions to the list of builtin functions.
-	* src/g-builtins.cc: Define builtin_XXX_options functions.
-	* src/g-builtins.h: Declare them.
-
-	* scripts/tzero.m: Add missing comma in fprintf call.
-
-Tue Dec 14 00:24:35 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libcruft/quadpack/*.f: Modify to handle user-requested
-	termination from inside the user-supplied function.
-	* src/f-quad.cc (quad_user_function): Set quad_integration_error
-	if an error is encountered in the user-supplied function.
-	* liboctave/Quad.h (quad_integration_error): New global variable.
-	* liboctave/Quad.cc (user_function): Handle
-	quad_integration_error, and error flag for modified Quadpack
-	functions.
-
-	* src/tree.cc (tree_simple_assignment_expression::eval): Check
-	error status after calling convert_to_const_vector () on the
-	argument list.
-	(tree_index_expression::eval): Ditto.
-
-	* src/tree.cc (tree_argument_list::convert_to_const_vector):
-	If an error is encountered while evaluating an element of the
-	list, print an error message including the element number.
-
-	* liboctave/ODE.cc (integration_error): New private data member.
-	(ODE constructors): Initialize it to zero.
-	(ODE::integrate (double)): Reset it to zero before each
-	integration step.
-	(lsode_f): Treat empty vector returned from user-supplied function
-	as an error.
-	* src/f-lsode.cc (lsode_user_function): Return empty vector if
-	error is encountered in user-supplied function.  Don't jump to top
-	level on error.
-
-	* libcruft/odepack/lsode.f (lsode): Return with istate = -13 on
-	error from user supplied subroutine.
-	* libcruft/odepack/lsode.f (lsode): Handle extra argument returned
-	from user-supplied function.
-	* libcruft/odepack/stode.f (stode): Likewise.
-	* libcruft/odepack/prepj.f (prepj): Likewise.
-
-Wed Dec  8 01:30:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/DAE.cc (integration_error): New private data member.
-	(DAE constructors): Initialize it to zero.
-	(DAE::integrate (double)): Reset it to zero before each
-	integration step.
-	(dassl_f): Treat empty vector returned from user-supplied function
-	as an error.
-	* src/f-dassl.cc (dassl_user_function): Return empty vector if
-	error is encountered in user-supplied function.  Don't jump to top
-	level on error.
-
-	* liboctave/NPSOL.cc (npsol_objective_error): New global variable.
-	(npsol_objfun): Set to zero before calling user-supplied function.
-	Check after calling user-supplied function.
-	Set mode to -1 on error.
-	(npsol_confun): Set mode to -1 on error.
-	(npsol declaration): Declare args for user-supplied functions.
-	* src/f-npsol.cc (npsol_objective_function): If an error is
-	encountered in the calculation of the objective function, set
-	npsol_objective_error to 1.
-	(npsol_constraint_function): Treat empty vector returned from
-	user-supplied function as an error.
-
-	* liboctave/Array.cc (*::checkelem): Correct bounds checking.  On
-	error, return uninitialized value of type T.  This avoids placing
-	an extra requirement on the class that can be used as an array
-	element.
-	(*::operator ()): Likewise.
-
-Mon Dec  6 07:24:49 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/NLEqn.cc (hybrd1 declaration): Declare args for
-	user-supplied fuction.
-	(hybrj1): Likewise.
-	(hybrd1_fcn): Treat return of empty vector from user supplied
-	function as an error by setting iflag to -1.
-	(hybrj1_fcn): Likewise.
-	(solve): Handle case of info < 0 returned from hybrd1.
-
-	* src/f-fsolve.cc (fsolve_user_function): Don't jump to top level
-	on error in user-supplied function.  Treat empty vector returned
-	from user-supplied function as error.
-	(hybrd_info_to_fsolve_info): Translate -1 (failure in evaluation
-	of user-supplied function) to -2.
-	* scripts/perror.m (fsolve case): Handle -2.
-
-	* info/error.c (program_name): Initialize to info, not NULL.
-
-	* info/session.c (initialize_info_session): Don't exit if term is
-	too dumb or too small to use info.  Return int status instead.
-	* info/info.h (TERM_TOO_SMALL): New macro.
-
-	* src/t-buitlins.cc (try_info): Check return value from
-	initialize_info_session ().
-
-	* liboctave/Array.cc (DiagArray<T>::DiagArray (int n, const T& val)):
-	Set number of rows and columns to n, not 0.
-
-Sat Dec  4 14:01:41 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.h (YY_INPUT): Undefine if defined, then always define
-	the way we want.
-	(YY_FATAL_ERROR): Likewise.
-
-	* src/lex.l (yywrap): Declare static.
-	(yy_flex_alloc): New function, so we don't have to link with
-	libfl.a when using flex 2.4.x.
-	(yy_flex_realloc): Ditto.
-	(yy_flex_free): Ditto.
-
-Thu Dec  2 19:23:43 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/*.m: Add copying notice to script files.
-
-	* src/input.cc (command_generator): Return copy of matching string.
-
-	* src/input.cc (command_generator): Correctly delete array of
-	character strings.
-	* src/symtab.cc (symbol_table::save): Likewise.
-	* src/utils.cc (pathstring_to_vector): Likewise.
-
-	* src/utils.cc (get_m_file_names): When reallocating vector of
-	strings, delete original vector of pointers, but not the strings
-	they point to.
-
-Tue Nov 30 12:36:41 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/RowVector.cc, liboctave/ColVector.cc,
-	liboctave/DiagMatrix.cc, liboctave/Matrix.cc,
-	liboctave/Matrix-ext.cc: Massive rewrite to cope with new
-	derivation scheme.
-
-	* liboctave/Matrix.h: Include Array.h, and derive Matrix,
-	ComplexMatrix, etc. from Array<double>.  Derive Complex
-	versions from Array<Complex>.  Delete declarations of functions
-	now inherited from the Array classes.
-	* Include mx-kludge.h with appropriate #defines in each class that
-	needs it.
-	* liboctave/Matrix.cc: Include mx-kludge.cc with appropriate
-	#defines in each class that needs it.
-
-	* liboctave/Makefile.in (INCLUDES): Add Array.h, MArray.h, and
-	mx-kludge.h.
-	(SOURCES): Add Array.cc.
-	(EXTRAS): Add MArray.cc and mx-kludge.cc.
-
-	* liboctave/mx-kludge.h, liboctave/mx-kludge.cc: New files to
-	implement the MArray functionality with macros until g++ can
-	handle the MArray stuff.
-
-	* liboctave/MArray.h, liboctave/MArray.cc: New files for generic
-	arrays with simple math functions for like-types.  This won't
-	quite work with g++ yet, so it's not used anywhere.
-
-	* liboctave/Array.h, liboctave/Array.cc: New files for generic
-	arrays.
-
-	* liboctave/mx-inlines.cc: Add const for const arguments.
-
-	* src/file-io.cc (file_info): Rename class from File_info.
-	(file_info::operator =): Fix memory leak by deleting old name
-	and mode before saving new.  Don't do copy if source and
-	destination are the same.
-
-	* src/tree.cc (tree_matrix::eval): Plug memory leak.
-
-	* src/tree.cc (tree_builtin::tree_builtin): Check to see that nm,
-	not my_name, is non-NULL before saving it.
-
-	* src/tree.cc (tree_identifier::eval, tree_gobal_command::eval):
-	After performing the assignment, delete the identifier created
-	for temporary asssignment since the destrucotr for
-	tree_simple_assignment_expression doesn't do it for us.
-
-	* src/tree.cc (tree_function::stash_m_file_name): Delete file_name
-	before saving it.
-	(tree_function::stash_function_name): Likewise, for fcn_name.
-
-	* src/lex.l, src/lex.h: Make quote_is_transpose globally visible.
-	* src/parse.y (param_list): Use it, and recognize empty parameter
-	lists here.
-
-	* src/parse.y (simple_expr1): Recognize empty matrices here.
-	(matrix): Not here.
-
-	* src/arith-ops.cc (do_binary_op): The matrix product and quotient
-	functions aren't class member functions now.
-
-	* src/tc-index.cc, src/tc-assign.cc, src/symtab.cc,
-	src/tree-plot.cc, src/idx-vector.cc, src/tree-const.cc:
-	Call ::error, not just error, since g++ now complains about not
-	being able to find a non-hidden member function by that name.
-
-	* src/tree-const.cc: Call ::real and ::imag, not just real and imag,
-	since g++ now complains about not being able to find non-hidden
-	member functions by those names.
-
-	* src/tree-const.cc (tree_constant_rep::force_numeric): Handle case
-	of zero-length strings.
-
-	* src/tree-const.cc (tree_constant_rep::convert_to_str): Null
-	terminate strings created from scalars.
-
-	* src/tc-index.cc (tree_constant_rep::fortran_style_matrix_index): Use
-	data(), not fortran_vec().
-	* src/idx-vector.cc (idx_vector::idx_vector): Likewise.
-
-	* src/SLStack.cc: Move function definitions here.
-	* src/SLStack.h: From here.  Include SLStack.cc if not using
-	external templates.
-
-	* src/unwind-prot.h: Move class declaration here.
-	* src/unwind-prot.cc: From here.
-
-	* src/xdiv.h, src/xpow.h, src/variables.h, src/utils.h,
-	src/user-prefs.h, src/t-builtins.h, src/sighandlers.h,
-	src/pr-output.h, src/pager.h, src/octave-hist.h, src/mappers.h,
-	src/input.h, src/help.h, src/gripes.h, src/g-builtins.h,
-	src/f-syl.h, src/f-svd.h, src/f-schur.h, src/f-rand.h,
-	src/f-qzval.h, src/f-quad.h, src/f-qr.h, src/f-qpsol.h,
-	src/f-npsol.h, src/f-lu.h, src/f-lsode.h, src/f-lpsolve.h,
-	src/f-inv.h, src/f-ifft.h, src/f-hess.h, src/f-givens.h,
-	src/f-fsqp.h, src/f-fsolve.h, src/f-fft.h, src/f-expm.h,
-	src/f-eig.h, src/f-det.h, src/f-dassl.h, src/f-colloc.h,
-	src/f-chol.h, src/f-balance.h, src/error.h, src/dynamic-ld.h,
-	src/builtins.h, src/arith-ops.h, src/tree-const.h, src/tree.h,
-	src/token.h, src/symtab.h, src/procstream.h, src/idx-vector.h,
-	src/file-io.h, src/tree-base.h, src/unwind-prot.h, src/Stack.h,
-	liboctave/LinConst.h, liboctave/FEGrid.h, liboctave/NLEqn.h,
-	liboctave/NLConst.h, liboctave/LPsolve.h, liboctave/LP.h,
-	liboctave/FSQP.h, liboctave/DAEFunc.h, liboctave/DAE.h,
-	liboctave/CollocWt.h, liboctave/Bounds.h, liboctave/Objective.h,
-	liboctave/ODEFunc.h, liboctave/NLFunc.h, liboctave/Range.h,
-	liboctave/Quad.h, liboctave/QP.h, liboctave/QPSOL.h,
-	liboctave/QLD.h, liboctave/NPSOL.h, liboctave/NLP.h,
-	liboctave/f77-uscore.h, liboctave/lo-error.h,
-	liboctave/Matrix.h:
-	Don't use #pragma interface.
-
-	* src/tc-index.cc, src/tc-assign.cc, src/symtab.cc,
-	src/procstream.cc, src/gripes.cc, src/f-syl.cc, src/f-svd.cc,
-	src/f-schur.cc, src/f-rand.cc, src/f-quad.cc, src/f-qr.cc,
-	src/f-qpsol.cc, src/f-npsol.cc, src/f-lu.cc, src/f-lsode.cc,
-	src/f-lpsolve.cc, src/f-inv.cc, src/f-ifft.cc, src/f-hess.cc,
-	src/f-givens.cc, src/f-fsqp.cc, src/f-fsolve.cc, src/f-fft.cc,
-	src/f-eig.cc, src/f-det.cc, src/f-dassl.cc, src/f-colloc.cc,
-	src/f-chol.cc, src/f-balance.cc, src/t-builtins.cc,
-	src/octave-hist.cc, src/input.cc, src/g-builtins.cc,
-	src/xdiv.cc, src/xpow.cc, src/user-prefs.cc, src/unwind-prot.cc,
-	src/tree-plot.cc, src/token.cc, src/tc-extras.cc, src/sysdep.cc,
-	src/sighandlers.cc, src/pr-output.cc, src/pager.cc,
-	src/mappers.cc, src/idx-vector.cc, src/help.cc, src/f-qzval.cc,
-	src/f-expm.cc, src/error.cc, src/dynamic-ld.cc, src/builtins.cc,
-	src/arith-ops.cc, src/variables.cc, src/utils.cc,
-	src/tree-const.cc, src/file-io.cc, src/tree.cc,
-	liboctave/sun-utils.cc, liboctave/mx-inlines.cc,
-	liboctave/RowVector.cc, liboctave/ColVector.cc,
-	liboctave/DiagMatrix.cc, liboctave/Matrix.cc,
-	liboctave/Matrix-ext.cc, liboctave/Quad.cc, liboctave/ODE.cc,
-	liboctave/LPsolve.cc, liboctave/FSQP.cc, liboctave/DAE.cc,
-	liboctave/DAEFunc.cc, liboctave/QP.cc, liboctave/Objective.cc,
-	liboctave/ODEFunc.cc, liboctave/NLFunc.cc, liboctave/NLConst.cc,
-	liboctave/LP.cc, liboctave/lo-error.cc, liboctave/Range.cc,
-	liboctave/QPSOL.cc, liboctave/NPSOL.cc, liboctave/NLEqn.cc,
-	liboctave/Matrix.cc, liboctave/Matrix-ext.cc,
-	liboctave/LinConst.cc, liboctave/FEGrid.cc,
-	liboctave/DiagMatrix.cc, liboctave/CollocWt.cc,
-	liboctave/ColVector.cc, liboctave/Bounds.cc:
-	Don't use #pragma implementation.
-
-	* src/lex.l, src/parse.y, src/procstream.cc, src/gripes.cc,
-	src/f-syl.cc, src/f-svd.cc, src/f-schur.cc, src/f-rand.cc,
-	src/f-quad.cc, src/f-qr.cc, src/f-qpsol.cc, src/f-npsol.cc,
-	src/f-lu.cc, src/f-lsode.cc, src/f-lpsolve.cc, src/f-inv.cc,
-	src/f-ifft.cc, src/f-hess.cc, src/f-givens.cc, src/f-fsqp.cc,
-	src/f-fsolve.cc, src/f-fft.cc, src/f-eig.cc, src/f-det.cc,
-	src/f-dassl.cc, src/f-colloc.cc, src/f-chol.cc,
-	src/f-balance.cc, src/t-builtins.cc, src/octave-hist.cc,
-	src/input.cc, src/g-builtins.cc, src/xdiv.cc, src/xpow.cc,
-	src/user-prefs.cc, src/unwind-prot.cc, src/tree-plot.cc,
-	src/token.cc, src/tc-extras.cc, src/sysdep.cc,
-	src/sighandlers.cc, src/pr-output.cc, src/pager.cc,
-	src/mappers.cc, src/idx-vector.cc, src/help.cc, src/f-qzval.cc,
-	src/f-expm.cc, src/error.cc, src/dynamic-ld.cc, src/builtins.cc,
-	src/arith-ops.cc, src/variables.cc, src/utils.cc,
-	src/tree-const.cc, src/file-io.cc, src/tree.cc: If HAVE_CONFIG_H
-	is defined, include config.h.
-
-	* config.h.in, acconfig.h: New files
-	* Makefile.in (DISTFILES): Add them to the list.
-
-	* Makeconf.in (root_srcdir): Define.
-	(INCFLAGS): Clean up.
-	(UGLY_ALL_CFLAGS): New macro.
-	(UGLY_ALL_CXXFLAGS): Likewise.
-	(UGLY_ALL_LDFLAGS): Likewise.
-
-	* configure.in: Convert to generate config.h.
-	Substitute root_srcdir in Makefiles.
-	Use AC_DEFINE(foo, 1) instead of DEFS="$DEFS -Dfoo=1".
-	If using g++ 2.5 or later, define USE_EXTERNAL_TEMPLATES.
-	Use UGLY_DEFS for what would have been substited in DEFS, for
-	those cases when we need DEFS instead of config.h.
-
-Tue Nov 16 04:59:19 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/f-expm.cc, src/f-givens.cc, src/f-qzval.cc, src/f-syl.cc:
-	Include f77-uscore.h here.
-
-	* liboctave/ColVector.cc, liboctave/Matrix.cc,
-	liboctave/Matrix-ext.cc, liboctave/RowVector.cc: Move declarations
-	for Fortran functions here.
-	* liboctave/Matrix.h: From here. Don't include f77-uscore.h here.
-
-Mon Nov 15 04:03:34 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-extras.cc (min): For two-arg versions, use error(), not
-	FAIL.
-	(max): Likewise.
-	* src/idx-vector.cc (checkelem): Likewise.
-
-	* liboctave/Matrix.h, liboctave/Matrix.cc, liboctave/RowVector.cc,
-	liboctave/ColVector.cc, liboctave/DiagMatrix.cc,
-	liboctave/Matrix-ext.cc, liboctave/Bounds.cc, liboctave/DAE.cc,
-	liboctave/CollocWt.cc, liboctave/FEGrid.cc, liboctave/LinConst.cc,
-	liboctave/ODE.cc, liboctave/NLEqn.cc: Don't abort or exit on
-	errors.  Instead print some message by calling the function
-	pointed to by current_liboctave_error_handler and then return.
-
-	* liboctave/lo-error.cc: New file, for liboctave error handling
-	stuff.
-
-Sun Nov 14 23:28:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc (default_path): Handle OCTAVE_PATH from the
-	environment like TeX handles TEXINPUTS.  If the path starts with
-	`:', prepend the standard path.  If it ends with `:' append the
-	standard path.  If it begins and ends with `:', do both (which is
-	useless, but the luser asked for it...).
-	(octave_lib_dir): Plug memory leak.
-
-Sat Nov 13 02:41:24 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/symtab.h (symbol_record::context): New data member, to allow
-	recursive functions to work.
-	* src/symtab.cc (symbol_record::push_context): New function
-	(symbol_record::pop_context): Ditto.
-	(symbol_table::pop_context): Ditto.
-	(symbol_table::push_context): Ditto.
-
-	* src/tree.cc (tree_function::eval): If call_depth is > 1, push
-	symbol table context and add unwind protect to pop it on exit or
-	error.
-	(pop_symbol_table_context): New function for unwind protect.
-
-	* configure.in: Use AC_HAVE_HEADERS(unistd.h) instead of
-	AC_UNISTD_H.
-
-	* src/lex.l, src/f-quad.cc, src/f-rand.cc, src/f-lpsolve.cc,
-	src/f-fsqp.cc, src/f-fsolve.cc, src/f-det.cc, src/f-dassl.cc,
-	src/f-colloc.cc, src/utils.cc, src/variables.cc, src/tree.cc,
-	src/tree-const.cc, src/tc-extras.cc, src/sysdep.cc, src/symtab.cc,
-	src/octave-hist.cc, src/pr-output.cc, src/input.cc,
-	src/g-builtins.cc, src/f-det.cc, src/f-inv.cc, src/file-io.cc:
-	Convert most calls to message() to calls to warning() or error()
-	instead.
-
-	* src/f-npsol.cc (npsol): Don't try to create the linear
-	constraint object before checking array sizes.
-
-Fri Nov 12 04:36:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tc-inlines.cc (is_one_zero): New function.
-	* src/tc-assign.cc: Everywhere we check for is_zero_one, also
-	check for is_one_zero.  Some people write ranges that go in
-	decreasing order...
-	* src/tc-index.cc: Likewise.
-
-	* src/tc-inlines (index_check (Range&, int&, char*)): Eliminate
-	second arg -- there is no need to return the max value of the
-	range.  Correctly compute and check the minimum value.
-	* src/tc-index.cc: Change all callers, and check the max value
-	there.
-	* src/tc-assign.cc: Likewise.
-
-	* src/tc-assign.cc (do_vector_assign): Handle assignment of empty
-	matrix for int, idx_vector, and Range cases.
-	(do_matrix_assign): Likewise, for cases when one of the indices is
-	a colon and the other is an int, idx_vector, or Range.
-
-	* liboctave/Range.h (Range): Rename private data members rng_foo
-	instead of just _foo.
-	* liboctave/Range.cc: Change names where used.
-
-	* liboctave/Range.cc (max): Return correct value even when the
-	elements in the range don't line up exactly with the limit.
-	(min): Likewise.
-	(sort): New function.
-
-	* src/tc-assign.cc (delete_row (int)): New function.
-	(delete_rows (idx_vector&)): Ditto.
-	(delete_rows (Range&)): Ditto.
-	(delete_column (int)): New function.
-	(delete_columns (idx_vector&)): Ditto.
-	(delete_columns (Range&)): Ditto.
-
-	* src/tree-const.h (is_empty): Don't try checking rows and columns
-	if type is magic_colon or unknown.  Return false instead.
-	(is_zero_by_zero): New function.
-
-	* src/idx-vector.cc (sort): New function.
-	(intcmp): New static function, for sorting.
-
-Thu Nov 11 02:31:13 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/menu.m: Update to use new va_start() and va_arg()
-	functions.
-
-	* src/g-builtins.cc (builtin_va_arg): Rename from
-	builtin_get_next_arg.
-	(builtin_va_start): New function.
-	* src/builtins.cc (builtin_general_functions): Fix up list.
-
-	* src/tree.cc (tree_function::va_arg): Rename from get_next_arg.
-	(tree_function::va_start): New function.
-
-	* src/tree.h (tree_function::num_named_args): New data member.
-	* src/tree.cc (tree_function::define_param_list): Set it.
-	(tree_function::eval): Unwind-protect it.
-
-Wed Nov 10 03:37:44 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_identifier::assign): Also check to make sure
-	that the symbol record is defined since symbol_record::is_variable
-	may return true even if the record is undefined.
-	* src/variables.cc (link_to_global_variable): Don't try to copy a
-	NULL_TREE_CONST.
-
-	* src/tree-const.cc (tree_constant_rep::matrix_value): If the
-	current value is a scalar, return 1x1 matrix.
-	* src/tc-assign.cc (tree_constant_rep::check_vector_assign):
-	Handle case of zero size LHS.
-	Clean up formatting of some error messages.
-
-	* src/lex.l ({EL}): Recognize ... when not at end of line.
-	* src/octave.cc (curr_function): New global variable.
-	* src/g-buitlins.cc (builtin_get_next_arg): New function.
-	* src/builtins.cc (builtin_general_functions): Add it to the list.
-	* src/parse.y (param_list1): Handle ... at end of parameter list.
-	Abort parse on error.
-	(ELLIPSIS): New token, for variable argument lists.
-	* src/tree.h (tree_function): Add varargs_ok, args_passed,
-	num_args_passed, and curr_arg_number data members to handle
-	variable argument lists.
-	(tree_parameter_list::marked_for_varargs): New data member.
-	* src/tree.cc (tree_function::takes_varargs): New function.
-	(tree_function::get_next_arg): New function.
-	(tree_parameter_list::mark_varargs): New function.
-	(tree_parameter_list::takes_varargs): New function.
-	(tree_function::eval): Set curr_function, args_passed, and
-	num_args_passed for use by get_next_arg.
-
-Mon Nov  8 14:22:34 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.79 released.
-
-	* src/builtins.cc (builtin_text_functions):  Correct usage message
-	for who.
-
-	* scripts/dgram.m: New function, from R. Bruce Tenison
-	(btenison@eng.auburn.edu).
-	* scripts/dlqe.m: Ditto.
-	* scripts/dlqr.m: Ditto.
-	* scripts/c2d.m: Ditto.
-
-	* src/tree.cc (tree_identifier::name): Make it const.
-	(tree_builtin::name): Ditto.
-	(tree_parameter_list::name): Ditto.
-	(tree_word_list::name): Ditto.
-
-	* src/symtab.cc (symbol_table::save): Delete list of names after
-	saving.
-
-	* src/symtab.h (symbol_table): Move #defines outside of class
-	declaration.
-
-Sun Nov  7 07:03:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makeconf.in (CXX): Don't set from C++.  Do set from @CXX@, which
-	is determined by configure.  Don't set C++FLAGS.
-
-	* src/tree.cc: (tree_function::eval (int, int)): Simply call
-	eval (tree_constant *, int, int, int) with nargin = 1 and args =
-	NULL_TREE_CONST instead of duplicating most of that function in place.
-
-	* src/parse.y (func_def2): Reset id_name after renaming identifier.
-	Clear id_name from top level symbol table before defining identifier.
-
-Sat Nov  6 04:38:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: When checking for g++, set CXX, not GXX.
-
-	Merge min changes from Bruce Tenison (btenison@eng.auburn.edu) and
-	make the corresponding changes for max.
-
-	* src/tc-extras.cc (min (ComplexMatrix&, ComplexMatrix&)): New
-	function.
-	(max (ComplexMatrix&, ComplexMatrix&)): Ditto.
-	(column_min): Handle complex args and two return values.
-	(column_max): Likewise.
-
-	* liboctave/Matrix.cc (row_min_loc): New function.
-	(row_max_loc): New function.
-	(column_min_loc): Ditto.
-	(column_max_loc): Ditto.
-
-Fri Nov  5 03:12:55 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.78.
-
-	* src/octave.h (clean_up_and_exit): Change form of declaration for
-	GCC 2.5.x and beyond.
-
-	* src/tree.cc (tree_identifier::eval): Correctly handle printing
-	of identifier tags and conversion to assignment to `ans'.
-	* src/parse.y (maybe_convert_to_ans_assign): Simplify.
-	For identifiers, defer decision about making an ans assignment
-	until evaluation time since identifiers can be undefined at parse
-	time, and we can't tell what to do until we know what the def is.
-	* src/tree.cc (tree_identifier::mark_for_possible_ans_assgin): New
-	function.
-	* src/tree.cc (tree_index_expression::mark_for_possible_ans_assign):
-	New function.
-	* src/tree.h (tree_identifier): Add new private data,
-	maybe_do_ans_assign.
-
-	* src/t-builtins.cc (builtin_who): Major overhaul.  Support long
-	listings.
-	(print_symbol_info_line): New function.
-	(print_long_listing): Ditto.
-	(maybe_list): Ditto.
-
-	* src/user-prefs.cc (sv_editor): New function for builtin variable
-	EDITOR.
-	* src/octave-hist.cc (do_edit_history): Use user_pref.editor, not
-	just the EDITOR environment variable.
-
-	* src/user-prefs.cc (ignore_function_time_stamp): New function for
-	new builtin variable ignore_function_time_stamp.
-	* src/variables.cc (symbol_out_of_date): Use value of new
-	user_pref.ignore_function_time_stamp to decide whether to check to
-	see if a file has changed.
-	* src/tree.h (tree_function): Add new private data, system_m_file.
-
-	* src/builtins.cc (string_variables): Add EDITOR and
-	ignore_function_time_stamp EDITOR to the list.
-	(bultin_general_functions): Add is_global to the list.
-
-	* src/t-builtins.cc (builtin_clear): Make it work with new
-	variable scoping rules.
-	(builtin_document): Likewise, using new document_symbol()
-	function.
-	(builtin_save): Likewise.  Allow regular expression arguments.
-	Don't save builtin variables that are read-only.
-
-	* src/utils.cc (octave_home): Don't declare static.
-	(octave_lib_dir): Likewise.
-	(octave_info_dir): Likewise.
-	(default_editor): New function.
-
-	* src/tree.cc (tree_builtin::def): Delete function.
-	(tree_identifier::def): Likewise.
-	(tree_identifier::symrec): Likewise.
-
-	* src/tree.h (tree_builtin): Store name of function, not pointer
-	to symbol record.
-
-	* src/user-prefs.cc (warn_assign_as_truth_value): Lookup
-	"warn_assign_as_truth_value", not "user_pref.warn...".
-
-	* src/tree-base.h (def): Delete unused virtual function.
-	(is_prefix_expression): New virtual function.
-	(mark_for_possible_ans_assign): Likewise.
-	(is_system_m_file): Likewise.
-	(stash_m_file_name): No longer needs to be virtual.
-	(stash_m_file_time): Likewise.
-
-	* src/octave.cc (octave_Complex_error_handler): Define, to keep
-	errors in the Complex class from aborting Octave.  This is only a
-	temporary fix, I hope.
-	(main): Install it.
-	(initialize_globals): Get default editor.
-	(main): Call initialize_symbol_tables to do that instead of
-	creating them directly in main.
-
-	* src/variables.cc (document_symbol): New function.
-	(initialize_symbol_tables): Likewise.
-	(install_builtin_mapper_function): Likewise.
-	(install_builtin_text_function): Likewise.
-	(install_builtin_general_function): Likewise.
-	(install_builtin_variable): Likewise.
-	(install_builtin_variable_as_function): Likewise.
-	(bind_nargin_and_nargout): Likewise.
-	(bind_builtin_variable): Likewise.
-	(link_to_global_variable): Likewise.
-	(link_to_builtin_variable): Likewise.
-	(link_to_builtin_or_function): Likewise.
-	(force_link_to_function): Likewise.
-	(is_globally_visible): Likewise.
-	(is_builtin_variable): Likewise.
-
-	* src/tree.cc (print_as_scalar): Avoid trying to print row vectors
-	on one line.
-
-	* src/builtins.cc (install_buitlins): Simplify installation of
-	builtin functions using new install_builtin_*_function functions.
-	Ditto for using bind_builtin_variable for installing variables.
-
-	* src/tree.h (tree_global_command): New class.
-	* src/tree.cc (tree_global_command::*): Implement new class to
-	make global command executable.
-	* src/parse.y (global_decl): Make global an executable statement.
-
-	* src/parse.y (func_def2): Rework to match new way of handling
-	global variables and function names in the symbol table.
-	Mark functions as `system' or not.
-	Don't use id_to_define.
-	If m-file and function names disagree, rename function to match
-	m-file name.
-	* src/tree.cc (tree_identifier::rename): New function.
-	* src/parse.cc, src/parse.h (id_to_define): Delete unused global
-	variable.
-
-	* src/varables.cc (builtin_string_variable): Fix to match new
-	rules for global and builtin variables.
-	(builtin_real_scalar_variable): Likewise.
-
-	* src/tree.cc (tree_identifier::assign): Make it work with new
-	rules for global variables.
-	(tree_identifier::parse_m_file): Likewise.
-	(tree_identifier::do_lookup): Likewise.
-
-	* src/tree.cc (mark_as_system_m_file): New function.
-	(is_system_m_file): Ditto.
-
-	* src/tree.cc (clear_symbol_table): New function, to be used in an
-	unwined_protect element for clearing function symbol tables on
-	exit or error.
-
-	* src/tree.cc (tree_function::eval): Simplify using
-	bind_nargin_and_nargout.
-	Clear symbol table on exit or error with unwind_protect.
-
-	* src/tree.cc (tree_prefix_expression::is_prefix_expression): New
-	function.
-
-	* src/g-builtins.cc (builtin_is_global): New function.
-
-	* src/lex.l (lookup_identifier): Now that global variable binding
-	has been fixed, only look for symbols in the current symbol table.
-	Really.  I mean it this time.
-
-	* src/symtab.cc: Complete overhaul, to make global variables work
-	a bit more reasonably.
-
-Mon Nov  1 15:03:39 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Matrix.h (DiagMatrix::rows): Return nr, not len.
-	(ComplexDiagMatrix::rows): Ditto.
-	* src/Matrix.h (DiagMatrix::cols): Return nc, not len.
-	(ComplexDiagMatrix::cols): Ditto.
-	(DiagMatrix::columns): Ditto.
-	(ComplexDiagMatrix::columns): Ditto.
-
-	* liboctave/DiagMatrix.cc (DiagMatrix::row): Make it work for
-	square case.
-	(DiagMatrix::column): Likewise.
-	(ComplexDiagMatrix::row): Likewise.
-	(ComplexDiagMatrix::column): Likewise.
-
-	* liboctave/DiagMatrix.cc (DiagMatrix::operator <<): Print spaces
-	between elements.
-	(ComplexDiagMatrix::operator <<): Likewise.
-
-Fri Oct 29 15:32:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.77.1.
-
-	* src/symtab.cc (symbol_record::alias): Don't copy formal_param or
-	forced_global attribute.
-
-	* src/symtabl.cc (symbol_table::bind_globals): Don't bind to
-	global symbol unless it has forced_global attribute set.
-
-	* src/tree.cc (print_as_scalar): New function.
-	(tree_identifier::eval): Use it.
-	(tree_simple_assignment_expression::eval): Likewise.
-	(tree_multi_assignment_expression::eval): Likewise.
-
-	* src/lex.l (is_keyword): Give better error message for attempts
-	to define nested functions.
-
-	* src/parse.y (global_decl): Return a command_list to execute
-	(this makes assignments in global declarations executable).
-
-	* src/tree.cc (tree_for_command): Handle line and column info in
-	constructors and for error messages.
-	(tree_while_command): Ditto.
-	(tree_if_command): Ditto.
-	(tree_break_command): Ditto.
-	(tree_continue_command): Ditto.
-	(tree_return_command): Ditto.
-	(*::eval_error): Only print messages if error_state > 0.
-	(various): Only need to check that error_state is non-zero before
-	calling eval_error().
-
-	* src/parse.y: Handle line and column information for FOR WHILE IF
-	ELSEIF ELSE BREAK CONTINUE and FUNC_RET tokens.
-	* src/lex.l: Likewise.
-
-	* src/octave.cc (parse_and_execute): Reset parser before starting
-	new parse.
-
-	* src/tree-plot.cc (various): Check error_state in many more
-	places, and issue more meaningful error messages.
-
-	* src/tree-const.cc (maybe_resize): Don't call
-	jump_to_top_level() on errors.
-	(tree_constant_rep (Range)): Likewise.
-
-	* src/g-builtins.cc (builtin_error): Use error(), not
-	print_if_string() to print error messages.
-	* src/tree-const.cc (print_if_string): Delete unused function.
-
-	* src/tc-assign.cc (various): Check error_state after calls to
-	maybe_resize().
-
-	* src/tc-index.cc (various): Always check the state of idx_vectors
-	after trying to create them.
-	* src/tc-assign.cc (various): Likewise.
-
-	* src/idx-vector.cc: Use 0, not NULL.
-	Don't include stdlib.h.
-	(initialized): New data member, set nonzero if the idx_vector has
-	been properly initialized.
-	Never call jump_to_top_level () if initialization fails.
-	Add operator void *(), so we can test the state of an idx_vector
-	with `if (vector)'.
-
-	* src/pager.cc: Explicitly initialize pager_buf to NULL.
-
-	* src/tree-base.h: Move includes ahead of other definitions.
-
-	* liboctave/NLEqn.cc (NLEqn::NLEqn (const Vector&, const NLFunc)):
-	Initialize n from xvec, not x.
-
-Mon Oct 25 18:01:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/user-prefs.cc (sv_info_file): New function.
-	* src/user-prefs.h (user_pref): Add info_file to the list.
-	* src/t-builtins.cc (try_info): Use it instead of
-	DEFAULT_INFO_FILE.
-
-	* src/utils.cc (default_info_file): New function.
-	(octave_info_dir): Likewise.
-
-	* src/defaults.h.in (DEFAULT_INFO_FILE): Delete unnecessary
-	definition since we figure out what it should be in utils.cc now.
-	* src/Makefile.in (defaults.h): Don't substitute DEFAULT_INFO_FILE.
-	* src/Makeconf.in (DEFAULT_INFO_FILE): Delete definition.
-
-	* src/octave.cc (info_file): New global variable.
-	(initialize_globals): Call default_info_file () to initialize it.
-	(--info-file): New command line option.
-
-	* src/builtins.cc (string_variables): Add INFO_FILE to the list.
-	(install_builtins): Define it.
-
-	* info/filesys.c (compress_suffixes): Choose gunzip for .gz files.
-
-Sat Oct 23 17:46:09 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.77 released.
-
-	* src/Makefile.in (INCFLAGS): Don't include info or dld
-	directories.
-	* dynamic-ld.cc: Include dld/dld.h, not just dld.h.
-	* t-buitlins.cc: Include info/info.h, info/dribble.h, and
-	info/terminal.h, not just info.h, dribble.h, and terminal.h.
-
-	* src/t-builtins.cc (builtin_help): New option, -i, for invoking
-	info browser.  If -i is not given, just do what we used to do, but
-	point to help -i as a way to get additional information.
-
-	* builtins.cc (print_usage): New function.
-
-	* g-builtins.cc (all builtins): Call print_usage to get usage message.
-	* t-builtins.cc (all builtins): Likewise.
-
-Fri Oct 22 15:56:16 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Cholesky changes from R. Bruce Tenison (btenison@eng.auburn.edu):
-
-	* src/f-chol.cc, src/f-chol.h: New files for the Cholesky
-	Factorization.
-	* src/Makefile.in (SOURCES, OBJECTS, DLD_OBJECTS): Add to lists.
-	* src/g-builtins.cc (builtin_chol): New function.
-	* src/g-builtins.h: Declare it.
-
-	* liboctave/Matrix-ext.cc (CHOL, ComplexCHOL): New classes.
-
-	* libcruft/lapack: dpotrf.f, zpotrf.f, dpotf2.f, zpotf2.f: New
-	files.
-
-	* libcruft/blas: dsyrk.f, zherk.f: New files.
-
-Fri Oct 22 14:04:16 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc (builtin_schur): Fourth arg for DLD_BUILTIN is
-	schur, not hess.
-
-	* scripts/dare.m: Correct usage of fprintf.
-
-	* src/utils.cc (raw_mode): Only complain about stdin not a tty if
-	interactive or forced interactive.
-
-Thu Oct 21 17:00:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/builtins.cc (install_builtins): Try harder to make
-	initialization of NaN work.  Make note about possible fixes if it
-	still doesn't work.
-
-	* src/utils.cc (raw_mode): [HAVE_TERMIOS_H] and [HAVE_TERMIO_H]
-	Don't set TAB3 since it doesn't seem necessary and some systems
-	don't have it by this name.
-	[HAVE_SGTTY_H] To be consistent, don't set XTABS here either.
-
-	* src/error.c (error): Call flush_output_to_pager before printing
-	error message.
-	(panic): Likewise, before aborting.
-
-	* src/symtab.cc (symbol_record::undefine): Delete unused function.
-	(symbol_table::undefine): Likewise.
-
-	* src/symtab.cc (clear): Never delete symbol records from the
-	table.  Only delete the definitions.  This makes clear and
-	undefine equivalent, so we don't need them
-	* src/tree.cc (tree_function::eval): Call symbol_table::clear, not
-	symbol_table::undefine.
-
-	* src/t-builtins.cc (builtin_clear): Only clear global symbols if
-	we are at the top level.
-	* src/parse.y (CLEAR): Delete token.
-	(word_list_command): Remove code to handle CLEAR as special case.
-	(expect): Only 19 now.
-	* src/lex.l (handle_identifier): Remove special code for clear.
-	It's ok to use it in a function body now.
-
-	* src/t-builtins.cc: Include extern "C" declarations for Info stuff.
-	(builtin_help): If given an argument, try to get help directly
-	from info file first.  If that fails, do as before.
-	(help_syms_list): New function:
-	(simple_help): New function.
-	(try_info): New function.
-	(help_from_list): New function.
-
-	* src/defaults.h.in (DEFAULT_INFO_FILE): Define new macro.
-	* Makeconf.in: Set value of DEFAULT_INFO_FILE.
-	* Makeconf.in (INSTALL_PROGRAM): Add definition.
-	* Makefile.in (SUBDIRS): Add info directory.
-	(info): New target.
-	* configure.in: Add autoconf macros to handle info configuration.
-
-	* info/Makefile.in: Major changes to make it work with Octave's
-	Makeconf file, etc.  The default action is now to build a
-	libinfo.a file.
-
-	* info/error.c: New file.  Move error functions here from info.c.
-
-	* info/signals.c (clear_info_signal_handler): New function, useful
-	if info is used directly in another program.
-
-	* info/termdep.h: Handle termios too.
-	* info/terminal.c (terminal_prep_terminal): Handle termios.
-	* (terminal_unprep_terminal): Likewise
-
-	* info/session.c (initialize_info_session): Add arg to make
-	clearing the screen conditional.  Useful if we want to call
-	index_entry_exists() first before displaying anything.
-	Change all callers.
-
-	* info/session.c (finish_info_session): New function.
-
-	* info/session.c (dispatch_error): Change message to include info
-	about how to get help and how to quit.
-
-	* info/info.c (index_search_p): New flag.
-	(--index-search): New option, like apropos, but search the indices
-	and display the first node found.
-
-	* info/indices.c (do_info_index_search): New function, modified
-	from info_index_search to allow searching the index for a string
-	without prompting for it.
-	(info_index_search): Just call do_info_index_search.
-	(index_entry_exists): New function, to allow us to find out if
-	there is an index entry for a given string without actually
-	displaying anything.
-
-	* info: New directory, containing source for GNU info browser.
-
-Tue Oct 19 00:14:33 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/octave-hist.cc (input_from_tmp_history_file): New global flag.
-	(do_edit_history): Protect and set it.
-	(do_run_history): Likewise.
-	* src/parse.y (func_def2): Use it to see that input is coming from
-	a temporary file.  This means that we shouldn't exit when we're
-	done reading it, and we should treat it just as if the input were
-	coming from the keyboard.
-
-	* variables.cc (force_global): Force aliasing so it will happen
-	even if the symbol record is undefined.
-
-	* src/lex.l (lookup_identifier): Simplify
-
-	* src/lex.l (reset_parser): Reset error_state here.
-	* src/octave.cc (main): Not here.
-
-Mon Oct 18 14:27:02 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-const.cc: Delete constructor for tree_constant from
-	String.
-
-	* In src: tree.h, mappers.h, unwind-prot.h, parse.h, file-io.h,
-	arith-ops.h, tree-base.h, tree-const.h, g-builtins.h,
-	idx-vector.h, builtins.h, dynamic-ld.h, xdiv.h, xpow.h,
-	pr-output.h, input.h, symtab.h, utils.h: Avoid including files
-	unnecessarily.
-
-	* In src: tc-inlines.cc, mappers.cc, variables.cc, arith-ops.cc,
-	tree.cc, tree-const.cc, g-builtins.cc, file-io.cc, idx-vector.cc,
-	tc-assign.cc, tc-index.cc, builtins.cc, dynamic-ld.cc, xdiv.cc,
-	xpow.cc, pr-output.cc, tc-extras.cc, input.cc, symtab.cc,
-	utils.cc: Sprinkle liberally with const.
-
-	* In src: f-syl.cc, f-svd.cc, f-schur.cc, f-rand.cc, f-qzval.cc,
-	f-quad.cc, f-qr.cc, f-qpsol.cc, f-npsol.cc, f-lu.cc,
-	f-lsode.cc, f-lpsolve.cc, f-inv.cc, f-ifft.cc, f-hess.cc,
-	f-givens.cc, f-fsqp.cc, f-fsolve.cc, f-fft.cc, f-expm.cc,
-	f-eig.cc, f-det.cc, f-dassl.cc, f-colloc.cc, f-balance.cc:
-	Add const qualifier to tree-constant arg.
-
-Sat Oct 16 12:22:24 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-const.h, src/tree-const.cc: Add const qualifier to
-	constructor arguments passed by reference.
-	Pass Complex arguments by const reference instead of by value.
-
-	* liboctave/Matrix.h, liboctave/Matrix.cc, liboctave/ColVector.cc,
-	liboctave/RowVector.cc liboctave/DiagMatrix.cc: Pass Complex
-	arguments by const reference instead of by value.
-
-Wed Oct 13 14:13:29 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc (decode_prompt_string): ctime returns time_t, which
-	might not be a long.
-
-	* src/variables.cc (identifier_exists):	Only return non-zero if
-	the name has a definition.
-
-	* src/f-npsol.cc (npsol): Call error(), not message(), to print
-	error messages.
-	(linear_constraints_ok): Likewise.
-	(nonlinear_constraints_ok): Likewise.
-
-	* src/f-qpsol.cc (qpsol): Don't try to create the linear
-	constraint object before checking array sizes.  Wouldn't exception
-	handling be nice?
-	Call error(), not message(), to print error messages.
-	Check to ensure that the bounds on linear constraints are
-	vectors.
-
-	* src/lex.l (lookup_identifier): Don't bind global variables
-	immediately in loops or conditionals, even at the top level.
-
-Sun Oct 10 8:48:00 1993  John Eaton  (jwe@schoch.che.utexas.edu)
-
-	* README.doc: New file.
-	* Makefile.in (doc-dist): New target.
-	* doc/Makefile.in (FORMATTED): New macro.
-	(doc-dist): New target.
-
-	* src/tree.cc (tree_identifier::eval): Don't print anything if an
-	error is encountered.
-	(tree_simple_assignment_expression::eval): Likewise.
-
-	* src/tc-assign.cc (do_matrix_assignment): Handle resizing
-	correctly when indices are (:,range), (:,matrix), (range,:), or
-	(matrix,:) and the lhs is empty or undefined.
-
-Tue Oct  5 04:02:37 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.76 released.
-
-	* src/octave.cc (main):	Print usage message if we are given more
-	than one extra argument on the command line.
-	Delay printing startup message until just before setting the toplevel
-	jump context.
-
-	* src/lex.h (DO_COMMA_INSERT_CHECK): Delete unused macro.
-
-	* src/lex.l (handle_identifier): New function.
-	({IDENT}/{S}*=, {IDENT}{S}*): Use it instead of duplicating code.
-	(do_comma_insert_check): Use yyunput instad of returning original
-	character count.
-	Call directly instead of using DO_COMMA_INSERT_CHECK macro.
-
-Mon Oct  4 08:06:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.75.4.
-
-	* src/tree-const.cc (tree_constant_rep::eval ()): Avoid calling
-	rows() and columns() for things like magic_colon.
-
-Sun Oct  3 19:39:33 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	Changes to add line and column info to run-time error messages:
-
-	* src/tree.cc (tree_identifier, tree_prefix_expression,
-	tree_postfix_expression, tree_simple_assignment_expression,
-	tree_multi_assignment_expression, tree_colon_expression,
-	tree_index_expression): Modify constructors to allow line and
-	column information to be stored.
-	(abort_on_undefined): Delete (now) unnecessary static variable.
-	(all eval() functions): If error_state, return immediately.
-	(tree_matrix::eval ()): Call error and return tree_constant()
-	instead of jumping to top level on error.
-	(tree_identifier::parse_m_file ()): When starting to read an
-	M-file, initialize current_input_column to 1, not 0.
-	(tree_identifier::eval_undefined_error ()): Improve error message
-	with line and column info if it is available.  Don't abort to top
-	level on errors.
-	(tree_function::traceback_error ()): New function.
-	(tree_function::eval ()): Don't jump to top level on errors.
-	Call traceback_error if there is an error evaluating the command
-	list.
-
-	* src/tree.cc (tree_prefix_expression::eval_error ()): New function.
-	(tree_postfix_expression::eval_error ()): Ditto.
-	(tree_unary_expression::eval_error ()): Ditto.
-	(tree_binary_expression::eval_error ()): Ditto.
-	(tree_simple_assignment_expression::eval_error ()): Ditto.
-	(tree_multi_assignment_expression::eval_error ()): Ditto.
-	(tree_colon_expression::eval_error ()): Ditto.
-	(tree_index_expression::eval_error ()): Ditto.
-
-	* src/tree.cc (tree_function::stash_function_name ()): New function.
-	* src/parse.y (FCN): Use it.
-
-	* src/lex.l: Return line and column info for many (but not all)
-	tokens.
-
-	* src/parse.y: Handle token values with the token class defined in
-	token.cc.
-	(check_end ()): New function.
-	(end_error ()): Improve error messages by including line and
-	column info.
-
-	* src/arith-ops.cc (lots of functions): Don't jump to top level on
-	errors.
-	* src/tree.cc (tree_unary_expression::eval ()),
-	tree_binary_expression::eval ()): Handle error condition here.
-
-	* src/gripes.cc (gripe_nonconformant): Add additional form of this
-	function to allow message to include dimensions.  Change most
-	callers to use new form
-
-	* src/octave.cc: Initialize column counter to 1, not 0.
-	(main): Reset error_state before evaluating each top level
-	command.
-
-	* src/tree-plot.cc (tree_plot_command::eval ()): If error_state,
-	return immediately.
-
-	* src/tree-const.cc (do_binary_op ()): Return tree_constant() instead
-	of jumping to top level on errors.
-	(do_unary_op): Likewise.
-	(tree_constant_rep::eval ()): If error_state, return immediately.
-	Convert 1x1 matrices to scalars.
-
-	* src/tc-assign.cc (tree_constant_rep::do_scalar_assignment ()):
-	Don't jump to top level on error.
-	If there is an error while attempting to convert an undefined
-	variable to a matrix, don't suddenly create an empty matrix.
-	(tree_constant_rep::fortran_style_matrix_assignment ()): Check
-	return value of range_max_check() and don't jumpt to top level on
-	errors.
-	(tree_constant_rep::vector_assignment ()): Check return value of
-	index_check and don't jump to top level on errors.
-	(tree_constant_rep::check_vector_assign ()): Don't jump to top
-	level on errors.
-	(tree_constant_rep::do_matrix_assignment ()): Check return value
-	of index_check and don't jump to top level on errors.
-
-	* src/tc-extras.cc (get_dimensions ()): Call error (sets error state)
-	but don't jump to top level on errors.
-	(fill_matrix): Return tree_constant() on error.
-	(identity_matrix): Likewise.
-
-	* src/error.cc (error_state): New global variable, initialize to zero.
-	(error): Set it to one.
-
-	* src/tc-index.cc (tree_constant_rep::valid_as_scalar_index ()):
-	Don't declare unused variable retval.
-	(tree_constant_rep::do_scalar_index ()): Return tree_constant()
-	instead of jumping to top level on error.
-	(tree_constant_rep::fortran_style_matrix_index): Don't jump to top
-	level on indexing or range errors.
-	(tree_constant_rep::do_vector_index ()): Likewise.
-	(tree_constant_rep::do_matrix_index ()): Likewise.
-
-	* src/tc-inlines (range_max_check): Return -1 instead of jumping
-	to top level on error.
-	(index_check): Likewise.
-
-	* src/utils.cc (check_dimensions): Call error, not warning, and
-	don't jump to top level.
-
-	* src/tree-base.h (line_num, column_num): New data members for all
-	tree classes.
-	(line (), column ()): New virtual functions to access line and
-	column info.
-
-	* src/lex.l (enum end_tok_type, enum plot_tok_type): Delete
-	declarations (now in token.h).
-
-	* src/lex.h (YY_INPUT, YY_FATAL_ERROR, DO_COMMA_INSERT_CHECK,
-	TOK_RETURN, BIN_OP_RETURN): Move macro definition here, from
-	lex.l.  Rename RETURN TOK_RETURN.
-
-	* src/token.cc, token.h: New files that define a class for tokens
-	that includes line and column information.
-
-Wed Sep 29 11:15:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/octave.cc: Use GNU getopt to handle option parsing.
-	* src/getopt.h src/getopt.c src/getopt1.c: New files for GNU
-	getopt.
-	* src/Makefile.in: Add them to the appropriate lists.
-
-	* src/utils.cc (raw_mode): Use the termios.h terminal driver
-	interface if it is available.
-	* configure.in: Check for termios.h
-
-	* src/tree-plot.cc (tree_subplot_list::print (int, ostrstream&)):
-	If the data to be plotted is a string but it doesn't name a file,
-	try sending it to gnuplot directly.
-
-Tue Sep 28 16:06:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/QPSOL.cc (QPSOL::minimize (double&, int&, Vector&)):
-	Correct dimensions of work arrays, based on QPSOL source.
-	Pass ncon, which is max (1, nclin), not n, as the row dimension of
-	clin.
-
-	* src/f-npsol.cc (linear_constraints_ok): Improve warning for the
-	case of constraints with zero dimensions.
-	(nonlinear_constraints_ok): Likewise.
-
-Mon Sep 27 01:20:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.75.3.
-
-	* Makefile.in (dist): Make file permissions for distribution rw.
-	(binary-dist): Ditto.
-	(local-dist): Ditto.
-
-Sat Sep 25 15:29:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/pr-output.cc: Include stdio.h, for sprintf.
-
-	* src/input.cc (octave_gets): Set octave_gets_line to NULL after
-	freeing it.
-
-	* Version 0.75.2.
-
-	* liboctave/Matrix.cc (Matrix::operator * (const ColumnVector&):
-	Correct dimension of return value.
-	(ComplexMatrix::operator * (const ComplexColumnVector&)): Ditto.
-
-Tue Sep 21 20:42:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree.cc (tree_identifier::assign (tree_constant&)):
-	Correctly handle case of hiding a function with a variable when
-	the variable has not been flagged as global.
-	tree_identifier::assign (tree_constant&, tree_constant*, int)):
-	Likewise.
-
-	* src/variables.cc (force_global): When a variable is moved to the
-	global symbol table, mark it as global.
-
-	* src/symtab.cc (symbol_record::symbol_record ()): Initialize
-	forced_global.
-	(symbol_record::clear_visible ()): Reset forced_global to zero.
-	(symbol_record::clear_all ()): Ditto.
-	(symbol_record::mark_as_forced_global ()): New function.
-	(symbol_record::is_forced_global ()): New function.
-	(symbol_record::alias ()): Also copy forced_global attribute.
-
-	* src/symtab.h (symbol_record::forced_global): New private data
-	member, used to record when a variable has been explicitly
-	declared global.
-
-	* src/lex.l (lookup_identifier): Look in current scope first.
-
-Mon Sep 20 03:15:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/parse.y, src/tree.cc, src/tree.h: Allow `for' command to
-	assign to an index expression, not just an identifier.
-
-	* src/t-builtins.cc (builtin_clear (int, char **)): Don't delete
-	g_names twice.
-
-	* src/symtab.cc	(symbol_table::list (int&)): Make sure count is
-	initialized to zero.
-	(symbol_table::var_list (int&)): Ditto.
-	(symbol_table::fcn_list (int&)): Ditto.
-
-Sat Sep 18 04:06:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/lex.l, src/parse.y, src/parse.h: Use new global variable
-	past_plot_range to make gplot and gsplot smarter about
-	distinguishing plot ranges and literal matrices.
-
-Fri Sep 17 01:06:30 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.75.1 released.
-
-	* src/f-qzval.cc: Include <float.h> for DBL_EPSILON.
-
-	* src/symtab.cc (symbol_record::save (ostream&, int)): Don't print
-	a warning for ans being undefined.  Call warning to print the
-	message, and change the text to make it clearer.
-	(symbol_table::save (ostream&, int)): Don't crash if there aren't
-	any symbols to save.
-
-Thu Sep 16 00:21:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/t-builtins.cc (builtin_help): When trying harder to find
-	help for M-files, only insert the symbol into the global symbol
-	table if there really is an M-file of the given name in the path.
-
-Wed Sep 15 02:08:27 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.75.
-
-	* src/Makefile.in (INCLUDES): Distribute defaults.h
-	(%.d: %.cc): Don't fail if we can't determine dependencies.
-	(DISTFILES): Include move-if-change.
-
-Tue Sep 14 21:23:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/perror.m: Use err, not info for fsolve section.
-
-Mon Sep 13 19:29:26 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/utils.cc (get_m_file_names): Call closedir(), not free(), to
-	dispose of directory structure.
-
-Sun Sep 12 19:07:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-const.cc (tree_constant_rep::double_value): Rearrange
-	to avoid warning about reaching end of non-void function.
-	(tree_constant_rep::matrix_value): Ditto.
-
-	* src/error.cc (panic): Declare volatile.
-	* src/utils.cc (jump_to_top_level): Declare as `void volatile',
-	not `volatile void'.
-
-	* src/tree-const.cc (tree_constant_rep::complex_matrix_value):
-	Make it work even if the internal representation is really a real
-	or complex scalar or a real matrix.
-	(tree_constant_rep::complex_scalar_value): Make it work even if
-	the internal representation is really a real scalar.
-
-	* src/f-syl.cc (syl): Delete ComplexMatrixLoad().
-	Use complex_matrix_value(), not ComplexMatrixLoad().
-
-	* src/tree-const.cc (vector_of_empties): Renamed from empty_tree,
-	moved from f-syl.cc.
-
-	* src/f-syl.cc (syl): Call vector_of_empties() instead of empty_tree().
-	* src/f-qzval.cc (qzvalue): Ditto.
-
-	* src/tree-const.h (tree_constant::is_empty): New inline function.
-
-	* src/f-syl.cc (syl): Call is_empty instead of empty_arg.
-	* src/f-qzval.cc (qzvalue): Ditto.
-	* src/f-expm.cc (matrix_exp): Ditto.
-
-Thu Sep  9 22:40:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/Matrix.cc (Matrix::transpose): Make it work for empty
-	matrices.
-	(ComplexMatrix::transpose): Ditto.
-
-Mon Sep  6 04:56:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/tree-plot.cc (tree_subplot_list::print): 	If the plot data
-	is a string and it names a file, plot the data in the file.
-
-	* src/octave.cc (execute_startup_files): Try harder to avoid
-	executing $HOME/.octaverc twice.
-
-	* liboctave/DAE.cc (DAE::integrate (Vector&, Matrix&, Vector&)):
-	Add missing parameter in call to integrate() if no critical points
-	are specified.
-
-Sat Sep  4 16:18:49 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
-
-	* src/octave.cc (execute_startup_files): Don't execute
-	$HOME/.octaverc twice.
-
-Mon Aug 30 11:25:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/t-builtins.cc (builtin_clear): Handle regular expressions.
-
-Fri Aug 27 07:25:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/RowVector.cc:
-	(RowVector::operator * (const ColumnVector& a) const): Fix brain-o.
-
-Wed Aug 18 00:29:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* list_primes.m: New M-file.
-
-	* src/tc-index.cc (do_scalar_index): Handle two vector args of all
-	ones.
-
-Tue Aug 17 06:26:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/file-io.cc (process_printf_format): Use NINT for * modifier
-	argument.
-
-Mon Aug 16 19:30:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/mappers.cc: (arg (double)): Return pi for negative real values.
-
-Sun Aug 15 05:08:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/octave-hist.cc (mk_tmp_hist_file): New function, extracted
-	from do_edit_history.
-	(do_edit_history): Simplify using mk_tmp_hist_file.
-	(do_run_history): New function.
-	(edit_history_repl_hist): New function.
-
-	* src/t-builtins.cc (builtin_run_history): New function.
-
-	* src/builtins.cc (text_functions): Add run_history to the list.
-
-Fri Aug 13 16:04:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tzero.m: New M-file.
-	* abcdchk.m: New M-file.
-	* is_symmetric.m: Use tol and norm (A) to decide if A' is close
-	enough to A to be considered the same.
-
-Wed Aug 11 15:50:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.74.1.
-
-	Merge in expm changes from A. S. Hodel <scotte@eng.auburn.edu>:
-
-	* f-expm.{h,cc}: New files.
-	* src/Makefile.in: Include them in the usual places.
-	* src/g-builtins.cc (builtin_expm): The new matrix_exp returns a
-	tree_constant by value.
-	Include f-expm.h
-	* src/tc-extras.cc (matrix_exp): Delete function.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	Merge in qzval changes from A. S. Hodel <scotte@eng.auburn.edu>:
-
-	* f-qzval.{h,cc}: New files.
-	* src/Makefile.in: Include them in the usual places.
-	* src/g-builtins.cc (builtin_qzval): New function.
-	Include f-qzval.h
-	* src/g-builtins.h: Declare builtin_qzval.
-	* src/builtins.cc (general_functions): Add qzval to the list.
-
-	* libcruft/eispack: New directory.
-	* libcruft/Makefile.in (SUBDIRS): Include it.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Add libcruft/balgen/Makefile and
-	libcruft/eispack/Makefile to the list of files to frob.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	Merge in syl changes from A. S. Hodel <scotte@eng.auburn.edu>:
-
-	* lyap.m: New M-file.
-
-	* f-syl.{h,cc}: New files.
-	* src/Makefile.in: Include them in the usual places.
-	* src/g-builtins.cc (builtin_syl): New function.
-	Include f-syl.h
-	* src/g-builtins.h: Declare builtin_syl.
-	* src/builtins.cc (general_functions): Add syl to the list.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/g-builtins.cc (builtin_balance): Fix typo in doc string.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	Merge in givens changes from A. S. Hodel <scotte@eng.auburn.edu>:
-
-	* f-givens.{h,cc}: New files.
-	* src/Makefile.in: Include them in the usual places.
-	* src/g-builtins.cc (builtin_givens): New function.
-	Include f-givens.h
-	* src/g-builtins.h: Declare builtin_givens.
-	* src/builtins.cc (general_functions): Add givens to the list.
-
-	* src/Makefile.in: (defaults.h) Quote substitutions.
-	Use %foo%, not @foo@ to mark substitution.
-	* src/defaults.h.in: Use %foo%, no @foo@ to do mark things to
-	substitute.
-
-	* qzhess.m: New M-file.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	Merge in balance changes from A. S. Hodel <scotte@eng.auburn.edu>:
-
-	* are, is_controllable.m, is_observable.m, is_square.m,
-	is_symmetric.m:  New M-files.
-
-	* Matrix.h (AEPBALANCE): New class.
-	(ComplexAEPBALANCE): New class.
-	(GEPBALANCE): New class.
-	* Matrix-ext.cc: Add init functions for balancing classes.
-
-	* src/f-balance.{h,cc}: New files.
-	* src/Makefile.in: Include them in the usual places.
-	* src/g-builtins.cc (builtin_balance): New function.
-	Include f-givens.h
-	* src/g-builtins.h: Declare builtin_balance.
-	* src/builtins.cc (general_functions): Add balance to the list.
-
-	* libcruft/balgen: New directory.
-	* libcruft/Makefile.in (SUBDIRS): Include it.
-
-Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Use AC_HAVE_LIBRARY to check for -lm.
-
-	* src/Makefile.in (defaults.h): Quote substitutions.
-
-Mon Aug  9 13:30:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* README.NLP: New file.
-	* Makefile.in (DISTFILES): Distribute it.
-
-Sun Aug  8 19:05:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/move-if-change: New file.
-	* src/Makefile.in (DISTFILES): Distribute it.
-	(defaults.h): New rule.
-	(utils.o): Delete rule, since extra defines are no longer needed.
-	(INCLUDES): Distribute defaults.h.in.
-	* src/utils.cc: Include defaults.h to get DEFAULT_PAGER and
-	OCTAVE_HOME instead of depending on having them defined by the
-	compile command.
-
-	* configure.in (DEFAULT_PAGER): Use AC_PROGRAMS_CHECK.
-	If we find less, add `-e' flag, so users won't have to type q to
-	quit paging.
-
-Sat Aug  7 13:34:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* f-*.cc: Renamed from tc-*.cc.  (Use f- as the file prefix
-	because most of these functions are ultimately implemented in
-	Fortran, and, most importantly, it keeps them grouped together.)
-	* f-*.h: New files, for external declarations of visible functions
-	defined in f-*.cc.
-	* g-builtins.cc: Include them all.
-	* tree-const.h: Don't declare these functions as friends.
-	* Makefile.in: Cope with new names.
-
-	* octave.cc (parse_and_execute (char *, int)): Don't declare static.
-	* octave.h: Declare it extern here.
-	* octave-hist.cc (do_edit_history): Use it here.
-
-	* octave-hist.cc (do_edit_history): New function.
-	* t-builtins.cc (builtin_edit_history): Use it.
-
-	* t-builtins.cc, t-builtins.h, builtins.cc: Rename edit to
-	edit_history.
-
-	* octave-hist.cc (do_history): Print line numbers by default.
-	Allow quieter output with -q option.
-
-	* g-builtins.cc (builtin_hess): Use DLD_BUILTIN macro to call hess.
-	* g-builtins.cc (builtin_schur): Likewise
-
-	* tc-hess.cc (builtin_hess_2): Call hess with corrrect args.
-	* tc-schur.cc (builtin_schur_2): Likewise, for schur dude :-).
-
-	* tc-fsqp.cc (builtin_fsqp_2): Fix typo.
-
-Thu Aug  5 23:14:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* input.cc (octave_read): Ensure that the last character in the
-	buffer is a new line.
-
-Wed Aug  4 19:25:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y (func_def2): Also warn if we encounter a function
-	definition with the same name as the script file we are reading.
-
-	* tree.cc (tree_identifier::do_lookup): Always return NULL_TREE if
-	a script file was executed.
-
-Tue Aug  3 23:25:45 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* file-io.cc: Delete useless static keyword from File_info class
-	declaration.
-	* unwind-prot.cc: Likewise, for unwind_elem and saved_variable
-	classes.
-	* tc-rand.cc: Likewise, for enum rand_dist declaration.
-	* arith-ops.cc:  Likewise, for enum Matrix_bool_op declaration.
-	* tree.cc: Likewise, for struct const_matrix_list declaration.
-
-Fri Jul 23 01:40:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* sysdep.cc (malloc_handler): Add missing arg to call to message().
-
-Tue Jul 20 04:09:32 1993  John W. Eaton  (jwe@june.che.utexas.edu)
-
-	* Version 0.74 released.
-
-	* doinstall.sh (version): Run `./octave -v' to get the version
-	number instead of grabbing it from version.h.
-	* Fail if we can't get a version number.
-	* Install ./octave, not src/octave.
-
-	* Makefile.in (binary-dist): Don't depend on all.
-	* Link src/octave to ./octave.  (Now that there's no source in
-	binary distributions, why have a src directory?)
-
-	* file-io.cc (process_scanf_format): Rename local variable `i' to
-	`chars_from_fmt_str'.
-	* (process_printf_format): Likewise.
-
-	* sighandlers.cc (can_interrupt): New global variable.
-	* (sigint_handler): Use it to decide whether to jump to top level.
-	* octave.cc (main): Set it after calling setjmp.
-
-	* octave.cc (main): Declare saved_sigint_handler to be volatile.
-
-	* tree.cc, tree-plot.cc, t-builtins.cc, pager.cc, g-builtins.cc,
-	file-io.cc: Terminate strstream strings with ends instead of just
-	using '\0'.
-
-	* file-io.cc (process_scanf_format): Skip leading white space for
-	%s conversions.
-	* (fopen_file_for_user): Pass tree_constant arg by reference.
-	* (do_scanf): If doing fprintf, don't fail if first arg is a
-	string.
-
-Mon Jul 19 16:00:22 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (pstrcmp): Declare to take char** args, not char*.
-
-Sun Jul 18 13:02:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* file-io.cc (return_valid_file): Pass arg by reference.
-
-	* file-io.cc (fclose_internal, fgets_internal, fseek_internal):
-	Eliminate unnecessary casts to double.
-
-	* file-io.cc (return_valid_file, fgets_internal, fopen_internal,
-	do_printf, do_scanf): Use is_string_type instead of doing the
-	comparison ourselves.
-	* g-builtins.cc (builtin_exist, builtin_getenv,
-	builtin_shell_command): Ditto.
-	* tc-colloc.cc (collocation_weights): Ditto.
-	* tc-extras.cc (eval_string, get_user_input): Ditto.
-	* tc-rand.cc (rand_internal): Ditto.
-	* tree-plot.cc (tree_subplot_list::print): Ditto.
-	* variables.cc (is_valid_function, octave_string_variable): Ditto.
-
-Thu Jul 15 02:29:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/Makefile.in (TEXINFO): Distribute texinfo.tex too.
-
-	* t-builtins.cc (load_variable): Warn if replacing local symbol
-	with global from file.
-	* Warn if variable is not marked as global in a file, but already
-	exists as a global symbol, then go ahead and load it as a global.
-
-Tue Jul 13 01:47:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (lookup_identifier): Never alias to global here.
-	* tree.cc (do_lookup): Don't alias formal parameters to global.
-	* variables.cc (force_global): Likewise.
-	* symtab.cc (symbol_table::bind_globals): Likewise.
-
-	* symtab.h (symbol_record::formal_param): New field.
-	* symtab.cc (symbol_record::mark_as_global_parameter): New function.
-	* (symbol_record::is_formal_parameter): Ditto.
-	* tree.cc (tree_identifier::mark_as_formal_parameter): Ditto.
-	* (tree_parameter_list::mark_as_formal_parameters): Ditto.
-	* parse.y (param_list): Use it to tag formal parameters.
-	* (func_def1): Ditto.
-
-	* arith-ops.cc (DIVIDE_BY_ZERO_ERROR): On IEEE machines, allow
-	divide by zero errors to be suppressed.
-	* user-prefs.h (warn_divide_by_zero): New user preference.
-	* user-prefs.cc (warn_divide_by_zero): New function.
-	* builtins.cc (builtin_string_variables): Install it with default
-	value of true.
-
-	* tree.cc (tree_multi_assignemnt_expression): Use tree_return_list
-	instead of tree_param_list.
-	* (tree_multi_assignment_expression:eval): Make it work.
-
-	* tree.cc (tree_return_list): New class.  Allow index expressions
-	and identifiers in return lists.
-	* (tree_matrix::to_return_list): Rename from to_param_list.
-	* parse.y (expression): Use it.
-
-	* parse.y: Increment and decrement maybe_screwed_again instead of
-	just setting it to zero or one.
-
-Mon Jul 12 03:23:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-assign.cc (tree_constant_rep::do_matrix_assignment): Handle
-	case of lhs being of unknown type.
-
-	* lex.l (check_for_garbage_after_fcn_def): Also ignore trailing
-	commas and semicolons.
-
-Sun Jul 11 00:08:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.73.1 released.
-
-	* symtab.cc (symbol_record::alias): Also copy pointer to sv_fcn.
-
-Sat Jul 10 14:34:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_function::eval (int, char **, int): New function.
-
-	* symtab.cc (symbol_table::bind_globals): New function.
-	* tree.cc (tree_function::eval): Use it to associate local symbols
-	with global data.
-
-	* symtab.cc (alias): Add optional parameter `force'.
-
-	* Version 0.73 released.
-
-	* pr-output.cc: Use D_NINT instead of NINT in some cases to avoid
-	overflow problems on systems that don't have IEEE Inf.
-	* mappers.cc (round): Likewise.  Also avoids conversion of Inf to
-	INT_MAX on systems that do have IEEE Inf.
-
-	* builtins.h: Remove definition of NINT.
-	* tree.h: Likewise.
-	* tree-const.h: Likewise.
-
-	* utils.cc (NINT): Move function here and improve handling of
-	extreme values.
-	* (D_NINT): New function.
-
-	* scripts/isempty.m: Don't require the number of rows and columns
-	to both be zero.
-
-Thu Jul  8 16:25:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.72.2.
-
-	* configure.in: Do a better job of grabbing the last argument as
-	the target_host_type and avoiding setting it to things like
-	--prefix=/foo/bar
-
-	* tree-const.cc (tree_constant_rep::save): Add default case for
-	mark_as_global switch to avoid warnings from gcc.
-
-	* variables.cc (force_global): Cope with symbol table changes.
-	* tree.cc: (tree_identifier::do_lookup): Likewise.
-	* lex.l (lookup_identifier): Likewise.
-	* builtins.cc (install_builtins): Likewise.
-
-	* symtab.cc, symtab.h: Massive internal rewrite.
-
-Wed Jul  7 02:18:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-assign.cc (tree_constant_rep::do_scalar_assignment): If rhs
-	is a scalar type, also handle case of lhs being of unknown type.
-	* Be sure to set the new type of the lhs.
-
-	* tree-base.h: Don't include symtab.h.
-	* tree-const.h: Ditto.
-
-Tue Jul  6 22:47:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y (func_def2): Remove the function name from the top-level
-	symbol table if defining on command line (an M-file would never be
-	parsed if there was already an entry with the same name in the top
-	level symbol table).
-
-	* parse.y (word_list_command): Allow clear without any arguments.
-	* tree.cc (word_list_command::eval): Handle word list commands
-	with no arguments.
-
-Mon Jul  5 14:43:30 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.72.1.
-
-	* help.cc (operators): Document the double quote character.
-
-	* lex.l (getting_help): Delete unused variable.
-	* (HELP_FCN): New exclusive start state.
-	* ({IDENT}{S}*): Set start state to HELP_FCN instead of setting
-	getting_help.
-	* ({IDENT}/{S}*=): Likewise.
-
-	* symtab.cc (symbol_table::load): Delete unused function.
-
-	* tree-const.cc (tree_constant::load): Return flag telling whether
-	the constant is global.
-	* t-builtins.cc (builtin_load): Handle global variables.
-	* (builtin_save): Likewise.
-
-	* symtab.cc (symbol_record::save): Don't save builtin variables
-	(variables marked as eternal are assumed to be builtin).
-
-	* symtab.cc (symbol_record::mark_from_global): New function.
-	* (symbol_def::undefine): Add optional argument to prevent
-	deleting symbol's definition.
-	* (symbol_table::undefine): If this variable has been marked as
-	defined from a global, call symbol_def::undefine with arg = 1.
-	* tree.cc (tree_identifier::do_lookup): If a local symbol is
-	defined from a global, mark it as such.
-
-	* symtab.cc (symbol_record::define (symbol_record*)): Delete
-	unused function.
-
-	* tree.cc (tree_identifier::do_lookup (int&)): Use operator=
-	instead of symbol_record::define().
-	* variables.cc (force_global (char*)): Likewise.
-
-Sun Jul  4 01:27:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (symbol_record): Define copy constructor and operator=.
-
-	* builtins.cc (install_builtins): Make `i' and `j' read-only
-	functions.
-
-	* symtab.cc (symbol_record::define): Respect read-only status of
-	variables and functions.
-
-Sat Jul  3 19:11:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* user-prefs.h (print_empty_dimensions): New user preference variable.
-	* user-prefs.cc (print_empty_dimensions): New function.
-	* builtins.cc (print_empty_dimesions): Make default value true.
-	* tree-const.cc (tree_constant_rep::eval): Use value here.
-
-	* cond.m: Handle empty matrices.
-	* tc-det.m (determinant): Likewise.
-	* tc-inv.m (inverse): Likewise.
-
-	* tc-hess.cc (hess): Use gripe_square_matrix_required instead of
-	calling error.
-	* tc-schur.cc (schur): Likewise.
-
-	* builtins.cc (propagate_empty_matrices): Change default value to
-	true.
-
-	* tree-const.cc (tree_constant_rep::eval): If a matrix has zero
-	rows or columns, also print the dimension along with the `[]'
-	symbol.
-
-	* tree-const.cc (do_binary_op): If ok to propagate empty matrices,
-	go ahead and do the binary operation so that the result will have
-	consistent dimensions.
-	* (do_unary_op): Likewyse.
-
-	* tc-extras.cc (get_dimensions): Don't force both nr and nc to
-	zero if one is.
-	* Matrix.cc, DiagMatrix.cc, ColVector.cc, RowVector.cc: Handle
-	matrices with zero dimensions in a more consistent fashion.
-
-Thu Jul  1 00:27:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* perror.m: New M-file.
-
-	* LP.h, LP.cc: New interface for linear programmming.
-	* LPsolve.h LPsolve.cc: New files to implement linear programming
-	using lp_solve.
-
-	* NPSOL.cc (minimize): Also return the vector of Lagrange
-	multipliers.
-	* tc-npsol.cc (npsol): Optionally return them.
-
-	* QPSOL.cc (minimize): Also return the vector of Lagrange
-	multipliers.
-	* tc-qpsol.cc (qpsol): Optionally return them.
-
-	* tc-qpsol.cc (qpsol): Make it work.
-
-Wed Jun 30 02:19:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_lpsolve): New function.
-	* (builtin_qpsol): Ditto.
-	* builtins.cc (general_functions): Add them to the list.
-
-	* tc-lpsolve.cc: New file.
-	* tc-qpsol.cc: Ditto.
-	* src/Makefile.in: Add them to the list of SOURCES and DLD_OBJECTS.
-
-Tue Jun 29 15:02:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/DAE.cc (integrate): If stop_time_set is false, reset
-	default value for info[3].
-	* liboctave/ODE.cc (integrate): Likewise, reset default values of
-	iopt and itask.
-
-	From Thorsten Ohl <ohl@physics.harvard.edu>:
-	* config.guess: Add check for NeXT.
-	* configure.in: Add check for NeXT so that readline is configured
-	properly (really need to improve readline's configuration scheme).
-	* sysdep.cc (malloc_handler): New function for handling malloc
-	errors on NeXT systems.
-
-	* octave.cc (main): Call sysdep_init before anything else.
-
-	* sysdep.cc: New file for system dependent things.
-
-	* octave.cc (initialize_globals): Only pass argv[0] since that's
-	the only thing that's used.
-
-Sat Jun 26 13:00:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_builtin::eval (int, char**, int)): Don't panic if
-	called for something other than a text_fcn.
-
-	* t-builtins.cc (builtin_cd): Rewrite to fix bogus memory
-	problems.
-
-Fri Jun 25 15:23:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.cc (builtin_cd): Don't delete value returned by
-	get_working_directory.
-	* g-builtins.cc (builtin_pwd): Likewise, and simplify.
-
-	* utils.cc (make_absolute): Always create a new copy to return.
-	* utils.cc (change_to_directory): Don't delete pointer returned
-	from get_working_directory().
-	* (file_in_path): Likewise.
-
-Thu Jun 24 16:48:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l ({IDENT}{S}*): Always insert a comma if the next token
-	doesn't look like some sort of operator, not just if
-	convert_spaces_to_comma is also true (it may have been turned off
-	by BIN_OP_RETURN).
-
-	* tree-const.h (matrix_ptr): Delete function.
-	* tc-extras.cc (frobit): Delete function.
-	* (get_dimensions): New function.
-	* (identity_matrix): Completely rewrite.
-	* (fill_matrix): Likewise.
-
-Wed Jun 23 13:50:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix-ext.cc (SCHUR::init): Also allow ord flag to be lowercase.
-	* (ComplexSCHUR::init): Ditto.
-	* tc-schur.cc (schur): Likewise.
-
-	* Matrix-ext.cc (SCHUR::init): Declare sort as char, not char*,
-	and pass its address to Lapack.
-	* (ComplexSCHUR::init): Ditto.
-
-	* Matrix-ext.cc (SCHUR::select_dig): Make static, and move ahead
-	of first reference in file.
-	* (SCHUR::select_ana): Likewise.
-	* (ComplexSCHUR::select_complex_dig): Likewise.
-	* (ComplexSCHUR::select_complex_ana): Likewise.
-
-	* builtins.cc (install_builtins): Add `J' as an alias for `I'.
-
-	* builtins.cc (install_builtins): Always create a new
-	tree_constant for each variable, since the symbol table doesn't
-	know how to share them.
-
-	* tc-schur.cc (schur): Use warning and error functions instead of
-	writing directly to cerr.
-	* tc-hess.cc (hess): Ditto.
-
-	* src/Makefile.in (DLD_OBJECTS): Include tc-schur.o and tc-hess.o.
-	* (SOURCES): Add tc-schur.cc tc-hess.cc.
-
-	* Merge Schur and Hessenberg changes:
-
-	Fri Mar 19 11:01:19 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
-
-	* src/builtins.cc: Changed schur definition to include one more
-	input.  Also changed the help line description
-	* src/g-builtins.cc: Changed builtin_schur to accept two inputs
-	Also changed the information to explain ordered schur operation.
-	* src/tc-schur.cc Added extensions to the SCHUR and ComplexSCHUR
-	calls to pass extra paramater.  Also added check for proper param.
-	* liboctave/Matrix.h: Modified declarations dgeesx and zgeesx to
-	accept address of select function.  Modified class structures for
-	SCHUR and ComplexSCHUR to accept extra ordered schur param.
-	* liboctave/Matrix-ext.cc: Added extensions for the extra ordered
-	schur paramater.
-
-	Wed Mar 17 15:23:14 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
-
-	* liboctave/Matrix-ext.cc (HESS and ComplexHESS): Added the
-	Hessenburg decomposition routines.
-	* liboctave/Matrix.h Added fortran lapack functions definitions
-	used in the Hessenburg procedure.
-	* src/g-builtins.cc (builtin_hess): Hessenburg Decomposition routine
-	added
-	* src/g-builtins.h (builtin_hess): Added extern definition.
-	* liboctave/Matrix.h Added classed HESS and ComplexHESS
-	* src/tree_const.h added defs for hess.
-	* src/tc-hess.cc (hess): New file for hess function.
-
-	Tue Mar 16 10:46:32 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
-
-	* src/g-builtins.cc (builtin_schur): Schur Decomposition routine
-	added.
-	* src/g-builtins.h (builtin_schur): Added extern definition.
-	* liboctave/Matrix.h Added Classes SCHUR and Complex SCHUR, and
-	added defs for zgeesx and dgeesx (lapack schur decomp)
-	* liboctave/Matrix-ext.cc (SCHUR and Complex SCHUR): Ditto.
-	* src/tree-const.h added defs for schur.
-	* src/tc-schur.cc (schur): New file for schur function.
-
-Tue Jun 22 20:18:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (check_for_garbage_after_fcn_def): New function
-	* parse.y (fcn_end_or_eof): If reading from an M-file, use it to
-	print warning about trailing garbage after the end of a function
-	has been found.
-
-Mon Jun 21 20:21:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-assign.cc (tree_constant_rep::assign): Handle case of
-	assignment to unknown constant too.
-	* (tree_constant_rep::do_scalar_assignment): Don't fail for
-	unknown_constant type.
-	* (tree_constant_rep::do_matrix_assignment): Likewise.
-
-	* tree-const.cc (rows): Return 0 for unknown_constant type.
-	* (columns): Likewise.
-
-	* tree.cc (tree_identifier::assign): Defer defining symbol until
-	assignment is successful.
-	* When creating a new dummy tree_constant to assign a value to,
-	leave it an unknown_constant type.
-
-	* tc-assign.cc (do_scalar_assignment): If the right hand side
-	isn't a scalar, maybe try to resize instead.
-	* (do_matrix_assignment): For A(:,int) and A(int,:) cases, also
-	resize if left hand side is a scalar.
-
-	* norm.m: Allow "fro" to work for scalars and vectors too.
-
-Sun Jun 20 01:17:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* NLConst.cc: New file.  Move inline function definitions here
-	from NLConst.h.
-
-	* Objective.cc: New file.  Move inline function definitions here
-	from Objective.h
-
-	* tree.cc (tree_word_list_command::eval): Call strsave for argv[0]
-	too, and delete argv before returning.
-	* (tree_builtin::eval): Likewise, for text functions with no
-	arguments.
-
-Sat Jun 19 01:37:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (parse_and_execute): Delete calls to delete_buffer
-	and switch_to_buffer, since that is taken care of by unwinding the
-	frame.
-
-Fri Jun 18 00:08:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_matrix::eval): Delete useless direct = ptr->direct
-	and ptr = ptr->next statements from size-determining loop.
-
-	* parse.y (opt_list): New rule.  Replace all occurrences of list
-	with opt_list.
-
-	* tree.cc: (tree_index_expression::eval (int, int)): Don't
-	complain if the index expression has an empty argument list.
-
-	* octave.cc (initialize_globals): Check return value of
-	getenv ("HOME") against NULL, not the global variable
-	home_directory that we are trying to initialize.
-
-	* tree.cc (tree_function::eval): Quick return if command list
-	is empty.
-	* parse.y (func_def3): Allow empty function bodies.
-
-Thu Jun 17 02:08:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_while_command): Add constructor for case of
-	expression only.
-	* parse.y (statement): Allow empty command list for while commands.
-
-	* parse.y (list): Allow empty commands in more places.  This ups
-	the shift/reduce error count by 6, to 19.
-
-	* octave.cc (execute_startup_files): Don't delete sd.
-
-	* octave.cc (initialize_globals): Make copies of all strings.
-	* Store more humorous messages if things fail.
-
-Tue Jun 15 11:03:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-extras.cc (get_user_input): Finish incomplete change to get
-	input using readline.
-
-	* tc-extras.cc (match_sans_spaces): New function.
-	* (get_user_input): Use it when checking to see if the user
-	entered a `quit' command.
-
-	* liboctave/Makefile.in: Don't distribute Makedeps.in or include
-	Makedeps since we generate dependencies automatically now.
-	* configure.in: Don't create liboctave/Makedeps.
-
-Sun Jun 13 18:31:17 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/xdiv.cc (xdiv): Solve least-squares problem if system of
-	equations is not square, or if it is singular.
-	* (xleftdiv): Likewise.
-
-	* liboctave/Matrix.h (Matrix::lssolve): New functions for
-	least-squares solutions of linear systems.
-	* (ComplexMatrix::lssove): Ditto.
-
-Sat Jun 12 19:07:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libcruft/misc/xstopx.f (xstopx): Call dostop, not do_stop.
-	* libcruft/misc/dostop.c: Rename from do_stop.c
-	* (dostop): Likewise.
-
-	* src/mappers.cc (xisnan (double)): Define even for systems that
-	don't have xisnan by always returning false.
-	* (xisnan (const Complex&)): Likewise.
-
-Fri Jun 11 19:54:58 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/Makefile.in (install): Try harder to install info files.
-
-	* libcruft/Makefile.in (install): Run ranlib on installed library.
-	* liboctave/Makefile.in (install): Ditto.
-	* readline/Makefile.in (install): Ditto.
-
-Thu Jun 10 00:15:41 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.72 released.
-
-	* libcruft/*/*.f: Don't call xstopx with '' since some Fortran
-	compilers object to zero-length strings.
-	* libcruft/misc/xstopx.f (xstopx): Don't print empty strings or
-	single blanks.
-	* libcruft/misc/gen-d1mach.c (main): Likewise, for generated code.
-
-	* test/Makefile.in (check): Set the Tcl variable OCTAVE_PATH.
-	* test/config/unix-octave.exp: Pass OCTAVE_PATH to OCTAVE using
-	the new -p flag.
-
-	* builtins.cc (install_builtins): Use load_path instead of calling
-	default_path().
-
-	* octave.cc (load_path): New global variable.
-	* (initialize_globals): Initialize it here by calling default_path().
-	* (main): Call initialize_globals() before getting command line
-	arguments.
-	* Accept new argument, -p PATH.
-
-	* octave.cc (clean_up_and_exit): Don't print a message when Octave
-	exits.
-
-	* doinstall.sh: Install M-files in $(libsubdir), not $(libdir).
-	* Use mkpath to create directories.
-	* Extract version from version.h.
-
-	* Makeconf.in (version): Compute version just once.
-
-	* (libsubdir): New directory that includes version number, for
-	installing M-files in (old versions of Octave may not be able to
-	understand new M-files).
-
-	* src/Makefile.in, libcruft/Makefile.in, liboctave/Makefile.in,
-	doc/Makefile.in, readline/Makefile.in, scripts/Makefile.in
-	(install): Use mkpath to create directories.
-	* scripts/Makefile.in (install): Install M-files in $(libsubdir),
-	not $(libdir).
-
-	* mkpath.c: New file, from Emacs-19.
-	* Makefile.in (mkpath): New rule.
-	* (all): Depend on mkpath
-	* (binary-dist): Distribute it.
-
-	* config.guess: Update from bothner@cygnus.com.
-
-	* lex.l (<STRING>{QSTR}*[\n\']): Set start state to 0 or MATRIX,
-	depending on value of braceflag.
-	* (<DQSTRING>{DQSTR}*[\n\"]): Ditto.
-
-	* tree.cc (tree_matrix::eval): Make sure that strings are nul
-	terminated.
-
-Tue Jun  8 16:08:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (clean_up_and_exit): Print `bye-bye' here.
-	* g-builtins.cc (builtin_quit): Not here.
-
-	* pager.cc (terminal_columns): If screenwidth <= 0, return a
-	default value of 80 columns.
-	* (terminal_rows): Likewise for screenheight and a default of 24
-	rows.
-
-	* octave.cc (parse_and_execute): Don't fiddle with interactive
-	states since that screws paging output.
-	* tree.cc (parse_m_file): Likewise.
-
-	* parse.y (input): For `simple_list error END_OF_INPUT' and
-	`error END_OF_INPUT' use ABORT_PARSE.
-	* Always accept `simple_list END_OF_INPUT'.
-	* Always abort for `END_OF_INPUT'.
-
-Mon Jun  8 13:55:41 1993  John C. Campbell  (jcc@schoch.che.utexas.edu)
-
-	* file-io.h (fopen_file_for_user): New function declaration.
-
-	* file-io.cc (fopen_file_for_user): New function.
-	* (fgets_internal): If file doesn't exist open it for user,
-	also return (double) -1 on EOF
-	* (fseek_internal), (ftell_internal), (frewind_internal),
-	(do_printf): Ditto.
-	* (fopen_internal): Remove warn_on_not_open flag, limit warns.
-
-Mon Jun  7 00:28:13 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* file-io.cc (do_scanf): Use `type' wherever possible instead of
-	hardcoding name in messages.
-	* (do_printf): Ditto.
-
-	* file-io.cc (fflush_internal): If flushing stdout, flush output
-	to the pager instead of calling fflush on a stream.
-	* (do_printf): Make fprintf (stdout, ...) exactly the same as
-	printf (...).
-	* (do_scanf): Make fscanf (stdin, ...) exactly the same as
-	scanf (...).
-
-	* tc-extras.cc (get_user_input): Flush output to pager before
-	prompting for input.
-
-	* libcruft/Makefile.in (DISTFILES): Distribute STOP.patch to show
-	the changes made to the Fortran sources.
-
-	* libcruft/*/*.f: Replace STOP statements with calls to xstopx, so
-	that Fortran programs won't just quit on us.
-
-	* libcruft/misc/xstopx.f: New file.
-	* libcruft/misc/do_stop.c: New file.
-	* libcruft/misc/Makefile.in (SPECIAL): Add do_stop.c to the list.
-	* (SPECIAL_DEPEND): Likewise, for do_stop.o.
-	* libcruft/Makefile.in (CRUFT_OBJ): Ditto.
-
-	* lex.l (")"): Don't pop the top of the in_brace_or_paren stack if
-	it's empty.
-
-Sun Jun  6 00:41:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* liboctave/CollocWt.cc (init): Always compute Gaussian quadrature
-	weights instead of trying to compute Radau or Lobatto weights if
-	the endpoints are included.
-	* Really do compute roots and derivative weights corresponding to
-	Legendre polynomials if alpha and beta are zero, even if the
-	endpoints are included.
-
-Sat Jun  5 22:19:55 1993  John C. Campbell  (jcc@schoch.che.utexas.edu)
-
-	* builtins.cc (builtin_general_functions): Correct max arg counts
-	for fscanf, scanf, and sscanf.
-
-	* g-builtins.cc (builtin_fscanf): Correct argument checks.
-	* (builtin_sscanf): Likewise.
-
-	* file-io.cc (fopen_internal): Don't warn for opening new file.
-
-	* file-io.cc (process_printf_format): Handle * for field width and
-	precision.
-	* Pass array of arguments and nargin instead of just one arg.
-	* (do_printf): Call process_printf_format() with new args.
-
-	* file-io.cc (process_scanf_format): New function to handle scanf
-	dirty work.
-	* (do_scanf): New function.
-
-Sat Jun  5 14:09:41 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (YY_FATAL_ERROR): Redefine here to keep from exiting on
-	fatal scanner errors.
-
-Fri Jun  4 16:35:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_multi_assignment_expression::eval (int)): Check to
-	see if result is NULL before trying to use it.
-
-	* tc-extras.cc (get_user_input): Call gnu_readline() to get input.
-
-Thu Jun  3 00:30:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/*.m: Convert single-quoted strings to use double quotes
-	since the manual says they are better.
-
-	* Version 0.71.10.
-
-	* doc/Makefile.in (DISTFILES): Distribute octave.info*.
-
-	* Makefile.in (.fname): Delete target and move actions back to the
-	individual dist targets because this always needs to be done.
-	* (binary-dist): Strip src/octave.
-
-	* doinstall.sh: New file, for binary distributions.
-
-Wed Jun  2 15:11:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makefile.in (binary-dist): New target, just like dist, except
-	also distribute libcruft.a, liboctave.a, libreadline.a and
-	src/octave.
-
-	* Makefile.in (.fname): New target.
-	* (links-for-dist): New target.
-	* (local-dist): Depend on .fname.
-	* (dist): Depend on .fname and use links-for-dist.
-
-	* octave.cc: Move code to print startup message to just after
-	option processing so that any messages from startup files will
-	appear after the normal startup message.
-
-	* utils.cc (get_site_defaults): New function.
-	* (OCTAVE_HOME): Provide default definition.
-
-	* (SITE_DEFAULTS): Delete definition.
-	* octave.cc (execute_startup_files): Use get_site_defaults instead.
-
-	* src/Makefile.in (utils.o): Define OCTAVE_HOME to be $(prefix)
-	here.
-
-	* Makeconf.in: Don't define SITE_DEFAULTS or OCTAVE_M_FILE_DIR.
-
-	* lex.l (do_string_escapes): Recognize `\"'.
-
-Tue Jun  1 01:28:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.71.9.
-
-	* parse.y (maybe_convert_to_ans_assign): Greatly simplify.
-
-	* file-io.cc (File_info): Convert from struct to proper class.
-	* (valid_mode): New function.
-
-	* parse.y, parse.h, lex.l, tree-extras.cc (convert_to_ans_assign):
-	Delete unused variable.
-
-	* builtins.cc (SEEK_CUR): Set to 1 to match (normal) system values.
-	* (SEEK_END): Likewise, set to 2.
-
-	* statdefs.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* octave-hist.cc: Include it.
-	* variables.cc (identifier_exists): Likewise.
-	* utils.cc (is_newer): Likewise.
-
-	* builtins.cc (SEEK_SET): New builtin varible.
-	* (SEEK_CUR): Ditto.
-	* (SEEK_END): Ditto.
-	* (stdin): Ditto.
-	* (stdout): Ditto.
-	* (stderr): Ditto.
-
-	* lex.l (strip_trailing_whitespace): New function.
-	* ({IDENT}{S}*): Use it.
-	* (<TEXT_FCN>[^ \t\n\;\,]*): Fix to grab trailing spaces.
-	Use strip_trailing_whitespce() to delete it before returning.
-
-Mon May 31 21:00:00 1993  John C. Campbell  (jcc@june.che.utexas.edu)
-
-	* file-io.cc, file-io.h: New files to implement C-style file
-	handling and I/O functions.
-	* (do_printf): Move here from tc-extras.cc.
-	* (process_printf_format): Likewise.  Also renamed from
-	process_format.
-
-Mon May 31 00:52:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* (tree_function::eval): Now that we can restore values, enable
-	code to give error for attempts to call functions recursively.
-
-	* octave.cc (parse_and_execute): Use unwind-protect functions to
-	save and restore state.
-	* tree.cc (parse_m_file): Likewise.
-	* (tree_function::eval): Likewise.
-	* tc-extras (eval_string): Likewise.
-
-	* unwind-prot.cc (saved_variable): New class to hold values of and
-	pointers to variables we want to restore.
-	* (restore_saved_variable): New function.
-
-	* unwind-prot.cc (unwind_protect_int_internal): New function.
-	* (unwind_protect_ptr_internal): Ditto.
-	* (unwind_protect_var_internal): Ditto.
-
-	* unwind-prot.h (unwind_prot_int): New macro.
-	* unwind-prot.h (unwind_prot_ptr): Ditto.
-	* unwind-prot.h (unwind_prot_var): Ditto.
-
-	* variables.cc (symbol_out_of_date ()): Move here from tree.cc.
-	* (is_valid_function): Fix logic for finding a function
-	definition, including checking to see if the current symbol
-	definition is out of date.
-
-	* tree-const.h (is_numeric_or_range_type): New function.
-	* tree-const.h (is_string_type): New function.
-	* tree.cc (tree_matrix::eval): Use !is_string_type() instead of
-	is_numeric_type() to decide that we've seen something other than
-	a string.
-
-	* parse.y (maybe_warn_assign_as_truth_value ()): New function.
-	* user-prefs.h (warn_assign_as_truth_value): New preference.
-	* user-prefs.cc (warn_assign_as_truth_value ()): New function.
-	* builtins.cc (string_variables): Add it to the list.
-
-	* tree.h (tree_simple_assignment_expression): Rename class from
-	tree_assignment_expression.
-	* (tree_assignment_expression): New class, derived from
-	tree_expression.
-	* (tree_simple_assignment_expression): Derive from new
-	tree_assignment_expression class, not tree_expression class.
-	* (tree_multi_assignment_expression): Ditto.
-
-Sun May 30 22:40:58 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Makefile.in (%.d: %.cc): First remove target file, then
-	redirect into tmp file, and finally move tmp file to target file
-	only if creating tmp file was successful.
-	* liboctave/Makefile.in (%.d: %.cc): Ditto.
-
-Sat May 29 18:18:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_constant *tree_multi_assignment_expression
-	::eval (int print, int nargout)): New function.
-	* (tree_constant tree_multi_assignment_expression::eval (int print)):
-	Use it to do the real work.
-
-	* tree.cc (tree_matrix::to_param_list ()): Also allow index
-	expressions as long as the argument list is missing.
-
-	* parse.y (ans_expression): Now that assignments are just
-	expressions, don't convert expressions to assignemnts to `ans' if
-	they already are assignments.
-	* maybe_convert_to_ans_assign (tree *expr): New function to do the
-	real work.
-
-	* tree.cc (tree_multi_assignment_expression::
-	is_assignement_expression ()): Return 1.
-
-	* tree-base.h (tree::is_index_expression ()): New virtual
-	function, returns 0.
-	* tree.cc (tree_index_expression::is_index_expression ()): Return 1.
-
-	* tree.cc (tree_assignment): Construct from tree_index_expression
-	and a tree.
-	* (tree_index_expression::ident ()): New function.
-	* (tree_index_expression::arg_list ()): New function.
-
-	* parse.y (variable): New rule, returns tree_index_expression.
-
-	* parse.y: Rewrite assignment rules so that they are simply
-	expressions, not special cases.
-	* Rearrange fact and expression rules into expression (assignement
-	or simple expression), simple_expr (binary and postfix expressions
-	or secondary simple expression), and simple_expr1 (constants and
-	prefix expressions) rules.
-	* Delete fact rules.
-
-	* parse.y: Make EXPR_EQ and EXPR_NE have the same precedence as
-	the other relational operators.
-
-Fri May 28 10:14:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* unix-octave.exp: Delete use of OCTAVEFLAGS.
-
-	* test/config: New directory.
-	* test/config/Makefile.in: New file.
-	* test/config/unix-octave.exp: Rename from test/octave-init.exp.
-	* test/Makefile.in (SOURCES): Delete octave-init.exp from list.
-	* configure.in: Add test/config/Makefile to the list of Makefiles
-	to build.
-
-	* utils.cc (send_to_plot_stream): Plot lines by default.
-
-Thu May 27 08:03:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (\]): Don't pop the top of the in_brace_or_paren stack if
-	it's empty.
-
-	* tree.cc (tree_matrix::eval): Make it work for single element
-	strings as well.
-
-	* Version 0.71.8.
-
-	* lex.l (next_token_is_postfix_unary_op): New function.
-	* (<MATRIX>{SN}*\]{S}*): Use it as well, to decide whether to
-	insert a comma.
-	* (<MATRIX>{S}+): Likewise.
-	* ({IDENT}{S}*): Likewise.
-
-Wed May 26 15:37:27 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* pr-otput.cc (pr_any_float): Use form() now that iostream
-	formatting bug has been fixed (libg++-2.3.1).
-
-Mon May 24 15:36:22 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (any_arg_is_magic_colon): New function.
-	* (tree_builtin::eval) Use it to avoid calling builtin functions
-	with `:' arguments.
-
-Sun May 23 14:07:19 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_fprintf): Correct usage message.
-
-Fri May 21 10:35:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.71.7.
-
-	* octave.cc (main): Always reset_parser() before every call to
-	yyparse(), not just on a longjmp return.
-
-	* doc/Makefile.in (install): For now, don't try to install
-	anything.
-
-	* lex.l (<MATRIX>{S}+): Call next_token_is_bin_op() instead of
-	making the check in line.
-	* (<MATRIX>{SN}*\]{S}*): Likewise.
-	* (<MATRIX>{S}+): Likewise.
-
-	* lex.l (looks_like_bin_op): New function.
-	* (next_char_is_space): Ditto.
-	* (next_token_is_bin_op): Ditto.
-
-	* lex.l ({IDENT}{S}*): If we're in a brace context and the next
-	character is an open paren, set convert_spaces_to_comma to 0.
-	* tree-const.cc (convert_to_str): New function.
-	* g-builtins.cc (builtin_setstr): New function.
-	* builtins.cc (builtin_general_functions): Add it to the list.
-
-Thu May 20 17:56:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* doc/Makefile.in (SOURCES): Define to be all .texi files.
-	* (octave.info): Depend on $(SOURCES).
-	* (octave.dvi): New target.
-	* Don't distribute the man page.
-
-	* lex.l (<MATRIX>{S}+): If the next character is a plus or minus
-	followed by a space or tab, don't insert a comma.  This makes
-	input like [1 + 1] == 2 and input like [1 +1] == [1 1].
-	* (<MATRIX>{SN}*\]{S}*): Likewise.
-
-	* lex.l (<MATRIX>{S}+): Use in_brace_or_paren and
-	convert_spaces_to_comma to decide whether to convert spaces to a
-	comma.
-
-	* lex.l ({IDENT}{S}*): If we're in a brace context and the next
-	character is an open paren, set convert_spaces_to_comma to 0.
-
-	* lex.l (<MATRIX>{SN}*\]{S}*): Even if we're still inside some braces,
-	don't always push a comma onto the input.
-
-	* lex.l (<MATRIX>{SN}*\]): Also grab trailing spaces.
-	* ({IDENT}): Ditto.
-
-	* lex.l (in_brace_or_paren): New stack to keep track of whether
-	the closest enclosing scope is a pair of braces or parens.  When
-	we see a `[' or a `(', push a flag on the stack.  When we see a
-	`]' or a `)', pop the top of the stack.
-
-	* lex.l (convert_spaces_to_comma): New flag to control lexer behavior.
-	* (RETURN): Reset it to 1.
-	* (most other returns): Reset it to 1.
-
-	* lex.l (BIN_OP_RETURN): New macro.  Set convert_spaces_to_comma to 0.
-	* (most binary operators): Use it instead of RETURN.
-
-	* lex.l (match_any): New function.
-
-Wed May 19 12:51:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Range.cc (nelem_internal): Don't allow ranges with more than
-	INT_MAX elements.  Return -1 to indicate failure.
-	* tree-const.cc (tree_constant_rep::tree_constant_rep (double,
-	double, double)): Check nelem() to see if the range is valid.
-
-	* pr-output.cc (all_elements_are_ints (Range&)): We only need to
-	check the base and the increment, not the limit too.
-
-	* Range.cc (nelem_internal): Move function definition here from
-	Range.h and do a better job of determining the number of elements
-	in the range.
-
-Tue May 18 09:06:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.71.6.
-
-	* tc-extras.cc (find_nonzero_elem_idx): Declare inner loop
-	iteration variables that are used inside later nested loops
-	in the outer enclosing scope to make this work for old and new
-	language definitions (see the ARM, chapter 19: "ANSI/ISO
-	Resolutions", 6.4/6.5: "The statement or statements immediately
-	controlled by the condition in a selection-statement, or an
-	iteration-statement introduce an implicit local scope".
-	* xpow.cc (elem_xpow (Matrix&, Matrix&)): Likewise.
-
-	* tree.cc (tree_identifier::parse_m_file (char*, int)): Set
-	reading_script_file before calling parse_m_file and restore it
-	afterward.
-
-Mon May 17 20:04:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.h (prog_name): Declare extern.
-	* (raw_prog_name): Ditto.
-
-	* f2c-compat.sh (ctest.c): Also write a dummy MAIN_ since gcc 2.4
-	doesn't seem to create an executable now if there are unresolved
-	externals, and the linker wants to see it on Suns.
-
-Thu May 13 01:06:18 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makefile.in (DISTFILES): Include Makeconf.in.
-
-	* configure.in: Set defaults for CFLAGS, CXXFLAGS, LDFLAGS, and
-	FFLAGS.
-	* Don't substitute CDEBUG, COPTIMIZE, FOPTIMIZE, or CXXOPTIMIZE.
-	* Use AC_PROGRAMS_CHECK instead of our own code for checking for a
-	Fortran compiler.
-	* Add Makeconf to the list of files to create.
-
-	* src/Makefile.in (octave): Use ALL_LDFLAGS instead of LDFLAGS.
-
-	* Makeconf.in (ALL_CFLAGS, ALL_CXXFLAGS, ALL_LDFLAGS): New macros.
-	* Allow the user to set CFLAGS, CXXFLAGS, and FFLAGS without
-	screwing things up.
-	* (CDEBUG, COPTIMIZE, FOPTIMIZE, CXXOPTIMIZE): Delete.
-	* Provide rules for making .o from .cc or .c files that use
-	ALL_CXXFLAGS and ALL_CFLAGS.
-
-	* src/Makefile.in: Generate dependencies automatically using the
-	method described in the GNU make manual.
-	* liboctave/Makefile.in: Likewise.
-
-	* All Makefile.in files: Set TOPDIR and include $(TOPDIR)/Makeconf.
-	* Makeconf.in: New file, for most configuration options.
-
-	* tc-rand.cc (rand_internal): Return an empty matrix for rand (0).
-
-Wed May 12 01:32:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (clean_up_and_exit): Call close_plot_stream before
-	quitting.
-
-	* Version 0.71.4.
-
-	* pr-output.cc (octave_print_internal (ostrstream&, Matrix&)):
-	Handle wrapping columns neatly, respecting value of split_long_rows.
-	* (octave_print_internal (ostrstream&, ComplexMatrix&)): Ditto.
-	* (octave_print_internal (ostrstream&, Range&)): Ditto.
-
-	* user-prefs.cc (split_long_rows): New preference variable and
-	function.
-	* builtins.cc (builtin_string_variables): Add to list with default
-	value == true.
-
-Tue May 11 02:20:43 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* pr-output.cc (pr_max_internal): Don't count Inf or NaN when
-	looking for max value.
-	* (pr_min_internal): Likewise, for min values.
-
-	* pr-output.cc (pr_any_float): Merge pr_float and pr_imag_float.
-
-	* pr-output.cc (any_element_is_inf_or_nan (Matrix&)): New function.
-	* (any_element_is_inf_or_nan (ComplexMatrix&)): New function.
-	* (all set_format functions (except Range)): Consider Inf and NaN
-	when computing field width (we'll either print "Inf" (possibly
-	with a sign) or "NaN").
-
-	* pr-output.cc (pr_float): Handle Inf and NaN.
-	* (pr_imag_float): Ditto.
-
-	* pr-output.cc (set_format_style): Make format short set precision
-	to 3 and max field width to 8.
-
-	* pr-output.cc (pr_float): Don't print a sign for -0.0.
-	* (pr_imag_float): Ditto.
-
-	* pr-output.cc (all set_format functions): Return the actual field
-	width computed or 0 if free format.  For complex, return both real
-	and imaginary field widths.
-	* Include pager.h for terminal_rows() and terminal_columns().
-
-	* pr-output.cc (pr_complex): If imaginary part is -0.0, print a
-	minus sign but convert the value to 0.0 before printing.
-
-	* octave.cc (parse_and_execute (FILE *, int)): Don't use readline
-	to read commands from files.
-	* (parse_and_execute (char *, int)): Set reading_script_file
-	before calling get_input_from_file.
-
-	* Version 0.71.3.
-
-	* src/Makefile.in (deps): New target.
-	* Update dependencies using the output from running `make deps'.
-
-	* pr-output.cc (set_output_prec_and_fw): New function.
-	* (set_format_style): Use it.
-	* (set_format functions): Use user_pref variables for precision
-	and field width.
-
-	* variables.cc (octave_real_scalar_variable): New function.
-	* buitlins.cc (builtin_string_varaibles): Add output_precision and
-	max_field_width to the list (really need a separate list for
-	numeric values...).
-	* user-prefs.cc (set_output_max_field_width): New function to be
-	called when output_max_field_width changes.
-	* (output_precision): Likewise, for output_precision.
-
-	* sighandlers.cc (pipe_handler_error_count): New global variable.
-	* (sigpipe_handler): Use it to keep from printing more than one
-	broken pipe message between prompts.
-	* (input.cc): Reset pipe_handler_error_count before printing the
-	prompt.
-
-Mon May 10 13:06:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* sighandlers.cc (sigpipe_handler): Issue warning and return
-	instead of aborting.
-
-	* user-prefs.cc (all sv_* functions): Don't delete previous value
-	of a preference string if the new value is bogus.
-
-	* user-prefs.cc (all sv_* functions and all functions that handle
-	user preferences): Return 0 for success, -1 for failure.
-	* symbtab.cc (symbol_record::define): Check return value of sv_fcn
-	and restore previous value on failure.
-	* symtab.h (sv_Function typedef): Change to return int, not void.
-	* builtins.h (sv_Function typedef): Ditto.
-
-Sun May  9 18:25:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* user-prefs.cc (all sv_* functions): Issue a warning if the user
-	gives us something that's not a string.
-
-Sat May  8 23:40:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* ColVector.cc (ColumnVector::min): Upper loop limit is len, not 0.
-	* (ComplexColumnVector::min): Ditto.
-	* RowVector.cc (RowVector::min): Ditto.
-	* (ComplexRowVector::min): Ditto.
-
-Fri May  7 18:41:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* pr-output.cc (set_format_style): New function, extracted from
-	builtin_format().
-	* t-builtins.cc (builtin_format): Call set_format_style to do real
-	work.
-
-	* pr-output.cc: New file for special formatted printing funcions.
-	* tree-const.cc (tree_constant_rep::eval): Use new functions.
-
-	* user-prefs.cc (sv_pager_binary): New function.
-	* user-prefs.h (user_preferences) Add new field, pager_binary.
-	* builtins.cc (builtin_string_variables): Add PAGER to the list.
-	* utils.cc (default_pager): New function.
-	* Makefile.in: Define DEFAULT_PAGER for utils.cc, not pager.cc.
-	* pager.cc (get_pager): Delete function.
-	* Use user_pref.pager_binary instead of calling get_pager().
-
-Thu May  6 11:05:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* pager.cc (pager_buf): Declare as static pointer to ostrstream.
-	* (initialze_pager): Delete old pager_buf and create new one for
-	each batch of output.  This is needed because once str() is called
-	for pager buf, it will no longer grow.
-
-	* pager.cc (maybe_page_output): Take care of deleting buffer after
-	str() is called.
-	* (flush_output_to_pager): Likewise.
-	* t-builtins.cc (builtin_ls): Likewise.
-	* (builtin_set): Likewise.
-	* (builtin_show): Likewise.
-	* tc-extras.cc (process_format): Likewise.
-	* (process_format): Likewise.
-	* tree-plot.cc (tree_plot_command::eval): Likewise.
-
-Wed May  5 10:45:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_shell_command): Buffer characters with an
-	ostrstream and call maybe_page_output instead of writing directly
-	to cout.
-	* (builtin_warranty): Likewise.
-	* tc-extras (do_printf): Likewise.
-	* tree.cc (tree_identifier::eval): Likewise.
-	* (tree_assignment_expression::eval): Likewise.
-	* (tree_multi_assignment_expression::eval): Likewise.
-	* tree-const.cc (tree_constant_rep::eval): Likewise.
-	* t-builtins.cc (builtin_help): Likewise.
-	* (builtin_ls): Likewise.
-	* (builtin_who): Likewise.
-
-	* user-prefs.h user-prefs.cc (page_screen_output): New preference.
-	* builtins.cc (string_variables): Add to list with default value
-	of true.
-
-	* input.cc (octave_gets): If interactive, call flush_to_pager()
-	before prompting.
-
-	* utils.cc (terminal_rows): Move to pager.cc
-	* (terminal_columns): Likewise.
-	* (get_pager): Likewise.
-
-	* pager.h, pager.cc: New file to handle pager stuff.
-	* src/Makefile.in: Fix things to distribute and compile them.
-
-	* libcruft/Makefile.in (CRUFT_OBJ): Strip $(srcdir)/ and convert
-	from .f to .o in two steps since some versions of GNU make strip
-	the leading ./ from the output of $(wildcard), causing my pattern
-	match to fail if compiling in the source tree.
-
-Tue May  4 09:13:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (symbol_record::define (symbol_record *)): Delete old
-	name before saving new name.
-	* (symbol_record::document): Likewise, for var.help and fcn.help.
-
-	* parse.y (ABORT_PARSE): Renamed from DO_ABORT.
-
-Mon May  3 01:00:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc: Define destructors for every class in tree.h.  It
-	appears that it should always be ok to delete everything in a
-	command tree once we're done executing it.  Function definitions
-	are still ok because the parser doesn't set global_command to the
-	tree_function we've built (that's saved somewhere in the symbol
-	table and shouldn't be deleted until we clear or redefine the
-	function).
-
-	* utils.cc (pathstring_to_vector): Do memory management here so
-	callers don't have to.
-	* (default_path): Likewise.
-
-	* utils.cc (make_absolute): Return current_path (not a copy) since
-	it is static.
-	* (get_working_directory): Return the_current_working_directory
-	(not a copy) since it is global.
-
-	* utils.cc (cleanup_tmp_files): Delete filename when done.
-
-	* parse.y: Replace output to cerr with calls to error() or warning().
-	* DO_ABORT: New macro.  Use it instead of YYERROR for errors that
-	we detect, and call yyerror since bison doesn't.
-	* (param_list1): Detect invalid parameter lists.
-	* (yyerror): Don't print pointer if it is past the end of the line.
-
-Sun May  2 13:03:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-extras.cc (process_format): Use ostrstream instead of a
-	fixed-size character string to buffer the format.
-
-	* utils.cc (terminal_rows): Get info from readline variable
-	instead of hardcoded constants.
-	* (terminal_columns): Likewise.
-
-	* utils.cc (maybe_page_output): New function.
-	* t-builtins.cc (builtin_help): Use it.
-	* (builtin_who): Ditto.
-	* Don't include procstream.h anymore since we no longer need it.
-
-	* utils.cc (jump_to_top_level): Call run_all_unwind_protects ()
-	before jumping back to the top level.
-
-Sat May  1 20:59:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* unwind-prot.cc unwind-prot.h: New files to implement memory
-	cleanup stuff.
-	* src/Makefile.in: Distribute them.
-
-	* Version 0.71.2.
-
-	* computer.m: Delete file.
-	* scripts/Makefile.in (computer.m): Add $(srcdir)/ prefix to
-	computer.in.
-
-Fri Apr 30 17:03:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.h (<CLASS>::row (int i)): New function for extracting a
-	row of a matrix where CLASS is one of Matrix, DiagMatrix,
-	ComplexMatrix, or ComplexDiagMatrix.
-	* (<CLASS>:: column (int i)): Likewise for columns.
-	* (<CLASS>::row (char *s)): Likewise, but selection is done with a
-	character string.  Currently we accept anything beginning with `F'
-	or `f' to mean the first row and anything beginning with `l' or
-	`L' to mean the last row.
-
-Wed Apr 28 14:23:49 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* scripts/computer.in: New template file for computer.m.
-	* scripts/Makefile.in (computer.m): Generate a custom computer.m
-	file using $target_host_type.
-	* (clean): Delete computer.m.
-
-	* configure.in: If last argument is not empty, use its value as
-	the TARGET.
-	* If we aren't given a TARGET, use config.guess to find one.
-	* Substitute target_host_type.
-
-	* config.guess: New file, taken from gdb distribution.
-	* Makefile.in: Distribute it.
-
-	* tree-const.cc (force_numeric): New parameter, force_str_conv to
-	allow us to ignore user preference on string to numeric
-	conversion.
-	* (make_numeric): Likewise.
-
-	* tree.cc (tree_matrix::eval): Allow range constants in matrix
-	lists by simply converting them to matrices.
-	* Ditto for string constants.
-
-Tue Apr 27 17:21:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* utils.cc (smells_like_X11): Delete unneeded function.
-	* builtins.cc (install_builtins): Don't initialize
-	graphics_terminal since it's no longer needed.
-
-	* utils.cc (pathstring_to_vector): Call tilde_expand on each
-	element of the path.
-
-	* mappers.cc: Include float.h for DBL_MAX.
-
-Wed Apr 21 19:31:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* mappers.cc (xisnan (Complex&)): Rename from isnan.
-	* builtins.cc (mapper_functions): Use xisnan instead of isnan.
-	* (install_builtins): Special case for linux for geenerating
-	infinity and NaN.
-
-Mon Apr 19 14:10:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.71.1 released.
-
-	* symtab.cc (char **sorted_list (int& count)) New function.
-	* (char **sorted_var_list (int& count)): Ditto.
-	* (char **sorted_fcn_list (int& count)): Ditto.
-	* t-builtins.cc (builtin_who): Check symbol count too.
-
-	* utils.cc (send_to_plot_stream): Check is_open(), not just the
-	state of the stream.
-	* (close_plot_stream): Likewise.
-
-	* procstream.cc, procstream.h: Rewrite, taking a hint from the GNU
-	fstream class.
-
-Sun Apr 18 17:40:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.cc (builtin_help): Don't call list_in_columns if
-	there isn't anything to list.
-
-Fri Apr 16 20:57:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Makefile.in (DISTDIRS): List dld here.
-	* (DISTSUBDIRS): Not here.
-
-Thu Apr 15 12:17:08 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.71 released.
-
-	* scripts/*.m: Improve help messages for most files.
-
-	* libcruft/Makefile.in: Make libcruft.a here.
-	* libcruft/Makerules.in: Not here.
-
-	* PLOTTING: New file.
-	* Makefile.in: Add it to the list of files we distribute.
-
-	* g-builtins.cc (builtin_shell_command): New function.
-	* builtins.cc (general_functions): Add it to the list.
-
-	* procstream.h, procstream.cc (iprocstream): New class.
-
-	* lex.l (<MATRIX>{SN}*\]): Maybe insert a comma after reading a `]'.
-
-	* t-builtins.cc (builtin_load): Do tilde expansion for the file name.
-	* (builtin_save): Ditto.
-
-Wed Apr 14 10:40:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_function::eval): Until we have a proper call frame
-	unwinding scheme, comment out previous change.
-
-	* tree.cc (tree_matrix::eval): Brain Transplant.
-	* (tree_matrix::length): New function.
-
-	* tree-base.h (matrix_dir): Delete md_none, md_left, and md_up.
-	The only valid values are md_unknown, md_right, and md_down.
-
-Tue Apr 13 20:07:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.h (tree_function::call_depth): New member variable.
-	* tree.cc (tree_function::eval): Check it to make recursive
-	function calls fail (waiting for proper symbol table handling).
-
-	* utils.cc (pathstring_to_vector): Don't prepend `.' here.  We do
-	that already in default_path() if the user hasn't given us a
-	loadpath.
-
-	* t-builtins.cc (builtin_help): Get help for M-files even if they
-	haven't been compiled yet.
-	* List M-files we find in the loadpath.
-
-	* utils.cc (get_m_file_names): Split into two functions, add
-	parameter to specify whether .m suffix is deleted.
-
-	* lex.l (grab_help_text): New function.
-	* (beginning_of_function): New global variable.
-	* (%|#): Call grab_help_text() if at beginning of a function.
-	* tree.cc (tree_identifier::document): New function.
-	* parse.y (func_def2): Use it.
-	* (help_buf): New global buffer for help text.
-
-Mon Apr 12 00:31:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* utils.cc (get_m_file_names): New function.
-	* variables.cc (make_name_list): Use it.
-
-	* t-builtins.cc (list_in_columns): Put output on an strstream
-	instead of in a String.
-	* (builtin_help): Use an strstream instead of a String for buffering.
-	* (builtin_who): Likewise.
-
-	* g-builtins.cc (builtin_keyboard): New function.
-	* builtins.cc (general_functions): Add to list.
-
-	* tc-extras.cc (get_user_input): If the user enters `exit',
-	`quit', or `return', return instead of eval'ing the string.
-	* Don't abort on empty input.
-	* Add additional argument to handle debugging via new `keyboard'
-	function.  If doing debugging, keep reading until we see `exit',
-	`quit', or `return'.
-
-	* menu.m: New M-file.
-
-	* New top level plotting functions:
-
-	    plot.m    semilogx.m  semilogy.m  loglog.m   polar.m
-	    title.m   xlabel.m    ylabel.m    grid.m     bar.m
-	    stairs.m  mesh.m      meshdom.m   contour.m
-
-	* New internal plotting functions:
-
-	    plot_int.m    plot_2_s_s.m  plot_2_v_v.m  plot_2_v_m.m
-	    plot_2_m_v.m  plot_2_m_m.m  polar_int.m
-
-	* New utility functions:
-
-	    is_scalar.m  is_vector.m  is_matrix.m
-
-Sun Apr 11 11:10:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-buitlins.cc (builtin_ls): New function.
-	* builtins.cc (text_functions): Add it to the list under the names
-	`ls' and `dir'.
-
-Sat Apr 10 15:13:05 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* procstream.cc (oprocstream::close): Set badbit for stream after
-	it is closed.
-
-	* utils.cc (close_plot_stream): New function.
-	* g-buitlins.cc (closeplot): New builtin function.
-	* builtins.cc (general_functions): Add to list.
-
-	* lex.l (cant_be_identifier): New cruft to properly handle the
-	plot command's `using', `title', and `with' keywords.
-
-Fri Apr  9 09:38:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Warn if it looks like gnuplot isn't installed.
-
-	* utils.cc (send_to_plot_stream): Check the user's preference for
-	the gnuplot binary.
-
-	* user-prefs.cc (sv_graphics_terminal): Delete function.
-	* user-prefs.h (graphics_terminal): Delete variable.
-
-	* tree-plot.cc (tree_subplot_using::print): Add argument to allow
-	checking of columns given in using command and use it.
-	* (tree_plot_command::eval): Change caller.
-
-	* parse.y (title): Allow plot title to be any expression.
-	* tree-plot.cc (subplot_list): Likewise.
-
-	* tree-plot.cc (tree_plot_command::eval): Don't let lusers try to
-	make 2D parametric plots, since that seems to crash gnuplot.
-
-	* tree.cc (tree_identifier::parse_m_file): Don't try to stash
-	m-file name or time parsed if we were actually executing a script
-	file.
-
-	* sombrero.m: New M-file to demonstrate 3D plotting.
-
-	* parse.y (plot_options): Allow them to be specified in any order.
-
-	* g-builtins.cc (builtin_purge_tmp_files): New function.
-	* builtins.cc (general_functions): Add to list.
-
-	* g-builtins.cc, g-builtins.h (builtin_plot): Delete.
-	* builtins.cc (general_functions): Delete entry for builtin_plot.
-
-	* t-builtins.cc (builtin_set): Check to see if the user is setting
-	up parametric plotting.
-	* tree-plot.cc (parametric_plot): New global variable.
-	* tree_const.cc (save_three_d): New function.
-	* tree-plot.cc (tree_subplot_list::print): Handle 3D plots.
-
-	* Makefile.in: Delete everything having to do with distributing or
-	making gnuplot.
-	* configure.in: Likewise.
-
-Thu Apr  8 10:02:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* utils.cc (send_to_plot_stream): New function.  Move declaration
-	of plot_stream to utils.cc and make static.
-
-	* t-builtins.cc (builtin_set): New function.
-	* (builtin_show): Ditto.
-
-	* lex.l: Handle set command.
-	* (doing_set): Yet another global variable to control behavior of
-	the lexer.
-
-	* tree-plot.cc (tree_subplot_using::print): Print warning if scanf
-	format string is given.
-
-	* parse.y (ranges1): Allow lower and upper bounds to be optional.
-	* tree-plot.cc (tree_plot_range::print): Make it work.
-
-	* tree-plot.cc: New file, extracted from tree.cc.
-
-	* sighandlers.cc (install_signals): New function.
-	* (*_handler): New set of functions to handle signals that would
-	otherwise cause us to abort.
-	* (my_friendly_exit): Call exit from most signal_handlers to clean
-	up tmp files, etc.
-
-	* lex.l (do_string_escapes): Correctly handle '' quotes.
-	* Warn about unrecognized escape sequences but convert them to the
-	escaped character anyway.
-	* (EXPON): New definition.  Use it and ? qualifier to shorten the
-	expressions for matching numbers.
-	* (ECHAR): New definition.  Use it to correctly match
-	backslash-escaped characters in strings.
-	* Definitions: Surround multi-character definitions in ()'s to
-	avoid potential problems with things like {DEF}*.
-	* (QQ): Rename from DQ.
-	* (DQSTR): New definition for strings in double quotes.
-	* (DQSTRING): New start state.  Recognizing a naked " puts us here.
-	* ("\n"): Turn off quote_is_transpose at the beginning of each line.
-	* Use error functions instead of writing messages directly.
-	* Don't include iostream.h -- we don't need it now.
-	* Do include error.h.
-
-Wed Apr  7 13:12:17 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* sighandlers.h, sighandlers.cc: New files for signal handling
-	functions.
-	* Makefile.in: Include them in the usual places.
-	* octave.cc (interrupt_handler): Move to sighandlers.cc and rename
-	to sigint_handler.
-
-	* utils.cc (mark_for_deletion): New function.
-	* octave.cc (cleanup_tmp_files): New function.
-	* octave.cc (main): Register cleanup_tmp_files with atexit
-	(on_exit for sun).
-
-	* Stack.h: Template based stack class converted from libg++
-	genclass files.
-	* SLStack.h: Likewise.
-	* (SLStack::pop): Avoid apparent bug in SLList::remove_front.
-
-Tue Apr  6 10:01:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (almost_match): New function.
-	* (plot_style_token): New function.
-
-	* t-buitlins.cc: Include procstream.h instead of procbuf.h.
-	* (builtin_help): Simplyfy opening of process output stream.
-	* (builtin_who): Likewise.
-
-Mon Apr  5 13:48:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-extras.cc (tree_constant_to_scalar): Move to tree-const.cc
-	and make it a member function called to_scalar.
-	* (tree_constant_to_vector): Likewise.
-	* (tree_constant_to_matrix): Likewise.
-
-	* procstream.h, procstream.cc: New files/classes that implement
-	an ostream to a process.  Built on top of procbuf from libg++.
-	* src/Makefile.in: Add them to the lists of files/objects.
-
-Sat Apr  3 23:11:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Lots of clean-up changes to parse.y, tree.cc, tree.h, and
-	tree-base.h.  Use more specific types than just <tree *> for
-	nonterminals.  This allows us to have fewer virtual functions in
-	the base class.  Safer.  Cleaner.  Should have always been this
-	way...
-
-Fri Apr  2 10:04:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y, lex.l: Fix grammar to accept plot command very similar
-	to the gnuplot plot command.
-
-Wed Mar 31 13:11:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (eval_undefined_error): Until we can figure out how to
-	clear names without causing problems later on, just remove the
-	symbol name.
-
-	* tree.h (tree_plot_command): New class.
-	* (tree_plot_limits): Ditto.
-	* (tree_plot_range): Ditto.
-	* (tree_subplot_list): Ditto.
-	* (tree_subplot_using): Ditto.
-	* (tree_subplot_style): Ditto.
-
-	* tree-base.h (command_type): Add plot_command to list.
-
-Mon Mar 29 09:53:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* find_exec.c (ABSOLUTE_FILENAME_P): Also return true if the
-	given filename begins with `.'.
-
-	* DAE.cc, DAE.h, DAEFunc.h, tc-dassl.cc: Make sure all calls to
-	dassl and the user-supplied functions have consistent argument
-	lists.
-
-	* octave.cc (raw_program_name): New global variable to hold the
-	unprocessed argv[0].  This is to help dld find the absolute path
-	to the executing program.
-	* (initialize_globals): Pass in argc and argv from main.
-	Initialize raw_prog_name.
-
-	* builtins.cc (general_functions): Correct help message for dassl.
-	* g-builtins.cc (dassl_usage): Likewise.
-
-	* src/Makefile.in: Lots of changes to make things work with or
-	without dld.
-	* Makefile.in: Likewise.
-	* configure.in: Likewise.
-
-	* dld: New directory, containing our copy of the dld sources.
-
-	* dynamic-ld.cc, dynamic-ld.h: New files to implement dynamic
-	loading functions.
-	* src/Makefile.in: Add them to the distribution, compile them if
-	doing dynamic loading.
-
-Sun Mar 28 11:03:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: When looking for Fortran compilers, check for fc
-	last to avoid confusion with some vendor's /bin/sh fc builtin.
-	* Handle new argument --with-dld.
-
-	* g-builtins.cc (builtin_warranty): Add 1993 to list of copyright
-	dates.
-
-Sat Mar 27 17:58:23 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-extras.cc: Rename from tree-extras.cc.
-	* tc-colloc.cc, tc-dassl.cc, tc-det.cc tc-eig.cc, tc-fft.cc,
-	tc-fsolve.cc, tc-fsqp.cc, tc-ifft.cc, tc-inv.cc, tc-lsode.cc,
-	tc-lu.cc, tc-npsol.cc, tc-qr.cc, tc-quad.cc, tc-rand.cc,
-	tc-svd.cc: Split individual functions from tree-extras.cc.
-
-	* g-builtins.cc (npsol_usage): Improve message.
-	* (dassl_usage): Likewise.
-	* (builtin_lsode): Likewise.
-	* (builtin_fsolve): Likewise.
-	* (builtin_quad): Likewise.
-	* builtins.cc (general_functions): Improve corresponding messages.
-
-	* libcruft/fftpack: New directory for fftpack functions.
-	* libcrutf/fftpack/*.f: Add implicit double precision (a-h,o-z) at
-	the top of every subroutine.
-
-	* tree-extras.cc (fft): Allow propagation of empty matrices.
-	* (ifft): Ditto.
-
-	* Matrix.cc (Matrix::fourier): New function.
-	* (Matrix::ifourier): Ditto.
-	* mx-inlines (make_complex): New function.
-	* tree-extras.cc (fft): Use Matrix::fourier instead of doing real
-	to complex conversion here and calling ComplexMatrix::fourier.
-	* (ifft): Likewise, for ifourier.
-
-Sat Mar 27 17:56:59 1993  Fook Fah Yap (ffy@eng.cam.ac.uk)
-
-	* Matrix.cc (ComplexMatrix::fourier): New function for fft.
-	* (ComplexMatrix::ifourier): New function for inverse fft.
-
-	* builtins.cc (general_functions): Add fft and ifft to the list of
-	builtin functions.
-
-	* g-builtins.cc (fft): New function.
-	* (ifft): Ditto.
-
-	* tree-extras.cc (fft): New function.
-	* (ifft): Ditto.
-
-Sat Mar 27 13:53:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (usage_string): New file scope constant.
-	* (getopt_option_string): Ditto.
-
-	* error.cc: Declare all arguments const since we don't change them.
-
-	* utils.cc (print_str_or_null): Delete unused function.
-	* utils.h: Delete declaration.
-
-	* tc-assign.cc, tc-index.cc, tc-inlines.cc, tree.cc,
-	tree-const.cc: More error message cleanups.
-
-	* tree-const.cc (print_if_string): Don't write to cerr
-	unconditionally.
-
-Fri Mar 26 22:00:18 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (min): Avoid function calls as arguments for MIN.
-	* (column_min): Ditto.
-	* (max): Likewise, for MAX.
-	* (column_max): Ditto.
-
-	* tree-const.h (NINT): Make it an inline function instead of a
-	macro.
-
-	* tree-extras.cc (fill_matrix (tree_constant&, double, char*)):
-	Convert to scalar type for complex values too.
-
-	* error.h (panic_impossible): New macro to be used in place of
-	assert (0) calls.
-	* All .cc files: Replace calls to assert (0) and abort () with
-	panic_impossible ().
-
-	* Many .cc files:: Replace many instances of `cerr << ...' with
-	calls to gripe() functions.
-
-	* gripes.h, gripes.cc: New functions for reporting common errors.
-	* Makefile.in: Include them in the usual places.
-
-Thu Mar 25 18:42:49 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Many .cc files:: Replace many instances of `cerr << ...' with
-	calls to error() functions.
-
-	* error.h, error.cc: New functions for reporting errors in a
-	consistent way.
-	* Makefile.in: Include them in the usual places.
-
-Wed Mar 17 17:29:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (symbol_table::save): New functions.
-	* t-buitlins.cc (builtin_save): Use new functions for saving
-	symbols.  Handle case of saving all variables.
-
-	* g-builtins.cc (builtin_pause): If one argument is given, pause
-	for that many seconds before continuing.  Otherwise, wait for user
-	input.
-
-	* symtab.cc (clear): Actually delete undefined symbol_records and
-	remove their names from the list.
-
-	* lex.l (lookup_identifier): New function.  Avoid putting global
-	names in the local symbol table.
-	* ({IDENT}): Use it
-	* ({IDENT}/{S}*=): Ditto.
-
-	* tc-index.cc (do_scalar_index (tree_constant*, int)): Make
-	indexing like a([1,1,1,1]) work for scalars.  GAG.
-
-Tue Mar 16 20:08:23 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-buitlins.cc (builtin_cd): Call tilde_expand (from readline) on
-	the argument.
-
-	* lex.l (discard_until): Delete unused function.
-	* When reading numbers, abort if scanf fails to read a number that
-	we think it should.
-	* (IDENT): New macro to match identifiers.
-	* ([_a-zA-Z][_a-zA-Z0-9]*): Use the / operator for trailing
-	context and split into two cases instead of trying to do the
-	lookahead ourselves.
-
-	* lex.l (do_comma_insert_check): Return the value yyleng had
-	before yyinput() is called.
-	* (DO_COMMA_INSERT_CHECK): New macro.  This avoids the use of
-	unput() in do_comma_insert_check() since there seems to be a bug
-	in flex when calling unput() for '\n'.
-
-	Note that this change is necessary if we want to use yyless()
-	since we cant call yyless() from outside of yylex(), because
-	Flex's yyless() is a macro that uses some variables local to
-	yylex().
-
-Mon Mar 15 11:03:43 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_matrix::eval): Undo part of previous change to
-	make a = [1,2;3,4]; [a,a;a,a] work again.
-
-	* parse.y (input): Don't abort for simple_list followed by EOF.
-
-Sun Mar 14 14:38:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* RowVector.cc (RowVector::operator << ()): Insert a space between
-	each element.
-	* (ComplexRowVector::operator << ()): Ditto.
-
-	* g-buitlins.cc (plot): Don't declare plot_prog or plot_term as
-	static, and don't delete them.
-
-	* Matrix.h (all checkelem functions): Don't check for range errors
-	if NO_RANGE_CHECK is defined.
-
-Sat Mar 13 10:18:51 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.cc (ComplexMatrix::prod): Make it work.
-
-Thu Mar 11 00:08:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.h (ellum): Delete function.
-	* Declare and define new const elem, checkelem, and operator()
-	functions.
-
-	* ColVector.cc, DiagMatrix.cc, RowVector.cc, Matrix.cc, ODE.cc,
-	LinConst.cc, FEGrid.cc, DAE.cc, Bounds.cc, FEGrid.h:
-	Change all callers.
-	* tree-const.cc, tree-extras.cc, xdiv.cc, xpow.cc: Ditto.
-
-	* tree.cc (tree_matrix::eval): Improve row and column mismatch
-	checking -- [[1,2];[3,4]] works now, and [1,2;3,4,[5,6]] is
-	rejected.
-	* Reformat error messages to include `error:' prefix.
-
-Wed Mar 10 14:02:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (do_comma_insert): New global variable.
-	* (reset_parser): Reset it.
-	* lex.l (do_comma_insert_check): New function.  Call it wherever a
-	token can be directly followed by '['.
-	* (\[{S}*): Check the value of do_comma_insert.
-
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only look for names in the
-	current symbol table.
-
-	* parse.y (word_list_cmd): Special case to disallow use of clear
-	inside a fuction body.
-
-	* parse.y (CLEAR): New %token.
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Return it if token is "clear".
-
-	* t-builtins.cc (builtin_clear): Allow global symbols to be
-	cleared.
-
-	* symtab.cc (symbol_table::undefine): Clarify comment.
-	* (symbol_table::clear): Don't actually remove names from the
-	table, just force them to be undefined.
-
-	* tree.h (tree_function): Delete unused data member `id'.
-	* tree.cc (tree_function constructors): Don't initialize id.
-
-Mon Mar  8 15:50:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.70 released.
-
-	* src/Makefile.in: Update dependencies.
-
-	* tree.h: Include stdio.h, for FILE.
-
-	* gnuplot-build: For now, always define -DNOGAMMA.
-	* configure.in: Don't check for gamma().
-
-	* libcruft/Makerules.in: Don't use lib.a(obj.o) style dependencies
-	because it's too slow for large archives.
-	* liboctave/Makefile.in: Ditto.
-
-Sun Mar  7 16:33:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (parse_and_execute): Save and restore current column
-	number.  Set input line and column number to zero.
-	* tree.cc (parse_m_file): Likewise.
-
-	* tree.cc (tree_identifier::parse_m_file (FILE*, int*)): New
-	function.  If a parse error occurs, ensure that the symbol is
-	cleared from the global symbol table.
-	* (tree_identifier::parse_m_file (char*, int): Use it.
-
-	* tree.cc (tree_identifier::do_lookup): New function.
-	* (tree_identifier::eval): Use it.
-
-	* utils.cc (decode_prompt_string): Really do use value of PWD.
-
-	* user_prefs.cc (sv_loadpath, sv_ps1, sv_ps2, sv_pwd,
-	sv_gnuplot_binary, sv_graphics_terminal): New functions.
-	* (sv_graphics_terminal): Warn if terminal isn't valid, but set it
-	anyway (it's too late to do anything by the time the function is
-	called).
-	* In functions that use these variables:  Use the value from the
-	user_pref structure instead of doing a symbol table lookup.
-
-	* builtins.cc (builtin_string_variables): Add functions to call
-	for LOADPATH, PS1, PS2, PWD, gnuplot_binary, and graphics_terminal.
-
-	* builtins.cc (PS2): New builtin_string_variables.  Set default
-	value to "> ".
-	* input.cc (octave_gets): Use it instead of no prompt for
-	continued input.
-
-	* parse.y (yyerror): Use line, column, file name, and text of
-	current input line to print better parse error messages.
-
-	* lex.l (NEW_MATRIX): New exclusive start state.  Need this to be
-	able to match \[{SN}* _and_ get secondary prompting right.
-
-	* input.cc (octave_read): Keep track of current input line.
-	* tree.cc (parse_m_file): Save and restore current line number.
-
-	* lex.l (all patterns): Keep track of current input column.
-	* (fixup_column_count): New function to deal with patterns that
-	match more than one line.
-
-	* input.h, input.cc (current_input_line): Global pointer to
-	the text of the current input line.
-
-	* parse.y, parse.h (input_line_number, current_input_column): New
-	global variables.
-
-	* Almost all source files: Finish (for now, at least) the
-	reorganization we started for global variables.
-
-Wed Mar  3 14:49:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tc-assign.cc, tc-index.cc, tc-inlines.cc: New files, split out
-	from tree-const.cc.
-
-	* Almost all source files: reorganize so that all global data is
-	declared in some include file or another.  It probably wouldn't
-	hurt to do some more reorganizing to try to eliminate the amount
-	of global information...
-
-Tue Mar  2 20:49:35 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* variables.h, variables.cc: New files for handling things that
-	need symbol table information.  Lots of files changed to include
-	variables.h, which now includes the extern declarations for the
-	symbol tables.  The declarations of the symbol tables are now in
-	variables.cc, but they are still initialized in octave.cc.
-
-Mon Mar  1 11:35:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* builtins.h (builtin_string_variables): New field, sv_function,
-	holds a pointer to the function to call when a variable changes.
-	* builtins.cc (string_variables): Initialize sv_function field.
-	* (install_builtins): While installing builtin string variables,
-	stash sv_function and, if it isn't NULL, call it to initialize
-	global variable user_pref.
-
-	* symtab.h (symbol_record): New field, sv_fcn, holds a pointer to
-	the function to call when a variable changes.
-	* symtab.cc (symbol_record::define): Call sv_fcn if it isn't NULL.
-	* symtab.cc (symbol_record::set_sv_function): New function.
-
-	* utils.cc, parse.y, tree.cc, tree-extras.cc, tree-const.cc,
-	idx-vector.cc, builtins.cc, symtab.cc: Instead of calling
-	functions like do_fortran_indexing(), get the user's preference
-	from the global struct user_pref.
-
-	* utils.h, utils.cc: Delete all functions like do_fortran_indexing()
-	that lookup user variables to find integer values.
-	* user-prefs.h, user-prefs.cc: Move them here, but instead of
-	returning values, set elements of the new global struct user_pref.
-
-	* user-prefs.h, user-prefs.cc: New files for handling global
-	variables for user preferences.
-	* Makefile.in: Add them to the SOURCES and INCLUDES macros.
-
-	* bsd-math/{acosh,asinh,atanh,log1p}.c: Declare all external
-	functions used in each file since they might not be in math.h.
-	* bsd-math/{scalb,copysign,logb,finite,drem,sqrt}.c: New files
-	from BSD's support.c.  Only using scalb, copysign, logb, and
-	finite for now.
-
-	* configure.in: Move tests for f77 closer to the top.
-	* Allow configuration to proceed even if we can't find a Fortran
-	compiler or f2c.
-	* Use `here' documents instead of multiple echos for multi-line
-	messages.
-	* Imrpoved checking for missing math functions.
-
-Sun Feb 28 17:45:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* test/Makefile.in (check): Try to avoid errors from cp.
-
-	* mappers.cc (xfinite): Put test for HAVE_FINITE first.
-
-	* libcruft/Makerules.in (LIBCRUFT_DEPEND): Use `=' in assignment
-	instead of `:='.
-
-	* liboctave/Makefile.in: Make an explicit list of sources instead
-	of using $(wildcard).
-
-Thu Feb 25 20:18:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* bsd-math/copysign.c: New file.  HP's don't have this?
-	* configure.in (LIBOBJS): Also check for copysign, log1p, and
-	log__L.  For each missing user-level function, add -DFOO_MISSING=1
-	to DEFS.
-	* src/missing-math.h: For each function we declare, check the
-	corresponding XXX_MISSING macro.  Add declarations for copysign
-	and log1p.
-
-Wed Feb 24 20:39:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (<MATRIX>{SN}*\]/{S}*==): Change scanning pattern to
-	<MATRIX>{SN}*\]{S}*/== in order to keep flex from generating any
-	backtracking code.
-	* (<MATRIX>{SN}*\]/{S}*=): Likewise.
-
-Tue Feb 23 02:45:00 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
-
-	* Version 0.69 released.
-
-	* mappers.cc [_AIX && __GNUG__] : Provide a definition for
-	finite(), since whatever version we get from the system when using
-	g++ doesn't work (note that it does seem to work with gcc, xlc,
-	and xlC).
-
-	* bugs.texi: Note that the math.h file from libg++ declares
-	finite() incorrectly for some systems.
-
-Mon Feb 22 02:04:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Look for runtest, but only believe that it exists
-	if we can also find expect.
-	* test/Makefile.in (check): Run tests in build directory, not
-	source directory.
-
-	* tree.cc (reading_script_file): New global variable.
-	* (parse_m_file): Use it, and properly save and restore state so
-	that nested script files will work.
-
-	* octave.cc (parse_and_execute): Properly save and restore state
-	so that nested script files will work.
-	* Don't close input file here.
-
-	* input.cc (get_input_from (FILE*)): Don't declare mf_instream
-	static.  Set mf_instream if reading and M-file or a script file.
-
-	* parse.y: Minor changes to accomodate new lexer.
-
-	* lex.l: Major overhaul in an attempt to do better string
-	handling.  Looks much simpler and even seems to work.
-	* (do_string_escapes): New function.
-
-Sat Feb 20 00:40:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_npsol): If npsol is missing, return empty
-	matrices for x and phi, and -1 for inform.
-
-	* num2str.m: Use %g, not %f.
-
-	* tree.cc (parse_m_file): Save and restor curr_sym_tab, because
-	yyparse may mess with it if it encounters a function definition.
-	* tree-extras.cc (eval_string): Ditto
-	* octave.cc (parse_and_execute): Ditto
-
-	* Makefile.in (DISTDIRS): Add bsd-math to list.
-
-	* src/Makefile.in (LIBOBJS): New macro, value set by configure.
-	(vpath): Add @srcdir@/../bsd-math for LIBOBJS.
-	(octave): Add $(LIBOBJS) to deps.
-	* gnuplot-build/Makefile.in: Likewise, for notgnuplot.
-
-	* configure.in: Use AC_REPLACE_FUNCS to Check for acosh, asinh,
-	atanh, and gamma.
-
-	* bsd-math: New directory for functions from the BSD math library
-	to use as replacements for missing functions.
-
-	* parse.y (semi_comma, comma_semi): New rules.
-	(simple_list, simple_list1): Use them to allow empty statements.
-	(list, list1): Likewise.  This allows empty commands as long as
-	the empty command doesn't contain any newlines.
-
-	* parse.y (simple_assign): New rule, allows things like a = b = c.
-	(multi_assign): Extracted from assignment.
-	(assignment): Split into simple_assign and multi_assign.
-	(expression): Allow '(' simple_assign ')' to be an expression.
-
-	* tree-extras.cc (eval_string): Return result of last expression
-	evaluated, to make things like `eval ('1+1;')*2' work.
-
-Fri Feb 19 19:45:21 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_pwd): Use getcwd, which is defined in
-	unistd.h, instead of getwd, which seems to be a BSDISM.
-	* utils.cc (decode_prompt_string): Ditto.
-	* (get_working_directory): Ditto.
-
-	* arith_ops.cc (DIVIDE_BY_ZERO_ERROR):  Don't rely on
-	HAVE_IEEE_MATH, use HAVE_ISINF, HAVE_FINITE, and HAVE_ISNAN
-	instead.
-	* configure.in: Don't define HAVE_IEEE_MATH.
-
-	* tree-extras.cc: Include stdio.h for FILE.
-
-Thu Feb 18 10:17:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (gobble_leading_white_space): New function.
-	* (is_function_file): New function.
-
-	* (parse_m_file): Handle case of .m file being just a file of
-	commands to execute.
-	* Add optional argument to specify whether to execute a script
-	file.
-	* Return whether a script file was executed.
-	* (tree.cc, tree-extras.cc): Change callers.
-
-	* octave.cc (parse_and_execute): new functions.
-	* (execute_startup_files): Use them.
-
-	* lex.l (<COMMENT>\n): Don't gobble new line.
-
-	* num2str.m: Don't print '\n'.
-
-Wed Feb 17 21:59:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* mappers.cc: Simplify and correct finite, isinf, isnan functions.
-	* test/octave/t7.oct: New test for finite, isinf, and isnan
-	functions.
-
-	* configure.in: Define HAVE_IEEE_MATH if isnan and either finite
-	or isinf is available.
-
-	* builtins.cc (mapper_functions): Check HAVE_ISNAN instead of
-	HAVE_IEEE_MATH to determine whether or not to define isnan().
-
-	* mappers.cc: Don't check for HAVE_IEEE_MATH.  Just check for
-	individual functions directly.
-
-	* g-builtins.cc (npsol_usage): Correct usage message.
-
-	* g-builtins.cc: Don't include unistd.h unless HAVE_UNISTD_H is
-	defined.
-	* t-builtins.cc: Ditto.
-	* utils.cc: Ditto.
-
-Tue Feb 16 00:35:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.68 released.
-
-	* tree.cc (parse_m_file): Set reading_m_file before calling
-	get_input_from_file.
-	* Don't mess with current_infile.
-
-	* input.cc (get_input_from_file): Set mf_instream if we are
-	reading an M-file.  Otherwise, set rl_instream, (even if we aren't
-	really using readline -- this is just the `normal' input stream).
-	* Don't use current_infile.
-	* (octave_read): If not interactive, check reading_m_file to
-	determine where to look for input.
-
-	* octave.cc (main): Don't use readline if we aren't interactive.
-
-	* libcruft/misc/Makefile.in (local-dist): Make sure we don't
-	distribute a bogus d1mach.f.
-	(dist): Ditto.
-
-	* tree-extras.cc (convert_to_ans_assign): New global variable.
-	(eval_string): Conditionally turn off assignment to `ans', for
-	get_user_input ().
-	* parse.y (ans_expression): Use it.
-	* lex.l (reset_parser): Reset it.
-
-	* g-builtins.cc (builtin_input): New function.
-	* builtins.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (get_user_input): Do most of the real work.
-
-Mon Feb 15 01:14:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.cc (load_variable): New function.
-	(builtin_load): Use it.
-
-	* Makefile.in (SUBDIRS): Add the test directory.
-	(check): Don't depend on all.
-
-Sat Feb 13 05:17:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (determinant, lu, matrix_exp, matrix_log,
-	matrix_sqrt): Handle empty matrix argument.
-
-	* Matrix.h: Add constructors of the form Matrix (double a) and
-	ColumnVector (double a) to make it even easier to form single
-	element vectors.
-
-Fri Feb 12 03:27:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (main): Add -v option that will print the version
-	string and quit with a successful exit status.
-
-Thu Feb 11 00:46:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (eig): If given an empty argument, return enough
-	empty matrices to fill all possible LHS variables.
-	(qr): Likewise.
-	(svd): Likewise.
-
-	* tree-const.cc (fortran_style_matrix_assignment): Do the right
-	thing if LHS is an empty matrix.
-
-	* tree-extras.cc (qr): Handle empty matrix argument.
-
-	* Matrix-ext.cc (QR): Make it work (really!).
-	(ComplexQR): Ditto.
-
-Wed Feb 10 00:56:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* xdiv.cc (xdiv (ComplexMatrix& a, ComplexMatrix& b)): Do
-	btmp.solve (atmp), like the other three xdiv's.  Argh!
-
-	* tree-extras.cc (eval_string): New function.  Mostly works but
-	could be very fragile.  We desperately need some sort of
-	`unwind-protect' scheme to avoid disaster when octave is
-	interrupted.
-
-	* g-builtins.cc (builtin_eval): Instead of just aborting, call
-	eval_string if given one argument.
-
-	* input.cc (octave_read): If get_input_from_eval_string is
-	nonzero, stuff current_eval_string into buf for flex to read.
-
-	* tree-extras.cc (char *current_eval_string): New global variable
-	for eval().
-	* (int get_input_from_eval_string): Ditto.
-
-	* Update copyright notices to include 1993 (now that it's
-	February...).
-
-Tue Feb  9 14:35:08 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.67 released.
-
-	* tree-extras.cc, tree-const.cc: Check the value of the variable
-	`propagate_empty_matrices' to decide what to do about empty
-	matrices in binary and unary operations and some function calls.
-
-	* builtins.cc (builtin_string_variables): New global variable
-	`propagate_empty_matrices' with initial value `warn'.
-	* utils.cc (propagate_empty_matrices): New function.
-
-Mon Feb  8 19:46:51 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-const.cc: Finish changes required to make zero-one indexing
-	work for indexing and assignment.
-
-Sat Feb  6 15:54:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* builtins.cc (builtin_string_variables): New global variable
-	`prefer_zero_one_indexing' with initial value `false'.
-	* utils.c (prefer_zero_one_indexing): New function.
-
-Fri Feb  5 13:03:14 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* idx-vector.h, idx-vector.cc: Major overhaul to help with
-	zero-one style indexing.
-	* tree-const.cc (matrix_to_index_vector): Delete functions.
-	* (functions that use idx_vectors): Update for new idx-vector
-	stuff.
-
-	* arith-ops.cc: Don't declare matrix_to_fortran_indices.
-
-	* tree-const.cc (matrix_to_index_vector): Add new argument,
-	allow_neg_one, with default value of false.
-	* (matrix_to_fortran_indices): Add new argument, allow_zero, with
-	default value of false.
-
-	* g-builtins.cc (builtin_find): New function.
-	* builtins.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (find_nonzero_elem_idx (tree_constant)): Do
-	most of the real work.
-	* tree-extras.cc (find_nonzero_elem_idx (const Matrix&): Do the rest.
-	* (find_nonzero_elem_idx (const ComplexMatrix&): Ditto, for complex.
-
-Wed Feb  3 00:54:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in (DEFAULT_DOT_O_FROM_DOT_F): If using f2c, quote
-	with single quotes instead of double quotes to avoid problems on
-	systems (like the NeXT) that strip \'s from double quoted strings.
-
-	* utils.c (empty_list_elements_ok): New function.
-	* tree.cc (matrix_list::eval): Use it.
-	* builtins.cc (builtin_string_variables): New global variable
-	`empty_list_elements_ok' with initial value `warn'.
-
-	* utils.cc (check_str_pref): New function.
-	* (resize_on_range_error, prefer_column_vectors,
-	warn_comma_in_global_decl, do_fortran_indexing,
-	implicit_str_to_num_ok, treat_neg_dim_as_zero,
-	ok_to_lose_imaginary_part, return_last_computed_value,
-	silent_functions, print_answer_id_name): Use it instead of
-	needlessly duplicating code.
-
-Tue Feb  2 16:58:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l ("'"): If it looks like we're defining a matrix, don't set
-	the start condition to be MAYBE_QSTRING.  GAK.  There has to be a
-	better way...
-
-	* lex.l: Increment and decrement promptflag instead of just
-	setting its value.  This should help get prompting right for
-	things like if [1,2;3,4] NL ...
-	* input.cc (octave_gets): In order to issue a prompt, Require
-	propmtflag to be greater than zero, not just nonzero.
-
-	* tree.cc (tree_if_command): Allow matrices as the expression to
-	test.  Unlike Matlab, a complex value is false only if both the
-	real and imaginary parts are 0.
-	* tree.cc (tree_while_command): Ditto.
-
-	* tree.cc (tree_for_command): Allow matrices and complex values
-	in the expression.  For matrices, assign each column in turn to
-	the dummy variable.
-
-	* Matrix-ext.cc (qr): Make it work.  The LAPACK book gags me again!
-
-	* xdiv.cc: When computing right division with complex matrices,
-	use hermitian() instead of transpose().
-
-	* lex.l: Return IMAG_NUM for a numeric constant followed by
-	[iIjJ], but don't allow spaces between the numeric constant and
-	the letter (it causes problems inside `[]' where spaces matter...
-
-Mon Feb  1 17:15:19 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree_extras.cc (rand_internal): Make the random number generator
-	give us a different sequence every time we start octave unless we
-	specifically set the seed.
-
-Thu Jan 28 00:10:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.66 released.
-
-	* configure.in: Define PLOTLIB in addition to adding -DUNIXPLOT to
-	DEFS if we find -lplot, and call AC_SUBST for PLOTLIB.
-
-	* QP.cc: Define constructors here.
-	* QP.h: Not here.
-
-	* QP.cc (All constructors that are given H): Force H to be
-	symmetric.
-	* (make_h_symmetric): New function.
-
-Wed Jan 27 01:35:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* arith-ops.cc (do_unary_op): Do the right thing for complex
-	logical not operator.
-	* Matrix.cc (ComplexMatrix::operator ! (void)): Return Matrix
-	instead of ComplexMatrix.
-	* mx-inlines.cc (not (Complex *d, int len)): For each element of
-	d, return (d[i] == 0.0), not (d[i] != 0.0), and return it as a
-	pointer to double, not Complex.
-
-	* configure.in: Check for libcruft/qpsol/qpsol.f.
-	* Create Makefile in libcruft/qpsol.
-
-	* libcruft/qpsol: New directory.  Copy QPSOL sources here.
-	* libcruft/qpsol/Makefile.in: New file.
-	* libcruft/qpsol/README.MISSING: New file.
-	* libcuft/Makefile.in: Include qpsol in list of directories to
-	make.
-
-	* QPSOL.h, QPSOL.cc: New file for solving QPs with Gill and
-	Murray's QPSOL.
-
-	* QLD.h, QLD.cc: Delete all minimize functions except
-	Vector minimize (double&, int&).
-
-	* QP.h: Declare minimize functions virtual.
-	* (Vector minimize (double&, int&): Declare as a pure virtual
-	function.
-
-	* QP.cc: New file to implement generic minimize functions.
-
-Tue Jan 26 00:27:13 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l: Recognize numbers of the form .{digits}E{digits} and
-	.{digits}E[+-]{digits}
-
-	* lex.l: Recognize .\ as ELEFTDIV.
-	* parse.y: Handle ELEFTDIV.
-	* tree.cc (tree_binary_expression::eval): Handle el_leftdiv.
-
-	* arith-ops.cc (do_binary_op): Handle element by element left
-	division.  Fix some errors in element by element right division.
-
-	* tree-base.h (enum expression_type): Add el_leftdiv.
-
-	* Version 0.65 released.
-
-	* tree-const.cc (tree_constant_rep::eval (tree_constant *args, int
-	nargin, int nargout, int print)): Fix another brain-o in making
-	recursive call.s
-
-	* src/Makefile.in: Complete changes for CXX instead of C++ make
-	variables.
-
-	* tree-const.cc: For assignment and indexing functions, treat
-	complex scalars and matrices in the same branch of the switch as
-	real scalars and matrices -- the double_value() and matrix_value()
-	functions take care of checking to see if it's ok to lose the
-	imaginary part.
-
-	* tree-const.h (tree_constant_rep::is_numeric_type): New function.
-	* tree-const.h (tree_constant::make_numeric functions): Use it.
-
-	* tree-const.h (tree_constant::make_numeric functions): Return
-	*this for complex constants too.
-
-Mon Jan 25 18:31:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (Matrix min (Matrix&, Matrix&)): Loop over nc and
-	nr, not nr and nr.
-	* (Matrix max (Matrix&, Matrix&)): Ditto.
-
-	* tree-const.cc (tree_constant_rep::mapper): Fix brain-o in making
-	recursive call.
-
-Sun Jan 24 20:05:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: If using f2c, explicitly check for -lf2c.  If it's
-	not found, look for -lF77 and -lI77.  If a suitable combination
-	isn't found, print a warning.
-
-	* src/Makefile.in liboctave/Makefile.in: GNU Make 3.63 uses CXX
-	and CXXFLAGS instead of C++ and C++FLAGS.  Fix things so that 3.63
-	will work without sacrificing compatibility with earlier versions.
-
-	* tree-const.cc (tree_constant_rep::diag (tree_constant&)): Fix
-	brain-o in forcing argument to be numeric.
-
-Fri Jan 22 15:03:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (interrupt_handler): Declare to take int argument.
-
-	* NPSOL.cc (npsol_objfun): Delete leftover debugging message.
-
-Thu Jan 21 14:28:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Check version of gcc and issue a warning if it
-	looks like 1.something.
-	* Check for g++.  Issue a warning if it is missing or if it is
-	there but it looks like verion 1.something.
-
-	* flibs.sh, f2c-compat.sh: Change file permission to 755 to avoid
-	problems if the uid of the installer is different from the uid of
-	the owner of the files.
-
-Wed Jan 20 04:18:49 1993  John W. Eaton  (jwe@june.che.utexas.edu)
-
-	* libcruft/Makerules.in (@DOT_O_DOT_F_C[1234]@): Patterns deleted.
-	* configure.in: Do multiple line sed substitutions the right way.
-
-Tue Jan 19 14:50:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Use new AC_WITH to accept --with-f2c instead of
-	--use-f2c.
-	* Use new AC_HAVE_LIBRARY to find -lplot.
-
-	* flibs.sh: Actually avoid including duplicate -lflags.
-	* Use test, not `['.
-
-Sun Jan 17 16:57:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.h: Declare operator+ and operator- functions for vectors.
-	* RowVector.cc: Define half of them.
-	* ColVector.cc: Define the other half.
-
-Fri Jan 15 03:00:46 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Makefile.in (install): Include version number in name of
-	installed binary and make a link to $(bindir)/octave.
-
-	* Version 0.64 released.
-
-	* t-builtins.cc (builtin_clear): Don't allow the user to clear
-	global symbols by name.  If he tries, issue a warning.
-
-	* tree.cc (tree_identifier::eval_undefined_error):  Don't clear
-	undefined symbols from the global or local (function) symbol
-	tables.
-
-Thu Jan 14 02:10:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_function::eval): Save old and set current symbol
-	table context, so eval_undefined_error() doesn't wipe out top
-	level symbols.
-
-	* Version 0.63 released.
-
-Wed Jan 13 13:16:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Nearly every .h and .cc file: Add interface and implementation
-	#pragmas for G++ in hopes of making smaller objects with -g.
-
-	* tree-const: Properly handle assignments like A(:) = RHS when
-	do_fortran_indexing is true.
-
-	* g-builtins.cc (builtin_eig): Correct usage message.
-
-	* tree-const.cc (tree_constant_rep (ComplexDiagMatrix&)): Create
-	and initialize a new complex_scalar.  Don't just try to copy the
-	value...
-
-	* Matrix.h: Declare new fill functions for diagonal matrices.
-	* DiagMatrix.cc: Define them.
-
-	* Matrix.h: Declare map functions for row and column vectors.
-	* RowVector.cc: Define them.
-	* ColumnVector.cc: Likewise.
-
-	* CollocWt.h: Declare data protected instead of private.
-	* CollocWt.cc (CollocWt::CollocWt (const CollocWt&)): Fix brain-o.
-
-	* lex.l: Return IMAG_NUM for a numeric constant followed by
-	[ \t]*[iIjJ].
-
-	* parse.y (IMAG_NUM): New token.
-	* (fact): Recogize IMAG_NUM and convert its value to a complex
-	constant.
-
-	* Version 0.62 released.
-
-	* Makefile.in (local-dist): Include -local in tar.Z filename.
-	* (split-local-dist): New target.
-	* (dist): Don't depend on newversion.
-	* (local-dist): Ditto.
-
-	* tree-extras.cc (npsol): If the first argument isn't a vector,
-	print an error message and return.
-
-	* tree.cc (tree_matrix::eval): Always set prev_row_total and
-	prev_column_total when starting out.
-
-	* octave.cc (main): Don't try to detect signal handler failures,
-	but do call signal() to set up the interrupt handler.
-
-Tue Jan 12 19:59:33 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (npsol): Fix brain-o in checking length of bounds
-	vectors.
-
-Mon Jan 11 20:32:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (set_rand_seed): New function.
-	(force_to_fit_range): New function.
-	(current_seed): Really return current seed.
-	(rand_internal): Allow the user to actually set the seed for the
-	random number generator.
-
-Sun Jan 10 16:46:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.61 released.
-
-	* builtins.h, builtins.cc: Rename from builtin-fcns.h,
-	builtin-fcns.cc (too long for Linux/SysV).
-
-	* mappers.cc (xisinf): For non-IEEE machines, consider DBL_MAX to
-	be infinite.
-
-Fri Jan  8 09:15:57 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* gnuplot-build/Makefile.in (x11targets): Don't worry about
-	checking HAVE_X11_X_H.
-
-	* configure.in: Check for gamma and lgamma for gnuplot.
-
-	* gnuplot-build/Makefile.in (Makefile.X11): Only move Makefile to
-	../Makefile.X11 if xmkmf succeeds.
-
-	* gnuplot-build/Makefile.in (x11targets): Check to see that XMKMF
-	is set *and* that Makefile.X11 exists.
-	* If making notgnuplot_x11 with Makefile.X11 fails, try again with
-	Makefile.
-
-	* gnuplot-build/Makefile.in: Use @PLOTLIB@ in definintion of LIBS.
-	* Don't define UNIXPLOT in TERMFLAGS.
-	* Don't define LN_S; it isn't used anywhere, and configure doesn't
-	give it a value.
-
-	* configure.in: Check for closepl().  If found, define UNIXPLOT,
-	and substitute -lplot for @PLOTLIB@.
-
-	* arith-ops.cc (DIVIDE_BY_ZERO_ERROR): New macro.  On systems that
-	have IEEE math, give a warning but also go ahead and divide by
-	zero.  On systems that don't have IEEE math, just give an error
-	message and return an undefined tree_constant (it would probably
-	be possible to handle this so that it works the same everywhere,
-	but I'm not sure it's worth the effort...).
-
-	* builtin-fcns.cc (install_builtins): On systems that don't have
-	IEEE_MATH, define Inf to be MAX_DBL, but don't define NaN at all.
-
-	* configure.in: Check for finite, isnan, and isinf.
-	* Set HAVE_IEEE_MATH if we find finite and isnan.
-
-	* builtin-fcns.cc (install_builtins): Use HAVE_IEEE_MATH instead
-	of IEEE_MATH.
-	* mappers.cc: Check HAVE_IEEE_MATH and HAVE_ISINF macros rather
-	than checking system type.
-
-	* graph3d.c (hidden_line_plot): Declare dy and y as double, not
-	float, since VERYLARGE can be DBL_MAX.
-
-	* lsoda.f, lsodar.f, lsodes.f, lsodi.f, lsoibt.f, stoda.f,
-	stodi.f, zrotg.f, sdot.f: Remove unused files.
-
-	* texas_lotto.m: Renamed from win_texas_lotto.m to keep the
-	filename less than 14 characters.
-
-Thu Jan  7 15:45:29 1993  John W. Eaton  (jwe@june.che.utexas.edu)
-
-	* utils.cc: Declare ioctl extern "C".
-
-	* tree.cc: Include stdio.h to be sure FILE is defined (apparently
-	not required by older versions of GNU iostream library).
-	* t-builtins.cc: Likewise.
-	* g-builtins.cc: Likewise, but for tmpnam.
-
-	* tree-const.h (rand_internal): Rename from rand to avoid
-	conflict with standard library rand (a macro in Linux).
-	* tree-extras.cc (rand_internal): Fix function definition.
-	* g-builtins.cc (builtin_rand): Call rand_internal instead of rand.
-
-	* octave.cc (main): Don't try to detect signal handler failures.
-	What's the proper way to do this if RETSIGTYPE is void?
-
-Tue Jan  5 08:14:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_matrix::eval): When adding a matrix down or to the
-	right, column or row dimension mismatches are always errors.
-
-Mon Jan  4 04:58:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.60 released.
-
-	* xdiv.h, xdiv.cc: New files for Octave-specific matrix division
-	stuff.
-	* src/Makefile.in (INCLUDES, SOURCES, OBJECTS): Add xdiv stuff.
-
-	* arith-ops.cc: Include xdiv.h.
-
-Sun Jan  3 12:24:04 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
-
-	* gnuplot-build/Imakefile.in (notgnuplot_x11): In the compile
-	command, put source file before	libraries.
-
-	* libcruft/misc/Makefile.in: Don't use -O to compile gen-dimach.c.
-
-Thu Dec 31 00:45:50 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (matrix_sqrt): Don't create D until it is really
-	needed.
-	* (matrix_log): Ditto.
-	* (matrix_exp): Ditto.
-	[this should really be just one function instead of three...]
-
-	* g-builtins.cc (builtin_sqrtm): New function.
-	* builtin-fcns.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (matrix_sqrt): Do the real work.
-
-	* Makefile.in: Distribute INSTALL.OCTAVE and configure.in.
-	* (INSTALL.info): Make ../INSTALL.OCTAVE, not ../INSTALL.
-
-	* doc/Makefile.in: Make ../INSTALL.OCTAVE, not ../INSTALL.
-
-	* INSTALL.OCTAVE: Rename from INSTALL.
-	Refer to INSTALL for more info.
-
-	* INSTALL: Copy from autoconf distribution.
-	Refer to INSTALL.OCTAVE for more info.
-
-	* octave.cc (main): Remove leading blank line from startup message.
-	* Don't print it everytime the user types C-c...
-
-	* xpow.cc: Finish off remaining cases.
-
-	* tree-extras.cc (process_format): New function.
-	(do_printf): Use it.
-
-Wed Dec 30 00:43:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.56.
-
-	* g-builtins.cc (builtin_logm): New function.
-	* builtin-fcns.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (matrix_log): Do the real work.
-
-	* g-builtins.cc (builtin_expm): New function.
-	* builtin-fcns.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (matrix_exp): Do the real work.
-
-	* Matrix-ext.cc (LU): Construct LU decomp. here, not in Matrix class.
-	(ComplexLU): Likewise.
-	* Matrix.cc (lu): Deleted.  Use LU constructor instead.
-	Change all uses in octave sources.
-
-	* Matrix-ext.cc (EIG): Construct EIG object here, not in Matrix class.
-	* Matrix.cc (eig): Deleted.  Use EIG constructor instead.
-	Change all uses in octave sources.
-
-	* Matrix-ext.cc (SVD): Construct SVD here, not in Matrix class.
-	(ComplexSVD): Likewise.
-	* Matrix.cc (svd): Deleted.  Use SVD constructor instead.
-	Change all uses in octave sources.
-
-	* Makefile.in: Update for new Matrix file organization.
-	Don't compile mx-inlines separately -- it's included where needed.
-	* Matrix.h: Declare Fortran routines we call here, not in Matrix.cc.
-	Don't declare every class to be a friend of every other class.
-	* mx-inlines.cc: New file, included by all Matrix-related .cc files.
-	* Matrix.cc: Split into several files.
-	* ColVector.cc: New file, from Matrix.cc
-	* RowVector.cc: Ditto.
-	* DiagMatrix.cc: Ditto.
-	* Matrix-ext.cc: Ditto.
-
-	* tree-extras.cc (svd): Take advantage of new constructors and
-	diag functions.
-
-	* Matrix.cc (DiagMatrix::diag) New function.
-	(ComplexDiagMatrix::diag) Ditto.
-
-	* tree-extras.cc (eig): Take advantage of new constructors.
-
-	* tree-const.cc (tree_constant (DiagMatrix)): New constructor.
-	(tree_constant (ComplexDiagMatrix)): Ditto.
-
-	* Matrix.cc (Matrix (const DiagMatrix)): New constructor.
-	(ComplexMatrix (const DiagMatrix)): Ditto.
-	(ComplexMatrix (const ComplexDiagMatrix)): Ditto.
-
-Tue Dec 29 01:14:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (main): Print message at startup by default.
-	Don't print it until just before main loop.
-	* New -q option (inhibit_startup_message) turns it off.
-	* New -f option (read_init_files) inhibits reading of startup files.
-	* Delete -v option.
-	* (verbose_usage): Reflect changes in arguments, document -d.
-
-	* win_texas_lotto.m: Sort picks before returning.
-
-	* tree-extras.cc (eig): Return [v,d], not [l,v], where d is a
-	diagonal matrix made from l.
-
-	* builtin-fcns.cc (mapper_functions): Fix last element of
-	initialization list to have correct number of elements.
-
-	* Version 0.55.
-
-	* Quad.h: Move all inline functions to Quad.cc to avoid apparent
-	g++ bug on the RS/6000.
-
-	* configure.in: If we find flex, don't define LEXLIB.
-
-	* COPYING.LIB: Deleted -- we're not actually distributing anything
-	under these terms.
-	* Makefile.in: Don't distribute COPYING.LIB.
-
-Mon Dec 28 00:46:21 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* xpow.h, xpow.cc: New files for safer pow() interface for octave.
-	* src/Makefile.in (INCLUDES, SOURCES, OBJECTS): Add xpow stuff.
-
-	* arith-ops.cc: Include xpow.h.
-	* Don't declare toplevel jmp_buf.
-
-	* t-builtins.cc (builtin_save): Make file and stream static to
-	avoid dumping core on return (is this a bug in libg++ or g++?).
-	* (builtin_load): Ditto.
-
-	* symtab.cc (load): Make it work again.  Yikes!  This hasn't
-	worked since the big symbol table overhaul...
-
-	* tree-const.cc (tree_constant_rep::save): Handle complex scalars
-	and matrices.
-
-	* (symbol_def::undefine): Delete previous symbol definition before
-	defining.  This should be ok now, after the parse_m_file fix of
-	27 Dec.
-
-	* getting_help: New global flag.
-	* ([_a-zA-Z][_a-zA-Z0-9]*): Set it if looking at "help".
-	* (reset_parser): Clear it.
-	* lex.l (STRING): Use it to determine what to do with ' ; and , .
-
-	* lex.l (QSTRING): Handle the following (C-style) backslash escape
-	sequences correctly(?).
-
-	  \a  bell	   \r  carriage return
-	  \b  backspace    \t  horizontal tab
-	  \f  formfeed     \v  vertical tab
-	  \n  newline	   \\  backslash
-
-	* median.m: New M-file.
-
-	* g-builtins.cc (builtin_sort): New function.
-	* builtin-fcns.cc (general_fucntions): Add it to the list.
-	* tree-extras.cc (sort): Do most of the real work.
-	* tree-extras.cc (mx_sort): Do the rest.
-
-Sun Dec 27 17:40:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.cc (builtin_casesen): New function.
-	* builtin-fcns.cc (text_functions): Add it to the list.
-
-	* strcmp.m: Temporarily allow string to numeric conversions.
-	Maybe strcmp() should be built in to the interpreter?
-
-	* norm.m: New M-file.
-
-	* builtin-fcns.cc (install_builtins): Treat i and j as functions,
-	not variables.
-	* Install inf as an alias for Inf.
-	* Install nan as an alias for NaN.
-
-	* tree.cc (tree_identifier::parse_m_file (char*)): Force new
-	global symbol to be a function, not a variable.
-
-Tue Dec 22 14:15:57 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_function::eval): Check with silent_functions()
-	and return_last_value_computed() to determine proper behavoir.
-
-	* builtin-fcns.cc (silent_functions): New builtin variable.
-	* (return_last_value_computed) Ditto.
-
-	* utils.cc (silent_functions): New function.
-	* (return_last_value_computed) Ditto.
-	[This scheme for determining preferences needs to be reworked...]
-
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only force yytext[len] to be the
-	end of the identifier if we gobbled some whitespace.
-	* Always unput the last character read.
-
-	* tree.cc (tree_function::eval) Always turn on printing for
-	commands inside functions.
-
-Sat Dec 19 14:03:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.54.
-
-Fri Dec 18 16:02:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* (symbol_def::undefine): Undo previous change.  Someone is
-	calling this function when they shouldn't be...
-
-	* tree.cc (parse_m_file): If the script file is successfully
-	parsed, Ensure that the new symbol is defined in the global
-	symbol table.
-
-	* lex.l: Handle continuation lines with the pattern
-	{EL}{S}*\n { promptflag = 0; }  // Line continuation.
-
-Thu Dec 17 01:47:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (symbol_def::define): Delete previous symbol
-	definition before defining.
-	(symbol_def::undefine): Ditto, but new definition is always NULL.
-
-	* readline/Makefile.in:  Don't compile emacs_keymap.c and
-	vi_keymap.c since they are included by keymaps.c.
-
-	* configure.in: If RETSIGTYPE isn't int, then define
-	VOID_SIGHANDLER="-DVOID_SIGHANDLER=1".
-	Substitute VOID_SIGHANDLER.
-
-	* readline/Makefile.in (CFLAGS): Add -DVOID_SIGHANDLER if
-	appropriate.
-
-	* tilde.c: Declare xmalloc, not malloc.
-
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only call unput if we've
-	actually read something.
-
-	* Version 0.53.
-
-Wed Dec 16 01:35:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Look in the global symbol table
-	for names, but ignore functions.
-
-	* tree.cc (tree_identifier::eval): Use symbol_out_of_date() to
-	simplify logic for re-parsing M-files.
-	Always look in global symbol table for functions in case the
-	definition has changed (shouldn't the local symbols be undefined
-	anyway??).
-
-	* tree.cc (symbol_out_of_date): New function.
-
-	* symtab.cc (symbol_table::undefine): Actually do something.
-	* (symbol_table::remove_name): Ditto.
-	* (symbol_table::clear): And so on.
-
-	* Matrix.cc (ComplexMatrix::svd): Use complex conjugate transpose,
-	not simple transpose, for V.
-
-	* Version  0.52.
-
-	* gnuplot-build/Imakefile (notgnuplot_x11): In the compile
-	command, put source file before	libraries.
-
-	* parse.y (assignment): If trying to warn against assignment to a
-	function, check is_function() instead of !is_variable().
-
-	* src/Makefile.in: Distribute input.h.
-
-Tue Dec 15 10:48:22 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (main): Call initialize_readline to set up completion
-	functions.
-
-	* input.cc (make_name_list, command_generator, command_completer,
-	initialize_readline): New functions.
-
-	* input.h: New file.
-	* lex.l: Include it instead of input.cc.
-	* src/Makefile.in: Create input.o rather than including it
-	directly in lex.l.
-
-	* builtin-fcns.cc: do_fortran_indexing is now initially false.
-	prefer_column_vectors is now initially true.
-
-	* builtin-fcns.cc (install_builtins): Install i and j
-	 (== sqrt(-1)) as permanent global variables.
-
-	* g-builtins.cc (MAXPATHLEN) Provide default definition here.
-	* t-builtins.cc: Not here.
-
-	* g-builtins.cc (quitting_gracefully, interactive,
-	clean_up_and_exit, verbatim_pwd, getwd) Declare here.
-	* t-builtins.cc: Not here.
-
-	* g-builtins.cc: Also include readline.h and history.h.
-
-	* g-builtins.cc: Include version.h and sys/param.h here.
-	* t-builtins.cc: Not here.
-
-	* g-builtins.cc: Move builtin_clc, builtin_clock, builtin_date,
-	builtin_pause, builtin_quit, builtin_warranty here from
-	t-builtins.cc.
-
-	* builtin-fcns.cc (general_functions): Move builtin_clc,
-	builtin_clock, builtin_date, builtin_pause, builtin_quit,
-	builtin_warranty here from text_functions to limit the number of
-	reserved words.
-
-	* scripts/*.m: Check for correct number of input arguments before
-	proceeding.
-
-	* configure.in (DEFAULT_PAGER): Look for less, more, page, and pg.
-
-	* t-buitlins.cc (builtin_help): If no arguments are given, list
-	all the known operators, keywords, functions, and variables.
-
-	* t-builtins.cc (builtin_help) Pass the output through PAGER using
-	a libg++ procbuf.
-	(builtin_who): Ditto.
-
-	* utils.cc (get_pager): New function.
-
-	* help.h, help.cc: New files to manage lists of help info for
-	keywords and operators.
-
-	* symtab.cc (symbol_record): Implement the Matlab-style semantics
-	of functions using two symbol_def objects.
-	* (symbol_table): Store identifier names in a hash table instead
-	of a linear list.
-	* symtab.cc (symbol_def): New class.
-
-Sat Dec 12 00:00:00 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y (yyerror): Change error text to be more accurate.
-
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only look in the current symbol
-	table for names.  Function names and other global symbols are now
-	resolved at execution time.
-
-	* symtab.cc (sorted_var_list): New function.
-	* (sorted_fcn_list): Ditto.
-	* (var_list): Ditto.
-	* (fcn_list): Ditto.
-	These should probably not all be separate functions...
-
-	* t-functions.cc (builtin_who): Call sorted_var_list for each
-	symbol table to print variable names only.
-	* Accept -fcn, -fcns, or -functions to also list function names.
-	* Make -all list function names, but under a separate heading from
-	other symbols.
-
-	* builtin-fcns.cc (is_text_function_name): New function.
-	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Use is_text_function_name to
-	find if a name is a text function name instead of relying on the
-	symbol tables.
-
-	* lex.l (is_keyword): New function.
-	([_a-zA-Z][_a-zA-Z0-9]*): Use is_keyword instead of having a
-	special lex pattern for each keyword.
-
-Thu Dec 10 12:25:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.cc: Declare top_level_sym_tab extern.
-
-	* Version 0.51.
-
-Wed Dec  9 02:00:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (all user_functions): If the return value from a
-	user's function is bogus, print an error message and abort to the
-	top level.
-
-	* tree-const.cc (all do_matrix_index functions): Major overhaul to
-	simplify and apply range checking before doing the indexing.
-
-	* tree-const.cc (fortran_row, fortran_column, valid_scalar_indices,
-	matrix_to_fortran_indices): Move here from arith-ops.cc and
-	declare as `static inline'.  Delete declarations from arith-ops.h.
-
-	* arith-ops.cc (gripe_nonconformant_assignment): Delete function.
-
-	* tree-const.h (TREE_TO_MAT_IDX): Delete macro.
-	* tree-const.cc (tree_to_mat_idx): Make it an inline function.
-
-	* tree-const.cc (all do_matrix_assignment functions): Major
-	overhaul to simplify resizing and range checking.
-
-	* tree-const.cc (): Move here from arith-ops.cc.
-	Jump to top level on errors.
-	Return max value.
-	(indexed_assign_conforms) New function.
-	(index_check (int)): New function.
-	(index_check (Range)): New function.
-
-Tue Dec  8 21:07:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-const.cc (tree_constant_rep::tree_constant_rep (Range):
-	Don't create range constants that have less than 2 elements.
-
-	* utils.cc (jump_to_top_level): New function.
-	* All: Replace calls to longjmp with calls to jump_to_top_level().
-	Don't include <setjmp.h>, except in octave.cc, and utils.cc.
-
-Mon Dec  7 01:57:30 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in: Create Imakefile in gnuplot-build directory.
-	Look for xmkmf, then X11/X.h.
-	* gnuplot-build/Makefile.in: Try harder to get notgnuplot_x11 to
-	build correctly.
-	* gnuplot-build/Imakefile.in: New file, for building
-	notgnuplot_x11 if xmkmf is available.
-
-	* Version 0.50.
-
-	* gnuplot-build/Makefile.in (SUBDIRS): Add docs.
-
-	* tree-const.h (make_numeric_or_range_or_magic): New function.
-	* tree-const.cc (do_matrix_index): Use it instead of make_numeric
-	so that we actually take advantage of all the special cases we
-	have for range types as matrix indices.
-
-	* tree-const.cc (tree_constant_rep::do_matrix_index (int, Matrix)):
-	Fix typo.
-
-	* DAE.cc (integrate): If returning a matrix of values, don't mix
-	time with the states.
-	* ODE.cc (integrate): Likewise.
-
-Sun Dec  6 16:58:41 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (dassl): New function.
-	* g-builtins.cc (builtin_dassl): Make it work.
-	* doc/octave.1: Document it.
-
-	* DAEFunc.h, DAEFunc.cc, DAE.h, DAE.cc: New files.
-
-	* tree-extras.cc (lsode): Clean up.  Use available functions
-	instead of doing everything in line.
-
-	* tree.cc (tree_multi_assignment_expression::eval): Don't define
-	constants that are of unknown type.
-	Try to be smarter about padding after last value.
-
-	* tree-extras.cc (lu): Don't bother trying to return the LU
-	factorization in a single matrix since this isn't really useful
-	and isn't compatible with Matlab anyway (they use Linpack, we use
-	Lapack).
-
-	* tree.cc (tree_identifier::assign (rhs, args, nargs)): Only try
-	to do assignment if rhs is defined.
-
-Sat Dec  5 18:23:55 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (qr): New function.
-	* g-builtins.cc (builtin_qr): New function.
-	* builtins.cc: Add builtin_qr to list of builtin functions.
-	* doc/octave.1: Document it.
-
-	* Matrix.cc (Matrix::lu): Use dgesv from Lapack instead of dgefa
-	since it returns L and U, not some factors that need decoding.
-	(ComplexMatrix:lu): Likewise.
-
-Fri Dec  4 01:51:05 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* configure.in (INCDIRS): Don't include /usr/local/include.
-	(LIBDIRS): Don't include /usr/local/lib.
-
-	* tree-extras.cc (lu): New function.
-	* g-builtins.cc (builtin_lu): New function.
-	* builtins.cc: Add builtin_lu to list of builtin functions.
-	* doc/octave.1: Document it.
-
-	* Matrix.cc (Matrix:lu, ComplexMatrix:lu): New functions.
-	* Matrix.h, Matrix.cc (LU, ComplexLU): New classes.
-
-	* tree-extras.cc (do_quad): New function.
-	* g-builtins.cc (builtin_quad): New function.
-	* builtins.cc: Add builtin_quad to list of builtin functions.
-	* doc/octave.1: Document it.
-
-	* doc/Makefile.in (install): Edit the manpage to substitute
-	correct values in the FILES section.
-	(dist) Depend on octave.info.
-	(local-dist): Ditto.
-
-	* Quad.h, Quad.cc: New files to implement quadrature.
-
-	* NPSOL.cc (npsol_objfun): If compiling with GCC on a Sun, assign
-	to objf via assign_double().
-
-	* sun-utils.h, sun-utils.cc: New files.
-	* sun-utils.cc: Move declaration and definition of MAIN_ here from
-	utils.cc.
-	(access_double): New function, from GCC manual.
-	(assign_double): New function, after access_double.
-
-Thu Dec  3 03:16:03 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* NEWS: New file.
-	* Makefile.in: Distribute it.
-
-	* scripts/*.m: Change to use new end feature.
-
-	* lex.l: Recognize `endif', `endfor', `endfunction', `endif', and
-	`endwhile', in addtion to `end'.
-	* parse.y: Check for command/end mismatches.
-	(end_error): New function.
-	* doc/octave.1: Document it.
-
-Wed Dec  2 11:57:18 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* libcruft/villad: New directory.  Move and split villad.f here
-	from libcruft/misc.
-	* configure.in: Create Makefile in libcruft/villad.
-	* libcruft/Makefile.in: Add libcruft/villad to list of dirs to make.
-
-	* All Makefile.in (uninstall): New target.
-	(distclean): Likewise.
-	(check): Ditto.
-	* Try to make clean targets conform with GNU coding standards.
-
-	* utils.cc (smells_like_X11): New function.
-	* builtin-fcns.cc (install_builtins): Don't set graphics terminal
-	to x11 unless it looks like we're running X11.
-
-	* win_texas_lotto.m: New M-file.
-	* octave.1: Document it.
-
-	* arith-ops.h: New file.
-	* src/Makefile.in: Build arith-ops.o, distribute arith-ops.cc,
-	arith-ops.h.  Maybe this will at least speed up recompiles.
-
-	* THANKS: New file
-	* Makefile.in: Distribute it.
-
-	* configure.in: Create Makefile in gnuplot-build/docs.
-	* gnuplot-build/docs/Makefile.in: New file.
-	* Create and install notgnuplot.gih.
-
-Tue Dec  1 00:15:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_identifier::eval (int)): Only pad after if printing.
-	(tree_multi_assignment_expression::eval (int)): Ditto.
-	(tree_assignment_expression::eval (int)): Ditto.
-
-	* hankel.m: Use disp to print message.
-	* toeplitz.m: Ditto.
-
-	* lex.l (<MATRIX>{SN}*\]/{S}*=): Check maybe_screwed_again to
-	decide whether to return SCREW_TWO or ']'.
-
-	* doc/Makefile.in (install): Really install the manpage.
-
-	* Version 0.49.
-
-	* Matrix.cc (ComplexMatrix::operator !): New function.
-	* arith-ops.cc (do_unar_op): Use it.
-
-	* tree-extras.cc (inverse, svd, eig): Don't try to operate on
-	empty matrices.
-
-	* Matrix.h, Matrix.cc: (EIG): New class.
-	(Matrix::eig): New functions.
-	(ComplexMatrix::eig): Ditto.
-	* tree-extras (eig): Use them.
-	* g-builtins.cc (builtin_eig): New function.
-	* builtin-fcns.cc (general_functions): Add eig to list.
-	* dococtave.1: Document it.
-
-	* Matrix.h, Matrix.cc: (ComplexDET): New class.
-	* tree-extras (determinant): Use it.
-
-Mon Nov 30 04:02:29 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.h, Matrix.cc (ComplexSVD): New class.
-	* tree-extras (svd): Use it.
-
-	* Matrix.cc (svd): Use lapack instead of linpack to compute SVD.
-
-	* libcruft/Makefile.in: Replace eispack with lapack in
-	subdirectory list.
-	* libcruft/eispack: Delete directory.
-	* libcruft/lapack/Makefile.in: New file.
-	* configure.in: Create Makefile in libcruft/lapack, not
-	libcruft/eispack.
-
-	* libcruft/lapack: New directory.
-	* Copy files for SVD and Eigenvalue computation here.
-
-	* lex.l (<MATRIX>{SN}*\]/{S}*=): Only return SCREW_TWO if not
-	defining a function.
-
-	* arith-ops.cc (do_binary_op (double, double)): For pow operator,
-	don't create complex value if exponent is really an int.
-
-	* configure.in: Check for f77 last.
-	* Print warnings if bison or lex is not found.
-	* Reformat fatal no f2c/f77 error message.
-
-	* flib.sh: Make it work even if xlf is called f77.
-
-Sun Nov 29 01:55:41 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc: Include f77-uscore.h.
-	* Use F77_FCN macro when declaring or calling Fortran functions.
-
-	* configure.in: After checking to see that it's not garbage, add
-	the output of f2c-compat.sh to DEFS.
-
-	* f2c-compat.sh: Figure out whether or not we need to append an
-	underscore to Fortran function names.
-
-	* flibs.sh: Handle xlf -v output as special case.
-
-	* octave.cc: Only define BADSIG if it isn't already defined.
-	* g-builtins.cc: Ditto.
-
-	* configure.in: Don't create man/Makefile.
-	* man: Directory deleted.
-	* doc/Makefile.in: Distribute and install octave.1.
-	* doc/octave.1: Renamed from man/octave.1.
-
-Sat Nov 28 15:54:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* man/Makefile.in (install): Install manpage.
-	* octave.1: rename from octave.man
-	* octave.1: Document builtin variables and command line editing
-	(stolen from bash man page).
-
-	* tree-const.cc (eval (int print)): Convert complex values to real
-	if imaginary part is zero.
-
-	* octave.cc (log_usage): Deleted.
-	(main): Don't call log_usage.
-
-	* g-builtins.cc (builtin_sqrt): Delete.
-	(builtin_log): Ditto.
-	(builtin_log10): Ditto.
-
-	* tree-const.h, tree-const.cc (sqrt_internal): Delete.
-	(log_internal): Ditto.
-	(log10_internal): Ditto.
-
-	* tree-const.cc (mapper): Handle neg_arg_complex.
-
-	* builtin-fcns.h (Mapper_fcn): New field neg_arg_complex.
-	* builtin-fcns.cc: (mapper_functions[]): Initialize it for list of
-	mapper functions.
-	* builtin-fcns.cc: (mapper_functions[]): Move log, log10, and sqrt
-	back here from general_functions[].
-
-Fri Nov 27 17:05:21 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (tree_constant_to_vector): Handle complex scalars
-	and matrices.
-
-Wed Nov 25 17:32:42 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* man/octave.man: New file, very incomplete.
-	* man/Makefile.in: Include octave.man in list of files to
-	distribute.
-
-	* g-buitlins.cc (builtin_rand): Handle nargin == 1.
-	* tree-extras.cc (rand): Likewise.
-
-	* rem.m: New M-file.  Implemented as M-file because it's much
-	simpler!
-
-	* configure.in (DEFAULT_DOT_C_FROM_DOT_F): Escape % characters in
-	rule to avoid problems with autoconf, which uses % for sed command
-	delimeters.
-	(DEFAULT_DOT_O_FROM_DOT_F): Ditto.
-
-Tue Nov 24 00:21:34 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (fill_matrix): Don't try to create matrices with
-	negative dimensions.
-	(frobit): Likewise.
-
-	* utils.cc (check_dimensions): New function.
-
-	* utils.cc (treat_neg_dim_as_zero): New function.
-	* builtin-fcns.cc (treat_neg_dim_as_zero): New builtin variable,
-	default value is false.
-
-	* tree-const.h (tree_constant::bump_value): Like, assign, check
-	reference count and possibly make a new copy before changing
-	anything.
-
-	* tree-base.h (is_builtin): New virtual function.
-	* tree.cc (tree_builtin::is_builtin): New function.
-
-	* parse.y (ans_expression): Also check to see if the lone
-	expression is a builtin text-style function invoked without any
-	arguments.
-
-	* octave.cc, t-builtins.cc: Print copyright and other normal
-	(non-error) message on cout instead of cerr.
-
-	* t-builtins.cc (builtin_warranty): Don't return message in
-	retval.
-	(builtin_history): Likewise.
-	(builtin_help): Also.
-	(builtin_who): Ditto.
-
-	* Version 0.48.
-
-	* tree-extras.cc: Fix most functions to handle complex arguments.
-	Still need to finish SVD and DET (waiting for these functions in
-	the Matrix class).
-
-	* tree.cc (tree_multi_assignment::eval): Optionally print names
-	for result variables.
-
-	* tree-const.h (tree_constant::eval (int print, int nargout)):
-	New function.  Simply ignore nargout.
-	* tree.cc (tree_matrix::eval (int print, int nargout)): Ditto.
-
-	* tree.cc (tree_parameter_list::name): New function.
-
-	* lex.l (<NEWMAT>): Delete rules, start condition because they are
-	unecessary.
-
-	* lex.l (<MATRIX>{SN}*\]): Split into three rules.  Use trailing
-	context instead of home-brew lookahead.
-
-Mon Nov 23 00:51:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* utils.cc (ok_to_lose_imaginary_part): New function.
-	* builtin-fcns.cc (ok_to_lose_imaginary_part): New builtin
-	variable, default value is warn.
-
-	* tree-const.h (double_value): Maybe return real part if invoked
-	for complex tree_constant.
-	* tree-const.h (matrix_value): Ditto.
-
-	* Version 0.47.  This one wasn't tested, but there have been a lot
-	of significant changes and I wanted a backup.
-
-	* tree-const.cc (sqrt_internal): New function.  Sqrt isn't
-	implemented as a mapper function since negative real arguments
-	give complex results.
-	(log_internal): Ditto.
-	(log10_internal): Ditto.
-	* builtin-fcns.cc: Move sqrt, log, and log10 from mapper struct
-	initializer to general function struct initializer.
-
-	* rot90.m: New M-file.  Still needs rem() to be complete.
-
-	* tree-const.cc (mapper): Handle mapper functions for complex
-	variables.
-
-	* mappers.h, mappers.cc: New file for mapper functions.
-
-	* builtin-fcns.h, builtin-fcns.cc: Rename from builtins.h
-	builtins.cc.
-
-	* flipud.m: Don't do indexing on lhs.
-	* fliplr.m: Likewise.
-
-Sun Nov 22 17:09:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* arith-ops.cc (do_binary_op (double, double)): Handle a^b for
-	a < 0.
-
-	* builtins.cc: Make sqrt a general builtin function instead of a
-	mapper function.
-	* g-builtins.cc (builtin_sqrt): New function.
-	* tree-const.cc (sqrt_internal): New function.
-
-Sat Nov 21 16:41:02 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-const.h, tree-const.cc:  Complete most changes required to
-	handle complex types.  There are lots of details, most will be
-	omitted here.
-
-	* tree-const.h (is_real_type) New function.
-	(is_complex_type): Ditto.
-	(is_scalar_type): Ditto.
-	(is_matrix_type): Ditto.
-
-	* tree-const.h (REP_RHS_MATRIX, REP_ELEM_ASSIGN, CRMATRIX,
-	ASSIGN_CRMATRIX_TO, CRMATRIX_ASSIGN_REP_ELEM,
-	CRMATRIX_ASSIGN_ELEM): New macro for dealing with real and complex
-	matrices in the same tree_constant_rep function.
-
-	* tree-const.cc: Include arith-ops.cc.
-
-	* arith-op.cc: New file for functions that implement unary and
-	binary operations for the tree_constat classes.
-	* Mark all operations that aren't implemented yet with a
-	FIXME comment.  There are about 35-40 things left to fix
-	in this file.
-
-Thu Nov 19 00:25:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.46.
-	[ This one wasn't tested, but there have been a lot of significant
-	changes and I wanted a backup. ]
-
-	* tree-const.cc (tree_constant_rep::do_unary_op): Handle Complex.
-	(do_unary_op (Complex&, tree::expression_type)): New function.
-	(do_unary_op (ComplexMatrix&, tree_expression_type): Ditto.
-
-	* tree-const.cc (tree_constant_rep::assign): Handle Complex
-	(still needs updated support functions in order to work).
-
-	* tree.cc (tree_matrix::eval): Handle Complex.
-	(tree_identifier::eval): Ditto.
-	(tree_for_command::eval): Ditto.
-
-Wed Nov 18 23:33:13 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree_const.cc (tree_constant_rep::rows): Handle Complex.
-	(tree_constant_rep::columns): Ditto.
-	(tree_constant_rep::all): Ditto.
-	(tree_constant_rep::any): Ditto.
-	(tree_constant_rep::cumprod): Ditto.
-	(tree_constant_rep::cumsum): Ditto.
-	(tree_constant_rep::prod): Ditto.
-	(tree_constant_rep::sum): Ditto.
-	(tree_constant_rep::sumsq): Ditto.
-
-	* tree_const.h, tree_const.cc (tree_constant::complex_value): New
-	function.
-	(tree_constant_rep::complex_value): Ditto
-	(tree_constant::complex_matrix_value): New
-	(tree_constant_rep::complex_matrix_value): New
-
-	* tree_const.cc (tree_constant_rep::~tree_constant_rep): Handle
-	complex scalars and matrices.
-	(tree_constant_rep::force_numeric): Ditto.
-	(tree_constant_rep::make_numeric): Ditto.
-	(tree_constant_rep::eval): Ditto.
-	(tree_constant_rep::bump_value): Ditto.  C++, for C == a
-	complex value is C = C + 1.  Should I even do this?  Hmmm.
-
-	* tree-const.h, tree-const.cc: Begin adding support for Compelex.
-	* Add complex_scalar and complex_matrix to value union.
-	* Add complex_scalar_constant and complex_matrix_constant to type
-	tag enum.
-	* New constructors.
-
-	* Matrix.h, Matrix.cc: Major changes to add Complex support.
-
-Tue Nov 17 14:40:45 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Matrix.cc (RowVector::operator (const Matrix&)): New function.
-
-	* Matrix.cc (ColumnVector::transpose): New function.
-	Eliminate friend function that served the same purpose.
-	(RowVector::transpose): Ditto.
-
-Mon Nov 16 09:57:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (QSTRING): Fix to allow '' inside a string to represent a
-	single quote.  Makes computer.m a little funnier.
-
-Fri Nov 13 18:46:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.45.
-
-	* computer.m: New M-file.
-	* tril.m: Ditto.
-	* triu.m: Ditto.
-
-	* doc (*.texi): Can now produce BUGS, INSTALL, and octave.info
-	files without generating errors, though the organization is
-	probably till very wrong.
-
-	* Makefile.in (newversion): Add magic to handle major versions
-	other than 0, and major/minor versions of any length.
-
-Thu Nov 12 01:37:45 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.h, tree-const.h, builtins.cc, g-builtins.cc,
-	tree-extras.cc: Conditionally compile code for NPSOL and FSQP
-	based on FSQP_MISSING and NPSOL_MISSING.
-	* g-builtins.cc (builtin_npsol): If NPSOL is missing, always call
-	npsol_usage() to print out message indicating why NPSOL doesn't
-	work.
-	* g-builtins.cc (builtin_fsqp): Likewise for FSQP.
-
-	* configure.in: Check for srcdir/libcruft/npsol/npsol.f and
-	srcdir/libcruft/fsqp/fsqp.f.  If missing, define NPSOL_MISSING or
-	FSQP_MISSING and add them to DEFS.
-
-	* libcruft/npsol/README.MISSING: New file.
-	* libcruft/fsqp/README.MISSING: Ditto.
-
-	* libcruft/npsol/Makefile.in (dist): Don't distribute sources
-	because of license restriction.  Do distribute Makefile.in and
-	README.MISSING.
-	* libcruft/fsqp/Makefile.in (dist): Ditto.
-
-	* All Makefile.in files (local-dist): New target, usually the same
-	as dist.
-
-	* parse.y (ans_expression): Check to see that the RHS isn't just
-	an identifier.
-	* tree.cc (tree_identifier::eval (int)): Maybe print id name.
-	* tree.cc (tree_assignment::eval (int)): Ditto.
-	* buitlins.cc (print_answer_id_name): New builtin variable.
-	* utils.cc (print_answer_id_name): New function.
-
-Tue Nov 10 10:58:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (log_usage): Surround with #if 0/#endif.
-
-Mon Nov  9 13:42:54 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* symtab.cc (load): Only issue error mesasge if attempt to find
-	_first_ name keyword fails.
-
-	* tree-const.cc (make_numeric_or_magic): New function.  Like
-	make_numeric except also pass magic_colons.
-	* tree-const.cc (all do_matrix_index functions): Matrix ndices can
-	be naked colons, so use make_numeric_or_magic on index arguments
-	instead of make_numeric.
-
-	* liboctave/Makefie.in (install): Install .h files in $(includedir).
-	(includedir): New macro, default value $(prefix)/include.
-
-	* tree.cc (tree_function::eval (int print)): Force arguments to be
-	undefined.
-
-	* tree-const.h (tree_constant::assign (rhs, args, nargs)): Check
-	reference count before assigning.
-	* tree.cc (tree_identifier::assign (rhs, args, nargs)): Don't eval
-	lhs before doing assignment.
-
-	* tree.cc (parse_m_file): Gobble leading white space, including
-	comments.
-
-Fri Nov  6 16:52:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.44.
-
-	* g-builtins.cc (builtin_getenv): New function.
-
-	* isempty.m: New M-file.
-
-	* g-builtins.cc (builtin_exist): New function.
-	* utils.cc (identifier_exists): Handle the dirty details.
-
-	* utils.cc (warn_comma_in_global_decl): New function.
-	* builtins.cc (warn_comma_in_global_decl): New builtin variable.
-	Initial value is true.
-	* parse.y (global_decl): Handle global declarations here,
-	including optional initialization.
-	* t-builtins.cc (builtin_global): Deleted.
-
-Thu Nov  5 23:59:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_feval): New function.
-	* tree-extras.cc (feval): Handle the dirty details.
-
-	* g-builtins.cc (builtin_rand): New function.
-	* tree-extras.cc (rand): Handle the dirty details.
-
-Wed Nov  4 14:54:17 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* num2str.m: New M-file.
-	* int2str.m: Ditto.
-
-	* g-builtins.cc (builtin_disp): New function.
-
-	* g-builtins.cc (builtin_fprintf, builtin_printf,
-	builtin_sprintf):  New functions.
-	* tree-extras.cc (do_printf): New function to handle the gory
-	details.
-
-	* g-builtins.cc (builtin_flops): Implement here because we may
-	actually want to count operations at some point.
-
-Tue Nov  3 17:06:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-const.cc (do_binary_op): Detect and give error message for
-	optations on empty matrices.
-	(do_unary_op): Likewise.
-
-	* parse.y (matrix): Convert `[]' and `[;]' to empty matrices
-	instead of (tree_matrix *) NULL.
-
-Mon Nov  2 11:23:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* src/Makefile.in: Update dependencies.
-	* liboctave/Makefile.in: Ditto.
-
-	* tree-const.cc (force_numeric): Consult matlab_strings()
-	before doing string to number conversion.
-	* builtins.cc (matlab_strings): New builtin variable.
-	* utils.cc (matlab_strings): New function.
-
-	* tree-extras.cc (linear_constraints_ok): New function.
-	(linear_constraints_ok): Ditto.
-	(npsol): Use them to avoid creating inconsistent sets of
-	constraints and crashing.  It would really be nice to have
-	exception handling.
-
-	* symtab.cc (load): Issue error mesasges if attempt to find
-	name keyword fails.
-
-	* Version 0.43.
-
-	* tree-extras.cc (npsol): Use new minimize (phi, inform).
-	Handle nargout == 3.
-
-	* g-builtins.cc (builtin_npsol): Allow nargout == 3.
-
-	* NPSOL.cc (set_default_options): New function.
-	(all constructors): Use it.
-	(operator =): Use it and print warning message (setting default
-	options doesn't represent a true copy and it would be somewhat
-	difficult to fix this...).
-
-	* npchkd.f (npchkd): Only write message if msglvl > 0.
-
-Sun Nov  1 00:58:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* gnuplot-build/Makefile.in (LIBDIRS): Set correctly.
-	(notgnuplot): Use it.
-
-	* libcruft/misc/gen-d1mach.c: Generate d1mach.f at build time
-	instead of depending on the installer to get it right.
-	* libcruft/Makefile.in (gen-d1mach): New target.
-
-	* libcruft/Makerules.in (SPECIAL): New macro.
-	(DISTFILES): Include it.
-
-	* libcruft/Makerules.in (SPECIAL_DEPEND): Ditto.
-	(../../libcruft.a): Use it.
-
-Mon Oct 26 02:25:11 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (is_valid_function): Try harder to find M-files
-	that may not have been parsed yet.
-
-	* symtab.cc (define (symbol_record*)): New function.  Make it
-	simple to copy all fields of a symbol_record if we already have
-	one.
-	* utils.cc (force_global): Use it.
-
-	* utils.cc (valid_identifier): Allow underscores in names.
-
-	* tree-extras.cc (npsol): Force column vector to be returned.
-	(fsolve): Ditto.
-
-	* Version 0.42.
-
-	* tree-extras.cc (fsolve): New function for solving nonlinear
-	algebraic equations.  This needs much more work if it is to
-	provide all the functionality of Matlab's fsolve.
-
-	* tree-extras.cc (fsolve_user_function): New function.
-
-	* libcruft/minpack: Import needed functions.
-
-	* tree-extras.cc: (npsol (tree_constant*, int, int): Completely
-	rewrite to handle all of the follwing:
-
-	  1. npsol (x, phi)
-	  2. npsol (x, phi, lb, ub)
-	  3. npsol (x, phi, lb, ub, llb, c, lub)
-	  4. npsol (x, phi, lb, ub, llb, c, lub, nllb, g, nlub)
-	  5. npsol (x, phi, lb, ub,              nllb, g, nlub)
-	  6. npsol (x, phi,         llb, c, lub, nllb, g, nlub)
-	  7. npsol (x, phi,         llb, c, lub)
-	  8. npsol (x, phi,                      nllb, g, nlub)
-
-	* tree-extras.cc (npsol_constraint_function): New function.
-
-	* tree-extras.cc (tree_constant_to_vector): New function.
-	(tree_constant_to_matrix): Ditto.
-	(takes_correct_nargs): Ditto.
-
-Fri Oct 23 10:19:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (is_valid_function): New function.
-	(npsol): Use it.
-
-	* utils.cc (s_plural): New function.
-	(es_plural): Ditto.
-
-	* tree-extras.cc (npsol): Improve checks for valid objective
-	function.
-
-	* tree.cc (tree_function::max_expected_args): New function.
-
-Thu Oct 22 18:42:07 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_lsode): Quick check of arguments, then
-	call lsode (tree_constant *, int, int).
-	* Move rest of code for implementing builtin_lsode to
-	tree-extras.cc.
-
-	* g-builtins.cc (builtin_npsol: Quick check of arguments, then
-	call npsol (tree_constant *, int, int).
-	* Move rest of code for implementing builtin_npsol to
-	tree-extras.cc.
-
-	* tree-const.cc: Simplify functions that require numeric arguments
-	by always calling make_numeric for them instead of doing it
-	conditionally.
-	* tree.cc: Ditto.
-	* tree-extras.cc: Ditto.
-
-	* tree-const.h (tree_constant::make_numeric): Return *this if
-	already a numeric type.
-
-	* NLP.cc: In constructors, don't try to assign NULL to bounds
-	objects.
-
-	* tree-const.cc (tree_constant_rep::valid_as_scalar_index (void)):
-	New function.
-	* tree-const.cc (valid_scalar_indices (tree_constant*, int):
-	New function.
-	* tree-const.cc (tree_constant_rep::do_scalar_index): Simplify by
-	using functions to determine if arguments are valid as indices.
-	(tree_constant_rep::do_scalar_assignment): Likewise.
-
-Wed Oct 21 14:11:58 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-extras.cc (determinant): Make it work again.
-
-	* tree.cc (tree_identifier::eval (tree_constant*, int, int, int):
-	Simplify logic.  Only have one ans->eval() call.
-
-	* tree-const.cc (tree_constant_rep::eval (tree_constant*, int,
-	int, int): Properly handle indexing of range constants.
-
-	* tree-const.cc (stupid_fortran_style_matrix_index): Preserve row
-	or column orientation for vectors.
-
-	* toeplitz.m: New M-file.
-	* invhilb.m: Ditto.
-	* hankel.m: Ditto.
-
-	* tree-extras.cc (max): Handle two arg case.
-	tree-extras.cc (max): Likewise.
-	(min (Matrix&, Matrix&): New function.
-	(max (Matrix&, Matrix&): Ditto.
-
-Tue Oct 20 15:13:57 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.41.
-
-Mon Oct 19 16:46:35 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* rows.m: New M-file.
-	* g-builtins.cc (builtin_rows): Delete function.
-	* g-builtins.h (builtin_rows): Delete declaration.
-	* builtins.cc (general_functions): Delete from initialization list.
-
-	* columns.m: New M-file.
-	* g-builtins.cc (builtin_columns): Delete function.
-	* g-builtins.h (builtin_columns): Delete declaration.
-	* builtins.cc (general_functions): Delete from initialization list.
-
-	* length.m: New M-file.
-	* g-builtins.cc (builtin_length): Delete function.
-	* g-builtins.h (builtin_length): Delete declaration.
-	* builtins.cc (general_functions): Delete from initialization list.
-
-	* g-builtins.cc (builtin_size): If two values are expected to be
-	returned, put nr and nc in separate registers.
-
-Sun Oct 18 13:37:17 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree-base.h: Extract base tree class declarations from tree.h.
-	* tree-const.cc, tree-const.h: Extract tree_constant class from
-	from tree.cc, tree.h.
-	Change all uses of tree.h to use either or both of tree-base.h and
-	tree-const.h.
-
-	* Matrix.cc (solve): Replaces LinEqn class.
-	tree.cc (do_binary_op) Use it.
-
-	* g-builtins.cc (builtin_max): New function.
-	tree.cc (tree_constant::max): New friend.
-
-	* g-builtins.cc (builtin_min): New function.
-	tree.cc (tree_constant::min): New friend.
-
-	* cond.m: New M-file.
-
-	* rank.m: New M-file.
-
-	* g-builtins.cc (builtin_svd): New function.
-	tree.cc (tree_constant::svd): New friend function.
-
-	* g-builtins.cc (builtin_svd): New function.
-	tree.cc (tree_constant::svd): New friend function.
-
-	* t-builtins.cc (builtin_format): New function.  Implement some of
-	the Matlab options (sort of).
-
-	* Major changes to liboctave source.  A new Matrix.cc/Matrix.h
-	completely replaces the old Matrix/Vec/AVec code.  All other
-	classes that use Matrix/Vector objects have been updated (or
-	deleted, if they are no longer needed).  All callers changed in
-	octave sources.
-
-Sun Oct 11 21:22:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_function::eval): Don't define more function
-	parameters than are expected.  If fewer arguments than expected
-	are actually supplied, force them to be undefined.
-
-	* parse.y (fact): Give warning and abort for identifiers followed
-	by '['.  This should catch most improper uses of [] instead of ()
-	for indexing operators.
-
-	* tree.cc (do_binary_op (Matrix&, Matrix&, tree::expression_type):
-	Handle element by element exponentiation.
-
-Tue Sep 22 10:09:06 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.40.
-
-Mon Sep 21 13:09:06 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l: Accept ** and .** as well as ^ and .^ as exponentiation
-	operators.
-
-Fri Sep 18 15:19:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.h tree.cc utils.cc g-builtins.cc: Elimitate need for
-	overloaded operator-> in the tree_constant class.  Also eliminate
-	uses of ->string, ->scalar, etc.  Instead, always call
-	.string_value(), .double_value(), etc.
-
-	* builtins.cc (install_builtins): Reserve `ans' as an
-	uninitialized global variable (should it really be global?).
-
-	* parse.y (ans_expression): Handle default assignemnt to builtin
-	variable ans.
-	(command): Use it.
-
-Tue Sep 15 14:06:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.39.
-
-	* tree.cc (tree_identifier::bump_value): Don't try to increment
-	undefined symbols or values.
-	(tree_prefix_expression::eval): Don't call bump_value if id is a
-	NULL_TREE.
-	(tree_prefix_expression::eval): Likewise.
-
-	* g-builtins.cc (lsode_builtin): Handle extra arguments.
-	liboctave/ODE.cc (integ): Add template for handling bad returns
-	from lsode.
-
-	* tree.cc (class tree_return_command): Implementation is just like
-	break and continue.  Something seems wrong about this...
-	lex.l (return): Recognize return statement.
-	parse.y (statement): Handle function returns.
-	tree.cc (various eval functions): Check to see if we are returning
-	from a function.
-
-	* tree.cc (tree_for_command::eval): Set abort_on_undefined when
-	evaluating the loop body.
-	(tree_while_command::eval): Ditto.
-
-	* tree.cc (class tree_idenfier): Improve searching/parsing M-files
-	when handling undefined names.
-	tree.cc (tree_identifier::parse_m_file (char*)): New function.
-	(tree_identifier::parse_m_file (void)): Use it.
-
-	* utils.cc (force_global): New function.
-	* symtab.cc (symbol_table::remove_name(char *)): New function.
-
-	* tree.h, tree.cc (class tree_constant): Split into two classes,
-	tree_constant (handle) and tree_constant_rep (body) to enable use
-	of `smart pointers' and reference counted memory management.
-	(Lots of things are different with this change.)
-
-Sat Aug 22 11:58:27 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.38.
-
-	* lex.l (COMMA_KLUDGE): Delete production, all uses.  This doesn't
-	seem to be necessary anymore, and the mystery output lines
-	disappear without it.
-
-	* builtins.cc (make_eternal (char *)): New function.
-	(install_builtins): Make LOADPATH, eps, pi, Inf, and NaN eternal.
-
-	* New M-files: mean.m, std.m, hadamard.m, vander.m, hilb.m,
-	linspace.m, logspace.m.
-
-	* tree.cc (tree_function::eval): Don't check number of arguments
-	supplied against total number possible (previously thought to be
-	`expected') so that user-defined functions can have variable
-	numbers of arguments.
-
-	* tree.cc (tree_identifier::eval_undefined_error): New function.
-	(tree_identifier::eval): Use it.
-
-	* octave.cc (abort_on_undefined): New global symbol to control
-	whether we should jump to top level after an undefined symbol has
-	been encountered.
-	tree.cc (tree_function::eval) Set it before evaluating function
-	body, restore to previous value after successful completion.
-	tree.cc (tree_identifier::eval_undefined_error): Use it
-
-Fri Aug 20 09:31:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc:  New mapper functions:
-	isnan: Uses xisnan, which calls IEEE function isnan.
-	isinf: Uses xisinf which calls IEEE functions finite and isnan,
-	or isinf if available.
-	finite: Uses xfinite, which calls IEEE function finite.
-	abs: Uses fabs.
-
-	* g-builtins.cc	(sumsq): New function.
-	(diag): New function.
-
-	* tree.cc (tree_constant::sumsq): New function
-	(tree_constant::diag): New function
-
-	* Matrix.cc (sumsq): New function.
-	(diag): Ditto.
-
-Thu Aug 20 00:36:44 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_error): New function.
-
-	* gnuplot-build/Makefile.in (dist): Actually create `term'
-	subdirectory.
-
-	* Lots of changes to tree.cc tree_assignment_expression::eval and
-	tree_index_expression::eval to make matrix indexing work like
-	Matlab.
-	(do_fortran_indexing): New user-level variable to control this
-	behavior.  If this variable is false, things like
-
-	  a([1,2;3,4], [1,2;3,4]) = b
-
-	become syntax errors.  Otherwise, Matlab braindamage prevails.
-
-Tue Aug 18 13:15:46 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.37.
-
-	* tree.cc (do_matrix_assignment): Conditionally allow single
-	indices for Matrix assignments.
-	(do_matrix_index): Ditto.
-
-	* utils.cc (do_fortran_indexing): New function.
-	utils.h: Declare it.
-	builtins.cc (install_builtins): Default value for new
-	do_fortran_indexing variable.
-
-	* builtins.cc (install_builtins): Bind eps to the value
-	DBL_EPSILON from float.h.  Make it read only (will this cause
-	trouble)?
-	* Bind Inf to 1/0 (will only work for IEEE machines.
-	* Bind NaN to 0/0 (will only work for IEEE machines.
-	* Add round, fix, floor, ceil, and sign to builtin mapper functions.
-	(round): New function.
-	(fix): Ditto.
-	(signum): Ditto.
-	* Add clc (clear screen function).
-	* Add home (clear screen function).  To be just like Matlab, this
-	wouldn't clear the screen.
-
-	* New M-files: fliplr.m, flipud.m, trace.m, reshape.m.
-
-	* utils.cc (bind_variable): Revise bind_string_variable so that it
-	takes a tree_constant as an argument.
-	(bind_protected_variable): Likewise for the function
-	bind_protected_string_variable.
-	(bind_string_variable): Delete.
-	(bind_protected_string_variable): Ditto.
-	utils.h: Fix declarations.
-	builtins.cc t-builtins.cc: Fix callers.
-
-	* builtins.cc (install_builtins): Bind LOADPATH here.
-	octave.cc (initialize_globals): Not here.
-
-	* Makefile.in (SOURCES): Add new scripts directory.
-	(scripts): New target.
-	libcruft/Makefile.in (install): Don't depend on all.
-
-	* utils.cc (m_file_in_path): Get path from LOADPATH variable.
-	tree.cc (tree_identifier::parse_m_file): Modify caller.
-
-	* src/Makefile.in (OCTAVE_M_FILE_DIR): New variable.
-	(utils.o): Use it.
-	utils.cc (default_path): Use it.
-
-	* utils.cc (pathstring_to_vector): New function.
-	(default_path): Return colon separated path instead of vector of
-	paths.
-	* octave.cc (initialize_globals): Use pathstring_to_vector here.
-	Bind output of default_path to LOADPATH variable.
-	Eliminate octave_path global variable.
-
-	* tree.cc (isstr): New function.
-	(all): Ditto.
-	(any): Ditto.
-	(cumprod): Ditto.
-	(cumsum): Ditto.
-	(prod): Ditto.
-	(sum): Ditto.
-
-	* g-builtins.cc (builtin_isstr): New function.
-	(builtin_all): Ditto.
-	(builtin_any): Ditto.
-	(builtin_cumprod): Ditto.
-	(builtin_cumsum): Ditto.
-	(builtin_prod): Ditto.
-	(builtin_sum): Ditto.
-
-	* Matrix.cc (all): New function.
-	(any): Ditto.
-	(cumprod): Ditto.
-	(cumsum): Ditto.
-	(prod): Ditto.
-	(sum): Ditto.
-
-	* scripts: New directory.
-	scripts/strcmp.m: New file (first M-file function in distribution!).
-	scripts/Makefile.in: New file.
-	configure.in: Include scripts/Makefile in list of files to create.
-
-Sat Aug 15 18:32:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.36.
-
-Fri Aug 14 08:44:10 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (id_to_define): New global variable.
-	(curr_m_file_name): Ditto.
-	(current_infile): Ditto.
-
-	* tree.h tree.cc (tree_identifier::parse_m_file): New function.
-	(tree_identifier::eval): Handle M-files.
-
-	* tree.h (stash_m_file_name): New virtual function.
-	(stash_m_file_time): Ditto.
-	(time_parsed): Ditto.
-	(m_file_name): Ditto.
-
-	* tree.h tree.cc (tree_function::stash_m_file_name) New function.
-	(tree_function::stash_m_file_time): Ditto.
-	(tree_function::time_parsed): Ditto.
-	(tree_function::m_file_name): Ditto.
-
-	* lex.l (reading_m_file): New global variable.
-	(delete_buffer): New function.
-	(yywrap): New function.  Always return 0 (is this a smart thing to
-	do?).
-
-	* parse.y (func_def2): Handle input from m-files (sort of).
-
-	* octave.cc (octave_path): New global variable.
-	(using_readline): Ditto.
-	(no_line_editing): Ditto.
-
-	* octave.cc (main): Initialize current_command_number before
-	calling setjmp.
-	* Increment it in main command loop, not in parse.y.
-
-	* utils.h utils.cc (default_path): New function.
-	(m_file_in_path): Ditto.
-	(is_newer): Ditto.
-
-	* octave.cc (main): Execute commands here.
-	* parse.y (input): Not here.
-
-	* octave.cc (tree *global_command): New global variable that
-	points to the current command to be executed.
-
-Thu Aug 13 07:08:11 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y: Make word_list_cmd a fact, not a command, so that
-	things like `y = who -all' can work.  You can't do that in Matlab.
-
-	* t-builtins.cc (builtin_who): Print symbols in columns, sorted.
-	(list_in_columns) New function, mostly stolen from GNU ls.
-
-	* symtab.h symtab.cc (char **list (void)) New function.
-	(char **sorted_list (void) New function.
-
-	* tree.cc (various eval functions): Handle printing results of
-	text and general functions here.  Straighten out other printing
-	stuff, maybe...
-
-	* t-builtins.h t-builtins.cc: Make text functions return
-	tree_constant* instead of int, delete print flag argument.
-
-	* g-builtins.h g-builtins.cc: Delete print flag argument.
-
-	* Version 0.35.
-
-Wed Aug 12 15:12:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_builtin::eval): Call mapper function with
-	print = 0 to avoid getting two answers.
-	(specific do_matrix_assignment functions): Handle resizing
-	correctly for `:' indices.
-	(tree_colon_expression::eval): Don't crash if the evaluation of
-	an operand yields a NULL_TREE_CONST.
-
-Mon Aug 10 07:31:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_identifier::define):  Return NULL_TREE_CONST if
-	symbol_record::define fails.
-	(tree_identifier::assign): Likewise.
-
-	* symtab.h (symbol_lifetime): New attribute for symbol_records.
-	Can be either temporary or eternal.
-	(symbol_class): Delete eternal attribute.
-	* builtins.cc (install_builtins): Mark all builtins as eternal.
-
-	* Version 0.34.
-
-	* tree.h: Delete ttype, enum list of tree types.
-
-	* g-builtins.h g-builtins.cc (builtin_colloc): New function.
-
-	* liboctave (various): Add missing return values, etc. so that
-	liboctave compiles cleanly.
-
-	* tree.h tree.cc (tree_multi_assignment): New class to implement
-	assignments to more than one variable.  Does it work?  Maybe...
-
-	* tree.h (tree_constant **eval (int, int)): New virtual function.
-	(is_identifier): Another one.
-
-	* symtab.h (eternal): New class for symbol_records.
-	* symtab.h symtab.cc (make_eternal): New function.
-	* builtins.cc (install_builtins): Make builtin variables eternal.
-
-	* tree.cc (list_to_vector): Surround by `#if 0/#endif' to avoid
-	compilation warning.
-
-Sun Aug  9 03:18:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* t-builtins.h t-builtins.cc (builtin_cd): New function adapted
-	from bash for changing the current working directory.
-	(builtin_pwd): New function adapted from bash for printing the
-	current working directory.
-
-	* utils.h utils.cc: New functions from bash for changing and
-	printing the current working directory:
-
-	    pathname_backup        make_absolute
-	    get_working_directory  change_to_directory
-
-	* utils.h utils.cc (bind_string_variable): New function.
-	(bind_protected_string_variable): Likewise.
-
-	* octave.cc (initialze_globals): New function.
-
-	* utils.h utils.cc: New functions from bash, mostly for fancy
-	prompting:
-
-	    polite_directory_format  absolute_pathname
-	    absolute_program         base_pathname
-	    read_octal               sub_append_string
-	    decode_prompt_string
-
-Thu Aug  6 02:39:31 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* octave.cc (initialize_history): Fix up to
-	(octave_hist_file) New global variable.
-	(octave_hist_size) Ditto.
-	(history_lines_this_session) Ditto.
-	(history_lines_in_file) Ditto.
-
-	* input.cc (octave_gets): Keep track of number of lines read
-	during the current session.
-
-	* utils.cc (default_history_file): New function.  Look for
-	OCTAVE_HISTFILE environment variable and use its value if
-	possible.
-	(default_history_size): New function.  Look for OCTAVE_HISTSIZE
-	environment variable and use its value if possible.
-
-	* t-builtins.cc (builtin_history): Steal from bash and modify to
-	work with octave.
-
-	* g-builtins.cc (builtin_det): New function.
-
-	* tree.h tree.cc (determinant): New function
-
-	* g-builtins.cc: Rewrite functions that use fill_matrix, inverse,
-	and identity_matrix to use new versions implemented as friends of
-	tree_constant.  This is being done in an attempt to get rid of all
-	calls to tree_constant::const_type() outside of tree.cc.
-
-	* tree.cc (tree_constant): Implement new functions for filling
-	and inverting tree constants as matrices, and for creating an
-	identity matrix from a tree_constant.
-
-	* g-builtins.cc (builtin_inv): New function.
-	builtins.cc: Allow builtin_inv to be called as either inv(A) or
-	inverse(A).
-
-	* tree.cc (do_binary_op (Matrix, Matrix)): Better handling of
-	solution of linear equations for square coefficient matrices.
-
-	* LinEqn.cc (solve): Don't exit on singular matrices.  Implement
-	new variations of these functions that will allow status checking.
-
-	* src/Makefile.in: Define GNUPLOT_BINARY and SITE_DEFAULTS.
-	Specific rules for octave.o and builtins.o to avoid defining
-	GNUPLOT_BINARY and SITE_DEFAULTS for all .cc targets.
-
-	* builtins.cc: Use macro GNUPLOT_BINARY.
-
-	* octave.cc (execute_startup_files): Use macro SITE_DEFAULTS.
-	Execute commands from SITE_DEFAULTS file.
-
-	* t-buitlins.cc (builtin_pause): Make it work.
-
-	* configure.in: Check for termio.h and/or sgtty.h.
-
-	* octave.cc (clean_up): Reset terminal state to cooked mode.
-	(main) Likewise, after return from SIGINT signal handler.
-
-	* utils.h utils.cc (raw_mode): New function (mostly stolen from
-	less(1)) toggle input processing for stdin to raw/cooked modes.
-	(kbhit): New function to read one character from cin in raw mode
-	without echoing it.
-
-	* builtins.cc: Fix expected number of arguments in lists of
-	builtins.
-
-	* tree.h tree.cc (max_args_expected (void)): New virtual function.
-	(tree_builtins::) Provide a definition of it.
-
-	* lex.l (identifier): Before gobbling up text function arguments,
-	check to see that we expect some.
-
-	* symtab.h symtab.cc (max_args_expected): Return max args expected
-	by a symbol (currently only valid for tree_builtins).
-
-Wed Aug  5 05:03:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* utils.h utils.cc (resize_on_range_error): Decide what to return
-	based on value of global variable of same name.
-	(prefer_column_vectors): Likewise.
-
-	* Version 0.33.
-
-	* parse.y (func_def2): Call define (tree *, symbol_type), not
-	define (tree *), so that the symbol type is set for user-defined
-	functions.
-	(assignment): Catch assignments to functions here.
-
-	* tree.h tree.cc (tree_identifier::define (tree *, symbol_type):
-	New function (be careful out there...).
-
-	* symtab.h (symbol_type): Add new `user_function' enum value.
-
-	* tree.cc (do_matrix_assignment): Call prefer_column_vectors().
-
-	* tree.h tree.cc (do_matrix_assignment (...)): New functions to
-	implement assignment to indexed matrices.
-	(do_scalar_assignment (...)): New function to implement assignment
-	to an indexed scalar.
-
-	* utils.h utils.cc (resize_on_range_error): New function.  Should
-	eventually decide what to return based on value of global variable
-	of same name.
-	(prefer_column_vectors): New function.
-
-Tue Aug  4 05:37:47 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_constant::save): New function.
-	(tree_constant::load): New function.
-
-	* symtab.cc (symbol_record::save): New function.
-	(symbol_table::load): New function.
-
-	* t-builtins.cc (builtin_load): Start implementation.  Yikes, this
-	is probably going to need a lot of work to be very robust...
-
-	* t-builtins.cc (builtin_save): Implement by asking the
-	symbol_record to save itself.  Maybe this should really be done by
-	asking the symbol table to save a symbol...
-
-	* utils.cc (extract_keyword): New function.
-	(valid_identifier): New function.
-
-Fri Jul 31 04:16:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* parse.y (func_def3): Extra error cases for empty function
-	bodies.
-	(func_def1, func_def1a, func_def1b): Slighly straighten out some
-	truly twisted logic, eliminate func_def1a, rename func_def1b to
-	func_def1a, and make statementss like function [x,y] = foo() end
-	work properly (I think).
-	(func_def*): Put function name in global symbol table, not top
-	level symbold table.  This makes them accessible from other
-	functions, eh?
-
-	* t-builtins.cc (builtin_who): Accept -all, -local, -global, and
-	-top flags.
-
-Thu Jul 30 00:39:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* lex.l (current_buffer): New function to return current flex
-	input buffer.  Will need this to be able to switch file contexts.
-
-	* Version 0.32.
-
-	* lex.l (create_buffer, switch_to_buffer): New functions to handle
-	input from various streams.  This should be enough to allow us to
-	implement Matlab-like M-files.
-	octave.cc (main, execute_startup_files): Use them.
-
-	* octave.cc (execute_startup_files): Execute commands from
-	$HOME/.octaverc and ./.octaverc.
-
-	* g-builtins.cc (builtin_plot): Delete temporary files.
-	Ignore SIGINT while gnuplot is executing.
-
-Wed Jul 29 20:16:25 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (all_args_defined): New function to check a
-	tree_constant** vector to see if all elements are non-null.
-	(tree_index_expression::eval (int)): Use it, and abort the
-	evaluation if test fails.
-
-	* terminals.h, terminals.cc: New files for doing things with
-	gnuplot graphics terminal names.
-	src/Makefile.in: Handle new files.
-
-Tue Jul 28 00:25:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* g-builtins.cc (builtin_plot): Make it work, at least halfway.
-
-	* g-builtins.cc (builtin_save): New function.
-
-	* gnuplot-build/Makefile.in: Add -DREADLINE and remove readline.o
-	from list of objects to actually enable the GNU command line
-	editing.
-
-	* configure.in: Use AC_PROG_CHECK macro to search for f2c and f77.
-	Check for several common Un*x Fortran compilers.
-	Add extra messages.
-
-	* g-builtins.cc g-builtins.h: New files for builtin general
-	functions extracted from builtins.cc.
-
-	* t-builtins.cc t-builtins.h: New files for builtin text functions
-	extracted from builtins.cc.
-
-	* Makefile.in (split-dist): New target.
-
-	* Version 0.31.
-
-Mon Jul 27 22:01:58 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_constant::do_matrix_index (tree_constant **, int):
-	Allow single argument to work for matrices that are really row or
-	column vectors.
-
-	* lex.l: Accept `<>' in addition to `!=' and `~=' as `not equal'
-	comparison operators.
-
-	* libcruft/Makerules: Allow for compiling the Fortran routines
-	with the native Fortran compiler instead of translating to C.
-
-	* f2c-compat.sh, flibs.sh: New scripts which try to determine
-	whether it will be possible for us to use the system's Fortran
-	compiler directly, and if so, what libraries to add to the loader
-	command.  These scripts are known to work on SPARCstations running
-	SunOS and DECstations running Ultrix.  Not tested elsewhere...
-	* configure.in: Use them.
-	* Makefile.in: Distribute them.
-
-Wed Jul 22 00:04:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* builtins.cc: Begin implementation of NLP solver using NPSOL.
-
-Tue Jul 21 13:44:13 1992  John W. Eaton  (jwe@june.che.utexas.edu)
-
-	* octave.cc: If printing version information, also print pointer
-	to warranty info.
-
-	* builtins.cc: Implement the Matlab functions ones, zeros, eye,
-	clock, date, size, length, and global.
-	Implement warranty builtin.
-	(builtin_clear): Fix to work with global variables.
-
-	* symtab.cc (clear): Fix to work properly with global variables.
-
-Mon Jul 20 11:58:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc (tree_constant::do_matrix_index (tree_constant**, int)):
-	Make string indices work.
-	(tree_constant::force_numeric): Don't special case
-	single-character strings (this uncovers a flaw in the design of
-	the constructor for the magic colon operator...).
-
-Fri Jul 17 16:33:00 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.30.
-
-	* tree.cc: Delete undefined identifiers when trying to eval them.
-
-	* builtins.cc: Add beginnings of builtin who and clear functions.
-
-	* symtab.cc symtab.h (clear): New function.
-
-	* tree.cc, tree.h, parse.y: Implement matrix indexing with colon
-	expressions, implement the magic colon operator for column and row
-	selection.
-
-	* tree.cc tree.h: Completely rework colon expressions.
-
-Thu Jul 16 09:27:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* gnuplot-dist: Rename from gnuplot-3.2 so we're not tied to a
-	version number.
-
-Tue Jul 14 11:22:35 1992  John W. Eaton  (jwe@ward.che.utexas.edu)
-
-	* tree.cc builtins.cc: Make argc/nargs/nargin work like C:
-	the argument count is the number of command line arguments plus
-	the function name.  This goes for `argument lists' for matrices as
-	well as functions.  It seems a bit awkward but at it's consistent,
-	and it's like C.  Hmm.  Maybe this is a bad choice...
-
-	* utils.cc utils.h: New files for utility functions.
-
-Mon Jul 13 00:29:50 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.29.
-
-	* tree.cc tree_constant::tree_constant (matrix): Automatically
-	convert 1x1 matrices to scalars.
-
-	* parse.y lex.l: Fix up a bunch of stupid stuff and reduce the
-	number of shift/reduce conflicts to 16 (all but one because of the
-	optional separator garbage).
-
-	* parse.y lex.l: Allow for assignments to lists of identifiers to
-	be partially parsed.  This will still require some error checking
-	in tree.cc to ensure that the list is made up of identifiers only,
-	since that's not enforced by the grammar (I don't see a way to do
-	it, do you?)
-
-Sun Jul 12 11:24:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* tree.cc tree.h parse.y lex.l: Implement logical AND (symbol &),
-	OR (symbol |), and not (symbol ~).  Also provide the C-style
-	operators &&, ||, and !).
-
-	* Matrix.cc Matrix.h: Provide stupid element-wise logical
-	operators for matrices.
-
-	* Version 0.28.
-
-	* parse.y lex.l tree.cc tree.h: Implement C-style prefix and
-	postfix increment and decrement operators (symbols ++ and --
-	respectively).
-
-	* parse.y lex.l tree.cc tree.h: Implement break and continue.
-
-	* tree.cc tree.h: Assignment to matrix elements roughed out.
-
-	* gnuplot/tree.cc: Solution of linear equations via the lift
-	division operator partially implemented.  Singular coefficient
-	matrices aren't handled very well yet...
-
-	* gnuplot-build/Makefile.in: Make this work to build gnuplot for
-	generic X11/unix environments.
-	* Remove -Wall from CFLAGS to avoid loads of warnings.
-	* Use GNU readline instead of the one that comes with gnuplot.
-
-	* gnuplot-build/*.diff: Various patches for various things.
-
-Sat Jul 11 10:14:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.26
-
-	* src/Makefile.in: Distribute lex.cc, parse.cc, y.tab.h.
-	* src/Makefile.in (dist): Depend on lex.cc and parse.cc.
-
-	* gnuplot-build: New directory for patching and building gnuplot.
-	This is apparenty required because the gnuplot license won't allow
-	distrubution of modified versions, but will allow patches to be
-	distributed.
-	* gnuplot-build/Makefile.in: New file.
-
-	* gnuplot-3.2: New directory.
-
-	* readline: New directory from the bash-1.12 distribution, plus
-	tilde.c from bash's lib/glob directory and xmalloc.c from bash's
-	lib/malloc directory.
-	* readline/Makefile.in, readline/doc/Makefile.in,
-	readline/examples/Makefile.in: New files.
-
-	* All Makefie.in files: Allow make to work from any directory, not
-	just the top level one.
-
-Fri Jul 10 22:20:56 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* SERVICE: Remove, since it seems too specific to GNU products.
-
-Thu Jul  9 07:48:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.20.
-
-	* Solution of ODEs with LSODE partially implemented.  It's
-	possible to solve some simple equations.
-
-	* tree.cc tree.h (tree_constant): Add string constants and make
-	them work more or less like string constants in Matlab (implicit
-	conversion to ASCII numbers -- gag.  This isn't complete, and it
-	it assumes that ASCII is the character set for the host
-	machine/compiler...).
-
-Tue Jul  7 07:28:35 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.19.
-
-	* User defined function definitions and calls to them mostly work.
-	Still need to implement multiple return values correctly.
-
-Mon Jul  6 04:23:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.18.
-
-	* lex.l parse.y tree.cc tree.h: Begin implementation of
-	user-defined functions.
-
-Sun Jul  5 19:27:08 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.17.
-
-	* lex.l: Replace SAVE_STRING macro with a function.
-
-	* builtins.cc (builtin_document): New builtin function.
-	(builtin_help): Make it work.
-
-	* lex.l: More rules for gathering text.  These are still not quite
-	as they should be, but they will work in most cases.  I think the
-	flex generated scanner is either going to have to be reworked or
-	replaced with a handemade version at some point (probably soon)...
-
-	* tree.cc tree.h: Add tree_word_list and tree_word_list_command
-	classes for text functions.
-
-Fri Jul  3 05:13:15 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.16.
-
-	* builtins.h builtins.cc: New files for builtin functions.
-	Implement a few simple builtin functions.
-
-	* tree.cc tree.h: Add tree_builtin type for builtin functions.
-
-	* tree.cc tree.h: eval (args...) New virtual function.
-
-Thu Jul  2 01:27:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.15.
-
-	* symtab.h, symtab.cc: Allow variables and functions to be tagged
-	as read-only or read-write.
-
-Wed Jul  1 15:54:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* input.cc and octave.cc: allow input to come from a file.
-
-	* lex.l: to accept `#' as a comment character (allows one to
-	use the `#!/bin/octave' style script hack).
-
-	* doc: New directory containing skeleton stuff
-	* SERVICE: New file from GCC.
-	* BUGS: New file, now produced from doc/bugs.texi.
-	* INSTALL: New file, now produced from doc/install.texi.
-
-Sat Jun 27 15:52:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.14.
-
-	* Fixed parser to eliminate reduce/reduce conflicts.
-
-	* Fixed parser to recognize assignment to multiple identifiers
-	(e.g., [E,V] = eig (A); ).
-
-	* Quickie implementation of indexed array evaluation.  Works for
-	scalar indices, but not range/array indices.
-
-Fri Jun 26 04:23:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.12.
-
-	* Hooks added for indexed array evaluation and assignment.
-	* Colon expression implementation improved.
-	* Implementation of for command eval() improved.
-
-Thu Jun 25 00:28:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.11.
-
-	* Colon expressions added.
-	* For command added, but the implementation needs work.
-
-Wed Jun 24 15:09:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.10.
-
-	* Cheesy signal handler added to catch interrupts.
-
-	* Matrix input works, even for nested matrices.  Some error
-	checking is done while the matrix is evaluated to ensure that
-	the number of rows and columns match up.
-
-Mon Jun 22 00:21:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.9.
-
-	* Command line matrix input partially implemented.  It's not yet
-	possible to enter nested matrices, but it is possible to enter
-	simple matrices (e.g. [1,2;a,b+c], where a, b, and c are scalars.
-
-	* Version 0.8.
-
-	* If commands added.
-
-	* Version 0.7.
-
-	* Command chains added.
-	* Boolean operations added, tested for scalars.
-	* While loop added, tested for simple commands.
-
-Fri Jun 19 05:50:44 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.6.
-
-	At this early stage, while a lot of changes are being made very
-	quickly, ChangeLog entries will probably just list features added.
-
-	* Variable assignment works for scalars.
-	* Simple scalar expressions work.
-
-Thu Jun 18 06:44:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
-
-	* Version 0.5.
-
-	* src/version.h: For all the pre-alpha distributions, count
-	versions as 0.1, etc. instead of 0.01.
-
-	* Makefile: (dist) Automatically update version_string in
-	src/version.h.
-
-	* symtab.h, symbtab.cc: New files for symbol tables.
-
-	* tree.h, tree.cc: New files for parse trees.
-
-	* Lots of work unrecorded here.  Octave is now self-contained, the
-	tree routines are being redesigned, etc.
-
-Fri Mar 20 17:03:16 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
-
-	* Version 0.02.  Octave understands some simple matrix
-	expressions, but it is not yet possible for matrix elements to
-	be constructed from expressions.
-
-Thu Mar 19 06:13:39 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
-
-	* Version 0.01.  Octave understands simple scalar expressions.
-	Hey, Hey!  It is not yet self contained -- I'm still linking to
-	the old libraries in /usr/local/c++-classes, and this isn't likely
-	to change for a while.  (Other things are much more important than
-	making the distribution work on other machines.  Sorry...)
-
-Fri Feb 21 05:06:38 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
-
-	* Version 0.00.  This includes the basic directory structure,
-	makefiles, and a lot of the old Fortran source, including a way to
-	make a libcruft.a.  Octave compiles and accepts input (with
-	history and editing) but doesn't do much else.
-
-Wed Feb 19 06:20:44 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
-
-	* ChangeLog: New file.
--- a/OLD-ChangeLogs/doc-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,3176 +0,0 @@
-2011-04-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/plot.txi: Add colstyle function to documentation.
-
-2011-04-12  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Correct use of it's -> its in documentation.
-
-2011-04-12  Ben Abbott  <bpabbott@mac.com>
-
-	* interpreter/data.txi: Replace xref{Data Structures} with
-	xref{Structures}.
-
-2011-04-11  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/func.txi: Add discussion of isargout to Ignoring
-	Arguments section of documentation.
-
-2011-04-07  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Add spellcheck target to documentation
-	Makefile.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/numbers.txi, interpreter/strings.txi: Group commonly used
-	isXXX functions together in documentation.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi, interpreter/var.txi: Move pack() function to
-	proper place in documentation.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/diffeq.txi, interpreter/eval.txi, interpreter/plot.txi,
-	interpreter/var.txi: Clean up operator and function indices.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/plot.txi: Add warning about single precision in FLTK.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/aspell-octave.en.pws, interpreter/nonlin.txi, 
-	interpreter/tips.txi: Spellcheck documentation for 3.4.1 release.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/container.txi, interpreter/dynamic.txi,
-	interpreter/install.txi, interpreter/system.txi, interpreter/tips.txi:
-	Grammarcheck files for 3.4.1 release.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/grammar.txi: Remove reference to deprecated function
-	perror().
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/grammar.txi, interpreter/octave.texi: Add new section
-	on parsing to documentation.  Add functions add_input_event_hook,
-	remove_input_event_hook, missing_function_hook to documentation.
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/linalg.txi: Add blkmm function to documentation.
-
-2011-04-02  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/stats.txi: Add quantile, prctile functions to
-	documentation.
-
-2011-04-02  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add isdeployed function to documentation.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/io.txi: Add list_in_columns, terminal_size functions
-	to documentation.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/errors.txi, interpreter/octave.texi: Add onCleanup
-	function to documentation.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/contrib.txi: Add recommended format for commit messages
-	which reference the bug tracker.
-
-2011-03-28  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Eliminate space between variable and
-	parenthesis when using indexing.
-	* interpreter/intro.txi, interpreter/io.txi: Fix typos in docstring.
-	* interpreter/tips.txi: Add new recommendations for double spaces at
-	start of sentences and suggested variable names.
-
-2011-03-28  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi: Add do_braindead_shortcircuit_evaluation to
-	the list of variables set by --traditional option.
-
-2011-03-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Add allow_noninteger_range_as_index to
-	documentation.
-
-2011-03-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Add do_braindead_shortcircuit_evaluation to
-	documentation.
-
-2011-03-26  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Add error_text to list
-	of functions not requiring a docstring.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/container.txi: Add cellindexmat function to documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/oop.txi: Add optimize_subsasgn_calls function to 
-	documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/stats.txi: Add runlength function to documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/plot.txi: Add isocolors, isonormals, isosurface functions
-	to documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi: Add dump_prefs to documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi, interpreter/plot.txi: Add daspect, pbaspect
-	functions to documentation.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi, interpreter/plot.txi: Add getappdata,
-	setappdata, isappdata, rmappdata functions to documentation.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/matrix.txi: Add nth_element function to documentation.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/aspell-octave.en.pws, interpreter/io.txi,
-	interpreter/octave.texi, interpreter/plot.txi: Add uimenu, uigetdir,
-	uigetfile, and uiputfile to documentation.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/nonlin.txi, interpreter/octave.texi: Add fminbnd,
-	fminunc functions to documentation.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi, interpreter/linalg.txi: Add function chop
-	to documentation.  Re-order Utility Functions and move function dot
-	from linear algebra section to be with other utility functions.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi: Add gen_doc_cache, get_help_text, 
-	get_help_text_from_file, get_first_help_sentence to documentation.
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/io.txi: Add fileread to documentation.
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add gethostname to documentation
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Add fmod,
-	octave_tmp_file_name to list of exceptions which are already
-	documented.
-
-2011-03-17  Iain Murray  <iain@iainmurray.net>
-
-	* interpreter/system.txi: Remove nprocs and nprocs_conf functions
-	from documentation and replace with nproc.
-
-2011-03-16  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add nproc and nproc_conf functions to
-	documentation.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/matrix.txi: Deprecate is_duplicate_entry.
-
-2011-03-02  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/stats.txi: Correctly refer to discrete uniform 
-	distribution in documentation. 
-
-2011-03-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* interpreter/dynamic.txi: Make it clear that <octave/oct.h> is
-	a C++ source file and refer to the section where other languages
-	are discussed.
-
-	* faq/OctaveFAQ.texi: Major update to FAQ. Whitespace changes.
-	Update comments to version 3.4 of Octave. Summarise important
-	points of the NEWS file. We no longer have
-	stable/testing/unstable, only stable and development. Mention
-	newer versions of Windows. Update references to Matlab's latest
-	version. Mention that `!' can't be used for shell escapes.
-	Update other numbers like number of pages in manual, version
-	numbers, dates when things happened, file sizes. Clean out dead
-	links. Remove mentions of bugs@octave.org email address. Don't
-	say you can get Octave tapes from the FSF. Mention Ubuntu as
-	another distribution with Octave packages. Change package names
-	in anticipation for the forthcoming 3.4 binary packages. Explain
-	nested functions. Hint that classdef might happen in 3.5.
-	Mention 3D patches in the OpenGL backend. Clarify Matlab-style
-	short-circuiting. Specify that Octave also onCleanup.
-
-2011-02-28  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/numbers.txi: Add isrow, iscolumn functions to manual.
-
-2011-02-25  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* faq/OctaveFAQ.texi: Uniformise all mentions of Matlab to be
-	typeset in the @sc{Matlab} style. Also do some minor
-	proofreading like removing trailing spaces and some minor
-	spellchecking.
-
-2011-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/install.txi: Remove reference to POSIX regex library.
-
-2011-02-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi, interpreter/io.txi, interpreter/oop.txi:
-	Remove functions which have no DOCSTRING entries.
-
-2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* interpreter/linalg.txi: Added gmres to the specialized solvers.
-
-
-2011-02-06  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Fotios Kasolis to the list.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Add dbnext, alias for
-	dbstep, to functions not requiring a docstring.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/aspell-octave.en.pws: Add new spelling
-	exceptions to Octave private dictionary.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi: Update copyright on manual to 2011.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/mkoctfile.1, interpreter/octave-config.1,
-	interpreter/octave.1: Overhaul man pages for release 3.4.
-
-2011-02-04  Rik  <octave@nomad.inbox5.com>
-
-	* icons/octave-logo.ico: Add logo format left out of last changeset.
-
-2011-02-04  Rik  <octave@nomad.inbox5.com>
-
-	* icons/: New directory for icons and .desktop files.
-	* icons/octave-logo.png, icons/octave-logo.svg: Add new Octave O logo
-	to Mercurial.
-	* Makefile.am: New Makefile to build .desktop file and distribute logos.
-	* octave.desktop.in, octave-sombrero.png: Moved from examples directory.
-	* octave_branding_samples.svg: Original logos and branding material for
-	Octave.  This file is not distributed.
-
-	* interpreter/octave.texi: Use new O logo on title page.
-	* interpreter/octave_logo.eps: O logo in eps form for Postscript output.
-	* interpreter/octave_logo.pdf: O logo in pdf form for pdf output.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Use pattern-style rules to make .texi files
-	rather than older suffix-style rules.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi: Add new section
-	"Customizing Toolkit Behavior"
-
-	* interpreter/plot.txi: Add functions gnuplot_binary, mouse_wheel_zoom,
-	and gui_mode to new section.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/optim.txi: Deprecate glpkmex function and remove
-	from documentation.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/install.txi (Compiling Octave with 64-bit	Indexing):
-	Remove info about ARPACK.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi: Add new subsection on FLTK interaction.
-	* interpreter/plot.txi: Add fltk_gui_mode, fltk_mouse_wheel_zoom
-	functions to documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi: Add accumdim function to documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/set.txi: Add powerset function to documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add S_ISSOCK function to documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add S_ISBLK and related functions to
-	documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/optim.txi: Add glpkmex function to documentation.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add compare_versions function to
-	documentation.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/numbers.txi: Add sizemax function to documentation.
-	* interpreter/doccheck/mk_undocumented_list: Add ifelse to functions
-	not requiring documentation.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/image.txi: Add whitebg function to documentation.
-	* interpreter/plot.txi: Add reset function to documentation.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/linalg.txi: Add rsf2csf to documentation.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/geometry.txi: Add trisurf to documentation.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/arith.txi (Rational Approximations): Move here.
-	Update menu.
-	* interpreter/io.txi: From here.
-	Update menu.
-	* interpreter/octave.texi (Top): Update detailed menu.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/mk_doc_cache.m, interpreter/mkoctfile.1,
-	interpreter/munge-texi.cc, interpreter/doccheck/mk_undocumented_list:
-	Strip trailing whitespace.
-
-2011-01-26  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi: Use @code to eliminate extra single quotes
-	in index.
-	* interpreter/container.txi: Add @opindex citations for '.', '{' and
-	'}'.
-
-2011-01-26  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave-bug.1: Delete obsolete man page
-	* interpreter/Makefile.am: Stop distributing octave-bug.1 man page.
-
-2011-01-26  Olaf Till <olaf.till@uni-jena.de>
-
-	* interpreter/package.txi: Document variables MKOCTFILE,
-	OCTAVE_CONFIG, and OCTAVE exported by pkg for configure and make.
-
-2011-01-25  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Remove pass-through rules for AUTHORS, BUGS, and
-	INSTALL.OCTAVE which are no longer required.
-
-2011-01-24  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am, interpreter/Makefile.am: Add rule to build AUTHORS file.
-	* interpreter/preface.txi: Add @ifclear rule to build AUTHORS file.
-
-2011-01-23  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/install.txi: Redo build instructions for release 3.4.
-	* interpreter/doccheck/aspell-octave.en.pws: Add new words to
-	Octave private dictionary from install.txi
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/diagperm.txi, doc/interpreter/linalg.txi,
-	doc/interpreter/sparse.txi: Use non-breaking spaces between certain
-	adjectives and their linked nouns in docstrings.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/doccheck/README: Update documentation for
-	documentation scripts.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/doccheck/aspell-octave.en.pws,
-	doc/interpreter/plot.txi: Use @nospell macro on certain words in
-	docstring.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* faq/OctaveFAQ.texi, interpreter/doccheck/aspell-octave.en.pws,
-	interpreter/octave.texi, interpreter/plot.txi: Update for
-	backend -> graphics_toolkit change.
-
-	* interpreter/interpimages.m, interpreter/geometryimages.m,
-	interpreter/sparseimages.m, interpreter/plotimages.m:
-	Call graphics_toolkit, not backend.
-
-2011-01-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/aspell-octave.en.pws: Add new words to Octave
-	private dictionary.
-
-2011-01-19  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/diagperm.txi, doc/interpreter/dynamic.txi,
-	doc/interpreter/func.txi, doc/interpreter/install.txi,
-	doc/interpreter/intro.txi, doc/interpreter/numbers.txi,
-	doc/interpreter/oop.txi, doc/interpreter/plot.txi,
-	doc/interpreter/sparse.txi, doc/interpreter/stats.txi: Grammarcheck
-	txi files for 3.4 release.
-
-2011-01-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/quad.txi: Add quadcc to documentation.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Add merge/ifelse function to documentation.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/func.txi, interpreter/intro.txi: Eliminate
-	@deffn macros.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Update list of exceptions
-	not requiring documentation.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/stats.txi: Add stdnormal_xxx functions to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/matrix.txi: Add undocumented postpad to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi, interpreter/poly.txi: Add undocumented
-	polyaffine to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/container.txi: Add undocumented nfields to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/poly.txi: Add undocumented ppder, ppint, ppjumps
-	functions to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/system.txi: Add undocumented matlabroot to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/linalg.txi: Add undocumented svd_driver to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi: Add undocumented cbrt to documentation.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi: Add undocumented erfcx to documentation.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2011-01-12  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi: Add <BACKSPACE> to cursor movement section.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/basics.txi (Commands For History):
-	Document history_control.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Konstantinos Poulios to the list.
-
-2011-01-10  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* interpreter/diagperm.txi: Remove Matlab euphemism.
-	* interpreter/dynamic.txi: Ditto. Also use @file macro for a
-	couple of filenames.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/container.txi (Basic Usage and Examples):
-	Document print_struct_array_contents.
-
-2011-01-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi: Put statistics detailmenu in correct order.
-
-2011-01-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/numbers.txi, interpreter/obsolete.txi,
-	interpreter/oop.txi, interpreter/stats.txi: Use @headitem macro to
-	create column heads for @multitable entries.
-
-2011-01-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/grammar.txi: Update list of keywords in grammar.
-
-2011-01-05  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/plot.txi (Introduction to Plotting): Formatting
-	and style fixes.  Eliminate redundant example.
-
-2011-01-03  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi: Add new menu item "Correlation and
-	Regression Analysis"
-	* interpreter/stats.txi: Update documentation chapter on
-	basic statistics.
-
-2010-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi: Add isindex function to documentation
-	* interpreter/func.txi: Add isargout function to documentation
-	* interpreter/matrix.txi: Add isfinite function to documentation
-	* interpreter/numbers.txi: Add ishermitian function to documentation
-
-2010-12-31  Kai Habel  <kai.habel@gmx.de>
-
-	* interpreter/arith.txi: Add curl and divergence function.
-
-2010-12-22  Tatsuro Matsuoka  <tmacchant@yahoo.co.jp>
-
-	* nonlin.txi: Correct docs for using Jacobian with fsolve.
-
-2010-12-22  Judd Storrs <jstorrs@gmail.com>
-
-	* interpreter/expr.txi: Insert operator function docstrings.
-	* interpreter/oop.txi: Remove conflicting anchors for operator
-	functions. Add cindex entries for overloaded operators. Add
-	overloads to opindex.
-	* interpreter/numbers.txi: Fix colon opindex.
-
-2010-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/func.txi, interpreter/sparse.txi: Remove documentation
-	on deprecated function dispatch.
-
-2010-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Update mk_undocumented_list target to use
-	$(srcdir) for portability.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/container.txi, interpreter/func.txi,
-	interpreter/linalg.txi, interpreter/numbers.txi,
-	interpreter/signal.txi, interpreter/sparse.txi, interpreter/stats.txi,
-	interpreter/system.txi: Remove deprecated functions from manual.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Update script to
-	automatically remove functions from the "test/" and "doc/interpreter"
-	directories.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Add undocumented_list target to create list
-	of undocumented functions.
-
-2010-12-17  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/plot.txi (Two-Dimensional Plots): Document comet3.
-
-2010-12-17  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/plot.txi (Introduction to Graphics Structures):
-	Dcoument isprop.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/oop.txi: Redo table rendered incorrectly in Info
-	environment.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/numbers.txi: Remove obsolete documentation about 64-bit
-	integer arithmetic.
-
-2010-12-16  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: Update list of exception
-	functions not requiring documentation.
-
-2010-12-09  Doug Stewart <doug.dastew@gmail.com>
-
-	* interpreter/plot.txi: changed origial to origin in Quiver section
-
-2010-12-09  Kai Habel  <kai.habel@gmx.de>
-
-	* interpreter/plot.txi: Add pie3 function.
-
-2010-11-26  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/install.txi (Compiling Octave with 64-bit
-	Indexing): New section.
-
-2010-11-23  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/install.txi: Delete obsolete statement about
-	needing a patch for makeinfo.
-
-2010-11-18  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Christos Dimitrakakis to the list.
-
-2010-11-18  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Daisuke Takago to the list.
-
-2010-11-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/bugs.txi, interpreter/emacs.txi, interpreter/func.txi,
-	interpreter/geometry.txi, interpreter/linalg.txi,
-	interpreter/octave.texi, interpreter/package.txi, interpreter/plot.txi,
-	interpreter/stmt.txi, interpreter/strings.txi, interpreter/system.txi:
-	Update info-based documentation menus to include new nodes.
-
-2010-11-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/octave.texi, interpreter/plot.txi: Rename subsection
-	"Printing Plots" to "Printing and Saving Plots".  Add reference to
-	new saveas function.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc: Eliminate special case for __DECCXX.
-
-2010-11-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* interpreter/numbers.txi: Explain that ranges in vectors do get
-	expanded.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/mk_undocumented_list: New verification
-	script produces a list of undocumented functions.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/io.txi (Simple File I/O): Document textscan and
-	textread.
-
-2010-10-23  Ben Abbott  <bpabbott@mac.com>
-
-	* interpreter/strings.txi: Add @DOCSTRING(strread).
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/io.txi (Opening and Closing Files):
-	Document is_valid_file_id.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Gunnar Farnebäck to the list.
-
-2010-10-18  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/image.txi (Displaying Images):
-	Delete documentation for image_viewer.
-
-2010-10-17  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/strings.txi: Document untabify.
-
-2010-09-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Jordi Gutiérrez Hermoso to
-	the list.  Fix spelling of Søren Hauberg.
-
-2010-09-28  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/Makefile.am, doc/interpreter/geometryimages.m,
-	doc/interpreter/images.awk, doc/interpreter/interpimages.m,
-	doc/interpreter/plotimages.m, doc/interpreter/sparseimages.m: Use
-	Octave to create pdf versions of plots for documentation rather than
-	Ghostscript via Makefile.
-
-2010-09-28  Rik  <octave@nomad.inbox5.com>
-
-	* doc/interpreter/geometryimages.m, doc/interpreter/interpimages.m,
-	doc/interpreter/plotimages.m, doc/interpreter/sparseimages.m: Untabify
-	scripts.
-
-2010-09-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/mk_doc_cache.m: Use single quotes for regular expression
-	patterns where possible.
-
-2010-09-25  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/mk_doc_cache.m: Remove requirement for PCRE to build
-	doc cache.  Correctly parse first sentence from docstrings with
-	multiple @deftypefn lines.
-
-2010-09-15  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.am (EXTRA_DIST): Add images.awk to the list.
-
-2010-08-15  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/matrix.txi: Add documentation for randi function.
-
-2010-08-13  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Update @EXAMPLEFILE dependencies.
-
-2010-08-10  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Change dependency to $(srcdir)/images.mk.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Add documentation dependency on images.mk.
-	* interpreter/config-images.sh: Create images.mk in passed in srcdir,
-	rather than pwd.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/images.awk: HTML images depend on octave.html/index.html.
-
-2010-08-01  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/basics.txi, interpreter/contrib.txi,
-	interpreter/diagperm.txi, interpreter/dynamic.txi, interpreter/eos.txi,
-	interpreter/expr.txi, interpreter/geometry.txi,
-	interpreter/install.txi, interpreter/matrix.txi,
-	interpreter/numbers.txi, interpreter/oop.txi, interpreter/plot.txi,
-	interpreter/sparse.txi, interpreter/stats.txi, interpreter/testfun.txi,
-	interpreter/tips.txi: Grammarcheck documentation.  Add @noindent lines
-	and ensure line length is less than 80.
-
-2010-07-28  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi, interpreter/audio.txi, interpreter/basics.txi,
-	interpreter/container.txi, interpreter/contrib.txi,
-	interpreter/debug.txi, interpreter/diagperm.txi,
-	interpreter/diffeq.txi, interpreter/dynamic.txi, interpreter/emacs.txi,
-	interpreter/errors.txi, interpreter/eval.txi, interpreter/expr.txi,
-	interpreter/func.txi, interpreter/image.txi, interpreter/install.txi,
-	interpreter/interp.txi, interpreter/intro.txi, interpreter/io.txi,
-	interpreter/linalg.txi, interpreter/matrix.txi, interpreter/nonlin.txi,
-	interpreter/numbers.txi, interpreter/optim.txi,
-	interpreter/package.txi, interpreter/plot.txi, interpreter/poly.txi,
-	interpreter/quad.txi, interpreter/sparse.txi, interpreter/stmt.txi,
-	interpreter/strings.txi, interpreter/testfun.txi, interpreter/tips.txi,
-	interpreter/var.txi: Grammarcheck .txi documentation files.
-
-2010-07-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/tips.txi: Update some tips.
-
-2010-07-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/mk_doc_cache.m: Use regexp rather than fussing with
-	character arrays.
-
-2010-07-19  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/matrix.txi: Add new function repelems to matrix chapter.
-
-2010-07-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/spellcheck,
-	interpreter/doccheck/spellcheck/add_to_aspell_dict:
-	Use case insensitive sort in spellcheck scripts.
-
-2010-07-18  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck/aspell-octave.en.pws: Add Octave-specific words
-	from stats.texi to private Aspell dictionary.
-
-2010-07-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/doccheck: New directory for spelling/grammar scripts.
-	* interpreter/doccheck/README: Instructions for using scripts.
-	* interpreter/doccheck/spellcheck: Script to spellcheck a Texinfo file.
-	* interpreter/doccheck/aspell.conf: GNU Aspell configuration file for
-	Octave documentation.
-	* interpreter/doccheck/aspell-octave.en.pws: Private Aspell dictionary.
-	* interpreter/doccheck/add_to_aspell_dict: Script to add new
-	Octave-specific words to private Aspell dictionary.
-	* interpreter/octave.texi: New @nospell macro which forces Aspell to
-	ignore the word marked by the macro.
-	* interpreter/mk_doc_cache.m: Skip new @nospell macro when
-	building doc_cache.
-	* interpreter/arith.txi, interpreter/audio.txi,
-	interpreter/bugs.txi, interpreter/contrib.txi,
-	interpreter/debug.txi, interpreter/diagperm.txi,
-	interpreter/dynamic.txi, interpreter/geometry.txi,
-	interpreter/matrix.txi, interpreter/numbers.txi,
-	interpreter/oop.txi, interpreter/package.txi,
-	interpreter/sparse.txi, interpreter/tips.txi:
-	Spellcheck documentation.
-
-2010-07-01  Rik  <octave@nomad.inbox5.com>
-
-	* refcard/refcard.tex: Fix italic macro typo for stem.
-
-2010-06-28  Rik  <octave@nomad.inbox5.com>
-
-	* refcard/refcard.tex: Fix typos in refcard (bug #30260).
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* ChangeLog: Correctly break lines > 80 characters.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/intro.txi: Clarify wording.  (bug #30165).
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/set.txi: Remove reference to deprecated function.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/expr.txi, interpreter/func.txi, interpreter/install.txi,
-	interpreter/plot.txi, interpreter/sparse.txi: Periodic grammar check
-	of documentation to ensure a common format.
-
-2010-05-27  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/arith.txi, interpreter/diffeq.txi, interpreter/intro.txi,
-	interpreter/nonlin.txi, interpreter/poly.txi, interpreter/sparse.txi:
-	Replace @ifinfo with @ifnottex.
-
-2010-05-07  John W. Eaton  <jwe@octave.org>
-
-	* basics.txi: Update list of internal variables for --traditional.
-
-2010-05-02  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/contrib.txi, interpreter/install.txi,
-	interpreter/plot.txi, interpreter/sparse.txi,
-	interpreter/octave.texi: Remove tabs causing problems with
-	pdf formatting.
-
-2010-04-14  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* interpreter/plot.txi: Document keypress and mouse callback
-	properties
-
-2010-04-07  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/testfun.txi: Document runtests.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/bugs.txi: Update for bug tracker.
-
-2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/expr.txi: Mention no ternary operator and the ifelse
-	fucntion as a possible replacement.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/tips.txi: More tips.
-
-2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/expr.txi (Assignment): Document return value of
-	multi-assignment with skipped values.
-
-2010-01-29  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/poly.txi (Derivatives and Integrals):
-	Don't include docstring for polyinteg.
-
-	* interpreter/obsolete.txi (Obsolete Functions):
-	Remove weibcdf, weibinv, weibpdf, and weibrnd from the table.
-
-2010-01-28  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/obsolete.txi: New file.
-	* interpreter/Makefile.am (MUNGED_TEXI_SRC): Add it to the list.
-	* interpreter/octave.texi (Obsolete Functions): New menu item.
-	Include obsolete.texi.
-
-2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/expr.txi: Document using dummy outputs.
-	* interpreter/func.txi: Document using dummy inputs.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc: Delete Emacs local-variable settings.
-	Untabify.
-
-2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/container.txi (Creating Cell Arrays): Add
-	docstring for cellslices function.
-
-2010-01-09  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc: Avoid C-style casts.
-	(main): Call usage if fewer than two arguments.
-
-2009-12-20  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/geometryimages.m: Correctly set postscript output when
-	QHULL library does not exist and sombrero image is printed.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am, faq/Makefile.am, interpreter/Makefile.am,
-	liboctave/Makefile.am, refcard/Makefile.am, interpreter/images.awk:
-	Eliminate TOPDIR variable in favor of built-in automake variables of
-	top_builddir and top_srcdir.
-
-2009-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: use automake syntax to build munge-texi.
-
-2009-12-11  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: remove install-local target and use automake
-	syntax to install doc-cache file.
-
-2009-12-10  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Replace distdir-local with dist-hook rule as
-	it is better supported by automake.
-
-2009-12-10  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: new distdir-local rule to check for presence
-	of necessary libraries before packaging distribution
-
-2009-12-08  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Distribute all generated documentation
-	(.pdf, .ps, .html, .dvi) to remove build requirement for TexInfo
-
-2009-12-07  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am, faq/Makefile.am, liboctave/Makefile.am:
-	Document use of NOTPARALLEL directive.
-
-2009-12-07  Rik  <octave@nomad.inbox5.com>
-
-	* refcard/Makefile.am: Add CLEANFILES and MAINTAINERCLEANFILES objects
-	to properly clean directory.
-
-2009-12-05  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Set dependency of *.texi files on
-	munge-texi source code rather than executable.
-
-2009-12-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/images.awk: Revert to using Ghostscript for documentation
-	pdf image creation rather than Octave.
-
-2009-12-04  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am, interpreter/Makefile.am, liboctave/Makefile.am: remove
-	lingering configuration support for conf.texi.
-	* liboctave/Makefile.am: distribute .texi files.
-
-2009-12-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/geometryimages.m, interpreter/interpimages.m,
-	interpreter/sparseimages.m, interpreter/plotimages.m:
-	Switch to color output for PostScript documentation images.
-
-2009-12-04  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/geometryimages.m, interpreter/interpimages.m,
-	interpreter/sparseimages.m, interpreter/plotimages.m:
-	Set default paperorientation to landscape to stop warning message.
-
-2009-12-04  Ben Abbott  <bpabbott@mac.com>
-
-	* interpreter/geometryimages.m, interpreter/interpimages.m,
-	interpreter/sparseimages.m: Set default papersize to the desired
-	imagesize.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images.awk: Emit rules to copy PNG files to
-	octave.html directory once it is created.
-	* interpreter/Makefile.am (all-local): Depend on $(HTMLDIR_IMAGES).
-	(IMAGES): Include $(HTMLDIR_IMAGES) in the list.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/octave.texi: Include version.texi instead of conf.texi.
-	* interpreter/Makefile.am (../conf.texi): Delete rule.
-	(octave_TEXINFOS): Delete ../conf.texi from the list.
-	($(srcdir)/octave.info octave.dvi octave.pdf octave.html):
-	Remove duplicate $(octave_TEXINFOS) dependency.
-	Depend on $(srcdir)/version.texi.
-
-	* liboctave/liboctave.texi: Include version.texi instead of conf.texi.
-	* liboctave/Makefile.am (../conf.texi): Delete rule.
-	(dist_liboctave_TEXINFOS): Delete ../conf.texi from the list.
-	(.NOTPARALLEL): Correct spelling of target.
-	($(srcdir)/liboctave.info liboctave.dvi liboctave.html liboctave.pdf):
-	Depend on $(srcdir)/version.texi
-
-	* conf.texi.in: Delete.
-	* Makefile.am: Delete rules for conf.texi.
-	(.NOTPARALLEL): New target.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* doc/Makefile.am (MUNGED_TEXI_SRC): Define as explicit list.
-	(TXI_SRC): Define using substitution rule.
-
-	* doc/Makefile.am (conf.texi): Only substitute OCTAVE_VERSION.
-	* conf.texi: Likewise.
-
-	* doc/interpreter/find-docstring-files.sh: New file.
-	* doc/interpreter/Makefile.am (DOCSTRING_FILES): Use it.
-	($(TOPDIR)/src/DOCSTRINGS, $(TOPDIR)/scripts/DOCSTRINGS):
-	Delete rules.
-	(.txi.texi): Pass $(top_srcdir) to munge-texi.
-	(octave.info octave.dvi octave.pdf octave.html):
-	Depend on $(octave_TEXINFOS), not $(nodist_octave_TEXINFOS).
-	(nodist_octave_TEXINFOS): Delete variable.
-	(octave_TEXINFOS): Include ../conf.texi in the list.
-	(dist-hook): Delete target.
-	(EXTRA_DIST): Add find-docstring-files.sh to the list.
-
-	* doc/interpreter/basics.texi: Eliminate @value{OCTAVEHOME}
-	* doc/interpreter/dynamic.txi: Delete examplefile and
-	longexamplefile macro definitions.  Replace uses with
-	@EXAMPLEFILE, to be expanded by munge-texi.
-	* doc/interpreter/geometry.txi: Eliminate @ifset HAVE_QHULL.
-	* doc/interpreter/oop.txi: Delete classfile and polynomialfile
-	macro definitions.  Replace uses with @EXAMPLEFILE, to be expanded
-	by munge-texi.
-	* doc/interpreter/sparse.txi: Eliminate @ifset HAVE_CHOLMOD,
-	@ifset HAVE_UMFPACK, and @ifset HAVE_COLAMD.
-
-	* munge-texi.cc (top_srcdir): New global variable.
-	(main): set top_srcdir from first arg.
-	(usage): Include TOP-SRCDIR in the message.
-	(recover_from_macro, process_example_file): New functions.
-	(process_texi_input_file): Handle @EXAMPLEFILE tag.
-
-	* doc/liboctave/Makefile.am (nodist_liboctave_TEXINFOS):
-	Delete variable.
-	(liboctave_TEXINFOS): Include ../conf.texi in the list.
-
-2009-12-02  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am: Correct Makefile.am to allow VPATH builds of
-	documentation
-
-2009-12-01  Rik  <octave@nomad.inbox5.com>
-
-	* faq/Makefile.am, doc/interpreter/bugs.txi,
-	doc/interpreter/install.txi: Eliminate false dependency on conf.texi.
-
-2009-11-30  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am:
-	Overhaul Makefile to correctly generate *.texi files and to stop their
-	distribution when running 'make dist'
-
-2009-11-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc (process_texi_input_file): Double @ in
-	symbol_name used in @anchor.
-	(extract_docstring): Double @ in function name used in @ref.
-
-	* interpreter/mk_doc_cache.m (cmd): Transform @ in class names to
-	@@ when processing DOCSTRINGS files.
-
-2009-11-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.a (nodist_octave_TEXINFOS): Add
-	contributors.texi and $(MUNGED_TEXI_SRC) to the list.
-	(dist_octave_TEXINFOS): Delete.
-	(DISTCLEANFILES, all_octave_TEXINFOS): New variables.
-	($(srcdir)/octave.info, octave.dvi, octave.pdf,	octave.html):
-	Depend on $(all_octave_TEXINFOS), not $(octave_TEXINFOS).
-	(octave.ps): Depend on .dvi file and EPS files, but not .texi
-	source files.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* doc/interpreter/contributors.in: Add Kacper Kowalik.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* interpreter/install.txi: Document that curl libraries impact ftp
-	objects.
-	* interpreter/system.txi: Document the ftp objects
-
-2009-11-25  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am:
-	Simplify doc-cache handling in Makefile.am to use only
-	install-data-local target
-
-2009-11-24  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.am:
-	Correct Makefile so that it halts on error when unable to build
-	doc-cache.
-
-2009-11-23  Rik  <octave@nomad.inbox5.com>
-
-	* faq/Makefile.am, interpreter/Makefile.am, liboctave/Makefile.am:
-	Stop distribution of conf.texi by autotools.  conf.texi must be re-made
-	from conf.texi.in during configure step
-
-2009-11-23  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Add . to SUBDIRS to force automake to compile this
-	directory, and make conf.texi, before recursively compiling SUBDIRS
-	which depend on conf.texi
-
-2009-11-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Add DISTCLEANFILES macro so that generated conf.texi can
-	be cleaned by automake.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am, faq/Makefile.am, interpreter/Makefile.am,
-	liboctave/Makefile.am, refcard/Makefile.am,
-	interpreter/config-images.sh, interpreter/images,
-	interpreter/images.awk: New files.
-	* Makefile.in, faq/Makefile.in, interpreter/Makefile.in,
-	liboctave/Makefile.in, refcard/Makefile.in: Delete.
-	* interpreter/munge-texi.cc (main, usage): Eliminate unnecessary
-	-d option.
-	* liboctave/liboctave.texi: Surround @direntry in appropriate magic.
-	* faq/OctaveFAQ.texi: Rename from faq/Octave-FAQ.texi.
-
-2009-10-23  Rik  <octave@nomad.inbox5.com>
-
-	* various: Periodic grammar check of Octave documentation files to
-	ensure a standardized format.
-
-2009-10-20  Rik  <octave@nomad.inbox5.com>
-
-	* interpreter/Makefile.in: Clean Makefile.in and remove a few
-	non-functional targets
-
-2009-10-13  Rik  <octave@nomad.inbox5.com>
-
-	* various: Fix various incorrect usages of deffn and deftypefn macros
-
-2009-10-12  Rik  <octave@nomad.inbox5.com>
-
-	* liboctave/Makefile.in: Simplify Makefile using GNU Make functions
-	* liboctave/liboctave.texi: Stop header of file, which was meant to be
-	commented, from being transferred into the documentation.
-
-2009-10-12  Rik  <octave@nomad.inbox5.com>
-
-	* faq/Makefile.in: Clean a few non-functional commands from Makefile
-
-2009-10-12  Rik  <octave@nomad.inbox5.com>
-
-	* refcard/Makefile.in: Simplify Makefile using GNU Make functions
-
-2009-10-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.in: Include texmf.cnf in distributed files to fix texinfo
-	runtime error with stack overflow.
-
-2009-10-11  Rik  <octave@nomad.inbox5.com>
-
-	* intepreter/Makefile.in: Fix broken command to create octave.dvi
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* intepreter/linalg.txi: Add reference to luupdate.
-
-2009-10-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/io.txi: Add reference to fskipl.
-
-2009-09-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/data.txi (Built-in Data Types):
-	Document bitpack and bitunpack.
-	* interpreter/plot.txi: Delete spurious {}.  Update menus.  Fix
-	cross-referencing.
-	* interpreter/octave.texi: Update plotting sub-menus in detailed menu.
-
-2009-09-30  Michael D. Godfrey  <godfrey@isl.stanford.edu>
-
-	* interpreter/plot.txi: Document graphics structures.
-
-2009-09-14  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/optim.txi: Document pqpnonneg.
-
-2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/expr.txi: Mention complex comparisons change.
-
-2009-08-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/tips.txi: Update.
-
-2009-07-20  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: Add Aleksej Saushev.
-
-2009-06-24  Rafael Laboissiere  <rafael@debian.org>
-
-	* Makefile.in (dist): Drop conf.texi as prerequisite.
-
-2009-06-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/tips.txi: Update.
-
-2009-06-07  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/plot.txi: Update some of Advanced Plotting documentation.
-	Updated functions delete, allchild, backend, clf, hold, and refreshdata.
-
-2009-06-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/container.txi: Udate documentation of container types
-
-2009-06-03  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/plotimages.m: Correct errorbar plot for docs.  Make hist
-	plot reprodroducible for docs.
-	* interpreter/interpimages.m: Correct typo in legend of interpft plot
-	for docs.
-
-2009-06-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Omit conf.texi in DISTFILES.
-
-2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/oop.txi: Update docs of polynomial class, mention
-	chained indexing.
-
-2009-05-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/errors.txi: fix 'print_usage' output.
-
-2009-05-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/bugs.txi: fix call to 'page_screen_output'.
-
-2009-05-25  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/Makefile.in: Add texmf.cnf to list of distributed files
-	(DIST_FILES) so that pdfs will build.
-
-2009-05-24  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* interpreter/oop.txi: Added inheritance documentatin
-
-2009-05-21  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/Makefile.in, texmf.cnf: Change texi2pdf call to include
-	local TeX configuration file which increases save_history variable.
-
-2009-05-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/tips.txi: Change recommendation to use @tex rather than
-	@iftex construction.
-
-2009-05-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/*.txi: Simplify TeXinfo files by eliminating redundant
-	@iftex followed by @tex construction.  Also, spellchecked all .txi
-	and .texi files.
-
-2009-05-14  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.8 (Mathematical Consants)
-	of arith.txi.
-
-2009-05-01  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.7 (Coordinate
-	Transformations) of arith.txi.
-
-2009-05-01  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Simplify TeXinfo and eliminate use of
-	@iftex in arith.txi.
-
-2009-05-01  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.5 (Utility Functions)
-	of arith.txi.
-
-2009-04-30  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.4 (Sums and Products)
-	of arith.txi.
-
-2009-04-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/numbers.txi: Update info on ranges.
-	* interpreter/expr.txi: Update some info on indexing.
-
-2009-04-26  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.3 (Trigonometry) of
-	arith.txi.
-
-2009-04-24  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.2 (Complex Arithmetic)
-	of arith.txi.  Use Tex in more of the doc strings for pretty
-	printing in pdf format.
-
-2009-04-24  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/octave.pdf: Eliminate most overfull errors when
-	running texi2pdf for generating pdf documentation.  Use
-	@smallexample when necessary to reduce font for long lines.
-	Reword variables or phrases so that Tex can break them at a better
-	spot.
-
-2009-04-21  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/octave.pdf: Eliminate 'unbalanced parentheses in
-	@def...' error during texi2pdf.  Fixed four .m files incorrectly
-	using @deftypefn macro.
-
-2009-04-19  Ansgar Burchardt  <ansgar@43-1.org>
-
-	* interpreter/numbers.txi: Fix small mistake in example.
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/arith.txi: Update section 17.1 (Utility Functions)
-	of arith.txi.  Split section into "Exponents and Logarithms" and
-	"Utility Functions" Use Tex in many more of the doc strings for
-	pretty printing in pdf format.
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/basics.txi: Update help text for sections 2.5, 2.6, 2.7
-	of basics.txi
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/basics.txi: Update help text for sections 2.4 of
-	basics.txi.
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/basics.txi: Update help text for sections 2.2
-	and 2.3 of basics.txi.
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/basics.txi: Update help strings for command line options.
-
-2009-04-11  David Bateman  <dbateman@free.fr>
-
-	* interpreter/contributors.in: Add Martin Helm.
-
-2009-04-06  John W. Eaton  <jwe@octave.org>
-
-	* texinfo.tex: Prefer PDF image files if generating PDF output.
-
-2009-03-27  Rik  <rdrider0-list@yahoo.com>
-
-	* interpreter/intro.txi: Add new sample section on elementary
-	calculations.  Add new example of solving systems of equations
-
-2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/diagperm.txi: Mention mixing with sparse matrices.
-
-2009-03-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc (process_texi_input_file):
-	Copy leading comment with file name info to output.
-
-2009-03-09  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (DISTFILES): Use doc-cache instead of
-	DOC for doc cache file.
-
-2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/stats.txi (Basic Statistical Functions):
-	Add the 'histc' function.
-
-2009-03-07  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/basics.txi (Command Line Options):
-	Document --doc-cache-file command-line option.
-
-2009-03-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/diagperm.txi: Various improvements.
-
-2009-02-27  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/set.txi (Sets): Don't document create_set.
-
-2009-02-26  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/strings.txi (Manipulating Strings):
-	Document strsplit, not split.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (distclean): Remove tags and TAGS here
-	instead of in maintainer-clean target.
-	(maintainer-clean): Depend on distclean, not clean.  Remove DOC.
-	(DISTFILES): Add stmp-html to the list.
-
-	* Makefile.in: Remove conf.texi in maintainer-clean target but not
-	distclean target.
-
-2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/diagperm.txi: Remove redundant url references.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/diagperm.txi: Use TeX alternatives in some
-	formulas, improve examples, delete superfluous defs.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/diagperm.txi: New file.
-	* interpreter/octave.texi: Reference it.
-	* intepreter/Makefile.in: Include it.
-	* interpreter/matrix.txi: Move @DOCSTRING(diag) to diagperm.txi.
-
-2009-02-19  John W. Eaton  <jwe@octave.org>
-
-	* doc/interperter: Include @DOCSTRING commands for the following
-	functions: bicgstab, cgs, choldelete, cholinsert, cholshift,
-	clabel, comet, command_line_path, compass, contour3, ctranspose,
-	cylinder, dellistener, diffuse, edit, ellipsoid, fclear, feather,
-	fill, find_dir_in_path, finite, flag, info, is_absolute_filename,
-	is_rooted_relative_filename, isdebugmode, ishghandle, isnull,
-	issorted, make_absolute_filename, meshz, news,
-	octave_tmp_file_name, optimget, pareto, plotmatrix, plotyy,
-	qrshift, quiver3, re_read_readline_init_file, ribbon, rose,
-	rundemos, scatter, scatter3, slice, specular, sphere, spinmap,
-	stem3, strchr, strtrim, surfl, surfnorm, times, transpose,
-	treelayout, uminus, uplus, warranty, what, xlim, yes_or_no.
-
-2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* interpreter/install.txi: Add documentation for configure options
-	"--without-framework-carbon" and "--without-framework-opengl".
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/arith.txi: Add reference to "cummin" and "cummax".
-
-2009-02-11  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (uninstall): Use $(DESTDIR) here too.
-	Uninstall Info dir file.  Uninstall DOC file.
-	(install): Install DOC file.  Add $(DESTDIR)$(octetcdir) to the
-	list of directories to make.
-
-2009-02-10  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (DOC): New target.
-	(DISTFILES): Add DOC nad mk_doc_cache.m to the list.
-	* mk_doc_cache.m: New file.
-
-2009-02-01  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/nonlin.txi: Remove reference to 'fsolve_options'.
-
-2009-02-01  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/system.txi: Remove reference to 'eomdate'.
-
-2009-01-24  Thorsten Meyer  <thorsten@hexe>
-
-	* interpreter/container.txi (Data Structures): Update examples for
-	structure arrays.
-
-2009-01-22  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/io.txi (Terminal Output): Remove @DOCSTRING(ans).
-
-	* vr-idx.txi: Delete.
-	* interpreter/Makefile.in (SUB_SOURCE): Remove it from the list.
-
-2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/func.txi: Put varargin and varargout in concept index.
-	* interpreter/var.txi: Put ans in concept index.
-	* interpreter/octave.texi: Don't include vr-idx.texi.
-
-	* interpreter/var.txi: Remove sections on built-in variables.
-
-2009-01-20  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/system.txi (Filesystem Utilities): @DOCSTRING for
-	fstat.  Delete @DOCSTRING for lstat.  Add anchor for doc-lstat.
-
-2009-01-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/numbers.txi (Numeric Data Types): Trivial fixes.
-
-2009-01-14  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/matrix.txi: Add anchor for doc-postpad.
-
-2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/strings.txi: Add space to ischar example.
-
-2008-12-26  Francesco Potortì  <pot@gnu.org>
-
-	* interpreter/matrix.txi (Rearranging Matrices): Add reference
-	to resize function.
-
-	* interpreter/plot.txi (Plot Annotations): Add cross reference to
-	Text Properties.
-	(Two-Dimensional Plots): Update introduction to the axis function.
-
-       * interpreter/signal.txi (Signal Processing): Add explanation of
-       what wisdom is.
-
-2008-12-23  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Document the eigs and svds functions.
-
-2008-12-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/container.txi, interpreter/strings.txi:
-	Remove reference to str2mat.m
-
-2008-11-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/strings.txi: Add text around docstrings, change
-	structure of the strings chapter.
-
-2008-10-31  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in ($(TEXINFO)): Depend directly on
-	../../src/DOCSTRINGS and ../../scripts/DOCSTRINGS instead of phony
-	src-DOCSTRINGS and scripts-DOCSTRINGS targets.
-	(src-DOCSTRINGS, scripts-DOCSTRINGS): Delete.
-	(DOCSTRING_FILES): New variable.
-	($(SUB_TEXFINO)): Use it.  Display actual command.
-	($(DOCSTRING_FILES)): New target.
-	(%.spell : %.texi): Use -t suffix instead of .tmp.
-	(constributors.texi, $(SUB_TEXINFO)): Use mv, instead of
-	$(simple-move-if-change-rule).
-
-2008-10-30  David Bateman  <dbateman@free.fr>
-
-	* faq/Octave-FAQ.texi: Document improved indexing and add an faq for
-	the compatibility of mldivide/mrdivide for singualr, under- and
-	over-determined matrices.
-
-	* interpreter/plot.txi: Document contour groups.
-
-2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/system.txi, interpreter/poly.txi,
-	interpreter/arith.txi, interpreter/poly.txi,
-	interpreter/optim.txi, interpreter/diffeq.txi,
-	interpreter/sparse.txi, interpreter/matrix.txi,
-	interpreter/plot.txi, interpreter/io.txi, interpreter/debug.txi,
-	interpreter/var.txi, interpreter/strings.txi:
-	Add missing @DOCSTRING commands.
-
-	* interpreter/munge-texi.cc (extract_docstring): Expand arguments
-	of @seealso{} into Texinfo references.
-
-2008-10-22  David Bateman  <dbateman@free.fr>
-
-	* interprter/plot.txi: Add documentation for error bar series.
-
-	* interprter/plot.txi: Update documentation for line series, Add
-	documetation for scatter groups, stem series and surface groups.
-
-	* texinfo.tex: Import new upstream version.
-	* interpreter/Makefile.in (EXAMPLE_FILES_NODIR): Update for new OOP
-	class example location.
-	* interpreter/oop.txi: Ditto.
-
-2008-10-15  David Bateman  <dbateman@free.fr>
-
-	* interpreter/oop.txi: New file.
-	* interpreter/Makefile.in (SUB_SOURCES): Add it here.
-	(POLYNOMIAL_FILES_NODIR): New varaible for polynomial example class
-	methods.
-	(EXAMPLE_FILES_NODIR): Add POLYNOMIAL_FILES_NODIR here.
-	* interpreter/octave.texi: Reference new OOP chapter here.
-	* interpreter/func.txi: Document private directories and function
-	precedence here.
-
-2008-10-16  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/contrib.txi: added recommendation of limited
-	line width in code examples
-
-2008-10-03  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/contrib.txi: added example for mercurial queues
-
-08-10-03  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* interpreter/contrib.txi: correction of the mercurial example
-	* interpreter/container.txi: minor correction of the text
-
-2008-09-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/image.txi: Update for imread and imwrite instead of
-	loadimge and saveimage.
-
-2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/image.txi: Document imfinfo.
-
-2008-09-23  Francesco Potorti`  <Potorti@isti.cnr.it>.
-
-	* interpreter/container.txi: Fix cross reference in struct docs.
-
-2008-09-23  Brian Gough  <bjg@network-theory.co.uk>
-
-	* interpreter/matrix.txi: Update docs for random number generators.
-
-2008-09-22  David Bateman  <dbateman@free.fr>
-
-	* faq/Octave-FAQ.texi: Update for Octave 3.1.51 and Matlab 2008a.
-
-2008-09-15  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Minor clarificiation
-
-2008-08-28  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/func.txi, interpreter/plot.txi: Doc fixes
-	suggested by Francesco Potorti` <Potorti@isti.cnr.it>.
-
-2008-08-28  David Bateman  <dbateman@free.fr>
-
-	* interpreter/plot.txi: Add description of data sources and line
-	series objects.
-
-2008-08-26  David Bateman  <dbateman@free.fr>
-
-	* interpreter/plot.txi: Document the group objects (bar, stem,
-	stair, quiver and area series), and cllback functions.
-
-2008-08-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* interpreter/contrib.txi: New file.
-	* interpreter/octave.texi: Include it here.
-	* interpreter/Makefile.in (SUB_SOURCE): Add contrib.txi to the list.
-
-2008-08-21  David Bateman  <dbateman@free.fr>
-
-	* interpreter/plot.txi: Document ezplot.
-
-2008-08-19  David Bateman  <dbateman@free.fr>
-
-	* interpreter/numbers.txi: Document intwarning.
-
-2008-08-06  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/basics.txi, interpreter/errors.txi,
-	interpreter/expr.txi, interpreter/func.txi,
-	interpreter/numbers.txi: Update format of error messages in examples.
-
-2008-07-29  David Bateman  <dbateman@free.fr>
-
-	* interpreter/numbers.txi, interpreter/plot.txi,
-	interpreter/quad.txi: Miscellaneous documentation fixes.
-
-	* control.txi, finance.txi, quaternion.txi: Delete.
-	* octave.texi: Remove all references to the above.
-	* Makefile.in: ditto.
-
-2008-07-28  David Bateman  <dbateman@free.fr>
-
-	* interpreter/arith.txi: Document reallog, realpow and realsqrt.
-	* interpreter/dbug.txi: Document the means of setting a breakpoint
-	in a sub-function
-	* interpreter/func.txi: Document nargoutchk and symvar.
-	* interpreter/geometry.txi: Document rectint.
-	* interpreter/image.txi: Document contrast.
-	* interpreter/interp.txi: Document interp1q.
-	* interpreter/linalg.txi: Document planerot, rcond and subspace.
-	* interpreter/numbers.txi: Document data type demotion and single
-	precision data type.
-	* interpreter/plot.txi: Document ginput, gtext,
-	waitforbuttonpress, ezcontour, ezcontourf, ezpolar, ezplot3,
-	ezmesh, ezmeshc, ezsurf, ezsurfc, allchild, findobj and findall
-	functions.
-	* interpreter/quad.txi: Document quadv, quadgk, dblquad and
-	triplequad functions.
-	* interpreter/strings.txi: Document validstring, regexptranslate
-	and isstrprop functions.
-	* interpreter/system.txi: Document addtodate, filemarker and perl
-	functions.
-	* interpreter/var.txi: Document the genvarname and namelengthmax
-	functions.
-	* interpreter/octave.texi: Update table of contents for the above
-	changes.
-
-	* interpreter/plot.txi: Document contourf.
-
-	* interpreter/plot.txi: Clarify the description of OuterPosition
-	axes property.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* interpreter/debug.txi: Uodate documentation for multiline
-	input. Add documentation for dbcont, dbquit, dbstep, dbstqck, dbup
-	and dbdown functions.
-	* interpreter/octave.texi: Upodate index for debugging functions.
-
-2008-05-03  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/expr.txi, interpreter/tips.txi: Use ischar instead of
-	deprecated isstr.
-
-2008-04-02  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Document spaugment.
-
-2008-03-26  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/mkoctfile.1: Remove spurious whitespace before macros
-
-2008-03-25  David Bateman  <dbateman@free.fr>
-
-	* interpreter/strings.txi: Document hex2num, num2hex.
-
-2008-03-21  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Document amd function.
-
-2008-03-19  Michael D. Godfrey  <godfrey@isl.stanford.edu>
-
-	* interpreter/plot.txi: Reorder symbol character table.
-
-2008-03-18  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/octave.1, interpreter/mkoctfile.1:
-	Escape "-" signs that mean the "minus" character.
-
-2008-03-12  David Bateman  <dbateman@free.fr>
-
-	* interpreter/io.txi: Document dlmread, dlmwrite, csvread and
-	csvwrite.
-
-2008-02-25  Ben Abbott  <bpabbott@mac.com>
-
-	* interpreter/geometryimages.m, interpreter/interpimages.m,
-	interpreter/plotimages.m, interpreter/sparseimages.m:
-	Use cstrcat instead of strcat.
-
-2008-02-22  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Remove refernces to spdiag, spcumprod,
-	spcumsum, spprod, spsum, spsumsq, spchol, spchol2inv, spcholinv,
-	spinv and splu.
-
-2008-02-20  David Bateman  <dbateman@free.fr>
-
- 	* interpreter/sparse.txi: Remove references to spmin, spmax,
- 	spatan2, spfind, spqr and spdet.
-
-2008-02-19  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* interpreter/package.txi: Improve INDEX file documentation.
-
-2008-01-18  Ben Abbott  <bpabbott@mac.com>
-
-	* interpreter/intro.txi: Replaced reference to deprecated
-	function struct_elements with filenames.
-
-2008-02-08  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/octave.1: Dropped unknow LO macro
-	* interpreter/octave-bug.1: Likewise
-
-2008-02-07  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Remove references to spkron.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (stmp-html, HTML): New targets.
-	($(HTML_IMAGES_PNG)): Also depend on stmp-html.
-	Don't create HTML directory here.
-
-2007-12-28  John W. Eaton  <jwe@octave.org>
-
-	Merge changes from object branch:
-
-	2007-06-20  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/var.txi, interpreter/io.txi:
-	Eliminate print_answer_id_name.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-12-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (conf.texi): Also depend on $(top_srcdir)/src/version.h.
-
-2007-12-05  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/geometryimages.m (image_as_txt): New function.
-	Use it to generate "figures" for Info format.
-	* interpreter/interpimages.m: Likewise.
-	* interpreter/sparseimages.m: Likewise.
-
-2007-12-04  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/sparseimages.m, interpreter/plotimages.m,
-	interpreter/interpimages.m, interpreter/geometryimages.m:
-	Set default text font to "*" for png images.
-
-	* interpreter/Makefile.in (run-octave): Don't sleep.
-
-2007-12-04  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* interpreter/plotimages.m: Generate text plots.
-	* interpreter/sparseimages.m: Add initial blank line to text plots.
-
-	* interpreter/Makefile.in (IMAGES_TXT): Include $(INTERPIMAGES_TXT)
-	$(GEOMETRYIMAGES_TXT) and $(PLOTIMAGES_TXT) in the list.
-	(INTERPIMAGES_TXT, GEOMETRYIMAGES_TXT, PLOTIMAGES_TXT): New variables.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Document condest.
-	* interpreter/plot.txi: Document the new text properties and the
-	TeX interpreter mode of text objects.
-	* interpreter/plotimages.m: Add an example for the TeX
-	interpreter.
-	* interpreter/Makefile.in (PLOTIMAGES): Add the TeX example
-
-	* interpreter/plot.txi: Document caxis.
-	* interpreter/image.txi: Document gmap40.
-
-2007-11-12  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* interpreter/gpl.txi: Move index commands after sectioning commands.
-
-2007-11-09  David Bateman  <dbateman@free.fr>
-
-	* interpreter/plot.txi: Document the new hidden and area functions.
-
-2007-11-07  David Bateman  <dbateman@free.fr>
-
-	* interpreter/plot.txi: Document new functions.
-
-2007-10-30  David Bateman  <dbateman@free.fr>
-
-	* interpreter/dynamic.txi, interpreter/install.txi,
-	interpreter/stats.txi, interpreter/strings.txi,
-	interpreter/testfun.txi, interpreter/tips.txi:
-	Doc fixes for small book format.
-
-2007-10-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* interpreter/Makefile.in, faq/Makefile.in, liboctave/Makefile.in:
-	Use temporary renamed files instead of Don't use --output option
-	argument for texi2[dvi|pdf].  Use $(sepchar) for path element
-	separation when building TEXINPUTS.  Remove use of UNSETCOMSPEC trick.
-
-2007-10-22  Kim Hansen  <kimhanse@gmail.com>
-
-	* interpreter/munge-texi.cc: Include <cstdlib> and <cstring>.
-
-2007-10-19  David Bateman  <dbateman@free.fr>
-
-	* refcard/refcard.tex: Update for 3.0.
-
-2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/preface.txi, interpreter/basics.txi,
-	interpreter/strings.txi, interpreter/container.txi,
-	interpreter/var.txi, interpreter/expr.txi, interpreter/errors.txi,
-	interpreter/io.txi, interpreter/func.txi, interpreter/package.txi:
-	Make text fit on pages when using smallbook.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
-
-	* interpreter/dynamic.txi, interpreter/geometry.txi,
-	interpreter/package.txi, interpreter/sparse.txi,
-	interpreter/system.txi: Spelling fixes.
-
-2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* interpreter/arith.txi, interpreter/basics.txi,
-	interpreter/container.txi, interpreter/dynamic.txi,
-	interpreter/eval.txi, interpreter/expr.txi, interpreter/func.txi,
-	interpreter/geometry.txi, interpreter/intro.txi,
-	interpreter/numbers.txi, interpreter/plot.txi,
-	interpreter/poly.txi, interpreter/set.txi, interpreter/sparse.txi,
-	interpreter/stmt.txi, interpreter/strings.txi,
-	interpreter/testfun.txi, interpreter/tips.txi: Spelling fixes.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/octave.texi: Add David Bateman and S�ren Hauberg as
-	authors.
-
-2006-09-28  Henry Mollet  mollet@pacbell.net
-
-	* interpreter/func.txi: Correct results of a couple of examples.
-
-2007-09-14  John W. Eaton  <jwe@octave.org>
-
-	* faq/Makefile.in: Create single Octave-FAQ.html file instead of a
-	splitting files into HTML directory.
-
-2007-09-05  David Bateman  <dbateman@free.fr>
-
-	* interpreter/system.m: Document gzip.
-	* interpreter/container.txi: Document celldisp.
-	* interpreter/matrix.txi: Document bsxfun.
-	* interpreter/data.txi: Document typecast and swapbytes.
-	* interpreter/container.txi: Document struct2cell.
-	* interpreter/stats.txi: Document mode.
-	* interpreter/eval.txi: Document run.
-
-2007-09-01  David Bateman  <dbateman@free.fr>
-
-	* interpreter/Makefile.in: Remove stray character from
-	INTERIMAGES_PNG target.
-	* conf.texi.in: Substitute for the variable TEXINFO_QHULL
-	* interpreter/geometryimages.m: Check for the HAVE_QHULL build
-	flag before creating certain figures.
-	* interpreter/geometry.txi: Check whether TEXINFO_QHULL is set
-	before including certain figures.
-
-2007-08-31  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/nonlin.txi: Extended the example.
-
-	* interpreter/poly.txi: Sectioning and documentation.
-	* interpreter/octave.texi: Adapt to changes in poly.txi.
-
-2007-08-30  David Bateman  <dbateman@free.fr>
-
-	* interpreter/geometryimages.m: Add inpolygon example
-	* interpreter/Makefile.in (GEOMETRYIMAGES): Add inpolygon example.
-	* interpret/geometry.txi: Document inpolygon.
-
-2007-08-27  David Bateman  <dbateman@free.fr>
-
-	* interpreter/struct.txi: Remove.
-	* interpreter/containers.txi: Combine with this chapter. Add
-	examples, and section on comma separated lists. Document the
-	difference between "c(1,:) = []" and c{1,:} = []" for a cell
-	arrays.
-	* interpreter/octave.texi: Document new indexing of containers
-	section.
-
-2007-08-25  David Bateman  <dbateman@free.fr>
-
-	* interpreter/geometry.txi: Add examples and explanatory text.
-	* interpreter/octave.texi: Update indexing of geometry functions.
-	* interpreter/geometryimage.m: New script to create images for
-	geometry chapter.
-	* interpreter/Makefile.in (SCRIPT_SORCES): add geometryimages.m
-	(GEOMETRYIMAGES*): New variables.
-	(IMAGES_EPS, IMAGES_PDF, IMAGES_PNG): Add the GEOMETRYIMAGES*.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* interpreter/geometry.txi: Document new functions.
-	* interpreter/octave.texi: Update indexing of geometry items.
-
-2007-07-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (run-octave): Don't set DISPLAY.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in, faq/Makefile.in, interpreter/Makwfile.in,
-	liboctave/Makefile.in, refcard/Makefile.in:  Adjust DISTFILES
-	to allow out of tree "make dist" to work.
-
-2007-07-23  David Bateman  <dbateman@free.fr>
-
-	* interpreter/Makefile.in (SUB_SOURCE): remove bit.txi.
-	* interpreter/io.txi: Document rat and rats in new sub-section.
-	* interpreter/plot.txi: New section for test functions. Document
-	peaks and meshc.
-	* interpreter/octave.texi: Add test plotting section.
-	* interpreter/image.txi: Document the functions autumn, bone,
-	cool, copper, hot, hsv, jet, pink, prism, rainbow, spring,
-	summer, white and winter.
-
-2007-07-19  David Bateman  <dbateman@free.fr>
-
-	* interpreter/bit.xi: Remove.
-	* interpreter/numbers.txi: Move here, and add examples.
-	* interpreter/octave.texi: Remove "Bit manipulation" chapter and make
-	it a sub-section of the "Numeric Data Types" chapter.
-
-2007-07-06  David Bateman  <dbateman@free.fr>
-
-	* interpreter/arith.txi: Add accumarray.
-
-2007-06-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/stats.txi: Reorganize sections and add introductory text.
-
-	* interpreter/octave.texi: Update to reflect changes in stats.txi.
-
-2007-06-18  David Bateman  <dbateman@free.fr>
-
-	* interpreter/interpimages.m: Simpler images to demonstrate
-	the continuity of the second derivative of splines.
-	* interpreter/interp.txi: Also change figures here.
-	* interpreter/Makefile.in: and here.
-
-2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/optim.txi: Added some introductory text to each
-	section.
-
-	* interpreter/set.txi: Added some introductory text.
-	* interpreter/octave.texi: Updated to reflect changes in set.txi.
-
-2007-06-15  David Bateman  <dbateman@free.fr>
-
-	* faq/Octave-FAQ.texi: Document the gnuplot 4.2 bug using pipes.
-
-2007-06-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* interpreter/testfun.txi: Provide a clue to using xtest for assert.
-
-2007-06-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* interpreter/testfun.txi: Document xtest block
-
-2007-06-14  David Bateman  <dbateman@free.fr>
-
-	* interpreter/Makefile.in (SCRIPT_SORCES): add interimages.m
-	(INTERPIMAGES*): New variables. Add targets for them
-	(IMAGES_EPS, IMAGES_PDF, IMAGES_PNG): Add the INTERPIMAGES.
-	* interpreter/interpimages.m: New function
-	* interpreter/interp.txi: Add text about second derivation of
-	splines	and add figures.
-
-2007-06-12  David Bateman  <dbateman@free.fr>
-
-	* interpreter/numbers.txi: Document that 64-bit arithmetic is
-	not possible.
-
-2007-06-12  David Bateman  <dbateman@free.fr>
-
-	* interpreter/interp.txi: Split into two section and document
-	interp3 and the differences in the treatement of the dimensions
-	between interpn and interp3.
-	* hashing.txi: Remove.
-	* system.txi: Move it here as a subsection. Include explanation
-	and example.
-	* interpreter/octave.texi: Add sections for the Interpolation
-	chapter. Remove references to Hashing chapter and hashing.texi,
-	and subsections for hashing to system utilities chapter.
-
-2007-06-12  2007-06-10  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/diffeq.txi: Note that x-dot is the derivative of x.
-
-2007-06-03  David Bateman  <dbatemna@free.fr>
-
-	* interpreter/dynamic.txi: Use "mwSize" and "mwIndex" rather than
-	"int" for indexing in mex-files and document them.
-
-2007-05-30  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (TEXI2DVICOMMAND, TEXI2PDFCOMMAND):
-	New macros.
-	(octave-a4.pdf, octave-smallbook.pdf): New targets.
-	(FORMATTED, all): Include octave-a4.pdf in list of dependencies.
-	Delete octave.dvi and octave.ps from list.
-	(FORMATTED, all): Use $(PDF_TARGETS).
-	(maintainer-clean): Depend on clean.
-
-2007-05-30  G. D. McBain  <gdmcbain@freeshell.org>
-
-	* interpreter/expr.txi (Assignment Ops): Doc fix.
-
-2007-05-29  Steven Mestdagh  <steven.mestdagh@esat.kuleuven.be>
-
-	* interpreter/Makefile.in ($(HTML_IMAGES_PNG)): Use cp instead of
-	INSTALL_DATA to copy files to the HTML directory.
-
-2007-05-28  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/errors.txi: Add new sections and some more detailed
-	descriptions on errors and warnings.
-	* interpreter/octave.texi, interpreter/stmt.txi,
-	interpreter/var.txi: Add references to the new sections in
-	errors.txi.
-
-2007-05-28  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/io.txi: Rearrange some sections, and add
-	a few examples.
-
-2007-05-28  G. D. McBain  <geordie_mcbain@yahoo.com.au>
-
-	* interpreter/struct.txi: Doc fix.
-
-2007-05-23  John W. Eaton  <jwe@octave.org>
-
-	* liboctave/Makefile.in (TEXINFO_SOURCE): New variable.
-	(TEXINFO): Define using $(TEXINFO_SOURCE).
-	(DISTFILES): Include $(TEXINFO_SOURCE) in the list, not $(TEXINFO).
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (TEXINFO_SOURCE): New variable.
-	(TEXINFO): Define using $(TEXINFO_SOURCE).
-	(DISTFILES): Include $(TEXINFO_SOURCE) in the list, not $(TEXINFO).
-
-2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* faq/Octave-FAQ.texi, interpreter/basics.txi,
-	refcard/refcard.tex: Fix typos.
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (DISTFILES): Add mkcontrib.awk to the list.
-
-2007-05-21  David Bateman  <dbatemna@free.fr>
-
-	* interpreter/debug.txi, io.txi, octave.txi: Doc fixes.
-
-2007-05-21  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/expr.txi: Describe +=, -=, *=, and /= operators.
-	Add new example.
-
-	* interpreter/eval.txi: Partition the chapter into sections.
-	Describe evalin and assignin functions using text from Paul
-	Kienzle.  Change "See See" to "See".  Use @ref instead of @xref to
-	avoid "See" to be written with a capital letter in the middle of a
-	sentence.
-
-	* interpreter/func.txi: New section describing load path.
-	Improve 'inline' and 'command' sections.
-
-	* interpreter/stmt.txi: Describe cell array cases for the switch
-	statement.  Minor layout changes.
-
-2007-05-19  David Bateman  <dbatemna@free.fr>
-
-	* interpreter/func.txi: Additional documentation for function
-	locking, dispatch and autoloading.
-
-2007-05-16  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/expr.txi: Improve docs.
-
-2007-05-14  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/basics.txi, interpreter/data.txi,
-	interpreter/intro.txi, interpreter/numbers.txi,
-	interpreter/octave.texi, interpreter/preface.txi: Doc fixes.
-
-2007-04-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/package.texi: Document "*" flag for loaded packages.
-
-	* interpreter.var.txi: Improve explanation of clear, exist, and who.
-
-	* interpreter/intro.txi: Change @unnumberedsubsec to @subsection.
-
-	* interpreter/container.txi: Doc fix.
-
-	* interpreter/strings.txi: Improve explanation for creating
-	comparing, and converting strings.
-	* interpreter/octave.texi: Update detailed menu.
-
-2007-05-09  David Bateman  <dbateman@free.fr>
-
-	* faq/Octave-FAQ.texi: Update compatibility section.
-
-2007-04-27  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (EXAMPLE_FILES_NODIR): Add mycell.c, myfeval.c,
-	myfunc.c, mypow2.c, mysparse.c, mystring.c, mystruct.c and
-	paramdemo.cc.
-	* interpreter.txi/dynamic.txi: Complete all but the section on
-	the mex- and oct-file APIs.
-
-2007-04-26  David Bateman  <dbateman@free.fr>
-
-	* interpreter/stmt.txi: Document for loops over matrices, arrays
-	and cell arrays.
-
-2007-04-25  David Bateman  <dbateman@free.fr>
-
-	* interpreter/dynamic.txi: Add additional copyrights. Add sections
-	of input parameter checking, documentation and testing of
-	oct-files. Adds a section on calling other functions from
-	mex-files, expands the basic information on mex-files, and add a
-	few new sections (to be completed) to the section about mex-files
-
-2007-04-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/dynamic.txi: Use abs_top_srcdir to find example files.
-
-2007-04-25  David Bateman  <dbateman@free.fr>
-
-	* conf.texi.in: Also set abs_top_srcdir with substitution.
-	* Makefile.in: Substitute abs_top_srcdir here.
-
-2007-04-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/dynamic.txi: Use @verbatiminclude for example code.
-
-	* interpreter/Makefile.in (EXAMPLE_FILES_NODIR, EXAMPLE_FILES):
-	New variables.
-	(octave.info, octave.dvi, octave.pdf, HTML/index.html):
-	Depend on $(EXAMPLE_FILES).
-
-	* conf.texi.in: Also set top_srcdir with substitution.
-
-	* interpreter/tips.txi: Update with new text and examples.
-	Move documentation section to the end.
-
-2007-04-24  David Bateman  <dbateman@free.fr>
-
-	* interpreter/octave.texi: Include dynamic.texi as appendix and
-	update menus.
-
-	* interpreter/plot.txi: Update menus.
-
-	* interpreter/strings.txi: @result -> @result{}.
-
-	* intrepreter/func.txi, intrepreter/sparse.txi:
-	Delete .oct file section and update menus.
-
-	* interpreter/addtwomatrices.cc, interpreter/celldemo.cc,
-	interpreter/fortdemo.cc, interpreter/funcdemo.cc,
-	interpreter/globaldemo.cc, interpreter/helloworld.cc,
-	interpreter/stringdemo.cc, interpreter/structdemo.cc,
-	interpreter/unwinddemo.cc, interpreter/fortsub.f,
-	interpreter/dynamic.txi: New files.
-
-	* Makefile.in (SUB_SOURCE): Include dynamic.txi in the list.
-
-2007-04-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/package.texi: New file.
-	* octave/texi: @include it, add it to the menus.
-
-2007-04-18  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/contributors.in: New file.
-	* interpreter/Makefile.in (contributors.texi): New target.
-	(clean): Also deleete contributors.texi
-	(TEXINFO): Include contributors.texi in the list.
-	(preface.texi): @include contributors.texi.
-
-2007-04-17  David Bateman  <dbateman@free.fr>
-
-	* interpreter/linalg.txi (Techniques used for Linear Algebra):
-	New node.
-	* interpreter/octave.texi: Include it in menu.
-	* interpreter/sparse.txi: Delete discusion of matrix_type.
-
-2007-04-16  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/stream.txi: Delete.
-	* interpreter/Makefile.in (SUB_SOURCE): Remove it from the list.
-
-2007-04-16  S�ren Hauberg  <hauberg@gmail.com>
-
-	* intrepreter/stmt.txi: Improve documentation of switch statement.
-
-	* interpreter/tips.txi: Update description of how copyright
-	statements are recognized.
-
-	* interpreter/octave.texi: Don't include stream.texi.
-	Remove menu entry for I/O streams.
-
-	* interpreter/image.txi: Update docs.
-
-2007-04-11  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/container.txi: Document indexing with ().
-
-2007-04-11  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/container.txi: Improve cell array documentation.
-
-2007-04-09  S�ren Hauberg  <hauberg@gmail.com>
-
-	* interpreter/func.txi: Document varargin, varargout, and default
-	argument values.
-
-2007-04-03  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/basics.txi: Clarified some limitations of the #!
-	script mechanism, in particular related to the parsing of the
-	arguments.
-
-2007-03-29  Rafael Laboissiere  <rafael@debian.org>
-
-	* faq/Octave-FAQ.texi, interpreter/basics.txi,
-	interpreter/emacs.txi, interpreter/func.tx, interpreter/var.txi:
-	Make it clear that the old built-in LOADPATH is an internal
-	variable, accessible through path ().
-	Drop references to DEFAULT_LOADPATH.
-	Chang references to the old built-in variables INFO_FILE and
-	INFO_PROGRAM to the respective fucntions info_file and
-	info_program.
-	* refcard/refcard.tex: Drop LOADPATH from list of built-in variables.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in, interpreter/Makefile.in, faq/Makefile.in,
-	liboctave/Makefile.in, refcard/Makefile.in (dist):
-	Use ln instead of $(LN_S).
-
-2007-03-21  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* interpreter/sparse.txi: Delete repeated word.
-
-2007-03-20  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* interpreter/sparse.txi: Clarify sparse matrix creation example.
-
-2007-03-14  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* interpreter/sparse.txi: Fix typo.
-
-2007-02-26  From Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in, interpreter/Makefile.in, faq/Makefile.in,
-	liboctave/Makefile.in, refcard/Makefile.in:
-	Use $(LN_S) instead of ln or ln -s.
-
-2007-02-21  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Add functions sprank and normest to
-	documentation.
-
-2007-01-25  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/sparseimages.m: Don't call __gnuplot_x__ functions.
-
-2006-11-17  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/sparseimages.m: Fix call to __plt3__.
-
-2006-11-16  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/sparseimages.m (femimages): Use plot3.
-
-2006-11-11  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (%.texi : %.txi):
-	Use $(simple-move-if-change-rule) here.
-
-2006-10-29  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (run-octave): Call it here.
-	* interpreter/sparseimages.m (sparseimages): Don't call sleep here.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (run-octave):
-	Unset DISPLAY while running Octave.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-	* interpreter/Makefile.in (octave.dvi, octave.pdf):
-	Use $(UNSETCOMSPEC) in command.
-	* faq/Makefile.in (Octave-FAQ.dvi, Octave-FAQ.pdf): Likewise.
-	* liboctave/Makefile.in (liboctave.dvi, liboctave.pdf): Likewise.
-
-2006-10-09  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* interpreter/sparseimages.m: Plot sombrero images if sparse
-	capabilities are missing.
-
-2006-10-04  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (HTML_IMAGES_PNG): New variable.
-	(HTML/index.html): Depend on $(HTML_IMAGES_PNG) instead of html-figs.
-	($(HTML_IMAGES_PNG): HTML/%.png : %.png): New pattern rule.
-	(html-dir): Delete target.
-
-2006-10-03  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/mkoctfile.1: Fix indentation for --mex description.
-
-2006-09-26  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in (stamp-images): Delete.
-	(octave.info): Depend on $(IMAGES_TXT), not stamp-images.
-	(octave.dvi): Depend on $(IMAGES_EPS), not stamp-images.
-	(octave.pdf): Depend on $(IMAGES_PDF), not stamp-images.
-	(html-figs): Depend on $(IMAGES_PNG), not stamp-images.
-	(SCRIPT_SOURCES, SPARSEIMAGES_1, SPARSEIMAGES_EPS,
-	SPARSEIMAGES_PDF, SPARSEIMAGES_PNG, SPARSE_IMAGES_TXT, IMAGES_EPS,
-	IMAGES_PDF, IMAGES_PNG, IMAGES_TXT, and IMAGES): New variables.
-	(SOURCES): Include $(SCRIPT_SOURCES) in the list.
-	(DISTFILES): Include $(IMAGES) in the list.
-	(maintainer-clean): Delete $(IMAGES) here.
-	(DISTSUBDIRS, SUBDIRS): Remove $(IMAGEDIR) from list.
-	(octave.dvi, octave.info, octave.pdf, HTML/index.html):
-	Don't include $(IMAGEDIR) in list of directories to search
-	* sparseimages.m: Move here from images/sparseimages.m.
-	* images/Makefile.in: Delete.
-	* images: Delete directory.
-
-2006-08-24  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images/Makefile.in (SPARSEIMAGES_PDF): New macro.
-	Keep PDF images out of IMAGES list.
-
-2006-08-18  John W. Eaton  <jwe@octave.org>
-
-	* conf.texi.in: Eliminate TARGETHOSTTYPE variable.
-
-2006-08-17  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images/Makefile.in (%.pdf : %eps):
-	Use $(GHOSTSCRIPT) instead of gs.
-
-2006-08-14  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
-
-	* interpreter/images/sparseimages.m: Adapt to new automatic_replot
-	definition.
-
-2006-06-27  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/Makefile.in: Elminate double-colon rules.
-
-2006-05-31  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images/Makefile.in (run-octave):
-	Use $(TOPDIR)/run-octave script to execute Octave.
-	(OCTAVE_BINARY, OCTAVE_SCRIPT_PATH, OCTAVE_LD_LIBRARY_PATH,
-	XLD_LIBRARY_PATH, SET_LD_LIBRARY_PATH): Delete variables.
-
-2006-04-06  Keith Goodman  <kwgoodman@gmail.com>
-
-	* interpreter/mkoctfile.1: Doc string fix.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* interpreter/matrix.txi: Add rande, randp, randg and update
-	for different random generator behavior.
-
-2006-03-28  John W. Eaton  <jwe@octave.org>
-
-	* texinfo.tex: Update FSF address.
-
-2006-03-27  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images/sparseimages.m: Fix missing endif.  Omit
-	unnecessary call to axis.
-
-2006-03-24  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/images/sparseimages.m:
-	Avoid some unnecessary calculations.
-
-2006-03-22  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/sparse.txi: Undo previous change.
-	Always use @image to include image files.
-	* interpreter/Makefile.in: Eliminate stamp files.
-	(clean, mostlyclean, distclean, maintainer-clean): Now
-	double-colon targets.
-	(stamp-images): New target.
-	(octave.info, octave.dvi, octave.pdf, HTML/index.html): Depend on it.
-	* interpreter/images/Makefile.in: Explicitly list images to be
-	created and their dependencies.
-	* interpreter/images/sparseimages.m (sparseimage): Delete dirc arg.
-	Sleep for 1 second before returning.
-	(txtimages): Also create gplot.txt and grid.txt.
-	(sparseimages): Don't redirect output here.
-	New arg, nm.  Only output a single figure at a time.
-	(bury_output): New function.  Use it before plotting commands and
-	after every print function.
-	* Makefile.in (conf.texi): New target.
-	(DISTFILES): Include conf.texi in the list.
-	(all, dist): Depend on conf.texi.
-	* conf.texi.in: Values come from Makeconf, not configure.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* liboctave/Makefile.in (FORMATTED): Omit .html files here.
-	(DISTDIRS): New variable.
-	(dist): Handle $(DISTDIRS) here.
-
-	* faq/Makefile.in (FORMATTED): Omit .html files here.
-	(DISTDIRS): New variable.
-	(dist): Handle $(DISTDIRS) here.
-
-	* interpreter/Makefile.in (FORMATTED): Omit .html files here.
-	(DISTDIRS): New variable.
-	(dist): Handle $(DISTDIRS) here.
-
-	* interpreter/sparse.txi: Temporarily omit figures.
-	* interpreter/Makefile.in: Temporarily omit actions for making figures.
-	(DISTSUBDIRS): New macro.
-	(dist): Recurse into $(DISTSUBDIRS) here.
-
-	* interpreter/Makefile.in (real-pdf): Depend on stamp-eps
-	(stamp-pdf): Depend on real-pdf.  Touch stamp-pdf here.
-	(real-pdf): Not here.
-
-2006-03-16  David Bateman  <dbateman@free.fr>
-
-	* interpreter/images/sparseimages.m: set terminal type to dummy to
-	direct output to terminal rather than X11.
-	* interpreter/sparse.txi: Update docs for new QR solvers.
-
-2006-03-09  David Bateman  <dbateman@free.fr>
-
-	* interpreter/Makefile.in: Change order of commands in HTML/index.html
-	target. Respawn make for stamp-pdf target so that $(wildcard *.eps) is
-	reinterpreted.
-	* interpreter/sparse.txi: Isolate conditionally built targets in
-	"@ifset ... @end ifset".
-
-2006-03-08  David Bateman  <dbateman@free.fr>
-
-	* conf.texi: Remove.
-	* conf.texi.in: New file, for autoconf'ed version of conf.texi.
-	* Makefile.in: replace conf.texi with conf.texi.in in DISTFILES
-	* interpreter/Makefile.in: build in subdir IMAGEDIR, add stamps for
-	image files. Copy png-files to HTML directory. Build pdf files from
-	eps files using epsffit, gs, grep, basename, head and awk.
-	* octave.texi: Update sparse sub-sections.
-	* sparse.txi: Updates for current state of sparse code.
-	* interpreter/images/Makefile.in: New file.
-	* interpreter/images/sparseimages.m: New file to build sparse images.
-
-2006-03-07  David Bateman  <dbateman@free.fr>
-
-	* liboctave/dae.texi, liboctave/factor.texi, liboctave/nleqn.texi,
-	liboctave/quad.texi, liboctave/matvec.texi, liboctave/nlfunc.texi,
-	liboctave/diffeq.texi, liboctave/array.texi, liboctave/range.texi,
-	liboctave/optim.texi: Fix some syntax problems for texinfo.tex 4.8.
-
-2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
-
-	* interpreter/octave.texi (@seealso): Display args instead of
-	discarding them.
-
-2006-03-02  John W. Eaton  <jwe@octave.org>
-
-	* faq/Makefile.in (Octave-FAQ.ps): Depend on Octave-FAQ.dvi, not
-	$(TEXINFO).
-
-	* texinfo.tex: Update to 2004-11-25.16 version from Texinfo 4.8.
-
-2005-12-14  David Bateman  <dbateman@free.fr>
-
-	* interpreter/testfun.txi: New test/demo documentation.
-	* interpreter/strings.txi: Include regexp/regexi docstrings.
-	* interpreter/octave.texi: Include test/demo appendix.
-	* interpreter/Makefile.in (SUB_SOURCE): Include test.txi.
-
-2005-12-13  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Add new gplot, etreeplot and treeplot
-	functions.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* liboctave/Makefile.in (maintainer-clean): Also remove liboctave.pdf
-	* faq/Makefile.in (maintainer-clean): Also remove Octave-FAQ.pdf.
-	From Quentin Spencer <qspencer@ieee.org>.
-
-2005-10-23  David Bateman  <dbateman@free.fr>
-
-	* sparse.txi: Updates for new ufsparse licensing, new functions and
-	various typos.
-
-2005-09-19  Rafael Laboissiere  <rafael@debian.org>
-
-	* interpreter/octave-config.1: Use bold instead of italics to
-	markup command name.
-
-2005-07-29  John W. Eaton  <jwe@octave.org>
-
-	* faq/Makefile.in (HTML/index.html): Pass --ifinfo to makeinfo.
-	* interpreter/Makefile.in (HTML/index.html): Likewise.
-	* liboctave/Makefile.in (HTML/index.html): Likewise.
-
-2005-07-28  John W. Eaton  <jwe@octave.org>
-
-	* faq/Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in:
-	Use makeinfo instead of texi2html to generate HTML.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* interpreter/munge-texi.cc (skip_comments): New function.
-	(process_doc_file): Use it to skip comments at beginning of file.
-
-2005-04-29  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Add matrix_type, spkron, and document
-	changes in solve code.
-
-2005-03-14  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: Add luinc function.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (bin-dist): Delete target.
-	(BINDISTSUBDIRS): Delete variable.
-
-	* refcard/Makefile.in (bin-dist): Delete target.
-	(BINDISTFILES): Delete variable.
-	* liboctave/Makefile.in: Likewise.
-	* interpreter/Makefile.in: Likewise.
-	* faq/Makefile.in: Likewise.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	Sparse merge.
-
-	2005-01-07  David Bateman  <dbateman@free.fr>
-
-	* interpreter/sparse.txi: New file.
-	* interpreter/Makefile.in: Add it to the build.
-	* interpreter/octave.texi: Include it in the contents tables and the
-	top level document.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	* liboctave/Makefile.in (all): Also depend on Octave-FAQ.pdf.
-	Use $(MAKEINFO) instead of makeinfo in rules.
-
-2005-02-25  Rafael Laboissiere  <rafael@debian.org>
-
-	* liboctave/Makefile.in (Octave-FAQ.pdf): New target and rule.
-	(FORMATTED): Add Octave-FAQ.pdf to the list.
-
-2005-02-21  John W. Eaton  <jwe@octave.org>
-
-	* liboctave/Makefile.in (liboctave.pdf): New target and rule.
-	(FORMATTED): Add liboctave.pdf to the list.
-	(all): Also depend on liboctave.pdf.
-	Use $(MAKEINFO) instead of makeinfo in rules.
-
-	* interpreter/Makefile.in (octave.pdf): New target and rule.
-	(FORMATTED): Add octave.pdf to the list.
-	(all): Also depend on octave.pdf.
-	Use $(MAKEINFO) instead of makeinfo in rules.
-
-2005-02-08  Quentin Spencer  <qspencer@ieee.org>
-
-	* interpreter/plot.txi: Emphasize compatible plotting functions
-	over gplot and friends.
-
-2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* liboctave/Makefile.in (FORMATTED): Use liboctave*.html instead
-	of liboctave_*.html.
-
-	* faq/Makefile.in (FORMATTED): Use Octave-FAQ*.html instead of
-	Octave-FAQ_*.html.
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* faq/Makefile.in (maintainer-clean): Remove Octave-FAQ*.html
-	instead of just Octave-FAQ_*.html.
-
-	* liboctave/Makefile.in (maintainer-clean): Remove liboctave*.html
-	instead of just liboctave_*.html.
-
-	* refcard/Makefile.in (maintainer-clean): Remove refcard-*.pdf.
-
-2003-12-09  Eric S. Raymond  <esr@thyrsus.com>
-
-	* interpreter/mkoctfile.1: Use .I instead of .f for markup of ".oct".
-
-2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc (process_texi_input_file):
-	Avoid -Wshadow warnings.
-
-2003-08-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* refcard/Makefile.in (refcard-a4.pdf, refcard-legal.pdf,
-	refcard-letter.pdf): New targets.
-	(FORMATTED): Add them to the list.
-	* refcard/refcard.tex: Optionally set pdf paper size parameters.
-
-2003-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (octave_toc.html): Add "-I ." to texinfo
-	command line args.
-
-2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* faq/Makefile.in (FORMATTED): Include all Octave-FAQ_*.html files
-	here, not just the toc.
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in, liboctave/Makefile.in: Handle DESTDIR.
-
-2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (MAN_BASE): Add octave-config.1 to the list.
-
-2003-02-19  Dirk Eddelbuettel  <edd@debian.org>
-
-	* octave-config.1: New file.
-
-2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* interpreter/Makefile.in (munge-texi$(BUILD_EXEEXT)): Pass
-	$(BUILD_CXXFLAGS) and $(BUILD_LDFLAGS) to compiler.
-	(%.o : %.cc): Delete pattern rule.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc: Define __USE_STD_IOSTREAM if using
-	Compaq C++.
-
-2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (%.o : %.c): No longer need
-	-DNO_PRAGMA_INTERFACE_IMPLEMENTATION=1 compiler option.
-	(munge-texi#(BUILD_EXEEXT)): Likewise.
-	Don't link to Map-s.o.
-
-	* interpreter/Map-s.cc: Delete.
-	* interpreter/Makefile.in (DISTFILES): Delete it from the list.
-	(mostlyclean, clean): Don't delete Map-s.o.
-
-	* interpreter/munge-texi.cc: Require working STL.
-
-2002-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (maintainer-clean): Depend on
-	clean-texi, don't remove $(TEXINFO).
-
-2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc: Use STL map class by default, but
-	make it easy to revert back to libg++-based Map class if that
-	fails to work on some systems.
-
-2002-11-01  Dirk Eddelbuettel  <edd@debian.org>
-
-	* interpreter/Makefile.in (MAN_BASE, MAN_SRC): New variables, use
-	as appropriate.
-
-2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
- 	* interpreter/mkoctfile.1: New file.
-
-2002-10-25  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* interpreter/Makefile.in (octave_toc.html): Use -expandinfo and
-	-split_chapter instead of -expand info and -split chapter.
-	* liboctave/Makefile.in (liboctave_toc.html): Likewisel
-	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
-
-2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (munge-texi$(BUILD_EXEEXT)): Always use
-	-DNO_PRAGMA_INTERFACE_IMPLEMENTATION for compiling and linking.
-
-2002-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (%.texi : %.txi):
-	Use $(top_srcdir)/move-if-change.
-
-2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in: Use $(BUILD_EXEEXT) as appropriate.
-
-2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (munge-texi, %.o : %.cc):
-	Use $(BUILD_CXX), not $(CXX).
-	(src-DOCSTRINGS, scripts-DOCSTRINGS): New targets.
-	($(TEXIFNO)): Depend on them.
-	(DOCSTRINGS): Delete variable.
-
-2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (%.spell): Use $(SED), not sed.
-	* liboctave/Makefile.in (%.spell): Likewise.
-	* faq/Makefile.in (%.spell): Likewise.
-
-2001-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (octave_toc.html): Use -expand info and
-	-split chapter, to be consistent.
-	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
-	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
-
-2001-11-14  Christoph Spiel  <cspiel@hammersmith-consulting.com>
-
-	* faq/Makefile.in (Octave-FAQ_toc.html): Use -expandinfo and
-	-split_chapter, not -expand info and -split chapter.
-	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
-
-2001-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (MAIN_TEXINFO): Look in $(srcdir).
-	(octave_toc.html): Use -expandinfo and -split_chapter, not
-	-expand info and -split chapter.
-
-2001-03-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* liboctave/Makefile.in (liboctave_toc.html): Use -expand info and
-	-split chapter instead of -expandinfo and -split_chapter options
-	for texi2html.
-	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
-	* interpreter/Makefile.in (octave_toc.html): Likewise.
-
-2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* liboctave/Makefile.in (liboctave_toc.html): Add space after -I
-	in texi2html command.
-	* interpreter/Makefile.in (octave_toc.html): Ditto.
-
-2000-03-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/octave-bug.1: New file.
-	* interpreter/Makefile.in (install install-strip): Install it.
-	(DISTFILES, BINDISTFILES): Add it to the
-
-2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (clean): Also delete munge-texi,
-	munge-texi.o, and Map-s.o.
-
-2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc: Sprinkle with std:: qualifier.
-
-2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (clean-texi): Avoid removing octave.texi.
-
-2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in: Don't generate octave.texi from octave.txi.
-	* interpreter/octave.texi: Rename from octave.txi.
-
-	* interpreter/munge-texi.cc (process_texi_input_file): Undo
-	previous change, since % doesn't work as a comment character after
-	texinfo.tex is included.
-
-2000-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* texinfo.tex: Update to version from texinfo-4.0.
-
-	* interpreter/munge-texi.cc (process_texi_input_file): For Texinfo
-	doc strings, automatically insert an @anchor{doc-SYMBOL} command
-	just before the docstring for SYMBOL.
-
-1999-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc (process_texi_input_file): Begin
-	transformed files with `% DO NOT EDIT' instead of `@c DO NOT EDIT'
-	to prevent problems with TeX not knowing the definition of @c
-	before it is used.
-
-1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (%.texi : %.txi): Suppress command echo.
-
-1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (dist): Remove .texi files first, so
-	they will have timestamps newer than the $(DOCSTRINGS) files.
-	(%.texi : %.txi): Use mv instead of move-if-change.
-
-	* interpreter/Map-s.cc: New file.
-	* interpreter/munge-texi.cc: Use old libg++ Map class instead of
-	STL map, for the benefit of systems that have assemblers that
-	can't handle the long symbol names generated by g++ for
-	map<string,string>.
-
-1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/munge-texi.cc: Strip the "-*- texinfo -*-" marker
-	when including help text.
-
-	* interpreter/Makefile.in ($(TEXINFO)): Depend on $(DOCSTRINGS).
-	($(DOCSTRINGS)): New rule.
-
-	* Makefile.in (dist, bin-dist): Use `$(MAKE) -C dir' instead of
-	`cd dir; $(MAKE); cd ..'.
-	(../BUGS, ../INSTALL.OCTAVE, $(SUBDIRS)) Likewise.
-
-	* interpreter/*.txi: Rename from *.txi.
-	* interpreter/munge-texi.cc: New file.
-	* interpreter/Makefile.in: Use it to create .texi files from .txi
-	files and DOCSTRING files.
-
-Fri Jun 18 23:17:02 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (octave_toc.html): Add -expandinfo to
-	tex12html options.
-	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
-	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
-
-Fri Oct  9 00:27:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* faq/Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in:
-	New rules for generating HTML files from Texinfo sources.
-
-Thu May 14 21:04:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (../../BUGS, ../../INSTALL): Add
-	--no-validate to makeinfo args.
-
-Wed Jul  2 16:41:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* refcard/Makefile.in: Remove .tex files from binary distributions.
-
-	* interpreter/Makefile.in: Add DVI and Postscript files to binary
-	distributions.
-
-Fri Apr 18 02:51:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* faq/Octave-FAQ.texi: Rename from faq/FAQ.texi.
-	* faq/Makefile.in: Fix names to match.
-
-Wed Mar 12 17:01:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): New target.
-	* faq/Makefile.in: Ditto.
-	* interpreter/Makefile.in: Ditto.
-	* liboctave/Makefile.in: Ditto.
-	* refcard/Makefile.in: Ditto.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Fri Feb 28 20:53:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* texinfo.tex: Update to latest version from Karl Berry, and apply
-	previous patch too.
-
-Thu Feb 27 03:34:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* texinfo.tex (\codeunder): Maybe make it work for @var{} inside
-	@code{}.
-
-Wed Feb 26 12:03:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* refcard/Makefile.in (mostlyclean clean): Delete log files.
-
-	* liboctave/Makefile.in (mostlyclean clean): Delete more stuff.
-
-	* faq/Makefile.in (mostlyclean clean): Delete some stuff.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTFILES): Distribute conf.texi, not conf.texi.in.
-
-	* liboctave/Makefile.in: Don't make or distribute conf.texi.
-	(liboctave.info, liboctave.dvi): Depend on ../conf.texi, not conf.texi.
-
-	* interpreter/Makefile.in: Don't create or distribute conf.texi.
-	(octave.info, octave.dvi): Depend on ../conf.texi, not conf.texi.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.3 released.
-
-Wed Jan 29 11:49:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (../INSTALL.OCTAVE, ../BUGS): Declare these to be
-	.PHONY so that we will always check the interpreter makefile to
-	get the proper dependencies.
-
-Mon Jan 27 15:52:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-Sun Jan 26 22:07:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in: Make BUGS file directly from bugs.texi.
-	* interpreter/bugs.texi: Incorporate bugs1.texi directly.
-	* interpreter/bugs1.texi: Delete.
-
-	* interpreter/Makefile.in: Make INSTALL file directly from
-	install.texi.
-	* interpreter/install.texi: Incorporate install1.texi directly.
-	* interpreter/install1.texi: Delete.
-
-Sat Jan 25 22:32:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in,
-	faq/Makefile.in, refcard/Makefile.in (bin-dist): New target.
-
-Tue Jan  7 00:17:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Tue Dec 10 01:43:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-Fri Dec  6 15:23:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.94.
-
-Wed Nov 20 01:00:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.93.
-
-Thu Nov 14 00:07:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* faq/Makefile.in (FAQ.dvi): Use $(TEXI2DVI), not just texi2dvi.
-	* interpreter/Makefile.in (octave.dvi): Likewise.
-	* liboctave/Makefile.in (liboctave.dvi): Likewise.
-
-	* Version 1.92.
-
-Thu Nov  7 12:43:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.91.
-
-	* texinfo.tex: Update to version from texinfo-3.9 distribution.
-
-Wed Oct 30 17:20:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-Sat Oct 12 13:38:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (maintainer-clean): Don't depend on distclean.
-
-Sat Jun 15 23:01:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in (TEXINFO): Add audio.texi and emacs.texi.
-
-Fri May 17 03:02:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* interpreter/Makefile.in: Use man1dir instead of mandir, and
-	man1ext instead of manext.
-
-Sat Mar 23 05:01:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* liboctave/Makefile.in (TEXINFO): Don't list conf.texi and
-	gpl.texi here.
-
-	* liboctave/Makefile.in (dist targets): Fix ln command.
-	* refcard/Makefile.in (dist targets): Likewise.
-	* interpreter/Makefile.in (dist targets): Likewise.
-	* faq/Makefile.in (dist targets): Likewise.
-
-Fri Mar 22 23:57:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* liboctave/Makefile.in (DISTFILES): Add gpl.texi.
-	* interpreter/Makefile.in (DISTFILES): Add gpl.texi.
-	* Makefile.in (DISTFILES): Delete gpl.texi.
-
-Sun Mar  3 11:33:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Split docs into faq, interpreter, liboctave, and refcard
-	subdirectories.
-
-Wed Sep 20 00:47:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkinstalldirs: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-	* Makefile.in (maintainer-clean): Delete .dvi, .ps, and .info
-	files here.
-	(clean): Not here.
-	(mostlyclean): Make this the same as clean.
-
-Tue Sep 19 03:18:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (../BUGS, ../INSTALL.OCTAVE): Specify output file to
-	makeinfo with --output option.
-
-Thu Sep 14 20:31:47 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Don't fail if makeinfo, tex, or dvips fail.
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/OLD-ChangeLogs/libcruft-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1908 +0,0 @@
-2011-03-24  Jarno Rajahalme  <jarno.rajahalme@gmail.com>
-
-	* misc/blaswrap.c: New file.
-	* misc/module.mk (EXTRA_DIST): Add it to the list.
-
-2011-01-31  Rik  <octave@nomad.inbox5.com>
-
-	* arpack/src/dseupd.f, arpack/src/sseupd.f: Change GOTO target
-	to eliminate warning about landing on end if.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* arpack/module.mk (EXTRA_DIST): Include arpack/module.mk in the
-	list.  Remove arpack/src/module.mk and arpacck/util/module.mk
-	from the list.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* arpack/LICENSE: Update to current version from
-	http://www.caam.rice.edu/software/ARPACK.
-	* arpack/ARPACK-license-question.email: Delete as it no longer
-	applies to the current license terms.
-	* arpack/RiceBSD.txt: Delete.
-	* arpack/module.mk: Update for license changes.
-	Add arpack/ prefix to doc files in list.
-
-2011-01-28  David Bateman  <dbateman@free.fr>
-
-	* arpack/src/cneupd.f (cneupd): Restore value of nconv if ctrsen
-	returns a smaller value.
-	* arpack/src/dneupd.f (dneupd): Likewise, for dtrsen.
-	* arpack/src/sneupd.f (sneupd): Likewise, for strsen.
-	* arpack/src/zneupd.f (zneupd): Likewise, for ztrsen.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* arpack/util/second.f (ARSCND): Declare ETIME INTRINSIC, not EXTERNAL.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* arpack: New directory.
-	* Makefile.am: Include arpack/module.mk.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* mkf77def.in: Strip trailing whitespace.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* misc/cquit.c, misc/f77-fcn.h, misc/quit.cc: Strip trailing
-	whitespace.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2010-09-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/cconv2.f, blas-xtra/csconv2.f, blas-xtra/dconv2.f,
-	blas-xtra/sconv2.f, blas-xtra/zconv2.f, blas-xtra/zdconv2.f:
-	Fix inner convolution formula.
-
-2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lapack-xtra/zrsf2csf.f, lapack-xtra/crsf2csf.f: New sources.
-	* lapack-xtra/module.mk: Add them.
-
-2010-05-04  John W. Eaton  <jwe@octave.org>
-
-	* villad/dfopr.f, villad/dif.f, villad/intrp.f, villad/jcobi.f,
-	villad/radau.f, villad/vilerr.f, villad/module.mk: Delete.
-	* Makefile.am: Don't include villad/module.mk.
-
-2010-04-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/cmatm3.f, blas-xtra/zmatm3.f,
-	blas-xtra/dmatm3.f, blas-xtra/xsdot.f: Fix typos. Add missing
-	decls.
-
-2010-03-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (libcruft_la_LIBADD): Include ../libgnu/libgnu.la
-	in the list.  From Marco Atzeri <marco_atzeri@yahoo.it>.
-
-2010-03-15  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (libcruft_la_CPPFLAGS): Append $(AM_CPPFLAGS).
-
-2010-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/cconv2.f, blas-xtra/csconv2.f, blas-xtra/dconv2.f,
-	blas-xtra/sconv2.f, blas-xtra/zconv2.f, blas-xtra/zdconv2.f:
-	New sources.
-	* blas-xtra/module.mk: Add them here.
-
-2010-03-02  John W. Eaton  <jwe@octave.org>
-
-	* misc/cquit.c (octave_restore_signal_mask): Assume we have
-	POSIX signal handling.
-
-2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* misc/lo-error.c (liboctave_fatal_with_id,
-	set_liboctave_error_with_id_handler): New functions.
-	(current_liboctave_error_with_id_handler): New variable.
-	* misc/lo-error.h: Declare them.
-	(liboctave_error_with_id_handler): New typedef.
-
-2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* misc/quit.h: Define WIN32_LEAN_AND_MEAN and don't #undef min/max.
-
-	* Makefile.am: Add -bindir option to libcruft_la_LDFLAGS.
-
-2010-02-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (libcruft_la_LIBADD): Include libranlib.la in the list.
-	(noinst_LTLIBRARIES, libranlib_la_SOURCES, libranlib_la_DEPENDENCIES,
-	libcruft_la_FFLAGS): New variables.
-	(ranlib.def): New target.
-	(DISTCLEANFILES): Also remove ranlib.def.
-	* ranlib/module.mk (libranlib_la_SOURCES): Rename from
-	libcruft_la_SOURCES.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* misc/quit.cc: Untabify.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (EXTRA_DIST): Remove STOP.patch from the list.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* misc/quit.h: Define inline-function variant of OCTAVE_QUIT in C++
-	mode.
-
-2009-01-13  Rik  <octave@nomad.inbox5.com>
-
-	* STOP.patch: Remove unmaintained patch for Fortran code
-
-2009-01-13  Rik  <octave@nomad.inbox5.com>
-
-	* ranlib/advnst.f ranlib/genbet.f ranlib/genchi.f ranlib/genexp.f
-	ranlib/genf.f ranlib/gengam.f ranlib/genmul.f ranlib/gennch.f
-	ranlib/gennf.f ranlib/gennor.f ranlib/genunf.f ranlib/getcgn.f
-	ranlib/getsd.f ranlib/ignbin.f ranlib/ignnbn.f ranlib/ignpoi.f
-	ranlib/ignuin.f ranlib/initgn.f ranlib/mltmod.f ranlib/setant.f
-	ranlib/setgmn.f ranlib/setsd.f: call XSTOPX instead of STOP so Octave's
-	error handler can intercept errors in Fortran code
-
-2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* misc/quit.cc (octave_rethrow_exception): Set octave_interrupt_state
-	to -1 when throwing octave_interrupt_exception.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (AM_CPPFLAGS): New variable.
-
-2009-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Reverse using simple_move_if_change_rule for cruft.def
-	which interferes with make timestamp algorithm.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
-	variables of top_builddir and top_srcdir.
-
-2009-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Use simple_move_if_change_rule for cruft.def to eliminate
-	unnecessary compilations.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* misc/f77-fcn.h, misc/lo-error.h, misc/quit.h,
-	misc/f77-extern.cc, misc/quit.cc, misc/cquit.c, misc/f77-fcn.c,
-	misc/lo-error.c: Remove Emacs local variable list.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* misc/cquit.c, misc/f77-fcn.h, misc/quit.h: Untabify.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (DISTCLEANFILES): New variable.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/sdot3.f: Use nested cache-aligned loop for general case.
-	* blas-xtra/ddot3.f: Ditto.
-	* blas-xtra/cdotc3.f: Ditto.
-	* blas-xtra/zdotc3.f: Ditto.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/sdot3.f: New source.
-	* blas-xtra/ddot3.f: New source.
-	* blas-xtra/cdotc3.f: New source.
-	* blas-xtra/zdotc3.f: New source.
-	* blas-xtra/smatm3.f: New source.
-	* blas-xtra/dmatm3.f: New source.
-	* blas-xtra/cmatm3.f: New source.
-	* blas-xtra/zmatm3.f: New source.
-	* blas-xtra/module.mk: Include them.
-
-2009-11-17  John W. Eaton  <jwe@octave.org>
-
-	* mkf77def.in: Only process files with names that match *.f.
-
-2009-11-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am: Restore rules for building cruft.def.
-	(libcruft_la_LDFLAGS): Also append @XTRA_CRUFT_SH_LDFLAGS@.
-	(libcruft_la_DEPENDENCIES): New variable.
-	* mkf77def.in: Use @VAR@ instead of %VAR% substitutions.
-	Process	srcdir plus list of files instead of working as a filter.
-
-2009-11-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (libcruft_la_CPPFLAGS): Define.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* blas, lapack: Remove directories and all files.
-	* Makefile.am: Don't include blas/module.mk or lapack/module.mk.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am, amos/module.mk, blas-xtra/module.mk,
-	blas/module.mk, daspk/module.mk, dasrt/module.mk, dassl/module.mk,
-	fftpack/module.mk, lapack-xtra/module.mk, lapack/module.mk,
-	misc/module.mk, odepack/module.mk, ordered-qz/module.mk,
-	quadpack/module.mk, ranlib/module.mk, slatec-err/module.mk,
-	slatec-fn/module.mk, villad/module.mk: New files.
-
-	* Makefile.in, Makerules.in, amos/Makefile.in,
-	blas-xtra/Makefile.in, blas/Makefile.in, daspk/Makefile.in,
-	dasrt/Makefile.in, dassl/Makefile.in, fftpack/Makefile.in,
-	lapack-xtra/Makefile.in, lapack/Makefile.in, misc/Makefile.in,
-	odepack/Makefile.in, ordered-qz/Makefile.in, quadpack/Makefile.in,
-	ranlib/Makefile.in, slatec-err/Makefile.in, slatec-fn/Makefile.in,
-	villad/Makefile.in: Delete.
-
-2009-09-17  John W. Eaton  <jwe@octave.org>
-
-	* misc/oct-dlldefs.h: Delete.
-	* misc/Makefile.in (INCLUDES): Remove oct-dlldefs.h from the list.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Omit $(FFTW_LIBS) from the list.
-
-2009-06-22  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (MISC_OBJ): Remove misc/machar.o and misc/smachar.o
-	from the list.
-
-	* misc/i1mach.f, misc/r1mach.f, misc/d1mach.f: Rewite in terms of
-	LAPACK functions slamch and dlamch.
-	* misc/machar.c: Delete.
-	* misc/Makefile.in (CSRC): Remove machar.c from the list.
-	(CEXTRA, XCC, XALL_CFLAGS): Delete variables.
-	(machar.o, smachar.o, pic/machar.o, pic/smachar.o): Delete rules.
-
-2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
-
-2009-03-07  John W. Eaton  <jwe@octave.org>
-
-	* misc/quit.h (octave_rethrow_exception):
-	Don't tag with GCC_ATTR_NORETURN.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (maintainer-clean): Also remove libraries.
-
-	* Makerules.in: Make maintainer-clean and distclean the same.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* misc/quit.h (octave_signal_caught): Declare as volatile.
-	* misc/cquit.cc (octave_signal_caught): Likewise.
-
-2009-02-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas/ssymm.f, blas/dsymm.f, blas/chemm.f, blas/zhemm.f: New sources.
-	* blas/Makefile.in: Include them.
-
-2009-01-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LIBRARIES, install, uninstall): use SHLLIBPRE and
-	SHLBINPRE library prefixes.
-	From Marco Atzeri <marco_atzeri@yahoo.it>.
-
-2008-12-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lapack/chegs2.f lapack/chegst.f lapack/chegv.f lapack/dsygs2.f
-	lapack/dsygst.f lapack/dsygv.f lapack/ssygs2.f lapack/ssygst.f
-	lapack/ssygv.f lapack/zhegs2.f lapack/zhegst.f lapack/zhegv.f:
-	New sources.
-	* lapack/Makefile.in: Include them.
-
-2008-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas/zsyrk.f: New source.
-	* lapack/cggbak.f, lapack/cggev.f, lapack/cgghrd.f, lapack/chgeqz.f,
-	lapack/ctgevc.f, lapack/dggev.f, lapack/sggev.f, lapack/zggbak.f,
-	lapack/zggev.f, lapack/zgghrd.f, lapack/zhgeqz.f, lapack/ztgevc.f:
-	New sources.
-	* lapack/Makefile.in: Include them.
-
-2008-08-12  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* blas/icamax.f, blas/isamax.f: New files.
-	* blas/Makefile.in (FSRC): Add them to the list.
-
-	* lapack/icmax1.f: New file.
-	* lapack/Makefile.in (FSRC): Add it to the list.
-
-2008-06-16  David Bateman  <dbateman@free.fr>
-
-	* slatec-fn/xacosh.f, slatec-fn/xasinh.f: Replace xsacosh with
-	xacosh, xdacosh with xacosh and xdasinh with xasinh.
-
-2008-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* misc/Makefile.in (MAKEDEPS): Remove CEXTRA.
-
-2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* misc/oct-dlldefs.h (OCTGRAPHICS_API): New macro for import/export
-	in graphics related libraries.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* slatec/xsgmainc.f: Replace DLGAMS with ALGAMS.
-
-2008-05-30  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* quadpack/qk15i.f: Delete extraneous semicolons.
-
-2008-05-21  David Bateman  <dbateman@free.fr>
-
-	* odepack/slsode.f, odepack/sintdy.f: Replace the use of xerrwv
-	with xerrwd and rumach with d1mach(4).
-
-	* odepack/scfode.f, odepack/sewset.f, odepack/sintdy.f,
-	odepack/slsode.f, odepack/sprepj.f, odepack/ssolsy.f,
-	odepack/sstode.f, odepack/svnorm.f: New files.
-	* odepack/Makefile.in (FSRC): Add them.
-
-	* ordered-qz/sexchqz.f, ordered-qz/ssubsp.f: New files.
-	* ordered-qz/Makefile.in (FSRC): Add them.
-	* quadpack/qagi.f, quadpack/qagie.f, quadpack/qagp.f,
-	quadpack/qagpe.f, quadpack/qelg.f, quadpack/qk15i.f,
-	quadpack/qk21.f, quadpack/qpsrt.f: New files.
-	* quadpack/Makefile.in (FSRC): Add them.
-
-2008-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/cch1dn.f, qrupdate/cchinx.f, qrupdate/cqhqr.f,
-	qrupdate/cqrinc.f, qrupdate/cqrinr.f, qrupdate/cqrqhu.f,
-	qrupdate/cqrqhv.f, qrupdate/sch1dn.f, qrupdate/schinx.f,
-	qrupdate/sqhqr.f, qrupdate/sqrinc.f, qrupdate/sqrinr.f,
-	qrupdate/sqrqhu.f: Convert DOUBLE PRECISION constants to REAL.
-	* qrupdate/cqrinr.f, qrupdate/sqrinr.f: Correct EXTERNAL
-	declarations.
-	* qrupdate/sqrinr.f: Convert DOUBLE PRECISION calls to
-	REAL counterparts.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (MISC_OBJ): Add misc/smachar.o
-	* Makerules.in (CRUFT_CSRC, CRUFT_CPICOBJ): Add CEXTRA, allowing
-	objects files with no corresponding source file in the
-	distribution.
-
-	* amos/cacai.f, amos/cacon.f, amos/cbesh.f, amos/cbesi.f,
-	amos/cbesj.f, amos/cbesk.f, amos/cbesy.f, amos/cbinu.f,
-	amos/cbuni.f, amos/cbunk.f, amos/cunk1.f amos/cunk2.f,
-	amos/crati.f, amos/cshch.f, amos/cuni1.f, amos/cuoik.f,
-	amos/cairy.f, amos/cbiry.f, amos/ckscl.f, amos/cs1s2.f,
-	amos/cuchk.f, amos/cuni2.f, amos/cwrsk.f, amos/casyi.f,
-	amos/cbknu.f, amos/cmlri.f, amos/cseri.f, amos/cunhj.f,
-	amos/cunik.f: New files.
-	* amos/Makefile.in (FSRC): Add them.
-
-	* blas-xtra/xsdot.f, blas-xtra/xsnrm2.f, blas-xtra/xscnrm2.f,
-	blas-xtra/xcdotc.f, blas-xtra/xcdotu.f: New files
-	* blas-xtra/Makefile.in (FSRC): Add them.
-
-	* blas/sasum.f, blas/saxpy.f, blas/scabs1.f, blas/scopy.f,
-	blas/sger.f, blas/smach.f, blas/snrm2.f, blas/srot.f,
-	blas/sswap.f, blas/ssymv.f, blas/ssyr.f, blas/ssyr2.f,
-	blas/ssyr2k.f, blas/stbsv.f, blas/strmm.f, blas/strmv.f,
-	blas/strsv.f, blas/scasum.f, blas/scnrm2.f, blas/caxpy.f,
-	blas/ccopy.f, blas/cdotc.f, blas/cdotu.f, blas/, blas/csrot.f,
-	blas/csscal.f, blas/cgemm.f, blas/cgemv.f, blas/cgerc.f,
-	blas/cgeru.f, blas/chemv.f, blas/cher.f, blas/cher2.f,
-	blas/cher2k.f, blas/cherk.f, blas/cscal.f, blas/cswap.f,
-	blas/ctbsv.f, blas/ctrmm.f, blas/ctrmv.f, blas/, blas/ctrsm.f,
-	blas/ctrsv.f: New files
-	* blas/Makefile.in (FSRC): Add them.
-
-	* fftpack/zfftb.f, zfftb1.f, fftpack/zfftf.f, fftpack/zfftf1.f,
-	fftpack/zffti.f, fftpack/zffti1.f, fftpack/zpassb.f,
-	fftpack/zpassb2.f, fftpack/zpassb3.f, fftpack/zpassb4.f,
-	fftpack/zpassb5.f, fftpack/zpassf.f, fftpack/zpassf2.f,
-	fftpack/zpassf3.f, fftpack/zpassf4.f, fftpack/zpassf5.f: Rename
-	function (c -> z | add z).
-	* fftpack/cfftb.f, cfftb1.f, fftpack/cfftf.f, fftpack/cfftf1.f,
-	fftpack/cffti.f, fftpack/cffti1.f, fftpack/passb.f,
-	fftpack/passb2.f, fftpack/passb3.f, fftpack/passb4.f,
-	fftpack/passb5.f, fftpack/passf.f, fftpack/passf2.f,
-	fftpack/passf3.f, fftpack/passf4.f, fftpack/passf5.f: New files
-	for single precision.
-	* fftpack/Makefile.in (FSRC): Add new files.
-
-	* lapack-xtra/xclange.f, lapack-xtra/xslamch.f,
-	lapack-xtra/xslange.f: New files.
-	* lapack-xtra/Makefile.in (FSRC): Add them.
-
-	* lapack/cbdsqr.f, lapack/csrscl.f, lapack/cgbcon.f,
-	lapack/cgbtf2.f, lapack/cgbtrf.f, lapack/cgbtrs.f,
-	lapack/cgebak.f, lapack/cgebal.f, lapack/cgebd2.f,
-	lapack/cgebrd.f, lapack/cgecon.f, lapack/cgeesx.f, lapack/cgeev.f,
-	lapack/cgehd2.f, lapack/cgehrd.f, lapack/cgelq2.f,
-	lapack/cgelqf.f, lapack/cgelsd.f, lapack/cgelss.f,
-	lapack/cgelsy.f, lapack/cgeqp3.f, lapack/cgeqpf.f,
-	lapack/cgeqr2.f, lapack/cgeqrf.f, lapack/cgesv.f, lapack/cgesvd.f,
-	lapack/cgetf2.f, lapack/cgetrf.f, lapack/cgetri.f,
-	lapack/cgetrs.f, lapack/cggbal.f, lapack/cgtsv.f, lapack/cgttrf.f,
-	lapack/cgttrs.f, lapack/cgtts2.f, lapack/cheev.f, lapack/chetd2.f,
-	lapack/chetrd.f, lapack/chseqr.f, lapack/clabrd.f,
-	lapack/clacgv.f, lapack/clacn2.f, lapack/clacon.f,
-	lapack/clacpy.f, lapack/cladiv.f, lapack/clahqr.f,
-	lapack/clahr2.f, lapack/clahrd.f, lapack/claic1.f,
-	lapack/clals0.f, lapack/clalsa.f, lapack/clalsd.f,
-	lapack/clange.f, lapack/clanhe.f, lapack/clanhs.f,
-	lapack/clantr.f, lapack/claqp2.f, lapack/claqps.f,
-	lapack/claqr0.f, lapack/claqr1.f, lapack/claqr2.f,
-	lapack/claqr3.f, lapack/claqr4.f, lapack/claqr5.f, lapack/clarf.f,
-	lapack/clarfb.f, lapack/clarfg.f, lapack/clarft.f,
-	lapack/clarfx.f, lapack/clartg.f, lapack/clarz.f, lapack/clarzb.f,
-	lapack/clarzt.f, lapack/clascl.f, lapack/claset.f, lapack/clasr.f,
-	lapack/classq.f, lapack/claswp.f, lapack/clatbs.f,
-	lapack/clatrd.f, lapack/clatrs.f, lapack/clatrz.f,
-	lapack/clauu2.f, lapack/clauum.f, lapack/cpbcon.f,
-	lapack/cpbtf2.f, lapack/cpbtrf.f, lapack/cpbtrs.f,
-	lapack/cpocon.f, lapack/cpotf2.f, lapack/cpotrf.f,
-	lapack/cpotri.f, lapack/cpotrs.f, lapack/cptsv.f, lapack/cpttrf.f,
-	lapack/cpttrs.f, lapack/cptts2.f, lapack/crot.f, lapack/csteqr.f,
-	lapack/ctrcon.f, lapack/ctrevc.f, lapack/ctrexc.f,
-	lapack/ctrsen.f, lapack/ctrsyl.f, lapack/ctrti2.f,
-	lapack/ctrtri.f, lapack/ctrtrs.f, lapack/ctzrzf.f,
-	lapack/cung2l.f, lapack/cung2r.f, lapack/cungbr.f,
-	lapack/cunghr.f, lapack/cungl2.f, lapack/cunglq.f,
-	lapack/cungql.f, lapack/cungqr.f, lapack/cungtr.f,
-	lapack/cunm2r.f, lapack/cunmbr.f, lapack/cunml2.f,
-	lapack/cunmlq.f, lapack/cunmqr.f, lapack/cunmr3.f,
-	lapack/cunmrz.f, lapack/sbdsqr.f, lapack/sgbcon.f,
-	lapack/sgbtf2.f, lapack/sgbtrf.f, lapack/sgbtrs.f,
-	lapack/sgebak.f, lapack/sgebal.f, lapack/sgebd2.f,
-	lapack/sgebrd.f, lapack/sgecon.f, lapack/sgeesx.f, lapack/sgeev.f,
-	lapack/sgehd2.f, lapack/sgehrd.f, lapack/sgelq2.f,
-	lapack/sgelqf.f, lapack/sgelsd.f, lapack/sgelss.f,
-	lapack/sgelsy.f, lapack/sgeqp3.f, lapack/sgeqpf.f,
-	lapack/sgeqr2.f, lapack/sgeqrf.f, lapack/sgesv.f, lapack/sgesvd.f,
-	lapack/sgetf2.f, lapack/sgetrf.f, lapack/sgetri.f,
-	lapack/sgetrs.f, lapack/sggbak.f, lapack/sggbal.f,
-	lapack/sgghrd.f, lapack/sgtsv.f, lapack/sgttrf.f, lapack/sgttrs.f,
-	lapack/sgtts2.f, lapack/shgeqz.f, lapack/shseqr.f,
-	lapack/slabad.f, lapack/slabrd.f, lapack/slacn2.f,
-	lapack/slacon.f, lapack/slacpy.f, lapack/sladiv.f, lapack/slae2.f,
-	lapack/slaed6.f, lapack/slaev2.f, lapack/slaexc.f, lapack/slag2.f,
-	lapack/slahqr.f, lapack/slahr2.f, lapack/slahrd.f,
-	lapack/slaic1.f, lapack/slaln2.f, lapack/slals0.f,
-	lapack/slalsa.f, lapack/slalsd.f, lapack/slamc1.f,
-	lapack/slamc2.f, lapack/slamc3.f, lapack/slamc4.f,
-	lapack/slamc5.f, lapack/slamch.f, lapack/slamrg.f,
-	lapack/slange.f, lapack/slanhs.f, lapack/slanst.f,
-	lapack/slansy.f, lapack/slantr.f, lapack/slanv2.f,
-	lapack/slapy2.f, lapack/slapy3.f, lapack/slaqp2.f,
-	lapack/slaqps.f, lapack/slaqr0.f, lapack/slaqr1.f,
-	lapack/slaqr2.f, lapack/slaqr3.f, lapack/slaqr4.f,
-	lapack/slaqr5.f, lapack/slarf.f, lapack/slarfb.f, lapack/slarfg.f,
-	lapack/slarft.f, lapack/slarfx.f, lapack/slartg.f, lapack/slarz.f,
-	lapack/slarzb.f, lapack/slarzt.f, lapack/slas2.f, lapack/slascl.f,
-	lapack/slasd0.f, lapack/slasd1.f, lapack/slasd2.f,
-	lapack/slasd3.f, lapack/slasd4.f, lapack/slasd5.f,
-	lapack/slasd6.f, lapack/slasd7.f, lapack/slasd8.f,
-	lapack/slasda.f, lapack/slasdq.f, lapack/slasdt.f,
-	lapack/slaset.f, lapack/slasq1.f, lapack/slasq2.f,
-	lapack/slasq3.f, lapack/slasq4.f, lapack/slasq5.f,
-	lapack/slasq6.f, lapack/slasr.f, lapack/slasrt.f, lapack/slassq.f,
-	lapack/slasv2.f, lapack/slaswp.f, lapack/slasy2.f,
-	lapack/slatbs.f, lapack/slatrd.f, lapack/slatrs.f,
-	lapack/slatrz.f, lapack/slauu2.f, lapack/slauum.f,
-	lapack/slazq3.f, lapack/slazq4.f, lapack/sorg2l.f,
-	lapack/sorg2r.f, lapack/sorgbr.f, lapack/sorghr.f,
-	lapack/sorgl2.f, lapack/sorglq.f, lapack/sorgql.f,
-	lapack/sorgqr.f, lapack/sorgtr.f, lapack/sorm2r.f,
-	lapack/sormbr.f, lapack/sorml2.f, lapack/sormlq.f,
-	lapack/sormqr.f, lapack/sormr3.f, lapack/sormrz.f,
-	lapack/spbcon.f, lapack/spbtf2.f, lapack/spbtrf.f,
-	lapack/spbtrs.f, lapack/spocon.f, lapack/spotri.f,
-	lapack/spotrs.f, lapack/sptsv.f, lapack/spttrf.f, lapack/spttrs.f,
-	lapack/sptts2.f, lapack/srscl.f, lapack/ssteqr.f, lapack/ssterf.f,
-	lapack/ssyev.f, lapack/ssytd2.f, lapack/ssytrd.f, lapack/stgevc.f,
-	lapack/strcon.f, lapack/strevc.f, lapack/strexc.f,
-	lapack/strsen.f, lapack/strsyl.f, lapack/strti2.f,
-	lapack/strtri.f, lapack/strtrs.f, lapack/stzrzf.f,
-	lapack/scsum1.f: New files
-	* lapack/Makefile.in (FSRC): Add them.
-
-	* misc/r1mach.f: New file
-	* misc/machar.cc: Modify to allow to be build twice, once for
-	double precision and once for single precision.
-	* misc/Makefile.in (FSRC): Add it.
-	(CEXTRA): Add smachar.c, and target for smachar.o
-	(MAKEDEPS): Include CEXTRA.
-
-	* qrupdate/sch1up.f, qrupdate/cch1up.f, qrupdate/sqrinc.f,
-	qrupdate/cqrinc.f, qrupdate/sqrdec.f, qrupdate/cqrdec.f,
-	qrupdate/sqrinr.f, qrupdate/cqrinr.f, qrupdate/sqrder.f,
-	qrupdate/cqrder.f, qrupdate/sqrshc.f, qrupdate/cqrshc.f,
-	qrupdate/sqr1up.f, qrupdate/cqr1up.f, qrupdate/sch1dn.f,
-	qrupdate/cch1dn.f, qrupdate/schinx.f, qrupdate/cchinx.f,
-	qrupdate/schdex.f, qrupdate/cchdex.f, qrupdate/sqrqhu.f,
-	qrupdate/cqrqhu.f, qrupdate/sqrqhv.f, qrupdate/cqrqhv.f,
-	qrupdate/sqhqr.f, qrupdate/cqhqr.f: New files.
-	* qrupdate/Makefile.in (FSRC): Add them.
-
-	* slatec-fn/acosh.f, slatec-fn/albeta.f, slatec-fn/algams.f,
-	slatec-fn/alngam.f, slatec-fn/alnrel.f, slatec-fn/asinh.f,
-	slatec-fn/atanh.f, slatec-fn/betai.f, slatec-fn/csevl.f,
-	slatec-fn/erf.f, slatec-fn/erfc.f, slatec-fn/gami.f,
-	slatec-fn/gamit.f, slatec-fn/gamlim.f, slatec-fn/gamma.f,
-	slatec-fn/gamr.f, slatec-fn/inits.f, slatec-fn/pchim.f,
-	slatec-fn/pchst.f, slatec-fn/r9gmit.f, slatec-fn/r9lgic.f,
-	slatec-fn/r9lgit.f, slatec-fn/r9lgmc.f, slatec-fn/xacosh.f,
-	slatec-fn/xasinh.f, slatec-fn/xatanh.f, slatec-fn/xbetai.f,
-	slatec-fn/xerf.f, slatec-fn/xerfc.f, slatec-fn/xgamma.f,
-	slatec-fn/xsgmainc.f: New files.
-	* slatec-fn/Makefile.in (FSRC): Add them.
-
-2008-04-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/dch1dn.f, qrupdate/dchdex.f, qrupdate/dchinx.f,
-	qrupdate/dqhqr.f, qrupdate/dqrdec.f, qrupdate/dqrinc.f,
-	qrupdate/dqrqhu.f, qrupdate/dqrqhv.f, qrupdate/dqrshc.f,
-	qrupdate/zch1dn.f, qrupdate/zchdex.f, qrupdate/zchinx.f,
-	qrupdate/zqhqr.f, qrupdate/zqrdec.f, qrupdate/zqrder.f,
-	qrupdate/zqrinc.f, qrupdate/zqrinr.f, qrupdate/zqrqhu.f,
-	qrupdate/zqrqhv.f, qrupdate/zqrshc.f:
-	Fix external declarations, XERBLA calls, and docs.
-
-2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/dqrqhu.f, qrupdate/zqrqhu.f,
-	* qrupdate/dqrshc.f, qrupdate/zqrshc.f,
-	* qrupdate/dchinx.f, qrupdate/zchinx.f,
-	* qrupdate/dchdex.f, qrupdate/zchdex.f: New files.
-
-2008-04-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* blas-xtra/xzdotu.f: Turn into simple wrapper for zdotu.
-	* blas-xtra/xzdotc.f: Turn into simple wrapper for zdotc.
-	* qrupdate/zqrqhv.f: Undo previous change.
-
-2008-03-22  David Bateman  <dbateman@free.fr>
-
-	* qrupdate/dch1up.f: Remove unused external reference to dlartv.
-
-2008-03-18  John W. Eaton  <jwe@octave.org>
-
-	* qrupdate/zqrqhv.f (zqrqhv): Call xzdotc instead of zdotc.
-	* blas-xtra/xzdotu.f: Eliminate local zdotu variable.
-	* blas-xtra/xzdotc.f: New file.
-	* blas-xtra/Makefile.in (FSRC): Add it to the list.
-
-2008-03-10  John W. Eaton  <jwe@octave.org>
-
-	* blas/zdrot.f, odepack/dlsode.f, odepack/ewset.f,
-	odepack/intdy.f, fftpack/cffti.f, fftpack/cfftb.f,
-	fftpack/cfftf.f:
-	Use (*) instead of (1) for assumed-size dimensions.
-
-2008-03-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/dqrinc.f: Declare DGEMV external.
-	* qrupdate/zqrinc.f: Declare ZGEMV external.
-	Fix complex constant args in call to ZGEMV.
-
-2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/dch1dn.f, qrupdate/zch1dn.f: add "quick return" checks.
-
-2008-03-04 Jaroslav Hajek  <highegg@gmail.com>
-
-	* qrupdate/dch1dn.f, qrupdate/dch1up.f,
-	qrupdate/zch1dn.f, qrupdate/zch1up.f: New files.
-	* qrupdate/Makefile.in (FSRC): Add them to the list.
-
-	* qrupdate/Makefile.in, qrupdate/dqhqr.f, qrupdate/dqr1up.f,
-	qrupdate/dqrdec.f, qrupdate/dqrder.f, qrupdate/dqrinc.f,
-	qrupdate/dqrinr.f, qrupdate/dqrqhv.f, qrupdate/zqhqr.f,
-	qrupdate/zqr1up.f, qrupdate/zqrdec.f, qrupdate/zqrder.f,
-	qrupdate/zqrinc.f, qrupdate/zqrinr.f, qrupdate/zqrqhv.f:
-	New files.
-	* Makefile.in (CRUFT_DIRS): Add qrupdate to the list.
-
-2008-02-14  John W. Eaton  <jwe@octave.org>
-
-	* misc/f77-fcn.h (F77_XFCN): Call octave_rethrow_exception here
-	instead of checking octave_allocation_error.
-	* misc/quit.cc (octave_execution_exception): New function.
-	(octave_rethrow_exception): New function.
-	(octave_handle_signal): Call octave_rethrow_exception instead of
-	octave_throw_interrupt_exception.
-	* misc/quit.h (octave_execution_error): New variable.
-	(END_INTERRUPT_WITH_EXCEPTIONS): Catch octave_execution_exception.
-	(octave_execution_exception): New class.
-	(octave_exception): New enum.
-	(octave_exception_state): Rename from octave_allocation_error.
-	Change all uses.
-
-2008-02-12  John W. Eaton  <jwe@octave.org>
-
-	* lapack-xtra/xilaenv.f: New wrapper for Fortran function ilaenv.
-	* lapack-xtra/Makefile.in (FSRC): Add it to the list.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* Makerules.in (%.def : %.f): Use mv instead of move-if-change.
-
-2008-02-05  John W. Eaton  <jwe@octave.org>
-
-	* misc/Makefile.in: Unconditionally include $(MAKEDEPS).
-	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-11-01  John W. Eaton  <jwe@octave.org>
-
-	* lapack-xtra/xzlange.f: Include complete implementation of ZLANGE
-	function here.
-
-	* blas-xtra/xzdotu.f: Include complete implementation of ZDOTU
-	function here.
-
-2007-10-26  John W. Eaton  <jwe@octave.org>
-
-	* lapack/dlals0.f: New file.
-	* lapack/Makefile.in (FSRC): Add it to the list.
-
-2007-10-26  David Bateman  <dbateman@free.fr>
-
-	* lapack/dgelsd.f, lapack/dlalsd.f, lapack/dlalsa.f,
-	lapack/dlasda.f, lapack/dlasdt.f, lapack/dlasdq.f
-	lapack/dlamrg.f, lapack/dlasd0.f, lapack/dlasd1.f,
-	lapack/dlasd2.f, lapack/dlasd3.f, lapack/dlasd4.f,
-	lapack/dlasd5.f, lapack/dlasd6.f, lapack/dlasd7.f,
-	lapack/dlasd8.f, lapack/dlaed6.f, lapack/zgelsd.f,
-	lapack/zlalsd.f , lapack/zlalsa.f, lapack/zlals0.f: New files.
-	* lapack/Makefile.in (FSRC): Include them here.
-
-2007-10-23  John W. Eaton  <jwe@octave.org>
-
-	* lapack/dgtts2.f, lapack/zgtts2.f: New files.
-	* lapack/Makefile.in (FSRC): Add them to the list.
-
-2007-10-16  John W. Eaton  <jwe@octave.org>
-
-	* lapack/dlacn2.f, lapack/dlacn2.f, lapack/dlahr2.f,
-	lapack/dlahr2.f, lapack/dlaqr0.f, lapack/dlazq3.f,
-	lapack/dlazq3.f, lapack/dormr3.f, lapack/dormrz.f,
-	lapack/iparmq.f, lapack/iparmq.f, lapack/zlacn2.f,
-	lapack/zlahr2.f, lapack/zlaqr0.f: New files.
-	* lapack/Makefile.in (FSRC): Add them to the list.
-
-	* lapack: Update all files to current versions from Lapack 3.1.1.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* mkf77def.in: Combine sed expressions.
-
-2007-09-26  David Bateman  <dbateman@free.fr>
-
-	* lapack/dgelsy.f,  lapack/dlatrz.f,  lapack/zlarz.f,
-	lapack/dgeqp3.f,  lapack/dtzrzf.f,  lapack/zlarzt.f,
-	lapack/dlaic1.f,  lapack/zgelsy.f,  lapack/zlatrz.f,
-	lapack/dlaqp2.f,  lapack/zgeqp3.f,  lapack/ztzrzf.f,
-	lapack/dlaqps.f,  lapack/zlaic1.f,  lapack/zunmr3.f,
-	lapack/dlarzb.f,  lapack/zlaqp2.f,  lapack/zunmrz.f,
-	lapack/dlarz.f,   lapack/zlaqps.f, lapack/dlarzt.f,
-	lapack/zlarzb.f: New files
-	* lapack/Makefile.in (FSRC): Add the new files.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in, Makerules.in, fftpack/Makefile.in,
-	randlib/Makefile.in: Adjust DISTFILES to allow out of tree "make dist"
-	to work.
-
-2007-04-23  John W. Eaton  <jwe@octave.org>
-
-	* ranlib/phrtsd.f (phrtsd): Store result of call to index
-	instrinsic in an INTEGER variable to ensure that the types of the
-	arguments passed to mod really are the same even on 64-bit systems.
-
-2007-04-18  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* blas-xtra/xdnrm2.f, blas-xtra/xdznrm2.f:
-	Delete spurious semicolons.
-
-2007-04-06  John W. Eaton  <jwe@octave.org>
-
-	* blas-xtra/xdnrm2.f, blas-xtra/xdznrm2.f: New functions.
-	* blas-xtra/Makefile.in (FSRC): Add them to the list.
-
-	* ranlib/phrtsd.f (phrtsd): Ensure that the types of the arguments
-	passed to mod are the same even on 64-bit systems.
-
-2007-04-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefules.in: Handle Fortran, C, and C++ sources with separate
-	variables.
-	* misc/Makefile.in: Use new variables for Fortran, C, and C++ files.
-	* Makefile.in (clean mostlyclean distclean): No need to remove
-	$(CRUFT_OBJ) here.
-
-2007-04-04  Rafael Laboissiere  <rafael@debian.org>
-
-	* Makefile.in (clean): Remove mkf77def.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makerules.in, Makefile.in (dist): Use ln instead of $(LN_S).
-
-2007-02-26  John W. Eaton  <jwe@octave.org>
-
-	* misc/Makefile.in (CPICDEP): Also set if CPICFLAG is not defined.
-	(CXXPICDEP): Also set if CXXPICFLAG is not defined.
-
-2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in, Makerules.in: Use $(LN_S) instead of ln or ln -s.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* Makerules.in: Don't use wildcard function to generate source
-	efile list.
-	* amos/Makefile.in, blas-xtra/Makefile.in, blas/Makefile.in,
-	daspk/Makefile.in, dasrt/Makefile.in, dassl/Makefile.in,
-	fftpack/Makefile.in, lapack-xtra/Makefile.in, lapack/Makefile.in,
-	minpack/Makefile.in, misc/Makefile.in, odepack/Makefile.in,
-	ordered-qz/Makefile.in, quadpack/Makefile.in, ranlib/Makefile.in,
-	slatec-err/Makefile.in, slatec-fn/Makefile.in, villad/Makefile.in:
-	Explicitly list source files.
-
-2007-01-24  Alexander Barth  <abarth@marine.usf.edu>
-
-	* misc/f77-fcn.h (F77_CSTRING): Call OCTAVE_LOCAL_BUFFER with cs,
-	not F77_CHAR_ARG_USE (s).
-
-2006-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Makerules.in (%.def : %.f): Use $(simple-move-if-change-rule) here.
-
-2006-11-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
-	(DLL_CDEFS): Rename from XTRA_CDEFS.
-	Substitute CRUFT_DLL_DEFS, not XTRA_CRUFT_DEFS.
-	(XTRA_CRUFT_SH_LDFLAGS): Rename from XTRA_CRUFT_LINK_DEPS.
-	Add $(XTRA_CRUFT_SH_LDFLAGS) to SH_LDFLAGS instead of to LINK_DEPS.
-
-2006-10-31  John W. Eaton  <jwe@octave.org>
-
-	* misc/Makefile.in (INCLUDES): Add oct-dlldefs.h to the list.
-
-2006-10-29  John W. Eaton  <jwe@octave.org>
-
-	* misc/Makefile.in (SPECIAL_INCLUDE): Add oct-dlldefs.h to the list.
-
-2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* misc/quit.h: Undefine min and max after including windows.h.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* misc/oct-dlldefs.h: New file.
-
-	* mkf77def.in: Downcase all input to simplify matching.
-	Match only lines beginning with whitespace.
-	Match function return types.
-	Use literal TAB characters instead of \t in sed patterns.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in (XTRA_CRUFT_LINK_DEPS): Substitute.
-	(CRUFT_DEFS): New variable.
-	(LINK_DEPS): Include $(XTRA_CRUFT_LINK_DEPS) in the list.
-	(clean, mostlyclean, distclean): Delete cruft.def.
-	(cruft.def): New target.
-	(libraries): Depend on cruft.def.
-
-	* misc/f77-fcn.h (f77_exception_encountered, xstopx):
-	Tag with CRUFT_API.
-	* misc/lo-error.h (current_liboctave_error_handler,
-	current_liboctave_warning_handler,
-	current_liboctave_warning_with_id_handler,
-	set_liboctave_error_handler, set_liboctave_warning_handler,
-	set_liboctave_warning_with_id_handler): Likewise.
-	* misc/quit.h (w32_sigint_init, w32_raise_final,
-	w32_raise, w32_in_main_thread, current_context,
-	octave_save_current_context, octave_restore_current_context,
-	octave_jump_to_enclosing_context, octave_save_signal_mask,
-	octave_restore_signal_mask, octave_interrupt_immediately,
-	octave_interrupt_state, octave_allocation_error,
-	octave_signal_caught, octave_handle_signal,
-	octave_throw_interrupt_exception, octave_throw_bad_alloc,
-	octave_signal_hook, octave_interrupt_hook, octave_bad_alloc_hook):
-	Likewise.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in ($(CRUFT_DEFS)): Depend on $(SUBDIRS).
-	(cruft.def): Depend on $(CRUFT_DEFS).
-	(libraries): Depend on cruft.def only.
-
-	* mk77def.in: New script template
-	* Makefile.in (DISTFILES): Include mk77def.in in the list.
-	($(SUBDIRS)): Depend on mk77def.
-	(mk77def): New target.
-	(CRUFT_DEFS): New variable.
-	* Makerules.in (CRUFT_FSRC, CRUFT_CSRC, CRUFT_CXXSRC): New variables.
-	(CRUFT_SRC): Define using $(CRUFT_FSRC), $(CRUFT_CSRC), and
-	$(CRUFT_CXXSRC).
-	(CRUFT_DEFS): New variable.
-	($(CRUFT_DEFS)): Depend on $(TOPDIR)/libcruft/mkf77def.
-	(%.def : %.f): New pattern rule.  Use mkf77def script to do
-	Fortran name mangling.
-	(clean, mostlyclean, distclean): Delete $(CRUFT_DEFS).
-	(all): Depend on $(CRUFT_DEFS)
-	Partially from Michael Goffioul  <michael.goffioul@swing.be>.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* Makerules.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
-
-2006-10-23  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* misc/f77-fcn.h (F77_CHAR_ARG_DEF, F77_CONST_CHAR_ARG_DEF,
-	F77_CHAR_ARG_LEN_DEF, F77_CHAR_ARG_USE, F77_CHAR_ARG_LEN_USE,
-	F77_CSTRING): New macros to handle passing C character strings to
-	Fortran.
-
-2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* lapack-xtra/xdlamch.f: Begin lines with spaces, not tabs.
-
-	* misc/Makefile.in (machar.o, pic/machar.o): Specify output file
-	name in compile command.
-
-2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Adapt rules to use $(LIBPRE).
-
-2006-09-11  John W. Eaton  <jwe@octave.org>
-
-	* blas-xtra/xddot.f, blas-xtra/xzdotu.f: New files.
-
-2006-06-01  David Bateman  <dbateman@free.fr>
-
-	* slatec-fn/dpchim.f, slatec-fn/dpchst.f: New files.
-
-2006-05-22  John W. Eaton  <jwe@octave.org>
-
-	* lapack/dlantr.f, lapack/zlantr.f: New files.
-
-2006-05-03  David Bateman  <dbateman@free.fr>
-
-	* lapack/dpocon.f, lapack/zpocon.f, lapack/dpotrs.f,
-	lapack/zpotrs.f, lapack/dtrcon.f, lapack/ztrcon.f,
-	lapack/dtrtrs.f, lapack/ztrtrs.f: New files.
-
-2006-04-29  John W. Eaton  <jwe@octave.org>
-
-	* misc/lo-error.c (set_liboctave_warning_with_id_handler,
-	liboctave_warning_with_id): New functions.
-	(current_liboctave_warning_with_id_handler): New variable.
-	* misc/lo-error.h (liboctave_warning_with_id_handler): New typedef.
-	(current_liboctave_warning_with_id_handler, liboctave_warning_with_id
-	set_liboctave_warning_with_id_handler): Provide decls.
-
-2006-04-18  John W. Eaton  <jwe@octave.org>
-
-	* misc/f77-fcn.h (F77_XFCN): Move decls to beginning of blocks for C.
-
-2006-04-13  John W. Eaton  <jwe@octave.org>
-
-	* misc/quit.h BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_1,
-	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE): Omit unnecessary casts.
-	* misc/f77-fcn.h (F77_XFCN, F77_CHAR_ARG_LEN): Likewise.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* ranlib/wrap.f (dgenexp, dgengam, dignpoi): New functions.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* misc/f77-fcn.h (F77_XFCN): Save octave_interrupt_immediately and
-	restore it if an exception occurs that causes a longjmp.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* ranlib/ignbin.f, ranlib/ignpoi.f: Avoid arithmetic IF statements.
-
-2005-10-17  John W. Eaton  <jwe@octave.org>
-
-	* lapack/Makefile.in (dlamc1.o pic/dlamc1.o):
-	Add $(F77_FLOAT_STORE_FLAG) to FFLAGS.
-
-2005-09-23  John W. Eaton  <jwe@octave.org>
-
-	* misc/machar.c: Restore test code.
-
-2005-09-15  John W. Eaton  <jwe@octave.org>
-
-	* misc/quit.h Rename all win32_ symbols to w32.  Change all uses.
-
-2005-09-15  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (LN_S): Change to DESTDIR before LN_S to avoid
-	lack of symlinks under mingw.
-	* misc/cquit.c (w32_thread_setjmp_mutex, win32_signal_context,
-	win32_signal_to_raise, win32_main_thread_id, win32_main_thread,
-	win32_restore_thread): New static variables.
-	(win32_in_main_thread): Returns 1 if in main thread for win32.
-	(win32_reset_context): Reset context (longjmp style) for win32.
-	(win32_raise_in_main): Raise signal in main thread for win32.
-	(win32_raise): Raise signal for win32.
-	(win32_raise_final): Clean up win32 signalling.
-	(win32_sigint_init): Initialize win32 signalling.
-	* quit.h (win32_sigint_init, win32_raise_final, win32_raise,
-	win32_in_main_thread): Declaration.
-
-2005-09-14  Daniel  <durbano@shbano.com>
-
-	* lapack/zbdsqr.f: Fix typo in docs.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-05-06  John W. Eaton  <jwe@octave.org>
-
-	* lapack/dpotri.f, lapack/dlauum.f, lapack/dlauu2.f,
-	lapack/zpotri.f, lapack/zlauum.f, lapack/zlauu2.f: New files.
-
-2005-04-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in, Makerules.in (clean, distclean, maintainer-clean):
-	Avoid duplication in rules.
-
-2005-03-17  Andy Adler  <adler@site.uottawa.ca>
-
-	* Makerules.in (install-strip): Include double-colon target here too.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (bin-dist): Delete target.
-	(BINDISTLIBS, BINDISTFILES): Delete variables.
-
-2005-03-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (CRUFT_DIRS): Remove it from the list.
-	* odessa: Delete directory.
-
-	* misc/machar.c (rmachar): Declare local REAL variables volatile.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	* blas/zher.f: New file.
-
-	Sparse merge.
-
-	2005-01-13 David Bateman  <dbateman@free.fr>
-
-	* lapack/dgttrf.f lapack/dgttrs.f lapacl/zgttrf.f lapack/zgttrs.f:
-	new files
-
-	2005-01-23  David Bateman  <dbateman@free.fr>
-
-	* lapack/dgtsv.f lapack/dpbcon.f lapack/dpbtf2.f lapack/dpbtrf.f
-	lapack/dpbtrs.f lapack/dptsv.f lapack/dpttrf.f lapack/dpttrs.f
-	lapack/dptts2.f lapack/zgtsv.f lapack/zpbcon.f lapack/zpbtf2.f
-	lapack/zpbtrf.f lapack/zpbtrs.f lapack/zptsv.f lapack/zpttrf.f
-	lapack/zpttrs.f lapck/zptts2.f: New files.
-
-	2004-12-29  John W. Eaton  <jwe@octave.org>
-
-	* blas/zbtsv.f: New file.
-	* lapack/dgbcon.f, lapack/dgbtrf.f, lapack/dgbtrs.f,
-	lapack/dlatbs.f, lapack/zgbcon.f, lapack/zgbtf2.f,
-	lapack/zgbtrf.f, lapack/zgbtrs.f, lapack/zlatbs.f: New files.
-
-2005-02-10  John W. Eaton  <jwe@octave.org>
-
-	* misc/cquit.c (octave_signal_caught): New global variable.
-	* misc/quit.cc (occtave_handle_signal): New function.
-	(octave_signal_hook): New global pointer.
-	* misc/quit.h: Provide decls.
-	(OCTAVE_QUIT): Check octave_signal_caught, not
-	octave_interrupt_state, and call octave_handle_signal, not
-	octave_throw_interrupt_exception.
-
-2005-02-08  John W. Eaton  <jwe@octave.org>
-
-	* misc/quit.h: Use C-style comments.
-
-2004-09-08  John W. Eaton  <jwe@octave.org>
-
-	* misc/machar.c (rmachar): Use modern C declaration.
-
-2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/f77-fcn.c: Handle Cray, CVF, and f2c calling conventions.
-
-	* misc/f77-fcn.h (xstopx): Use F77_CHAR_ARG_DECL and
-	F77_CHAR_ARG_LEN_DECL in declaration.
-
-2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.h (OCTAVE_QUIT): Set octave_interrupt_state to -1
-	while we are handling interrupts.
-
-2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LINK_DEPS): Always define.
-
-2003-11-12  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/machar.c (machar) [CRAY]: Kluge to make it work.
-
-2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* odepack/dlsode.f: Rename from odepack/lsode.f.
-	* odepack/dlsode.f (DLSODE): Rename from LSODE to avoid name
-	conflict with LSODE class constructors on systems that upcase
-	Fortran names.
-
-	* odessa/dodessa.f: Rename from odessa/odessa.f.
-	* odessa/dodessa.f (DODESSA): Rename from ODESSA to avoid name
-	conflict with ODESSA class constructors on systems that upcase
-	Fortran names.
-
-2003-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (MISC_OBJ): Add misc/cquit.o to the list.
-
-	* misc/Makefile.in (SPECIAL_SRC): Add cquit.c to the list.
-	* misc/cquit.c: New file.
-	* misc/quit.cc: Move everything except octave_interrupt_hook,
-	octave_bad_alloc_hook, octave_throw_interrupt_exception, and
-	octave_throw_bad_alloc to cquit.c.
-
-2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
-	Move declarations outside of extern "C" block.
-
-2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/f77-fcn.h: Only use inline if this is C++.
-
-	* misc/f77-fcn.c (xstopx): Return type is now F77_RET_T.
-	Use F77_RETURN.
-	* misc/machar.c (machar): Likewise.
-
-	* misc/f77-fcn.h (F77_CHAR_ARG, F77_CONST_CHAR_ARG, F77_CHAR_ARG2,
-	F77_CONST_CHAR_ARG2, F77_CXX_STRING_ARG, F77_CHAR_ARG_LEN,
-	F77_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, F77_CHAR_ARG_LEN_DECL,
-	F77_RET_T, F77_RETURN): New macros.
-	[F77_USES_CRAY_CALLING_CONVENTION]: New data conversion functions.
-
-	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
-	Move function pointer declarations inside __cplusplus section.
-
-2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Use $(INSTALL), not
-	$(INSTALL_PROGRAM) for $(SHLLIB) files.
-
-2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (CLEAN_SUBDIRS): New variable.
-	(clean mostlyclean distclean maintainer-clean): Use it to ensure
-	cleaning in all subdirs, not just those we build in.
-
-	* Makerules.in (maintainer-clean, distclean): Don't use
-	dependencies on double colon rules.
-	(distclean): Also remove *.d, *.a, *.o, pic/*.o, pic, and stmp-pic.
-	(maintainer-clean): Also remove *.d, *.a, *.o, pic/*.o, pic, and
-	stmp-pic, and Makefile.
-
-	* Makefile.in (maintainer-clean, distclean): Also remove *.$(SHLEXT).
-
-2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dasrt/ddasrt.f (DDASRT): Print correct message for invalid MXSTP.
-
-	* dassl/ddassl.f (DDASSL): Handle MXSTP as in DASRT.
-
-	* dassl/ddajac.f (DDAJAC): LIPVT is now 22.
-	* dassl/ddassl.f (DDASSL): Likewise.
-	* dassl/ddaslv.f (DDASLV): Likewise.
-
-	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
-	New function pointers.
-	* misc/quit.cc: Initialize them.
-	(octave_throw_interrupt_exception): If octave_interrupt_hook is
-	set, call it.
-	(octave_throw_bad_alloc): Likewise, for octave_bad_alloc_hook.
-
-	* dasrt/ddasrt.f (DDASRT): Set LMXSTP to 21 and LIPVT to 22 to
-	avoid conflict with LLAST in DRCHECK.  Change docs for INFO(12)
-	and LIW.
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, misc/Makefile.in: Handle DESTDIR.
-
-2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* blas/sgemm.f, blas/strsm.f, blas/ssyrk.f, blas/sscal.f,
-	blas/sgemv.f, blas/sdot.f: New files.
-
-2003-02-20  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* dassl/ddaslv.f: Fortran doesn't use ; in statements.
-
-2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* blas/dtbsv.f: New file.
-	* lapack/dlatrs.f, lapack/dtrti2.f, lapack/dtrtri.f, lapack/ztrti2.f,
-	lapack/ztrtri.f: New files.
-
-2003-02-04  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (CRUFT_DIRS): Remove linpack from list.
-
-	* linpackdgbfa.f, linpackdgbsl.f, linpackdgeco.f, linpackdgedi.f,
-	linpackdgefa.f, linpackdgesl.f, linpackspofa.f, linpackzgeco.f,
-	linpackzgedi.f, linpackzgefa.f, linpackzgesl.f: Delete.
-
-	* dassl/ddajac.f, dassl/ddaslv.f:  Use DGxTRF and
-	DGxTRS instead of DGxFA and DGxSL.
-	* daspk/ddaspk.f, daspk/dmatd.f, daspk/dslvd.f: Likewise.
-	* odepack/lsode.f, odepack/prepj.f, odepack/solsy.f: Likewise.
-	* odessa/odessa.f, odessa/odessa_prepj.f, odessa/odessa_solsy.f:
-	Likewise.
-	* libcrudt/ranlib/setgmn.f: Use SPOTRF instead of SPOFA.
-
-	* lapack/dgbtf2.f, lapack/dgbtrf.f, lapack/dgbtrs.f,
-	lapack/dgecon.f, lapack/dgetri.f, lapack/spotf2.f,
-	lapack/spotrf.f, lapack/zgecon.f, lapack/zgetri.f: New files.
-
-2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.h (BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_1,
-	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_2): New macros.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* odessa/odessa_rscom.f (ODESSA_RSCOM): Fix apparent typo (LODE2
-	should probably be LIODE2).
-
-	* Makerules.in (clean, mostlyclean): Also remove *.d.
-
-	* misc/quit.cc: Add std:: qualifiers to memcpy calls.
-
-2003-01-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* misc/quit.h: Move #include <new> outside extern "C" block.
-	* misc/f77-fcn.h: Move #include "quit.h" outside extern "C" block.
-
-2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.h (BEGIN_INTERRUPT_WITH_EXCEPTIONS,
-	END_INTERRUPT_WITH_EXCEPTIONS): Only define for C++ source.
-	Include <new> for C++ source.
-
-2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.h, misc/quit.cc [! USE_EXCEPTIONS_FOR_INTERRUPTS]):
-	Always use exceptions for handling interrupts.
-	(BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE):
-
-	* misc/quit.h (OCTAVE_TRY_WITH_INTERRUPTS, OCTAVE_THROW_BAD_ALLOC,
-	OCTAVE_CATCH_INTERRUPTS, SAVE_OCTAVE_INTERRUPT_IMMEDIATELY,
-	INCREMENT_OCTAVE_INTERRUPT_IMMEDIATELY, OCTAVE_THROW_TO_TOP_LEVEL,
-	DECREMENT_OCTAVE_INTERRUPT_IMMEDIATELY, OCTAVE_JUMP_TO_TOP_LEVEL,
-	SET_OCTAVE_INTERRUPT_IMMEDIATELY): Replace all uses with
-	definitions, delete macros.
-
-2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/quit.cc (octave_allocation_error): New variable.
-	(octave_throw_bad_alloc): New function.
-	* misc/quit.h: Provide decls.
-	(OCTAVE_THROW_BAD_ALLOC): New macro.
-	(END_INTERRUPT_WITH_EXCEPTIONS): Also catch bad_alloc.
-	* misc/f77-fcn.h (F77_XFCN): Handle allocation errors.
-
-	* misc/quit.h (octave_jmp_buf): New typedef.
-	(current_context): Type is now octave_jmp_buf.
-	(octave_set_current_context): Use sigsetjmp if we have it.
-	(octave_interrupt_immediately, octave_interrupt_state): Type is
-	now sig_atomic_t.
-	(BEGIN_INTERRUPT_WITH_EXCEPTIONS, END_INTERRUPT_WITH_EXCEPTIONS):
-	New macros.
-
-	* misc/quit.cc (octave_jump_to_enclosing_context): Use siglongjmp
-	if we have it.
-	(octave_save_current_context, octave_restore_current_context): Use
-	octave_jmp_buf type here.
-
-2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in: Handle automatic dependency generation for
-	C/C++ source files.
-
-	* misc/quit.h (INCREMENT_OCTAVE_INTERRUPT_IMMEDIATELY,
-	DECREMENT_OCTAVE_INTERRUPT_IMMEDIATELY,
-	SET_OCTAVE_INTERRUPT_IMMEDIATELY): New macros.
-	(BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE,
-	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE): Use them.
-	* f77-fcn.h (F77_XFCN): Likewise.
-
-	* misc/quit.cc: Include <cstring> for memcpy decl.
-
-2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/f77-fcn.h (F77_XFCN): Adapt to new signal/exception
-	handling scheme.
-	(f77_context): Delete decl.
-	(copy_f77_context): Likewise.
-	* misc/f77-fcn.cn (copy_f77_context): Delete.
-	(Fxstopx): Set f77_exception_encountered.
-	Use octave_jump_to_enclosing_context, not longjmp.
-
-	* misc/f77-extern.cc (f77_context): Delete definition.
-
-	* misc/quit.h, misc/quit.cc: New files.
-	* misc/Makefile: Add them to the appropriate lists.
-
-	* Makefile (MISC_OBJ): Add misc/quit.o
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* odessa/odessa.f (ODESSA): Second arg of xerrwd is string length.
-	* odessa/odessa_intdy.f (ODESSA_INTDY): Likewise.
-
-2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dasrt/ddasrt.f (DDASRT): Fix computation of LENRW.
-
-2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install): Don't bother with versions for $(SHLBIN)
-	files.
-
-	* slatec-err/xerrwd.f (XERRWD): Print msg(1:nmes), not just msg.
-
-2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install): No need to use cd to create links.
-
-2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: Use link dependencies for shared libs if
-	INCLUDE_LINK_DEPS.
-	(LIBRARIES): If doing shared libs, include versioned library in	list.
-	(libcruft.$(SHLEXT), libcruft.$(SHLEXT_VER)): Reverse actions --
-	build unversioned library, symbolic link adds version info.
-	(install, uninstall): Handle link and load forms of the library
-	separately.
-
-2002-09-30  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* slatec-fn/xdacosh.f: Mark external functions as external.
-	* slatec-fn/xdasinh.f: Ditto.
-	* slatec-fn/xdatanh.f: Ditto.
-	* slatec-fn/xdbetai.f: Ditto.
-	* slatec-fn/xderf.f: Ditto.
-	* slatec-fn/xderfc.f: Ditto.
-	* slatec-fn/xdgami.f: Ditto.
-	* slatec-fn/xdgamit.f: Ditto.
-	* slatec-fn/xdgamma.f: Ditto.
-	* slatec-fn/xgmainc.f: Ditto.
-
-2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* odessa/odessa.f (ODESSA): Use XERRWD instead of XERR.
-	* odessa/intdy.f (ODESSA_INTDY): Likewise.
-	* odessa_rscom.f (ODESSA_RSCOM): Delete unused common block EH0001.
-	* odessa_svcom.f (ODESSA_SVCOM): Likewise.
-
-	* dasrt/xerrwv.f, odepack/xerrwv.f: Delete.
-	* slatec-err/xerrwd.f (XERRWD): Call XSTOPX instead of using STOP.
-
-	* quadpack/dqagi.f (DQAGI): Replace Hollerith constants with
-	character string constants.
-	* quadpack/dqagp.f (DQAGP): Likewise.
-	* odepack/lsode.f (LSODE): Likewise.
-
-	* odepack/lsode.f (LSODE): Use XERRWD instead of XERRWV.
-	* odepack/intdy.f (INTDY): Likewise.
-	* dasrt/ddasrt.f (DDASRT): Likewise.
-	* quadpack/xerror.f (XERROR): Likewise.
-
-2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/xgmainc.f: New file.
-
-2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dasrt: New subdirectory.
-	* Makefile.in (CRUFT_DIRS): Add it to the list.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* odessa: New subdirectory.
-	* Makefile.in (CRUFT_DIRS): Add it to the list.
-
-2002-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-err/xermsg.f (XERMSG): If MAXMES .LT. 0, messages may be
-	printed an unlimited number of times.
-	* slatec-err/j4save.f (J4SAVE) Default for MAXMES is now -1.
-
-	* misc/f77-fcn.c (xstopx): Pass args in proper order.
-
-2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ordered-qz/dsubsp.f (DSUBSP): Delete decl for unused variable J.
-
-	* misc/f77-fcn.c (xstopx): Return type is void, not volatile void.
-	* misc/f77-fcn.h (xstopx): Provide decl.  Add special gcc noreturn
-	attribute here.
-
-2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/f77-fcn.h: Define F77_FCN for backward compatibility.
-
-2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-err/ixsav.f, slatec-err/xerrwd.f: New files.
-
-	* daspk: New directory.
-	* Makefile.in (CRUFT_DIRS): Add it to the list
-
-2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* misc/machar.c: Use F77_FUNC instead of checking
-	F77_APPEND_UNDERSCORE.
-	* misc/f77-fcn.h: Don't define F77_FCN.
-	(xSTRINGIZE, STRINGIZE): New macros.
-	(F77_XFCN_ERROR): Simplify by using STRINGIZE and F77_FUNC.
-	(F77_XFCN): Use F77_FUNC instead of F77_FCN.
-	* misc/f77-fcn.c: Use F77_FUNC instead of F77_FCN.
-
-2001-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTSUBDIRS): Add fftpack.
-
-2001-08-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lapack/dlasq3.f: Update from netlib.
-	* lapack/dlasq5.f: Ditto.
-
-2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* Makefile.in (CRUFT_DIRS): Substitute @FFT_DIR@.
-
-2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install): Don't use mk-libdir-link.
-
-2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (CPICDEP): Remove pic/dostop.o from the list.
-
-2001-03-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/xstopx.f: Delete.
-	* misc/dostop.c: Delete.
-	* misc/Makefile.in (SPECIAL, SPECIAL_DEPEND): Delete dostop.c and
-	dostop.o from lists.
-	* Makefile.in (MISC_OBJ): Delete misc/dostop.o from the list.
-
-	* misc/dostop.c (dostop): Use F77_FCN macro for function definition.
-	Specify length in error format to avoid need for copying string.
-	From Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>.
-
-2000-12-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lapack/dgelss.f (DGELSS): Use correct leading dimension for
-	workspace array passed to dgemm and dlacpy.
-	(ZGELSS): Likewise, for calls to zgemm and zlacpy.
-
-2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTSUBDIRS): New macro.
-	(dist): Use it instead of SUBDIRS.
-
-2000-06-30  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* blas-xtra, lapack-xtra: New directories.
-	* Makefile.in (CRUFT_DIRS): Add them to the list.
-	Substitute @BLAS_DIR@ and @LAPACK_DIR@ here.
-	* blas-xtra/xerbla.f: Move here from blas subdirectory.
-	* blas-xtra/Makefile.in: New file.
-	* lapack-xtra/xdlamch.f, lapack-xtra/xdlange.f,
-	lapack-xtra/xzlange.f: Move here from lapack subdirectory.
-	* lapack-xtra/Makefile.in: New file.
-
-2000-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (install, uninstall): Include files go in
-	$(octincludedir)/octave, not just $(octincludedir).
-
-2000-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LIBRARIES): Conditionally define.
-	(libraries): Depend on $(SUBDIRS) only.
-	Make $(LIBRARIES) using a recursive invocation of make once
-	$(SUBDIRS) are up to date.
-	(.NOTPARALLEL): New target, for GNU Make 3.79.
-
-2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (libcruft.$(LIBEXT)): New target.
-	(all): Depend on `libraries', not `$(SUBDIRS) shared-lib'.
-	Conditionally construct `libraries' target.
-	(libcruft.$(SHLEXT_VER)): Delete target before rebuilding.
-	* Makerules.in (LIBCRUFT): Delete variable.
-	(LIBCRUFT_DEPEND): Conditionally define to $(LIBCRUFT_OBJS) only.
-	(all): Print warning if anything is done.
-	(stmp-pic): New target.
-	($CRUFT_PICOBJ): Depend on stmp-pic.
-	(clean, mostlyclean): Remove pic and stmp-pic.
-
-2000-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lapack/dbdsqr.f, lapack/dgeesv.f, lapack/dgelss.f,
-	lapack/dgesvd.f, lapack/dlasq1.f, lapack/dlasq2.f,
-	lapack/dlasq3.f, lapack/dlasq3.f, lapack/dlasq4.f,
-	lapack/dlasq5.f, lapack/dlasq6.f, lapack/zbdsqr.f,
-	lapack/zgelss.f, lapack/zgesvd.f, lapack/zhetd2.f:
-	Update from netlib.
-
-1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Update to Lapack version 3.0.
-	* lapack/ieeeck.f, lapack/dlasq2.f, lapack/dlasq3.f,
-	lapack/dlasq5.f, lapack/dlasq6.f: New files.
-
-1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/lo-error.cc (current_liboctave_warning_handler): Define	here.
-	(set_liboctave_warning_handler): New function.
-	(liboctave_warning): Ditto.
-	* misc/lo-error.h: Provide declararations for them here.
-
-1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (dist): Use `$(MAKE) -C dir' instead of `cd dir;
-	$(MAKE); cd ..'.
-
-1999-10-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dassl/dpotrf.f, dassl/dpotf2.f: Move to lapack subdirectory.
-
-Fri Mar 26 01:19:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makerules.in (all): Don't try to use a special rule for making
-	the archive.  The default rules may be slower, but they are also
-	correct.
-
-Wed Nov 11 17:27:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (CRUFT_DIRS): Add amos.  Delete specfun.
-	* specfun: Delete directory.
-	* amos: New directory
-
-Thu Oct 15 00:43:13 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ranlib: Update to newer version of randlib.
-	* ranlib/Makefile.in (SPECIAL): Update list.
-
-Thu Sep 24 11:59:02 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* balgen, eispack: Delete directories and unnecesary files.
-	* Makefile.in (CRUFT_DIRS): Delete eispack and balgen from the list.
-
-	* lapack/xdlamch.f: New file.
-
-	* ordered-qz: New directory.
-	* Makefile.in (CRUFT_DIRS): Add it to the list.
-
-	* lapack/dggbak.f, lapack/dtgevc.f, lapack/zggbal.f: New files.
-
-Tue Jun  2 09:57:52 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/rybesl.f (rybesl): Don't access by(2) unless nb .gt. 1.
-
-Mon May 11 12:33:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* fftpack/passb3.f, fftpack/passb5.f, fftpack/passf3.f,
-	fftpack/passf5.f: Use double precision constants in data
-	statements.
-
-Tue Apr 14 14:01:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/xdgamit.f (xdgamit): New file.
-
-Mon Apr  6 00:26:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/xdgami.f (xdgami): Reorder args to match dgami.
-
-Thu Feb 19 21:00:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/ribesl.f, specfun/rjbesl.f: Compute NSIG correctly.
-	Add missing comma in declaration statement.
-
-Sun Feb  1 12:39:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
-	Use $(mk-libdir-link).
-
-	* quadpack/dqagi.f, quadpack/dqagie.f, quadpack/dqagp.f,
-	quadpack/dqagpe.f, quadpack/dqk15i.f, quadpack/dqk21.f:
-	Make user-supplied code a subroutine instead of a function.
-
-Mon Jan 19 23:11:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lapack/xdlange.f, lapack/xzlange.f: New files.
-
-Mon Dec  1 00:51:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dassl/xerhlt.f, dassl/xermsg.f, dassl/xerprn.f, dassl/xgetua.f,
-	dassl/xsetua.f: Delete.
-
-	* slatec-err: New directory.
-	* Makefile.in: Add it to the list.
-
-Sun Nov 30 17:55:20 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/xdgami.f, slatec-fn/xdbetai.f, slatec-fn/xderfc.f,
-	slatec-fn/xderf.f, slatec-fn/xdatanh.f, slatec-fn/xdasinh.f,
-	slatec-fn/xdacosh.f: New files.
-
-Sat Nov 29 13:02:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/ribesl.f (ribesl): Use d1mach to get machine parameters.
-	SAVE static data between calls.  Use PARAMETERS where possible.
-	* specfun/rjbesl.f (rjbesl): Likewise.
-	* specfun/rkbesl.f (rkbesl): Likewise.
-	* specfun/rybesl.f (rybesl): Likewise.
-
-Fri Nov 28 14:05:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun: New subdirectory.
-	* specfun/Makefile.in, specfun/ribesl.f, specfun/rjbesl.f,
-	specfun/rkbesl.f, specfun/rybesl.f: New files.
-	* Makefile.in (CRUFT_DIRS): Add specfun.
-
-Wed Nov 26 01:49:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/d9gmit.f, slatec-fn/d9lgic.f, slatec-fn/d9lgit.f,
-	slatec-fn/dbetai.f, slatec-fn/dgami.f, slatec-fn/dgamit.f,
-	slatec-fn/dgamr.f, slatec-fn/dlbeta.f, slatec-fn/dlnrel.f:
-	New files for incomplete beta and incomplete gamma functions.
-
-Thu Jul 17 13:18:57 1997  Klaus Gebhardt  <gebhardt@crunch.ikp.physik.th-darmstadt.de>
-
-	* blas/xerbla.f (xerbla): Call XSTOPX instead of using STOP.
-
-Fri Jun  6 16:49:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* slatec-fn/xdgamma.f: New file.
-
-	* fsqp, npsol, qpsol: Delete directories.
-	* Makefile.in (CRUFT_DIRS): Delete fsqp, npsol, and qpsol from list.
-
-Thu Jun  5 01:40:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, Makerules.in: Make building of static library optional.
-	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
-
-	* Makerules.in (stamp-picdir): Delete.
-	(pic): New target.  Don't worry so much about creating pic
-	directory only when it is really needed.
-
-	* Makefile.in (stamp-shared): Delete.
-	(shared-lib): New target.  Depend on shared libraries directly.
-
-Wed May 21 16:29:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (install): Ensure include directory link is made.
-	(uninstall): Delete all installed files.
-
-Thu Mar 13 22:31:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* blas, lapack: Add new files for symmetric eigenvalue
-	computation.
-
-Wed Mar 12 16:59:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (install-strip): New target.
-
-	* Makefile.in (install-strip): New target.
-
-Mon Mar  3 15:38:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ranlib/Makefile.in (EXTERNAL_DISTFILES): Add Basegen.doc.
-
-	* fftpack/Makefile.in (EXTERNAL_DISTFILES): Add fftpack.doc.
-
-	* Makefile.in (DISTFILES): Add configure.in.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Wed Feb 26 12:08:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (maintainer-clean): Also remove configure.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.3 released.
-
-Fri Feb 14 16:23:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
-
-Thu Feb 13 17:33:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-shared): Use $(SH_LD) $(SH_LDFLAGS) instead
-	of $(CXX) -shared.
-
-	* Makerules.in (stamp-picdir): Silence noise about making pic.
-
-Mon Jan 27 15:52:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-Sat Jan 25 22:34:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, balgen/Makefile.in, blas/Makefile.in,
-	cfsqp/Makefile.in, dassl/Makefile.in, eispack/Makefile.in,
-	fftpack/Makefile.in, fsqp/Makefile.in, lapack/Makefile.in,
-	linpack/Makefile.in, minpack/Makefile.in, misc/Makefile.in,
-	npsol/Makefile.in, odepack/Makefile.in, qpsol/Makefile.in,
-	quadpack/Makefile.in, ranlib/Makefile.in, slatec-fn/Makefile.in,
-	villad/Makefile.in (bin-dist): New target.
-
-Wed Jan 22 15:03:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (pic/machar.o): Add $(CPICFLAG) for this target.
-
-	* misc/d1mach.f (d1mach): Move SAVE statement ahead of DATA statment.
-
-Wed Jan 15 21:04:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* blas/*.f: Update to latest version from Netlib.
-
-Tue Jan  7 00:17:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Tue Dec 17 11:02:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/lo-error.c: Convert C++-style comments to C-style comments.
-
-Wed Dec 11 01:50:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (SPECIAL_DEPEND): Delete d1mach.o from the list.
-
-Tue Dec 10 01:43:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-Fri Dec  6 15:23:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.94.
-
-Wed Nov 20 01:00:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (install): Also install lo-error.h.
-
-	* Makefile.in (MISC_OBJ): Add misc/f77-fcn.o.
-
-	* misc/lo-error.h: New file, moved here from liboctave.
-	* misc/lo-error.c: Rename from lo-error.cc.  Make this a C-file
-	instead of C++.
-
-	* Version 1.93.
-
-Tue Nov 19 23:04:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in: Add variables for installing things.
-
-	* Makerules.in (install, uninstall): Make these double colon rules.
-
-	* f77-fcn.c, f77-fcn.h: New files, from liboctave.
-
-	* misc/Makefile.in (SPECIAL_DEPEND): Add f77-fcn.o.
-	(SPECIAL): Add f77-fcn.c and f77-fcn.h.
-	(CPICDEP): Add pic/f77-fcn.o.
-	(install): Install f77-fcn.h in $(octincludedir).
-	(uninstall): Delete f77-fcn.h from $(octincludedir).
-
-	* Makerules.in (CRUFT_CSRC): Delete unsed variable.
-
-Thu Nov 14 00:07:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.92.
-
-Fri Nov  8 09:55:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (libcruft.a): Delete target.
-	* Makerules.in, Makefile.in: Use real archive rules to build
-	libcruft.a in parts.
-
-	* Makefile.in (install): Use $(INSTALL_PROGRAM) for installing
-	shared library.
-
-Thu Nov  7 12:43:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Add -lm when building shared library.
-
-	* Version 1.91.
-
-Mon Nov  4 10:09:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lapack/dlag2.f, lapack/dggbal.f, lapack/dgghrd.f, lapack/dhgeqz.f:
-	New files.
-
-	* Makefile.in (install): Use INSTALL_PROGRAM for shared version of
-	libcruft.
-
-Sun Nov  3 19:37:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in (distclean): Delete target, since there is
-	nothing special to do.
-
-Wed Oct 30 17:20:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-	* misc/Makefile.in: Make pic/machar.o using special rule.
-	Use CPPFLAGS, not CPP_FLAGS.
-
-Thu Oct 24 20:22:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (CRUFT_OBJ): No special treatment for d1mach.o.
-
-	* misc/machar.c, misc/d1mach.f: New files
-	* misc/Makefile.in: Fix to not generate d1mach.f.
-
-Mon Oct 14 11:07:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean): Remove stamp-shared too.
-
-Sat Oct 12 00:20:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (maintainer-clean): Don't depend on distclean.
-	* Makerules.in (maintainer-clean): Ditto.
-
-Tue Aug 20 22:09:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makerules.in (stamp-picdir): Only create a pic subdirectory if
-	SHARED_LIBS is true AND FPICFLAG is not empty.
-
-Wed May 22 15:07:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-shared): Use CC, not CXX to create shared
-	library.  Also use SHARED_FLIBS here instead of FLIBS.
-
-Sat Apr  6 21:28:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makerules.in (clean, mostlyclean): Also remove pic/*.o.
-	(maintainer-clean, distclean): Also remove stamp-picdir and pic
-	directory.
-
-Wed Apr  3 01:01:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/Makefile.in: Set SPECIAL_PICDEPEND after including Makeconf
-	and before including Makerules.
-
-Fri Mar 29 13:45:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean): Delete so_locations, which is created
-	on DEC Alpha systems.
-	(distclean, maintainer-clean): Don't depend on clean.
-
-Wed Mar 27 05:59:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makerules.in: Add rules for making PIC code here.
-	* Makefile.in (libcruft.a): Depend on $(CRUFT_PICOBJ)
-	* misc/Makefile.in: Add rules for making PIC code from C and C++
-	files.
-
-Fri Feb  9 21:04:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/f77-extern.cc, misc/lo-error.cc: New files.
-	* misc/Makefile.in (SPECIAL, SPECIAL_DEPEND): Add them to the lists.
-	* Makefile.in (CRUFT_OBJ): Add it f77-extern.o and lo-error.o here
-	too.
-
-Sat Feb  3 07:57:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/dostop.c (dostop): Call error handler if we have a message.
-	Call longjmp on f77_context, not jump_to_top_level().
-	* misc/xstopx.f (xstopx): Pass non-blank strings on to dostop.
-
-Mon Jan  8 22:55:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): If $(SHARED_LIBS), remove shared libs.
-	(mostlyclean): Ditto.
-
-Fri Dec 29 21:43:24 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, Makerules.in: Handle creating position independent
-	code and shared libraries for Octave.
-
-Tue Dec 26 00:15:31 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makerules.in (stamp-picdir): New target.
-	(all): Depend on it.
-
-	* Makefile.in: Delete references to configure stuff.
-	* configure.in, mkinstalldirs: Delete.
-
-Sun Dec 24 02:42:29 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linpack/spofa.f: New file.
-	* blas/level-1/sdot.f: New file.
-	* blas/level-2/dsyr.f: New file.
-
-Thu Dec 14 02:34:19 1995  Rick Niles  <niles@axp745.gsfc.nasa.gov>
-
-	* fftpack/cfftb1.f, fftpack/cfftf1.f, fftpack/cffti1.f,
-	odepack/prepj.f, odepack/solsy.f, odepack/stode.f:
-	Avoid warnings for nonstandard dimension statements of the form
-	`real foo(1)' by using `real foo(*)' instead.
-
-Mon Nov  6 07:24:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/dostop.c: Only call jump_to_top_level() if OCTAVE_SOURCE.
-
-Fri Nov  3 11:08:31 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* misc/dostop.c: Just call jump_to_top_level() directly here.
-
-Wed Sep 20 00:01:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkinstalldirs: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-	* Makerules.in: Fix cleaning rules.  Use double colon so we can
-	add things in the makefiles in the subdirectories.
-
-	* Makefile.in (DISTFILES): Distribute configure.in and configure.
-	(distclean): Also remove Makerules, config.log, and config.status.
-	(maintainer-clean): Depend on distclean.
-
-Mon Apr 10 09:55:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: New file.
-
-Fri Mar 10 10:38:29 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (install uninstall clean mostlyclean distclean
-	realclean): Use SUBDIR_FOR_COMMAND.  Combine actions.
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/OLD-ChangeLogs/liboctave-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14984 +0,0 @@
-2011-04-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* MatrixType (MatrixType::operator =): Plug memory leak due to
-	improper handling of perm array (bug #32804).
-
-2011-03-29  Rik  <octave@nomad.inbox5.com>
-
-	* Array.cc (diag): Treat empty vector (1x0 or 0x1) as valid input.
-	Improves Matlab compatibility (bug #32901).
-
-2011-02-13  David Bateman  <dbateman@free.fr>
-
-	* Sparse-perm-op-defs.h (template <typename SM>
-	SM octinternal_do_mul_colpm_sm (const octave_idx_type *,
-	const SM&)): Ensure that the row indices are sorted.
-
-2011-03-14  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* Sparse.cc (Sparse<T>::alloc) Change std::copy_backward to
-	std::copy, since the destination is at the back and not the
-	front. Bug #32747, cf. entry from 2010-11-25
-
-2011-02-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-alloc.h: Include <cstddef>.
-	From Orion Poplawski <orion@cora.nwra.com>.
-
-2011-02-06  John W. Eaton  <jwe@octave.org>
-
-	* PermMatrix.cc (operator*): Fix mixed row/column permutation
-	case.  Bug #32346.
-
-2011-02-04  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Undo accidental checkin
-
-2011-02-03  John W. Eaton  <jwe@octave.org>
-
-	* cmd-hist.cc (gnu_history::do_process_histcontrol):
-	Rename from command_history::do_process_histcontrol.
-	(gnu_history::do_histcontrol): Rename from
-	command_history::do_histcontrol.
-	* cmd-hist.h (command_history::do_histcontrol): Provide dummy version.
-	* cmd-hist.cc (command_history::do_process_histcontrol): Likewise.
-	Bug #32325.
-
-2011-02-02  John W. Eaton  <jwe@octave.org>
-
-	* Range.cc (Range::Range (double, double, octave_idx_type)):
-	Correctly compute limit from base, increment and number of
-	elements.  Bug #32321.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::assign (const idx_vector&, const idx_vector&,
-	const Sparse<T>&)): Handle case of LHS originally empty, and
-	with non-colon indices.  Fix typo in previous change.  Bug #32263.
-
-2011-01-30  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* lo-sysdep.cc (opendir): On error, free allocated DIR object
-	before returning.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* eigs-base.cc: Remove #endif corresponding to "#ifdef HAVE_ARPACK",
-	not the one that matched "#if !defined (CXX_NEW_FRIEND_TEMPLATE_DECL)".
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* eigs-base.cc (EigsRealNonSymmetricFunc,
-	EigsRealNonSymmetricMatrix, EigsRealNonSymmetricMatrixShift):
-	Initialize eig_vec2 to 0 before calling dneupd.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* eigs-base.cc: Assume we have ARPACK.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::assign (const idx_vector&, const idx_vector&,
-	const Sparse<T>&)): Allow 0x0 LHS with colon dimensions to
-	inherit dimensions from RHS.  Fix tests.  Bug #32263.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-refcount.h: Strip trailing whitespace.
-
-2011-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* SparseQR.h (class SparseQR::SparseQR_reps): Disallow copying.
-	* Array.cc (class rec_permute_helper, class rec_index_helper,
-	class  rec_resize_helper): Likewise.
-	* cmd-edit.cc (class default_command_editor): Likewise.
-
-2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-refcount.h: New source.
-	* Makefile.am: Add it here.
-
-	* Array.h: Use octave_refcount for refcounting.
-	* Sparse.h: Ditto.
-	* SparseCmplxQR.h: Ditto.
-	* SparseQR.h: Ditto.
-	* idx-vector.h: Ditto.
-	* oct-shlib.h: Ditto.
-	* sparse-base-chol.h: Ditto.
-
-2011-01-21  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* oct-fftw.h (class octave_fftw_planner): Disallow copying
-	(class octave_float_fftw_planner): Likewise.
-	* oct-sort.h (class octave_sort): Likewise.
-	(struct oct_sort::MergeState): Likewise.
-	* SparseCmplxQR.h (class SparseComplexQR::SparseComplexQR_rep):
-	Likewise.
-	* sparse-base-chol.h (class sparse_base_cho::sparse_base_chol_rep):
-	Likewise.
-
-2011-01-21  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (xgemm): Initialize output matrix for call to ZHERK.
-	* fCMatrix.cc (xgemm): Initialize output matrix for call to CHERK.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Array-b.cc, Array-d.cc, Array-f.cc, Array-util.cc,
-	Array-util.h, Array.cc, Array.h, Array3.h, CColVector.cc,
-	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
-	CMatrix.h, CNDArray.cc, CNDArray.h, CSparse.cc, CSparse.h,
-	CmplxAEPBAL.cc, CmplxAEPBAL.h, CmplxCHOL.cc, CmplxGEPBAL.cc,
-	CmplxGEPBAL.h, CmplxHESS.cc, CmplxLU.h, CmplxQR.cc, CmplxQR.h,
-	CmplxSCHUR.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DASPK.cc,
-	DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h, DET.h,
-	DiagArray2.h, EIG.cc, LSODE.cc, MArray.cc, MArray.h,
-	MDiagArray2.cc, MDiagArray2.h, MSparse.cc, MSparse.h,
-	MatrixType.cc, MatrixType.h, ODESFunc.h, PermMatrix.cc,
-	PermMatrix.h, Quad.cc, Range.cc, Sparse.cc, Sparse.h,
-	SparseCmplxCHOL.cc, SparseCmplxCHOL.h, SparseCmplxLU.cc,
-	SparseCmplxLU.h, SparseCmplxQR.cc, SparseCmplxQR.h, SparseQR.cc,
-	SparseQR.h, SparsedbleCHOL.cc, SparsedbleCHOL.h,
-	SparsedbleLU.cc, SparsedbleLU.h, base-aepbal.h, base-de.h,
-	base-lu.cc, base-lu.h, boolNDArray.cc, boolNDArray.h,
-	boolSparse.cc, boolSparse.h, bsxfun-defs.cc, chMatrix.cc,
-	chNDArray.cc, chNDArray.h, cmd-edit.cc, cmd-edit.h, cmd-hist.cc,
-	dColVector.h, dDiagMatrix.cc, dDiagMatrix.h, dMatrix.cc,
-	dMatrix.h, dNDArray.cc, dNDArray.h, dSparse.cc, dSparse.h,
-	dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleGEPBAL.cc,
-	dbleGEPBAL.h, dbleQR.cc, dbleQR.h, dbleSCHUR.h, dbleSVD.h,
-	dim-vector.cc, dim-vector.h, dir-ops.cc, eigs-base.cc,
-	f2c-main.c, fCColVector.cc, fCColVector.h, fCDiagMatrix.cc,
-	fCDiagMatrix.h, fCMatrix.cc, fCMatrix.h, fCNDArray.cc,
-	fCNDArray.h, fCRowVector.cc, fCRowVector.h, fCmplxAEPBAL.cc,
-	fCmplxAEPBAL.h, fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxGEPBAL.h,
-	fCmplxHESS.cc, fCmplxLU.h, fCmplxQR.cc, fCmplxQR.h,
-	fCmplxQRP.cc, fCmplxSCHUR.cc, fCmplxSVD.h, fColVector.h,
-	fDiagMatrix.cc, fDiagMatrix.h, fEIG.cc, fMatrix.cc, fMatrix.h,
-	fNDArray.cc, fNDArray.h, file-ops.cc, file-stat.cc,
-	floatAEPBAL.cc, floatAEPBAL.h, floatCHOL.cc, floatCHOL.h,
-	floatGEPBAL.cc, floatGEPBAL.h, floatLU.h, floatQR.cc, floatQR.h,
-	floatQRP.cc, floatSCHUR.h, floatSVD.h, idx-vector.cc,
-	idx-vector.h, intNDArray.cc, intNDArray.h, kpse.cc,
-	lo-array-gripes.cc, lo-array-gripes.h, lo-cieee.c, lo-ieee.h,
-	lo-mappers.cc, lo-mappers.h, lo-specfun.cc, mx-defs.h,
-	mx-inlines.cc, oct-binmap.h, oct-convn.cc, oct-env.cc,
-	oct-fftw.cc, oct-fftw.h, oct-glob.cc, oct-group.h,
-	oct-inttypes.cc, oct-inttypes.h, oct-locbuf.cc, oct-locbuf.h,
-	oct-md5.cc, oct-mem.h, oct-norm.cc, oct-norm.h, oct-rand.cc,
-	oct-rand.h, oct-rl-hist.c, oct-shlib.cc, oct-shlib.h,
-	oct-sort.cc, oct-sort.h, oct-spparms.cc, oct-spparms.h,
-	oct-syscalls.cc, oct-time.cc, randgamma.c, randmtzig.c,
-	randmtzig.h, randpoisson.c, regex-match.cc, regex-match.h,
-	sparse-base-chol.cc, sparse-base-chol.h, sparse-base-lu.cc,
-	sparse-base-lu.h, sparse-dmsolve.cc, sparse-sort.cc,
-	sparse-sort.h, sparse-util.h, tempname.c:
-	Strip trailing whitespace.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Array.h, Array.cc
-	(Array<T>::resize2 (octave_idx_type, octave_idx_type, const T&)):
-	New private function.
-	(Array<T>::resize (octave_idx_type, octave_idx_type, const T&)):
-	Deprecate.  Call resize2 to do the work.  Remove all uses from
-	Octave.
-
-	* CMatrix.h (ComplexMatrix::resize (octave_idx_type,
-	octave_idx_type, const Complex&)): New function.
-	* dMatrix.h (Matrix::resize (octave_idx_type,
-	octave_idx_type, double)): New function.
-	* fCMatrix.h (FloatComplexMatrix::resize (octave_idx_type,
-	octave_idx_type, const FloatComplex&)): New function.
-	* fMatrix.h (FloatMatrix::resize (octave_idx_type,
-	octave_idx_type, const float)): New function.
-
-2011-01-20  David Bateman  <dbateman@free.fr>
-
-	* Sparce.cc (template <class T> Sparse<T>::Sparse (const Array<T>&,
-	const idx_vector&, const idx_vector&, octave_idx_type,
-	octave_idx_type, bool, octave_idx_type): Fix off by one error in the
-	construction of sparse column vectors. Fix indexing issue in
-	construction of sparse row vectors.
-	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::any (int) const):
-	Fully initialize cidx for any called on the first dimension.
-
-2011-01-19  John W. Eaton  <jwe@octave.org>
-
-	* Array.h (explicit Array (octave_idx_type, const T&)):
-	Restore constructor, but mark as deprecated.
-	(explicit Array (octave_idx_type, octave_idx_type)): Delete.
-	(Array (const Array<T>&, octave_idx_type, octave_idx_type)): Delete.
-	Fix all uses in Octave.
-	* Array3.h: Deprecate header file.  Remove all uses from Octave.
-
-2011-01-19  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.cc (mode_as_string): Declare buffer as an array of
-	12 characters, not 11.  Don't set buf[10] to '\0'; strmode
-	NUL-terminates the array.
-
-2011-01-14  David Grundberg  <individ@acc.umu.se>
-
-	* SparseQR.cc (SparseQR_rep::SparseQR_rep) [HAVE_CXSPARSE]:
-	Make initialization list depend on macro. Fixes compile error when
-	macro isn't defined.
-	* SparseCmplxQR.cc (SparseComplexQR_rep::SparseComplexQR_rep)
-	[HAVE_CXSPARSE]: Ditto.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (xfloor): Move function body here from
-	lo-mappers.h to avoid exposing gnulib:: in a header file.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.cc (mode_as_string): Call strmode instead of mode_string.
-
-	* filemode.h, filemode.c: Delete.
-	* Makefile.am (INCS): Remove filemode.h from the list.
-	(LIBOCTAVE_C_SOURCES): Remove filemode.c from the list.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* CColVector.cc, CMatrix.cc, CRowVector.cc, CSparse.cc,
-	CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxLU.cc, CmplxQR.cc,
-	CmplxQRP.cc, EIG.cc, Quad.cc, dColVector.cc, dMatrix.cc,
-	dRowVector.cc, dSparse.cc, dbleAEPBAL.cc, dbleCHOL.cc,
-	dbleLU.cc, dbleQR.cc, dbleQRP.cc, eigs-base.cc, fCColVector.cc,
-	fCMatrix.cc, fCNDArray.cc, fCRowVector.cc, fCmplxAEPBAL.cc,
-	fCmplxCHOL.cc, fCmplxLU.cc, fCmplxQR.cc, fCmplxQRP.cc,
-	fCmplxSVD.cc, fColVector.cc, fEIG.cc, fMatrix.cc, fNDArray.cc,
-	fRowVector.cc, floatAEPBAL.cc, floatCHOL.cc, floatLU.cc,
-	floatQR.cc, floatQRP.cc, lo-specfun.cc, oct-convn.cc:
-	Style fixes.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (get_blas_trans_arg): Return char, not char *.
-	Change all uses.
-	* dMatrix.cc (get_blas_trans_arg): Likewise.
-	* fCMatrix.cc (get_blas_trans_arg): Likewise.
-	* fMatrix.cc (get_blas_trans_arg): Likewise.
-	Suggested by Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* filemode.c: Use prototypes for function definitions.  Reorder
-	functions to eliminate need for forward declarations.
-	* filemode.h: New file.
-	* file-stat.cc: Include filemode.h instead of using local extern
-	declarations.
-	* Makefile.am (INCS): Add filemode.h to the list.
-
-	* lo-cutils.h: New file.
-	(octave_qsort, octave_strcasecmp, octave_strncasecmp,
-	octave_w32_library_search, octave_waitpid): Move decls here from
-	lo-utils.h.
-	* Makefile.am (INCS): Add lo-cutils.h to the list.
-	* lo-utils.h: Include cutils.h.
-	* lo-cutils.c: Include cutils.h.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* SparseCmplxQR.cc
-	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
-	Correct order of member initialization.
-	* SparseQR.cc (SparseQR::SparseQR_rep::SparseQR_rep): Likewise.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-fftw.cc (octave_fftw_planner::octave_fftw_planner,
-	octave_float_fftw_planner::octave_float_fftw_planner):
-	Avoid duplicate initializations.  Correctly initialize RN to
-	empty dim_vector.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse::Sparse): Initialize all data members in
-	initialization lists.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (rec_permute_helper::rec_permute_helper,
-	rec_index_helper::rec_index_helper,
-	rec_resize_helper::rec_resize_helper): Initialize all data
-	members in initialization lists.
-
-	* Array.h, Array.cc (Array::Array): Initialize slice_data and
-	slice_len in memeber initialization lists.
-	(Array::~Array): Now virtual.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-locbuf.h (octave_chunk_buffer::~octave_chunk_buffer):
-	Now virtual.
-	(class octave_local_buffer, class octave_chunk_buffer):
-	Don't allow copying or assignment.
-
-	* file-stat.h (base_file_stat::~base_file_stat):
-	Now protected and virtual.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* base-lu.h (base_lu::base_lu): Initialize all data members in
-	initialization lists.
-	* base-qr.h (base_qr::base_qr): Likewise.
-	* DET.h (base_det::base_det): Likewise.
-	* sparse-base-lu.h (sparse_base_lu::sparse_base_lu): Likewise.
-	* sparse-base-chol.h (sparse_base_chol::sparse_base_chol): Likewise.
-
-	* base-lu.h (base_lu::~base_lu): Explicitly define virtual destrutor.
-	* base-qr.h (base_qr::~base_qr): Likewise.
-	* base-aepbal.h (base_aepbal::~base_aepval): Likewise.
-	* sparse-base-lu.h (sparse_base_lu::~sparse_base_lu): Likewise.
-	* sparse-base-chol.h (sparse_base_chol::~sparse_base_chol): Likewise.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* DAE.h (DAE::~DAE): Now virtual.
-	* DAERT.h (DAERT::~DAERT): Likewise.
-	* ODE.h (ODE::~ODE): Likewise.
-	* DAEFunc.h (DAEFunc::~DAEFunc): Likewise.
-	* DAERTFunc.h (DAEFunc::~DAEFunc): Likewise.
-	* ODEFunc.h (ODE::~ODE): Likewise.
-	* ODESFunc.h (ODESFunc::~ODESFunc): Likewise.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.h (idx_vector_rep::idx_vector_rep,
-	idx_vector::idx_mask_rep::idx_mask_rep):
-	Initialize all data members in initialization lists.
-
-	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep):
-	Initialize data in member initialization list.
-	(class idx_base_rep, class idx_colon_rep, class idx_range_rep,
-	class idx_scalar_rep, class idx_vector_rep, class idx_mask_rep):
-	Don't allow assignment.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* LSODE.h (class LSODE): Delete pointer data members.
-	(LSODE::LSODE): Initialize all data members in initialization lists.
-	* LSODE.cc (LSODE::integrate): Extract pointers to data from
-	array data members at each call.
-
-	* DASPK.h (class DASPK): Delete pointer data members.
-	(DASPK::DASPK): Initialize all data members in initialization lists.
-	* DASPK.cc (DASPK::integrate): Extract pointers to data from
-	array data members at each call.
-
-	* DASSL.h (class DASSL): Delete pointer data members.
-	(DASSL::DASSL): Initialize all data members in initialization lists.
-	* DASSL.cc (DASSL::integrate): Extract pointers to data from
-	array data members at each call.
-
-	* DASRT.h (class DASRT): Delete pointer data members.
-	(DASRT::DASRT): Initialize all data members in initialization lists.
-	* DASRT.cc (DASRT::integrate): Extract pointers to data from
-	array data members at each call.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* kpse.cc (struct str_llist_elt, struct cache_entry):
-	Explicitly define constructor and destructor.
-
-	* Quad.h (Quad::Quad, IndefQuad::IndefQuad,
-	FloatIndefQuad::FloatIndefQuad): Initialize all data members in
-	initialization lists.
-	* CollocWt.h (CollocWt::CollocWt): Likewise.
-	* oct-time.h (octave_strptime::octave_strptime): Likewise.
-	* oct-time.cc (octave_time::octave_time): Likewise.
-	* pathsearch.h (dir_path::dir_path): Likewise.
-	* regex-match.h (regex_match::regex_match): Likewise.
-	* oct-sort.h (octave_sort::MergeState::MergeState): Likewise.
-	* oct-shlib.h, oct-shlib.cc (octave_shlib::shlib_rep::shlib_rep,
-	octave_shlib::octave_shlib): Likewise.
-	* oct-mutex.h, oct-mutex.cc (octave_mutex::octave_mutex): Likewise.
-	* MatrixType.cc (MatrixType::MatrixType): Likewise.
-	* oct-fftw.cc (octave_fftw_planner::octave_fftw_planner,
-	octave_float_fftw_planner::octave_float_fftw_planner): Likewise.
-
-	* mach-info.h, mach-info.cc (oct_mach_info::oct_mach_info):
-	Initialize all data members in initialization lists.
-	(ten_little_endians): Rename from oct_mach_info::ten_little_endians.
-	Now static instead of private member function
-	(get_float_format): Rename from oct_mach_info::init_float_format.
-	Now static instead of private member function.
-
-	* dir-ops.h, dir-ops.cc (dir_entry::copy): Delete.
-	(dir_entry::dir_entry): Initialize all data members in
-	initialization lists.
-	(dir_entry::operator =): Copy elements directly here instead of
-	calling copy.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* cmd-hist.h, cmd-hist.cc: Sprinkle with const.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* CmplxCHOL.h (ComplexCHOL::ComplexCHOL): Initialize all data
-	members in constructor initialization lists.
-	* CmplxGEPBAL.h (ComplexGEPBALANCE::ComplexGEPBALANCE): Likewise.
-	* CmplxHESS.h (ComplexHESS::ComplexHESS): Likewise.
-	* CmplxSCHUR.h, CmplxSCHUR.cc (ComplexSCHUR::ComplexSCHUR): Likewise.
-	* CmplxSVD.h (ComplexSVD::ComplexSVD): Likewise.
-	* DET.h (base_det::base_det): Likewise.
-	* EIG.h (EIG::EIG): Likewise.
-	* SparseCmplxQR.cc
-	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
-	Likewise.
-	* SparseQR.cc (SparseQR::SparseQR_rep::SparseQR_rep): Likewise.
-	* dbleCHOL.h (CHOL::CHOL): Likewise.
-	* dbleGEPBAL.h (GEPBALANCE::GEPBALANCE): Likewise.
-	* dbleHESS.h (HESS::HESS): Likewise.
-	* dbleSCHUR.h, dbleSCHUR.cc (SCHUR::SCHUR): Likewise.
-	* dbleSVD.h (SVD::SVD): Likewise.
-	* fCmplxCHOL.h (FloatComplexCHOL::FloatComplexCHOL): Likewise.
-	* fCmplxGEPBAL.h
-	(FloatComplexGEPBALANCE::FloatComplexGEPBALANCE): Likewise.
-	* fCmplxHESS.h (FloatComplexHESS::FloatComplexHESS): Likewise.
-	* fCmplxSCHUR.h, fCmplxSCHUR.cc
-	(FloatComplexSCHUR::FloatComplexSCHUR): Likewise.
-	* fCmplxSVD.h (FloatComplexSVD::FloatComplexSVD):
-	Likewise.
-	* fEIG.h (FloatEIG::FloatEIG): Likewise.
-	* floatCHOL.h (FloatCHOL::FloatCHOL): Likewise.
-	* floatGEPBAL.h (FloatGEPBALANCE::FloatGEPBALANCE): Likewise.
-	* floatHESS.h (FloatHESS::FloatHESS): Likewise.
-	* floatSCHUR.h, floatSCHUR.cc (FloatSCHUR::FloatSCHUR): Likewise.
-	* floatSVD.h (FloatSVD::FloatSVD): Likewise.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* LSODE.cc, DASSL.cc, DASRT.cc, DASPK.cc, CmplxSVD.cc,
-	CmplxSCHUR.cc, CmplxHESS.cc, CmplxGEPBAL.cc, CmplxCHOL.cc,
-	EIG.cc, dbleCHOL.cc, dbleGEPBAL.cc, dbleHESS.cc, dbleSCHUR.cc,
-	dbleSVD.cc, fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxHESS.cc,
-	fCmplxSCHUR.cc, fCmplxSVD.cc, fEIG.cc, floatCHOL.cc,
-	floatGEPBAL.cc, floatHESS.cc, floatSCHUR.cc, floatSVD.cc:
-	Style fixes.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-rl-hist.c (hc_erasedups): Avoid GCC warning.
-
-2011-01-12  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* oct-rl-hist.h: Replace macros with an enum
-
-2011-01-12  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-	    John W. Eaton  <jwe@octave.org>
-
-	* cmd-hist.cc (command_history::process_histcontrol,
-	command_history::hist_control, command_history::process_histcontrol,
-	command_history::hist_control): New functions.
-	(command_history::initialize, command_history::do_initialize):
-	New arg, control_arg.
-	* cmd-hist.cc (gnu_history::do_add): Pass history_control to
-	octave_add_history.
-	* cmd-hist.h (command_history::process_histcontrol,
-	command_history::hist_control, command_history::process_histcontrol,
-	command_history::hist_control): Provide decls.
-	(command_history::history_control): New data member.
-
-	* oct-rl-hist.c (octave_add_history): New arg, history_control.
-	Return int, not void.
-	(check_history_control, hc_erasedups): New static functions
-	borrowed from Bash.
-	* oct-rl-hist.h (octave_add_history): Fix decl.
-	(HC_IGNSPACE, HC_IGNDUPS, HC_ERASEDUPS): New #defined constants.
-
-2011-01-06  John W. Eaton  <jwe@octave.org>
-
-	* oct-md5.cc (oct_md5_file): Tag call to fclose with gnulib::.
-	* Range.cc (tfloor): Tag calls to floor with gnulib::.
-	* lo-mappers.h (xfloor): Tag call to floor with gnulib::
-
-2010-12-20  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.h (xrem, xmod): Declare temporary result from
-	multiplication volatile.
-
-2010-12-15  John W. Eaton  <jwe@octave.org>
-
-	Bug #31883.
-
-	* cmd-hist.cc (command_history::do_clean_up_and_save,
-	command_history::do_truncate_file,
-	command_history::do_append, command_history::do_write,
-	gnu_history::do_clean_up_and_save, gnu_history::do_truncate_file,
-	gnu_history::do_append, gnu_history::do_write,
-	gnu_history::do_read_range):
-	Don't do anything if not initialized.
-
-	* cmd-hist.cc, cmd-hist.h (command_history::initialize,
-	command_history::is_initialized): New static functions.
-	(command_history::do_initialize,
-	command_history::do_is_initialized): New member functions.
-
-	* cmd-hist.h (command_history::initialized): New data member.
-	(comand_history::command_history): Initialize it.
-
-2010-12-14  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.h (xcopysign (double)): Call copysign, not copysignf.
-	(xmod): Call X_NINT, not D_NINT.  Call xfloor, not floor.
-	Bug #31872.
-
-2010-12-13  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (operator * (const Matrix& m, const ComplexMatrix&	a)):
-	Fix cut and paste error.  Bug #31869.
-
-2010-12-09  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* lo-specfun.cc (xgamma): Also handle negative integer values as
-	special cases when using tgamma.  Bug #31772.
-
-2010-11-25  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::assign): Use correct endpoint for
-	destination range when making room for new elements.
-	Bug #31734.
-
-2010-11-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-md5.cc (oct_md5_result_to_str): Avoid buffer overrun in
-	call to sprintf.  Replace loop with a single call to sprintf.
-	Bug #31689.
-
-2010-11-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-md5.cc (oct_md5_file): Close file after reading.
-
-2010-11-22  John W. Eaton  <jwe@octave.org>
-
-	* boolSparse.cc (SparseBoolMatrix::sum, SparseBoolMatrix::any):
-	Cast integer idx_vector argument to octave_idx_type.
-
-2010-11-18  John W. Eaton  <jwe@octave.org>
-
-	* chMatrix.cc (charMatrix::row_as_string): Never strip trailing
-	nul characters.  Bug #31689.
-
-2010-11-12  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (LIBOCTAVE_SOURCES): Delete variable.
-	(liboctave_la_SOURCES): Include $(LIBOCTAVE_CXX_SOURCES) and
-	$(LIBOCTAVE_C_SOURCES) in this list instead of
-	$(LIBOCTAVE_SOURCES).
-	(nodist_liboctave_la_SOURCES): New variable.
-	(octinclude_HEADERS): Don't include $(BUILT_INCS) in the list.
-	(noinst_octinclude_HEADERS): New variable.
-	(PRIVATE_INCS): Delete variable.
-	(INCS): Include oct-glob.h in the list.
-	(liboctave_la_SOURCES): Don't include $(PRIVATE_INCS) in the
-	list.
-	(LIBOCT_PATHSEARCH_CXX_SOURCES, LIBOCT_PATHSEARCH_C_SOURCES,
-	LIBOCT_PATHSEARCH_SOURCES): Delete variables.
-	(LIBOCTAVE_CXX_SOURCES): Include pathsearch.cc in the list.
-
-2010-11-12  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::cat): Simplify previous change.
-
-2010-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::cat): New special case for concatenating
-	empty matrices.  Bug #31615.
-
-2010-11-11  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (xtrunc, xround): Move definitions here from
-	lo-mappers.h.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* kpse-xfns.c: Delete.
-	* kpse-xfns.h: Delete.  Move defintions to kpse.cc.
-	* Makefile.am (INCS): Remove kpse-xfns.h from the list.
-	(LIBOCT_PATHSEARCH_SOURCES): Define to pathsearch.cc.
-	(LIBOCT_PATHSEARCH_CXX_SOURCES,	LIBOCT_PATHSEARCH_C_SOURCES):
-	Delete variables.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* lo-cieee.c Eliminate special cases for SCO.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* lo-ieee.cc (octave_ieee_init): Don't initialize octave_Inf,
-	octave_NaN, and octave_NA to DBL_MAX.  Don't initialize
-	octave_Float_Inf, octave_Float_NaN, and octave_Float_NA to FLT_MAX.
-	(octave_ieee_init): Simplify using std::numeric_limits template.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* syswait.h: Delete special cases for NeXT systems.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* lo-sysdep.cc (octave_chdir): Delete special case for __EMX__.
-	* oct-env.cc (octave_env::do_make_absolute): Likewise.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* lo-ieee.h: Eliminate special cases for SCO.
-	* lo-ieee.cc (octave_ieee_init): Eliminate special cases for SCO.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.h (xmod, xrem): Don't copy sign if result is zero.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc, lo-mappers.h (xisnan, xisinf, xfinite, xmod,
-	xrem, floor, ceil, xround, xroundb, signum): Move definitions
-	from lo-mappers.cc to lo-mappers.h and convert to templates.
-	(xtrunc): Move definitions from lo-mappers.cc to lo-mappers.h.
-	* lo-mappers.cc (fix): Use xtrunc.  Move definitions to
-	lo-mappers.cc from lo-mappers.h.
-	(real, imag, conj) Move definitions to lo-mappers.h and declare inline.
-	(round): Move definitions to lo-mappers.h and declare inline.
-	Use roundf for float version.
-	(arg): Move definitions to lo-mappers.h and declare inline.
-	Use atan2f for float version.
-	* lo-mappers.h (xceil): New functions.
-	(X_NINT): New template function.
-	(D_NINT, F_NINT): Define in terms of X_NINT.
-	* lo-utils.h, lo-utils.cc (D_NINT, F_NINT): Delete.
-	* lo-mappers.h, lo-mappers.cc (NINTbig,	NINT): Move from
-	lo-utils.cc and lo-utils.h.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::sort, Array<T>::is_sorted,
-	Array<T>::is_sorted_rows): Use comparisons to sortmode values
-	instead of testing mode directly.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (xmod, xrem): New functions.
-	(mod): Delete.
-	* lo-mappers.h (xmod, xrem): Provide decls.
-
-2010-10-31  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* dim-vector.h (class dim_vector): tag with OCTAVE_API.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (INCS): Include lo-array-gripes.h in the list.
-	(LIBOCTAVE_CXX_SOURCES): Include lo-array-gripes.cc in the list.
-
-	* lo-array-gripes.h: New file.  Move gripe function decls here
-	from Array-util.h.
-	* lo-array-gripes.c: New file.  Move gripe function definitions
-	here from Array-util.cc.
-
-	* CMatrix.cc (ComplexMatrix::operator !): Gripe if any element is NaN.
-	* CNDArray.cc (ComplexNDArray::operator !): Likewise.
-	* CSparse.cc (SparseComplexMatrix::operator !): Likewise.
-	* dMatrix.cc (Matrix::operator !): Likewise.
-	* dNDArray.cc (NDArray::operator !): Likewise.
-	* dSparse.cc (SparseMatrix::operator !): Likewise.
-	* fCMatrix.cc (FloatComplexMatrix::operator !): Likewise.
-	* fCNDArray.cc (FloatComplexNDArray::operator !): Likewise.
-	* fMatrix.cc (FloatMatrix::operator !): Likewise.
-	* fNDArray.cc (FloatNDArray::operator !): Likewise.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.cc (gripe_nan_to_character_conversion): New function.
-	* Array-util.h: Provide decl.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (INCS): Add caseless-str.h to the list.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* caseless-str.h: New file, extracted from src/graphics.h.in.
-
-2010-09-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-utils.cc (xis_int_or_inf_or_nan): Fix typos.
-
-2010-09-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array::test, Array::test_all, Array::test_any): New
-	overloaded template methods.
-	* lo-mappers.h (xisinteger, xnegative_sign): New bool mappers.
-	* dNDArray.cc (NDArray::any_element_is_negative,
-	NDArray::all_integers): Simplify.
-	* fNDArray.cc (FloatNDArray::any_element_is_negative,
-	FloatNDArray::all_integers): Simplify.
-
-	* lo-utils.cc (xis_int_or_inf_or_nan, xis_one_or_zero,
-	xis_zero, xtoo_large_for_float): New utility functions.
-
-	* dNDArray.cc (NDArray::any_element_is_negative,
-	NDArray::all_integers, NDArray::all_elements_are_zero,
-	NDArray::all_elements_are_int_or_inf_or_nan,
-	NDArray::any_element_not_one_or_zero,
-	NDArray::too_large_for_float): Simplify.
-
-	* fNDArray.cc (FloatNDArray::any_element_is_negative,
-	FloatNDArray::all_integers, FloatNDArray::all_elements_are_zero,
-	FloatNDArray::all_elements_are_int_or_inf_or_nan,
-	FloatNDArray::any_element_not_one_or_zero,
-	FloatNDArray::too_large_for_float): Simplify.
-
-2010-09-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dNDArray.cc (NDArray::any_element_is_negative,
-	NDArray::any_element_is_nan,
-	NDArray::any_element_is_inf_or_nan): Simplify.
-	* fNDArray.cc (FloatNDArray::any_element_is_negative,
-	FloatNDArray::any_element_is_nan,
-	FloatNDArray::any_element_is_inf_or_nan): Simplify.
-	* dMatrix.cc (Matrix::any_element_is_negative,
-	Matrix::any_element_is_nan,
-	Matrix::any_element_is_inf_or_nan): Simplify.
-	* fMatrix.cc (FloatMatrix::any_element_is_negative,
-	FloatMatrix::any_element_is_nan,
-	FloatMatrix::any_element_is_inf_or_nan): Simplify.
-	* CNDArray.cc (ComplexNDArray::any_element_is_negative,
-	ComplexNDArray::any_element_is_nan,
-	ComplexNDArray::any_element_is_inf_or_nan): Simplify.
-	* fCNDArray.cc (FloatComplexNDArray::any_element_is_negative,
-	FloatComplexNDArray::any_element_is_nan,
-	FloatComplexNDArray::any_element_is_inf_or_nan): Simplify.
-	* CMatrix.cc (ComplexMatrix::any_element_is_negative,
-	ComplexMatrix::any_element_is_nan,
-	ComplexMatrix::any_element_is_inf_or_nan): Simplify.
-	* fCMatrix.cc (FloatComplexMatrix::any_element_is_negative,
-	FloatComplexMatrix::any_element_is_nan,
-	FloatComplexMatrix::any_element_is_inf_or_nan): Simplify.
-
-2010-09-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (do_get_host_name): Call gnulib::gethostname
-	instead of octave_gethostname.
-
-	* lo-utils.h, lo-cutils.c (octave_gethostname): Delete.
-
-2010-09-20  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_time::octave_time, octave_strptime::init):
-	Call gnulib::mktime instead of mktime (may fix bug #31079).
-
-2010-09-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dSparse.h (SparseMatrix::SparseMatrix (const Sparse<double>&)):
-	New ctor.
-	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix
-	(const Sparse<Complex>&)): New ctor.
-	* boolSparse.cc (SparseBoolMatrix::sum): New method.
-	* boolSparse.h: Declare it.
-
-2010-09-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* boolSparse.cc (SparseBoolMatrix::any): Optimize.
-
-2010-08-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-ch.cc: Inline basic sorts.
-
-2010-08-21  Rik  <octave@nomad.inbox5.com>
-
-	* CmplxQRP.cc, CmplxQRP.h, dbleQRP.cc, dbleQRP.h, fCmplxQRP.cc,
-	fCmplxQRP.h, floatQRP.cc, floatQRP.h: Declare Pvec as RowVector,
-	not ColumnVector.  Bug #30832.
-
-2010-08-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_all_finite): New check.
-	* Sparse-op-defs.h (SPARSE_SMS_BIN_OP_1, SPARSE_SMS_BIN_OP_2,
-	SPARSE_SSM_BIN_OP_1, SPARSE_SSM_BIN_OP_2): Use unchecked access where
-	appropriate.
-	(SPARSE_SMM_BIN_OP_1, SPARSE_MSM_BIN_OP_1): Simplify.
-	(SPARSE_SMM_BIN_OP_2, SPARSE_MSM_BIN_OP_2): Use optimized code path
-	if all values are finite.
-	(SPARSE_MSM_BIN_OPS): Use SPARSE_MSM_BIN_OP_1 for division.
-
-2010-07-31  Rik  <octave@nomad.inbox5.com>
-
-	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in, LSODE-opts.in,
-	Quad-opts.in: Grammarcheck .cc files
-
-2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.cc (dim_vector::dim_max (void)): Turn it into a function.
-	(dim_vector::safe_numel): Update usage.
-	* dim-vector.h: Update declaration.
-
-2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleSCHUR.cc (SCHUR::SCHUR (const Matrix&, const Matrix&)):
-	New ctor.
-	* dbleSCHUR.h: Declare it.
-	* floatSCHUR.cc (FloatSCHUR::FloatSCHUR (const FloatMatrix&, const
-	FloatMatrix&)): New ctor.
-	* floatSCHUR.h: Declare it.
-	* CmplxSCHUR.cc (ComplexSCHUR::ComplexSCHUR (const ComplexMatrix&,
-	const ComplexMatrix&),
-	ComplexSCHUR::ComplexSCHUR (const SCHUR&)): New ctors.
-	* CmplxSCHUR.h: Declare them.
-	* fCmplxSCHUR.cc (FloatComplexSCHUR::FloatComplexSCHUR
-	(const FloatComplexMatrix&, const FloatComplexMatrix&),
-	FloatComplexSCHUR::FloatComplexSCHUR (const FloatSCHUR&)): New ctors.
-	* fCmplxSCHUR.h: Declare them.
-
-2010-07-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::lssolve): Fix decision test for workaround.
-	* fMatrix.cc (FloatMatrix::lssolve): Ditto.
-	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::lssolve): Ditto.
-
-2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.cc (dim_vector::dim_max): New static const member.
-	* dim-vector.h: Declare it.
-
-2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::extract, Matrix::extract_n): Reimplement using
-	index.
-	* fMatrix.cc (FloatMatrix::extract, FloatMatrix::extract_n): Ditto.
-	* CMatrix.cc (ComplexMatrix::extract, ComplexMatrix::extract_n): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::extract, FloatComplexMatrix::extract_n): Ditto.
-
-2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MSparse.h (MSparse<T>::index): Remove overloads.
-	* dSparse.h (SparseMatrix::index): Likewise.
-	* dSparse.cc (SparseMatrix::index): Likewise.
-	* CSparse.h (SparseComplexMatrix::index): Likewise.
-	* CSparse.cc (SparseComplexMatrix::index): Likewise.
-
-2010-07-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc (ComplexMatrix::lssolve (const ComplexMatrix&)):
-	Undo 10708:2786b7ae3f80, implement proper correction.
-	* fCMatrix.cc (FloatComplexMatrix::lssolve (const FloatComplexMatrix&)):
-	Ditto.
-
-2010-06-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::scalar_1x1): New method.
-	* lo-traits.h (equal_types): Fix.
-
-2010-06-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::cat): Implement the loose horzcat/vertcat rules
-	under dim=-1/-2.
-	* Sparse.cc (Array<T>::cat): Implement the loose horzcat/vertcat rules
-	under dim=-1/-2.
-	* Array.h, Sparse.h: Document it.
-
-2010-06-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.cc (dim_vector::hvcat): New method.
-	* dim-vector.h (dim_vector::hvcat, dim_vector::cat): Update decls.
-	(dim_vector::empty_2d): New method.
-
-2010-06-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MatrixType.cc (matrix_real_probe): Use OCTAVE_LOCAL_BUFFER for
-	temporary array.
-	(matrix_complex_probe): Parametrize by real type. Use
-	OCTAVE_LOCAL_BUFFER for temporary array.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* DASSL-opts.in: Periodic grammar check on documentation.
-
-2010-06-16  David Bateman  <dbateman@free.fr>
-
-	* oct-rand.cc (void octave_rand:do_reset (void),
-	void octave_rand:do_reset (const std::string&)): New functions
-	* oct-rand.h (void octave_rand:do_reset (void),
-	void octave_rand:do_reset (const std::string&)): Declare them
-	(void octave_rand:reset (void),
-	void octave_rand:reset (const std::string&)): New functions.
-
-2010-06-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc (ComplexMatrix::lssolve (const ComplexMatrix&)):
-	Workaround LAPACK bug.
-	* fCMatrix.cc (FloatComplexMatrix::lssolve (const FloatComplexMatrix&)):
-	Ditto.
-
-2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array::sort, Array::nth_element): Fix behavior when
-	trailing singleton dim is specified.
-	* Sparse.cc (Sparse::sort): Ditto.
-
-2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::copy_data): Handle class_mask case.
-	(idx_vector::increment): Fix class_colon and add class_mask.
-
-2010-06-06  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* mx-op-defs.h (MNANCHK): Add matrix element type argument and use it
-	to specify template argument for mx_inline_any_nan.
-	(MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP,
-	NDND_BOOL_OP): Specify new MNANCHK argument.
-
-2010-06-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.cc: New source.
-	* Makefile.am: Add it.
-	* dim-vector.h (dim_vector::chop_all_singletons,
-	dim_vector::str, dim_vector::num_ones, dim_vector::safe_numel,
-	dim_vector::squeeze, dim_vector::concat, dim_vector::redim):
-	Move bodies to dim_vector.cc.
-	(dim_vector::concat): Rewrite.
-	* Array.cc (Array::cat): Fix dim_vector concatenation. Don't use 0x0
-	as neutral element, because it isn't with dim > 1.
-
-2010-06-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::optimize_dimensions): New method.
-	* Array.h: Declare it.
-
-2010-06-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::maybe_delete_dims): Remove method (makes no
-	longer sense).
-	* Array.h: Update decls.
-
-2010-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::compute_index (const octave_idx_type *,
-	int)): New method overload.
-	(dim_vector::compute_index, dim_vector::cum_compute_index,
-	dim_vector::increment_index): Add missing const qualifiers.
-
-	* Array-util.cc (compute_index (..., const dim_vector&)): Rewrite,
-	add new overloads. Move code from Array<T>::checkelem here.
-	* Array-util.h: Update decls.
-	* Array.h (Array<T>::compute_index): Forward to the above.
-	(Array<T>::compute_index_unchecked): New method.
-	(Array<T>::elem, Array<T>::xelem): Call it here.
-
-	* Array.cc (Array<T>::checkelem): Use compute_index where suitable.
-
-2010-05-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_cumcount): Fix 2D version instantiation.
-
-2010-05-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::linearize): Remove.
-	* Array.h (Array<T>::linearize): Remove decl.
-
-2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::lssolve): Remove warnings about rank.
-	* fMatrix.cc (FloatMatrix::lssolve): Ditto.
-	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::lssolve): Ditto.
-
-2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::unmask): Fix off-by-1 bug. Add tests.
-
-2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array::delete_elements (const idx_vector&)): Only call
-	resize1 when deleting the last element of a vector.
-
-2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-norm.h: Fix include guard.
-
-2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleSCHUR.cc (SCHUR::init): Handle empty matrix case.
-	Use clear rather than resize to realloc matrix.
-	* floatSCHUR.cc (FloatSCHUR::init): Ditto.
-	* CmplxSCHUR.cc (ComplexSCHUR::init): Ditto.
-	* fCmplxSCHUR.cc (FloatComplexSCHUR::init): Ditto.
-
-2010-05-04  John W. Eaton  <jwe@octave.org>
-
-	* CollocWt.cc (diff, jcobi, dfopr): New functions, based on
-	Fortran functions in libcruft/villad.
-	(jcobi): Handle iteration failure at large N.
-	(CollocWt::init): Call them instead of Fortran code.
-	* CollocWt.h (CollocWt::initialized): Declare as bool, not int.
-	Change all uses.
-	Addresses bug #29473.
-
-2010-05-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleSVD.h (SVD::driver): New enum.
-	(SVD::SVD, SVD::init): Add driver option.
-	* floatSVD.h (FloatSVD::FloatSVD, FloatSVD::init): Add driver option.
-	* CmplxSVD.h (ComplexSVD::ComplexSVD, ComplexSVD::init):
-	Add driver option.
-	* fCmplxSVD.h (FloatComplexSVD::FloatComplexSVD,
-	FloatComplexSVD::init): Add driver option.
-	* dbleSVD.cc (SVD::init): Optionally use xGESDD driver.
-	* floatSVD.cc (FloatSVD::init): Ditto.
-	* CmplxSVD.cc (ComplexSVD::init): Ditto.
-	* fCmplxSVD.cc (FloatComplexSVD::init): Ditto.
-
-2010-04-28  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h (dim_vector (const octave_idx_type *, size_t)): Delete.
-	* Sparse.cc (Sparse<T>::assign): Cast 0 to octave_idx_type in
-	call to Sparse<T> constructor.
-	Addresses bug #29692.
-
-2010-04-27  John W. Eaton  <jwe@octave.org>
-
-	* intNDArray.cc (intNDArray<T>::abs, intNDArray<T>::signum):
-	Create new vector for return values.  Fixes bug #29685.
-
-2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::assign): Fix typos.
-
-2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.h (::assign, ::assign1): Remove declarations.
-
-2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::cat): Fast return for single array case.
-	* Sparse.cc (Sparse<T>::cat): Ditto.
-
-2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::cat): Miscellaneous fixes.
-	* Sparse.cc (Sparse<T>::cat): Ditto.
-
-2010-04-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::cat): New method.
-	* Array.h: Declare it.
-	* Sparse.cc (Sparse<T>::cat): New method.
-	* Sparse.h: Declare it.
-
-2010-04-16  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (template <class T> Sparse<T>::Sparse (const Array<T>&,
-	const idx_vector&, const idx_vector&, octave_idx_type,
-	octave_idx_type, bool, octave_idx_type)): Add argument defining the
-	minimum storage to allocate for the sparse matrix.
-	* Sparse.h (template <class T> Sparse (const Array<T>&,
-	const idx_vector&, const idx_vector&, octave_idx_type,
-	octave_idx_type, bool, octave_idx_type)): ditto.
-	* MSparse.h : ditto
-	* CSparse.h : ditto
-	* dSparse.h : ditto
-	* boolSparse.h : ditto
-
-2010-04-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc: Update failing tests.
-
-2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::index): If S is a sparse column vector,
-	forward S(I,1) and S(I,:) to 1D indexing. Handle permutation indexing
-	in the 1D case.
-	(Sparse<T>::assign): If S is a sparse column vector,
-	forward S(I,1) = X and S(I,:) =X to 1D indexed assignment.
-	* idx-vector.cc (idx_vector::inverse_permutation): Add missing break.
-
-2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (gripe_invalid_assignment_size,
-	gripe_assignment_dimension_mismatch): Move funcs here from Array.cc
-	* Array-util.h: Declare them.
-	* Array.cc: Remove them.
-
-	* Sparse.cc (Sparse<T>::assign): New overloaded method.
-	(Sparse<T>::operator =): Update.
-	(Sparse<T>::resize1): Rewrite to match sparse assignment specifics.
-	(Sparse<T>::set_index, Sparse<T>::clear_index, Sparse<T>::index_count,
-	Sparse<T>::value): Remove methods.
-	(::assign1, ::assign): Remove funcs.
-
-	(INSTANTIATE_SPARSE): Move here from Sparse.h.
-
-	* Sparse.h (Sparse<T>::idx, Sparse<T>::idx_count): Remove member
-	fields. Remove initializations from all ctors.
-	(Sparse<T>::get_idx): Remove.
-	(Sparse<T>::assign): Add decls.
-	(INSTANTIATE_SPARSE_ASSIGN, INSTANTIATE_SPARSE_AND_ASSIGN): Remove.
-	(INSTANTIATE_SPARSE): Move to Sparse.cc
-
-	* Sparse-C.cc, Sparse-d.cc, Sparse-b.cc: Only call INSTANTIATE_SPARSE.
-
-	* idx-vector.cc (idx_vector::inverse_permutation): New method.
-	* idx-vector.h: Declare it.
-
-2010-04-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&, const idx_vector&,
-	const idx_vector&, ...)): Call maybe_compress after matrix is created.
-
-2010-04-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::diag): Change nzmax to nnz where appropriate.
-	* MatrixType.cc (MatrixType::MatrixType): Ditto.
-	* SparseQR.cc: Ditto.
-	* SparseCmplxQR.cc: Ditto.
-	* boolSparse.cc: Ditto.
-
-2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::resize (octave_idx_type, octave_idx_type)):
-	Rewrite. Be smarter esp. when resizing to more columns.
-
-2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::concat): Ignore zero_by_zero, but not
-	all_zero arrays in concatenation (like Matlab).
-
-2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::index (const idx_vector&, bool)): Use shallow
-	copy when column is indexed by colon.
-
-2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (lblookup): Move in front of Sparse<T>::delete_elements.
-
-2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* str-vec.h (string_vector::string_vector (const Array<std::string>)):
-	New constructor.
-
-2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::complement): Rewrite.
-
-2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::maybe_delete_elements): Rename to
-	delete_elements. Use const reference arguments.
-	(Sparse<T>::delete_elements (const idx_vector&, const idx_vector&)):
-	Rewrite.
-	(Sparse<T>::maybe_delete_elements (int dim, const idx_vector&)): New
-	overload.
-	(Sparse<T>::maybe_delete_elements (Array<idx_vector>&)): Remove
-	overload.
-
-2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc, Array-util.h, Array-util.cc: Reverse effects of
-	4e64fbbd5c58.
-
-2010-04-02  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.cc, idx-vector.cc, idx-vector.h: Style fixes.
-
-2010-04-02  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.cc (idx_vector::idx_vector (const Range&)):
-	Move here from idx-vector.h.  Allow non-integer values in ranges,
-	but warn by default (for Matlab compatibility).
-	* Array-util.h, Array-util.cc (gripe_invalid_index): New arg, ERR.
-	If ERR is false, generate warning instead of error.
-
-2010-04-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::maybe_delete_elements): Rewrite. Optimize for
-	sparse column vectors.
-
-2010-04-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc: Declare all loops as throw (). Ditto for
-	corresponding applier arguments.
-	(do_mx_check): New applier.
-	(logical_value): Do not throw exceptions.
-	* mx-op-defs.h (SNANCHK, MNANCHK): New helper macros.
-	(MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP,
-	NDND_BOOL_OP): Use them here.
-
-2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&,
-	const Array<octave_idx_type>&, ...), Sparse<T>::Sparse (const Array<T>&,
-	const Array<double>&, ...)):
-	Remove old constructors.
-	* Sparse.h: Ditto.
-	* MSparse.h: Ditto.
-	* dSparse.h: Ditto.
-	* CSparse.h: Ditto.
-	* boolSparse.h: Ditto.
-
-2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_range_rep::as_array): Fix typo.
-	(idx_vector::raw): Use unchecked constructor.
-	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&, const idx_vector&,
-	const idx_vector&, ...)): New ctor.
-	* Sparse.h: Declare it.
-
-2010-03-30  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.cc (string_vector::string_vector (const char * const *)):
-	Create empty string_vector object if arg is NULL.
-	Fixes bug #29386.
-
-2010-03-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::raw): New method.
-	* idx-vector.h: Declare it.
-
-2010-03-27  David Bateman  <dbateman@free.fr>
-
-	* oct-openmp.h: New file.
-	* Makefile.am (INCS): Add it here.
-
-2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::index (const idx_vector&, const	idx_vector&,
-	bool)): Specialize for contiguous row range, row permutation,
-	and implement general case through double index-transpose.
-
-2010-03-25  John W. Eaton  <jwe@octave.org>
-
-	* eigs-base.cc (EigsComplexNonSymmetricFunc): Avoid warning
-	about deprecated Array constructor.
-
-2010-03-25  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc, file-ops.cc, lo-math.h, lo-utils.cc, oct-env.cc,
-	dir-ops.cc, file-stat.cc, cmd-hist.cc, oct-time.cc, oct-time.h,
-	oct-uname.cc: Revert changes from 2010-03-24 and 2010-03-25.
-
-2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc	(fix (double)): Forward to gnulib::trunc.
-	(fix (float)): Forward to gnulib::truncf.
-	(xround (double)): Forward to gnulib::round.
-	(xround (float)): Forward to gnulib::roundf.
-	(xtrunc (double)): Forward to gnulib::trunc.
-	(xtrunc (float)): Forward to gnulib::truncf.
-
-2010-03-25  David Grundberg  <davidg@cs.umu.se>
-
-	* oct-time.h (octave_time): Revert ::modf to std::modf again now
-	that cmath is included again.
-
-2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-math.h: Include both "math.h" and "cmath".
-
-2010-03-24  David Grundberg  <davidg@cs.umu.se>
-
-	* cmd-edit.cc: Include gnulib stdlib.h/string.h instead of C++
-	headers.
-	* file-ops.cc: Include gnulib stdlib.h/stdio.h/string.h instead of
-	C++ headers.
-	* lo-math.h: Include gnulib math.h instead of C++ headers.
-	* lo-utils.cc: Include gnulib stdlib.h instead of C++ headers.
-	* oct-env.cc, dir-ops.cc, file-stat.cc, cmd-hist.cc: Include
-	gnulib string.h instead of C++ headers.
-	* oct-time.cc: Include gnulib time.h instead of C++ headers.
-	* oct-time.h (octave_time): Use default namespace ::modf instead
-	of std::modf.
-	* oct-uname.cc: Include gnulib string.h instead of C++ headers.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (lblookup): New helper func.
-	(Sparse<T>::index (const idx_vector&, bool)): Use it here for lookups.
-	(Sparse<T>::index (const idx_vector&, const idx_vector&, bool)):
-	Specialize for scalar row index.
-
-2010-03-23  John W. Eaton  <jwe@octave.org>
-
-	* config-ops.sh: Work properly for "all" cases.
-
-2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int_arith_base::rem, octave_int_base::mod):
-	New methods.
-	(rem, mod): New template functions.
-	* lo-mappers.cc (rem, mod): New overloaded functions.
-	* lo-mappers.h: Declare them.
-
-2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-binmap.h: New source.
-	* Makefile.am: Include it here.
-
-2010-03-22  John W. Eaton  <jwe@octave.org>
-
-	* config-ops.sh: Accept additional arguments.
-	* Makefile.am ($(srcdir)/vx-op-inc.mk, $(srcdir)/mx-op-inc.mk
-	$(srcdir)/smx-op-inc.mk, $(srcdir)/vx-op-src.mk, $(srcdir)/mx-op-src.mk
-	$(srcdir)/smx-op-src.mk): Pass additional arguments to config-ops.sh.
-
-2010-03-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (Sparse<T>::index (const idx_vector&, const idx_vector&,
-	bool)): Handle resize_ok in advance. Optimize colon as the first index.
-	(Sparse<T>::index (const idx_vector&, bool)): Small fixes.
-
-2010-03-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dSparse.cc (SparseMatrix::matrix_value): Simplify.
-	* CSparse.cc (SparseComplexMatrix::matrix_value): Simplify.
-
-2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (gripe_invalid_resize): Move here from Array.cc.
-	* Array-util.h: Declare it.
-	* Array.cc: Use it.
-
-	* idx-vector.cc (idx_vector::idx_mask_rep::unconvert): Fix non-owned
-	case.
-	(idx_vector::idx_mask_rep::as_array): New method.
-	* idx-vector.h: Declare it.
-
-	* Sparse.cc (Sparse<T>::index (const idx_vector&, bool)): Rewrite.
-	(Sparse<T>::array_value): New method.
-	(Sparse<T>::resize1): New method.
-	(Sparse<T>::resize): Move resize_no_fill bodies in here.
-	(Sparse<T>::resize_no_fill): Remove.
-	* Sparse.h: Update decls.
-
-2010-03-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.h (Sparse<T>::index): Use const references. Use bool for
-	resize_ok. Remove Array<idx_vector> overload.
-	* MSparse.h (MSparse<T>::index): Ditto.
-	* dSparse.h, dSparse.cc (SparseMatrix::index): Ditto.
-	* CSparse.h, CSparse.cc (SparseComplexMatrix::index): Ditto.
-	* boolSparse.h, boolSparse.cc (SparseBoolMatrix::index): Ditto.
-	* Sparse.cc (Sparse<T>::index): Ditto. Redim index to 2 dimensions.
-	Don't use non-const methods. Use gripe_index_out_of_range.
-
-2010-03-17  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h (dim_vector): Also use DIM_VECTOR macro for 2 and
-	3 dimensions.
-
-2010-03-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-macros.h: New source.
-	* dim-vector.h: Use the macro magic to define constructors
-	generically.
-
-2010-03-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h: Provide constructors up to order 7.
-
-2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-specfun.cc: Substitute cbrt and cbrtf if needed.
-	* lo-specfun.h: Declare cbrt and cbrtf if needed.
-	* configure.ac: Check for cbrt and cbrtf.
-
-2010-03-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-glob.cc (octave_glob): Tag calls to glob and globfree with
-	gnulib::.
-
-	* kpse.cc (DEBUG_START, DEBUGF, FATAL_PERROR, FATAL, KPSE_DEBUG,
-	log_search, find_first_of): Tag calls to
-	fputs with gnulib::.
-	(DEBUGF1, DEBUGF2, DEBUGF3, DEBUGF4, log_search, find_first_of,
-	kpse_element_dirs): Tag calls to fprintf with gnulib::.
-	(hash_lookup, search, find_first_of, kpse_element_dirs):
-	Tag calls to putc with gnulib::.
-	(do_subdir): Tag call to opendir with gnulib::.
-	(xclosedir): Tag call to closedir with gnulib::.  Assume closedir
-	returns int value.
-
-	* cmd-hist.cc (gnu_history::do_append): Tag calls to open and
-	close with gnulib::.
-	(command_history::error): Tag call to strerror with gnulib::.
-
-	* cmd-edit.cc (gnu_readline::command_generator,
-	gnu_readline::command_quoter, gnu_readline::command_dequoter):
-	Tag call to malloc with gnulib::.
-	(default_command_editor::do_readline): Tag call to fputs with gnulib::.
-	(command_editor::error): Tag call to strerror with gnulib::.
-
-	* sparse-util.cc (SparseCholPrint): Tag call to vfprintf with gnulib::.
-
-	* oct-uname.cc (octave_uname::init): Tag call to strerror with gnulib::.
-
-	* oct-time.cc (octave_time::stamp): Tag call to gettimeofday
-	with gnulib::.
-	(octave_strptime::init): Tag call to strptime with gnulib::.
-
-	* oct-syscalls.cc (octave_syscalls::dup2,
-	octave_syscalls::execvp, octave_syscalls::fork,
-	octave_syscalls::vfork, octave_syscalls::getpgrp,
-	octave_syscalls::pipe, octave_syscalls::waitpid,
-	octave_syscalls::kill, octave_fcntl):
-	Tag call to strerror with gnulib::.
-	(octave_syscalls::dup2): Tag call to dup2 with gnulib::.
-	(octave_syscalls::popen2): Tag calls to close with gnulib::.
-	(octave_fcntl): Tag call to fcntl with gnulib::.
-
-	* oct-env.cc (octave_env::error): Tag call to strerror with gnulib::.
-
-	* lo-utils.cc (octave_putenv): Tag call to malloc with gnulib::.
-	(octave_fgets): Tag calls to malloc and realloc with gnulib::.
-
-	* lo-sysdep.cc (octave_getcwd): Tag call to getcwd with gnulib::.
-
-	* lo-mappers.cc (xround): Tag call to round with gnulib::.
-
-	* file-stat.cc (file_stat::update_internal): Tag calls to lstat
-	and strerror with gnulib::.
-	(file_fstat::update_internal): Tag calls to fstat and strerror
-	with gnulib::.
-
-	* file-ops.cc (octave_mkdir): Tag call to mkdir with gnulib::.
-	(octave_mkfifo): Tag call to mkfifo with gnulib::.
-	(octave_link): Tag call to link with gnulib::.
-	(octave_symlink): Tag call to symlink with gnulib::.
-	(octave_readlink): Tag call to readlink with gnulib::.
-	(octave_rename): Tag call to rename with gnulib::.
-	(octave_rmdir): Tag call to rmdir with gnulib::.
-	(octave_unlink): Tag call to unlink with gnulib::.
-	(octave_canonicalize_file_name): Tag call to
-	canonicalize_file_name with gnulib::.
-	(octave_mkdir, octave_mkfifo, octave_link, octave_symlink,
-	octave_readlink, octave_rename, octave_rmdir, octave_unlink,
-	octave_tempnam, octave_canonicalize_file_name): Tag calls to
-	strerror with gnulib::.
-
-	* dir-ops.cc (dir_entry::close): Tag closedir call with gnulib::.
-	(dir_entry::open): Tag opendir and strerror calls with gnulib::.
-
-2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int_base::ftrunc, octave_int_base::fnon_int,
-	octave_int_base::fnan, octave_int_base::get_trunc_flag,
-	octave_int_base::get_nan_flag,
-	octave_int_base::get_non_int_flag,
-	octave_int_base::get_math_trunc_flag,
-	octave_int_base::clear_conv_flags): Remove.
-	Remove occurences of ftrunc, fnon_int and fnan eveywhere.
-	* oct-inttypes.cc: Ditto last sentence. Remove warning tests.
-
-2010-03-07  Soren Hauberg  <hauberg@gmail.com>
-
-	* dim-vector.h: New constructor accepting a C array of dimensions.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArray.cc (MArray<T>::idx_add_nd): New method.
-	* MArray.h: Declare it.
-
-2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-specfun.cc (erfcx, erfcx_impl): New functions.
-	* lo-specfun.h: Declare erfcx.
-
-2010-03-03  John W. Eaton  <jwe@octave.org>
-
-	* oct-convn.cc (convolve): Cast int constant to octave_idx_type in
-	call to std::max.
-
-2010-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-convn.cc (convolve_2d_axpy_kernel, convolve_2d_axpy): Remove.
-	(convolve_2d): Forward to Fortran implementations, add inner flag.
-	(convolve_nd): Handle inner-convolution case.
-	(convolve): Ditto.
-
-2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-convn.h, oct-convn.cc: New sources.
-	* Makefile.am: Include them.
-
-2010-03-01  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (Sparse<T>::maybe_delete_elements (idxx_vector&)):
-	Special case the deletion of elements in sparse vectors.
-	(Sparse<T>::index (idx_vector&, int) const): Special case indexing
-	of sparse matrices with ranges with a step of 1.
-	* Sparse.h: Include oct-mem.h for the copy_or_memcpy declaration.
-
-2010-02-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am ($(srcdir)/vx-op-inc.mk, $(srcdir)/mx-op-inc.mk,
-	$(srcdir)/smx-op-inc.mk, $(srcdir)/vx-op-src.mk,
-	$(srcdir)/mx-op-src.mk, $(srcdir)/smx-op-src.mk): New targets.
-
-	* config-ops.sh: Accept top_srcdir argument.  Work from build
-	directory too, not just source tree.
-
-2010-02-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array-C.cc (DiagArray2<Complex>::Proxy): Remove explicit
-	instantiation under MSVC.
-	Array-d.cc (DiagArray2<double>::Proxy): Ditto.
-	Array-f.cc (DiagArray2<float>::Proxy): Ditto.
-	Array-fC.cc (DiagArray2<FloatComplex::Proxy): Ditto.
-
-2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (gripe_index_out_of_range): Throw errors with id.
-	(gripe_nonconformant): Likewise.
-	(error_id_index_out_of_bounds, error_id_invalid_index,
-	error_id_nonconformant_args): New variables.
-	(gripe_invalid_index): New function.
-	* Array-util.h: Declare them.
-	* Array.cc (Array<T>::checkelem): Throw invalid-index when negative
-	indices are encountered.
-
-2010-02-27  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::diag): Handle case of diag (szv) when szv
-	is a sparse vector with nnz = 0.
-
-2010-02-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (gripe_index_out_of_range): New function.
-	* Array.cc (Array<T>::range_error): Remove.
-	(Array<T>::checkelem): Rewrite.
-	(Array<T>::index, Array<T>::delete_elements): Simplify.
-	* DiagArray2.cc (DiagArray2::checkelem): Use gripe_index_out_of_range.
-	* Range.cc (Range::checkelem, Range::index): Ditto.
-
-2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_DUP_FCN): Remove.
-	(mx_inline_dup): Remove.
-	(mx_inline_not): Remove.
-	(mx_inline_make_complex): Remove.
-	(mx_inline_change_sign): Remove.
-	(mx_inline_fabs_dup): Remove.
-	(mx_inline_cabs_dup): Remove.
-	(mx_inline_imag_dup): Remove.
-	(mx_inline_real_dup): Remove.
-	(mx_inline_conj_dup): Remove.
-	(mx_inline_change_sign): Remove.
-
-2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::ArrayRep): Simplify copy constructor. Add
-	conversion constructor.
-	(Array<T>): Remove pointer acquiring ctors.
-	(Array<T>::maybe_economize): Update.
-	(Array<T>::make_unique): Update.
-	* Array.cc (Array<T>::fill): Update.
-
-	* MArray.h (MArray<T>::MArray<T> (T *, ...)): Remove.
-	* DiagArray2.h (DiagArray2<T>::DiagArray2<T> (T *, ...)): Remove.
-	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2<T> (T *, ...)): Remove.
-	* Array3.h (Array3<T>::Array3<T> (T *, ...)): Remove.
-
-	* dColVector.h (ColumnVector::ColumnVector (T *, ...)): Remove.
-	* fColVector.h (FloatColumnVector::FloatColumnVector (T *, ...)): Remove.
-	* CColVector.h (ComplexColumnVector::ComplexColumnVector (T *, ...)): Remove.
-	* fCColVector.h (FloatComplexColumnVector::FloatComplexColumnVector (T *, ...)): Remove.
-
-	* dRowVector.h (RowVector::RowVector (T *, ...)): Remove.
-	* fRowVector.h (FloatRowVector::FloatRowVector (T *, ...)): Remove.
-	* CRowVector.h (ComplexRowVector::ComplexRowVector (T *, ...)): Remove.
-	* fCRowVector.h (FloatComplexRowVector::FloatComplexRowVector (T *, ...)): Remove.
-
-	* dMatrix.h (Matrix::Matrix (T *, ...)): Remove.
-	* fMatrix.h (FloatMatrix::FloatMatrix (T *, ...)): Remove.
-	* CMatrix.h (ComplexMatrix::ComplexMatrix (T *, ...)): Remove.
-	* fCMatrix.h (FloatComplexMatrix::FloatComplexMatrix (T *, ...)): Remove.
-	* boolMatrix.h (boolMatrix::boolMatrix (T *, ...)): Remove.
-	* chMatrix.h (charMatrix::charMatrix (T *, ...)): Remove.
-
-	* dNDArray.h (NDArray::NDArray (T *, ...)): Remove.
-	* fNDArray.h (FloatNDArray::FloatNDArray (T *, ...)): Remove.
-	* CNDArray.h (ComplexNDArray::ComplexNDArray (T *, ...)): Remove.
-	* fCNDArray.h (FloatComplexNDArray::FloatComplexNDArray (T *, ...)): Remove.
-	* boolNDArray.h (boolNDArray::boolNDArray (T *, ...)): Remove.
-	* chNDArray.h (charNDArray::charNDArray (T *, ...)): Remove.
-
-2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DiagArray2.h (DiagArray2): Clean up ctors. Remove Proxy class.
-	Remove non-const two-index elem methods.
-	* DiagArray2.cc: Update.
-	* MDiagArray2.h: Update.
-
-	* dDiagArray2.h: Update.
-	* dDiagArray2.cc: Update.
-	* fDiagArray2.h: Update.
-	* fDiagArray2.cc: Update.
-	* CDiagArray2.h: Update.
-	* CDiagArray2.cc: Update.
-	* fCDiagArray2.h: Update.
-	* fCDiagArray2.cc: Update.
-
-	* dMatrix.cc: Update.
-	* fMatrix.cc: Update.
-	* CMatrix.cc: Update.
-	* fCMatrix.cc: Update.
-
-	* dRowVector.cc: Update.
-	* fRowVector.cc: Update.
-	* CRowVector.cc: Update.
-	* fCRowVector.cc: Update.
-
-	* dColVector.cc: Update.
-	* fColVector.cc: Update.
-	* CColVector.cc: Update.
-	* fCColVector.cc: Update.
-
-	* dColVector.cc (ColumnVector::abs): New method.
-	* dColVector.h: Declare it.
-	* fColVector.cc (FloatColumnVector::abs): New method.
-	* fColVector.h: Declare it.
-	* CColVector.cc (ComplexColumnVector::abs): New method.
-	* CColVector.h: Declare it.
-	* fCColVector.cc (FloatComplexColumnVector::abs): New method.
-	* fCColVector.h: Declare it.
-
-2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc: Parameterize all appliers by value types rather than
-	Array types. Return & accept Array instances.
-	* mx-op-defs.h: Update references.
-	* CMatrix.cc: Ditto.
-	* CNDArray.cc: Ditto.
-	* DiagArray2.h: Ditto.
-	* MArray.cc: Ditto.
-	* boolMatrix.cc: Ditto.
-	* boolNDArray.cc: Ditto.
-	* bsxfun-defs.cc: Ditto.
-	* chMatrix.cc: Ditto.
-	* chNDArray.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fNDArray.cc: Ditto.
-	* intNDArray.cc: Ditto.
-	* MDiagArray2.cc: Remove computed assignment operators, adapt
-	operators to new mechanism.
-	* MDiagArray2.h: Declare operators as friends.
-	* MArray-decl.h (MDIAGARRAY2_OPS_FRIEND_DECLS): Don't expand
-	MARRAY_OP_ASSIGN_FRIENDS here.
-
-2010-02-25  John W. Eaton  <jwe@octave.org>
-
-	* eigs-base.cc: Use octave_idx_type for Fortran LOGICAL values
-	in function prototypes.
-	(EigsRealSymmetricMatrix, EigsRealSymmetricMatrixShift,
-	EigsRealSymmetricFunc, EigsRealNonSymmetricMatrix,
-	EigsRealNonSymmetricMatrixShift, EigsRealNonSymmetricFunc,
-	EigsComplexNonSymmetricMatrix, EigsComplexNonSymmetricMatrixShift,
-	EigsComplexNonSymmetricFunc): Declare rvec argument as bool, not int.
-	Fix explicit instantiations to match.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-mem.h (safe_size_comp): New helper func.
-	(no_ctor_new): Call it here.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-mem.h (copy_or_memcpy, fill_or_memset, no_ctor_new): Accept
-	size_t rather than octave_idx_type.
-	* Array.h (Array<T>::byte_size): Correct calculation.
-	* DiagArray2.h (DiagArray2<T>::byte_size): Call inherited byte_size.
-	* PermMatrix.h (PermMatrix::byte_size): Ditto.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* str-vec.h (string_vector::string_vector): Use (n, 1).
-	(string_vector::resize): Ditto.
-	* str-vec.cc (string_vector::string_vector): Ditto.
-
-2010-02-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array::Array (const Array&, octave_idx_type,
-	octave_idx_type): New ctor.
-	(Array::reshape (octave_idx_type, octave_idx_type): New method.
-	* Array.h: Declare them.
-	* Array2.h: Deprecate Array2, make it a #define for Array.
-
-	* Array-C.cc: Remove Array2 instantiation.
-	* Array-b.cc: Ditto.
-	* Array-ch.cc: Ditto.
-	* Array-d.cc: Ditto.
-	* Array-f.cc: Ditto.
-	* Array-fC.cc: Ditto.
-	* Array-i.cc: Ditto.
-	* Array-s.cc: Ditto.
-	* Array-voidp.cc: Ditto.
-
-	* CMatrix.cc: Use Array instead of Array2 everywhere.
-	* CMatrix.h: Ditto.
-	* CNDArray.cc: Ditto.
-	* DiagArray2.cc: Ditto.
-	* DiagArray2.h: Ditto.
-	* MDiagArray2.h: Ditto.
-	* Sparse.cc: Ditto.
-	* Sparse.h: Ditto.
-	* boolMatrix.h: Ditto.
-	* boolNDArray.cc: Ditto.
-	* chMatrix.h: Ditto.
-	* chNDArray.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dMatrix.h: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCMatrix.h: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fMatrix.h: Ditto.
-	* fNDArray.cc: Ditto.
-	* lo-specfun.cc: Ditto.
-	* lo-specfun.h: Ditto.
-
-2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* chMatrix.h (charMatrix): Base on Array<char>.
-	* chMatrix.cc (charMatrix): Update.
-	* boolMatrix.h (boolMatrix): Ditto.
-	* boolMatrix.h (boolMatrix): Update.
-
-2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array): Define 2D constructors. Remove conflicting 1D
-	initialized constructor. Deprecate 1D constructor. Deprecate 1D resize.
-	Add 2D resize, resize1. Remove resize_fill. Make resize_fill_value
-	return a reference. Remove 1D clear.
-
-	* MArray.h (MArray): Merge with MArrayN. Define 2D constructors, sync
-	with Array changes.
-
-	* MArrayN.h, MArray2.h: Deprecate headers, use compatibility #defines.
-	* MArrayN.cc, MArray2.cc: Remove sources.
-	* Makefile.am: Update.
-
-	* fCMatrix.h (FloatComplexMatrix): Rebase on MArray.
-	* fMatrix.h (FloatMatrix): Ditto.
-	* dMatrix.h (Matrix): Ditto.
-	* CMatrix.h (ComplexMatrix): Ditto.
-	* fCNDArray.h (FloatComplexNDArray): Rebase on MArray.
-	* fNDArray.h (FloatNDArray): Ditto.
-	* dNDArray.h (NDArray): Ditto.
-	* CNDArray.h (ComplexNDArray): Ditto.
-
-	* Array-util.cc: Update.
-	* Array.cc: Ditto.
-	* Array2.h: Ditto.
-	* Array3.h: Ditto.
-	* CColVector.cc: Ditto.
-	* CColVector.h: Ditto.
-	* CMatrix.cc: Ditto.
-	* CNDArray.cc: Ditto.
-	* CRowVector.cc: Ditto.
-	* CSparse.cc: Ditto.
-	* ChangeLog: Ditto.
-	* CmplxCHOL.cc: Ditto.
-	* CmplxHESS.cc: Ditto.
-	* CmplxLU.cc: Ditto.
-	* CmplxQRP.cc: Ditto.
-	* CmplxSCHUR.cc: Ditto.
-	* CmplxSVD.cc: Ditto.
-	* CollocWt.cc: Ditto.
-	* DASPK-opts.in: Ditto.
-	* DASPK.cc: Ditto.
-	* DASRT-opts.in: Ditto.
-	* DASRT.cc: Ditto.
-	* DASSL-opts.in: Ditto.
-	* DASSL.cc: Ditto.
-	* DiagArray2.cc: Ditto.
-	* DiagArray2.h: Ditto.
-	* EIG.cc: Ditto.
-	* LSODE-opts.in: Ditto.
-	* LSODE.cc: Ditto.
-	* MArray-C.cc: Ditto.
-	* MArray-d.cc: Ditto.
-	* MArray-defs.h: Ditto.
-	* MArray-f.cc: Ditto.
-	* MArray-fC.cc: Ditto.
-	* MArray-i.cc: Ditto.
-	* MArray-s.cc: Ditto.
-	* MArray.cc: Ditto.
-	* MDiagArray2.h: Ditto.
-	* MSparse-defs.h: Ditto.
-	* MSparse.cc: Ditto.
-	* MSparse.h: Ditto.
-	* Makefile.am: Ditto.
-	* MatrixType.cc: Ditto.
-	* PermMatrix.cc: Ditto.
-	* Quad.cc: Ditto.
-	* SparseCmplxLU.cc: Ditto.
-	* SparseCmplxQR.cc: Ditto.
-	* SparseCmplxQR.h: Ditto.
-	* SparseQR.cc: Ditto.
-	* SparseQR.h: Ditto.
-	* SparsedbleLU.cc: Ditto.
-	* base-lu.cc: Ditto.
-	* dColVector.h: Ditto.
-	* dMatrix.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* dRowVector.h: Ditto.
-	* dSparse.cc: Ditto.
-	* dbleCHOL.cc: Ditto.
-	* dbleHESS.cc: Ditto.
-	* dbleLU.cc: Ditto.
-	* dbleQRP.cc: Ditto.
-	* dbleSCHUR.cc: Ditto.
-	* dbleSVD.cc: Ditto.
-	* dim-vector.h: Ditto.
-	* eigs-base.cc: Ditto.
-	* fCColVector.cc: Ditto.
-	* fCColVector.h: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fCRowVector.cc: Ditto.
-	* fCRowVector.h: Ditto.
-	* fCmplxCHOL.cc: Ditto.
-	* fCmplxHESS.cc: Ditto.
-	* fCmplxLU.cc: Ditto.
-	* fCmplxQRP.cc: Ditto.
-	* fCmplxSCHUR.cc: Ditto.
-	* fCmplxSVD.cc: Ditto.
-	* fColVector.h: Ditto.
-	* fEIG.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fNDArray.cc: Ditto.
-	* fRowVector.h: Ditto.
-	* floatCHOL.cc: Ditto.
-	* floatHESS.cc: Ditto.
-	* floatLU.cc: Ditto.
-	* floatQRP.cc: Ditto.
-	* floatSCHUR.cc: Ditto.
-	* floatSVD.cc: Ditto.
-	* glob-match.h: Ditto.
-	* int16NDArray.h: Ditto.
-	* int32NDArray.h: Ditto.
-	* int64NDArray.h: Ditto.
-	* int8NDArray.h: Ditto.
-	* intNDArray.cc: Ditto.
-	* intNDArray.h: Ditto.
-	* oct-fftw.cc: Ditto.
-	* oct-norm.cc: Ditto.
-	* oct-rand.cc: Ditto.
-	* regex-match.cc: Ditto.
-	* sparse-dmsolve.cc: Ditto.
-	* str-vec.cc: Ditto.
-	* str-vec.h: Ditto.
-	* uint16NDArray.h: Ditto.
-	* uint32NDArray.h: Ditto.
-	* uint64NDArray.h: Ditto.
-	* uint8NDArray.h: Ditto.
-
-2010-02-22  John W. Eaton  <jwe@octave.org>
-
-	* data-conv.cc, data-conv.h (read_floats, read_doubles,
-	do_float_format_conversion, do_double_format_conversion):
-	Declare len arg and loop counter as octave_idx_type, not int.
-	(strip_spaces): Use size_t for string dimension and index, not int.
-	(LS_DO_READ, LS_DO_WRITE): Declare loop counter as
-	octave_idx_type, not int.
-	(write_floats, write_doubles):
-	Declare len arg as octave_idx_type, not int.
-	(IEEE_big_double_to_IEEE_little_double,
-	VAX_D_double_to_IEEE_little_double,
-	VAX_G_double_to_IEEE_little_double,
-	Cray_to_IEEE_little_double,
-	IEEE_big_float_to_IEEE_little_float,
-	VAX_D_float_to_IEEE_little_float,
-	VAX_G_float_to_IEEE_little_float, Cray_to_IEEE_little_float,
-	IEEE_little_double_to_IEEE_big_double,
-	VAX_D_double_to_IEEE_big_double,
-	VAX_G_double_to_IEEE_big_double, Cray_to_IEEE_big_double,
-	IEEE_little_float_to_IEEE_big_float,
-	VAX_D_float_to_IEEE_big_float, VAX_G_float_to_IEEE_big_float,
-	Cray_to_IEEE_big_float, IEEE_little_double_to_VAX_D_double,
-	IEEE_big_double_to_VAX_D_double,
-	VAX_G_double_to_VAX_D_double, Cray_to_VAX_D_double,
-	IEEE_little_float_to_VAX_D_float,
-	IEEE_big_float_to_VAX_D_float, VAX_G_float_to_VAX_D_float,
-	Cray_to_VAX_D_float, IEEE_little_double_to_VAX_G_double,
-	IEEE_big_double_to_VAX_G_double,
-	VAX_D_double_to_VAX_G_double, Cray_to_VAX_G_double,
-	IEEE_little_float_to_VAX_G_float,
-	IEEE_big_float_to_VAX_G_float, VAX_D_float_to_VAX_G_float,
-	Cray_to_VAX_G_float, read_doubles):
-	Declare len arg as octave_idx_type, not int.
-
-2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-sysdep.cc, lo-utils.h, oct-shlib.h: Define WIN32_LEAN_AND_MEAN
-	and don't #undef min/max.
-	* oct-inttypes.h: Don't #undef min/max.
-
-	* oct-glob.cc (octave_glob): Convert backslashes to forward slashes
-	automatically before calling glob, and convert back after the call
-	(implementation from jwe).
-
-	* Makefile.am: Add -bindir flag to liboctave_la_LDFLAGS.
-
-2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::as_array,
-	idx_vector::idx_range_rep::as_array,
-	idx_vector::idx_scalar_rep::as_array,
-	idx_vector::idx_vector_rep::as_array): New methods.
-	* idx-vector.h: Declare them.
-
-2010-02-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-rand.cc: Include <sdint.h>.  Change declarations of ranlib
-	functions to take int32_t instead of octave_idx_type values.
-	Change all uses.
-	(octave_rand::do_seed): Use int32_t in union, not octave_idx_type.
-	(force_to_fit_range): Args are now int32_t, not octave_idx_type.
-	(octave_rand::initialize_ranlib_generators): Use int32_t in seed
-	calculation.
-
-2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-op-defs.h (MINMAX_FCNS): Generalize.
-	* mx-op-decl.h (MINMAX_DECLS): Likewise.
-
-	* int16NDArray.h, int32NDArray.h, int64NDArray.h, int8NDArray.h,
-	uint16NDArray.h, uint32NDArray.h, uint64NDArray.h, uint8NDArray.h:
-	Update.
-	* int16NDArray.cc, int32NDArray.cc, int64NDArray.cc, int8NDArray.cc,
-	uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc:
-	Update.
-
-	* CNDArray.h, dNDArray.h, fCNDArray.h, fNDArray.h: Replace explicit
-	decls.
-
-	* CNDArray.cc, dNDArray.cc, fCNDArray.cc, fNDArray.cc: Replace explicit
-	definitions.
-
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* sparse-mk-ops.awk, mk-ops.awk, filemode.c, lo-cieee.c,
-	oct-rl-hist.c, randgamma.c, randmtzig.c, randpoisson.c,
-	tempnam.c, tempname.c: Untabify.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Array-C.cc, Array-fC.cc, Array-util.cc, Array.cc,
-	CColVector.cc, CDiagMatrix.cc, CMatrix.cc, CNDArray.cc,
-	CRowVector.cc, CSparse.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
-	CmplxGEPBAL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
-	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
-	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc, MSparse.cc, MatrixType.cc,
-	ODES.cc, Quad.cc, Range.cc, Sparse-C.cc, Sparse.cc,
-	SparseCmplxCHOL.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
-	SparseQR.cc, SparsedbleCHOL.cc, SparsedbleLU.cc, boolNDArray.cc,
-	boolSparse.cc, chMatrix.cc, chNDArray.cc, cmd-edit.cc,
-	cmd-hist.cc, dColVector.cc, dDiagMatrix.cc, dMatrix.cc,
-	dNDArray.cc, dRowVector.cc, dSparse.cc, data-conv.cc,
-	dbleAEPBAL.cc, dbleCHOL.cc, dbleGEPBAL.cc, dbleHESS.cc,
-	dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc,
-	dir-ops.cc, eigs-base.cc, fCColVector.cc, fCDiagMatrix.cc,
-	fCMatrix.cc, fCNDArray.cc, fCRowVector.cc, fCmplxAEPBAL.cc,
-	fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxHESS.cc, fCmplxLU.cc,
-	fCmplxQR.cc, fCmplxQRP.cc, fCmplxSCHUR.cc, fCmplxSVD.cc,
-	fColVector.cc, fDiagMatrix.cc, fEIG.cc, fMatrix.cc, fNDArray.cc,
-	fRowVector.cc, file-stat.cc, floatAEPBAL.cc, floatCHOL.cc,
-	floatGEPBAL.cc, floatHESS.cc, floatLU.cc, floatQR.cc,
-	floatQRP.cc, floatSCHUR.cc, floatSVD.cc, idx-vector.cc,
-	intNDArray.cc, kpse.cc, lo-ieee.cc, lo-mappers.cc,
-	lo-specfun.cc, lo-sysdep.cc, lo-utils.cc, mach-info.cc,
-	mx-inlines.cc, oct-alloc.cc, oct-env.cc, oct-fftw.cc,
-	oct-glob.cc, oct-group.cc, oct-inttypes.cc, oct-md5.cc,
-	oct-rand.cc, oct-shlib.cc, oct-sort.cc, oct-spparms.cc,
-	oct-syscalls.cc, oct-time.cc, pathsearch.cc, regex-match.cc,
-	sparse-base-chol.cc, sparse-base-lu.cc, sparse-dmsolve.cc,
-	sparse-sort.cc, sparse-util.cc, str-vec.cc: Untabify.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.h, Array.h, Array2.h, Array3.h, CColVector.h,
-	CMatrix.h, CNDArray.h, CRowVector.h, CSparse.h, CmplxCHOL.h,
-	CmplxGEPBAL.h, CmplxHESS.h, CmplxLU.h, CmplxQRP.h, CmplxSCHUR.h,
-	CmplxSVD.h, CollocWt.h, DAE.h, DAEFunc.h, DAERT.h, DAERTFunc.h,
-	DASPK.h, DASRT.h, DASSL.h, DiagArray2.h, EIG.h, MArrayN.h,
-	MDiagArray2.h, MSparse-defs.h, MSparse.h, MatrixType.h, ODE.h,
-	ODEFunc.h, ODES.h, ODESFunc.h, Quad.h, Range.h,
-	Sparse-diag-op-defs.h, Sparse-op-defs.h, Sparse-perm-op-defs.h,
-	Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h, SparseCmplxQR.h,
-	SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h, base-dae.h,
-	base-de.h, base-lu.h, base-min.h, base-qr.h, boolNDArray.h,
-	boolSparse.h, chNDArray.h, cmd-hist.h, dMatrix.h, dNDArray.h,
-	dSparse.h, data-conv.h, dbleCHOL.h, dbleGEPBAL.h, dbleHESS.h,
-	dbleLU.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h, dir-ops.h,
-	fCColVector.h, fCMatrix.h, fCNDArray.h, fCRowVector.h,
-	fCmplxCHOL.h, fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxLU.h,
-	fCmplxQRP.h, fCmplxSCHUR.h, fCmplxSVD.h, fEIG.h, fMatrix.h,
-	fNDArray.h, file-stat.h, floatCHOL.h, floatGEPBAL.h,
-	floatHESS.h, floatLU.h, floatQRP.h, floatSCHUR.h, floatSVD.h,
-	glob-match.h, idx-vector.h, intNDArray.h, lo-ieee.h,
-	lo-specfun.h, mx-op-decl.h, mx-op-defs.h, oct-env.h, oct-fftw.h,
-	oct-group.h, oct-inttypes.h, oct-mutex.h, oct-passwd.h,
-	oct-rand.h, oct-shlib.h, oct-sort.h, oct-spparms.h, oct-time.h,
-	oct-uname.h, pathsearch.h, sparse-base-chol.h, sparse-base-lu.h,
-	sparse-sort.h, sparse-util.h, statdefs.h, str-vec.h: Untabify.
-
-2010-02-10  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.h (template <class U> Matrix (const Array<U>&)):
-	New constructor.
-	* CMatrix.h (template <class U> ComplexMatrix (const Array<U>&)):
-	New constructor.
-	* fMatrix.h (template <class U> FloatMatrix (const Array<U>&)):
-	New constructor.
-	* fCMatrix.h (template <class U> FloatComplexMatrix (const Array<U>&)):
-	New constructor.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
-	Array<octave_idx_type>&, octave_idx_type, direct)): New constructor.
-	* idx-vector.h: Declare it.
-	(idx_vector::idx_vector (const Array<octave_idx_type>&,
-	octave_idx_type)): New constructor.
-
-2010-02-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc: Include "strftime.h", not <strftime.h>.
-	* file-ops.cc: Include "pathmax.h", not <pathmax.h>.
-
-2010-02-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::prog_invocation_name): Rename from
-	program_invocation_name.  Change all uses.
-	(octave_env::prog_name): Rename from program_name.  Change all uses.
-	(octave_env::do_set_program_name): Call ::set_program_name
-	function from gnulib.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::idx_base_rep::sort_idx): New pure virtual
-	function.
-	(idx_vector::idx_colon_rep::sort_idx,
-	idx_vector::idx_range_rep::sort_idx,
-	idx_vector::idx_scalar_rep::sort_idx,
-	idx_vector::idx_vector_rep::sort_idx,
-	idx_vector::idx_mask_rep::sort_idx): New override decls.
-	idx_vector::sort (Array<octave_idx_type>&): New method.
-	* idx-vector.cc (idx_vector::idx_range_rep::sort_idx,
-	idx_vector::idx_vector_rep::sort_idx): New methods.
-	(idx_vector::idx_vector_rep::sort_uniq_clone): Rewrite
-	to use bucket sort under plausible circumstances.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::permute): Fix result dimensions when inv=true.
-
-2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArrayN.cc (MArrayN::idx_min, MArrayN::idx_max): New methods.
-	* MArrayN.h: Declare them.
-	* lo-mappers.h (xmin, xmax): Define for general arguments.
-
-2010-02-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* chMatrix.h (charMatrix): Rebase directly on Array<char>.
-	* chNDArray.h (charNDArray): Ditto.
-	* chMatrix.cc: Update.
-	* chNDArray.cc: Update.
-	* MArray-ch.cc: Remove.
-	* Makefile.am: Update.
-
-2010-02-04  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (gethostname): Delete function.
-	* lo-sysdep.h (gethostname): Delete declaration.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* oct-syscalls.h, oct-syscalls.cc (octave_fcntl): Assume fcntl exists.
-	Rename from octave_syscalls::fcntl.
-	(octave_syscalls::popen2): Call octave_fcntl, not fcntl.
-	* cmd-hist.cc, lo-sysdep.cc, oct-syscalls.cc:
-	Include <fcntl.h> unconditionally.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* dbleSVD.cc (SVD::init): Ensure args to std::max are the same type.
-	* CmplxSVD.cc (ComplexSVD::init): Likewise.
-	* floatSVD.cc (FloatSVD::init): Likewise.
-	* fCmplxSVD.cc (FloatComplexSVD::init): Likewise.
-	* idx-vector.cc (idx_range_rep): Likewise.
-	* Array.cc (Array<T>::nth_element): Likewise.
-
-	* lo-specfun.cc (null_dims): Delete unused static variable.
-	(betainc): Call dim_vector (0, 0), not dim_vector (0).
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.h (octave_canonicalize_file_name): Rename from
-	file_ops::canonicalize_file_name.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (canonicalize_file_name):
-	Don't pass current directory to octave_env::make_absolute.
-	* cmd-edit.cc (do_decode_prompt_string): Likewise.
-
-	* oct-env.h (octave_env::get_current_directory):
-	Rename from octave_env::getcwd.
-	(octave_env::make_absolute): Provide default value for second arg.
-
-	* lo-sysdep.cc (octave_getcwd): Assume we are using gnulib
-	getcwd module.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.h: Include <ctime>, not "systime.h".
-	* oct-time.cc: Include <strftime.h>, not "strftime.h".
-	Don't include <windows.h>.
-
-	* systime.h: Delete.
-	* Makefile.am (INCS): Remove it from the list.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* lo-utils.h, lo-cutils.c (oct_strptime): Delete.
-	* oct-time.cc (octave_strptime::init): Call strptime, not oct_strptime.
-
-2010-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::determinant): Treat matrices marked as singular
-	normally.
-	* fMatrix.cc (FloatMatrix::determinant): Ditto.
-	* CMatrix.cc (ComplexMatrix::determinant): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::determinant): Ditto.
-
-2010-01-26  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc: Don't tag functions with OCTAVE_API in source file.
-
-2010-01-26  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c, lo-utils.h (octave_link, octave_symlink,
-	octave_readlink, octave_mkdir, octave_mkfifo, octave_rmdir,
-	octave_rename, octave_tempnam, octave_umask, octave_unlink):
-	Delete.
-	* file-io.h, file-io.cc (octave_mkdir,  octave_mkfifo,
-	octave_link, octave_symlink, octave_readlink, octave_rename,
-	octave_rmdir, octave_recursive_rmdir, octave_umask,
-	octave_unlink, octave_tempnam): Rename from file_ops::X to
-	octave_X.  Change all uses.
-	(file_ops::static_members): Incorporate directly into file_ops class.
-
-2010-01-23  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove oct-getopt.c from the list.
-	(LIBOCTAVE_CXX_SOURCES): Remove prog-args.c from the list.
-	(INCS): Remove prog-args.h and oct-getopt.h from the list.
-	* prog-args.cc, prog-args.h, oct-getopt.c, oct-getopt.h: Delete.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* prog-args.h, prog-args.cc (prog_args::get_option,
-	prog_args::option_argument, prog_args::option_index):
-	Don't declare const.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* prog-args.h, prog-args.cc (prog_args::get_option):
-	Rename from getopt. Now const.
-	(prog_args::option_argument): Rename from optarg.  Now const.
-	(prog_args::option_index): Rename from optind.  Now const.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc: Don't include statdefs.h.
-
-2010-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleSVD.cc (SVD::init): Ensure LD* arguments >= 1.
-	* floatSVD.cc (FloatSVD::init): Likewise.
-	* CmplxSVD.cc (ComplexSVD::init): Likewise.
-	* fCmplxSVD.cc (FloatComplexSVD::init): Likewise.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc, fCMatrix.cc, cmd-edit.cc, cmd-hist.cc,
-	file-ops.cc, file-ops.h, file-stat.cc, file-stat.h, filemode.c,
-	kpse.cc, lo-cutils.c, lo-sysdep.cc, lo-utils.cc, oct-env.cc,
-	oct-group.cc, oct-group.h, oct-passwd.cc, oct-passwd.h,
-	oct-time.cc, oct-syscalls.cc, oct-syscalls.h, statdefs.h,
-	sysdir.h, syswait.h, tempname.c, regex-match.h:
-	Assume sys/types.h and unistd.h are present (gnulib provides them).
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.h, file-ops.cc, lo-utils.h, lo-cutils.c: Untabify.
-
-	* file-ops.cc: Don't include unistd.h.
-	(NOT_SUPPORTED): Delete unused macro.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_tempnam): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::tempnam): Call octave_tempnam.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_readlink): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::readlink): Call octave_readlink.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_symlink): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::symlink): Call octave_symlink.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_link): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::link): Call octave_link.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_unlink): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::unlink): Call octave_unlink.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_umask): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::umask): Call octave_umask.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.h (file_ops::mkdir): Move definitions to file-ops.cc.
-	(file_ops::mkfifo): Move definitions to file-ops.cc.
-	(file_ops::mkdir_internal, file_ops::mkfifo_internal): Delete decls.
-	* file-ops.cc (file_ops::mkdir): Call octave_mkdir.
-	(file_ops::mkfifo): Call octave_mkfifo.
-	* lo-cutils.c (octave_mkdir, octave_mkfifo): New functions.
-	* lo-utils.h: Provide decls.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove strptime.c from the list.
-	* strptime.c: Delete.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_rename): New funtion.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::rename): Call octave_rename.
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove rename.c from the list.
-	* rename.c: Delete.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-cutils.c (octave_rmdir): New function.
-	* lo-utils.h: Provide decl.
-	* file-ops.cc (file_ops::rmdir): Call octave_rmdir.
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove rmdir.c from the list.
-	* rmdir.c: Delete.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove strcasecmp.c and
-	strncase.c from the list.
-	* strcasecmp.c, strncase.c: Delete.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (INCS): Remove getopt.h from the list.
-	(LIBOCTAVE_C_SOURCES): Remove getopt.c and getopt1.c from the list.
-	* getopt.c, getopt1.c, getopt.h: Delete.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-f.cc,
-	Array-fC.cc, Array-i.cc, Array-idx-vec.cc, Array-s.cc,
-	Array-str.cc, Array-util.cc, Array-voidp.cc, Array.cc,
-	CColVector.cc, CDiagMatrix.cc, CMatrix.cc, CNDArray.cc,
-	CRowVector.cc, CSparse.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
-	CmplxGEPBAL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
-	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
-	DASRT.cc, DASSL.cc, DiagArray2.cc, EIG.cc, LSODE.cc,
-	MArray-C.cc, MArray-ch.cc, MArray-d.cc, MArray-f.cc,
-	MArray-fC.cc, MArray-i.cc, MArray-s.cc, MArray.cc, MArray2.cc,
-	MArrayN.cc, MDiagArray2.cc, MSparse-C.cc, MSparse-d.cc,
-	MSparse.cc, MatrixType.cc, ODES.cc, Quad.cc, Range.cc,
-	Sparse-C.cc, Sparse-b.cc, Sparse-d.cc, Sparse.cc,
-	SparseCmplxCHOL.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
-	SparseQR.cc, SparsedbleCHOL.cc, SparsedbleLU.cc, base-lu.cc,
-	boolMatrix.cc, boolNDArray.cc, boolSparse.cc, chMatrix.cc,
-	chNDArray.cc, cmd-edit.cc, cmd-hist.cc, dColVector.cc,
-	dDiagMatrix.cc, dMatrix.cc, dNDArray.cc, dRowVector.cc,
-	dSparse.cc, data-conv.cc, dbleAEPBAL.cc, dbleCHOL.cc,
-	dbleGEPBAL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
-	dbleSCHUR.cc, dbleSVD.cc, dir-ops.cc, eigs-base.cc,
-	fCColVector.cc, fCDiagMatrix.cc, fCMatrix.cc, fCNDArray.cc,
-	fCRowVector.cc, fCmplxAEPBAL.cc, fCmplxCHOL.cc, fCmplxGEPBAL.cc,
-	fCmplxHESS.cc, fCmplxLU.cc, fCmplxQR.cc, fCmplxQRP.cc,
-	fCmplxSCHUR.cc, fCmplxSVD.cc, fColVector.cc, fDiagMatrix.cc,
-	fEIG.cc, fMatrix.cc, fNDArray.cc, fRowVector.cc, file-ops.cc,
-	file-stat.cc, floatAEPBAL.cc, floatCHOL.cc, floatGEPBAL.cc,
-	floatHESS.cc, floatLU.cc, floatQR.cc, floatQRP.cc,
-	floatSCHUR.cc, floatSVD.cc, glob-match.cc, idx-vector.cc,
-	int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
-	int8NDArray.cc, intNDArray.cc, kpse.cc, lo-ieee.cc,
-	lo-mappers.cc, lo-specfun.cc, lo-sysdep.cc, lo-utils.cc,
-	mach-info.cc, mx-inlines.cc, oct-alloc.cc, oct-env.cc,
-	oct-fftw.cc, oct-group.cc, oct-inttypes.cc, oct-md5.cc,
-	oct-passwd.cc, oct-rand.cc, oct-shlib.cc, oct-sort.cc,
-	oct-spparms.cc, oct-syscalls.cc, oct-time.cc, oct-uname.cc,
-	pathsearch.cc, prog-args.cc, regex-match.cc,
-	sparse-base-chol.cc, sparse-base-lu.cc, sparse-dmsolve.cc,
-	sparse-sort.cc, sparse-util.cc, str-vec.cc, uint16NDArray.cc,
-	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc,
-	f2c-main.c, lo-cieee.c, lo-cutils.c, oct-getopt.c,
-	oct-rl-edit.c, oct-rl-hist.c, randgamma.c, randmtzig.c,
-	randpoisson.c, Array-util.h, Array.h, Array2.h, Array3.h,
-	ArrayN.h, CColVector.h, CDiagMatrix.h, CMatrix.h, CNDArray.h,
-	CRowVector.h, CSparse.h, CmplxAEPBAL.h, CmplxCHOL.h,
-	CmplxGEPBAL.h, CmplxHESS.h, CmplxLU.h, CmplxQR.h, CmplxQRP.h,
-	CmplxSCHUR.h, CmplxSVD.h, CollocWt.h, DAE.h, DAEFunc.h, DAERT.h,
-	DAERTFunc.h, DASPK.h, DASRT.h, DASSL.h, DiagArray2.h, EIG.h,
-	LSODE.h, MArray.h, MArray2.h, MArrayN.h, MDiagArray2.h,
-	MSparse-defs.h, MSparse.h, Matrix.h, MatrixType.h, ODE.h,
-	ODEFunc.h, ODES.h, ODESFunc.h, Quad.h, Range.h,
-	Sparse-op-defs.h, Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h,
-	SparseCmplxQR.h, SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h,
-	base-dae.h, base-de.h, base-lu.h, base-min.h, boolMatrix.h,
-	boolNDArray.h, boolSparse.h, byte-swap.h, chMatrix.h,
-	chNDArray.h, cmd-edit.h, cmd-hist.h, dColVector.h,
-	dDiagMatrix.h, dMatrix.h, dNDArray.h, dRowVector.h, dSparse.h,
-	data-conv.h, dbleAEPBAL.h, dbleCHOL.h, dbleGEPBAL.h, dbleHESS.h,
-	dbleLU.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h,
-	dir-ops.h, fCColVector.h, fCDiagMatrix.h, fCMatrix.h,
-	fCNDArray.h, fCRowVector.h, fCmplxAEPBAL.h, fCmplxCHOL.h,
-	fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxLU.h, fCmplxQR.h,
-	fCmplxQRP.h, fCmplxSCHUR.h, fCmplxSVD.h, fColVector.h,
-	fDiagMatrix.h, fEIG.h, fMatrix.h, fNDArray.h, fRowVector.h,
-	file-ops.h, file-stat.h, floatAEPBAL.h, floatCHOL.h,
-	floatGEPBAL.h, floatHESS.h, floatLU.h, floatQR.h, floatQRP.h,
-	floatSCHUR.h, floatSVD.h, functor.h, glob-match.h, idx-vector.h,
-	int16NDArray.h, int32NDArray.h, int64NDArray.h, int8NDArray.h,
-	intNDArray.h, kpse-xfns.h, lo-ieee.h, lo-mappers.h, lo-math.h,
-	lo-specfun.h, lo-sysdep.h, lo-traits.h, lo-utils.h, mach-info.h,
-	mx-base.h, mx-defs.h, mx-ext.h, mx-op-defs.h, oct-alloc.h,
-	oct-cmplx.h, oct-env.h, oct-fftw.h, oct-getopt.h, oct-group.h,
-	oct-inttypes.h, oct-md5.h, oct-passwd.h, oct-rand.h,
-	oct-rl-edit.h, oct-rl-hist.h, oct-shlib.h, oct-sort.h,
-	oct-spparms.h, oct-syscalls.h, oct-time.h, oct-uname.h,
-	pathlen.h, pathsearch.h, prog-args.h, randgamma.h, randmtzig.h,
-	randpoisson.h, regex-match.h, sparse-base-chol.h,
-	sparse-base-lu.h, sparse-sort.h, sparse-util.h, statdefs.h,
-	str-vec.h, sun-utils.h, sysdir.h, systime.h, syswait.h,
-	uint16NDArray.h, uint32NDArray.h, uint64NDArray.h,
-	uint8NDArray.h: Remove Emacs local-variables settings.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* boolNDArray.cc (boolNDArray::cumsum): Sum directly in double to
-	avoid a copy.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h: Style fixes.  Remove Emacs local variables block.
-	Untabify.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (PRIVATE_INCS): New variable.  List oct-glob.h
-	here instead of in INCS.
-	(liboctave_la_SOURCES): Include $(PRIVATE_INCS) in the list.
-
-	* glob-match.cc (glob_match::match, glob_match::glob): Now const.
-	Move definitions here from glob-match.h.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_any_r, mx_inline_all_r): New helper
-	reductors.
-	(mx_inline_any, mx_inline_all): Call the here in row-wise reduction
-	with few enough columns.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.h (xmin (double, double), xmax (double, double),
-	xmin (float, float), xmax (float, float)): Inline definitions.
-	* lo-mappers.cc (xmin (double, double), xmax (double, double),
-	xmin (float, float), xmax (float, float)): Remove from here.
-	* mx-inlines.cc (mx_inline_xmin, mx_inline_xmax): Provide
-	specializations for real array-scalar and scalar-array cases.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-norm.cc (norm_accumulator_p::accum, norm_accumulator_mp::accum):
-	Call octave_quit here.
-	(higham_subp): Also here.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-op-defs.h (SND_MINMAX_FCN, NDS_MINMAX_FCN, NDND_MINMAX_FCN):
-	Simplify using mx_inlines machinery.
-	* dNDArray (min, max): Simplify.
-	* fNDArray (min, max): Simplify.
-	* CNDArray (min, max): Simplify.
-	* fCNDArray (min, max): Simplify.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h: Substitute OCTAVE_QUIT -> octave_quit ().
-	* CMatrix.cc: Ditto.
-	* CNDArray.cc: Ditto.
-	* CSparse.cc: Ditto.
-	* CmplxGEPBAL.cc: Ditto.
-	* MArrayN.cc: Ditto.
-	* MSparse.cc: Ditto.
-	* Sparse-diag-op-defs.h: Ditto.
-	* Sparse-op-defs.h: Ditto.
-	* Sparse-perm-op-defs.h: Ditto.
-	* Sparse.cc: Ditto.
-	* Sparse.h: Ditto.
-	* SparseCmplxQR.cc: Ditto.
-	* SparseQR.cc: Ditto.
-	* boolSparse.cc: Ditto.
-	* bsxfun-defs.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* dSparse.cc: Ditto.
-	* dbleGEPBAL.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fCmplxGEPBAL.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fNDArray.cc: Ditto.
-	* file-ops.cc: Ditto.
-	* floatGEPBAL.cc: Ditto.
-	* lo-utils.cc: Ditto.
-	* mx-op-defs.h: Ditto.
-	* oct-fftw.cc: Ditto.
-	* oct-norm.cc: Ditto.
-	* oct-rand.cc: Ditto.
-	* sparse-dmsolve.cc: Ditto.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* bsxfun-defs.cc (BSXFUN_STDOP_DEFS_MXLOOP): Fix reversed min/max
-	defs.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* glob-match.h: Update copyright.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (INCS): Include oct-glob.h in the list.
-	(LIBOCTAVE_CXX_SOURCES): Include oct-glob.cc in the list.
-	* oct-glob.h, oct-glob.cc: New files.
-	* glob-match.cc: (glob_match::match): Move internals to oct-glob.cc.
-	(glob_match::glob_internal): Move internals to oct-glob.cc.
-	(single_match_exists): Move to oct-glob.cc.
-	(glob_match::opts_to_fnmatch_flags): New function.
-	* glob-match.h Include oct-glob.h.
-	(glob_match::glob): Call octave_glob to do the real work.
-	(glob_match::glob_internal): Delete decl.
-	(glob_match::match (const string_vector&)): Move here from
-	glob-match.cc.
-	(glob_match::match (const std::string&)): Call octave_fnmatch to
-	do the real work.
-	(glob_match::fnmatch_flags): Rename from flags.
-	(glob_match::opts_to_fnmatch_flags): New function.
-	(glob_match::glob_match): Use it.
-
-2010-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc (xgemm): Use octave_idx_type rather than int.
-	* fCMatrix.cc (xgemm): Ditto.
-
-2010-01-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-time.cc: Avoid to include nonneeded headers from Win32 API,
-	especially winsock.h. Include <sys/time.h> unconditionally, as it is
-	now provided by gnulib, in order to get gettimeofday defined.
-
-2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::insert): Rewrite using assign.
-	(Array<T>::insert2, Array<T>::insertN): Remove.
-	* Array.h: Update declarations. Add brief documentation.
-
-2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-b.cc: Inline ascending and descending sort.
-	(do_bool_partition): New helper template function.
-	(octave_sort<bool>::sort): Provide specializations.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::insert (const Array<T>&, const
-	Array<octave_idx_type>&): Allow less dimensions than indices.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* chNDArray.h: Declare relational bsxfun ops.
-	* chNDArray.cc: Define them.
-
-2010-01-14  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc: Fix prototype for zherk.
-	* fCMatrix.cc: Fix prototype for cherk.
-
-2010-01-14  John W. Eaton  <jwe@octave.org>
-
-	* oct-rl-edit.c (octave_rl_set_name): Save arg before setting
-	rl_terminal_name.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep (T x)):
-	Initialize dummy variable.
-
-2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::compute_index): Generalize to the case of
-	unequal lengths.
-
-2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::chop_trailing_singletons): Only uniquify
-	if really needed.
-	* Array.h (Array<T>::Array (T*, const dim_vector&)): Call
-	chop_trailing_singletons.
-	(Array<T>::Array (const Array<T>&, const dim_vector&,
-	octave_idx_type...)): Ditto.
-	(Array<T>::Array (const dim_vector&)): Ditto.
-	(Array<T>::Array (const dim_vector&, const T&)): Ditto.
-	(Array<T>::chop_trailing_singletons): Deprecate.
-	* Array.cc (Array::Array(const Array&, const dim_vector&)): Ditto.
-	(Array::index (const Array<idx_vector>&, ...)): Ditto.
-	(Array<T>::permute): Don't call deprecate method here.
-	(Array<T>::assign): Neither here.
-
-2010-01-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Remove unnecessary use of
-	simple_move_if_change_rule to allow Make to update timestamps.
-
-2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::crefT): New helper typedef.
-	(Array<T>::elem const, Array<T>::xelem const,
-	Array<T>::checkelem const, Array<T>::operator () const): Return crefT.
-	(Array<T>::range_error const): Remove overloads.
-	* Array.cc (Array<T>::range_error const): Remove overloads.
-
-2010-01-07  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_time::stamp): Assume gettimeofday is
-	available and that it takes two arguments.
-
-2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-utils.cc (octave_fgets (FILE *, bool&)): Add OCTAVE_QUIT at the
-	end.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (AM_CPPFLAGS): Include @CPPFLAGS@ and -I../libgnu
-	in the list.
-
-2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::maybe_reduce): Implement reduction rule
-	for subsequent ones () indices.
-
-2009-12-28  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (fle_ops::mkdir_internal,
-	file_ops::mkfifo_internal): New private static functions.
-	* file-ops.h (file_ops::mkdir, file_ops::mkdir): Move
-	definitions here from file-ops.cc.  Forward to X_internal functions.
-
-2009-12-26  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.cc (lstat): Delete replacement function.
-	(file_fstat::update_internal): Assume fstat is available.
-
-2009-12-25  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::mkdir): Assume we have an mkdir
-	function that takes two arguments.
-	* mkdir.c: Delete.
-	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove mkdir.c from the list.
-
-2009-12-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-md5.cc (oct_md5_result_to_str): New function.
-	(oct_md5, oct_md5_file): Simplify using gnulib md5 functions and
-	oct_md5_result_to_str.
-
-	* Makefile.am (INCS): Remove md5.h from the list.
-	(LIBOCTAVE_C_SOURCES): Remove md5.c from the list.
-	* md5.c, md5.h: Delete.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Eliminate TOPDIR variable in favor of built-in
-	automake variables of top_builddir and top_srcdir.
-
-2009-12-17  John W. Eaton  <jwe@octave.org>
-
-	* glob-match.h, glob-match.cc (glob_match::glob_internal):
-	Rename from glob_match::glob and make private.
-	* glob-match.h (glob_match::glob): Forward to glob_internal.
-
-2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::index (const idx_vector&)): Fix determining of
-	result dimensions.
-
-2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Range.cc (Range::elem, Range::checkelem, Range::index):
-	New methods.
-	* Range.h: Declare them.
-
-2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::loop, idx_vector::bloop): Fix behavior for
-	masks.
-
-2009-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Use DISTCLEANFILES rather than distclean-local rule.
-	Use PERL variable defined by autoconf rather than direct call.
-	Use simple_move_if_change rule to reduce useless compiles if
-	OPTS_INC have not changed.
-
-2009-12-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-shlib.h: Remove stray declarations.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.cc (octave_dlopen_shlib::octave_dlopen_shlib):
-	Print filename along with message from dlerror.
-	Reverse sense of test.
-
-2009-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-shlib.h (octave_shlib): Rewrite.
-	* oct-shlib.cc (octave_shlib): Rewrite.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_base_tm::strftime): Call nstrftime instead
-	of my_strftime.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc: Include strftime.h.  Don't provide decl for strftime.
-	(octave_base_tm::strftime): Call my_strftime instead of ::strftime.
-	* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libgnu to the list.
-	(LINK_DEPS): Add ../libgnu/libgnu.la to the list.
-	(LIBOCTAVE_C_SOURCES): Remove strftime.c from the list.
-	* strftime.c: Delete.
-
-2009-12-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array-d.cc (Array<double>::is_sorted): Declare as OCTAVE_API.
-	* Array-f.cc (Array<float>::is_sorted): Ditto.
-	* lo-sysdep.cc: Undef min and max after including windows.h
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-d.cc (Array<double>::is_sorted): Optimized specialization.
-	* Array-f.cc (Array<float>::is_sorted): Ditto.
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (lookup_binary): Remove.
-	(octave_sort<T>::lookup (const T*, octave_idx_type, const T&, comp)):
-	Move code here.
-	(octave_sort<T>::lookup (const T*, octave_idx_type, const T*,
-	octave_idx_type, octave_idx_type *, comp)): Remove offset parameter.
-	Use a simple sequence of lookups.
-	(octave_sort<T>::lookup (const T*, octave_idx_type, const T*,
-	octave_idx_type, octave_idx_type *)): Update.
-	(octave_sort<T>::lookupm, octave_sort<T>::lookupb): Remove.
-	(octave_sort<T>::lookup_sorted): New overloaded method.
-
-	* Array.cc (Array<T>::lookup (const Array<T>&, sortmode)): Remove
-	linf & rinf params. Rewrite using is_sorted to check for sortedness,
-	call octave_sort::lookup_sorted to do the sorted merge.
-	(Array<T>::lookupm, Array<T>::lookupb): Remove.
-	(NO_INSTANTIATE_ARRAY_SORT): Update.
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (sortrows_comparator): Rename to safe_comparator.
-	(Array<T>::is_sorted): Use it here.
-	* Array-d.cc: Update.
-	* Array-f.cc: Update.
-	* Array-C.cc: Update.
-	* Array-fC.cc: Update.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (BUILT_NODISTFILES): New variable.
-
-2009-12-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_range_rep::unconvert,
-	idx_vector::idx_scalar_rep::unconvert,
-	idx_vector::idx_vector_rep::unconvert,
-	idx_vector::idx_mask_rep::unconvert): New methods.
-	(idx_vector::unconvert): Use them here. Add mask output.
-	* idx-vector.h: Update decls.
-
-2009-11-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::zero_by_zero): New method.
-	* idx-vector.h (idx_vector::idx_mask_rep::is_colon_equiv): Fix.
-	* Array.cc (Array<T>::assign): Minor tweaks. Optimize
-	A = []; A(1:m,1:n,1:k) = X for all cases. Use a shallow copy
-	for all colon-equivalent indices.
-
-2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::index_class): New member: class_mask.
-	(idx_vector::idx_mask_rep): New class.
-	(idx_vector::idx_vector (bool)): Construct idx_mask_rep.
-	(idx_vector::unmask): New method decl.
-	* idx-vector.cc (idx_vector::idx_vector (const boolNDArray&)):
-	Construct idx_mask_rep conditionally.
-	(idx_vector::unmask): New method.
-	(idx_vector::unconvert): Make non-const. unmask when called on a mask
-	vector.
-	(idx_vector::is_cont_range): Check also for idx_mask_rep.
-
-2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::nnz): New method.
-	* Array.h: Declare it.
-	* MArray.h (MArray<T>::nnz): Remove.
-	* MArrayN.h (MArrayN<T>::nnz): Remove.
-	* boolNDArray.h (boolNDArray::nnz): Remove.
-
-2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleCHOL.cc (CHOL::init): Output LAPACK's info. Resize matrix if
-	nonzero. Use smarter copying.
-	* floatCHOL.cc (FloatCHOL::init): Ditto.
-	* CmplxCHOL.cc (ComplexCHOL::init): Ditto.
-	* fCmplxCHOL.cc (FloatComplexCHOL::init): Ditto.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArrayN.cc (MArrayN::idx_add): New methods.
-	* MArrayN.h: Declare them.
-	* MArray.cc, MArray.h: Remove from here.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::safe_numel): New method.
-	* Array.h (Array<T>::Array (const dim_vector&),
-	Array<T>::Array (const dim_vector&, const T&),
-	Array<T>::Array (T *, const dim_vector&)): Use it here.
-	* Array.cc (Array<T>::clear (const dim_vector&)): Also here.
-	(Array<T>::get_size): Remove.
-	* Array2.h (Array2::get_size): Remove.
-	* Array3.h (Array3::get_size): Remove.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array::clear (const dim_vector&)): Use get_size.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc (do_erfinv): New static function.
-	(erfinv (double), erfinv (float)): New mappers.
-	* lo-mappers.h: Declare them.
-
-2009-11-18  David Grundberg  <davidg@cs.umu.se>
-
-       * str-vec.cc (string_vector::list_in_columns): Avoid crash on
-       empty arguments from list_in_columns.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.h (read_sparse_matrix): Fix order of tests and reads.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_any_negative, mx_inline_pow): New loops.
-	(DEFMXMAPPER2X): New macro.
-	* bsxfun-decl.h (BSXFUN_OP2_DECL): New macro.
-	* bsxfun-defs.cc (BSXFUN_OP2_DEF, BSXFUN_OP2_DEF_MXLOOP): New macros.
-	(do_bsxfun_op): Use OCTAVE_QUIT.
-	* dNDArray.cc (NDArray::all_integers (void)): New method.
-	(NDArray::any_element_is_negative): Use mx_inline_any_negative.
-	(bsxfun_pow (const NDArray&, const NDArray&),
-	bsxfun_pow (const ComplexNDArray&, const NDArray&)): New functions.
-	* dNDArray.h: Update.
-	* fNDArray.cc (FloatNDArray::all_integers (void)): New method.
-	(FloatNDArray::any_element_is_negative): Use mx_inline_any_negative.
-	(bsxfun_pow (const FloatNDArray&, const FloatNDArray&),
-	bsxfun_pow (const FloatComplexNDArray&, const FloatNDArray&)):
-	New functions.
-	* fNDArray.h: Update.
-	* CNDArray.cc (bsxfun_pow (const ComplexNDArray&, const
-	ComplexNDArray&)): New function.
-	* CNDArray.h: Update.
-	* fCNDArray.cc (bsxfun_pow (const FloatComplexNDArray&, const
-	FloatComplexNDArray&)): New function.
-	* fCNDArray.h: Update.
-
-2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CNDArray.cc (ComplexNDArray::all_elements_are_real):
-	Use mx_inline_all_real.
-	* CMatrix.cc (ComplexMatrix::all_elements_are_real): Ditto.
-	* fCNDArray.cc (FloatComplexNDArray::all_elements_are_real):
-	Use mx_inline_all_real.
-	* fCMatrix.cc (FloatComplexMatrix::all_elements_are_real): Ditto.
-	* CDiagMatrix.cc (ComplexDiagMatrix::all_elements_are_real): Ditto.
-	* fCDiagMatrix.cc (FloatComplexDiagMatrix::all_elements_are_real):
-	Ditto.
-	* CSparse.cc (SparseComplexMatrix::all_elements_are_real): Ditto.
-
-2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* base-aepbal.h (permuting_vector): Fix lower part swapping.
-
-2009-11-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (liboctave_la_CPPFLAGS): Add @OCTAVE_DLL_DEFS@ to
-	the list of flags.
-
-2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_any_nan): Rewrite.
-	(mx_inline_all_real): New reduction loop.
-
-2009-11-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc ( rc_acos, rc_acos, rc_acosh, rc_acosh, rc_asin,
-	rc_asin, rc_atanh, rc_atanh, rc_log, rc_log, rc_xlog2, rc_log2,
-	rc_log10, rc_log10, rc_sqrt, rc_sqrt): New mappers.
-	* lo-mappers.h: Declare them.
-
-	* lo-specfun.cc (rc_lgamma, rc_lgamma, rc_log1p, rc_log1p): New
-	mappers.
-	* lo-specfun.h: Declare them.
-	* Array.h (Array<T>::map): Unroll loop to reduce OCTAVE_QUIT checking.
-	Provide function-reference overloads.
-
-	* MArray.h (MArray<T>::map): Provide function-reference overloads.
-	* Array2.h (Array2<T>::map): Ditto.
-	* MArray2.h (MArray2<T>::map): Ditto.
-
-	* Sparse.h (Sparse<T>::map): Ditto.
-	* MSparse.h (MSparse<T>::map): Ditto.
-
-	* dNDArray.h (NDArray::map): Remove.
-	* dNDArray.cc (NDArray::map): Remove.
-	* fNDArray.h (FloatNDArray::map): Remove.
-	* fNDArray.cc (FloatNDArray::map): Remove.
-	* CNDArray.h (ComplexNDArray::map): Remove.
-	* CNDArray.cc (ComplexNDArray::map): Remove.
-	* fCNDArray.h (FloatComplexNDArray::map): Remove.
-	* fCNDArray.cc (FloatComplexNDArray::map): Remove.
-
-	* dMatrix.h (Matrix::map): Remove.
-	* dMatrix.cc (Matrix::map): Remove.
-	* fMatrix.h (FloatMatrix::map): Remove.
-	* fMatrix.cc (FloatMatrix::map): Remove.
-	* CMatrix.h (ComplexMatrix::map): Remove.
-	* CMatrix.cc (ComplexMatrix::map): Remove.
-	* fCMatrix.h (FloatComplexMatrix::map): Remove.
-	* fCMatrix.cc (FloatComplexMatrix::map): Remove.
-
-	* dRowVector.h (RowVector::map): Remove.
-	* dRowVector.cc (RowVector::map): Remove.
-	* fRowVector.h (FloatRowVector::map): Remove.
-	* fRowVector.cc (FloatRowVector::map): Remove.
-	* CRowVector.h (ComplexRowVector::map): Remove.
-	* CRowVector.cc (ComplexRowVector::map): Remove.
-	* fCRowVector.h (FloatComplexRowVector::map): Remove.
-	* fCRowVector.cc (FloatComplexRowVector::map): Remove.
-
-	* dColVector.h (ColumnVector::map): Remove.
-	* dColVector.cc (ColumnVector::map): Remove.
-	* fColVector.h (FloatColumnVector::map): Remove.
-	* fColVector.cc (FloatColumnVector::map): Remove.
-	* CColVector.h (ComplexColumnVector::map): Remove.
-	* CColVector.cc (ComplexColumnVector::map): Remove.
-	* fCColVector.h (FloatComplexColumnVector::map): Remove.
-	* fCColVector.cc (FloatComplexColumnVector::map): Remove.
-
-	* dSparse.h (SparseMatrix::map): Remove.
-	* dSparse.cc (SparseMatrix::map): Remove.
-	* CSparse.h (SparseComplexMatrix::map): Remove.
-	* CSparse.cc (SparseComplexMatrix::map): Remove.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* lo-ieee.cc (octave_ieee_init): Improve comment about systems
-	without IEEE floating point format.
-
-2009-11-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_map): New template loop.
-	(DEFMXMAPPER): New macro.
-	(DEFMXMAPPER2): Rename from DEFMXMAPPER.
-	(do_mx_unary_map): New applier.
-	(mx_inline_real, mx_inline_complex): New loops.
-	* dNDArray.cc (NDArray::abs, NDArray::isnan, NDArray::isinf,
-	NDArray::isfinite, real, imag): Use new constructs.
-	* fNDArray.cc (FloatNDArray::abs, FloatNDArray::isnan,
-	FloatNDArray::isinf, FloatNDArray::isfinite, real, imag): Ditto.
-	* CNDArray.cc (ComplexNDArray::abs, ComplexNDArray::isnan,
-	ComplexNDArray::isinf, ComplexNDArray::isfinite, conj): Use new
-	constructs.
-	* fCNDArray.cc (FloatComplexNDArray::abs, FloatComplexNDArray::isnan,
-	FloatComplexNDArray::isinf, FloatComplexNDArray::isfinite, conj): Use
-	new constructs.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* mx-ops, sparse-mx-ops, vx-ops, vx-ops:
-	Add comment about updating.
-	* Makefile.am, config-ops.sh: New files.
-	* Makefile.in: Delete.
-
-2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dSparse.h (Sparse::max): Use Array<octave_idx_type>.
-	* dSparse.cc: Update.
-	* CSparse.h (Sparse::max): Use Array<octave_idx_type>.
-	* CSparse.cc: Update.
-	* dNDArray.h (NDArray::max, NDArray::min, NDArray::cummax,
-	NDArray::cummin, NDArray::diff): Use dim = -1 as default.
-	* fNDArray.h (FloatNDArray::max, FloatNDArray::min, FloatNDArray::cummax,
-	FloatNDArray::cummin, FloatNDArray::diff): Use dim = -1 as default.
-	* CNDArray.h (ComplexNDArray::max, ComplexNDArray::min,
-	ComplexNDArray::cummax, ComplexNDArray::cummin, ComplexNDArray::diff):
-	Use dim = -1 as default.
-	* fCNDArray.h (FloatComplexNDArray::max, FloatComplexNDArray::min,
-	FloatComplexNDArray::cummax, FloatComplexNDArray::cummin,
-	FloatComplexNDArray::diff): Use dim = -1 as default.
-	* intNDArray.h (intNDArray::max, intNDArray::min, intNDArray::cummax,
-	intNDArray::cummin, intNDArray::diff): Use dim = -1 as default.
-
-2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-mem.h: Rename octave_ucopy -> copy_or_memcpy,
-	octave_fill -> fill_or_memset, octave_new -> no_ctor_new,
-	octave_delete -> no_ctor_delete.
-	* Array.h: Update.
-	* Array.cc: Update.
-	* idx-vector.h: Update.
-	* idx-vector.cc: Update.
-
-2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-mem.h: New source.
-	* Makefile.in: Include it.
-	* Array.h (Array<T>::ArrayRep::ArrayRep (...)): Use octave_new,
-	octave_ucopy and octave_fill.
-	(Array<T>::ArrayRep::~ArrayRep): Use octave_delete.
-	(Array<T>::coerce): Use octave_new.
-	* Array.cc (Array<T>::fill, rec_resize_helper::do_resize_fill,
-	Array<T>::resize_fill, rec_permute_helper::do_permute,
-	Array<T>::delete_elements): Use octave_ucopy and octave_fill.
-	* idx-vector.h (index_vector::index, index_vector::assign): Use
-	octave_ucopy.
-	* idx-vector.cc (index_vector::copy_data): Ditto.
-
-2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::maybe_reduce): Implement (i:k:end, :)
-	and (i:k:end, p:q) reductions.
-
-2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (twosum_accum): Remove FLOAT_TRUNCATE.
-
-2009-10-28  John W. Eaton  <jwe@octave.org>
-
-	* PermMatrix.cc: Don't include error.h.
-
-2009-10-27  David Bateman  <dbateman@free.fr>
-
-	* SparsedbleLU.cc (SparseLU::SparseLU (const SparseMatrix&,
-	const Matrix&, bool), SparseLU::SparseLU (const SparseMatrix&,
-	const ColumnVector&, const Matrix&, boo, bool, double, bool,
-	bool)): Fix test for valid pivot tolerance.
-	* SparseCmplxLU.cc (SparseComplexLU::SparseComplexLU
-	(const SparseComplexMatrix&, const Matrix&, bool),
-	SparseComplexLU::SparseComplexLU (const SparseComplexMatrix&,
-	const ColumnVector&, const Matrix&, boo, bool, double, bool,
-	bool)): Ditto.
-
-2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_range_rep::idx_range_rep
-	(octave_idx_type, octave_idx_type, octave_idx_type)):
-	Improve checking.
-
-2009-10-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.h 	(octave_time::octave_time (time_t t, int us)):
-	New constructor.
-	(operator + (const octave_time&, const octave_time&)): New function.
-
-	* file-stat.h (base_file_stat::time_resolution): New function.
-
-2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* bsxfun-decl.h, bsxfun-defs.cc: New sources.
-	* Makefile.in: Add them.
-	* dim-vector.h (dim_vector::compute_index,
-	dim_vector::increment_index): Fix.
-	* mx-inlines.cc (DEFMXMAPPER, DEFMXLOCALMAPPER): New macros.
-	(mx_inline_xmin, mx_inline_xmax): New loops.
-	(mx_inline_fun): Remove.
-	* oct-inttypes.h (xmin (const octave_int<T>&, const octave_int<T>&),
-	xmax (const octave_int<T>&, const octave_int<T>&)):
-	New inline functions.
-
-	* CNDArray.cc: Define bsxfun operations.
-	* boolNDArray.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fNDArray.cc: Ditto.
-	* int16NDArray.cc: Ditto.
-	* int32NDArray.cc: Ditto.
-	* int64NDArray.cc: Ditto.
-	* int8NDArray.cc: Ditto.
-	* uint16NDArray.cc: Ditto.
-	* uint32NDArray.cc: Ditto.
-	* uint64NDArray.cc: Ditto.
-	* uint8NDArray.cc: Ditto.
-
-	* CNDArray.h: Declare bsxfun operations.
-	* boolNDArray.h: Ditto.
-	* dNDArray.h: Ditto.
-	* fCNDArray.h: Ditto.
-	* fNDArray.h: Ditto.
-	* int16NDArray.h: Ditto.
-	* int32NDArray.h: Ditto.
-	* int64NDArray.h: Ditto.
-	* int8NDArray.h: Ditto.
-	* uint16NDArray.h: Ditto.
-	* uint32NDArray.h: Ditto.
-	* uint64NDArray.h: Ditto.
-	* uint8NDArray.h: Ditto.
-
-2009-10-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::compute_index,
-	dim_vector::increment_index, dim_vector::cumulative,
-	dim_vector::cum_compute_index): New methods.
-
-2009-10-18  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
-
-	* Makefile.in: Remove ArrayN.cc.
-
-2009-10-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Include base-qr.h and base-qr.cc.
-
-2009-10-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQR.cc: Initialize QR::raw, QR::economy and QR::std.
-
-2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ArrayN.h: Remove everything, just #define ArrayN Array.
-	Warn if under gcc.
-	* ArrayN.cc: Remove.
-	* Array.cc (operator >>): New operator.
-	* Array.h: Declare it.
-
-	* Array-C.cc: Remove traces of ArrayN.
-	* Array-b.cc: Ditto.
-	* Array-ch.cc: Ditto.
-	* Array-d.cc: Ditto.
-	* Array-f.cc: Ditto.
-	* Array-fC.cc: Ditto.
-	* CNDArray.cc: Ditto.
-	* CNDArray.h: Ditto.
-	* MArrayN.h: Ditto.
-	* boolNDArray.cc: Ditto.
-	* boolNDArray.h: Ditto.
-	* chNDArray.h: Ditto.
-	* dNDArray.cc: Ditto.
-	* dNDArray.h: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fCNDArray.h: Ditto.
-	* fNDArray.cc: Ditto.
-	* fNDArray.h: Ditto.
-	* intNDArray.cc: Ditto.
-	* intNDArray.h: Ditto.
-	* lo-specfun.cc: Ditto.
-	* lo-specfun.h: Ditto.
-
-	* mx-op-defs.h (DMS_BIN_OP, SDM_BIN_OP): Rewrite.
-	(DMS_BIN_OPS, SDM_BIN_OPS): Define dm*s and dm/s rather than dm+s and
-	dm-s which are rather useless.
-	* mx-ops: Update.
-
-2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::column, Array<T>::page, Array<T>::linearize,
-	Array<T>::linear_slice): New methods.
-	* Array.h: Declare them
-	* ArrayN.h: Forward them.
-
-2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::nth_element): New overloaded method.
-	* oct-sort.h: Declare it.
-	* Array.cc (Array<T>::nth_element): New method.
-	* Array.h: Declare it.
-	(Array<T>::sort): Use int for dim argument.
-	* ArrayN.h (ArrayN<T>::nth_element): Wrap.
-	(ArrayN<T>::sort): Use int for dim argument.
-
-2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-traits.h (equal_types, is_instance, subst_template_param): New
-	traits classes.
-	* mx-inlines.cc (op_dble_sum, twosum_accum): New helper funcs.
-	(mx_inline_dsum, mx_inline_xsum): New reduction loops.
-	* fNDArray.cc (FloatNDArray::dsum): New method.
-	* fNDArray.h: Declare it.
-	* fCNDArray.cc (FloatComplexNDArray::dsum): New method.
-	* fCNDArray.h: Declare it.
-	* dNDArray.cc (NDArray::xsum): New method.
-	* dNDArray.h: Declare it.
-	* CNDArray.cc (ComplexNDArray::xsum): New method.
-	* CNDArray.h: Declare it.
-	* intNDArray.cc (intNDArray::dsum): New method.
-	* intNDArray.h: Declare it.
-
-2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* base-qr.cc (base_qr::regular): New method.
-	* base-qr.h: Declare it.
-	* base-lu.cc (base_lu::regular): New method.
-	* base-lu.h: Declare it.
-
-2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* base-qr.h: New source.
-	* base-qr.cc: New source.
-	* dbleQR.h (QR): Rebase on base_qr<Matrix>.
-	* dbleQR.cc: Ditto.
-	* floatQR.h (QR): Rebase on base_qr<FloatMatrix>.
-	* floatQR.cc: Ditto.
-	* CmplxQR.h (QR): Rebase on base_qr<ComplexMatrix>.
-	* CmplxQR.cc: Ditto.
-	* fCmplxQR.h (QR): Rebase on base_qr<FloatComplexMatrix>.
-	* fCmplxQR.cc: Ditto.
-	* dbleQRP.h (QR): Update.
-	* dbleQRP.cc: Ditto.
-	* floatQRP.h (QR): Update.
-	* floatQRP.cc: Ditto.
-	* CmplxQRP.h (QR): Update.
-	* CmplxQRP.cc: Ditto.
-	* fCmplxQRP.h (QR): Update.
-	* fCmplxQRP.cc: Ditto.
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* PermMatrix.cc (PermMatrix::eye): New method.
-	* PermMatrix.h: Declare it.
-	* dbleLU.cc (LU::update, LU::update_piv): New overloaded methods.
-	* dbleLU.h: Declare them.
-	* floatLU.cc (FloatLU::update, FloatLU::update_piv): New overloaded
-	methods.
-	* floatLU.h: Declare them.
-	* CmplxLU.cc (ComplexLU::update, ComplexLU::update_piv): New
-	overloaded methods.
-	* CmplxLU.h: Declare them.
-	* fCmplxLU.cc (FloatComplexLU::update, FloatComplexLU::update_piv):
-	New overloaded methods.
-	* fCmplxLU.h: Declare them.
-
-2009-10-07  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (mx_inline_diff): Avoid uninitialized variable warning.
-
-2009-10-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dDiagMatrix.cc (operator *(const DiagMatrix&, const DiagMatrix&)):
-	Rewrite.
-	* fDiagMatrix.cc (operator *(const FloatDiagMatrix&, const FloatDiagMatrix&)):
-	Rewrite.
-	* CDiagMatrix.cc (operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)):
-	Rewrite.
-	* fCDiagMatrix.cc (operator *(const FloatComplexDiagMatrix&, const
-	FloatComplexDiagMatrix&)):
-	Rewrite.
-	* DiagArray2.h (DiagArray2::diag_length): New method.
-	* PermMatrix.h (PermMatrix::length): Make consistent with
-	DiagArray2::length.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* base-lu.cc (base_lu::unpack): Unpack getp as well.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* PermMatrix.cc (PermMatrix::determinant): Implement a (hopefully)
-	working algorithm.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (operator ==): Include fast case.
-	* base-lu.cc (base_lu::packed, base_lu::unpack): New methods.
-	(base_lu::L, base_lu::U, base_lu::Y, base_lu::getp): Distinguish
-	packed vs. unpacked case.
-	* base-lu.h: Update decls.
-	(base_lu::l_fact): New member field.
-
-2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-traits.h (strip_template_param): New trait class.
-
-2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::permute): Fast case identity permutation.
-
-2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-cmplx.h: Fix complex-real orderings.
-
-2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::redim): Rewrite.
-	* Array-util.cc (sub2ind): Allow single index case.
-
-2009-09-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
-	(operator *(const Matrix&, const Matrix&)): Update.
-	* fMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
-	(operator *(const FloatMatrix&, const FloatMatrix&)): Update.
-	* CMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
-	(operator *(const ComplexMatrix&, const ComplexMatrix&)): Update.
-	* fCMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
-	(operator *(const FloatComplexMatrix&, const FloatComplexMatrix&)): Update.
-	* dMatrix.h: Update decl.
-	* fMatrix.h: Update decl.
-	* CMatrix.h: Update decl.
-	* fCMatrix.h: Update decl.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const Matrix&, const
-	Matrix&)): New constructor.
-	(operator * (Matrix, ComplexMatrix), operator * (ComplexMatrix,
-	Matrix)): Optimize.
-	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix (const FloatMatrix&, const
-	FloatMatrix&)): New constructor.
-	(operator * (FloatMatrix, FloatComplexMatrix), operator * (FloatComplexMatrix,
-	FloatMatrix)): Optimize.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (stack_complex_matrix, unstack_complex_matrix): New
-	static funcs.
-	(Matrix::solve (..., const ComplexMatrix&, ...)): Use the above funcs.
-	Improve forwarding.
-	* fMatrix.cc (stack_complex_matrix, unstack_complex_matrix): New
-	static funcs.
-	(FloatMatrix::solve (..., const FloatComplexMatrix&, ...)): Use the
-	above funcs.  Improve forwarding.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-defs.h (blas_trans_type): New enum.
-	(get_blas_char): New inline func.
-	* dMatrix.cc (Matrix::utsolve, Matrix::ltsolve, Matrix::solve):
-	Support transt parameter.
-	* fMatrix.cc (FloatMatrix::utsolve, FloatMatrix::ltsolve,
-	FloatMatrix::solve): Ditto.
-	* CMatrix.cc (ComplexMatrix::utsolve, ComplexMatrix::ltsolve,
-	ComplexMatrix::solve): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::utsolve,
-	FloatComplexMatrix::ltsolve, FloatComplexMatrix::solve): Ditto.
-	* dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h: Update.
-
-2009-09-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-op-defs.h (VS_BIN_OP, SV_BIN_OP, VV_BIN_OP): Simplify.
-
-2009-09-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dNDArray.h (NDArray::matrix_type): New typedef.
-	* fNDArray.h (FloatNDArray::matrix_type): New typedef.
-	* CNDArray.h (ComplexNDArray::matrix_type): New typedef.
-	* fCNDArray.h (FloatComplexNDArray::matrix_type): New typedef.
-	* boolNDArray.h (boolNDArray::matrix_type): New typedef.
-	* charNDArray.h (charNDArray::matrix_type): New typedef.
-
-	* dMatrix.h (Matrix::column_vector_type,
-	Matrix::row_vector_type): New typedefs.
-	* fMatrix.h (FloatMatrix::column_vector_type,
-	FloatMatrix::row_vector_type): New typedefs.
-	* CMatrix.h (ComplexMatrix::column_vector_type,
-	ComplexMatrix::row_vector_type): New typedefs.
-	* fCMatrix.h (FloatComplexMatrix::column_vector_type,
-	FloatComplexMatrix::row_vector_type): New typedefs.
-
-2009-09-18  John W. Eaton  <jwe@octave.org>
-
-	* mach-info.cc: Don't include oct-types.h.
-
-2009-09-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (NoAlias): New template class.
-	* dRowVector.cc (linspace): Rewrite.
-	* fRowVector.cc (linspace): Rewrite.
-	* CRowVector.cc (linspace): Rewrite.
-	* fCRowVector.cc (linspace): Rewrite.
-	* dMatrix.cc (linspace): New method.
-	* dMatrix.h (linspace): Declare it.
-	* fMatrix.cc (linspace): New method.
-	* fMatrix.h (linspace): Declare it.
-	* CMatrix.cc (linspace): New method.
-	* CMatrix.h (linspace): Declare it.
-	* fCMatrix.cc (linspace): New method.
-	* fCMatrix.h (linspace): Declare it.
-
-2009-09-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-types.h.in: Delete.
-	* Makefile.in (BUILT_INCLUDES, DISTFILES): Remove oct-types.h.in
-	from the list.
-	(distclean, maintainer-clean): Don't remove oct-types.h
-	* DAEFunc.h, MatrixType.h, base-aepbal.h, dim-vector.h,
-	lo-specfun.h, lo-utils.h, mx-op-decl.h, oct-inttypes.h,
-	randgamma.h, randmtzig.h, randpoisson.h:
-	Don't include oct-types.h.
-
-2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-rand.cc (octave_rand::do_matrix, do_nd_array, do_vector):
-	Use Array::clear rather than Array::resize.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dColVector.h (operator *(const Matrix&, const ColumnVector)):
-	Optimize.
-	* fColVector.h (operator *(const FloatMatrix&, const
-	FloatColumnVector)): Optimize.
-	* CColVector.h (operator *(const ComplexMatrix&, const
-	ComplexColumnVector)): Optimize.
-	* fCColVector.h (operator *(const FloatComplexMatrix&, const
-	FloatComplexColumnVector)): Optimize.
-
-2009-09-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::clear (const dim_vector&)): new method.
-	* Array.h: Declare it.
-	(Array<T>::clear (octave_idx_type)): New method.
-	(Array<T>::clear (octave_idx_type, octave_idx_type)): New method.
-
-2009-09-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (DEFMXBOOLOPEQ): New macro.
-	(mx_inline_and2, mx_inline_or2): New loops.
-
-	* MArray.h (MArray<T>::MArray (const dim_vector&)): New constructor.
-	(MArray<T>::MArray (const Array<T>&)): Ensure column vector.
-	(MArray<T>::resize): New method.
-	* DiagArray2.h (DiagArray2<T>::DiagArray2 (const dim_vector&)): New
-	constructor.
-	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2 (const dim_vector&)): New
-	constructor.
-	* dColVector.h (ColumnVector::ColumnVector (const dim_vector&)): New
-	constructor.
-	* fColVector.h (FloatColumnVector::FloatColumnVector (const
-	dim_vector&)): New constructor.
-	* CColVector.h (ComplexColumnVector::ComplexColumnVector (const
-	dim_vector&)): New constructor.
-	* fCColVector.h (FloatComplexColumnVector::FloatComplexColumnVector
-	(const dim_vector&)): New constructor.
-	* dRowVector.h (RowVector::RowVector (const dim_vector&)): New
-	constructor.
-	* fRowVector.h (FloatRowVector::FloatRowVector (const dim_vector&)):
-	New constructor.
-	* CRowVector.h (ComplexRowVector::ComplexRowVector (const
-	dim_vector&)): New constructor.
-	* fCRowVector.h (FloatComplexRowVector::FloatComplexRowVector (const
-	dim_vector&)): New constructor.
-
-	* CNDArray.cc (operator *= (const ComplexNDArray, double)): Simplify.
-	* fCNDArray.cc (operator *= (const FloatComplexNDArray, float)): Simplify.
-
-	* MArray.cc
-	(operator += (MArray<T>&, const T&)): Simplify.
-	(operator -= (MArray<T>&, const T&)): Simplify.
-	(operator *= (MArray<T>&, const T&)): Simplify.
-	(operator /= (MArray<T>&, const T&)): Simplify.
-	(operator += (MArray<T>&, const MArray<T>&)): Simplify.
-	(operator -= (MArray<T>&, const MArray<T>&)): Simplify.
-	(product (MArray<T>&, const MArray<T>&)): Simplify.
-	(quotient (MArray<T>&, const MArray<T>&)): Simplify.
-	(MARRAY_AS_OP): Simplify.
-	(MARRAY_SA_OP): Simplify.
-	(MARRAY_AA_OP): Simplify.
-	(operator - (const MArray<T>&)): Simplify.
-
-	* MArray2.cc
-	(operator += (MArray2<T>&, const T&)): Simplify.
-	(operator -= (MArray2<T>&, const T&)): Simplify.
-	(operator *= (MArray2<T>&, const T&)): Simplify.
-	(operator /= (MArray2<T>&, const T&)): Simplify.
-	(operator += (MArray2<T>&, const MArray<T>&)): Simplify.
-	(operator -= (MArray2<T>&, const MArray<T>&)): Simplify.
-	(product (MArray2<T>&, const MArray<T>&)): Simplify.
-	(quotient (MArray2<T>&, const MArray<T>&)): Simplify.
-	(MARRAY_A2S_OP): Simplify.
-	(MARRAY_SA2_OP): Simplify.
-	(MARRAY_A2A2_OP): Simplify.
-	(operator - (const MArray2<T>&)): Simplify.
-
-	* MArrayN.cc
-	(operator += (MArrayN<T>&, const T&)): Simplify.
-	(operator -= (MArrayN<T>&, const T&)): Simplify.
-	(operator *= (MArrayN<T>&, const T&)): Simplify.
-	(operator /= (MArrayN<T>&, const T&)): Simplify.
-	(operator += (MArrayN<T>&, const MArray<T>&)): Simplify.
-	(operator -= (MArrayN<T>&, const MArray<T>&)): Simplify.
-	(product (MArrayN<T>&, const MArray<T>&)): Simplify.
-	(quotient (MArrayN<T>&, const MArray<T>&)): Simplify.
-	(MARRAY_NDS_OP): Simplify.
-	(MARRAY_SND_OP): Simplify.
-	(MARRAY_NDND_OP): Simplify.
-	(operator - (const MArrayN<T>&)): Simplify.
-
-	* MDiagArray2.cc
-	(operator += (MDiagArray2<T>&, const MDiagArray2<T>&)): Simplify.
-	(operator -= (MDiagArray2<T>&, const MDiagArray2<T>&)): Simplify.
-	(operator *= (MDiagArray2<T>&, T)): Simplify.
-	(operator /= (MDiagArray2<T>&, T)): Simplify.
-	(MARRAY_DAS_OP, MARRAY_SDA_OP, MARRAY_DADA_OP): Simplify.
-	* boolNDArray.cc (mx_el_and_assign, mx_el_or_assign): Simplify.
-
-	* MArray-defs.h (DO_VS_OP, DO_SV_OP, DO_VV_OP,
-	DO_VS_OP2, DO_VV_OP2, NEGV): Remove.
-
-2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (DEFMXUNOPEQ): New macro.
-	(mx_inline_not2, mx_inline_uminus2): New loops.
-	* boolNDArray.cc (boolNDArray::invert): New method.
-	* boolNDArray.h: Declare it.
-	* MArrayN.cc (MArrayN<T>::changesign): New method.
-	* MArrayN.h: Declare it.
-	* dNDArray.cc (NDArray::changesign): New method.
-	* dNDArray.h: Declare it.
-	* fNDArray.cc (FloatNDArray::changesign): New method.
-	* fNDArray.h: Declare it.
-	* CNDArray.cc (ComplexNDArray::changesign): New method.
-	* CNDArray.h: Declare it.
-	* fCNDArray.cc (FloatComplexNDArray::changesign): New method.
-	* fCNDArray.h: Declare it.
-	* intNDArray.cc (intNDArray::changesign): New method.
-	* intNDArray.h: Declare it.
-
-2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-cmplx.h: Rewrite the comaprison ops. Use FLOAT_TRUNCATE.
-
-2009-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-cmplx.h: Correct strict operators in macros.
-
-2009-08-31  John W. Eaton  <jwe@octave.org>
-
-	* lo-ieee.cc (octave_ieee_init): Abort if floating point format
-	is not recognized as IEEE.
-
-2009-08-27  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.cc, str-vec.h (string_vector::string_vector (const
-	std::set<std::string>&)): New constructor.
-
-2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (DEFCMPLXCMOP): Remove.
-	* oct-cmplx.h (operator <, operator >): Remove definitions.
-	(DEF_COMPLEXR_COMP): New macro. Instantiate for <, >, <=, >=.
-	* mx-op-defs.h (MM_CMP_OP, MS_CMP_OP, SM_CMP_OP,
-	NDND_CMP_OP, NDS_CMP_OP, SND_CMP_OP): Replace by one-liners. Remove
-	unused parameters.
-	(MM_CMP_OPS, MS_CMP_OPS, SM_CMP_OPS, NDND_CMP_OPS, NDS_CMP_OPS,
-	SND_CMP_OPS): Update.
-	(NDS_CMP_OP1, NDS_CMP_OPS1, NDS_CMP_OP2, NDS_CMP_OPS2,
-	SND_CMP_OP1, SND_CMP_OPS1, SND_CMP_OP2, SND_CMP_OPS2): Remove.
-	* mk-ops.awk: Simplify CMP_OPS branch.
-	* Sparse-op-defs.h (SPARSE_SMSM_CMP_OPS, SPARSE_SMS_CMP_OPS,
-	SPARSE_SSM_CMP_OPS, SPARSE_MSM_CMP_OPS, SPARSE_SMM_CMP_OPS):
-	Update.
-
-	* CNDArray.cc: Update syntax.
-	* boolNDArray.cc: Ditto.
-	* chNDArray.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fNDArray.cc: Ditto.
-
-	* int16NDArray.cc: Ditto.
-	* int32NDArray.cc: Ditto.
-	* int64NDArray.cc: Ditto.
-	* int8NDArray.cc: Ditto.
-	* uint16NDArray.cc: Ditto.
-	* uint32NDArray.cc: Ditto.
-	* uint64NDArray.cc: Ditto.
-	* uint8NDArray.cc: Ditto.
-
-	* CMatrix.cc: Ditto.
-	* boolMatrix.cc: Ditto.
-	* chMatrix.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fMatrix.cc: Ditto.
-
-2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArray.cc (MArray<T>::product_eq, MArray<T>::quotient_eq): New
-	methods.
-	* MArray2.cc (MArray2<T>::product_eq, MArray2<T>::quotient_eq): Ditto.
-	* MArrayN.cc (MArrayN<T>::product_eq, MArrayN<T>::quotient_eq): Ditto.
-	* MArray-decl.h (MARRAY_OP_ASSIGN_DECLX): New macro.
-	(MARRAY_OP_ASSIGN_DECLS, MARRAY_OP_ASSIGN_FWD_DEFS): Include
-	product_eq and quotient_eq.
-	(MARRAY_FORWARD_DEFS): Use MARRAY_OP_ASSIGN_FWD_DEFS1.
-	(MDIAGARRAY2_OPS_FORWARD_DECLS): Don't instantiate
-	OP= operators for diag matrices.
-	(MDIAGARRAY2_FORWARD_DEFS): Ditto.
-	* MArray-defs.h (INSTANTIATE_MDIAGARRAY2_FRIENDS): Ditto.
-
-2009-08-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array::make_unique, Array::~Array, Array::operator =):
-	Move here to allow inlining.
-	* Array.cc: Remove from here.
-
-2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (logical_value): New overloaded template.
-	(DEFMXBOOL_OP): Use it in definitions.
-	(mx_inline_not): Also use logical_value.
-	* mx-op-defs.h (ND_LOGICAL_NAN_CHECK, SC_LOGICAL_NAN_CHECK): Remove
-	(also from all macros).
-
-	* CMatrix.cc (operator !): Simply call mx_inline_not.
-	* CNDArray.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fNDArray.cc: Ditto.
-
-2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::operator!): Simplify & check for NaNs.
-	* fMatrix.cc (FloatMatrix::operator!): Ditto.
-	* CMatrix.cc (ComplexMatrix::operator!): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::operator!): Ditto.
-	* dNDArray.cc (NDArray::operator!): Ditto.
-	* fNDArray.cc (FloatNDArray::operator!): Ditto.
-	* CNDArray.cc (ComplexNDArray::operator!): Ditto.
-	* fCNDArray.cc (FloatComplexNDArray::operator!): Ditto.
-
-2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_add, mx_inline_sub, mx_inline_mul,
-	mx_inline_div, mx_inline_uminus, mx_inline_not, mx_inline_add2,
-	mx_inline_sub2, mx_inline_mul2, mx_inline_div2, mx_inline_iszero,
-	mx_inline_notzero, mx_inline_and, mx_inline_or, mx_inline_not_and,
-	mx_inline_not_or, mx_inline_and_not, mx_inline_or_not,
-	mx_inline_lt, mx_inline_le, mx_inline_gt, mx_inline_ge,
-	mx_inline_eq, mx_inline_ne): New templates.
-	(do_mx_unary_op, do_mm_binary_op, do_sm_binary_op,
-	do_ms_binary_op, do_mm_inplace_op,do_ms_inplace_op):
-	New templates.
-
-	* mx-op-defs.h (ND_LOGICAL_NAN_CHECK, SC_LOGICAL_NAN_CHECK):
-	New macros.
-	(NDND_BIN_OP, NDS_BIN_OP, SND_BIN_OP): Simplify.
-	(MM_BIN_OP, MS_BIN_OP, MM_BIN_OP): Simplify.
-	(NDND_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP): Simplify.
-	(MM_BOOL_OP, MS_BOOL_OP, MM_BOOL_OP): Simplify.
-	(NDND_BOOL_OPS2, NDS_BOOL_OPS2, SND_BOOL_OPS2,
-	MM_BOOL_OPS2, MS_BOOL_OPS2, SM_BOOL_OPS2): Remove.
-	* mx-op-decl.h (NDND_BOOL_OPX_DECLS, NDS_BOOL_OPX_DECLS,
-	SND_BOOL_OPX_DECLS): New macros.
-	* mk-ops.awk: use _BOOL_OPS rather than _BOOL_OPS2.
-
-	* boolMatrix.cc: Add missing bool op defs.
-	* boolMatrix.h: Add missing bool op decls.
-
-
-	* boolNDArray.cc: Remove unused arg to BOOL_OPS.
-	* CMatrix.cc: Ditto.
-	* CNDArray.cc: Ditto.
-	* ChangeLog: Ditto.
-	* chMatrix.cc: Ditto.
-	* chNDArray.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dNDArray.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCNDArray.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fNDArray.cc: Ditto.
-	* int16NDArray.cc: Ditto.
-	* int32NDArray.cc: Ditto.
-	* int64NDArray.cc: Ditto.
-	* int8NDArray.cc: Ditto.
-	* uint16NDArray.cc: Ditto.
-	* uint32NDArray.cc: Ditto.
-	* uint64NDArray.cc: Ditto.
-	* uint8NDArray.cc: Ditto.
-
-	* CColVector.cc: Update syntax where needed.
-	* CDiagMatrix.cc: Ditto.
-	* CMatrix.cc: Ditto.
-	* CRowVector.cc: Ditto.
-	* chMatrix.cc: Ditto.
-	* dColVector.cc: Ditto.
-	* dDiagMatrix.cc: Ditto.
-	* dMatrix.cc: Ditto.
-	* dRowVector.cc: Ditto.
-	* fCColVector.cc: Ditto.
-	* fCDiagMatrix.cc: Ditto.
-	* fCMatrix.cc: Ditto.
-	* fCRowVector.cc: Ditto.
-	* fColVector.cc: Ditto.
-	* fDiagMatrix.cc: Ditto.
-	* fMatrix.cc: Ditto.
-	* fRowVector.cc: Ditto.
-
-2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (zero_dims_inquire): Add matching ndims case.
-
-2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArrayN.cc (operator+=, operator-=): Test matching dimensions first.
-	* boolNDArray.cc (mx_el_and_assign, mx_el_or_assign): New functions.
-	* boolNDArray.h: Declare them.
-
-2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::clear): New method.
-	* Array.h: Declare it.
-	* MArray-decl.h (MARRAY_OP_ASSIGN_DECLS1, MARRAY_OP_ASSIGN_FWD_DECLS1,
-	MARRAY_OP_ASSIGN_FRIENDS1, MARRAY_OP_ASSIGN_FWD_DEFS1): New macros.
-	(MARRAY_OPS_FORWARD_DECLS, MARRAY_OPS_FRIEND_DECLS): Use them.
-	* MArray-defs.h (MARRAY_OP_ASSIGN_DEFS1): New macro.
-	(INSTANTIATE_MARRAY_FRIENDS): Use it.
-	(INSTANTIATE_MARRAY2_FRIENDS): Use it.
-	(INSTANTIATE_MARRAYN_FRIENDS): Use it.
-	* MArray.cc (operator+=, operator-=):
-	Operate out-of-place when this is shared copy.
-	(operator*=, operator/=): New operator overloads.
-	* MArray2.cc: Ditto.
-	* MArrayN.cc: Ditto.
-	* CNDArray.cc (operator *= (ComplexNDArray&, double),
-	operator /= (ComplexNDArray&, double)): New operators.
-	* CNDArray.h: Declare them.
-	* fCNDArray.cc (operator *= (FloatComplexNDArray&, double),
-	operator /= (FloatComplexNDArray&, double)): New operators.
-	* fCNDArray.h: Declare them.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): List LIBS last.
-
-2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc, fMatrix.cc, CMatrix.cc, fCMatrix.cc: Add more tests.
-	* CMatrix.cc (xgemm): Fix vector * matrix case.
-	* fCMatrix.cc (xgemm): Ditto.
-
-2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* fMatrix.cc, fCMatrix.cc: Make tests use single precision.
-
-2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc (xgemm): Fix typo. Add test.
-	* fCMatrix.cc (xgemm): Ditto.
-
-2009-08-14  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Include BLAS_LIBS in the list.
-
-2009-08-13  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc, CNDArray.cc, dMatrix.cc, dNDArray.cc, fCMatrix.cc,
-	fCNDArray.cc, fMatrix.cc, fNDARray.cc, oct-fftw.cc, oct-fftw.h:
-	Update for new FFTW defines.
-
-	* Makefile.in: Add library-specific CPPFLAGS and LDFLAGS variables
-	to CPPFLAGS and LDFLAGS for files that use sparse matrices or fftw.
-
-2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Include LDFLAGS when linking shared executable.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* oct-fftw.h, oct-fftw.cc (octave_fftw_planner): Convert to singleton.
-	(octave_float_fft_planner): Likewise.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Use READLINE_LIBS instead of
-	LIBREADLINE.  Also link with TERM_LIBS and DL_LIBS.
-
-2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_diff<T>): New overloaded template
-	function.
-	(get_extent_triplet): Use dim_vector::first_non_singleton.
-	(do_mx_diff_op): New template function.
-	* dNDArray.cc (NDArray::diff): New method.
-	* dNDArray.h: Declare it.
-	* fNDArray.cc (FloatNDArray::diff): New method.
-	* fNDArray.h: Declare it.
-	* CNDArray.cc (ComplexNDArray::diff): New method.
-	* CNDArray.h: Declare it.
-	* fCNDArray.cc (FloatComplexNDArray::diff): New method.
-	* fCNDArray.h: Declare it.
-	* intNDArray.cc (intNDArray<T>::diff): New method.
-	* intNDArray.h: Declare it.
-
-2009-08-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::first_non_singleton): New method.
-
-2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector): Rewrite. Use single-alloc implementation
-	aka GCC's basic_string class.
-	* Array.cc: Use dim_vector::alloc where fitting.
-	* Array-util.cc: Ditto.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.cc (octave_shl_load_shlib::open): Pass BIND_IMMEDIATE,
-	not BIND_DEFERRED to shl_load.
-	(octave_dlopen_shlib::open): Don't pass RTLD_GLOBAL to dlopen.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Omit $(BLAS_LIBS) from the list.
-	Include $(RLD_FLAG) in the list.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Include $(PTHREAD_LIBS) in the list.
-
-2009-08-04  Kristian Rumberg  <kristianrumberg@gmail.com>
-
-	* cmd-edit.cc (gnu_readline::do_get_line_buffer,
-	default_command_editor::do_get_line_buffer): New functions.
-	(command_editor::get_line_buffer): New function.
-	* cmd-edit.h (command_editor::get_line_buffer): Provide decls.
-	(command_editor::do_get_line_buffer): New pure virtual function.
-
-2009-07-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::is_range): New method.
-	(idx_vector::copy_data, idx_vector::unconvert): New method decls.
-	* idx-vector.cc (idx_vector::copy_data, idx_vector::unconvert): New
-	methods.
-	* Array-utils.cc (sub2ind, ind2sub): New functions.
-
-2009-07-29  John W. Eaton  <jwe@octave.org>
-
-	* fMatrix.cc (operator >>): Use template function to read value.
-	* fNDArray.cc (operator >>): Likeise.
-	* fCMatrix.cc (operator >>): Use template function to read value.
-	* fCNDArray.cc (operator >>): Likeise.
-	* dMatrix.cc (operator >>): Use template function to read value.
-	* dNDArray.cc (operator >>): Likeise.
-	* CMatrix.cc (operator >>): Use template function to read value.
-	* CNDArray.cc (operator >>): Likeise.
-
-	* lo-utils.cc, lo-utils.h (octave_read_value): New template
-	(octave_read_value<double>, octave_read_value<Complex>):
-	Provide specializations.
-	(octave_read_double, octave_read_complex, octave_read_float,
-	octave_rread_float_complex): Define in terms of template functions.
-	* Sparse.h (read_sparse_matrix): New template function.
-	* dSparse.cc (operator >>): Call read_sparse_matrix.
-	* CSparse.cc (operator >>): Likewise.
-	* boolSparse.cc (operator >>): Likewise.
-	* sparse-util.cc, sparse-util.h (sparse_indices_ok): New function.
-	* Sparse.cc (Sparse<T>::indices_ok, Sparse<T>::SparseRep::indices_ok):
-	New member functions.
-
-2009-07-20  John W. Eaton  <jwe@octave.org>
-
-	* lo-ieee.cc (octave_ieee_init) [__NetBSD__]: Call nan to
-	initialize Octave_NaN and nanf, to initialize Octave_Float_NaN.
-
-2009-07-11  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::symlink, file_ops::readlink):
-	Don't use incorrectly sized OCTAVE_LOCAL_BUFFER.
-
-2009-07-08  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h (dim_vector::dim_vector_rep::dim_vector_rep
-	(octave_idx_type, const dim_vector_rep *, int)):
-	Enforce 2-d objects here.
-	(dim_vector::dim_vector_rep::dim_vector_rep): Simply copy object.
-	(dim_vector::resize): Allow N < 2.
-
-2009-07-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse-op-defs.h (SPARSE_ALL_OP): Fix typo.
-	* dSparse.cc (SparseMatrix::prod): Ditto.
-	* CSparse.cc (ComplexSparseMatrix::prod): Ditto.
-
-2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse-diag-op-defs.h (inner_do_add_sm_dm): Rewrite to ensure
-	ordering of row indices.
-
-2009-06-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::lookupb<Comp>): Fix typo.
-
-2009-06-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::lookup_merge): Delete.
-	(octave_sort<T>::lookup<Comp>,
-	octave_sort<T>::lookupm<Comp>,
-	octave_sort<T>::lookupb<Comp>): Rewrite.
-
-2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* pathsearch.h (class dir_path::static_members): Decorate with
-	OCTAVE_API.
-
-2009-06-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::lookup_merge<Comp>): Slightly speed-up
-	the merge case.
-
-2009-06-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::lookup_merge<Comp>): Fix lower-part
-	recursion.
-
-2009-06-24  Alexander Barth  <barth.alexander@gmail.com>
-
-	* eigs-base.cc (EigsRealSymmetricMatrix,
-	EigsRealSymmetricMatrixShift, EigsRealSymmetricFunc,
-	EigsRealNonSymmetricMatrix, EigsRealNonSymmetricMatrixShift,
-	EigsRealNonSymmetricFunc, EigsComplexNonSymmetricMatrix,
-	EigsComplexNonSymmetricMatrixShift, EigsComplexNonSymmetricFunc):
-	Use octave_idx_type for parameters of type LOGICAL in ARPACK.
-
-2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* chMatrix.cc (charMatrix::charMatrix (const string_vector&)):
-	Optimize w.r.t. COW of std::string.
-
-2009-06-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (lookup_impl<T, Comp>): New helper inline function.
-	(octave_sort<T>::lookup_merge<Comp>): New private template method.
-	(octave_sort<T>::lookup<Comp>): Rewrite.
-	(octave_sort<T>::lookupm<Comp>): use lookup_impl.
-	(octave_sort<T>::lookupb<Comp>): use lookup_impl.
-	(out_of_range_pred, out_of_range): Remove.
-
-2009-06-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (xgemm): Replace resize() with uninitialized allocations
-	where appropriate.
-	* fMatrix.cc (xgemm): Ditto.
-	* CMatrix.cc (xgemm): Ditto.
-	* fCMatrix.cc (xgemm): Ditto.
-
-2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort::lookupm, octave_sort::lookupb): New
-	overloaded methods.
-	* oct-sort.h: Declare them.
-	* Array.cc (Array<T>::lookupm, Array<T>::lookupb): New methods.
-	* Array.h: Declare them.
-
-2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* cmd-edit.cc (command_editor::force_default_editor): New static
-	method.
-	* cmd-edit.h: Declare it.
-
-2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc (xlog2 (const Complex&, int&), xlog2 (const
-	FloatComplex&, int&)): Use more robust expression.
-
-2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::find): Avoid allocating excessive memory. Fix
-	order for backward searches.
-
-2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-C.cc (class DiagArray2<Complex>::Proxy): Only explicitly
-	instantiate DiagArray2<T>::Proxy on MSVC.
-	* Array-d.cc (class DiagArray2<double>::Proxy): Ditto.
-	* Array-f.cc (class DiagArray2<float>::Proxy): Ditto.
-	* Array-fC.cc (class DiagArray2<FloatComplex>::Proxy): Ditto.
-
-2009-05-26  John W. Eaton  <jwe@octave.org>
-
-	* pathsearch.h (dir_path::path_sep_char (char),
-	dir_path::static_members::path_sep_char (char)): New functions.
-
-2009-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array-C.cc (class DiagArray2<Complex>::Proxy): Tag with OCTAVE_API.
-	* Array-d.cc (class DiagArray2<double>::Proxy): Ditto.
-	* Array-f.cc (class DiagArray2<float>::Proxy): Ditto.
-	* Array-fC.cc (class DiagArray2<FloatComplex>::Proxy): Ditto.
-	* Array.cc (class octave_sort<T>): Ditto.
-	* CColVector.h (conj, operator*, operator>>, operator<<): Ditto.
-	* CDiagMatrix.h (class ComplexDiagMatrix, conj, operator*): Ditto.
-	* CMatrix.h (conj): Ditto.
-	* CNDArray.h (conj): Ditto.
-	* PermMatrix.h (class PermMatrix, operator*): Ditto.
-	* dDiagMatrix.h (class DiagMatrix): Ditto.
-	* fCColVector.h (conj, operator*, operator>>, operator<<): Ditto.
-	* fCDiagMatrix.h (class FloatComplexDiagMatrix, conj, operator*):
-	Ditto.
-	* fCMatrix.h (conj): Ditto.
-	* fCNDArray.h (conj): Ditto.
-	* fDiagMatrix.h (operator*): Ditto.
-	* oct-locbuf.h (octave_chunk_buffer::octave_chunk_buffer,
-	octave_chunk_buffer::~octave_chunk_buffer): Ditto.
-	* oct-inttypes.cc (octave_int_cmp_op::emulate_op): Ditto.
-	* DET.h (class base_det<T>): Remove OCTAVE_API (cannot be applied on
-	templates).
-	* oct-inttypes.cc (octave_int_cmp_op::emulate_op<class xop>): Ditto.
-
-	* CmplxQR.cc (ComplexQR::insert_col, ComplexQR::delete_col): Copy
-	volatile variable to avoid MSVC compilation error (cannot pass
-	volatile variable as const& argument).
-	* dbleQR.cc (QR::insert_col, QR::delete_col): Ditto.
-	* fCmplxQR.cc (FloatComplexQR::insert_col,
-	FloatComplexQR::delete_col): Ditto.
-	* floatQR.cc (FloatQR::insert_col, FloatQR::delete_col): Ditto.
-
-	* oct-mutex.cc: Exclude pthread.h inclusion under Win32.
-
-	* base-aepbal.h (base_aepbal::operator=): Add missing return
-	statement.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* eigs-base.cc (
-	EigsRealSymmetricMatrix,
-	EigsRealSymmetricMatrixShift,
-	EigsRealSymmetricFunc,
-	EigsRealNonSymmetricMatrix,
-	EigsRealNonSymmetricMatrixShift,
-	EigsRealNonSymmetricFunc,
-	EigsComplexNonSymmetricMatrix,
-	EigsComplexNonSymmetricMatrixShift,
-	EigsComplexNonSymmetricFunc): Update tests.
-
-2009-05-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CMatrix.cc
-	(ComplexMatrix::all, ComplexMatrix::any, ComplexMatrix::cumprod,
-	ComplexMatrix::cumsum, ComplexMatrix::prod, ComplexMatrix::sum,
-	ComplexMatrix::sumsq): Use explicit template qualifications
-	to workaround bugs in Intel C++ and MSVC++ compilers.
-	* CNDArray.cc
-	(ComplexNDArray::all, ComplexNDArray::any, ComplexNDArray::cumprod,
-	ComplexNDArray::cumsum, ComplexNDArray::prod, ComplexNDArray::sum,
-	ComplexNDArray::sumsq): Ditto.
-	* boolMatrix.cc
-	(boolMatrix::all, boolMatrix::any): Ditto.
-	* boolNDArray.cc
-	(boolNDArray::all, boolNDArray::any): Ditto.
-	* chMatrix.cc
-	(charMatrix::all, charMatrix::any): Ditto.
-	* chNDArray.cc
-	(charNDArray::all, charNDArray::any): Ditto.
-	* dMatrix.cc
-	(Matrix::all, Matrix::any, Matrix::cumprod,
-	Matrix::cumsum, Matrix::prod, Matrix::sum,
-	Matrix::sumsq): Ditto.
-	* dNDArray.cc
-	(NDArray::all, NDArray::any, NDArray::cumprod,
-	NDArray::cumsum, NDArray::prod, NDArray::sum,
-	NDArray::sumsq): Ditto.
-	* fCMatrix.cc
-	(FloatComplexMatrix::all, FloatComplexMatrix::any, FloatComplexMatrix::cumprod,
-	FloatComplexMatrix::cumsum, FloatComplexMatrix::prod, FloatComplexMatrix::sum,
-	FloatComplexMatrix::sumsq): Ditto.
-	* fCNDArray.cc
-	(FloatComplexNDArray::all, FloatComplexNDArray::any, FloatComplexNDArray::cumprod,
-	FloatComplexNDArray::cumsum, FloatComplexNDArray::prod, FloatComplexNDArray::sum,
-	FloatComplexNDArray::sumsq): Ditto.
-	* fMatrix.cc
-	(FloatMatrix::all, FloatMatrix::any, FloatMatrix::cumprod,
-	FloatMatrix::cumsum, FloatMatrix::prod, FloatMatrix::sum,
-	FloatMatrix::sumsq): Ditto.
-	* fNDArray.cc
-	(FloatNDArray::all, FloatNDArray::any, FloatNDArray::cumprod,
-	FloatNDArray::cumsum, FloatNDArray::prod, FloatNDArray::sum,
-	FloatNDArray::sumsq): Ditto.
-	* intNDArray.cc
-	(intNDArray<T>::all, intNDArray<T>::any,
-	intNDArray<T>::cumsum, intNDArray<T>::sum): Ditto.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Remove reference to ArrayN-idx.h.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-voidp.cc: New source.
-	* Array.cc (NO_INSTANTIATE_ARRAY_SORT): const T& -> T const &
-	* Makefile.in: Include it.
-
-2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::instantiation_guard): New function
-	(INSTANTIATE_ARRAY): Always override it here.
-	* Array.h: Declare it.
-
-2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ArrayN-idx.h: Remove file.
-	* ArrayN.cc: Don't include it.
-	* MArrayN.cc: Dtto.
-
-2009-05-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-util.cc (zero_dims_inquire): Move j++ out of branch.
-
-2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
-
-2009-05-05  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* file-ops.h (file_ops::tail) New function.
-
-2009-05-05  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
-
-	* Quad.cc (user_function): Use access_double and assign_double on
-	SPARC only, not on all Sun systems.
-	* sun-utils.h: Likewise, define these functions on SPARC only.
-
-2009-05-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Sparse.cc (assign1): Fix an old indexing bug.
-
-2009-05-04  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
-
-	* Quad.cc (float_user_function): Remove Sun/GCC special case.
-
-2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_range_rep::idx_range_rep (const
-	Range&)): Check for positive integer indices. Unify gripes.
-
-2009-04-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (rec_permute_helper::blk_trans): Declare as static.
-	(Array<T>::transpose): Reuse it.
-
-2009-04-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::make_unique): Don't economize when unique.
-	(Array<T>::resize_fill (octave_idx_type, const T&)): Optimize push &
-	pop operations.
-	(Array<T>::delete_elements (const idx_vector&)): Do pop operation
-	using resize.
-
-2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::assign): Remove redundant checks after invalid
-	resize.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::find): Reshape result for Matlab compatibility.
-	* Array.h (Array<T>): Add friend template declaration.
-
-2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
-	Array<bool>&): Use more M*b-compatible behaviour.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dim-vector.h (dim_vector::numel): Add optional argument, simplify.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::dims): Return a const reference.
-	(Array<T>::is_vector): New method.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::find): New method.
-	* Array.h: Declare it.
-
-2009-03-25  John W. Eaton  <jwe@octave.org>
-
-	* EIG.cc (EIG::init (const Matrix&, bool),
-	EIG::init (const Matrix&, const Matrix&, bool)):
-	Avoid volatile declaration for tmp variable.
-
-	* Makefile.in (MATRIX_INC): Add Sparse-diag-op-defs.h and
-	Sparse-perm-op-defs.h to the list.
-
-2009-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.cc (INT_DOUBLE_BINOP_DECL (*, uint64),
-	INT_DOUBLE_BINOP_DECL (*, int64)): x -> y where appropriate.
-
-2009-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (rec_permute_helper::use_blk): New field.
-	(rec_permute_helper::blk_trans): New method.
-	(rec_permute_helper::rec_permute_helper): Use smart reductions,
-	detect possibility of using blocked transpose.
-	(rec_permute_helper::do_permute): Use blocked transpose if possible.
-
-2009-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (convert_index(double,...)): Simplify.
-
-2009-03-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-d.cc: lo_ieee_isnan -> xisnan.
-	* Array-f.cc: Ditto.
-	* oct-inttypes.cc: Ditto.
-	* oct-inttypes.h: Ditto.
-	* CDiagMatrix.cc: Add missing include.
-	* fCDiagMatrix.cc: Ditto.
-
-2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CColVector.cc, CMatrix.cc, CNDArray.cc, CRowVector.cc, CSparse.cc,
-	boolSparse.cc, dColVector.cc, dMatrix.cc, dNDArray.cc, dRowVector.cc,
-	dSparse.cc, fCColVector.cc, fCMatrix.cc, fCNDArray.cc, fCRowVector.cc,
-	fColVector.cc, fMatrix.cc, fNDArray.cc, fRowVector.cc, intNDArray.cc:
-	Allow empty arrays in stream input operators.
-
-2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::fastmap): New method.
-	* dNDArray.cc (NDArray::isnan, NDArray::isinf, NDArray::isfinite):
-	New methods.
-	* dNDArray.h: Declare them.
-	* fNDArray.cc (FloatNDArray::isnan, FloatNDArray::isinf,
-	FloatNDArray::isfinite): New methods.
-	* fNDArray.h: Declare them.
-	* CNDArray.cc (ComplexNDArray::isnan, ComplexNDArray::isinf,
-	ComplexNDArray::isfinite): New methods.
-	* CNDArray.h: Declare them.
-	* fCNDArray.cc (FloatComplexNDArray::isnan, FloatComplexNDArray::isinf,
-	FloatComplexNDArray::isfinite): New methods.
-	* fCNDArray.h: Declare them.
-	* lo-mappers.h (xisnan, xisinf, xfinite): If possible, use definitions
-	from <cmath>.
-
-2009-03-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-norm.cc (get_eps): Remove that hack.
-	(higham): Use std::numeric_limits instead.
-	Include OCTAVE_QUIT.
-
-2009-03-16  Jason Riedy  <jason@acm.org>
-
-	* Sparse.cc (transpose): Eliminate the workspace by computing in
-	retval.xcidx.
-	* CSparse.cc (hermitian): Eliminate the workspace by computing in
-	retval.xcidx.
-
-2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-op-decl.h (NDS_BOOL_OP_DECLS, SND_BOOL_OP_DECLS, NDND_BOOL_OP_DECLS): Support compound binary ops.
-	* mx-op-defs.h (NDS_BOOL_OPS, SND_BOOL_OPS, NDND_BOOL_OPS): Ditto. Optimize.
-	* mx-op-defs.h (NDS_CMP_OP, SND_CMP_OP, NDND_CMP_OP): Optimize.
-
-2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* fNDArray.h (FloatMatrix::matrix_value): Fix return type.
-	* dNDArray.cc (Matrix::matrix_value): Simplify.
-	* fNDArray.cc (FloatMatrix::matrix_value): Simplify.
-	* CNDArray.cc (ComplexMatrix::matrix_value): Simplify.
-	* fCNDArray.cc (FloatComplexMatrix::matrix_value): Simplify.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Range.h (Range::Range (double, double, octave_idx_type)): Remove
-	constructor body.
-	* Range.cc: Move it here. Check for invalid range op results.
-	(all operators): Validate cache for invalid range op results.
-	* idx-vector.h (idx_vector::index): Optimize zero-step range case.
-	* idx-vector.cc (idx_vector::maybe_reduce): Always reduce colon in
-	singleton dimension.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* sparse-base-lu.cc (Pr_mat): New member function.  Return the row
-	permutation as a PermMatrix.
-	(Pc_mat): New member function.  Return the col permutation as a
-	PermMatrix.
-
-	* sparse-base-lu.h (sparse_base_lu): Declare Pc_mat and Pr_mat
-	member functions.
-
-2009-03-09  Jason Riedy  <jason@acm.org>
-
-	* Sparse-diag-op-defs.h (octave_impl::inner_do_add_sm_dm): New
-	template function.  Implementation for adding sparse and diagonal
-	matrices.  Takes two functional arguments, opa and opd, to
-	generate both subtraction variants.
-	(octave_impl::do_commutative_add_dm_sm): New template function.
-	Ensure A+D and D+A use the same generated code.
-	(octave_impl::do_add_dm_sm): New template function.  Check
-	arguments for diag + sparse and call inner routine.
-	(octave_impl::do_sub_dm_sm): New template function.  Check
-	arguments for diag - sparse and call inner routine.
-	(octave_impl::do_add_sm_dm): New template function.  Check
-	arguments for sparse + diag and call inner routine.
-	(octave_impl::do_sub_sm_dm): New template function.  Check
-	arguments for sparse - diag and call inner routine.
-
-	* dSparse.h (operator +): Declare overrides for real diag +
-	sparse.
-	(operator -): Declare overrides for real diag - sparse, sparse -
-	diag.
-
-	* dSparse.cc (operator +): Define overrides for real diag +
-	sparse.
-	(operator -): Define overrides for real diag - sparse, sparse -
-	diag.
-
-	* CSparse.h (operator +): Declare overrides for complex and real
-	combinations of diag + sparse.
-	(operator -): Declare overrides for complex and real combinations
-	of diag - sparse, sparse - diag.
-
-	* CSparse.cc (operator +): Define overrides for complex and real
-	combinations of diag + sparse.
-	(operator -): Define overrides for complex and real combinations
-	of diag - sparse, sparse - diag.
-
-2009-03-08  Jason Riedy  <jason@acm.org>
-
-	* Sparse-diag-op-defs.h (octave_impl::do_mul_dm_sm)
-	(octave_impl::do_mul_sm_dm): New template
-	functions. Implementations for sparse * diag and diag * sparse.
-
-	* CSparse.h (operator *, trans_mul, herm_mul): Add overloads for
-	DiagMatrix and ComplexDiagMatrix.
-	* CSparse.cc (operator *, trans_mul, herm_mul): Implement
-	operations by calling approprate functions in
-	Sparse-diag-op-defs.h.
-	* dSparse.h (operator *, trans_mul): Add overloads for DiagMatrix.
-	* dSparse.cc (operator *, trans_mul): Implement operations by
-	calling approprate functions in Sparse-diag-op-defs.h.
-
-2009-03-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (bitshift): Apply mask even if not shifting.
-	From Seb Astien <se6astien2@googlemail.com>.
-
-2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* PermMatrix.cc (PermMatrix::power): New method.
-	* PermMatrix.h: Declare it.
-
-2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dNDArray.cc (NDArray::NDArray (const charNDArray&)): New
-	constructor.
-	* fNDArray.cc (FloatNDArray::FloatNDArray (const charNDArray&)):
-	Ditto.
-	* CNDArray.cc (ComplexNDArray::ComplexNDArray (const charNDArray&)):
-	Ditto.
-	* fCNDArray.cc (FloatComplexNDArray::FloatComplexNDArray
-	(const charNDArray&)): Ditto.
-
-	* dNDArray.h (NDArray::NDArray (const charNDArray&)): Declare.
-	* fNDArray.h (FloatNDArray::FloatNDArray (const charNDArray&)):
-	Ditto.
-	* CNDArray.h (ComplexNDArray::ComplexNDArray (const charNDArray&)):
-	Ditto.
-	* fCNDArray.h (FloatComplexNDArray::FloatComplexNDArray
-	(const charNDArray&)): Ditto.
-
-	* dMatrix.cc (Matrix::Matrix (const charMatrix&)): Cast to unsigned
-	chars.
-	* fMatrix.cc (FloatMatrix::FloatMatrix (const charMatrix&)): Likewise.
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const charMatrix&)):
-	Likewise.
-	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix
-	(const charMatrix&)): Likewise.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* Sparse-perm-op-defs.h (octinternal_do_mul_colpm_sm): New
-	template function.  Logic for the column permutation * sparse
-	matrix operator.
-	(octinternal_do_mul_pm_sm): New template function.  Logic for the
-	permutation matrix * sparse matrix operator.  Note that there is
-	no special row perm * sparse routine; the permutation is inverted
-	and the col perm routine is called.
-	(octinternal_do_mul_sm_rowpm): New template function.  Logic for
-	the sparse matrix * row permutation operator.
-	(octinternal_do_mul_sm_colpm): New template function.  Logic for
-	the sparse matrix * column permutation operator.
-	(octinternal_do_mul_sm_pm): New template function.  Logic for the
-	sparse matrix * permutation matrix operator.
-
-	* dSparse.h (operator *): Declare sparse * permutation and
-	permutation * sparse.
-	* dSparse.cc (operator *): Define sparse * permutation and
-	permutation * sparse.
-
-	* CSparse.h (operator *): Declare sparse * permutation and
-	permutation * sparse.
-	* CSparse.cc (operator *): Define sparse * permutation and
-	permutation * sparse.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* sparse-base-lu.cc (Pc_vec): The column permutation should be
-	Ufact.cols ()-long, not Lfact.rows ()-long.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* dSparse.cc (SparseMatrix::SparseMatrix (const PermMatrix&)):
-	Fix conversion to add values to the matrix as well as getting
-	structure correct.
-
-2009-03-10  John W. Eaton  <jwe@octave.org>
-
-	* Array.h, ArrayN.h, Bounds.h, CmplxAEPBAL.h, CmplxCHOL.h,
-	CmplxGEPBAL.h, CmplxHESS.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h,
-	CmplxSVD.h, CollocWt.h, EIG.h, FEGrid.h, LinConst.h, Range.h,
-	Sparse.h, SparseCmplxQR.h, SparseQR.h, dbleAEPBAL.h, dbleCHOL.h,
-	dbleGEPBAL.h, dbleHESS.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h,
-	dbleSVD.h, dim-vector.h, fCmplxAEPBAL.h, fCmplxCHOL.h,
-	fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxQR.h, fCmplxQRP.h,
-	fCmplxSCHUR.h, fCmplxSVD.h, fEIG.h, floatAEPBAL.h, floatCHOL.h,
-	floatGEPBAL.h, floatHESS.h, floatQR.h, floatQRP.h, floatSCHUR.h,
-	floatSVD.h, idx-vector.h, lo-utils.h, oct-inttypes.h,
-	oct-spparms.h, str-vec.h: Include <iosfwd> instead of <iosstream>.
-
-2009-03-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_CUMMINMAX_FCN2): r -> r0 where appropriate.
-
-2009-03-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::bloop): loop --> bloop.
-	(idx_vector::loop): New method.
-	* MArray.cc (MArray<T>::idx_add (cons idx_vector&, T))
-	(MArray<T>::idx_add (cons idx_vector&, const MArray<T>&)): New methods.
-	* MArray.h: Declare them.
-
-2009-03-05  Jason Riedy  <jason@acm.org>
-
-	* Sparse.h (Sparse<T>::elt_type): Remove typedef, replace with:
-	* Sparse.h (Sparse<T>::element_type): Add typedef to be consistent
-	with Array.h
-	* DiagArray2.h (DiagArray2<T>::elt_type): Likewise, removed.
-	* DiagArray2.h (DiagArray2<T>::element_type): Define by using
-	Array<T>::element_type.
-	* intNDArray.h (intNDArray<T>::element_type): Remove, inherited
-	from MArrayN<T>.
-
-2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dSparse.h (SparseMatrix::SparseMatrix(const PermMatrix&)): New
-	constructor.
-	(SparseMatrix::SparseMatrix(const DiagMatrix&)): Fix implementation.
-	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix(const ComplexDiagMatrix&)):
-	Fix implementation.
-
-2009-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* PermMatrix.h (PermMatrix::elem): Fix comparisons.
-
-2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc (xmin (float, float), xmax (float, float)): Simplify.
-
-2009-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc: Add missing #include.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Make maintainer-clean and distclean the same.
-
-2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.cc (pow (const octave_int<T>&, const octave_int<T>&)):
-	Simplify.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int_cmp_op::mop): Implement as simple
-	forwarders when OCTAVE_INT_USE_LONG_DOUBLE is not defined.
-	(octave_int_cmp_op::emulate_mop): New static overloaded template
-	member function.
-	* oct-inttypes.cc: Turn the octave_int_cmp_op::mop definitions into
-	defs for octave_int_cmp_op::emulate_mop.
-	(INSTANTIATE_INT64_DOUBLE_CMP_OP0): Instantiate
-	octave_int_cmp_op::emulate_op instead.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dDiagMatrix.cc (DiagMatrix::pseudo_inverse): New method.
-	* dDiagMatrix.h: Declare it.
-	* fDiagMatrix.cc (FloatDiagMatrix::pseudo_inverse): New method.
-	* fDiagMatrix.h: Declare it.
-	* CDiagMatrix.cc (ComplexDiagMatrix::pseudo_inverse): New method.
-	* CDiagMatrix.h: Declare it.
-	* fCDiagMatrix.cc (FloatComplexDiagMatrix::pseudo_inverse): New method.
-	* fCDiagMatrix.h: Declare it.
-
-2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.h (octave_sort<T>::MergeState::MergeState): New
-	constructor.
-	(octave_sort<T>::MergeState::~MergeState): New destructor.
-	(octave_sort<T>::MergeState::reset,
-	octave_sort<T>::MergeState::getmem,
-	octave_sort<T>::MergeState::getmemi): New methods.
-	(octave_sort<T>::sort,
-	octave_sort<T>::merge_lo, octave_sort<T>::merge_hi
-	octave_sort<T>::merge_at): Reflect change.
-
-2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-types.h (sortmode): Move enum here.
-	* oct-sort.h (octave_sort<T>::ms): Declare as pointer.
-	(octave_sort<T>::lookup): New overloaded method.
-	* oct-sort.cc: Reflect change to ms.
-	(octave_sort<T>::lookup): New overloaded method.
-	(out_of_range_pred): New helper class.
-	(out_of_range): New helper function.
-	* oct-lookup.h: Remove file.
-	* Array.cc (Array<T>::lookup): New overloaded method.
-	* Array.h: Declare it.
-
-2009-02-18  John W. Eaton  <jwe@octave.org>
-
-	* dbleQR.cc (QR::init, QR::form): Cast int to octave_idx_type in
-	call to std::max.
-	* floatQR.cc (FloatQR::init, FloatQR::form): Ditto.
-	* CmplxQR.cc (ComplexQR::init, ComplexQR::form): Ditto.
-	* fCmplxQR.cc (FloatComplexQR::init, FloatComplexQR::form): Ditto.
-
-	* dbleQRP.cc (QRP::init): Cast int to octave_idx_type in call to
-	std::max and as operand to -= operator.
-	* CmplxQRP.cc (ComplexQRP::init): Ditto.
-	* floatQRP.cc (FloatQRP::init): Ditto.
-	* fCmplxQRP.cc (FloatComplexQRP::init): Ditto.
-
-	* CDiagMatrix.cc, CDiagMatrix.h (ComplexDiagMatrix::inverse):
-	Declare info as octave_idx_type, not int.
-	* dDiagMatrix.cc, dDiagMatrix.h (DiagMatrix::inverse): Ditto.
-	* fDiagMatrix.cc, fCDiagMatrix.h (FloatDiagMatrix::inverse): Ditto.
-	* fCDiagMatrix.cc, fCDiagMatrix.h (FloatComplexDiagMatrix::inverse):
-	Ditto.
-
-	* dMatrix.cc (Matrix::determinant):
-	Declare local variables volatile as needed to avoid "maybe
-	clobbered by vfork" warning from GCC.
-	* fMatrix.cc (FloatMatrix::determinant): Likewise.
-	* CMatrix.cc (ComplexMatrix::determinant): Likewise.
-	* fCMatrix.cc (FloatComplexMatrix::determinant): Likewise.
-	* dbleQR.cc (QR::update, QR::insert_col, QR::delete_col): Likewise.
-	* floatQR.cc (FloatQR::update, FloatQR::insert_col,
-	FloatQR::delete_col): Likewise.
-	* CmplxQR.cc (ComplexQR::update, ComplexQR::insert_col,
-	ComplexQR::delete_col): Likewise.
-	* fCmplxQR.cc (FloatComplexQR::update, FloatComplexQR::insert_col,
-	FloatComplexQR::delete_col): Likewise.
-
-	* dMatrix.cc (padec, solve_singularity_warning): Delete unused
-	static variable and function.
-	* CMatrix.cc (padec, solve_singularity_warning): Ditto.
-	* fMatrix.cc (padec, solve_singularity_warning): Ditto.
-	* fCMatrix.cc (padec, solve_singularity_warning): Ditto.
-
-2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::resize (const dim_vector&)): Check for negative
-	dimensions.
-
-2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.cc (pow (const octave_int<T>&, const octave_int<T>&)):
-	Use octave_int comparisons to avoid warning for unsigned types.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::resize (const dim_vector&)): Remove dead branch.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_CUM_FCN, OP_CUM_FCN2, OP_CUM_FCNN):
-	Add TSRC/TRES parameters.
-	(mx_inline_cumcount): New function.
-	* intNDArray.cc (intNDArray::cumsum): New method.
-	* intNDArray.h: Declare it.
-	* boolNDArray.cc (boolNDArray::cumsum): New method.
-	* boolNDArray.h: Declare it.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_CUMMINMAX_FCN, OP_CUMMINMAX_FCN2,
-	OP_CUMMINMAX_FCNN): New macros.
-	(mx_inline_cummax, mx_inline_cummin, do_mx_cumminmax_op):
-	New overloaded template functions.
-
-	* dNDArray.cc (NDArray::cummin, NDArray::cummax): New methods.
-	* dNDArray.h: Declare them.
-
-	* fNDArray.cc (FloatNDArray::cummin, FloatNDArray::cummax): New
-	methods.
-	* fNDArray.h: Declare them.
-
-	* CNDArray.cc (ComplexNDArray::cummin, ComplexNDArray::cummax): New
-	methods.
-	* CNDArray.h: Declare them.
-
-	* fCNDArray.cc (FloatComplexNDArray::cummin,
-	FloatComplexNDArray::cummax): New methods.
-	* fCNDArray.h: Declare them.
-
-	* intNDArray.cc (intNDArray::cummin, intNDArray::cummax): New methods.
-	* intNDArray.h: Declare them.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_MINMAX_FCN): Correct behaviour with NaNs.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MArray-defs.h: Move declarative part to MArray-decl.h
-	* MArray-decl.h: New source.
-
-	* mx-op-defs.h: Move declarative part to mx-op-decl.h.
-	* mx-op-decl.h: New source.
-
-	* Makefile.in: Include new sources in build.
-	* mk-ops.awk: Include mx-op-decl.h in headers, mx-op-defs in .cc
-	files.
-
-	* CMatrix.cc, CMatrix.h, CNDArray.cc, CNDArray.h, MArray.h, MArray2.h,
-	MArrayN.h, MDiagArray2.h, boolMatrix.cc, boolMatrix.h, boolNDArray.cc,
-	boolNDArray.h, chMatrix.cc, chMatrix.h, chNDArray.cc, chNDArray.h,
-	dMatrix.cc, dMatrix.h, dNDArray.cc, dNDArray.h, fCMatrix.cc,
-	fCMatrix.h, fCNDArray.cc, fCNDArray.h, fMatrix.cc, fMatrix.h,
-	fNDArray.cc, fNDArray.h, int16NDArray.cc, int16NDArray.h,
-	int32NDArray.cc, int32NDArray.h, int64NDArray.cc, int64NDArray.h,
-	int8NDArray.cc, int8NDArray.h, uint16NDArray.cc, uint16NDArray.h,
-	uint32NDArray.cc, uint32NDArray.h, uint64NDArray.cc, uint64NDArray.h,
-	uint8NDArray.cc, uint8NDArray.h: Ditto.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::assign (const idx_vector& i,
-	const idx_vector& j,...)): Fix invalid dimension inquiry.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_ROW_SHORT_CIRCUIT): New macro.
-	(mx_inline_any, mx_inline_all): Override row-reduction case.
-	(MX_CUMULATIVE_OP, MX_BASE_REDUCTION_OP, MX_REDUCTION_OP,
-	MX_ANY_OP, MX_ALL_OP, MX_ND_ANY_ALL, MX_ND_REDUCTION,
-	MX_ND_COMPLEX_OP_REDUCTION, MX_ND_CUMULATIVE_OP,
-	MX_ND_ANY_EVAL, MX_ND_ALL_EVAL, MX_ND_REAL_OP_REDUCTION):
-	Remove unused macros.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_RED_FCNN): Use explicit type qualification.
-	(mx_inline_count): New overloaded template function.
-	* boolNDArray.h (boolNDArray::sum): Return NDArray.
-	* boolNDArray.cc (boolNDArray::sum): Return NDArray, use do_mx-red_op.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-C.cc, Array-fC.cc: Don't redefine complex comparison.
-	* Sparse.cc (Sparse::sort): Don't use vec_index.
-	* Sparse-C.cc, Sparse-d.cc, Sparse-b.cc: Don't reinstantiate
-	octave_sort, reflect changes.
-	* sparse-sort.cc: Explicitly instantiate octave_sort for requested
-	pointer types.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-cmplx.h (operator <, operator >): New operators.
-	* mx-inlines.cc (OP_MINMAX_FCN, OP_MINMAX_FCN2, OP_MINMAX_FCNN):
-	New macros.
-	(mx_inline_min, mx_inline_max, do_mx_minmax_op): New overloaded
-	template functions.
-	* dNDArray (NDArray::min, NDArray::max): Use do_mx_minmax_op.
-	* fNDArray (FloatNDArray::min, FloatNDArray::max): Ditto.
-	* CNDArray (ComplexNDArray::min, ComplexNDArray::max): Ditto.
-	* fCNDArray (FloatComplexNDArray::min, FloatComplexNDArray::max):
-	Ditto.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* chMatrix.cc (charMatrix::all, charMatrix::any): Use do_mx_red_op.
-	* chNDArray.cc (charNDArray::all, charNDArray::any): Ditto.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (default_command_editor::do_readline):
-	Use fputs instead of fprintf.
-
-2009-02-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_RED_FCN, OP_RED_FCN2, OP_RED_FCNN, OP_CUM_FCN,
-	OP_CUM_FCN2, OP_CUM_FCNN): Include TRET parameter.
-	(OP_RED_ANYC, OP_RED_ANYR, OP_RED_ALLC, OP_RED_ALLR): New macros.
-	(is_true, is_false): New template functions.
-	(mx_inline_any, mx_inline_all): New template functions.
-
-	* dMatrix.cc (Matrix::any, Matrix::all): Use do_mx_red_op and
-	do_mx_cum_op.
-	* fMatrix.cc (FloatMatrix::any, FloatMatrix::all): Use do_mx_red_op
-	and do_mx_cum_op.
-	* CMatrix.cc (ComplexMatrix::any, ComplexMatrix::all): Use
-	do_mx_red_op and do_mx_cum_op.
-	* fCMatrix.cc (FloatComplexMatrix::any, FloatComplexMatrix::all): Use
-	do_mx_red_op and do_mx_cum_op.
-
-	* dNDArray.cc (NDArray::any, NDArray::all): Use do_mx_red_op and
-	do_mx_cum_op.
-	* fNDArray.cc (FloatNDArray::any, FloatNDArray::all): Use do_mx_red_op
-	and do_mx_cum_op.
-	* CNDArray.cc (ComplexNDArray::any, ComplexNDArray::all): Use
-	do_mx_red_op and do_mx_cum_op.
-	* fCNDArray.cc (FloatComplexNDArray::any, FloatComplexNDArray::all):
-	Use do_mx_red_op and do_mx_cum_op.
-
-	* intNDArray.cc (intNDArray::any, intNDArray::all): Use do_mx_red_op and
-	do_mx_cum_op.
-
-	* boolNDArray.cc (boolNDArray::any, boolNDArray::all): Use do_mx_red_op and
-	do_mx_cum_op.
-
-	* boolMatrix.cc (boolMatrix::any, boolMatrix::all): Use do_mx_red_op and
-	do_mx_cum_op.
-
-2009-02-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* intNDArray.cc: include mx-inlines.cc.
-	(intNDArray::sum): Use mx_do_red_op (..., mx_inline_sum).
-	* Range.cc (Range::is_sorted): Add missing return statement.
-
-2009-02-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (OP_RED_SUM, OP_RED_PROD, OP_RED_SUMSQ, OP_RED_SUMSQC,
-	OP_RED_FCN, OP_RED_FCN2, OP_RED_FCNN, OP_CUM_FCN, OP_CUM_FCN2,
-	OP_CUM_FCNN): New macros.
-	(mx_inline_sum, mx_inline_prod, mx_inline_sumsq, mx_inline_cumsum,
-	mx_inline_cumprod, get_extent_triplet, do_mx_red_op, do_mx_cum_op):
-	New template functions.
-	* dMatrix.cc (Matrix::cumprod, Matrix::cumsum, Matrix::prod,
-	Matrix::sum, Matrix::sumsq): Use do_mx_red_op and do_mx_cum_op.
-	* fMatrix.cc (FloatMatrix::cumprod, FloatMatrix::cumsum,
-	FloatMatrix::prod, FloatMatrix::sum, FloatMatrix::sumsq): Use
-	do_mx_red_op and do_mx_cum_op.
-	* CMatrix.cc (ComplexMatrix::cumprod, ComplexMatrix::cumsum,
-	ComplexMatrix::prod, ComplexMatrix::sum, ComplexMatrix::sumsq): Use
-	do_mx_red_op and do_mx_cum_op.
-	* fCMatrix.cc (FloatComplexMatrix::cumprod,
-	FloatComplexMatrix::cumsum, FloatComplexMatrix::prod,
-	FloatComplexMatrix::sum, FloatComplexMatrix::sumsq): Use do_mx_red_op
-	and do_mx_cum_op.
-
-2009-02-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (if_else_type): Remove
-	(octave_int_base::truncate_int): Use if_then_else.
-
-2009-02-12  John W. Eaton  <jwe@octave.org>
-
-	* lo-traits.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-	* Array.h (compare_fcn_type): New typedef.
-	* oct-sort.h (compare_fcn_type): Ditto.
-
-	* oct-sort.h, oct-sort.cc (octave_sort<T>::octave_sort,
-	octave_sort<T>::set_compare, octave_sort<T>::compare):
-	Use typedef to simplify decl.
-	(octave_sort<T>::ascending_compare,
-	octave_sort<T>::descending_compare):
-	Use ref_param<T>::type for parameter decl.
-
-	* Array.cc (sort_isnan): Use ref_param<T>::type for parameter decl.
-	(Array<T>::sort): Use explicit template parameter for sort_isnan calls.
-
-	* Array.cc, Array-C.cc, Array-fC.cc, Array-d.cc, Array-f.cc
-	(sortrows_comparator): Rename from _sortrows_comparator.  Change
-	all uses.  Use typedef for return value to simplify decl.
-	(sort_isnan): Rename from _sort_isnan.  Change all uses.
-	(NO_INSTANTIATE_ARRAY_SORT): Use typedef to simplify instantiation
-	of sortrows_comparator.
-
-	* Array-C.cc, Array-fC.cc (sort_isnan, ascending_compare,
-	descending_compare, nan_ascending_compare,
-	nan_descending_compare):
-
-2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::is_sorted, octave_sort<T>::sort_rows,
-	octave_sort<T>::is_sorted_rows): New methods.
-	* oct-sort.h: Declare them.
-
-	* Array.cc (Array<T>::is_sorted): New method.
-	(INSTANTIATE_ARRAY_SORT, NO_INSTANTIATE_ARRAY_SORT,
-	INSTANTIATE_ARRAY_AND_ASSIGN, INSTANTIATE_ARRAY): Move macros here.
-	* Array.h: Reflect changes.
-
-	* dim-vector.h (dim_vector::is_vector): New method.
-	* Array-C.cc, Array-fC.cc: Override _sort_isnan, don't check for
-	NaN in default comparators. Provide NaN-safe comparators, override
-	_sortrows_comparator.
-	* Array-d.cc, Array-f.cc: Provide NaN-safe comparators, override
-	_sortrows_comparator.
-	* Range.cc (Range::is_sorted): New method.
-	* Range.h: Declare it.
-
-2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>): Rewrite for optimizations. Allow
-	inlined comparison functor and by-the-way indexed sorting.
-	* oct-sort.h (octave_sort<T>): Update interface.
-	* Array.cc (Array<T>::sort): Reflect changes. Use copy & partition
-	mechanism.
-	* Array-d.cc, Array-f.cc, Array-C.cc, Array-fC.cc, Array-s.cc,
-	Array-i.cc: Reflect changes.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.cc (base_file_stat::is_sock):
-	Use EXISTS instead of OK in previous change.
-
-	* file-stat.cc (base_file_stat::is_blk, base_file_stat::is_chr,
-	base_file_stat::is_dir, base_file_stat::is_fifo,
-	base_file_stat::is_lnk, base_file_stat::is_reg,
-	base_file_stat::is_sock): Return false if object is not initialized.
-	From Rafael Laboissiere <rafael@debian.org>.
-
-2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::idx_colon_rep,
-	idx_vector::idx_scalar_rep, idx_vector::idx_range_rep,
-	idx_vector::idx_vector_rep): Declare allocators.
-	* idx-vector.cc: Define them.
-
-2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* str-vec.h (string_vector::sort): Remove implementation.
-	* str-vec.cc (string_vector::sort): Move here. Use in-place sorting.
-	* Array-str.cc: Fix order of header files.
-	* oct-sort.cc (octave_sort<T>::merge_hi): std::copy ->
-	std::copy_backward where appropriate.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.cc (zero_dims_inquire): Eliminate unused variable MATCH.
-
-	* Sparse.cc (assign (Sparse<LT>& lhs, const Sparse<RT>& rhs)):
-	Eliminate unused variable N.
-
-	* MArray-f.cc (MArray<float>::norm (float p) const,
-	MArray<FloatComplex>::norm (float p) const): Pass P to xnorm.
-
-	* eigs-base.cc (EigsRealNonSymmetricFunc, EigsRealSymmetricFunc)
-	(EigsComplexNonSymmetricFunc): Avoid unused parameter warning.
-	* idx-vector.cc (idx_vector::freeze): Likewise.
-
-2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-locbuf.h: Specialize OCTAVE_LOCAL_BUFFER to use chunked
-	allocation for pointers and const pointers.
-
-2009-02-03  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* Makefile.in: Add missing library reference.
-
-2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::sort (octave_idx_type, sortmode)):
-	Copy array on-the-fly.
-	(Array<T>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
-	Copy array on-the-fly, use bare pointers rather than vec_index.
-
-	* Array-d.cc (Array<double>::sort (octave_idx_type, sortmode)):
-	Copy array on-the-fly.
-	(Array<double>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
-	Copy array on-the-fly, use bare pointers rather than vec_index.
-
-	* Array-f.cc (Array<float>::sort (octave_idx_type, sortmode)):
-	Copy array on-the-fly.
-	(Array<float>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
-	Copy array on-the-fly, use bare pointers rather than vec_index.
-
-2009-02-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_fabs_dup, mx_inline_cabs_dup): New funcs.
-
-	* dMatrix.cc (real, imag, Matrix::abs): Simplify.
-	* fMatrix.cc (real, imag, FloatMatrix::abs): Simplify.
-	* CMatrix.cc (ComplexMatrix::abs, ComplexMatrix::conj): Simplify.
-	* fCMatrix.cc (FloatComplexMatrix::abs, FloatComplexMatrix::conj): Simplify.
-
-	* CMatrix.h, fCMatrix.h (conj): Add missing decl.
-
-	* dNDArray.cc (real, imag, NDArray::abs): Simplify.
-	* fNDArray.cc (real, imag, FloatNDArray::abs): Simplify.
-	* CNDArray.cc (ComplexNDArray::abs, ComplexNDArray::conj): Simplify.
-	* fCNDArray.cc (FloatComplexNDArray::abs, FloatComplexNDArray::conj): Simplify.
-
-	* CMatrix.h, fCMatrix.h (conj): New decl.
-
-2009-01-29  John W. Eaton  <jwe@octave.org>
-
-	* intNDArray.h (intNDArray<T>:any_element_is_nan): New function.
-	* boolNDArrah.h (boolNDArray::any_element_is_nan): New function.
-	* chNDArray.h (charNDArray::any_element_is_nan): New function.
-
-2009-01-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LIBRARIES, install, uninstall): Use SHLLIBPRE
-	and SHLBINPRE library prefixes.
-	From Marco Atzeri <marco_atzeri@yahoo.it>.
-
-2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::Matrix (const RowVector&)): Use shallow copy.
-	(Matrix::Matrix (const ColumnVector&)): Ditto.
-	(Matrix::row): Ditto.
-	(Matrix::column): Ditto.
-
-	* fMatrix.cc (FloatMatrix::FloatMatrix (const FloatRowVector&)): Use
-	shallow copy.
-	(FloatMatrix::FloatMatrix (const FloatColumnVector&)): Ditto.
-	(FloatMatrix::row): Ditto.
-	(FloatMatrix::column): Ditto.
-
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const ComplexRowVector&)):
-	Use shallow copy.
-	(ComplexMatrix::ComplexMatrix (const ComplexColumnVector&)): Ditto.
-	(ComplexMatrix::row): Ditto.
-	(ComplexMatrix::column): Ditto.
-
-	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix (const FloatComplexRowVector&)):
-	Use shallow copy.
-	(FloatComplexMatrix::FloatComplexMatrix (const FloatComplexColumnVector&)): Ditto.
-	(FloatComplexMatrix::row): Ditto.
-	(FloatComplexMatrix::column): Ditto.
-
-2009-01-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* Makefile.in (LINK_DEPS): Include ARPACK_LIBS and REGEX_LIBS in
-	the list.
-
-2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQR.cc (QR::init): Use form. Use local buffers.
-	Query for optimal block size.
-	(QR::form): New function.
-	* dbleQR.h: Declare it.
-	* dbleQRP.cc (QRP::init):Use form. Use local buffers.
-	Query for optimal block size.
-
-	* floatQR.cc (FloatQR::init): Use form. Use local buffers.
-	Query for optimal block size.
-	(FloatQR::form): New function.
-	* floatQR.h: Declare it.
-	* floatQRP.cc (FloatQRP::init):Use form. Use local buffers.
-	Query for optimal block size.
-
-	* CmplxQR.cc (ComplexQR::init): Use form. Use local buffers.
-	Query for optimal block size.
-	(ComplexQR::form): New function.
-	* CmplxQR.h: Declare it.
-	* CmplxQRP.cc (ComplexQRP::init):Use form. Use local buffers.
-	Query for optimal block size.
-
-	* fCmplxQR.cc (FloatComplexQR::init): Use form. Use local buffers.
-	Query for optimal block size.
-	(FloatComplexQR::form): New function.
-	* fCmplxQR.h: Declare it.
-	* fCmplxQRP.cc (FloatComplexQRP::init):Use form. Use local buffers.
-	Query for optimal block size.
-
-2009-01-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::assign (const idx_vector&, const Array<T>&)):
-	Optimize assignment to an empty array.
-	(Array<T>::assign (const idx_vector&, const idx_vector&, const Array<T>&)):
-	Optimize assignment to an empty array.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array2.h (Array2<T>::index): Declare resize_ok as bool.
-	* ArrayN.h (ArrayN<T>::index): Ditto. Declare index vectors as const
-	refs.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Range.cc (sort_internal): Add missing test.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::index (..., bool resize_ok)):
-	Optimize the all-scalar-indices cases.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQR.h: Optionally declare warn_qrupdate_once.
-	* dbleQR.cc: Define it.
-	* (CmplxQR.h, dbleQR.h, fCmplxQR.h, floatQR.h): Declare replacement
-	methods unconditionally.
-	* (CmplxQR.cc, dbleQR.cc, fCmplxQR.cc, floatQR.cc): Define
-	updating replacement methods.
-	* (CmplxCHOL.h, dbleCHOL.h, fCmplxCHOL.h, floatCHOL.h): Declare
-	replacement methods unconditionally.
-	* (CmplxCHOL.cc, dbleCHOL.cc, fCmplxCHOL.cc, floatCHOL.cc): Define
-	updating replacement methods.
-
-2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Range.cc ( operator + (double x, const Range& r),
-	operator + (const Range& r, double x),
-	operator - (double x, const Range& r),
-	operator - (const Range& r, double x),
-	operator * (double x, const Range& r),
-	operator * (const Range& r, double x)): New operators.
-	* Range.h: Declare them.
-
-2009-01-20  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.h, file-stat.cc (class base_file_stat): New base class.
-	(class file_stat): Derive from base_file_stat.
-	(class file_fstat): New class, derived from base_file_stat.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* floatQR.h (FloatQR::update, FloatQR::insert_col,
-	FloatQR::insert_row, FloatQR::delete_col, FloatQR::delete_row,
-	FloatQR::shift_col): Update interfaces.
-
-	* floatQR.cc: Update external decls for qrupdate routines.
-	(FloatQR::update, FloatQR::insert_col, FloatQR::insert_row,
-	FloatQR::delete_col, FloatQR::delete_row, FloatQR::shift_col): Reflect
-	changes in qrupdate interfaces, implement batch updates.
-
-	* dbleQR.h (QR::update, QR::insert_col, QR::insert_row,
-	QR::delete_col, QR::delete_row, QR::shift_col): Update interfaces.
-
-	* dbleQR.cc: Update external decls for qrupdate routines.
-	(QR::update, QR::insert_col, QR::insert_row, QR::delete_col,
-	QR::delete_row, QR::shift_col): Reflect changes in qrupdate
-	interfaces, implement batch updates.
-
-	* fCmplxQR.h (FloatComplexQR::update, FloatComplexQR::insert_col,
-	FloatComplexQR::insert_row, FloatComplexQR::delete_col,
-	FloatComplexQR::delete_row, FloatComplexQR::shift_col): Update
-	interfaces.
-
-	* fCmplxQR.cc: Update external decls for qrupdate routines.
-	(FloatComplexQR::update, FloatComplexQR::insert_col,
-	FloatComplexQR::insert_row, FloatComplexQR::delete_col,
-	FloatComplexQR::delete_row, FloatComplexQR::shift_col): Reflect
-	changes in qrupdate interfaces,
-	implement batch updates.
-
-	* CmplxQR.h (ComplexQR::update, ComplexQR::insert_col,
-	ComplexQR::insert_row, ComplexQR::delete_col, ComplexQR::delete_row,
-	ComplexQR::shift_col): Update interfaces.
-
-	* CmplxQR.cc: Update external decls for qrupdate routines.
-	(ComplexQR::update, ComplexQR::insert_col,
-	ComplexQR::insert_row, ComplexQR::delete_col, ComplexQR::delete_row,
-	ComplexQR::shift_col): Reflect changes in qrupdate interfaces,
-	implement batch updates.
-
-	* floatCHOL.h (FloatCHOL::update, FloatCHOL::downdate,
-	FloatCHOL::insert_sym): Update interfaces.
-	* floatCHOL.cc: Update external decls for qrupdate routines.
-	(FloatCHOL::update, FloatCHOL::downdate, FloatCHOL::insert_sym,
-	FloatCHOL::delete_sym, FloatCHOL::shift_sym): Reflect changes in
-	qrupdate interfaces,
-
-	* CHOL.h (CHOL::update, CHOL::downdate, CHOL::insert_sym): Update
-	interfaces.
-	* CHOL.cc: Update external decls for qrupdate routines.
-	(CHOL::update, CHOL::downdate, CHOL::insert_sym, CHOL::delete_sym,
-	CHOL::shift_sym): Reflect changes in qrupdate interfaces,
-
-	* fCmplxCHOL.h (FloatComplexCHOL::update, FloatComplexCHOL::downdate,
-	FloatComplexCHOL::insert_sym): Update interfaces.
-	* fCmplxCHOL.cc: Update external decls for qrupdate routines.
-	(FloatComplexCHOL::update, FloatComplexCHOL::downdate,
-	FloatComplexCHOL::insert_sym, FloatComplexCHOL::delete_sym,
-	FloatComplexCHOL::shift_sym): Reflect changes in qrupdate interfaces,
-
-	* CmplxCHOL.h (ComplexCHOL::update, ComplexCHOL::downdate,
-	ComplexCHOL::insert_sym): Update interfaces.
-	* CmplxCHOL.cc: Update external decls for qrupdate routines.
-	(ComplexCHOL::update, ComplexCHOL::downdate, ComplexCHOL::insert_sym,
-	ComplexCHOL::delete_sym, ComplexCHOL::shift_sym): Reflect changes in
-	qrupdate interfaces,
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>): Document internal use of slice_data and
-	slice_len.
-
-2009-01-15  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::reshape): Include mismatched dimensions in
-	error message.
-	* Array.cc (Array<T>::reshape): Likewise.
-	From Robert Millan <rmh@aybabtu.com>.
-
-2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::rep, Array<T>::dimensions): Make protected.
-	* Array.cc (Array<T>::make_unique): Move implementation here.
-	(Array<T>::fill): Ditto.
-	* DiagArray2.h (DiagArray2<T>): Reimplement without abusing
-	Array<T> internals.
-	(DiagArray2<T>::operator Array2<T>): New method.
-	* DiagArray2.cc (DiagArray2<T>): Update methods.
-	* MDiagArray2.h (MDiagArray2<T>::operator Array2<T>): Simplify.
-	* PermMatrix.h (PermMatrix): Reimplement without abusing
-	Array<T> internals.
-	* PermMatrix.cc (PermMatrix): Update methods.
-
-2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc, Array.h (all Array<T> constructors): Handle slice_data and
-	slice_len.
-	(Array<T>::Array<T> (const Array<T>&, const dim_vector&,
-	octave_idx_type, octave_idx_type)): New constructor.
-	(Array<T>::index): Use shallow copy when index reduces to a contiguous
-	range.
-	(Array<T>::make_unique): Rewrite.
-	(Array<T>::ArrayRep): Delete redundant methods.
-	(rec_index_helper::is_cont_range): New method.
-	(Array<T>::maybe_economize): New method.
-	* DiagArray2.cc (DiagArray2<T>::resize): Fix the mess.
-
-2008-01-15  Rafael Laboissiere  <rafael@debian.org>
-
-	* oct-md5.cc: Include <cstdio>.
-
-2009-01-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array::ArrayRep::qsort): Remove.
-	(Array::qsort): Remove.
-	* glob-match.cc (glob_match::glob): qsort -> sort.
-	* str-vec.cc (string_vector::compare): Remove.
-	* str-vec.h (string_vector::compare): Remove decl.
-	(string_vector::qsort): Rename to sort, call Array::sort.
-
-2008-12-23  David Bateman  <dbateman@free.fr>
-
-	* eigs-base.cc: New file with template wrapper for ARPACK.
-	* Makefile.in (TEMPLATE_SRC): Add it here.
-
-2008-12-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (rec_permute_helper): New class.
-	(Array<T>::permute): Rewrite using the recursive algorithm.
-
-2008-12-12  David Bateman  <dbateman@free.fr>
-
-	* sparse-base-chol.cc (inverse): Fix inversion based on cholesky
-	factorization.
-
-2008-12-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-locbuf.cc: New source.
-	* oct-locbuf.h (octave_chunk_buffer): New class.
-	(octave_local_buffer): Subclass from octave_chunk_buffer for selected
-	POD types.
-
-2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-op-defs.h (DMDM_BIN_OP): Fix invalid buffer length.
-
-2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.h, dMatrix.cc (Matrix::expm): Remove.
-	* fMatrix.h, fMatrix.cc (FloatMatrix::expm): Remove.
-	* CMatrix.h, CMatrix.cc (ComplexMatrix::expm): Remove.
-	* fCMatrix.h, fCMatrix.cc (FloatComplexMatrix::expm): Remove.
-
-2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* base-aepbal.h: New source.
-	* dbleAEPBAL.h, dbleAEPBAL.cc: Rebase AEPBAL on base_aepbal.
-	* floatAEPBAL.h, floatAEPBAL.cc: Rebase FloatAEPBAL on base_aepbal.
-	* CmplxAEPBAL.h, CmplxAEPBAL.cc: Rebase ComplexAEPBAL on base_aepbal.
-	* fCmplxAEPBAL.h, fCmplxAEPBAL.cc: Rebase FloatComplexAEPBAL on base_aepbal.
-
-2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
-	Sparse<bool>&)): New constructor.
-	* idx_vector.h: Declare it.
-	(idx_vector::idx_vector (const Sparse<bool>&)): New constructor.
-	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
-	Array<bool>&)): Fix extent calculation.
-
-2008-12-09  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (INCLUDES): Add oct-locbuf.h
-
-2008-12-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mx-inlines.cc (mx_inline_fill_vs): New template function.
-	* mx-op-defs.h (everywhere): Replace int by octave_idx_type.
-	(MDM_MULTIPLY_OP): Use mx_inline_mul_vs and mx_inline_fill_vs.
-	(DMM_MULTIPLY_OP): Ditto.
-	* fDiagMatrix.cc (operator *): Remove redundant ifs.
-	* fCDiagMatrix.cc (operator *): Remove redundant ifs.
-
-2008-12-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-locbuf.h (OCTAVE_LOCAL_BUFFER_INIT): New macro.
-
-2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-locbuf.h: New header file.
-	* Array-d.cc, Array-f.cc, Array.cc, CMatrix.cc, CNDArray.cc,
-	CSparse.cc, CmplxCHOL.cc, CmplxGEPBAL.cc, MatrixType.cc,
-	Sparse-op-defs.h, Sparse.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
-	SparseQR.cc, SparsedbleLU.cc, dMatrix.cc, dNDArray.cc, dSparse.cc,
-	data-conv.cc, dbleCHOL.cc, dbleGEPBAL.cc, fCMatrix.cc, fCNDArray.cc,
-	fCmplxCHOL.cc, fCmplxGEPBAL.cc, fMatrix.cc, fNDArray.cc, file-ops.cc,
-	floatCHOL.cc, floatGEPBAL.cc, lo-sysdep.cc, oct-fftw.cc, oct-md5.cc,
-	oct-rand.cc, regex-match.cc, sparse-dmsolve.cc: Include oct-locbuf.h.
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DiagArray2.h (DiagArray2<T>): Inherit Array<T> privately.
-	(DiagArray2<T>::dim1, dim2, rows, columns, cols, length,
-	nelem, numel, byte_size, dims): New methods.
-	(DiagArray2<T>::diag): New method decl.
-	* DiagArray2.cc (DiagArray2<T>::diag): New method.
-	* MDiagArray2.h (MDiagArray2<T>::diag): New method.
-	* dDiagMatrix.cc (DiagMatrix::diag): Remove.
-	* fDiagMatrix.cc (FloatDiagMatrix::diag): Remove.
-	* CDiagMatrix.cc (ComplexDiagMatrix::diag): Remove.
-	* fCDiagMatrix.cc (FloatComplexDiagMatrix::diag): Remove.
-
-	* PermMatrix.h (PermMatrix): Inherit Array<octave_idx_type> privately.
-	(PermMatrix::dim1, dim2, rows, columns, cols, length,
-	nelem, numel, byte_size, dims): New methods.
-
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dDiagMatrix.cc (DiagMatrix::determinant, DiagMatrix::rcond): New
-	method.
-	* dDiagMatrix.h: Declare them.
-	* fDiagMatrix.cc (FloatDiagMatrix::determinant,
-	FloatDiagMatrix::rcond): New methods.
-	* fDiagMatrix.h: Declare them.
-	* CDiagMatrix.cc (ComplexDiagMatrix::determinant,
-	ComplexDiagMatrix::rcond): New methods.
-	* CDiagMatrix.h: Declare them.
-	* fCDiagMatrix.cc (FloatComplexDiagMatrix::determinant,
-	FloatComplexDiagMatrix::rcond): New methods.
-	* fCDiagMatrix.h: Declare them.
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx-vector::complement): Add missing delete.
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQRP.cc (QRP::QRP): Call DGEQP3 rather than DGEQPF.
-	* floatQRP.cc (FloatQRP::FloatQRP): Call SGEQP3 rather than SGEQPF.
-	* CmplxQRP.cc (ComplexQRP::ComplexQRP): Call ZGEQP3 rather than ZGEQPF.
-	* fCmplxQRP.cc (FloatComplexQRP::FloatComplexQRP): Call CGEQP3 rather than CGEQPF.
-
-2008-12-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* PermMatrix.h, PermMatrix.cc: New sources.
-	* MDiagArray2.cc (MDiagArray2<T>::is_multiple_of_identity): New method.
-	* MDiagArray2.h (MDiagArray2<T>::is_multiple_of_identity): Declare it.
-	* idx-vector.cc (idx_vector::is_permutation): New method.
-	* idx-vector.h (idx_vector::is_permutation): Declare it.
-	* base-lu.cc (base_lu::getp): New method.
-	(base_lu::P): Call getp.
-	(base_lu::Pvec): Call getp.
-	* base-lu.h (base_lu): Delcare P as PermMatrix. Remove unused template
-	params.
-	* dbleQRP.cc (dbleQRP::dbleQRP): Construct a permutation matrix.
-	(dbleQRP::Pvec): New method.
-	* dbleQRP.h: Declare new method. Declare P as PermMatrix.
-	* CmplxQRP.cc (ComplexQRP): Likewise.
-	* CmplxQRP.h (ComplexQRP): Likewise.
-	* floatQRP.cc (FloatQRP): Likewise.
-	* floatQRP.h (FloatQRP): Likewise.
-	* fCmplxQRP.cc (FloatComplexQRP): Likewise.
-	* fCmplxQRP.h (FloatComplexQRP): Likewise.
-
-2008-12-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DiagArray2.h (DiagArray2<T>::DiagArray2<T> (const DiagArray2<U>&)): New template
-	constructor.
-	(DiagArray2<T>::elem, xelem, operator ()): Move to header file to
-	enable inlining.
-	* DiagArray2.cc (DiagArray2<T>::elem, xelem, operator ()): Remove
-	implementations.
-	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2<T> (const DiagArray2<U>&)): New template
-	constructor.
-	(MDiagArray2<T>::nnz): New method.
-	* MDiagArray2.cc (MDiagArray2<T>::nnz): Implement it.
-
-	* dDiagMatrix.h (DiagMatrix::DiagMatrix (const DiagArray2<U>&)): New template
-	constructor.
-	(DiagMatrix::abs): New method decl.
-	(real (const ComplexDiagMatrix&), imag (const ComplexDiagMatrix&)):
-	New decls.
-	* dDiagMatrix.cc (DiagMatrix::abs): New method.
-	(operator *(const DiagMatrix&, const DiagMatrix&)): Optimize.
-	(real (const ComplexDiagMatrix&), imag (const ComplexDiagMatrix&)):
-	New functions.
-
-	* fDiagMatrix.h (FloatDiagMatrix::FloatDiagMatrix (const DiagArray2<U>&)): New template
-	constructor.
-	(FloatDiagMatrix::abs): New method decl.
-	(real (const FloatComplexDiagMatrix&), imag (const FloatComplexDiagMatrix&)):
-	New decls.
-	* fDiagMatrix.cc (FloatDiagMatrix::abs): New method.
-	(operator *(const FloatDiagMatrix&, const FloatDiagMatrix&)): Optimize.
-	(real (const FloatComplexDiagMatrix&), imag (const FloatComplexDiagMatrix&)):
-	New functions.
-
-	* CDiagMatrix.h (ComplexDiagMatrix::ComplexDiagMatrix (const DiagArray2<U>&)): New template
-	constructor.
-	(ComplexDiagMatrix::abs): New method decl.
-	(conj (const ComplexDiagMatrix&)): Add missing decl.
-	(ComplexDiagMatrix::all_elements_are_real): New method decl.
-
-	* CDiagMatrix.cc (CDiagMatrix::abs): New method.
-	(operator *(const DiagMatrix&, const ComplexDiagMatrix&)): Optimize.
-	(operator *(const ComplexDiagMatrix&, const DiagMatrix&)): Optimize.
-	(operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)): Optimize.
-	(ComplexDiagMatrix::all_elements_are_real): New method.
-
-	* fCDiagMatrix.h (FloatComplexDiagMatrix::FloatComplexDiagMatrix (const DiagArray2<U>&)): New template
-	constructor.
-	(FloatComplexDiagMatrix::abs): New method decl.
-	(conj (const FloatComplexDiagMatrix&)): Add missing decl.
-	(FloatComplexDiagMatrix::all_elements_are_real): New method decl.
-
-	* fCDiagMatrix.cc (CDiagMatrix::abs): New method.
-	(operator *(const FloatDiagMatrix&, const FloatComplexDiagMatrix&)): Optimize.
-	(operator *(const FloatComplexDiagMatrix&, const FloatDiagMatrix&)): Optimize.
-	(operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)): Optimize.
-	(FloatComplexDiagMatrix::all_elements_are_real): New method.
-
-	* dSparse.cc (SparseMatrix::SparseMatrix (const DiagMatrix&)): New
-	constructor.
-	* dSparse.h (SparseMatrix::SparseMatrix (const DiagMatrix&)): Declare
-	it.
-
-	* CSparse.cc (SparseComplexMatrix::SparseComplexMatrix (const ComplexDiagMatrix&)):
-	New constructor.
-	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix (const ComplexDiagMatrix&)):
-	Declare it.
-	* mx-op-defs.h (DMM_MULTIPLY_OP, MDM_MULTIPLY_OP): Optimize.
-
-2008-11-21  Jarkko Kaleva  <d3roga@gmail.com>
-
-	* EIG.h (EIG::EIG (const Matrix& a, const Matrix& b,
-	bool calc_eigenvectors = true)): New constructor.
-	(EIG::EIG (const Matrix& a, const Matrix& b, octave_idx_type& info,
-	bool calc_eigenvectors = true)): New constructor.
-	(EIG::EIG (const ComplexMatrix& a, const ComplexMatrix& b,
-	bool calc_eigenvectors = true)): New constructor.
-	(EIG::EIG (const ComplexMatrix& a, const ComplexMatrix& b,
-	octave_idx_type& info, bool calc_eigenvectors = true)): New
-	constructor.
-	* EIG.cc (EIG::init (const Matrix& a, const Matrix& b,
-	bool calc_eigenvectors)): New function.
-	(EIG::init (const ComplexMatrix& a, const ComplexMatrix& b,
-	bool calc_eigenvectors)): New function.
-	(EIG::symmetric_init (const Matrix& a, const Matrix& b,
-	bool calc_eigenvectors)): New function.
-	(EIG::hermitian_init (const ComplexMatrix& a, const ComplexMatrix& b,
-	bool calc_eigenvectors)): New function.
-	* fEIG.h (fEIG::fEIG (const FloatMatrix& a, const FloatMatrix& b,
-	bool calc_eigenvectors = true)): New constructor.
-	(fEIG::fEIG (const FloatMatrix& a, const FloatMatrix& b,
-	octave_idx_type& info, bool calc_eigenvectors = true)): New
-	constructor.
-	(fEIG::fEIG (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
-	bool calc_eigenvectors = true)): New constructor.
-	(fEIG::fEIG (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
-	octave_idx_type& info, bool calc_eigenvectors = true)): New
-	constructor.
-	(fEIG::init (const FloatMatrix& a, const FloatMatrix& b,
-	bool calc_eigenvectors)): New function.
-	(fEIG::init (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
-	bool calc_eigenvectors)): New function.
-	(fEIG::symmetric_init (const FloatMatrix& a, const FloatMatrix& b,
-	bool calc_eigenvectors)): New function.
-	(fEIG::hermitian_init (const FloatComplexMatrix& a,
-	const FloatComplexMatrix& b, bool calc_eigenvectors)): New function.
-
-2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::determinant),
-	fMatrix.cc (FloatMatrix::determinant),
-	CMatrix.cc (ComplexMatrix::determinant),
-	fCMatrix.cc (FloatComplexMatrix::determinant):
-	Use atmp(i,i) instead of elem(i,i).
-
-2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DET.h (base_det<T>::square): New member function.
-	* dMatrix.cc (Matrix::determinant),
-	fMatrix.cc (FloatMatrix::determinant),
-	CMatrix.cc (ComplexMatrix::determinant),
-	fCMatrix.cc (FloatComplexMatrix::determinant):
-	Allow taking MatrixType argument.
-	* dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h: Update decls.
-
-2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DET.h: New source.
-	* CmplxDET.cc, CmplxDET.h, dbleDET.cc, dbleDET.h, fCmplxDET.cc,
-	fCmplxDET.h, floatDET.cc, floatDET.h: Remove.
-	* Makefile.in: Reflect changes.
-	* mx-defs.h: Remove DET decls.
-	* mx-ext.h, dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h,
-	dSparse.h, CSparse.h: Include only DET.h.
-	* dMatrix.cc (Matrix::determinant),
-	fMatrix.cc (FloatMatrix::determinant),
-	CMatrix.cc (ComplexMatrix::determinant),
-	fCMatrix.cc (FloatComplexMatrix::determinant),
-	dSparse.cc (SparseMatrix::determinant),
-	CSparse.cc (SparseComplexMatrix::determinant): Use new class.
-
-2008-11-18  David Bateman  <dbateman@free.fr>
-
-	* file-ops.cc (std::string file_ops::tilde_expand (const
-	std::string&)): Check if the string contains a tilde and fast
-	return if not.
-
-2008-11-17  John W. Eaton  <jwe@octave.org>
-
-	* dir-ops.cc (dir_entry::read): Use std::list<std::string> to
-	cache names before converting to string_vector.
-
-2008-11-14  David Bateman  <dbateman@free.fr>
-
-	* Array2.h (Array2<T> Array2<T>::index): Correct use of
-	resize_fill_value.
-
-2008-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* MArray-C.cc, MArray-d.cc, MArray-f.cc, MArray-fC.cc: Declare
-	MArray<T>::norm specialization before implicit MArray<T> implicit
-	instantiation.
-	* idx-vector.h (class idx_vector::idx_base_rep, class
-	idx_vector::idx_range_rep, class idx_vector::idx_colon_rep, class
-	idx_vector::idx_scalar_rep, class idx_vector::idx_vector_rep): Add
-	OCTAVE_API tag.
-	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep(T),
-	idx_vector::idx_vector_rep::idx_vector_rep(const Array<T>&)): Ditto.
-	* oct-inttypes.cc (octave_int<T>::type_name): Ditto.
-	* oct-inttypes.cc (powf(const octave_int<T>&,const float&)): Cast 'b'
-	to double.
-	* oct-inttypes.h: Undefine min/max.
-	* oct-norm.h (xnorm, xfrobnorm, xcolnorms, xrownorms): Add OCTAVE_API
-	tag.
-	* oct-norm.cc (xnorm, xfrobnorm, xcolnorms, xrownorms): Ditto.
-
-2008-11-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DiagArray2.h (DiagArray2<T>::maybe_delete_elements): Remove
-	declaration.
-
-2008-11-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-norm.cc: Don't include Array.cc.
-	(column_norms (const MArray2<T>&, ...)): Use std::vector instead of Array<T> for
-	accumulator containers. Use empty constructor instead of
-	Array<T>::resize.
-	(row_norms (const MArray2<T>&, ...)): Ditto.
-	(column_norms (const MSparse2<T>&, ...)): Ditto.
-	(row_norms (const MSparse2<T>&, ...)): Ditto.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-norm.h: New header file.
-	* oct-norm.cc: New source.
-	* CSparse.cc (SparseComplexMatrix::row, SparseComplexMatrix::column):
-	New member functions.
-	* CSparse.h (SparseComplexMatrix): Declare them.
-	* dSparse.cc (SparseMatrix::row, SparseMatrix::column):
-	New member functions.
-	* dSparse.h (SparseMatrix): Declare them.
-	* MArray-C.cc (MArray<Complex>::norm),
-	MArray-d.cc (MArray<double>::norm),
-	MArray-fC.cc (MArray<FloatComplex>::norm),
-	MArray-f.cc (MArray<float>::norm): Wrap a call to xnorm.
-
-	* MArray-defs.h (MARRAY_NORM_BODY): Remove.
-
-2008-11-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.cc (idx_vector::is_complement): Set resulting extent
-	correctly.
-	* Array.cc (Array<T>::delete_elements (int, const idx_vector&)):
-	Fix check for invalid dim.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::idx_range_rep::extent): Don't change
-	extent when len is zero.
-	* idx-vector.h (idx_vector::idx_range_rep::idx_range_rep (void)):
-	Create empty range by default.
-
-2008-10-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int_abs): New function.
-	(octave_int_arith_base<T, true>::div): Use octave_int_abs instead of
-	std::abs.
-	* oct-inttypes.cc (octave_int_arith_base<int64_t, true>): Ditto.
-
-2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-C.cc Array-d.cc Array-f.cc Array-fC.cc Array-i.cc Array-s.cc:
-	Don't use semicolon after INSTANTIATE_ARRAY_ASSIGN.
-	* Array-util.h (zero_dims_inquire): New declarations.
-	(is_in, how_many_lgt, short_freeze): Remove declarations.
-	* Array-util.cc (zero_dims_inquire): New functions.
-	(is_in, how_many_lgt, short_freeze): Remove functions.
-	* Array.cc (Array<T>::index, Array<T>::resize_fill, Array<T>::resize,
-	Array<T>::assign, Array<T>::delete_elements):
-	Rewrite.
-	* Array.h (Array<T>::index, Array<T>::resize_fill, Array<T>::resize,
-	Array<T>::assign, Array<T>::delete_elements):
-	Rewrite interfaces.
-	* Array2.h (Array2<T>::resize): Call Array<T>::resize_fill.
-	* Array3.h (Array3<T>::resize): Call Array<T>::resize_fill.
-	* ArrayN.h (ArrayN<T>::resize): Remove declarations.
-	(ArrayN<T>::index): Fix call to resize_fill_value.
-	* Sparse.cc (assign, assign1): Use zero-based indices.
-	* chMatrix.h: Include mx-op-defs.h
-	* dim-vector.h (dim_vector::any_neg, dim_vector::chop_all_singletons,
-	dim_vector::redim): New member functions.
-	* idx-vector.cc: Mostly rewrite.
-	* idx-vector.h: Mostly rewrite.
-
-2008-10-29  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-specfun.cc (cbesj, cbesy, cbesi, cbesk, cbesh1, cbesh2): Do not
-	use std::complex::real() and std::complex::imag() as l-value, this is
-	not supported under MSVC.
-
-2008-10-28  John W. Eaton  <jwe@octave.org>
-
-	* lo-specfun.cc: Fix prototypes for the Fortran subroutines cbesh,
-	cbesi, cbesj, cbesk, and cbesy.
-	(cbesh, cbesi, cbesj, cbesk, cbesy): Fix calls to Fortran
-	subroutines.
-
-2008-10-28  Brian Gough  <bjg@gnu.org>
-
-	* lo-specfun.cc (zbesi): Fix scaling factor for negative alpha.
-	(cbesi): Likewise.
-
-2008-10-23  John Swensen  <jpswensen@comcast.net>
-
-	* oct-shlib.cc (octave_dyld_shlib::open): Call NSLinkEditError to
-	get better diagnostic if NSLinkModule fails.
-
-2008-10-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.cc (octave_dlopen_shlib::open): Use RTLD_NOW instead
-	of RTLD_LAZY.
-
-2008-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CSparse.cc (ComplexMatrix::expm): Improve inverse preconditioning
-	according to Marco Caliari.
-	* dSparse.cc (Matrix::expm): Likewise.
-	* fCSparse.cc (FloatComplexMatrix::expm): Likewise.
-	* fSparse.cc (FloatMatrix::expm): Likewise.
-
-2008-10-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* sparse-util.h (SparseCholPrint): Change char * argument to const
-	char *.
-	* sparse-util.cc (SparseCholPrint): Likewise.
-
-2008-10-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-sort.cc (octave_sort<T>::merge_getmem,
-	octave_sort<T>::merge_freemem): Replace malloc -> new [], free ->
-	delete [].
-	(octave_sort<T>::merge_lo, octave_sort<T>::merge_hi): Replace
-	std::memcpy and std::memmove with std::copy.
-
-2008-10-08  John W. Eaton  <jwe@octave.org>
-
-	* Sparse-op-defs.h (SPARSE_SMSM_BOOL_OPS): Duplicate code for scalar
-	sparse arguments rather than rely on extern function.
-
-2008-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_base_int<T>::compute_threshold): Return
-	exclusive bounds rather than inclusive, be resistant to compiler
-	optimizations.
-	(octave_base_int<T>::convert_real): Use exclusive bounds.
-
-2008-10-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (OCTAVE_INT_DOUBLE_BIN_OP): Change octave_int64 to
-	octave_uint64 where appropriate.
-
-2008-10-06  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SMSM_CMP_OPS): Duplicate code for scalar
-	sparse arguments rather than rely on extern function.
-
-2008-10-06  John W. Eaton  <jwe@octave.org>
-
-	* Spasre-op-defs.h: Undo previous change.
-
-2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int<T>::one, octave_int<T>::zero): Declare
-	constants.
-	* oct-inttypes.cc: Define them.
-	* oct-inttypes.h: Define mixed operations via long double if possible.
-	* oct-inttypes.cc: Define alternative implementations for 64-bit
-	multiplication and mixed operations.
-	* mx-ops: Instantiate all 64-bit integer operations.
-
-2008-10-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-lookup.h: Mark functions inline. Add missing std:: qualifiers.
-
-2008-10-06  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.h (Sparse<T>::elt_type): New typedef.
-	* Sparse-op-defs.h (SPARSE_SMSM_BOOL_OP, SPARSE_MSM_CMP_OP):
-	Use it to call sparse-matrix/scalar operator instead of attempting
-	to instantiate mixed-type sparse-matrix/scalar operators.
-
-2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::maybe_delete_elements): Remove rfv argument from
-	declaration.
-	* Array.cc (Array<T>::maybe_delete_elements): Remove all usages of
-	rfv.
-
-2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (assignN): Do not call maybe_delete_elements when
-	for empty matrix.
-
-2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h: Mostly rewrite.
-	* oct-inttypes.cc: Modstly rewrite.
-
-2008-09-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (Array<T>::maybe_delete_elements_2(idx_vector&)): Return on
-	empty index vector.
-
-2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (assign1, assign2, assignN): Do not call
-	maybe_delete_elements.
-	(maybe_delete_elements (Array<idx_vector>&)): Call the 1D and 2D
-	special handlers if possible.
-	* Sparse.cc (assign1, assign2, assignN): Do not call
-	maybe_delete_elements.
-
-2008-09-22  Brian Gough  <bjg@gnu.org>
-
-	* oct-rand.cc (initialize_mersenne_twister): Use separate
-	initializations for each generator to avoid correlation.
-
-2008-09-12  Jaroslav Hajek  <highegg@gmail.com>
-
- 	* oct-inttypes.h (pow (const octave_int<T>&, const octave_int<T>&)):
-
-2008-09-19  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign1, assign2, assignN):
-	Clear lhs index before throwing error.
-	(Array<T>::value): Clear index before throwing error.
-
-2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (maybe_delete_elements_2 (idx_vector&)): Fix tests to get
-	better Matlab compatibility.
-	(maybe_delete_elements (idx_vector&, idx_vector&)): Fix tests to get
-	better Matlab compatibility, simplify, gripe on invalid 2-D deletion.
-
-2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.h (Array<T>::coerce): Use octave_idx_type instead of int.
-
-2008-09-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (pow (const octave_int<T>&, const octave_int<T>&)):
-	Handle negative exponent correctly.
-
-2008-08-19  David Bateman  <dbateman@free.fr>
-
-	* oct-inttypes.h (template <class T1, class T2> inline T2
-	octave_int_fit_to_range (const T1&, const T2&, const T2&),
-	template <typename T> inline T octave_int_fit_to_range (const
-	double&, const T&, const T&), template <> inline T2
-	octave_int_fit_to_range<T1, T2> (const T1&, const T2&, const T2&),
-	OCTAVE_S_US_FTR): Check and flag integer trunctation.
-	(OCTAVE_INT_FIT_TO_RANGE, OCTAVE_INT_FIT_TO_RANGE2): Adapt for the
-	above change.
-	(OCTAVE_INT_CONV_FIT_TO_RANGE): New macro for conversion to
-	integer types.
-	(octave_int<T>::conv_error_type): New enum to flag conversion and
-	math warnings.
-	(octave_int<T>::octave_int (U i), octave_int<T>::octave_int
-	(double i), octave_int<>::octave_int (const octave_int<U>& i)):
-	Flag conversion and math errors other than integer truncation.
-	(octave_int<T> octave_int<T>::operator - (void)): Flag truncation
-	error.
-	(static bool get_trunc_flag (void), static bool clear_trunc_flag
-	(void, static bool trunc_flag)): Delete.
-	(static int get_conv_flag (void), static bool get_trunc_flag (void),
-	static bool get_nan_flag (void), static bool get_non_int_flag (void),
-	static bool get_math_trunc_flag (void), static void
-	clear_conv_flag (void)): New functions to query and reset
-	conversion and mathw arning state.
-	(static int cov_flag): New parameter holding current conversion
-	and math warning state. Set it to zero.
-	(template <class T> octave_int<T> powf (float, const
-	octave_int<T>&), template <class T> octave_int<T> powf (const
-	octave_int<T>&, float)): New functions.
-
-2008-08-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-ieee.cc (octave_ieee_init): Try to ensure that octave_NaN is
-	classified as positive by lo_ieee_signbit.
-
-2008-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array.cc (no_op_fcn): New static function.
-	(Array<T>::hermitian): If fcn is null, set to no_op_fcn.
-
-2008-08-07  John W. Eaton  <jwe@octave.org>
-
-	* sprse-base-chol.h, oct-sparse.h: Don't include config.h.
-
-	* cmd-edit.cc, file-ops.h, kpse.cc, oct-env.cc, pathsearch.cc:
-	Replace all uses of NPOS with std::string::npos.
-
-	* fCmplxLU.h, CmplxLU.h: Fix typo in definition of
-	multiple-inclusion guard macro.
-
-2008-08-05  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.h, file-ops.cc (file_ops::static_members):
-	New singleton class for static members of file_ops.
-
-	* pathsearch.h, pathsearch.cc (class dir_path::static_members):
-	New singleton class for static members of dir_path.
-
-	* pathsearch.cc (dir_path::init): Move octave_kpathsea_initialized
-	here from file scope.
-
-2008-08-04  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::do_set_program_name,
-	octave_env::do_base_pathname): Fix usage of
-	file_ops::dir_sep_chars.
-	(octave_env::do_make_absolute): Fix usage of
-	file_ops::dir_sep_chars and file_ops::dir_sep_str.
-	(octave_env::do_get_home_directory): Fix usage of
-	file_ops::dir_sep_str.
-
-	* file-ops.h (file_ops::do_is_dir_sep): New function.
-	(file_ops_::is_dir_sep): Call it.
-	* file-ops.cc (class file_ops): Make it a proper singleton object.
-	(file_ops::file_ops): New constructor.
-	(file_ops::instance_ok): New function.
-	(file_ops::xdir_sep_char): Now private.  No longer static.  Rename
-	from dir_sep_char.
-	(file_ops::xdir_sep_str): Likewise, from dir_sep_str.
-	(file_ops::xdir_sep_chars): Likewise, from dir_sep_chars.
-	(file_ops::dir_sep_char, file_ops::dir_sep_str,
-	file_ops::dir_sep_chars): New functions.
-	(file_ops::recursive_rmdir): Fix usage of file_ops::dir_sep_str.
-	(file_ops::concat): Fix usage of file_ops::dir_sep_char.
-
-	* oct-env.cc (octave_env::instance_ok): Fix typo in error message.
-
-2008-07-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h: Style fixes.
-
-2008-07-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-inttypes.h (octave_int<T>::trunc_flag): New member static field.
-	(octave_int<T>::get_trunc_flag, octave_int<T>::clear_trunc_flag): New
-	member functions.
-	(octave_int<T>::octave_int (const octave_int<U>&)): set trunc_flag
-	on truncation.
-	(SPECIALIZE_WIDENING_CONVERSION): New macro.
-	(DECLARE_OCTAVE_INT_TYPENAME): New macro.
-
-2008-07-29  David Bateman  <dbateman@free.fr>
-
-	* lo-ieee.h (LO_IEEE_NA_HW, LO_IEEE_NA_LW, LO_IEEE_NA_FLOAT):
-	Change definition so cast from single to double and visa versa
-	maintains NA value.
-	(LO_IEEE_NA_HW_OLD, LO_IEEE_NA_LW_OLD): Keep old values.
-	(extern OCTAVE_API int __lo_ieee_is_old_NA (double)): Function to
-	detect old NA value.
-	(extern OCTAVE_API double __lo_ieee_replace_old_NA (double)):
-	Function to replace old NA value with new new.
-	* lo-cieee.c (int __lo_ieee_is_old_NA (double)): Function to
-	detect old NA value.
-	(double __lo_ieee_replace_old_NA (double)): Function to replace
-	old NA value with new new.
-	* data-conv.cc (void read_doubles(std::istream&, double *,
-	save_type, int, bool, octave_mach_info::float_format)): Test if
-	loaded NA values is the old representation and replace it.
-
-2008-07-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-math.h: Ensure log2 is undefined from cmath in C++ mode.
-
-2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-mutex.h (octave_base_mutex::octave_base_mutex): Initialize
-	count to 1, not -1.
-
-	* oct-mutex.cc (octave_base_mutex::lock, octave_base_mutex::unlock):
-	Replace error calls with (*current_liboctave_error_handler).
-
-2008-07-21  John W. Eaton  <jwe@octave.org>
-
-	* regex-match.cc (regex_match::init): Initialize err to 0.
-
-2008-07-19  John W. Eaton  <jwe@octave.org>
-
-	* oct-mutex.h (class octave_base_mutex): New class.
-	(class octave_mutex): Don't use union for rep and count.
-	(octave_mutex::rep): Declare as octave_base_mutex.
-	(octave_mutex::count): Delete.
-	(octave_mutex::lock, octave_mutex::unlock): No longer virtual.
-	(octave_mutex::~octave_mutex): No need to check that rep is
-	valid or set rep to zero after deleting.
-	(octave_mutex::operator =): No need to check that rep is valid.
-	* oct-mutex.cc (octave_w32_mutex, octave_pthread_mutex): Derive
-	from octave_base_mutex, not octave_mutex.
-
-2008-07-18  John W. Eaton  <jwe@octave.org>
-
-	* oct-mutex.h (octave_mutex::octave_mutex (int)): Initialize rep
-	to 0, not count.
-	* oct-mutex.cc (octave_mutex::octave_mutex (void)): Set rep->count
-	to 1 instead of incrementing it.
-
-2008-07-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* dNDArray.cc: Do not include ctor NDArray(Array<octave_idx_type>,
-	bool, bool) into conditional HAVE_FFTW3 preprocessor statement.
-
-2008-07-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-mutex.h (octave_autolock::octave_autolock (void),
-	octave_autolock (const octave_autolock&),
-	octave_autolock::operator = (const octave_autolock&)):
-	Delete definitions.
-
-2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* cmd-edit.cc (event_hook_lock): New static mutex variable.
-	(command_editor::event_handler): Lock and copy event_hook_set before
-	executing handlers.
-	(command_editor::add_event_hook, command_editor::remove_event_hook):
-	Autolock event_hook_lock.
-
-2008-07-15  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-mutex.h, oct-mutex.cc: New files.
-	* Makefile.in: Add them to appropriate lists.
-
-2008-07-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.cc, oct-sort.h (octave_sort<T>::count_run): Declare
-	descending arg as bool&.
-	(octave_sort<T>::sort): Pass bool to count_run for descending arg.
-
-2008-07-11  John W. Eaton  <jwe@octave.org>
-
-	* dDiagMatrix.cc (DiagMatrix::diag): Return empty ColumnVector if
-	number of rows or columns is 0.
-	* fDiagMatrix.cc (FloatDiagMatrix::diag): Likewise.
-
-	* Array-util.cc (is_vector): Avoid GCC warning.
-	* Array-f.cc (Array<float>::sort): Likewise.
-	* Array-d.cc (Array<double>::sort): Likewise.
-	* dbleQR.cc (QR::QR (const Matrix&, const Matrix&)): Likewise.
-	* CmplxQR.cc (ComplexQR::ComplexQR (const ComplexMatrix&, const
-	ComplexMatrix&)): Likewise.
-	* floatQR.cc (FloatQR::FloatQR (const FloatMatrix&, const
-	FloatMatrix&)): Likewise.
-	* fCmplxQR.cc (FloatComplexQR::FloatComplexQR (const
-	FloatComplexMatrix&, const FloatComplexMatrix&)): Likewise.
-	* Quad.cc (IndefQuad::do_integrate (octave_idx_type&,
-	octave_idx_type&, float&), FloatIndefQuad::do_integrate,
-	DefQuad::do_integrate octave_idx_type&, octave_idx_type&, float&,
-	FloatIndefQuad::do_integrate): Likewise.
-
-	* mx-op-defs.h (MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP,
-	SND_BOOL_OP, NDND_BOOL_OP): Detect NaN values.
-	* Array-util.cc (gripe_nan_to_logical_conversion): New function.
-	* Array-util.h: Provide decl.
-	* oct-inttypes.h (xisnan (octave_int<T>)): New function.
-	* lo-mappers.h (xisnan (bool), xisnan (char)): New inline functions.
-
-	* CMatrix.cc, CNDArray.cc, CSparse.cc, dMatrix.cc, dNDArray.cc,
-	dSparse.cc, fCMatrix.cc, fCNDArray.cc, fMatrix.cc, fNDArray.cc:
-	New member function, any_element_is_nan.
-	* CMatrix.h, CNDArray.h, CSparse.h, dMatrix.h, dNDArray.h,
-	dSparse.h, fCMatrix.h, fCNDArray.h, fMatrix.h, fNDArray.h:
-	Provide decl.
-
-2008-07-10  David Bateman  <dbateman@free.fr>
-
-	* dNDArray.cc (NDArray::NDArray (const Array<octave_idx_type>&,
-	bool, bool)): New constructor.
-	* dNDArray.h: Provide decl.
-
-2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-specfun.h: Fix typo in erff/erfcf declaration.
-	* lo-specfun.cc: Ditto. Add atanhf implementation.
-
-2008-06-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* MatrixType.h: Add missing include statement.
-
-2008-06-13  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-mappers.cc (arg): Remove ambiguity about atan2(float,float) usage.
-	* fCmplxDET.cc (FloatComplexDET::initialize10): Likewise, for pow.
-
-2008-06-11  John W. Eaton  <jwe@octave.org>
-
-	* so-array.h, so-array.cc, Array-so.cc: Delete.
-	* Makefile.in: Remove them from the lists.
-
-2008-06-05  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.cc (octave_base_shlib::remove): Only dereference
-	counter if iterator is valid.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* fCmplxDET.cc (FloatComplexDET::value_will_overflow,
-	FloatComplexDET:value_will_underflow): Replace DBL_MIN and DBL_MAX
-	with FLT_MIN and FLT_MAX.
-	* floatDET.cc ((FloatDET::value_will_overflow,
-	FloatDET:value_will_underflow): Ditto.
-	* lo-cieee.c (__lo_ieee_float_is_NA): Check only a sngle word for
-	float NA value.
-	(lo_ieee_float_inf_value): Return correct float Infinity value.
-	(lo_ieee_float_NA_value): Return correct float NA value.
-	(lo_ieee_float_NaN_value): Return correct float NaN value.
-	* lo-ieee.cc (octave_ieee_init): Set float NA value correctly.
-	* lo-ieee.h (lo_ieee_float): value of union is of type float.
-	(LO_IEEE_NA_FLOAT): Make NA value a valid float NaN.
-	(LO_IEEE_NA_FLOAT_LW): Delete.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* fCmplxLU.cc (class FloatComplexLU): Correct error in instantiation.
-	* floatLU.cc (class FloatLU): ditto.
-	* floatLU.h (class FloatLU): ditto.
-
-	* floatAEPBAL.cc (octave_idx_type FloatAEPBALANCE::init (const
-	FloatMatrix&, const std::string&)): Use FloatMatrix to initialize
-	balancing_mat.
-
-	* Makefile.in (MATRIX_INC): Add fCmplxAEPBAL.h and floatAEPBAL.h.
-	(MATRIX_SRC): Add fCmplxAEPBAL.cc and floatAEPBAL.cc.
-
-2008-05-21  David Bateman  <dbateman@free.fr>
-
-	* Quad-opts.in: Handle single precision tolerances.
-	* Quad.cc (float_user_fcn): New static variable.
-	(quad_float_fcn_ptr): New typedef.
-	(qagp, quagi): New QUADPACK decls.
-	(float_user_function): New function.
-	(DefQuad::do_integrate, IndefQuad::do_integrate): Float versions.
-	(FloatDefQuad::do_integrate, FloatIndefQuad::do_integrate):
-	New functions.
-	* Quad.h (class Quad): Handle float type.
-	(class FloatDefQuad, class FloatIndefQuad): New classes.
-
-2008-05-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* fCMatrix.h (xgemm): Provide decl.
-	(xcdotc, csyrk, cherk): New F77 decls.
-	* fMatrix.cc (xgemm): New function.
-	(operator * (const FloatMatrix&, const FloatMatrix&)): Simplify.
-	(get_blas_trans_arg): New function.
-	* fCMatrix.h (xgemm): Provide decl.
-	(ssyrk): New F77 decl.
-	* fCMatrix.cc (xgemm): New function.
-	(operator * (const FloatComplexMatrix&, const
-	FloatComplexMatrix&)): Simplify.
-	(get_blas_trans_arg): New function.
-
-	* dMatrix.cc, CMatrix.cc, Sparse-op-defs.h: Add missing copyright.
-
-	* Sparse-op-defs.h (SPARSE_FULL_MUL): Simplify scalar*matrix case.
-	Correct indenting.
-	(SPARSE_FULL_TRANS_MUL): New macro.
-	(FULL_SPARSE_MUL): Simplify scalar*matrix case. Correct indenting.
-	Move OCTAVE_QUIT one level up.
-	(FULL_SPARSE_MUL_TRANS): New macro.
-	* dSparse.h (mul_trans, trans_mul): Provide decl.
-	* dSparse.cc (mul_trans, trans_mul): New functions.
-	* CSparse.h (mul_trans, trans_mul, mul_herm, herm_mul): Provide decl.
-	* CSparse.cc (mul_trans, trans_mul, mul_herm, herm_mul): New functions.
-
-	* dMatrix.h (xgemm): Provide decl.
-	* dMatrix.cc (xgemm): New function.
-	(operator * (const Matrix&, const Matrix&)): Simplify.
-	(get_blas_trans_arg): New function.
-	* CMatrix.h (xgemm): Provide decl.
-	* CMatrix.cc (xgemm): New function.
-	(operator * (const ComplexMatrix&, const ComplexMatrix&)): Simplify.
-	(get_blas_trans_arg): New function.
-
-	* MatrixType.cc (matrix_real_probe, matrix_complex_probe):
-	New template functions.
-	(MatrixType::MatrixType (const Matrix&),
-	MatrixType::MatrixType (const FloatMatrix&)):
-	just call matrix_real_probe.
-	(MatrixType::MatrixType (const ComplexMatrix&),
-	MatrixType::MatrixType (const FloatComplexMatrix&)):
-	just call matrix_complex_probe.
-
-	* MatrixType.cc (MatrixType::MatrixType (matrix_type, bool)):
-	add missing test for Unknown.
-
-2008-05-21  David Bateman  <dbateman@free.fr>
-
-	* fCMatrix.cc (float rcond): Replace with float rcon everywhere
-	to avoid shadowed variable warning
-	(float ComplexMatrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(float ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
-	* fCMatrix.h (float rcond):  Replace with float rcon everywhere
-	to avoid shadowed variable warning
-	(float ComplexMatrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(float ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
-	* fMatrix.cc (float rcond): Replace with float rcon everywhere
-	to avoid shadowed variable warning
-	(float Matrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(float Matrix::rcond (MatrixType &mattype) const): ditto.
-	* fMatrix.h (float rcond):  Replace with float rcon everywhere
-	to avoid shadowed variable warning
-	(float Matrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(float Matrix::rcond (MatrixType &mattype) const): ditto.
-
-	* Array.cc: Fix transpose tests.
-
-	* CmplxGEBAL.cc (ComplexGEPBALANCE), dbleGEPBAL.cc (GEPBALANCE),
-	fCmplxGEPBAL.cc (FloatComplexGEPBALANCE), floatGEPBAL.cc
-	(FloatGEPBALANCE): New class for generalized eigenvalue balancing.
-	* CmplxGEBAL.h (ComplexGEPBALANCE), dbleGEPBAL.h (GEPBALANCE),
-	fCmplxGEPBAL.h (FloatComplexGEPBALANCE), floatGEPBAL.h
-	(FloatGEPBALANCE): Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatAEPBAL.cc (FloatAEPBALANCE), fCmplxAEPBAL.cc
-	(FloatComplexAEPBALANCE): New classes for single precision
-	Algebraic eignvalue balancing.
-	* floatAEPBAL.h (FloatAEPBALANCE), fCmplxAEPBAL.h
-	(FloatComplexAEPBALANCE): Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatHESS.cc (FloatHESS), fCmplxHESS.cc (FloatComplexHESS):  New
-	classes for single precision Hessenberg decomposition.
-	* floatHESS.h (FloatHESS), fCmplxHESS.h (FloatComplexHESS):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatQR.cc (FloatQR), fCmplxQR.cc (FloatComplexQR):  New
-	classes for single precision QR decomposition.
-	* floatQR.h (FloatQR), fCmplxQR.h (FloatComplexQR):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatQRP.cc (FloatQRP), fCmplxQRP.cc (FloatComplexQRP):  New
-	classes for single precision permuted QR decomposition.
-	* floatQRP.h (FloatQRP), fCmplxQRP.h (FloatComplexQRP):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* mx-defs (FloatAEPBALANCE, FloatComplexAEPBALANCE,
-	ComplexGEPBALANCE, FloatGEPBALANCE,FloatComplexGEPBALANCE,
-	FloatHESS, FloatComplexHESS, FloatQR, FloatComplexQR, QRP,
-	ComplexQRP, FloatQRP, FloatComplexQRP):	Declare classes.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T> Array<T>::transpose () const): Modify for tiled
-	transpose to limit the number of cache misses.
-	(Array<T> Array<T>::hermitian (T (*)(const&)) const): New method
-	for matrix conjugate transpose.
-	* Array.h (Array<T> hermitian (T (*)(const&)) const): Declare it.
-
-	* DiagArray2.cc (DiagArray2<T> DiagArray2<T>::transpose () const):
-	Specialization for diagonal arrays.
-	(DiagArray2<T> DiagArray2<T>::transpose (T (*) (const&)) const):
-	Ditto.
-
-	* MArray.h (MArray<T> hermitian <T (*) (const&)) const): New method.
-	(MArray<T> transpose () const): Ditto.
-	* MArray2.h (MArray2<T> hermitian <T (*) (const&)) const): Ditto.
-	* Array2.h (Array2<T> hermitian <T (*) (const&)) const): Ditto.
-	* ArrayN.h (ArrayN<T> hermitian <T (*) (const&)) const): Ditto.
-	* MDiagArray2.h (MDiagArray2<T> transpose () const): Ditto.
-	(MDiagArray<T> hermitian <T (*) (const&)) const): Ditto.
-
-	* CColVector.cc (transpose, hermitian): Define in terms of base class.
-	* CRowVector.cc (transpose, hermitian): Ditto.
-	* dColVector.cc (transpose): Ditto.
-	* dRowVector.cc (transpose): Ditto.
-	* CDiagMatrix.h (transpose, hermitian): Ditto.
-	* dDiagMatrix.h (transpose): Ditto.
-
-	* fCColVector.cc (transpose, hermitian): Define in terms of base class.
-	* fCRowVector.cc (transpose, hermitian): Ditto.
-	* fColVector.cc (transpose): Ditto.
-	* fRowVector.cc (transpose): Ditto.
-	* fCDiagMatrix.h (transpose, hermitian): Ditto.
-	* fDiagMatrix.h (transpose): Ditto.
-
-	* CDiagMatrix.cc (ComplexDiagMatrix::transpose,
-	ComplexDiagMatrix::hermitian): Delete.
-	* dDiagMatrix.cc (DiagMatrix::transpose): Ditto.
-	* CMatrix.cc (ComplexMatrix::hermitian): Ditto.
-
-	* fCDiagMatrix.cc (FloatComplexDiagMatrix::transpose,
-	FloatComplexDiagMatrix::hermitian): Delete.
-	* fDiagMatrix.cc (FloatDiagMatrix::transpose): Ditto.
-	* fCMatrix.cc (FloatComplexMatrix::hermitian): Ditto.
-
-	* lo-mappers.cc (FloatComplex xlog2(const FloatComplex&), float
-	xlog2 (flot, int&), FloatComplex xlog2(const FloatComplex&, int&)):
-	New mapper functions for single precion values.
-	* lo-mappers.h (FloatComplex xlog2(const FloatComplex&), float
-	xlog2 (flot, int&), FloatComplex xlog2(const FloatComplex&, int&)):
-	Declare them.
-
-	* CmplxGEBAL.cc (ComplexGEPBALANCE), dbleGEPBAL.cc (GEPBALANCE),
-	fCmplxGEPBAL.cc (FloatComplexGEPBALANCE), floatGEPBAL.cc
-	(FloatGEPBALANCE): New class for generalized eigenvalue balancing.
-	* CmplxGEBAL.h (ComplexGEPBALANCE), dbleGEPBAL.h (GEPBALANCE),
-	fCmplxGEPBAL.h (FloatComplexGEPBALANCE), floatGEPBAL.h
-	(FloatGEPBALANCE): Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatAEPBAL.cc (FloatAEPBALANCE), fCmplxAEPBAL.cc
-	(FloatComplexAEPBALANCE): New classes for single precision
-	Algebraic eignvalue balancing.
-	* floatAEPBAL.h (FloatAEPBALANCE), fCmplxAEPBAL.h
-	(FloatComplexAEPBALANCE): Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatHESS.cc (FloatHESS), fCmplxHESS.cc (FloatComplexHESS):  New
-	classes for single precision Hessenberg decomposition.
-	* floatHESS.h (FloatHESS), fCmplxHESS.h (FloatComplexHESS):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatQR.cc (FloatQR), fCmplxQR.cc (FloatComplexQR):  New
-	classes for single precision QR decomposition.
-	* floatQR.h (FloatQR), fCmplxQR.h (FloatComplexQR):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* floatQRP.cc (FloatQRP), fCmplxQRP.cc (FloatComplexQRP):  New
-	classes for single precision permuted QR decomposition.
-	* floatQRP.h (FloatQRP), fCmplxQRP.h (FloatComplexQRP):
-	Declare them.
-	* Makefile.in (MATRIX_INC): Include them here.
-	(MATRIX_SRC): and here.
-
-	* mx-defs (FloatAEPBALANCE, FloatComplexAEPBALANCE,
-	ComplexGEPBALANCE, FloatGEPBALANCE,FloatComplexGEPBALANCE,
-	FloatHESS, FloatComplexHESS, FloatQR, FloatComplexQR, QRP,
-	ComplexQRP, FloatQRP, FloatComplexQRP):	Declare classes.
-
-	* Array-f.cc, Array-fC.cc, MArray-f.cc, MArray-fC.cc,
-	fCColVector.cc, fCColVector.h, fCDiagMatrix.cc, fCDiagMatrix.h,
-	fCMatrix.cc, fCMatrix.h, fCNDArray.cc, fCNDArray.h,
-	fCRowVector.cc, fCRowVector.h, fCmplxCHOL.cc, fCmplxCHOL.h,
-	fCmplxDET.cc, fCmplxDET.h, fCmplxLU.cc, fCmplxLU.h,
-	fCmplxSCHUR.cc, fCmplxSCHUR.h, fCmplxSVD.cc, fCmplxSVD.h,
-	fColVector.cc, fColVector.h, fDiagMatrix.cc, fDiagMatrix.h,
-	fEIG.cc, fEIG.h, fMatrix.cc, fMatrix.h, fNDArray.cc, fNDArray.h,
-	fRowVector.cc, fRowVector.h, floatCHOL.cc, floatCHOL.h,
-	floatDET.cc, floatDET.h, floatLU.cc, floatLU.h, floatSCHUR.cc,
-	floatSCHUR.h, floatSVD.cc, floatSVD.h: New files.
-	* Makefile.in (MATRIC_INC, TI_SRC, MATRIX_SRC): Add them.
-
-	* CMatrix.cc, CMatrix.h, CNDArray.cc, CNDArray.h, CmplxDET.cc,
-	MArray-C.cc, MArray-d.cc, MArray-defs.h, MArray.cc, MArray.h,
-	MatrixType.cc, MatrixType.h, SparseCmplxQR.cc, SparseCmplxQR.h,
-	SparseQR.cc, SparseQR.h, dMatrix.cc, dMatrix.h, dNDArray.cc,
-	dNDArray.h, data-conv.cc, data-conv.h, dbleDET.cc, dbleSVD.cc,
-	lo-cieee.c, lo-ieee.cc, lo-ieee.h, lo-mappers.cc, lo-mappers.h,
-	lo-specfun.cc, lo-specfun.h, lo-utils.cc, lo-utils.h, mx-base.h,
-	mx-defs.h, mx-ext.h, mx-inlines.cc, mx-op-defs.h, mx-ops,
-	oct-cmplx.h, oct-fftw.cc, oct-fftw.h, oct-inttypes.h, vx-ops:
-	Allow single precision types.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* CMatrix.cc (double rcond): Replace with double rcon everywhere
-	to avoid shadowed variable warning
-	(double ComplexMatrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(double ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
-	* CMatrix.h (double rcond):  Replace with double rcon everywhere
-	to avoid shadowed variable warning
-	(double ComplexMatrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(double ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
-	* dMatrix.cc (double rcond): Replace with double rcon everywhere
-	to avoid shadowed variable warning
-	(double Matrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(double Matrix::rcond (MatrixType &mattype) const): ditto.
-	* dMatrix.h (double rcond):  Replace with double rcon everywhere
-	to avoid shadowed variable warning
-	(double Matrix::rcond (void) const): New method for
-	reciprocal condition number calculation.
-	(double Matrix::rcond (MatrixType &mattype) const): ditto.
-
-	* regex-match.cc, regex-match.h: New class for simple regular
-	expression matching
-	* Makefile.in (INCLUDES): Add regex-match.h here, and
-	(LIBOCTAVE_CXX_SOURCES): regex-match.cc here.
-
-2008-05-19  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc: Replace some DGBCON with GPBCON where they are
-	incorrectly used.
-
-2008-05-13  David Bateman  <dbateman@free.fr>
-
-	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
-	If len is zero size the index vector in the same manner as if len
-	is not zero.
-
-2008-05-05  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (command_editor::re_read_init_file,
-	gnu_readline::do_re_read_init_file): New functions.
-	* cmd-edit.h (command_editor::re_read_init_file): Provide decl.
-	(command_editor::do_re_read_init_file): New function.
-	* oct-rl-edit.c (octave_rl_re_read_init_file): New function.
-	* oct-rl-edit.h: Provide decl.
-
-2008-05-05  Rafael Laboissiere  <rafael@debian.org>
-
-	* oct-rl-edit.c (octave_read_init_file): Simply call rl_read_init_file.
-
-2008-05-01  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.h (octave_shlib::number_of_functions_loaded):
-	Return size_t instead of int value.
-	* oct-shlib.cc (octave_base_shlib::number_of_functions_loaded):
-	Likewise.
-	(octave_base_shlib::fcn_names): Now a std::map object.
-	Adjust all uses.
-	(octave_base_shlib::fcn_names_iterator,
-	octave_base_shlib::fcn_names_const_iterator): New typedefs.
-	(octave_base_shlib::add_to_fcn_names, octave_base_shlib::remove):
-	Perform reference counting for functions accessed.
-
-2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-mappers.cc (xlog2 (double)): Compute log (2), not log2 (2).
-	(xlog2 (Complex), xlog2 (double, int&), xlog2 (Complex, int&)):
-	New functions.
-	* lo-mappers.h: Provide decls.
-
-2008-04-25  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-lookup.h (seq_lookup): Do not use output value of fill_n (MSVC
-	does not support it).
-
-2008-04-24  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-sysdep.cc (octave_popen2): Don't set PIPE_NOWAIT for parentWrite.
-
-2008-04-21  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
-	Fix for-loop condition.
-
-2008-04-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* CmplxCHOL.cc, CmplxQR.cc, dbleCHOL.cc, dbleQR.cc: Fix calls to error()
-
-2008-04-16  David Bateman  <dbateman@free.fr>
-
-	* Sparse.h (Sparse<T>& operator = (Sparse<T>&)): Move definition
-	of the operator for here
-	* Sparse.cc (Sparse<T>& Sparse<T>::operator = (Sparse<T>&)): To
-	here. Also delete idx.
-	* Array.h (Array<T>& operator = (Array<T>&)): Move definition
-	of the operator for here
-	* Array.cc (Array<T>& Array<T>::operator = (Array<T>&)): To
-	here. Also delete idx.
-
-2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* lo-mappers.cc (xround): Avoid floating-point overflow when input
-	value is equal to bitmax implementation taken from gnulib).
-
-	* file-stat.cc (file_stat::update_internal): Do not strip trailing
-	file separator when path length is equal to 1 (handle case '\') under
-	__WIN32__ platforms.
-
-2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQR.h, dbleQR.cc (QR::shift_cols): New method.
-	* CmplxQR.h, CmplxQR.cc (ComplexQR::shift_cols): New method.
-	* dbleCHOL.h, dbleCHOL.cc (CHOL::insert_sym, CHOL::delete_sym,
-	CHOL::shift_sym): New methods.
-	* CmplxCHOL.h, CmplxCHOL.cc (ComplexCHOL::insert_sym,
-	ComplexCHOL::delete_sym, ComplexCHOL::shift_sym): New methods.
-
-2008-04-03  John W. Eaton  <jwe@octave.org>
-
-	* lo-sysdep.cc [__WIN32__ && ! __CYGWIN__]: Include windows.h.
-
-2008-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-lookup.h: New file.
-
-2008-03-26  David Bateman  <dbateman@feee.fr>
-
-	* Array.cc (assignN): Additional fix for vector assignments.
-
-2008-03-25  David Bateman  <dbateman@feee.fr>
-
-	* Array.cc (assignN): refactor calculation of new dimensions when
-	original matrix is empty.
-	* Array-util.cc (bool is_vector (const dim_vector&)): New
-	function.
-	* Array-util.h (bool is_vector (const dim_vector&)): declare it.
-
-2008-03-25  David Bateman  <dbateman@free.fr>
-
-	* sparse-base-chol.h (sparse_base_chol_rep::~sparse_base_chol_rep
-	(void)): Only free the factorization if it was created
-	* spase-base-chol.cc (sparse_base_chol_rep::init): Don't attempt
-	to factorize a matrix that has been flagged as not being positive
-	definite.
-
-2008-03-25  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (xtrunc): New function.
-	* lo-mappers.h: Provide decl.
-
-2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* lo-specfun.cc (expm1, log1p): New functions.
-	* lo-specfun.h: Provide decls.
-
-	* lo-mappers.cc (xroundb): New function.
-	* lo-mappers.h: Provide decl.
-
-2008-03-23  David Bateman  <dbateman@free.fr>
-
-	* mx-ops: Definite binary operators for mixed integer array +
-	array case, except for 64bit cases.
-
-2008-03-21  David Bateman  <dbateman@free.fr>
-
-	* oct-sparse.h: Add headers for amd.h.
-
-2008-03-20  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T> Array<T>::diag (octave_idx_type) const): New
-	method for diag function.
-	* Array.h  (Array<T> diag (octave_idx_type) const): Declare it.
-	* Array2.h (Array2<T> diag (octave_idx_type) const): New method.
-	* MArray2.h (MArray2<T> diag (octave_idx_type) const): ditto.
-	* ArrayN.h (ArrayN<T> diag (octave_idx_type) const): ditto.
-	* MArrayN.h (MArrayN<T> diag (octave_idx_type) const): ditto.
-
-	* Sparse.cc (Sparse<T> Sparse<T>::diag (octave_idx_type) const):
-	New method for the diag function.
-	* Sparse.h  (Sparse<T> diag (octave_idx_type) const): Declare it.
-	* MSparse.h (MSparse<T> diag (octave_idx_type) const): New method.
-
-	* Range.cc (Matrix Range::diag (octave_idx_type) const):
-	New method for the diag function.
-	* Range.h  (Matrix diag (octave_idx_type) const): Declare it.
-
-	* CDiagMatrix.cc (ComplexColumnVector ComplexDiagMatrix::diag
-	(void) const): delete.
-	* dDiagMatrix.cc (ColumnVector DiagMatrix::diag (void) const): delete.
-	* dDiagMatrix.h (ColumnVector diag (void) const): ditto.
-	* CMatrix.cc (ComplexColumnVector ComplexMatrix::diag (void) const):
-	delete.
-	* CMatrix.h (ComplexColumnVector diag (void) const): ditto.
-	* dMatrix.cc (ColumnVector Matrix::diag (void) const): ditto.
-	* dMatrix.h (ColumnVector diag (void) const): ditto.
-	* boolMatrix.cc (boolMatrix boolMatrix::diag (void) const): ditto.
-	* boolMatrix.h (boolMatrix diag (void) const): ditto.
-	* chMatrix.cc (charMatrix charMatrix::diag (void) const): ditto.
-	* chMatrix.h (charMatrix diag (void) const): ditto.
-	* intNDArray.cc (intNDArray<T> intNDArray<T>::diag (void) const): ditto.
-	* intNDArray.h (intNDArray<T> diag (void) const): ditto.
-
-	* CMatrix.cc (ComplexMatrix ComplexMatrix::diag (octave_idx_type)
-	const): Rewrite in terms of template classes function.
-	* CMatrix.h (ComplexMatrix diag (octave_idx_type)const ): Change
-	return type.
-	* dMatrix.cc (Matrix Matrix::diag (octave_idx_type) const): Rewrite in
-	terms of template classes function.
-	* dMatrix.h (Matrix diag (octave_idx_type) const): Change return type.
-	* boolMatrix.cc (boolMatrix boolMatrix::diag (octave_idx_type) const):
-	Rewrite in terms of template classes function.
-	* boolMatrix.h (boolMatrix diag (octave_idx_type) const): Change
-	return type.
-	* chMatrix.cc (charMatrix charMatrix::diag (octave_idx_type)
-	const): Rewrite in terms of template classes function.
-
-	* dSparse.cc (SparseMatrix SparseMatrix::diag (octave_idx_type) const):
-	Rewrite in terms of template classes function.
-	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::diag
-	(octave_idx_type) const): ditto.
-	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::diag
-	(octave_idx_type) const): ditto.
-	* intNDArray.cc (intNDArray<T> intNDArray<T>::diag
-	(octave_idx_type) const): ditto.
-
-	* CNDArray.cc (ComplexNDArray ComplexNDArray::diag
-	(octave_idx_type) const): New method.
-	* CNDArray.h (ComplexNDArray diag (octave_idx_type) const):
-	Declare it.
-	* dNDArray.cc (NDArray NDArray::diag (octave_idx_type) const): New
-	method.
-	* dNDArray.h (NDArray diag (octave_idx_type) const): Declare it.
-	* chNDArray.cc (charNDArray charNDArray::diag
-	(octave_idx_type) const): New method.
-	* chNDArray.h (charNDArray diag (octave_idx_type) const):
-	Declare it.
-
-
-2008-03-19  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::do_base_pathname): Also handle rooted
-	relative filenames.
-
-2008-03-19  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (assignN): If orig_empty allow assignment like
-	a(1:10,1)=1:10
-
-	* Sparse.h (template <class U, class F> Sparse<U> map (F fcn)
-	const): New template function.
-	* MSparse.h (template <class U, class F> MSparse<U> map (F fcn)
-	const): ditto.
-	* dSparse.cc (SparseMatrix SparseMatrix::map (dmapper) const,
-	SparseComplexMatrix SparseMatrix::map (cmapper) const,
-	SparseBoolMatrix SparseMatrix::map (bmapper) const): Rewrite in
-	terms of the new template functor.
-	* CSparse.cc (SparseMatrix SparseComplexMatrix::map (dmapper) const,
-	SparseComplexMatrix SparseComplexMatrix::map (cmapper) const,
-	SparseBoolMatrix SparseComplexMatrix::map (bmapper) const): ditto.
-
-2008-03-18  David Bateman  <dbateman@free.fr>
-
-	* lo-specfun.cc (Complex xlgamma (const Complex&)): New function.
-	* lo-specfun.h (Complex xlgamma (const Complex&)): Declare it.
-	* randpoison.c (xlgamma): Use lgamma if HAVE_LGAMMA is defined.
-
-	* dNDArray.cc (NDArray::min, NDArraymax): chop trailing singletons.
-	* CNDarray.cc (ComplexNDArray::min, CompelxNDArray::max): ditto.
-	* intNDarray.cc (intNDArray<T>::min, intNDArray<T>::max): ditto.
-
-	* Array.cc (Array<T>::index): Don't short_freeze on index with
-	fewer dimensions than the array only if the last dimension is empty.
-
-2008-03-18  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int_fit_to_range):
-	Use partial specialization for double values.
-
-2008-03-08  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::index, assign): Likewise.
-	* Array.cc (Array<T>::index1, Array<T>::index2, Array<T>::indexN,
-	assign2): Eliminate use of idx_vector::is_one_zero method.
-	* idx-vector.cc, idx-vector.h
-	(idx_vector::maybe_convert_one_zero_to_idx,
-	IDX_VEC_REP::maybe_convert_one_zero_to_idx): Delete unused function.
-	(IDX_VEC_REP::one_zero): Delete data member.
-	(IDX_VEC_REP::is_colon_equiv): Delete one_zero check.
-	(idx_vector::is_one_zero, IDX_VEC_REP::is_one_zero): Delete function.
-
-2008-03-07  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (bool),
-	IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
-	Simply perform the equivalent of "find" on the bool argument here,
-	set one_zero to 0 and orig_dims to size of resulting index vector.
-	(IDX_VEC_REP::freeze): Don't call maybe_convert_one_zero_to_idx here.
-
-2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleQR.cc (QR::insert_col, QR::insert_row,
-	QR::delete_col, QR::delete_row): Use 0-based indexing.
-	* CmplxQR.cc (ComplexQR::insert_col, ComplexQR::insert_row,
-	ComplexQR::delete_col, ComplexQR::delete_row): Likewise.
-
-	* dbleCHOL.cc: Small doc and declaration fixes.
-	* CmplxHOL.cc: Small doc and declaration fixes.
-	* CmplxQR.cc (ComplexQR::ComplexQR): Adjust code to match dbleQR.cc.
-	* dbleQR.cc (QR::delete_row): Fix incorrect test.
-	* CmplxQR.cc (ComplexQR::delete_row): Fix incorrect test.
-
-2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dbleCHOL.cc (CHOL::set, CHOL::update, CHOL::downdate):
-	New functions.
-	* dbleCHOL.h: Provide decls.
-	* CmplxCHOL.cc (ComplexCHOL::set, ComplexCHOL::update,
-	ComplexCHOL::downdate): New functions.
-	* CmplxCHOL.h: Provide decls.
-
-	* dbleQR.cc (QR::update, QR::insert_col, QR::delete_col,
-	QR::insert_row, QR::delete_row): New methods.
-	(QR::QR (const Matrix&, const MAtrix&)): New constructor.
-	* dbleQR.h: Provide decls.
-	* CmplxQR.cc (ComplexQR::update, ComplexQR::insert_col,
-	ComplexQR::delete_col, ComplexQR::insert_row,
-	ComplexQR::delete_row): New methods.
-	(ComplexQR::ComplexQR (const ComplexMatrix&, const ComplexMAtrix&)):
-	New constructor.
-	* CmplxQR.h: Provide decls.
-
-2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Array-C.cc, Sparse-C.cc: Include oct-sort.cc after definitions
-	of < and > operators.
-
-2008-03-03  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (assign1, assign1): Take care of repeated index
-	values. Adapt the test code to check for these cases.
-
-2008-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dMatrix.cc (Matrix::lssolve): Also avoid dgelsd lwork query bug
-	in lssolve method that accepts column vector argument.  Correct
-	calculation of nlvl.
-	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for zgelsd.
-
-2008-02-27  John W. Eaton  <jwe@octave.org>
-
-	* oct-rand.cc (class octave_rand): Make it a proper singleton class.
-
-2008-02-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-rand.cc (get_dist_id): Fix typo.
-	(get_dist_id, octave_rand::distribution, octave_rand::scalar,
-	fill_rand): Improve error messages.
-
-	* oct-rand.cc (unknown_dist): New dist type.
-	(uniform_dist, normal_dist, expon_dist, poisson_dist, gamma_dist):
-	Use static const int instead of #define.
-	(get_dist_id): Default retval is unknown_dist.
-
-	* oct-rand.cc (rand_states): New static variable.
-	(initialize_rand_states, get_dist_id, get_internal_state,
-	set_internal_state, switch_to_generator, save_state): New functions.
-	(octave_rand::state): New arg to specify distribution.
-	Save state in rand_states instead of setting internal state.
-	Return named state.  Use set_internal_state to generate proper
-	state vector from user supplied state.  Save and restore current
-	state if specified and current distributions are different.
-	(octave_rand::distribution (void)): Use switch rather than if/else.
-	(octave_rand::distribution (const std::string&)): Likewise.
-	(octave_rand::uniform_distribution,
-	octave_rand::normal_distribution,
-	octave_rand::exponential_distribution,
-	octave_rand::poisson_distribution,
-	octave_rand::gamma_distribution): Call switch_to_generator.
-	(octave_rand::state, maybe_initialize): For new_generators, just
-	call initialize_rand_states if not already initialized.
-	(octave_rand::scalar, fill_rand): Save state after generating value.
-
-	* dMatrix.cc (Matrix::lssolve): Avoid another dgelsd lwork query bug.
-	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for zgelsd
-
-2008-02-24  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int_helper): New class.  Provide
-	specializations for signed and unsigned types.
-	(octave_int<T>::operator >>=, octave_int<T>::abs,
-	octave_int<T>::signum): Use static functions from
-	octave_int_helper class.
-
-	* oct-inttypes.h, oct-inttypes.cc (OCTAVE_US_TYPE1_CMP_OP,
-	OCTAVE_US_TYPE2_CMP_OP): Tag function declarations and definitions
-	with "template <>".
-
-2008-02-22  John W. Eaton  <jwe@octave.org>
-
-	* CSparse.cc, SparseCmplxLU.cc, SparsedbleLU.cc, dSparse.cc,
-	file-ops.cc, oct-group.cc, oct-shlib.cc, sparse-base-chol.h,
-	sparse-dmsolve.cc: Use 0 instead of NULL.
-
-2008-02-22  David Bateman  <dbateman@free.fr>
-
-	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::diag
-	(octave_idx_type) const): New method.
-	* boolSparse.h (SparseBoolMatrix SparseBoolMatrix::diag
-	(octave_idx_type) const): Declare it.
-
-	* base-lu.h (lu_type Y (void) const): New method to return
-	factorization of xGETRF directly.
-	* sparse-base-lu.cc (template <class lu_type, class lu_elt_type,
-	class p_type, class p_elt_type> lu_type sparse_base_lu <lu_type,
-	lu_elt_type, p_type, p_elt_type> :: Y (void) const): New method
-	to simulate the retirn of xGETRF.
-	* sparse-base-lu.h (template <class lu_type, class lu_elt_type,
-	class p_type, class p_elt_type> lu_type sparse_base_lu <lu_type,
-	lu_elt_type, p_type, p_elt_type> :: Y (void) const): Declare it
-	(SparseMatrix R (void) const): Method to return scaling factors.
-	* SparsedbleLU.cc: Allow two element pivot thresholding and
-	scaling.
-	* SparseCmplxLU.cc: ditto.
-	* SparsedbleLU.h: Modify constructors to allow passing of two
-	element pivoting thresholds and flag for scaling
-	* SparseCmplxLU.h: ditto.
-
-	* base-lu.cc (ColumnVector P_vec (void) const): New method to
-	return permutations as a vector.
-	* base-lu.h (ColumnVector P_vec (void) const): Declare it.
-	* sparse-base-lu.cc (ColumnVector Pr_vec (void) const): New method
-	return row permutations as a vector.
-	(ColumnVector Pc_vec (void) const): New method return column
-	permutations as a vector.
-	* sparse-base-lu.h (ColumnVector Pr_vec (void) const): Declare it.
-	(ColumnVector Pc_vec (void) const): Declare it.
-
-	* oct-spparms.cc: Add sym_tol field.
-
-2008-02-20  David Bateman  <dbateman@free.fr>
-
-	* SparseComplexQR.cc (ComplexMatrix
-	SparseComplexQR::SparseComplexQR_rep::Q
-	(void) const): New method.
-	* SparseComplexQR.h (ComplexMatrix
-	SparseComplexQR::SparseComplexQR_rep::Q
-	(void) const): Declare it.
-	* SparseQR.cc (Matrix SparseQR::SparseQR_rep::Q	(void) const): ditto.
-	* SparseQR.h (Matrix SparseQR::SparseQR_rep::Q	(void) const): ditto.
-
-2008-02-20  John W. Eaton  <jwe@octave.org>
-
-	* boolNDArray.h (boolNDArray (const Array2<bool>&)): Delete.
-
-	* Marray2.h (MArray2 (const Array2<U>&),
-	MArray2 (const MArray2<U>&)): New templated constructors.
-
-	* Array2.h (Array2 (const Array<U>&),
-	Array2 (const Array<U>&, const dim_vector&)):
-	New templated constructors.
-
-	* CColVector.cc (ComplexColumnVector::map): Forward to MArray::map.
-	* dColVector.cc (ColumnVector::map): ditto.
-	* CRowVector.cc (ComplexRowVector::map): ditto.
-	* dRowVector.cc (RowVector::map): ditto.
-	* CMatrix.cc (ComplexMatrix::map): Forward to MArray2::map.
-	* dMatrix.cc (Matrix::map): ditto.
-
-	* dNDArray.cc (NDArray::map): New functions.
-	* dNDArray.h: Provide decls.
-
-	* CNDArray.cc (ComplexNDArray::map): New functions.
-	* CNDArray.h: Provide decls.
-
-	* MArray2.h (MArray2<T>::map): New function.
-	* Array2.h (Array2<T>::map): New function.
-	* MArrayN.h (MArrayN<T>::map): New function.
-	* ArrayN.h (ArrayN<T>::map): New function.
-	* Array.h (Array<T>::map): New function.
-
-	* functor.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-2008-02-20  David Bateman  <dbateman@free.fr>
-
-	* CColVector.h, CColVector.cc (ComplexColumnVector::apply): Remove.
-	* dColVector.h, dColVector.cc (ColumnVector::apply): ditto.
-	* CRowVector.h, CRowVector.cc (ComplexRowVector::apply): ditto.
-	* dRowVector.h, dRowVector.cc (RowVector::apply): ditto.
-	* CMatrix.h, CMatrix.cc (ComplexMatrix::apply): ditto.
-	* dMatrix.h, dMatrix.cc (Matrix::apply): ditto.
-
-	* CSparse.cc (apply): Remove.
-	(map): Replace old mapper code with code taken from ov-mapepr.cc
-	* CSparse.h (map): Reeclare them.
-	(dmapper, cmapper, bmapper): typedefs for mapper functions.
-	* dSparse.cc (apply): Remove.
-	(map): Replace old mapper code with code taken from ov-mapepr.cc
-	* dSparse.h (map): Reeclare them.
-	(dmapper, cmapper, bmapper): typedefs for mapper functions.
-
-	* intNDArray.cc (abs, signum): Two new mapper functions.
-	* intNDArray.h (abs, signum): Declare them.
-	* oct-inttypes.h (abs, signum): Mapper functions on scalar integer
-	base type.
-
-2008-02-15  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (Matrix::lssolve): Check n > mnthr, not n > m when
-	deciding whether to calculate workspace size, with mnthr from ILAENV.
-	* CMatrix.cc (ComplexMatrix::lssolve): Likewise.
-
-2008-02-14  John W. Eaton  <jwe@octave.org>
-
-	* CColVector.cc, CMatrix.cc, CRowVector.cc, CSparse.cc,
-	CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc,
-	CmplxQR.cc, CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, DASPK.cc,
-	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc, NLEqn.cc, Quad.cc,
-	dColVector.cc, dMatrix.cc, dRowVector.cc, dSparse.cc,
-	dbleAEPBAL.cc, dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc,
-	dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc:
-	Don't check f77_exception_encountered.
-
-2008-02-12  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc: Declare xilaenv instead of ilaenv.
-	(ComplexMatrix::lssolve): Call xilaenv instead of ilaenv.
-
-2008-02-12  Jason Riedy  <ejr@cs.berkeley.edu>
-
-	* Array.cc (ascending_compare, descending_compare): Remove
-	non-standard extern in the instantiations.
-
-	* oct-sort.cc: Include <cstring> and sprinkle with std:: as needed.
-
-	* dMatrix.cc (ILAENV): Declare LAPACK Fortran function.
-	(Matrix::lssolve): Use ILAENV to query smlsiz.  And add an ugly
-	workaround for DGELSD's broken lwork query.  The formula is from
-	LAPACK's dgelsd.f source and allocates enough workspace to use an
-	efficient algorithm in the short-and-fat case (n > m).
-	* CMatrix.cc (ILAENV): Declare LAPACK Fortran function.
-	(ComplexMatrix::lssolve): Use ILAENV to query smlsiz.  And add an
-	ugly workaround for DGELSD's broken lwork query, as with double.
-
-2008-02-12  John W. Eaton  <jwe@octave.org>
-
-	* sparse-sort.cc: Don't explicitly instantiate
-	class octave_sort<octave_idx_vector_sort *>,
-	class octave_sort<octave_idx_type>, or
-	class octave_sort<octave_sparse_sort_idxl *>.
-
-	* Sparse.h (INSTANTIATE_SPARSE_SORT): Delete macro.
-	* Sparse-C.cc, Sparse-b.cc, Sparse-d.cc: Don't use it.
-
-	* Range.cc (Range::sort_internal): Avoid shadow warning from gcc.
-
-2008-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in ($(MAKEDEPS)): Skip dependencies if omit_deps is defined.
-
-2008-02-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.h (enum sortmode): Eliminate UNDEFINED.  Change all
-	uses of UNDEFINED to ASCENDING.
-
-2008-02-07  John W. Eaton  <jwe@octave.org>
-
-	* Range.cc (Range::sort_internal): Rename from sort.  New arg,
-	ASCENDING, with default value of true.
-	(Range::sort_internal (Array<octave_idx_type>&, bool)): New function.
-	(Range::sort (octave_idx_type, sortmode) const): New function.
-	(Range::sort (Array<octave_idx_type>&, octave_idx_type, sortmode)
-	const): New function.
-	* Range.h: Fix/provide decls.
-
-	* intNDArray.cc (intNDArray<T>::any (int)): Use != for comparison.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in ($(OPTS_INC)): Use mv instead of move-if-change.
-	(stamp-prereq): Eliminate.
-	(clean): Don't remove stamp-prereq.
-	(libraries): Don't depend on stamp-prereq.
-	(PREREQ): New macro.
-	($(MAKEDEPS)): Depend on $(PREREQ), not stamp-prereq.
-	(distclean): Simplify with $(PREREQ).
-	(OPT_BASE): New macro.
-	(OPT_IN): Rename from OPTS_INC_DATA.  Define in terms of OPT_BASE.
-	(OPT_INC): Rename from OPTS_INC.  Define in terms of OPT_BASE.
-
-2008-02-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Unconditionally include $(MAKEDEPS).
-	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
-
-2008-02-03  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array.cc (ascending_compare, descending_compare,
-	Array<T>::sort): Declare explicit specialization for T=double to
-	avoid symbol duplication error at link time.
-	* Array-d.cc (ascending_compare, descending_compare): Declare and
-	define as nonmember functions, not member functions of Array<T>.
-
-2008-02-03  John W. Eaton  <jwe@octave.org>
-
-	* Array-i.cc: Also instantiate Arrays for long long type if it exists.
-
-2008-02-03  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array.cc: Don't include Range.h.
-
-2008-01-31  David Bateman  <dbateman@free.fr>
-
-	* oct-sort.cc: conversion of int to octave_idx_type where needed
-	for 64-bit builds.
-	(IFLT): Allow IFLT macro to be overridden.
-	* oct-sort.h: conversion of int to octave_idx_type where needed
-	for 64-bit builds.
-	(enum sortmode): Type of sort to perform.
-	(vec_index): Simple class to aid in indexed sorts.
-
-	* Array.h ( Array<T> sort (octave_idx_type, sortmode) const,
-	Array<T> sort (Array<octave_idx_type> &, octave_idx_type,
-	sortmode) const): Array sorting methods.
-	(INSTANTIATE_ARRAY_SORT, NO_INSTANTIATE_ARRAY_SORT): Macros to
-	instantiate the array sorting methods.
-	* Array.cc (ascending_compare, descending_compare): New template
-	functions for generic sort comparison.
-  	( Array<T> Array<T>::sort (octave_idx_type, sortmode) const,
-	Array<T> Array<T>::sort (Array<octave_idx_type> &, octave_idx_type,
-	sortmode) const): Array sorting functions based of octave_sort
-	class.
-	* Array-C.cc: Instantiate the complex array sort methods.
-	(IFLT): New macro to override the one in the
-	octave_sort class to avoid need for Complex < and > operators.
-	(static double xabs (const Complex&)): Complex abs function
-	avoiding std::abs(Inf) returning NaN with some compilers.
-	(ascending_compare, descending compare): override template
-	functions for complex comparison.
-	* Array-d.cc: Instantiate the double array sort methods.
-	(Array<double> Array<double>::sort (octave_idx_type,
-	sortmode) const, Array<double> Array<double>::sort
-	(Array<octave_idx_type> &, octave_idx_type, sortmode) const):
-	Array sorting functions based of octave_sort using uint64 sorting
-	on IEE754 doubles, for speed and correct sorting of Inf and NaN.
-	(ascending_compare, descending compare): override template
-	functions for double and uint64 comparison.
-	* Array-b.cc, Array-ch.cc, Array-i.cc, Array-s.cc, Array-str.cc:
-	Instantiate the array sort methods.
-	* Array-idx-vec.cc: Null instantiation of array sort methods.
-	* Array2.h, Array3.h, ArrayN.h (sort): 2, 3 and N-dimensional
-	versions of the sort methods based on Array<T>::sort.
-
-	* CSparse.cc, dSparse.cc: Remove inclusion of octa-sort.h.
-	* Sparse.h ( Sparse<T> sort (octave_idx_type, sortmode) const,
-	Sparse<T> sort (Array<octave_idx_type> &, octave_idx_type,
-	sortmode) const): Sparse sorting methods.
-	(INSTANTIATE_ARRAY_SORT): Macro to instantiate the sparse sorting
-	methods.
-	* Sparse.cc: replace sort with lsort throughout to avoid shadowing
-	of new sort method.
-	(sparse_ascending_compare, sparse_descending_compare): New template
-	functions for generic sort comparison.
-  	( Sparse<T> Sparse<T>::sort (octave_idx_type, sortmode) const,
-	Sparse<T> Sparse<T>::sort (Sparse<octave_idx_type> &, octave_idx_type,
-	sortmode) const): Sparse sorting functions based of octave_sort
-	class.
-	* Sparse-C.cc: Instantiate the complex sparse sort methods.
-	(IFLT): New macro to override the one in the
-	octave_sort class to avoid need for Complex < and > operators.
-	(static double xabs (const Complex&)): Complex abs function
-	avoiding std::abs(Inf) returning NaN with some compilers.
-	(sparse_ascending_compare, sparse_descending compare): override
-	template functions for complex comparison.
-	* Sparse-d.cc: Instantiate the cdouble sparse sort methods.
-	(sparse_ascending_compare, sparse_descending compare): override
-	template functions for double comparison.
-	* Array-b.cc: Instantiate the sparse sort methods.
-
-2008-01-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* idx-vector.h (idx_vector::idx_vector_rep::range_base,
-	idx_vector::idx_vector_rep::range_step,
-	idx_vector::idx_vector_rep::range_step): New data members.
-	(idx_vector::idx_vector_rep::idx_vector_rep): Initialize them.
-	* idx-vector.cc (IDX_VEC_REP::sort, IDX_VEC_REP::is_colon_equiv,
-	IDX_VEC_REP::init_state, IDX_VEC_REP::operator =,
-	IDX_VECTOR_REP::idx_vector_rep): Handle range.
-
-2008-01-18  Marco Caliari  <marco.caliari@univr.it>
-
-	* dMatrix.cc (Matrix::expm): Correctly perform reverse permutation.
-	* CMatrix.cc (ComplexMatrix::expm): Likewise.
-
-2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-time.cc (octave_base_tim::init): Validate pointer argument;
-	this fixes the "localtime(-1)" crash under Windows.
-
-2008-01-18  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (solve_singularity_warning): New function.
-	(Matrix::expm): Pass pointer to solve_singularity_warning to
-	Matrix::solve method.  Exit early if Matrix::solve fails.
-	Limit sqpow value to avoid overflowing scale factor.
-	* CMatrix.cc (solve_singularity_warning): New function.
-	(ComplexMatrix::expm): Pass pointer to solve_singularity_warning to
-	ComplexMatrix::solve method.  Exit early if ComplexMatrix::solve fails.
-	Limit sqpow value to avoid overflowing scale factor.
-	From Marco Caliari <marco.caliari@univr.it>.
-
-2008-01-10  Kim Hansen  <kimhanse@gmail.com>
-
-	* Sparse.cc: New tests for slicing of sparse matrices.
-
-2008-01-07  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_ANY_ALL_OP_ROW_CODE): Don't break from
-	loop if this test succeeds.
-
-2008-01-03  David Bateman  <dbateman@free.fr>
-
-	* MSparse.cc (SPARSE_A2A2_OP): If first arg is scalar zero, then
-	need unary operator on remaining argument
-	* Sparse-op-defs.h (SPARSE_SMSM_BIN_OP_1): ditto.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-12-18  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (template <class T> Sparse<T> Sparse<T>::index
-	(idx_vector&, int) const): Fix case indexing of non zero scalar
-	stored as a sparse matrix.
-	(template <class T> Sparse<T> Sparse<T>::index (idx_vector&,
-	idx_vector&, int) const): For the non permutated indexing case,
-	fix link list calculation and use.
-
-2007-12-17  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::indexN): Correctly handle scalar indexed by
-	N-d array.
-
-2007-12-17  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_ANY_ALL_OP_ROW_CODE): Use ridx for row
-	index.
-
-2007-12-11  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::index (idx_vector&, int) const):
-	If indexing scalar with empty matrix, return empty array with same
-	size as index.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* NLEqn.h (NLEqn::fval): New data member.  Adjust constructors
-	and assignment operator.
-	(NLEqn::function_value): New function.
-	* NLEqn.cc (NLEqn::solve): If solution is successful, compute
-	function value.
-
-	* file-ops.cc (file_ops::concat): New function.
-	* file-ops.h: Provide decl.
-
-2007-12-07  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_base_tm::init): Only assign t->tm_zone if it
-	is not 0.
-
-2007-12-07  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SMS_CMP_OP, SPARSE_SMS_BOOL_OP,
-	SPARSE_SSM_CMP_OP, SPARSE_SSM_BOOL_OP, SPARSE_SMSM_CMP_OP,
-	SPARSE_SMSM_BOOL_OP, SPARSE_BASE_REDUCTION_OP): Use sparse
-	indexing where possible rather than the elem method.
-	(SPARSE_REDUCTION_OP_ROW_EXPR, SPARSE_REDUCTION_OP_COL_EXPR,
-	SPARSE_ANY_ALL_OP_ROW_CODE, SPARSE_ANY_ALL_OP_COL_CODE):
-	Replace for new version of SPARSE_BASE_REDUCTION_OP.
-	(SPARSE_ALL_OP): Specialize the initial value, and only treat dim
-	= 0 directly.
-	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::sumsq (int)
-	const): Replace ROW_EXPR and COL_EXPR functions for new version of
-	SPARSE_BASE_REDUCTION_OP.
-	(SparseComplexMatrix SparseComplexMatrix::prod (int) const):
-	Specialize the initial value, and only treat dim = 0 directly.
-	* dSparse.cc (SparseMatrix SparseMatrix::sumsq (int) const):
-	ditto.
-	(SparseMatrix SparseMatrix::prod (int) const): ditto.
-
-2007-12-06  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (ComplexMatrix::expm): Update pointers to internal
-	data for npp and dpp after assignments.
-	* dMatrix.cc (Matrix::expm): Use same method as ComplexMatrix::expm.
-
-2007-12-04  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (assign (Sparse<LT>&,  const Sparse<RT>&)):
-	Do nothing if one index is empty.
-
-2007-12-04  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (assign (Sparse<LT>&,  const Sparse<RT>&)):
-	Resize matrix as well if one dimension of lhs is zero and the rhs
-	index exceeds the lhs index.
-	* Sparse.cc (assign1 (Sparse<LT>&,  const Sparse<RT>&)):
-	Don't resize to a smaller matrix for empty matrices with a max rhs
-	index smaller than the non zero lhs index.
-
-2007-12-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Array-util.h: Tag permute_vector_compare with OCTAVE_API.
-
-2007-12-03  Moritz Borgmann  <octave@moriborg.de>
-
-	* Array-util.cc (permute_vector_compare): Move here from Array.cc.
-	* Array-util.h (permute_vector, permute_vector_compare): Provide decls.
-	* Array.cc (permute_vector, permute_vector_compare): Delete.
-
-2007-12-03  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (template <class LT, class RT> int assign
-	(Sparse<LT>&,  const Sparse<RT>&)): Only set return matrix size to
-	rhs values if both no. rows and columns are zero.
-
-2007-11-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.cc, oct-sort.h: Style fixes.
-
-	* lo-math.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* Array2.h, ArrayN.h, CmplxDET.cc, DASPK.cc, DASPK.h, DASRT.cc,
-	DASRT.h, DASSL.cc, DASSL.h, LSODE.cc, LSODE.h, NLEqn.h, Quad.h,
-	Range.cc, dbleDET.cc, lo-cieee.c, lo-ieee.cc, lo-mappers.cc,
-	oct-time.cc, oct-time.h, randgamma.c, randmtzig.c,
-	randpoisson.c: Include lo-math.h instead of cmath or math.h.
-	* lo-mappers.h: Don't include sunmath.h here.
-
-2007-11-26  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.h (idx_vector::idx_vector_rep (const intNDArray<U>&)):
-	Eliminate unnecessary second arg from call to tree_to_mat_idx.
-
-	* oct-inttypes.h (operator bool, operator char): Delete.
-	(bool_value, char_value, double_value, float_value): New functions.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* intNDArray.cc (template <class T> intNDArray<T>
-	intNDArray<T>::max (int) const, template <class T> intNDArray<T>
-	intNDArray<T>::max (ArrayN<octave_idx_type>&, int) const,
-	template <class T> intNDArray<T> intNDArray<T>::min (int) const,
-	template <class T> intNDArray<T> intNDArray<T>::min
-	(ArrayN<octave_idx_type>&, int) const): New methods for integer
-	classes.
-	* intNDArray.h (class intNDArray): Add min/max methods
-	* mx-op-defs.h (MIXMAX_DECLS, MINMAX_FCNS, SND_MINMAX_FCN,
-	NDS_MINMAX_FCN, NDND_MINMAX_FCN): New macro for instantiation of
-	min/max functions.
-	* int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
-	uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
-	(MINMAX_DECLS(T)): Declare the min/max functions for integer
-	types.
-	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
-	uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
-	(MINMAX_FCNS(T)): Instantiate the min/max functions for integer
-	types.
-
-	* Arrayc.cc (Array<T>::index (idx_vector&, idx_vector&, int,
-	const T& rfv) const): If ndims != 2 call ND version of index.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (opeator T (void) const): New conversion operator.
-
-	* lo-specfun.cc (zbesi): When alpha is negative, don't limit
-	correction to half-integer values.  From Eric Chassande-Mottin
-	<echassandemottin@gmail.com>.
-
-2007-11-07  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* dMatrix.cc, CMatrix.cc: Help MSVC compiler to resolve
-	ambiguities related to math functions (in C++ mode).
-
-2007-11-06  David Bateman  <dbateman@free.fr>
-
-	* intNDArray.cc (intNDArray<T> intNDArray<T>::sum (int) const):
-	New method.
-	* intNDarray.h (intNDArray sum (int) const): Declare it.
-	* boolNDArray.cc (boolNDArray boolNDArray::sum (int) const):
-	New method.
-	* boolNDarray.cc (boolNDArray sum (int) const): Declare it.
-	* MArray-def.h (MARRAY_NORM_BODY): Scale frobenius norm by infinity
-	norm to avoid issues of over- and underflow.  From Rolf Fabian
-	<Rolf.Fabian@gmx.de>.
-
-2007-10-30  David Bateman  <dbateman@free.fr>
-
-	* DASRT-opts.in, LSODE-opts.in: Doc fixes for small book format.
-
-2007-10-30  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (lssolve): Compute size of rwork and iwork arrays.
-	* dMatrix.cc (lssolve): Compute size of iwork array.
-
-2007-10-29  David Bateman  <dbateman@free.fr>
-
-	* CMatrix.h (lssolve (const Matrix&, octave_idx_type&,
-	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
-	octave_idx_type&, octave_idx_type&, double&) const, lssolve
-	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
-	double& rcond) const, lssolve (const ComplexColumnVector&,
-	octave_idx_type&, octave_idx_type&, double& rcond) const): New
-	declarations.
-	* CMatrix.cc (lssolve (const Matrix&, octave_idx_type&,
-	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
-	octave_idx_type&, octave_idx_type&, double&) const, lssolve
-	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
-	double& rcond) const, lssolve (const ComplexColumnVector&,
-	octave_idx_type&, octave_idx_type&, double& rcond) const): New
-	methods.
-	(lssolve (const Matrix&, octave_idx_type&, octave_idx_type&,
-	double&) const, lssolve (const ComplexMatrix&, octave_idx_type&,
-	octave_idx_type&, double&) const): Also return rcond from the
-	singular values returned by XGELSD.
-	* dMatrix.h (lssolve (const Matrix&, octave_idx_type&,
-	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
-	octave_idx_type&, octave_idx_type&, double&) const, lssolve
-	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
-	double& rcond) const, lssolve (const ComplexColumnVector&,
-	octave_idx_type&, octave_idx_type&, double& rcond) const): New
-	declarations.
-	* dMatrix.cc (lssolve (const Matrix&, octave_idx_type&,
-	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
-	octave_idx_type&, octave_idx_type&, double&) const, lssolve
-	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
-	double& rcond) const, lssolve (const ComplexColumnVector&,
-	octave_idx_type&, octave_idx_type&, double& rcond) const): New
-	methods.
-	(lssolve (const Matrix&, octave_idx_type&, octave_idx_type&,
-	double&) const, lssolve (const ComplexMatrix&, octave_idx_type&,
-	octave_idx_type&, double&) const): Also return rcond from the
-	singular values returned by XGELSD.
-
-2007-10-26  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (Matrix::lssolve): Use xGELSD for rank deficient
-	matrices to avoid reliability issues with xGELSY.
-	* CMatrix.cc (ComplexMatrix::lssolve): Likewise.
-
-2007-10-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_gmtime::init, octave_localtime::init):
-	Call unix_time on arg instead of relying on conversion operator.
-
-	* oct-time.h (octave_time::double_value): New function.
-	(octave_time::operator double () const): Delete.
-	(octave_time::operator time_t () const): Delete.
-
-2007-10-24  John W. Eaton  <jwe@octave.org>
-
-	* strptime.c: Also compile if OCTAVE_HAVE_BROKEN_STRPTIME is defined.
-
-2007-10-23  John W. Eaton  <jwe@octave.org>
-
-	* CRowVector.cc (operator * const ComplexRowVector&, const
-	ComplexColumnVector&)): Delete spurious code left from patch.
-
-2007-10-22  Kim Hansen  <kimhanse@gmail.com>
-
-	* chMatrix.cc, lo-utils.cc, oct-env.cc, oct-uname.cc,
-	sparse-sort.cc: Include <cstring>.
-
-2007-10-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h: Don't include metis.h.
-
-	* dSparse.cc (SparseMatrix::fsolve): Delete special code for METIS.
-	* CSparse.cc (SparseComplexMatrix::fsolve): Likewise.
-	* sparse-base-chol.cc (sparse_base_chol<chol_type, chol_elt,
-	p_type>::sparse_base_chol_rep::init): Likewise.
-
-2007-10-16  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (Matrix::inverse): Only check rcond == 0 if the
-	matrix is hermitian or calc_cond is true.
-	* CMatrix.cc (ComplexMatrix::inverse): Likewise.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
-
-	* DASSL-opts.in, LSODE-opts.in: Spelling fixes.
-
-2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in: Spelling fixes.
-
-2007-10-10  John W. Eaton  <jwe@octave.org>
-
-	* LPsolve.h, LPsolve.cc: Delete.
-	* Makefile.in: Remove them from the INCLUDES and
-	LIBOCTAVE_CXX_SOURCES lists.
-
-2007-10-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_strptime::init): Initialize t.tm_mon to -1
-	and t.tm_year to INT_MIN before call to oct_strptime.  Adjust
-	values to zero after call if they remain unchanged.
-
-	* dSparse.cc (SparseMatrix::all_elements_are_zero): New function.
-	* dNDArray.cc (NDArray::all_elements_are_zero): New function.
-
-2007-10-09  David Bateman  <dbateman@free.fr>
-
-	* oct-time.cc (octave_strptime::init): Only call mktime if mday is
-	valud and mon and year are also filled in.
-
-	* Array2.h (Array2<T>::Array2(const dim_vector&),
-	Array2<T>::Array(const dim_vector&, const T&)): Check that
-	dim_vector is 2 dimensional.
-
-	* Sparse.cc (Sparse<T> Sparse<T>::index (idx_vector&, idx_vector&,
-	int)): Remove a for loop in the random indexing case at the
-	expense of maintaining a set of linked lists of indices that point
-	to the same column in the original matrix.
-	(int assign (Sparse<LT>&, Sparse<RT>)): Take a const copy of lhs
-	and use it on the RHS of expressions to avoid unnecessary calls to
-	make_unique.
-
-2007-10-08  David Bateman  <dbateman@free.fr>
-
-	* oct-rl-edit. (typedef rl_quoting_fcn_ptr, rl_dequoting_fcn_ptr,
-	rl_char_is_quoted_fcn_ptr, rl_command_fcn_ptr): New  typedefs
-	for readline compatible functions.
-	(octave_rl_redisplay): Redisplay the current line of text.
-	(octave_rl_newline):  Change interface to the same
-	as used by the equivalent readline function itself.
-	(octave_rl_filename_quoting_desired,
-	octave_rl_set_filename_quote_characters,
-	octave_rl_set_completer_quote_characters,
-	octave_rl_qet_quoting_function, octave_rl_qet_dequoting_function,
-	octave_rl_set_char_is_quoted_function): New functions to control
-	readline filename quoting and line acceptace.
-	* oct-rl-edit.c (octave_rl_newline): Change interface to the same
-	as used by the equivalent readline function itself.
-	(octave_rl_redisplay): Redisplay the current line of text.
-	(octave_rl_filename_quoting_desired,
-	octave_rl_set_filename_quote_characters,
-	octave_rl_set_completer_quote_characters,
-	octave_rl_qet_quoting_function, octave_rl_qet_dequoting_function,
-	octave_rl_set_char_is_quoted_function): New functions to control
-	readline filename quoting and line acceptace.
-	* cmd-edit.h (typedef quoting_fcn, typedef dequoting_fcn,
-	typedef char_is_quoted_fcn, user_accept_line_fcn): New typedefs
-	to map C++ function to readline compatible functions.
-	(set_filename_quote_characters): New function to set the
-	characters to if they appear in a filename that force the filename
-	to be quoted.
-	(set_completer_quote_characters): The characters that the readline
-	completion function considers as quotation characters.
-	(set_quoting_function, set_dequoting_function,
-	set_char_is_quoted_function, set_user_accept_line_function):
-	Functions to set the Octave functions to perform quoting and the
-	acceptance of a line of text by readline.
-	(get_quoting_function, get_dequoting_function,
-	get_char_is_quoted_function, get_user_accept_line_function):
-	Functions to get the above functions.
-	(accept_line): New method for the command_editor to accept a line
-	of text.
-	(file_quoting_desired): Function to set whether readline should
-	attempt to quote filenames.
-	(do_set_filename_quoting_characters,
-	do_set_completer_quote_characters, do_set_quoting_function,
-	do_set_dequoting_function, do_set_char_is_quoted_function,
-	do_set_user_accept_line_function, do_get_quoting_function,
-	do_get_dequoting_function, do_get_char_is_quoted_function,
-	do_get_user_accept_line_function, do_filename_quoting_desired):
-	Virtual functions to control the behavior of readline quoting and
-	acceptance of lines.
-	(do_accept_line): Virtual function for the accept line function.
-	* cmd-edit.cc (class gnu_readline do_set_filename_quote_characters,
-	do_completer_quote_characters, do_set_quoting_function,
-	do_set_dequoting_function, do_set_char_is_quoted_function,
-	do_set_user_accept_line_function, do_get_quoting_function,
-	do_get_dequoting_function, do_get_user_accept_line_function,
-	do_accept_line, do_filename_quoting_desired, command_quoter,
-	command_dequoter, command_char_is_quoted, command_accept_line):
-	New functions in gnu_readline class to control filename quoting
-	and line acceptance.
-	(quoting_function, dequoting_function, char_is_quoted_function,
-	user_accept_line_function): private variable to store functions
-	supplied for readline quoting and line acceptance.
-	(gnu_readline::gnu_readline): Also set the new function pointers
-	to zero.
-	(gnu_readline::do_newline): Adapt to new octave_rl_newline
-	interface.
-	(gnu_readeline::operate_and_get_next): Use new accept_line
-	function rather than newline.
-	(default_ommand_editor::do_accept_line): New method.
-	(class command_editor set_filename_quote_characters,
-	set_completer_quote_characters, set_quoting_function,
-	set_dequoting_function, set_char_is_quoted_function,
-	set_user_accept_line_function, get_quoting_function,
-	get_dequoting_function, get_user_accept_line_function,
-	accept_line, filename_quoting_desired): New functions checking
-	instance before calling virtual function.
-
-	* CMatrix.h, dMatrix.h, boolMatrix.h, chMatrix.h, MArray2.h,
-	Array2.h: Add dim_vector constructors.
-	* charNDArray.h (charNDArray (const dim_vector&)): Add missing
-	const to dim_vector constructors.
-	* boolMatrix.cc, chMatrix.cc, intNDArray.cc (diag (void), diag
-	(octave_idx_type)): New methods to constructor diagonal matrices.
-	* boolMatrix.h, chMatrix.h, intNDArray.h (diag (void), diag
-	(octave_idx_type)): Declare them.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* lo-specfun.cc: (zlgamma): Delete.
-	(xgamma): Use C library gamma function if available.
-	(xlgamma): Use C library lgamma function if available.
-	(xlgamma) [! HAVE_LGAMMA]: Allow calculation for any value of X
-	other than NaN or Inf.
-
-2007-10-05  John W. Eaton  <jwe@octave.org>
-
-	* lo-specfun.cc (zlgamma): New function.
-
-2007-10-04  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.cc (octave_sort<T>::binarysort): Remove register
-	qualifiers on local variables.
-
-2007-10-04  Marco Caliari  <mcaliari@math.unipd.it>
-
-	* CMatrix.cc (ComplexMatrix::expm): Limit shift to values less
-	than log(realmax) to avoid issues with NaN.
-
-2007-10-01  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc (octave_strptime::init): Call mktime to propertly
-	initialize wday and yday.
-	From Matthias Drochner <m.drochner@fz-juelich.de>.
-
-	* cmd-edit.cc (command_editor::do_decode_prompt_string): Don't
-	insert extra '\001' when decoding \[ and \].
-
-2007-09-26  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (lssolve): Replace the use of xGELSS with xGELSY with
-	is much faster and no less accurate.
-	* CMatrix.cc (lssolve): ditto.
-
-2007-09-25  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (utsolve, ltsolve, fsolve, lssolve): Allow
-	zero dimensioned matrices.
-	* CMatrix.cc (utsolve, ltsolve, fsolve, lssolve): ditto.
-	* dSparse.cc (dsolve, utsolve, ltsolve, bsolve, trisolve, fsolve):
-	ditto.
-	* CSparse.cc (dsolve, utsolve, ltsolve, bsolve, trisolve, fsolve):
-	ditto.
-	* SparseQR.cc (SparseQR::SparseQR_rep::C, qrsolve): ditto.
-	* SparseCmplxQR.cc (SparseComplexQR::SparseComplexQR_rep::C,
-	qrsolve): ditto.
-	* sparse-dmsolve.cc (dmsolve): ditto.
-
-2007-09-21  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign1 (Array<LT>&, const Array<RT>&, const LT&)):
-	Also allow resizing empty LHS if it is 1x0 or 0xN.
-
-2007-09-19  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (command_editor::remove_startup_hook):
-	Fix cut-and-paste error.
-	(gnu_readline::set_startup_hook): Only set hook function if new
-	function is different from the current one.
-
-2007-09-18  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.h, cmd-edit.cc (command_editor::startup_hook_set,
-	command_editor::event_hook_set): New static data.
-	(default_command_editor::set_startup_hook,
-	gnu_readline::set_startup_hook,
-	default_command_editor::restore_startup_hook,
-	gnu_readline_restore_event_hook):
-	Rename from do_set_startup_hook and do_set_event_hook.
-	(gnu_readline::operate_and_get_next): Call
-	command_editor::add_startup_hook, not
-	command_editor::set_startup_hook.
-	(command_editor::startup_handler, command_editor::event_handler):
-	New functions.
-	(command_editor::add_startup_hook, command_editor::add_event_hook,
-	command_editor::remove_startup_hook,
-	command_editor::remove_event_hook): Rename from set_startup_hook
-	and restore_startup_hook.  Handle hook sets here.
-	* cmd-edit.cc (gnu_history::do_goto_mark):
-	Call remove_startup_hook instead of restore_startup_hook.
-
-2007-09-17  John W. Eaton  <jwe@octave.org>
-
-	* lo-utils.cc (octave_read_complex, octave_read_double): Skip
-	leading whitespace.
-
-2007-09-13  John W. Eaton  <jwe@octave.org>
-
-	* lo-utils.cc (read_inf_nan_na, octave_read_double,
-	octave_read_complex): Use istream::get instead of >> to read
-	individual characters.
-
-2007-09-10  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign1): Don't call make_unique for invalid assignment.
-
-2007-09-10  David Bateman  <dbateman@free.fr>
-
-	* Array.h (Array<T>::make_unique): Make public so that the
-	::assign functions can access it directly.
-	* Array.cc (Array<T>::maybe_delete_elements_1(idx_vector&),
-	Array<T>::maybe_delete_elements_1(idx_vector&),
-	Array<T>::maybe_delete_elements(idx_vector&, idx_vector&),
-	Array<T>::maybe_delete_elements(Array<idx_vector>&, const T&)):
-	Use xelem for non const RHS to avoid call to make_unique.
-	(int assign1 (Array<LT>&, const Array<RT>&, const LT&)): Use
-	xelem for LHS and call lhs.make_unique() only once. Special case
-	the is_colon index case and use Array<T>::xelem(octave_idx_type)
-	rather than Array<T>::xelem(octave_idx_type,octave_idx_type) and
-	bring the additional multiplication out of the inner loop.
-	(int assign2 (Array<LT>&, const Array<RT>&, const LT&)): ditto.
-	(int assignN (Array<LT>&, const Array<RT>&, const LT&)): ditto.
-	* idx-vector.h (idx_vector::idx_vector_rep::idx_vector_rep
-	(const Range& r)): Don't use init_state() method but special case
-	as with a Range can avoid exhaustive search.
-
-2007-09-07  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::fortran_vec): Call make_unique instead of
-	manipulating rep directly.
-
-	* Array.h (idx, idx_count): Declare mutable.
-	(Array<T>::set_index, Array<T>::clear_index, Array<T>::value):
-	Now const.
-
-2007-09-06  David Bateman  <dbateman@free.fr>
-
-	* Array-util.cc (increment_index): dimensions can have singleton
-	trailing dimensions.
-	* Array.h (range_error, xelem, checkelem, elem, operator ()):
-	Modify use of Array<int> to Array<octave_idx_type> and adjust
-	where necessary.
-	* Array.cc (range_error): ditto.
-	* MArrayN.h (permute, ipermute): ditto.
-	* ArrayN.h (permute, ipermute): ditto.
-	* so-array.cc (streamoff_array::compute_index): ditto.
-	* so-array.h (compute_index): ditto.
-	* CMattrix.cc (ComplexMatrix::exmpm): ditto.
-
-2007-08-29  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (SparseMatrix SparseMatrix::inverse (MatrixType &,
-	octave_idx_type&, double&, int, int)): Calculate with LU even for
-	matrices marked as singular.
-	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::inverse (
-	MatrixType &, octave_idx_type&, double&, int, int)): ditto.
-	* dMatrix.cc (Matrix Matrix::inverse (MatrixType &, octave_idx_type&,
-	double&, int, int)): ditto. If rcond==0 force matrix of infinities.
-	* dMatrix.cc (ComplexMatrix ComplexMatrix::inverse (MatrixType &,
-	octave_idx_type&, double&, int, int)): ditto.
-
-2007-08-27  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::rooted_relative_pathname,
-	octave_env::do_rooted_relative_pathname): New functions.
-	* oct-env.h: Provide decls.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* MSparse.h (MSparse<T>& insert (const Sparse<T>&,
-	const Array<octave_idx_type>&)): New method.
-	(MSparse (const dim_vector&, octave_idx_type)): Ditto.
-	* dSparse.h (SparseMatrix& SparseMatrix::insert (const
-	SparseMatrix&, const Array<octave_idx_type>&)): ditto.
-	(SparseMatrix (const dim_vector&, octave_idx_type)): ditto.
-	* dSparse.cc (SparseMatrix& SparseMatrix::insert (const
-	SparseMatrix&, const Array<octave_idx_type>&)): ditto.
-	* boolSparse.h (SparseBoolMatrix& SparseBoolMatrix::insert (const
-	SparseBoolMatrix&, const Array<octave_idx_type>&)): ditto.
-	* boolSparse.cc (SparseBoolMatrix& SparseBoolMatrix::insert (const
-	SparseBoolMatrix&, const Array<octave_idx_type>&)): ditto.
-	* CSparse.h (SparseComplexMatrix& SparseComplexMatrix::insert (const
-	SparseMatrix&, const Array<octave_idx_type>&),
-	SparseComplexMatrix& SparseComplexMatrix::insert (const
-	SparseComplexMatrix&, const Array<octave_idx_type>&)): ditto.
-	(SparseComplexMatrix (const dim_vector&, octave_idx_type)): ditto.
-	* CSparse.cc (SparseComplexMatrix& SparseComplexMatrix::insert (const
-	SparseMatrix&, const Array<octave_idx_type>&),
-	SparseComplexMatrix& SparseComplexMatrix::insert (const
-	SparseComplexMatrix&, const Array<octave_idx_type>&)): ditto.
-
-2007-08-19  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (Sparse<T>::permute): Avoid shadowing warning.
-
-2007-08-14  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (Sparse<T>::permute): permutation vector is zero based.
-	Simplify.
-	(Sparse<T>::reshape): Warn about reshaping to N-d array.
-
-2007-08-10  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* file-stat.cc (file_stat::update_internal) [__WIN32__]:
-	Remove trailing dir separator when stat'ing directory except for
-	root directory.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: 	Adjust DISTFILES to allow out of tree "make dist"
-	to work.
-
-2007-06-04  David Bateman  <dbateman@free.fr>
-
-	* oct-inttypes.h (octave_int<T>& operator <<= (const T2&),
-	octave_int<T>& operator >>= (const T2&)): Make shift operators
-	perform a twos complement arithmetic shift for both signed and
-	unsigned integers regardless of compiler implementations.
-
-2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* SparseCmplxQR.cc (OCTAVE_C99_ZERO): For CXSparse 2.2 and greater
-	use cs_complex_t(0,0) for the complex zero.
-
-	* MArray-ch.cc, MArray-d.cc, MArray-i.cc, MArray-s.cc:
-	Sprinkle class instantiations with OCTAVE_API as needed.
-
-	* Array.h (INSTANTIATE_ARRAY_ASSIGN, INSTANTIATE_ARRAY,
-	INSTANTIATE_ARRAY_AND_ASSIGN): New arg, API. Change all uses.
-	* MArray-defs.h (MARRAY_OP_ASSIGN_DECL, MARRAY_OP_ASSIGN_DECLS,
-	MARRAY_OP_ASSIGN_FWD_DECLS, MARRAY_OP_ASSIGN_FRIENDS,
-	MARRAY_OP_ASSIGN_DEFS, MARRAY_UNOP, MARRAY_UNOP_DECLS,
-	MARRAY_UNOP_FWD_DECLS, MARRAY_UNOP_FRIENDS, MARRAY_UNOP_DEFS,
-	MARRAY_BINOP_DECL, MARRAY_BINOP_DECLS, MARRAY_AA_BINOP_DECLS,
-	MDIAGARRAY2_DAS_BINOP_DECLS, MDIAGARRAY2_SDA_BINOP_DECLS,
-	MDIAGARRAY2_DADA_BINOP_DECLS, MARRAY_BINOP_FWD_DECLS,
-	MDIAGARRAY2_BINOP_FWD_DECLS, MARRAY_BINOP_FRIENDS,
-	MDIAGARRAY2_BINOP_FRIENDS, MARRAY_BINOP_DEFS,
-	MDIAGARRAY2_BINOP_DEFS, MARRAY_OPS_FORWARD_DECLS,
-	MDIAGARRAY2_OPS_FORWARD_DECLS, MARRAY_OPS_FRIEND_DECLS,
-	MDIAGARRAY2_OPS_FRIEND_DECLS, INSTANTIATE_MARRAY_FRIENDS,
-	INSTANTIATE_MARRAY2_FRIENDS, INSTANTIATE_MARRAYN_FRIENDS,
-	INSTANTIATE_MDIAGARRAY2_FRIENDS): Ditto.
-	* MSparse-defs.h (SPARSE_OP_ASSIGN_DECL, SPARSE_OP_ASSIGN_DECLS,
-	SPARSE_OP_ASSIGN_FWD_DECLS, SPARSE_OP_ASSIGN_FRIENDS,
-	SPARSE_OP_ASSIGN_DEFS, SPARSE_UNOP, SPARSE_UNOP_DECLS,
-	SPARSE_UNOP_FWD_DECLS, SPARSE_UNOP_FRIENDS, SPARSE_UNOP_DEFS,
-	SPARSE_BINOP_DECL, SPARSE_BINOP_DECLS, SPARSE_AA_BINOP_DECLS,
-	SPARSE_BINOP_FWD_DECLS, SPARSE_BINOP_FRIENDS, SPARSE_BINOP_DEFS,
-	SPARSE_OPS_FORWARD_DECLS, SPARSE_OPS_FRIEND_DECLS,
-	INSTANTIATE_SPARSE_FRIENDS): Ditto.
-	* Sparse-op-defs.h (SPARSE_BIN_OP_DECL, SPARSE_CMP_OP_DECL,
-	SPARSE_BOOL_OP_DECL, SPARSE_SMS_BIN_OP_DECLS,
-	SPARSE_SMS_CMP_OP_DECLS, SPARSE_SMS_EQNE_OP_DECLS,
-	SPARSE_SMS_BOOL_OP_DECLS, SPARSE_SSM_BIN_OP_DECLS,
-	SPARSE_SMS_OP_DECLS, SPARSE_SSM_BIN_OP_DECLS,
-	SPARSE_SSM_CMP_OP_DECLS, SPARSE_SSM_EQNE_OP_DECLS,
-	SPARSE_SSM_BOOL_OP_DECLS, SPARSE_SSM_OP_DECLS,
-	SPARSE_SMSM_BIN_OP_DECLS, SPARSE_SMSM_CMP_OP_DECLS,
-	SPARSE_SMSM_EQNE_OP_DECLS, SPARSE_SMSM_BOOL_OP_DECLS,
-	SPARSE_SMSM_OP_DECLS, SPARSE_MSM_BIN_OP_DECLS,
-	SPARSE_MSM_CMP_OP_DECLS, SPARSE_MSM_EQNE_OP_DECLS,
-	SPARSE_MSM_BOOL_OP_DECLS, SPARSE_MSM_OP_DECLS,
-	SPARSE_SMM_BIN_OP_DECLS, SPARSE_SMM_CMP_OP_DECLS,
-	SPARSE_SMM_EQNE_OP_DECLS, SPARSE_SMM_BOOL_OP_DECLS,
-	SPARSE_SMM_OP_DECLS): Ditto.
-	* Sparse.h (INSTANTIATE_SPARSE_ASSIGN, INSTANTIATE_SPARSE,
-	INSTANTIATE_SPARSE_AND_ASSIGN): Ditto.
-	* mx-op-defs.h (BIN_OP_DECL, CMP_OP_DECL, NDCMP_OP_DECL,
-	BOOL_OP_DECL, NDBOOL_OP_DECL, VS_BIN_OP_DECLS, VS_OP_DECLS,
-	SV_BIN_OP_DECLS, SV_OP_DECLS, VV_BIN_OP_DECLS, VV_OP_DECLS,
-	MS_BIN_OP_DECLS, MS_CMP_OP_DECLS, MS_BOOL_OP_DECLS, MS_OP_DECLS,
-	SM_BIN_OP_DECLS, SM_CMP_OP_DECLS, SM_BOOL_OP_DECLS, SM_OP_DECLS,
-	MM_BIN_OP_DECLS, MM_CMP_OP_DECLS, MM_BOOL_OP_DECLS, MM_OP_DECLS,
-	NDS_BIN_OP_DECLS, NDS_CMP_OP_DECLS, NDS_BOOL_OP_DECLS,
-	NDS_OP_DECLS, SND_BIN_OP_DECLS, SND_CMP_OP_DECLS,
-	SND_BOOL_OP_DECLS, SND_OP_DECLS, NDND_BIN_OP_DECLS,
-	NDND_CMP_OP_DECLS, NDND_BOOL_OP_DECLS, NDND_OP_DECLS,
-	SDM_BIN_OP_DECLS, SDM_OP_DECLS, DMS_BIN_OP_DECLS, DMS_OP_DECLS,
-	MDM_BIN_OP_DECLS, MDM_OP_DECLS, DMM_BIN_OP_DECLS, DMM_OP_DECLS,
-	DMDM_BIN_OP_DECLS, DMDM_OP_DECLS): Ditto.
-
-2007-06-12  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (Matrix::expm): Special case for scalar arg.
-	* CMatrix.cc (ComplexMatrix::expm): Likewise.
-
-2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* file-ops.cc (tilde_find_suffix, isolate_tilde_prefix,
-	tilde_expand_word): Use file_ops::is_dir_sep instead of comparing
-	with file_ops::dir_sep_char.
-
-	* MArray-C.cc: Sprinkle with OCTINTERP_API as needed.
-
-2007-06-04  David Bateman  <dbateman@free.fr>
-
-	* file-ops.cc: Typo.
-
-	* Sparse.cc (Sparse<T> Sparse<T>::reshape): If length of new
-	dimensions is greater than 2, collapse to 2-D.
-
-2007-06-02  David Bateman  <dbateman@free.fr>
-
-	* SparseCmplxQR.cc: Changes to support CXSparse 2.2.0.
-
-2007-05-31  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array::get_size): Throw std::bad_alloc exception if
-	the computed size is too large for the size of Octave's index type.
-
-2007-05-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h: Don't surround included files with extern "C" { ... }.
-
-2007-05-16  David Bateman  <dbateman@free.fr>
-
-	* dRowVector.cc (linspace): Return second argument if fewer than
-	two values are requested.
-	* CRowVector.cc (linspace): Likewise.
-
-2007-04-27  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (signum (const Complex&)): Special case for (0, 0).
-
-2007-04-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-fftw.h (octave_fftw): Tag with OCTAVE_API.
-
-2007-04-20  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign1): For x(:) = RHS, require rhs_len == lhs_len,
-	not rhs_len == 1.
-
-2007-04-18  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-md5.h (oct_md5, oct_md5_file): Tag decls with OCTAVE_API.
-
-2007-04-13  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::maybe_delete_elements_2): Don't return early
-	for empty matrix.  Only check for colon index equivalence if not empty.
-
-2007-04-10  John W. Eaton  <jwe@octave.org>
-
-	* SparseCmplxQR.cc
-	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
-	Move GCC_ATTR_UNUSED before the parameter decl.
-	From Luis Ortiz  <lortiz@interactivesupercomputing.com>.
-
-2007-04-06  John W. Eaton  <jwe@octave.org>
-
-	* MArray-defs.h (MARRAY_NORM_BODY): New macro.
-	* MArray.h (MArray<T>::norm): New function.
-	* MArray.cc: Provide decl.
-	* MArray-d.cc (MArray<double>::norm): Define double specialization.
-	* MArray-C.cc (MArray<Complex>::norm): Define Complex specialization.
-
-2007-04-04  John W. Eaton  <jwe@octave.org>
-
-	* Range.cc (Range::nelem_internal): Likewise.
-	* lo-utils.cc (NINT): Use numeric_limits<int> instead of INT_MAX.
-	(NINTbig): Use numeric_limits<octave_idx_type> instead of INT_MAX.
-	From Scott Pakin <pakin@lanl.gov>.
-
-2007-04-04  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (Matrix::inverse): If calc_cond is true, calculate
-	the condition number for positive definite matrices.
-	* CMatrix.cc (ComplexMatrix::inverse): Ditto.
-	* dbleChol.h (CHOL(const Matrix&, bool)): New arg, calc_cond.
-	(CHOL(const Matrix&, octave_idx_type&, bool): Ditto.
-	(octave_idx_type init (const Matrix&, bool)): Ditto.
-	(CHOL(const CHOL&)): Copy xrcond.
-	(CHOL& operator = (const CHOL&)): Copy xrcond.
-	(xrcond): New private data member.
-	* CmplxCHOL.h (ComplexCHOL(const ComplexMatrix&, bool)): New arg,
-	calc_cond.
-	(ComplexCHOL(const ComplexMatrix&, octave_idx_type&, bool): Ditto
-	(octave_idx_type init (const ComplexMatrix&, bool)): Ditto.
-	(ComplexCHOL(const ComplexCHOL&)): Copy xrcond.
-	(ComplexCHOL& operator = (const ComplexCHOL&)): Copy xrcond.
-	(xrcond): New private data member.
-	* dbleCHOL.cc (CHOL::init(const Matrix&, bool)): If calc_cond is
-	true, calculate the condition number with dpocon.
-	* CmplxCHOL.cc (ComplexCHOL::init(const ComplexMatrix&, bool)): If
-	calc_cond is true, calculate the condition number with zpocon.
-
-2007-04-03  John W. Eaton  <jwe@octave.org>
-
-	* intNDArray.cc (intNDArray): Delete spurious semicolon.
-
-	* CMatrix.cc (ComplexMatrix::tinverse): Use Array<T> and
-	fortran_vec method instead of OCTAVE_LOCAL_BUFFER to avoid
-	"maybe clobbered by vfork" warning.
-
-	* Sparse-op-defs.h (SPARSE_CUMSUM): Add braces to avoid ambiguous
-	if/else.
-
-	* oct-spparms.h (octave_sparse_params): Define copy constructor
-	and destructor.
-
-	* Array.cc (assignN): Don't resize dimension if corresponding
-	index is empty.
-
-2007-04-02  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.h (Matrix::inverse): Reinstate versions without
-	MatrixType argument.
-	* CMatrix.h (ComplexMatrix::inverse): Likewise.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DISTDIRS): Delete variable.
-	(dist): Delete action for DISTDIRS.  Use ln instead of $(LN_S).
-
-2007-03-26  David Bateman  <dbateman@free.fr>
-
-	* MatrixType.cc: Replace all uses of the method
-	octave_sparse_params::get_key ("bandden") with
-	octave_sparse_params::get_bandden (void).
-	(MatrixType::MatrixType (void)): Undo previous change but use
-	octave_sparse_params::get_bandden (void).
-	* oct-spparms.cc (get_bandden(void), do_get_bandden(void)): New
-	methods.
-	* oct-spparms.h (get_bandden(void), do_get_bandden(void)):
-	Declare them.
-
-2007-03-26  Luis Ortiz  <lortiz@interactivesupercomputing.com>
-	    David Bateman  <dbateman@free.fr>
-
-	* idx-vector.h.cc (IDX_VEC_REP::idx_vector_rep (const Range&)):
-	Check that all elements are ints before doing anything.  Simplify
-	calculation of index values.
-
-2007-03-26  David Bateman  <dbateman@free.fr>
-
-	* Range.cc (Range::all_elements_are_ints): Improve check.
-
-2007-03-26  John W. Eaton  <jwe@octave.org>
-
-	* chNDArray.cc, chMatrix.cc: Also generate comparison and bool ops.
-	* chNDArray.h, chMatrix.h: Provide decls.
-
-2007-03-24  Luis Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* MatrixType.cc (MatrixType::MatrixType (void)): Initialize
-	sp_bandden to zero for performance reasons as it's not used.
-
-2007-03-23  David Bateman  <dbateman@free.fr>
-
-	* oct-rand.cc (octave_rand::seed): Seed differently for big and
-	little endian.
-
-2007-03-15  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (acos): Use formula similar to what we use for asin.
-	From Alexander Barth <abarth@marine.usf.edu>.
-
-2007-03-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int::octave_int (double)):
-	New Specialization.  Round arg.
-	(operator / (const octave_int<T1>&, const octave_int<T2>&)):
-	Round result before converting type.
-
-2007-03-07  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign1): Avoid resizing if there is an error.
-
-	* dMatrix.cc, CMatrix.cc (operator *): Only check
-	f77_exception_encountered immediately after calls that use F77_XFCN.
-
-	* Array.cc (assign1 (Array<LT>&, const Array<RT>&, const LT&)):
-	Only allow resizing empty LHS if it is 0x0.
-
-	* Array.cc (Array<T>::maybe_delete_elements (Array<idx_vector>&,
-	const T&)): Handle case of more indices than dimensions.
-	(assign (Array<LT>&, const Array<RT>&, const LT&)): Allow more
-	cases to be handled by assignN.
-	(assignN (Array<LT>&, const Array<RT>&, const LT&)):
-	Special cases for 2-d array assignments for speed.
-	Improve handling of scalar RHS and empty indices.
-
-2007-03-05  David Bateman  <dbateman@free.fr>
-
-	* oct-md5.c (oct_md5_file (const std::string&)): New function.
-	* oct-md5.h (oct_md5_file (const std::string&)): Declare it.
-
-2007-03-02  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.h (string_vector::empty): Return bool, not int.
-
-2007-03-01  David Bateman  <dbateman@free.fr>
-
-	* md5.h, md5.c: New files from libmd5-rfc sourceforge project for
-	an independent implementation of RFC1321.
-	* oct-md5.h, oct-md5: New files for treating std::string class
-	with MD5.
-	* Makefile.in (INCLUDES): Add md5.h and oct-md5.h
-	(LIBOCTAVE_CXX_SOURCES): Add oct-md5.cc
-	(LIBOCTAVE_C_SOURCES): Add md5.c
-
-2007-02-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (uninstall): Delete files listed in
-	$(INCLUDES_FOR_INSTALL), instead of $(INCLUDES).
-	From Thomas Treichl <Thomas.Treichl@gmx.net>.
-
-2007-02-27  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* file-ops.cc (file_ops::recursive_rmdir):
-	Close dir_entry object before calling rmdir.
-
-2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
-
-	* sparse-util.h (SparseCholPrint, SparseCholError):
-	Tag with OCTAVE_API.
-
-2007-02-18  David Bateman  <dbateman@free.fr>
-
-	* oct-rand.cc (do_old_initialization()): call setcgn(1) prior to
-	calling setall and reset to the current generator after.
-
-2007-02-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.h (octave_shlib::relative): New data member.
-	(octave_shlib::mark_relative, octave_shlib::is_relative):
-	New functions.
-
-2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* lo-sysdep.cc (octave_popen2): New function to simulate popen2 on
-	windows platform.
-	* lo-sysdep.h (octave_popen2): Declare it.
-	* oct-syscalls.cc (octave_syscalls::popen2): New function.
-	* oct-syscalls.h (octave_syscalls::popen2): Declare it.
-
-2007-02-14  John W. Eaton  <jwe@octave.org>
-
-	* kpse.cc (expand_elt): Omit special treatment for //.
-
-2007-02-06  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::canonicalize_file_name) [HAVE_REALPATH]:
-	Don't delete value returned from realpath.
-
-2007-02-05  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* file-ops.cc (file_ops::canonicalize_file_name):
-	Provide implementation if realpath function is available.
-
-2007-01-29  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-fftw.h: Sprinkle with OCTAVE_API as needed.
-
-2007-01-17  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* lo-sysdep.cc (octave_chdir): Handle directory names like "C:" on
-	Windows systems.
-
-2007-01-16  John W. Eaton  <jwe@octave.org>
-
-	* dSparse.cc: Fix dgbtrf decl for --enable-64.
-	(SparseMatrix::bsolve): Fix call to dgbtrf for --enable-64
-
-	* oct-fftw.h (fftw_planner): Provide decl.
-
-2007-01-11  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in (LINK_DEPS): Include $(CAMD_LIBS) in the list.
-
-2007-01-10  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h: Use HAVE_CHOLMOD_CHOLMOD_H, not
-	HAVE_UMFPACK_CHOLMOD_H for case of "cholmod/cholmod.h".
-
-2007-01-08  David Bateman  <dbateman@free.fr>
-
-	* oct-sparse.h: Replace sparsesuite with suitesparse and
-	SPARSESUITE with SUITESPARSE to match upstream name.
-
-2007-01-05  David Bateman  <dbateman@free.fr>
-
-	* oct-fftw.cc: (octave_fftw_planner::method (void),
-	octave_fftw_planner (FftwMethod)): New methods to interrogate and
-	set the FFTW wisdom method used.
-	(octave_fftw_planner::create_plan) Modify to allow different
-	methods to be used.
-	(octave_fftw_planner): Move class definition from here.
-	* oct-fftw.h (octave_fftw_planner): To here. Add method methods
-	and FftwMethod enum.
-
-2007-01-03  David Bateman  <dbateman@free.fr>
-
-	* MSparse.cc (SPARSE_A2A2_OP, SPARSE_A2A2_FCN_1,
-	SPARSE_A2A2_FCN_1): Modify macros so that scalars stored as
-	sparse matrices are special cased.
-
-	* Sparse-op-defs.h: Include mx-ops.h to have access to mixed
-	matrix, sparse matrix operations.
-	(SPARSE_SMSM_BIN_OP_1, SPARSE_SMSM_BIN_OP_2, SPARSE_SMSM_BIN_OP_3,
-	SPARSE_SMSM_CMP_OP, SPARSE_SMSM_BOOL_OP, SPARSE_MSM_BIN_OP_1,
-	SPARSE_MSM_BIN_OP_2, SPARSE_MSM_CMP_OP, SPARSE_MSM_BOOL_OP,
-	SPARSE_SMM_BIN_OP_1, SPARSE_SMM_BIN_OP_2, SPARSE_SMM_CMP_OP,
-	SPARSE_SMM_BOOL_OP, SPARSE_SPARSE_MUL, SPARSE_FULL_MUL,
-	FULL_SPARSE_MUL): Modify macros so that scalars stored as
-	sparse matrices are special cased.
-
-2006-12-22  David Bateman  <dbateman@free.fr>
-
-	* boolSparse.cc (SparseBoolMatrix::operator !): Fix off-by-one error.
-
-2006-12-22  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h (dim_vector::dim_vector): Always start with at
-	least 2 dimensions.
-	(dim_vector::resize): Don't allow resizing to fewer than 2 dimensions.
-
-2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* lo-sysdep.cc (opendir): Avoid passing \\* to FindFirstFile.
-
-	* file-ops.cc (ops::canonicalize_file_name): Provide partial
-	implementation for Windows.
-
-2006-12-06  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (SparseMatrix::is_symmetric): Faster implementation.
-	* CSparse.cc (SparseComplexMatrix::is_symmetric): Ditto.
-
-	* dMatrrix.cc (finverse): Old inverse method renamed inverse.
-	(tinverse): New method for triangular matrices.
-	(inverse): New function with matrix type probing.
-	* dMatrix.h (finverse, tinverse, inverse): New and modified
-	declarations.
-	* CMatrix.cc: Ditto.
-	* CMatrix.h: Ditto.
-
-2006-12-06  John W. Eaton  <jwe@octave.org>
-
-	* strptime.c (day_of_the_week): Use code from current glibc sources.
-
-2006-12-05  John W. Eaton  <jwe@octave.org>
-
-	* lo-utils.cc (octave_read_double): If we see '+' or '-' but not
-	followed by 'I' or 'i', try reading number after putting
-	characters back on input stream.
-
-2006-12-05  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* randpoisson.c (oct_fill_randp): For lambda > 1e8, upper limit of
-	loop is n, not L.
-
-2006-11-30  John W. Eaton  <jwe@octave.org>
-
-	* lo-utils.cc (octave_read_double, read_inf_nan_na):
-	Also recognize [+-][Ii]nf.
-
-2006-11-28  David Bateman  <dbateman@free.fr>
-
-	* oct-sparse.h: Allow sparse headers to also be in a sparsesuite
-	sub-directory.
-
-	* dSparse.cc (SparseMatrix::inverse): Transpose the matrix type as
-	well when calling tinverse for lower triangular matrices.
-	* CSparse.cc (SparseComplexMatrix::inverse):
-	Ditto.
-
-2006-11-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (do_absolute_pathname): Undo previous change.
-
-2006-11-20  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::do_absolute_pathname): Also return true
-	for ".", and names beginning with "./" or "../".
-
-2006-11-14  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* CMatrix.cc, dMatrix.cc: New tests.
-
-2006-11-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Array-d.cc, dDiagMatrix.h: Sprinkle with OCTAVE_API as needed.
-
-2006-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in ($(OPTS_INC), mx-ops.h):
-	Use $(simple-move-if-change-rule) here.
-
-2006-11-09  David Bateman  <dbateman@free.fr>
-
-	* sparse-base-chol.cc (sparse_base_chol_rep::Q): Cast perms(i) to
-	octave_idx_type, not int.
-
-2006-11-08  John W. Eaton  <jwe@octave.org>
-
-	* dir-ops.cc (dir_entry::read): Avoid rewinddir.
-
-2006-11-06  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Exit early if invalid indices are found.
-
-2006-11-03  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* strftime.c [HAVE_TZNAME]: Tag tzname with OCTAVE_IMPORT.
-
-2006-11-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
-	(DLL_CDEFS): Rename from XTRA_CDEFS.
-	Substitute OCTAVE_DLL_DEFS, not XTRA_OCTAVE_DEFS.
-
-2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-shlib.cc: Undefine min and max after including windows.h.
-	* oct-syscalls.cc (syscalls::pipe (int *)): Avoid infinite recursion.
-	* lo-sysdep.h: Move opendir, readdir, etc. decls here from
-	lo-sysdep.cc.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* oct-time.cc [! HAVE_STRFTIME]: Declare strftime.
-
-2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* mx-op-defs.h (NDS_CMP_OP1, NDS_CMP_OPS1, NDS_CMP_OP2,
-	NDS_CMP_OPS2): New macros.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* mx-ops (core-type): New field for integer types.
-	* mk-ops.awk: Handle core-type for integer comparison ops.
-
-	* lo-cutils.c (octave_strcasecmp, octave-strncasecmp):
-	Move here from src/cutils.c.
-	* lo-utils.h: Provide decls.
-	* strcasecmp.c: Move here from src/strcasecmp.c.
-	* strncase.c: Move here from src/strncase.c.
-	* Makefile.in (LIBOCTAVE_C_SOURCES): Add them to the list.
-
-2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* kpse.cc [! MSVC]: Don't include win32lib.h.
-
-	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-i.cc, Array-util.h,
-	Array.h, CColVector.h, CMatrix.h, CNDArray.h, CRowVector.h,
-	CSparse.h, CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h, CmplxHESS.h,
-	CmplxLU.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h, CmplxSVD.h,
-	CollocWt.h, DAE.h, DASPK.h, DASRT.h, DASSL.h, EIG.h, LSODE.h,
-	MArray-C.cc, MArray-defs.h, MSparse-C.cc, MSparse-d.cc,
-	MSparse-defs.h, MatrixType.h, NLEqn.h, Quad.h, Range.h,
-	Sparse-op-defs.h, Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h,
-	SparseCmplxQR.h, SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h,
-	boolMatrix.h, boolNDArray.h, boolSparse.h, chMatrix.h,
-	chNDArray.h, cmd-edit.h, cmd-hist.h, dColVector.h, dDiagMatrix.h,
-	dMatrix.h, dNDArray.h, dRowVector.h, dSparse.h, data-conv.h,
-	dbleAEPBAL.h, dbleCHOL.h, dbleDET.h, dbleHESS.h, dbleLU.h,
-	dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h, dir-ops.h,
-	file-ops.h, file-stat.h, glob-match.h, idx-vector.h,
-	int16NDArray.cc, int32NDArray.cc, int64NDArray.cc, int8NDArray.cc,
-	lo-cutils.c, lo-ieee.h, lo-mappers.h, lo-specfun.h, lo-utils.h,
-	mach-info.h, mx-op-defs.h, oct-alloc.h, oct-env.h, oct-group.h,
-	oct-inttypes.cc, oct-inttypes.h, oct-passwd.h, oct-rand.h,
-	oct-shlib.h, oct-spparms.h, oct-syscalls.h, oct-time.h,
-	oct-uname.h, pathsearch.h, prog-args.h, so-array.h, str-vec.h,
-	uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc,
-	uint8NDArray.cc: Sprinkle with OCTAVE_API as needed.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.cc (INSTANTIATE_INTTYPE_BIN_OP): Provide explicit
-	type qualification for OP.
-
-2006-10-26  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (Sparse<T>::resize_no_fill (octave_idx_type,
-	octave_idx_type)): Be more careful with the size of the input
-	matrix, and therefore don't create or read non existent data.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (assign): Clear lhs index after error.
-
-2006-10-25  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
-	Fix previous patch so it works.
-
-2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* glob-match.h (glob_match::glob_match (const std::string&,
-	unsigned int)): Delete initializer for first arg.
-
-	* lo-sysdep.cc (opendir, readdir, rewinddir, closedir):
-	New functions.
-
-	* Makefile.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
-
-	* oct-env.cc (octave_env::do_get_home_directory) [_MSC_VER]: Use
-	same code as __MINGW32__.
-	* syswait.h [_MSC_VER]: Define HAVE_WAITPID, WAITPID, and WNOHANG
-	the same as for __MINGW32__.
-
-	* randpoisson.c: Undefine INFINITE before redefining.
-
-2006-10-24  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)): Resize the
-	lhs at the point we know the assignment can succeed if the lhs is
-	empty.
-
-2006-10-23  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign2): Don't require vector assignments to be oriented.
-
-2006-10-17  John W. Eaton  <jwe@octave.org>
-
-	* lo-cieee.c: If isnan is not available but _isnan is, then define
-	isnan to be _isnan, and define HAVE_ISNAN.  Likewise for _finite
-	and _copysign.
-
-2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-syscalls.cc (syscalls::waitpid): Always declare and define retval.
-
-	* CMatrix.cc (ComplexMatrix::solve): Avoid infinite recursion.
-	* CSparse.cc (SparseComplexMatrix::insert): Likewise.
-
-	* oct-types.h.in: Include limits.h, for CHAR_BIT.
-
-2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Adapt rules to use $(LIBPRE).
-
-2006-10-03  David Bateman  <dbateman@free.fr>
-
-	* MatrixType.cc (MatrixType::MatrixType): Avoid crash if np == 0
-	or p == 0.
-
-2006-10-02  John W. Eaton  <jwe@octave.org>
-
-	* dbleDET.cc (DET::initialize2): Ensure arg to log10 is double.
-	* CmplxDET.cc (ComplexDET::initialize2): Likewise.
-
-2006-09-22  David Bateman  <dbateman@free.fr>
-
-	* MatrixType.h (MatrixType::MatrixType(const SparseComplexMatrix&)):
-	Remove spurious warning.
-
-2006-09-15  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&) const):
-	Handle resizing.
-
-	* intNDArray.h (intNDArray<T>:elt_type): New typedef.
-
-2006-09-11  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (operator * (const Matrix&, const Matrix&))):
-	Handle M*v and rv*cv special cases.
-	* CMatrix.cc (operator * (const ComplexMatrix&, const
-	ComplexMatrix&))): Likewise.
-	From Luis F. Ortiz <lortiz@interactivesupercomputing.com>.
-
-	* dRowVector.cc (operator * (const RowVector&, const
-	ColumnVector&)): Call xddot here instead of using a Fortran
-	function directly.
-	* CRowVector.cc (operator * (const ComplexRowVector&, const
-	ComplexColumnVector&)): Call xzdotu here.
-
-2006-09-05  John W. Eaton  <jwe@octave.org>
-
-	* chNDArray.cc (charNDArray::any, charNDArray::all): Compare
-	elements to '\0', not ' '.
-
-2006-08-25  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Special case for 0x0 arrays.
-
-2006-08-23  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc, dMatrix.h (Matrix::save_ascii): Delete function and decl.
-	* CMatrix.cc, CMatrix.h (ComplexMatrix::save_ascii): Likewise.
-
-2006-08-22  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (ComplexMatrix::save_ascii): New function.
-	* dMatrix.cc (Matrix::save_ascii): New function.
-
-	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Correctly detect empty arrays.
-	If array is empty, return value is same size as array.
-	(MX_ND_REDUCTION): Correctly detect empty arrays.
-	If array is empty, produce correctly sized return value.
-
-2006-08-18  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (Matrix::any_element_not_one_or_zero): New function.
-	* dMatrix.h: Provide decl.
-	* dNDArray.cc (NDArray::any_element_not_one_or_zero): New function.
-	* dNDArray.h: Provide decl.
-	* intNDArray.cc (intNDArray<T>::any_element_not_one_or_zero):
-	New function.
-	* intNDArray.h: Provide decl.
-
-	* Array.cc (Array<T>::permute): Only rearrange values if array is
-	not empty.
-
-2006-07-26  John W. Eaton  <jwe@octave.org>
-
-	* dbleDET.cc (DET::initialize10, DET::value_will_underflow,
-	DET::value_will_overflow): Use xlog2 instead of log2.
-	(DET::initialize2, DET::initialize10): Use xround instead of round.
-	(DET::initialize2, DET::value): Use xexp2 instead of exp2.
-	* CmplxDET.cc (ComplexDET::initialize10,
-	ComplexDET::value_will_underflow,
-	ComplexDET::value_will_overflow): Use xlog2 instead of log2.
-	(ComplexDET::initialize2, ComplexDET::initialize10):
-	Use xround instead of round.
-	(ComplexDET::initialize2, ComplexDET::value):
-	Use xexp2 instead of exp2.
-
-	* lo-mappers.cc (M_LOG10E): Delete unused macro.
-	(xlog2, xexp2): New functions.
-	* lo-mappers.h: Provide decls.
-
-2006-07-22  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.h (Sparse<T>::mex_get_data, Sparse<T>::mex_get_ir,
-	Sparse<T>::mex_get_jc): New functions.
-
-2006-07-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int<T>::mex_get_data): New function.
-	* Array.h (Array<T>::mex_get_data): New function.
-
-2006-07-19  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int::operator bool (void)): New function.
-
-2006-07-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-spparms.h, oct-spparms.cc (class octave_sparse_params):
-	Rename from SparseParams.  Use same implementation method as other
-	singleton classes in Octave.  Change all uses of
-	Voctave_sparse_controls to use static functions from
-	octave_sparse_params class instead.
-
-	* oct-spparms.h, oct-spparms.cc (SparseParams::set_key,
-	SparseParams::get_key): Pass std::string arg by const reference,
-	not const value.
-
-2006-07-15  John W. Eaton  <jwe@octave.org>
-
-	* data-conv.cc: Instantiante swap_bytes templates here.
-
-	* MatrixType.cc (MatrixType::MatrixType):
-	Use complete initializer lists in constructors.
-
-2006-07-06  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.cc (string_vector::string_vector (std::list<std::string>&)):
-	New constructor.
-	* str-vec.h: Provide decl.
-
-2006-07-01  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (tinverse): Check for rows with no elements and zero
-	elements on the diagonal. Allow both Upper and Lower triangular
-	matrices to be treated.
-	* CSparse.cc (tinverse): ditto.
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Take into account 64-bit
-	constant assignment.
-
-2006-06-30  John W. Eaton  <jwe@octave.org>
-
-	* lo-sysdep.cc (octave_chdir): Perform tilde expansion here.
-	* cmd-edit.cc (editor::read_init_file): Ditto.
-	* dir-ops.cc (dir_entry::open): Ditto.
-	* file-stat.cc (stat::update_internal): Ditto.
-	* cmd-hist.cc (command_history::set_file): Ditto.
-
-	* data-conv.cc (data_conv::string_to_data_type):
-	Correctly handle leading "*".
-
-2006-06-29  Atsushi Kajita  <a-kajita@mizar.freemail.ne.jp>
-
-	* Sparse.cc (Sparse<T>::SparseRep::elem): Avoid out of bounds
-	array access.
-
-2006-06-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Finish renaming of OBJECTS -> LIBOCTAVE_OBJECTS.
-
-2006-06-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.cc (octave_dlopen_shlib::close,
-	octave_shl_load_shlib::close, octave_w32_shlib::close):
-	Skip do_close_hook if cl_hook is 0.
-
-2006-06-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.h: Don't include config.h, lo-mappers.h, or quit.h.
-	* randmtzig.h: Don't inlcude config.h.
-
-2006-05-31  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (assignN): Maybe reshape LHS before doing assignment.
-
-2006-05-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-types.h.in: Include stdint.h or inttypes.h for integer
-	typedefs, or define them if those files are not available.
-	* oct-inttypes.h (octave_int8_t, octave_int16_t, octave_int32_t,
-	octave_int64_t, octave_uint8_t, octave_uint16_t, octave_uint32_t,
-	octave_uint64_t): Delete typedefs.  Replace all uses of these
-	types with int8_t, int16_t, etc.
-	* data-conv.h (TWO_BYTE_INT, FOUR_BYTE_INT, EIGHT_BYTE_INT):
-	Delete definitions.  Replace all uses of these macros with int8_t,
-	int16_t, etc.
-	* randmtzig.h: Delete integer typedefs.
-
-2006-05-18  John W. Eaton  <jwe@octave.org>
-
-	* EIG.cc (EIG::init): Trap Inf and NaN values here.
-	From Keith Goodman <kwgoodman@gmail.com>.
-
-2006-05-08  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): fix bug in previous
-	modification.
-
-2006-05-09  David Bateman  <dbateman@free.fr>
-
-	* sparse-dmsolve.cc: Remove reference to ov-re-sparse.h,
-	ov-cx-sparse. and error_state.
-	* SparseQR.cc, SparseCmplxQR.cc (qrsolve): Return info = -1 on error.
-
-2006-05-08  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Set column pointers in
-	first pass and use to determine which algorithm to use on a
-	column-by-column basis.
-
-2006-05-04  David Bateman  <dbateman@free.fr>
-
-	* SparseQR.cc, SparseQR.h, SparseCmplxQR.cc, SparseCmplxQR.h,
-	sparse-dmsolve.cc : Allow compilation with versions v2.0.0 of
-	CXSparse or later
-
-2006-05-03  David Bateman  <dbateman@free.fr>
-
-	* CMatrix.cc (zpotrf, zpocon, zpotrs, ztrcon, ztrtrs):
-	External declaration of lapack triangular and Cholesky codes.
-	(ComplexMatrix::utsolve, ComplexMatrix::ltsolve,
-	ComplexMatrix::fsolve): New private solver codes for
-	upper, lower and LU/Cholesky solvers.
-	(ComplexMatrix::solve): New versions for cached matrix
-	type. Adapt old versions to call new versions
-	* CMatrix.h (utsolve, ltsolve, fsolve): Declaration of
-	new solvers.
-	(solve): New versions for cached matrix type.
-	* dMatrix.cc (dpotrf, dpocon, dpotrs, dtrcon, dtrtrs):
-	External declaration of lapack triangular and Cholesky codes.
-	(Matrix::utsolve, Matrix::ltsolve,
-	Matrix::fsolve): New private solver codes for
-	upper, lower and LU/Cholesky solvers.
-	(Matrix::solve): New versions for cached matrix
-	type. Adapt old versions to call new versions
-	* dMatrix.h (utsolve, ltsolve, fsolve): Declaration of
-	new solvers.
-	(solve): New versions for cached matrix type.
-	* CSparse.cc: Replace all uses of SparseType with MatrixType.
-	* CSparse.h: ditto.
-	* dSparse.cc: ditto.
-	* dSparse.h: ditto.
-	* SparseCmplxCHOL.cc: ditto.
-	* SparsedbleCHOL.cc: ditto.
-	* sparse-dmsolve.cc: ditto.
-	* SparseType.cc, SparseType.h: delete.
-	* MatrixType.cc: New file for class to cache matrix type, based on
-	old SparseType class but caching matrix and sparse types.
-	* MatrixType.h: ditto.
-	* Makefile.in (MATRIX_INC, MATRIX_SRC): Add MatrixType.h and
-	MatrixType.cc respectively. Delete SparseType.h and SparseType.cc
-	respectively.
-	* mx-base.h: Include MatrixTye.h as header file.
-
-2006-05-01  John W. Eaton  <jwe@octave.org>
-
-	* oct-shlib.h (octave_shlib::octave_shlib, octave_shlib::open):
-	Delete WARN_FUTURE arg.  Change all uses.
-	* oct-shlib.cc (octave_base_shlib::stamp_time): Delete arg.
-	Change all uses.  Use current_liboctave_warning_with_id_handler.
-	(octave_base_shlib::open): Delete arg.  Change all derived classes
-	and uses.
-
-2006-04-29  John W. Eaton  <jwe@octave.org>
-
-	* Array-flags.cc, Array-flags.h: Delete.
-	* Makefile.in (MATRIX_SRC): Remove Array-flags.cc from the list.
-	(MATRIX_INC): Remove Array-flags.h from the list.
-
-	* idx-vector.cc (IDX_VEC_REP::freeze): Delete warn_resize arg.
-	Use current_liboctave_warning_with_id_handler
-	with warning ID Octave:resize-on-range-error.
-	* idx-vector.h: Fix decl.
-	* Array.cc, Sparse.cc: Change all callers.
-
-	* Array.cc (Array<T>::maybe_delete_elements, Array<T>::index2,
-	assign2, assignN): Use current_liboctave_warning_with_id_handler
-	with warning ID Octave:fortran-indexing instead of
-	liboctave_wfi_flag.
-	* Sparse.cc (assign, Sparse<T>::index): Likewise.
-
-2006-04-26  John W. Eaton  <jwe@octave.org>
-
-	* pathsearch.cc (dir_path::path_sep_char, dir_path::path_sep_str):
-	New static data.
-	* pathsearch.h: Provide decls.
-	(dir_path::is_path_sep): New function.
-
-2006-04-18  John W. Eaton  <jwe@octave.org>
-
-	* randmtzig.c (randmt, randi53, randi54, randi64, randu32, randu53):
-	Omit inline from decl.
-
-	* Sparse.cc (Sparse<T>::index): Use std::vector<bool> to avoid
-	local array with variable dimension.
-
-2006-04-16  John W. Eaton  <jwe@octave.org>
-
-	* lo-sstream.h: Delete.
-	* Makefile.in (INCLUDES): Remove it from the list.
-
-	* dim-vector.h (dim_vector::str): Use std::ostringstream directly.
-	* Sparse.cc (Sparse::range_error): Likewise.
-	* DASSL.cc (DASSL::error_message): Likewise.
-	* LSODE.cc (LSODE::error_message): Likewise.
-	* DASRT.cc (DASRT::error_message): Likewise.
-	* DASPK.cc (DASPK::error_message): Likewise.
-	* Array.cc (Array::range_error): Likewise.
-
-	* kpse.cc (kpse_hash): Rename from hash.
-	(hash_lookup): Call kpse_hash instead of hash.
-
-	* SparseType.cc (SparseType::SparseType): Use std::vector<bool>
-	to avoid local array with variable dimension.
-
-2006-04-13  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
-	Optimize assignment.
-
-2006-04-13  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
-	Eliminate unnecessary casts.
-	* SparsedbleLU.cc (SparseLU::SparseLU): Likewise.
-
-	* kpse.cc (fopen): Use reinterpret_cast instead of C-style cast.
-	(log_search, dir_links): Use static_cast instead of C-style cast.
-
-	* prog-args.cc (args::getopt): Use reinterpret_cast instead of X_CAST.
-	* oct-alloc.cc (allocator::grow): Likewise.
-	* CSparse.cc (SparseComplexMatrix::determinant,
-	SparseComplexMatrix::factorize, SparseComplexMatrix::fsolve):
-	Likewise.
-	* SparseCmplxLU.cc (SparseComplexLU::SparseComplexLU): Likewise.
-
-	* oct-sort.cc (roundupsize, octave_sort<T>::merge_getmem):
-	Use static_cast instead of C-style cast.
-	* CSparse.cc (SparseComplexMatrix::fsolve): Likewise.
-	* dSparse.cc (SparseMatrix::fsolve): Likewise.
-
-	* data-conv.cc (LS_DO_WRITE): Use static_cast for value conversion.
-	Use OCTAVE_LOCAL_BUFFER instead of new/delete.
-	(LS_DO_READ): Allocate local buffer to avoid pointer tricks.
-	(write_doubles, read_doubles, LS_DO_WRITE, LS_DO_READ):
-	Use reinterpret_cast instead of X_CAST.
-
-	* DiagArray2.h (DiagArray2::Proxy::operator&): No need to cast
-	return value here.
-
-2006-04-12  Rafael Laboissiere  <rafael@debian.org>
-
-	* ArrayN.h (ArrayN::ArrayN): Qualify fill with Array<T> base class.
-	* DiagArray2.h (DiagArray2::DiagArray2): Likewise.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* Sparse.cc (Sparse<T>::resize): Use xcidx rather than cdix, etc
-	to avoid copy of original matrix.
-
-	* Makefile.in (INCLUDES): Add randgamma.h, randpoisson.h and
-	randmtzig.h to the list.
-	(LIBOCTAVE_C_SOURCES): Add randgamma.c, randpoisson.c and
-	randmtzig.c to the list.
-	* oct-rand.cc (do_old_initialization): Rename from do_initialization.
-	(use_old_generators): New variable.
-	(old_initialized): Rename from initialized.
-	(new_initialized): New variable.
-	(oct_init_by_entropy): New function.
-	(maybe_initialize): Initialize new or old generator depending on
-	value of use_old_generators.
-	(octave_rand::state): New functions.
-	(octave_rand::distribution): Add gamma, exponential and poisson
-	distributions.
-	(octave_rand::exponential_distribution,
-	octave_rand::poisson_distribution,
-	octave_rand::gamma_distribution): New methods to select
-	exponential, poisson or gamma distribution.
-	(octave_rand::scalar, octave_rand::matrix, octave_rand::nd_array,
-	octave_rand::vector): Add new distributions.
-	* oct-rand.h: Provide decls for new functions.
-	(octave_rand::matrix, octave_rand::scalar, octave_rand::
-	(octave_rand::scalar, octave_rand::matrix, octave_rand::nd_array,
-	octave_rand::vector): New arg A, for gamma and poisson distributions.
-	* randpoisson.c, randpoisson.h, randgamma.c, randmtzig.c,
-	randmtzig.h: New files.
-
-2006-03-24  John W. Eaton  <jwe@octave.org>
-
-	* dSparse.cc (SparseMatrix::bsolve): Integer work vector is
-	Array<octave_idx_type>, so fortran_vec returns pointer to
-	octave_idx_type, not pointer to int.
-
-	* CMatrix.cc, CMatrix.h (ComplexMatrix::row (char*),
-	ComplexMatrix::column (char*)): Delete.
-	* dMatrix.cc, dMatrix.h (Matrix::row (char*),
-	Matrix::column (char*)): Delete.
-
-2006-03-21  David Bateman  <dbateman@free.fr>
-
-	* SparseQR.h: Publish externally used friends.
-	* SparseCmplxQR.h: ditto.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* lo-specfun.cc (betainc): Use F77_XFCN instead of F77_FUNC for
-	call to xdbetai.
-
-2006-03-21  David Bateman  <dbateman@free.fr>
-
-	* lo-specfun.cc (xlgamma, xgamma): Trap special values.
-	(xlgamma): Use F77_XFCN instead of F77_FUNC for call to dlgams.
-
-	* dSparse.cc (solve): Add argument singular_fallback, to allow
-	fallback to QR solvers to be optional.
-	* CSparse.cc (solve): Ditto.
-	* dSparse.h (solve): update declaration for new argument.
-	* CSparse.h (solve): Ditto.
-	* sparse-dmsolve.cc (dmsolve): Use singular_fallback argument
-	to bypass QR solvers when solving the well determined part of
-	the problem.
-
-2006-03-17  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.cc (vector::list_in_columns): New optional arg, width.
-
-2006-03-16  David Bateman  <dbateman@free.fr>
-
-	* CSparse.cc: Change use of nzmax to nnz to allow automatic
-	reduction of matrix size, except for a couple of cases where nzmax
-	is needed.
-	(zpbcon): Correct declaration of lapack zpbcon function.
-	(dsolve, utsolve, ltsolve, trisolve, bsolve, factorize, fsolve): Add
-	an argument to allow the calculation of condition number to be
-	optional.
-	(bsolve): Add code for the calculation of the condition number
-	using zpbcon and zgbcon.
-	(dsolve): Bug fix for rectangular matrices with sparse RHS.
-	(utsolve, ltsolve, trisolve, bsolve, fsolve): Mark matrix type as
-	singular if singularity is detected.
-	(solve): Use optional argument to disable calculation of
-	condition number for all but fsolve, for speed. Add code to
-	allow rectnagular matrices or matrices identified as singular
-	to be treated.
-	(lssolve): delete.
-	(operator *): Don't recast real matrices as complex, but
-	rather use the macro directly on the real data.
-	* dSparse.cc: ditto.
-	* CSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve,
-	fsolve, factorize): Update declaration for new argument to
-	calculate the condition number.
-	(lssolve): delete.
-	* dSparse.h: ditto.
-	* Msparse.h: Change use of nxmax to nnz to allow automatic
-	reduction of matrix size, except for a couple of cases where
-	nzmax is needed.
-	* Sparse.cc: Change use of nxmax to nnz to allow automatic
-	reduction of matrix size, except for a couple of cases where
-	nzmax is needed.
-	(Sparse<T>::index (idx_vector&, idx_vector&, int) const):
-	Special case strict permutations for speed.
-	* Sparse-op-defs.h: Change use of nxmax to nnz to allow automatic
-	reduction of matrix size, except for a couple of cases where
-	nzmax is needed.
-	(SPARSE_SPARSE_MUL, SPARSE_FULL_MUL, FULL_SPARSE_MUL): Update
-	macros to allow mixed complex/real arguments.
-	* SparseCmplxQR.cc (OCTAVE_C99_ZERO): New macro for C99 zero
-	value.
-	(qrsolve): Use it to zero temporary buffers used bt CXSPARSE.
-	* SparseType.cc (SparseType::SparseType ()): Correct detection
-	of permutated triangular matrices to avoid seg-faults. Disable
-	detection of underdetermined lower and over-determined upper
-	matrix due to problems with non minimum norm solutions.
-	* sparse-dmsolve.cc: New file for Dulmage-Mendelsohn solver.
-	* Makefile.in: add sparse-dmsolve.cc to targets.
-
-2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* oct-time.cc (octave_strptime::init): Return useful character count.
-
-2006-03-08  David Bateman  <dbateman@free.fr>
-
-	* SparseCmplxQR.cc: Updates for new upstream CXSPARSE release. Fix for
-	g++ 4.x stl_vector.h issue with C99 double _Complex type.
-	* SparseCmplxQR.h:  Updates for new upstream CXSPARSE release.
-	* SparseQR.cc: ditto.
-	* SparseQR.h: ditto.
-	* oct-sparse.h: ditto.
-	* sparse-base-chol.cc (sparse_base_chol<>::sparse_base_chol_rep::init):
-	Declare info variable as volatile.
-
-	* Sparse.cc (Sparse<T>::transpose (void) const): Accelerate algorithm.
-	* CSparse.cc (SparseComplexMatrix::transpose (void) const): ditto.
-
-2006-03-01  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc (ComplexMatrix::determinant):
-	Scale result by factors of 2, not 10.
-	* dMatrix.cc (Matrix::determinant): Likewise.
-
-	* dbleDET.h (DET::DET): Use initializer list.
-	(DET::coefficient2, DET::coefficient10, DET::exponent2,
-	DET::exponent10): New functions.
-	(DET::det): Delete.
-	(DET::c2, DET::c10, DET::e2, DET::e10, DET::base2): New data members.
-	Store value internally with double and int instead of 2-element
-	double vector.
-	(DET::initialize2, DET::initialize10): Provide decls.
-	* dbleDET.cc (DET::value_will_overflow,	DET::value_will_underflow):
-	Return bool value, not int.
-	(DET::initialize2, DET::initialize10): New functions.
-
-	* CmplxDET.h (ComplexDET::ComplexDET): Use initializer list.
-	(ComplexDET::coefficient2, ComplexDET::coefficient10,
-	ComplexDET::exponent2, ComplexDET::exponent10): New functions.
-	(ComplexDET::det): Delete.
-	(ComplexDET::c2, ComplexDET::c10, ComplexDET::e2, ComplexDET::e10,
-	ComplexDET::base2): New data members.
-	Store value internally with Complex and int instead of 2-element
-	Complex vector.
-	(ComplexDET::initialize2, ComplexDET::initialize10): Provide decls.
-	* dbleComplexDET.cc (ComplexDET::value_will_overflow,
-	ComplexDET::value_will_underflow): Return bool value, not int.
-	(ComplexDET::initialize2, ComplexDET::initialize10): New functions.
-
-2006-02-24  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Clear index before reshaping.
-
-	* Array.h (Array<T>::operator =): Don't set idx to 0 if copying self.
-
-2006-02-20  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (dsolve, utsolve, ltsolve): Remove restriction that
-	matrix must be square in diagonal, permuted diagonal, triangular
-	and permuted triangular back/forward substitution code. Change
-	ambiguous use of no. rows and columns.
-	* CSParse.cc (dsolve, utsolve, ltsolve): ditto.
-	* SparseType.cc (SparseType::SparseType(const SparseMatrix&),
-	SparseType::SparseType(const SparseComplexMatrix&)): Recognize
-	rectangular diagonal, permuted diagonal, triangular and permuted
-	triangular matrices.
-	* Sparse.cc (Sparse<T>::Sparse (octave_idx_type, octave_idx_type, T)):
-	Treat case where third argument is zero.
-
-2006-02-15  John W. Eaton  <jwe@octave.org>
-
-	* kpse.cc: Do define ST_NLINK_TRICK for Cygwin systems.
-	(do_subdir) [ST_NLINK_TRICK]: Check links != 2 instead of links > 2.
-
-	* getopt.c: Use __CYGWIN__ instead of __CYGWIN32__.
-
-2006-02-13  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (LINK_DEPS): Add missing dependencies on colamd,
-	ccolamd and cxsparse
-
-2006-02-13  John W. Eaton  <jwe@octave.org>
-
-	* kpse.cc (kpse_path_iterator::next): Reverse order of tests in
-	while loop condition.
-	(kpse_path_iterator::operator =): Declare as private function but
-	don't define to prevent attempts to use assignment operator.
-	Don't define ST_NLINK_TRICK for Cygwin systems.
-
-2006-02-10  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Store in cummulative
-	product of all dimensions in CP_SZ.
-
-2006-02-09  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Store in cummulative
-	product of all dimensions in CP_SZ.
-
-2006-02-09  David Bateman  <dbateman@free.fr>
-
-	* SparseQR.cc: new file for real sparse QR class.
-	* SparseQR.h: declaration.
-	* SparseCmplxQR.cc: new file for complex sparse QR class.
-	* SparseCmplxQR.h: declaration.
-	* dSparse.cc (dinverse,tinverse,inverse): Remove unused input args.
-	(factorize, fsolve): Enable code code lssolve.
-	(lssolve): disable unused args, write based in above sparse QR class.
-	* CSparse.cc (dinverse,tinverse,inverse): Remove unused input args.
-	(factorize, fsolve): Enable code code lssolve.
-	(lssolve): disable unused args, write based in above sparse QR class.
-	* oct-sparse.h: fix location of colamd, ccolamd and metis headers.
-	Include CXSparse headers.
-	* Makefile.in (MATRIX_INC): Include SparseQR.h and SparseCmplxQR.h.
-	(MATRIX_SRC): Include SparseQR.cc and SparseCmplxQR.cc.
-
-2006-02-08  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.h (calc_permutated_idx): Delete.
-	* Array.cc (permute_vector): New data structure.
-	(permute_vector_compare): New function.
-	(Array<T>::permute): Rewrite to avoid calc_permutated_index for
-	improved performance.
-
-2006-02-04  David Bateman  <dbateman@free.fr>
-
-	* COLAMD: Remove all files, as now unused.
-
-2006-01-31  John W. Eaton  <jwe@octave.org>
-
-	* Sparse.h (Sparse<T>::nzmax): New function.
-	(Sparse<T>::nnz): Rename from nonzero.
-	Change all uses of old nnz function to be nzmax.  Change all uses
-	of nonzero to be nnz.
-	(Sparse<T>::nzmx): Rename from nnz (data member).  Change all uses.
-
-2006-01-21  David Bateman  <dbateman@free.fr>
-
-	* sparse-sort.cc (bool octave_sparse_sidxl_comp): 64-bit fix.
-	(bool octave_idx_vector_comp): New function.
-	(template class octave_sort<octave_idx_vector_sort *>): Instantiate
-	indexed idx_vector sorting function.
-	* sparse-sort.h (class octave_sparse_sort_idxl): 64-bit fix.
-	(class octave_idx_vector_sort): New class for indexed idx_vector
-	sorting.
-	(bool octave_idx_vector_comp): Declaration.
-	* Sparse.cc (int assign1(Sparse<LT>&, Sparse<RT>&)): Treat cases of
-	unordered LHS indexes in assignment using new octave_idx_vector_sort
-	class.
-	(int assign(Sparse<LT>&, Sparse<RT>&)): ditto.
-
-2006-01-30  John W. Eaton  <jwe@octave.org>
-
-	* so-array.h (streamoff_array::nnz): New funtion.
-	* boolNDArray.h (boolNDArray::nnz): New function.
-	* MArrayN.h (MArrayN<T>::nnz): New function.
-	* MArray.h (MArray<T>::nnz): New function.
-
-2006-01-04  David Bateman  <dbateman@free.fr>
-
-	* Spars-op-defs.h (SPARSE_SPARSE_MUL): Previous change resulted in
-	elements not being sorted in return matrix. Sort them, and make
-	solver select between two algorithms to further improve the
-	performance.
-	* dSparse.cc: include oct-sort.h.
-	* CSparse.cc: ditto.
-	* sparse-sort.cc: Instantiate octave_sort<octave_idx_type>.
-
-2005-12-28  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Improved algorithm that is
-	faster in all cases, and significantly so for low density or small
-	order problems.
-
-2005-11-30  John W. Eaton  <jwe@octave.org>
-
-	* LSODE.cc (LSODE::do_integrate (double)): Resize iwork and rwork
-	before setting any values in either array.
-
-2005-11-29  John W. Eaton  <jwe@octave.org>
-
-	* oct-uname.h, oct-uname.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2005-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::indexN): Simplify.
-
-2005-11-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int::operator char (void) const):
-	New conversion op.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (distclean): Also remove oct-types.h.
-	From Quentin Spencer <qspencer@ieee.org>.
-
-2005-10-31  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc, CSparse.cc: Use C++ true/false instead of
-	preprocessor defined TRUE/FALSE.
-
-2005-10-30  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Iterate in direction of DIM.
-	(MX_ND_CUMULATIVE_OP): Likewise.
-
-2005-10-29  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Avoid increment_index to speed
-	things up.  Simplify.
-
-	* Array.cc (Array<T>::indexN): Simplify.  Delete separate special
-	case for "vector_equivalent".
-
-	* Array-util.cc (vector_equivalent): Arg is now dim_vector.
-
-2005-10-28  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h: Fix typo in HAVE_UFSPARSE_UMFPACK_H.
-	From Quentin Spencer <qspencer@ieee.org>.
-
-	* sparse-base-chol.cc: Use C++ true/false instead of
-	preprocessor defined TRUE/FALSE.  Use 0 instead of NULL.
-
-2005-10-27  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Reshape to final size instead of resizing.
-
-2005-10-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-sparse.h: New file.
-	* oct-sparse.h.in: Delete.
-
-2005-10-26  David Bateman  <dbateman@free.fr>
-
-	* sparse-base-chol.h: Include cholmod specific code in HAVE_CHOLMOD
-	* sparse-base-chol.cc: ditto.
-
-2005-10-26  John W. Eaton  <jwe@octave.org>
-
-	Changes for GCC 4.1, tip from Arno J. Klaassen
-	<arno@heho.snv.jussieu.fr>:
-
-	* dSparse.h (real (const SparseComplexMatrix&)):
-	Publish externally used friend function.
-	(imag (const SparseComplexMatrix&)): Likewise.
-
-	* dColVector.h (real (const ComplexColumnVector&)):
-	Publish externally used friend function.
-	(imag (const ComplexColumnVector&)): Likewise.
-
-	* dNDArray.h (real (const ComplexNDArray&)):
-	Publish externally used friend function.
-	(imag (const ComplexNDArray&)): Likewise.
-
-	* dMatrix.h (operator * (const ComplexMatrix&)):
-	Move decl outside class.  No need to be friend.
-	(real (const ComplexMatrix&)): Publish externally used friend function.
-	(imag (const ComplexMatrix&)): Likewise.
-
-	* CMatrix.h: (operator * (const ColumnVector&, const
-	ComplexRowVector&)): Move decl outside class.  No need to be friend.
-	(operator * (const ComplexColumnVector&, const RowVector&)): Likewise.
-	(operator * (const ComplexColumnVector&, const ComplexRowVector& b)):
-	Likewise.
-
-2005-10-23  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Check whether trailing zero
-	elements need to be removed.
-
-	* oct-sparse.h.in: Include metis headers and some macros for long/int
-	versions of cholmod.
-
-	* CSparse.cc (tinverse): New private function for the inversion of
-	an upper triangular matrix.
-	(dinverse): ditto for diagonal matrices.
-	(inverse): Add SparseType as an argument. Implement matrix inverse
-	using tinverse and dinverse.
-	(fsolve): Use cholmod to implement Cholesky solver.
-	* CSparse.h (tinverse, dinverse): Declarations
-	(inverse): Alter declaration to include SparseType.
-
-	* dSparse.cc (tinverse, dinverse, inverse, fsolve): ditto.
-	* dSparse.h (tinverse, dinverse, inverse): ditto.
-
-	* SparseType.cc: Fix complex constructor for hermitian matrices.
-
-	* sparse-util.cc: New file for sparse utility functions.
-	* sparse-util.h: New file with declarations of sparse utility
-	functions.
-
-	* sparse-base-chol.cc: New file with sparse cholesky class based
-	on cholmod.
-	* sparse-base-chol.h: New file with declaration of sparse cholesky
-	class based on cholmod.
-
-	* SparseCmplxCHOL.cc: Instantiate sparse cholesky class for Complex.
-	* SparseCmplxCHOL.h: Declaration of sparse cholesky class.
-
-	* SparsedbleCHOL.cc: ditto.
-	* SparsedbleCHOL.h: ditto.
-
-	* Makefile.in (MATRIX_INC): Include sparse-base-chol.h.
-	(INCLUDES): Include sparse-util.h
-	(TEMPLATE_SRC): Include sparse-base-chol.cc
-	(MATRIX_SRC): Include SparseCmplxCHOL.cc and SparsedbleCHOL.cc
-
-2005-10-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-env.cc (octave_env::have_x11_display): New function.
-	* oct-env.h: Provide decl.
-
-2005-09-29  John W. Eaton  <jwe@octave.org>
-
-	* file-stat.h (file_stat::mode): New function.
-
-	* file-stat.cc (file_stat::is_blk, file_stat::is_chr,
-	file_stat::is_dir, file_stat::is_fifo, file_stat::is_lnk,
-	file_stat::is_reg, file_stat::is_sock): New static functions.
-	* file-stat.h: Provide decls.
-
-2005-09-28  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::recursive_rmdir): New function.
-	* file-ops.h: Provide decl.
-
-2005-09-19  David Bateman  <dbateman@free.fr>
-
-	* oct-env.cc (octave_env::do_get_home_directory):
-	Also check HOMEDRIVE under mingw.
-
-	* Makefile.in (LINK_DEPS): Include UFsparse libraries.
-
-2005-09-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-syscalls.cc: Include lo-utils.h here.
-	(octave_syscalls::waitpid): Call octave_waitpid here.
-
-	* lo-cutils.c (octave_waitpid): New function.
-	* lo-utils.h: Provide decl.  Include syswait.h here, not in
-	oct-syscalls.cc
-
-
-	* syswait.h [__MINGW32__]: Define WAITPID here instead of defining
-	waitpid in src/sysdep.h.  Make this header C-compatible.
-
-	* oct-syscalls.cc (octave_syscalls::waitpid): New arg, status.
-	Change all uses.
-
-2005-09-15  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (MAKEDEPS_2): Omit unnecessary variable.
-
-	* oct-sparse.h.in: New file.
-	* Makefile.in (DISTFILES): Include it in the list.
-	(INCLUDES): Add oct-sparse.h to the list.
-
-2005-09-15  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc : Include oct-sparse.h for probed umfpack, colamd etc
-	headers. Remove include of umfpack.h.
-	* CSparse.cc : ditto.
-	* SparsedbleLU.cc : ditto.
-	* SparseCmplxLU.cc : ditto.
-
-	* COLAMD : Remove colamd files from octave.
-	* COLAMD.files : delete.
-	* COLAMD.README : delete.
-	* Makefile.in: Remove COLAMD. Add LIBGLOB.
-	(LN_S): Change to DESTDIR before LN_S to avoid lack of symlinks
-	under mingw.
-
-	* kpse.cc (ENV_SEP, ENV_SEP_STRING): Use SEPCHAR and SEPCHAR_STR
-	in definition.
-	* lo-cutils.c (octave_w32_library_search): Call GetProcAddress with
-	change of cast not allowed under g++ 3.x.
-	* lo-utils.h (octave_w32_library_search): Declaration.
-	* oct-env.cc (do_get_home_directory): Also check HOMEPATH under mingw.
-	* oct-shlib.cc (octave_w32_shlib::search): Use octave_w32_library_search.
-
-2005-09-07  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (command_editor::do_decode_prompt_string):  Update
-	based on current code in Bash.  Handle a few more escape
-	sequences.  Do a better job of decoding \W.
-
-2005-09-04  David Bateman  <dbateman@free.fr>
-
-	* COLAMD: Update version of colamd to v2.4.
-	* COLAMD.files: Add colamd_global.c to COLAMD_SRC and second build of
-	colamd.c for long version.
-
-2005-08-25  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (FULL_SPARSE_MUL, SPARSE_FULL_MUL): Macro for
-	mixed sparse/full multiply.
-	* dSparse.cc (operator *), CSparse.cc (operator *): New operators for
-	mixed sparse/full multiply.
-	* dSparse.h (operator *), CSparse.h (operator *): Declaration of
-	mixed sparse/full multiply operators.
-
-2005-07-25   Erik de Castro Lopo  <erikd@zip.com.au>
-
-	* oct-inttypes.h (OCTAVE_S_US_FTR): Compare <= 0 instead of < 0 to
-	avoid warnings for unsigned types.
-
-2005-07-07  John W. Eaton  <jwe@octave.org>
-
-	* dSparse.cc (SparseMatrix::factorize): Initialize Numeric to 0.
-	* CSparse.cc (SparseComplexMatrix::factorize:) Likewise.
-
-2005-06-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-rl-edit.c (flush_stdout): Rename from no_redisplay.
-	Flush stdout here.
-	(octave_rl_clear_screen): Set rl_redisplay_function to flush_stdout.
-
-	* Array.h (Array::resize): Change int args to octave_idx_type.
-
-2005-06-14  John W. Eaton  <jwe@octave.org>
-
-	* CMatrix.cc, CNDArray.cc, CSparse.cc, dMatrix.cc, dNDArray.cc,
-	dSparse.cc, lo-cieee.c, lo-mappers.cc: Change all uses of
-	octave_is_NaN_or_NA to xisnan.
-
-	* lo-mappers.h (octave_is_NaN_or_NA): Mark with GCC_ATTR_DEPRECATED.
-	* lo-ieee.h (lo_ieee_is_NaN_or_NA): Likewise.
-
-	* lo-cieee.c (lo_ieee_is_NaN_or_NA): Now just a wrapper for
-	lo_ieee_isnan.
-
-	* dMatrix.cc (Matrix::too_large_for_float): Only check if abs
-	value is greater than FLT_MAX.
-	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
-	* dNDArray.cc (NDArray::too_large_for_float): Ditto.
-	* CNDArray.cc (ComplexNDArray::too_large_for_float): Ditto.
-
-	* dMatrix.cc (Matrix::too_large_for_float): Special case Inf
-	values too.
-	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
-
-	* dNDArray.cc (NDArray::too_large_for_float): Likewise for NaN,
-	NA, Inf values.
-	* CNDArray.cc (ComplexNDArray::too_large_for_float): Ditto.
-
-2005-06-14  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (Matrix::too_large_for_float): Special case NaN and
-	NA values.
-	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
-
-2005-06-02  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Try harder to correctly resize previously
-	empty LHS.
-
-2005-05-16  David Bateman  <dbateman@free.fr>
-
-	* dSparse.h: Change UMFPACK_LONG_IDX to IDX_TYPE_LONG.
-	* CSparse.h: ditto.
-
-2005-05-10  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (determinant): Free numeric factorization after
-	sucessful calculation.
-	* CSparse.cc (determinant): ditto.
-
-2005-05-06  John W. Eaton  <jwe@octave.org>
-
-	* dbleCHOL.cc (CHOL::init): Use xelem instead of elem for indexing
-	chol_mat.
-	(chol2mat_internal, chol2mat, CHOL::inverse): New functions.
-	* dbleCHOL.h (chol2mat_internal, chol2mat, CHOL::inverse):
-	Provide decls.
-
-	* CmplxChol.cc (ComplexCHOL::init): Use xelem instead of elem for
-	indexing chol_mat.
-	(chol2mat_internal, chol2mat, ComplexCHOL::inverse): New functions.
-	* CmplxCHOL.h (chol2mat_internal, chol2mat, CmplxCHOL::inverse):
-	Provide decls.
-
-2005-05-05  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::permute): Call chop_trailing_singletons on
-	retval before return.
-
-2005-05-04  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (gnu_readline::do_readline): Extract const char*
-	from prompt outside of INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE block.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): List $(UMFPACK_LIBS) ahead of $(BLAS_LIBS).
-	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
-
-2005-04-29  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (trisolve): Diagonal passed to lapack zptsv is type
-	double.  Correct indexing for upper diagonal elements for sparse
-	tridiagonal.
-	* CSparse.cc (trisolve): ditto.
-
-	* CSparse.h (UMFPACK_ZNAME): Define macro to pick version of
-	UMFPACK for 64-bit.
-	* CSparse.cc (UMFPACK_ZNAME): Replace all umfpack_zi_* with
-	UMFPACK_ZNAME(*).
-	* SparseCmplxLU.cc (UMFPACK_ZNAME): ditto
-
-	* dSparse.h (UMFPACK_DNAME): Define macro to pick version of
-	UMFPACK for 64-bit.
-	* dSparse.cc (UMFPACK_DNAME): Replace all umfpack_di_* with
-	UMFPACK_DNAME(*).
-	* SparsedbleLU.cc (UMFPACK_DNAME): ditto
-
-	* dSparse.cc (ltsolve, utsolve): Correct permuted upper/lower
-	triangular back/forward substitution code.
-	* CSparse.cc (ltsolve, utsolve): ditto.
-
-	* dSparse.cc (solve): Use mattype.type (false) to force messaging
-	from spparms("spumoni",1).
-	* CSparse.cc (solve): ditto
-
-	* SparseType.cc (SparseType(void)): Print info for
-	spparms("spumoni",1).
-	(SparseType(const matrix_type), SparseType(const matrix_type, const
-	octave_idx_type, const octave_idx_type*), SparseType(const matrix_type,
-	const octave_idx_type, const octave_idx_type)): New constructors.
-	(SparseType (const SparseMatrix&), SparseType (SparseComplexMatrix&)):
-	Detect row permuted lower triangular and column permuted upper
-	triangular matrices. Remove one of the permutation vectors..
-
-	* SparseType.h: Simplify the permutation code.
-	(SparseType(const matrix_type), SparseType
-	(const matrix_type, const octave_idx_type, const octave_idx_type*),
-	SparseType(const matrix_type, const octave_idx_type,
-	const octave_idx_type)): Declarations.
-
-2005-04-25  John W. Eaton  <jwe@octave.org>
-
-	* str-vec.cc (string_vector::delete_c_str_vec): Correctly free
-	array and its contents.
-
-2005-04-22  John W. Eaton  <jwe@octave.org>
-
-	* oct-rl-edit.c (octave_rl_set_terminal_name): Don't cast away
-	const here now that rl_terminal_name is declared const char*.
-
-2005-04-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DISTFILES): Include oct-types.h.in in the list.
-
-2005-04-19  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Don't crash if the index list is empty.
-
-2005-04-14  David Bateman  <dbateman@free.fr>
-
-	* SparseCmplxLU.cc: Add flags for incomplete factorization.
-	* SparsedbleLU.cc: Ditto.
-	* SparseCmplxLU.h: Definition.
-	* SparsedbleLU.h: ditto.
-
-	* SparseType.cc (transpose): New function.
-	* SparseType.h (transpose): Definition.
-
-2005-04-11  John W. Eaton  <jwe@octave.org>
-
-	* lo-specfun.cc: Use F77_XFCN instead of F77_FUNC for calls to
-	fortran code that could end up calling XSTOPX.
-
-2005-04-10  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: include oct-types in INCLUDES so that it is
-	installed
-
-2005-04-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (clean): Use exact filenames instead of *.xxx.
-
-	* Initial merge of 64-bit changes from Clinton Chee:
-
-	2005-04-07  John W. Eaton  <jwe@octave.org>
-
-	* MArray-i.cc, Array-i.cc: Instantiate Array<long> and MArray<long>.
-
-	* CSparse.cc, CSparse.h, MSparse.cc, MSparse.h, Sparse-op-defs.h,
-	Sparse.cc, Sparse.h, SparseCmplxLU.cc, SparseType.cc,
-	SparseType.h, SparsedbleLU.cc, boolSparse.cc, boolSparse.h,
-	dSparse.cc, dSparse.h, sparse-base-lu.cc:
-	Use octave_idx_type instead of int where needed.
-
-	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
-
-	* Array-util.cc, Array-util.h, Array.cc,Array.h, Array2.h,
-	Array3.h, ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
-	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
-	CMatrix.h, CNDArray.cc, CNDArray.h, CRowVector.cc, CRowVector.h,
-	CmplxAEPBAL.cc, CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h,
-	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc,
-	CmplxSCHUR.cc, CmplxSCHUR.h, CmplxSVD.cc, CmplxSVD.h, CollocWt.cc,
-	CollocWt.h, DAEFunc.h, DASPK-opts.in,DASPK.cc,DASPK.h,
-	DASRT-opts.in, DASRT.cc, DASRT.h, DASSL-opts.in, DASSL.cc,
-	DASSL.h, DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc,
-	FEGrid.h, LPsolve.cc, LPsolve.h, LSODE-opts.in, LSODE.cc, LSODE.h,
-	MArray-defs.h, MArray.cc, MArray.h, MArray2.cc, MArray2.h,
-	MArrayN.cc, MDiagArray2.cc, MDiagArray2.h, NLConst.h, NLEqn.cc,
-	NLEqn.h, Quad.cc, Quad.h, Range.cc,Range.cc, Range.h, base-de.h,
-	base-lu.cc, base-lu.h, base-min.h, boolMatrix.cc, boolMatrix.h,
-	boolNDArray.cc, boolNDArray.h, chMatrix.cc, chMatrix.h,
-	chNDArray.cc, chNDArray.h, dColVector.cc, dColVector.h,
-	dDiagMatrix.cc, dDiagMatrix.h, dMatrix.cc, dMatrix.h,
-	dNDArray.cc,dNDArray.cc, dNDArray.h, dRowVector.cc, dRowVector.h,
-	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleHESS.cc,
-	dbleHESS.h, dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc,
-	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, dim-vector.h, idx-vector.cc,
-	idx-vector.h, intNDArray.cc, intNDArray.h, lo-specfun.cc,
-	lo-specfun.h, mach-info.cc, mx-inlines.cc, oct-fftw.cc,
-	oct-fftw.h, oct-rand.cc, oct-rand.h, so-array.cc, so-array.h,
-	str-vec.cc, str-vec.h:
-	Use octave_idx_type instead of int where needed.
-
-	2005-04-01  John W. Eaton  <jwe@octave.org>
-
-	* dim-vector.h, lo-utils.h: Include oct-types.h.
-
-	* oct-types.h.in: New file.
-
-	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
-
-	* lo-utils.cc (NINTbig): New function.
-	* lo-utils.h: Provide decl.
-
-2005-04-06  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: Link to UMFPACK_LIBS.
-
-2005-04-05  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Avoid shadowed declaration in previous change.
-
-2005-04-01  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): For A(IDX-LIST) = RHS with A previously
-	undefined, correctly match colons in IDX-LIST with RHS dimensions
-	when resizing A.  When performing the assignment, just check that
-	the number of elements in RHS matches the number of elements
-	indexed by IDX-LIST.
-
-2005-03-30  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (log10, tan, tanh): Delete functions.
-	* lo-mappers.h (log10, tan, tanh): Delete decls.
-
-	* CColVector.cc, CNDArray.cc, CRowVector.cc, CSparse.cc,
-	dSparse.cc: Use std:: for Complex functions instead of relying on
-	wrappers from oct-cmplx.h.
-
-	* oct-cmplx.h: Provide typedef only.
-
-	* DiagArray2.cc (xelem): Don't use initializer for static data.
-	* DiagArray2.h (DiagArray<T>::Proxy::operator T ()):
-	Likewise.
-
-2005-03-26  John W. Eaton  <jwe@octave.org>
-
-	* cmd-edit.cc (do_readline): Wrap call to ::octave_rl_readline
-	with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
-
-2005-03-15  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (MATRIX_INC): Remove oct-spparms.h from the list.
-
-2005-03-14  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DISTFILES): Don't include $(UMFPACK_EXTRAS).
-	(DISTDIRS): Don't include UMFPACK.
-	(LIBOCTAVE_OBJECTS): Don't include $(UMFPACK_OBJ).
-	(UMFPACK_SPECIAL_1, UMFPACK_SPECIAL): No need for special include
-	flags for these files.
-	Don't include include $(srcdir)/UMFPACK.files.
-	Don't include include $(srcdir)/UMFPACK.rules.
-
-	* UMFPACK.README, UMFPACK.files, UMFPACK.patch, UMFPACK.rules:
-	Delete files.
-	* UMFPACK: Delete directory tree.
-
-	* dSparse.cc: Include <umfpack/umfpack.h> instead of just "umfpack.h".
-	* CSparse.cc: Likewise.
-	* SparsedbleLU.cc: Likewise.
-	* SparseCmplxLU.cc: Likewise.
-
-2005-03-14  David Bateman  <dbateman@free.org>
-
-	* CSParse.cc, SparseCmplxLU.cc, SparsedbleLU.cc, dSparse.cc:
-	Allow compilation to succeed if UMFPACK is not available.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (bin-dist): Delete target.
-	(BINDISTLIBS, BINDISTFILES): Delete variables.
-
-2005-03-01  John W. Eaton  <jwe@octave.org>
-
-	* ODESSA.h, ODESSA.cc, ODESSA-opts.in: Delete.
-	* Makefile.in: Remove them from the lists.
-
-2005-02-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (LINK_DEPS): Remove -lglob from the list.
-
-2005-02-27  David Bateman  <dbateman@free.org>
-
-	* Sparse.cc (Sparse<T>::reshape): Set cidx for the N last elements
-	in the sparse matrix.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	Sparse merge.
-
-	2005-02-13  David Bateman  <dbateman@free.fr>
-
-	* CSparse.cc (SparseComplexMatrix:dsolve, SparseComplexMatrix:utsolve,
-	SparseComplexMatrix::ltsolve, SparseComplexMatrix::trisolve,
-	SparseComplexMatrix::bsolve, SparseComplexMatrix:fsolve): Split sparse
-	solver into separate functions for the diagonal, upper, lower
-	triangular, tridiagonal, banded and full cases.
-	(SparseComplexMatrix::solve): rewrite to call the above function. One
-	version that probes the matrix type and another that assumes the type
-	is passed.
-
-	* dSparse.cc (SparseMatrix:dsolve, SparseMatrix:utsolve,
-	SparseMatrix::ltsolve, SparseMatrix::trisolve,
-	SparseMatrix::bsolve, SparseMatrix:fsolve): Likewise
-	(SparseMatrix::solve): Likewise
-
-	* CSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve, fsolve):
-	Declaration of new functions
-	* dSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve, fsolve):
-	Likewise
-
-	* CSparse.cc (operator !): Reverse the sense of the test.
-	* dSpase.cc (operator !): Likewise
-
-	* dSparse.h (type, band_size, is_dense, triangular_row_perm,
-	triangular_col_perm, sparse_info): Remove matrix type code
-	* CSparse.h (type, band_size, is_dense, triangular_row_perm,
-	triangular_col_perm, sparse_info): Likewise
-	* boolSparse.h (type, band_size, is_dense, triangular_row_perm,
-	triangular_col_perm, sparse_info): Likewise
-	* MSparse.h (type, band_size, is_dense, triangular_row_perm,
-	triangular_col_perm, sparse_info): Likewise
-	* Sparse.h (type, band_size, is_dense, triangular_row_perm,
-	triangular_col_perm, sparse_info, matrix_type): Likewise
-
-	* Sparse.cc (type, sparse_info, band_size): Remove type code
-
-	* SparseType.h: New class for the matrix type used in solvers
-	* SparseType.cc: methods of sparse matrix type class
-
-	* Makefile.in: Add SparseType.cc
-
-	2005-02-01  David Bateman  <dbateman@free.fr>
-
-	* UMFPACK: Update to version 4.4
-	* UMFPACK.patch: Version 4.4 contains most of the previous patch. Only
-	keep octave specific test files
-
-	2005-01-23  David Bateman  <dbateman@free.fr>
-
-	* dSparse.cc (SparseMatrix::solve): Include tridiagonal, cholesky
-	tridiagonal and banded cholesky solvers. Remove calculation of
-	condition number for banded solvers.
-	* CSparse.cc (SparseComplexMatrix::solve): ditto.
-
-	* Sparse.h (int type (int) const, bool is_dense (void) const):
-	new functions.
-	* MSparse.h (int type (int) const, bool is_dense (void) const): ditto
-	* dSparse.h (int type (int) const, bool is_dense (void) const): ditto
-	* CSparse.h (int type (int) const, bool is_dense (void) const): ditto
-	* boolSparse.h (int type (int) const, bool is_dense (void) const):
-	ditto
-
-	* Sparse.cc (int Sparse<T>::type (int) const,
-	bool Sparse<T>::is_dense (void) const): New functions definition
-
-	* Sparse.h (matrix_type typ): Move caching of matrix type to SparseRep,
-	so it actually is cached, but disable
-
-	* oct-spparms.cc (SparseParams::init_keys): Change spmoni to spumoni
-	for compatiability
-
-	2005-01-18  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T>::insert (const Array<T>&, const Array<int>&)):
-	Modify calculation of number elements to skip between copied blocks.
-
-	2005-01-07  David Bateman  <dbateman@free.fr>
-
-	* Sparse.h : Reverse definitions of numel and nelem.
-	* Sparse.cc (assign1): Use numel and not nelem
-	* Sparse-op-def.h: Replace all uses of nelem with numel
-
-	2005-01-07  David Bateman  <dbateman@free.fr>
-
-	* dbleDET.h: Make SparseMatrix a friend of the class DET
-	* CmplexDET.h: Make SparseComplexMatrix a friend of the class
-	ComplexDET
-	* dSparse.cc (SparseMatrix::determinant): Replace use of SparseDET
-	by DET
-	* dSparse.h (determinant): ditto
-	* CSparse.cc (SparseComplexMatrix::determinant): Replace use of
-	SparseComplexDET by ComplexDET
-	* CSparse.h (determinant): ditto
-	* SparsedbleDET.h, SparsedbleDET.cc, SparseCmplxDET.h,
-	SparseCmplxDET.cc: delete files
-	* Makefile.in: Delete reference to SparsedbleDET.h, SparsedbleDET.cc,
-	SparseCmplxDET.h andSparseCmplxDET.cc.
-
-	* CSparse.cc (SparseComplexMatrix::solve): Store matrix type in
-	local variable to avoid variable shadowing.
-	* dSparse.cc (SparseMatrix::solve): ditto.
-
-	* boolSparse.cc boolSparse.h CSparse.cc CSparse.h dSparse.cc
-	dSparse.h MSparse.cc MSparse-C.cc MSparse-d.cc MSparse-defs.h
-   	MSparse.h oct-spparms.cc oct-spparms.h Sparse-b.cc Sparse.cc
-	Sparse-C.cc SparseCmplxLU.cc SparseCmplxLU.h SparsedbleLU.cc
-	SparsedbleLU.h Sparse-d.cc Sparse.h Sparse-op-defs.h sparse-sort.cc
-	sparse-sort.h: Remove additional licensing clause with authors
-	permission.
-
-	2004-12-30  John W. Eaton  <jwe@octave.org>
-
-	* MSparse.cc (SPARSE_A2S_OP_2, SPARSE_SA2_OP_2):
-	Loop counter is int, not size_t.
-
-	* oct-spparms.cc (SparseParams::operator =): Return *this.
-
-	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Delete unused variable tmpval.
-
-	* dSparse.cc (operator << (ostream&, const SparseMatrix&), atan2):
-	Delete unused variables.
-	(SparseMatrix::solve): Avoid warnings about uninitialized
-	variables and variables that might be clobbered by longjmp.
-
-	* CSparse.cc (operator << (ostream&, const SparseComplexMatrix&),
-	min, max): Delete unused variables.
-	(SparseComplexMatrix::solve): Avoid warnings about uninitialized
-	variables and variables that might be clobbered by longjmp.
-
-	* Makefile.in (UMFPACK_SPECIAL): Include .d files in the list.
-
-	* Sparse-op-defs.h (SPARSE_SMS_BIN_OP_2, SPARSE_SSM_BIN_OP_2):
-	Loop counter is int, not size_t.
-
-	* CSparse.cc (SparseComplexMatrix::hermitian): Avoid shadow warnings.
-	* Sparse.cc (Sparse<T>::Sparse, Sparse<T>::type, assign): Likewise.
-
-	* Sparse.h (Sparse::SparseRep): Order data members and initializer
-	lists consistently.
-
-	* mx-base.h: Include boolSparse.h, dSparse.h, and CSparse.h.
-
-	2004-12-29  John W. Eaton  <jwe@octave.org>
-
-	* COLAMD.files (COLAMD_EXTRAS): New variable.
-	* UMFPACK.files (UMFPACK_EXTRAS): New variable.
-	* Makefile.in (DISTFILES): Add $(COLAMD_EXTRAS) and
-	$(UMFPACK_EXTRAS) to the list.
-	(DISTDIRS): New variable.
-	(dist): Handle $(DISTDIRS).
-
-	Merge of sparse code from David Bateman <dbateman@free.fr> and
-	Andy Adler <adler@site.uottawa.ca>.
-
-	* Makefile.in (VPATH): ADD @srcdir@/COLAMD to the list.
-
-	* Makefile.in (MAKEDEPS): Include $(COLAMD_SRC) and $(UMFPACK_SRC)
-	without directory prefix.
-
-	* Makefile.in (LIBOCTAVE_OBJECTS): Add $(COLAMD_OBJ) and
-	$(UMFPACK_OBJ) to the list.
-
-	* COLAMD: New directory.
-	* COLAMD.files: New file.
-	* Makefile.in: Include COLAMD.files.
-	(SOURCES): Add $(COLAMD_SOURCES) to the list.
-	(LIBOCTAVE_OBJECTS): Add $(COLAMD_OBJECTS) to the list.
-	(INCLUDES): Add $(COLAMD_INCLUDES) to the list.
-
-	* UMFPACK: New directory.
-	* UMFPACK.patch, UMFPACK.README, UMFPACK.files, UMFPACK.rules:
-	New files.
-	* Makefile.in: Include UMFPACK.files and UMFPACK.rules.
-	(SOURCES): Add $(UMFPACK_SOURCES) to the list.
-	(LIBOCTAVE_OBJECTS): Add $(UMFPACK_OBJECTS) to the list.
-	(INCLUDES): Add $(UMFPACK_INCLUDES) to the list.
-
-	* Makefile.in (SPARSE_MX_OP_INC): New variable.
-	(INCLUDES): Add it to the list.
-	(SPARSE_MX_OP_SRC): New variable.
-	(LIBOCTAVE_CXX_SOURCES): Add it to the list.
-	(distclean): Remove $(SPARSE_MX_OP_INC) and $(SPARSE_MX_OP_SRC).
-	(stamp-prereq): Depend on $(SPARSE_MX_OP_INC) and $(SPARSE_MX_OP_SRC).
-
-	* sparse-mk-ops.awk, sparse-mx-ops: New files.
-	* Makefile.in (DISTFILES): Add them to the lists.
-
-	* oct-spparms.h, sparse-sort.h: New files.
-	* Makefile.in (INCLUDES): Add them to the list.
-
-	* oct-spparms.cc, sparse-sort.cc: New files.
-	* Makefile.in (LIBOCTAVE_CXX_SOURCES): Add them to the list.
-
-	* sparse-base-lu.cc: New file.
-	* Makefile.in (TEMPLATE_SRC): Add it to the list.
-
-	* boolSparse.cc, CSparse.cc, dSparse.cc, MSparse.cc, Sparse.cc,
-	SparseCmplxDET.cc, SparseCmplxLU.cc, SparsedbleDET.cc,
-	SparsedbleLU.cc: New files.
-	* Makefile.in (MATRIX_SRC): Add them to the list.
-
-	* boolSparse.h, CSparse.h, dSparse.h, MSparse-defs.h, MSparse.h,
-	Sparse.h, oct-spparms.h, sparse-base-lu.h, SparseCmplxDET.h,
-	SparseCmplxLU.h, SparsedbleDET.h, SparsedbleLU.h,
-	Sparse-op-defs.h: New files.
-	* Makefile.in (MATRIX_INC): Add them to the appropriate lists.
-
-	* MSparse-d.cc, MSparse-C.cc, Sparse-b.cc, Sparse-d.cc,
-	Sparse-C.cc: New files.
-	* Makefile.in (TI_SRC): Add them to the list.
-
-2005-02-18  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::canonicalize_file_name) [HAVE_RESOLVEPATH]:
-	Pass current directory to octave_env::make_absolute.
-	Save value returned from octave_env::make_absolute in local var.
-	Pass const char*, not std::string as first arg of resolvepath.
-	Provide decl for resolved_len.
-
-2005-02-18  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::permute): Allow permutation vector longer
-	than number of dimenensions of permuted matrix.
-
-	* Array.cc (Array<T>::permute): Use zero-based indexing for perm_vec.
-	* Array-util.cc (calc_permutated_idx): Likewise.
-
-2005-02-10  David Bateman  <dbateman@free.fr>
-
-	* CNDArray.cc (ComplexNDarray::operator !): Change sense of test.
-	* CMatrix.cc (ComplexMatrix::operator !): Likewise.
-
-2005-02-09  John W. Eaton  <jwe@octave.org>
-
-	* file-ops.cc (file_ops::canonicalize_file_name): New functions.
-	* file-ops.h: Provide decls.
-
-	* kpse.cc (kpse_tilde_expand): Simply return NAME if it is empty.
-
-2005-02-08  John W. Eaton  <jwe@octave.org>
-
-	* Array-util.cc (freeze): Improve error message.
-
-2005-01-26  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T>::insert): Handle generic case, not just
-	special case for fast concatenation.
-
-2005-01-18  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Delete RET_ELT_TYPE arg.
-	Change all uses.  Use VAL instead of RET_ELT_TYPE when resizing.
-
-	* dNDArray.cc (NDArray::any): NaN does not count as a nonzero value.
-	* CNDArray.cc (ComplexNDArray::any): Likewise.
-
-2005-01-18  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T>::insert (const Array<T>&, const Array<int>&)):
-	Modify calculation of number elements to skip between copied blocks.
-
-2005-01-18  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.cc (IDX_VEC_REP::freeze): Call warning handler, not
-	error handler, to warn about resizing.
-
-2004-12-27  Martin Dalecki  <martin@dalecki.de>
-
-	* Array.cc, ArrayN.cc, base-lu.cc, boolMatrix.cc, boolNDArray.cc,
-	Bounds.cc, CColVector.cc, CDiagMatrix.cc, chMatrix.cc,
-	chNDArray.cc, CMatrix.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
-	CmplxDET.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc,
-	CmplxSCHUR.cc, CmplxSVD.cc, CNDArray.cc, CollocWt.cc,
-	CRowVector.cc, DASPK.cc, DASRT.cc, DASSL.cc, dbleAEPBAL.cc,
-	dbleCHOL.cc, dbleDET.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc,
-	dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc, dColVector.cc,
-	dDiagMatrix.cc, DiagArray2.cc, dMatrix.cc, dNDArray.cc,
-	dRowVector.cc, EIG.cc, FEGrid.cc, idx-vector.cc, int16NDArray.cc,
-	int32NDArray.cc, int64NDArray.cc, int8NDArray.cc, intNDArray.cc,
-	LinConst.cc, LPsolve.cc, LSODE.cc, MArray2.cc, MArray.cc,
-	MArrayN.cc, MDiagArray2.cc, NLEqn.cc, oct-alloc.cc, ODES.cc,
-	ODESSA.cc, Quad.cc, Range.cc, so-array.cc, uint16NDArray.cc,
-	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc:
-	Delete #pragma implementation.
-
-	* Array2.h, Array3.h, Array.h, ArrayN.h, base-lu.h, boolMatrix.h,
-	boolNDArray.h, Bounds.h, CColVector.h, CDiagMatrix.h, chMatrix.h,
-	chNDArray.h, CMatrix.h, CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h,
-	CmplxHESS.h, CmplxLU.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h,
-	CmplxSVD.h, CNDArray.h, CollocWt.h, CRowVector.h, DASPK.h,
-	DASRT.h, DASSL.h, dbleAEPBAL.h, dbleCHOL.h, dbleDET.h, dbleHESS.h,
-	dbleLU.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h,
-	dColVector.h, dDiagMatrix.h, DiagArray2.h, dim-vector.h,
-	dMatrix.h, dNDArray.h, dRowVector.h, EIG.h, FEGrid.h,
-	idx-vector.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
-	int8NDArray.h, intNDArray.h, LinConst.h, LPsolve.h, LSODE.h,
-	MArray2.h, MArray.h, MArrayN.h, MDiagArray2.h, NLConst.h, NLEqn.h,
-	ODES.h, ODESSA.h, Quad.h, Range.h, so-array.h, uint16NDArray.h,
-	uint32NDArray.h, uint64NDArray.h, uint8NDArray.h:
-	Delete #pragma interface.
-
-2004-12-17  John W. Eaton  <jwe@octave.org>
-
-	* lo-cieee.c (lo_ieee_signbit): New function.
-	* lo-ieee.h: Provide decl.
-	Don't define lo_ieee_signbit as a macro here.
-	From Orion Poplawski <orion@cora.nwra.com>.
-
-2004-11-18  John W. Eaton  <jwe@octave.org>
-
-	* int32NDArray.cc (pow): Delete instantiation.
-	* int16NDArray.cc (pow): Likewise.
-	* int8NDArray.cc (pow): Likewise.
-	* uint32NDArray.cc (pow): Likewise.
-	* uint16NDArray.cc (pow): Likewise.
-	* uint8NDArray.cc (pow): Likewise.
-
-2004-11-17  John W. Eaton  <jwe@octave.org>
-
-	* kpse.cc (str_llist_float, str_llist_add, kpse_var_expand):
-	Now static.
-	(DB_ENVS, DB_HASH_SIZE, DB_NAME, ALIAS_NAME, ALIAS_HASH_SIZE,
-	DEFAULT_TEXMFDBS): Delete unused macros.
-
-	* Array.cc (Array<T>::index): Call generic N-d indexing function
-	if idx_arg is N-d.
-
-2004-11-09  David Bateman  <dbateman@free.fr>
-
-	* dNDArray.cc (concat): Delete.
-	(NDArray::concat): New methods.
-	* dNDArray.h: Provide decls.
-
-	* CNDArray.cc (concat): Delete.
-	(ComplexNDArray::concat): New methods.
-	* CNDArray.h: Provide decls.
-
-	* boolNDArray.cc (concat): Delete.
-	(boolNDArray::concat): New methods.
-	* boolNDArray.h: Provide decls.
-
-	* chNDArray.cc (concat): Delete.
-	(charNDArray::concat): New methods.
-	* chNDArray.h: Provide decls.
-
-	* oct-inttypes.h (OCTAVE_INT_CONCAT_FN, OCTAVE_INT_CONCAT_DECL):
-	Delete macros.
-
-	* int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
-	uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
-	(OCTAVE_INT_CONCAT_DECL): Delete use of macro.
-
-	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
-	uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
-	(OCTAVE_INT_CONCAT_FN): Delete use of macro.
-
-	* intNDArray.cc (intNDArray<T>::concat): New method.
-	* intNDArray.h: Provide decl.
-
-2004-11-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.cc: New file.
-	* Makefile.in (TI_SRC): Add it to the list.
-	* oct-inttypes.h (OCTAVE_US_TYPE1_CMP_OP, OCTAVE_US_TYPE1_CMP_OPS,
-	OCTAVE_SU_TYPE1_CMP_OP, OCTAVE_SU_TYPE1_CMP_OPS,
-	OCTAVE_TYPE1_CMP_OPS, OCTAVE_US_TYPE2_CMP_OP,
-	OCTAVE_US_TYPE2_CMP_OPS, OCTAVE_SU_TYPE2_CMP_OP,
-	OCTAVE_SU_TYPE2_CMP_OPS, OCTAVE_TYPE2_CMP_OPS):
-	New macros for comparison operations.  Avoid potential
-	problems with default conversions when comparing signed and
-	unsigned values.
-
-2004-11-03  John W. Eaton  <jwe@octave.org>
-
-	* dMatrix.cc (Matrix::inverse): Return info == -1 for any failure.
-	* CMatrix.cc (ComplexMatrix::inverse): Likewise.
-
-2004-10-19  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assignN): Avoid resizing if assignment will fail.
-
-2004-10-18  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign2): Save result of squeeze operation.
-	Squeeze if ndims is > 2, not if length of RHS vector is > 2.
-
-2004-10-11  David Bateman  <dbateman@free.fr>
-
-	* oct-fftw.cc (class octave_fftw_planner): Add inplace[2] to
-	flag whether transform in- or out-of-place.
-	(octave_fftw_planner::octave_fftw_planner): Initialize it.
-	(octave_fftw_planner::create_plan): Use it.
-
-2004-09-24  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (assign2, assignN): If index is empty, allow RHS to be
-	any empty matrix, not just [].
-
-2004-09-23  John W. Eaton  <jwe@octave.org>
-
-	* mx-ops: Include scalar zero value in type definitions.
-	Delete zero information from ops section.
-	* mk-ops.awk: Use type-specific zero info.
-
-	* mx-op-defs.h (MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP,
-	SND_BOOL_OP, NDND_BOOL_OP): Args now include zero values for both
-	LHS and RHS.
-	(MS_BOOL_OPS2, SM_BOOL_OPS2, MM_BOOL_OPS2, NDS_BOOL_OPS2,
-	SND_BOOL_OPS2, NDND_BOOL_OPS2): New macros.
-	(MS_BOOL_OPS, SM_BOOL_OPS, MM_BOOL_OPS, NDS_BOOL_OPS,
-	SND_BOOL_OPS, NDND_BOOL_OPS): Define in terms of 2-zero versions.
-
-	* idx-vector.h (idx_vector::idx_vector_rep::idx_vector_rep (const
-	intNDArray<U>&)): Use explicit as_double () conversion in call to
-	tree_to_mat_idx.
-
-	* oct-inttypes.h (octave_int<T>::operator float): New conversion.
-	(pow): Instead of "if (b_val)", use "if (b_val != zero)".
-	Likewise for the "if (b_val & one)" test.
-	(operator <<, operator >>): Type of retval is octave_int<T1>, not T1.
-
-2004-09-23  David Bateman  <dbateman@free.fr>
-
-	* oct-inttypes.h (OCTAVE_INT_DOUBLE_CMP_OP, OCTAVE_DOUBLE_INT_CMP_OP):
-	New macros.  Use them to define mixed intX-double and double-intX ops.
-
-2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
-
-	* DASPK-opts.in, DASRT-opts.in, ODESSA-opts.in:
-	Fix doc string layout to avoid overfull hbox in printed output.
-
-2004-09-21  John W. Eaton  <jwe@octave.org>
-
-	* mach-info.h (octave_mach_info::flt_fmt_native): Delete.
-	* mach-info.cc (octave_mach_info::string_to_float_format):
-	For "native", set actual native format.
-	(octave_mach_info::float_format_as_string): Delete flt_fmt_native case.
-
-2004-09-17  David Bateman  <dbateman@free.fr>
-
-	* CmplxSCHUR.cc (CmplxSCHUR::init): New arg, calc_unitary to make the
-	calculation of the unitary matrix optional.
-	* dbleSCHUR.cc (SCHUR::init): Ditto.
-	* CmplxSCHUR.h, dbleSCHUR.h: Update decls.
-
-2004-09-15  David Bateman  <dbateman@free.fr>
-
-	* oct-sort.h (octave_sort<T>::set_compare (bool (*comp) (T, T))):
-	New function to set the comparison function for the sort.
-
-2004-09-10  John W. Eaton  <jwe@octave.org>
-
-	* lo-mappers.cc (xround): Fix typo.
-
-2004-09-08  John W. Eaton  <jwe@octave.org>
-
-	* Array.h (Array::~Array): Declare virtual.
-
-	* idx-vector.h (idx_vector::idx_vector): Initialize rep in member
-	initializaion list.  Don't set rep->count since the rep
-	constructor does that.
-
-2004-09-07  John W. Eaton  <jwe@octave.org>
-
-	* data-conv.cc (oct_data_conv::string_to_data_type): Handle dt_logical.
-	(oct_data_conv::data_type_as_string): Likewise.
-
-	* data-conv.h (oct_data_conv::data_type): Add dt_logical to list.
-
-	* Range.cc (round): Delete unused function.
-
-	* lo-mappers.cc (xround): Rename from round.  Change all uses.
-	If HAVE_ROUND, call round, otherwise fake with floor and ceil.
-
-	* oct-inttypes.h: Include <cmath> here.
-
-2004-09-03  David Bateman  <dbateman@free.fr>
-
-	* boolNDArray.cc (boolNDArray::concat, boolNDArray::insert):
-	New functions for boolean matrix concatenation.
-	* boolNDArray.h: Provide decls.
-
-2004-09-03  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttpes.h (OCTAVE_INT_CMP_OP): Convert operarands to double
-	to avoid signed/unsigned int comparison problems.
-
-	* mx-ops: Generate CMP and BOOL ops for mixed integer types and
-	for mixed integer and double types.
-
-	* mk-ops.awk: Output BIN_OP_DECLS, CMP_OP_DECLS, and BOOL_OP_DECLS
-	separately, and only if needed.
-
-	* oct-inttypes.h (octave_fit_to_range): Use constructor instead of
-	static_cast for type conversion.
-
-2004-09-01  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (pow, operator +, operator -, operator *,
-	operator /): Handle mixed integer/double ops.  If op generates a
-	NaN, set result to 0.
-	(octave_int::operator - (void)): Convert to double, then negate,
-	then fit to range.
-
-	* mx-ops: Define integer types.  Include declarations for mixed
-	integer/double ops.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (pow): Args now const reference.
-	(octave_int<T>::operator *=, octave_int<T>::operator /=,
-	octave_int<T>::operator <<=, octave_int<T>::operator >>=):
-	New member functions.
-	(OCTAVE_INT_BITSHIFT_OP): Delete macro.
-	(operator >> (const octave_int<T1>& x, const T2& y)):
-	Define in terms of >>=.
-	(operator << (const octave_int<T1>& x, const T2& y)):
-	Define in terms of <<=.
-	(bitshift): Operate on octave_int<T> objects, not the values, so
-	we get proper saturation properties.
-
-2004-08-31  David Bateman  <dbateman@free.fr>
-
-	* oct-inttypes.h (pow (constT, T)): New template.
-
-	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, uint8NDArray.cc,
-	uint16NDArray.cc, uint32NDArray.cc: Instantiate power function.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int::byte_size): New function.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (EXTRAS): Add intNDArray.cc to the list.
-
-	* data-conv.h (oct_data_conv::data_type): Include sized types.
-	Explicitly number enum elements.
-
-	* data-conv.cc (oct_data_conv::string_to_data_type (const
-	std::string&, int&, oct_data_conv::data_type&,
-	oct_data_conv::data_type&)): New function.
-	(oct_data_conv::string_to_data_type (const std::string&, int&,
-	oct_data_conv::data_type&)): New function.
-	(oct_data_conv::data_type_as_string): New function.
-
-	* dMatrix.cc (read_int, do_read, Matrix::read): Delete.
-	(write_int, do_write, Matrix::write): Delete.
-	* dMatrix.h (Matrix::read, Matrix::write): Delete decls.
-
-	* byte-swap.h: Use template functions and specialization.
-	Change all uses.
-	(swap_2_bytes, swap_4_bytes, swap_8_bytes): Delete.
-
-2004-08-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int_fit_to_range): Use template
-	specializations to avoid warnings about signed/unsigned comparisons.
-
-2004-08-28  John W. Eaton  <jwe@octave.org>
-
-	* data-conv.cc (do_float_format_conversion (unsigned char *,
-	size_t, int, oct_mach_info::float_format)): New function.
-	(GET_SIZED_INT_TYPE): New macro.
-	(string_to_data_type): Use it to return sized types corresponding
-	to Octave array data types.
-	(strip_spaces): New function.
-	(do_double_format_conversion, do_float_format_conversion): Pass
-	from_fmt and to_fmt.  Don't always assume the to_fmt is the native
-	float format.
-	(do_double_format_conversion,
-	IEEE_big_double_to_IEEE_little_double,
-	VAX_D_double_to_IEEE_little_double,
-	VAX_G_double_to_IEEE_little_double, Cray_to_IEEE_little_double,
-	IEEE_little_double_to_IEEE_big_double,
-	VAX_D_double_to_IEEE_big_double, VAX_G_double_to_IEEE_big_double,
-	Cray_to_IEEE_big_double, IEEE_little_double_to_VAX_D_double,
-	IEEE_big_double_to_VAX_D_double, VAX_G_double_to_VAX_D_double,
-	Cray_to_VAX_D_double, IEEE_little_double_to_VAX_G_double,
-	IEEE_big_double_to_VAX_G_double, VAX_D_double_to_VAX_G_double,
-	Cray_to_VAX_G_double):
-	Pass data as void*, not double*.
-	(do_float_format_conversion, IEEE_big_float_to_IEEE_little_float,
-	VAX_D_float_to_IEEE_little_float,
-	VAX_G_float_to_IEEE_little_float, Cray_to_IEEE_little_float,
-	IEEE_little_float_to_IEEE_big_float,
-	VAX_D_float_to_IEEE_big_float, VAX_G_float_to_IEEE_big_float,
-	Cray_to_IEEE_big_float, IEEE_little_float_to_VAX_D_float,
-	IEEE_big_float_to_VAX_D_float, VAX_G_float_to_VAX_D_float,
-	Cray_to_VAX_D_float, IEEE_little_float_to_VAX_G_float,
-	IEEE_big_float_to_VAX_G_float, VAX_D_float_to_VAX_G_float,
-	Cray_to_VAX_G_float):
-	Pass data as void*, not float*.
-
-2004-08-27  John W. Eaton  <jwe@octave.org>
-
-	* byte-swap.h (swap_bytes): New template versions, with
-	specializations.
-	(swap_2_bytes, swap_4_bytes, swap_8_bytes): Delete.
-	Change all uses.
-
-2004-08-24  David Bateman  <dbateman@free.fr>
-
-	* chNDArray.cc (concat): Check whether matrix to be inserted is
-	empty instead of checking final matrix.
-	* dNDArray.cc (concat): Likewise.
-	* CNDArray.cc (concat): Likewise.
-
-2004-08-23  David Bateman  <dbateman@free.fr>
-
-	* dim-vector.h (dim_vector::concat): Correct incrementation for
-	non-existent dimensions.
-
-2004-08-09  John W. Eaton  <jwe@octave.org>
-
-	* idx-vector.h (idx_vector::idx_vector_rep::tree_to_mat_idx
-	(const octave_int<U>&)): New member function.
-	(idx_vector::idx_vector_rep::tree_to_mat_idx (double, bool&),
-	idx_vector::idx_vector_rep::tree_to_mat_idx (int)):
-	Now member functions instead of static in idx-vector.cc.
-	(idx_vector::idx_vector_rep::idx_vector_rep (const octave_int<U>&),
-	idx_vector::idx_vector_rep::idx_vector_rep (const intNDArray<U>&)):
-	New template constructors.
-
-2004-08-05  John W. Eaton  <jwe@octave.org>
-
-	* EIG.cc (EIG::init): Add volatile qualifier to nvr decl.
-
-	* intNDArray.cc (intNDArray<T>::operator !, intNDArray<T>::all,
-	intNDArray<T>::any): Sprinkle with this-> as needed.
-	* mx-inlines.cc (MX_ND_REDUCTION, MX_ND_CUMULATIVE_OP): Likewise.
-
-2004-08-03  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::squeeze): Do nothing for 2-d arrays.  For
-	arrays with more than two dimensions and only one non-singleton
-	dimension, return a column vector.
-
-2004-07-28  John W. Eaton  <jwe@octave.org>
-
-	* oct-cmplx.h (pow (const Complex&, const double&):
-	Convert second arg to complex to avoid libstdc++ bug.
-
-2004-07-27  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (bitshift): New arg, MASK.
-	(OCTAVE_INT_BITSHIFT_OP): Bitshift does not saturate.
-
-2004-07-23  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc (Array<T>::reshape): Return *this if no change in size.
-
-2004-07-23  David Bateman  <dbateman@free.fr>
-
-	* Array.cc, Array.h (cat_ra): Delete.
-	* Array.h, Array-C.cc, Array-d.cc, Array-ch.cc, Array-i.cc
-	(INSTANTIATE_ARRAY_CAT): Delete.
-
-	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
-	chNDArray.h, intNDArray.cc, intNDArray.h (cat): Delete.
-
-	* Array.cc (Array<T>::insert): Copy data in NDArray version.
-
-	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
-	chNDArray.h (concat): New function used for concatenation that does
-	an indexed copy of one array into another.
-
-	* dim-vector.h (concat): New function to concatenate dim_vectors.
-
-	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
-	chNDArray.h, intNDArray.cc, intNDArray.h (insert): New function for
-	insertion of one NDArray into another.
-
-	* oct-inttype.cc (OCTAVE_INT_CONCAT_FN, OCTAVE_INT_CONCAT_DECL): New
-	macros to define the int/uint concatenation functions.
-
-	* uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
-	int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc
-	(OCTAVE_INT_CONCAT_FN): Instantiate the concatenation function .
-
-	* uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
-	int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h
-	(OCTAVE_INT_CONCAT_DECL): Declare the int/uint concatentaion
-	functions.
-
-2004-07-22  David Bateman  <dbateman@free.fr>
-
-	* oct-sort.h: Don't include oct-obj.h.
-
-	* lo-specfun.cc (is_integer_value): New function.
-	(zbesj, zbesi, zbesy): Special case negative integer or half
-	integer orders that cause overflow for small arguments.
-
-2004-07-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-inttypes.h (octave_int<T>::nbits): New function.
-	(bitshift (const octave_int<T>&, int)): New function.
-
-2004-06-14  John W. Eaton  <jwe@octave.org>
-
-	* mx-base.h: Include headers for new int types.
-
-	* dNDArray.h, dNDArray.cc (NDArray::NDArray (const boolNDArray&),
-	NDArray::NDArray (const charNDArray&)): Delete.
-	(template <class U> explicit NDArray (const intNDArray<U>&)): New
-	constructor.
-	(NDArray::squeze): Call MArrayN::squeeze, not ArrayN::squeeze.
-
-	* chMatrix.h (CharMatrix::transpose): New forwarding functions for
-	return type conversion.
-
-	* ComplexNDArray.h, ComplexNDArray.cc
-	(ComplexNDArray::ComplexNDArray (const ArrayN<Complex>&),
-	(ComplexNDArray::ComplexNDArray (const NDArray&),
-	(ComplexNDArray::ComplexNDArray (const boolNDArray&),
-	(ComplexNDArray::ComplexNDArray (const charNDArray&)): Delete.
-
-	(ComplexNDArray::squeze): Call MArrayN::squeeze, not ArrayN::squeeze.
-
-	* MArrayN.h:
-	(template <class U> explicit MArrayN<T>::MArrayN (const Array2<U>&),
-	(template <class U> MArrayN<T>::MArrayN (const ArrayN<U>&),
-	(template <class U> explicit MArrayN<T>::MArrayN (const MArray<U>&)):
-	New constructors.
-	(ArrayN<T>::reshape, ArrayN<T>::permute, ArrayN<T>::ipermute,
-	ArrayN<T>::squeeze):
-	New forwarding functions for return type conversion.
-
-	* ArrayN.h:
-	(template <class U> explicit ArrayN<T>::ArrayN (const Array2<U>&),
-	(template <class U> explicit ArrayN<T>::ArrayN (const ArrayN<U>&),
-	(template <class U> explicit ArrayN<T>::ArrayN (const Array<U>&),
-	(template <class U> explicit ArrayN<T>::ArrayN (const Array<U>&,
-	const dim_vector&)): New constructors.
-	(ArrayN<T>::reshape, ArrayN<T>::permute, ArrayN<T>::ipermute,
-	ArrayN<T>::transpose):
-	New forwarding functions for return type conversion.
-
-	* Array.h (template <class U> Array<T>::Array (const Array<U>&)):
-	New constructor.
-	(Array<T>::coerce, Array<T>::byte_size): New functions.
-
-	* Array-i.cc, MArray-i.cc: Instantiate new integer types.
-
-	* oct-inttypes.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
-	int8NDArray.h , intNDArray.h, uint16NDArray.h, uint32NDArray.h,
-	uint64NDArray.h, uint8NDArray.h, int16NDArray.cc, int32NDArray.cc,
-	int64NDArray.cc, int8NDArray.cc, intNDArray.cc, uint16NDArray.cc,
-	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2004-06-04  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): New arg, RET_ELT_TYPE.  Use
-	"RET_ELT_TYPE ()" rather than "false" as fill value for retval
-	resize op.  Change all uses.
-
-2004-06-03  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (assignN): Allow magic colon for dimensions lvalue
-	greater than the existing number of dimensions in lvalue.
-
-2004-04-30  David Bateman  <dbateman@free.fr>
-
-	* dim_vector.h (dim_vector::dim_vector_rep::dim_vector_rep):
-	New arg, fill_value.
-	(dim_vector::resize): Allow optional fill_value argument.
-
-	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&)):
-	Don't chop trailing dimensions of Array<idx_vector> if there is
-	more than one element in idx_vector.  Resize the return value to
-	the size of Array<idx_vector>.
-
-	* Array-util.cc (short_freeze): Better freeze of last dimension of
-	idx_vector that is shorter than a dim_vector.
-
-2004-04-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-sort.cc: Don't include oct-obj.h.
-
-2004-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::index2, Array<T>::indexN):
-	Don't set invalid dimensions on return value.
-
-2004-04-21  John W. Eaton  <jwe@octave.org>
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Chop trailing singletons.
-
-2004-04-06  David Bateman  <dbateman@free.fr>
-
-	* Array.cc (Array<T>::resize_no_fill (const dim_vector& dv),
-	Array<T>::resize_and_fill (const dim_vector& dv, const T& val)):
-	Make their behavior equivalent except for filling vs. not filling.
-
-  	* oct-sort.cc: New template class for arbitrary sorting.
-  	* oct-sort.h: Declaration of sort class.
-  	* Makefile: Add them to the appropriate lists.
-
-2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Fix off-by-one error.
-
-2004-04-02  David Bateman  <dbateman@free.fr>
-
-	* lo-specfun.cc (besselj, bessely, besseli, besselk, besselh1,
-	besselh2, airy, biry, betainc, gammainc, do_bessel):
-	New N-d array versions.
-	(SN_BESSEL, NS_BESSEL, NN_BESSEL): New macros.
-	* lo-specfun.h (besselj, bessely, besseli, besselk, besselh1,
-	besselh2, airy, biry, betainc, gammainc): Provide decls.
-
-	* dNDArray.cc (NDArray::min, NDArray::max, min, max):
-	New functions.
-	* dNDArray.h (NDArray::min, NDArray::max, min, max): Provide decls.
-
-	* CNDArray.cc (ComplexNDArray::min, ComplexNDArray::max, min, max):
-	New functions.
-	* CNDArray.h (ComplexNDArray::min, ComplexNDArray::max, min, max):
-	Provide decls.
-
-2004-03-17  David Hoover  <jazzdaq@yahoo.com>
-
-	* DASPK.cc (DASPK::do_integrate): Always add n*n elements to the
-	work vector, not just when using a numerical Jacobian.
-
-2004-03-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* so-array.cc (SND_CMP_OP, NDS_CMP_OP, NDND_CMP_OP):
-	Omit empty result args.
-
-	* Array.cc (Array<T>::Array (const Array<T>&, const dim_vector&)):
-	Move here from Array.h, check that size of array arg is not
-	smaller than the size defined by the new dimensions.
-
-2004-03-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::index2): Allow result to be N-d if indexing
-	a scalar or vector with an N-d array.
-
-2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::index2): If scalar or vector is indexed by
-	matrix, return object that is the same size as the index.
-
-	* mx-op-defs.h (NDND_CMP_OP, MM_CMP_OP): Require dimensions to agree.
-	Eliminate MT_RESULT args.  Return value is always size of args.
-	(MS_CMP_OP, SM_CMP_OP, NDS_CMP_OP, SND_CMP_OP):
-	Eliminate EMPTY_RESULT arg.
-	Return value is always size of matrix or N-d array arg.
-	(TBM, FBM, NBM): Delete unused macros.
-
-2004-03-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::maybe_delete_elements): Return immediately
-	if all LHS dimensions are zero.  For one index case, freeze and
-	sort idx_vec before checking length, and do nothing if
-	num_to_delete is zero.
-	(Array<T>::maybe_delete_elements_2): Omit Fortran-indexing warning.
-
-2004-03-04  David Bateman  <dbateman@free.fr>
-
-	* dNDArray.cc (NDArray::ifourier): Arg is int, not const int.
-	* CNDArray.cc (ComplexNDArray::ifourier): Likewise.
-
-2004-03-03  Hans Ekkehard Plesser  <hans.ekkehard.plesser@nlh.no>
-
-	* base-lu.cc (base_lu<>::L): Check bounds before setting diagonal
-	element.
-
-2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.h (Range::Range): Add cache to member initialization list.
-	(Range::clear_cache): New private function.
-
-	* Range.h (Range::set_base, Range::set_limit, Range::set_inc):
-	Use clear cache.  Don't do anything if range does not change.
-	* Range.cc (Range::sort): Likewise.
-
-2004-03-02  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Range.cc (Range::matrix_value): Cache result.
-	(Range::sort): Clear cache.
-	* Range.h (Range::cache): New data member.
-	(Range::set_base, Range::set_limit, Range::set_inc): Clear cache.
-	(Range::print_range): Delete.
-
-2004-03-02  David Bateman  <dbateman@free.fr>
-
-	* oct-fftw.cc: Only two versions of plan, and avoid endless
-	changes between them.  Faster for small fft's.
-	(octave_fftw_planner::simd_align, octave_fftw_planner::rsimd_align):
-	New member variables.
-	(octave_fftw_planner::ialign, octave_fftw_planner::oalign,
-	octave_fftw_planner::rialign, octave_fftw_planner::roalign): Delete.
-	Change all uses.
-	(CHECK_SIMD_ALIGNMENT): New macro.
-	(octave_fftw_planner::create_plan): Use it.
-
-2004-03-01  Petter Risholm  <risholm@idi.ntnu.no>
-
-	* Array.cc (Array<T>::insertN): Eliminate N-d indexing.
-
-	* mx-inlines.cc (MX_ND_CAT): Delete macro.
-
-	* dNDArray.h, chNDArray.h, CNDArray.h (cat): Change declaration.
-	* dNDArray.cc (NDArray<T>::cat): Call new form of cat function.
-	* chNDArray.cc (charNDArray<T>::cat): Ditto.
-	* CNDArray.cc (ComplexNDArray<T>::cat): Ditto.
-
-	* Array.h (cat_ra): Return int.  Accept idx and move args, not add_dim.
-	* Array.cc (cat_ra): Speed up implementation by avoiding N-d indexing.
-
-2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c (octave_rl_set_startup_hook,
-	octave_rl_get_startup_hook, octave_rl_set_event_hook,
-	octave_rl_get_event_hook): Omit casts.
-	* oct-rl-edit.h (rl_startup_hook_fcn_ptr, rl_event_hook_fcn_ptr):
-	Return value for function pointer typedef is now int.
-	* cmd-edit.h (command_editor::startup_hook_fcn,
-	command_editor::event_hook_fcn): Likewise.
-	* cmd-hist.cc, cmd-hist.h (command_history::goto_mark,
-	command_history::do_goto_mark, gnu_history::do_goto_mark):
-	Return type is now int.  Return 0.
-
-	* EIG.cc (EIG::init, EIG::symmetric_init):
-	Query Lapack for workspace size.
-
-2004-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::resize_and_fill (const dim_vector&, const T&)):
-	Fix thinko in extending dimensions.
-
-2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (Range::matrix_value, Range::min, Range::max):
-	Don't compute values beyond the limits of the range.
-	(operator << (std::ostream&, const Range&)): Likewise.
-
-2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-fftw.cc (octave_fftw_planner::create_plan):
-	Cast IN and OUT	args to ptrdiff_t instead of long before masking.
-	From Paul Kienzle <pkienzle@users.sf.net>.
-
-	* Array.cc (Array<T>::insertN (const Array<T>&, int, int)):
-	Rename from Array<T>::insert.
-	(Array<T>::insert2 (const Array<T>&, int, int)):
-	Reinstate old Array<T>::insert function under this name.
-	(Array<T>::insert (const Array<T>&, int, int)):
-	New function.  Dispatch to insert2 or insertN as appropriate.
-
-2004-02-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-fftw.cc (convert_packcomplex_1d, convert_packcomplex_Nd):
-	Sprinkle with OCTAVE_QUIT.
-
-2004-02-16  David Bateman  <dbateman@free.fr>
-
-	* oct-fftw.cc (octave_fftw_planner::create_plan, octave_fftw::fftNd):
-	Add support for FFTW 3.x. Include the ability to
-	use the real to complex transform for fft's of real matrices
-	(octave_fftw_planner::create_plan2d): Delete.
-	(octave_fftw::fft2d): Delete.
-	(convert_packcomplex_1d, convert_packcomplex_Nd):
-	New static functions.
-	* oct-fftw.h: Update decls.
-
-	* dMatrix.cc (Matrix::fourier, Matrix::ifourier,
-	Matrix::fourier2d, Matrix::ifourier2d): FFT's use real to complex
-	transforms.  1D FFT of a matrix done as single call rather than
-	loop.  Update for FFTW 3.x
-	* CMatrix.cc (ComplexMatrix::fourier, ComplexMatrix::ifourier,
-	ComplexMatrix::fourier2d, ComplexMatrix::ifourier2d): 1D fft of a
-	matrix done as single call rather than loop.  Update for FFTW 3.x.
-
-	* dNDArray.cc (NDArray::fourier, NDArray::ifourier,
-	NDArray::fourierNd, NDArray::ifouriourNd): New fourier transform
-	functions for Nd arrays.
-	* dNArray.h Provide decls.
-	* CNDArray.cc (ComplexNDArray::fourier, ComplexNDArray::ifourier,
-	ComplexNDArray::fourierNd, ComplexNDArray::ifouriourNd): New
-	fourier transform functions for complex Nd arrays.
-	* CNArray.h: Provide decls.
-
-2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::insert (const Array<T>&, int, int)):
-	Make it work for N-d arrays.
-
-	* ArrayN.h (ArrayN<T>::insert (const ArrayN<T>& a, int, int)):
-	New function.
-
-	* CNDArray.cc (ComplexNDArray::insert (const NDArray&, int, int),
-	ComplexNDArray::insert (const ComplexNDArray&, int, int)):
-	New functions.
-	* CNDArray.h: Provide decls.
-
-2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LINK_DEPS): Always define.
-
-	* Array.cc (Array<T>::squeeze): Always return an array with at
-	least two dimensions.
-
-2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* mx-inlines.cc (MX_ND_CAT): New macro.
-	* dNDArray.cc (NDArray::cat): New function.
-	* dNDArray.h: Provide decls.
-	* CNDArray.cc (complexNDArray::cat): New function.
-	* CNDArray.h: Provide decls.
-	* chNDArray.cc (charNDArray::cat): New function.
-	* chNDArray.h: Provide decls.
-
-2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (maybe_delete_elements_2): Allow X(n) = [] for 2-d X.
-	(Array<T>assign2): Also call maybe_delete_elements for single
-	index when rows and columns or LHS are both greater than 1.
-
-2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::maybe_delete_elements):
-	Check for index out of bounds.	Handle one index.
-
-	* Array.cc (Array<T>::indexN): Use dim_vector (0, 0) instead of
-	dim_vector (0) to create empty return vector.
-
-2004-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::assignN): Don't crash if trying to resize a
-	non-empty LHS when the number of lhs dimensions is less than the
-	number of indices.  Detect error if attempting to resize non-empty
-	LHS with colon indices.
-
-2004-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::resize_and_fill): Don't bother to assign any
-	values unless the length of the new array is greater than 0.
-	(Array<T>::resize_no_fill): Likewise.
-
-	* Array-util.cc (index_in_bounds): Also return false if ra_idx(i)
-	is equal to dimensions(i).
-
-	* Array-util.h, Array-util.cc (equal_arrays, any_zero_len,
-	get_zero_len_size, number_of_elements):
-	Delete unused functions.
-
-	* Array-util.cc (get_ra_idx): Use dim_vector::numel instead of
-	number_of_elements function.
-	* Array.cc (Array<T>::indexN): Likewise.
-
-	* Array.cc (Array<T>::indexN): Use dim_vector::operator == instead
-	of equal_arrays function.
-	(Array<T>::index, Array<T>::indexN, Array<T>::assignN) Use
-	dim_vector::any_zero instead of any_zero_len function.
-
-	* Array.cc (Array<T>::assignN): Eliminate special case for empty index.
-	Don't skip reshaping and resizing if RHS is empty.
-
-	* Array.cc (Array<T>::assignN): Simplify loop for array	assignment.
-	Move body of MAYBE_RESIZE_ND_DIMS here since it is only used once.
-	Delete unused variables is_colon and is_colon_equiv.
-	Correctly resize for expressions like x(:,:,2) = ones(3,3) when
-	LHS is not yet defined.
-	Error for resizing if number of indices is less than number of LHS
-	dimensions.
-
-	* Array.cc (Array<T>::maybe_delete_elements): Maybe warn about
-	Fortran-style indexing.
-
-2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::assignN): Simplify.
-	Allow assignments to succeed if number if indices is less than the
-	number of RHS dimensions.
-
-2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::maybe_delete_elements): Reshape LHS
-	when number of indices is less than number of dimensions.
-
-	* Array.cc (Array<T>::assignN, Array<T>::maybe_delete_elements):
-	Remove unsued variable lhs_inc.
-
-	* Array.cc (Array<T>::maybe_delete_elements): Declare idx_is_colon
-	and idx_is_colon_equiv Array<int> instead of dim_vector.
-
-	* Array.cc (Array<T>::assignN): Compute new dims in a cleaner way.
-
-	* Array.cc (Array<T>::index): Check for frozen_lengths.length ()
-	== n_dims before checking to see if all indices are colon_equiv.
-
-2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::assignN): Require RHS == 0x0 matrix for
-	deleting elements.
-	(Array<T>::index): Remove trailing singletons in ra_idx, but leave
-	at least ndims elements.
-
-2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::assignN): Accept assignment of a vector
-	oriented differently from the index.
-
-	* dim-vector.h (dim_vector::squeeze): Return value always has at
-	least two dimensions.
-
-2004-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dim-vector.h (dim_vector::squeeze): New function.
-	(Array<T>::assignN): Use it instead of chop_trailing_singltons for
-	deciding whether the assignment conforms.
-
-	* Array.cc (Array<T>::assignN): Simplify dimension check by
-	comparing rhs_dims and frozen_len sans trailing singletons.
-
-2004-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (tree_to_mat_idx): New arg, conversion_error.
-	Call error handler and return conversion_error == true if arg is
-	not integer.
-	(IDX_VEC_REP::idx_vector_rep): Exit early if conversion_error.
-
-2004-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* boolNDArray.h (boolNDArray::boolNDArray): Declare dim_vector
-	reference arg const.
-
-2004-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-flags.cc: Include Array-flags.h, not Array.h.  Doh.
-
-2004-01-30  Jakub Bogusz  <qboosh@pld-linux.org>
-
-	* Array-flags.h (liboctave_wfi_flag, liboctave_wrore_flag):
-	Now bool, to match definition in Array-flags.cc.
-
-2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc: Include <vector> instead of <memory> for new
-	definition of OCTAVE_LOCAL_BUFFER.
-
-	* EIG.cc, EIG.h (EIG::init, EIG::symmetric_init, EIG::hermitian_init):
-	New arg, calc_eigenvectors.
-	* EIG.h (EIG:EIG): New optional arg, calc_eigenvectors.
-	Based on patch from David Bateman <dbateman@free.fr>.
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::assign2, Array<T>::assignN):
-	For X(I) = RHS, don't restrict I to fewer elements than X.
-
-	* Array.cc (Array<T>::assign2): Simplify indexing for X(I) = RHS case.
-
-2004-01-22  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* mx-inlines.cc	(MX_ND_REDUCTION, MX_ND_CUMULATIVE_OP):
-	Simplify calculation of number of elements in retval.
-
-	* Array.cc (Array<T>::assignN): Eliminate unnecessray code for
-	filling when RHS is scalar and dimension lengths agree.
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean): Remove mx-ops.h, $(MX_OP_INC),
-	$(VX_OP_INC), $(MX_OP_SRC), $(VX_OP_SRC), and $(OPTS_INC).
-
-2004-01-22  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::resize_and_fill): Correctly copy old elements.
-	(Array<T>::assign2): Check for RHS dimensions larger than 2.
-
-2004-01-21  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.h (Array<T>::chop_trailing_singletons): New function.
-	* Array.cc (Array<T>::assignN): Use it on LHS.
-
-	* Array.cc (Array<T>::assignN): Fix incorrectly nested if statement.
-	Retrieve scalar element by passin 0 instead of an index array.
-	Check for singleton dimensions where RHS is matrix or higher dimension.
-	Make sure index is in bounds.
-
-2004-01-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): Ensure that octave_Inf,
-	octave_NaN, and octav_NA values are always initialized.  Check
-	floating point format, not HAVE_ISINF, HAVE_FINITE, or HAVE_ISNAN
-	to decide whether to do IEEE initialization.
-
-2004-01-06  David Bateman  <dbateman@free.fr>
-
- 	* CNDArray.cc (ComplexNDArray::any_element_is_inf_or_nan,
- 	ComplexNDArray::all_elements_are_real, ComplexNDArray::all_integers,
- 	ComplexNDArray::too_large_for_float): New functions
-
- 	* CNDArray.cc (operator <<, operator >>): New IO operators.
- 	* CNDArray.h: Provide decls.
- 	* dNDArray.cc (operator <<, operator >>): New IO operators.
- 	* dNDArray.h: Provide decls.
-
-2003-12-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-ops: Delete bnda x bnda, b x bnda, and bnda x b ops since
-	they are already defined in boolNDArray.cc.
-
-	* Array-util.cc (get_zero_len_size): Delete.
-	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&)):
-	Handle zero-length result dimensions the same as empty original
-	indices.
-
-2003-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dim-vector.h (dim_vector::chop_trailing_singleton_dims,
-	dim_vector::dim_vector_rep::chop_trailing_singleton_dims):
-	New functions.
-	* Array.cc (ArrayN<T>::indexN): Use it.
-	(ArrayN<T>::index (Array<idx_vector>&, int, const T&)): Likewise.
-
-2003-11-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* boolNDArray.cc: Define BOOL ops.  Define mixed CMP ops.
-	* boolNDArray.h: Declare BOOL ops.  Declare mixed CMP ops.
-
-2003-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-ops.awk: Also emit #include "Array-util.h".
-
-	* mx-ops: Add bool, boolMatrix, and boolNDarray types.
-	Add bnda x bnda, b x bnda, and bnda x b ops.
-
-	* MArray-misc.cc: Delete.
-	* Makefile.in (MATRIX_SRC): Remove it from the list.
-
-	* Array-util.h, Array-util.cc (gripe_nonconformant): Move here from
-	MArray.h, MArray2.h, MArrayN.h, and MArray-misc.cc.
-
-2003-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleQR.cc (QR::init): Use separate pwork pointers.
-	* CmplxQR.cc (ComplexQR::init): Likewise.
-
-	* oct-group.cc (octave_group::getgrnam): Pass correct args to
-	two-arg getgrnam version.
-
-	* Array.cc (assignN): Allow single indexing to work.
-	(Array<T>::range_error (const char*, const Array<int>&)):
-	Report index values.
-
-	* Array.cc (Array<T>::index): Delete unused arg names.
-	* ODESSA.cc (odessa_j): Likewise.
-	* DASRT.cc (ddasrt_f, ddasrt_g): Likewise.
-	* DASPK.cc (ddaspk_psol): Likewise.
-	* lo-mappers.cc (imag): Likewise.
-	* Array-util.cc (get_zero_len_size): Likewise.
-	* kpse.cc (path_search, path_find_first_of): Likewise.
-	* cmd-edit.cc (do_generate_filename_completions): Likewise.
-
-	* dim-vector.h (dim_vector::all_ones): New function.
-
-2003-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.h (idx_vector::orig_empty): Check orig_dims for
-	zeros, not orig_rows or orig_columns.
-	(idx_vector::idx_vector_rep::orig_rows): Define using orig_dims.
-	(idx_vector::idx_vector_rep::orig_columns): Likewise.
-
-	* idx-vector.cc (idx_vector::idx_vector_rep::orig_nr,
-	(idx_vector::idx_vector_rep::orig_nc): Delete.
-
-	* idx-vector.cc (idx_vector::idx_vector_rep):
-	Use initialization lists for constructors.
-
-	* Array.cc (Array<T>::indexN): Correctly handle single colon index.
-	Omit special case for ra_idx.capacity () == 1.
-	Always allow single index for matrix args with optional warning.
-
-	* idx-vector.h, idx-vector.cc: Convert boolMatrix functions to use
-	boolNDArray.  Likewise, convert Matrix functions to use	NDArray.
-
-	* Array-so.cc: New file.  Move instantiations here from so-array.h.
-	* Makefile.in (TI_SRC): Add it to the list.
-
-	* MArray-defs.h (DO_VS_OP2, DO_VV_OP2): Accept args for element
-	type and the names of the left and right operands.  Change all uses.
-
-	* so-array.cc, so-array.h: New files.  Move streamoff_array here
-	from src/ov-streamoff.h and src/ov-streamoff.cc.
-
-2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArrayN.cc (operator -=, operator +=): Check dimensions, not
-	just length.
-
-	* Array2.h, Array3.h, DiagArray2.h, DiagArray2.cc, MDiagArray2.h,
-	ArrayN.h:  Add this-> or Base:: qualifiers for references to
-	non-dependent member functions and data as needed.
-
-	* DiagArray2.h, DiagArray2.cc: Delete unused code.
-
-	* Array2.h (Array2<T>::operator =): Don't copy dimensions here.
-	* Array3.h (Array3<T>::operator =): Likewise.
-	* DiagArray2.h (DiagArray2<T>::operator =): Likewise.
-	Include Array.h, not Array2.h.
-
-2003-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* str-vec.cc (list_in_columns): Fix previous change.
-
-	* dim-vector.h (dim_vector::num_ones): New function.
-	* Array.cc (maybe_delete_elements): Use it instead of
-	num_ones (const Array<int>&).
-
-	* Array.cc (assignN): Omit dubious check of singleton dimensions.
-
-	* dNDArray.cc (NDArray::all_elements_are_int_or_inf_or_nan,
-	NDArray::any_element_is_inf_or_nan, NDArray::too_large_for_float):
-	New functions.
-	* dNDArray.h: Provide decls.
-
-	* dMatrix.h (Matrix::any_element_is_negative,
-	Matrix::any_element_is_inf_or_nan, Matrix::too_large_for_float,
-	Matrix::all_elements_are_int_or_inf_or_nan, Matrix::all_integers):
-	Simplify.
-
-	* dNDArray.cc (NDArray::abs): Make it work for N-d arrays.
-	* CNDArray.cc (ComplexNDArray::abs): Likewise.
-
-	* dNDArray.cc (real, imag): New functions.
-	* dNDArray.h: Provide decls.
-
-2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (TEMPLATE_SRC): Move MArrayN.cc here from MATRIX_SRC.
-
-2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (Array<T>::resize (int, const T&)): Reinstate.
-	* MArray.h (resize): Delete.
-	* MArray2.h (resize): Delete.
-	* DASRT.cc (DASRT::integrate): Use resize, not resize_and_fill.
-	* ODESSA (ODESSA::integrate): Likewise.
-
-2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (dist): Depend on stamp-prereq.
-
-2003-11-12  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mach-info.c (oct_mach_info::init_float_format) [CRAY]:
-	Kluge to make it work.
-
-	* lo-ieee.cc (octave_ieee_init): Set octave_Inf, octave_NaN, and
-	octave_NA to DBL_MAX if native float format is vaxd, vaxg, or cray.
-
-	* cmd-edit.cc (gnu_readline::do_generate_filename_completions,
-	default_command_editor::do_generate_filename_completions,
-	command_editor::generate_filename_completions): New functions.
-	* cmd-edit.h: Provide decls.
-	* oct-rl-edit.c (octave_rl_filename_completion_function): New
-	function.
-	* oct-rl-edit.h: Provide decl.
-
-2003-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (INSTANTIATE_ARRAY_ASSIGN, INSTANTIATE_ARRAY_AND_ASSIGN,
-	INSTANTIATE_ARRAY): New macros.
-	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-i.cc,
-	Array-idx-vec.cc, Array-s.cc, Array-str.cc, ODESSA.cc: Use them.
-
-	* Array.h (Array<T>::ipermute): New function.
-
-2003-11-11  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (Array<T>::permute): New function.
-	* Array.h: Provide decl.
-
-	* Array-util.cc (calc_permutated_idx): New function.
-	* Array-util.h: Provide decl.
-
-2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::index2): Return value has orientation of
-	indexed value if indexing a vector with a bool matrix.
-
-	* ArrayN.h (ArrayN<T>::get_size): Delete.
-
-	* Array.cc, ArrayN.cc, dNDArray.cc, CNDArray.cc, boolNDArray.cc,
-	chNDArray.cc: Include Array-util.h instead of ArrayN-inline.h.
-
-	* ArrayN-inline.h: Delete.
-	* Array-util.h, Array-util.cc: New files, from ArrayN-inline.h.
-	* Makefile.in: Fix the appropriate lists.
-
-	* Array.cc, Array.h, ArrayN.h, CMatrix.cc, CNDArray.h,
-	CRowVector.cc, CmplxQR.cc, CollocWt.h, DASPK.h, DASRT.h, DASSL.h,
-	FEGrid.cc, LP.h, LSODE.h, MArrayN.h, ODE.h, ODES.h, ODESSA.cc,
-	boolNDArray.h, chNDArray.h, dMatrix.cc, dNDArray.h, dRowVector.cc,
-	dbleQR.cc, kpse.cc, oct-rl-hist.c, str-vec.cc, str-vec.h:
-	Avoid -Wshadow warnings.
-
-2003-11-08  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (Array<T>::nil_rep): Qualify return type with typename.
-
-	* mk-ops.awk: Delete elements of bool_headers array individually.
-
-2003-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (maybe_delete_elements): Rename arg idx to ra_idx.
-
-2003-10-31  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): New macro.
-
-	* CNDArray.cc, CNDArray.h (ComplexNDArray::cumsum,
-	ComplexNDArray::cumprod): Return ComplexNDArray.  Handle N-d arrays.
-	* dNDArray.cc, dNDArray.h (NDArray::cumsum, NDArray::cumprod):
-	Return NDArray.  Handle N-d arrays.
-
-2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (LSODE::do_integrate): Avoid name conflict on systems
-	that upcase Fortran names by calling dlsode instead of lsode.
-
-	* ODESSA.cc (ODESSA::do_integrate): Avoid name conflict on systems
-	that upcase Fortran names by calling dodessa instead of odessa.
-
-	* file-ops.cc (file_ops::symlink): Cope with systems that expect
-	non-const args for symlink system call.
-	(file_ops::readlink): Likewise, for readlink.
-
-	* DASRT.cc (DASRT::integrate): Fix typo in Fortran function name.
-
-2003-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mach-info.h (oct_mach_info): Prefix enum elements with flt_fmt_.
-	Change all uses.
-
-2003-10-29  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* dNDArray.cc (NDArray::cumprod, NDArray::cumsum, NDArray::prod,
-	NDArray::sum, NDArray::sumsq, NDArray::abs): New functions.
-	* dNDArray.h: Provide decls.
-	* CNDArray.cc (ComplexNDArray::cumprod, ComplexNDArray::cumsum,
-	ComplexNDArray::prod, ComplexNDArray::sum, ComplexNDArray::sumsq,
-	ComplexNDArray::abs): New functions.
-	* CNDArray.h: Provide decls.
-
-	* mx-inlines.cc (MX_ND_REDUCTION): Rename from MX_ND_ANY_ALL.
-	Generalize to handle other reduction operations.
-	(MX_ND_REAL_OP_REDUCTION, MX_ND_COMPLEX_OP_REDUCTION,
-	MX_ND_ALL_ANY_REDUCTION): New macros.
-
-2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::reshape): New function.
-	* Array.h: Provide decl.
-
-	* dim-vector.h (dim_vector::numel): New function.
-
-	* dim-vector.h (dim_vector_rep::dim_vector_rep (int, const
-	dim_vector&)): Correctly handle case of n < dv->ndims.
-
-2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dim-vector.h (dim_vector::any_zero): New function.
-	(dim_vector::str): New default arg, sep.
-
-	* Array.h (Array<T>::numel): New function.
-
-2003-10-27  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* mx-inlines.cc (MX_ND_ALL_EXPR, MX_ND_ANY_EXPR,
-	MX_ND_ALL_EVAL, MX_ND_ANY_EVAL, MX_ND_ALL_ANY): New macros.
-	* dNDArray.h (NDArray::all, NDArray::any): Return type now boolNDArray.
-	* CNDArray.h (ComplexNDArray::all, ComplexNDArray::any): Likewise.
-	* boolNDArray.h (boolNDArray::all, boolNDArray::any): Likewise.
-	* chNDArray.h (charNDArray::all, charNDArray::any): Likewise.
-	* dNDArray.cc (NDArray::all, NDArray::any): Make them work.
-	* CNDArray.cc (ComplexNDArray::all, ComplexNDArray::any): Likewise.
-	* boolNDArray.cc (boolNDArray::all, boolNDArray::any): Likewise.
-	* chNDArray.cc (charNDArray::all, charNDArray::any): Likewise.
-
-2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::resize_and_fill): Allow number of dimensions
-	to change.  From Petter Risholm  <risholm@stud.ntnu.no>.
-
-	* oct-rand.cc, CColVector.cc, CMatrix.cc, CRowVector.cc,
-	CmplxAEPBAL.cc CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
-	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
-	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc,  NLEqn.cc, ODESSA.cc,
-	Quad.cc, dColVector.cc, dMatrix.cc, dRowVector.cc, dbleAEPBAL.cc,
-	dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
-	dbleSCHUR.cc, dbleSVD.cc, lo-specfun.cc:
-	Use new F77 arg macros in declarations of external Fortran
-	subroutines and for calling them.
-
-2003-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::resize_no_fill (const dim_vector&)):
-	Allow number of dimensions to change.
-	(Array<T>::resize_no_fill (int, int)): Require ndims to be 0 or 2.
-	(Array<T>::resize_and_fill (int, int, const T&)): Likewise.
-	(Array<T>::resize_no_fill (int, int, int)): Require ndims to be 0 or 3.
-	(Array<T>::resize_and_fill (int, int, int, const T&)): Likewise.
-	(Array<T>::transpose): Require ndims to be 2.
-	(Array<T>::index2): Likewise.
-	(Array<T>::index (idx_vector&, idx_vector&, int, const T&)): Likewise.
-	(Array<T>::maybe_delete_elements_2): Likewise.
-	(Array<T>::maybe_delete_elements (idx_vector&, idx_vector&)): Likewise.
-	(Array<T>::index1): Use resize_and_fill.
-	(MAYBE_RESIZE_ND_DIMS): Likewise.
-
-	* ODESSA.cc (ODESSA::integrate): Use resize_and_fill for x_s_out.
-
-	* MArray2.h (MArray2<T>::resize (int, int)): New function.
-	(MArray2<T>::resize (int, int, const T&)): New function.
-
-	* MArray.h (MArray<T>::resize (int)): New function.
-	(MArray<T>::resize (int, const T&)): New function.
-
-	* DASRT.cc (DASRT::integrate): Use resize_and_fill for jroot.
-
-	* DASPK-opts.in: Use single-arg resize for initial condition
-	heuristics.
-
-	* dim-vector.h (class dim_vector): Now reference counted.
-	(dim_vector_rep::elem): Use assert to check that index is in bounds.
-
-2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::squeeze): Delete redundant retval decl.
-
-	* mx-cdm-cm.cc, mx-cdm-cm.h, mx-cdm-cs.cc, mx-cdm-cs.h,
-	mx-cdm-dm.cc, mx-cdm-dm.h, mx-cdm-m.cc, mx-cdm-m.h, mx-cdm-s.cc,
-	mx-cdm-s.h, mx-cm-cdm.cc, mx-cm-cdm.h, mx-cm-dm.cc, mx-cm-dm.h,
-	mx-cm-m.cc, mx-cm-m.h, mx-cm-s.cc, mx-cm-s.h, mx-cs-cdm.cc,
-	mx-cs-cdm.h, mx-cs-dm.cc, mx-cs-dm.h, mx-cs-m.cc, mx-cs-m.h,
-	mx-dm-cdm.cc, mx-dm-cdm.h, mx-dm-cm.cc, mx-dm-cm.h, mx-dm-cs.cc,
-	mx-dm-cs.h, mx-dm-m.cc, mx-dm-m.h, mx-dm-s.cc, mx-dm-s.h,
-	mx-m-cdm.cc, mx-m-cdm.h, mx-m-cm.cc, mx-m-cm.h, mx-m-cs.cc,
-	mx-m-cs.h, mx-m-dm.cc, mx-m-dm.h, mx-ops.h, mx-s-cdm.cc,
-	mx-s-cdm.h, mx-s-cm.cc, mx-s-cm.h, mx-s-dm.cc, mx-s-dm.h,
-	vx-ccv-cv.cc, vx-ccv-cv.h, vx-ccv-s.cc, vx-ccv-s.h, vx-crv-rv.cc,
-	vx-crv-rv.h, vx-crv-s.cc, vx-crv-s.h, vx-cs-cv.cc, vx-cs-cv.h,
-	vx-cs-rv.cc, vx-cs-rv.h, vx-cv-ccv.cc, vx-cv-ccv.h, vx-cv-cs.cc,
-	vx-cv-cs.h, vx-rv-crv.cc, vx-rv-crv.h, vx-rv-cs.cc, vx-rv-cs.h,
-	vx-s-ccv.cc, vx-s-ccv.h, vx-s-crv.cc, vx-s-crv.h: Delete.  These
-	files are now automatically generated.
-
-	* Makefile.in ($(VX_OP_INC), $(VX_OP_SRC), $(MX_OP_INC),
-	$(MX_OP_SRC)): Generate lists with new mk-ops.awk script.
-	Add rules to generate these files and mx-ops.h.
-	(stamp-prereq): Depend on these files.
-
-	* mx-ops, vx-ops, mk-ops.awk: New files.
-	* Makefile.in (DISTFILES): Add them to the list.
-
-2003-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* NDArray.cc (NDArray::NDArray (const boolNDArray),
-	NDArray::NDArray (const charNDArray)): New constructors.
-	(NDArray::operator !): New function.
-	Provide NDS_CMP_OPS, NDS_BOOL_OPS, SND_CMP_OPS, SND_BOOL_OPS,
-	NDND_CMP_OPS, NDND_BOOL_OPS.
-
-	* CNDArray.cc (ComplexNDArray::ComplexNDArray (const NDArray&),
-	ComplexNDArray::ComplexNDArray (const boolNDArray&),
-	ComplexNDArray::ComplexNDArray (const charNDArray&)):
-	New constructors.
-	(ComplexNDArray::operator !): New function.
-	Provide NDS_CMP_OPS, NDS_BOOL_OPS, SND_CMP_OPS, SND_BOOL_OPS,
-	NDND_CMP_OPS, NDND_BOOL_OPS.
-
-	* ArrayN.h (resize (const dim_vector&)): Fix typo.
-
-	* boolNDArray.cc (boolNDArray::operator !): New function.
-	Provide NDND_CMP_OPS.
-
-	* MArrayN.cc (operator +=, operator -=): New functions.
-	Provide product and quotient functions.
-
-	* MArray-misc.cc (gripe_nonconformant (const char *, dim_vector&,
-	dim_vector&)): New function.
-
-	* dim-vector.h (dim_vector::str, dim_vector::all_zero,
-	operator ==, operator !=): New functions.
-	* ArrayN.cc (operator <<): Use dim_vector::str here.
-
-	* Array.cc (Array<T>::resize_no_fill, Array<T>::resize_and_fill):
-	No need to save old dimensions.
-
-	* oct-rand.cc (MAKE_RAND_ND_ARRAY): New macro.
-	(octave_rand::nd_array): New function.
-	* oct-rand.h (octave_rand::nd_array): Provide decl.
-
-	* mx-op-defs.h (NDCMP_OP_DECL, NDBOOL_OP_DECL, NDS_BIN_OP_DECLS,
-	NDS_BIN_OP, NDS_BIN_OPS, NDS_CMP_OP_DECLS, NDS_CMP_OP,
-	NDS_CMP_OPS, NDS_BOOL_OP_DECLS, NDS_BOOL_OP, NDS_BOOL_OPS,
-	NDS_OP_DECLS, SND_BIN_OP_DECLS, SND_BIN_OP, SND_BIN_OPS,
-	SND_CMP_OP_DECLS, SND_CMP_OP, SND_CMP_OPS, SND_BOOL_OP_DECLS,
-	SND_BOOL_OP, SND_BOOL_OPS, SND_OP_DECLS, NDND_BIN_OP_DECLS,
-	NDND_BIN_OP, NDND_BIN_OPS, NDND_CMP_OP_DECLS, NDND_CMP_OP,
-	NDND_CMP_OPS, NDND_BOOL_OP_DECLS, NDND_BOOL_OP, NDND_BOOL_OPS,
-	NDND_OP_DECLS): New macros.
-	* mx-cm-m.h, mx-cm-s.h, mx-cs-m.h, mx-m-cm.h, mx-m-cs.h,
-	mx-s-cm.h, mx-cm-m.cc, mx-cm-s.cc, mx-cs-m.cc, mx-m-cm.cc,
-	mx-m-cs.cc, mx-s-cm.cc: Use them.
-
-	* mx-defs.h (class NDArray, class ComplexNDArray, class
-	boolNDArray, class charNDArray): New forward decls.
-
-2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (assign2): No error (but don't do anything either) for
-	expressions like x([],j) = scalar.
-
-2003-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (assignN): Allow lhs(:) = scalar.
-
-	* CNDArray.cc (ComplexNDArray::increment_index): New function.
-	* dNDArray.cc (NDArray::increment_index): Likewise.
-	* boolNDArray.cc (boolNDArray::increment_index): Likewise.
-	* chNDArray.cc (charNDArray::increment_index): Likewise.
-
-	* dim-vector.h (rows, cols): Delete unused data members.
-
-	* Array.cc (Array<T>::get_size): Fix thinko.
-
-2003-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::squeeze): New function.
-	* CNDArray.h (ComplexNDArray::squeeze): Likewise.
-	* dNDArray.h (NDArray::squeeze): Likewise.
-	* boolNDArray.h (boolNDArray::squeeze): Likewise.
-	* chNDArray.h (charNDArray::squeeze): Likewise.
-
-2003-10-06  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* Array.cc (ArrayN<T>::indexN): New definition.
-	* Array.h (Array<T>::indexN): Provide decl.
-	* Array.cc (ArrayN<T>::index (idx_vector&, int, const T&):
-	Call indexN if more than 2 indices.
-	(ArrayN<T>::index (Array<idx_vector>&, int, const T&)):
-	Make it (mostly) work.
-	* ArrayN-inline.h (number_of_elements, get_ra_idx, short_freeze):
-	New functions.
-
-2003-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (do_readline): Pass eof to octave_fgetl.
-	* lo-utils.cc (octave_fgets, octave_fgetl): New overloaded
-	versions with eof arg.
-
-2003-09-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (dimensions): Now public.
-	template <class LT, class RT>
-	(assign (Array<LT>&, const Array<RT>&, const LT&),
-	assign1 (Array<LT>&, const Array<RT>&, const LT&),
-	assign2 (Array<LT>&, const Array<RT>&, const LT&),
-	assignN (Array<LT>&, const Array<RT>&, const LT&),
-	resize_no_fill (int),
-	resize_no_fill (int, int),
-	resize_no_fill (int, int, int),
-	resize_no_fill (const dim_vector&),
-	resize_and_fill (int, const T&),
-	resize_and_fill (int, int, const T&),
-	resize_and_fill (int, int, int, const T&),
-	resize_and_fill (const dim_vector&, const T&)): Now public.
-
-	* Array.cc: Include <climits>.
-
-2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc: Merge Array-idx.h.
-	* Array-idx.h: Delete.
-
-	* chNDArray.h, chNDArray.cc, boolNDArray.h, boolNDArray.cc: New files.
-
-	* Array.h, Array-idx.h, Array.cc: Fold all N-d functionality here.
-	Turn inheritance hierarchy upside down (2-d and 3-d arrays are now
-	just special cases of the general purpose N-d Array object).
-
-	* dim-vector.h: New file.  Use dim_vector objects instead of
-	ints or Array<int> objects to represent the size of Array
-	objects.
-
-	* MArray-defs.h (INSTANTIATE_MARRAYN_FRIENDS): New macro.
-
-	* Array2-idx.h, Array3-idx.h, Array2.cc, Array3.cc: Delete.
-
-	* mx-base.h: Include NDArray header files.
-
-	* MArray-C.cc, MArray-d.cc: Also instantiate ArrayN objects.
-
-	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-i.cc,
-	Array-s.cc: Also instantiate ArrayN objects.
-	Don't instantiate assign funcitons for Array2 objects.
-
-	* CDiagMatrix.cc (ComplexDiagMatrix::diag): Signal error with
-	liboctave_error_handler, not cerr.
-	* CMatrix.cc (ComplexMatrix::diag): Likewise.
-	* dDiagMatrix.cc (DiagMatrix::diag): Likewise.
-	* dMatrix.cc (Matrix::diag): Likewise.
-
-	* Array-flags.cc, Array.cc, Array.h, Array2.h, Array3.h, ArrayN.h:
-	Omit checks for HEAVYWEIGHT_INDEXING.
-
-2003-09-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-base.h: Include CNDarray.h.  Include dNDArray.h, not NDArray.h.
-
-	* CNDARray.h, CNDArray.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* dNDArray.h: Rename from NDArray.h.
-	* dNDArray.cc: Rename from NDArray.cc.
-	* Makefile.in: Rename them here too.
-
-2003-09-10  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* mx-base.h: Include NDArray.h, not ArrayN.h.
-
-	* MArrayN.cc, MArrayN.h, NDArray.h, NDArray.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2003-09-09  David Bateman  <dbateman@free.fr>
-
-	* lo-specfun.cc (zbesj, zbesy, zbesi, zbesk, zbesh1, zbesh2, airy,
-	biry): Always request scaled results from AMOS functions and
-	perform reverse scaling on results if scaled result not requested
-	by user.
-
-2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
- 	* lo-specfun.cc (xlgamma): Require nonnegative argument.
-
-2003-09-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-d.cc: Instantiate assign functions.
-
-2003-09-09  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ArrayN-idx.h (vector_equivalent, equal_arrays): New functions.
-	(get_elt_idx): Index ra_idx correctly.
-
-	* ArrayN-inline.h (index_in_bounds): Index is also condidered in
-	bounds if it is exactly on the bound.
-
-	* ArrayN.cc (ArrayN<T>::maybe_delete_dims): New function.
-	* ArrayN.h: Provide decl.
-
-	* ArrayN.h (ArrayN<T>::ArrayN<T> (const Matrix&)): New constructor.
-
-	* idx-vector.h (idx_vector::orig_dims): New member variable.
-	(idx_vector::idx_vector_rep::orig_dimensions): New function.
-	(idx_vector::orig_dimensions): New function.
-
-2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (xlgamma): Require nonnegative argument.
-
-2003-09-04  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ArrayN-idx.h (maybe_delete_elements): Implement function.
-	(is_in, how_many_lgt, all_ones): New functions.
-
-2003-09-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (MATRIX_INC): Add ArrayN-inlines.h to the list.
-
-2003-09-03  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ArrayN-inline.h: New file.
-	(index_in_bounds, increment_index): Move here.
-	* ArrayN.cc: From here.
-
-	* ArrayN.h (maybe_delete_elements): New arg, resize_fill_value.
-	* ArrayN-idx.h (assign): New function.
-
-2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (zbesj, zbesy, zbesi, zbesk, airy, biry):
-	Also zero imaginary part of result if real part of input value is
-	zero.
-
-2003-07-30  Heine Kolltveit  <kolltvei@idi.ntnu.no>
-
-	* mx-base.h: Include ArrayN.h.
-
-2003-30-07  Heine Kolltveit  <kolltvei@idi.ntnu.no>
-
-	* ArrayN.cc (operator <<): Corrected output.
-
-2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ArrayN.cc (increment_index): New arg, start_dimension.
-
-2003-07-29  Heine Kolltveit  <kolltvei@idi.ntnu.no>
-
-	* ArrayN.cc (operator <<): Improve output readability.
-
-2003-07-29  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ArrayN.cc (ArrayN<T>::resize (const Array<int>&, const T&)):
-	* ArrayN.cc (ArrayN<T>::resize (const Array<int>&)):
-	Initialize old_len before changing size.
-
-2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Use $(INSTALL), not
-	$(INSTALL_PROGRAM) for $(SHLLIB) files.
-
-2003-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xmin, xmax): Handle NaN in a Matlab-compatible
-	way.  Handle NA in an R-compatible way.
-
-	* lo-cieee.c (lo_ieee_is_NaN_or_NA): Also check for lo_ieee_is_NA.
-	(lo_ieee_is_NA): Don't call isnan unless HAVE_ISNAN is defined.
-
-	* lo-mappers.h (octave_is_NA (const Complex&)): Provide decl.
-	(octave_is_NaN_or_NA (const Complex&)): Likewise.
-
-	* dMatrix.cc (Matrix::row_min, Matrix::row_max,
-	Matrix::column_min, Matrix::column_max): Ignore NaNs.
-	* CMatrix.cc (ComplexMatrix::row_min, ComplexMatrix::row_max,
-	ComplexMatrix::column_min, ComplexMatrix::column_max): Likewise.
-
-2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign (Array2<LT>&, const Array2<RT>&, const LT&)):
-	Pass true for resize_ok arg to freeze.
-	* Array-idx.h (assign (Array<LT>&, const Array<RT>&, const LT&)):
-	Likewise.
-
-	* idx-vector.cc (IDX_VEC_REP::freeze): New arg, warn_resize;
-	resize_ok arg is now bool.
-	* idx-vector.h (idx_vector::freeze): Likewise.
-
-	* Array-flags.cc, Array-flags.h (liboctave_wrore_flag):
-	Rename from liboctave_rre_flag.  Now bool.
-	(liboctave_wfi_flag): Now bool.
-
-	* Array2-idx.h (MAYBE_RESIZE_LHS): Don't check liboctave_rre_flag.
-
-2003-07-11  Russell Standish  <R.Standish@unsw.edu.au>
-
-	* Array.h (resize_fill_value): Now a top-level template function.
-	Accept object as argument.  Change all uses.
-
-2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-flags.cc, Array-flags.h (liboctave_pcv_flag): Delete.
-
-	* Array2-idx.h (Array2<T>::index): Use liboctave_wfi_flag, not
-	liboctave_dfi_flag.
-	(assign): Likewise.  For indexed assignments like X(I) = RHS with
-	X undefined or empty, always create a row vector.
-
-	* Array-flags.cc (liboctave_wfi_flag): Rename from liboctave_dfi_flag.
-	* Array-flags.h (liboctave_wfi_flag): Ditto.
-
-2003-06-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&, int, const T&)):
-	Magic colon indexing always produces an object with one column.
-
-2003-06-21  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* kpse-xfns.h (NAME_BEGINS_WITH_DEVICE): Arg is std::string, not char*.
-
-	* lo-ieee.h (signbit): Eliminate redundant extern "C" decl.
-
-2003-06-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (any_element_is_negative): If new optional arg
-	neg_zero is true, also return true for negative zero.
-
-2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.cc (DASSL::do_integrate): Set liw to 21 + n, not 20 + n.
-	Handle step limit.
-	* DASSL-opts.in: New option for step limit.
-
-2003-06-16  Per Persson  <persquare@mac.com>
-
-	* oct-shlib.cc: Include mach-o/dyld.h, not Mach-O/dyld.h.
-
-2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASRT.cc (DASRT::integrate): Set liw to 21 + n, not 20 + n.
-	Store step limit in iwork(20), not iwork(18).
-
-2003-05-16  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* oct-rand.cc: Use liboctave's clock layer instead of the system clock.
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Handle DESTDIR.
-
-	* kpse.cc (kpse_path_iterator::next): Skip consecutive colons here.
-	(kpse_path_iterator::set_end): Don't miss last element when not
-	followed by a colon.
-
-2003-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (Array<T>::index): Fix off-by-one error.
-
-2003-05-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* kpse.cc (kpse_absolute_p): Fix typo in translation.
-	(find_first_of): Also do an absolute search on each
-	name before looking in the path.
-
-2003-05-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* kpse.cc (dir_list_add): Ensure that directory ends with a
-	directory separator.
-
-2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.cc: Include kpse.cc here.
-
-	* kpse.cc: All functions are now static.  Massive surgery to
-	condense kpathsearch library to a single file of just the
-	essentials for Octave and convert to using C++ strings (no more
-	calls to malloc, very few calls to new, so there should be much
-	less potential for introducing memory leaks now).
-
-	* Makefile.in (EXTRAS): Move kpse.cc here from
-	LIBOCT_PATHSEARCH_CXX_SOURCES.
-
-	* kpse.h, kpse-config.h: Delete.
-	* Makefile.in (INCLUDES): Delete them from the list.
-
-2003-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* str-vec.cc (string_vector::append (const std::string&),
-	string_vector::append (const string_vector&)): New methods.
-
-2003-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* kpse.cc, kpse.h: Replace fn_type with std::string.
-
-	* lo-ieee.h (lo_ieee_signbit): Provide signbit decl for MinGW systems.
-
-	* kpse.cc (xclosedir): Don't define or declare for Windows.
-	(READABLE): Now a static function to avoid warnings from MinGW
-	compiler.
-
-2003-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* kpse.cc: Move most functions from kpse-xfns.c here and make
-	static.  Include most of kpse-xfns.h directly, removing
-	unnecessary bits.
-
-	* dMatrix.cc (Matrix::pseudo_inverse): Now const.
-	* CMatrix.cc (ComplexMatrix::pseudo_inverse): Likewise.
-
-2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* getopt.c, getopt1.c, getopt.h: Move here from kpathsea.
-	* Makefile.in: Add them to the appropriates lists.
-
-	* oct-getopt.c: Include "getopt.h", not <kpathsea/getopt.h>.
-
-	* Makefile.in (liboctave.$(LIBEXT), liboctave.$(SHLEXT)): Adjust
-	for new locations of kpathsea objects.
-	Delete kpathsea targets.
-
-	* pathsearch.cc (dir_path::set_program_name): Delete.
-
-	* kpse.cc: New file.
-	* Makefile.in (LIBOCT_PATHSEARCH_CXX_SOURCES): Add it to the list.
-
-	* kpse.c: New file.
-	* Makefile.in (LIBOCT_PATHSEARCH_C_SOURCES): Add it to the list.
-
-	* kpse.h, kpse-config.h, kpse-xfns.h: New files.
-	* Makefile.in (INCLUDES): Add them to the list.
-
-	* oct-kpse.h: Delete.
-	* Makefile.in (INCLUDES): Delete it from the list.
-
-2003-04-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleSVD.h (SVD::SVD, SVD::operator =): Also copy type_computed.
-	* CmplxSVD.h (ComplexSVD::ComplexSVD, ComplexSVD::operator =):
-	Likewise.
-	From Quentin H. Spencer <qspencer@ieee.org>.
-
-2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-getopt.c: Include <kpathsea/getopt.h>, not "getopt.h".
-
-2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Handle systems with or
-	without placement delete.
-
-	* CMatrix.cc (ComplexMatrix::all_elements_are_real): Don't lose -0
-	imaginary parts.
-
-	* lo-ieee.h (lo_ieee_signbit): New macro.
-
-2003-02-18  David Bateman  <dbateman@free.fr>
-
-	* dMatrix.cc (Matrix::inverse, Matrix::determinant, Matrix::solve):
-	Use Lapack instead of Linpack.
-	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::determinant,
-	ComplexMatrix::solve): Likewise.
-
-	* dMatrix.cc (Matrix::determinant, Matrix::inverse): New arg,
-	calc_cond.  If 0, skip condition number calculation.
-	* CMatrix.cc (ComplexMatrix::determinant, ComplexMatrix::inverse):
-	Likewise.
-
-	* CmplxLU.cc (ComplexLU::ComplexLU): Allow non-square matrices.
-	* dbleLU.cc (LU::LU): Likewise.
-	* base-lu.cc (base_lu::L), base_lu::U, base_lu::P): Likewise.
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-  	* octave.test/arith/prod-4.m, octave.test/arith/sum-4.m:
-
-2003-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index): Fix thinko.
-	Additional compatibility fix.
-
-2003-02-13  Arno Klaassen  <arno@scito.com>
-
-	* Array2-idx.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
-	ArrayN.cc, ArrayN.h, DiagArray2.cc, DiagArray2.h, MDiagArray2.h:
-	Sprinkle with Array<T>:: as necessary for gcc 3.4.
-
-2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&, int, const T&)):
-	Compatibility fix.
-
-2003-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CColVector.cc (ComplexColumnVector::extract_n): New function.
-	* CRowVector.cc (ComplexRowVector::extract_n): Likewise.
-	* CMatrix.cc (ComplexMatrix::extract_n): Likewise.
-	* dColVector.cc (ColumnVector::extract_n): Likewise.
-	* dRowVector.cc (RowVector::extract_n): Likewise.
-	* dMatrix.cc (Matrix::extract_n): Likewise.
-
-	* CColVector.cc (ComplexColumnVector::insert): Improve efficiency
-	with make_unique and xelem.
-	* CRowVector.cc (ComplexRowVector::insert): Likewise.
-	* CMatrix.cc (ComplexMatrix::insert, ComplexMatrix::fill,
-	ComplexMatrix::extract, ComplexMatrix::row,
-	ComplexMatrix::column): Likewise.
-	* dColVector.cc (ColumnVector::insert): Likewise.
-	* dRowVector.cc (RowVector::insert): Likewise.
-	* dMatrix.cc (Matrix::insert, Matrix::fill, Matrix::extract,
-	Matrix::row, Matrix::column): Likewise.
-
-2003-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (imag (double)): Return 0.0 for all args, even NaN.
-
-2003-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc, dMatrix.cc: Move min and max functions here, from
-	src/DLD-FUNCTIONS/minmax.cc, and make them extern.
-	* CMatrix.h, dMatrix.h: Provide decls.
-
-2003-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rand.h, oct-rand.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index): Fix off-by-one error.
-
-2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* oct-syscalls.cc: Include signal.h.
-
-2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-syscalls.cc (octave_syscalls::kill): New function.
-	* oct-syscalls.h: Provide decl.
-
-
-2003-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::read): Set size and return immediately if
-	there is nothing to read.
-
-2003-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cutils.c: Define _XOPEN_SOURCE.
-
-2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* getopt.h: Update to version from kpathsearch, so we will install
-	the version that we are using.
-
-	* getopt.c, getopt1.c: Delete.
-	(INCLUDES): Delete them from the list.  We'll get these files from
-	kpathsearch.
-
-	* Makefile.in (liboctave.$(LIBEXT)): Link directly to
-	../kpathsea/STATIC/*.o.
-	(liboctave.$(SHLEXT)): Link directly to	../kpathsea/SHARED/*.o.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (read_int, write_int): Avoid warnings about
-	unreachable code.
-
-	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Define operator delete
-	to correspond to placement new operator.
-
-	* dbleDET.cc (DET::value_will_overflow): We want det[1], not det[2].
-	(DET::value_will_underflow): Likewise.
-	* CmplxDET.cc (ComplexDET::value_will_overflow): Likewise.
-	(ComplexDET::value_will_underflow): Likewise.
-
-	* Makefile.in (distclean): Also remove stamp-prereq.
-
-	* Array2-idx.h (Array2<T>::assign): If assignment conforms but the
-	RHS and index are empty matrices, don't do anything.
-
-2002-12-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.cc (make_retval, free_c_array, make_c_names,
-	delete_c_names): New helper functions.
-	(dir_path::find_first_of): New function.
-	(dir_path::find_all_first_of): Likewise.
-	* pathsearch.h: Provide decls.
-
-	* oct-kpse.c (octave_kpse_path_find_first_of): New function.
-	(octave_kpse_all_path_find_first_of): Likewise.
-	* oct-kpse.h: Provide decls.
-
-2002-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ODESSA.cc (ODESSA::integrate): Handle maxord.
-	* ODESSA-opts.in: Likewise.
-
-	* LSODE.cc (ODESSA::integrate): Handle maxord.
-	* LSODE-opts.in: Likewise.
-
-2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ODESSA.cc (ODESSA::ODESSA): Initialize "initialized" data member
-	in all constructors.
-
-	* Makefile.in (liboctave.$(SHLEXT)): Include $(LIBKPATHSEA) here.
-	(LINK_DEPS): Not here.
-
-2002-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* str-vec.cc (string_vector::compare): New static member function.
-	* str-vec.h: Provide decl.
-	(string_vector::sort): Use it.
-	(str_vec_compare): Delete static function.
-
-	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Also declare and define
-	a placement operator new.
-
-2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Matrix.h: Include mx-ops.h too.
-	* mx-ops.h: New file.
-
-2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASRT.cc, DASRT.h, Array.cc, ArrayN.h, Array.h, Array2.cc,
-	Array2.h, Array3.cc, Array3.h, Bounds.cc, Bounds.h, CRowVector.h,
-	CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc, CMatrix.h,
-	CRowVector.cc, CColVector.h, ChangeLog, CmplxAEPBAL.cc,
-	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
-	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
-	CmplxQR.h, CmplxQRP.cc, ArrayN.cc, CmplxQRP.h, CmplxSCHUR.cc,
-	CmplxSCHUR.h, CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, dMatrix.cc,
-	CollocWt.h, EIG.h, DASSL.cc, FEGrid.h, DASSL.h, DiagArray2.cc,
-	DiagArray2.h, EIG.cc, FEGrid.cc, LSODE.cc, LPsolve.cc, LPsolve.h,
-	LSODE.h, LinConst.cc, LinConst.h, MArray.h, MArray.cc, MArray2.cc,
-	MArray2.h, MDiagArray2.cc, MDiagArray2.h, Range.cc, NLConst.h,
-	NLEqn.cc, Range.h, NLEqn.h, Quad.cc, dbleQR.h, Quad.h, base-lu.cc,
-	base-lu.h, boolMatrix.cc, boolMatrix.h, dColVector.cc,
-	dColVector.h, dDiagMatrix.cc, dDiagMatrix.h, dMatrix.h,
-	dRowVector.cc, dRowVector.h, dbleAEPBAL.cc, dbleAEPBAL.h,
-	dbleCHOL.cc, dbleCHOL.h, dbleDET.cc, dbleDET.h, dbleHESS.cc,
-	dbleHESS.h, dbleLU.cc, dbleLU.h, dbleQR.cc, dbleQRP.cc, dbleQRP.h,
-	dbleSCHUR.cc, dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc,
-	idx-vector.h, oct-alloc.cc, CColVector.cc, DASPK.h, DASPK.cc,
-	ODESSA.h, ODES.h, ODESSA.cc, ODES.cc, chMatrix.h, chMatrix.cc:
-	Use "defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)" instead of
-	"! defined (NO_PRAGMA_INTERFACE_IMPLEMENTATION)".
-
-2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-shlib.cc (octave_dlopen_shlib::open): Use RTLD_GLOBAL too.
-	From Remy Bruno <remy.bruno@libertysurf.fr>
-
-2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc: Use F77_FUNC instead of F77_XFCN for calls to
-	fortran code that should run fast enough that it is not worth all
-	the setup costs of F77_XFCN.
-
-	* Quad.cc (user_function): Surround body of function with
-	BEGIN_INTERRUPT_WITH_EXCEPTIONS, END_INTERRUPT_WITH_EXCEPTIONS.
-	* ODESSA.cc (odessa_f, odessa_j, odessa_b): Likewise.
-	* NLEqn.cc (hybrd1_fcn, hybrj1_fcn): Likewise.
-	* LSODE.cc (lsode_f, lsode_j): Likewise.
-	* DASSL.cc (ddassl_f, ddassl_j): Likewise.
-	* DASRT.cc (ddasrt_f, ddasrt_j, ddasrt_g): Likewise.
-	* DASPK.cc (ddaspk_f, ddaspk_psol, ddaspk_j): Likewise.
-
-2002-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): Check defined (__osf__) instead
-	of ! defined (linux).
-
-2002-11-09  Per Persson  <persquare@mac.com>
-
-	* oct-shlib.cc (octave_dyld_shlib): New class.
-	(make_shlib): Instantiate octave_dyld_shlib.
-
-2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc, dMatrix.cc: Sprinkle with OCTAVE_QUIT.
-
-	* ODESSA.cc (odessa_f, odessa_j, odessa_b): Abort on error.
-
-	* Array.h: Include <cstddef> here.
-
-2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASPK.cc (DASPK::do_integrate): Resize rwork and iwork before
-	using them.  Accept inequality contraint option of 0.  Assign
-	pabs_tol and prel_tol before calling DASPK.  Don't redeclare
-	abs_tol and rel_tol.
-
-	* cmd-edit.h (command_editor::filename_completion_desired): New
-	static function.
-	(command_editor::do_filename_completion_desired): New virtual function.
-	* oct-rl-edit.c (octave_rl_filename_completion_desired): New function.
-	* oct-rl-edit.h: Provide decl.
-
-	* Array2.cc (Array2<T>::get_size): #define MALLOC_OVERHEAD to
-	avoid OS X linker bug.
-	* ArrayN.cc (ArrayN<T>::get_size): Likewise.
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ODESFunc.h (ODESFunc::ODES_fsub, ODESFunc::ODES_bsub,
-	ODESFunc::ODES_jsub): Reorder args for consistency with other
-	solvers.
-	* ODESSA.cc: Fix all callers.
-
-	* mx-inlines.cc (MX_BASE_REDUCTION_OP): Also return scalar
-	MT_RESULT if nr == 1 && nc == 0 && dim == -1 (i.e.,
-	sum(zeros(1,0)) returns 0, not [](1x0)).
-
-2002-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LINK_DEPS): Include $(FLIBS) here too.
-
-2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASRT.cc (DASRT::integrate): Fix computation of lrw
-	(ddasrt_f): Combine loops.
-
-	* NLEqn.cc (NLEqn::solve): Return current estimate of solution
-	instead of empty vector if user termninates iteration.
-
-2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-utils.cc (read_inf_nan_na, octave_read_double,
-	octave_read_complex, octave_write_double, octave_write_complex):
-	New functions.
-	* CMatrix.cc (operator << (std::ostream&, const ComplexMatrix&)):
-	Use octave_write_complex.
-	(operator >> (std::istream&, const ComplexMatrix&)):
-	Use octave_read_complex.
-	* dMatrix.cc (operator << (std::ostream&, double)):
-	Use octave_write_double.
-	(operator >> (std::istream&, double)): Use octave_read_double.
-
-2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-kpse.c (octave_kpse_clear_dir_cache): Delete.
-	* oct-kpse.h: Delete decl.
-	* pathsearch.cc (dir_path::init): Delete unnecessary call to
-	::octave_kpse_clear_dir_cache.
-
-2002-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-sstream.h: Undef HAVE_SSTREAM if using a version of g++
-	earlier than 3.0.
-
-	* Makefile.in (LINK_DEPS): Include $(LIBKPATHSEA) here.
-	(liboctave.$(SHLEXT)): Not here.
-
-2002-10-17  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* oct-shlib.cc (octave_w32_shlib): New class to support Windows.
-
-2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Don't bother with versions for
-	$(SHLBIN) files.
-
-2002-10-16  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in (LIB_DEPS): Include $(LIBS).
-
-2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cieee.c: Move everything but lo_ieee_init here.
-	(lo_ieee_Inf_value, lo_ieee_NA_value, lo_ieee_NaN_value):
-	New functions.
-
-	* Makefile.in (install): No need to use cd to create links.
-	(LINK_DEPS): Include $(LIBOCTAVE_LFLAGS) before list of libraries.
-
-2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: Merge liboctave with liboct-readline and
-	liboct-pathsearch.
-	Use link dependencies for shared libs if INCLUDE_LINK_DEPS.
-	(libraries): Depend on versioned library.
-	(liboctave.$(SHLEXT), liboctave.$(SHLEXT_VER)): Reverse actions --
-	build unversioned library, symbolic link adds version info.
-	(install, uninstall): Handle link and load forms of the library
-	separately.
-
-2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc: Use OCTAVE_USE_WINDOWS_API instead of __WIN32__ and
-	__CYGWIN__.
-
-	* file-ops.cc (file_ops::dir_sep_char, file_ops::dir_sep_str,
-	file_ops::dir_sep_chars): New static functions to replace
-	OCTAVE_DIR_SEP_CHAR, OCTAVE_DIR_SEP_STR, OCTAVE_DIR_SEP_CHARS.
-
-	* oct-env.cc (octave_env::do_set_program_name):
-	Use file_ops::dir_sep_chars instead of OCTAVE_DIR_SEP_CHARS.
-	(octave_env::do_base_pathname): Likewise.
-	(octave_env::do_make_absolute): Likewise.
-
-	* oct-env.cc (octave_env::do_make_absolute):
-	Use file_ops::dir_sep_str instead of OCTAVE_DIR_SEP_STR.
-	(octave_env::do_get_home_directory): Likewise.
-
-	* file-ops.cc (is_dir_sep): Use dir_sep_chars instead of embedding
-	that information here too.
-	(tilde_find_suffix, isolate_tilde_prefix, tilde_expand_word):
-	Use file_ops::dir_sep_char instead of OCTAVE_DIR_SEP_CHAR.
-
-	* file-ops.h: Use OCTAVE_HAVE_WINDOWS_FILESYSTEM and
-	OCTAVE_HAVE_POSIX_FILESYSTEM instead of __WIN32__ and __CYGWIN__.
-
-2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-env.h (octave_env::current_directory): Now mutable.
-	(octave_env:do_getcwd): Now const.
-
-	* file-ops.h, file-ops.cc (file_ops::is_dir_sep): New function.
-	(OCTAVE_DIR_SEP_CHAR, OCTAVE_DIR_SEP_STR, OCTAVE_DIR_SEP_CHARS,
-	OCTAVE_CURRENT_DIR_STR): New macros.
-	* oct-env.cc (is_dir_sep): Delete.
-	(octave_env::do_base_pathname): Look for OCTAVE_DIR_SEP_CHARS, not '/'.
-	(octave_env::do_set_program_name): Likewise.
-	(octave_env::do_polite_directory_format): Use file_ops::is_dir_sep
-	instead of checking for '/'.
-	(octave_env::pathname_backup): Likewise.
-	(octave_env::do_absolute_pathname): Likewise.
-	(octave_env::do_make_absolute): Likewise.
-	If dot_path is empty, use getcwd to set current_dir.
-	(octave_env::do_get_home_directory): Use OCTAVE_DIR_SEP_STR
-	instead of "/".
-
-2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* lo-cutils.c: On non-Posix Windows systems, include winsock.h.
-
-2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* oct-env.cc (octave_env::do_absolute_pathname): Recognize
-	absolute path names under MinGW as well.
-
-2002-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-env.cc: Include <cctype> too.
-
-2002-10-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-env.cc (octave_env::do_absolute_pathname): Handle Windows
-	filenames.
-	(octave_env::do_make_absolute): Check for absolute name with
-	do_absolute_path.
-	(octave_env::do_chdir): Likewise.
-	(is_dir_sep): New function.
-
-2002-10-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* oct-time.cc (octave_time::stamp): Better resolution for Windows
-	systems.
-
-2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::read): Clean up error handling logic.
-
-2002-09-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (file_ops::mkdir): Handle one-arg mkdir here.
-
-	* lo-specfun.cc (acosh): Call xdacosh, not dacosh.
-
-2002-09-27  Per Persson  <persquare@mac.com>
-
-	* oct-group.cc (octave_group::octave_group): Dont' forget to set
-	gr_gid too.
-
-2002-09-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xisnan, xfinite, xisinf): Simply forward to
-	lo_ieee_* functions.
-	* Makefile.in (LIBOCTAVE_C_SOURCES): Add lo-cieee.c to the list.
-	* lo-ieee.cc (lo_ieee_double): Rename from ieee_double.
-	(LO_IEEE_NA_HW, LO_IEEE_NA_LW): Rename from NA_HW and NA_LW.
-	* lo-cieee.c: New file.
-	[SCO] (isinf, isnan): Move here from lo-ieee.cc.
-	* lo-ieee.h: Now all extern "C".
-	(lo_ieee_isnan, lo_ieee_finite, lo_ieee_isinf): Move here from
-	lo-mappers.cc and rename from xisnan, xfinite, xisinf.
-
-	* lo-ieee.cc (lo_ieee_hw, lo_ieee_low): Rename from hw and lw.
-	Now extern.
-
-2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc, Array.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
-	ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
-	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
-	CMatrix.h, CRowVector.cc, CRowVector.h, CmplxAEPBAL.cc,
-	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
-	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
-	CmplxQR.h, CmplxQRP.cc, CmplxQRP.h, CmplxSCHUR.cc, CmplxSCHUR.h,
-	CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DAE.cc,
-	DASPK.cc, DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h,
-	DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc, FEGrid.h,
-	LPsolve.cc, LPsolve.h, LSODE.cc, LSODE.h, LinConst.cc, LinConst.h,
-	MArray.cc, MArray.h, MArray2.cc, MArray2.h, MDiagArray2.cc,
-	MDiagArray2.h, NLConst.h, NLEqn.cc, NLEqn.h, ODES.cc, ODES.h,
-	ODESSA.cc, ODESSA.h, Quad.cc, Quad.h, Range.cc, Range.h,
-	base-lu.cc, base-lu.h, boolMatrix.cc, boolMatrix.h, chMatrix.cc,
-	chMatrix.h, dColVector.cc, dColVector.h, dDiagMatrix.cc,
-	dDiagMatrix.h, dMatrix.cc, dMatrix.h, dRowVector.cc, dRowVector.h,
-	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleDET.cc,
-	dbleDET.h, dbleHESS.cc, dbleHESS.h, dbleLU.cc, dbleLU.h,
-	dbleQR.cc, dbleQR.h, dbleQRP.cc, dbleQRP.h, dbleSCHUR.cc,
-	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc, idx-vector.h,
-	oct-alloc.cc:
-	If __GNUG__, use pragma interface/implementation.  Allow this to
-	be turned off by defining NO_PRAGMA_INTERFACE_IMPLEMENTATION.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* file-ops.cc (file_ops::readlink): Don't declare buffer if
-	system readlink function is not available.
-
-	* lo-mappers.cc (xerf, xerfc): Delete.
-	* lo-mappers.h (xerf, xerfc): Delete decls.
-
-	* lo-mappers.cc: Remove unused #define M_PI.
-	* lo-specfun.cc: Add #define M_PI if needed.
-
-2002-09-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (do_decode_prompt_string): Cope with possibility
-	that geteuid doesn't exist.
-
-	* LP.h: Rename LP class to octave_LP.
-	LPsolve.h: Change all uses.
-
-	* file-ops.cc, oct-passwd.cc oct-syscalls.cc oct-group.cc: Remove
-	incorrect token-pasting op.
-
-	* statdefs.h [! S_ISLNK]: undef HAVE_LSTAT instead of trying to
-	define lstat.
-
-2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc, Array.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
-	ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
-	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
-	CMatrix.h, CRowVector.cc, CRowVector.h, CmplxAEPBAL.cc,
-	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
-	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
-	CmplxQR.h, CmplxQRP.cc, CmplxQRP.h, CmplxSCHUR.cc, CmplxSCHUR.h,
-	CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DAE.cc,
-	DASPK.cc, DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h,
-	DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc, FEGrid.h,
-	LPsolve.cc, LPsolve.h, LSODE.cc, LSODE.h, LinConst.cc, LinConst.h,
-	MArray.cc, MArray.h, MArray2.cc, MArray2.h, MDiagArray2.cc,
-	MDiagArray2.h, NLConst.h, NLEqn.cc, NLEqn.h, ODES.cc, ODES.h,
-	ODESSA.cc, ODESSA.h, Quad.cc, Quad.h, Range.cc, Range.h,
-	base-lu.cc, base-lu.h, boolMatrix.cc, boolMatrix.h, chMatrix.cc,
-	chMatrix.h, dColVector.cc, dColVector.h, dDiagMatrix.cc,
-	dDiagMatrix.h, dMatrix.cc, dMatrix.h, dRowVector.cc, dRowVector.h,
-	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleDET.cc,
-	dbleDET.h, dbleHESS.cc, dbleHESS.h, dbleLU.cc, dbleLU.h,
-	dbleQR.cc, dbleQR.h, dbleQRP.cc, dbleQRP.h, dbleSCHUR.cc,
-	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc, idx-vector.h,
-	oct-alloc.cc:
-	Use USE_PRAGMA_INTERFACE_IMPLEMENTATION instead of __GNUG__
-	to decide whether to use the interface/implementation pragmas.
-
-2002-09-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Add lo-sstream.h to the list.
-
-2002-08-17  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* CmplxCHOL.h, CollocWt.h, cmd-edit.h, oct-shlib.h: Don't use
-	qualified names.
-
-2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h, Array2-idx.h, DiagArray2.cc, Array2.cc, Array3.cc,
-	ArrayN.cc: Add typename where needed.
-
-	* DASPK.cc: Include lo-sstream.h and use macros instead of using
-	strstream classes directly.
-	* DASRT.cc: Likewise.
-	* DASSL.cc: Likewise.
-	* LSODE.cc: Likewise.
-	* ODESSA.cc: Likewise.
-
-	* cmd-hist.cc: Don't include <strstream>.
-	* oct-shlib.cc: Likewise.
-
-	* lo-sstream.h: New file.
-
-2002-08-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.h (rel_tol, abs_tol, px, pabs_tol, piwork, prwork, itol):
-	New data members.
-	(LSODE::sanity_checked): Delete unused data member.
-
-	* DASPKL.h (initialized, abs_tol, rel_tol, px, pxdot, pabs_tol,
-	prel_tol, pinfo, piwork, prwork): New data members.
-	* DASSL.h (DASSL): Likewise.
-
-	* DASRT.h (DASRT::sanity_checked): Delete unused data member.
-
-	* DASRT.cc (DASRT::integrate (double)): Better handling of
-	initialization, changes in options, etc.
-	* DASPK.cc (DASPK::do_integrate): Likewise.
-	* DASSL.cc (DASSL::do_integrate): Likewise.
-	* LSODE.cc (LSODE::do_integrate): Likewise.
-
-2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DAEFunc.h (DAEFunc::reset): New data member.
-	* DAERTFunc.h (DAERTFunc::reset): Likewise.
-
-	* base-de.h (base_diff_eqn::set_stop_time): Force restart here.
-	(base_diff_eqn::clear_stop_time): Likewise.
-
-	* DASSL.cc (DASSL::do_integrate (double)): Handle more optoins.
-	* DASPK.cc (DASPK::do_integrate (double)): Likewise.
-
-2002-08-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* DASPK-opts.in, DASPK.h: Move include to .in file.
-	* DASRT-opts.in, DASRT.h: Likewise.
-	* DASSL-opts.in, DASSL.h: Likewise.
-	* LSODE-opts.in, LSODE.h: Likewise.
-	* NLEqn-opts.in, NLEqn.h: Likewise.
-	* ODESSA-opts.in, ODESSA.h: Likewise.
-
-2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (LSODE::error_message): Also return current T on
-	failures when that makes sense.
-	* DASSL.cc (DASSL::error_message): Likewise.
-	* DASRT.cc (DASRT::error_message): Likewise.
-	* DASPK.cc (DASPK::error_message): Likewise.
-	* ODESSA.cc (ODESSA:error_message): Likewise.
-
-	* Makefile.in (liboct-pathsearch.$(SHLEXT_VER)): Link to
-	$(LIBKPATHSEA) here.
-
-2002-08-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (lo_ieee_is_NA): New function.
-	(lo_ieee_is_NaN_or_NA): New function.
-	(octave_NA): New global value.
-	(octave_ieee_init): Initialize it.
-	* lo-mappers.cc (octave_is_NA): New function.
-	(octave_is_NaN_or_NA): New function.
-	(xisnan): Return false if NaN looks like a missing value.
-	(xisnan (const Complex&)): Use xisnan here.
-
-2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.h (ComplexMatrix::all, ComplexMatrix::any,
-	ComplexMatrix::cumprod, ComplexMatrix::cumsum,
-	ComplexMatrix::prod, ComplexMatrix::sum, ComplexMatrix::sumsq):
-	Default value for dim is -1, not 0.
-	* dMatrix.h (Matrix::all, Matrix::any, Matrix::cumprod,
-	Matrix::cumsum, Matrix::prod, Matrix::sum, Matrix::sumsq): Likewise.
-	* boolMatrix.h (boolMatrix:all, boolMatrix::any): Likewise.
-	* chMatrix.h (charMatrix::all, charMatrix::any): Likewise.
-
-	* mx-inlines.cc (MX_ANY_ALL_OP_ROW_CODE, MX_ANY_ALL_OP_COL_CODE):
-	New macros.
-	(MX_ANY_ALL_OP): Define MX_ANY_ALL_OP using them and
-	MX_BASE_REDUCTION_OP.
-	(MX_CUMULATIVE_OP): Fix spelling.  Change all uses.
-
-2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.h, chMatrix.cc (charMatrix::any, charMatrix::all):
-	Return boolMatrix, not Matrix.
-
-	* mx-inlines.cc (MX_ANY_ALL_OP, MX_ALL_OP, MX_ANY_OP): New macros.
-	* dMatrix.cc (Matrix::any): Replace guts with MX_ANY_OP.
-	(Matrix::all): Replace guts with MX_ALL_OP.
-	* CMatrix.cc (ComplexMatrix::any): Replace guts with MX_ANY_OP.
-	(ComplexMatrix::all): Replace guts with MX_ALL_OP.
-	* boolMatrix.cc (boolMatrix::any): Replace guts with MX_ANY_OP.
-	(boolMatrix::all): Replace guts with MX_ALL_OP.
-	* chMatrix.cc (charMatrix::any): Replace guts with MX_ANY_OP.
-	(charMatrix::all): Replace guts with MX_ALL_OP.
-
-	* dMatrix.h (Matrix::any): New arg, dim.
-	(Matrix::all): Likewise.
-	* CMatrix.h (ComplexMatrix::any): Likewise.
-	(ComplexMatrix::all): Likewise.
-	* boolMatrix.h (boolMatrix::any): Likewise.
-	(boolMatrix::all): Likewise.
-	* chMatrix.h (charMatrix::any): Likewise.
-	(charMatrix::all): Likewise.
-
-	* Makefile.in: Use $@-t instead of $@.t.
-
-2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (gammainc): New arg, err, for scalar version.
-	Use it in matrix versions to avoid spewing multiple errors.
-	Call xgammainc instead of dgamit.
-
-2002-07-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const boolMatrix&)):
-	Get rows and columns right in loop.
-	(ComplexMatrix::ComplexMatrix (const charMatrix&)): Likewise.
-
-2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASPK.cc (DASPK::do_integrate): Allow array tolerances.
-	* DASRT.cc (DASRT::integrate): Likewise.
-	* DASSL.cc (DASSL::do_integrate): Likewise.
-
-	* Quad.cc: Don't pass tolerances in constructors.
-
-	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in, LSODE-opts.in,
-	NLeqn-opts.in, ODESSA-opts.in, Quad-opts.in: New files.
-	* DASPK-opts.h, DASRT-opts.h, DASSL-opts.h, LSODE-opts.h,
-	NLeqn-opts.h, ODESSA-opts.h, Quad-opts.h: Generate automatically
-	from corresponding .in files.
-	* LSODE.h, Quad.h: Replace options class definitions with included
-	file.
-	* Makefile.in (OPTS_INC_SRC, OPTS_INC): New variables, new rule to
-	create OPTS_INC files from OPTS_INC_SRC files.
-	(stamp-prereq): New target.
-	(libraries): Depend on stamp-prereq.
-	Include stamp-prereq along with $(MAKEDEPS).
-
-2002-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* base-de.h (base_diff_eqn::istate): New data member.
-	(base_diff_eqn::integration_state): New member function.
-	* LSODE.h, LSODE.cc, ODESSA.h, ODESSA.cc: Delete corresponding
-	data members and functions.
-	* DASPK.h, DASRT.h, DASSL.h: Delete idid data member.
-	* DASPK.cc, DASRT.cc, DASSL.cc: Use istate instead of idid.
-
-2002-07-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* base-de.h (base_diff_eqn::stop_time,
-	base_diff_eqn::stop_time_set, base_diff_eqn::restart,
-	base_diff_eqn::integration_error): New data members.
-	(base_diff_eqn::set_stop_time, base_diff_eqn::clear_stop_time,
-	base_diff_eqn::force_restart, base_diff_eqn::integration_ok,
-	base_diff_eqn::error_message): New member functions.
-	* LSODE.h, LSODE.cc, DASSL.h, DASSL.cc, DASPK.h, DASPK.cc,
-	DASRT.h, DASRT.cc, ODESSA.h, ODESSA.cc: Delete corresponding data
-	members and functions.
-
-	* DASRT.h (DASRT::set_ng, DASRT::get_ng): Delete
-	* DASRT.cc (DASRT::DASRT): Set ng here.
-	(DASRT::integrate): Don't forget to set nn.
-
-	* DAEFunc.h (DAEFunc): Jacobian function now follows format of DASSL.
-	* DASSL.cc (ddassl_j): Make it work.
-	* DASPK.cc (ddaspk_j): Likewise.
-
-	* DAE.cc: Delete.
-
-	* DAERT.h, DAERTFunc.h, DASRT.h, DASRT.cc: New files for DAE
-	solving with root finding.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* base-dae.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* DAE.h (DAE): Derive from base_diff_alg_eqn, not base_diff_eqn.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ODE.h: Move integrate and do_integrate method declarations and
-	definitions here.
-	* base-de.h: From here.
-
-	* ODES.h, ODES.cc, ODESFunc.h, ODESSA.h, ODESSA.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	(LIBOCTAVE_CXX_SOURCES):
-
-2002-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* NLEqn.cc (NLEqn::error_message): New function.
-	* NLEqn.h (NLEqn::solution_state, NLEqn::solution_ok): New functions.
-
-2002-07-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-utils.cc (octave_fgetl): New function.
-	* cmd-edit.cc (do_readline): Use it instead of octave_fgets.
-
-2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (LSODE::error_message): New function.
-	* LSODE.h: Provide decl.
-	(LSODE::integration_state): New function.
-	(LSODE::integration_ok): New function.
-
-2002-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (LSODE_options::x_integration_method): New data member.
-	(LSODE_options::set_integration_method,
-	LSODE_options::integration_method): New functions.
-
-	* LSODE.h (LSODE_options::x_absolute_tolerance): Now Array<double>.
-	Change all uses.
-	(LSODE_OPTIONS::absolute_tolerance): Return Array<double>, not double.
-	(LSODE_OPTIONS::set_absolute_tolerance (const Array<double>&)):
-	New function.
-
-	* Array.h (Array::fortran_vec): New const version.
-
-2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (gnu_readline::history_search_backward): New function.
-	(gnu_readline::history_search_forward): Likewise.
-	(gnu_readline::gnu_readline): Use them instead of passing pointers
-	to extern "C" functions to octave_rl_ad_defun.
-
-2002-05-22  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* DASPK.cc (ddaspk_psol): Return value.
-	* oct-rl-edit.c: Use /* ... */ to comment.
-
-2002-05-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.h (DASSL_options::init): Undo previous change.
-	(DASSL_options::set_absolute_tolerance): Likewise.
-	* LSODE.h (LSODE_options::init): Likewise.
-	(LSODE_options::set_absolute_tolerance): Likewise.
-
-	* DASPK.h (DASPK_options::init): Use default absolute tolerance of
-	sqrt(eps), not eps^2.
-	DASPK_options::set_absolute_tolerance): Likewise.
-
-2002-05-17  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* Array.h (Array<T>::resize_fill_value): Return default initialized
-	object.
-
-2002-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c (OCTAVE_RL_SAVE_STRING): New macro.
-	(octave_rl_set_name, octave_rl_set_basic_quote_characters): Use it.
-	(octave_rl_set_basic_word_break_characters,
-	octave_rl_set_completer_word_break_characters): New functions.
-	* oct-rl-edit.h: Provide decls.
-	* cmd-edit.cc (gnu_readline::do_set_basic_word_break_characters,
-	gnu_readline::do_set_completer_word_break_characters): New functions.
-	(command_editor::set_basic_quote_characters,
-	command_editor::set_completion_append_character): New static functions.
-	* cmd-edit.h: Provide decls.
-	(command_editor::do_set_basic_word_break_characters,
-	command_editor::do_set_completer_word_break_characters):
-	New virtual functions.
-
-	* CMatrix.h, boolMatrix.h, chMatrix.h, dMatrix.h
-	(resize_fill_value): New static function.
-
-	* Array-idx.h (Array<T>::index): New args, resize_ok and
-	resize_fill_value.
-	* Array2-idx.h (Array2<T>::index): Likewise.
-	* ArrayN-idx.h (ArrayN<T>::index): Likewise.
-
-	* Array2.cc (Array<T>::print_info): New function.
-	* Array2.h: Provide decl.
-
-	* Array.cc (Array<T>::print_info): New function.
-	* Array.h: Provide decl.
-
-2002-05-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.h (idx_vector::idx_vector (int)): New function.
-	(idx_vector_rep::idx_vector_rep (int)): New decl.
-	* idx-vector.cc (idx_vector_rep::idx_vector_rep (int)): New function.
-
-	* Array.h (Array<T>::resize_fill_value (void)): New static function.
-	(assign (Array<LT>&, const Array<RT>&)): Use it.
-	* Array2.h (assign (Array2<LT>&, const Array2<RT>&)): Use it.
-	* ArrayN.h (assign (ArrayN<LT>&, const ArrayN<RT>&)): Use it.
-
-2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
-
-	* Array3.h (Array3<T>::checkelem): Improve error message.
-	* ArrayN.h (ArrayN<T>::range_error): Likewise.
-	* DiagArray2.cc (DiagArray2<T>::checkelem): Likewise.
-	* DiagArray2.cc (DiagArray2<T>::operator ()): Likewise.
-
-2002-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.h (DASSL_options::init): Undo previous change.
-	(DASSL_options::set_absolute_tolerance): Likewise.
-
-2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASPK.h, DASPK.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2002-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&) const):
-	Simplify indexing when one or both of the indices are empty.
-
-2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.h (DASSL_options::init): Set absolute tolerance to eps ^ 2.
-	(DASSL_options::set_absolute_tolerance): Likewise.
-	* LSODE.h (LSODE_options::init): Likewise.
-	(LSODE_options::set_absolute_tolerance): Likewise.
-
-2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* f2c-main.c (MAIN_, MAIN__): Delete.  Use F77_DUMMY_MAIN instead.
-	* file-stat.cc (file_stat::update_internal, file_stat::copy):
-	Use HAVE_STRUCT_STAT_ST_RDEV instead of HAVE_ST_RDEV.
-	Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of HAVE_ST_BLKSIZE.
-	Use HAVE_STRUCT_STAT_ST_BLOCKS instead of HAVE_ST_BLOCKS.
-	* file-stat.h: Likewise.
-	* oct-time.cc (octave_time::octave_time, octave_base_tm::strftime,
-	octave_base_tm::init, octave_strptime::init): Use HAVE_TM_ZONE
-	instead of HAVE_STRUCT_TM_TM_ZONE.
-	* strftime.c: Likewise.
-	* lo-specfun.cc, mach-info.cc, CColVector.cc, CMatrix.cc,
-	CRowVector.cc, CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxHESS.cc,
-	CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc,
-	CollocWt.cc, DASSL.cc, EIG.cc, LSODE.cc, NLEqn.cc, Quad.cc,
-	dColVector.cc, dMatrix.cc, dRowVector.cc, dbleAEPBAL.cc,
-	dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
-	dbleSCHUR.cc, dbleSVD.cc: Use F77_FUNC instead of F77_FCN.
-
-2002-04-02  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* CmplxQR.cc (ComplexQR::init): Use economy QR decomposition
-	internally when the user requests it.
-	* CmplxQRP.cc (ComplexQRP::init): Ditto.
-	* dbleQR.cc (QR::init): Ditto.
-	* dbleQRP.cc (QRP::init): Ditto.
-
-2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-fftw.cc (octave_fftw::fft2d): Avoid having to find a
-	definition for NULL by passing 0 as the last arg to fftwnd_one.
-	(octave_fftw::ifft2d): Likewise.
-
-2002-02-22  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
-
-	* lo-mappers.cc (arg): Simply call atan2 (0.0, x).
-
-2001-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data-conv.cc (LS_DO_READ): Don't do anything unless len > 0.
-	(LS_DO_WRITE): Likewise.
-
-2001-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-inlines.cc (MX_CUMMULATIVE_OP): New macro.
-	* CMatrix.cc (ComplexMatrix::cumprod, ComplexMatrix::cumsum): Use it.
-	* dMatrix.cc (Matrix::cumprod, Matrix::cumsum): Likewise.
-
-	* mx-inlines.cc (MX_REDUCTION_OP, MX_REDUCTION_OP_COL_EXPR,
-	MX_REDUCTION_OP_ROW_EXPR): New macros.
-	* dMatrix.cc (Matrix::prod, Matrix::sum): Use MX_REDUCTION_OP.
-	* CMatrix.cc (ComplexMatrix::prod, ComplexMatrix::sum): Likewise.
-
-	* mx-inlines.cc (MX_BASE_REDUCTION_OP): New macro.
-	DIM == -1 now means no orientation for vector sums.
-	* dMatrix.cc (ComplexMatrix::sumsq): Use it.
-	* CMatrix.cc (ComplexMatrix::sumsq): Likewise.
-
-2001-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (Range::nelem_internal): Special case ranges that must
-	have zero elements.
-
-2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Split out readline and pathsearch functionality
-	into separate liboct-readline and liboct-pathsearch libraries.
-
-	* oct-rl-edit.c (octave_rl_clear_screen): Call rl_clear_screen,
-	not _rl_clear_screen.  Temporarily redefine rl_redisplay_function
-	to do nothing for this call to rl_clear_screen.
-
-2001-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.cc (ddassl_f): Handle IRES returned from user supplied
-	function.
-	* DAEFunc.h (DAERHSFunc): Add IRES to prototype.
-
-2001-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::inverse, Matrix::solve, Matrix::determinant,
-	Matrix::inverse): Handle the case of rcond being a NaN the same as
-	a signular matrix.  From "Jianming" <caijianming@yahoo.co.uk>.
-	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::solve,
-	ComplexMatrix::determinant, ComplexMatrix::inverse): Likewise.
-
-2001-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::row_as_string): New parameter, raw.
-
-	* Array-i.cc, Array-s.cc, Array-d.cc, Array-ch.cc, Array-C.cc,
-	Array-b.cc: Instantiate three arg assign functions.
-
-	* ArrayN.cc (assign (ArrayN<LT>&, const ArrayN<RT>&, const LT&)):
-	New arg, resize_fill_value.
-	* ArrayN.h: Provide declaration.
-	(assign (ArrayN<LT>&, const ArrayN<RT>&): Define here by calling
-	three arg version.
-
-	* Array3.cc (assign (Array3<LT>&, const Array3<RT>&, const LT&)):
-	New arg, resize_fill_value.
-	* Array3.h: Provide declaration.
-	(assign (Array3<LT>&, const Array3<RT>&): Define here by calling
-	three arg version.
-
-	* Array2.cc (assign (Array2<LT>&, const Array2<RT>&, const LT&)):
-	New arg, resize_fill_value.
-	* Array2.h: Provide declaration.
-	(assign (Array2<LT>&, const Array2<RT>&): Define here by calling
-	three arg version.
-
-	* Array.cc (assign (Array<LT>&, const Array<RT>&, const LT&)):
-	New arg, resize_fill_value.
-	* Array.h: Provide declaration.
-	(assign (Array<LT>&, const Array<RT>&): Define here by calling
-	three arg version.
-
-2001-05-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.cc (dir_path::set_program_name): Set the environment
-	variables SELFAUTOLOC, SELFAUTODIR, SELFAUTOPARENT, and TEXMFDBS
-	to the empty string.
-
-2001-05-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.h (Array2<T>::operator = (const Array2<T>&)):
-	Don't check for rep != a.rep.
-
-2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* oct-fftw.h, oct-fftw.cc: New files.
-	* Makefile.in (INCLUDES, SOURCES): Add new files.
-	* CMatrix.cc (ComplexMatrix::{fourier, ifourier, fourier2d,
-	ifourier2d}): Use fftw if available.
-	* dMatrix.cc (Matrix::{fourier, ifourier, fourier2d, ifourier2d}):
-	Likewise.
-
-2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Don't use mk-libdir-link.
-	(install-inc): Don't use mk-includedir-link.
-
-2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cutils.c (octave_gethostname): New function.
-	* lo-utils.h: Provide declaration.
-	* oct-env.cc (octave_env::do_get_host_name):
-	Call octave_gethostname, instead of gethostname.
-
-	* lo-cutils.c (gethostname): Define here.
-	* lo-sysdep.cc: Not here.
-
-2001-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cutils.c: Don't declare strptime.
-	(oct_strptime): Cast return type of strptime to char*.
-
-2001-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c (octave_rl_newline): Call rl_newline with two args.
-	(octave_rl_set_name): call rl_re_read_init_file with two args.
-	(octave_rl_read_init_file): Ditto.
-	(octave_rl_clear_undo_list): Call rl_free_undo_list, not
-	free_undo_list.
-	(octave_rl_completion_matches): Call rl_completion_matches, not
-	completion_matches.
-	(octave_rl_enable_paren_matching): New function.
-	(octave_rl_set_blink_matching_paren_flag): Delete.
-	(octave_rl_get_blink_matching_paren_flag): Delete.
-
-	* lo-mappers.h, lo-mappers.cc (log10 (const Complex&),
-	tanh (const Complex&)): Declare and define if not
-	CXX_ISO_COMPLIANT_LIBRARY.
-
-2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.h (tanh (const Complex&)): Only declare if not
-	CXX_ISO_COMPLIANT_LIBRARY.
-
-2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* lo-mappers.cc (tanh (const Complex&)): Only define if not
-	CXX_ISO_COMPLIANT_LIBRARY.
-
-	* Makefile.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Use to create
-	archive libraries containing templates.
-
-	* ArrayN-idx.h (freeze, all_ok, any_orig_empty, any_zero_len,
-	get_zero_len_size, all_colon_equiv): Inline.
-	(ArrayN<T>::index): Rename idx to arr_idx.
-	* ArrayN.cc (ArrayN<T>::index, ArrayN<T>::compute_index,
-	ArrayN<T>::get_size, ArrayN<T>::range_error, ArrayN<T>::range_error,
-	increment_index, ArrayN<T>::resize, ArrayN<T>::insert): Likewise.
-
-2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.h, lo-mappers.cc (tan (const Complex&),
-	log10 (const Complex&)): Delete.
-
-	* oct-cmplx.h: Define forwarding functions for real, imag, abs,
-	arg, norm, conj, polar, cos, cosh, exp, log, log10, pow, sin,
-	sinh, sqrt, tan, and tanh.
-
-2001-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc, help.cc, load-save.cc, pr-output.cc, utils.cc:
-	Add std:: namespace qualifier as needed.
-
-	* mx-inlines.cc: Rename all functions with mx_inline_ prefix.
-	Change all uses to match.
-
-2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cutils.c: Don't delcare strptime.
-
-2001-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (operator * (const ComplexMatrix&, const ComplexMatrix&):
-	Return correct size result for empty matrix case.
-
-2000-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xmin (const Complex&, const Complex& y):
-	If args are equal in magnitude, return first arg instead of
-	second.
-
-2000-12-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (Range::nelem_internal): Call tfloor, not round, but
-	then try harder to compute correct number of elements.
-
-	* dMatrix.cc (Matrix::lssolve): Ask DGELSS for size of work vector.
-	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for ZGELSS.
-
-2000-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (Range::nelem_internal): Call round here, not tfloor.
-	Rename n_intervals to be n_elt.
-
-	* strptime.c: Surround everything after including config.h in
-	#ifndef HAVE_STRPTIME ... #endif.
-
-2000-11-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (assign): When resizing, cast fill value to LT.
-	* Array2-idx.h (MAYBE_RESIZE_LHS): Likewise.
-
-2000-11-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray-defs.h: Protect against multiple inclusion.
-
-2000-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data-conv.h (enum save_type): Move LS_U_LONG and LS_LONG to the
-	end of the list, to be compatible with previous versions of Octave.
-
-2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* oct-time.cc (DEFINE_SET_INT_FIELD_FCN): Don't check limits here,
-	since mktime is supposed to `normalize' the results for us.
-
-2000-10-31  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* Array2.cc (Array2<T>::transpose): Avoid copy for empty matrices
-	and vectors.  Use xelem for faster access to elements when copying.
-
-2000-10-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (ComplexMatrix::cumsum, ComplexMatrix::cumprod):
-	Correct indexing for operation across rows.
-	* dMatrix.cc (Matrix::cumsum, Matrix::cumprod): Likewise.
-
-2000-10-12  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&)): Avoid copying
-	elements if arg is a colon.
-
-2000-10-12  Cai Jianming  <caijianming@yahoo.co.uk>
-
-	* dMatrix.cc (Matrix::cumprod (int) const): New arg, DIM.
-	(Matrix::cumsum (int) const): Likewise.
-	(Matrix::prod (int) const): Likewise.
-	(Matrix::sum (int) const): Likewise.
-	(Matrix::sumsq (int) const): Likewise.
-	* CMatrix.cc (ComplexMatrix::cumprod (int dim) const): Likewise.
-	(ComplexMatrix::cumsum (int) const): Likewise.
-	(ComplexMatrix::prod (int) const): Likewise.
-	(ComplexMatrix::sum (int) const): Likewise.
-	(ComplexMatrix::sumsq (int) const): Likewise.
-
-2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&)): Correctly set
-	size if Array<T>::index returns an empty array.
-
-2000-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (file_ops::link, file_ops::symlink,
-	file_ops::readlink): New functions.
-
-2000-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&)): If a scalar is
-	indexed, always return an object the same size as the index arg.
-
-	* oct-time.cc (octave_base_tm::strftime): Return empty string for
-	empty format.
-
-2000-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-cutils.c (oct_strptime): New function.
-	* oct-time.cc (octave_strptime::init): Call it instead of strptime.
-	Don't declare strptime.  Don't define _XOPEN_SOURCE or _BSD_SOURCE.
-
-2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc: Comment out _BSD_SOURCE and _XOPEN_SOURCE definitions.
-
-	* Makefile.in (MATRIX_INC): Add ArrayN-idx.h to the list.
-
-2000-06-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.h (read_int): Provide declaration.
-
-2000-06-29  James R. Van Zandt  <jrv@vanzandt.mv.com>
-
-	* data-conv.cc (read_doubles): Handle EIGHT_BYTE_INT cases.
-	(write_doubles): Ditto.
-	* data-conv.h: Ditto.
-	(enum save_type): New values, LS_U_LONG and LS_LONG.
-
-2000-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* boolMatrix.h: Declare MM_CMP_OPS here.
-	* boolMatrix.cc: Define them here.
-
-2000-06-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign): Allow x(bool) = RHS to succeed if x is
-	previously undefined and set size of x to size of bool index.
-	* idx-vector.cc (IDX_VEC_REP::maybe_convert_one_zero_to_idx):
-	Allow z_len to be zero.
-	(IDX_VEC_REP::freeze): If z_len is zero, set frozen_at_z_len to len.
-	If frozen, don't assert that frozen_at_z_len == z_len.
-
-2000-05-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c (octave_rl_clear_screen): Call _rl_clear_screen
-	instead of rl_clear_screen.
-
-2000-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-d.cc: Instantiate ArrayN<double> here too.
-	* Array-idx-vec.cc, ArrayN-idx.h, ArrayN.cc, ArrayN.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2000-04-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array<T>::operator =): Don't set max_indices to 1 here.
-
-2000-03-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-sysdep.h: octave_chdir returns int, not bool.
-
-2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (liboctave.$(SHLEXT)): Delete target
-	before rebuilding.
-
-2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
-
-	* Makefile.in (liboctave.$(LIBEXT)): New target.
-	(libraries): Depend only on library targets, not archive members.
-
-2000-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: (objects): New target.
-
-	* lo-cutils.c: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-	* lo-utils.h: Declare octave_qsort here.
-	* Array.h (Array::qsort): Use it here.
-
-2000-03-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc: Include <sys/types.h> and <unistd.h>, if available.
-
-2000-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-hist.c (octave_history_list): Do something when not
-	printing line numbers.  Fix reallocation of retval.
-
-2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Install files in
-	$(octincludedir)/octave.
-	(uninstall): Remove them from the correct directory too.
-
-	* oct-time.cc: Temporarily define _BSD_SOURCE and _XOPEN_SOURCE if
-	they are not already defined.
-
-2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CRowVector.cc, CRowVector.h, CColVector.cc, CColVector.h:
-	Delete declarations and definitions of mixed-type vector-vector ops.
-
-2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.h, CMatrix.cc: Add lssolve methods for real-valued RHS
-	matrix and vector objects.
-
-	* mx-op-defs.h (DMM_BIN_OP): Explicitly request conversion to
-	return type from second arg type.
-	(MDM_BIN_OP): Likewise, for first arg type.
-
-	* dMatrix.cc (Matrix::fourier, Matrix::ifourier,
-	Matrix::fourier2d, Matrix::ifourier2d): Likewise.
-
-	* EIG.cc (EIG::symmetric_init, EIG::hermitian_init): Explicitly
-	request ColumnVector to ComplexColumnVector, and Matrix to
-	ComplexMatrix conversions.
-
-	* CmplxAEPBAL.cc (ComplexAEPBALANCE::init): Give balancing_mat its
-	initial value using ComplexMatrix constructor.
-
-	* CColVector.cc (product, quotient,
-	operator * (const DiagMatrix&, const ComplexColumnVetor&)):
-	Fix type of returned value.
-	* CDiagMatrix.cc (ComplexDiagMatrix::row,
-	ComplexDiagMatrix::column, ComplexDiagMatrix::inverse): Likewise.
-
-	* Array.h, CColVector.h, CDiagMatrix.h, CMatrix.h, CRowVector.h,
-	MArray.h, MDiagArray2.h, dColVector.h, dDiagMatrix.h, dMatrix.h,
-	dRowVector.h: Declare some constructors explicit, to disallow
-	potentially problematic automatic type conversions.
-
-2000-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* vx-rv-crv.h, vx-cv-ccv.h, vx-crv-rv.h, vx-ccv-cv.h,
-	vx-rv-crv.cc, vx-cv-ccv.cc, vx-crv-rv.cc, vx-ccv-cv.cc:
-	More new files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* vx-ccv-s.h, vx-crv-s.h, vx-cs-cv.h, vx-cs-rv.h, vx-cv-cs.h,
-	vx-rv-cs.h, vx-s-ccv.h, vx-s-crv.h, vx-ccv-s.cc, vx-crv-s.cc,
-	vx-cs-cv.cc, vx-cs-rv.cc, vx-cv-cs.cc, vx-rv-cs.cc, vx-s-ccv.cc,
-	vx-s-crv.cc:, New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* CRowVector.h, CRowVector.cc, CColVector.h, CColVector.cc:
-	Delete scalar by vector and vector by scalar binary ops.
-
-	* MArray-defs.h: More new macros to handle MDiagArray operators.
-	* dDiagMatrix.h, CDiagMatrix.h: Use the op-forwarding macros.
-
-2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c (octave_rl_set_event_hook): Take address of
-	rl_event_hook before casting to void **.
-	(octave_rl_set_startup_hook): Likewise, for rl_startup_hook.
-
-	* MArray-defs.h: Many new macros to make declaration and
-	definition of operators more consistent.
-
-	* MArray.h, MArray2.h, dColVector.h, dRowVector.h, CColVector.h,
-	CRowVector.h, dMatrix.h, CMatrix.h: Use them.
-
-2000-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::ifourier): Cast divisor to double.
-	(Matrix::ifourier2d): Likewise.
-	* CMatrix.cc (ComplexMatrix::ifourier): Likewise.
-	(ComplexMatrix::ifourier2d): Likewise.
-
-	* Array.h (Array::ArrayRep::qsort): Cast len to size_t.
-
-2000-02-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-rl-edit.c, oct-rl-edit.h: New files for interface to GNU
-	readline library.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* oct-rl-hist.c, oct-rl-hist.h: New files for interface to GNU
-	readline history library.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* data-conv.cc (LS_DO_WRITE): Cast arg to ostream::write to char*.
-	(LS_DO_READ): Likewise, for istream::read.
-	(write_doubles): Likewise.
-	(read_doubles): Likewise.
-
-	* oct-env.cc (octave_env::do_polite_directory_format):
-	Use operator== and substr method to do limited-length string
-	comparison.
-
-	* Array2-idx.h, Array-idx.h: Avoid shadowing warnings for idx.
-
-	* Quad.h: Use do_integrate as name of pure virtual function.
-
-	* base-de.h: Use tt instead of t as arg names.
-	Add method with tcrit arg.
-
-	* DAE.h, DAE.cc: Likewise, also xx for x.
-
-	* DASSL.cc (dassl_fcn_ptr, dassl_jac_ptr): New typedefs.
-	* LSODE.cc: lsode_fcn_ptr, lsode_jac_ptr): Ditto.
-	* Quad.cc (quad_fcn_ptr): Ditto.
-	* NLEqn.cc (hybrd1_fcn_ptr, hybrj1_fcn_ptr): Ditto.
-
-	* oct-getopt.h, oct-getopt.c: New files for interface to getopt.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* oct-kpse.h, oct-kpse.c: New files for interface to kpathsearch.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* dMatrix.cc (write_int, read_int): No longer declared static.
-
-	* CDiagMatrix.h: Delete decls for friend operators that are
-	handled by MDiagArray2 class.  Move others outside class decl and
-	strip friend status.
-	* dDiagMatrix.h: Likewise.
-
-	* MArray.h: Delete decls for friend operators inside class decl.
-	* MArray2.h: Ditto.
-	* MDiagArray2.h: Ditto.
-
-	* MArray-defs.h (DO_VS_OP,, DO_SV_OP, DO_VV_OP, NEGV): Pass all
-	necessary parameters.  Don't allocate memory in the macro.  Change
-	all uses.
-
-	* dMatrix.h (class Matrix): Delete `friend class' decls.
-	* CMatrix.h (class ComplexMatrix): Ditto.
-
-	* mx-op-defs (MS_BOOL_OP, MS_BOOL_OPS, SM_BOOL_OP, SM_BOOL_OPS,
-	MM_BOOL_OP, MM_BOOL_OPS, MDM_MULTIPLY_OP, MDM_BIN_OPS,
-	DMM_MULTIPLY_OP, DMM_BIN_OPS): Pass zero constant as final arg, to
-	avoid type conflicts.  Change all uses.
-
-	* strptime.c (__mon_yday): Fix size of array decl.
-
-	* mx-inlines.cc: Use `xnot' instead of `not' for function name.
-
-	* chMatrix.cc (charMatrix::row_as_string): Delete extraneous
-	default value for second arg.
-
-	* Array2.cc (Array2<T>::resize): Add Array<T>:: qulaifier to
-	references to ArrayRep.
-
-2000-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (Array::ArrayRep): Now protected, not private.
-
-	* All source files: Include iostream, fstream, strstream,
-	etc. as needed instead of using forward declarations for these
-	classes.  Add std:: qualifier as needed.
-
-2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc: Declare strptime extern "C".
-
-2000-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc [! HAVE_STRPTIME]: Provide declaration.
-
-2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.h (Array2<T>::get_size): Now protected instead of private.
-	* Array3.h, Array3.cc: Use it in constructors and resize methods
-	to get total size to be allocated.
-
-	* DASSL.cc (DASSL::integrate): Declare do_restart and save_output
-	as bool, not int.
-
-2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
-	Allow A(idx) = RHS if idx is a boolean index with the same shape
-	as A, even when do_fortran_indexing is not enabled.
-	(Array2<T>::index (idx_vector& idx) const): Likewise, for A(idx).
-
-2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::solve (...)): Add new variant with
-	function pointer as final arg.  Passed function (if any) will be
-	called for singularity errors.
-	* CMatrix.cc (ComplexMatrix::solve (...)): Likewise.
-
-	* dMatrix.cc (Matrix::pseudo_inverse): Use economy SVD.
-	* CMatrix.cc (ComplexMatrix::pseudo_inverse): Likewise.
-
-	* lo-ieee.cc (octave_ieee_init): Don't include sunmath.h.
-	No longer bother with infinity or quiet_nan.
-
-	* Array2.cc (Array2<T>::get_size): New function.
-	(Array2<T>::Array2, Array2<T>::resize): Use it.
-
-2000-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::maybe_delete_elements (idx_vector&)):
-	New function.
-	(assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
-	Use it when indexing with one arg instead of faking a second one.
-	(Array2<T>::maybe_delete_elements (idx_vector&, idx_vector&)):
-	Return empty matrices with the correct dimensions for A(:,:) = []
-	and also A(:,idx) = [], and A(idx,:) = [] when idx enumerates all
-	rows or columns.
-
-	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Recognize a bool
-	vector that is all true values with a length equal to n as colon
-	equivalent.
-
-2000-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strptime.c: Only include langinfo.h if _LIBC is defined.
-
-2000-01-21  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* CMatrix.cc (ComplexMatrix::expm): Apply permutation and scaling
-	operations directly in step 2 and reverse step 2.
-	* dMatrix.cc (Matrix::expm): Apply permutation and scaling
-	operations directly in step 2 and reverse step 2.
-
-2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.h, oct-time.cc (octave_strptime): New class.
-
-	* strptime.c: New file, from glibc 2.1.2.
-	* Makefile.in (SOURCES): Add strptime.c to the list.
-
-2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray.h (MArray <const Array<T>&)): New constructor.
-
-2000-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.cc (dir_path::all_directories): Avoid dereferencing
-	NULL directory list returned from kpse_element_dirs
-
-1999-12-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleLU.cc (LU::LU): Call DGETRF directly instead of calling DGESV.
-	* CmplxLU.cc (ComplexLU::ComplexLU): Likewise, call ZGETRF
-	directly, instead of calling ZGESV.
-
-1999-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data-conv.cc (init_sized_type_lookup_table): New function.
-	(string_to_data_type): Use it to improve lookup of data types.
-
-1999-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (is_symmetric): Move here from Array2.cc.
-	* Array2.h (is_symmetric): Delete declaration.
-
-1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-env.cc (do_get_user_name): Reverse sense of test.
-
-1999-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc (Fstrftime): Undo previous change.
-	(octave_time::octave_time (const octave_base_tm&)): Likewise.
-
-1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleSVD.cc (SVD::init): Let DGESVD determine work space requirement.
-	* CmplxSVD.cc (ComplexSVD::init): Likewise, for complex version.
-
-	* dbleSCHUR.cc (SCHUR::init): IWORK is always referenced by dgeesx.
-	Don't forget to pass length of third string argument to dgeesx.
-
-	* CmplxSCHUR.cc (ComplexSCHUR::init): Don't forget to pass length
-	of third string argument to zgeesx.
-
-1999-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DiagArray2.cc (DiagArray2<T>::operator () (int, int)):
-	On errors, simply return `T ()'.
-	(DiagArray2<T>::checkelem (int, int)): Likewise.
-
-1999-11-02  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* dMatrix.cc (Matrix::expm): Do balancing here instead of using
-	AEPBALANCE class.
-	* CMatrix.cc (ComplexMatrix::expm): Likewise.
-
-1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-shlib.cc, oct-shlib.h: New files.
-	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
-
-1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CRowVector.cc (linspace): Allow npoints == 1 if x1 == x2.
-	* dRowVector.cc (linspace): Ditto.
-
-	* oct-time.cc (Fstrftime): Don't save or delete tm_zone.
-	(octave_time::octave_time (const octave_base_tm&)): Likewise.
-
-1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.cc (DASSL::do_integrate (double)): If we have a function
-	to evaluate the Jacobian, set info(4), not iwork(4).
-	Set rwork(1) to the maximum step size, not rwork(2).
-
-1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.cc: Include <climits>.
-
-1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.h (command_editor::do_resize_terminal): New function.
-	* cmd-edit.cc (command_editor::resize_terminal): New function.
-	(gnu_readline::do_resize_terminal): New function.
-
-Fri Sep  3 12:39:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc: Include ieeefp.h and sunmath.h if we have them.
-	* lo-ieee.c: Likewise.
-	Delete extern "C" declarations for infinity and quiet_nan.
-
-Fri Aug 20 07:58:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-inlines.cc (VS_OP, SV_OP, VV_OP): Delete `extern template' decls.
-	(VS_OP_FCN, SV_OP_FCN, VV_OP_FCN): Declare template functions
-	`inline', not `static inline'.
-
-	* idx-vector.cc (intcmp): Declare args as const void *, not int *,
-	then cast to const int * to compare.
-
-Fri Jul 16 11:23:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DAEFunc.h: Remove useless preprocessor conditional.
-
-Thu Jul 15 14:10:33 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (command_editor::do_decode_prompt_string):
-	Use octave_time object instead of time_t.
-
-	* file-stat.h (file_stat::fs_atime, file_stat::fs_mtime,
-	file_stat::fs_ctime): Now octave_time objects.
-	(file_stat::atime, file_stat::mtime, file_stat::ctime):
-	Return octave_time objects.
-	(file_stat::is_newer): Args are now octave_time objects instead of
-	time_t.
-
-	* oct-time.h (octave_time::as_double): Delete.
-	(octave_time::operator double ()): New function.
-	(octave_time::operator time_t ()): New function.
-	(octave_time::ctime): New function.
-	(octave_base_tm::strftime): Renamed from format_as_string.
-	(octave_base_tm::asctime): New function.
-	(operator == (const octave_time&, const octave_time&),
-	operator != (const octave_time&, const octave_time&),
-	operator < (const octave_time&, const octave_time&),
-	operator <= (const octave_time&, const octave_time&),
-	operator > (const octave_time&, const octave_time&),
-	operator >= (const octave_time&, const octave_time&)):
-	New comparison functions.
-
-	* strftime.c: Move here from src directory.
-	* Makefile.in (SOURCES): Add it to the list.
-
-	* oct-time.h (octave_time::octave_time (time_t)): New constructor.
-
-Wed Jul 14 17:38:07 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-time.h, oct-time.cc: New files.
-	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
-
-	* systime.h: Move here from src directory.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-Mon Jul 12 22:34:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-defs.h (b_d_Mapper, b_c_Mapper): New typedefs.
-	* dMatrix.cc (Matrix::map (b_d_Mapper)): New function.
-	* CMatrix.cc (ComplexMatrix::map (b_c_Mapper)): New function.
-	* lo-mappers.cc (xisinf, xisnan, xfinite): Return bool, not double.
-
-	* lo-mappers.cc (xmin, xmax): New functions to correctly handle NaNs.
-
-Mon May 10 07:45:11 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray-defs.h (DO_VV_OP2): Fix macro definition to use arg.
-
-Wed May  5 20:06:10 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>index (idx_vector& idx)): Always return a
-	column vector for A(:), for compatibility with Matlab.
-
-Fri Apr 23 11:52:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (LSODE::do_integrate (double)): Don't forget to set
-	iopt when there are optional inputs in rwork or iwork.
-
-Fri Mar 26 11:26:32 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (libraries): Use the libfoo.a(objects) method of
-	creating static libs.
-
-Thu Mar  4 02:17:04 1999  James Macnicol  <jamesm@evans.ee.adfa.oz.au>
-
-	* data-conv.cc (oct_data_conv::string_to_data_type): Handle uint16
-	and uint32 data types.
-
-Thu Mar  4 01:51:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): Don't use __alpha__-specific code
-	for Linux.  Remove old Linux-specific code.
-
-Tue Jan 19 09:34:55 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (operator * (const ColumnVector& v, const RowVector& a)):
-	Don't require lengths to be equal.
-	* CMatrix.cc (operator * (const ComplexColumnVector& v, const
-	ComplexRowVector& a)): Likewise
-
-Tue Nov 24 23:38:19 1998  Eric Norum  <eric@skatter.USask.Ca>
-
-	* statdefs.h: Only define mode_t if not already defined.
-
-Tue Nov 24 17:24:52 1998  john  <john@arrows.demon.co.uk>
-
-	* lo-specfun.cc (airy, biry): Set imaginary part of result to zero
-	when appropriate.
-
-Mon Nov 23 09:57:05 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (gnu_readline::gnu_readline): Set terminal name
-	before calling rl_initialize.
-
-Tue Nov 17 23:47:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (besselh, airy, biry): New functions.
-	Update Bessel function support to use library by D. E. Amos.
-
-Thu Nov 12 17:44:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.h (command_editor::readline): Add new variation that
-	allows EOF information to be passed back to caller.
-
-	* dMatrix.cc (Matrix::read): Do the right thing for EOF when
-	amount of data to read is unspecified.
-
-Tue Nov 10 07:53:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): New macro.
-	(DEFINE_OCTAVE_ALLOCATOR): Ditto.
-
-	* byte-swap.h (swap_bytes, swap_2_bytes, swap_4_bytes, swap_8_bytes):
-	Add volatile qualifier to void* arg.
-	Cast volatile void* arg to volatile char*.
-
-Mon Nov  9 08:28:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.h (command_editor::do_set_event_hook): New function.
-	(command_editor::do_restore_event_hook): Ditto.
-	* cmd-edit.cc (command_editor::set_event_hook): Ditto.
-	(command_editor::restore_event_hook): Ditto.
-	(gnu_readline::do_set_event_hook): Ditto.
-	(gnu_readline::do_restore_event_hook): Ditto.
-	(gnu_readline::previous_event_hook): New data member.
-	(gnu_readline::gnu_readline): Initialize previous_event_hook.
-
-Mon Nov  2 13:36:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (BINDISTLIBS): Don't include .$(SHLEXT_VER) in name.
-
-	* Makefile.in (stmp-pic): New target.
-	($(PICOBJ)): Depend on stmp-pic, not pic.
-	(clean): Remove stmp-pic
-
-	* Makefile.in: Undo previous change to avoid optmization when
-	compiling lo-ieee.cc.
-
-Sun Nov  1 10:10:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xfinite): Define in terms of xfinite for real and
-	imaginary parts.
-	(xisinf): Define in terms of xisinf for real and imaginary parts.
-
-Thu Oct 29 18:57:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* boolMatrix.cc (boolMatrix::operator !): New function.
-
-Fri Oct 23 21:46:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.h (dir_path::default_path): New data member.
-	* pathsearch.cc (dir_path::init): Use it.
-
-	* Makefile.in: Avoid optmization when compiling lo-ieee.cc.
-
-Fri Oct 16 01:08:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::extract): New function.
-	(charMatrix::charMatrix (char c)): New constructor.
-
-Tue Oct 13 22:11:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.h: (command_editor::do_read_init_file): New function.
-	* cmd-edit.cc (command_editor::read_init_file): New function.
-	(gnu_readline::do_read_init_file): Likewise.
-
-Fri Sep 25 14:26:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-env.cc (octave_env::do_get_home_directory):
- 	If HOME can't be found, set it to "/".
-	(octave_env::do_get_user_name)
-	If user name can't be found, set it to "unknown".
-	(octave_env::do_get_host_name)
-	If host name can't be found, set it to "unknown".
-
-	* pathsearch.h (dir_path::rehash): New function.
-	* pathsearch.cc (dir_path::init): Clear kpathsea's internal
-	diretcory cache before doing initialization.
-
-Thu Sep 24 13:23:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Qzval): Delete.
-	(qzhes, qzit, qzval): Delete F77_FCN declarations.
-	* dMatrix.h (Qzval): Delete declaration.
-
-	* dbleGEPBAL.h, dbleGEPBAL.cc: Delete.
-	* Makefile.in (MATRIX_INC, MATRIX_SRC): Delete them from the lists.
-	* mx-ext.h: Don't include dbleGEPBAL.
-
-	* lo-ieee.cc (octave_ieee_init): For now, use X_CAST instead of
-	static_cast.
-
-Fri Sep  4 10:58:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::read): Skip after reading, not before.
-	From: Dr.-Ing. Torsten Finke <fi@igh-essen.com>.
-
-Wed Sep  2 09:50:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): For Linux on arm, don't rely on
-	HUGE_VAL and NAN.
-
-Wed Aug 26 15:04:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
-	Handle x(i) = scalar for do_fortran_indexing == 1.
-
-Thu Jul 30 00:34:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const charMatrix&)):
-	Alloctate space before attempting to use it.
-	(ComplexMatrix::ComplexMatrix (const boolMatrix&)): Likewise.
-
-Mon Jun 22 17:04:27 1998  Tomislav Goles  <tom@ait-tech.com>
-
-	* EIG.cc (EIG::init): Move invariant code outside loop.
-
-Thu Jun 18 11:08:23 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray2.cc (MARRAY_A2A2_OP): If operands are empty, make result
-	have the same size as the operands.
-
-Thu May 28 10:41:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DASSL.cc (DASSL::do_integrate): If an exception occurs in the
-	call to ddassl, set integration_error to 1 before calling the
-	error handler and returning.
-	* LSODE.cc (LSODE::do_integrate): Likewise.
-
-Wed May 27 13:46:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign): Allow A([],[]) = scalar and, if
-	do_fortran_indexing is set, A([]) = scalar.
-	* Array-idx.h (assign): Allow A([]) = scalar.
-
-Thu May 14 11:50:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mx-op-defs.h (MDM_MULTIPLY_OP): Compute result if dm_nc > 0, not
-	if dm_nc == 0.
-
-Thu Apr 23 16:15:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.h (dir_path::p_orig): New field.
-	* pathsearch.cc (dir_path::init): Perform variable and tilde
-	expansion on the original path here.
-	(dir_path::find_all): Don't do anything if not initialized.
-
-Tue Apr 14 14:41:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (index): Allow x(:) even when do_fortran_indexing
-	is not set.
-	(index): Allow x = zeros (2, 0); x(1,:) to work.
-
-	* lo-specfun.cc (gammainc): Use dgamit to compute
-	(\int_0^x exp(-t) t^(a-1) dt)/gamma(a), not just
-	\int_0^x exp(-t) t^(a-1) dt.
-
-Wed Apr  8 22:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-i.cc, Array-d.cc,
-	Array-s.cc: Change return types of all `assign' explicit
-	instantiations to be int, not void, to match the template decl in
-	Array.h.
-
-Mon Apr  6 00:27:06 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (gammainc): Reorder args in call to xdgami.
-
-Thu Feb 19 01:16:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-specfun.cc (xgamma, xlgamma): Define here.
-	* lo-mappers.cc: Not here.
-
-	* lo-specfun.h: Declare xgamma and xlgamma here.
-	* lo-mappers.h: Not here.
-
-	* lo-specfun.h: Never declare gamma or lgamma.
-
-Tue Feb 10 16:14:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (assign): Allow A([]) = X to succeed if X is an
-	empty matrix of any dimension.
-
-Thu Feb  5 02:12:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-syscalls.cc (octave_syscalls::vfork): New function.
-
-	* lo-specfun.cc: Don't include dbleBessel.h.
-
-	* Makefile.in (INCLUDES): Delete oct-math.h from the list.
-
-	* dir-ops.h (dir_entry::operator bool ()): Return bool, not void*.
-	* file-stat.h (file_stat::operator bool ()): Likewise.
-	* idx-vector.h (idx_vector::operator bool ()): Likewise.
-	* oct-group.h (octave_group::operator bool ()): Likewise.
-	* oct-passwd.h (octave_passwd::operator bool ()): Likewise.
-
-	* data-conv.cc (IEEE_little_double_to_IEEE_big_double):
-	Don't cast arg in call to swap_8_bytes.
-	(IEEE_big_double_to_IEEE_little_double): Ditto
-	(IEEE_big_float_to_IEEE_little_float): Don't cast arg in call to
-	swap_4_bytes.
-	(IEEE_little_float_to_IEEE_big_float): Ditto
-
-	* oct-alloc.cc (grow): Use X_CAST, not static_cast.
-	* prog-args.cc (prog_args::getopt): Likewise.
-	* dMatrix.cc (read_int, do_read, write_int, do_write): Likewise.
-	* cmd-edit.cc (gnu_readline::do_set_completion_function): Likewise.
-	* data-conv.cc (LS_DO_READ, LS_DO_WRITE, read_doubles, write_doubles):
-	Likewise.
-
-	* byte-swap.h (swap_bytes, swap_2_bytes, swap_4_bytes,
-	swap_8_bytes): Declare ptr arg as void*, then use cast.
-
-Mon Feb  2 01:42:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
-	Use $(mk-libdir-link).
-
-	* file-stat.cc (file_stat::update_internal): Use stat and lstat,
-	not SAFE_STAT and SAFE_LSTAT.
-	(lstat): New function, defined if HAVE_LSTAT is not defined.
-	* safe-xstat.hin, safe-xstat.cin: Delete.
-	* Makefile.in: Delete rules for safe-stat.h, safe-stat.c,
-	safe-lstat.h, and safe-lstat.cc.
-
-Fri Jan 30 23:48:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::all, charMatrix::any): New functions.
-
-Tue Jan 20 16:30:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::expm): Skip trace normalization step if the
-	trace is negative.
-	* CMatrix.cc (ComplexMatrix::expm): Skip trace normalization if
-	the real part of the trace is negative.
-
-Mon Jan 19 16:01:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::expm): Call xdlange instead of dlange.
-	* CMatrix.cc (ComplexMatrix::expm): Call xzlange instead of zlange.
-
-	* Array2-idx.h (assign): Allow operations like a = 1; a(2:3) = [1;2]
-	to succeed.
-
-Thu Dec 18 14:53:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (IDX_VEC_REP::sort): Don't do anything unless len > 1.
-	(make_uniq): Likewise.
-
-Fri Dec 12 10:58:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): Check for linux before __alpha__.
-
-Sun Nov 30 14:59:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc: Include cmath and lo-specfun.h, not oct-math.h.
-
-	* lo-specfun.h, lo-specfun.cc: New files.
-	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
-
-	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c,
-	oct-math.h: Delete.
-	* Makefile.in (SOURCES): Delete them from the list.
-
-Wed Nov 26 20:02:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-sysdep.cc (octave_getcwd): Prefer getcwd over getwd.
-
-Wed Nov 19 02:30:04 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
-
-	Changes to make support egcs snapshots that implement explicit
-	specification of template functions according to CD2.
-
-	* MArray.h: If NEED_TEMPLATE_FCN_SPECS is defined, add explicit
-	template function specs for template friends.
-	* MArray2.h: Likewise.
-	* MDiagArray2.h: Likewise.
-
-Thu Nov 13 21:57:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (sumsq): Compute equivalent of sum (x .* conj (x))
-
-Thu Oct  2 17:13:02 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
-
-	* CRowVector.cc (linspace): Removed attempt for implicit conversion
-	to complex<double>(int) instead of complex<double>(double).
-
-	* lo-mappers.cc (atanh): Ditto.
-
-Thu Jul 31 22:13:54 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (IDX_VEC_REP::sort): New function.
-	* idx-vector.h (idx_vector::sort): Ditto.
-	* Array2-idx.h (Array2<T>::maybe_delete_elements): Use it before
-	trying to delete elements specified by the index vectors.
-
-Fri Jul 25 17:31:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::lssolve): Increase lwork by factor of 16.
-	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
-
-Thu Jul 24 14:32:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (tilde_expand_word): Fix off-by-one error.
-
-Wed Jul  9 19:40:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-sysdep.cc (octave_getcwd): If getwd is available, use it.
-	Call error handler if we can't find the current directory.
-
-Mon Jul  7 21:14:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xisnan (double)): Return only 1 or 0.
-	(xfinite (double)): Ditto.
-
-	* dbleQR.cc (QR::init): Don't forget to initialize Q when type is raw.
-	* CmplxQR.cc (ComplexQR::init): Ditto.
-
-Sun Jun 15 21:06:37 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (acos (const Complex&)): Select branch that is
-	compatible with Matlab.
-
-Tue Jun 10 10:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h: Correctly handle empty matrices indexed by a
-	single colon.
-
-Fri Jun  6 04:27:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (xlgamma): Use F77_XFCN function to call dlgams.
-	(xgamma): Likewise, for calling xdgamma.
-
-	* FSQP.h, NPSOL.h, QPSOL.h, FSQP.cc, NPSOL.cc, QPSOL.cc: Delete
-	* Makefile.in (INCLUDES, SOURCES): Remove them from the lists.
-
-	* file-ops.cc (file_ops::tilde_expand): Steal more code from bash
-	to do better job expanding tildes.
-
-	* str-vec.cc (string_vector::string_vector (const char * const *):
-	Use temporary variable to compute length.
-
-Thu Jun  5 01:44:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Make building of static library optional.
-	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
-
-	* Makefile.in (stamp-picdir): Delete.
-	(pic): New target.  Don't worry so much about creating pic
-	directory only when it is really needed.
-	(stamp-interp): Delete.
-	(libraries): New target.  Depend on shared library directly.
-
-Wed Jun  4 00:08:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.h, pathsearch.cc (dir_pat::set_program_name):
-	New static function.
-
-Mon Jun  2 12:44:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-mappers.cc (fix): Use floor and ceil instead of casting to int.
-
-Thu May 22 16:20:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.h, cmd-edit.cc: Rename set_paren_string_delimiters to
-	set_basic_quote_characters, to match new version of readline.
-
-	* cmd-edit.cc (do_restore_terminal_state): Call readline function
-	for restoring terminal state through rl_deprep_term_function, now
-	declared in readline.h
-	(rl_deprep_terminal): Delete declaration.
-
-Wed May 21 16:30:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-in): Use new mk-includedir-link macro.
-	(install-lib): Install in $octlibdir.  Use new mk-libdir-link macro.
-
-Thu May 15 11:46:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-edit.cc (command_editor::increment_current_command_number):
-	New static function.
-
-Mon May 12 02:14:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Make it work when
-	the vector is not sorted.
-
-	* CMatrix.cc (ComplexMatrix::operator !): Return boolMatrix.
-	* dMatrix.cc (Matrix::operator !): Likewise
-
-Wed May  7 21:14:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-syscalls.h, oct-syscalls.cc: New files.
-
-	* cmd-edit.h, cmd-edit.cc: Handle completion function.
-
-	* str-vec.h, str-vec.cc (string_vector::uniq): New function.
-
-Tue May  6 00:52:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES_FOR_INSTALL): New variable.
-	(install-inc): Use it.
-
-	* file-ops.h, file-ops.cc (tempnam): Add DIR and PREFIX args.
-	Handle errors and missing functions consistently.
-
-	* oct-group.h, oct-group.cc: New files.
-
-	* oct-passwd.cc: Handle errors and missing functions consistently.
-
-	* str-vec.h, str-vec.cc (c_str_vec, delete_c_str_vec): New functions.
-
-Mon May  5 17:53:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc: (file_ops::tilde_expand): Use new octave_passwd class.
-	* oct-env.cc (octave_env::do_get_user_name): Likewise.
-
-	* oct-passwd.h, oct-passwd.cc: New files.
-
-Sun May  4 22:17:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statdefs.h: Only include sys/types.h if HAVE_SYS_STAT_H is defined.
-
-	* mach-info.h, mach-info.cc: Add missing const qualifiers.
-	(instance_ok ()): New function.
-
-	* glob-match.h, glob-match.cc: Rename from oct-glob.h, oct-glob.cc.
-
-	* cmd-hist.h, cmd-hist.cc: Make it work without GNU readline.
-
-	* lo-utils.h, lo-utils.cc (strsave, octave_putenv): Move here from
-	src/utils.h and src/utils.cc.
-	(octave_fgets): New function, extracted from src/input.cc.
-
-	* cmd-edit.h, cmd-edit.cc: New files.  Provide wrapper class for
-	GNU readline, and allow Octave to work without GNU readline.
-
-	* lo-sysdep.h, lo-sysdep.cc: New files for miscellaneous
-	system-dependent functions.
-
-	* oct-env.h, oct-env.cc: New files for process environment stuff.
-
-	* file-stat.h, file-stat.cc: New files.  Extract file_stat class
-	from file-ops.h and file-ops.cc and move here.
-
-	* file-ops.h, file-ops.cc: Wrap functions in struct.  Move
-	tilde_expand functions here from src/dirfns.cc.
-
-Fri May  2 19:50:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathlen.h: New file, from ../src.
-
-Tue Apr 29 04:39:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::maybe_delete_elements): Prevent
-	out-of-bounds indexing of the index array.
-	* Array-idx.h (Array<T>::maybe_delete_elements): Likewise.
-
-Fri Mar 28 15:37:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.h (x_step_limit): New field.
-	(LSODE_options::init): Initialize it.
-	(LSODE_options::copy): Copy it.
-	(LSODE_options::set_step_limit, LSODE_options::step_limit):
-	New functions.
-	(LSODE::working_too_hard): Delete.
-	* LSODE.cc (LSODE::do_integrate): Handle step limit.
-
-Wed Mar 26 15:31:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray-b.cc: Delete.
-	* Makefile.in: Delete it from the lists.
-
-	* boolMatrix.h (class bboolMatrix): Derive from Array2, not
-	MArray2, since most of the numeric ops don't really make sense.
-
-Tue Mar 25 17:37:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* boolMatrix.cc (boolMatrix::all, boolMatrix::any): New functions.
-
-	* dMatrix.cc (Matrix::all, Matrix::any): Return boolMatrix.
-	* CMatrix.cc (ComplexMatrix::all, ComplexMatrix::any): Likewise.
-
-	* idx-vector.h (idx_vector::idx_vector_rep::freeze,
-	idx_vector::freeze): Delete prefer_zero_one arg.
-	* Array-idx.h, Array2-idx.h: Change all callers.
-
-	* Array-flags.h, Array-flags.cc (liboctave_pzo_flag): Delete.
-
-	* mx-op-defs.h: New file for operator definitions.
-	* mx-cdm-cm.h, mx-cdm-cs.h, mx-cdm-dm.h, mx-cdm-m.h, mx-cdm-s.h,
-	mx-cm-cdm.h, mx-cm-dm.h, mx-cm-m.h, mx-cm-s.h, mx-cs-cdm.h,
-	mx-cs-dm.h, mx-cs-m.h, mx-dm-cdm.h, mx-dm-cm.h, mx-dm-cs.h,
-	mx-dm-m.h, mx-dm-s.h, mx-m-cdm.h, mx-m-cm.h, mx-m-cs.h, mx-m-dm.h,
-	mx-s-cdm.h, mx-s-cm.h, mx-s-dm.h, mx-cdm-cm.cc, mx-cdm-cs.cc,
-	mx-cdm-dm.cc, mx-cdm-m.cc, mx-cdm-s.cc, mx-cm-cdm.cc, mx-cm-dm.cc,
-	mx-cm-m.cc, mx-cm-s.cc, mx-cs-cdm.cc, mx-cs-dm.cc, mx-cs-m.cc,
-	mx-dm-cdm.cc, mx-dm-cm.cc, mx-dm-cs.cc, mx-dm-m.cc, mx-dm-s.cc,
-	mx-m-cdm.cc, mx-m-cm.cc, mx-m-cs.cc, mx-m-dm.cc, mx-s-cdm.cc,
-	mx-s-cm.cc, mx-s-dm.cc:
-	New files for mixed-type operations.
-	* Makefiles.in: Add them to the appropriate lists.
-
-	* mx-inlines.cc: Add bool by bool EQ ops.
-
-	* idx-vector.h, idx-vector.cc: Add constructors for bool and
-	boolMatrix types.
-	(idx_vector::maybe_convert_one_zero_to_idx,
-	idx_vector::idx_vector_rep::maybe_convert_one_zero_to_idx):
-	Delete second arg, prefer_zero_one.  Change all callers.
-
-	* boolMatrix.h, boolMatrix.cc: New files.
-	* mx-base.h: Include boolMatrix.h here.
-	* mx-defs.h: Provide forward declaration for boolMatrix here.
-
-	* chMatrix.h, chMatrix.cc: Delete unused junk.
-
-	* dMatrix.h, CMatrix.h: Delete friend declarations for operator+,
-	operator-, operator*, product, and quotient functions.
-	Add constructor for boolMatrix type.
-	* dMatrix.cc, CMatrix.cc: Delete operator+, operator-, operator*,
-	product, and quotient functions.
-
-	* CDiagMatrix.h: Delete friend declarations for operator+,
-	operator-, and product functions.
-	* CDiagMatrix.h: Delete operator+, operator-, and product functions.
-
-	* Array-b.cc: Also instantiate 2d and 2d diagonal arrays.
-
-Fri Mar 14 00:29:46 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* EIG.cc (EIG::hermitian_init (const ComplexMatrix&)): New function.
-	(EIG::init (const ComplexMatrix&)): Call it if arg is hermitian.
-	(EIG::symmetric_init (const Matrix&)): New function.
-	(EIG::init (const Matrix&)): Call it if arg is symmetric.
-
-	* CMatrix.cc (ComplexMatrix::is_hermitian): New function.
-
-Thu Mar 13 17:04:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.cc (is_symmetric): New function.
-	* Array2.h (is_square): New function.
-
-Wed Mar 12 16:59:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): New target.
-
-Mon Mar 10 22:34:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
-	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, EIG.cc, dbleCHOL.cc,
-	dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc,
-	dbleSVD.cc: Don't include mx-inlines.cc.
-
-	* mx-inlines.cc: Abuse the preprocessor to eliminate lots of
-	duplicate code.
-
-Sun Mar  9 03:44:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleQR.h (QR): Delete extra comma at end of list.
-
-	* prog-args.cc (prog_args::getopt): Add missing const in cast.
-
-	* dbleSVD.h (SVD::type): Delete extra comma at end of list.
-
-	* idx-vector.h (idx_vector): Delete unnecessary idx_vector:: and
-	idx_vecotr_rep:: qualifiers.
-
-	* Array.h (class Array): Delete unnecessary Array<T>:: qualifiers.
-
-	* data-conv.h (save_type): Delete extra comma at end of list.
-
-	* CMatrix.cc, FEGrid.cc, Range.cc, dMatrix.cc, data-conv.cc,
-	dir-ops.cc, file-ops.h, idx-vector.cc, idx-vector.h, lo-ieee.cc,
-	lo-mappers.cc, oct-alloc.cc: Use `static_cast<T> (val)' instead of
-	old C-style `(T) val' casts.
-
-Thu Mar  6 20:20:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (operator >>): Return if an error occurs instead of
-	just breaking out of the innermost loop.
-	* CMatrix.cc (operator >>): Likewise.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Fri Feb 28 20:11:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CmplxQR.cc (ComplexQR::init): New function.
-	(ComplexQR::ComplexQR): Use it.  Use initializer list too.
-	* CmplxQRP.cc (ComplexQRP::init): New function.
-	Get sizes right in all cases.
-	(ComplexQR::ComplexQRP): Use it.  Use initializer list too.
-
-	* dbleQR.cc (QR::init): New function.
-	(QR::QR): Use it.  Use initializer list too.
-	* dbleQRP.cc (QRP::init): New function.
-	Get sizes right in all cases.
-	(QR::QRP): Use it.  Use initializer list too.
-
-Wed Feb 26 15:46:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mach-info.cc (oct_mach_info::string_to_float_format):
-	Recognize "vaxg", not "vax_g".
-
-Fri Feb 21 16:07:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (Array2<T>::maybe_delete_elements): Use correct
-	dimension in check for colon equivalent index.
-	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): A single-element
-	index whose value is 0 is also colon eqivalent for n == 1.
-
-	* lo-ieee.cc (octave_ieee_init): Reorder #ifdef stuff to put
-	system-specific tests first.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Wed Feb 19 09:42:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc: D'oh, it's `extern "C"', not `#extern "C"'.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.3 released.
-
-Fri Feb 14 16:23:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
-
-Thu Feb 13 14:35:19 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-prereq): Depend on stamp-picdir.
-	(all): Don't depend on stamp-prereq or stamp-picdir.
-	(liboctave.a, stamp-shared): Do depend on stamp-prereq.
-	(stamp-picdir): Silence noise about making pic.
-	(stamp-shared): Use $(SH_LD) $(SH_LDFLAGS) instead of $(CXX) -shared.
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&)):
-	Fix typo in last change.
-
-	* CColVector.cc (ComplexColumnVector::map (d_c_mapper)):
-	Convert from friend (moved from dColVector.cc).
-	* CMatrix.cc (ComplexMatrix::map (d_c_mapper)):
-	Likewise (moved	from dMatrix.cc).
-	* CRowVector.cc (ComplexRowVector::map (d_c_mapper)):
-	Likewise (moved	from dRowVector.cc).
-
-	* dColVector.cc (ColumnVector::map (d_d_mapper)): Convert from friend.
-	* dMatrix.cc (Matrix::map (d_d_mapper)): Likewise.
-	* dRowVector.cc (RowVector::map (d_d_mapper)): Likewise.
-	* CColVector.cc (ComplexColumnVector::map (c_c_mapper)): Likewise.
-	* CMatrix.cc (ComplexMatrix::map (c_c_mapper)): Likewise.
-	* CRowVector.cc (ComplexRowVector::map (c_c_mapper)): Likewise.
-
-	* dColVector.cc (ColumnVector::apply): Rename from map, return *this.
-	* dMatrix.cc (Matrix::apply): Likewise.
-	* dRowVector.cc (RowVector::apply): Likewise.
-	* CColVector.cc (ComplexColumnVector::apply): Likewise.
-	* CMatrix.cc (ComplexMatrix::apply): Likewise.
-	* CRowVector.cc (ComplexRowVector::apply): Likewise.
-
-Tue Feb 11 19:44:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc: Declare quiet_nan() and infinity().
-
-Mon Feb 10 01:17:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (oct_unlink (const string&, string&)):
-	New two-arg version.
-	(oct_rmdir (const string&, string&)): New two-arg version.
-	(oct_mkdir (const string&, mode_t, string&)): New three-arg version.
-	(oct_mkfifo (const string&, mode_t, string&)): New three-arg version.
-	(oct_rename (const string&, const string&, string&)):
-	New three-arg version.
-
-Fri Feb  7 13:15:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.h (idx_vector::orig_empty): New function.
-
-	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&)):
-	Don't always resize to [](0x0) if one of the indices is empty or
-	zero.
-
-Sun Feb  2 22:33:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-hist.cc (command_history::read): New arg, must_exist.
-	Set line_in_file here too.
-	(command_history::read_range): New arg, must_exist.
-
-Fri Jan 31 09:21:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f2c-main.c: Change C++-style comments to C-style comments.
-
-Tue Jan 28 10:46:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Create a relative symbolic link.
-
-Mon Jan 27 15:52:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-Sat Jan 25 22:36:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (bin-dist): New target.
-
-Wed Jan 22 16:18:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleSVD.cc (SVD::init): Work around apparent dgesvd() bug.
-	* CmplxSVD.cc (ComplexSVD::init): Work around apparent zgesvd() bug.
-
-Mon Jan 20 18:44:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::charMatrix (const string&)):
-	If the number of columns is zero, also set the number of rows to zero.
-	(charMatrix::charMatrix (const char *)): Likewise.
-
-Tue Jan  7 00:16:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Sun Jan  5 12:07:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::read): Correctly compute the number of
-	columns for resizing when the number of rows is specified but the
-	number of columns is not.
-
-Wed Dec 18 16:18:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (operator -): New function.
-
-	* lo-ieee.cc: Include <nan.h> on all systems that have it.
-
-Fri Dec 13 02:01:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign): Delay resizing left hand side until we
-	know if the assignment conforms.
-
-Tue Dec 10 01:43:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-Fri Dec  6 14:41:15 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign): If index is a colon, set number of
-	elements to the lhs dimension if the lhs dimension is greater than
-	zero.  Otherwise, set it to the rhs dimension.
-
-	* Version 1.94.
-
-	* Array2-idx.h (assign): Test for rhs scalar case first.
-	If index is colon, set number of elements to lhs dimension, not
-	rhs dimension.
-
-Thu Dec  5 13:05:18 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sun-utils.h: Don't declare MAIN_ or MAIN__ here.
-	* sun-utils.cc: Delete.
-	* f2c-main.c: New file
-
-	* Makefile.in: Fix file name lists.
-
-	* CMatrix.cc (lssolve): Don't redeclare retval, resize it.
-
-Wed Dec  4 12:24:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Qzval): Don't try to use same memory three times.
-	Create result using Complex constructor, not multiplication.
-	Order elements as they are returned from Eispack.
-
-Mon Dec  2 00:26:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc (octave_ieee_init): Kluge for octave_Inf on SCO.
-	Only include nan.h if SCO is defined.  Define _IEEE before
-	including it and undefine it afterward.
-	[SCO] (isnan): Don't mistake Inf as NaN.
-
-	* Array-idx.h (assign): Only resize if assignment conforms.
-
-Wed Nov 20 01:00:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Delete lo-error.h.
-	* lo-error.h: Delete (moved to libcruft/misc).
-
-	* Version 1.93.
-
-Tue Nov 19 23:07:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-glob.cc (glob_match::match): Don't expect our flag values to
-	be the same as they are in fnmatch.h.
-
-	* f77-fcn.c, f77-fcn.h: Move to libcruft/misc directory.
-
-	* Makefile.in (INCLUDES): Delete f77-fcn.h.
-	(SOURCES): Delete f77-fcn.c.
-
-Fri Nov 15 13:47:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.h: [SCO]: Declare isinf and isnan.
-
-Thu Nov 14 00:06:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.92.
-
-Wed Nov 13 11:19:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-hist.cc (command_history::add): Ignore empty input lines, or
-	lines that have only carriage return or newline.
-
-	* lo-ieee.cc (isnan, isinf): Provide functions for SCO.
-
-Tue Nov 12 11:11:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (idx_is_inf_or_nan): New function.
-	(IDX_VEC_REP::idx_vector_rep): Use it.
-
-Sun Nov 10 17:09:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* str-vec.h, str-vec.cc: Add constructors to make string vectors
-	from vectors of C strings.
-
-	* oct-glob.h, oct-glob.cc (glob_match): Allow pat to be a string
-	vector.
-	(glob_match::match): Allow match string to be a string vector.
-	(glob_match::glob): New function.
-
-	* chMatrix.cc (charMatrix::row_as_string): New arg, strip_ws.
-
-	* Array-b.cc: New file.
-	* Makefile.in (TI_SRC): Add it to the list.
-
-Fri Nov  8 18:09:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc: Change #include "" to #include <> for safe-lstat.h
-	and safe-stat.h, to avoid getting them from $srcdir when we really
-	want the version from the build directory.  (Maybe this should be
-	done for all the include files, not just those that are
-	auto-generated?  Hmm.)
-
-Thu Nov  7 10:45:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.91.
-
-	* Array3.cc (Array3<T>::resize): Make it work.
-
-Wed Nov  6 22:44:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-alloc.h, oct-alloc.cc: New files.
-	* Makefile.in: Add them to the lists.
-
-Mon Nov  4 21:49:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleQRP.cc (QRP::QRP): Don't pass tmp data to unsafe constructor.
-	* CmplxQRP.cc (ComplexQRP::ComplexQRP): Ditto.
-
-Sun Nov  3 15:45:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (file_stat::is_blk, file_stat::is_chr,
-	file_stat::is_dir, file_stat::is_fifo, file_stat::is_lnk,
-	file_stat::is_reg, file_stat::is_sock): Just return false if the
-	underlying macro is not defined.
-
-	* oct-math.h (lgamma, gamma): Delete declarations.
-	(asinh, acosh, atanh, erf, erfc): Declare arg types too.
-	Protect declarations with #ifdef HAVE_*.
-
-Wed Oct 30 11:42:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-	* cmd-hist.cc: Only include fcntl.h if HAVE_FCNTL_H.
-
-	* Matrix-ext.cc: Include <cfloat>, not <float.h>.
-
-	* CMatrix.cc, cmd-hist.cc, file-ops.cc, file-ops.h, filemode.c,
-	mkdir.c, rename.c, rmdir.c, safe-xstat.cin, statdefs.h, sysdir.h,
-	tempname.c, utils.cc: Only include sys/types.h if HAVE_SYS_TYPES_H.
-
-	* Array3.h (T Array3<T>::checkelem): Return T() for bogus value,
-	since that is now accepatble syntax, even for built-in types.
-	* Array2.h (T Array2<T>::checkelem): Likewise
-
-Sat Oct 26 23:37:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.cc (mkfifo) [! HAVE_MKFIFO]: Just print an error
-	message and return -1.
-
-Fri Oct 25 01:24:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* str-vec.h (str_vec_compare): Declare args as const void *, then
-	cast them to const string * in the body of the function.
-
-	* file-ops.cc (file_stat::mode_as_string): Explicitly construct
-	string from buf.
-
-	* Array3.h (Array3::checkelem): Tag bogus return value with
-	GCC_ATTRIBUTE_UNUSED.
-	* Array2.h (Array2::checkelem): Likewise.
-
-Thu Oct 24 19:40:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Quad.h (Quad): Define virtual destructor.
-
-Tue Oct 15 11:34:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (ComplexMatrix::all_elements_are_real): new function.
-
-Sun Oct 13 11:19:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sun-utils.h: Conditionally declare MAIN__ too.  Declare MAIN_
-	and MAIN__ extern "C".
-	* sun-utils.cc: Include sun-utils.h here.  Delete extern "C" stuff.
-
-Sat Oct 12 12:40:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* MArray-misc.cc: New file.
-	* Makefile.in (MATRIX_SRC): Add it to the list.
-
-	* mx-inlines.cc (equal): Return bool, not int.
-
-	* idx-vector.h (idx_vector (double)): New constructor.
-
-	* chMatrix.h, chMatrix.cc, CMatrix.h, CMatrix.cc, dMatrix.h,
-	dMatrix.cc, dDiagMatrix.h, dDiagMatrix.cc, dRowVector.h,
-	dRowVector.cc, dColVector.h, dColVector.cc, CColVector.h,
-	CColVector.cc, CDiagMatrix.h, CDiagMatrix.cc, CRowVector.h,
-	CRowVector.cc: Logical operators return bool, not int.
-
-	* CMatrix.h, CMatrix.cc (ComplexMatrix::any_element_is_inf_or_nan):
-	New function.
-
-	* dMatrix.h, dMatrix.cc (Matrix::any_element_is_negative,
-	Matrix::any_element_is_inf_or_nan, Matrix::abs,
-	Matrix::all_elements_are_inf_or_nan): New functions.
-
-	* Range.h, Range.cc (Range::all_elements_are_ints): New function.
-
-	* MArray.cc, MArray2.cc, MDiagArray2.cc: Call gripe_nonconformant
-	for errors.  Simplify macros by converting FCN to string for error
-	messages.
-
-	* Array-idx.h (Array<T>::index): New function.  Don't call
-	clear_index() here.
-	(Array<T>::value): Call it, do call clear_index() here.
-	* Array2-idx.h (Array<T>::value, Array<T>::index): Likewise, for
-	one and two arg index functions.
-
-Tue Sep 17 21:21:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DAEFunc.h: Delete #pragma interface since there is no longer a
-	separate implementation file.
-
-Tue Aug 20 17:38:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-picdir): Only create a pic subdirectory if
-	SHARED_LIBS is true AND CPICFLAG or CXXPICFLAG is not empty.
-
-	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Rename arg sort to
-	sort_uniq.  If sort_uniq is nonzero, sort the elements and make
-	them uniq.
-
-	* CMatrix.cc (ComplexMatrix::row_max, ComplexMatrix::row_min,
-	ComplexMatrix::column_max, ComplexMatrix::column_min):
-	Rewrite.  Also return index as a reference arg.
-	(ComplexMatrix::row_max_loc, ComplexMatrix::row_min_loc,
-	ComplexMatrix::column_max_loc, ComplexMatrix::column_min_loc):
-	Delete.
-
-	* dMatrix.cc (Matrix::row_max, Matrix::row_min,
-	Matrix::column_max, Matrix::column_min):
-	Rewrite.  Also return index as a reference arg.
-	(Matrix::row_max_loc, Matrix::row_min_loc,
-	Matrix::column_max_loc, Matrix::column_min_loc): Delete.
-
-Fri Aug  9 05:01:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::row_min, Matrix::row_min_loc,
-	Matrix::row_max, Matrix::row_max_loc, Matrix::column_min,
-	Matrix::column_min_loc, Matrix::column_max,
-	Matrix::column_max_loc): Ignore leading NaNs.
-	* CMatrix.cc (ComplexMatrix::row_min, ComplexMatrix::row_min_loc,
-	ComplexMatrix::row_max, ComplexMatrix::row_max_loc,
-	ComplexMatrix::column_min, ComplexMatrix::column_min_loc,
-	ComplexMatrix::column_max, ComplexMatrix::column_max_loc): Ignore
-	leading NaNs.
-
-Thu Aug  8 16:04:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* QPSOL.cc (QPSOL::do_minimize): Insert linear constraint bounds
-	starting at n, not 0.
-
-Sat Jul 27 02:54:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::Matrix (const RowVector&),
-	Matrix::Matrix (const ColumnVector&)): New constructors.
-
-	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const RowVector&),
-	ComplexMatrix::ComplexMatrix (const ColumnVector&),
-	ComplexMatrix::ComplexMatrix (const ComplexRowVector&),
-	ComplexMatrix::ComplexMatrix (const ComplexColumnVector&)):
-	New constructors.
-
-	* chMatrix.cc (charMatrix::charMatrix (const string_vector&)):
-	New constructor.
-
-Wed Jul 24 16:39:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* LSODE.cc (do_integrate): Check to make sure that the state and
-	derivative vectors are the same size.
-	* DASSL.cc (do_integrate): Likewise.
-
-Sun Jul 14 17:30:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::read, Matrix::write): Convert to use
-	iostreams and handler data format conversions.  Delete old methods
-	that used stdio.
-
-	* data-conv.h, data-conv.cc (oct_data_conv): New class.
-
-Fri Jul 12 13:52:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mach-info.h: Rename from float-fmt.h.
-	* mach-info.cc: Rename from float-fmt.cc.
-	Handle machine information using a singlton class.
-	* Makefile.in: Update appropriate lists.
-
-Tue Jul  9 11:49:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-flags.cc: Provide definitions for the flags even if
-	OCTAVE_SOURCE is not defined.
-
-	* Array.h, Array2.h, Array3.h: BOUNDS_CHECKING now affects
-	operator(), not elem().
-	* Array3.h: Move indexing methods here from Array3.cc.
-
-Mon Jun 24 02:30:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array3.cc (checkelem): Fix typo in call to Array2<T>::elem().
-
-	* Makefile.in (install-lib): Use INSTALL_PROGRAM instead of
-	INSTALL_DATA for shared libs.
-
-Thu Jun  6 09:59:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Quad.cc: Include lo-error.h here too.
-
-Mon May 27 12:41:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-ops.h: Include sys/types.h here.
-
-Wed May 22 00:20:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::transpose): Provide definition.
-
-	* Array-idx.h (maybe_delete_elements): Correctly compute number of
-	elements in result.
-	* Array2-idx.h (maybe_delete_elements): Likewise for number of
-	rows and columns in result.
-
-Tue May 21 23:46:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleQR.cc (QR::QR): Don't create result from to-be-deleted data.
-	* CmplxQR.cc (ComplexQR::ComplexQR): Likewise.
-
-Fri May 17 03:06:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Install in octincludedir, not includedir.
-
-Sun May 12 03:40:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (uninstall): Also delete shared library.
-	Split install into install-libs and install-includes.
-	(install-inc): If linkdir is a directory, leave it alone.
-
-	* sun-utils.cc (MAIN__): Define for Linux/ELF systems.
-
-Thu May  2 20:19:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (assign): Handle A(:) = X for A undefined or empty.
-	* Array2-idx.h (assign): Likewise.
-
-Tue Apr 30 05:43:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.cc (Array2<T>::range_error): New functions.
-
-	* Array.h (class Array<T>): elem() and operator() are now
-	equivalent, and do bounds checking by default.
-	* Array2.cc (class Array2<T>): Likewise.
-
-Sat Apr  6 21:26:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (maintainer-clean, distclean): Also delete
-	stamp-picdir, stamp-shared, and pic directory.
-	(stamp-prereq): New target.
-
-Fri Mar 29 13:44:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* NPSOL.h (NPSOL_options::set_option (const char *, int)):
-	New function.
-
-	* Array.h, Array.cc (Array<T>::range_error ()): New functions.
-	* Array.h (Array<T>::checkelem): Use them.
-
-	* base-lu.h, base-lu.cc: Parameterize based on types of matrix
-	elements too.
-	* dbleLU.h, dbleLU.cc, CmplxLU.h, CmplxLU.cc: Change to match.
-
-	* MDiagArray2.h (MDiagArray2 (const MArray<T>& a)): Delete.
-
-	* Makefile.in (distclean): Delete so_locations, which is created
-	on DEC Alpha systems.
-
-Sat Mar 23 04:02:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (HEAVYWEIGHT_INDEXING): Do define this here if it is not
-	already defined.
-
-Fri Mar 22 23:53:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.cc: Include config.h.
-
-Wed Mar 20 04:54:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2-idx.h (assign (Array2<LT>&, const Array2<RT>&)): Don't
-	allow M(I, J) = scalar if I or J is empty.
-
-	* Array-idx.h: Delete Array2 and Array3 code (now in Array2-idx.h
-	and Array3-idx.h).
-
-Thu Mar  7 10:20:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-error.h: Make comments C friendly.
-
-Sun Mar  3 14:04:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.h (make_unique): Move all indexing functions here.
-	* Array2.cc: From here.
-
-	* Array.h, Array2.h (NO_BOUNDS_CHECKING): New macro to control
-	whether operator() calls elem or checkelem.
-
-	* Array.h (make_unique): New private function.
-	Move all indexing functions here.
-	* Array.cc: From here.
-
-	* pathsearch.cc (dir_path::find_all): Index tmp, don't dereference
-	it too.
-
-	* Array-d.cc, Array-ch.cc, Array-C.cc, Array-s.cc, Array-str.cc,
-	Array-i.cc, MArray-i.cc, MArray-s.cc, MArray-d.cc, MArray-ch.cc,
-	MArray-C.cc: Include config.h.
-
-	* Array.h, Array2.h, DiagArray2.h, Array3.h:
-	Don't define HEAVYWEIGHT_INDEXING here.
-
-Sat Mar  2 18:39:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* base-lu.h, base-lu.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* dbleLU.h, dbleLU.cc, CmplxLU.h, Cmplx.cc: Derive from base_lu.
-
-Fri Mar  1 08:30:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array2.h, Array3.h, DiagArray2.h: New files, extracted from Array.h
-	* Array2-idx.h, Array3-idx.h: New files, extracted from Array-idx.h
- 	* Array2.cc, Array3.cc, DiagArray2.cc: New files, from Array.cc.
-	* MArray2.h, MDiagArray2.h: New files, extracted from MArray.h.
-	* MArray2.cc, MDiagArray2.cc, MArray-defs.h: New files, from MArray.cc.
-
-	* MArray.h (INSTANTIATE_MARRAY_FRIENDS): New macro.
-	(INSTANTIATE_MARRAY2_FRIENDS): Likewise.
-	(INSTANTIATE_MDIAGARRAY_FRIENDS): Likewise.
-	* MArray-C.cc, MArray-ch.cc, MArray-c.cc, MArray-i.cc, MArray-s.cc:
-	Simplify using new macros.
-
-Mon Feb 26 03:04:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install): If $(includedir) ends in version string,
-	make link to name that does not include version info.
-
-	* lo-ieee.cc: Include <cmath> here.
-
-Fri Feb 16 20:52:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-ieee.cc, lo-ieee.h: New files.
-	* lo-mappers.cc, lo-mappers.h: New files.
-	* lo-utils.cc, lo-utils.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-Thu Feb 15 22:02:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (all_integers, too_large_for_float): New functions.
-	* CMatrix.cc (all_integers, too_large_for_float): New functions.
-
-	* byte-swap.h, data-conv.h, data-conv.cc, float-fmt.h,
-	float-fmt.cc: New files.
-	* Makefile.in: Include them in the appropriate lists.
-
-Wed Feb 14 01:49:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Qzval): New function.
-
-Tue Feb 13 12:41:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* NPSOL.cc (NPSOL_options::set_option): Arg key is now string, not
-	char*.
-
-	* DASSL.h, DASSL.cc: Do better management of temporary workspace.
-	Use F77_XFCN to call Fortran subroutine.
-	* dColVector.cc, CColVector.cc: Likewise.
-	* dRowVector.cc, CRowVector.cc: Likewise.
-	* NPSOL.h, NPSOL.cc: Likewise.
-	* CmplxCHOL.cc: Likewise.
-	* dbleCHOL.cc: Likewise.
-	* CMatrix.cc: Likewise.
-	* dMatrix.cc: Likewise.
-	* QPSOL.cc: Likewise.
-	* LSODE.cc: Likewise.
-
-Sun Feb 11 14:14:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleHESS.cc (HESS::init): Dimension of tau is n-1, not n+1.
-
-	* dbleSCHUR.h, dbleSCHUR.cc: Do better management of temporary
-	workspace.  Use F77_XFCN to call Fortran subroutine.
-	* CmplxAEPBAL.h, CmplxAEPBAL.cc: Likewise.
-	* CmplxSCHUR.h, CmplxSCHUR.cc: Likewise.
-	* dbleGEPBAL.h, dbleGEPBAL.cc: Likewise.
-	* dbleAEPBAL.h, dbleAEPBAL.cc: Likewise.
-	* CmplxHESS.h, CmplxHESS.cc: Likewise.
-	* CmplxSVD.h, CmplxSVD.cc: Likewise.
-	* dbleHESS.h, dbleHESS.cc: Likewise.
-	* dbleSVD.h, dbleSVD.cc: Likewise.
-	* EIG.h, EIG.cc; Likewise.
-	* CollocWt.cc: Likewise.
-	* NLEqn.cc: Likewise.
-	* Quad.cc: Likewise.
-
-Sat Feb 10 12:14:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleLU.h, dbleLU.cc: Do better management of temporary workspace.
-	Use F77_XFCN to call Fortran subroutine.
-	* CmplxLU.h, CmplxLU.cc: Ditto.
-	* dbleQR.h, dbleQR.cc: Ditto.
-	* CmplxQR.h, CmplxQR.cc: Ditto.
-	* dbleQRP.h, dbleQRP.cc: Ditto.
-	* CmplxQRP.h, CmplxQRP.cc: Ditto.
-
-	* dir-ops.h (dir_entry::dir): Declare as void*, not DIR*.
-	(struct DIR): delete forward declaration.
-	(dir_entry::operator = (const dir_entry$)): Protect against
-	copying same object.
-	* dir-ops.cc: Cast dir appropriately.
-
-Fri Feb  9 16:12:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lo-error.cc: Moved to libcruft/misc.
-	* Makefile.in: Delete it from the list.
-
-	* f77-fcn.c (f77_context, f77_exception_encountered): Delete
-	definitions (they have been moved to libcruft/misc/f77-extern.cc).
-
-	* Array-flags.h: New file.
-	* Array-idx.h: Include it here.
-	* Makefile.in (MATRIX_INC): Add it to the list.
-
-	* Array-flags.cc: Renamed from Array-ext.cc.
-	(liboctave_dfi_flag): Renamed from dfi_flag.
-	(liboctave_pcv_flag): Renamed from pcv_flag.
-	(liboctave_pzo_flag): Renamed from pzo_flag.
-	(liboctave_rre_flag): Renamed from rre_flag.
-	* Array-idx.h: Change all uses of dfi_flag, etc.
-	* Makefile.in (MATRIX_SRC): Change file name here too.
-
-	* Makefile.in (LIBOCTAVE_LFLAGS, LIBOCTAVE_LIBS): New variables.
-	(stamp-shared): Use them here.
-
-Tue Feb  6 09:53:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-hist.cc (command_history::ignore_entries): Delete default
-	argument value.
-
-Mon Feb  5 12:07:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h, CmplxHESS.h, CmplxLU.h,
-	CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h, CmplxSVD.h, dbleAEPBAL.h,
-	dbleCHOL.h, dbleDET.h, dbleGEPBAL.h, dbleHESS.h, dbleLU.h,
-	dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h:
-	Clean up constructors, assigment operator.
-
-Sun Feb  4 03:12:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* NPSOL.cc (do_minimize): Use F77_XFCN to call npsol.
-	Check f77_exception_encountered on return.
-
-	* f77-fcn.c (f77_exception_encountered): New variable.
-	(F77_XFCN): Set it.
-	* f77-fcn.h: Provide declaration.
-
-	* QPSOL.h (QPSOL_options::set_options): Renamed from copy().
-
-	* NPSOL.h (NPSOL_options::set_options): Renamed from copy().
-
-	* NLEqn.h (NLEqn_options::set_options): New function.
-	* Quad.h (Quad_options::set_options): Likewise.
-
-	* LP.h (class LP): Add accessors for LP data.
-
-	* NLEqn.h (NLEqn::n): Delete.
-
-	* NLEqn.h (class NLEqn::n): Likewise.
-
-	* NLP.h (class NLP): Add accessors for NLP data.
-
-	* NPSOL.h (class NPSOL_options): Move constructors, set, and
-	access functions here.
-	* NPSOL.cc.cc: From here.
-
-	* QLD.h (class QLD): Add destructor definition.
-	* Objective.h (class Objective): Likewise.
-	* ODEFunc.h (class ODEFunc): Likewise.
-	* NLFunc.h (class NLFunc): Likewise.
-	* NLEqn.h (class NLEqn): Likewise.
-	* NLConst.h (class NLConst): Likewise.
-	* LinConst.h (class LinConst): Likewise.
-	* LSODE.h (class LSODE_options): Likewise.
-	* CollocWt.h (class CollocWt): Likewise.
-	* Bounds.h (class Bounds): Likewise.
-
-	* QLD.cc (QLD::set_default_options): Delete.
-
-	* QP.h (QP): Add accessors for QP data.
-	Add copy constructor, operator =, and destructor definitions.
-
-	* Range.h, Quad.h, QP.h, QLD.h, Objective.h, NLP.h, NLFunc.h,
-	NLConst.h, LinConst.h, LSODE.h, LP.h, FEGrid.h, EIG.h, DASSL.h,
-	DAEFunc.h, CollocWt.h, Bounds.h:
-	Clean up constructors, assigment operator.
-
-	* dRowVector.cc (RowVector::transpose): Use magic of reference
-	counting to avoid duplicating the data immediately.
-	* dColVector.cc (ColumnVector::transpose): Likewise.
-	* CRowVector.cc (ComplexrowVector::transpose): Likewise.
-	* CColVector.cc (ComplexColumnVector::transpose): Likewise.
-
-Sat Feb  3 01:02:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* prog-args.h (prog_args::option_argument): New enum.
-
-	* f77-fcn.h: Rename from f77-uscore.h.
-	(F77_XFCN_ERROR, F77_XFCN): New macros.
-	* f77-fcn.c: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-
-	* ODEFunc.h: Clean up.
-
-	* DASSL.cc, DASSL.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* LSODE.cc, LSODE.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* ODE.cc: Delete.
-	* Makefile.in (SOURCES): Remove from list.
-
-	* base-de.h, DAE.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* ODE.h: Only define interface for ODE classes.
-	* DAE.h: Only define interface for ODE classes.
-
-	* LPsolve.cc (do_minimize): Print sorry not implemented message.
-	(LPsolve::set_default_options)): Delete
-	* LPsolve.h (class LPsolve): Add operator =, copy constructor, and
-	destructor.
-
-	* LP.h (class LP): Add operator =, copy constructor, and destructor.
-
-	* QPSOL.h (QPSOL::QPSOL (const QPSOL&)): New constructor.
-	(QPSOL::operator =): Call base class operator = instead of assuming
-	we know what to copy.
-
-	* base-min.h (size): New function.
-
-	* NLP.h (NLP::size): Delete.
-	(NLP::NLP (const NLP&)): New constructor.
-	(NLP::operator =): Call base class operator = instead of assuming
-	we know what to copy.
-
-	* NPSOL.h, NPSOL.cc (NPSOL::option): Delete.
-	(class NPSOL): Add operator = and destructor.
-
-	* NPSOL.h: Add NPSOL_options() to list of constructor initalizers.
-
-Fri Feb  2 22:52:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (liboctave.a): Depend on $(PICOBJ).
-
-Wed Jan 31 05:29:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Givens, Sylvester, Matrix::expm): New functions.
-	* CMatrix.cc (Givens, Sylvester, ComplexMatrix::expm): Ditto.
-
-Mon Jan 29 00:00:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* prog-args.h, prog-args.cc: New files.
-	* Makefile.in: Add them to lists.
-
-	* getopt.h, getopt.c, getopt1.c: New files.
-	* Makefile.in: Add them to the lists.
-
-	* oct-term.h, oct-term.cc: New files.
-	* Makefile.in: Add them to the lists.
-
-	* str-vec.cc: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-
-	* file-ops.cc (oct_tmpnam): Move here from src/utils.cc.
-
-	* tempname.c, tempnam.c: Move here from src directory.
-	* Makefile.in: Add to lists.
-
-Sun Jan 28 23:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cmd-hist.h, cmd-hist.cc: New files.
-	* Makefile.in: Add them to lists.
-
-Thu Jan 25 20:36:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-glob.h, oct-glob.cc: New files.
-	* Makefile.in: Add them to lists.
-
-Wed Jan 24 01:55:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.h, pathsearch.cc: New files.
-	* Makefile.in: Add them to lists.
-
-	* dir-ops.h, dir-ops.cc: New files.
-	* sysdir.h: Move here from src directory.
-	* Makefile.in: Add them to lists.
-
-	* Array.h (Array::qsort): Return *this, not void.
-	* str-vec.h (string_vector::qsort): Likewise.
-
-	* chMatrix.cc (row_as_string): Resize result to eliminate
-	unnecessary NULs.
-
-Tue Jan 23 00:40:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h,
-	file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c:
-	Files moved here from src directory.
-	* Makefile.in: Add them to lists.  Include appropriate rules.
-
-	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
-	Use pointers, not references (this is C code!).
-
-	* oct-math.h: New file.
-	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
-	Files moved here from src directory.
-	* Makefile.in: Add them to lists.
-
-Sun Jan 21 22:53:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (make_uniq): Fix major brain-o.
-
-	* CmplxSCHUR.h, CmplxSCHUR.cc, dbleSCHUR.h, dbleSCHUR.cc:
-	Convert	to use string class instead of char*.
-
-	* str-vec.h, Array-str.cc: New files.
-
-	* Array.h (Array::qsort): New function.
-
-Fri Jan 12 01:45:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h: Nest ArrayRep class inside Array class.
-	Refer to ArrayRep, not ArrayRep<T>.
-	Move all ArrayRep functions inline.
-	Don't declare other Array classes as friends of ArrayRep.
-	* Array.cc: Delete ArrayRep functions.
-	* Array-idx.h: Refer to ArrayRep, not ArrayRep<T>.
-
-	* Array-C.cc, Array-ch.cc, Array-d.cc, Array-i.cc, Array-s.cc:
-	Don't instantiate ArrayRep objects.
-
-Wed Jan 10 04:40:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (charMatrix::charMatrix (const string&)):
-	New constructor.
-
-Tue Jan  9 04:44:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleGEPBAL.cc (GEPBALANCE::init): Use string instead of char*
-	for balance_job arg.
-	* dbleAEPBAL.cc (AEPBALANCE::init): Likewise.
-	* CmplxAEPBAL.cc (ComplexAEPBALANCE::init): Likewise.
-
-	* chMatrix.cc (row_as_string): Return string, not const char*.
-
-Mon Jan  8 03:20:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs.
-
-	* chMatrix.cc (row_as_string): Undo previous change.
-
-Sun Jan  7 19:50:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* chMatrix.cc (row_as_string): Do memory management here.  Caller
-	is expected to save string if necessary.
-
-Sat Jan  6 19:28:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h (class DiagArray): Enable nested Proxy class for all
-	platforms.
-
-	* Array.cc (Array<T>::operator = (const Array<T>&)): If rep ==
-	a.rep, don't mess with count.
-	* Array.h (Array2<T>& operator = (const Array2<T>&)): Likewise,
-	don't do anything if reps are the same.
-	(Array3<T>& operator = (const Array3<T>&)
-
-	* Array.h (ArrayRep<T>::operator = (const ArrayRep<T>&)):
-	Declare private with no definition to prevent misuse.
-
-	* Array.cc (Array2<T>::insert (const Array2<T>&, int, int)):
-	Get range check right.
-	* dMatrix.cc (Matrix::insert (const RowVector&, int, int)): Ditto.
-	(Matrix::insert (const ColumnVector&, int, int)): Ditto.
-	(Matrix::insert (const DiagMatrix&, int, int)): Ditto.
-	* CMatrix.cc (ComplexMatrix::insert (const Matrix&, int, int)): Ditto.
-	(ComplexMatrix::insert (const RowVector&, int, int)): Ditto.
-	(ComplexMatrix::insert (const ColumnVector&, int, int)): Ditto.
-	(ComplexMatrix::insert (const DiagMatrix&, int, int)): Ditto.
-	(ComplexMatrix::insert (const ComplexRowVector&, int, int)): Ditto.
-	(ComplexMatrix::insert (const ComplexColumnVector&, int, int)): Ditto.
-	(ComplexMatrix::insert (const ComplexDiagMatrix&, int, int)): Ditto.
-	* dRowVector.cc (RowVector::insert (const RowVector&, int)): Ditto.
-	* dColVector.cc
-	(ColumnVector::insert (const ColumnVector&, int)): Ditto.
-	* CRowVector.cc
-	(ComplexRowVector::insert (const RowVector&, int)): Ditto.
-	(ComplexRowVector::insert (const ComplexRowVector&, int)): Ditto.
-	* CColVector.cc
-	(ComplexColumnVector::insert (const ColumnVector&, int)): Ditto.
-	(ComplexColumnVector::insert (const ComplexColumnVector&, int)): Ditto.
-
-	* dMatrix.cc (Matrix::insert (const DiagMatrix&, int, int)):
-	Also fill in zeros, not just the diagonal.
-
-	* CDiagMatrix.cc (ComplexDiagMatrix::fill (double, int, int)):
-	Use END parameter properly.
-	(ComplexDiagMatrix::fill (const Complex&, int, int)): Ditto.
-	* dDiagMatrix.cc (DiagMatrix::fill (double, int, int)): Ditto.
-
-	* Array.h (ArrayRep<T>::ArrayRep (void)): Set count to 1 here.
-	(ArrayRep<T>::ArrayRep (T *, int)): Likewise.
-	* Array.cc (ArrayRep<T>::ArrayRep (const ArrayRep<T>&)):
-	Don't copy count.  Set it to 1.
-	(ArrayRep<T>::ArrayRep (int)): Set count to 1 here.
-
-	* Array.h (Array<T>::Array (T *, int)): After constructing rep,
-	don't set rep->count to 1 here (now handled by ArrayRep
-	constructors).
-	(Array<T>::Array (void)): Ditto.
-	(Array<T>::Array (int)): Ditto.
-	(Array<T>::T& elem (int)): Ditto.
-	* Array-idx.h (Array<T>::maybe_delete_elements (idx_vector&)): Ditto.
-	(Array2<T>::maybe_delete_elements (idx_vector&, idx_vector&)): Ditto.
-	* Array.cc: (Array<T>::Array (int, const T&)): Ditto.
-	(Array<T>::resize (int)): Ditto.
-	(Array<T>::resize (int, const T&)) :Ditto.
-	(Array<T>::fortran_vec (void)): Ditto.
-	(Array2<T>::resize (int, int)): Ditto.
-	(Array2<T>::resize (int, int, const T&)): Ditto.
-	(DiagArray<T>::resize (int, int)): Ditto.
-	(DiagArray<T>::resize (int, int, const T&)): Ditto.
-
-Sun Dec 31 21:23:26 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-ch.cc: Rename from Array-c.cc.
-	* MArray-ch.cc: Rename from MArray-c.cc.
-	* chMatrix.cc: Rename from cMatrix.cc.
-	* chMatrix.h: Rename from cMatrix.h.
-	* Makefile.in (TI_SRC): Use new names here.
-	* mx-base.h: Likewise.
-
-Fri Dec 29 21:45:00 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Handle shared libraries.
-
-Thu Dec 28 14:18:34 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CRowVector.cc (operator * (ComplexRowVector, ComplexMatrix)):
-	Correctly compute length of return value.  Correct rows and
-	columns in zgemv call.
-	* dRowVector.cc (operator * (RowVector, Matrix)): Likewise.
-
-Tue Dec 26 00:37:57 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-picdir): New target.
-	(all): Depend on it.
-
-Sun Dec 24 03:10:41 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Remove QLD.h.
-	(SOURCES): Remove QLD.cc.
-
-Wed Dec 20 00:43:46 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc (Matrix::inverse): New arg, force.
- 	If force is nonzero, invert even if matrix is singular.
-	(ComplexMatrix::inverse): Likewise.
-
-	* dRowVector.cc, mx-inlines.cc, dMatrix.cc, dDiagMatrix.cc,
-	dColVector.cc,MArray-C.cc, CmplxDET.cc, CRowVector.cc, CMatrix.cc,
-	CDiagMatrix.cc, CColVector.cc, Array-C.cc, CmplxDET.h, CMatrix.h:
-	Include "oct-cmplx.h" instead of <Complex.h>.
-
-	* mx-defs.h: Include oct-cmplx.h in place of forward declaration
-	for class Complex.
-
-	* oct-cmplx.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep): Don't redeclare len.
-	(IDX_VEC_REP::maybe_convert_one_zero_to_idx): Don't redeclare count.
-	(IDX_VEC_REP::freeze): Don't redeclare max_val and min_val.
-	(intcmp, sort_data, make_uniq, copy_data, IDX_VEC_REP::print):
-	Avoid g++ bugs.
-
-Tue Nov 14 14:24:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (maybe_delete_elements): Give useful error message.
-
-	* dbleSCHUR.cc, dbleSVD.cc: Include iostream.h.
-
-Mon Nov 13 08:35:07 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CDiagMatrix.cc (inverse): Return retval, not *this.
-	* dDiagMatrix.cc (inverse): Use same method as for Complex case.
-
-Sat Nov  4 05:06:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.h, Array.cc, Array-idx.h [HEAVYWEIGHT_INDEXING]: Keep
-	index vector object with Array, not ArrayRep.
-
-Fri Nov  3 06:52:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-idx.h (assign (Array2<T>&, const Array2<T>&): Don't fail
-	if index is a colon and resizing is maybe needed.
-
-Tue Oct 31 17:40:01 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Don't return true
-	if we have a vector of 1's.
-
-	* Array-idx.h (assign (Array2<LT>&, Array2<RT>&): If lhs has no
-	current orientation, require index and rhs to conform unless
-	do_fortran_indexing flag is set.
-
-Sun Oct 15 23:32:08 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array-d.cc, Array-C.cc, mx-base.h, mx-inlines.cc, dDiagMatrix.h,
-	CDiagMatrix.h, CMatrix.cc, CMatrix.h, dMatrix.h, mx-defs.h,
-	cMatrix.h, MArray.cc, MArray.h, MArray-i.cc, MArray-c.cc,
-	MArray-s.cc, Array.h, Array.cc, Array-c.cc, Array-i.cc,
-	Array-s.cc, cMatrix.cc, Array-idx.h, dMatrix.cc:
-	Massive changes to support additional data types.  Only charMatrix
-	is currently used in Octave.
-
-Thu Oct 12 02:22:36 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Array.cc (Array2<T>::insert (Array2<T>&, int, int): New function.
-	* CMatrix.cc (ComplexMatrix::insert (ComplexMatrix&, int, int):
-	Simply call Array2<Complex> version.
-	* dMatrix.cc (Matrix::insert (Matrix&, int, int): Similarly, just
-	call Array2<double> version.
-
-	* Array-C.cc, Array-d.cc: Instantiate new assign functions too.
-
-	* Array.h, Array.cc: Massive overhaul to support new way of
-	handling indexing.
-	* idx-vector.h, idx-vector.cc: Likewise.
-	* Array-ext.cc, Array-idx.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-Wed Oct 11 00:49:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (nelem_internal): Use tfloor here, not round.
-
-Sun Oct  8 18:21:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.h, idx-vector.cc: New files, moved from ../src.
-	* Makefile.in (SOURCES, INCLUDES): Include them in the lists.
-
-Sat Oct  7 19:07:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* CMatrix.cc (pseudo_inverse): Avoid bogus g++ warning.
-
-	* Array.h: Move simple member functions here.
-	* Array.cc: From here.
-
-Fri Oct  6 00:36:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Range.cc (tfloor, tceil, round): New static functions.
-	(Range::nelem_internal): Rewrite to use better method.
-
-	* dbleSVD.h (SVD::type): New item, sigma_only.
-	(type_computed): New var.
-	* dbleSVD.cc (left_singular_matrix, right_singular_matrix):
-	Handle possible error condition.
-	(init): Allow for SVD::sigma_only, save type computed.
-	* CmplxSVD.cc (left_singular_matrix, right_singular_matrix):
-	Handle possible error condition.
-	(init): Allow for SVD::sigma_only, save type computed.
-
-Wed Oct  4 15:33:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Nearly all non-matrix .h and .cc files:
-	Move short function bodies into class declarations for inlining.
-	Generally clean up.
-
-	* base-min.h: New file.
-	* LP.h (class LP): Derive from base_minimizer.
-	* QLP.h (class QLP): Derive from base_minimizer.
-	* NLP.h (class NLP): Derive from base_minimizer.
-	* Makefile.in (INCLUDES): Add base-min.h to the list.
-
-	* Makefile.in (SOURCES): Delete DAEFunc.cc, LP.cc, NLConst.cc,
-	NLFunc.cc, Objective.cc and QP.cc from list.
-
-Tue Sep 26 04:14:23 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dbleSCHUR.cc (select_ana): Remove name of unused parameter.
-	(SCHUR::SCHUR): Delete unused parameter ord.
-	* CmplxSCHUR.h (ComplexSCHUR::CmplxSCHUR): Likewise.
-
-	* CRowVector.cc
- 	(ComplexRowVector::operator+ (const Complex&, const RowVector&),
-	(ComplexRowVector::operator- (const Complex&, const RowVector&),
-	(ComplexRowVector::operator* (const Complex&, const RowVector&),
-	(ComplexRowVector::operator/ (const Complex&, const RowVector&)):
-	Actually do something.
-
-	* dMatrix.cc (Matrix::lssolve (ComplexMatrix&)): Use dummy vars.
-	(Matrix::lssolve (ComplexMatrix&, int&)): Likewise.
-	(Matrix::lssolve (ComplexMatrix&, int&, int&)): Likewise.
-
-	* Quad.cc (Quad_options::Quad_options (double, double)): New function.
-	* (Quad::Quad (integrand_fcn, double, double): Properly initialize
-	tolerances.
-
-	* DAE.cc (ddassl_f, ddassl_j): Remove names of unused parameters.
-	* LPsolve.cc (LPsolve::minimize): Likewise.
-	* NPSOL.cc (NPSOL::option, npsol_confun, npsol_objfun): Likewise.
-	* ODE.cc (lsode_f, lsode_j): Likewise.
-	* QPSOL.cc (qphess): Likewise.
-
-Fri Sep 22 04:14:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dMatrix.cc: Include <cstring>.
-
-	* Array.cc: Try harder to avoid warnings from gcc in functions
-	that return bogus values after calling the error handler.
-
-Thu Sep 14 00:56:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'.
-
-	* Makefile.in (TEMPLATE_SRC): Add Array-i.cc to the list.
-
-Tue Aug 22 00:41:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DAE.cc (dassl_f): Add UNUSED attribute for unused parameters.
-	(dassl_j): Likewise.
-
-	* DAE.cc, NLEqn.cc, NPSOL.cc, ODE.cc, CColVector.cc, CMatrix.cc,
-	dColVector.cc, dMatrix.cc, CmplxLU.cc, dbleLU.cc, QPSOL.cc,
-	Array.cc, CollocWt.cc, FEGrid.h, LinConst.h:
-	Update for change in for loop variable scope for gcc 2.7.0.
-
-Mon Aug 21 19:34:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Only include dependency files if $(omit_deps) is
-	not set.
-
-Mon May  1 13:26:00 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
-
-	* dbleSCHUR.h dbleSVD.h dbleQRP.h dbleQR.h dbleHESS.h dbleLU.h
-	dbleCHOL.h dbleGEPBAL.h dbleAEPBAL.h dbleDET.h dDiagMatrix.h
-	dColVector.h dMatrix.h dRowVector.h Quad.h Range.h QPSOL.h QLD.h
-	ODEFunc.h QP.h Objective.h NPSOL.h ODE.h NLEqn.h NLFunc.h
-	NLConst.h LinConst.h LPsolve.h LP.h FSQP.h FEGrid.h EIG.h
-	DAEFunc.h CollocWt.h DAE.h CmplxSVD.h CmplxQRP.h CmplxSCHUR.h
-	CmplxHESS.h CmplxDET.h CmplxLU.h CmplxQR.h CmplxCHOL.h
-	CmplxAEPBAL.h CRowVector.h CDiagMatrix.h Bounds.h CColVector.h
-	CMatrix.h dbleSCHUR.cc dbleSVD.cc dbleQRP.cc dbleQR.cc
-	dbleGEPBAL.cc dbleLU.cc dbleHESS.cc dbleDET.cc dbleCHOL.cc
-	dbleAEPBAL.cc dColVector.cc dRowVector.cc dMatrix.cc
-	dDiagMatrix.cc QPSOL.cc Range.cc Quad.cc QP.cc ODEFunc.cc QLD.cc
-	Objective.cc NLEqn.cc ODE.cc NPSOL.cc NLFunc.cc LPsolve.cc
-	NLConst.cc LinConst.cc FSQP.cc FEGrid.cc LP.cc DAE.cc EIG.cc
-	CollocWt.cc DAEFunc.cc CmplxSVD.cc CmplxSCHUR.cc CmplxQRP.cc
-	CmplxLU.cc CmplxQR.cc CmplxHESS.cc CmplxDET.cc CmplxCHOL.cc
-	CmplxAEPBAL.cc CRowVector.cc CColVector.cc CMatrix.cc
-	CDiagMatrix.cc Bounds.cc MArray.h MArray.cc Array.cc Array.h
-	NLP.h: Use pragma interface/implementation. Don't surround
-	contents in extern "C++".
-	* lo-error.h sun-utils.h: Don't surround contents in extern "C++".
-
-Tue Apr 11 10:59:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* f77-uscore.h (F77_FCN): Allow for possibility of uppercase
-	identifiers.
-	* utils.cc dbleSVD.cc dbleSCHUR.cc dbleQRP.cc dbleQR.cc dbleLU.cc
-	dbleHESS.cc dbleGEPBAL.cc dbleAEPBAL.cc dRowVector.cc
-	dColVector.cc QLD.cc CmplxSVD.cc CmplxCHOL.cc CmplxHESS.cc
-	CmplxQR.cc CmplxQRP.cc QPSOL.cc CmplxAEPBAL.cc CmplxLU.cc
-	CmplxSCHUR.cc dMatrix.cc CColVector.cc CRowVector.cc dbleCHOL.cc
-	CollocWt.cc NLEqn.cc EIG.cc DAE.cc ODE.cc CMatrix.cc NPSOL.cc
-	Quad.cc: Change usage of F77_FCN to match new definition
-
-	* utils.cc dbleSVD.cc dbleSCHUR.cc dbleQRP.cc dbleQR.cc dbleLU.cc
-	dbleHESS.cc dbleGEPBAL.cc dbleAEPBAL.cc dRowVector.cc
-	dColVector.cc QLD.cc CmplxSVD.cc CmplxCHOL.cc CmplxHESS.cc
-	CmplxQR.cc CmplxQRP.cc QPSOL.cc CmplxAEPBAL.cc CmplxLU.cc
-	CmplxSCHUR.cc dMatrix.cc CColVector.cc CRowVector.cc dbleCHOL.cc
-	CollocWt.cc NLEqn.cc EIG.cc DAE.cc ODE.cc CMatrix.cc NPSOL.cc
-	Quad.cc: Where appropriate, declare Fortran subroutines to take
-	args by reference instead of pointer.  Change all callers.
-
-Sun Apr  9 20:11:56 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* MArray.h (MArray2::~MArray2, MDiagArray::~MDiagArray): New
-	functions.  Make += and -= operators friend functions.
-
-	* Array.h (Array2::~Array2, Array3::~Array3,
-	DiagArray::~DiagArray): New functions.
-
-Wed Apr  5 21:21:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (EXTRAS): Don't distribute mx-kludge.cc.
-	(MATRIX_INC): Don't distribute mx-kludge.h.
-
-	* CColVector.h CColVector.cc CDiagMatrix.h CDiagMatrix.cc
-	CMatrix.h CMatrix.cc CRowVector.h CRowVector.cc dColVector.h
-	dColVector.cc dDiagMatrix.h dDiagMatrix.cc dMatrix.h dMatrix.cc
-	dRowVector.h dRowVector.cc:
-	Derive classes from MArray, MArray2, and MDiagArray, not Array,
-	Array2, and DiagArray2.
-	Don't use functions defined in mx-kludge.cc for arithmetic
-	like-type operations on arrays.
-
-	* MArray.cc: Use the classes defined here like-type mathematical
-	operations on Array objects.  Abuse CPP more.
-	* Makefile.in (TEMPLATE_SRC): Add it to the list.
-	(EXTRAS): Delete it from this list.
-
-	* MArray-C.cc, MArray-d.cc: New files.
-	* Makefile.in (TI_SRC): Add them to the list.
-
-Tue Apr  4 14:13:46 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* mx-kludge.cc: Abuse CPP even more.
-
-Mon Apr  3 21:05:30 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Objective.h (objective_function): Add missing const.
-	(gradient_function): Likewise.
-
-	* CColVector.h CColVector.cc CDiagMatrix.h CDiagMatrix.cc
-	CMatrix.h CMatrix.cc CRowVector.h CRowVector.cc dColVector.h
-	dColVector.cc dDiagMatrix.h dDiagMatrix.cc dMatrix.h dMatrix.cc
-	dRowVector.h dRowVector.cc:
-	Reorganize to declare and define friends where they should be,
-	based on the use of private constructors.
-
-Fri Mar 31 10:09:40 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* CRowVector.h (linspace): Add declaration.
-	* dRowVector.h (linspace): Likewise.
-
-	* dMatrix.cc (Matrix::inverse, Matrix::determinant, Matrix::solve):
-	Force result of rcond + 1.0 to be stored.
-	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::determinant,
-	ComplexMatrix::solve): Likewise.
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/OLD-ChangeLogs/scripts-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17465 +0,0 @@
-2011-04-13  David Bateman  <dbateman@free.fr>
-
-	* plot/colstyle.m : New function.
-	* plot/module.mk plot_FCN_FILES) : Add it here.
-
-2011-04-12  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/getappdata.m: If no property name is provided, return
-	a structure representing the appdata.
-
-2011-04-12  Marco Caliari  <marco.caliari@univr.it>
-
-	* general/quadgk.m: Fix problem with -Inf bound on integral (bug
-	#33055). 
-
-2011-04-11  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/getappdata.m: If appdata propery does not exist, return
-	an empty matrix.
-
-2011-04-08  Rik  <octave@nomad.inbox5.com>
-
-	* linear-algebra/cond.m, linear-algebra/expm.m, linear-algebra/logm.m,
-	linear-algebra/null.m, linear-algebra/orth.m, linear-algebra/rank.m,
-	linear-algebra/rref.m: Improve docstrings.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/pack.m: Improve docstring.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* signal/module.mk: Make spectral density helper functions private.
-	(rectangle_sw, rectangle_lw, triangle_sw, triangle_lw)
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/fminunc.m, plot/isocolors.m, plot/isonormals.m:
-	Clean up operator and function indices.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/symvar.m, miscellaneous/warning_ids.m,
-	optimization/fminunc.m: Spellcheck documentation for 3.4.1 release.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* @ftp/mget.m, audio/loadaudio.m, audio/playaudio.m, audio/record.m,
-	audio/saveaudio.m, general/circshift.m, general/cumtrapz.m,
-	general/dblquad.m, general/quadgk.m, general/quadl.m,
-	general/shiftdim.m, general/triplequad.m, geometry/convhull.m,
-	geometry/delaunay3.m, geometry/dsearch.m, geometry/dsearchn.m,
-	geometry/tsearchn.m, geometry/voronoi.m, image/brighten.m,
-	io/textscan.m, miscellaneous/getappdata.m,
-	miscellaneous/namelengthmax.m, miscellaneous/rmappdata.m,
-	miscellaneous/setappdata.m, miscellaneous/swapbytes.m,
-	miscellaneous/symvar.m, miscellaneous/warning_ids.m,
-	pkg/private/get_forge_pkg.m, plot/clabel.m, plot/colorbar.m,
-	plot/cylinder.m, plot/daspect.m, plot/linkprop.m, plot/pbaspect.m,
-	plot/plotyy.m, plot/private/__add_default_menu__.m, plot/sphere.m,
-	plot/subplot.m, plot/view.m, polynomial/polyreduce.m,
-	polynomial/ppder.m, polynomial/ppint.m, signal/periodogram.m,
-	sparse/colperm.m, sparse/nonzeros.m, sparse/spaugment.m,
-	sparse/speye.m, sparse/treelayout.m, sparse/treeplot.m,
-	statistics/base/kurtosis.m, statistics/base/mean.m,
-	statistics/base/meansq.m, statistics/base/median.m,
-	statistics/base/mode.m, statistics/base/moment.m,
-	statistics/base/ranks.m, statistics/base/skewness.m,
-	statistics/base/statistics.m, statistics/base/var.m, time/datenum.m,
-	time/datetick.m, time/now.m: Grammarcheck m-files for 3.4.1 release.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, general/module.mk: Deprecate perror, strerror
-	functions.
-
-2011-04-02  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/prctile.m, statistics/base/quantile.m: Improve 
-	docstrings.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* pkg/module.mk, pkg/pkg.m, pkg/private/get_forge_pkg.m: Add
-	documentation for '-forge' option (bug #32464).  Make get_forge_pkg
-	a private function.
-
-2011-03-31  Marco Caliari  <marco.caliari@univr.it>
-
-	* sparse/spdiags.m: Treat empty vector (1x0 or 0x1) the same as diag().
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/cor.m: Increase tolerance of %!tests using random
-	data to guarantee passage.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, deprecated/cquad.m: Add deprecated entry for
-	cquad() pointing to quadcc().
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/cor.m: Fix operation with only single input
-	(bug #32961)
-
-2011-03-29  John W. Eaton  <jwe@octave.org>
-
-	* special-matrix/wilkinson.m: Update test for 'wilkinson(1)' to reflect
-	changes to diag().
-
-2011-03-29  Michael Creel  <michael.creel@uab.es>
-
-	* statistics/base/ols.m: Fix erroneous degrees of freedom when
-	computing the covariance estimator (closes: bug #32892).
-
-2011-03-28  Rik  <octave@nomad.inbox5.com>
-
-	* linear-algebra/cross.m, plot/ishold.m, signal/fftfilt.m: Improve
-	docstrings.
-
-2011-03-26  Robert T. Short  <octave@phaselockedsystems.com.com>
-
-	* signal/ifftshift.m: Add tests.
-
-2011-03-26  Robert T. Short  <octave@phaselockedsystems.com.com>
-
-	* signal/fftshift.m: Add tests.
-
-2011-03-21  Rik  <octave@nomad.inbox5.com>
-
-	* signal/ifftshift.m: Fix bug #32873, ifftshift fails.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* general/module.mk, statistics/base/module.mk: Move runlength.m
-	to statistics/base directory.
-	* statistics/base/runlength.m: Add input validation and tests.
-	Improve docstring.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/models/logistic_regression.m: Do not split function
-	declaration with line continuation.
-	* statistics/models/private/logistic_regression_likelihood.m,
-	statistics/models/private/logistic_regression_derivatives.m: Make
-	helper functions private.
-	* statistics/models/module.mk: Make helper functions private.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* plot/isocolors.m, plot/isonormals.m, plot/isosurface.m: Improve
-	docstrings.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/dump_prefs.m: Close @deftypefn macro left open.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/dump_prefs.m: Improve docstring.
-
-2011-03-19  Rik  <octave@nomad.inbox5.com>
-
-	* plot/daspect.m, plot/pbaspect.m: Use newline between @deftypefnx
-	macros to get correct appearance.
-
-2011-03-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/patch.m: Add demo.
-	* geometry/trisurf.m: Set default edgecolor as Matlab does. Add demos.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* plot/uigetdir.m, plot/uigetfile.m, plot/uimenu.m, plot/uiputfile.m:
-	Improve docstrings.  Check for error conditions (missing FLTK, wrong
-	number of arguments) at top of code.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* general/curl.m, general/divergence.m, linear-algebra/cross.m:
-	Update seealso cross references.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* help/get_first_help_sentence.m: Improve docstring.  Add tests.
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/sparse/svds.m: Fix bug #32818, nonconformant arguments
-	in svds.
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* io/fileread.m: Add seealso reference to sscanf.
-
-2011-03-05  Ben Abbott <bpabbott@mac.com>
-
-	* plot/colorbar.m: Allow location to be specified as a property.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/bunzip2.m, miscellaneous/bzip2.m,
-	miscellaneous/gunzip.m, miscellaneous/gzip.m, miscellaneous/unpack.m,
-	miscellaneous/untar.m, miscellaneous/unzip.m: Improve docstrings
-
-	* miscellaneous/tar.m, miscellaneous/zip.m: Check for invalid arguments
-	at the top, rather than bottom, of code.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/gzip.m: Use same functional form as bzip, zip, etc.
-	* miscellaneous/private/__xzip__.m: Allow use of character arrays of
-	filenames.
-	* miscellaneous/unpack.m: Allow use of character arrays of filenames.
-	Add capability for gunzip to work recursively on a directory.
-	Fix bug where unzip returned the archive name in addition to the list
-	of files unzipped.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, general/module.mk: Deprecate is_duplicate_entry.
-
-2011-03-03  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/movefile.m: Fix copy&paste bug affecting Windows
-	platform.  (bug #32443)
-
-2011-03-02  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/distributions/unidcdf.m,
-	statistics/distributions/unidinv.m, statistics/distributions/unidpdf.m,
-	statistics/distributions/unidrnd.m: Correctly refer to distribution as
-	discrete uniform in docstring.
-
-2011-03-02  Konstantinos Poulios  <logari81@gmail.com>
-
-	* plot/subplot.m: Remove redundant calls.
-	For gnuplot set "activepositionproperty" to "position" always.
-
-2011-03-01  Rik  <octave@nomad.inbox5.com>
-
-	* general/isscalar.m, general/isvector.m: Use modern warning function
-	rather than deprecated built-in variable to set warning state.
-
-2011-02-28  Rik  <octave@nomad.inbox5.com>
-
-	* general/iscolumn.m, general/isrow.m: Add 2 new utility functions
-	to check for row or column vector.
-
-2011-02-28  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/treeplot.m: Use 'o' plot style as default for nodes
-
-2011-02-27  Rik  <octave@nomad.inbox5.com>
-
-	* special-matrix/pascal.m: Fix incorrect statement in documentation
-	for pascal.m.  Bug #32523.
-
-2011-02-26  Andy Buckle  <andybuckle@gmail.com>
-
-	* testfun/demo.m, testfun/example.m: Allow command forms of example
-	and demo.
-
-2011-02-26  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* polynomial/polyval.m: Compute offset/normalization only when needed.
-
-2011-02-26  Robert T. Short <octave@phaselockedsystems.com>
-
-	* polynomial/polyval.m: Minor simplification in polynomial evaluation.
-
-2011-02-22  Rik  <octave@nomad.inbox5.com>
-
-	* general/bitcmp.m, general/bitget.m, general/bitset.m,
-	miscellaneous/license.m, special-matrix/pascal.m,
-	statistics/base/quantile.m, statistics/tests/cor_test.m,
-	strings/substr.m: Uppercase variables in error strings.
-
-2011-02-25  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* miscellaneous/warnings_ids.m: Add a warning description for
-	Matlab-style short-circuiting
-
-2011-02-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/subplot.m: Document using INDEX as a vector.
-
-2011-02-24  Robert T. Short  <rtshort@ieee.org> 
-
-	* polynomial/polyval.m: Properly evaluate constant polynomials.
-
-2011-02-24  John W. Eaton  <jwe@octave.org>
-
-	* strings/strchr.m: Avoid implicit string to number conversion.
-	Bug #32546.  From Kim Hansen <kim@i9.dk>.
-
-2011-02-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/subplot.m: Use new looseinset property introduced by changeset
-	12467. Decrease spacing between subplots rows / columns. Clean up and
-	add comments.
-
-2011-02-22  Rik  <octave@nomad.inbox5.com>
-
-	* io/strread.m, plot/whitebg.m, strings/regexptranslate.m,
-	testfun/runtests.m: Use single quotes around regexp patterns.
-
-2011-02-20  Karsten Trulsen  <karstent@math.uio.no>
-
-	* signal/fftshift.m: Fix broken function.  Bug 32442.
-
-2011-02-21  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* pkg/get_forge_pkg.m: Fix typo in new PCRE style regular expression.
-
-2011-02-20  Thomas Weber <tweber@debian.org>
-
-	* miscellaneous/warning_ids.m: Document
-	Octave::autoload-relative-file-name warning.
-
-2011-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* io/dlmwrite.m, pkg/get_forge_pkg.m, plot/__gnuplot_ginput__.m,
-	plot/__go_draw_axes__.m, testfun/runtests.m: Use PCRE regular
-	expressions to simplify scripts.
-
-2011-02-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m, plot/private/__ghostscript__.m: Improve
-	warnings when shell utilties are missing.
-
-2011-02-19  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/interp1.m: Fix tests according to spline update of
-	changeset 07e102029d2a (see bug 31780)
-
-2011-02-17  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/private/__add_default_menu__.m: Rename fltk_gui_mode here
-	as well.
-
-2011-02-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/subplot.m: Decrease spacing between subplots rows / columns.
-	Clean up and add comments.
-
-2011-02-16  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* statistics/base/mean.m: Fix tests according to changeset 0f21f258aa17.
-
-2011-02-15  Konstantinos Poulios  <logari81@gmail.com>
-
-	* plot/__fltk_print__.m: Forward pipeline to drawnow instead of
-	invoking a process here.  Bug #32319.
-
-2011-02-14  Rik  <octave@nomad.inbox5.com>
-
-	* plot/semilogxerr.m, plot/semilogyerr.m, special-matrix/pascal.m,
-	special-matrix/rosser.m, special-matrix/wilkinson.m: Add missing
-	commas in @seealso macro.
-
-2011-02-14  David Bateman  <dbateman@free.fr>
-
-	* testfun/test.m: More explicit error message when source of a
-	dynamically linked function is not found.  Bug #30341.
-
-2011-02-14  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__scatter__.m: Correctly set the facevertexcdata and
-	faces properties in the patch objects.  Bug #31801.
-
-2011-02-14  Marco Caliari <marco.caliari@univr.it>
-
-	* polynomial/spline.m: Allow length(x) == 2 and unsorted x values.
-
-2011-02-13  Konstantinos Poulios  <logari81@gmail.com>
-
-	* plot/legend.m: Ignore outerposition.
-
-2011-02-10  Ben Abbott <bpabbott@mac.com>
-
-	* plot/legend.m, plot/plotyy.m, plot/sombrero.m, plot/shading.m,
-	plot/text.m: Modify demo scripts to allow conventient conversion
-	to Matlab compatible syntax.
-
-2011-02-10  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/mean.m: Also accept logical values.
-
-2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* linear-algebra/gmres.m: New file implementing the GMRES
-	iterative method for solving linear systems.
-
-2011-02-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Properly set fontspec for legends.
-
-2011-02-05  David Bateman  <dbateman@free.fr>
-
-	* plot/legend.m: Allow the location and orientation to be set
-	without modifiying the legend keys.
-	* plot/legend.m: Add padding to legend positions. Fix for
-	outerposition for southeastoutside and southwestoutside.
-	Bug #32374.
-
-2011-02-06  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Align legends to plot box, add demo. Bug 32373.
-	* plot/legend.m: "legend off" should delete the legend object.
-
-2011-02-06  David Bateman  <dbateman@free.fr>
-
-	* plot/legend.m : Delete old legend before probing the position and
-	outerposition. Reshape lpos correct if the legend locqtion is
-	"southeast".  Bug #32343.
-
-2011-02-06  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Add demo for replacing existing legend.
-
-2011-02-06  John W. Eaton  <jwe@octave.org>
-
-	* general/circshift.m: New tests.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/version.m, path/matlabroot.m: Correct spelling.
-
-2011-02-05  Rik  <octave@nomad.inbox5.com>
-
-	* help/help.m, linear-algebra/onenormest.m, plot/graphics_toolkit.m,
-	plot/pie3.m, plot/view.m, signal/periodogram.m: Grammarcheck docstrings.
-
-2011-02-05  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Add demo for inline keys created by two plot commands.
-
-2011-02-05  David Bateman  <dbateman@free.fr>
-
-	Bug #32022 and #32343.
-
-	* plot/legend.m (updatelegend): Don't flip plots when resetting the
-	legend. Use unwind_protect to ensure that the resursive flag is reset
-	in case of an error.
-	(getlegenddata): Remove this function and replace its use with the
-	function __getlegenddata__.
-	* plot/privata/__getlegenddata__.m: New function
-	* plot/module.mk (plot_PRIVATE_FCN_FILES): Add it here.
-	* plot/private/__plt__.m: Set initial values of hlgnd and tlgnd
-	if a legend exists already.
-
-2011-02-02  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/svds.m: Use testif to only run some sparse tests when
-	necessary libraries are installed.
-
-2011-02-01  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_has_feature__.m: Don't throw an error if gnuplot
-	isn't installed.
-
-2011-02-01  John W. Eaton  <jwe@octave.org>
-
-	* plot/scatter3.m: Pass h to set, not ax.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__axis_label__.m: Don't call __fltk_redraw__.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* plot/__fltk_ginput__.m: Remove line that should have been
-	removed in previous change.
-
-2011-01-31  Rik  <octave@nomad.inbox5.com>
-
-	* plot/private/__gnuplot_has_terminal__.m: Simplify regular expression
-	to eliminate word-boundary assertion.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, optimization/module.mk: Deprecate glpkmex
-	function.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* plot/__gnuplot_drawnow__.m: Rename from gnuplot_drawnow.m
-	Update doc string and error message with new name.
-	* plot/module.mk (plot_FCN_FILES): Update list.
-
-2011-01-30  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/__fltk_ginput__.m (ginput_aggregator): New arg, button.
-	Change all uses.
-	(ginput_keypressfcn): Save keypress info.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* plot/gnuplot_binary.in: Improve docstring
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* general/accumarray.m: Add seealso reference to accumdim.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* set/powerset.m: Improve docstring.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m,
-	miscellaneous/tempname.m: Improve docstrings
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, image/module.mk: Deprecate saveimage.m.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/glpkmex.m: Add seealso reference to glpk.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/compare_versions.m: Allow only "==" equality operator.
-	Add input validation tests.  Improve docstring.
-
-	* miscellaneous/ver.m, miscellaneous/version.m, path/matlabroot.m:
-	Improve docstring.
-
-2011-01-29  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/edit.m: As most editors open their own window, change
-	mode to "async".
-
-2011-01-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__fltk_print__.m, plot/print.m: Fix {eps,ps,pdf}latexstandalone
-	printing for fltk, bug 32262.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* sparse/svds.m: Use "test" instead of "testif HAVE_ARPACK".
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* plot/whitebg.m: Improve docstring.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* geometry/trimesh.m, geometry/triplot.m, geometry/trisurf.m: Add
-	undocumented function trisurf to documentation.  Update seealso
-	strings.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* general/rat.m: Move @seealso inside @deftypefn in docstring.
-
-2011-01-27  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/uigetfile.m, plot/uiputfile.m, plot/uigetdir.m: Check
-	for __fltk_uigetfile__.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (check-missing-semicolon): New rule.
-
-2011-01-26  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/general/interp1.m, scripts/general/interp2.m,
-	scripts/general/interp3.m, scripts/general/interpn.m: Use em-dash
-	rather than en-dash.
-	* scripts/miscellaneous/mkoctfile.m: Use @code to prevent option
-	turning to en-dash.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Untabify.
-
-	* mkdoc, gethelp.cc: Strip trailing whitespace.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* general/curl.m: Simplify processing of outptut values.
-
-2011-01-26  Olaf Till  <olaf.till@uni-jena.de>
-
-	* pkg/pkg.m: Export environment variables MKOCTFILE and
-	OCTAVE_CONFIG for configure and make, to configure also OCTAVE.
-
-2011-01-24  John W. Eaton  <jwe@octave.org>
-
-	* audio/lin2mu: Doc fix.
-
-	* audio/mu2lin.m: Doc fix.
-	For compatibility with Matlab, change default for N to be 8.
-
-2011-01-22  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/info.m: Use reference to bug tracker rather than
-	octave-dev mailing list.
-
-2011-01-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/meshc.m: Add note: gnuplot does not support filled 3D patches,
-	or mixing non-filled contours with filled surfaces.
-	* plot/subplot.m: Set "box" to "on" by default (same as Matlab).
-	* plot/cylinder.m: Remove console output from demo.
-
-2011-01-22  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/plotyy.m: Set box property to off to allow both y-axes colors
-	to be visible for OpenGL backends.
-
-2011-01-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__scatter__.m: Don't accept "filled" as a color.
-	* plot/scatter.m: Doc fix.
-	Bug #32204.
-
-2011-01-21  Konstantinos Poulios  <logari81@gmail.com>
-
-	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Setting axis label
-	color from axis color.
-
-2011-01-20  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* image/imshow.m: Fix handling of clim and display_range so that
-	images are more faithfully reproduced.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/image/imshow.m, scripts/image/saveimage.m,
-	scripts/io/dlmwrite.m, scripts/io/strread.m,
-	scripts/miscellaneous/license.m, scripts/optimization/glpk.m,
-	scripts/plot/refreshdata.m, scripts/plot/shading.m,
-	scripts/plot/slice.m, scripts/plot/surfl.m, scripts/plot/uimenu.m,
-	scripts/statistics/base/mean.m, scripts/statistics/base/moment.m,
-	scripts/strings/isstrprop.m: Prevent doubled quotes around @table
-	items in Info.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* mkdoc: Mark all scripts as coming from 'scripts/' directory
-	in Texinfo '@c func location' comments.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/linear-algebra/condest.m,
-	scripts/linear-algebra/onenormest.m, scripts/linear-algebra/qzhess.m,
-	scripts/polynomial/polyfit.m, scripts/special-matrix/pascal.m: Use
-	non-breaking spaces between certain adjectives and their linked nouns
-	in docstrings
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* image/imread.m, image/imwrite.m, signal/periodogram.m,
-	strings/isstrprop.m: Use @nospell macro on certain words in docstring.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* @ftp/loadobj.m, @ftp/saveobj.m, audio/record.m,
-	general/accumarray.m, general/accumdim.m, general/arrayfun.m,
-	general/bicubic.m, general/curl.m, general/divergence.m,
-	general/gradient.m, general/interp2.m, general/rat.m,
-	image/imagesc.m, io/strread.m, io/textscan.m,
-	linear-algebra/krylov.m, miscellaneous/getappdata.m,
-	miscellaneous/isappdata.m, miscellaneous/rmappdata.m,
-	miscellaneous/setappdata.m, miscellaneous/what.m,
-	optimization/qp.m, path/savepath.m, pkg/pkg.m,
-	plot/__fltk_print__.m, plot/__gnuplot_print__.m,
-	plot/__go_draw_axes__.m, plot/__print_parse_opts__.m,
-	plot/axis.m, plot/caxis.m, plot/cla.m, plot/clabel.m,
-	plot/clf.m, plot/colorbar.m, plot/cylinder.m, plot/daspect.m,
-	plot/gnuplot_drawnow.m, plot/meshc.m, plot/newplot.m,
-	plot/orient.m, plot/pbaspect.m, plot/plotyy.m, plot/print.m,
-	plot/private/__actual_axis_position__.m,
-	plot/private/__axis_label__.m, plot/private/__bar__.m,
-	plot/private/__clabel__.m, plot/private/__errplot__.m,
-	plot/private/__ezplot__.m, plot/private/__ghostscript__.m,
-	plot/private/__patch__.m, plot/private/__pie__.m,
-	plot/private/__quiver__.m, plot/private/__scatter__.m,
-	plot/private/__stem__.m, plot/private/__tight_eps_bbox__.m,
-	plot/refresh.m, plot/spinmap.m, plot/subplot.m, plot/surfc.m,
-	plot/uigetfile.m, polynomial/polyout.m, sparse/spaugment.m,
-	sparse/svds.m, sparse/treeplot.m, statistics/base/histc.m,
-	statistics/distributions/hygecdf.m,
-	statistics/distributions/hygeinv.m, statistics/tests/manova.m,
-	strings/deblank.m, testfun/runtests.m: Add missing semicolons.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/cellidx.m, deprecated/dmult.m,
-	deprecated/intwarning.m, deprecated/str2mat.m, general/curl.m,
-	general/divergence.m, general/gradient.m, geometry/griddata.m,
-	help/gen_doc_cache.m, io/dlmwrite.m, miscellaneous/getappdata.m,
-	miscellaneous/isappdata.m, miscellaneous/rmappdata.m,
-	miscellaneous/setappdata.m, miscellaneous/unpack.m,
-	optimization/lsqnonneg.m, optimization/pqpnonneg.m,
-	pkg/get_forge_pkg.m, pkg/pkg.m, plot/__fltk_print__.m,
-	plot/__gnuplot_get_var__.m, plot/__gnuplot_open_stream__.m,
-	plot/__gnuplot_print__.m, plot/daspect.m,
-	plot/gnuplot_drawnow.m, plot/pbaspect.m,
-	plot/private/__errplot__.m, plot/private/__fltk_file_filter__.m,
-	plot/private/__ghostscript__.m, plot/uigetfile.m,
-	plot/uiputfile.m, polynomial/polyaffine.m, sparse/pcg.m:
-	Style fixes for error and warning messages.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* @ftp/dir.m, @ftp/mget.m, @ftp/mput.m, ChangeLog,
-	audio/lin2mu.m, audio/setaudio.m, audio/wavread.m,
-	audio/wavwrite.m, deprecated/autocor.m, deprecated/autocov.m,
-	deprecated/betai.m, deprecated/create_set.m,
-	deprecated/dispatch.m, deprecated/gammai.m,
-	deprecated/intwarning.m, deprecated/replot.m, elfun/cosd.m,
-	elfun/sind.m, elfun/tand.m, general/accumarray.m,
-	general/accumdim.m, general/arrayfun.m, general/bicubic.m,
-	general/bitcmp.m, general/bitget.m, general/bitset.m,
-	general/cart2pol.m, general/cart2sph.m, general/cell2mat.m,
-	general/celldisp.m, general/circshift.m, general/cplxpair.m,
-	general/cumtrapz.m, general/curl.m, general/dblquad.m,
-	general/deal.m, general/del2.m, general/divergence.m,
-	general/flipud.m, general/gradient.m, general/idivide.m,
-	general/int2str.m, general/interp1.m, general/interp2.m,
-	general/interp3.m, general/interpft.m, general/interpn.m,
-	general/isdir.m, general/loadobj.m, general/logspace.m,
-	general/num2str.m, general/pol2cart.m, general/polyarea.m,
-	general/quadgk.m, general/quadl.m, general/quadv.m,
-	general/randi.m, general/rat.m, general/repmat.m,
-	general/rot90.m, general/rotdim.m, general/saveobj.m,
-	general/shift.m, general/sortrows.m, general/sph2cart.m,
-	general/structfun.m, general/subsindex.m, general/trapz.m,
-	general/triplequad.m, geometry/convhull.m, geometry/delaunay.m,
-	geometry/delaunay3.m, geometry/delaunayn.m, geometry/dsearch.m,
-	geometry/dsearchn.m, geometry/griddata3.m, geometry/griddatan.m,
-	geometry/inpolygon.m, geometry/rectint.m, geometry/trimesh.m,
-	geometry/trisurf.m, geometry/tsearchn.m, geometry/voronoi.m,
-	help/__makeinfo__.m, help/__strip_html_tags__.m, help/doc.m,
-	help/gen_doc_cache.m, help/get_first_help_sentence.m,
-	help/help.m, help/lookfor.m, help/print_usage.m, help/type.m,
-	image/autumn.m, image/bone.m, image/brighten.m, image/cool.m,
-	image/copper.m, image/flag.m, image/gmap40.m, image/gray.m,
-	image/hot.m, image/hsv.m, image/hsv2rgb.m, image/image.m,
-	image/imread.m, image/imshow.m, image/imwrite.m,
-	image/ind2rgb.m, image/jet.m, image/ntsc2rgb.m, image/ocean.m,
-	image/pink.m, image/prism.m, image/rainbow.m, image/rgb2hsv.m,
-	image/rgb2ind.m, image/rgb2ntsc.m, image/spring.m,
-	image/summer.m, image/winter.m, io/dlmwrite.m, io/fileread.m,
-	io/strread.m, io/textread.m, linear-algebra/cond.m,
-	linear-algebra/condest.m, linear-algebra/cross.m,
-	linear-algebra/expm.m, linear-algebra/isdefinite.m,
-	linear-algebra/krylov.m, linear-algebra/logm.m,
-	linear-algebra/normest.m, linear-algebra/onenormest.m,
-	linear-algebra/rref.m, linear-algebra/subspace.m,
-	miscellaneous/ans.m, miscellaneous/bincoeff.m,
-	miscellaneous/bunzip2.m, miscellaneous/bzip2.m,
-	miscellaneous/computer.m, miscellaneous/copyfile.m,
-	miscellaneous/debug.m, miscellaneous/edit.m,
-	miscellaneous/getappdata.m, miscellaneous/getfield.m,
-	miscellaneous/gunzip.m, miscellaneous/gzip.m,
-	miscellaneous/isappdata.m, miscellaneous/ls.m,
-	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
-	miscellaneous/namelengthmax.m, miscellaneous/orderfields.m,
-	miscellaneous/private/__xzip__.m, miscellaneous/rmappdata.m,
-	miscellaneous/setappdata.m, miscellaneous/substruct.m,
-	miscellaneous/swapbytes.m, miscellaneous/tar.m,
-	miscellaneous/unimplemented.m, miscellaneous/unpack.m,
-	miscellaneous/untar.m, miscellaneous/unzip.m,
-	miscellaneous/ver.m, miscellaneous/warning_ids.m,
-	miscellaneous/what.m, miscellaneous/zip.m,
-	optimization/__all_opts__.m, optimization/fminbnd.m,
-	optimization/fminunc.m, optimization/fsolve.m,
-	optimization/fzero.m, optimization/glpk.m,
-	optimization/lsqnonneg.m, optimization/optimget.m,
-	optimization/pqpnonneg.m, optimization/qp.m, optimization/sqp.m,
-	path/pathdef.m, path/savepath.m, pkg/pkg.m,
-	plot/__fltk_ginput__.m, plot/__gnuplot_ginput__.m,
-	plot/__gnuplot_has_feature__.m, plot/__gnuplot_open_stream__.m,
-	plot/__gnuplot_print__.m, plot/__go_draw_axes__.m,
-	plot/__go_draw_figure__.m, plot/__marching_cube__.m,
-	plot/__next_line_color__.m, plot/__next_line_style__.m,
-	plot/__plt_get_axis_arg__.m, plot/__print_parse_opts__.m,
-	plot/area.m, plot/axis.m, plot/bar.m, plot/barh.m, plot/caxis.m,
-	plot/cla.m, plot/clabel.m, plot/colorbar.m, plot/comet.m,
-	plot/comet3.m, plot/compass.m, plot/contour.m, plot/contour3.m,
-	plot/contourc.m, plot/cylinder.m, plot/daspect.m,
-	plot/diffuse.m, plot/ellipsoid.m, plot/errorbar.m,
-	plot/ezcontour.m, plot/ezcontourf.m, plot/ezmesh.m,
-	plot/ezmeshc.m, plot/ezplot.m, plot/ezplot3.m, plot/ezpolar.m,
-	plot/ezsurf.m, plot/ezsurfc.m, plot/feather.m, plot/findobj.m,
-	plot/fplot.m, plot/gnuplot_drawnow.m, plot/gtext.m, plot/hist.m,
-	plot/hold.m, plot/ishghandle.m, plot/isocolors.m,
-	plot/isonormals.m, plot/isosurface.m, plot/isprop.m,
-	plot/legend.m, plot/loglog.m, plot/loglogerr.m, plot/meshc.m,
-	plot/meshz.m, plot/ndgrid.m, plot/orient.m, plot/pareto.m,
-	plot/patch.m, plot/pbaspect.m, plot/pcolor.m, plot/peaks.m,
-	plot/pie.m, plot/pie3.m, plot/plot.m, plot/plot3.m,
-	plot/plotmatrix.m, plot/plotyy.m, plot/polar.m, plot/print.m,
-	plot/private/__actual_axis_position__.m,
-	plot/private/__axis_label__.m, plot/private/__bar__.m,
-	plot/private/__clabel__.m, plot/private/__contour__.m,
-	plot/private/__errplot__.m, plot/private/__ezplot__.m,
-	plot/private/__fltk_file_filter__.m,
-	plot/private/__ghostscript__.m,
-	plot/private/__gnuplot_has_terminal__.m,
-	plot/private/__patch__.m, plot/private/__pie__.m,
-	plot/private/__pltopt__.m, plot/private/__quiver__.m,
-	plot/private/__scatter__.m, plot/private/__stem__.m,
-	plot/private/__tight_eps_bbox__.m, plot/quiver.m,
-	plot/quiver3.m, plot/refreshdata.m, plot/rose.m, plot/saveas.m,
-	plot/scatter.m, plot/scatter3.m, plot/semilogx.m,
-	plot/semilogxerr.m, plot/semilogy.m, plot/semilogyerr.m,
-	plot/shading.m, plot/slice.m, plot/specular.m, plot/sphere.m,
-	plot/stairs.m, plot/stem.m, plot/stem3.m, plot/subplot.m,
-	plot/surface.m, plot/surfc.m, plot/surfl.m, plot/surfnorm.m,
-	plot/uigetdir.m, plot/uigetfile.m, plot/uimenu.m,
-	plot/uiputfile.m, plot/view.m, plot/waitforbuttonpress.m,
-	plot/whitebg.m, plot/xlim.m, plot/ylim.m, plot/zlim.m,
-	polynomial/mkpp.m, polynomial/mpoles.m, polynomial/pchip.m,
-	polynomial/poly.m, polynomial/polyaffine.m,
-	polynomial/polyderiv.m, polynomial/polyfit.m,
-	polynomial/polyreduce.m, polynomial/polyval.m,
-	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
-	polynomial/ppval.m, polynomial/residue.m, polynomial/roots.m,
-	polynomial/spline.m, polynomial/unmkpp.m, set/ismember.m,
-	set/private/validargs.m, set/setdiff.m, set/setxor.m,
-	set/union.m, set/unique.m, signal/arma_rnd.m, signal/fftconv.m,
-	signal/fftshift.m, signal/filter2.m, signal/freqz.m,
-	signal/ifftshift.m, signal/unwrap.m, sparse/bicgstab.m,
-	sparse/cgs.m, sparse/gplot.m, sparse/pcg.m, sparse/pcr.m,
-	sparse/spaugment.m, sparse/spdiags.m, sparse/speye.m,
-	sparse/spfun.m, sparse/sprand.m, sparse/sprandn.m,
-	sparse/sprandsym.m, sparse/spstats.m, sparse/spy.m,
-	sparse/svds.m, sparse/treelayout.m, sparse/treeplot.m,
-	specfun/bessel.m, specfun/betaln.m, specfun/factor.m,
-	specfun/legendre.m, specfun/nchoosek.m, specfun/nthroot.m,
-	specfun/primes.m, specfun/reallog.m, specfun/realpow.m,
-	specfun/realsqrt.m, special-matrix/hadamard.m,
-	special-matrix/invhilb.m, special-matrix/magic.m,
-	special-matrix/pascal.m, special-matrix/toeplitz.m,
-	startup/__finish__.m, statistics/base/cov.m,
-	statistics/base/histc.m, statistics/base/iqr.m,
-	statistics/base/kendall.m, statistics/base/kurtosis.m,
-	statistics/base/mean.m, statistics/base/meansq.m,
-	statistics/base/median.m, statistics/base/mode.m,
-	statistics/base/moment.m, statistics/base/ols.m,
-	statistics/base/prctile.m, statistics/base/qqplot.m,
-	statistics/base/quantile.m, statistics/base/ranks.m,
-	statistics/base/run_count.m, statistics/base/skewness.m,
-	statistics/base/statistics.m, statistics/base/std.m,
-	statistics/base/studentize.m, statistics/base/var.m,
-	statistics/distributions/betainv.m,
-	statistics/distributions/betapdf.m,
-	statistics/distributions/betarnd.m,
-	statistics/distributions/binoinv.m,
-	statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_cdf.m,
-	statistics/distributions/cauchy_inv.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/fcdf.m,
-	statistics/distributions/frnd.m,
-	statistics/distributions/gamrnd.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/nbincdf.m,
-	statistics/distributions/nbininv.m,
-	statistics/distributions/nbinpdf.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/normrnd.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/tpdf.m,
-	statistics/distributions/trnd.m,
-	statistics/distributions/unifcdf.m,
-	statistics/distributions/unifrnd.m,
-	statistics/distributions/wblrnd.m,
-	statistics/tests/bartlett_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m,
-	statistics/tests/kruskal_wallis_test.m,
-	statistics/tests/t_test_regression.m, strings/blanks.m,
-	strings/dec2base.m, strings/dec2hex.m, strings/findstr.m,
-	strings/index.m, strings/isstrprop.m, strings/mat2str.m,
-	strings/regexptranslate.m, strings/str2num.m, strings/strchr.m,
-	strings/strjust.m, strings/strmatch.m, strings/strsplit.m,
-	strings/strtok.m, strings/untabify.m, testfun/assert.m,
-	testfun/demo.m, testfun/example.m, testfun/fail.m,
-	testfun/speed.m, testfun/test.m, time/datenum.m, time/datestr.m,
-	time/datetick.m, time/datevec.m, time/etime.m:
-	Strip trailing whitespace.
-
-	* statistics/distributions/betapdf.m: Untabify.
-
-2011-01-20  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/uigetdir.m: Use correct variable name for argument check.
-	Remove unneeded white spaces.
-	* plot/uigetfile.m, plot/uiputfile.m: Remove unneeded white spaces.
-	Bug #32190.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* plot/ginput.m, plot/gnuplot_drawnow.m, plot/uiputfile.m,
-	plot/subplot.m, plot/axis.m, plot/colorbar.m,
-	plot/__print_parse_opts__.m, plot/uigetdir.m,
-	plot/__fltk_print__.m, plot/print.m, plot/__gnuplot_print__.m,
-	plot/uigetfile.m, plot/private/__actual_axis_position__.m:
-	Update for backend -> graphics_toolkit change.
-
-	* plot/graphics_toolkit.m: Rename from backend.m.
-	* plot/module.mk (plot_FCN_FILES): Update list.
-
-2011-01-19  Rik  <octave@nomad.inbox5.com>
-
-	* general/curl.m, general/divergence.m, io/strread.m,
-	miscellaneous/mkoctfile.m, plot/bar.m, plot/errorbar.m, plot/hist.m,
-	plot/mesh.m, plot/surf.m, polynomial/polyaffine.m: Correct spelling
-	in docstrings.
-
-2011-01-19  John W. Eaton  <jwe@octave.org>
-
-	* help/help.m: New option --list.  Bug #31905.
-
-2011-01-19  John W. Eaton  <jwe@octave.org>
-
-	* io/strread.m: Avoid PCRE-ism in regexp.  Bug #32066.
-
-2011-01-17  Rik  <octave@nomad.inbox5.com>
-
-	* audio/wavread.m, deprecated/spqr.m, elfun/lcm.m, general/bitget.m,
-	general/curl.m, general/divergence.m, general/interp3.m,
-	general/quadv.m, geometry/delaunayn.m, geometry/griddata.m,
-	help/help.m, io/textread.m, io/textscan.m, linear-algebra/cond.m,
-	miscellaneous/mkoctfile.m, miscellaneous/orderfields.m,
-	miscellaneous/run.m, miscellaneous/setappdata.m, plot/axis.m,
-	plot/caxis.m, plot/daspect.m, plot/ellipsoid.m, plot/errorbar.m,
-	plot/gnuplot_binary.in, plot/hist.m, plot/hold.m, plot/ishold.m,
-	plot/legend.m, plot/mesh.m, plot/pbaspect.m, plot/pie3.m, plot/print.m,
-	plot/private/__add_default_menu__.m, plot/scatter.m, plot/scatter3.m,
-	plot/shg.m, plot/slice.m, plot/surf.m, plot/surfl.m, plot/uigetdir.m,
-	plot/uigetfile.m, plot/uimenu.m, plot/uiputfile.m, plot/view.m,
-	set/unique.m, signal/periodogram.m, sparse/pcg.m, sparse/pcr.m,
-	sparse/spfun.m, specfun/legendre.m,
-	statistics/distributions/poisspdf.m, statistics/distributions/wblpdf.m,
-	strings/strjust.m, strings/untabify.m, testfun/assert.m,
-	testfun/demo.m, testfun/example.m, testfun/fail.m, testfun/test.m:
-	Grammarcheck m-files for 3.4 release.
-
-2011-01-17  Rik  <octave@nomad.inbox5.com>
-
-	* general/dblquad.m, general/quadgk.m, general/quadl.m,
-	general/quadv.m, general/triplequad.m: Improve docstring with seealso
-	links to quadcc.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/isdeployed.m: New function.
-	* miscellaneous/module.mk (miscellaneous_FCN_FILES): Add it to
-	the list.  Bug #32151.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/inputname.m: Use __varval__ to lookup ".argn."
-	instead of "argn".
-
-2011-01-16  Ben Abbott <bpabbott@mac.com>
-
-	* plot/print.m: For DOS, connect the pipe to ghostscript (bug 31967),
-	and redirect to NUL instead of /dev/null.
-
-2011-01-16  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc (main): Write function name along with file name in
-	comment.
-
-2011-01-16  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Use "{}" as the default font.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/help/doc.m, scripts/help/which.m,
-	scripts/miscellaneous/comma.m, scripts/miscellaneous/ls.m,
-	scripts/miscellaneous/paren.m, scripts/miscellaneous/semicolon.m,
-	scripts/pkg/pkg.m: Eliminate @deffn macros.
-
-2011-01-15  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/krylovb: Move here from linear-algebra.
-	* deprecated/module.mk (deprecated_FCN_FILES):
-	Include krylovb.m in the list.
-	* linear-algebra/module.mk (linear_algebra_FCN_FILES):
-	Remove krylovb.m from the list.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* general/postpad.m, general/prepad.m: Improve docstring.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* ploynomial/polyaffine.m: Improve docstring.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* general/interp1.m, general/interp2.m, polynomial/mkpp.m,
-	polynomial/pchip.m, polynomial/ppder.m, polynomial/ppint.m,
-	polynomial/ppjumps.m, polynomial/ppval.m, polynomial/spline.m,
-	polynomial/unmkpp.m: Improve docstrings
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/flops.m: Delete function which was unimplemented
-	in Octave and has been removed from Matlab since version 5.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* specfun/nthroot.m: Add Seealso references to docstring.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/module.mk: Remove texas_lotto.m from build system.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/texas_lotto.m: Remove Easter Egg function.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2011-01-13  Michael Godfrey  <godfrey@isl.stanford.edu>
-
-	* plot/contourc.m: Correct one argument case.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* strings/mat2str.m: Handle logical arguments.  New tests.
-	Bug #32102.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/expm.m: Validate nargin.  New tests.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/logm.m: Handle scalar and diagonal matrix
-	arguments specially.  Call logm_pade_pf only if m > 1.  New tests.
-	Special case suggested by Marco Caliari <marco.caliari@univr.it>.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* general/private/__isequal__.m: Use builtin ("struct", ...) to
-	convert objects to a structs to avoid possible overloading of
-	the struct function.  Bug #32071.
-
-2011-01-09  Rik  <octave@nomad.inbox5.com>
-
-	* plot/orient.m, statistics/tests/kolmogorov_smirnov_test.m,
-	strings/strtrunc.m: Correct failing tests due to change in
-	capitalization of error strings from previous changeset.
-
-2011-01-09  Rik  <octave@nomad.inbox5.com>
-
-	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m, audio/saveaudio.m,
-	audio/wavwrite.m, deprecated/split.m, deprecated/values.m,
-	general/accumarray.m, general/bitcmp.m, general/cell2mat.m,
-	general/circshift.m, general/curl.m, general/divergence.m,
-	general/genvarname.m, general/interpft.m, general/interpn.m,
-	general/nextpow2.m, general/polyarea.m, general/repmat.m,
-	general/rot90.m, general/rotdim.m, general/shiftdim.m,
-	general/strerror.m, general/trapz.m, geometry/griddata.m,
-	geometry/griddata3.m, geometry/griddatan.m, geometry/rectint.m,
-	image/brighten.m, image/colormap.m, image/contrast.m, image/imagesc.m,
-	image/imfinfo.m, image/imread.m, linear-algebra/commutation_matrix.m,
-	linear-algebra/condest.m, linear-algebra/cross.m,
-	linear-algebra/duplication_matrix.m, linear-algebra/isdefinite.m,
-	linear-algebra/vech.m, miscellaneous/bincoeff.m, miscellaneous/cast.m,
-	miscellaneous/compare_versions.m, miscellaneous/fileparts.m,
-	miscellaneous/license.m, miscellaneous/private/__xzip__.m,
-	miscellaneous/substruct.m, miscellaneous/unpack.m, miscellaneous/xor.m,
-	optimization/sqp.m, pkg/get_forge_pkg.m, plot/backend.m,
-	plot/contourc.m, plot/cylinder.m, plot/hidden.m, plot/hold.m,
-	plot/orient.m, plot/private/__interp_cube__.m, plot/refreshdata.m,
-	plot/subplot.m, plot/surface.m, plot/surfnorm.m, plot/text.m,
-	plot/uimenu.m, polynomial/mkpp.m, polynomial/pchip.m,
-	polynomial/polyfit.m, polynomial/ppval.m, signal/arch_fit.m,
-	signal/arch_rnd.m, signal/arch_test.m, signal/arma_rnd.m,
-	signal/autoreg_matrix.m, signal/bartlett.m, signal/blackman.m,
-	signal/diffpara.m, signal/durbinlevinson.m, signal/fftfilt.m,
-	signal/fractdiff.m, signal/hamming.m, signal/hanning.m, signal/hurst.m,
-	signal/sinetone.m, signal/synthesis.m, signal/unwrap.m,
-	sparse/spaugment.m, specfun/factor.m, specfun/factorial.m,
-	specfun/legendre.m, specfun/nthroot.m, specfun/primes.m,
-	special-matrix/hadamard.m, special-matrix/magic.m,
-	statistics/distributions/betacdf.m, statistics/distributions/betainv.m,
-	statistics/distributions/betapdf.m, statistics/distributions/betarnd.m,
-	statistics/distributions/binocdf.m, statistics/distributions/binoinv.m,
-	statistics/distributions/binopdf.m, statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_cdf.m,
-	statistics/distributions/cauchy_inv.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2cdf.m, statistics/distributions/chi2inv.m,
-	statistics/distributions/chi2pdf.m, statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_cdf.m,
-	statistics/distributions/discrete_inv.m,
-	statistics/distributions/discrete_pdf.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/empirical_cdf.m,
-	statistics/distributions/empirical_inv.m,
-	statistics/distributions/empirical_pdf.m,
-	statistics/distributions/empirical_rnd.m,
-	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
-	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m,
-	statistics/distributions/fcdf.m, statistics/distributions/finv.m,
-	statistics/distributions/fpdf.m, statistics/distributions/frnd.m,
-	statistics/distributions/gamcdf.m, statistics/distributions/gaminv.m,
-	statistics/distributions/gampdf.m, statistics/distributions/gamrnd.m,
-	statistics/distributions/geocdf.m, statistics/distributions/geoinv.m,
-	statistics/distributions/geopdf.m, statistics/distributions/geornd.m,
-	statistics/distributions/hygecdf.m, statistics/distributions/hygeinv.m,
-	statistics/distributions/hygepdf.m, statistics/distributions/hygernd.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/laplace_rnd.m,
-	statistics/distributions/logistic_rnd.m,
-	statistics/distributions/logncdf.m, statistics/distributions/logninv.m,
-	statistics/distributions/lognpdf.m, statistics/distributions/lognrnd.m,
-	statistics/distributions/nbincdf.m, statistics/distributions/nbininv.m,
-	statistics/distributions/nbinpdf.m, statistics/distributions/nbinrnd.m,
-	statistics/distributions/normcdf.m, statistics/distributions/norminv.m,
-	statistics/distributions/normpdf.m, statistics/distributions/normrnd.m,
-	statistics/distributions/poisscdf.m,
-	statistics/distributions/poissinv.m,
-	statistics/distributions/poisspdf.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/stdnormal_cdf.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/tcdf.m, statistics/distributions/tinv.m,
-	statistics/distributions/tpdf.m, statistics/distributions/trnd.m,
-	statistics/distributions/unidrnd.m, statistics/distributions/unifcdf.m,
-	statistics/distributions/unifinv.m, statistics/distributions/unifpdf.m,
-	statistics/distributions/unifrnd.m, statistics/distributions/wblcdf.m,
-	statistics/distributions/wblinv.m, statistics/distributions/wblpdf.m,
-	statistics/distributions/wblrnd.m, statistics/distributions/wienrnd.m,
-	statistics/models/logistic_regression.m, statistics/tests/anova.m,
-	statistics/tests/chisquare_test_homogeneity.m,
-	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
-	statistics/tests/hotelling_test.m, statistics/tests/hotelling_test_2.m,
-	statistics/tests/kolmogorov_smirnov_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m,
-	statistics/tests/manova.m, statistics/tests/mcnemar_test.m,
-	statistics/tests/prop_test_2.m, statistics/tests/sign_test.m,
-	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
-	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
-	statistics/tests/var_test.m, statistics/tests/welch_test.m,
-	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
-	statistics/tests/z_test_2.m, strings/blanks.m, strings/index.m,
-	strings/strtrunc.m, strings/validatestring.m, time/addtodate.m,
-	time/datenum.m, time/datetick.m, time/datevec.m: Use uppercase for
-	variable names in error() strings to match Info documentation.
-
-	* general/interp2.m, image/imshow.m, image/ind2rgb.m,
-	image/saveimage.m, io/dlmwrite.m, io/strread.m, io/textscan.m,
-	linear-algebra/expm.m, linear-algebra/krylov.m, linear-algebra/logm.m,
-	miscellaneous/delete.m, miscellaneous/run.m, plot/__marching_cube__.m,
-	sparse/bicgstab.m, sparse/cgs.m, strings/strmatch.m,
-	testfun/rundemos.m, testfun/runtests.m: Rewrite error string
-
-	* @ftp/ftp.m, help/gen_doc_cache.m, miscellaneous/unix.m,
-	plot/__gnuplot_open_stream__.m, plot/private/__add_default_menu__.m,
-	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
-	signal/periodogram.m: Correct use of @deftypefn macro
-
-	* miscellaneous/paren.m: Space @deffnx macro for readability
-
-2011-01-09  Rik  <octave@nomad.inbox5.com>
-
-	* general/arrayfun.m, general/blkdiag.m, general/structfun.m,
-	image/imagesc.m, linear-algebra/cond.m, linear-algebra/condest.m,
-	linear-algebra/expm.m, linear-algebra/logm.m,
-	linear-algebra/onenormest.m, linear-algebra/qzhess.m,
-	optimization/glpk.m, optimization/glpkmex.m, polynomial/poly.m,
-	sparse/gplot.m, sparse/pcg.m, sparse/pcr.m, sparse/spaugment.m,
-	sparse/spdiags.m, sparse/svds.m: Use uppercase 'A' to refer to matrix
-	argument.
-
-	* io/dlmwrite.m: Use uppercase 'M' to refer to matrix argument.
-
-	* io/textscan.m: Use uppercase 'C' to refer to Cell Array output.
-	Improve docstring.
-
-	* signal/unwrap.m: Use 'x' instead of 'a' for vector input argument.
-
-2011-01-09  Rik  <octave@nomad.inbox5.com>
-
-	* general/bicubic.m, general/nargchk.m, general/nargoutchk.m,
-	linear-algebra/krylov.m, linear-algebra/krylovb.m,
-	linear-algebra/normest.m, linear-algebra/null.m, linear-algebra/orth.m,
-	linear-algebra/rank.m: Use common names for variables in documentation
-	and code.
-
-2011-01-09  Rik  <octave@nomad.inbox5.com>
-
-	* audio/loadaudio.m, audio/mu2lin.m, audio/saveaudio.m,
-	general/accumdim.m, general/bitget.m, general/bitset.m, general/del2.m,
-	general/isequal.m, general/isequalwithequalnans.m, general/logspace.m,
-	general/repmat.m, general/strerror.m, general/structfun.m,
-	geometry/delaunayn.m, geometry/dsearchn.m, image/ind2gray.m,
-	image/ind2rgb.m, image/rgb2ind.m, io/csvread.m, io/csvwrite.m,
-	linear-algebra/rref.m, linear-algebra/subspace.m,
-	linear-algebra/trace.m, miscellaneous/dir.m, miscellaneous/dos.m,
-	miscellaneous/menu.m, miscellaneous/perl.m, miscellaneous/unix.m,
-	path/savepath.m, plot/allchild.m, plot/diffuse.m, plot/fplot.m,
-	plot/refreshdata.m, plot/specular.m, plot/subplot.m,
-	polynomial/polyreduce.m, set/ismember.m, signal/arch_fit.m,
-	signal/arch_rnd.m, signal/arch_test.m, signal/diffpara.m,
-	signal/fftfilt.m, signal/filter2.m, signal/sinetone.m,
-	signal/spectral_xdf.m, signal/stft.m, signal/synthesis.m,
-	sparse/spfun.m, sparse/spones.m, sparse/spstats.m, sparse/treelayout.m,
-	sparse/treeplot.m, specfun/isprime.m,
-	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
-	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m,
-	statistics/distributions/poisscdf.m,
-	statistics/distributions/poissinv.m,
-	statistics/distributions/poisspdf.m,
-	statistics/distributions/poissrnd.m,
-	statistics/tests/chisquare_test_independence.m,
-	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
-	statistics/tests/t_test_regression.m, strings/base2dec.m,
-	strings/dec2base.m, strings/regexptranslate.m, strings/strjust.m,
-	strings/strmatch.m, time/asctime.m, time/datenum.m:
-	Use common names for variables in documentation and code.
-
-	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m, @ftp/delete.m,
-	@ftp/dir.m, @ftp/ftp.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/mput.m,
-	@ftp/rename.m, @ftp/rmdir.m, general/chop.m, geometry/dsearch.m,
-	signal/spencer.m, specfun/primes.m, time/etime.m: Use common names for
-	variables in documentation and code.  Improve docstring
-
-	* elfun/acot.m, elfun/acoth.m, elfun/acsc.m, elfun/acsch.m,
-	elfun/asec.m, elfun/asech.m, elfun/cot.m, elfun/coth.m, elfun/csc.m,
-	elfun/csch.m, elfun/sec.m, elfun/sech.m: Use common names for variables
-	in documentation and code.  Change output variable to 'y' rather than
-	'w'.
-
-	* miscellaneous/bunzip2.m, miscellaneous/gunzip.m,
-	miscellaneous/unpack.m, miscellaneous/untar.m, miscellaneous/unzip.m:
-	Use common names for variables in documentation and code.  Use default
-	on input argument to simplify input validation.
-
-	* general/accumarray.m: Use common names for variables in
-	documentation, code and tests.
-
-	* geometry/inpolygon.m: Use common names for variables in
-	documentation, code and tests.  Improve docstring.
-
-	* general/bitcmp.m: Use common names for variables in documentation and
-	code.  Switch tests to %!test blocks rather than %!shared variables and
-	%!asserts for clarity.
-
-	* general/int2str.m: Switch to input variable name 'n' rather than 'x'.
-
-	* general/isdir.m: Switch to input variable name 'f' rather than 'x'.
-	Switch output variable to 'retval' rather than 'y'.
-
-	* general/perror.m: Switch to input variable name 'funcname' rather
-	than 'name'.  Use common names for variables in documentation and
-	code.
-
-	* general/rot90.m: Switch to input variable name 'A' rather than 'x'.
-	Break very long %!assert line into multiple asserts for readability.
-
-	* general/sortrows.m: Use common names for variables in documentation
-	and code.  Break very long %!assert line into multiple asserts for
-	readability.
-
-	* geometry/voronoin.m: Switch to input variable name 'options' rather
-	than 'opt'.
-
-	* help/lookfor.m: Switch to input variable name 'arg2' rather than
-	'extra'.
-
-	* image/brighten.m: Switch to input variable name 'arg1' rather than
-	'm'.  Eliminate CamelCase in output variable 'Rmap'.
-
-	* image/rgb2hsv.m: Switch to variable name 'hsv_map' rather than
-	'hsval'.
-
-	* image/saveimage.m: Switch to input variable name 'fname', rather than
-	'file'.  Use common names for variables in documentation and code.
-
-	* io/strread.m, io/textread.m, io/textscan.m: Switch to input variable
-	name 'format' rather than 'formatstr'
-
-	* miscellaneous/run.m: Switch to input variable 'script' rather than
-	's'.
-
-	* miscellaneous/ver.m: Switch to input variable 'package' rather than
-	'pack'.  Use default on input argument to simplify input validation.
-
-	* plot/saveas.m: Switch to input variable 'fmt' rather than 'ext'.
-	Improve docstring.
-
-	* plot/title.m: : Switch to input variable 'string' rather than 'title'.
-
-	* plot/uigetdir.m: Improve docstring.  Re-order input validation.
-	Eliminate unnecessary use of cellfun to compare strings.
-
-	* polynomial/polyder.m, polynomial/polyderiv.m: Switch ouput variable
-	name 'r' to 'd'.  Improve docstring.
-
-	* polynomial/polyint.m: Switch input variable name 'c' to 'p'.
-
-	* signal/fftconv.m: Switch input variable names to 'x','y' instead of
-	'a','b' for vectors.
-
-	* signal/fftshift.m, signal/ifftshift.m: Switch input variable name to
-	'x' instead of 'v'.
-
-	* sparse/etreeplot.m: Switch input variable name to 'A' rather than
-	'tree' for matrix.
-
-	* specfun/factor.m: Use common names for variables in documentation and
-	code.  Uncomment and re-instate test code.
-
-	* statistics/distributions/cauchy_cdf.m,
-	statistics/distributions/cauchy_inv.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m: Switch to input variables
-	'location','scale' rather than 'lambda','sigma'.
-
-	* statistics/tests/manova.m: Switch to input variable 'x' rather than
-	'y'.
-
-	* strings/untabify.m: Switch to input variable 'dblank' rather than
-	'db'.
-
-	* time/datestr.m: Improve docstring
-
-	* time/weekday.m: Switch to input variable name 'format' rather than
-	'form'.  Improve docstring.
-
-2011-01-08  John Hunt  <huntj@gawab.com>
-
-	* plot/legend.m, plot/private/__plt__.m: legend with more than two
-	inline keys (bug 31991). Add/modifyy demos.
-
-2011-01-07  John W. Eaton  <jwe@octave.org>
-
-	* general/private/__isequal__.m: Compare objects as if they are
-	structures.  Bug #32071.
-
-2011-01-07  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/logm.m: Style fixes.
-
-2011-01-06  John W. Eaton  <jwe@octave.org>
-
-	* optimization/optimset.m: Remove "i" option from call to
-	lookup.  Bug #31392.
-
-2011-01-05  Rik  <octave@nomad.inbox5.com>
-
-	* general/isa.m: Add tests against logical values.
-
-2011-01-04  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/demo.m: Add newline to error output for better formatting.
-
-2011-01-03  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/center.m, statistics/base/corrcoef.m,
-	statistics/base/kendall.m, statistics/base/mean.m,
-	statistics/base/meansq.m, statistics/base/skewness.m,
-	statistics/base/studentize.m, statistics/base/var.m,
-	statistics/base/run_count.m, statistics/base/ranks.m: Improve input
-	validation.  Add function tests.  Improve docstring.
-
-	* statistics/base/moment.m, statistics/base/prctile.m,
-	statistics/base/spearman.m, statistics/base/std.m : Improve input
-	validation.  Add input validation tests.  Improve docstring.
-
-	* statistics/base/cloglog.m: Add function tests.
-
-	* statistics/base/cor.m: Replace with call to corrcoef, now only an
-	alias.
-
-	* statistics/base/cov.m: Add normalization option.  Improve input
-	validation.  Add function tests.  Improve docstring.
-
-	* statistics/base/cut.m: Use lowercase variable names.  Improve
-	docstring.
-
-	* statistics/base/histc.m, statistics/base/median.m: Use same variable
-	name in documentation and in function.  Add input validation tests.
-	Improve docstring.
-
-	* statistics/base/iqr.m, statistics/base/mode.m: Add input validation
-	tests.  Improve docstring.
-
-	* statistics/base/kurtosis.m: Return same class as input variable.  Add
-	input validation tests.  Improve docstring.
-
-
-	* statistics/base/logit.m, statistics/base/range.m: Add function tests.
-	Improve docstring.
-
-	* statistics/base/mahalanobis.m: Use lower case variable names.
-	Improve input validation.  Add input validation tests.
-
-	* statistics/base/ols.m, statistics/base/gls.m: Use isargout to only
-	calculate necessary outputs.  Use lowercase variable names.  Add
-	functional tests.  Improve docstring.
-
-	* statistics/base/ppplot.m: Add input validation tests.
-
-	* statistics/base/qqplot.m: Add ability to call "XXXinv" or "XXX_inv"
-	functions.  Improve input validation.  Improve docstring.
-
-	* statistics/base/quantile.m: Use defaults for input arguments to
-	simplify code.  Improve input validation.  Add input validation tests.
-	Improve docstring.
-
-	* statistics/base/statistics.m: Use lowercase variable names.  Improve
-	input validation.  Add input validation tests.  Improve docstring.
-
-	* statistics/base/table.m: Switch from deprecated function 'values' to
-	'unique'.  Add input validation tests.  Improve docstring.
-
-2011-01-02  Ben Abbott <bpabbott@mac.com>
-
-	* plot/legend.m: Only one legend per axes (bug 32022). Add / modify
-	demos to test addional features.
-
-2010-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* general/is_duplicate_entry.m , general/isdir.m, general/isscalar.m,
-	general/issquare.m, general/isvector.m, linear-algebra/isdefinite.m,
-	linear-algebra/ishermitian.m, linear-algebra/issymmetric.m,
-	miscellaneous/isappdata.m, miscellaneous/ismac.m, miscellaneous/ispc.m,
-	miscellaneous/isunix.m, plot/isfigure.m, plot/ishold.m, plot/isprop.m,
-	set/ismember.m, specfun/isprime.m, strings/isletter.m,
-	time/is_leap_year.m : Improve docstring
-	* general/isa.m: Improve docstring.  Change function variable name to
-	match documentation variable name.
-	* strings/isstrprop.m: Improve docstring.  Change function variable
-	name to match documentation variable name.  Add new test cases.
-
-2010-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* plot/module.mk: Add isprop.m to list of function files for Automake.
-
-2010-12-31  Kai Habel  <kai.habel@gmx.de>
-
-	* general/curl.m, general/divergence.m: New functions.
-	* general/module.mk: Add new file to list.
-	* miscellaneous/unimplemented.m: Remove curl and divergence from list.
-
-2010-12-31  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/scatter3.m: Grid on by default for 3D plots.
-
-2010-12-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/contour3.m, plot/mesh.m, plot/meshc.m, plot/surfc.m: Grid on
-	by default for 3D plots.
-	* plot/surfc.m, plot/meshc.m: Place contour for meshc/surfc at
-	zlim(1).
-	* plot/__go_draw_axes__.m: Tweak vertical alignment of text objects
-	for gnuplot to favor eps/ps output.
-
-2010-12-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/text.m: New demo for 3D plot and text with verticalalignment.
-	* plot/__go_draw_axes__.m: Enable vertical alignment of text objects
-	for gnuplot.
-
-2010-12-28  Ben Abbott <bpabbott@mac.com>
-
-	* plot/private/__plt__.m: Fix to allow inline legend keys. Bug 31991.
-
-2010-12-28  Rik  <octave@nomad.inbox5.com>
-
-	* image/autumn.m, image/bone.m, image/cool.m, image/copper.m,
-	image/flag.m, image/gray.m, image/hot.m, image/hsv.m, image/jet.m,
-	image/ocean.m, image/pink.m, image/prism.m, image/rainbow.m,
-	image/spring.m, image/summer.m, image/white.m, image/winter.m: Use
-	same variable name for documentation and function call.  Change demo
-	code to explicitly use colormap size.  Update docstring.
-
-	* image/gmap40.m: Use same variable name for documentation and function
-	call.  Change demo code to use colormap size of 6 rather than 64.
-	Update docstring.
-
-2010-12-28  Ben Abbott <bpabbott@mac.com>
-
-	* plot/legend.m: Add demo to legend for inline key.
-
-2010-12-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/text.m: Add demo for text rotation and alignment.
-
-2010-12-26  Michael Godfrey <godfrey@isl.stanford.edu>
-
-	* specfun/legendre.m: Add @tex blocks to docstring.
-
-2010-12-24  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/test.m: Use 'Command' for deftype in docstring.
-
-2010-12-24  Rik  <octave@nomad.inbox5.com>
-
-	* audio/setaudio.m: Re-write docstring.
-
-2010-12-23  Soren Hauberg  <hauberg@gmail.com>
-
-	* signal/detrend.m: Also accept polynomial order as a string
-	("constant" or "linear") for compatibility with Matlab.
-
-2010-12-22  Konstantinos Poulios  <logari81@gmail.com>
-
-	* plot/private/__axis_label__.m: Trigger fltk graphics redraw
-	immediately after setting an axis label.
-
-2010-12-22  John W. Eaton  <jwe@octave.org>
-
-	* optimization/optimset.m, optimization/optimget.m,
-	optimization/__all_opts__.m: Consistently use lower case for
-	storing and searching option names.
-
-2010-12-22  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/skewness.m: Make returned value have the same
-	class as the input.
-
-2010-12-21  John W. Eaton  <jwe@octave.org>
-
-	* time/datevec.m: Style fixes.
-
-2010-12-20  Ben Abbott <bpabbott@mac.com>
-
-	* plot/__fltk_print__.m: Update figure for FLTK printing.  Bug #31884.
-
-2010-12-19  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/run.m: Use source to execute script.
-
-2010-12-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/view.m: Return azimuth and elevation for nargin == 0.
-
-2010-10-28  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, sparse/module.mk, deprecated/sphcat.m,
-	deprecated/spvcat.m: Deprecate sphcat and spvcat functions.
-
-2010-12-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/comet3.m: New function.
-	* plot/module.mk: Add comet3.m to the list
-	* miscellaneous/unimplemented.m: Remove comet3 from the list.
-
-2010-12-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/comet.m: Use __plt_get_axis_arg__ to extract axis
-	argument.  Only switch to specified axis temporarily.
-
-2010-12-16  Ben Abbott <bpabbott@mac.com>
-
-	* miscellaneous/unimplemented.m: Remove isprop() from list of
-	unimplemented functions.
-	* plot/isprop.m: New function.
-
-2010-12-16  Olaf Till <olaf.till@uni-jena.de>
-
-	* optimization/sqp.m: Fix indexing error in sqp bounds selection.
-
-2010-12-14  Doug Stewart <doug.dastew@gmail.com>
-
-	* plot/bar.m: Improve the docstring.
-
-2010-12-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__quiver__.m: Use high contrast color black for arrows
-	in quiver3 plots.  Bug #31802.
-
-2010-12-14  Rik  <octave@nomad.inbox5.com>
-
-	* plot/compass.m, plot/errorbar.m, plot/legend.m, plot/rose.m,
-	plot/scatter.m, plot/scatter3.m, plot/stairs.m: Assign data used in
-	demo plots for reproducibility between runs.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/median.m: Add NaN test case from bug #29930.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* general/isequalwithequalnans.m: Add test case from bug #31239.
-
-2010-12-13  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Fix indexing bug for varargin.
-	Bug #31862.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/distributions/betapdf.m: Add test for large values of
-	alpha and beta.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* strings/strmatch.m: Add test with null search pattern.
-
-2010-12-13 Doug Stewart  <doug.dastew@gmail.com>
-
-	* plot/hist.m: Improved the help section.
-
-2010-12-13  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/private/__add_default_menu__.m: New function.
-	* plot/figure.m: Call __add_default_menu__ function.
-	* plot/module.mk: Add new file to list.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/sqp.m: Change docstring to refer to x0 as the initial
-	seed vector.
-
-2010-12-13  Olaf Till <olaf.till@uni-jena.de>
-
-	* optimization/sqp.m: Remove never violated Inf bounds from
-	computation in function for inequality constraints (bug
-	#31742).  Remove non-functional check for inequality constraints
-	being +Inf in each iteration.
-
-2010-12-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/optimget.m: Use explicit toupper conversion rather than
-	lookup(..., "i").
-	* optimization/optimset.m: Ditto.
-	* miscellaneous/parseparams.m: Ditto.
-
-2010-12-12  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/view.m: Fix bugs with respect to number if inputs and argument
-	handling.
-
-2010-12-12  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/view.m: Make view more compatible. Allow cartesian
-	coordinates and axes handle arguments.
-
-2010-12-10  Ben Abbott  <bpabbott@mac.com>
-
-	* io/strread.m: Don't require space between format specifiers.
-
-2010-12-10  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/speed.m: Eliminate line continuation in function definition.
-
-2010-12-10  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/private/__pie__.m: Add missing slice option to pie and
-	pie3 function.
-	* plot/pie.m, plot/pie3.m: Add new demo.
-
-2010-12-10  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* statistics/tests/kolmogorov_smirnov_test.m: Add tests.
-
-2010-12-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__pie__.m: Provide diagnositc for invalid
-	optional arguments.  Use caller name instead of __pie__ in error
-	messages.
-
-2010-12-09  John W. Eaton  <jwe@octave.org>
-
-	* statistics/tests/kolmogorov_smirnov_test.m: Try both DIST_cdf
-	and DISTcdf functions.  Always use feval to call CDF function.
-	Bug #31838.
-
-2010-12-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Set major and grid linewidths from
-	axis linewidth property.  Bug #31755.
-
-2010-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* plot/__print_parse_opts__.m: Convert print resolution from char to
-	double.  Fixes Bug #31834.
-
-2010-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* plot/private/__pie__.m: Allow logical indices for 'explode' variable.
-
-2010-12-09  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/pie3.m, plot/private/__pie__.m: New functions.
-	* plot/pie.m: Move __pie__ function to plot/private, in order to
-	be used by pie and pie3.
-	* miscellaneous/unimplemented.m: Remove pie3.m from list of
-	unimplemented functions.
-
-2010-12-09  John W. Eaton  <jwe@octave.org>
-
-	* time/datestr.m: Don't call localtime (mktime (tm)) to fill in
-	missing elements of time strcture.  Bug #31079.
-
-2010-12-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/fill.m: Fix bug that implies nextplot = "add".
-	* image/imshow.m: Flip y-axis.
-
-2010-12-08  John W. Eaton  <jwe@octave.org>
-
-	* strings/strmatch.m: Avoid passing length of zero to strncmp.
-	Bug #31774.
-
-2010-12-07  John W. Eaton  <jwe@octave.org>
-
-	* general/repmat.m: Handle special case of replicating scalar
-	using an index vector containing zeros.  Bug #31775.
-
-2010-12-06  Rik  <octave@nomad.inbox5.com>
-
-	* plot/plot.m: Eliminate present tense in first sentence of docstring.
-
-2010-12-06  Rik  <octave@nomad.inbox5.com>
-
-	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Add additional calling
-	form to docstring which returns handle (h)
-
-2010-12-06  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/testfun/speed.m: Overhaul documentation string.
-
-2010-12-03  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__stem__.m: Create a baseline for each stem hggroup.
-	* plot/__go_draw_axes__.m: If not set, then unset the gnuplot
-	{tblr}margins. Needed when using subplots with differing
-	activepositionproperty.
-
-2010-12-03  Konstantinos Poulios <logari81@gmail.com>
-
-	* plot/pbaspect.m, plot/daspect.m: Fix handling of input array of
-	length 2.
-
-2010-12-02  Ben Abbott  <bpabbott@mac.com>
-
-	* image/image.m: Only flip y-axis if nextplot property equal
-	"replace". Fixes bug 31745.
-	* plot/contour3.m: Modify demo to avoid clipping mesh. Fixes bug
-	31744.
-	* plot/fill.m: Allow multiple filled polygons. Fixes bug 31750.
-	* plot/subplot.m: Add suppport for "align" and "replace" options.
-	Partial fix for bug 31610.
-
-2010-11-26  John W. Eaton  <jwe@octave.org>
-
-	* pkg/pkg.m: Append directories to EXEC_PATH instead of
-	prepending them.  Use pathsep instead of ":".
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m,
-	miscellaneous/ls_command.m, plot/__print_parse_opts__.m:
-	Search PATH for programs, not EXEC_PATH.
-
-	* plot/print.m: Refer to PATH, not EXEC_PATH in error messages.
-	* plot/__print_parse_opts__.m: Likewise.
-
-2010-11-25  Kai Habel  <kai.habel@gmx.de>
-
-	* (plot/uimenu.m): Simplify code, add further check.
-	* (plot/uigetdir.m, plot/uigetfile.m, plot/uiputfile.m):
-	Fix error messages.
-
-2010-11-25  John W. Eaton  <jwe@octave.org>
-
-	* time/datetick.m: Add missing semicolon.
-
-2010-11-21  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/sqp.m: Use correct stopping tolerance in documentation.
-
-2010-11-21  Kai Habel  <kai.habel@gmx.de>
-
-	* (plot/uigetdir.m, plot/private/__fltk_file_filter__.m:): Check if
-	file argument is a valid path, don't use fileparts in this case.
-
-2010-11-21  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix plot titles so they are visible for
-	gnuplot 4.4.x (31711).
-	* general/cell2mat.m: Return empty matrix for empty cell.
-
-2010-11-21  Kai Habel  <kai.habel@gmx.de>
-
-	* (plot/uigetfile.m, plot/uiputfile.m): Set default directory to pwd.
-
-2010-11-21  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/uigetdir.m, plot/uigetfile.m, plot/uiputfile.m,
-	plot/private/__fltk_file_filter__.m: New files.
-	* plot/module.mk: Add new files.
-	* miscellaneous/unimplemented.m: Remove uigetdir.m, uigetfile.m,
-	and uiputfile.m from list of unimplemented functions.
-
-2010-11-20  Rik  <octave@nomad.inbox5.com>
-
-	* plot/gnuplot_drawnow.m: Remove spurious line causing 'ans=1' to be
-	returned when printing plots.
-
-2010-11-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_has_feature__.m: Since there is not gnuplot 4.3.x
-	release, replace reference to version 4.3 with 4.4.
-
-2010-11-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/text.m: Ensure text position property is set after units
-	property.
-	* plot/__go_draw_axes__.m: Fix bug setting zscale to yscale (31693).
-
-2010-11-18  Christos Dimitrakakis  <christos.dimitrakakis@gmail.com>
-
-	* statistics/distributions/betapdf.m: Use lgamma to compute
-	normalising constant in log space in order to handle large
-	parameters a and b.  Ensure correct values at x == 0 or x == 1.
-
-2010-11-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: For tests, allow __print_parse_opts__
-	to run with no inputs.
-
-2010-11-17  Ben Abbott  <bpabbott@mac.com>
-
-	* general/subsindex.m: Fix typo in doc-string.
-
-2010-11-17  John W. Eaton  <jwe@octave.org>
-
-	* strings/strchr.m: Style fixes.
-
-2010-11-17  Kim Hansen  <kim@ange.dk>
-
-	* strings/strchr.m: New tests.
-
-2010-11-16  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/unimplemented.m: Update unimplemented functions list.
-
-2010-11-15  Rik  <octave@nomad.inbox5.com>
-
-	* plot/saveas.m: Add function name to error messages.  Use semicolons
-	to prevent unnecessary output.  Use common terms 'ext' for extension
-	and 'filename' for filename in docstring.
-
-2010-11-15  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/saveas.m: New file.
-	* plot/module.mk: Add saveas.m
-	* plot/__print_parse_opts__.m: Parse arguments correctly when first
-	argument is a figure handle.
-	* plot/print.m: Add saveas to seealso entry.
-
-2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/print.m: Use "del" instead of "delete" in DOS shell, and
-	replace	forward slashes with backslashes.
-	* plot/__gnuplot_print__.m: Likewise.
-
-2010-11-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__all_opts__.m: Ensure that the array is always
-	case-insensitively sorted.
-
-2010-11-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/gnuplot_drawnow.m (have_non_legend_axes): New function.
-	Use it to avoid errors if there are no axes.
-	* plot/legend.m: Avoid indexing beyond end of varargin array.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc: Eliminate special case for __DECCXX.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* scripts/deprecated/dispatch.m: Don't set warning state in tests.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/dispatch.m: Deprecate dispatch function.
-	* deprecated/module.mk (deprecated_FCN_FILES): Add it to the list.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* help/help.m: Call missing_function_hook with output argument
-	and print message here.
-	* miscellaneous/unimplemented.m: Return message if nargout > 0.
-	Fixes bug #31597.
-
-2010-11-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Check for z/y/zdata before converting
-	negative values to NaNs. Bug fix for changeset 11201.
-	* plot/daspect.m: Fix demo using both daspect and pbaspect.
-
-2010-11-08  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Remove foreground color earlier.
-	* plot/__go_draw_figure__.m: Don't set the foreground color here.
-
-2010-11-08  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/sprand.m: Add input validation to function.
-
-2010-11-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__bar__.m: Permit bar() to be called with scalar inputs.
-	* plot/__go_draw_axes__.m, plot/axis.m: Set proper tight axis limits
-	for log scale.
-
-2010-11-07  David Bateman  <dbateman@free.fr>
-
-	* plot/legend.m: Remove call to drawnow.
-
-	* plot/__go_draw_axes__.m: Pass the legend axes as a structure.
-	Test whether the legend axis has any children before using it.
-	* plot/__go_draw_figure.m: Setup a fake axis to handle multi-parent
-	legend axes and delete this fake axiss when we're done with it.
-	* plot/gnuplot_drawnow.m: Don't cound legend axes when decidong if
-	multiplot should be used or not.
-	* plot/legend.m: Handle correctly plotyy as a multi-parented axis.
-	Reuse existing legend axis if possible. Setup listeners to propagate
-	changes in the lines to the legend. Setup listeners that handle the
-	properties that need to legend to be recreated.
-	* plot/plotyy.m: Cross-references the axes of the plotyy in the userdata
-	of the axes.
-
-2010-11-07  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/colorbar.m: Make colorbar function aware of dataaspect settings.
-
-2010-11-06  Marco Caliari <marco.caliari@univr.it>
-
-	* polynomial/spline.m: Fit a parabola for input with 3
-	elements (bug #31098).
-
-2010-11-04  Rik  <octave@nomad.inbox5.com>
-
-	* plot/__fltk_ginput__.m: Use semicolons to prevent internal
-	function evaluations being output to screen.
-
-2010-11-04  Rik  <octave@nomad.inbox5.com>
-
-	* plot/module.mk: Add __fltk_ginput__.m to list of scripts
-
-2010-11-04  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Update check-m-sources target to include generated
-	function files.
-
-2010-11-04  Rik  <octave@nomad.inbox5.com>
-
-	* general/accumarray.m, general/accumdim.m, general/blkdiag.m,
-	general/cell2mat.m, general/common_size.m,
-	general/private/__isequal__.m, general/private/__splinen__.m,
-	geometry/voronoi.m, io/textscan.m, miscellaneous/private/__xzip__.m,
-	pkg/pkg.m, plot/axis.m, plot/pareto.m, plot/private/__patch__.m,
-	statistics/base/mode.m, strings/deblank.m, strings/strcat.m,
-	strings/strmatch.m, strings/strtrim.m, strings/untabify.m:
-	Reverse previous changeset.  Use all lower case for "uniformoutput"
-	option.
-
-2010-11-03  Rik  <octave@nomad.inbox5.com>
-
-	* general/accumdim.m, general/cell2mat.m, general/common_size.m,
-	general/structfun.m, pkg/pkg.m, strings/untabify.m: Use CamelCase
-	for 'UniformOutput' option to cellfun.
-
-2010-11-03  Rik  <octave@nomad.inbox5.com>
-
-	* scripts/plot/plotyy.m, scripts/plot/xlim.m, scripts/plot/ylim.m,
-	scripts/plot/zlim.m: Fix typos in docstring and demo string.
-
-2010-11-03  Rik  <octave@nomad.inbox5.com>
-
-	* general/common_size.m, miscellaneous/private/__xzip__.m,
-	miscellaneous/what.m, plot/pareto.m, plot/private/__patch__.m:
-	Use function handle as input to cellfun rather than quoted function
-	name or anonymous function wrapper.
-
-2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/axis.m: Making 'axis equal' equivalent to 'daspect([1,1,1])'.
-
-2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/private/__actual_axis_position__.m: Remove temporary
-	calculation of plotboxratio for the gnuplot backend when
-	dataaspectratiomode, xlimmode and ylimmode are all set to manual.
-	Now this case is handled in src/graphics.cc .
-
-2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/axis.m: Leave zlim unchanged during "axis tight" on 2D plots
-
-2010-11-03  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__patch__.m: Don't index an empty array; bug introduced
-	by changeset 11175.
-
-2010-11-03  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/getappdata.m, miscellaneous/isappdata.m,
-	miscellaneous/rmappdata.m, miscellaneous/setappdata.m:
-	Add new appdata function.
-
-2010-11-01  David Bateman  <dbateman@free.fr>
-
-	* plot/__private__/__contour__.m: Use __go_patch__ rather than patch
-	to avoid the cost of the patch callback functions. Ensure that the
-	properties that are normally set by patch are correctly set in the
-	call to __go_patch__.
-
-2010-11-01  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/axis.m: Exclude hggroup {x,y,z}data properties when determing
-	tight axis limits.
-
-2010-10-31  Rik  <octave@nomad.inbox5.com>
-
-	* strings/base2dec.m, strings/bin2dec.m, strings/dec2base.m,
-	  strings/dec2bin.m, strings/dec2hex.m, strings/hex2dec.m:
-	  Improve docstrings, use more descriptive variable names,
-	  add more tests for functions used to convert between bases.
-
-2010-10-31  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* plot/__go_draw_axes__.m: Removing deprecated code handling the case
-        of both plotboxaspectratiomode and dataaspectratiomode set to manual
-        for the gnuplot backend. Now this case is handled already in
-        src/graphics.cc where xlim, ylim, zlim are recalculated if necessary.
-
-2010-10-30  Gunnar Farnebäck <gunnar@lysator.liu.se>
-
-	* strings/dec2base.m: Update algorithm to handle numbers up to 2^64-1.
-
-2010-10-28  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/module.mk, signal/module.mk, deprecated/autocov.m,
-	deprecated/autocor.m: Deprecate autocov and autocor functions.
-
-2010-10-27  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Don't attempt to plot patch outlines if
-	the marker property is set to none.
-
-2010-10-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/daspect.m, plot/pbaspect.m: Add demos setting both data and
-	plotbox aspect ratios.
-
-2010-10-27  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__patch__.m (setdata, setvertexdata): If argments are
-	repeated, take the last argument only into account. Set cdata and
-	facevertexcdata properties always.
-
-2010-10-26  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/uimenu.m: Add simple demo
-
-2010-10-25  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/discrete_pdf.m: Sort values before calling
-	the lookup function.
-
-2010-10-25  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/uimenu.m: New function
-	* plot/__go_draw_figure__.m: Ignore uimenu objects for gnuplot
-	backend
-	* plot/module.mk (plot_FCN_FILES): Add it to the list.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/compare_versions.m, plot/ylabel.m, plot/ylim.m,
-	plot/zlabel.m, plot/zlim.m: Docstring improvements.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* specfun/module.mk, deprecated/module.mk, deprecated/betai.m,
-	deprecated/gammai.m, deprecated/is_global.m: Deprecate betai,
-	gammai, and is_global functions.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* strings/untabify.m, strings/strjust.m, io/strread.m:
-	Docstring fixes.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/nbinrnd.m: Use | instead of || in
-	argument to find.
-
-	* deprecated/intwarning.m, general/bicubic.m, general/postpad.m,
-	general/prepad.m, general/private/__splinen__.m,
-	general/shift.m, miscellaneous/swapbytes.m, pkg/pkg.m,
-	plot/clabel.m, plot/colorbar.m, plot/fill.m, plot/legend.m,
-	plot/plotmatrix.m, plot/plotyy.m, plot/private/__clabel__.m,
-	plot/private/__ezplot__.m, plot/private/__quiver__.m,
-	plot/subplot.m, signal/unwrap.m, statistics/base/histc.m,
-	statistics/base/iqr.m, statistics/base/kurtosis.m,
-	statistics/base/mode.m, statistics/base/ranks.m,
-	statistics/base/run_count.m, statistics/base/skewness.m,
-	statistics/base/statistics.m, statistics/base/studentize.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/frnd.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/trnd.m,
-	statistics/distributions/wblrnd.m, strings/strcat.m,
-	time/datestr.m, time/datetick.m: Break lines before && and ||,
-	not before.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* io/strread.m: Docstring fixes.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* io/is_valid_file_id.m: Ensure that FID is a scalar before
-	calling fopen to get info.  New tests.
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* io/is_valid_file_id.m: New function.
-	* io/module.mk (io_FCN_FILES): Add it to the list.
-
-2010-10-23  Ben Abbott  <bpabbott@mac.com>
-
-	* io/textscan.m, miscellaneous/unimplemented.m, io/module.mk:
-	New function.
-
-2010-10-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Trivial fix to allow legend handle to be returned.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/quantile.m: Fix typo in previous change.
-
-2010-10-21  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/distributions/wblcdf.m, statistics/distributions/wblinv.m,
-	statistics/distributions/wblpdf.m, statistics/distributions/wblrnd.m:
-	Fix reversed documentation for shape and scale parameters.
-
-2010-10-21  Ben Abbott  <bpabbott@mac.com>
-
-	* io/strread.m: Improve compatibility with Matlab.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* general/private/__isequal__.m: Style fixes.
-
-2010-10-20  Iain Murray  <murray@cs.toronto.edu>
-
-	* general/private/__isequal__.m: Fix bug #31239 where
-	isequalwithequalnans is incorrect.
-
-2010-10-20  Rik  <octave@nomad.inbox5.com>
-
-	* polynomial/conv.m: Remove redundant test.
-	* signal/fftconv.m: Add tests used by conv.m code.
-
-2010-10-20  Olaf Till  <olaf.till@uni-jena.de>
-
-	* optimization/optimset.m: Use cell2struct instead of struct to
-	handle cell arrays as options.
-
-2010-10-20  John W. Eaton  <jwe@octave.org>
-
-	* io/strread.m, optimization/sqp.m, plot/daspect.m,
-	plot/pbaspect.m, plot/gnuplot_drawnow.m, plot/isocolors.m,
-	plot/isonormals.m, plot/legend.m, plot/print.m,
-	plot/private/__interp_cube__.m, plot/__fltk_print__.m,
-	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
-	statistics/base/quantile.m: Style fixes.
-
-2010-10-19  John W. Eaton  <jwe@octave.org>
-
-	* strings/module.mk (strings_FCN_FILES): Include
-	strings/untabify.m in the list.
-	* strings/untabify.m: Escape { and } characters in docstring.
-
-2010-10-19  Ben Abbott  <bpabbott@mac.com>
-
-	* strings/strjust.m: Add "untabify" and "strrep" to @seealso{} in the
-	doc-string.
-
-2010-10-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/gradient.m, linear-algebra/normest.m,
-	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
-	plot/daspect.m, plot/gnuplot_drawnow.m, plot/pbaspect.m,
-	plot/print.m, signal/periodogram.m:
-	Style fix, replace end by endfor.
-
-2010-10-18  Marco Caliari  <marco.caliari@univr.it>
-
-	* polynomial/polyval.m: Use Horner's method.
-
-2010-10-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Always use gnuplot to display images.
-	* image/image.m: Delete references to image_viewer.
-	* image/image_viewer.m: Delete obsolete function.
-	* image/module.mk (image_FCN_FILES): Remove image/image_viewer.m
-	from the list.
-
-2010-10-18  Gunnar Farneback  <gunnar@lysator.liu.se>
-
-	* general/interp2.m: Fix input checks for cubic
-	interpolation (bug #31352, part 1).
-
-2010-10-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Add examples to the docstring.
-
-2010-10-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__errplot__.m: Remove debugging statement from
-	previous change.
-
-2010-10-17  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/edit.m: Use version 3 in GPL notice.
-
-	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m,
-	@ftp/delete.m, @ftp/dir.m, @ftp/display.m, @ftp/ftp.m,
-	@ftp/loadobj.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/mput.m,
-	@ftp/rename.m, @ftp/rmdir.m, @ftp/saveobj.m,
-	help/__makeinfo__.m, help/__strip_html_tags__.m,
-	help/gen_doc_cache.m, help/get_first_help_sentence.m,
-	help/help.m, help/lookfor.m, help/print_usage.m,
-	help/private/__additional_help_message__.m, help/type.m,
-	help/which.m, io/fileread.m, io/strread.m, io/textread.m,
-	pkg/get_forge_pkg.m, plot/__gnuplot_has_feature__.m,
-	plot/__gnuplot_open_stream__.m, plot/__marching_cube__.m,
-	plot/cla.m, plot/comet.m, plot/daspect.m, plot/isocolors.m,
-	plot/isonormals.m, plot/isosurface.m, plot/pbaspect.m,
-	plot/private/__interp_cube__.m, plot/private/__ghostscript__.m,
-	plot/private/__tight_eps_bbox__.m,
-	plot/private/__gnuplot_has_terminal__.m,
-	polynomial/polyaffine.m, sparse/svds.m, strings/strsplit.m:
-	Use Octave copyright notice instead of generic "This program is
-	free software" notice.
-
-2010-10-18  Ben Abbott  <bpabbott@mac.com>
-
-	* strings/untabify.m: New function to untabify text.
-
-2010-10-17  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/mesh.m, plot/surf.m: Include the 4th input (color) in the
-	docstring.
-
-2010-10-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__errplot__.m, plot/errorbar.m: Allow line and marker
-	types to be set.
-
-2010-10-14  John W. Eaton  <jwe@octave.org>
-
-	* special-matrix/rosser.m: New tests.
-	* special-matrix/wilkinson.m: Fix error message.  New tests.
-	* special-matrix/pascal.m: Error if T is out of range.
-	New tests.
-
-2010-10-14  John W. Eaton  <jwe@octave.org>
-
-	* set/unique.m: Remove check for issparse existence since it is
-	now a built-in function.
-
-2010-10-14  Ben Abbott  <bpabbott@mac.com>
-
-	* strings/strjust.m: Clarify that justification  applies to spaces and
-	null characters.
-
-2010-10-09  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Enable linetypes for gnuplot.
-
-2010-10-09  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/geornd.m,
-	* statistics/distributions/hygecdf.m,
-	* statistics/distributions/hygeinv.m,
-	* statistics/distributions/poissrnd.m,
-	* statistics/distributions/wblrnd.m:
-	Use || instead of | and && instead of & in IF conditions
-	involving scalars.
-
-2010-10-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/__fltk_ginput__.m: Use || instead of | in IF condition.
-
-2010-10-08  Ben Abbott  <bpabbott@mac.com>
-
-	* image/image.m, plot/__go_draw_axes__.m: Do not store flipped image
-	property values when x/ydata descends.
-
-2010-10-07  John W. Eaton  <jwe@octave.org>
-
-	* signal/periodogram.m: Fix parse errors.
-
-2010-10-07  John W. Eaton  <jwe@octave.org>
-
-	* time/datevec.m: Use endfunction to mark end of primary
-	function and subfunctions.
-
-2010-10-07  Rik  <octave@nomad.inbox5.com>
-
-	* polynomial/conv.m: Improve docstring.
-	* signal/fftconv.m: Improve docstring and error messages.
-
-2010-10-07  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/conv.m: Handle optional third argument.  New
-	tests.  Update doc string.
-
-2010-10-06  Ben Abbott  <bpabbott@mac.com>
-
-	* image/image.m: Allow x/ydata to imply a flip of the image.
-	Modify demos.
-
-2010-10-05  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* general/quadv.m: Fix help string and add a test for vector
-	valued functions.
-
-2010-10-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* image/image.m (__img__): Use __image_pixel_size__ to calculate
-	limits
-
-2010-09-28  John P. Swensen  <jpswensen@gmail.com>
-
-	* image/imwrite.m: Call __magick_format_list__ to get list of
-	accepted formats.
-
-2010-09-28  Rik  <octave@nomad.inbox5.com>
-
-	* linear-algebra/logm.m, plot/legend.m, signal/periodogram.m:
-	Untabify scripts.
-
-2010-09-27  Rik  <octave@nomad.inbox5.com>
-
-	* io/dlmwrite.m: Replace non-POSIX '\d' regex pattern.
-
-	* miscellaneous/edit.m, path/savepath.m,
-	plot/__gnuplot_get_var__.m,
-	plot/private/__gnuplot_has_terminal__.m, plot/refreshdata.m,
-	plot/whitebg.m, testfun/runtests.m, time/datestr.m:
-	Use single quotes for regular expression patterns when possible.
-
-	* miscellaneous/ls.m, plot/__gnuplot_ginput__.m,
-	plot/__go_draw_axes__.m, plot/private/__ezplot__.m,
-	testfun/test.m: Remove uses of shorthand character classes
-	within list operators which is unsupported by POSIX regex.
-
-	* pkg/get_forge_pkg.m: Select desired output from regexp
-	rather than ignoring most outputs.
-
-2010-09-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Fix test.
-
-2010-09-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* elfun/lcm.m: Simplify.
-
-2010-09-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Properly crop eps image and fix tests.
-
-	* plot/__go_draw_axes__.m, plot/private/__ezplot__.m,
-	testfun/test.m: Remove uses of shorthand character classes
-	within list operators which is unsupported by POSIX regex.
-
-	* pkg/get_forge_pkg.m: Select desired output from regexp
-	rather than ignoring most outputs.
-
-2010-09-26  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/runtests.m (has_tests): Recode to remove requirement for PCRE.
-	Bug #31025.
-
-2010-09-25  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Recongize gs devices {eps/pdf/ps}write.
-
-2010-09-23  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/bug_report.m: Display information about how to
-	submit bug reports instead of creating and mailing a bug report.
-
-2010-09-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__ghostscript__.m, plot/print.m: When appending, delete
-	temporay files at the end of the ghostscript pipeline.
-
-2010-09-21  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__fltk_print__.m, plot/private/__ghostscript__.m,
-	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
-	plot/print.m: Print via a pipeline.
-
-2010-09-20  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Index location cellstr to obtain a string.
-
-2010-09-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m, plot/axis.m,
-	plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
-	Special treatment activepositionproperty = outerposition for the
-	gnuplot backend. This allows the gnuplot key to be placed outside
-	the plotbox.
-	* plot/private/__plt__.m: Trivial fix for recent legend changeset.
-	* plot/legend.m: Treat line, patch, and surface objects differetly.
-	* plot/__go_draw_axes__.m: Remove left over debug code.
-	* miscellaneous/mkoctfile.m: Change help text to be consistent with
-	the shell version.
-
-2010-09-18  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Modify legend code to use data from legend
-	axes.
-	* plot/__go_draw_figure__.m: Draw draw figure axes, but pass their
-	data to the axis they are associated with.
-	* plot/__get_plt_axes_arg__.m: Ignores axes tagged with "legend".
-	* plot/legend.m: Rewrite to use line and text primitives in a seperate
-	axis.
-	* plot/plot3.m: Support old legend format (eg "-;title'") with new
-	legend code.
-	* plot/private/__plt__.m: Ditto.
-
-2010-09-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Ensure text objects have units of "data".
-
-2010-09-16  John Swensen  <jpswensen@gmail.com>
-
-	* imwrite.m: Accept more image formats.
-
-2010-09-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* signal/periodogram.m: Support additional inputs:
-	win, nfft, Fs, range. Thanks to Alois Schlögl.
-
-2010-09-13  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Use new function __gnuplot_has_terminal__().
-	* plot/private/__gnuplot_has_terminal__.m: New function.
-
-2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/common_size.m: Partially rewrite using cellindexmat.
-
-2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Use @vec instead of @(x) x(:) for faster call.
-
-2010-09-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/get_forge_pkg.m: Allow underscores in pkg names.
-
-2010-09-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__fltk_print__.m, plot/private/__ghostscript__.m,
-	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
-	plot/print.m: Consolidate gs code into print.m.
-	* plot/colorbar.m, plot/axis.m,
-	plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
-	Revert treatment of activepositionproperty from the gnuplot backend.
-	* image/image.m: Fix axis limits for single dimension images, add
-	demo.
-
-2010-09-07  David Bateman  <dbateman@free.fr>
-
-	* plot/plotyy.m: Don't add the __plotyy_axes__ property to the
-	axes handles if iit already exists.
-
-2010-09-06  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* geometry/griddata.m: Allow x, y to be vectors, and z a matrix.
-
-2010-09-03  David Bateman  <dbateman@free.fr>
-
-	* geometry/delaunay.m: Allow the delaunay function to treat
-	matrices of the same size for compatibility.
-
-2010-09-03  Ben Abbott  <bpabbott@mac.com>
-
-	* image/image.m: Matlab compatible axis limits, add demo.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/dlmwrite.m: Don't fclose if file ID is supplied.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/dlmwrite.m: Support file IDs.
-
-2010-07-07  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/what.m: Off by one error.
-
-	* plot/__go_draw_axes__.m: Improve matlab compatibility for "."
-	marker.
-
-2010-08-31  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m,
-	plot/axis.m, plot/colorbar.m, plot/daspect.m, plot/plotyy.m,
-	plot/subplot.m: Treatment of activepositionproperty for gnuplot.
-	* plot/__go_draw_axes__.m: Missing part of last changeset.
-	* plot/__go_draw_axes__.m: Fix specification of pointtype for patches
-	(bug introduced in rev 2f9de135e7f9).
-
-2010-08-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Use gnuplot's pentagon for marker == 'p'.
-
-2010-08-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m, * plot/__go_draw_axes__.m,
-	plot/private/__actual_axis_position__.m: Don't pass figure handle to
-	__calc_dimensions__.
-	* plot/private/__ghostscript__.m: Don't set anti-aliasing options for
-	vector formats.
-	* plot/__print_parse_opts__.m: Fix tests.
-
-2010-08-27  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* plot/__go_draw_axes__.m (__calc_dimensions__): Delete.
-	* plot/__actual_axis_position__.m (__calc_dimensions__): Delete.
-
-2010-08-27  Pascal A. Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* plot/hold.m: If arg is axis handle, get corresponding figure
-	handle from axis parent property.
-
-2010-08-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_print__.m: Properly restore fontsize after eps output.
-	* plot/plotyy.m: Modified demo for changeset 10912 9abc67b4bd4f.
-	* plot/__fltk_print__.m, plot/__go_draw_axes__.m,
-	plot/__go_draw_figure__.m, plot/__gnuplot_print__.m,
-	plot/gnuplot_drawnow.m, plot/print.m, plot/private/__ghostscript__.m,
-	plot/private/__tight_eps_bbox__.m: Unify gnuplot printing with the
-	the fltk backend. Turn figure background color off when printing.
-	Improve the axes font spacing for most gnuplot terminals.
-
-2010-08-26  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: For yaxislocation == 'right' associate text
-	position with 'second' coordinate system.
-
-2010-08-25  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Revert erroneous portion of changeset
-	10910 40cf7cc4ea62.
-
-2010-08-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
-	Properly interpret plotboxaspectratio when 3D objects are viewed as 2D.
-	* plot/colorbar.m: Add demo.
-
-2010-08-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp2.m: Don't use bicubic for consistency (can't handle
-	non-grid interpolation).
-
-2010-08-17  Rik  <octave@nomad.inbox5.com>
-
-	* general/randi.m: Add IMAX check for class "single" numbers.
-
-2010-08-15  Rik  <octave@nomad.inbox5.com>
-
-	* general/randi.m: Add new script for random integers.
-	* general/module.mk: Add randi to build file list.
-	* miscellaneous/unimplemented.m: Remove randi from unimplemented list.
-
-2010-08-15  Rik  <octave@nomad.inbox5.com>
-
-	* image/imwrite.m: Allow writing of 1-bit (B&W) images.
-	Improve documentation string.  Add input validation tests.
-
-2010-08-13  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Double quote paths with spaces.
-
-2010-08-11  Rik  <octave@nomad.inbox5.com>
-
-	* set/unique.m: Handle corner case where sparse matrix is actually full.
-
-2010-08-10  Rik  <octave@nomad.inbox5.com>
-
-	* set/unique.m: Check whether outputs are used before calculating.
-
-2010-08-10  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/module.mk, deprecated/module.mk,
-	statistics/base/values.m, deprecated/values.m: Deprecate values.m
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* miscellaneous/unimplemented.m: Add newlines to format output for
-	easier reading.  Format all lines < 80 characters.  Remove
-	'whitebg' function from unimplemented list.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* @ftp/PKG_ADD: Remove temporary build file from hg version control.
-
-2010-08-09  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m: Default pstex suffix should be '.ps'.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Create .DOCSTRINGS quietly and avoid screen clutter
-	during build.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Run do_subst macro quietly without cluttering screen
-	during build.
-
-2010-08-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Include 'colormap' when converting RGB to mono.
-
-2010-08-07  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__fltk_print__.m: When running pstoedit, crop eps file after it
-	is created. Correctly check error status.
-
-2010-08-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/cell2mat.m: Allow cells of struct arrays.
-
-2010-08-05  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__print_parse_opts__.m, plot/__fltk_print__.m: Don't warn on
-	absence of fig2dev or pstoedit until they are needed.
-	* plot/__print_parse_opts__.m, plot/__fltk_print__.m: Add epslatex,
-	pslatex, and pdflatex output for fltk backend. Use the gs png16m device
-	instead of png256.
-	* plot/print.m: Modify texinfo. Add unwind_protect block.
-
-2010-08-01 Marco Caliari  <marco.caliari@univr.it>
-
-	* general/bicubic.m: Fix bug #30400 when bicubic called with small
-	numbers of arguments.
-
-2010-08-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/sortrows.m: Don't actually permute the rows if not
-	requested.
-
-2010-08-04  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m, plot/__print_parse_opts__.m, plot/__gnuplot_print__.m,
-	plot/private/__ghostscript__.m: plot/__fltk_print__.m: Add ps and pdf
-	output for fltk backend, improved use of ghostscript, and minor
-	improvements.
-
-2010-08-01  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/intwarning.m, general/arrayfun.m, general/cplxpair.m,
-	general/interp1.m, general/interpn.m, general/quadgk.m,
-	general/structfun.m, image/image_viewer.m, io/strread.m,
-	miscellaneous/warning_ids.m, optimization/lsqnonneg.m, pkg/pkg.m,
-	plot/__marching_cube__.m, plot/bar.m, plot/contourc.m, plot/errorbar.m,
-	plot/ezplot.m, plot/isocolors.m, plot/isonormals.m, plot/isosurface.m,
-	plot/stem.m, plot/stem3.m, polynomial/compan.m, polynomial/ppval.m,
-	signal/arch_rnd.m, sparse/pcg.m, sparse/svds.m,
-	special-matrix/invhilb.m, statistics/distributions/wblcdf.m,
-	testfun/assert.m, testfun/demo.m, testfun/speed.m:
-	Grammarcheck documentation.  Add @noindent lines and ensure line
-	length is less than 80.
-
-2010-08-01  Martin Helm  <martin@mhelm.de>
-
-	* plot/isosurface.m: Swap rows and columns of matrix in call to
-	meshgrid.
-
-2010-08-01  Rik  <octave@nomad.inbox5.com>
-
-	* plot/print.m: Update documentation string.  Change to active voice.
-
-2010-07-30  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: add .DOCSTRINGS to the DISTCLEANFILES list
-
-2010-07-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m, plot/__print_parse_opts__.m, plot/__fltk_print__.m,
-	plot/__gnuplot_print__.m: Improved printing for the fltk backend.
-	* plot/private/__ghostscript__.m, plot/private/__tight_eps_bbox__.m:
-	New files to support printing.
-
-2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/expm.m: Special-case scalars and diagonal matrices.
-	Suggested by M. Caliari.
-
-2010-07-26  Rik  <octave@nomad.inbox5.com>
-
-	* linear-algebra/logm.m: Improve documentation string.  Add GPL header.
-	Add additional test block.
-
-2010-07-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/logm.m: Rewrite. Thanks to M. Caliari and R. T. Guy.
-
-2010-07-26  Rik  <octave@nomad.inbox5.com>
-
-	* deprecated/complement.m, deprecated/intwarning.m, general/arrayfun.m,
-	general/circshift.m, general/colon.m, general/common_size.m,
-	general/del2.m, general/flipdim.m, general/fliplr.m, general/flipud.m,
-	general/idivide.m, general/interp1.m, general/interp2.m,
-	general/interp3.m, general/interpn.m, general/loadobj.m,
-	general/quadgk.m, general/rat.m, general/saveobj.m, general/shiftdim.m,
-	geometry/delaunayn.m, image/image_viewer.m, image/imfinfo.m,
-	io/csvread.m, io/csvwrite.m, io/strread.m, linear-algebra/condest.m,
-	linear-algebra/housh.m, linear-algebra/onenormest.m,
-	linear-algebra/qzhess.m, miscellaneous/bincoeff.m,
-	miscellaneous/compare_versions.m, miscellaneous/computer.m,
-	miscellaneous/edit.m, miscellaneous/fileattrib.m,
-	miscellaneous/getfield.m, miscellaneous/license.m, miscellaneous/ls.m,
-	miscellaneous/parseparams.m, miscellaneous/swapbytes.m,
-	miscellaneous/ver.m, miscellaneous/warning_ids.m,
-	optimization/fminbnd.m, optimization/fminunc.m, optimization/fsolve.m,
-	optimization/fzero.m, optimization/glpk.m, optimization/lsqnonneg.m,
-	optimization/pqpnonneg.m, optimization/qp.m, optimization/sqp.m,
-	path/pathdef.m, pkg/pkg.m, plot/__marching_cube__.m, plot/axis.m,
-	plot/colorbar.m, plot/contourc.m, plot/contourf.m, plot/cylinder.m,
-	plot/ezplot.m, plot/isocolors.m, plot/isonormals.m, plot/legend.m,
-	plot/print.m, plot/refreshdata.m, plot/slice.m, plot/subplot.m,
-	plot/surfl.m, polynomial/compan.m, polynomial/mpoles.m,
-	polynomial/poly.m, polynomial/polyaffine.m, polynomial/polyfit.m,
-	polynomial/polygcd.m, polynomial/polyout.m, polynomial/residue.m,
-	polynomial/roots.m, polynomial/unmkpp.m, set/union.m, signal/filter2.m,
-	signal/stft.m, sparse/spdiags.m, specfun/bessel.m, specfun/beta.m,
-	specfun/betaln.m, specfun/nchoosek.m, specfun/nthroot.m,
-	specfun/perms.m, special-matrix/hadamard.m, special-matrix/hankel.m,
-	special-matrix/hilb.m, special-matrix/invhilb.m,
-	special-matrix/toeplitz.m, special-matrix/vander.m,
-	statistics/base/cloglog.m, statistics/base/cor.m,
-	statistics/base/corrcoef.m, statistics/base/kendall.m,
-	statistics/base/kurtosis.m, statistics/base/logit.m,
-	statistics/base/mean.m, statistics/base/median.m,
-	statistics/base/quantile.m, statistics/base/skewness.m,
-	statistics/base/std.m, statistics/base/var.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/wblcdf.m, statistics/tests/cor_test.m,
-	statistics/tests/hotelling_test_2.m, strings/bin2dec.m,
-	strings/cstrcat.m, strings/dec2bin.m, strings/dec2hex.m,
-	strings/findstr.m, strings/hex2dec.m, strings/index.m,
-	strings/isstrprop.m, strings/regexptranslate.m, strings/rindex.m,
-	strings/strcat.m, strings/substr.m, testfun/demo.m, time/asctime.m,
-	time/clock.m, time/ctime.m, time/date.m, time/datenum.m,
-	time/is_leap_year.m: Grammarcheck documentation of m-files.
-	Add newlines between @items for readability.
-
-2010-07-26  Ben Abbott  <bpabbott@mac.com>
-
-	* general/interp1.m: When absent set X equal to the inices of Y.
-	* general/interpn.m: Convert interpolation vectors of non-equal
-	length to nd-arrays.
-
-2010-07-26  Soren Hauberg  <hauberg@gmail.com>
-
-	* image/image.m: Replace parenthesis with curly bracket in Texinfo.
-
-2010-07-25  Rik  <octave@nomad.inbox5.com>
-
-	* image/image.m: Always reverse 'ydir' property when displaying images.
-
-2010-07-19  Rik  <octave@nomad.inbox5.com>
-
-	* help/__makeinfo__.m: Add support to process @nopsell macro.
-	Fix bug when more than one @seealso block exists.
-
-2010-07-19  Rik  <octave@nomad.inbox5.com>
-
-	* general/repmat.m: Add seealso to new repelems function.
-
-2010-07-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/nchoosek.m: Optimize.
-
-2010-07-18  Rik  <octave@nomad.inbox5.com>
-
-	* @ftp/ftp.m, @ftp/mget.m, audio/lin2mu.m, audio/loadaudio.m,
-	audio/mu2lin.m, audio/playaudio.m, audio/saveaudio.m,
-	audio/wavwrite.m, deprecated/create_set.m,
-	deprecated/intwarning.m, deprecated/lchol.m,
-	deprecated/spchol.m, deprecated/spdiag.m, deprecated/spfind.m,
-	deprecated/splchol.m, deprecated/splu.m, deprecated/spmax.m,
-	deprecated/spmin.m, deprecated/spqr.m, deprecated/weibcdf.m,
-	deprecated/weibrnd.m, general/accumarray.m, general/bitset.m,
-	general/colon.m, general/deal.m, general/del2.m,
-	general/genvarname.m, general/gradient.m, general/interp1.m,
-	general/interp2.m, general/interp3.m, general/interpft.m,
-	general/interpn.m, general/nargchk.m, general/nargoutchk.m,
-	general/nextpow2.m, general/num2str.m, general/pol2cart.m,
-	general/polyarea.m, general/prepad.m, general/quadgk.m,
-	general/quadl.m, general/quadv.m, general/rat.m,
-	general/repmat.m, general/shiftdim.m, general/structfun.m,
-	general/trapz.m, geometry/convhull.m, geometry/delaunay.m,
-	geometry/delaunay3.m, geometry/delaunayn.m, geometry/dsearch.m,
-	geometry/dsearchn.m, geometry/griddata.m, geometry/trimesh.m,
-	geometry/triplot.m, geometry/trisurf.m, geometry/voronoi.m,
-	geometry/voronoin.m, help/__makeinfo__.m, help/gen_doc_cache.m,
-	help/get_first_help_sentence.m, help/print_usage.m, help/type.m,
-	image/brighten.m, image/colormap.m, image/image.m,
-	image/imagesc.m, image/imfinfo.m, image/imshow.m,
-	image/imwrite.m, image/ind2rgb.m, io/dlmwrite.m, io/fileread.m,
-	io/strread.m, io/textread.m, linear-algebra/cond.m,
-	linear-algebra/condest.m, linear-algebra/ishermitian.m,
-	linear-algebra/onenormest.m, miscellaneous/bzip2.m,
-	miscellaneous/dir.m, miscellaneous/dos.m, miscellaneous/edit.m,
-	miscellaneous/gzip.m, miscellaneous/mkoctfile.m,
-	miscellaneous/orderfields.m, miscellaneous/parseparams.m,
-	miscellaneous/perl.m, miscellaneous/unix.m,
-	miscellaneous/unpack.m, miscellaneous/version.m,
-	miscellaneous/zip.m, optimization/fminbnd.m,
-	optimization/fminunc.m, optimization/fsolve.m,
-	optimization/glpk.m, optimization/glpkmex.m,
-	optimization/lsqnonneg.m, optimization/optimget.m,
-	optimization/optimset.m, optimization/pqpnonneg.m,
-	optimization/private/__fdjac__.m, optimization/qp.m,
-	pkg/get_forge_pkg.m, pkg/pkg.m, plot/__fltk_print__.m,
-	plot/__gnuplot_print__.m, plot/ancestor.m, plot/area.m,
-	plot/axes.m, plot/axis.m, plot/bar.m, plot/barh.m, plot/box.m,
-	plot/caxis.m, plot/cla.m, plot/clabel.m, plot/close.m,
-	plot/colorbar.m, plot/comet.m, plot/compass.m, plot/contour.m,
-	plot/contour3.m, plot/contourc.m, plot/contourf.m,
-	plot/cylinder.m, plot/ellipsoid.m, plot/ezcontour.m,
-	plot/ezcontourf.m, plot/ezmesh.m, plot/ezmeshc.m, plot/ezplot.m,
-	plot/ezplot3.m, plot/ezpolar.m, plot/ezsurf.m, plot/ezsurfc.m,
-	plot/feather.m, plot/figure.m, plot/fill.m, plot/findall.m,
-	plot/findobj.m, plot/fplot.m, plot/gcbo.m, plot/grid.m,
-	plot/hggroup.m, plot/hidden.m, plot/line.m, plot/meshgrid.m,
-	plot/ndgrid.m, plot/pareto.m, plot/patch.m, plot/pcolor.m,
-	plot/peaks.m, plot/pie.m, plot/plotmatrix.m, plot/plotyy.m,
-	plot/print.m, plot/private/__actual_axis_position__.m,
-	plot/quiver.m, plot/quiver3.m, plot/refresh.m, plot/rose.m,
-	plot/scatter.m, plot/scatter3.m, plot/shading.m, plot/slice.m,
-	plot/specular.m, plot/sphere.m, plot/subplot.m, plot/surfl.m,
-	plot/surfnorm.m, plot/text.m, plot/title.m, plot/view.m,
-	plot/whitebg.m, plot/xlabel.m, plot/xlim.m, plot/ylabel.m,
-	plot/ylim.m, plot/zlabel.m, plot/zlim.m, polynomial/compan.m,
-	polynomial/mkpp.m, polynomial/mpoles.m, polynomial/pchip.m,
-	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
-	polynomial/ppval.m, polynomial/spline.m, set/intersect.m,
-	set/powerset.m, set/setdiff.m, set/setxor.m, set/union.m,
-	set/unique.m, signal/fftshift.m, signal/filter2.m,
-	signal/ifftshift.m, sparse/bicgstab.m, sparse/cgs.m,
-	sparse/etreeplot.m, sparse/gplot.m, sparse/pcg.m, sparse/pcr.m,
-	sparse/spdiags.m, sparse/speye.m, sparse/sprand.m,
-	sparse/sprandn.m, sparse/sprandsym.m, sparse/spstats.m,
-	sparse/spy.m, sparse/treelayout.m, sparse/treeplot.m,
-	specfun/bessel.m, specfun/legendre.m, specfun/pow2.m,
-	statistics/base/center.m, statistics/base/histc.m,
-	statistics/base/kendall.m, statistics/base/meansq.m,
-	statistics/base/prctile.m, statistics/base/quantile.m,
-	statistics/base/range.m, statistics/base/std.m,
-	statistics/base/table.m, statistics/distributions/betacdf.m,
-	statistics/distributions/betarnd.m,
-	statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/empirical_rnd.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/fcdf.m,
-	statistics/distributions/frnd.m,
-	statistics/distributions/gamrnd.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/hygernd.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/laplace_rnd.m,
-	statistics/distributions/logistic_rnd.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/normrnd.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/tcdf.m,
-	statistics/distributions/trnd.m,
-	statistics/distributions/unidrnd.m,
-	statistics/distributions/unifcdf.m,
-	statistics/distributions/unifrnd.m,
-	statistics/distributions/wblcdf.m,
-	statistics/distributions/wblrnd.m,
-	statistics/tests/kolmogorov_smirnov_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m,
-	statistics/tests/wilcoxon_test.m, strings/base2dec.m,
-	strings/index.m, strings/mat2str.m, strings/strchr.m,
-	strings/substr.m, strings/validatestring.m, testfun/assert.m,
-	testfun/example.m, testfun/fail.m, testfun/speed.m,
-	testfun/test.m, time/calendar.m, time/date.m, time/datenum.m,
-	time/datetick.m, time/datevec.m:
-	Grammarcheck documentation of m-files.
-
-2010-07-17  Rik  <octave@nomad.inbox5.com>
-
-	* audio/lin2mu.m, general/common_size.m, general/interp1.m,
-	general/interp2.m, general/interpn.m, general/quadl.m,
-	geometry/dsearchn.m, geometry/voronoi.m, geometry/voronoin.m,
-	image/hsv2rgb.m, image/imread.m, image/rgb2hsv.m,
-	linear-algebra/commutation_matrix.m, linear-algebra/condest.m,
-	linear-algebra/expm.m, linear-algebra/krylov.m,
-	linear-algebra/onenormest.m, miscellaneous/perl.m,
-	plot/linkprop.m, plot/plot.m, plot/print.m, plot/stem3.m,
-	signal/diffpara.m, signal/stft.m, sparse/pcg.m, sparse/pcr.m,
-	specfun/primes.m, special-matrix/hadamard.m, special-matrix/hankel.m,
-	special-matrix/invhilb.m, special-matrix/pascal.m,
-	special-matrix/rosser.m, special-matrix/toeplitz.m,
-	special-matrix/vander.m, special-matrix/wilkinson.m,
-	testfun/speed.m: Spellcheck documentation.
-
-2010-07-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/flipdim.m: Suuport flipping about trailing singleton
-	dimension.
-
-2010-07-14  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_print__.m: Fix broken options "-orientation",
-	"-special_flag", "-debug_file", "-tight_flag", and "-printer".
-
-2010-07-14  Rik  <octave@nomad.inbox5.com>
-
-       * linear-algebra/normest.m: Improve documentation.  Add better input
-       validation.  Use same variable names in code as in documentation.
-
-2010-07-14  Marco Caliari  <marco.caliari@univr.it>
-
-       * linear-algebra/normest.m: Set the "state" of the random number
-       generator to trace(A).
-
-2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/cell2mat.m: Optimize so as to minimize the number of
-	concats.
-
-2010-07-12  John W. Eaton  <jwe@octave.org>
-
-	* general/display.m: Print usage message if nargin != 1.
-	Bug #30421.
-
-2010-07-09  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/interp2.m: improve input argument handling and
-	allow not equally spaced griddata (bug #29601)
-
-2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Fix incorrect handling of nondefault fill
-	values in min/max reductions of integers.
-
-2010-07-07  David Bateman  <dbateman@free.fr>
-
-	* __next_line_color__.m: Allow conditional initialisation of the
-	color_rotation variable.
-	* __next_line_style__.m: Allow conditional initialisation of the
-	style_rotation variable.
-	* hold.m: Support "hold all".
-	* newplot.m: Conditionally initialisation the line style and color
-	based on the __hold_all__ axes property.
-
-2010-07-04  Soren Hauberg  <hauberg@gmail.com>
-
-	* polynomial/deconv.m: ensure that the orientation of the third
-	input to 'filter' matches the orientation of 'y'.
-
-2010-07-02  Rik  <octave@nomad.inbox5.com>
-
-	* audio/wavread.m: Correctly handle non-word aligned data chunks.
-	(bug #30309).
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* plot/stairs.m: Add additional calling forms to documentation.
-
-2010-06-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__plt__.m: Replace usage message with error.
-	* plot/loglog.m, plot/plot.m, plot/polar.m, plot/semilogx.m,
-	plot/semilogy.m: Call print_usage if no args are supplied.
-	Add additional calling forms to documentation.
-
-2010-06-24  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* plot/print.m: convert to wrapper for backend specific print functions
-	* plot/__gnuplot_print__.m: New gnuplot specific print function,
-	largely based on the former print.m
-	* plot/__fltk_print__.m: New fltk specific print function
-	* plot/__print_parse_opts__.m: New option parser for print
-	functions, largely based on the former print.m
-	* plot/module.mk: Add new m-files here
-
-2010-06-23  David Bateman  <dbateman@free.fr>
-
-	* whitebg.m: New function.
-	* module.mk (plot_FCN_FILES): Add it here.
-	* __go_draw_figure__.m: Set the border color to the inverse of the
-	background color.
-
-2010-06-17  Brad Froehle  <brad.froehle@gmail.com>
-
-	* sparse/spy.m: Fix typo.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* set/union.m: Remove seealso reference to deprecated function.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* @ftp/dir.m, @ftp/ftp.m, @ftp/mget.m, @ftp/mput.m, @ftp/rename.m,
-	deprecated/fstat.m, general/accumdim.m, general/interp1.m,
-	linear-algebra/ishermitian.m, linear-algebra/issymmetric.m,
-	miscellaneous/substruct.m, optimization/fminbnd.m,
-	optimization/fsolve.m, plot/bar.m, plot/daspect.m, plot/pbaspect.m,
-	plot/print.m, polynomial/mkpp.m, polynomial/ppval.m, set/union.m,
-	signal/unwrap.m, specfun/nthroot.m: Periodic grammar check of
-	documentation to ensure a common format.
-
-2010-06-14  Rik  <octave@nomad.inbox5.com>
-
-	* plot/image.m: Flip data, rather than y-axis, for images.  (bug #30033)
-
-2010-06-12  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/scatter.m: New demo.
-	* plot/private/__scatter__.m: Properly set default value markersize
-	and marker type.
-
-2010-06-12  Rik  <octave@nomad.inbox5.com>
-
-	* plot/scatter.m: Add new calling forms of function to documentation.
-
-2010-06-10  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__scatter__.m, plot/scatter.m: Honor Matlab color
-	settings.
-	* general/prepad.m: Fix typo 'dimm' -> 'dim'.
-
-2010-06-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/vec.m: Remove (make built-in).
-	* linear-algebra/module.mk: Update.
-
-2010-06-09  Rik  <octave@nomad.inbox5.com>
-
-	* general/flipdim.m, general/accumdim.m: Use > 1 test to find
-	first non-singleton dimension rather than != 1.
-
-2010-06-08  Rik  <octave@nomad.inbox5.com>
-
-	* general/cumtrapz.m, general/postpad.m, general/prepad.m,
-	general/shift.m, general/trapz.m, signal/unwrap.m: Use common
-	method to find first non-singleton dimension.
-
-2010-06-08  Rik  <octave@nomad.inbox5.com>
-
-	* general/rotdim.m: Modify function to use same variable names
-	as documentation.
-
-2010-06-08  Rik  <octave@nomad.inbox5.com>
-
-	* general/cart2pol.m, general/cart2sph.m, general/pol2cart.m,
-	general/sph2cart.m: Add option to operate on column matrix of
-	coordinates.
-
-2010-06-08  Rik  <octave@nomad.inbox5.com>
-
-	* general/arrayfun.m, general/cart2pol.m, general/cart2sph.m,
-	general/idivide.m, general/logspace.m, general/sph2cart.m,
-	general/structfun.m, image/imagesc.m, io/csvread.m, io/csvwrite.m,
-	linear-algebra/cond.m, linear-algebra/condest.m,
-	linear-algebra/isdefinite.m, linear-algebra/null.m,
-	linear-algebra/orth.m, miscellaneous/list_primes.m,
-	optimization/fminunc.m, optimization/fzero.m, path/matlabroot.m,
-	plot/axis.m, plot/plot.m, plot/semilogx.m, plot/semilogxerr.m,
-	plot/semilogy.m, plot/semilogyerr.m, plot/stem.m, polynomial/poly.m,
-	polynomial/polyder.m, polynomial/polyderiv.m, polynomial/polyfit.m,
-	polynomial/polyout.m, polynomial/polyval.m, set/ismember.m,
-	sparse/spfun.m, specfun/betaln.m, statistics/base/mean.m,
-	statistics/base/median.m, statistics/base/mode.m, statistics/base/ols.m,
-	statistics/base/ranks.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/wblpdf.m: Improve documentation strings
-
-2010-06-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/pkg.m: Support pkg list -forge.
-
-2010-06-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/get_forge_pkg.m: New function.
-	* pkg/module.mk: Add it here.
-	* pkg/pkg.m: Support -forge switch for auto-downloading OctaveForge
-	packages.
-
-2010-06-03  Alois Schlögl
-
-	* signal/arch_test.m, statistics/tests/bartlett_test.m,
-	statistics/tests/chisquare_test_homogeneity.m,
-	statistics/tests/chisquare_test_independence.m,
-	statistics/tests/manova.m, statistics/tests/mcnemar_test.m,
-	statistics/tests/run_test.m, statistics/distributions/chi2pdf.m:
-	Replace calls to obsolete chisquare_cdf with chi2cdf.
-
-2010-06-03  Rik  <octave@nomad.inbox5.com>
-
-	* plot/private/__plt__.m: Add newline to usage message.
-
-2010-06-02  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/sqp.m: Overhaul sqp code.
-	Guarantee equivalent results if sqp called with or wihout bounds
-	(bug #29989).  Simplify input option handling and add %tests
-	to check validation code.  Rewrite documentation string.
-
-2010-06-01  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/fminbnd.m: Remove unused persistent variable.
-
-2010-06-01  Rik  <octave@nomad.inbox5.com>
-
-	* plot/private/__contour__.m: Correctly size X and Y when only Z
-	specified (bug #30002).
-
-2010-05-31  Rik  <octave@nomad.inbox5.com>
-
-	* specfun/legendre.m: Orient row vector correctly (bug #29997).
-	Add input validation for negative values and %tests to check
-	validation routines.
-
-2010-05-30  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/svds.m: Overhaul code.
-	Return smallest singular values if sigma == 0 (Bug #29721).
-	Avoid calculating U and V matrices unless requested.
-	Correctly handle zero matrix input.
-	Improve documentation string.
-
-2010-05-26  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/base/histc.m, statistics/base/iqr.m,
-	statistics/base/kurtosis.m, statistics/base/mode.m,
-	statistics/base/ranks.m, statistics/base/run_count.m,
-	statistics/base/skewness.m, statistics/base/statistics.m,
-	statistics/base/studentize.m: Improve validation of input arguments.
-
-2010-05-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/isprime.m: Fix and further optimize.
-
-2010-05-26  Rik  <octave@nomad.inbox5.com>
-
-	* plot/legend.m: Improve documentation string.
-
-2010-05-26  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/svds.m: Check struct input arguments.  Overhaul documentation.
-
-2010-05-26  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Key labels for specified objects.
-	* plot/ancestor.m: Support vectors of handles.
-
-2010-05-26  Rik  <octave@nomad.inbox5.com>
-
-	* sparse/svds.m: Initialize ARPACK starting vector in svds test code.
-	Bug #29721.
-
-2010-05-25  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/spline.m: Ignore NaNs within input vectors.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/primes.m: Use logical masks rather than numeric.
-	* specfun/isprime.m: Rewrite using isprime.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/unimplemented.m: Don't mention onCleanup (supported).
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/median.m: Ensure NaNs where needed. Simplify first
-	non-singleton dimension computation.
-
-2010-05-24  Rik  <octave@nomad.inbox5.com>
-
-	* general/private/__isequal__.m, image/image.m,
-	statistics/base/ranks.m: Replace calls to deprecated functions.
-
-2010-05-23  Rik  <octave@nomad.inbox5.com>
-
-	* image/imshow.m: Scale image point color according to colormap.
-	Bug #29926.
-
-2010-05-16  Rik  <octave@nomad.inbox5.com>
-
-	* plot/semilogx.m, plot/semilogy.m: Plot minor ticks for semilog plots.
-
-2010-05-16  Rik  <octave@nomad.inbox5.com>
-
-	* audio/loadaudio.m, audio/playaudio.m, audio/saveaudio.m,
-	audio/wavread.m, general/bicubic.m, general/bitcmp.m, general/bitget.m,
-	general/bitset.m, general/cplxpair.m, general/del2.m,
-	general/gradient.m, general/interp2.m, general/interp3.m,
-	general/interpn.m, general/postpad.m, general/prepad.m,
-	general/private/__splinen__.m, image/image_viewer.m, image/imagesc.m,
-	image/saveimage.m, linear-algebra/expm.m, linear-algebra/krylov.m,
-	miscellaneous/edit.m, miscellaneous/private/__xzip__.m,
-	miscellaneous/what.m, optimization/glpk.m, optimization/optimset.m,
-	optimization/pqpnonneg.m, path/pathdef.m, plot/__go_draw_axes__.m,
-	plot/__marching_cube__.m, plot/gnuplot_drawnow.m, plot/ishold.m,
-	plot/isocolors.m, plot/isonormals.m, plot/print.m,
-	plot/private/__add_datasource__.m, plot/private/__color_str_rgb__.m,
-	plot/private/__errplot__.m, plot/private/__interp_cube__.m,
-	plot/shading.m, plot/specular.m, polynomial/deconv.m,
-	polynomial/polyint.m, polynomial/ppint.m, set/powerset.m,
-	signal/arch_fit.m, signal/arch_test.m, signal/durbinlevinson.m,
-	special-matrix/hadamard.m, statistics/distributions/unidrnd.m,
-	statistics/distributions/unifinv.m,
-	statistics/models/logistic_regression.m, strings/strjust.m,
-	testfun/rundemos.m, testfun/runtests.m, testfun/test.m, time/datenum.m:
-	Print name of function in error() string messages.
-
-2010-05-16  Rik  <octave@nomad.inbox5.com>
-
-	* plot/contourc.m, plot/private/__contour__.m,
-	plot/surface.m, plot/surfnorm.m: Check input
-	arguments for size and type (bug #29861).
-
-2010-05-13  John W. Eaton  <jwe@octave.org>
-
-	* help/help.m: Avoid unnecessary use of varargout.
-
-2010-05-13   Qianqian Fang  <fangq>
-
-	* miscellaneous/tempdir.m: Add filesep to end of tempdir (bug #29864).
-
-2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/textread.m: Fix typo.
-
-2010-05-08  David Gesswein  <djg@pdp8online.com>
-
-	* io/dlmwrite.m: Correctly set output precision (#29870).
-
-2010-05-12  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* help/help.m: Allow docstring to be returned as output, and
-	correct docstring.
-
-2010-05-08  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/test.m: Don't abort testing when skipping a testif block
-
-2010-05-05  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/tests/cor_test.m, statistics/tests/t_test.m,
-	statistics/tests/t_test_2.m, statistics/tests/t_test_regression.m,
-	statistics/tests/welch_test.m: Replace deprecated function calls.
-	Patch provided by Alois Schlögl.
-
-2010-05-02  Rik  <octave@nomad.inbox5.com>
-
-	* linear-algebra/cond.m: Add TeX equation to documentation
-
-2010-05-02  Peter van den Biggelaar  <peter@biglr.net>
-
-	* plot/close.m: No error on "close([])".
-
-2010-05-01  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Remove gnuplot errorbar code.
-
-2010-04-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/loglogerr.m, plot/semilogxerr.m, plot/semilogyerr.m:
-	Add demos.
-	* plot/private/__errplot__.m: Fix bug parsing errorbar style.
-	* plot/private/__errplot__.m: Implement errorbars in the Matlab style.
-
-2010-04-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/errorbar.m: Modify demo.
-	* plot/private/__errplot__.m: Fix bug for boxxy errorbar.
-	* plot/errorbar.m: Add demos.
-
-2010-04-27  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__errplot__.m: Update the marker in a seperate
-	listener function.
-
-2010-04-27  Rik  <octave@nomad.inbox5.com>
-
-	* plot/private/__go_draw_axes__.m: Use "." for marker when plotting
-	with errorbars.  (bug #29057)
-
-2010-04-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__errplot__.m: Add missing semicolon line terminations.
-
-2010-04-27  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__default_plot_options_.m: New option errorstyle.
-	* plot/private/__pltopt__.m: Use errorstyle here seperately from
-	the linestyle so that both can be set.
-	* plot/private/__errcomm__.m: Allow for the fact that matrices
-	to __errplot__ with return a vector of handles.
-	* plot/private/__errplot__.m: Allow for default linestyles.
-
-	* plot/private/__errplot__.m: Set the errorbar marker to "none".
-
-2010-04-26  David Bateman  <dbateman@free.fr>
-
-	* plot/bar.m: Document the use of the colormap for the color of
-	the bars.
-
-	* plot/private/__errplot__.m: Allow x, box and xy errorbars with
-	different syntax.
-
-	* plot/private/__errplot__.m: Allow matlab style linestyles, and
-	support setting the markers.
-
-2010-04-24  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__patch__.m: Correct order of calling setdata and
-	setvertexdata.
-
-2010-04-25  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/__go_draw_figure__.m: Hidden axes may have visible children.
-
-2010-04-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Set figure color property to 'none' when printing.
-
-2010-04-24  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Correct fill of diamond markers
-
-2010-04-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Consistent placement of axes for ps vs
-	other gnuplot terminals.
-
-2010-04-23  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m: Fix colorbar() bugs for manual plotboxaspectratio.
-	* plot/axis.m: For 'axis normal' restore plotboxaspectratio.
-
-2010-04-23  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc (extract_help_text): Use C++ static_cast instead of
-	C-style cast.
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* audio/loadaudio.m, audio/mu2lin.m, audio/playaudio.m,
-	audio/saveaudio.m, audio/wavread.m, audio/wavwrite.m,
-	deprecated/cellidx.m, deprecated/intwarning.m,
-	deprecated/lchol.m, deprecated/spatan2.m, deprecated/spchol.m,
-	deprecated/spchol2inv.m, deprecated/spcholinv.m,
-	deprecated/spcumprod.m, deprecated/spcumsum.m,
-	deprecated/spdet.m, deprecated/spdiag.m, deprecated/spfind.m,
-	deprecated/spinv.m, deprecated/spkron.m, deprecated/splchol.m,
-	deprecated/split.m, deprecated/splu.m, deprecated/spmax.m,
-	deprecated/spmin.m, deprecated/spprod.m, deprecated/spqr.m,
-	deprecated/spsum.m, deprecated/spsumsq.m, elfun/lcm.m,
-	general/bicubic.m, general/cell2mat.m, general/circshift.m,
-	general/cplxpair.m, general/cumtrapz.m, general/dblquad.m,
-	general/del2.m, general/gradient.m, general/idivide.m,
-	general/int2str.m, general/interp1.m, general/interp2.m,
-	general/interp3.m, general/interpn.m, general/isa.m,
-	general/num2str.m, general/postpad.m, general/prepad.m,
-	general/private/__isequal__.m, general/quadgk.m,
-	general/quadl.m, general/quadv.m, general/rat.m,
-	general/rotdim.m, general/shift.m, general/sortrows.m,
-	general/structfun.m, general/trapz.m, geometry/griddata.m,
-	geometry/griddata3.m, geometry/inpolygon.m, geometry/rectint.m,
-	geometry/trimesh.m, geometry/triplot.m, geometry/trisurf.m,
-	geometry/voronoi.m, help/doc.m, help/help.m, help/which.m,
-	io/dlmwrite.m, io/strread.m, linear-algebra/condest.m,
-	linear-algebra/cross.m, linear-algebra/krylov.m,
-	linear-algebra/null.m, linear-algebra/onenormest.m,
-	linear-algebra/orth.m, linear-algebra/rank.m,
-	linear-algebra/rref.m, miscellaneous/bincoeff.m,
-	miscellaneous/cast.m, miscellaneous/compare_versions.m,
-	miscellaneous/copyfile.m, miscellaneous/dir.m,
-	miscellaneous/dump_prefs.m, miscellaneous/edit.m,
-	miscellaneous/fileattrib.m, miscellaneous/fileparts.m,
-	miscellaneous/fullfile.m, miscellaneous/license.m,
-	miscellaneous/ls.m, miscellaneous/ls_command.m,
-	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
-	miscellaneous/orderfields.m, miscellaneous/perl.m,
-	miscellaneous/run.m, miscellaneous/substruct.m,
-	miscellaneous/swapbytes.m, miscellaneous/tar.m,
-	miscellaneous/unpack.m, miscellaneous/what.m,
-	miscellaneous/zip.m, optimization/fminunc.m,
-	optimization/fsolve.m, optimization/glpk.m, optimization/qp.m,
-	optimization/sqp.m, path/pathdef.m, path/savepath.m, pkg/pkg.m,
-	plot/__gnuplot_get_var__.m, plot/__gnuplot_ginput__.m,
-	plot/__go_draw_axes__.m, plot/__next_line_color__.m,
-	plot/__next_line_style__.m, plot/__plt_get_axis_arg__.m,
-	plot/ancestor.m, plot/area.m, plot/axes.m, plot/axis.m,
-	plot/box.m, plot/cla.m, plot/clabel.m, plot/clf.m, plot/close.m,
-	plot/colorbar.m, plot/comet.m, plot/compass.m, plot/contourf.m,
-	plot/cylinder.m, plot/ellipsoid.m, plot/feather.m, plot/fill.m,
-	plot/findobj.m, plot/fplot.m, plot/gnuplot_drawnow.m,
-	plot/grid.m, plot/gtext.m, plot/hidden.m, plot/hist.m,
-	plot/hold.m, plot/ishold.m, plot/isonormals.m,
-	plot/isosurface.m, plot/legend.m, plot/linkprop.m, plot/meshz.m,
-	plot/newplot.m, plot/pareto.m, plot/pie.m, plot/plot3.m,
-	plot/plotmatrix.m, plot/plotyy.m, plot/polar.m,
-	plot/private/__actual_axis_position__.m,
-	plot/private/__add_datasource__.m,
-	plot/private/__axes_limits__.m, plot/private/__axis_label__.m,
-	plot/private/__bar__.m, plot/private/__clabel__.m,
-	plot/private/__contour__.m, plot/private/__errcomm__.m,
-	plot/private/__errplot__.m, plot/private/__ezplot__.m,
-	plot/private/__patch__.m, plot/private/__plt__.m,
-	plot/private/__pltopt__.m, plot/private/__quiver__.m,
-	plot/private/__scatter__.m, plot/private/__stem__.m,
-	plot/refreshdata.m, plot/ribbon.m, plot/rose.m, plot/slice.m,
-	plot/sombrero.m, plot/sphere.m, plot/stairs.m, plot/subplot.m,
-	plot/surf.m, plot/surface.m, plot/surfl.m, plot/surfnorm.m,
-	plot/text.m, plot/view.m, polynomial/polyderiv.m,
-	polynomial/polygcd.m, polynomial/polyout.m, polynomial/spline.m,
-	set/intersect.m, set/setdiff.m, set/setxor.m, signal/unwrap.m,
-	sparse/pcg.m, sparse/pcr.m, sparse/spaugment.m,
-	sparse/spconvert.m, sparse/sprand.m, sparse/sprandsym.m,
-	sparse/svds.m, sparse/treelayout.m, sparse/treeplot.m,
-	specfun/nchoosek.m, specfun/primes.m, special-matrix/toeplitz.m,
-	statistics/base/iqr.m, statistics/base/kurtosis.m,
-	statistics/base/qqplot.m, statistics/base/quantile.m,
-	statistics/base/ranks.m, statistics/base/run_count.m,
-	statistics/base/skewness.m, statistics/base/statistics.m,
-	statistics/base/studentize.m, statistics/base/var.m,
-	statistics/distributions/betapdf.m,
-	statistics/distributions/betarnd.m,
-	statistics/distributions/binocdf.m,
-	statistics/distributions/binoinv.m,
-	statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/fcdf.m,
-	statistics/distributions/finv.m,
-	statistics/distributions/fpdf.m,
-	statistics/distributions/frnd.m,
-	statistics/distributions/gampdf.m,
-	statistics/distributions/gamrnd.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/hygepdf.m,
-	statistics/distributions/laplace_inv.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/nbincdf.m,
-	statistics/distributions/nbininv.m,
-	statistics/distributions/nbinpdf.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/normrnd.m,
-	statistics/distributions/poissinv.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/tinv.m,
-	statistics/distributions/tpdf.m,
-	statistics/distributions/trnd.m,
-	statistics/distributions/unidrnd.m,
-	statistics/distributions/unifrnd.m,
-	statistics/distributions/wblpdf.m,
-	statistics/distributions/wblrnd.m, strings/cstrcat.m,
-	strings/deblank.m, strings/findstr.m, strings/isstrprop.m,
-	strings/regexptranslate.m, strings/strtok.m, testfun/assert.m,
-	testfun/example.m, testfun/fail.m, testfun/rundemos.m,
-	testfun/runtests.m, testfun/speed.m, testfun/test.m,
-	time/datestr.m, time/weekday.m: Untabify.
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* geometry/griddata.m, geometry/griddatan.m, geometry/tsearchn.m:
-	Replace nan with NaN for nice visual cue.
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/gplot.m: Eliminate parsing error for NaN inside
-	of matrix declaration.
-
-2010-04-22  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/sqp.m: Return correct value (101) on succes.
-	Fixes bug #29577.
-
-2010-04-22  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/glpk.m: Eliminate repmat (Inf, x , y) and just
-	use Inf (x,y).
-
-2010-04-22  Rik  <octave@nomad.inbox5.com>
-
-	* general/rat.m, sparse/gplot.m, strings/base2dec.m,
-	geometry/triplot.m, optimization/sqp.m, optimization/qp.m,
-	statistics/base/run_count.m, statistics/base/ranks.m:
-	Eliminate NaN*ones and Inf*ones constructs and just use Nan()
-	and Inf().
-
-2010-04-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m: Allow 'peer' option to be specified.
-	* plot/colorbar.m: Consistent treatment of plotboxaspectratio, and
-	add listener for plotboxaspectratiomode.
-	* plot/axis.m: Consistent treatment of plotboxaspectratio.
-	* plot/__go_draw_axes__.m: Consistently determine axes position.
-
-2010-04-17  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/private/__actual_axis_position__.m: Fix bug when restoring
-	figure position property to its original value.
-
-2010-04-16  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_figure__.m: Pass bg_is_set to __go_draw_axes__. Don't
-	unset the background figure color.
-	* plot/__go_draw_axes__.m: Unset the background figure color here.
-
-	* statistics/distributions/*: Replace constructs like "NaN * one()"
-	with "NaN()" and  "Inf * ones ()" with "Inf()".
-
-2010-04-15  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/discrete_pdf.m: Reimplement using lookup.
-	* statistics/distributions/discrete_inv.m: Reimplement using lookup.
-	* statistics/distributions/discrete_cdf.m: typo in last patch.
-
-2010-04-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/distributions/stdnormal_cdf.m: Calculate using erfc.
-
-2010-04-13  David Bateman  <dbateman@free.fr>
-
-	* statistics/discrete_cdf.m: Reimplement using lookup.
-
-2010-04-13  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* plot/__fltk_ginput__.m: New functions, implement ginput for
-	fltk backend.
-
-2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* sparse/spalloc.m: Remove.
-	* sparse/module.mk: Update.
-
-2010-04-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/plotyy.m: Add listener for dataaspectratiomode.
-
-2010-04-12  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/loglog.m: Minor ticks on by default for loglog plots.
-	* plot/__plt_get_axis_arg__.m, plot/newplot.m: Respect the nextplot
-	property value of 'new' for axes and 'replacechildren' for axes and
-	figures.
-
-2010-04-10  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/__go_draw_figure__.m: Don't set background for non-visible axes.
-
-2010-04-07  John W. Eaton  <jwe@octave.org>
-
-	* testfun/runtests.m: New function.
-	* testfun/module.mk (testfun_FCN_FILES): Add it to the list.
-
-2010-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* statistics/cut.m: Modify cut to use the same decision criteria
-	as histc when deciding whether a data point is inside or outside
-	interval.
-
-2010-04-02  Marc Vinyals  <mrc_timer@users.sourceforge.net>
-
-	* signal/arma_rnd.m: fix typo in test.
-
-2010-04-02  Marc Vinyals  <mrc_timer@users.sourceforge.net>
-
-	* signal/arma_rnd.m: fix typo in test.
-
-2010-03-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/factor.m: Use rem to check divisibility.
-
-2010-03-27  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/__go_draw_figure__.m: Untabify.
-	* plot/print.m: Provide default suffixes & validate hardcopy format.
-
-2010-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: Handle the breakdown if initial bracketing
-	contains an exact root. Improve docstring.
-
-2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/module.mk: Add unimplemented.m here.
-
-2010-03-25  Ben Abbott  <bpabbot@mac.com>
-
-	* general/cell2mat.m: Add test for cells of cells.
-
-2010-03-24  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/__go_draw_axes__.m: Unset logscale also for unused gnuplot
-	axis locations.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help/help.m: Maybe warn about unimplemented Matlab functions.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/unimplemented.m: New function.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/cell2mat.m: Support cells of cells.
-
-2010-03-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/refreshdata.m: Don't use cell2mat on cell array of cell arrays.
-
-2010-03-22  Soren Hauberg  <hauberg@gmail.com>
-
-	* image/gmap40.m, image/hot.m, image/hsv2rgb.m, image/image.m,
-	image/image_viewer.m, image/imfinfo.m, image/imread.m, image/imshow.m,
-	image/saveimage: Detabify.
-
-2010-03-21  Soren Hauberg  <hauberg@gmail.com>
-
-	* general/quadv.m: Replace 'quadl' with 'quadv' in help text.
-
-2010-03-20  Soren Hauberg  <hauberg@gmail.com>
-
-	* general/interp2.m: For nearest neighbour interpolation ceil
-	(instead of floor) at the center of the data intervals to be
-	compatible with Matlab.  Add test.
-	* general/interpn.m: Ditto.
-
-2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strmatch.m (strtrimr): Rewrite for correct behavior.
-	Add test.
-
-2010-03-18  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/print.m: Add '-append' option.
-
-2010-03-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: print.m: Detabify.
-
-2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/nthroot.m: Remove.
-	* general/module.mk: Update.
-	* specfun/nthroot.m: New source.
-	* specfun/module.mk: Update.
-
-2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/intwarning.m: Deprecate.
-
-2010-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/index.m: Make it a wrapper for strfind.
-
-2010-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strchr.m: Optimize.
-
-2010-03-05  Soren Hauberg  <hauberg@gmail.com>
-
-	* pkg/pkg.m (write_index): include classes in autogenerated
-	INDEX files.
-
-2010-03-05  Soren Hauberg  <hauberg@gmail.com>
-
-	* plot/fplot.m: Ensure that 'limits' is a 2 or 4 vector, and
-	that 'fn' is a function.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* testfun/test.m: Support catching warnings and errors by IDs.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumdim.m: Optimize the summation case.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumdim.m: New function.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: Avoid division by zero.
-
-2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminbnd.m: Fix tests.
-
-2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminbnd.m: Fix termination tolerances.
-
-2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/convn.m: Remove.
-	* polynomial/module.mk: Update.
-
-2010-02-28  John W. Eaton  <jwe@octave.org>
-
-	* set/unique.m: If the argument is sparse and we are not
-	operating on rows and we don't need indices, convert nonzero
-	elements to a full matrix and work on that instead, converting
-	back to sparse when done.
-
-2010-02-28  John W. Eaton  <jwe@octave.org>
-
-	* set/unique.m: Return 0x1 arrays for empty arrays with some
-	nonzero dimensions.  Return object with the same class as the
-	argument.  New tests.
-
-2010-02-27  Liam Groener  <liamg@mac.com>
-
-	* time/datetick.m: Fix 'keepticks' bug, and untabify.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/str2double.m: Remove.
-
-2010-02-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/private/__contour__.m (get_lvl_eps): New function.
-	Handle case of single level value.  Use sqrt (eps) instead of 1e-6.
-	(update_text, add_patch_children): Use it.
-
-2010-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* optimization/fzero.m: Add test for discontinuity at the end.
-
-2010-02-18  John W. Eaton  <jwe@octave.org>
-
-	* image/imfinfo.m: Don't handle file time stamp here.
-
-2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/center.m: Convert integer inputs to doubles.
-
-2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp2: Slightly optimize linear interpolation.
-
-2010-02-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp2: Remove debug stub.
-
-2010-02-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/optimget.m: Simplify.
-
-2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/parseparams.m: Extend to allow direct parsing of
-	options.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminbnd.m: Undocument impossible info values.
-	* optimization/fzero.m: Ditto.
-
-	* optimization/fzero.m: Make default TolX consistent with fminbnd.
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminbnd.m: New function.
-	* optimization/module.mk: Add it here.
-	* optimization/fzero.m: Make default TolX consistent with fminbnd.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/private/__isequal__.m: Remove list-related stub.
-
-2010-02-09  John W. Eaton  <jwe@octave.org>
-
-	* image/imshow.m: Allow logical values for images.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Use != instead of diff to compare indices in
-	dense case. Set explicit mode in sparse case to aid optimization.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/menu.m: Use sscanf rather than eval.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/substruct.m: Vectorize.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Document complexity.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Add new test that also forces index cache
-	generation for faster sorting.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: 1 more small fix.
-
-2010-02-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Small fixes.
-
-2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Rewrite. Split sparse and dense case. Treat
-	cell-valued subs efficiently. Optimize dense case for @sum, @max and
-	@min. Optimize the @(x){x} reduction. Add tests.
-
-2010-02-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/dir.m: Fix month passed to datenum.
-
-2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/private/__isequal__.m: Handle function handles.
-
-2010-02-01  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m (get_old_gnuplot_color): Remove as
-	no longer used (for gnuplot 4.0).
-
-	* plot/private/__scatter__.m: Treat "flat" colored patches as
-	a single patch.
-	* plot/__go_draw_axes__.m: If a patch object is flat, treat its
-	outline with the gnuplot "palette".
-
-2010-01-30  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* statistics/tests/kruskal_wallis_test.m: Replace chisquare_cdf
-	by chi2cdf.
-
-2010-01-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/axis.m, plot/__go_draw_axes__.m, plot/colorbar.m,
-	plot/isocolors.m, plot/isonormals.m, plot/isosurface.m,
-	plot/plotyy.m, plot/polar.m, plot/surfl.m,
-	plot/private/__actual_axis_position.m:
-	Replace dataaspectratio and dataaspectratiomode properties with
-	plotboxaspectratio and plotboxaspectratio properties.
-
-2010-01-29  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/compan.m, polynomial/conv.m, polynomial/deconv.m,
-	polynomial/mpoles.m, polynomial/polyderiv.m,
-	polynomial/polygcd.m, polynomial/polyout.m,
-	polynomial/polyreduce.m, polynomial/polyval.m,
-	polynomial/polyvalm.m, polynomial/residue.m:
-	Point to polyint in @seealso, not polyinteg.
-
-	* deprecated/module.mk (deprecated_FCN_FILES):
-	Remove delete files from the list.
-
-	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
-	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
-	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
-	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
-	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
-	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
-	deprecated/clearplot.m, deprecated/com2str.m,
-	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
-	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
-	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
-	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
-	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
-	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
-	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
-	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
-	deprecated/hypergeometric_inv.m,
-	deprecated/hypergeometric_pdf.m,
-	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
-	deprecated/is_bool.m, deprecated/is_complex.m,
-	deprecated/is_list.m, deprecated/is_matrix.m,
-	deprecated/is_scalar.m, deprecated/is_square.m,
-	deprecated/is_stream.m, deprecated/is_struct.m,
-	deprecated/is_symmetric.m, deprecated/is_vector.m,
-	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
-	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
-	deprecated/meshdom.m, deprecated/normal_cdf.m,
-	deprecated/normal_inv.m, deprecated/normal_pdf.m,
-	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
-	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
-	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
-	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
-	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
-	deprecated/struct_contains.m, deprecated/struct_elements.m,
-	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
-	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
-	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
-	deprecated/uniform_rnd.m, deprecated/weibull_cdf.m,
-	deprecated/weibull_inv.m, deprecated/weibull_pdf.m,
-	deprecated/weibull_rnd.m, deprecated/wiener_rnd.m:
-	Delete functions deprecated in version 3.0.0.
-
-	* deprecated/weibcdf.m, deprecated/weibinv.m,
-	deprecated/weibpdf.m, deprecated/weibrnd.m:
-	Note that Matlab still has these functions, so they probabl
-	should not be removed with other functions deprecated in 3.0.0.
-
-2010-01-28  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/daspect.m, plot/pbaspect.m: New functions.
-
-2010-01-28  John W. Eaton  <jwe@octave.org>
-
-	* general/Makefile.am (general_FCN_FILES): Add chop.m to the list.
-
-2010-01-28  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/isstr.m, deprecated/clg.m, deprecated/setstr.m:
-	Note that Matlab still has these functions, so they probabl
-	should not be removed with other functions deprecated in 3.0.0.
-
-2010-01-27  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* plot/gnuplot_drawnow.m: Add "emf" to the list of enhanced
-	terminals for the gnuplot backend.
-
-2010-01-26  John W. Eaton  <jwe@octave.org>
-
-	* general/chop.m: New function.
-
-2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Support TypicalX, autoscale only if
-	AutoScaling is on, off by default. Fix default tolerances.
-	* optimization/fminunc.m: Support TypicalX, autoscale only if
-	AutoScaling is on, off by default Fix default tolerances..
-	* optimization/private/__fdjac__.m: Accept typicalx as a parameter.
-
-2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/pqpnonneg.m: If Cholesky update failed, switch off
-	updating but continue.
-
-2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/pkg.m: More complement -> setdiff changes.
-
-2010-01-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/pkg.m: Use setdiff rather than complement.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc: Untabfy.
-
-2010-01-20  Ben Abbott  <bpabbot@mac.com>
-
-	* plot/__go_draw_figure__.m: Reverse order axes are drawn.
-
-2010-01-20  David Bateman  <dbateman@free.fr>
-
-	* plot/private/__contour__.m: Set default linestyle if pltopt returns
-	an empty style.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* time/datetick.m: Make form arg optional.
-	From Philip Nienhuis  <pr.nienhuis@hccnet.nl>.
-
-2010-01-20  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Correct an error in drawing of patch
-	objects where unrequested markers were drawn.
-
-	* plot/__go_draw_figure__.m: Also plot white foreground and
-	background colors.
-	* plot/plotyy.m: Set axes colors to "none".
-
-	* plot/__go_draw_axes__.m (next_marker):  Remove and all uses of
-	this function.
-	Partially respect the markeredgecolor and markerfacecolor properties.
-	* plot/private/__color__str_rgb__.m: New function
-	* plot/module.mk: Add it here.
-	* plot/__next_line_style__.m: New function selected next line style
-	using the axes linestyleorder property.
-	* plot/__next_line_color.m: Increment next line style here.
-	* plot/newplot.m: Reset next line style here.
-	* plot/module.mk: Add __next_line_style__.m here.
-	* plot/plot3.m: Use __next_line_style__ here.
-	* plot/private/plt.m: And here.
-	* plot/private/stem.m: And here.
-	* plot/private/scatter.m: And here. Correctly handle nargin == 3. Use
-	matlab compatible edgecolor, markeredgecolor and markerfacecolor
-	property values.
-	* plot/private/pltopt.m: Remove "@" marker as an option.
-	* plot/private/__default_plot_options__.m: Default plot options
-	are empty signalling that __next_line_color__ and
-	__next_line_style should be used.
-
-2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/structfun.m: Error when invalid options are specified.
-
-2010-01-19  Jaroslav Hajek  <highegg@gmail.com>, Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/structfun.m: Correctly support multiple arguments with
-	non-uniform output. Correct test for non-uniform output.
-
-2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help/print_usage.m: Try determining whether called from top level.
-	If not, don't print additional help and enable backtrace instead.
-
-2010-01-18  John W. Eaton  <jwe@octave.org>
-
-	* testfun/test.m: Undo previous change.
-
-2010-01-18  David Grundberg  <davidg@cs.umu.se>
-
-	* testfun/test.m: Append endfunction to function test blocks.
-
-2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/celldisp.m: Add example, add demo.
-
-	* general/structfun.m, miscellaneous/getfield.m,
-	miscellaneous/orderfields.m, miscellaneous/setfield.m,
-	miscellaneous/substruct.m: Update documentation string.
-
-2010-01-16  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m (next_marker):  New function to find a
-	new marker. Use it to support the "@" marker.
-	* plot/private/__pltopt__.m: Don't convert "@" marker ro "+";
-
-2010-01-15  David Bateman  <dbateman@free.fr>
-
-	plot/__go_draw_figure__.m: Respect the figure and axes color
-	properties.
-
-2010-01-14  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m:  Fix for markerfacecolor and
-	markeredgecolor for unfillable points like '+'.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/fileread.m: Add missing semicolon.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strcmpi.m: Remove.
-	* strings/strncmpi.m: Remove.
-	* strings/module.mk: Update.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/inputname.m: Use isvarname instead of regexp.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/inputname.m: Return "" if argument name is not a
-	valid identifier.  Update docstring.
-
-2010-01-12  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes_.m:  Allow patch markerfacecolor and
-	markeredgecolor properties to be used and set the marker colors
-	appropriately.
-
-2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
-	    Ben Barrowes  <benjamin.e.barrowes@usace.army.mil>
-
-	* set/private/validargs.m: New function.
-	* set/module.mk: Add it here.
-	* set/ismember.m: Use it here.
-	* set/intersect.m: Ditto.
-	* set/union.m: Ditto.
-	* set/setdiff.m: Ditto.
-	* set/setxor.m: Ditto.
-
-2010-01-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Update DOCSTRINGS rules to avoid
-	simple_move_if_change_rule and allow Make to update timestamps.
-
-2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/private/__scatter__.m: Use patch objects instead of lines,
-	switch at 100 points.
-
-2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/private/__scatter__.m: Fix typos.
-
-2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/fileread.m: New source.
-
-2010-01-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/private/__scatter__.m: Use alternative strategy for larger
-	point sets.
-
-2010-01-06  Ben Abbott  <bpabbott@mac.com>
-
-	* optimization/qp.m: Add missing semicolon.
-
-2010-01-11  Ben Barrowes  <benjamin.e.barrowes@usace.army.mil>
-
-	* set/: allow set scripts to handle cell inputs
-
-2010-01-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/qp.m: Supply default values on request and register
-	options.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* qp.m: Allow linear term and constraint arguments to be
-	optional.
-
-2010-01-05  Joshua Redstone  <redstone@gmail.com>
-
-	* qp.m: Handle optimset options struct argument.
-
-2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strmatch.m: Optimize.
-
-2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strrep.m: Remove.
-	* strings/module.mk: Update.
-
-2010-01-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Support old style jacobian passing.
-
-2010-01-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/powerset.m: New function.
-	* set/module.mk: Include it.
-
-2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/common_size.m: Use named function rather than a handle.
-
-2009-12-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/complement.m: Deprecate.
-
-2009-12-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strcat.m: Further simplify.
-
-2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/common_size.m: Optimize.
-
-2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strcat.m: Vectorize.
-
-2009-12-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/xor.m: Optimize.
-
-2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/issquare.m: Do not check type.
-	* linear-algebra/issymmetric.m: Strengthen test.
-	* linear-algebra/ishermitian.m: Strengthen test.
-
-2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strfind.m: Remove.
-	* strings/module.mk: Update.
-
-2009-12-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strjust.m: Rewrite.
-
-2009-12-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strjust.m: Special-case string and empty argument.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
-	variables of top_builddir and top_srcdir.
-
-2009-12-18  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Use Automake syntax to build helper program gethelp
-
-2009-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* testfun/test.m: Add newline to message output.
-
-2009-12-14  John W. Eaton  <jwe@octave.org>
-
-	* specfun/isprime.m: Produce logical result.  Error if nargin > 1.
-	New tests.
-
-2009-12-14  John W. Eaton  <jwe@octave.org>
-
-	* help/__makeinfo__.m: Use fullfile to concatenate file name
-	components.  Use hyphens instead of underscores in tmp file name.
-
-2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help/__makeinfo__.m: Use P_tmpdir to create temporary file.
-
-2009-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* polynomial/module.mk: Correct typo and distribute newly
-	created ppder.m.
-
-2009-12-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ppder.m: New function.
-	* ppint.m: New function.
-	* ppjumps.m: New function.
-
-2009-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: remove install-images target and use automake
-	syntax to distribute image data.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (DOCSTRINGS): Use $(cp_update_rule) instead of
-	cp -a --update.
-
-2009-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Copy DOCSTRINGS from srcdir to builddir if it does not
-	exist.  Enables VPATH builds.
-
-2009-12-08  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/gnuplot_drawnow.m: Prune prompt lines from dumb terminal output.
-	* plot/__go_draw_figure__.m: Add missing 'unset multiplot' to restore
-	hotkey and mouse functionality for 2D plots.
-
-2009-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Distribute DOCSTRINGS in tar.gz file.
-	* mkdoc: Pass current directory, "./", when running mkdoc on
-	local files.
-
-2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp1q.m: Use more optimal code.
-
-2009-12-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (DOCSTRINGS): Depend on $(GEN_FCN_FILES) instead
-	of $(FCN_FILES_IN).  Pass $(GEN_FCN_FILES) to mkdoc instead of
-	$(FCN_FILES_IN).  Use mv instead of $(simple_move_if_change_rule).
-	(EXTRA_DIST): Include  $(GEN_FCN_FILES) in the list.
-
-2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp1.m: Allow discontinuities (jumps) for the
-	"nearest" and "linear" methods.  Document the feature and add a
-	few tests.
-
-2009-12-06  Rik  <rik@nomad.inbox5.com>
-
-	* Makefile.am: Distribute DOCSTRINGS so that documentation will
-	not require rebuild after merely untarring a distribution.
-	* mkdoc: Change output to refer to mfiles as "scripts/..." rather than
-	"$srcdir/...".  Otherwise, distributed DOCSTRINGS file will not match
-	DOCSTRINGS created under a VPATH build and documentation will be
-	unnecessarily rebuilt.
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/ismember.m: Simplify.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* audio/wavwrite.m: Delete generated a.wav file after each test.
-
-	* Makefile.am (DIRSTAMP_FILES, DISTCLEANFILES): New variables.
-	(DOCSTRINGS): Also depend on $(FCN_FILES_IN).  Pass
-	$(FCN_FILES_IN) to mkdoc instead of $(GEN_FCN_FILES).  Tell mkdoc
-	to look for $(FCN_FILES_IN) files in $(srcdir), not build
-	directory.
-	(DISTCLEANFILES): New variable.
-	Don't silence dirstamp, DOCSTRINGS, $(GEN_FCN_FILES), and PKG_ADD
-	rules.
-
-	* audio/module.mk, deprecated/module.mk, elfun/module.mk,
-	help/module.mk, general/module.mk, geometry/module.mk,
-	image/module.mk, io/module.mk, linear-algebra/module.mk,
-	miscellaneous/module.mk, @ftp/module.mk, optimization/module.mk,
-	path/module.mk, pkg/module.mk, plot/module.mk,
-	polynomial/module.mk, set/module.mk, signal/module.mk,
-	sparse/module.mk, specfun/module.mk, special-matrix/module.mk,
-	startup/module.mk, statistics/base/module.mk,
-	statistics/distributions/module.mk, statistics/models/module.mk,
-	statistics/tests/module.mk, strings/module.mk, testfun/module.mk,
-	time/module.mk: Append to DIRSTAMP_FILES.
-
-2009-12-02  Rik  <rik@nomad.inbox5.com>
-
-	* image/imread.m: Run test case only if underlying GraphicMagick
-	library exists.
-
-2009-12-02  John W. Eaton  <jwe@octave.org>
-
-	* help/module.mk: Fix typo in previous change.
-
-2009-12-01  John W. Eaton  <jwe@octave.org>
-
-	* help/module.mk (help_PRIVATE_FCN_FILES): New list.
-	(help_FCN_FILES): Remove new private functions from the list.
-	Include $(help_PRIVATE_FCN_FILES) in the list.
-	* help/private/__additional_help_message__.m: Rename from
-	help/__additional_help_message__.m.
-
-	* statistics/base/module.mk (statistics_base_FCN_FILES):
-	Remove statistics/base/__quantile__.m from the list.
-	* statistics/base/__quantile__.m: Now a subfunction of
-	statistics/base/quantile.m.
-	* statistics/base/quantile.m: Remove redundant tests.
-
-	* miscellaneous/__xzip__.m: Comment out tests until we have a way
-	to test private functions directly.
-
-	* general/isequal.m, general/isequalwithequalnans.m:
-	Convert tests from __isequal__.
-
-	* optimization/module.mk (optimization_PRIVATE_FCN_FILES): New list.
-	(optimization_FCN_FILES): Remove new private functions and new
-	subfunctions from the list.  Include
-	$(optimization_PRIVATE_FCN_FILES) in the list.
-
-	* optimization/private/__fdjac__.m: Rename from
-	optimization/__fdjac__.m.
-
-	* optimization/__dogleg__.m: Now a subfunction of path/fsolve.m.
-	* optimization/__doglegm__.m: Now a subfunction of path/fminunc.m.
-
-	* general/module.mk (general_PRIVATE_FCN_FILES): New list.
-	(general_FCN_FILES): Remove new private functions from the list.
-	Include $(general_PRIVATE_FCN_FILES) in the list.
-
-	* general/private/__isequal__.m: Rename from general/__isequal__.m.
-	* general/private/__splinen__.m: Rename from general/__splinen__.m.
-
-	* image/module.mk (image_FCN_FILES): Remove image/__img__.m and
-	image/__img_via_file__.m from the list.
-
-	* image/__img__.m: Now a subfunction of image/image.m.
-	* image/__img_via_file__.m: Now a subfunction of image_viewer.m.
-
-	* path/module.mk (path_FCN_FILES): Remove path/__extractpath__.m
-	from the list.
-
-	* path/__extractpath__.m: Now a subfunction of path/pathdef.m.
-
-	* miscellaneous/module.mk (miscellaneous_PRIVATE_FCN_FILES): New list.
-	(miscellaneous_FCN_FILES): Remove __xzip__.m from the list.
-	Include $(miscellaneous_PRIVATE_FCN_FILES) in the list.
-
-	* miscellaneous/private/__xzip__.m: Rename from
-	miscellaneous/__xzip__.m.
-
-2009-12-01  David Bateman  <dbateman@free.fr>
-
-	* @ftp/ftp.m: Treat empty constructor and construction from
-	another FTP object.
-	* @ftp/loadobj.m: Allow and remove the matlab specific fields
-	of FTP objects allowing matlab FTP objects to be loaded in Octave.
-	* @ftp/display.m: user -> username.
-
-2009-12-01  John W. Eaton  <jwe@octave.org>
-
-	* plot/module.mk (plot_PRIVATE_FCN_FILES): New list.
-	(plot_FCN_FILES): Include $(plot_PRIVATE_FCN_FILES) in the list.
-	Remove new private functions and new subfunctions from the list.
-
-	* plot/private/__actual_axis_position__.m: Rename from
-	plot/__actual_axis_position__.m.
-	* plot/private/__add_datasource__.m: Rename from
-	plot/__add_datasource__.m.
-	* plot/private/__axes_limits__.m: Rename from plot/__axes_limits__.m.
-	* plot/private/__axis_label__.m: Rename from plot/__axis_label__.m.
-	* plot/private/__bar__.m: Rename from plot/__bar__.m.
-	* plot/private/__clabel__.m: Rename from plot/__clabel__.m.
-	* plot/private/__contour__.m: Rename from plot/__contour__.m.
-	* plot/private/__default_plot_options__.m: Rename from
-	plot/__default_plot_options__.m.
-	* plot/private/__errcomm__.m: Rename from plot/__errcomm__.m.
-	* plot/private/__errplot__.m: Rename from plot/__errplot__.m.
-	* plot/private/__ezplot__.m: Rename from plot/__ezplot__.m.
-	* plot/private/__interp_cube__.m: Rename from plot/__interp_cube__.m.
-	* plot/private/__line__.m: Rename from plot/__line__.m.
-	* plot/private/__patch__.m: Rename from plot/__patch__.m.
-	* plot/private/__plt__.m: Rename from plot/__plt__.m.
-	* plot/private/__pltopt__.m: Rename from plot/__pltopt__.m.
-	* plot/private/__quiver__.m: Rename from plot/__quiver__.m
-	* plot/private/__scatter__.m: Rename from plot/__scatter__.m.
-	* plot/private/__stem__.m: Rename from plot/__stem__.m.
-
-	* plot/__pltopt1__.m: Now a subfunction of plot/__pltopt__.m.
-
-	* plot/__bars__.m: Now a subfunction of plot/__bar__.m.
-	* plot/__bar__.m (bars): Rename from __bars__.
-	(__bar__): Call bars insteaad of __bars__.
-
-	* plot/__area__.m: Now a subfunction of plot/area.m.
-
-	* plot/__plr1__.m, plot/__plr2__.m: Now subfunctions of polar.m.
-
-	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
-	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2sv__.m,
-	plot/__plt2vm__.m, plot/__plt2vs__.m, plot/__plt2vv__.m:
-	Now subfunctions of __plt__.m.
-
-2009-11-30  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Handle classes in function names.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m,
-	@ftp/delete.m, @ftp/dir.m, @ftp/display.m, @ftp/ftp.m,
-	@ftp/loadobj.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/module.mk,
-	@ftp/mput.m, @ftp/rename.m, @ftp/rmdir.m, @ftp/saveobj.m: New files
-	* Makefile.am: Add the @ftp to the build.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/cross.m: Avoid doing indexing twice.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/normest.m: Randomize initial vector.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/dot.m: Remove.
-	* linear-algebra/module.mk: Update.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/qp.m: Fix matrix tests.
-	* optimization/condest.m: Ditto.
-	* optimization/krylov.m: Ditto.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* sparse/normest.m: Move to linear-algebra.
-	* linear-algebra/normest.m: Simplify. Don't form A'*A explicitly.
-
-2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/isdefinite.m: Use Cholesky factorization.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/issymmetric.m: Move to linear-algebra.
-	* general/isdefinite.m: Ditto.
-	* linear-algebra/issymmetric.m: Use 0 as default tolerance. Optimize
-	this case. Check for symmetry, not hermitianness.
-	* linear-algebra/ishermitian.m: New function.
-	* linear-algebra/isdefinite.m: Use ishermitian instead of issymmetric.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/cellidx.m: Deprecate.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/issquare.m: Change to return consistent result for empty
-	matrices.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/cell2mat.m: Check type of all elements. Slightly optimize.
-	Add tests.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Use num2cell instead of mat2cell. Use repmat.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* script/miscellaneous/getfield: Deblank field names, gripe on invalid
-	index.
-	* script/miscellaneous/setfield: Rewrite using subsasgn.
-
-2009-11-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/print.m: Properly set the default ghostscript_binary
-	under Windows. Modify the search for the ghostscript binary
-	so that it works for Win32, mingw, Cygwin, and Unix systems.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/dec2base.m: Fix division.
-
-2009-11-20  Lukas Reichlin  <lukas.reichlin@swissonline.ch>
-
-	* linear-algebra/krylov.m: Add missing swap routine.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/__isequal__.m: Check for isnumeric|islogical.
-	* testfun/assert.m: Ditto.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/perms.m: Avoid recursion. Simplify assignments. Allow empty
-	vectors.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/erfinv.m: Remove.
-	* specfun/module.mk: Update.
-
-2009-11-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/orient.m: Flip papersize and paperposition when orientation
-	changes. Add support for 'tall' option. Add tests.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* io/textread.m: strncmp->strcmpi.
-
-2009-11-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/expm.m: Fix typo.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/intwarning.m: Doc fix.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/stairs.m (__stairs__): Correct nargin check.  New demos.
-	From Jakub Kasse  <jakub.kasse@tul.cz>.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* help/help.m (help): Return immediately after calling do_contents.
-	(do_contents): Find all matching directories, not just the first.
-	Call get_help_text_from_file to avoid looking in path.
-	Handle printing here.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am, audio/module.mk, deprecated/module.mk,
-	elfun/module.mk, general/module.mk, geometry/module.mk,
-	help/module.mk, image/module.mk, io/module.mk,
-	linear-algebra/module.mk, miscellaneous/module.mk,
-	optimization/module.mk, path/module.mk, pkg/module.mk,
-	plot/module.mk, polynomial/module.mk, set/module.mk,
-	signal/module.mk, sparse/Makefile.in, specfun/Makefile.in,
-	special-matrix/Makefile.in, startup/Makefile.in,
-	statistics/Makefile.in, statistics/base/module.mk,
-	statistics/distributions/module.mk, statistics/models/module.mk,
-	statistics/tests/module.mk, strings/module.mk, testfun/module.mk,
-	time/module.mk: New files.
-	* Makefile.in, move-if-change, configure.ac, audio/Makefile.in,
-	deprecated/Makefile.in, elfun/Makefile.in, general/Makefile.in,
-	geometry/Makefile.in, help/Makefile.in, image/Makefile.in,
-	io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, optimization/Makefile.in,
-	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, set/Makefile.in, signal/Makefile.in,
-	skip-autoheader, sparse/module.mk, specfun/module.mk,
-	special-matrix/module.mk, startup/module.mk,
-	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
-	Delete.
-	* mk-pkg-add: Rename from mkpkgadd.
-	* mkdoc, mk-pkg-addd: Operate on explicit lists of files instead
-	of directory names.
-	* mkdoc: Skip files not ending in .m.
-
-2009-11-10  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: No 'with linestyle' when linestyle == 'none'.
-
-2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/arrayfun.m: Fix nargout=0 case.
-
-2009-11-08  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/gnuplot_drawnow.m: Support gnuplot's dumb terminal.
-
-2009-11-02  Stefan Hepp  <stefan@stefant.org>
-
-	* plot/gnuplot_drawnow.m (gnuplot_default_term): Don't set term to
-	x11 unless DISPLAY is set.
-
-2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp1.m: Simplify.
-
-2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/mkpp.m: Improve Matlab compatibility.
-	* polynomial/ppval.m: Ditto.
-	* polynomial/unmkpp: Update.
-	* polynomial/pchip.m: Update and optimize.
-	* polynomial/spline.m: Update.
-	* general/__splinen__.m: Update.
-
-2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/tril.m, general/triu.m: Remove sources.
-	* general/Makefile.in: Update.
-
-2009-10-20  Soren Hauberg  <hauberg@gmail.com>
-
-	* general/interp2.m: improved error checking and support for bicubic
-	interpolation when X and Y are meshgrid format.
-
-2009-10-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp1.m: Perform optimizations, improve code (use switch
-	instead of multiple ifs).
-	* polynomial/pchip.m: Employ more optimized formulas (from SLATEC).
-
-2009-10-22  Soren Hauberg  <hauberg@gmail.com>
-
-	* image/autumn.m, image/bone.m, image/cool.m, image/copper.m,
-	image/flag.m, image/gmap40.m, image/gray.m, image/hot.m,
-	image/hsv.m, image/jet.m, image/ocean.m, image/pink.m,
-	image/prism.m, image/rainbow.m, image/spring.m, image/summer.m,
-	image/white.m, image/winter.m: Add demos.
-
-2009-10-20  Soren Hauberg  <hauberg@gmail.com>
-
- 	* general/interp2.m: improved error checking and support for bicubic
-
-2009-10-19  Soren Hauberg  <hauberg@gmail.com>
-
-	* io/strread.m, io/textread.m: New functions.
-
-2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/center.m: Rewrite using bsxfun.
-
-2009-10-15  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Allow line and surface markerfacecolor
-	and markeredgecolor properties to be used and set the marker colors
-	appropriately.
-
-2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/median.m: Rewrite using nth_element.
-
-2009-10-01  John W. Eaton  <jwe@octave.org>
-
-	* image/__img__.m: Adjust xlim and ylim correctly.
-
-2009-10-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (plot/gnuplot_binary.m): New rule.
-	(DOCSTRINGS): Depend on plot/gnuplot_binary.m.
-	(ALL_M_FILES): Define with =, not :=.
-
-2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* geometry/griddata.m: Fix handling vector xi, yi.
-
-2009-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/arrayfun.m: Simplify.
-
-2009-09-30  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Work on list of file names instead of a directory.
-	* Makefile.in (ALL_M_FILES): Don't strip directories.
-	Also search build directory if it is different from $(srcdir).
-	Pass $(ALL_M_FILES) to mkdoc.
-
-2009-09-30  Michael D. Godfrey  <godfrey@isl.stanford.edu>
-
-	* plot/clabel.m: Spelling fix.
-	* plot/newplot.m: Update docstring.
-
-2009-09-28  John W. Eaton  <jwe@octave.org>
-
-	* general/sortrows.m: Also use old algorithm for sparse matrices.
-
-2009-09-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/union.m: Fix docstring.
-	* set/setxor.m: Fix docstring.
-
-2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/randperm.m: Remove.
-	* general/Makefile.in: Update.
-
-2009-09-15  John W. Eaton  <jwe@octave.org>
-
-	* confiugre.ac: Rename from configure.in
-	* Makefile.in: Rename all instances of configure.in to
-	configure.ac.
-
-2009-09-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/Makefile.in: Include __doglegm__.m.
-
-2009-09-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminunc.m: Simplify damped BFGS calculation.
-
-2009-09-09  Tatsuro Matsuoka  <tmacchant@yahoo.co.jp>
-
-	* plot/gnuplot_drawnow.m: Avoid flickering windows by avoding
-	'set multiplot' / 'unset multiplot' for gnuplot's windows and
-	wxt terminals.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__dogleg__.m: Revert to revision 22c8272af34b.
-	* optimization/__doglegm__.m: New source.
-	* optimization/fminunc.m: Use it.
-
-2009-09-08  John W. Eaton  <jwe@octave.org>
-
-	* io/dlmwrite.m: Fix typo.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Change initial TR step strategy.
-	* optimization/fminunc.m: Change initial TR step strategy.
-
-2009-09-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminunc.m: Correct extra output params handling.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Update initial factor.
-	* optimization/fminunc.m: Update initial factor.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/arrayfun.m: Fix test.
-
-2009-09-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/hold.m: Correctly toggle hold state.  Set both figure and
-	axes "nextplot" property when turning hold state on.
-	* plot/ishold.m: Check figure and axes nextplot properties.
-	Accept axes or figure handle argument.
-
-2009-09-01  Christophe Tournery  <christophe.tournery@illusonic.com>
-
-	* audio/wavread.m: Rename data_size from obsolete ck_size.
-
-2009-08-31  David Bateman  <dbateman@free.fr>
-
-	* general/quadgk.m: More care with the interval length and
-	convergence of contour integrals.
-
-2009-08-29  John W. Eaton  <jwe@octave.org>
-
-	* time/datestr.m: Add missing semicolon.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/int2str.m: Convert to double before calling log10.
-
-2009-08-26  E. Joshua Rigler  <relgire@gmail.com>
-
-	* time/datestr.m: Set tm.isdst to -1 before calling mktime.
-
-2009-08-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/__gnuplot_open_stream__.m: Save pid in __plot_stream__ property.
-	* plot/gnuplot_drawnow.m: Wait for gnuplot subprocess when printing.
-	From Ben Abbott <bpabbott@mac.com>, Rob Mahurin <rob@utk.edu>, and
-	Dmitri Sergatskov <dasergatskov@gmail.com>.
-
-2009-08-22  David Bateman  <dbateman@free.fr>
-
-	* plot/__add_datasource__.m: Correct test for "datasource" argument
-	* plot/__countour__.m: Add edgecolor properties and make it an alias
-	for linecolor with the value "auto" being "flat" for the edgecolor.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* help/print_usage.m: Make it work again if an argument is given.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help/print_usage: Allow calling from methods.
-
-2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/diff.m: Remove.
-	* general/Makefile.in: Update.
-
-2009-08-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/flipdim.m: Fix omitted check.
-
-2009-08-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/flipdim.m: Simplify.
-
-2009-08-07  Olli Saarela  <olli.saarela@gmail.com>
-
-	* plot/__gnuplot_ginput__.m: If read fails to return data, sleep
-	before trying again.
-
-2009-08-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/compass.m, plot/feather.m: Simplify argument processing.
-
-2009-08-06  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/std.m: Correctly work along singleton dimension.
-	From Christoph Ellenberger <C.Ellenberger@gmx.net>.
-
-2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* geometry/griddata.m: Optimize.
-
-2009-08-06  Olaf Till  <olaf.till@uni-jena.de>
-
-	* geometry/griddata.m: Linearize arrays.
-
-2009-08-04  Pieter Eendebak  <pieter.eendebak@gmail.com>
-
-	* set/setxor.m: Added test for cell arrays of strings.
-
-2009-08-05  Olli Saarela  <olli.saarela@gmail.com>
-
-	* plot/__gnuplot_get_var__.m: If read fails to return data, sleep
-	before trying again.
-
-2009-08-04  Pieter Eendebak  <pieter.eendebak@gmail.com>
-
-	* set/setxor.m: Support cell arrays of strings.
-
-2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/sub2ind.m: Remove source.
-	* general/ind2sub.m: Remove source.
-	* general/Makefile.in: Update.
-
-2009-08-02  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Avoid the flickering x11 window seen with
-	rapid replots by avoidng setting multiplot mode. This fix only
-	functions for a single axes with no image objects.
-	* plot/__go_draw_figure__.m: Move 'set multiplot' to gnuplot_drawnow.
-
-2009-07-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/common_size: Optimize.
-
-2009-07-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix ticklabels specified as 2D character
-	array.
-	* plot/__go_draw_axes__.m: Ignore fontnames for the Lua-TikZ terminal.
-	* plot/gnuplot_drawnow.m: Support the gnuplot terminal Lua-TikZ.
-	* plot/print.m: Support the gnuplot terminal Lua-TikZ.
-
-2009-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/gnuplot_binary.m: Fix typo.
-
-2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: Use "global" parameter in str2func.
-	* optimization/fsolve.m: Ditto.
-	* optimization/fminunc.m: Ditto.
-
-2009-07-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/gnuplot_binary.in: Accept arguments in addition to program name.
-	* plot/__gnuplot_open_stream__.m: Pass additional args to gnuplot.
-
-2009-07-23  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Add an hggroup demo using bar(). Include clf()
-	in each demo.
-
-2009-07-23  John W. Eaton  <jwe@octave.org>
-
-	* image/imread.m: Fix test.
-
-	* plot/legend.m: Process arguments in order, child objects in
-	reverse.  Remove special case for single label.  New demos.
-
-2009-07-23  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* testfun/assert.m: Fix string comparison bug.
-
-2009-07-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* testfun/assert.m: Use less strict checking for exact matches.
-
-2009-07-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Use "layer" property to decide whether
-	to send "set border front" or "set border layerdefault" to plot
-	stream.  Don't send "set border front" to plot stream for image data.
-
-2009-07-15  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* polynomial/conv.m: Fix Matlab incompatibility.  New tests.
-
-2009-07-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/axis.m: Return 4-element vector for 2-d view.
-	From David Woodburn <david.woodburn@gmail.com>.
-
-	* sparse/nonzeros.m: Always return a column vector.  New tests.
-
-2009-06-25  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Apply feature 'wxt_has_size'.
-	* plot/__gnuplot_has_feature__.m: Add feature 'wxt_has_size' for
-	gnuplot >= 4.3.0.
-
-2009-06-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_figure__.m: Modify the implicit margin when gnuplot's
-	output is landscape.
-	* plot/gnuplot_drawnow.m: Simplify handling of the figure's paper
-	properties, and rely upon listeners for units conversion. Minor code
-	improvements.
-	* plot/print.m: Reimplement -landscape and -portrait to modify the
-	properties papersize and paperposition. Produce compatible results
-	when paperpositionmode=='auto'. Simplfy units conversion and
-	restoration of initial figure properties.
-
-2009-06-24  Marco Caliari  <marco.caliari@univr.it>
-
-	* general/repmat.m: Call kron, not spkron.
-
-2009-06-24  Alexander Mamonov  <mamonov@gmail.com>
-
-	* plot/plot3.m: Correctly compute offsets for property/value pairs.
-
-2009-06-23  Alexander Mamonov  <mamonov@gmail.com>
-
-	* image/imread.m: New test.
-
-2009-06-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/grid.m: Add missing semi-colon. Allow grid to be toggled
-	on/off for each axis independently. Gnuplot requires that minor
-	ticks accompany minor ticks. Add demo.
-	* plot/__go_draw_axes__.m: For {x,y,z}scale == 'log' use 10 minor
-	ticks.
-
-2009-06-22  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/var.m: Return zero for scalar case.  Handle
-	empty arguments in a Matlab compatible way.  New tests.
-
-2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/ismember.m: Properly handle NaNs. Fix test.
-
-2009-06-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Change the default x11 fontspec from '*,0'
-	to ',0' to avoid delays searching the fontpath for a font named '*'.
-
-2009-06-18  Daniel Gualberto  <daniel@alacer.com.br>
-
-	* polynomial/mpoles.m: Fix infinite loop for a multiplicity of
-	poles at zero. Test added.
-
-2009-06-17  Bertrand Roessli  <bertrand.roessli@psi.ch>
-
-	* plot/axis.m: Fix bug for 'axis tight' with multiple surface plots,
-	add demo.
-
-2009-06-15  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/quiver.m: Add 'clf' to demos.
-	* plot/plotyy.m: Consider dataaspectratiomode before changing
-	dataaspectratio.
-
-2009-06-14  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/plotyy.m: Fix compatibility with subplot, add listeners for
-	dataaspectratio, and add a demo.
-
-2009-06-14  Eric Chassande-Mottin  <echassandemottin@gmail.com>
-
-	* plot/plotyy.m: Correct behavior when there is no currentfigure.
-
-2009-06-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/ismember.m: Reimplement using lookup & unique.
-
-2009-06-11  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Fix logic associated with 'have_ghostscript'.
-	* plot/gnuplot_drawnow.m: Add support for pdfcairo and pngcairo
-	terminals. Minor code improvements.
-	* plot/print.m: Associate '-mono' with devices ps, ps2, eps, & eps2.
-	Have '-mono' render all objects in monochrome.
-	For pdf or png output, favor gnuplot's cairo terminals.
-
-2009-06-10  Marco Caliari  <marco.caliari@univr.it>
-
-	* plot/hold.m: Add demo including a hggroup.
-	* plot/__go_draw_axes__.m: Fix order when pushing group children onto
-	the axes kid list.
-	* general/quadgk.m: Better waypoint transform.
-
-2009-06-09  David Bateman  <dbateman@free.fr>
-
-	* general/quadgk.m: Add test case and fixed doubly infinite
-	waypoint transform for x = 0 case.
-
-2009-06-09  Marco Caliari  <marco.caliari@univr.it>
-
-	* general/quadgk.m: Fix doubly infinite transformation to the finite
-	interval.
-
-2009-06-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/axis.m: Fix bug for 'axis tight' with multiple lines, modify
-	demo.
-
-2009-06-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* testfun/assert.m: Fix texinfo bug.
-
-2009-06-04  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Change strncmpi(scale,'lo') to
-	strcmp(scale,'log').
-	* plot/__go_draw_axes__.m: For log-scale axes use format '10^{%T}'.
-
-2009-06-03  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m: Colorbar 'handlevisibility' should be 'on'.
-	Add additional demos which illustrate problems with the present
-	implementation.
-	* plot/__gnuplot_has_feature__.m: Change version for
-	"x11_figure_position" from ">=4.3.0" to ">=4.2.5".
-	* plot/__scatter__.m: If the color spec is empty, set using
-	__next_line_color__.
-	* plot/scatter3.m: Add demos.
-
-2009-06-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/polyfit.m: Fix test.
-
-2009-06-02  Rafael Laboissiere  <rafael@debian.org>
-
-	* help/doc.m: In test, look also for the gzipped version of the
-	info_file
-
-2009-05-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/__gnuplot_get_var__.m: Insert missing semicolon.
-
-2009-05-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Set x2range when xaxislocation=='top'
-	and set y2range when yaxislocation=='right'. Simplify support
-	for ticklabel separator '|'.
-	* plot/__go_draw_figure__.m: Change 'autoscale fix' to
-	'autoscale keepfix'.
-	* plot/colorbar.m: Add demos.
-
-2009-05-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Add support for ticklabel separator '|'.
-
-2009-05-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* sparse/bicgstab.m: Improve preconditioning; avoid explicit inverse.
-	* sparse/cgs.m: Improve preconditioning; avoid explicit inverse.
-
-2009-05-28  Radek Salac  <salac.r@gmail.com>
-
-	* sparse/bicgstab.m: New output when calling without arguments.
-	Time optimization - remove certain checks linked to
-	preconditioner which are unacceptably slow.
-	* sparse/cgs.m: New output when calling without arguments.
-	Time optimization - remove certain checks linked to
-	preconditioner which are unacceptably slow.  Rename internal
-	variable to match bicgstab.
-
-2009-05-27  Rik Wehbring  <rdrider0-list@yahoo.com>
-
-	* plot/axis.m: Update documentation to reflect addition of
-	"tight" option.
-
-2009-05-27  Rik Wehbring  <rdrider0-list@yahoo.com>
-
-	* ismember.m: Update examples to remove incorrect reference to
-	residue function.
-
-2009-05-27  John W. Eaton  <jwe@octave.org>
-
-	* image/imwrite.m: Convert indexed images to RGB before calling
-	__magick_write__.
-
-	* image/imshow.m: In demo, convert image to rgb before scaling
-	components.  Use imread instead of loadimage.
-
-2009-05-26  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix rendering of overlaping images and
-	line objects.  Add demos as well.
-
-2009-05-27 S�ren Hauberg  <hauberg@gmail.com>
-
-	* geometry/delaunay.m: Support cellstr's as options.
-
-2009-05-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/imshow.m: Fix handling of indexed images.
-
-2009-05-26 S�ren Hauberg  <hauberg@gmail.com>
-
-	* help/__makeinfo__.m: Support several @seealso's in one text.
-
-2009-05-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/colorbar.m: Downcase location argument.
-
-2009-05-26 Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* pkg/pkg.m: Add "version" field to the structure returned by "pkg
-	describe".
-
-2009-05-25  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Properly render TeX symbols for x11, when
-	using the anonymous fontname="*".
-
-2009-05-24 Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* plot/gnuplot_drawnow.m: single-quote output name to allow backslash
-	characters as filesep under windows
-	* plot/print.m: Support ps->pdf using ghostscript under windows, check
-	for %GSC% environment variable.
-
-2009-05-24 Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* plot/__gnuplot_version__.m: quote gnuplot_binary to allow spaces
-	in file name
-
-2009-05-22  John W. Eaton  <jwe@octave.org>
-
-	* general/interp3.m: Don't require interpolation grid to have same
-	size as data.  From Kris Thielemans <kris.thielemans@imperial.ac.uk>.
-
-2009-05-19 Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* pkg/pkg.m: Fix a bug when quering only one non installed package
-	with "pkg describe".
-
-2009-05-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__fdjac__.m: Support central differences.
-	* optimization/fsolve.m: Support central differences. Add FinDiffType
-	option.
-	* optimization/fminunc.m: Ditto.
-
-2009-05-17  Rik Wehbring  <rdrider0-list@yahoo.com>
-
-	* *.m: Simplify Texinfo documentation in .m scripts by removing
-	redundant @iftex calls
-
-2009-05-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminunc.m: Improve TR updating strategy.
-	* optimization/fsolve.m: Ditto.
-
-2009-05-15  John W. Eaton  <jwe@octave.org>
-
-v	* general/nargchk.m: Don't generate error if output is struct.
-	Uncomment some additional tests.
-	From Alois Schloegl <alois.schloegl@tugraz.at>
-
-2009-05-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminunc.m: Import the step adaptation strategy
-	improvements from fsolve.
-
-2009-05-08  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_has_feature__.m: Add feature "key_has_font_properties".
-	* plot/__go_draw_axes__.m: Have legend inherit the axis font-name/size.
-
-2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
-
-	* miscellaneous/tar.m, miscellaneous/unpack.m:
-	Pass "xvf" to tar instead of "-x -v -f".
-
-2009-04-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_has_feature__.m: Change version for
-	"x11_figure_position", >4.2.4 to >=4.3.0.
-
-2009-04-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: For figure position, treat 'wxt' as 'x11'.
-
-2009-04-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/range.m: Fix behavior when dim is specified.
-
-2009-04-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Fix typo: 'gswin23c' -> 'gswin32c'. Suppress stderr
-	when printing. New sub-function: fix_eps_bbox(). Add option, "-tight",
-	to replace the gnuplot bbox with a tight bbox for eps-files.
-
-2009-04-23  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Use Ghostscript rather than ImageMagick's 'convert'.
-	Support printing to non-postscript printers. Do not change the output
-	filename when using Ghostscript. When using lpr to print the output,
-	send it without filtering (unix), or as if it were binary (pc).
-
-2009-04-22  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* general/isa.m: Correctly report multiple layers of class hierarchy.
-
-2009-04-20  John W. Eaton  <jwe@octave.org>
-
-	* special-matrix/vander.m: Update tests.
-
-2009-04-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* special-matrix/vander.m: Allow second argument.
-	* special-matrix/polyfit.m: Simplify.
-
-2009-04-17  Rik  <rdrider0-list@yahoo.com>
-
-	* plot/__marching_cube__.m: Correct help Texinfo so manual will compile
-
-2009-04-16  Marco Caliari  <marco.caliari@univr.it>
-
-	* toeplitz.m: Treat separately the sparse case.
-
-2009-04-14  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* plot/__marching_cube__.m: Add help text.
-	* plot/isonormals.m: Add help text and tests.
-
-2009-04-14  David Bateman  <dbateman@free.fr>
-
-	* plot/__patch__.m: Set default facecolor to [0,1,0].
-
-2009-04-12  Aravindh Krishnamoorthy  <aravindh.k.dev@gmail.com>
-
-	* special-matrix/hadamard.m: Fix a documentation mistake.
-
-2009-04-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/polyaffine.m: New function.
-	* polynomial/polyscale.m: Remove.
-	* polynomial/polytrans.m: Remove.
-
-2009-04-12  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_open_stream__.m: New function.
-	* plot/__gnuplot_get_var__.m: If not open, open the gnuplot plot stream.
-	* plot/gnuplot_drawnow.m: Replace internal function open_gnuplot_stream
-	with new __gnuplot_open_stream__.
-
-2009-04-11  David Bateman  <dbateman@free.fr>
-
-	* geometry/trisurf.m: New file.
-	* geometry/Makefile.in (SOURCES): Add it here.
-	* geometry/trimesh.m: Convert to using 3D patches.
-	* plot/__go_draw_axes__.m: Allow 3D filled triangular patches.
-	* plot/__patch__.m: Rewrite to allow update of dependent variables
-	with listener functions amongst themselves.
-	* plot/patch.m: Add 3D demo. Update the documentation.
-
-2009-04-11  Martin Helm  <martinh@sirius.mhelm.de>
-
-	* plot/__interp_cube__.m, plot/__marching_cube__.m, isocolors.m,
-	isonnormals.m, isosurface.m: New files.
-	* plot/Makefile.in (SOURCES): Add them here.
-
-2009-04-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/intersect.m: Add missing branch.
-
-2009-04-10  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: If no pdf support in gnuplot, then "convert" from
-	postscript to pdf. For gnuplot 4.2.x use "convert", if it is present,
-	to produce pdf output. Only render a full page for ps/pdf output.
-	Rename variable, "size" to "canvas_size". Reformat help text to
-	eliminate unintended spaces. Minor improvements to the code.
-	* plot/gnuplot_drawnow.m: Place canvas size at the end of the terminal
-	spec, and remove trailing semicolon. Minor improvments to the code.
-	* plot/__gnuplot_get_var__.m: If fifo fails to open, try 2nd time.
-
-2009-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* special-matrix/vander.m: Optimize.
-
-2009-04-07  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/Makefile.in: Remove __gnuplot_default_font__.m from SOURCES.
-
-2009-04-06  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_get_var__.m: Correct misleading error messages, and
-	remove dangling/commented code.
-	* plot/__gnuplot_default_font__.m: Remove file from archive.
-	* plot/__go_draw_axes__.m, plot/__go_draw_figure__.m: Allow
-	fontsize to be specified for all terminals with fontname == "*".
-
-2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/polyscale.m: New function.
-	* polynomial/polytrans.m: New function.
-
-2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* special-matrix/pascal.m: Fix, optimize & extend.
-
-2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/vech.m: Optimize.
-
-2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* special-matrix/toeplitz.m: Optimize.
-
-2008-04-03  David Bateman  <dbateman@free.fr>
-
-	* plot/__scatter__.m: correct indexing of cdata.x
-
-2009-04-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fminunc.m: New function.
-	* optimization/Makefile.in: Update.
-	* optimization/__dogleg__: Allow general quadratics.
-
-2009-04-02  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Include gnuplot command termination when
-	plotting image.
-
-2009-04-02  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix title placement for gnuplot 4.2.x.
-
-2009-04-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Fix test.
-
-2009-03-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: New subfunction create_fontspec(). Allow
-	fontsize to be specified when the fontname is anonymous.
-
-2009-03-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__gnuplot_default_font__.m: New function: determine gnuplot's
-	terminal dependent default font.
-	* plot/__go_draw_figure__.m: Substitute gnuplot default font when
-	"fontname" = "*".
-
-2009-03-29  John W. Eaton  <jwe@octave.org>
-
-	* testfun/Makefile.in (SOURCES): Add rundemos.m to the list.
-
-2009-03-29  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: For eps output the bounding box should represent the
-	figure's position.
-
-2009-03-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Always set figure property "__plot_stream__"
-	to the active gnuplot steam. Permits __gnuplot_get_var__ to return to
-	proper result for all gnuplot streams.
-
-2009-03-27  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Properly position the title for 3D plots
-	when using the gnuplot (v4.3+) backend.
-
-2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/expm.m: Fix order of outputs from balance.
-
-2009-03-25  Kai Habel  <kai.habel@gmx.de>
-
-	* general/gradient.m: Fix calculation for more than two
-	dimensions.  Change interpretation of vector arguments from
-	spacing to coordinates.  New tests.
-
-2009-03-25  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Pass full file name to gethelp.
-	* gethelp.cc (main): Handle second argument.  Write comment with
-	full file name to output.
-
-2009-03-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: When printing, pass scalar plot_stream
-	to __gnuplot_draw_figure__, and close all plot streams when done.
-
-2009-03-24  John W. Eaton  <jwe@octave.org>
-
-	* general/isa.m: Handle parent classes.
-
-2009-03-23  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Check that gnuplot has internal variable
-	"GPVAL_TERMINALS".
-	* plot/__gnuplot_has_feature__.m: Add "variable_GPVAL_TERMINALS".
-
-2009-03-21  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
-	* plot/__gnuplot_get_var__.m: Add function to get gnuplot variables.
-	* plot/print.m: Restore the behavior for option -S<num>,<num>.
-
-2009-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m (guarded_eval): Simplify & fix missing
-	semicolon.
-
-2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__fdjac__.m: Pass in fvec to save one evaluation.
-	* optimization/fsolve.m: Avoid redundant reevaluation when using
-	FD jacobians. Document how it can be done with user jacobians.  Make
-	first iteration special and call outputfcn after it. Skip updates
-	unless two successful iterations have occured.
-	* optimization/__dogleg__.m: Add missing alpha in the zero-gradient
-	case.
-	* optimization/fsolve.m: Remove autodg (not used), simplify.
-
-2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/var.m: a -> x.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/mean.m: Simplify.
-	* statistics/base/meansq.m: Optimize.
-	* statistics/base/center.m: Fix behvaior with vectors, simplify.
-	* statistics/base/std.m: Simplify using `center'.
-	* statistics/base/var.m: Ditto.
-	* statistics/base/cov.m: Ditto.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/repmat.m: Use subscript pairs rather than forming Kronecker
-	products.
-
-2009-03-11  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Unset the {x,y,z}ticks when initializing
-	each axis. Set ticklabels when the ticklabels are empty and when
-	ticklabelmode=="manual".
-
-2009-03-11  Marco Caliari  <marco.caliari@univr.it>
-
-	* plot/axis.m: Implement "square" and "equal" options, conditional
-	on how octave positions gnuplot axes. Place the "title()" and
-	"axis()" commands after "plot()" in the demos.
-
-2009-03-09  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m (do_tics): Fix typo (xaxislocation ->
-	yaxislocation).
-
-2009-03-09  John W. Eaton  <jwe@octave.org>
-
-	* help/lookfor.m (search_cache): Also match function names.
-
-	* pkg/pkg.m, help/gen_doc_cache.m, help/lookfor.m:
-	Use doc-cache instead of DOC for doc cache file.
-
-2009-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/accumarray.m: Reorder tests. Call either "sparse" or
-	__accumarray_sum__ for the default summation case.
-	* statistics/base/histc.m: Reimplement using lookup & accumarray.
-
-2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
-
-	* statistics/base/histc.m: New function.
-
-2009-03-06  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Preserve the order of axes' children
-	when pruning the handles for the {x,y,z}labels and title.
-	* plot/legend.m: Change demo to add colors to lines. This change
-	reveals the problem (above) with the ordering of the axes' children.
-
-2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/condest.m: Use lu rather than splu. Use relative tols
-	for tests.
-
-2009-03-05  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/spdiag.m: Ensure sparse result.
-
-2009-03-05  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Preserve column vector orientation for
-	the axes children while removing the axis label & title handles.
-
-2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* polynomial/polyval.m: Implement using Horner scheme.
-
-2009-03-03  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Fix unintended shift of plot image for
-	the gnuplot postscript+eps terminal.
-
-2009-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/pkg.m (fix_depends): Fix & simplify splitting the string.
-
-2009-03-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* set/complement.m, set/union.m: Remove reference to deprecated
-	function create_set.
-
-2009-03-01  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Do not render axis labels twice when
-	their handles are visible, but do render objects with hidden
-	handles.
-
-2009-03-01  Ben Abbott  <bpabbott@mac.com>
-
-	* general/num2str.m: Trivial bug fix. Recent switch from split()
-	to strsplit() produced cells rather than character data.
-
-2009-03-01  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/colorbar.m: Bug fix. Allow hidden colorbars to be deleted,
-	and replace existing colorbar when a new one is created. Additional
-	demos are included to verify these behaviors.
-
-2009-02-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__actual_axis_position__.m: Include file missed in prior
-	changeset.
-
-2009-02-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m, plot/gnuplot_drawnow.m: Add compatible support for
-	specificying resolution of bitmap terminals, "-r<num>".
-
-	* plot/gnuplot_drawnow.m: Check that canvas size is only specified
-	one time.
-
-	* plot/gnuplot_drawnow.m, plot/__go_draw_figure__.m: Support papersize,
-	paperposition properties. Accommodate gnuplot's implicit margins for
-	postscript terminals. Remove internal function get_canvassize().
-
-	* plot/gnuplot_drawnow.m:
-	Terminate gnuplot "set term ..." with semicolon.
-	Specify vector terminals sizes in floating point.
-	Rename internal function isbackend() to output_to_screen().
-	Rename internal function gnuplot_term() to gnuplot_default_term().
-	Rename internal function isbitmap() to term_units_are_pixels().
-	Minor changes for coding conventions.
-
-	* plot/__actual_axis_position__.m, Makefile.in: New function to
-	determine position of rendered axes, including the effect of the
-	aspect ratio.
-	* plot/__gnuplot_has_feature__.m: Add new feature
-	"screen_coordinates_for_{lrtb}margin".
-	* plot/__go_draw_axes__.m, plot/colorbar.m: Enable axes to be
-	positioned using {lrtb}margins.
-	* plot/colorbar.m: Add to, and modify, demos.
-
-	* plot/print.m: Remove non-functional/commented code.
-	* plot/__go_draw_figure__.m: Remove non-functional code.
-	* plot/__gnuplot_has_feature__.m: Remove non-functional code.
-
-	* plot/quiver3.m: Add "clf" and "colormap(jet(64))" to demo.
-
-2009-02-27  John W. Eaton  <jwe@octave.org>
-
-	* set/complement.m: Call unique, not create_set.
-	* set/unique.m: Style fix for docstring.
-	* deprecated/create_set.m: Move here from set/create_set.m.
-	Always return a row vector, as documented.
-
-	* set/Makefile.in (SOURCES): Remove create_set.m from the list.
-	* deprecated/Makefile.in (SOURCES): Add create_set.m to the list.
-
-	* general/num2str.m: Call strsplit instead of split.
-
-	* strings/strsplit.m: Style fixes.
-
-2009-02-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strsplit.m: Check also nargin.
-
-2009-02-26  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/split.m: Add warning, not about version.
-
-2009-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strsplit.m: New function.
-	* strings/split.m: Move to deprecated/.
-	* strings/Makefile.in: Update.
-	* deprecated/Makefile.in: Update.
-
-	* general/int2str.m: Use strsplit instead of split.
-	* general/num2str.m: Ditto.
-	* help/__makeinfo__.m: Ditto.
-	* help/lookfor.m: Ditto.
-	* miscellaneous/compare_versions.m: Ditto.
-	* miscellaneous/tar.m: Ditto.
-	* miscellaneous/unpack.m: Ditto.
-	* miscellaneous/what.m: Ditto.
-	* miscellaneous/zip.m: Ditto.
-	* pkg/pkg.m: Ditto.
-	* strings/strtok.m: Ditto.
-	* testfun/rundemos.m: Ditto.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (distclean maintainer-clean): Remove tags and TAGS
-	in distclean target.
-
-2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help/lookfor.m: Vectorize the path splitting using mat2cell.
-	Extract new path elements using setdiff.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/pie.m: Use numel to check sizes of X and LABELS instead of
-	using size_equal.  From Andy Buckle <andybuckle@gmail.com>.
-
-	* help/lookfor.m: Split original path into cell array and compare
-	elements with strcmp.  Suppress warnings and errors when getting
-	help text from function files.
-
-2009-02-24  John W. Eaton  <jwe@octave.org>
-
-	* help/gen_doc_cache.m: Don't compress output file.  By default,
-	write to DOC, not DOC.gz.  Don't save empty cache.
-
-	* help/lookfor.m: Use doc_cache_file to get location of DOC file.
-
-2009-02-24  Jason Riedy  <jason@acm.org>
-
-	* pkg/pkg.m (generate_lookfor_cache): Generate a DOC file for each
-	directory.
-
-	* help/gen_doc_cache.m: Call __makeinfo__, not makeinfo.
-
-2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Update niter after each iteration, not just
-	a succesful one.
-
-2009-02-08  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* configure.in: AC_SUBST ac_config_files
-
-	* Makefile.in:  Add make targets for configuration files
-	and config.status.
-
-2009-02-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/fplot.m: Fix nargin check.
-	From Joel Parker <Joel.Parker@radiancetech.com>.
-
-2009-02-20  Steffen Groot  <steffen.groot@technolution.eu>
-
-	* plot/__patch__.m: Correct indexing of varargin.
-
-2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/dmult.m: Remove.
-	* linear-algebra/Makefile.in: Update.
-	* deprecated/dmult.m: Move here; revert to the 3.0.x version.
-	* deprecated/Makefile.in: Update.
-	* statistics/models/logistic_regression_derivatives.m: Replace dmult
-	by diagonal matrices.
-
-2009-02-19  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Only send figure position info to gnuplot
-	when the plot stream is first opened. Revert usage of hidden axes
-	to store prior figure "position" property.
-
-2009-02-19  John W. Eaton  <jwe@octave.org>
-
-	* general/__isequal__.m, general/__splinen__.m, image/__img__.m,
-	image/__img_via_file__.m, miscellaneous/__xzip__.m,
-	optimization/__all_opts__.m, optimization/__dogleg__.m,
-	optimization/__fdjac__.m, path/__extractpath__.m,
-	plot/__add_datasource__.m, plot/__area__.m,
-	plot/__axes_limits__.m, plot/__axis_label__.m, plot/__bar__.m,
-	plot/__bars__.m, plot/__clabel__.m, plot/__contour__.m,
-	plot/__default_plot_options__.m, plot/__errcomm__.m,
-	plot/__errplot__.m, plot/__ezplot__.m,
-	plot/__gnuplot_has_feature__.m, plot/__gnuplot_version__.m,
-	plot/__go_close_all__.m, plot/__go_draw_axes__.m,
-	plot/__go_draw_figure__.m, plot/__line__.m,
-	plot/__next_line_color__.m, plot/__patch__.m, plot/__plr1__.m,
-	plot/__plr2__.m, plot/__plt1__.m, plot/__plt2__.m,
-	plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
-	plot/__plt2vv__.m, plot/__plt__.m, plot/__plt_get_axis_arg__.m,
-	plot/__pltopt1__.m, plot/__pltopt__.m, plot/__quiver__.m,
-	plot/__scatter__.m, plot/__stem__.m, startup/__finish__.m,
-	statistics/base/__quantile__.m: Consistent doc strings for
-	internal fucntions.
-
-2009-02-18  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/subplot.m: Fix unintended deletion of axes.
-
-2009-02-18  Frederick Umminger  <Frederick_Umminger@playstation.sony.com>
-
-	* audio/wavread.m: Improve search for data chunks.
-
-2009-02-18  Ivan Sutoris  <ivan.sutoris@gmail.com>
-
-	* miscellaneous/edit.m: Expand documentation about editor mode.
-
-2009-02-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/__gnuplot_version__.m: Don't use regexp to extract version
-	number.
-
-2009-02-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/gnuplot_drawnow.m (gnuplot_set_term):
-	Adjust nargin checks for new signature.
-
-2009-02-17  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/contourc.m: Convert demo to test.
-	* plot/surfnorm.m: Add another demo.
-	* plot/surfnorm.m, plot/pareto.m: Add "colormap(jet)" to 1st demo.
-	* plot/plotyy.m, plot/patch.m, plot/pareto.m, plot/legend.m,
-	plot/fill.m, plot/comet.m, plot/colorbar.m, plot/clabel.m:
-	Replace "close all" with "clf" in demo.
-
-2009-02-17  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Only close the gnuplot window and send
-	position/size info when the figure's position property has changed.
-	(gnuplot_set_term): New arg, NEW_STREAM.  Change all uses.
-	(open_gnuplot_stream): Delete unused output ENHANCED.
-
-2009-02-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/plotyy.m: Handle case of existing figure with no axes.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* help/__makeinfo__.m: Rename from help/makeinfo.m.  Delete tmp file.
-	* help/Makefile.in (SOURCES): Add __makeinfo__.m, delete makeinfo.m.
-	* help/get_first_help_sentence.m, help/help.m, help/lookfor.m,
-	help/print_usage.m: Call __makeinfo__ instead of makeinfo.
-	* help/__strip_html_tags__.m, help/__additional_help_message__.m:
-	Doc fix.
-
-2009-02-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/shading.m: No new figure windows for the demos.
-	* plot/surfl.m: Clear figure before running demos.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/expm.m: Fix invalid unscaling.
-	* help/which.m: Do not add "function" here.
-	* optimization/fsolve.m: Update comments.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* help/help.m: Shorten default help text.
-
-2009-02-15  John W. Eaton  <jwe@octave.org>
-
-	* help/doc.m, help/help.m, help/lookfor.m, help/type.m,
-	help/which.m, image/colormap.m, miscellaneous/delete.m,
-	miscellaneous/dir.m, miscellaneous/edit.m,
-	miscellaneous/intwarning.m, miscellaneous/ls.m,
-	miscellaneous/mex.m, miscellaneous/mkoctfile.m,
-	miscellaneous/run.m, miscellaneous/what.m, path/savepath.m,
-	pkg/pkg.m, plot/axis.m, plot/box.m, plot/caxis.m, plot/cla.m,
-	plot/close.m, plot/colorbar.m, plot/grid.m, plot/hidden.m,
-	plot/hold.m, plot/legend.m, plot/orient.m, plot/print.m,
-	plot/shading.m, plot/title.m, plot/xlabel.m, plot/ylabel.m,
-	plot/zlabel.m, testfun/demo.m, testfun/example.m, testfun/fail.m,
-	testfun/rundemos.m, testfun/test.m:
-	Delete "PKG_ADD: mark_as_command" directive.
-
-	* edit.m: Avoid command-style function call syntax when
-	assigning results in tests.
-
-	* deprecated/mark_as_rawcommand.m, deprecated/unmark_rawcommand.m,
-	deprecated/israwcommand.m, deprecated/mark_as_command.m,
-	deprecated/unmark_command.m, deprecated/iscommand.m:
-	New functions.
-	* deprecated/Makefile.in (SOURCES): Add them to the list.
-
-2009-02-15  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/subplot.m: Compatible placement of subplots.
-
-2009-02-13 Ben Abbott  <bpabott@mac.com>
-
-	* plot/__go_draw_axes__.m: Respect axes ticklength property.
-
-2009-02-12  John W. Eaton  <jwe@octave.org>
-
-	* general/sortrows.m: Call __sort_rows_idx__, not __sortrows_idx__.
-
-2009-02-12  Soren Hauberg  <hauberg@gmail.com>
-
-	* help/gen_doc_cache.m: Change API so we only handle one directory per
-	call to this function.
-
-2009-02-12  Soren Hauberg  <hauberg@gmail.com>
-
-	* help/lookfor.m: Adapt to new cache scheme.
-
-2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/sortrows.m: Employ __sortrows_idx__ when applicable,
-	gripe for sparse matrices.
-
-2009-02-11  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/news.m: Look in octetcdir for NEWS file.
-
-2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/interp2.m: Added support for pchip bicubic interpolation.
-	Also simplified code and added support for natural extrapolation via
-	"extrap".
-
-2009-02-09  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/Makefile.in (SOURCES): Include __xzip__.m in the list.
-
-	* testfun/rundemos.m: Error if fopen fails.
-
-2009-02-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (install install-strip): Don't install ls-R file.
-	(uninstall): Don't uninstall ls-R file.
-
-2009-02-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Document support for complex holomorphic
-	systems. Improve guarded evaluation.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/news.m: Use puts instead of printf.
-
-2009-02-05  Thomas D. Dean  <tomdean@speakeasy.org>
-
-	* polynomial/polyout.m: Replace com2str with num2str, and minor
-	style changes.
-
-2009-02-04  John W. Eaton  <jwe@octave.org>
-
-	* help/which.m: Still print something sensible if type is empty.
-
-2009-02-04  Soren Hauberg  <hauberg@gmail.com>
-	    Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* miscellaneous/Makefile.in (SOURCES): Add bzip2.m to the list.
-
-2009-02-04  Frederick Umminger  <Frederick_Umminger@playstation.sony.com>
-
-	* signal/freqz.m: Ensure causal phase response.
-	Handle long input correctly.
-
-2009-02-04  Petr Mikulik  <mikulik@physics.muni.cz>
-
-	* plot/__go_draw_axes__.m: Pass "interpolate 0, 0" to gnuplot
-	instead of "interpolate 4, 4".
-
-2009-02-04  John W. Eaton  <jwe@octave.org>
-
-	* audio/wavwrite.m, deprecated/splu.m, general/bitcmp.m,
-	general/fliplr.m, general/flipud.m, general/genvarname.m,
-	general/nargchk.m, general/nargoutchk.m, general/quadgk.m,
-	general/rot90.m, geometry/griddata.m, geometry/rectint.m,
-	geometry/voronoi.m, geometry/voronoin.m,
-	help/__strip_html_tags__.m, image/brighten.m, image/imfinfo.m,
-	image/imread.m, linear-algebra/cond.m, linear-algebra/condest.m,
-	linear-algebra/dmult.m, linear-algebra/dot.m,
-	linear-algebra/expm.m, linear-algebra/housh.m,
-	linear-algebra/onenormest.m, linear-algebra/subspace.m,
-	miscellaneous/compare_versions.m, optimization/__all_opts__.m,
-	optimization/optimget.m, pkg/pkg.m, plot/__bar__.m,
-	plot/__plr2__.m, plot/ribbon.m, plot/slice.m, polynomial/pchip.m,
-	polynomial/roots.m, set/unique.m, signal/fractdiff.m,
-	signal/hurst.m, specfun/beta.m, specfun/legendre.m,
-	statistics/base/__quantile__.m, statistics/base/quantile.m,
-	statistics/tests/cor_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m, strings/base2dec.m,
-	strings/dec2base.m, strings/strcat.m, strings/validatestring.m,
-	time/addtodate.m: Style fixes.
-
-2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: remove redundant line.
-
-2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/Makefile.in: Add missing source.
-
-2009-02-02  Rob Mahurin  <rob@utk.edu>
-
-	* general/interpft.m: Increase tolerance in tests, for FFTPACK.
-
-2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__all_opts__.m: Yield empty list in recursive calls.
-	mlock to avoid unloading.
-
-2009-01-30  John W. Eaton  <jwe@octave.org>
-
-	* optimization/PKG_ADD: Delete.
-	* optimization/fsolve.m, optimization/fzero.m,
-	optimization/lsqnonneg.m: Use PKG_ADD: comment to call __all_opts__.
-
-2009-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__all_opts__.m: New source.
-	* optimization/optimset.m: Implement checking for registered options.
-	* optimization/optimget.m: Ditto.
-	* optimization/fsolve.m: Fix misspelled option.
-	* optimization/PKG_ADD: New startup file.
-
-2009-01-30  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Add support for transparent surfaces.
-	* plot/__gnuplot_has_feature__.m: Add feature 'transparent_surface',
-	Require gnuplot 4.3 for transparent patches and surfaces.
-
-2009-01-30  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* time/datestr.m: Convert YYYY to %Y instead of %C%y.
-	Convert [Dd][Dd] to %d instead of %e.
-
-2009-01-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/print.m: Use __gnuplot_has_feature__ instead of
-	compare_versions.
-
-	* plot/gnuplot_drawnow.m: Respect x11 figure position property.
-
-2009-01-29  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/fileparts.m: Match all possible file separators.
-
-2009-01-29  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Add support for transparent patches.
-
-2009-01-29  S�ren Hauberg  <hauberg@gmail.com>
-
-	* help/help.m, help/print_usage.m, help/get_first_help_sentence.m:
-	print sensible error message when function is found but not documented.
-
-	* help/help.m: Allow displaying 'Contents.m' files.
-
-2009-01-29  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/Makefile.in (SOURCES): Include diffuse.m, specular.m, and
-	surfl.m in the list.
-
-2009-01-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Style fixes.
-
-	* plot/__gnuplot_has_feature__.m: New file, checks for supported
-	feature.
-
-2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Don't use pivoting at all (for the time
-	being).
-
-2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Use more adaptive rescaling.
-	Put back the default tolerances based on machine eps respecting
-	the used precision. Partially reflect this in the default optimset
-	values.
-
-2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/ordefields.m: Use indexed assignment instead of a
-	loop. Fix for multidimensional cases.
-
-2009-01-27  John W. Eaton  <jwe@octave.org>
-
-	* general/arrayfun.m, image/imwrite.m, plot/axis.m, plot/clf.m,
-	plot/ribbon.m, plot/gnuplot_drawnow.m, plot/cla.m, set/unique.m:
-	Use endif or endfor instead of "end".
-
-	* path/savepath.m: Call command_line_path instead of commandlinepath.
-
-2009-01-27  Jason Riedy  <jason@acm.org>
-
-	* miscellaneous/orderfields.m: Really fix the indexing for struct
-	arrays.
-
-2009-01-27  Carlo de Falco  <kingcrimson@tsicali.it>
-
-	* polynomial/spline.m: Doc fix.
-
-2009-01-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* general/gradient.m: Handle computing the gradient of a function
-	handle.
-
-2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/lsqnonneg.m: Reimplement using QR updating for
-	square and overdetermined systems.
-
-2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Provide default values on request.
-	Adjust some defaults.
-	* optimization/fzero.m: Ditto.
-	* optimization/optimset.m: Query optimal values via the M*b way.
-
-2009-01-26  Jason Riedy  <jason@acm.org>
-
-	* miscellaneous/orderfields.m: Also avoid loop for non-empty structs.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Disable Broyden updates for sparse jacobians.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__fsolve_defopts__.m: Remove.
-	* optimization/Makefile.in: Reflect change.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__fdjac__.m: Fix setting up h.
-	* optimization/fsolve.m: Allow underdetermined systems. Use QR for
-	large enough square and overdetermined systems, with pivoting in the
-	first step. Simplify options. Adjust defaults - make TR radius
-	tolerance less stringent. Support DisplayFcn.
-
-2008-12-24 Ben Abbott  <bpabbott@mac.com>
-
-	* path/savepath.m: Respect cmd-line and env paths.
-
-2009-01-24 Ben Abbott  <bpabbott@mac.com>
-
-	* sparse/svds.m: svds.m: skip tests if ARPACK is missing.
-
-2009-01-23  S�ren Hauberg  <hauberg@gmail.com>
-
-	* help/type.m: Make 'type X' work, when X is the name of a variable.
-
-2009-01-22  John W. Eaton  <jwe@octave.org>
-
-	* help/which.m: New function.
-	* help/Makefile.in (SOURCES): Add it to the list.
-
-	* help/help.m: Also display location of the file before the help text.
-	* help/print_usage: Also display additional help text.
-	* help/__additional_help_message__.m: Return message instead of
-	displaying it.
-
-2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
-
-	* help: New directory.
-	* configure.in (AC_CONFIG_FILES): Add help/Makefile to the list.
-	* Makefile.in (SUBDIRS): Add it to the list.
-	* help/__additional_help_message__.m, help/__strip_html_tags__.m,
-	help/gen_doc_cache.m, help/get_first_help_sentence.m, help/help.m,
-	help/lookfor.m, help/makeinfo.m, help/print_usage.m, help/type.m:
-	New functions.
-	* help/Makefile.in (SOURCES): Add them to the list.
-	* help/doc.m: Move here from miscellaneous/doc.m.
-	* miscellaneous/Makefile.in (SOURCES): Remove doc.m from the list.
-	* miscellaneous/pkg.m: Generate documentation cache during install.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Undo the last change.
-
-2009-01-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* miscellaneous/doc.m: Add test for existence of info file.
-
-2009-01-21  John W. Eaton  <jwe@octave.org>
-
-	* plot/__axis_label__.m: Set properties in existing axis label
-	object instead of creating a new text object.
-	* plot/ylabel.m: Don't set rotation property here.
-	* plot/title.m: Don't set horizontalalignment property here.
-
-	* plot/ylabel.m: Insert rotation property in varargin before
-	passing it on to __axis_label__.
-	* plot/__axis_label__.m: Don't set rotation for ylabel here.
-
-	* plot/title.m: Insert horizontalalignment property in varargin
-	before passing it on to __axis_label__.
-
-2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strchr.m: New function.
-	* strings/Makefile.in: Add it.
-
-2009-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Only use qrupdate if available.
-
-2009-01-20  John W. Eaton  <jwe@octave.org>
-
-	* general/postpad.m: Doc fix.
-	* general/prepad.m: Doc fix.
-	* image/pink.m: Spelling fix.
-	* image/hsv.m: Doc fix.
-	From Francesco Potorti` <Potorti@isti.cnr.it>.
-
-	* testfun/assert.m: Use isfield instead of struct_contains.
-
-2009-01-17 Ben Abbott  <bpabbott@mac.com>
-
-	* general/cart2sph.m, cart2pol.m, sph2cart.m pol2cart.m:
-	Permit scalars when transforming coordinates.
-
-2009-01-17  Steven Verstoep  <isgoed@hotmail.com>
-
-	* plot/__quiver__.m: __quiver__.m: Fix auto-size of (x,y) coord.
-
-2009-01-16  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/gnuplot_drawnow.m: Fix for handling options.
-
-2009-01-16  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/legend.m: Fix legend order for both horizontal and
-	vertical string cell.
-
-2008-01-15  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/grid.m: Document handle argument.
-
-2009-01-15  Peter L. S�ndergaard  <peter@sonderport.dk>
-
-	* general/nargoutchk.m: Doc fix.
-	* general/nargchk.m: Improve compatibility.  New tests.
-
-2008-01-15  Rafael Laboissiere  <rafael@debian.org>
-
-	* gethelp.cc: Include <cstdio>.
-
-2009-01-14  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m (ticklabel_to_cell): New function.
-	Use it to handle non-cell ticklabels.
-
-2009-01-14  S�ren Hauberg  <hauberg@gmail.com>
-
-	* general/diff.m, general/logspace.m, general/nextpow2.m,
-	linear-algebra/commutation_matrix.m,
-	linear-algebra/duplication_matrix.m, linear-algebra/expm.m,
-	miscellaneous/bincoeff.m, miscellaneous/list_primes.m,
-	optimization/fsolve.m, plot/subplot.m, polynomial/pchip.m,
-	polynomial/polyout.m, polynomial/residue.m, polynomial/spline.m,
-	signal/freqz.m, signal/sinc.m, specfun/beta.m, specfun/betaln.m,
-	specfun/nchoosek.m, specfun/pow2.m, special-matrix/hankel.m,
-	special-matrix/hilb.m, special-matrix/invhilb.m
-	special-matrix/sylvester_matrix.m, special-matrix/toeplitz.m,
-	special-matrix/vander.m, statistics/base/gls.m,
-	statistics/base/kendall.m, statistics/base/kurtosis.m,
-	statistics/base/mean.m, statistics/base/median.m,
-	statistics/base/ols.m, statistics/base/skewness.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m:
-	Use ifnottex instead of ifinfo.
-
-2009-01-14  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/expm.m:
-
-	* optimization/fsolve.m: Doc fix.
-
-	* plot/__go_draw_axes__.m: Scale markersize by 1/3, not 1/6.
-
-	* io/dlmwrite.m: Use '%c' format for character data.
-
-2009-01-13  John W. Eaton  <jwe@octave.org>
-
-	* general/repmat.m: Handle negative row or column dimension.
-
-	* elfun/lcm.m, general/accumarray.m, general/bicubic.m,
-	general/cellidx.m, general/cplxpair.m, general/dblquad.m,
-	general/gradient.m, general/interp1.m , general/pol2cart.m,
-	general/quadgk.m, general/quadv.m, general/repmat.m,
-	general/structfun.m, geometry/griddata.m, geometry/inpolygon.m,
-	image/brighten.m, image/hsv2rgb.m, image/imread.m,
-	image/imwrite.m, linear-algebra/dmult.m,
-	linear-algebra/onenormest.m, miscellaneous/getfield.m,
-	miscellaneous/setfield.m, miscellaneous/what.m,
-	optimization/fsolve.m, optimization/fzero.m,
-	optimization/lsqnonneg.m, optimization/qp.m, pkg/pkg.m,
-	plot/__area__.m, plot/__clabel__.m, plot/__stem__.m, plot/axis.m,
-	plot/colorbar.m, plot/contour3.m, plot/findall.m, plot/findobj.m,
-	plot/fplot.m, plot/grid.m, plot/hist.m, polynomial/convn.m,
-	polynomial/polyreduce.m, set/intersect.m, set/setxor.m,
-	set/union.m, signal/arch_fit.m, signal/durbinlevinson.m,
-	signal/fftshift.m, signal/freqz_plot.m, signal/ifftshift.m,
-	signal/spectral_adf.m, sparse/bicgstab.m, sparse/cgs.m,
-	sparse/gplot.m, sparse/normest.m, sparse/pcg.m, sparse/pcr.m,
-	sparse/spy.m, sparse/svds.m, sparse/treelayout.m,
-	sparse/treeplot.m, specfun/primes.m, special-matrix/hadamard.m,
-	statistics/base/center.m, statistics/base/quantile.m,
-	statistics/base/ranks.m, statistics/base/std.m,
-	statistics/distributions/hygepdf.m,
-	statistics/tests/kruskal_wallis_test.m, strings/index.m,
-	strings/mat2str.m, strings/str2double.m, strings/strrep.m,
-	testfun/assert.m, testfun/example.m, testfun/fail.m,
-	testfun/speed.m, testfun/test.m: Style fixes.
-
-	* audio/wavread.m, general/__splinen__.m, general/bicubic.m,
-	general/rat.m, linear-algebra/expm.m, linear-algebra/krylov.m,
-	linear-algebra/onenormest.m, miscellaneous/edit.m,
-	optimization/__dogleg__.m, pkg/pkg.m, plot/__errplot__.m,
-	plot/__go_draw_axes__.m, plot/__stem__.m, plot/findobj.m,
-	set/ismember.m, signal/arma_rnd.m, signal/freqz.m, signal/stft.m,
-	sparse/pcg.m, sparse/sprandsym.m, sparse/treelayout.m,
-	specfun/factor.m, specfun/nchoosek.m, specfun/primes.m,
-	statistics/base/quantile.m, statistics/base/values.m,
-	strings/findstr.m, strings/str2double.m, strings/strrep.m,
-	testfun/assert.m, testfun/fail.m, testfun/speed.m, testfun/test.m,
-	time/datestr.m, time/datevec.m: Comment style fixes.
-
-2009-01-13  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* set/unique.m: Fix for vertical array inputs.
-
-2009-01-12  John W. Eaton  <jwe@octave.org>
-
-	* optimization/fzero.m, optimization/fsolve.m: Style fixes.
-	Use strcmpi to compare options.
-
-2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strings/strvcat.m: Remove.
-	* strings/Makefile.in (SOURCES): Remove strvcat.m.
-
-2009-01-12  John W. Eaton  <jwe@octave.org>
-
-	* plot/diffuse.m, plot/surfl.m, plot/specular.m: Style fixes.
-
-2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/sortrows.m: Fix invalid `{x:y} = z' assignment.
-	* miscellaneous/orderfields.m: Ditto.
-	* miscellaneous/what.m: Ditto.
-	* pkg/pkg.m: Ditto.
-	* plot/ndgrid.m: Ditto.
-	* strings/strcat.m: Ditto.
-
-2009-01-09  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/surfl.m: New function
-	* plot/diffuse.m: Ditto.
-	* plot/specular.m: Ditto.
-
-2009-01-05  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Set defaults for FIND and PERL.  Check usage.
-
-2009-01-01  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* miscellaneous/__xzip__.m: Fix error messages, add tests.
-
-2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* general/int2str.m, general/num2str.m, strings/base2dec.m,
-	strings/blanks.m, strings/cstrcat.m, strings/findstr.m,
-	strings/isstrprop.m, strings/mat2str.m, strings/regexptranslate.m,
-	strings/split.m, strings/str2double.m, strings/str2num.m,
-	strings/strcat.m, strings/strcmpi.m, strings/strfind.m,
-	strings/strjust.m, strings/strmatch.m, strings/strncmpi.m,
-	strings/strrep.m, strings/strtok.m, strings/strtrim.m,
-	strings/strtrunc.m, strings/strvcat.m, strings/substr.m:
-	Fix documentation strings, add examples, references and tests.
-	* general/int2str.m: Add missing semicolon.
-	* strings/regexptranslate.m: add nargin check.
-	* strings/str2double.m: fix nargin check.
-
-2008-12-29  David Bateman  <dbateman@free.fr>
-
-	* goemetry/voronoi.m: Speed up and handle dense grids.
-
-2008-12-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* miscellaneous/delete.m: Allow filename globs. Display warnings if
-	operation fails.
-
-2008-12-26  Francesco Potortì  <pot@gnu.org>
-
-	* general/prepad.m: Add reference to postpad.
-
-	* miscellaneous/bincoeff.m: Make reference to nchoosek.
-
-	* general/postpad.m: Use @seealso.  Add reference to resize.
-
-	* statistics/base/statistics.m: Correct help string.
-
-	* plot/hist.m: Doc string now mentions matrix input argument.
-	Correct error message.
-
-2008-12-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__contour__.m: __contour__.m: correct order of patches
-
-2008-12-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__contour__.m: __contour__.m: correct order of patches
-
-2008-12-24  Doug Stewart  <dastew@sympatico.ca>
-
-	* plot/grid.m: Handle "minor" option.
-
-2008-12-24  John W. Eaton  <jwe@octave.org>
-
-	* testfun/test.m: Print "has no tests" message if there are demos
-	but no tests instead of printing PASSES 0 out of 0 tests.
-
-2008-12-23  David Bateman  <dbateman@free.fr>
-
-	* sparse/svds.m: New function.
-	* sparse/Makefile.in (SOURCES): Add it here.
-
-2008-11-21  Radek Salac  <salac.r@gmail.com>
-
-	* sparse/bicgstab.m: New function.
-	* sparse/Makefile.in (SOURCES): Add it here.
-
-2008-12-18  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* time/datevec.m (__date_vfmt2sfmt__): New helper function.
-	(datevec): Avoid repeated parsing of the format string.
-	* set/unique.m: Only check for options if nargin > 1.
-
-2008-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/lsqnonneg.m: Preprocess using QR for over-determined
-	systems. Simplify & fix indexing. Use left division for step problem.
-	Fix output args.
-
-2008-12-13  Francesco Potort�  <pot@gnu.org>
-
-	* specfun/nchoosek.m: Check for input arguments, signal loss of
-	precision, correctly handle k==0 and k==n cases, add proper tests.
-
-2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fsolve.m: Optionally allow pivoted qr factorization.
-
-2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/expm.m: New source.
-
-2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/nchoosek.m: Use a recursionless approach.
-
-2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/repmat.m: Optimize & simplify the scalar & 2d matrix case.
-
-2008-12-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strings/lower.m: Remove.
-	* strings/upper.m: Remove.
-	* strings/Makefile.in: Remove lower.m, upper.m.
-
-2008-12-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strings/str2mat.m: Make it a simple wrapper around
-	char() and move it to deprecated/str2mat.m, remove
-	obsolete tests, move remaining test to src/strfns.cc (Fchar).
-	* strings/Makefile.in: Remove str2mat.m.
-	* deprecated/Makefile.in: Add str2mat.m.
-	* strings/strvcat.m: Remove reference to str2mat.
-
-2008-11-28  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Set two point clipping mode to be on.
-
-2008-11-26  Francesco Potortì  <pot@gnu.org>
-
-	* specfun/nchoosek.m: Set max_recursion_depth and use a subfunction.
-
-2008-11-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* miscellaneous/gzip.m: Remove @seealso reference to __xzip__,
-	improve tests.
-	* miscellaneous/bzip2.m: Remove @seealso reference to __xzip__,
-	fix handling of output argument, add test.
-	* miscellaneous/__xzip__.m: Improve error messages, fix cleanup
-	of temporary directories, remove tab characters
-
-2008-11-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/legend.m: Correct ording of legend labels.
-
-2008-11-24  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Correct order for rendering children.
-
-2008-11-21  Radek Salac  <salac.r@gmail.com>
-
-	* sparse/cgs.m, sparse/treelayout.m: New functions.
-	* sparse/Makefile.in (SOURCES): Add them here.
-
-2008-11-14  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m (do_tics_1): Support the minorick properties
-	of the axis object.
-
-2008-11-14  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/gnuplot_drawnow.m: Add support of properites to gp backend.
-
-2008-11-13  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/chi2rnd.m: Fix another missing semicolon.
-	From sven.mattisson@insatnet.nu.
-
-2008-11-12  David Bateman  <dbateman@free.fr>
-
-	* plot/__quiver__.m: Only autoscale if more than one element to
-	plot. Modify callbacks for change in order of children.
-	* plot/__stem__.m: Modify callbacks for change in order of children.
-
-2008-11-10  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/spline.m: Delete debugging statements.  From
-	Sebastian Sch�ps <sebastian@schoeps.org>.
-
-2008-11-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* mkdoc: do not remove white space before @ within @example
-	environment
-
-2008-11-05  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* plot/subplot.m: fix texi bug
-
-2008-11-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* miscellaneous/unpack.m: return directly after recursive handling
-	of cell-strings
-
-2008-11-03  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: xticklabel should accept a numeric vector.
-
-2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/__fdjac__.m: New function file.
-	* optimization/__dogleg__.m: New function file.
-	* optimization/fsolve.m: New function file.
-	* optimization/Makefile.in: Include the new sources.
-
-2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: Replace tabs by spaces.
-
-2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: Simplify exception handling.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/fzero.m: New function file.
-	* optimization/Makefile.in: Add it.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/optimset.m: Don't include empty options in option
-	structure.
-	* optimization/optimget.m: New function file.
-	* optimization/Makefile.in: Add it.
-	* optimization/lsqnonneg.m: Query options using optimget.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/__norm__.m: Remove.
-
-2008-10-25  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* miscellaneous/bzip2.m, miscellaneous/__xzip__.m: new commands.
-	* miscellaneous/gzip.m: change to use __xzip__ for actual compression,
-	add tests.
-
-2008-10-31  David Bateman  <dbateman@free.fr>
-
-	* plot/__contour__.m: Exclude infinite values when calculating contour
-	levels.
-	* plot/clabel.m: Close previous plots in demos to avoid pollution
-	between other plot demos.
-	* plot/plotyy.m: Ditto.
-
-2008-10-30  David Bateman  <dbateman@free.fr>
-
-	* plot/legend.m: Add support for the "left" and "right" options.
-	* plot/__go_draw_axes__.m: If the axes property keyreverse is set,
-	reverse the key and labelling text.
-
-	* plot/__clabel__.m, plot/clabel.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them here.
-	* plot/__contour__.m: Rewrite to use contour groups.
-	* plot/contourf.m: Call __contour__ instead of using specific code.
-	* plot/contour.m, plot/contour3.m: Minor modification to allow for
-	new interface to __contour__.
-
-2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* set/create_set.m, set/ismember.m, set/union.m, set/complement.m:
-	Fix @seealso references to deprecated function intersection.
-	* polynomial/polyvalm.m, polynomial/polyout.m,
-	polynomial/polyint.m, polynomial/polygcd.m,
-	deprecated/polyinteg.m: Remove "and" from @seealso string.
-	* specfun/betaln.m: Change @seealso reference from deprecated
-	betai to betainc.
-	* plot/plot.m, plot/xlabel.m, plot/ylabel.m, plot/zlabel.m,
-	plot/plot3.m: Fix @seealso references to ylabel and zlabel.
-	* general/issymmetric.m, image/imagesc.m, specfun/realpow.m,
-	polynomial/polyfit.m, time/eomday.m: Remove @seealso references to
-	non-existent functions.
-
-2008-10-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/cla.m: In test, set visible off when creating figure.
-
-2008-10-28  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* optimization/qp.m: Convert bounds of the form b <= x <= b and
-	constraints of the form b <= A*x <= b to equality constraints.
-
-2008-10-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* plot/ellipsoid.m: Check nargin == 6, not nargin == 5.
-
-2008-10-22  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/cla.m: Fix error when no children to clear.
-
-	* plot/findobj.m: Allow handle to be empty.
-
-2008-10-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/allchild.m: Move call to get showhiddenhandles outside of
-	unwind_protect block.
-
-2008-10-22  David Bateman  <dbateman@free.fr>
-
-	* plot/refreshdata.m: Modify demo so that "y" is evaluated in the
-	"caller" workspace.
-
-	* plot/__errplot__.m: Add errorbar series objects.
-	* plot/errbar.m: Add some demos.
-
-	* plot/__add_line_series__.m: Remove
-	* plot/Makefile.in (SOURCES): Remove it here too.
-	* plot/__add_datasource__.m: Allow for more than one character in
-	source name.
-	* plot/refreshdata.m: Ditto.
-	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vv__.m,
-	plot/__plt2vs__.m, plot3.m: Remove previous line series changes.
-	* plot/__scatter__.m: Add scatter series objects and data sources.
-	* plot/legend.m: Update type in loop and remove debugging messages.
-
-2008-10-21  Ben Abbott  <bpabbott@mac.com>
-
-	* specfun/legendre.m: Warn once on under/overflow.
-
-	* plot/clf.m: Improve Matlab compatibility.
-
-2008-10-21  John W. Eaton  <jwe@octave.org>
-
-	* plot/quiver3.m: Turn hold off after demo.
-
-	* plot/newplot.m: Delete stray debugging code.
-
-	* plot/gnuplot_drawnow.m: Pass handle to __go_draw_figure__, not
-	struct.  Use get instead of examining struct fields directly.
-	* plot/__go_draw_figure__.m: First arg is now handle, not figure
-	object struct.  Use get instead of examining struct elements
-	directly.  Use allhild instead of looking at children field of
-	figure object struct.
-
-2008-10-20  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/orient.m: Fix syntax error.
-
-2008-10-20  David Bateman  <dbateman@free.fr>
-
-	* testfun/rundemos.m: Pause between files, as demo itself doesn't.
-
-	* plot/fill.m, plot/quiver.m: Quiet the demos.
-	* plot/stair.m: Treat a line style argument correctly.
-
-2008-10-20  John W. Eaton  <jwe@octave.org>
-
-	* plot/surfnorm.m: Save and restore hold state.
-	From Daniel J. Sebald <daniel.sebald@ieee.org> and
-	Ben Abbott <bpabbott@mac.com>.
-
-2008-10-20  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/closereq.m: Respect property tag.
-
-	* plot/__stem__.m: Respect new ordering of children when setting
-	baseline.
-
-	* plot/orient.m, plot/print.m: Properly validate figure handle.
-
-	* plot/hold.m, plot/comet.m: Properly validate axes handle.
-
-	* plot/__go_draw_axes__.m: Fix for binary xfer of suface plots.
-
-2008-10-20  David Bateman  <dbateman@free.fr>
-
-	* plot/plotyy.m: Test that an axes handle actually is one before
-	setting it.
-
-2008-10-17  David Bateman  <dbateman@free.fr>
-
-	* plot/__plt_get_axis_arg__.m: Exclude non-numeric and root figure
-	from potential axis handles.
-	* plot/colorbar.m: Remove debug output.
-	* plot/comet.m: Close plot before demo
-	* plot/contourc.m: No output if nargout == 0.
-
-2008-10-16  David Bateman  <dbateman@free.fr>
-
-	* plot/subplot.m: Allow for column vector of children for figure.
-
-2008-10-16  John W. Eaton  <jwe@octave.org>
-
-	* testfun/rundemos.m: New function.
-
-2008-10-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/contourf.m: Correct order of patch object handles.
-
-2008-10-16  David Bateman  <dbateman@free.fr>
-
-	* plot/colorbar.m (colorbar:resetaxis): Uncomment the reseting of
-	the axes.
-
-	* plot/newplot.m: Don't preserve axes properties here, but rather
-	do it in the graphics handle code so that the preservation can be
-	done after callbacks are executed.
-
-	* plot/__go_draw_axes__.m: If current plot is an image, don't flag
-	the plot as binary, as the binary specification is already in the
-	"usingclause".
-
-	* plot/__go_draw_figure__.m: Always use multiplot and create an
-	enclosing axis to ensure bounding box of postscript is correct.
-
-2008-10-16  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m (do_tics_1): New arg, interpreter.
-	(do_tics): Pass interpreter to do_tics_1.
-
-2008-10-15  David Bateman  <dbateman@free.fr>
-
-	* general/colon.m: Small typo.
-	* general/loadobj.m: Ditto.
-
-2008-10-14  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m (do_tics_1): New args, fontname and fontsize.
-	Pass fontspec for tic marks to gnuplot.
-	(do_tics): Pass axes fontname and fontsize to do_tics_1.
-
-	* plot/newplot.m: Perserve fontangle, fontname, fontsize,
-	fontunits, fontweight, position, outerposition, and
-	activepositionproperty axes properties when replacing plot.
-
-2008-10-15  Daniel J. Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__go_draw_axes__.m: Make previous change work for surface
-	plots.
-
-2008-10-14  Daniel J. Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__go_draw_axes__.m: Send binary data to gnuplot.
-
-2008-10-13  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix concatenation of handles.
-
-2008-10-12  David Bateman  <dbateman@free.fr>
-
-	* general/colon..m: New function.
-	* general/Makefile.in (SOURCES): Add it here.
-
-2008-10-10  David Bateman  <dbateman@free.fr>
-
-	* image/__img__.m: Manually set the limits of th eimage
-	* plot/__go_draw_axes__.m: Base window position in the axis
-	position property and not the outerposition property. Remove
-	colorbar code based on the gnuplot colorbox. Allow images to be a
-	vector to support image based colorbars. Also check labelmode for
-	manual tics.
-	* plot/__go_draw_figure__.m: Remove gnuplot colorbox based
-	colorbar code.
-	* plot/colorbar.m: Rewrite to use an image and callbacks to link
-	it to the principal axis.
-	* plot/legend.m: Support an axis handle as the first
-	argument. Support hggroups.
-	* plot/pareto.m: Don't support an axis handle as the first
-	argument as the plotyy command in fact needs two axis handles.
-	* plot/plotyy.m: Rewrite to use listeners and callbacks to
-	synchronize the two axes.
-	* plot/subplot.m: Also skip axes that are tagged as being a
-	colorbar. Don't break in search of overlapping axes to delete. Set
-	both the position and the outerposition.
-
-2008-10-09  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__axis_label__.m: Inherit font properties from axes.
-
-2008-10-09  David Bateman  <dbateman@free.fr>
-
-	* general/loadobj.m, general/saveobj.m, general/display: New functions
-	* general/Makefile.in (SOURCES): Add then here.
-
-2008-10-08  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/fileparts.m: Handle "/file" properly.
-	Improve compatibility.
-
-2008-10-07  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/cla.m: New function.
-	* plot/Makefile.in (SOURCES): Add it to the list.
-
-2008-10-07  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/delete.m: Pass array of handles to __go_delete__.
-
-2008-10-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/__add_datasource__.m, plot/__axes_limits__.m,
-	plot/__bar__.m, plot/__bars__.m, plot/__contour__.m,
-	plot/__go_draw_axes__.m, plot/__go_draw_figure__.m,
-	plot/__patch__.m, plot/__quiver__.m, plot/__scatter__.m,
-	plot/__stem__.m, plot/ancestor.m, plot/axis.m, plot/box.m,
-	plot/caxis.m, plot/close.m, plot/colorbar.m, plot/fill.m,
-	plot/findobj.m, plot/grid.m, plot/hidden.m, plot/hold.m,
-	plot/ishold.m, plot/legend.m, plot/linkprop.m, plot/orient.m,
-	plot/plotmatrix.m, plot/shading.m: Use case-insensitive comparison
-	for properties.  Misc style fixes.
-
-2008-10-06  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/orient.m: Figure handle must be scalar.
-	* plot/hold.m: Axis handle must be scalar.
-	* plot/axes.m: Axis handle must be scalar.
-	* plot/__plt_get_axis_arg__.m: Handle must be scalar.
-
-	* miscellaneous/delete.m: Permit a vector of handles to be deleted.
-
-2008-10-02  John W. Eaton  <jwe@octave.org>
-
-	* pkg/pkg.m (configure_make): Handle filenames with spaces.
-
-2008-10-02  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* pkg.m (configure_make): Enclose building directory in quotes.
-
-2008-10-02  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Remove depdenence on gnuplot version.
-
-2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* string/split.m: New tests.
-
-2008-09-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/__go_draw_axes__.m: Fix interpolation of facecolors.
-
-	* plot/shading.m: New demo.
-
-2008-09-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Eliminate have_newer_gnuplot variable.
-
-	* plot/__gnuplot_version__.m: Also include patchlevel.
-
-2008-09-29  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/deconv.m: Fix row/col orientation & length of output.
-
-	* polynomial/conv.m: Correct row/col orientation of output.
-
-2008-09-27  Ivan Sutoris  <ivan.sutoris@gmail.com>
-
-	* optimization/sqp.m: Document additional parameters.
-
-2008-09-26  David Bateman  <dbateman@free.fr>
-
-	* general/subsindex.m: Dummy subsindex function for help string
-	and to throw error for use outside of a class
-	* general/Makefile.in (SOURCES): Include it here.
-
-2008-09-26  John W. Eaton  <jwe@octave.org>
-
-	* image/imfinfo.m: Delete temporary file.
-
-2008-09-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imread.m, image/imwrite.m: Doc fix.
-
-2008-09-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/fplot.m: Call axis after calling plot.
-
-2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imfinfo.m: New function.
-	* image/Makefile.in (SOURCES): Add it to the list.
-
-2008-09-24  Ben Abbott  <bpabbott@mac.com>
-
-	* strings/strcat.m: Improve Matlab compatibility for non-character
-	data.
-
-2008-09-24  John W. Eaton  <jwe@octave.org>
-
-	* general/interpft.m: Increase tolerance in tests.
-
-2008-09-23  Francesco Potorti`  <Potorti@isti.cnr.it>
-
-	* plot/pcolor.m: Improve doc string.
-
-2008-09-22 Ben Abbott  <bpabbott@mac.com>
-
-	* plot/comet.m: New file.
-	* plot/Makefile.in (SOURCES): Add it here.
-
-2008-09-22  David Bateman  <dbateman@free.fr>
-
-	* plot/plotmatrix.m: New function.
-	* plot/Makefile.in (SOURCES): Add it here.
-
-	* general/quadgk.m: No function count in quadgk and so don't try and
-	print it when given trace argument.
-
-2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/blkdiag.m: Skip assignment if rhs is empty.
-
-2008-09-18  Kris Thielemans  <kris.thielemans@csc.mrc.ac.uk>
-
-	* image/imshow.m: Fix for display_range.
-
-	* general/interpn.m: Fixe for extrapval and documentation of
-	extrapval.
-
-2008-09-17  David Bateman  <dbateman@free.fr>
-
-	* time/datetick.m: New function.
-	* time/Makefile.in (SOURCES): Add it here.
-	* time/datestr.m: More careful check for datevec format with 6
-	column arguments.
-	* plot/__go_draw_axes__ (do_tics_1): Use %.15g format rather than
-	%g format. Also use manual mode if xlabelmode is manual.
-
-	* general/cell2mat.m: Backout previous change. Special case 2D
-	case for speed.
-
-2008-09-11  David Bateman  <dbateman@free.fr>
-
-	* general/cell2mat.m: Improve the speed.
-
-2008-09-09  John W. Eaton  <jwe@octave.org>
-
-	* time/datestr.m: Convert format and use strftime to do most of
-	the actual conversion.
-
-2008-09-08  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* plot/plot.m: Doc fix.
-
-2008-09-08  Mark van Rossum  <mvanross@inf.ed.ac.uk>
-
-	* statistics/distributions/binornd.m: Handle zero values of n
-	correctly.
-
-2008-09-08  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/contourf.m: Fix case for equal-sized matrices
-	of X and Y.
-
-2008-09-02  David Bateman  <dbateman@free.fr>
-
-	* plot/__add_datasource__.m: Fix indexing of varargin.
-
-	* plot/__line__.m: Remove empty clause fof if/then/else test
-	* plot/plot3.m: Correctly plot matrices.
-
-2008-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
-	plot/__plt2vv__.m: Do not call "set" with empty arguments.
-
-2008-08-29  David Bateman  <dbateman@free.fr>
-
-	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
-	plot/__plt2vv__.m, plot/plot3.m, plot/__area__.m, plot/__bars__.m,
-	plot/__quiver__.m, plot/__stem__.m, plot/stairs.m :
-	Pass additional prop/val pairs to hggroup rather than underlying
-	objects. If a baseline existings specifically associate it with
-	the parent of the created hggroup to allow things like "stem(...,
-	'parent', hg)" to work correctly.
-	* plot/hold.m: If currentaxes if figure doesn't exist, create it.
-
-	* plot/plot3.m: Pass hline to __add_line_series__.
-	* plot/__add_datasource__.m: Fix off by one error.
-
-2008-08-28  David Bateman  <dbateman@free.fr>
-
-	* plot/__add_line_series__.m, plot/ishghandle.m, plot/linkprop.m,
-	plot/refresh.m, plot/refreshdata.m: New functions
-	* Makefile.in (SOURCES): Add them here.
-
-	* plot/__area__.m, plot/__bars__.m, plot/__quiver__.m,
-	plot/__stem__.m, plot/stairs.m, plot/stem.m: Add data sources.
-
-	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
-	plot/__plt2vv__.m, plot/plot3.m: Add line series and data sources.
-
-2008-08-28  Martin Weiser  <weiser2@natur.cuni.cz>
-
-	* plot/scatter3.m: Doc fix.
-
-2008-08-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/hold.m: If hold is applied to a figure, set state for all
-	child axes objects.
-
-2008-08-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/backend.m: New function to handle backend switch.
-	* plot/Makefile.in: Add it.
-
-2008-08-26  David Bateman  <dbateman@free.fr>
-
-	* plot/__area__.m: Use __next_line_color__ rather than fixed set
-	of colors. Convert to use area series objects.
-	* plot/area.m: Update documentation to correspond to
-	the area series usage.
-	* plot/__bar.m: Pass the original rather than scaled width to
-	__bars__.
-	* plot/__bars__.m: Convert to use bar series objects.
-	* plot/bar.m, plor/barh.m:  Update documentation to correspond to
-	the bar series usage.
-	* plot/__quiver__.m: Convert to use quiver series objects. Change
-	the default scaling and arrowsize for compatibility.
-	* plot/quiver.m:  Update documentation to correspond to
-	the quiver series usage.
-	* plot/stairs.m: Convert to use stair series objects.
-	* plot/stem.m: Don't include baseline in xlim calculation. Correct
-	test of whether baseline xdata needs updating in the update_xlim
-	callback.
-
-2008-08-25  Thomas L. Scofield  <scofield@calvin.edu>
-
-	* image/imwrite.m: Add ras and tiff to the list of accepted formats.
-	Handle parameter-value options.  Untabify.
-
-2008-08-25  David Bateman  <dbateman@free.fr>
-
-	* plot/__stem__.m: Use property inheritance and don't explicitly
-	call drawnow.
-
-	* plot/__go_draw_axes__.m: Respect the "visible" property of object and
-	don't draw them if the object is not visible.
-
-	* plot/__stem__.m: Convert to use stem series object.
-	* plot/stem.m, plot/stem3.m: Update documentation to correspond to
-	the stem series usage.
-
-2008-08-22  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/chi2rnd.m: Fix missing semicolon.
-
-2008-08-21  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Fix test for have_data.
-	(__gnuplot_write_data__): Write "Inf Inf\n" if all data pairs
-	contain NaN values.
-
-2008-08-21  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* optimization/sqp.m: Increase test script tolerance.
-
-2008-08-21  David Bateman  <dbateman@free.fr>
-
-	* plot/ezplot.m : New function.
-	* plot/Makefile.in (SOURCES): Add ezplot.m to the list.
-	* plot/__ezplot__.m: Adapt to allow for use with the ezplot function.
-
-2008-08-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pkg/pkg.m (configure_make): Pass handle to is_architecture_dependent
-	directly.
-
-2008-08-20  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Don't set pm3d implicit if the plot
-	contains a surface. Fixes things like meshc(peaks()).
-
-2008-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* optimization/glpk.m: Fix invalid call to zeros.
-
-2008-08-19  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/intwarning.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it here.
-
-	* statistics/base/ranks.m: Doc fix.
-
-2008-08-08  John W. Eaton  <jwe@octave.org>
-
-	* general/Makefile.in (SOURCES): Add cellidx.m to the list.
-
-2008-08-07  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc: Delete definition of NPOS.
-
-2008-08-04  John W. Eaton  <jwe@octave.org>
-
-	* strings/strtok.m: Include TAB, LF, VT, FF, and CR in default
-	list of delim characters.  Update tests.
-
-2008-07-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* general/arrayfun.m: Minor bug fixes, update help text and tests
-
-2008-07-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/axis.m (__get_tight_lims__): Use strcat instead of [].
-	Don't fail if data is not a vector.
-
-2008-07-29  David Bateman  <dbateman@free.fr>
-
-	* general/cellidx.m: reinclude from control toolbox, as used by
-	print command. Replace is_signal_list with iscellstr.
-	* general/quadqk.m, linear-algebra/planeror.m,
-	miscellaneous/namelengthmax.m, specfun/realpow.m: Miscellaneous
-	documentation fixes.
-
-	* control, finance, quaternion: Remove directories and all of the
-	files they contain.
-	* Makefile.in: Remove all references to the above directories.
-	* configure.in: ditto.
-
-2008-07-28  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/hold.m: Clarify help text.
-
-	* specfun/reallog.m: Fix help string.
-
-2008-07-28  David Bateman  <dbateman@free.fr>
-
-	* strings/regexptranslate.m: Add real documentation.
-
-	* plot/contourf.m: Allow X,Y to be unequal vectors.
-
-	* plot/shading.m: Clarify help string.
-
-	* general/genvarname.m: Trivial documentation fix.
-
-2008-07-28  John W. Eaton  <jwe@octave.org>
-
-	* image/imwrite.m: New function.
-	* image/Makefile.in (SOURCES): Add it to the list.
-
-2008-07-24  Ben Abbott  <bpabbott@mac.com>
-
-	* time/datestr.m: New xtest.
-
-2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/closereq.m: Use first gcbf to get the handle of the figure to
-	be closed.
-	* plot/close.m: Call __go_execute_callback__.
-
-2008-07-17  John W. Eaton  <jwe@octave.org>
-
-	* general/fliplr.m: Fix usage test.
-	* testfun/test.m: Fix usage tests.
-
-2008-07-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/base/cov.m: Fix test that should no longer work.
-
-2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/gcbo.m, plot/gcbf.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-2008-07-16  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/loadimage.m: New file.
-	* deprecated/Makefile.in (SOURCES): Add it to the list.
-	* image/loadimage.m: Delete.
-	* image/Makefile.in (SOURCES): Remove it from the list.
-	* image/imread.m: Incorporate loadimage functionality here.
-	Simplify.
-	* image/imshow.m: Call imread, not loadimage.
-
-	* image/__img__.m: Set clim for true-color integer data.
-
-	* image/imshow.m: Don't convert integer true-color data to double.
-
-	* plot/__go_draw_axes__.m: Recognize 3-d cdata as a true-color image.
-
-2008-07-14  John W. Eaton  <jwe@octave.org>
-
-	* image/Makefile.in (SOURCES): Add imread.m to the list.
-
-2008-07-14  Thomas L. Scofield  <scofield@calvin.edu>
-
-	* image/imread.m: New file from Octave Forge.
-
-2008-07-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* set/unique.m: Implement 'first' and 'last', some simplifications.
-	* set/union.m: Implement output indices.
-	* set/intersect.m: Implement 'rows'.
-	* set/setdiff.m: Implement output indices.
-	* set/setxor.m: Implement 'rows' and output indices.
-	Add tests and adjust docs in all of the above.
-
-2008-06-11  John W. Eaton  <jwe@octave.org>
-
-	* set/ismember.m: Fix fail tests.
-
-	* general/rat.m: Properly initialize steps when all elements of
-	input array are integers.  Append spaces as necessary when
-	building  character array.
-
-2008-06-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* plot/__go_draw_axes__.m: Use fprintf for formatted output.
-
-2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__go_draw_axes__.m: Support hggroup objects.
-	* plot/hggroup.m: New file.
-	* plot/Makefile.in: Handle it.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/debug.m: New file..
-	* Makefile.in (SOURCES): Add it to the list.
-
-	* general/interp1q.m: Remove spaces between functions and args in
-	[]. Fix test code to actually test interp1q.
-
-2008-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strings/strcat.m: Add tests.
-
-2008-06-02  Kim Hansen  <kimhanse@gmail.com>
-
-	* strings/mat2str.m: Change is_complex to iscomplex, add tests, add
-	missing ;
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/single.m: Remove.
-	* Makefile.in (SOURCES): Remove it here as well.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* general/interp1q.m: New function.
-	* general/Makefile.in (SOURCES): Add it here.
-
-2008-05-20  Bill Denney  <bill@denney.ws>
-
-	* time/datenum.m: Allow mixed scalar and vector/matrix input.
-	New tests.
-
-2008-05-19  John W. Eaton  <jwe@octave.org>
-
-	* general/isa.m: Fix tests.
-
-2008-05-13  Bill Denney  <bill@denney.ws>
-
-	* general/isa.m: Use persistent cell arrays to hold class names
-	instead of multiple strcmp calls.
-
-2008-05-12  David Bateman  <dbateman@free.fr>
-
-	* control/base/__stepimp__.m, control/base/bode_bounds.m,
-	control/base/damp.m, control/base/dlqr.m, control/base/lsim.m,
-	control/base/tzero.m, control/hinf/hinfsyn.m,
-	control/hinf/is_dgkf.m, control/system/d2c.m,
-	control/system/is_controllable.m, control/system/is_detectable.m,
-	control/system/is_stabilizable.m, control/system/is_stable.m,
-	control/system/sysconnect.m, general/bicubic.m,
-	general/cplxpair.m, general/isdefinite.m, general/issymmetric.m,
-	general/quadgk.m, general/quadl.m, general/quadv.m,
-	geometry/delaunayn.m, linear-algebra/krylov.m,
-	linear-algebra/null.m, linear-algebra/onenormest.m,
-	linear-algebra/orth.m, linear-algebra/rank.m,
-	linear-algebra/rref.m, optimization/qp.m, optimization/sqp.m,
-	polynomial/polygcd.m, polynomial/residue.m, sparse/normest.m,
-	specfun/erfinv.m, statistics/distributions/betainv.m,
-	statistics/distributions/gaminv.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/tests/manova.m: Modify calls to eps to allow for single
-	precision types.
-
-	* general/isa.m: Also treat "float: and "numeric" as the class
-	argument.
-
-	* general/dblquad.m, general/quadgk.m, general/quadv.m,
-	general/triplequad.m: New functions.
-
-	* testfun/assert.m: Allow assert(cond, errmsg, ...) and
-	assert(cond, msgid, errmsg, ...) syntax for compatibility.
-
-2008-05-09  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* miscellaneous/news.m: Replace deprecated isstr call.
-
-2008-05-06  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/symvar.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-2008-05-04  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dbstack.m: Delete.
-	* miscellaneous/Makefile.in (SOURCES): Remove it from the list.
-
-2008-05-03  Rafael Laboissiere  <rafael@debian.org>
-
-	* linear-algebra/cond.m, miscellaneous/version.m,
-	miscellaneous/version.m, plot/feather.m, plot/__bar__.m,
-	plot/compass.m, plot/__quiver__.m, plot/__scatter__.m: Use ischar
-	instead of deprecated isstr.
-
-2008-05-01  David Bateman  <dbateman@free.fr>
-
-	* plot/plot.m: Remove documentation of 'L' option.
-	* plot/stairs.m: Allow axis handles, properties and linespecs to
-	be passed.
-
-2008-04-30  John W. Eaton  <jwe@octave.org>
-
-	* elfun/acot.m, elfun/acsc.m, elfun/acsch.m, elfun/asec.m,
-	elfun/asech.m, specfun/pow2.m: Fix tests.
-
-2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* specfun/log2.m: Delete.
-	* specfun/Makefile.in (SOURCES): Delete it from the list.
-
-2008-04-29  David Bateman  <dbateman@free.fr>
-
-	pkg/pkg.m: Also set archprefix with the -local and -global options.
-
-2008-04-29  Jonathan Stickel  <jjstickel@vcn.com>
-
-	* statistics/distributions/tcdf.m, statistics/distributions/tinv.m:
-	Doc fix.
-
-2008-04-25  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dbstack.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-2008-04-21  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m (gnuplot_position_colorbox): New arg, obj.
-	Change caller.  Improve sizing and position of colorbox for subplots.
-	* plot/colorbar.m: New demos.
-
-2008-04-16  S�ren Hauberg  <hauberg@gmail.com>
-
-	* plot/__gnuplot_version__.m: Display error if gnuplot is not found.
-
-2008-04-15  John W. Eaton  <jwe@octave.org>
-
-	* plot/view.m: Get values from current axes if nargin == 0.
-
-2008-04-15  David Bateman  <dbateman@free.fr>
-
-	* plot/__patch__.m: Fix for NaN values in faces of patches.
-
-2008-04-14  David Bateman  <dbateman@free.fr>
-
-	* plot/rose.m: Add missing comment mark that causes issues with
-	octave-forge function referencing.
-	* deprecated/lchol.m, deprecated/splchol.m: Fix texinfo errors.
-
-2008-04-09  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
-	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
-	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
-	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
-	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
-	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
-	deprecated/clearplot.m, deprecated/clg.m, deprecated/com2str.m,
-	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
-	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
-	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
-	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
-	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
-	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
-	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
-	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
-	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
-	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
-	deprecated/is_bool.m, deprecated/is_complex.m,
-	deprecated/is_list.m, deprecated/is_matrix.m,
-	deprecated/is_scalar.m, deprecated/is_square.m,
-	deprecated/is_stream.m, deprecated/is_struct.m,
-	deprecated/is_symmetric.m, deprecated/is_vector.m,
-	deprecated/isstr.m, deprecated/lchol.m,
-	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
-	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
-	deprecated/meshdom.m, deprecated/normal_cdf.m,
-	deprecated/normal_inv.m, deprecated/normal_pdf.m,
-	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
-	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
-	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
-	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
-	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
-	deprecated/setstr.m, deprecated/spatan2.m, deprecated/spchol.m,
-	deprecated/spchol2inv.m, deprecated/spcholinv.m,
-	deprecated/spcumprod.m, deprecated/spcumsum.m, deprecated/spdet.m,
-	deprecated/spdiag.m, deprecated/spfind.m, deprecated/spinv.m,
-	deprecated/spkron.m, deprecated/splchol.m, deprecated/splu.m,
-	deprecated/spmax.m, deprecated/spmin.m, deprecated/spprod.m,
-	deprecated/spqr.m, deprecated/spsum.m, deprecated/spsumsq.m,
-	deprecated/struct_contains.m, deprecated/struct_elements.m,
-	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
-	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
-	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
-	deprecated/uniform_rnd.m, deprecated/weibcdf.m,
-	deprecated/weibinv.m, deprecated/weibpdf.m, deprecated/weibrnd.m,
-	deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
-	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m,
-	deprecated/wiener_rnd.m: Don't embed newline in warning message.
-
-2008-04-09  David Bateman  <dbateman@free.fr>
-
-	* testfun/assert.m: Don't allow cond and expected to be lists.
-
-2008-04-04  John W. Eaton  <jwe@octave.org>
-
-	* strings/Makefile.in (SOURCES): Add isstrprop.m to the list.
-
-	* Makefile.in, audio/Makefile.in, control/Makefile.in,
-	* Makefile.incontrol/base/Makefile.in, control/hinf/Makefile.in,
-	* Makefile.incontrol/obsolete/Makefile.in,
-	* Makefile.incontrol/system/Makefile.in, control/util/Makefile.in,
-	* Makefile.indeprecated/Makefile.in, elfun/Makefile.in,
-	* Makefile.infinance/Makefile.in, general/Makefile.in,
-	* Makefile.ingeometry/Makefile.in, image/Makefile.in,
-	* Makefile.inio/Makefile.in, linear-algebra/Makefile.in,
-	* Makefile.inmiscellaneous/Makefile.in, optimization/Makefile.in,
-	* Makefile.inpath/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
-	* Makefile.inpolynomial/Makefile.in, quaternion/Makefile.in,
-	* Makefile.inset/Makefile.in, signal/Makefile.in,
-	* Makefile.insparse/Makefile.in, specfun/Makefile.in,
-	* Makefile.inspecial-matrix/Makefile.in, startup/Makefile.in,
-	* Makefile.instatistics/Makefile.in, statistics/base/Makefile.in,
-	* Makefile.instatistics/distributions/Makefile.in,
-	* Makefile.instatistics/models/Makefile.in,
-	* Makefile.instatistics/tests/Makefile.in, strings/Makefile.in,
-	* Makefile.intestfun/Makefile.in, time/Makefile.in
-	* Makefile.in(check-m-sources): New target.
-
-2008-04-04  Bill Denney  <bill@denney.ws>
-
-	* optimization/lsqnonneg.m: Use optimset, correctly index
-	Z and P in main loop.
-
-2008-04-04  David Bateman  <dbateman@free.fr>
-
-	* deprecated/beta_cdf.m deprecated/beta_inv.m
-	deprecated/beta_pdf.m deprecated/beta_rnd.m
-	deprecated/binomial_cdf.m deprecated/binomial_inv.m
-	deprecated/binomial_pdf.m deprecated/binomial_rnd.m
-	deprecated/chisquare_cdf.m deprecated/chisquare_inv.m
-	deprecated/chisquare_pdf.m deprecated/chisquare_rnd.m
-	deprecated/clearplot.m deprecated/clg.m deprecated/com2str.m
-	deprecated/exponential_cdf.m deprecated/exponential_inv.m
-	deprecated/exponential_pdf.m deprecated/exponential_rnd.m
-	deprecated/f_cdf.m deprecated/f_inv.m deprecated/f_pdf.m
-	deprecated/f_rnd.m deprecated/gamma_cdf.m deprecated/gamma_inv.m
-	deprecated/gamma_pdf.m deprecated/gamma_rnd.m
-	deprecated/geometric_cdf.m deprecated/geometric_inv.m
-	deprecated/geometric_pdf.m deprecated/geometric_rnd.m
-	deprecated/hypergeometric_cdf.m deprecated/hypergeometric_inv.m
-	deprecated/hypergeometric_pdf.m deprecated/hypergeometric_rnd.m
-	deprecated/intersection.m deprecated/is_bool.m
-	deprecated/is_complex.m deprecated/is_list.m
-	deprecated/is_matrix.m deprecated/is_scalar.m
-	deprecated/is_square.m deprecated/is_stream.m deprecated/isstr.m
-	deprecated/is_struct.m deprecated/is_symmetric.m
-	deprecated/is_vector.m deprecated/lognormal_cdf.m
-	deprecated/lognormal_inv.m deprecated/lognormal_pdf.m
-	deprecated/lognormal_rnd.m deprecated/meshdom.m
-	deprecated/normal_cdf.m deprecated/normal_inv.m
-	deprecated/normal_pdf.m deprecated/normal_rnd.m
-	deprecated/pascal_cdf.m deprecated/pascal_inv.m
-	deprecated/pascal_pdf.m deprecated/pascal_rnd.m
-	deprecated/poisson_cdf.m deprecated/poisson_inv.m
-	deprecated/poisson_pdf.m deprecated/poisson_rnd.m
-	deprecated/polyinteg.m deprecated/setstr.m
-	deprecated/struct_contains.m deprecated/struct_elements.m
-	deprecated/t_cdf.m deprecated/t_inv.m deprecated/t_pdf.m
-	deprecated/t_rnd.m deprecated/uniform_cdf.m
-	deprecated/uniform_inv.m deprecated/uniform_pdf.m
-	deprecated/uniform_rnd.m deprecated/weibcdf.m deprecated/weibinv.m
-	deprecated/weibpdf.m deprecated/weibrnd.m deprecated/weibull_cdf.m
-	deprecated/weibull_inv.m deprecated/weibull_pdf.m
-	deprecated/weibull_rnd.m deprecated/wiener_rnd.m: Add warning that
-	function will be removed in a future version.
-
-2008-04-03  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
-	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
-	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
-	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
-	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
-	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
-	deprecated/clearplot.m, deprecated/clg.m, deprecated/com2str.m,
-	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
-	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
-	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
-	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
-	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
-	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
-	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
-	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
-	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
-	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
-	deprecated/is_bool.m, deprecated/is_complex.m,
-	deprecated/is_list.m, deprecated/is_matrix.m,
-	deprecated/is_scalar.m, deprecated/is_square.m,
-	deprecated/is_stream.m, deprecated/is_struct.m,
-	deprecated/is_symmetric.m, deprecated/is_vector.m,
-	deprecated/isstr.m, deprecated/lchol.m,
-	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
-	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
-	deprecated/meshdom.m, deprecated/normal_cdf.m,
-	deprecated/normal_inv.m, deprecated/normal_pdf.m,
-	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
-	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
-	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
-	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
-	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
-	deprecated/setstr.m, deprecated/spatan2.m, deprecated/spchol.m,
-	deprecated/spchol2inv.m, deprecated/spcholinv.m,
-	deprecated/spcumprod.m, deprecated/spcumsum.m, deprecated/spdet.m,
-	deprecated/spdiag.m, deprecated/spfind.m, deprecated/spinv.m,
-	deprecated/spkron.m, deprecated/splchol.m, deprecated/splu.m,
-	deprecated/spmax.m, deprecated/spmin.m, deprecated/spprod.m,
-	deprecated/spqr.m, deprecated/spsum.m, deprecated/spsumsq.m,
-	deprecated/struct_contains.m, deprecated/struct_elements.m,
-	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
-	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
-	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
-	deprecated/uniform_rnd.m, deprecated/weibcdf.m,
-	deprecated/weibinv.m, deprecated/weibpdf.m, deprecated/weibrnd.m,
-	deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
-	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m,
-	deprecated/wiener_rnd.m:
-	Note version when function was deprecated.
-
-2008-04-03  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Conditionally "set pm3d implict" for 2D
-	plot or 3D plots with more than one line.
-
-	* deprecated/splchol.m deprecated/lchol.m deprecated/spfind.m
-	deprecated/spchol.m deprecated/spmin.m deprecated/spmax.m
-	deprecated/spdet.m deprecated/splu.m deprecated/spqr.m
-	deprecated/spatan2.m deprecated/spchol2inv.m
-	deprecated/spcholinv.m deprecated/spcumprod.m deprecated/spdiag.m
-	deprecated/spinv.m deprecated/spcumsum.m deprecated/spprod.m
-	deprecated/spsum.m deprecated/spsumsq.m: New files
-	* deprecated/Makefile.in (SOURCES): Add them here.
-
-2008-04-03  Ben Abbott  <bpabbott@mac.com>
-
-	* sparse/spaugment.m: Increase test script tolerance.
-
-2008-04-02  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/Makefile.in (SOURCES): Add spkron.m to the list.
-
-	* general/Makefile.in (SOURCES): Add runlength.m to the list.
-
-2008-04-02  Bill Denney  <bill@denney.ws>
-
-	* optimization/lsqnonneg.m: New function.
-	* optimization/Makefile.in (SOURCES): Add it to the list.
-
-2008-04-02  David Bateman  <dbateman@free.fr>
-
-	* sparse/spaugment.m: New function
-	* sparse/Makefile.in (SOURCES): Add it here.
-
-	* plot/__gnuplot_ginput__.m: Use the gnuplot stream itself for
-	communication rather than a chat file if mkfifo is not available.
-	* plot/gnuplot_drawnow.m: Open stream with popen2 to allow two way
-	communication with the gnuplot process.
-
-2008-04-01  Richard Bovey  <Richard.Bovey@baesystems.com>
-
-	* general/sortrows.m: Handle negative column arguments.
-
-2008-04-01  Julian Schnidder  <j.schnidder@gmx.de>
-
-	* miscellaneous/perl.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-31  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Set the tick direction in the main call
-	the set tics rather than separately to avoid issues with multiple
-	ticks in plotyy.
-
-	* plot/gtext.m: New function to place text on a plot.
-	* plot/waitforbuttonpress.m: New function.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-	* plot/__gnuplot_ginput__.m: Bug fix for nargin==1. Workaround for
-	missing mkfifo under Windows.
-	* plot/ginput.m: Eliminate setting of n.
-
-	* plot/ginput.m: New function.
-	* plot/__gnuplot_ginput__.m: New function based on a version of
-	ginput.m from Petr Mikulik <mikulik@physics.muni.cz>.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-2008-03-31  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
-
-	* miscellaneous/run.m: Fix check for existence of file.
-
-2008-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/lookup.m: Remove (lookup moved to DLD-FUNCTIONS).
-	* general/Makefile.in (SOURCES): Delete lookup.m from the list.
-	* general/interp1.m, general/interp2.m, general/interpn.m,
-	polynomial/ppval.m: Fix buggy lookup calls.
-	* general/interp1.m: New test.
-
-2008-03-28  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* miscellaneous/tempdir.m: Use correct function name in texinfo
-	documentation.
-
-2008-03-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* general/del2.m: Missing semicolon.
-
-2008-03-28  Julian Schnidder  <j.schnidder@gmx.de>
-
-	* miscellaneous/info.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* plot/xlim.m, plot/ylim.m, plot/zlim.m, strings/strtrim.m:
-	Doc fixes.
-
-2008-03-27  David Bateman  <dbateman@free.fr>
-
-	* plot/__plt2__.m: Test if args are empty first so that
-	plot(zeros(1,0),zeros(1,0)) works as expected.
-
-	* plot/plotyy.m: The axis handle is a two element vector and
-	so needs special treatment. Call newplot for the second axis.
-
-2008-03-27  Bill Denney  <bill@denney.ws>
-
-	* time/datenum.m: Allow vector inputs in any orientation.
-
-	* strings/validatestring.m: New function.
-	* strings/Makefile.in (SOURCES): Add it to the list.
-
-	* general/nargoutchk.m: New function.
-	* general/Makefile.in (SOURCES): Add it to the list.
-
-	* general/genvarname.m: New function.
-	* general/Makefile.in (SOURCES): Add it to the list.
-
-	* time/addtodate.m: New function.
-	* time/Makefile.in (SOURCES): Add it to the list.
-
-	* geometry/rectint.m: Vectorize and add more tests.
-
-2008-03-27  John W. Eaton  <jwe@octave.org>
-
-	* plot/__axis_label__.m: Use name of caller in error message.
-
-2008-03-27  David Bateman  <dbateman@free.fr>
-
-	* linear-algebra/planerot.m: Givens rotation function.
-
-2008-03-26  John W. Eaton  <jwe@octave.org>
-
-	* set/ismember.m: Set size of idx output correctly for empty args.
-	New tests.
-
-	* general/logical.m: Correctly handle empty args.  New tests.
-
-	* control/hinf/h2syn.m, general/__splinen__.m, general/gradient.m,
-	geometry/inpolygon.m, geometry/trimesh.m, geometry/triplot.m,
-	image/imagesc.m, io/csvread.m, io/csvwrite.m,
-	miscellaneous/edit.m, miscellaneous/tempname.m, plot/fill.m,
-	plot/patch.m, plot/ribbon.m, plot/surface.m, polynomial/mkpp.m,
-	polynomial/pchip.m, polynomial/spline.m, set/unique.m:
-	Texinfo fixes.
-
-2008-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/dmult.m: Handle scaling along arbitrary dimension.
-
-2008-03-26  S�ren Hauberg  <hauberg@gmail.com>
-
-	* polynomial/convn.m: New tests.
-
-2008-03-20  Ben Abbott  <bpabbott@mac.com>
-
-	* statistics/base/statistics.m: Calculate median and quantiles in
-	a manner consistent with method #7 used by GNU R.
-	* statistics/base/__quantile__.m, statistics/base/quantile.m,
-	statistics/base/prctile.m: New functions.
-	* statistics/base/Makefile.in (SOURCES): Add them to the list.
-
-2008-03-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* polynomial/convn.m: New function.
-	* polynomial/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-25  David Bateman  <dbateman@free.fr>
-
-	* image/contrast.m: New function.
-	* image/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-24  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* pkg/pkg.m: Allow installation of already extracted packages.
-
-2008-03-24  David Bateman  <dbateman@free.fr>
-
-	* general/idivide.m: New function.
-	* general/Makefile.in (SOURCES): Add it to the list.
-
-	* miscellaneous/namelengthmax.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-	* strings/regexptranslate.m: New function.
-	* strings/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-21  David Bateman  <dbateman@free.fr>
-
-	* specfun/reallog.m, specfun/realpow.m, specfun/realsqrt.m:
-	New functions.
-	* specfun/Makefile.in (SOURCES): Add them to the list.
-
-2008-03-20  David Bateman  <dbateman@free.fr>
-
-	* general/tril.m, general/triu.m: Fail if input is a structure.
-
-	* miscellaneous/cast.m: Also allow cast to "char".
-
-	* general/rotdim.m: Ensure k is an integer scale.
-
-	* general/circshift.m: If matrix is empty fast return.
-
-2008-03-20  Jaroslav Hajek  <highegg@localhost.localdomain>
-
-	* linear-algebra/subspace.m: Check number of arguments, number
-	of dimensions of arguments and matching dimensions.
-
-2008-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* linear-algebra/subspace.m: New function.
-	* linear-algebra/subspace.m: New function.
-
-2008-03-19  Emil Lucretiu  <emil@la.mine.nu>
-
-	* signal/sinetone.m: Ensure integral number of samples.
-
-2008-03-19  Michael D. Godfrey  <godfrey@isl.stanford.edu>
-
-	* plot/__go_draw_axes__.m: Additional correction for symbol codes.
-
-2008-03-19  Ben Abbott  <bpabbott@mac.com>
-
-	* statistics/base/mode.m: Add NDArray tests.
-
-2008-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* statistics/distributions/exppdf.m,
-	statistics/distributions/expcdf.m,
-	statistics/distributions/expinv.m,
-	statistics/distributions/exprnd.m: Doc fix.
-
-2008-03-19  David Bateman  <dbateman@free.fr>
-
-	* statistics/base/mode.m: Fix for row vectors.
-
-	* plot/__scatter__.m: Modify for change of markersize in
-	__go_draw_axes__.m and for compatibility.
-	* plot/__go_draw_axes__.m: Don't divide the marker size by 6
-	twice.
-	* plot/scatter3.m: Doc fix.
-
-2008-03-18  Ben Abbott  <bpabbott@mac.com>
-
-	* specfun/beta.m: Fix for negative inputs.
-
-2008-03-18  Michael D. Godfrey  <godfrey@isl.stanford.edu>
-
-	* plot/__go_draw_axes__.m: Use correct symbol codes.
-
-2008-03-14  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Expicitly set gnuplot user
-	style to default to avoid wrong mesh color in some cases.
-
-2008-03-12  David Bateman  <dbateman@free.fr>
-
-	* geometry/griddata3.m: Use griddatan and not griddata
-	internally. Return vi and not yi. Add test code.
-
-2008-03-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Use get to access hidden properties.
-	Use strcmpi when comparing string properties.
-
-	* io/csread.m, io/csvwrite.m, io/dlmwrite.m: Style fixes.
-
-2008-03-11  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Plot surfaces in front of axes.
-	Allow plotting of uniform colored mesh plots with and
-	w/o hidden line removal.
-
-2008-03-11  David Bateman  <dbateman@free.fr>
-
-	* io/dlmwrite.m, io/csvread.m, io/csvwrite.m: Files ported from
-	octave-forge.
-	* io/Makefile.in (SOURCES): Add them here.
-
-2008-03-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/contourf.m: Set axes layer property to "top".
-
-	* plot/__go_draw_axes__.m: Handle tickdir property.
-
-2008-03-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/hist.m: Avoid temporaries.
-	Allow matrix arguments when number of bins > 30.
-	From Robert S. Mahurin <rob@utk.edu>.
-
-	* plot/ChangeLog: Handle axes linewidth property.
-
-	* plot/__go_draw_axes__.m: Adjust markersize by a factor of 1/6.
-
-	* general/interpn.m: New test.
-
-2008-03-05  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/roots.m: Catch Infs and/or NaNs.
-
-2008-03-05  Sebastien Loisel  <loisel@temple.edu>
-
-	* polynomial/roots.m: Apply a scaling factor to the removal of the
-	leading zeros.
-
-2008-03-04  John W. Eaton  <jwe@octave.org>
-
-	* plot/print.m: Fix oops in applying last change.
-
-2008-03-04  Bill Denney  <bill@denney.ws>
-
-	* plot/allchild.m, plot/findall.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-	* geometry/rectint.m: New function.
-	* geometry/Makefile.in (SOURCES): Add it to the list.
-
-2008-03-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* pkg/pkg.m (pkg:configure_make): Make it work with recent changes in
-	isspace handling with cell arrays of strings.
-
-2008-03-04  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/polyfit.m: Modified tests to respect a relative tolerance.
-
-	* plot/print.m: Accept a figure handle as an optional input.
-
-2008-02-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/print.m: Handle gif and jpg devices.
-
-2008-02-28  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (get_old_gnuplot_color): New subfunction.
-	Use it to replace repeated if/elseif blocks.
-
-2008-02-28  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: If facecolor property of a surface is
-	"none", don't use pm3d mode and set linestyle correctly.
-
-2008-02-25  Ben Abbott  <bpabbott@mac.com>
-
-	* control/system/zpout.m, finance/irr.m, general/int2str.m,
-	general/num2str.m, miscellaneous/bug_report.m,
-	miscellaneous/copyfile.m, miscellaneous/dir.m,
-	miscellaneous/edit.m, miscellaneous/fullfile.m,
-	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
-	miscellaneous/tempdir.m, miscellaneous/unpack.m,
-	path/__extractpath__.m, pkg/pkg.m, plot/__ezplot__.m,
-	plot/__go_draw_axes__.m, plot/legend.m, plot/print.m,
-	signal/spectral_adf.m, signal/spectral_xdf.m,
-	statistics/tests/z_test.m, statistics/tests/z_test_2.m,
-	strings/Makefile.in, strings/strcat.m, strings/strvcat.m,
-	testfun/assert.m, testfun/demo.m, testfun/speed.m,
-	testfun/test.m: Use cstrcat instead of strcat.
-
-	* strings/strcat.m: New compatible version.
-
-	* strings/cstrcat.m: Rename from strings/strcat.m.
-
-2008-02-25  John W. Eaton  <jwe@octave.org>
-
-	* strings/isstrprop.m: New file.
-
-2008-02-25  Ryan Hinton  <rwh4s@virginia.edu>
-
-	* miscellaneous/unpack.m: Use "-f -" args for tar.
-
-2008-02-24  John W. Eaton  <jwe@octave.org>
-
-	* specfun/log2.m: Ensure returned value of F strictly less than 1.
-	From Dave Hawthorne <davehawthorne@ieee.org>.
-
-2008-02-22  Ben Abbott  <bpabbott@mac.com>
-
-	* specfun/legendre.m: Doc fix.
-
-2008-02-22  David Bateman  <dbateman@free.fr>
-
-	* sparse/pcg.m, sparse/spdiags, spstats.m: Remove references to
-	spdiag.
-
-2008-02-22  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/fullfile.m: Improve handling of empty args and
-	args ending with filesep.
-
-	* control/base/__stepimp__.m: Don't use subplot for just one plot.
-
-2008-02-21  John W. Eaton  <jwe@octave.org>
-
-	* image/imshow.m: Call axis ("image").
-	From Michael G. Ross <mgross@MIT.EDU>.
-
-	* plot/errorbar.m: If nargout > 0, return vector of handles to
-	line objects.
-	* plot/__go_draw_axes__.m: Improve handling of line style for
-	errorbar plots.
-
-2008-02-20  Marco Caliari  <marco.caliari@univr.it>
-
-	* specfun/legendre.m: Accept normalization options ("sch", "norm"),
-	and improve stability for higher orders.
-
-2008-02-20  John W. Eaton  <jwe@octave.org>
-
-	* strings/strcat.m: Detect cellstr args.
-
-2008-02-20  David Bateman  <dbateman@free.fr>
-
-	* sparse/colperm.m, sparse/nonzero.m, sparse/spdiags.m,
-	sparse/spfun.m, sparse/spones.m, sparse/sprand.m,
-	sparse/sprandn.m, sparse/sprandsym.m, sparse/spy.m: Use generic
-	version of find rather than spfind.
-
-2008-02-19  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/edit.m: New option EDITINPLACE.  Prefer file list
-	rather than path list.  Return option structure with "get all".
-
-	* polynomial/polyfit.m: Use QR decomposition.  Handle
-	normalization option.
-	* polynomial/polyval.m: Normalize dependent variable.  Optionally
-	generate 50% prediction intervals.
-
-	* miscellaneous/ver.m: Include package version information in
-	output.  Improve consistency with Matlab.
-
-2008-02-19  John W. Eaton  <jwe@octave.org>
-
-	* pkg/pkg.m: Style fixes.
-
-2008-02-19  Carlo de Falco  <carlo.defalco@gmail.com>
-
-	* pkg/pkg.m: Handle 'describe' command.
-	(parse_pkg_idx, print_package_description): New subfunctions.
-
-2008-02-19  Bill Denney  <bill@denney.ws>
-
-	* time/datestr.m: Avoid confusion for datenum vectors that are 6
-	elements wide.
-
-2008-02-18  David Bateman  <dbateman@free.fr>
-
-	* general/rem.m, general/mod.m: Treat integer types correctly.
-
-2008-02-15  Timo Lindfors  <timo.lindfors@iki.fi>
-
-	* statistics/tests/kruskal_wallis_test.m: Handle ties.
-	* general/runlength.m: New function from Paul Kienzle.
-
-2008-02-15  Rolf Fabian  <r.fabian@jacobs-university.de>
-
-	* linear-algebra/cond.m: New optional second argument to
-	specify 1-norm, inf-norm, or frobenius-norm.
-
-2008-02-12  Kostas Poulios  <poulios.konstantinos@googlemail.com>
-
-	* plot/__quiver__.m: make arrow head be in z-plane of the arrow
-	body. Allow the linespec to specify the arrow color.
-
-2008-02-12  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/cast.m: Also treat the logical type.
-
-	* plot/__go_draw_axes__.m: Set pm3d implict to fix colorbars on
-	contour plots.
-
- 	* plot/__go_draw_axes__.m: Use the cdatamapping property to set
-	the cbrange.
-	* plot/__img__.m: Set cdatamapping to "direct".
-	* plot/imagesc.m: Set cdatamapping to "scaled".
-
-2008-02-08  Julien Pommier  <pommier@pianoteq.com>
-
-	* audio/wavread.m: Limit data read to end of data chunk.
-
-2008-02-08  David Bateman  <dbateman@free.fr>
-
-	* plot/__contour__.m: Respect the graphic handle options that are
-	passed.
-	* plot/__go_draw_axes__.m: Respect the linewidth for patch objects.
-
-2008-02-01  Dave Goel  <deego3@gmail.com>
-
-	* signal/arch_rnd.m: Correctly index E and Y vectors.
-
-2008-02-01  Bill Denney  <bill@denney.ws>
-
-	* time/weekday.m: Allow vector inputs and speed up.
-	* time/eomday.m: Return column vector for column vector inputs.
-
-2008-01-30  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/edit.m: Use "## Created: DATE" instead of "initial
-	revision".
-
-	* plot/Makefile.in (SOURCES): Include __plt2sv__.m and
-	__plt2vs__.m in the list.
-
-	* miscellaneous/tempdir.m: Append filesep to name for
-	compatibility.  Warn if not a directory or directory does not
-	exist.
-
-	* strings/deblank.m: Improve compatibility.
-
-2008-01-29  John W. Eaton  <jwe@octave.org>
-
-	* strings/str2double.m: Delete unused variable FLAG_OCTAVE.
-
-2008-01-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m:
-	Return the label handle, not the current axis handle.
-
-2008-01-25  Alexander Barth  <barth.alexander@gmail.com>
-
-	* general/interpn.m: Compatibility fix. Don't ndgrid vector
-	abscissa.
-
-2008-01-25  David Bateman  <dbateman@free.fr>
-
-	* general/__splinen__.m: Treat mixed orientation vectors.
-	* plot/__scatter__.m: Remove NaN values from data.
-	* plot/__patch__.m: Vectorize treatment of trailing NaN values.
-
-2008-01-25  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* linear-algebra/trace.m: Test cases for non 2-d args.
-
-2008-01-25  James Packer  <james.packer@wadh.ox.ac.uk>
-
-	* geometry/griddata3.m: Call griddata, not gridata.
-
-2008-01-24  Schloegl Alois  <alois.schloegl@tugraz.at>
-
-	* linear-algebra/trace.m: Require 2-d args.  Handle vectors properly.
-
-2008-01-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* linear-algebra/cond.m, linear-algebra/trace.m:
-	Move tests here from test/test_linalg.m.
-
-	* general/diff.m, general/fliplr.m, general/flipud.m,
-	general/logspace.m, general/rot90.m, general/shift.m, general/tril.m,
-	general/triu.m, linear-algebra/vec.m, linear-algebra/vech.m,
-	special-matrix/hankel.m, special-matrix/hilb.m,
-	special-matrix/invhilb.m, special-matrix/sylvester_matrix.m,
-	special-matrix/toeplitz.m, special-matrix/vander.m:
-	Move tests here from test/test_matrix.m.
-
-	* general/isscalar.m, general/issquare.m, general/isvector.m:
-	Move tests here from test/test_number.m.
-
-	* deprecated/polyinteg.m, polynomial/compan.m, polynomial/conv.m,
-	polynomial/deconv.m, polynomial/poly.m, polynomial/polyderiv.m,
-	polynomial/polyfit.m, polynomial/polyreduce.m, polynomial/polyval.m,
-	polynomial/polyvalm.m, polynomial/roots.m:
-	Move tests here from test/test_poly.m.
-
-	* signal/unwrap.m:
-	Move tests here from test/test_signal.m.
-
-	* statistics/base/corrcoef.m, statistics/base/cov.m,
-	statistics/base/kurtosis.m, statistics/base/mahalanobis.m,
-	statistics/base/mean.m, statistics/base/median.m,
-	statistics/base/skewness.m, statistics/base/std.m:
-	Move tests here from test/test_stats.m.
-
-	* general/int2str.m, general/num2str.m, strings/bin2dec.m,
-	strings/blanks.m, strings/deblank.m, strings/dec2bin.m,
-	strings/dec2hex.m, strings/findstr.m, strings/hex2dec.m,
-	strings/index.m, strings/rindex.m, strings/split.m, strings/str2mat.m,
-	strings/str2num.m, strings/strcat.m, strings/strrep.m,
-	strings/substr.m:
-	Move tests here from test/test_string.m.
-
-	* miscellaneous/computer.m, miscellaneous/ls.m,
-	miscellaneous/version.m, time/asctime.m, time/clock.m, time/ctime.m,
-	time/date.m, time/etime.m, time/is_leap_year.m:
-	Move tests here from test/test_system.m.
-
-2008-01-22  Schloegl Alois  <alois.schloegl@tugraz.at>
-
-	* specfun/erfinv.m: Replace z_old and z_new by a single variable z.
-	Simplify initial checks on argument values.
-
-2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/gnuplot_drawnow.m: New function corresponding to the
-	implementation of the gnuplot-based graphics backend (derived from
-	drawnow.m).
-	* plot/drawnow.m: Deleted (converted to C++).
-
-2008-01-15  Rolf Fabian  <Rolf.Fabian@gmx.de>
-
-	* linear-algebra/__norm__.m: Only scale if inf norm is finite.
-	New tests.
-
-2008-01-18  John W. Eaton  <jwe@octave.org>
-
-	* optimization/sqp.m: End each function with endfunction.
-
-2008-01-18  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/residue.m: For each group of pole multiplicity, set
-	the poles of the group to the value of the group's average.
-
-2008-01-17  Tetsuro KURITA  <tkurita@mac.com>
-
-	* plot/print.m: Handle PDF output.
-	* plot/drawnow.m: Add "PDF" in a list of enhanced_terminals.
-
-2008-01-17  John W. Eaton  <jwe@octave.org>
-
-	* path/savepath.m: Print newline before initial comment line.
-	Double up single quote characters.
-	* path/__extractpath__.m: Return just the path as a string.
-	Undo single quote character doubling.
-
-	* path/pathdef.m: Avoid eval.  Simplify.
-
-	* path/pathdef.m: Use fullfile instead of concatenating with filesep.
-	* path/__extractpath__.m, path/savepath.m: Use unwind_protect to
-	avoid possible file descriptor leak.
-
-2008-01-17  Ben Abbott  <bpabbott@mac.com>
-
-	* path/savepath.m: Warn if modified file is not explicitly specified.
-	* startup/main-rcfile: Call atexit ("__finish__").
-
-2008-01-16  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (__do_enhanced_option__): New subfunction.
-	Use it to disable enhanced mode for individual labels and titles.
-
-	* startup/Makefile.in (SOURCES): Add __finish__.m to the list.
-	(install install-strip, uninstall): Handle function files.
-
-2008-01-16  Ben Abbott  <bpabbott@mac.com>
-
-	* startup/__finish__.m: New file.
-	* path/__extractpath__.m, path/matlabroot.m,
-	path/pathdef.m: New files.
-	* path/Makefile.in (SOURCES): Add them to the list.
-
-2008-01-15  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* special-matrix/vander.m: Vectorize.  New test.
-
-	* elfun/acot.m, elfun/acoth.m, elfun/acsc.m, elfun/acsch.m,
-	elfun/asec.m, elfun/asech.m, elfun/cot.m, elfun/coth.m,
-	elfun/csc.m,elfun/csch.m, elfun/lcm.m, elfun/sec.m, elfun/sech.m,
-	general/rem.m, miscellaneous/bincoeff.m, miscellaneous/xor.m,
-	specfun/beta.m, specfun/log2.m, specfun/pow2.m:
-	Move tests here from test/test_arith.m.
-
-2008-01-15  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/__norm__.m: Use sum(abs(x),2), not sum(abs(x.')).
-
-2008-01-15  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/drawnow.m, plot/__go_draw_figure__.m, plot/__go_draw_axes__.m:
-	Call __get__ instead of get.
-
-2008-01-15  Ben Abbott  <bpabbott@mac.com>
-
-	* linear-algebra/__norm__.m: Avoid divide by zero error for
-	Frobenius norm if matrix is all zeros.  Use transpose instead of
-	hermitian operator.
-
-2008-01-14  Bill Denney  <bill@denney.ws>
-
-	* plot/axis.m: Correctly handle "tight" and "image" options.
-
-2008-01-14  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/hsv2rgb.m, image/ntsc2rgb.m, image/rgb2hsv.m,
-	image/rgb2ntsc.m: Also accept images as input.
-
-	* image/gray2ind.m: Handle image type other than double.
-	Improve error checking and documentation.
-
-2008-01-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (get_fontname_and_size): Use strcmpi
-	instead of calling tolower on first arg.  Default font name is
-	Helvetica, not helvetica.  Don't downcase user-specified font name.
-	(__maybe_munge_text__): Fix typo.
-
-	* optimization/sqp.m: Fix function definitions in test code.
-
-2008-01-12  John W. Eaton  <jwe@octave.org>
-
-	* plot/gnuplot_binary.in: New file.
-	* plot/gnuplot_binary.m: Delete.
-	* plot/Makefile.in (SOURCES): Remove gnuplot_binary.m from the list.
-	(SOURCES_IN, GEN_M): New macros.
-	(DISTFILES): Include $(SOURCES_IN) in the list.
-	(FCN_FILES): Include $(GEN_M) in the list.
-	(all): Depend on $(GEN_M).
-	($(GEN_M): %.m : $(TOPDIR)/Makeconf): New pattern rule.
-	(distclean): Also remove $(GEN_M).
-
-2008-01-11  John W. Eaton  <jwe@octave.org>
-
-	* optimization/sqp.m: New test from example in doc string.
-
-2008-01-10  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/mpoles.m: Avoid cases where poles could be assigned
-	to more than one multiplicity group.
-
-2008-01-10  John W. Eaton  <jwe@octave.org>
-
-	* plot/gnuplot_binary.m: New file.
-	* plot/Makefile.in (SOURCES): Add it to the list.
-
-2008-01-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Fail if filename includes a directory part that
-	does not exist.
-
-2008-01-07  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
-	Error if glob call fails to match any files.
-
-2008-01-04  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* strings/strtrim.m: Doc fix.
-
-2008-01-04  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* general/sub2ind.m, general/ind2sub.m: Doc fix.
-
-2008-01-04  S�ren Hauberg   <hauberg@gmail.com>
-
-	* set/create_set.m, set/union.m: Accept "rows" argument.
-
-2008-01-02  John W. Eaton  <jwe@octave.org>
-
-	* plot/print.m: Correctly handle pbm terminal.
-
-2007-12-28  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/edit.m: Use strcat instead of fullfile to add file
-	extensions.
-
-2007-12-28  David Bateman  <dbateman@free.fr>
-
-	* ezcontourf.m, ezcontour.m, ezmeshc.m, ezmesh.m, ezplot3.m,
-	__ezplot__.m, ezpolar.m, ezsurfc.m, ezsurf.m: New functions.
-	* Makefile.in (SOURCES): Add to the sources.
-
-2007-12-28  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/pcolor.m: Swap 1st and 2nd argument in call to meshgrid.
-	Remove unnecessary call of size function.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-12-21  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imshow.m: Accept empty value for display_range.
-
-2007-12-20  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* pkg/pkg.m: Add .lib as architecture-dependent suffix.
-
-2007-12-19  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imshow.m: Store uint8 images as doubles.  Handle default
-	display ranges correctly.
-
-2007-12-19  Alexander Barth  <barth.alexander@gmail.com>
-	    Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/contourc.m: Allow usage of irregular spaced x, y data.
-
-2007-12-19  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/edit.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-
-2007-12-19  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__bar__.m: Handle "basevalue" option.
-	* plot/__bars__.m: New arg, base_value.
-
-2007-12-17  David Bateman  <dbateman@free.fr>
-
-	* plot/rose.m, plot/feather.m, plot/compass.m: New functions
-	* plot/Makefiles (SOURCES): Add them to the sources
-	* plot/polar.m: Set the x and y limits to the maximum polar
-	radius. Set the axes to be square.
-	* plot/__go_draw_axes__.m: Allow {x|y}axislocation to be "zero"
-	and print axis at zero if this is used.
-
-	* plot/__go_draw_axes__.m: Use "set pm3d explicit" so that
-	contours can overlay pcolor plots. Priveldge no hidden line
-	removal when there are multiple objects in the plot.
-
-2007-12-17  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m:  Fix mirrored tics and borders for
-	set (gca (), "[xy]axislocation", "{right|top}", "box", "off").
-
-2007-12-17  Ben Abbott  <bpabbott@mac.com>
-
-	* miscellaneous/run.m: Replace script with f when looking for
-	file to run.
-
-2007-12-14  David Bateman  <dbateman@free.fr>
-
-	* plot/contour3.m, plot/__contour__.m: Handle linespec.
-	* plot/contour.m: Doc fix.
-	* plot/__go_draw_axes__.m (case "patch"): Include "lt" in lt string.
-	Include linetype in withclause.
-
-	* plot/__go_draw_axes__.m (__calc_dimensions__): New function.
-	Use it to determine dimensions.  Consolidate all 3-d settings.
-
-2007-12-13  John W. Eaton  <jwe@octave.org>
-
-	* image/imshow.m: Turn axis visibility off.
-	Don't scale true color images.
-	* image/image.m: Set axis layer property to "top".
-
-2007-12-12  John W. Eaton  <jwe@octave.org>
-
-	* image/loadimage.m: Avoid calling eval.  Avoid calling exist.
-
-	* plot/pie.m: Avoid calling "exist".
-
-	* linear-algebra/condest.m: Use nargin instead of size(varargin,2).
-	Condense argument processing logic.  Allow 6 arguments.
-	Use issquare.  Avoid calling "exist".
-
-	* plot/__go_draw_axes__.m: Handle the axes layer property.
-
-2007-12-12  David Bateman  <dbateman@free.fr>
-
-	* plot/ellipsoid.m: Port from octave-forge, editing for style.
-	* plot/Makefile.in (SOURCES): Add to the sources.
-
-2007-12-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/surf.m: Set xgrid, ygrid, and zgrid on here.
-	* plot/surface.m: Not here.
-
-	* plot/__go_draw_axes__.m: Always use "set grid front".  Send a
-	subsequent "unset grid" if there is no grid.
-
-	* plot/__go_draw_axes__.m: Include "front" in "set label" options.
-
-	* plot/surface.m: Don't set facecolor property in call to
-	__go_surface__.
-
-	* plot/__plt2vs__.m, plot/__plt2sv__.m: New functions.
-	* plot/__plt2__.m: Handle scalar-vector and vector-scalar cases.
-
-2007-12-11  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__patch__.m: Fix typo. Improve argument checking, so that a
-	color string is not taken as z value.
-
-	* plot/slice.m: Remove unused variable, set xgrid, ygrid, and
-	zgrid to "on" and box to "off" for used axes.
-
-	* plot/__go_draw_axes__.m, plot/plot3.m, plot/ribbon.m,
-	plot/slice.m: Use size_equal(var1,var2,...) when possible.
-
-2007-12-11  David Bateman  <dbateman@free.fr>
-
-	* miscelleaneous/fullfile.m: Ignore empty arguments.
-
-	* sparse/spstats.m: Drop argument to Fsparse to force mutation.
-	* statistics/base/mode.m: Ditto.
-
-	* plot/__plt_get_axis_arg__.m: Ignore integer valued handles as
-	object handles are all now non integer.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* plot/sombrero.m, plot/peaks.m: Use surf instead of mesh.
-
-	* general/issymmetric.m: Use ' instead of .' for compatibility
-	with previous versions of Octave.
-	* general/ishermitian.m: Delete.
-	* general/Makefile.in (SOURCES): Remove ishermitian.m from the list.
-
-	* plot/fplot.m: In N is not specified, increase initial number of
-	points from 3 and 5 to 5 and 8.
-
-	* signal/detrend.m: Move tests here from test/test_signal.m.
-	Loosen tolerance on first test from 10*eps to 20*eps.
-
-	* finance/rate.m: Don't request info from fsolve.
-
-2007-12-10  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__line__.m: Pass initial property/value pairs to __go_line__.
-	* plot/surface.m: Pass initial property/value pairs to __go_surface__.
-
-2007-12-10  David Bateman  <dbateman@free.fr>
-
-	* image/image.m: Rewritten to allow trailing properties to be
-	passed to underlying image object.
-	* image/__img__.m: Pass additional arguments to __go_image__.
-	* plot/__patch__.m: Don't set clim, rely on autoscaling.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: If we have a grid, send "set grid
-	front" to gnuplot.
-
-2007-12-10  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Issue "set view map" for pcolor, and "set
-	border front" from images.
-	* plot/__go_draw_figure__.m: Issue "set autoscale fix" for gnuplot.
-	* plot/pcolor.m: Set axis "box" property.
-	* plot/title.m, plot/xlabel.m, plot/ylabel.m, plot/xlabel.m:
-	Mark as commands.
-
-2007-12-07  David Bateman  <dbateman@free.fr>
-
-	* plot/surf.m: Don't set facecolor property.
-
-2007-12-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/print.m: Pass mono to drawnow.
-	* plot/drawnow.m: New arg, mono.  Pass it to __go_draw_figure__.
-	* plot/__go_draw_figure__.m: New arg, mono.  Pass it to __go_draw_axes.
-	* plot/__go_draw_axes__.m: New arg, mono.  If mono is true,
-	disable color specifications.
-
-	* general/issymmetric.m: Move tests here from test/test_number.m
-
-2007-12-06  Jason Riedy  <ejr@cs.berkeley.edu>
-
-	* general/issymmetric.m: To keep its argument sparse and the
-	function quick, use the infinity norm rather than the 2-norm.
-	Also measure the symmetric part rather than the Hermitian part.
-	* general/ishermitian.m: New file.  Measure the Hermitian part.
-	* general/Makefile.in: Add ishermitian.m to SOURCES.
-
-2007-12-04  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Omit "font \"NAME,SIZE\"" in gnuplot
-	text and label commands if font is "*".
-
-	* linear-algebra/krylov.m: Doc fixes.
-	From Marco Caliari <caliari@sci.univr.it>.
-
-2007-12-04  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/shading.m: Use __plt_get_axis_arg__ for optional axes argument.
-	Add "## PKG_ADD: mark_as_command axis" line.
-
-2007-12-03  John W. Eaton  <jwe@octave.org>
-
-	* contour.m, contour3.m, contourc.m, contourf.m, cylinder.m,
-	fplot.m, plot3.m, plotyy.m, quiver3.m, scatter.m, scatter3.m,
-	slice.m, sombrero.m, stairs.m, stem.m, stem3.m:
-	Generate demos from examples.
-
-2007-12-03  David Bateman  <dbateman@free.fr>
-
-	* testfun/test.m: Disable "testif" test block to avoid spurious
-	skipped test for "make check". Avoid printing variables for
-	skipped tests.
-
-	* testfun/test.m: Add "testif" type to allow for conditional tests.
-
-	* plot/plotyy.m: Use activepositionproperty property of axes
-	object. Set second axis color to "none".
-	* plot/__go_draw_axes__.m: Respect the activepositionproperty
-	property of the axis objects.
-
-2007-12-03  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* linear-algebra/condest.m: Loosen tolerance in test.
-
-2007-12-02  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Remove unnecessary call to
-	get_data_limits.
-
-2007-11-30  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Don't compute data or axis limits.
-	(get_data_limits, get_axis_limits): Delete.
-
-2007-11-30  David Bateman  <dbateman@free.fr>
-
-	* plot/__scatter__.m: Avoid out of bounds varargin element access.
-
-	* plot/__go_draw_axes__.m (do_tics_1): regexprep the cell array of
-	tick labels rather than one by one on the labels themselves.
-	* plot/pareto.m: Bug in numerical labels fixed. Bug in search for
-	95% crossing fixed.
-
-2007-11-29  David Bateman  <dbateman@free.fr>
-
-	* plot/pareto.m: New file.
-	* plot/Makefile.in (SOURCES): Add it to the sources.
-	* plot/__go_draw_axes__.m (do_tics1): Replace "%" with "%%" in tic
-	marks to avoid gnuplot error about formating. More colorspec to
-	after the tics.
-	* plot/plotyy.m: More generic check for appropriate axis color.
-
-	* plot/__stem__.m: New file based on old stem.m expanded to treat
-	2- and 3-D.
-	* plot/stem3.m: New function.
-	* plot/Makefile.in (SOURCES): Add them to the sources.
-	* plot/stem.m: Adapt to use __stem__.
-
-2007-11-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/contour.m, plot/contour3.m, plot/fill.m, plot/patch.m,
-	plot/surf.m, plot/surface.m: Don't return handle value unless
-	requested.
-
-	* plot/patch.m: Omit isnan check on handle returned from
-	__plt_get_axis_arg__.
-
-	* plot/__plt_get_axis_arg__.m: Don't fail if current figure exists
-	but has no axes.
-
-2007-11-28  David Bateman  <dbateman@free.fr>
-
-	* __plt_get_axis_handle__.m: Also allow hggroup and return axes
-	ancestor. If leading argument is logical set variable nogca to see
-	if gca() should be called if there is no active handle found.
-	* __bar__.m, caxis.m, scatter.m, contourf.m, __axes_limits__.m,
-	fill.m,  surf.m, meshz.m, axis.m, pie.m, contour.m,
-	quiver.m, area.m, grid.m, cylinder.m, contour3.m, surface.m,
-	patch.m, scatter3.m, plot.m, sphere.m, quiver3.m, plotyy.m,
-	xlabel.m, ylabel.m, surfnorm.m, zlabel.m: Adapt to use
-	__plt__get_axis_arg__ to find axis handle.
-	* polar.m: Typo.
-
-2007-11-28  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (get_data_limits): Delete unused arg TX.
-
-2007-11-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/drawnow.m: Fix typo.
-
-2007-11-27  David Bateman  <dbateman@free.fr>
-
-	* plot/errorbar.m, plot/loglog.m, plot/loglogerr.m, plot/polar.m,
-	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
-	plot/semilogyerr.m: Treat an axis handle as the first argument.
-
-	* plot/meshz.m: New function.
-	* plot/Makefile.in (SOURCES): Add it to the list.
-	* plot/surface.m: Allow surface to accept an axis handle as the
-	first argument.
-	* plot/meshc.m: Extract z from the the surface object rather than
-	varargin so that we can rely on code in surface to treat leading
-	axis handles.
-
-	* plot/__go_draw_axes__.m: Add nomirror to "set ytics" and "set
-	y2tics" in the case of a plotyy plot.
-	* plot/plotyy.m: ensure the position property is set correct for
-	the second axis, by setting it after the plot itself. In the case
-	of a plot that returns multiple handles, base the color selection
-	on the first.
-
-2007-11-27  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Set quadrilateral color according to
-	z-value of vertex 'c3'.
-
-2007-11-27  John W. Eaton  <jwe@octave.org>
-
-	* image/image.m: Allow nargin == 0 case to work again.
-
-2007-11-27  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_figure__.m: Force a multiplot mode with a
-	colorbar, to ensure that the colorbar is on the canvas for png and
-	postscipt outputs.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* sparse/spstats.m, statistics/base/mode.m: More care with sparse
-	return values.
-
-	* plot/plotyy.m: New function
-	* plot/Makefile.in (SOURCES): Add it here.
-	* plot/__go_draw_axes__.m: Force axis margins for plotyy. Set text
-	color for {x|y|z}label and {x|y|z}tics. Also force the label of
-	{x|y}label to respect the axis position.
-	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Accept an axis
-	handle as the first argument.
-
-	* pkg/pkg.m (pkg:install): When loading the installed packages
-	index into installed_pkgs_lst and not descriptions..
-
-	* plot/quiver3.m, plot/surfnorm.m, plot/__quiver__.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them to the sources.
-	* plot/quiver.m: Modify to use __quiver__.m.
-
-	* plot/hist.m: Avoid saturation when the x values are in an
-	inetger type.
-
-2007-11-26  Jason Riedy  <ejr@cs.berkeley.edu>
-
-	* linear-algebra/condest.m, linear-algebra/onenormest.m: New
-	functions.
-	* linear-algebra/Makefile.in (SOURCES): Add them to the sources.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Prevent the cbrange from being of zero
-	extent.
-
-	* plot/colorbar.m: New function.
-	* plot/Makefile.in (SOURCES): Add it to the sources.
-	* plot/__go_draw_axes__.m: Calculate the colorbar position,
-	precalculate the clim, set pm3d except for mesh.
-	* plot/__contour__.m: Don't scale the contours to clim, but rather
-	save the real values so that colorbar corresponds to the contour
-	levels.
-
-	* plot/stem.m: Set marker color the same as the line color. Draw
-	a single discontinous line object for the stems.
-
-	* plot/sphere.m: New function ported from JHandles.
-	* plot/Makefile.in (SOURCES): Add it to the sources.
-
-	* plot/__go_draw_axes__.m: Pass the have_newer_gnuplot arg to
-	__maybe_munge_text__. Use it to reforce fontname for gnuplot 4.0
-	to get enhanced mode to work correctly for the X11 terminal.
-
-	* plot/imagesc.m, plot/image.m: Scale colormap to image and not
-	the reverse. Allow an axes handle to be passed and/or returned.
-	* plot/__go_draw_axes__.m: Autoscale colormap for images.
-
-	* plot/__go_draw_axes__.m: Add depthorder flag to "set pm3d" to
-	sort surface patches by their depth and not the order they are
-	rendered in.
-
-	* plot/__patch__.m: Set clim correctly.
-	* plot__go_draw_axes__.m: Allow patch objects to have markers, and
-	the marker color is determined by the cmap.
-	* plot/scatter.m: New function to 2D scatter plots.
-	* plot/scatter3.m: New function to 3D scatter plots.
-	* plot/__scatter__.m: Support function for scatter plots
-	* Makefile.in (SOURCES): Ad dnew functions here.
-
-	* plot/drawnow.m (open_gnuplot_stream, init_gnuplot_stream):
-	Return whether the terminal supports enhanced text or not.
-	(drawnow:enhanced_term): New sub-function to determine if terminal
-	supports enhanced mode.
-	* plot/__go_draw_figure__.m: Accept enhanced flag and pass to
-	__go_draw_axes__.
-	* plot/__go_draw_axes__.m: Accept enhanced flag and munge text if
-	needed to support the enhanced mode.
-	* plot/print.m: Remove "enhanced" option as this is now treated in
-	drawnow.m.
-
-	* plot/caxis.m: New function to control the color axis limits.
-	* plot/Makefile.in (SOURCES): Include it.
-	* plot/axis.m: Allow the first argument to be an axes handle.
-	* plot/__go_draw_axes__.m: Move the setting of the caxis, also
-	autoscale caxis for patches. If any(isinf(clim)) don't set the
-	caxis limits.
-
-	* image/gmap40.m: New gnuplot 4.0 specific colormap fucntion.
-	* image/Makefile.in (SOURCES): Include it.
-	* plot/__bar__.h: Allow axis handles to be passed. Set the color
-	of the bars for the colormap.
-	* plot/bar.m, plot/barh.m: Document that axis handles can be
-	passed.
-	* plot/__contour.m: Avoid possible divide by zero error.
-	* plot/contour.m: Missing semicolon.
-	* plot/surface.m: Don't attempt to set additional arguments if
-	there are none.
-	* plot/Makefile.in (SOURCES): Include __bars__.m
-
-2007-11-19  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__bar__.m: put bar creation code into separate function
-	to allow easy hook up from other graphic backends
-
-	* plot/__bars__.m: new function containing bar creation code
-
-2007-11-26  Alexander Barth  <barth.alexander@gmail.com>
-
-	* general/accumarray.m: Correct dimension check.
-
-2007-11-26  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/residue.m: Prepad along second dimension.
-	From Doug Stewart <dastew@sympatico.ca>.
-
-2007-11-26  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/cylinder.m, plot/slice.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-2007-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/patch.m: Handle arg may also be hggroup object.
-	Use ancestor to find parent axes object.
-
-2007-11-14  David Bateman  <dbateman@free.fr>
-
-	* plot/__contour__.m: Treat unclosed contours by adding NaN to
-	flag to patch that it is not closed. Allow z to take string
-	arguments and use it to flag that the contours are placed at the
-	z level of the contour itself.
-	* plot/__go_draw_axes__.m: Treat hidden line removal in patch
-	objects as well. Let hidden removal take precedence in case of a
-	conflict.
-	* plot/surface.m: Allow surface to treat handles being passed or
-	returned. Any additional arguments arr used to set the surface
-	handle.
-	* plot/contour3.m: New function
-	* plot/Makefile.in (SOURCES): Add it to the sources.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* specfun/bessel.m: Update doc string from
-	src/DLD-FUNCTIONS/besselj.cc.
-
-2007-11-12  David Bateman  <dbateman@free.fr>
-
-	* plot/contour.m: Allow handles to be passed and returned. Split
-	the countour function itself into __contour__.m to be shared with
-	surfc and meshc.
-	* plot/__contour__.m: New file
-	* plot/Makefile.in (SOURCES): Add it to the sources.
-	* plot/__go_draw_axes.m: For patch objects don't attempt to patch
-	the face or edge if the facecolor or edge color are marked as
-	"none". Allow the edgecolor to be determined by the cdata in the
-	same manner as the facecolor. Fail if facecolor is not "none" and
-	a 3-D plot is desired, rather than ignoring zdata. Make the
-	storage of 3D/4D data consistent between line, surface and patch
-	objects.
-	* plot/meshc.m: Use new __contour__.m to plot the contours.
-	* plot/surfc.m: Use new __contour__.m to plot the contours.
-
-	* plot/__go_draw_axes__.m (get_fontname_and_size):
-	Handle fontweight and fontangle properties.
-
-2007-11-12  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/spinmap.m, plot/ribbon.m: New functions.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-2007-11-12  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (get_fontname_and_size): New subfunction.
-	Use it to avoid duplicated code.
-
-2007-11-12  David Bateman  <dbateman@free.fr>
-
-	* plot/title.m: Fix return value for nargout > 0.
-
-	* plot/__go_draw_axes.m: Allow the font and fontsize to be
-	specified for the title, xlabel, ylabel and text objects.
-
-	* plot/__go_draw_axes.m: Allow arbitrary colormaps with gnuplot
-	4.0 and surface plots.
-
-2007-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/__patch__.m: Fix computation of faces when patch is defined
-	with X/Y/Z data.
-
-2007-11-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Correct test for have_data.
-	Correct logic in setting palette data.
-
-	* audio/wavread.m, control/base/__bodquist__.m,
-	control/base/dare.m, control/base/dlqr.m, control/hinf/h2norm.m,
-	control/system/c2d.m, control/system/is_detectable.m,
-	control/system/is_signal_list.m, control/system/is_stabilizable.m,
-	control/system/tfout.m, general/isdefinite.m,
-	linear-algebra/krylov.m, miscellaneous/compare_versions.m,
-	optimization/glpk.m, path/savepath.m, plot/findobj.m,
-	plot/shading.m, polynomial/mpoles.m, polynomial/polyint.m,
-	signal/freqz.m, signal/hurst.m, sparse/spfun.m, sparse/spones.m,
-	sparse/spstats.m, testfun/assert.m, testfun/fail.m,
-	testfun/test.m: Use specific end keywords.
-
-	* plot/surfc.m, plot/meshc.m: Don't change view if hold is on.
-
-2007-11-09  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/mesh.m, plot/pcolor.m, plot/surf.m, plot/surface.m:
-	Don't change view if hold is on.
-
-2007-11-09  David Bateman  <dbateman@free.fr>
-
-	* plot/hidden.m: New function.
-	* plot/Makefile.in (SOURCES): Add it here.
-	* plot/meshc.m, plot/mesh.m: Set facecolor to White for hidden
-	line removal.
-	* plot/__go_draw_axes__.m: If facecolor is white flag hidden line
-	removal and if it is "none" don't do hidden line removal.
-
-	* plot/legend.m: Also allow labels for surface and patch types.
-	* plot/__bar__.m: Split into separate patch pbjects to allow
-	setting of the legend.
-	* plot/__go_draw_axes__.m: Set titlespec from keylabel for patch
-	objects as well.
-
-	* plot/area.m, plot/__area__.m: New functions
-	* plot/Makefile.in (SOURCES): Add them to the list of files.
-
-	* plot/patch.m: Correctly handle case of axis handle as first arg.
-
-2007-11-09  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* sparse/spdiags.m: Tweak documentation entries to match other uses.
-
-2007-11-08  John W. Eaton  <jwe@octave.org>
-
-	* control/base/dcgain.m, control/base/dre.m,
-	control/base/impulse.m, control/base/step.m,
-	control/system/dmr2d.m, control/system/ord2.m,
-	control/system/sys2ss.m, control/system/sysdimensions.m,
-	control/system/sysgetsignals.m, control/system/sysout.m,
-	control/system/tfout.m, control/system/ugain.m,
-	control/system/zpout.m, control/util/strappend.m:
-	Don't fail with usage message if nargout is too large.
-
-	* control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
-	control/hinf/hinfnorm.m, control/hinf/hinfsyn.m,
-	control/hinf/hinfsyn_chk.m, control/hinf/is_dgkf.m,
-	control/hinf/wgt1o.m, control/obsolete/dezero.m,
-	control/obsolete/dlqg.m, control/obsolete/minfo.m,
-	control/obsolete/packsys.m, control/obsolete/qzval.m,
-	control/obsolete/rotg.m, control/obsolete/series.m,
-	control/obsolete/swapcols.m, control/obsolete/swaprows.m,
-	control/obsolete/syschnames.m, control/obsolete/unpacksys.m,
-	control/system/__syschnamesl__.m,
-	control/system/__syscont_disc__.m,
-	control/system/__sysdefioname__.m, control/system/__sysgroupn__.m,
-	control/system/__tf2sysl__.m, control/system/__zp2ssg2__.m,
-	control/system/abcddim.m, control/system/buildssic.m,
-	control/system/c2d.m, control/system/cellidx.m,
-	control/system/d2c.m, control/system/dmr2d.m,
-	control/system/fir2sys.m, control/system/is_abcd.m,
-	control/system/is_controllable.m, control/system/is_detectable.m,
-	control/system/is_digital.m, control/system/is_observable.m,
-	control/system/is_stabilizable.m, control/system/is_stable.m,
-	control/system/jet707.m, control/system/listidx.m,
-	control/system/parallel.m, control/system/ss.m,
-	control/system/ss2sys.m, control/system/ss2zp.m,
-	control/system/starp.m, control/system/sys2ss.m,
-	control/system/sys2tf.m, control/system/sys2zp.m,
-	control/system/sysadd.m, control/system/sysappend.m,
-	control/system/sysconnect.m, control/system/syscont.m,
-	control/system/sysdimensions.m, control/system/sysdisc.m,
-	control/system/sysdup.m, control/system/sysgetsignals.m,
-	control/system/sysgroup.m, control/system/sysmin.m,
-	control/system/sysmult.m, control/system/sysout.m,
-	control/system/sysprune.m, control/system/sysreorder.m,
-	control/system/sysscale.m, control/system/syssetsignals.m,
-	control/system/syssub.m, control/system/sysupdate.m,
-	control/system/tf.m, control/system/tf2ss.m,
-	control/system/tf2sys.m, control/system/tfout.m,
-	control/system/zp.m, control/system/zp2ss.m,
-	control/system/zp2sys.m, control/system/zp2tf.m,
-	control/system/zpout.m, control/util/__outlist__.m,
-	control/util/__zgpbal__.m, control/util/axis2dlim.m,
-	control/util/prompt.m, control/util/sortcom.m,
-	control/util/zgfmul.m, control/util/zgfslv.m,
-	control/util/zginit.m, control/util/zgreduce.m,
-	control/util/zgrownorm.m, control/util/zgscal.m: Style fixes.
-
-2007-11-08  David Bateman  <dbateman@free.fr>
-
-	* plot/quiver.m: Fix arrowheads.
-
-2007-11-07  Ben Abbott  <bpabbott@mac.com>
-
-	* set/ismember.m: Call cell_ismember to handle cellstr args.
-	Handle "rows" argument.  New tests.
-	(cell_ismember): New function.
-
-2007-11-07  John W. Eaton  <jwe@octave.org>
-
-	* control/base/__bodquist__.m, control/base/__freqresp__.m,
-	control/base/__stepimp__.m, control/base/are.m,
-	control/base/ctrb.m, control/base/damp.m, control/base/dare.m,
-	control/base/dcgain.m, control/base/dgram.m, control/base/dlqr.m,
-	control/base/dre.m, control/base/impulse.m, control/base/lqe.m,
-	control/base/lqg.m, control/base/lqr.m, control/base/lsim.m,
-	control/base/ltifr.m, control/base/nichols.m,
-	control/base/nyquist.m, control/base/obsv.m, control/base/place.m,
-	control/base/rlocus.m, control/base/step.m, control/base/tzero.m:
-	Style fixes.
-
-2007-11-07  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* control/base/bode_bounds.m, control/base/dgram.m,
-	control/base/dlyap.m, control/base/freqchkw.m,
-	control/base/gram.m, control/base/place.m,
-	control/hinf/hinf_ctr.m, control/hinf/hinfsyn_chk.m,
-	control/hinf/hinfsyn_ric.m, control/system/is_sample.m,
-	control/system/is_signal_list.m, control/system/ss2tf.m,
-	control/system/sys2fir.m, control/system/sysgettsam.m,
-	control/system/sysgettype.m, control/system/sysreorder.m,
-	control/system/tf2sys.m, control/system/zp2tf.m,
-	control/util/axis2dlim.m, control/util/swap.m,
-	control/util/zgfmul.m, control/util/zgfslv.m,
-	control/util/zginit.m, control/util/zgreduce.m,
-	control/util/zgrownorm.m, control/util/zgscal.m,
-	control/util/zgsgiv.m, control/util/zgshsr.m, general/isa.m,
-	geometry/inpolygon.m, linear-algebra/housh.m,
-	miscellaneous/compare_versions.m, miscellaneous/inputname.m,
-	miscellaneous/run.m, quaternion/qconj.m,
-	quaternion/qcoordinate_plot.m, quaternion/qderiv.m,
-	quaternion/qderivmat.m, quaternion/qinv.m, quaternion/qmult.m,
-	quaternion/qtrans.m, quaternion/qtransvmat.m, signal/fractdiff.m,
-	signal/freqz_plot.m, signal/periodogram.m, signal/rectangle_lw.m,
-	signal/rectangle_sw.m, signal/sinc.m, signal/triangle_lw.m,
-	signal/triangle_sw.m, signal/yulewalker.m, sparse/colperm.m,
-	sparse/etreeplot.m, sparse/nonzeros.m, sparse/spalloc.m,
-	sparse/spones.m, sparse/spy.m, specfun/isprime.m,
-	statistics/distributions/empirical_cdf.m,
-	statistics/distributions/empirical_inv.m,
-	statistics/distributions/empirical_pdf.m,
-	statistics/models/logistic_regression_derivatives.m,
-	statistics/models/logistic_regression_likelihood.m: Check nargin.
-
-2007-11-07  David Bateman  <dbateman@free.fr>
-
-	* general/gradient.m: Correctly convert deltax and deltay scalar
-	values are scalars to vectors.
-
-	* plot/__go_draw_axes__.m: Fix surfaces for gnuplot 4.0 and for
-	the meshc.m function.
-	* plot/meshc.m: Also use the surface function.
-
-	* plot/meshc.m, plot/quiver.m, plot/surfc.m, : New files.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-	Also add pcolor.m, shading.m, surf.m, and surface.m to the list.
-
-2007-11-07  Michael Zeising  <michael@michaels-website.de>
-
-	* audio/wavwrite.m, audio/wavwrite.m: Correct sample scaling.
-
-2007-11-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Also set have_data to false if any of
-	the data limits are infinite.
-	(get_data_limits): Don't do anything if xdat or tx are empty.
-	(get_axis_limits): Don't do anything if min_val or max_val are
-	infinite.
-
-2007-11-06  David Bateman  <dbateman@free.fr>
-
-	* plot/hist.m: Pass any additional arguments to bar for
-	treatment. Create a default x value that is always a vector.
-
-2007-11-06  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* pkg/pkg.m.m: Check for environment variables CC, CXX, AR, RANLIB
-	when calling ./configure and add quotes to preserve spaces.
-
-2007-11-06  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/pcolor.m, plot/shading.m, plot/surf.m, plot/surface.m:
-	New files.
-	* plot/mesh.m: Call surface to do the real work.
-	* plot/__go_draw_axes__.m: Use pm3d mode to handle new surface
-	properties.
-
-	* image/colormap.m: Also return current colormap if nargout and
-	nargin are both 0.
-
-2007-11-05  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* startup/inputrc: Delete key bindings starting with \340 code.
-
-2007-11-05  David Bateman  <dbateman@free.fr>
-
-	* linear-algebra/__norm__.m: Scale frobenius norm by infinity norm
-	to avoid issues of over- and underflow.  From Rolf Fabian
-	<Rolf.Fabian@gmx.de>.
-
-2007-11-02  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* time/asctime.m, general/structfun.m: Fix broken @examples in
-	help texts.
-
-2007-11-02  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/bar.m, plot/barh.m: Doc fix.
-
-2007-10-31  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Call undo_string_escapes on obj.keylabel.
-
-2007-10-31  Michael goffioul  <michael.goffioul@gmail.com>
-
-	* plot/subplot.m: Ignore legend objects when parsing existing axes
-	objects and legend objects are implemented with a separate axes
-	object.
-
-2007-10-30  David Bateman  <dbateman@free.fr>
-
-	* control/base/DEMOcontrol.m: Doc fixes for small book format.
-
-	* plot/__go_draw_axes__.m (do_linestyle_command):
-	Use point type 0 for ".".
-
-2007-10-26  John W. Eaton  <jwe@octave.org>
-
-	* image/imshow.m: Improve compatibility.
-	* image/image.m: Return handle if nargou > 0.
-
-	* pkg/pkg.m: Delete PKG_ADD directive for autoloading packes.
-
-2007-10-25  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/compare_versions.m: Style fixes.
-
-2007-10-24  John W. Eaton  <jwe@octave.org>
-
-	* image/saveimage.m: Use functional form of save instead of eval.
-	Use -text instead of -ascii.
-
-	* plot/__go_draw_axes__.m: Handle visible = "off" for axes objects.
-
-2007-10-23  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/legend.m: Also extract location string from varargin (lost
-	when 2007-10-08 patch was applied).
-
-2007-10-23  David Bateman  <dbateman@free.fr>
-
-	* plot/xlim.m, plot/ylim.m, plot/zlim.m, plot/__axes_limits__.m,
-	miscellaneous/what.m: New functions
-	* plot/Makefile.in, miscellaneous/Makefile.in (SOURCES): Add new
-	functions.
-
-2007-10-22  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/cputime.m, time/tic.m, time/toc.m: Delete.
-	* miscellaneous/Makefile.in (SOURCES): remove cputim.m
-	* time/Makefile.in (SOURCES): Remov tic.m and toc.m
-
-2007-10-19  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/contourf.m: New function.
-	* plot/Makefile.in (SOURCES): Add it to the list.
-
-2007-10-19  John W. Eaton  <jwe@octave.org>
-
-	* plot/subplot.m: Doc fix.
-
-2007-10-19  David Bateman  <dbateman@free.fr>
-
-	* plot/__bar__.m, plot/fill.m: Call newplot as needed.
-
-2007-10-17  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* plot/print.m: Handle -textspecial and -textnormal flags for fig
-	output.
-
-2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
-
-	* general/rat.m, sparse/pcg.m, sparse/pcr.m, optimization/sqp.m,
-	statistics/models/logistic_regression.m, polynomial/polygcd.m,
-	control/system/ss.m, signal/arch_rnd.m, control/system/ss2sys.m,
-	control/system/syssetsignals.m, control/base/lqg.m,
-	strings/str2double.m, control/system/sysscale.m,
-	control/hinf/hinfdemo.m, general/cplxpair.m:
-	Make help text fit on pages when using smallbook.
-
-2007-10-15  David Bateman  <dbateman@free.fr>
-
-	* plot/print.m: Call drawnow before printing to ensure the plot is
-	on the screen.
-
-	* testfun/test.m: In error/warning blocks test for an error before
-	a warning to avoid unexpected failures.
-
-2007-10-15  Kim Hansen  i<kimhanse@gmail.com>
-
-	* testfun/assert.m: Correct documentation of absolution versus
-	relative error tolerance and add tests.
-
-2007-10-14  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (pkg:configure_make): Treat case of no files to install in
-	src directory.
-	* plot/Makefile.in (SOURCES): Add fill.m.
-
-2007-10-13  David Bateman  <dbateman@free.fr>
-
-	* plot/__patch__.m: Allow multiple patches to be defined and
-	return a single patch object. Allow Faces/Vertices form of
-	patch. Flag failure so the patch can call print_usage.
-	* plot/patch.m: Update help string for Faces/Vertices
-	call. Respect the fail flag returned by __patch__. Add demo code
-	that tests the functionality of patch.
-	* plot/__go_draw_axes__.m: Treat an array of patches in a single
-	patch object.
-	* plot/fill.m: New function.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (get_axis_limits):
-	Return lim = [] if logscale and no positive values.
-	(__go_draw_axes__): Skip plotting if computed axis limits are empty.
-	Set initial min and min positive values to Inf, max values to -Inf.
-	(get_data_limits): Correctly handle xminp when no positive values
-	are found.
-
-2007-10-11  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/residue.m: New optional input for pole multiplicity.
-	Doc fix.  Fix tests.
-
-2007-10-11  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* toplev.cc (Foctave_config_info): Add field "mac".
-
-	* miscellaneous/ismac.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
-	* miscellaneous/ispc.m, miscellaneous/isunix.m: Doc fix.
-
-2007-10-11  Arno Onken  <asnelt@asnelt.org>
-
-	* statistics/distributions/hygernd.m: Allow size to be specified
-	as a scalar.  Handle three argument case.  Allow T, M, and N to be
-	scalars or matrices of a common size.
-
-2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
-
-	* control/csrefcard.lt, control/system/is_detectable.m,
-	control/system/sysgroup.m, geometry/voronoin.m,
-	miscellaneous/dir.m, sparse/pcg.m, sparse/treeplot.m,
-	statistics/base/mode.m, statistics/distributions/betarnd.m,
-	statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/frnd.m,
-	statistics/distributions/gamrnd.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/laplace_rnd.m,
-	statistics/distributions/logistic_rnd.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/normrnd.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/trnd.m,
-	statistics/distributions/unifrnd.m,
-	statistics/distributions/wblrnd.m: Spelling fixes.
-
-2007-10-10  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* time/tic.m: New optional output value.
-
-	* general/int2str.m: Doc fix.
-
-2007-10-10  Arno Onken  <asnelt@asnelt.org>
-
-	* statistics/distributions/hygecdf.m,
-	statistics/distributions/hygeinv.m,
-	statistics/distributions/hygepdf.m,
-	statistics/distributions/hygernd.m:
-	Swap order of T and M args for compatibility.
-
-2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* control/hinf/hinfsyn.m, control/hinf/wgt1o.m,
-	control/system/buildssic.m, control/system/c2d.m,
-	control/system/d2c.m, control/system/ord2.m, control/system/ss.m,
-	control/system/ss2sys.m, control/system/ss2tf.m,
-	control/system/syscont.m, control/system/sysdimensions.m,
-	control/system/sysdisc.m, control/system/sysmult.m,
-	control/system/sysrepdemo.m, control/system/tf2ss.m, elfun/lcm.m,
-	finance/fv.m, general/cumtrapz.m, general/gradient.m,
-	general/interp1.m, general/interp2.m, general/interp3.m,
-	general/interpft.m, general/interpn.m, general/polyarea.m,
-	general/rat.m, general/structfun.m, general/trapz.m,
-	geometry/tsearchn.m, image/rgb2hsv.m, linear-algebra/krylov.m,
-	miscellaneous/ans.m, miscellaneous/gzip.m, optimization/glpk.m,
-	optimization/sqp.m, plot/findobj.m, plot/legend.m, plot/peaks.m,
-	plot/plot3.m, plot/stem.m, polynomial/deconv.m,
-	polynomial/pchip.m, polynomial/spline.m, polynomial/unmkpp.m,
-	sparse/pcr.m, sparse/spalloc.m, sparse/spconvert.m,
-	specfun/factor.m, specfun/legendre.m, statistics/base/mean.m,
-	statistics/base/meansq.m, statistics/base/var.m,
-	statistics/tests/chisquare_test_independence.m,
-	statistics/tests/t_test.m, statistics/tests/u_test.m,
-	strings/dec2base.m, strings/mat2str.m, testfun/speed.m,
-	testfun/test.m: Spelling fixes.
-
-2007-10-10  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/mpoles.m: Return indx = ordr(indx), not indx(ordr).
-
-2007-10-10  John W. Eaton  <jwe@octave.org>
-
-	* general/num2str.m: Always allow for sign for automatically
-	computed format widths.
-
-2007-10-09  David Bateman  <dbateman@free.fr>
-
-	* plot/patch.m: Accept a handle as the first argument.
-
-2007-10-09:  Kim Hansen  <kimhanse@gmail.com>
-
-	* general/repmat.m: Handle sparse input.  Add tests.
-
-2007-10-09  John W. Eaton  <jwe@octave.org>
-
-	* audio/wavwrite.m: Accept arguments in compatible order.
-
-2007-10-08  David Bateman  <dbateman@free.fr>
-
-	* general/interp2.m: Relax test for values outside the grid to
-	allow monotonically decreasing abscissa as well.
-
-2007-10-08  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/residue.m: Doc fix.  Add tests.  Restore multiplicity
-	as output parameter.
-
-2007-10-08  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m, plot/legend.m:
-	Handle compatible position specifiers as strings.
-
-2007-10-08  John Swensen  <jpswensen@comcast.net>
-
-	* general/num2str.m: Eliminate extra whitespace in output.
-	* strings/strtrim.m: New function.
-	* strings/Makefile.in (SOURCES): Add it to the list.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/residue.m: New test from test/test_poly.m.
-
-2007-10-06  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/saveimage.m: Handle saving color images without a colormap.
-	* image/__img_via_file__.m: Add missing semicolon.
-
-2007-10-06  Bill Denney  <wsloand@gmail.com>
-
-	* general/__splinen__.m, general/isscalar.m, general/rat.m,
-	strings/dec2base.m: Use numel(x) instead of prod(size(x)).
-
-2007-10-06  Francesco Potorti`  <Potorti@isti.cnr.it>
-
-	* plot/print.m: Handle svg output type.  Accept new -S option to
-	specify size for PNG and SVG output types.
-
-2007-10-05  Ben Abbott  <bpabbott@mac.com>
-
-	* polynomial/mpoles.m: New function.
-	* polynomial/residue.m: Modified to behave in reciprocal
-	manner.  No longer compute 4th output, "e".  No longer accept
-	tolerance input.  Explicitly set tolerance parameter to 0.001.
-	Respect maximum relative difference in poles when determining
-	their multiplicity.  Use mpoles to determine the multiplicity of
-	poles.
-
-2007-10-05  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m: Add cbrange to the plot stream
-	for surface plots.
-
-2007-10-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/__next_line_color__.m: Get color_rotation from axes
-	colororder property.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dir.m: Handle symbolic links in compatible way.
-	Use S_ISDIR (st.mode) instead of checking st.modestr(1) == "d".
-
-	* linear-algebra/Makefile.in (SOURCES): Rename norm.m to __norm__.m.
-	* linear-algebra/__norm__.m: Rename from norm.m.  Eliminate
-	special for __vnorm__.
-
-2007-10-03  Quentin Spencer  <qspencer@ieee.org>
-
-	* linear-algebra/norm.m: Special case vector 1-norm and 2-norm.
-
-2007-10-03  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (is_architecture_dependent): New function to identify
-	if a file is architecture dependent based on a list of file
-	extensions.
-	(configure_make): Simplify the search for architecture dependent
-	files based on this function.
-	(load_pakages_and_dependencies): Also look for bin directory in
-	the architecture dependent directory.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dir.m: Create empty struct with field names.
-	Include datenum in struct.
-
-2007-10-02  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/ls.m: If nargout return string array of files
-	returned by ls.
-
-2007-10-01  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Use %.15e instead of %.15g when setting
-	range values.
-
-2007-10-01  David Bateman  <dbateman@free.fr>
-
-	* linear-algebra/norm.m: Inline the isvector(x) calculation for
-	speed with small vectors.
-	* pkg/pkg.m (archprefix): Set using octave_config_info("libexecdir")
-	rather than OCTAVE_HOME().
-
-2007-09-30  Ben Abbott  <bpabbott@mac.com>
-
-	* plot/findobj.m: New function.
-	* plot/Makefile.m (SOURCES): Add it to SOURCES.
-
-2007-09-26  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Add second argument to setting for prefix for
-	architecture dependent files. Use throughout.
-	(pkg:issuperuser): New function, use through to check for
-	root user.
-	(pkg:getarchprefix): function to give the archiecture dependent
-	prefix for a package.
-	(pkg:getarchdir): New function giving location of architetcure
-	dependent directory. Use through out.
-	(pkg:install): Treat architecture dependent directory separately
-	as in might not be a sub-directory of the package directory.
-	(pkg:uninstall): ditto.
-	(pkg:create_pkgadddel): Check for global or local install for
-	architecture dependent directory.
-	(pkg:finish_installation): ditto.
-	(pkg:write_INDEX): ditto.
-	(pkg:load_packages_and_dependencies): ditto.
-	(pkg:copy_files): ditto. Add step to copy architecture dependent
-	files to a new location if user is root.
-	(pkg:rm_rf): Check if file or directory exists before removing.
-	(pkg:dirempty): Check if directory exists before checking.
-
-	* plot/___patch__.m: Allow face colors to be passed as strings
-
-	* plot/__plt_get_axis_arg__.m: Treat case of empty "varargin"
-	needed for calls to "hold" without an argument.
-
-2007-09-21  John W. Eaton  <jwe@octave.org>
-
-	* optimization/sqp.m: Fix typo.
-
-	* plot/__go_draw_axes__.m (do_tics_1): Use %g, not %.15g here.
-
-2007-09-21  Luther Tychonievich  <lty@cs.byu.edu>
-
-	* control/hinf/h2norm: Compute d*d', not d'*d.
-
-2007-09-21  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* statistics/distributions/Makefile.in (SOURCES): Add unidcdf.m,
-	unidpdf.m and unidinv.m
-
-2007-09-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Use %.15g throughout.
-	(do_tics_1): Set numeric axes formats to "%.15g".
-
-2007-09-18  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m (__gnuplot_write_data__): Use %e instead
-	of %g when writing data.
-
-2007-09-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Omit linestyle clause for errorbar plots.
-
-2007-09-14  Ulrich Tipp  <ulrich.tipp@hsnr.de>
-
-	* miscellaneous/bincoeff.m: Fix calculation of bincoeff (n, k) for
-	noninteger N with N-K < 1.
-
-2007-08-04  Jean-Francois Cardoso  <cardoso@tsi.enst.fr>
-
-	* strings/index.m: Correct for strings differing after the third
-	position (bug reported by Maude Martin).
-
-2007-09-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/__default_colormap__.m: Delete.
-	* plot/Makefile (SOURCES): Remove from the list.
-
-2007-09-13  Christof Zeile  <cz-oct07@cvmx.com>
-
-	* pol2cart.m: Make it work with mixed scalar/nonscalar arguments.
-
-2007-09-10  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Allow gnuplot 4.0 with patches, but
-	limit the selection of colors in the same way as for lines.
-	* plot/__patch__.m: Allow matrix arguments with one patch per
-	column.
-	* plot/__bar__.m: Adapt to use "patch".
-
-2007-09-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m (drawnow): New arg, debug_file.
-	(init_plot_stream): Split from open_plot_stream.
-	* plot/print.m: Accept -debug=FILE argument.
-
-2007-09-06  David Bateman  <dbateman@free.fr>
-
-	* general/celldisp.m: New function.
-	* general/Makefile.in (SOURCES): Add celldisp.m.
-	* miscellaneous/swapbytes.m: New function.
-	* miscellaneous/gzip.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add swapbytes.m and gzip.m.
-
-2007-09-05  David Bateman  <dbateman@free.fr>
-
-	* general/structfun.m: New function.
-	* general/Makefile.in (SOURCES): Add it to sources.
-	* miscellaneous/run.m: New function.
-	* miscellaneous/Makefile.in (SOURCES): Add it to sources.
-	* statistics/base/mode.m: New function.
-	* statistics/base//Makefile.in (SOURCES): Add it to sources.
-
-2007-09-05  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/orderfields.m: Use numel instead of length.
-
-2007-09-05  Michael goffioul  <michael.goffioul@gmail.com>
-
-	* miscellaneous/orderfields.m: Handle empty structs.
-
-2007-09-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Consistently index PARAMETRIC with
-	DATA_IDX.
-
-2007-09-04  David Bateman  <dbateman@free.fr>
-
-	* general/isdir.m: Return a logical value.
-
-2007-09-04  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/chi2pdf.m,
-	statistics/distributions/chi2cdf.m,
-	statistics/distributions/chi2inv.m: Modifiy the call to the gamma
-	distribution functions to account for inverse of scale factor in
-	gamma functions.
-
-2007-09-01  John W. Eaton  <jwe@octave.org>
-
-	* plot/Makefile.in (SOURCES): Add ancestor.m to the list.
-
-2007-09-01  David Bateman  <dbateman@free.fr>
-
-	* polynomial/polyint.m: New function like polyinteg but with
-	explicit integration constant.
-	* polynomial/polyinteg.m: Remove.
-	* polynomial/Makefile.in (SOURCES): Add polyint.m and remove
-	polyinteg.m.
-	* deprecated/polyinteg.m: Move version here.
-	* deprecated/Makefile.in (SOURCES): Add polyinteg.m.
-
-	* geometry/voronoi.m: Add large box around data to get a good
-	approximation of the rays to infinity.
-
-2007-08-31  Michael goffioul  <michael.goffioul@gmail.com>
-
-	* plot/axes.m: Allow parent to be specified when creating axes
-	objects.  Support non-figure parents.
-
-2007-08-31  John W. Eaton  <jwe@octave.org>
-
-	* plot/ancestor.m: New function, adapted from Octave Forge.
-
-2007-08-31  S�ren Hauberg  <hauberg@gmail.com>
-
-	* polynomial/polygcd.m: Better layout of example.
-	* polynomial/compan.m: Remove unnecessary check.
-	* polynomial/roots.m: Added example to help text.
-	* polynomial/polyderiv.m: Change 'polyder' to 'polyderiv' in help text.
-	* polynomial/poly.m: Added example to help text.
-
-2007-08-30  John W. Eaton  <jwe@octave.org>
-
-	* optimization/qp.m: Increase maxit to 200.
-
-2007-08-30  David Bateman  <dbateman@free.fr>
-
-	* geometry/inpolygon.m: New file.
-	* geometry/Makefile.in (SOURCES): Add inpolygon.m.
-
-2007-08-29  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m: Disable linetype in do_linestyle_command.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Treat text color property.
-
-2007-08-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/subplot.m, plot/plot.m, plot/grid.m:
-	Use p = get (h, "prop") instead of obj = get (h); p = obj.prop.
-
-	* miscellaneous/movefile.m: Separate second and third args and
-	use p1 and p2, not f1 and f2 when constructing arguments for
-	calls to system.  From Michael Goffioul <michael.goffioul@gmail.com>.
-
-2007-08-24  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* set/intersect.m: Make it work with cell arrays of strings.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* geometry/convhull.m, geometry/delaunay.m, geometry/delaunay3.m,
-	geometry/griddata.m, geometry/voronoi.m, geometry/voronoin.m: New
-	functions ported from octave-forge.
-	* geometry/delaunayn.m, geometry/dsearch.m, geometry/dsearchn.m,
-	geometry/griddata3.m, geometry/griddatan.m, geometry/trimesh.m,
-	geometry/triplot.m, geometry/tsearchn.m:
-	New functions.
-	* geometry/voronoi.m: Remove duplicate edges from Voronoi diagram.
-	* geometry/Makefile.in (SOURCES): Add functions above.
-	* configure.in (AC_CONFIG_FILES): Add new file geometry/Makefile.
-
-2007-08-23  John W. Eaton  <jwe@octave.org>
-
-	* pkg/pkg.m: Avoid using installed_packages for both function and
-	variable name.
-
-2007-08-23  David Bateman  <dbateman@free.fr>
-
-	* plot/plot.m: Allow first arg to be axes handle.
-
-2007-08-22  David Bateman  <dbateman@free.fr>
-
-	* control/base/nichols.m: Correct for misnamed variable, and ensure
-	outputs are returned only if requested.
-
-2007-08-22  Donald Parsons  <dparsons@brightdsl.net>
-
-	* control/base/nichols.m: Fix typo.
-
-2007-08-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/meshgrid.m: Use repmat instead of multiplication.
-
-2007-08-10  Peter A. Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m: Add axes position to the usingclause,
-	use axes position in each appropriate gnuplot set statement.
-
-2007-08-10  John W. Eaton  <jwe@octave.org>
-
-	* image/Makefile.in (DISTFILES): Also include $(IMAGES) in the list.
-	(install install-strip): Use $(IMAGES), not $(IMAGE_FILES_NO_DIR).
-	(uninstall): Use $(IMAGES), not $(IMAGE_FILES_NO_DIR).
-	(IMAGE_FILES, IMAGE_FILES_NO_DIR): Delete obsolete variables.
-
-2007-08-10  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/patch.m, plot/__patch__.m: New files.
-	* plot/Makefile.in (SOURCES): Add them to the list.
-
-2007-08-07  John W. Eaton  <jwe@octave.org>
-
-	* path/savepath.m: Use single quotes for argument to PATH command
-	that is inserted in file.
-
-2007-07-27  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Only set default value for term if GNUTERM is
-	not set in the environment.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in, audio/Makefile.in, control/Makefile.in,
-	control/base/Makefile.in, control/hinf/Makefile.in,
-	control/obsolete/Makefile.in, control/system/Makefile.in,
-	control/util/Makefile.in, deprecated/Makefile.in,
-	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
-	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, optimizaton/Makefile.in,
-	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, quaternion/Makefile.in,
-	set/Makefile.in, signal/Makefile.in, sparse/Makefile.in,
-	specfun/Makefile.in, special-matrix/Makefile.in,
-	startup/Makefile.in, statistics/Makefile.in,
-	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
-	Adjust DISTFILES to allow out of tree "make dist" to work.
-
-2007-07-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt2__.m: Return [](0x1) if both X and Y are empty.
-
-2007-07-24  David Bateman  <dbateman@free.fr>
-
-	* image/flag.m: New colormap function.
-	* images/Makefile.in: Include it in SOURCES.
-
-	* image/autumn.m image/bone.m image/cool.m image/copper.m
-	image/hot.m image/hsv.m image/jet.m image/pink.m image/prism.m
-	image/rainbow.m image/spring.m image/summer.m image/white.m
-	image/winter.m, image/brighten.m: Use isscalar and not is_scalar.
-	* image/gray.m, image/ocean.m: Use the same means of finding the
-	number of colormap elements as the other colormap functions.
-
-2007-07-24  Kai Habel  <kai.habel@gmx.de>
-
-	* plot/__go_draw_axes__.m: Handle patch.
-
-2007-07-23  David Bateman  <dbateman@free.fr>
-
-	* general/rat.m: New function for ration approximation imported
-	from octave-forge.
-	* general/del2.m: New function for discrete laplacian operator.
-	* general/Makefile.in: Include rat.m and del2.m  in SOURCES.
-
-	* image/autumn.m image/bone.m image/cool.m image/copper.m
-	image/hot.m image/hsv.m image/jet.m image/pink.m image/prism.m
-	image/rainbow.m image/spring.m image/summer.m image/white.m
-	image/winter.m, image/brighten.m: Port image functions from
-	octave-forge.
-	* image/Makefile.in: Add ported functions to SOURCES.
-	* image/gray.m, image/ocean.m: Don't set the colormap for
-	compatibility with matlab.
-
-	* plot/meshc.m, plot/peaks.m: Port plotting function from
-	octave-forge
-	* plot/Makefile.in: Add ported functions to SOURCES.
-	* plot/__go_draw_axes__.m: Set the palette for the surfaces if
-	using gnuplot 4.2 or greater.
-
-2007-07-23  Claudio Belotti  <c.belotti@imperial.ac.uk>
-
-	* general/cart2sph.m: Fix unbalanced paranthesis.
-
-2007-07-19  David Bateman  <dbateman@free.fr>
-
-	* plot/fplot.m: More compatible version.
-
-2007-07-18  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/clf.m: Check for valid handle before deleting.
-
-	* plot/figure.m: Pass "figure" property/value pairs directly to
-	__go_figure__ instead of using regular "set" call.
-
-2007-07-18  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* plot/drawnow.m: Prefer GNUTERM to DISPLAY when choosing terminal
-	type for gnuplot.
-
-2007-07-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Unconditionally send "unset label" to
-	gnuplot for each set of axes.
-
-2007-07-18  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/gamcdf.m, statistics/distributions/gaminv.m,
-	statistics/distributions/gampdf.m, statistics/distributions/gamrnd.m,
-	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
-	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m:
-	Use standard scale factor rather than one on the scale factor for
-	compatibility.
-
-	* deprecated/gamma_cdf.m, deprecated/gamma_inv.m,
-	deprecated/gamma_pdf.m, deprecated/gamma_rnd.m,
-	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
-	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m:
-	Preserve backward compatibility.
-
-2007-07-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* pkg/pkg.m (pkg:installed_packages): Use findstr rather than regexp
-	to avoid issues with regexp special characters in the path strings.
-
-2007-07-06  David Bateman  <dbateman@free.fr>
-
-	* general/accumarray.m: New function to create an array by
-	accumulating the elements.
-
-2007-06-29  Marcus W. Reble  <reble@wisc.edu>
-
-	* optimization/sqp.m (sqp): New args, lb, ub, maxiter, and tolerance.
-	(fdjac): Set nx outside of if block.
-	(cf_ub_lb, cigrad_ub_lb): New subfunctons.
-
-2007-06-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* plot/subplot.m: Add 'ishandle' check when parsing the existing axes.
-
-	* plot/axis.m: Also set "visible" property when setting axes to
-	on/off.
-
-2007-06-27  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* image/colormap.m: Only return colormap if nargout > 0.
-	Mark as command.
-
-2007-06-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m, plot/__go_draw_axes__.m: Use strcmpi instead of
-	strcmp for selected property comparisons.
-
-2007-06-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imshow.m: Fix check for colormap arguments.
-
-2007-06-25  Joel Keay  <keay@nhn.ou.edu>
-
-	* plot/drawnow.m: Handle GNUTERM=aqua if DISPLAY is not set.
-
-2007-06-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* statistics/base/median.m: Update help text to mention 'dim'
-	argument, and note that the data should be sorted for the
-	definition of the median to be correct.
-
-	* statistics/base/std.m: Add missing square to definition of
-	standard deviation.
-
-	* statistics/base/cov.m: Add definition of covariance to the help text.
-
-	* statistics/base/kurtosis.m, statistics/base/skewness.m,
-	statistics/base/std.m:
-	Note that \bar{x} is the mean value of x in the help text.
-
-	* specfun/nchoosek.m: Add alternative definition of the binomial
-	coefficient to the help text.
-
-	* specfun/perms.m, statistics/base/values.m: Add example in help text.
-
-	* statistics/base/var.m: Put N in @math in help text.
-
-	* statistics/base/qqplot.m, statistics/base/ppplot.m,
-	statistics/tests/kolmogorov_smirnov_test.m:
-	Write about possible values of 'dist' in help text.
-
-	* statistics/base/corrcoef.m, statistics/base/cor.m:
-	Add definition of correlation to the help text.
-
-	* statistics/base/logit.m, statistics/base/kendall.m,
-	statistics/base/cloglog.m, statistics/tests/hotelling_test_2.m,
-	statistics/distributions/wblcdf.m, statistics/distributions/wblpdf.m:
-	TeXification of help text.
-
-	* statistics/tests/hotelling_test.m: Write T^2 in @math in help text.
-
-	* statistics/tests/var_test.m, statistics/tests/welch_test.m:
-	Add missing @var's to help text.
-
-	* statistics/models/logistic_regression.m: Fix typos in help text.
-
-	* statistics/distributions/kolmogorov_smirnov_cdf.m: Fix TeX part
-	of help text.
-
-	* statistics/distributions/unidinv.m: Add a missing 'discrete' to
-	help text.
-
-	* statistics/distributions/unidpdf.m,
-	statistics/distributions/discrete_pdf.m:
-	Replace 'pDF' with 'PDF' in help text.
-
-2007-06-25  John W. Eaton  <jwe@octave.org>
-
-	* strings/substr.m: Use offset consistently in code and doc string.
-	From Rafael Laboissiere <rafael@debian.org>.
-
-2007-06-25  Pete Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m: Handle units for text objects.
-
-2007-06-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Handle char arrays for tic labels.
-	Recycle tic labels if necessary.  From Juhani Saastamoinen
-	<juhani@cs.joensuu.fi>.
-
-2007-06-20  John W. Eaton  <jwe@octave.org>
-
-	* strings/index.m: Allow strings to be empty.
-	From Hartmut Wziontek <hwz@hwz.bv.TU-Berlin.DE>
-
-	* plot/__go_draw_axes__.m (do_tics_1): Fix typo (xtic -> tics).
-
-2007-06-19  Vittoria Rezzonico  <vittoria.rezzonico@epfl.ch>
-
-	* sparse/pcg.m: Allow the preconditioner to be passed as two
-	separate matrices.
-
-2007-06-19  David Bateman  <dbateman@free.fr>
-
-	* plot/axis.m: Prefer to use legend rather than the older Octave
-	only ";;" legend syntax.
-	* polynomial/mkpp.m: ditto.
-	* polynomial/pchip.m: ditto.
-	* signal/freqz_plot.m: ditto.
-	* sparse/gplot.m: ditto.
-	* sparse/treeplot.m: ditto.
-
-2007-06-19  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (do_tics, do_tics_1): New functions.
-	(__go_draw_axes__): Call do_tics to handle tic marks.
-
-2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* general/interp1.m, general/interp2.m, general/interp3.m,
-	general/interpn.m: Replace, NaN with NA.  Use isna instead of ==
-	to check for NA.
-
-2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* optimization/glpk.m: TeXified the help text.
-	* optimization/qp.m: TeXified the help text.
-	* optimization/sqp.m: TeXified the help text.
-
-2007-06-16  S�ren Hauberg  <hauberg@gmail.com>
-
-	* plot/legend.m: Replace 'vargin' with 'varargin'.
-
-2007-06-15  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Only attempt label rotation if
-	have_newer_gnuplot is true.
-
-2007-06-15  Pete Gustafson  <petegus@umich.edu>
-
-	* plot/__go_draw_axes__.m  Handle rotation arg for axis labels.
-	* plot/__axis_label__.m  Assign ylabel default rotation property
-	to 90, all others 0.
-
-	* plot/__errplot__.m: Set ifmt from fmt.linestyle.
-	* plot/__go_draw_axes__.m: Removed undefined tx from call to
-	get_data_limits.
-	* plot/__plotopt1__.m: Intercept and strip format string when
-	called by __errplot__.
-
-2007-06-15  John W. Eaton  <jwe@octave.org>
-
-	* testfun/test.m: Also return number of expected failures.
-
-2007-06-14  John W. Eaton  <jwe@octave.org>
-
-	* set/ismember.m: Mark two tests known to fail with xtest.
-
-	* plot/__go_draw_axes__.m: Handle text rotation property.
-
-2007-06-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* testfun/test.m: Add xtest support for tests known to fail.
-
-2007-06-14  Sebastian Schubert  <sebastian-schubert@gmx.de>
-
-	* plot/print.m: Handle pstex, pslatex, epslatex, and
-	epslatexstandalone terminals.
-
-2007-06-14  David Bateman  <dbateman@free.fr>
-
-	* general/__splinen__.m: Check also for ND vectors. Fix for N > 2,
-	as permutation of results was incorrect.
-	* general/interp1.m: Add demo on second derivative
-	* general/interpn.m: Convert "y" to vectors for __splinen__
-	call. Add 3D demo. Fix typos
-	* general/interp3.m: Fix typos. Correct permutation for use of
-	interpn.
-	* polynomial/mkpp.m: Correction for matrices of 3 or more dimensions.
-
-2007-06-13  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/mkoctfile.m: Quote args too.
-
-2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* miscellaneous/mkoctfile.m: Quote script name for call to system.
-
-2007-06-12  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* plot/__pltopt1__.m: Set linestyle to "none" instead of "".
-	Set have_linestyle to true if two character linestyle is found.
-
-2007-06-12  David Bateman  <dbateman@free.fr>
-
-	* general/Makefile.in (SOURCES): Include __spline__.m, interp3.m
-	and interpn.m.
-
-	* pkg/pkg.m (pkg:load_package_dirs): Check for field "loaded" in
-	structure before using it.
-
-2007-06-12  David Bateman  <dbateman@free.fr>
-
-	* general/interp1.m: Change examples to use new graphics interface.
-	* general/__splinen__.m: New support function for N-dimensional
-	spline interpolation.
-	* general/bicubic.m: Allow definition of extrapolation
-	value. Adapt tests to use new graphics interface
-	* general/interp2.m: Call __splinen__ for 2-D spline
-	interpolation. Make the lookup table code only be called for
-	linear and nearest methods.
-	* general/interpn.m: New function for N-dimensional, linear, nearest
-	and spline interpolation.
-	* general/interp3.m: New function for 3-dimensional, linear, nearest
-	and spline interpolation.
-	* polynomial/spline.m: Change examples to use new graphics interface.
-
-2007-06-12  Steve M. Robbins  <steve@sumost.ca>
-
-	* statistics/tests/wilcoxon_test.m: Error if N <= 25.
-
-2007-06-12  S�ren Hauberg  <soren@hauberg.org>
-
-	* plot/fplot.m: If function is inline, vectorize it.
-
-2007-06-10  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (pkg:installed_packages): truncate start of package
-	directory if need to, so that it fits on a line.
-
-2007-06-07  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (pkg): For rebuild target, force package order in
-	saved file so that dependent packages are loaded first, and if
-	nargout==0 don't return any arguments.
-	(pkg:install): Only load packages that are marked autoload after
-	install. Various fixes. Save in order.
-	(pkg:uninstall): Save in order
-	(pkg:load_packages): Use load_package_and_dependencies to load
-	packages.
-	(pkg:save_order): New function to sort package list with dependent
-	packages first.
-	(pkg:load_packages_and_dependencies): New function to load both a
-	list of packages and their dependencies.
-	(pkg:load_package_dirs): New function that returns a vector of the
-	indexes into the installed package list indicating the packages to
-	load and the order to load them in to respect the dependencies.
-
-2007-06-03  S�ren Hauberg  <soren@hauberg.org>
-
-	* plot/axes.m: Eliminate redundant else clause.
-
-2007-06-03  David Bateman  <dbateman@free.fr>
-
-	* polynomial/spline.m: Add a small tolerance to spline tests.
-	* pkg/pkg.m: Protect against multiple actions being define.
-
-2007-06-01  David Bateman  <dbateman@free.fr>
-
-	* pkg.m (pkg:is_superuser): Remove function used in one place and
-	incorporate into main pkg function.
-	(pkg:install): Check for existence of files to install before
-	globbing and warn the user if they don't exist.
-
-2007-05-31  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/copyfile.m: Split copying of multiple files to a
-	directory over several copy command to limit the line length.
-	* miscellaneous/movefile.m: Ditto.
-
-	* pkg.m: Add build option to allow binary Octave packages to be
-	built from source packages. Probe absolute path of prefix, global
-	and local lists. Use strcat, rather that [] for strings.
-	(pkg:build): New function to binary binary package.
-	(pkg:absolute_pathname): Use fileattrib to probe absolute path.
-	(pkg:repackage): Package binary Octave package from installation.
-	(pkg:create_pkgadddel): Extract PKG_ADD and PKG_DEL directives
-	from m-files into main installation directory.
-	(pkg:shell): Suppress verbose messages from shell and only display
-	them with the verbose flag.
-	(pkg:installed_packages): Also include the loaded flag in the
-	local and global packages.
-	(pkg:uninstall): On uninstall, only rmpath the package if it is
-	flagged as loaded.
-
-2007-05-31  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* pkg.m (pkg:load_packages): Correctly load a mix of packages
-	with and without architecture dependent directories.
-	(pkg:installed_packages): Probe the global_list file even if it is
-	the same as the local_list.
-
-2007-05-29  John W. Eaton  <jwe@octave.org>
-
-	* sparse/spy.m: Set axis to "ij" mode.
-
-2007-05-24  John W. Eaton  <jwe@octave.org>
-
-	* set/ismember.m: Quote first arg of "fail" tests.
-
-2007-05-24  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (pkg:rebuild): Thinko in rebuild logic.
-
-2007-05-22  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Use rethrow(lasterror()) throughout rather than
-	error(lasterr()(8:end)).
-	(pkg:install): Warning for empty packages being removed. Suppress
-	spurious output. Warning rather than error for uninstalling a
-	package that is not installed to avoid RPM issue.
-	(pkg:configure_make): Fix for parsing of src/FILES. Don't create
-	inst or architecture dependent directory if it exists.
-
-2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* ChangeLog, control/system/is_stabilizable.m, general/bicubic.m,
-	image/ind2gray.m, image/saveimage.m, plot/box.m, plot/grid.m,
-	signal/freqz.m: Fix typos.
-
-2007-05-21  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Add rebuild target, and -local, -global option to
-	force installation location.
-	(rebuild): New subfunction to rebuild package database from
-	installed packages. Also allows changing of autoload status
-	(install): Warn use if attempting to install from non existent
-	file.
-	(issuperuser): Use 'geteuid() == 0' instead of 'strcmp (getenv(
-	"USER", "root"))' for root test.
-
-2007-05-21  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* miscellaneous/copyfile.m: check for cp.exe on Windows platforms
-	and replace "\" characters with "/".
-	* pkg/pkg.m: Use shell rather than system throughout. Replace "\"
-	characters with "/" throughout.
-	(shell): New subfunction that wraps system and is careful with the
-	shell on windows platforms.
-	(configure_make): Explictly pass complier etc to configure
-	process.
-	(issuperuser): Force default to global install for Windows machines.
-
-2007-05-19  Kristan Onu
-
-	* plot/Makefile.in (SOURCES): Remove hbar.m and add barh.m.
-
-2007-05-18  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (install): More verbosity.
-	(configure_make): Ditto.
-	(create_pkgadddel): Install in architecture dependent directory if
-	it exists to address issues with autoload/mfilename.
-	(write_INDEX): Check in archiecture dependent directories as well.
-
-2007-05-17  David Bateman  <dbateman@free.fr>
-
-	* plot/hbar.m: Remove.
-	* plot/barh.m: and move it here.
-
-2007-05-16  S�ren Hauberg  <soren@hauberg.org>
-
-	* general/sub2ind.m, general/ind2sub.m: Doc fix.
-
-2007-05-16  John W. Eaton  <jwe@octave.org>
-
-	* general/logspace.m: Return second arg if fewer than two values
-	are requested.
-
-2007-05-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_figure__.m: Ensure that a reset commands starts
-	on a new line.
-
-2007-05-14  Tarmigan Casebolt  <tarmigan+list@gmail.com>
-
-	* statistics/distributions/norminv.m,
-	statistics/distributions/norminv.m,
-	statistics/distributions/normpdf.m,
-	statistics/distributions/normrnd.m:
-	Use standard deviation, not variance.
-	* statistics/distributions/lognpdf.m: Adapt to change in norminv.
-	* statistics/distributions/logninv.m: Refer to norminv, not normal_inv.
-	* deprecated/normal_cdf.m, deprecated/normal_inv.m,
-	deprecated/normal_pdf.m, deprecated/normal_rnd.m: Preserve
-	backward compatibility.
-
-2007-05-14  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Mark loaded packages with "*".
-
-2007-05-13  S�ren Hauberg  <soren@hauberg.org>
-
-	* miscellaneous/single.m: Doc fix.
-	Convert to double instead of returning argument unchanged.
-
-	* miscellaneous/doc.m: Doc fix.
-
-	* miscellaneous/ver.m: Doc fix.
-	Don't display information about Octave Forge.
-
-2007-05-12  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Add a "-verbose" option that allows all output of an
-	install to be printed. An error in the on_uninstall script causes
-	a failure to uninstall. Place oct- and mex-files in an
-	architecture dependent directory.
-
-2007-05-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Break plot command over multiple lines.
-
-2007-05-09  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* statistics/distributions/normcdf.m: Use standard deviation
-	instead of variance for compatibility.
-
-2007-05-08  John W. Eaton  <jwe@octave.org>
-
-	* set/unique.m, set/ismember.m: Use numel(x) instead of prod(size(x)).
-
-	* set/ismember.m: Always return logical values.
-
-	* set/ismember.m: Return early if no matches are found.  New tests.
-	From David Grohmann <grohmann@arlut.utexas.edu>.
-
-	* general/__isequal__.m: Allow numeric values of different classes
-	to compare equal.
-
-2007-05-07  David Bateman  <dbateman@free.fr>
-
-	* sparse/spy.m: Reverse Y axis for new graphics code. Make more
-	compatiable, accepting LineSpec and markersize arguments.
-
-2007-05-02  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Convert NA to NaN before writing.
-
-2007-05-02  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* contour.m: Rewrite help string.
-
-2007-04-28  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/unzip.m, miscellaneous/untar.m,
-	miscellaneous/bunzip2.m, miscellaneous/gunzip.m:
-	Special case nargout == 0.
-
-2007-04-27  Kim Hansen  <kimhanse@gmail.com>
-
-	* general/sub2ind.m: Handle empty input, add tests.
-
-2007-04-27  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* plot/contourc.m: Doc fix.
-
-2007-04-26  David Bateman  <dbateman@free.fr>
-
-	* plot/hist.m: Partially remove previous patch.
-
-2007-04-26  David Bateman  <dbateman@free.fr>
-
-	* plot/hist.m: Support returning of handle
-	* plot/__bar__.m: __pltopt__ should only be called on strings or
-	cells.
-
-2007-04-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: For images, set titlespec{data_idx} to
-	"title \"\"", not "".
-
-	* plot/legend.m: Initialize WARNED to false.
-
-2007-04-24  John W. Eaton  <jwe@octave.org>
-
-	* io/beep.m: Fix cut and paste error.
-	From S�ren Hauberg  <soren@hauberg.org>.
-
-2007-04-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/box.m: Delete extra endfunction keyword.
-
-2007-04-23  David Bateman  <dbateman@free.fr>
-
-	* plot/plot3.m: Call newplot.
-
-2007-04-20  John W. Eaton  <jwe@octave.org>
-
-	* plot/Makefile.in (SOURCES): Fix typo in adding __bar__.m to the list.
-
-2007-04-19  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/unpack.m: Use gzip -d and bzip2 -d instead of
-	gunzip and bunzip.  From Michael Goffioul <michael.goffioul@swing.be>.
-
-2007-04-19  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/util/axis2dlim.m: Delete extraneous line.
-
-2007-04-18  John W. Eaton  <jwe@octave.org>
-
-	* specfun/factorial.m: Increase tolerance in large value test.
-
-2007-04-18  David Bateman  <dbateman@free.fr>
-
-	* __bar__.m: New support function for bar/hbar to support graphic
-	handles, and additional arguments.
-	* bar.m: Convert to use __bar__.
-	* hbar.m: New function
-	* hist.m: Explicitly set the width of the bar plot.
-
-2007-04-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/stem.m (stem_line_spec): Pass false as third arg to __pltopt__.
-
-	* set/ismember.m: New tests.
-	From David Grohmann <grohmann@arlut.utexas.edu>
-
-2007-04-17  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* specfun/factorial.m: Use gamma function instead of cumprod.
-	Add tests.
-
-2007-04-16  John W. Eaton  <jwe@octave.org>
-
-	* gethelp.cc (looks_like_octave_copyright): Use same logic as in
-	looks_like_copyright in src/help.cc.
-	From S�ren Hauberg <soren@hauberg.org>.
-
-	* plot/__go_draw_axes__.m: For log plots, omit zero values too.
-
-2007-04-13  John W. Eaton  <jwe@octave.org>
-
-	* optimization/sqp.m: Initialize info to 0.
-
-	* optimization/qp.m: Undo previous change.
-
-2007-04-13  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* spdiags.m: Fixed the four-argument case to work for columns of
-	length one.
-
-2007-04-12  John W. Eaton  <jwe@octave.org>
-
-	* optimization/qp.m: Avoid Octave indexing bug.
-
-2007-04-12  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* miscellaneous/menu.m, control/base/bddemo.m,
-	control/hinf/dgkfdemo.m, control/system/packedform.m,
-	control/system/sysrepdemo.m:
-	Adapt to page_screen_output as a function.
-
-2007-04-11  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/not.m: Delete.
-	* miscellaneous/Makefile.in (SOURCES): Delete it from the list.
-
-2007-04-11  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/util/axis2dlim.m: Try harder to handle min and max vals
-	that are close but not exactly equal.
-
-2007-04-11  David Bateman  <dbateman@free.fr>
-
-	* general/bitcmp.m: Make it work again.
-
-2007-04-10  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Try harder to handle min and max vals
-	that are close but not exactly equal.
-
-2007-04-09  Daniel J. Sebald  <daniel.sebald@ieee.org>
-
-	* plot/stem.m: Add back the baseline line and let it be not adjustable
-	in response to a change in x limits for now.
-
-2007-04-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m (__gnuplot_write_data__): New function.
-	(__go_draw_axes__): Use it to write data to plot stream.
-
-2007-04-09  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/stem.m: Fix typos in doc string.  Fix typo in call to
-	zeros.  Set markerfacecolor property in call to plot.
-
-2007-04-06  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/norm.m: Use new __vnorm__ function for vector args.
-
-2007-04-06  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/stem.m: Use plot instead of a series of calls to line.
-
-2007-04-05  John W. Eaton  <jwe@octave.org>
-
-	* sparse/nonzeros.m, sparse/normest.m, sparse/spconvert.m,
-	sparse/spdiags.m, sparse/speye.m, sparse/spfun.m, sparse/spones.m,
-	sparse/sprand.m, sparse/sprandn.m, sparse/sprandsym.m,
-	sparse/spstats.m, sparse/treeplot.m: Style fixes.
-
-	* pkg/pkg.m: Use "strcat (...)" instead of "[...]".
-	Use strcmpi instead of strcmp+tolower.
-	Style fixes.
-
-	* testfun/speed.m: Use "strcat (...)" instead of "[...]".
-	Plotting fixes.  Style fixes.
-
-	* testfun/test.m: Use "strcat (...)" instead of "[...]".
-	Style fixes.
-
-	* testfun/fail.m: No need to check for evalin and lastwarn.
-	Style fixes.
-
-	* testfun/demo.m, testfun/example.m: Style fixes.
-	Use "strcat (...)" instead of "[...]".
-	Use format specifiers in calls to warning.
-
-	* testfun/assert.m: Use "numel (x)" instead of "prod (size (x))".
-	Use "strcat (...)" instead of "[...]".
-	Use "x(end)" instead of "x(length (x))".
-	Check NA before NaN.
-	Style fixes.
-
-2007-03-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/stem.m (stem, set_default_values): Use RGB triple for color.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in, audio/Makefile.in, control/Makefile.in,
-	control/base/Makefile.in, control/hinf/Makefile.in,
-	control/obsolete/Makefile.in, control/system/Makefile.in,
-	control/util/Makefile.in, deprecated/Makefile.in,
-	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
-	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, optimization/Makefile.in,
-	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
-	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
-	special-matrix/Makefile.in, startup/Makefile.in,
-	statistics/Makefile.in, statistics/base/Makefile.in,
-	statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
-	Use ln instead of $(LN_S) in dist target.
-
-2007-03-27  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Allow linewidth settings to work with
-	gnuplot 4.0.
-
-2007-03-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Send image data to gnuplot via plot stream.
-
-2007-03-26  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__go_draw_axes__.m: Always end palette data to gnuplot via
-	plot stream and using binary data.
-
-2007-03-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
-	lot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
-	plot/__plt2vv__.m: Accept properties in addtition to options struct.
-
-2007-03-26  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Send "set ticslevel 0" to plot stream.
-
-	* plot/plot3.m: Handle line properties.
-	* plot/plot.m: Update docstring.
-	* plot/__plotopt__.m, plot/__pltopt1__.m: New arg, err_on_invalid.
-	* plot/__plt__.m: Also gather properties.
-
-2007-03-26  Kim Hansen  <kimhanse@gmail.com>
-
-	* testfun/assert.m: Delete special check for empty objects.
-	Add test.
-
-2007-03-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Exit early if call is recursive.
-
-	* plot/__go_draw_axes__.m (get_data_limits): New function.
-	Check for Inf too.
-	(__go_draw_axes__): Use get_data_limits.
-
-2007-03-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: If GNUTERM is set to wxt in the environment,
-	send terminal setting command with title option to plot stream.
-
-	* plot/legend.m: Correctly increment index into list of children..
-
-2007-03-23  John W. Eaton  <jwe@octave.org>
-
-	* general/interp2.m, general/bicubic.m, control/base/rldemo.m,
-	control/hinf/hinfdemo.m, control/hinf/dhinfdemo.m,
-	control/base/nyquist.m, control/base/nichols.m,
-	control/base/frdemo.m, signal/freqz_plot.m,
-	control/base/__stepimp__.m, control/base/bode.m,
-	quaternion/demoquat.m, quaternion/qcoordinate_plot.m,
-	statistics/base/qqplot.m, statistics/base/ppplot.m, sparse/spy.m:
-	Update plotting code.
-
-	* control/base/bode.m: Unwrap phase angle.
-
-	* miscellaneous/dump_prefs.m: Remove automatic_replot from the list.
-
-	* plot/axis.m: Don't check automatic_replot, or call replot.
-
-	* quaternion/demoquat.m: Delete comments with obsolete plotting
-	commands.
-
-	* plot/__pltopt1__.m: Handle "@" marker same as "+".
-	Handle numeric color specs.
-	* plot/plot.m: Remove "-@" and "@" from docstring.
-
-	* plot/orient.m: Fix tests to avoid creating a plot window.
-
-	* elfun/acosd.m, elfun/acotd.m, elfun/acscd.m, elfun/asecd.m,
-	elfun/asind.m, elfun/atand.m, elfun/cosd.m, elfun/cotd.m,
-	elfun/cscd.m, elfun/secd.m, elfun/sind.m, elfun/tand.m,
-	general/arrayfun.m, miscellaneous/compare_versions.m,
-	path/savepath.m, pkg/pkg.m, plot/__gnuplot_version__.m,
-	plot/contour.m, plot/contourc.m, plot/legend.m, plot/stem.m,
-	polynomial/pchip.m: Fix copyright notice, correct FSF address.
-
-	* plot/__go_draw_figure__.m: Send reset to gnuplot before every
-	plot, not just multiplots.
-
-	* plot/__go_draw_axes__.m: Use %g for label coordinates, not %d.
-
-	* plot/contour.m: Don't call drawnow.
-
-2007-03-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Check and optionally, set, the __modified__
-	property of each figure.
-
-	* plot/__go_draw_axes__.m: If no real data, plot a point at Inf,
-	Inf to show axes.  From Daniel J Sebald <daniel.sebald@ieee.org>.
-
-2007-03-21  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/null.m: Set elements of retval with magnitudes
-	less than eps to 0.
-
-2007-03-21  David Bateman  <dbateman@free.fr>
-
-	* plot/__go_draw_axes__.m: Handle some colors with older gnuplot.
-	* testfun/speed.m: Documentation and example fix.
-
-2007-03-21  John W. Eaton  <jwe@octave.org>
-
-	* plot/subplot.m: If we find an existing subplot region, set
-	it to be the "currentaxes" property for the current figure.
-	Delete old axes objects if the new axes object overlaps the old.
-
-2007-03-20  David Bateman  <dbateman@free.fr>
-
-	* general/Makefile.in: Include arrayfun.m in SOURCES.
-
-2007-03-20  Bill Denney  <denney@seas.upenn.edu>
-
-	* general/arrayfun.m: New function.
-
-2007-03-20  John W. Eaton  <jwe@octave.org>
-
-	* plot/newplot.m: Call __request_drawnow__ after initializing axes.
-	* plot/text.m: Call __request_drawnow__ after creating text objects.
-
-	* plot/clf.m: Don't call drawnow.
-
-2007-03-20  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* image/__img__.m: Maybe set yaxis to reverse for images.
-	* plot/__go_draw_axes__.m: Don't add flipy to gnuplot command for
-	images.
-
-	* plot/drawnow.m: Make __go_close_all_registered__ persistent
-	instead of global.  Only register __go_close_all__ with atexit if
-	the plot stream is successfully opened.
-
-2007-03-15  John W. Eaton  <jwe@octave.org>
-
-	* plot/__go_draw_axes__.m: Make have_newer_gnuplot persistent.
-	From Daniel J Sebald <daniel.sebald@ieee.org>.
-
-2007-03-15  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__go_draw_axes__.m (do_linestyle_command): Fix marker types.
-	Use numeric line types.
-
-	* control/base/rlocus.m: Add asymptotes to the plot.  Use wider
-	lines and larger markers.  Remove key titles from line type
-	properties.
-
-2007-03-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/__axis_label__.m: Accept additional property-value pairs
-	and pass them to __go_text__.  Simply return the handle obtained
-	from __go_text__ instead of calling get on the current axis.
-	* plot/xlabel.m, plot/zlabel.m, plot/zlabel.m: Check args here.
-	Allow for extra property value pairs to be passed along.
-	* plot/title.m: Implement with __axis_label__ since it does all
-	that title needs to do.
-
-	* plot/clf.m: Set currentaxes property for current figure to [].
-
-	* plot/__axis_label__.m: Convert arg to text handle before calling set.
-
-	* plot/__plt__.m: Return line handles from all calls to __plt1__
-	and __plt2__, not just the last.
-
-	* plot/Makefile.in (SOURCES): Rename from SOURCES_M.
-	(SOURCES_IN, GEN_M): Delete.
-	(FCN_FILES): Don't include $(GEN_M).
-	(all): Don't depend on $(GEN_M).
-	($(GEN_M) : %.m : %.in): Delete pattern rule.
-
-	* plot/text.m: Use __go_text__ instead of __uiboject_text_ctor__.
-
-	* plot/newplot.m: Call __go_axes_init__ instead of
-	__uiobject_axes_init__.
-
-	* plot/mesh.m: Use __go_surface__ instead of
-	__uiobject_surface_ctor__.  Don't access object fields directly.
-
-	* plot/line.m: Use __line__ to do actual work.
-	* plot/__line__.m: New function.
-
-	* plot/axes.m: Use __go_axes__ to create axes graphics handle.
-	Use get and set instead of accessing object fields directly.
-
-	* plot/figure.m: Use __go_figure__ to create figure graphics
-	handle.
-
-	* plot/drawnow.m: Register __go_close_all__ with atexit instead of
-	__uiobject_close_all.  Call __go_draw_figure__ instead of
-	__uiobject_draw_figure__.
-
-	* plot/clf.m: Use get instead of accessing object fields
-	directly.  Simply delete children.  Don't set currentaxes.
-
-	* plot/close.m (close_all_figures): New subfunction.
-	Use it instead of getting list of figures to close from
-	__uiobject_figures__.
-
-	* plot/closereq.m: Simply delete the current figure.  Don't set
-	currentfigure.
-
-	* plot/__errplot__.m: Call __line__ instead of
-	__uiobject_line_ctor__.  Use set instead of accesing object fields
-	directly.  Don't call __uiobject_adopt__.
-
-	* plot/__uiobject_adopt__.m, plot/__uiobject_alloc__.in,
-	plot/__uiobject_axes_ctor__.m, plot/__uiobject_axes_dtor__.m,
-	plot/__uiobject_axes_init__.in, plot/__uiobject_axes_setr__.m,
-	plot/__uiobject_delete__.m, plot/__uiobject_figure_ctor__.m,
-	plot/__uiobject_figures__.in, plot/__uiobject_free__.in,
-	plot/__uiobject_get_handle__.in, plot/__uiobject_globals__.m,
-	plot/__uiobject_grow_list__.in, plot/__uiobject_handle2idx__.in,
-	plot/__uiobject_image_ctor__.m, plot/__uiobject_init_figure__.in,
-	plot/__uiobject_init_root_figure__.in,
-	plot/__uiobject_line_ctor__.m, plot/__uiobject_make_handle__.in,
-	plot/__uiobject_root_figure_ctor__.m,
-	plot/__uiobject_surface_ctor__.m, plot/__uiobject_text_ctor__.m:
-	plot/get.in, plot/include-globals.awk, plot/ishandle.m,
-	plot/set.in: Delete.
-	* plot/Makefile.in (SOURCES_M, SOURCES_IN): Remove from lists.
-
-	* plot/__go_close_all__.m: Rename from __uiobject_close_all.m.
-	Pass "hidden" as second arg to close.
-	* plot/__go_draw_axes__.m: Rename from __uiobject_draw_axes.m.
-	* plot/__go_draw_figure__.m: Rename from __uiobject_draw_figure.m.
-	* plot/Makefile.in (SOURCES_M): Rename in list.
-
-	* image/__img__.m: Use __go_image__ to create image graphics
-	handle.
-
-	* miscellaneous/delete.m: Call __go_delete__, not
-	__uiobject_delete__.  Check that arg is a graphics handle before
-	calling __go_delete__.
-
-2007-03-13  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/cast.m: Use feval and strcmp with cell to check
-	arg instead of switch statement.
-	From S�ren Hauberg <soren@hauberg.org>.
-
-2007-03-12  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/cast.m: New function.
-
-	* miscellaneous/delete.m: Call __go_delete__, not __uiobject_delete__.
-
-2007-03-08  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m: Perform
-	tilde expansion on target filename before passing it to the shell.
-
-	* statistics/base/Makefile.in (SOURCES): Remove unidrnd.m from list.
-	* statistics/distributions/Makefile.in (SOURCES): Add it here.
-
-2007-03-08  David Bateman  <dbateman@free.fr>
-
-	* statistics/base/unidrnd.m: Move to statistics/distributions
-	replacing slower version based on dicrete_rnd.
-
-2007-03-07  John W. Eaton  <jwe@octave.org>
-
-	* control/base/rlocus.m: Update for current plotting functions.
-
-2007-03-07  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/base/rlocus.m: Improve display.
-
-2007-03-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/legend.m: Only handle positions -1:4.
-	* plot/__pltopt1__.m: Don't set linestyle if only marker style is
-	found in option string
-	* plot/__uiobject_draw_axes__.m: Handle key position.
-
-	* plot/newplot.m: Always reset next line color.
-
-	* testfun/assert.m: Check that number of dimensions match before
-	checking dimensions.
-
-2007-03-07  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* specfun/perms.m, specfun/factorial.m: Check args.
-
-2007-03-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/mesh.m: Call newplot before doing anything.
-
-	* plot/__uiobject_draw_axes__.m: Send "e\n" at end of data, not
-	just "e".  Only flush plot stream once.
-	From Daniel J Sebald <daniel.sebald@ieee.org>.
-
-	* strings/blanks.m: Omit first index in assignment.
-
-2007-03-07  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* set/setdiff.m: Some code cleanup and a fix for setdiff on rows.
-
-2007-03-06  David Bateman  <dbateman@free.fr>
-	    John W. Eaton  <jwe@octave.org>
-
-	* set/setdiff.m: Ignore "rows" for cell array args.
-	Handle cellstr args.
-
-2007-03-05  John W. Eaton  <jwe@octave.org>
-
-	* optimization/sqp.m: Defer first call to obj_hess until after
-	calling obj_fun.
-
-2007-03-02  Bob Weigel  <rweigel@gmu.edu>
-
-	* specfun/nchoosek.m: Fix nargin check.
-
-2007-03-01  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* image/__img__.m: Don't set xlim and ylim properties.
-
-2007-03-01  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* general/interp1.m: Fix *style cases for decreasing x.
-
-2007-03-01  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* polynomial/roots.m: Check nargin before accessing arg.
-
-2007-02-28  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: If looking at image data, Don't
-	increment data_idx unless using gnuplot for display.
-
-2007-02-28  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__uiobject_draw_axes__.m: Improve calculation of limits for
-	plots with images.
-	* image/image.m, image/imagesc.m, image/imshow.m:
-	Deprecate zoom argument.
-
-2007-02-28  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Use fullfile to generate
-	temporary file names.  Keep image and colormap file ids separate.
-
-	* general/interp1.m: Correctly compute min and max values when
-	values are decreasing and not evenly spaced.
-	From Ricardo Marranita <ricardo.marranita@gmail.com>.
-
-2007-02-27  John W. Eaton  <jwe@octave.org>
-
-	* testfun/test.m (test): Handle possibility of file_in_loadpath
-	returning an empty cell array.
-
-2007-02-27  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* pkg/pkg.m: Use fullfile to create filenames from parts.
-
-2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in, audio/Makefile.in, control/Makefile.in,
-	control/base/Makefile.in, control/hinf/Makefile.in,
-	control/obsolete/Makefile.in, control/system/Makefile.in,
-	control/util/Makefile.in, deprecated/Makefile.in,
-	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
-	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, optimization/Makefile.in,
-	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
-	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
-	special-matrix/Makefile.in, startup/Makefile.in,
-	statistics/Makefile.in, statistics/base/Makefile.in,
-	statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
-	Use $(LN_S) instead of ln or ln -s.
-
-2007-02-24  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (configure_make): Ignore blank lines and trailing
-	'\n' in FILES file.
-	(configure_make): Also install any mex files.
-
-2007-02-24  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions (SOURCES): Add nbincdf.m,
-	nbininv.m, nbinpdf.m and nbinrnd.m.
-
-2007-02-23  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/Makefile.in (SOURCES): Remove
-	pascal_cdf.m pascal_inv.m pascal_pdf.m pascal_rnd.m from the list.
-
-	* deprecated/Makefile.in (SOURCES): Add pascal_cdf.m,
-	pascal_inv.m, pascal_pdf.m, and pascal_rnd.m to the list.
-
-2007-02-23  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/discrete_rnd.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/lognnd.m,
-	statistics/distributions/nbinrnd.m,
-	statistics/distributions/wblrnd.m:  Accelerate distributions.
-
-	* statistics/distributions/unidcdf.m,
-	statistics/distributions/unidinv.m,
-	statistics/distributions/unidpdf.m,
-	statistics/distributions/unidrnd.m: New functions based on
-	discrete_cdf, etc.
-
-	* statistics/distributions/pascal_cdf.m,
-	statistics/distributions/pascal_inv.m,
-	statistics/distributions/pascal_pdf.m,
-	statistics/distributions/pascal_rnd.m: Remove.
-	* statistics/distributions/nbincdf.m,
-	statistics/distributions/nbininv.m,
-	statistics/distributions/nbinpdf.m,
-	statistics/distributions/nbinrnd.m: Replace with matlab
-	compatible functions.
-	* deprecated/pascal_cdf.m, deprecated/pascal_inv.m,
-	deprecated/pascal_pdf.m, deprecated/pascal_rnd.m: Use the new
-	nbincdf, etc functions to implement these.
-
-2007-02-22  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__uiobject_draw_axes__.m: Insert newline between plot
-	command and data.
-
-2007-02-22  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/doc.m: If index search fails, try again without
-	the index search option.
-
-2007-02-22  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/doc.m: Find doc.info file correctly in user directories.
-
-	* statistics/distributions/frnd.m, statistics/distributions/exprnd.m,
-	statistics/distributions/gamrnd.m, statistics/distributions/trnd.m,
-	statistics/distributions/poissrnd.m, statistics/distributions/chi2rnd.m,
-	statistics/distributions/betarnd.m: Convert to use randg, rande
-	and randp to accelerate.
-
-	* pkg/pkg.m (fix_depends): Support > and < operators as well.
-
-2007-02-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: If not using gnuplot for images,
-	cache data and display after xlim and ylim have been determined.
-
-2007-02-22  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__uiobject_draw_axes__.m:
-	Allow multiple images to be displayed with gnuplot.
-
-2007-02-20  Rafael Laboissiere  <rafael@debian.org>
-
-	* optimization/glpk.m: Document the fact that extra.mem does not work
-	for versions of GLPK 4.15 and later.
-
-2007-02-19  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_alloc__.in: If next available element in
-	__uiobject_list__ is 0, grow list before doing anything else.
-	* plot/__uiobject_grow_list__.in: Only set __uiobject_head__ on
-	first call when size of __uiobject_list__ is 0.
-
-2007-02-16  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/Makefile.in (SOURCES): Remove popen2.m from the list.
-
-2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* miscellaneous/popen2.m: Remove as replaced with builtin.
-
-2007-02-16  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* specfun/nchoosek.m: Check nargin.
-
-2007-02-15  John W. Eaton  <jwe@octave.org>
-
-	* path/addpath.m, path/rmpath.m: Delete
-	* path/Makefile.in (SOURCES): Remove them from the list.
-
-	* plot/__uiobject_axes_init__.in, plot/__uiobject_axes_setr__.m:
-	Delete title, xlabel, ylabel, and zlabel properties before
-	reassigning.
-	* plot/__uiobject_axes_init__.in: New arg, mode.
-	Don't init outerposition if "mode" is "replace".
-	* plot/newplot.m: Check both figure and axes nextplot properties.
-	If axes nextplot property is replace, pass "replace" as mode arg
-	to __uiobject_axes_init__.
-
-2007-02-15  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* image/imshow.m: Don't restore old colormap.
-
-	* plot/__uiobject_image_ctor__.m: Set xdata and ydata properties.
-	* image/__img__.m: New file containing common parts of image.m and
-	imshow.m.
-	* image/Makefile.in (SOURCES): Add __img__.m to the list.
-	* image/image.m, image/imshow.m: Call __img__.
-	* plot/__uiobject_draw_axes__.m:
-	Handle rgb imaged data stored in 3-d arrays.
-
-	* plot/figure.m: Doc fix.
-
-2007-02-14  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* audio/wavread.m, audio/wavwrite.m: Use types with specific sizes
-	for reading and writing data.  New tests.  Improve rounding.
-
-2007-02-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/stem.m: New file, adapted from OctPlot.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-	* plot/__errcomm__.m, plot/__plr1__.m, plot/__plr2__.m,
-	plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
-	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
-	plot/__plt2vv__.m, plot/__plt__.m, plot/loglog.m,
-	plot/loglogerr.m, plot/plot.m, plot/plot3.m, plot/polar.m,
-	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
-	plot/semilogyerr.m: Return handles to line objects.
-
-2007-02-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_close_all.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-2007-02-10  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Arrange for plot streams to be close on exit.
-	* plot/__uiobject_globals__.m: Don't call mlock.
-
-	* plot/drawnow.m: Only check for DISPLAY if isunix returns true.
-	* plot/__uiobject_delete__.m: Send quit command and flush stream
-	before calling pclose.
-
-2007-02-09  John W. Eaton  <jwe@octave.org>
-
-	* plot/subplot.m: Delete spurious call to axes.
-
-	* plot/figure.m: Call drawnow for current figure before creating
-	or switching to a new figure.
-	* plot/__uiobject_init_figure__.in: Handle empty arg the same as
-	nargin == 0 case.
-
-	* testfun/assert.m: Try to avoid problems when comparisons involve
-	strange values like Inf+NaNi.
-
-2007-02-08  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow.m: Use gnuplot_binary() instead of just "gnuplot"
-	and check gnuplot_use_title_option instead of just assuming -title
-	works.  From Michael Goffioul <michael.goffioul@swing.be>.
-
-	* Makefile.in (DISTFILES): Add move-if-change to the list.
-
-	* audio/Makefile.in, control/base/Makefile.in,
-	control/hinf/Makefile.in, control/obsolete/Makefile.in,
-	control/system/Makefile.in, control/util/Makefile.in,
-	deprecated/Makefile.in, elfun/Makefile.in, finance/Makefile.in,
-	general/Makefile.in, image/Makefile.in, io/Makefile.in,
-	linear-algebra/Makefile.in, miscellaneous/Makefile.in,
-	optimization/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
-	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
-	special-matrix/Makefile.in, startup/Makefile.in,
-	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in,
-	path/Makefile.in, pkg/Makefile.in: Explicitly list source files.
-
-	* plot/figure.m: Don't call drawnow.  Correctly init figure when
-	only given property list.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Handle xdir, ydir, and zdir axis
-	properties.
-
-	* plot/sombrero.m: Call box ("off") after mesh.
-
-	* plot/__uiobject_draw_axes__.m: Avoid rgb colors and "set style
-	line default" commands with older versions of gnuplot.
-
-	* plot/close.m: Use get (0, "currentifgure") instead of gcf.
-
-2007-02-06  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Set pt to 0 if marker is ".".
-	* sparse/gplot.m: Use line style - instead of 1.
-
-2007-02-05  Rafael Laboissiere  <rafael@debian.org>
-
-	* plot/print.m: Avoid error message from cellidx.
-
-2007-02-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/legend.m: Fix check for data.
-
-2007-02-05  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* plot/__uiobject_draw_axes__.m (do_linestyle_command):
-	Always set lt and pt.
-
-2007-02-05  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* plot/contourc.m: Correctly compute X and Y.
-
-2007-02-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Use title "" if no explicit title.
-	When setting {x,y,z}lim, also set {x,y,z}limmode to "auto.
-
-2007-02-01  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m:
-	Don't try to set axis limits unless we have data.
-
-	*  plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
-	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
-	plot/__plt2vv__.m, plot/__plt__.m, plot/__pltopt1__.m,
-	plot/__pltopt__.m, plot/plot3.m: Set and use options struct
-	instead of of key and fmt strings.
-
-	* plot/__pltopt1__.m: Greatly simplify.
-
-	* plot/__next_line_color__.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-	* plot/newplot.m: Call __next_line_color__ here to reset rotation.
-
-	* plot/__default_plot_options__.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-	* plot/__plt3__.m: Delete.
-	* plot/Makefile.in (SOURCES_M): Remove it from the list.
-
-2007-01-31  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Set defaults for color,
-	linestyle, linewidth, marker, and markersize properties.
-	* plot/__uiobject_draw_axes__.m: Attempt to handle line and marker
-	colors and widths, and line styles.
-
-	* plot/__plt__.m, image/image.m: Don't call drawnow.
-
-	* plot/__gnuplot_version__.m: Restore from CVS Attic.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-	* plot/__uiobject_draw_axes__.m: Delete useless call to
-	__gnuplot_save_data__.
-
-	* image/image.m: Accept 2 args, but ignore the second for now.
-
-2007-01-30  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (pkg, isautoload, install, load_packages): Add ability
-	to flag a package as to be autoloaded. Add install flags -noauto,
-	-auto to force autoload behavior.
-	(installed_packages): Make list of installed packages unique.
-
-2007-01-30  John W. Eaton  <jwe@octave.org>
-
-	* Merge of changes from graphics-branch:
-
-	2007-01-29  John W. Eaton  <jwe@octave.org>
-
-	* plot/subplot.m: Set nextplot property of current figure to "add".
-
-	* plot/__uiobject_draw_axes__.m: Only handle outerposition
-	property if it exists.
-
-	2007-01-26  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Move initialization of max and
-	min values outside of loop over child objects.
-
-	* plot/contour.m, plot/contourc.m: New files.
-	* plot/Makefile.in (SOURCES_M): Add them to the list.
-
-	* image/image_viewer.m: Set view_fcn to "gnuplot_internal" if we
-	find a gnuplot version newer than 4.0.
-	* image/__img_gnuplot__.m: Delete.
-	* image/image.m: Create image graphics object.
-	Call newplot to setup and drawnow to finish.
-	Eliminate ZOOM arg.
-
-	* plot/__uiobject_draw_axes__.m: Handle image data.
-
-	* plot/legend.m: Eliminate useless variable "warned".
-
-	* plot/__uiobject_image_ctor__.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-	* plot/gcf.m: Also create new figure if currentfigure is 0.
-	* plot/drawnow.m: Use get (0, "currentfigure") instead of gcf.
-
-	* plot/__uiobject_root_figure_ctor__.m: Set visible property.
-
-	* plot/__default_colormap__.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-	* plot/__uiobject_figure_ctor__.m: Use it to set default colormap
-	property.
-	* image/colormap.m: Use colormap property of current figure
-	to store colormap instead of using persistent variable.
-	Call __default_colormap__ to get default map value.
-	* image/ocean.m, image/gray.m: Set colormap for current figure.
-
-	* plot/__uiobject_draw_axes__.m: Handle aspect ratio property.
-	Handle some tick mark options.
-
-	* plot/__uiobject_axes_setr__.m: If we see xtick, ytick, or ztick,
-	set corresponding *mode to "manual".  If we set dataaspectratio,
-	set dataaspectratiomode to "manual".
-
-	* plot/__uiobject_axes_init__.m: Include *tick, *tickmode,
-	*ticklabelmode, dataaspectratio, dataaspectratiomode properties.
-
-	* plot/axis.m: New file.
-	* plot/Makefile.in (SOURCES_M): Include it in the list.
-
-	* plot/__uiobject_axes_setr__.m: If we see xlim, ylim, or zlim,
-	set corresponding *limmode to "manual".
-	* plot/__uiobject_draw_axes__.m	(get_axis_limits): New subfunction.
-	Use it to compute autosclaled limits.
-	Arg is now handle, not object.  Change all callers.
-	Compute data limits.
-
-	2007-01-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/drawnow: Fix visibility check for zero args.
-
-	* plot/text.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-	* plot/__uiobject_draw_axes__.m: Handle text objects.
-	* plot/__uiobject_text_ctor__.m: Include units, position, and
-	horizontalalignment properties.
-
-	* plot/figure.m: Set options for f we just constructed or were
-	given as an argument, not gcf.  Only return handle if nargout > 0.
-
-	* plot/drawnow.m: Handle visible field for figure here.
-	* plot/__uiobject_figure_ctor__.m: Set default visible field.
-
-	* plot/__uiobject_draw_axes__.m: Call undo_string_escapes on
-	title and axis labels.
-
-	* plot/plot3.m, plot/mesh.m: Set default 3-d view here.
-	* plot/__uiobject_draw_axes__.m: Handle view for 3-d plots.
-	* plot/__uiobject_axes_init__.in: Set default view field for object.
-	* plot/view.m: New file.
-	* plot/Makefile.in (SOURCES_M): Add it to the list.
-
-	* plot/__uiobject_make_handle__.in, plot/set.m, plot/drawnow.m:
-	Call __request_drawnow__.
-
-	* plot/newplot.m: For "replace" action, call __uiobject_axes_init__.
-
-	* plot/__uiobject_axes_ctor__.m, plot/__uiobject_text_ctor__.m:
-	Call set to set properties.  Return handle instead of structure.
-	Change all callers.
-
-	* plot/__uiobject_axes_setr__.m: New file.
-	* plot/set.in: Check for __setter__ field.
-
-	* plot/__uiobject_axes_init__.in:
-	Rename from plot/__uiobject_axes_init__.m.
-	Include __uiobject_globals__.
-	Accept handle as arg instead of structure
-	* plot/Makefile.in (SOURCES_M): Remove __uiobject_axes_init__.m
-	from the list.
-	(SOURCES_IN): Add __uiobject_axes_init__.in to the list.
-
-	2007-01-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/Makefile.in ($(GEN_M)): Depend on __uiobject_globals__.m.
-
-	* plot/__uiobject_globals__.m: Call __lock_global__ when
-	initializing each global variable.
-
-	2007-01-18  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_globals__.m (__uiobject_handles_free_list__,
-	__uiobject_figure_handles_free_list__): New global variables.
-	* plot/__uiobject_get_handle__.m, plot/__uiobject_free__.m:
-	Place unused handles on the free list.
-
-	* plot/__uiobject_get_figure_handle__.in: Delete.
-	* plot/Makefile.in: Delete it from the SOURCES_IN list.
-
-	* plot/__uiobject_init_figure__.in: Perform allocation of figure
-	handles here.  Return figure handle.
-	* plot/figure.m: Call __uiobject_init_figure__ to allocate handle.
-
-	2007-01-11  John W. Eaton  <jwe@octave.org>
-
-	* plot/__uiobject_draw_axes__.m: Use "%g", not "%.4g" when writing
-	data for gnuplot.
-
-	* plot/Makefile.in (SOURCES_M, SOURCES_IN, GEN_M): New lists of
-	files.
-	(SOURCES): Include $(SOURCES_M) and $(SOURCES_M) in the list.
-	(DISTFILES): Include include-globals.awk in the list.
-	(FCN_FILES): Define using $(SOURCES_M) and $(GEN_M).
-	($(GEN_M) : %.m : %.in): New rule.
-
-	* include-globals.awk: New file.
-
-	* plot/__uiobject_alloc__.in, plot/__uiobject_figures__.in,
-	plot/__uiobject_free__.in, plot/__uiobject_get_figure_handle__.in,
-	plot/__uiobject_get_handle__.in, plot/__uiobject_grow_list__.in,
-	plot/__uiobject_handle2idx__.in, plot/__uiobject_init_figure__.in,
-	plot/__uiobject_init_root_figure__.in,
-	plot/__uiobject_make_handle__.in,  plot/get.in, plot/set.in:
-	Rename from corresponding .m files.
-
-	* move-if-change: New file.
-
-	* plot/__uiobject_delete__.m: New file.
-	* plot/delete.m, plot/__uiobject_delete_children__.m,
-	plot/__uiobject_delete_child__.m: Delete.
-	* miscellaneous/delete.m: Forward to __uiobject_delete__ if arg is
-	not a character string.
-	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2vm__.m:
-	Fix assignment to tmp key value in loop.
-	* plot/__uiobject_axes_dtor__.m: No need to Call __uiobject_free__
-	for obj.title, obj.xlabel, obj.ylabel, obj.zlabel.
-	* plot/__uiobject_axes_dtor__.m, plot/__uiobject_axis_init__.m:
-	Inline code to delete children.
-	* plot/__uiobject_free__.m: Arg is now handle, not index into
-	__uiobject_list__.
-	* plot/clf.m, plot/closereq.m, plot/newplot.m: No need to remove
-	and free child.
-
-	2006-12-08  John W. Eaton  <jwe@octave.org>
-
-	* plot/gcf.m: Check if the root figure object's currentfigure
-	handle is empty, not 0.
-	* plot/__uiobject_root_figure_ctor__.m:
-	Set currentfigure to [], not 0.
-
-	* plot/stairs.m: Handle matrix arguments.  Improve compatibility.
-
-	2006-12-07  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt_get_axis_arg__.m, plot/__uiobject_adopt__.m,
-	plot/__uiobject_alloc__.m, plot/__uiobject_axes_ctor__.m,
-	plot/__uiobject_axes_dtor__.m, plot/__uiobject_axes_init__.m,
-	plot/__uiobject_delete_children__.m,
-	plot/__uiobject_draw_axes__.m, plot/__uiobject_draw_figure__.m,
-	plot/__uiobject_figure_ctor__.m, plot/__uiobject_figures__.m,
-	plot/__uiobject_free__.m, plot/__uiobject_get_figure_handle__.m,
-	plot/__uiobject_get_handle__.m, plot/__uiobject_globals__.m,
-	plot/__uiobject_grow_list__.m, plot/__uiobject_handle2idx__.m,
-	plot/__uiobject_init_figure__.m,
-	plot/__uiobject_init_root_figure__.m,
-	plot/__uiobject_line_ctor__.m, plot/__uiobject_make_handle__.m,
-	plot/__uiobject_remove_child__.m,
-	plot/__uiobject_root_figure_ctor__.m,
-	plot/__uiobject_surface_ctor__.m, plot/__uiobject_text_ctor__.m,
-	plot/axes.m, plot/box.m, plot/closereq.m, plot/delete.m,
-	plot/drawnow.m, plot/gca.m, plot/gcf.m, plot/get.m,
-	plot/isfigure.m, plot/ishandle.m, plot/line.m, plot/newplot.m,
-	plot/set.m: New files.
-
-	* plot/__plt3__.m, plot/errorbar.m, plot/__axis_label__.m,
-	plot/__plr1__.m, plot/__errcomm__.m, plot/print.m, plot/zlabel.m,
-	plot/__plt1__.m, plot/__plt2__.m, plot/sombrero.m, plot/shg.m,
-	plot/fplot.m, plot/ndgrid.m, plot/clf.m, plot/hold.m,
-	plot/ishold.m, plot/meshdom.m, plot/ylabel.m, plot/__plt2ss__.m,
-	plot/__plt2vv__.m, plot/__plr2__.m, plot/__plt2mm__.m,
-	plot/__pltopt1__.m, plot/meshgrid.m, plot/__plt2mv__.m,
-	plot/figure.m, plot/xlabel.m, plot/stairs.m, plot/__plt2vm__.m,
-	plot/bar.m, plot/__errplot__.m, plot/semilogx.m, plot/semilogy.m,
-	plot/loglog.m, plot/polar.m, plot/legend.m, plot/orient.m,
-	plot/title.m, plot/__pltopt__.m, plot/grid.m, plot/hist.m,
-	plot/subplot.m, plot/plot.m, plot/mesh.m, plot/__plt__.m,
-	plot/close.m, plot/loglogerr.m, plot/plot3.m, plot/semilogxerr.m,
-	plot/semilogyerr.m, plot/replot.m:
-	Adapt to new graphics data structure.
-
-	* plot/__do_legend__.m, plot/__gnuplot_version__.m,
-	plot/__init_plot_vars__.m, plot/__make_using_clause__.m,
-	plot/__plot_globals__.m, plot/__plr__.m, plot/__render_plot1__.m,
-	plot/__render_plot__.m, plot/__setup_plot__.m, plot/axis.m,
-	plot/contour.m, plot/mplot.m, plot/multiplot.m, plot/oneplot.m,
-	plot/plot_border.m, plot/subwindow.m: Delete.
-
-2007-01-24  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Install ChangeLog file if it exists.
-	Delete bare newline in string passed to write_INDEX.
-
-	* sparse/sprandsym.m: Make work for even values of N.
-
-2007-01-24  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/news.m: New file.
-
-2007-01-23  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* strings/strncmpi.m: Use strncmp instead of calling strtrunc on args.
-
-	* strings/strncmp.m: Delete (we now have a built-in version).
-
-2007-01-22  Bob Weigel  <rweigel@gmu.edu>
-
-	* testfun/test.m: Check for all files in path, use first found.
-
-2007-01-22  David Bateman  <dbateman@free.fr>
-
-	* polynomial/spline.m: Make DG a column instead of a row vector.
-
-2007-01-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* pkg/pkg.m (copy_files): Call write_INDEX with correct target
-	file name.
-
-	* image/ind2rgb.m: Better input checking.  Return 3-d array if
-	nargout is 1.  Handle colormaps that have too few colors.
-
-	* pkg/pkg.m (create_pkgadddel): Call fullfile with nm, not "nm".
-	(configure_make): Use fullfile instead of concatenating with "/".
-
-2007-01-10  Baylis Shanks  <bshanks3@hotmail.com>
-
-	* set/ismember.m: Handle N-d arrays.
-
-2007-01-10  David Bateman  <dbateman@free.fr>
-
-	* elfun/acosd.m, elfun/acotd.m, elfun/acscd.m, elfun/asecd.m,
-	elfun/asind.m, elfun/atand.m, elfun/cosd.m, elfun/cotd.m,
-	elfun/cscd.m, elfun/secd.m, elfun/sind.m, elfun/tand.m:
-	New files.
-
-2007-01-09  S�ren Hauberg  <hauberg@gmail.com>
-
-	* pkg/pkg.m: Allow filenames to contain glob patterns.
-
-2007-01-08  S�ren Hauberg  <hauberg@gmail.com>
-
-	* pkg/pkg.m: Use copyfile instead of calling system.  Use fullfile
-	instead of concatenating with "/".  Use mlock to ensure that
-	persistent variables are not clobbered if user types clear all.
-
-2007-01-08  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
-	Improve handling of file names containing globbing characters.
-	From S�ren Hauberg <hauberg@gmail.com>.
-
-2007-01-05  John W. Eaton  <jwe@octave.org>
-
-	* optimization/optimset.m, optimization/__fsolve_defopts__.m:
-	New files.
-
-2006-12-30  John W. Eaton  <jwe@octave.org>
-
-	* sparse/spfun.m: Check for "function_handle" not "function handle".
-	* plot/fplot.m: Likewise.  Use isa instead of strcmp + class.
-
-2006-12-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* image/imshow.m: Strip NaNs from image.
-
-2006-12-08  David Bateman  <dbateman@free.fr>
-
-	* sparse/normest.m: New file.
-
-2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
-	Work on Windows systems without cp or mv.
-
-	* startup/inputrc: Include sequences for Windows.
-
-2006-12-06  S�ren Hauberg  <hauberg@gmail.com>
-
-	* pkg/pkg.m (unload_packages): New function.
-	(pkg): Handle unload action.
-
-	* __errplot__.m: Add missing semicolon.
-
-2006-11-30  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/mexext.m: New file.
-
-2006-11-29  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m: Add local_list and global_list options that allow the
-	location of package lists to be probed and set.
-
-2006-11-17  John W. Eaton  <jwe@octave.org>
-
-	* plot/__render_plot1__.m: Reverse y axis for images.
-
-	* plot/__render_plot__.m: New args, terminal and output.
-	* plot/print.m: Don't set output and term here.  Instead, call
-	__render_plot__ with terminal and output.
-
-2006-11-16  John W. Eaton  <jwe@octave.org>
-
-	* plot/__render_plot1__.m: New file.
-	* plot/__render_plot__.m: Use it.  Loop over multiplots.
-	* plot/print.m, plot/subplot.m: Don't send "set multiplot" to
-	gnuplot.  Let __render_plot__ do that.
-
-2006-11-16  Francesco Potorti`  <Potorti@isti.cnr.it>
-
-	* plot/plot.m: Fix doc string.
-
-2006-11-16  John W. Eaton  <jwe@octave.org>
-
-	* plot/__render_plot__.m: Check for mix of 2-d and 3-d plots
-	before sending anything to the plotter.
-
-2006-11-15  John W. Eaton  <jwe@octave.org>
-
-	* image/__img_gnuplot__.m: Store more info in global plot
-	structures and use __render_plot__ to build plot command to
-	display image.
-
-	* plot/__plt3__.m: New arg, parametric.  Change all callers.
-
-	* plot/__plot_globals__.m (__plot_line_offset__, __plot_command__,
-	__plot_command_sep__): Delete.
-	(__plot_data_type__, __plot_data_parametric__,
-	__plot_image_colormap__, __plot_image_dims__, __plot_fmtstr__,
-	__plot_usingstr__, __plot_withstr__): New variables.
-	* plot/__init_plot_vars__.m: Initialize them.
-
-	* plot/__init_plot_vars__.m, plot/__setup_plot__.m:
-	Don't handle sep or cmd.
-
-	* plot/__render_plot__.m: New function.
-	* plot/__plt__.m, plot/__plt3__.m, plot/__errplot__.m:
-	Store more info in global plot structures and use __render_plot__
-	to build plot command.
-	* plot/replot.m: Simply call __render_plot__.
-
-	* plot/contour.m, plot/mesh.m, plot/plot3.m:
-	Set __plot_data_parametric__ here.
-
-2006-11-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/bottom_title.m, plot/top_title.m: Delete.
-
-	* image/image_viewer.m: Set default values here.
-	* image/image.m: Not here.
-
-	* image/image_viewer.m: Always return old values.  Check arguments.
-	* image/__img_gnuplot__.m: Rename from __img__m.
-
-2006-11-14  S�ren Hauberg  <soren@hauberg.org>
-
-	* image/image_viewer.m: New function.
-	* image/__img_via_file__.m: New function.
-	* image/image.m: Use image_viewer to determine which program to
-	use for image viewing.
-	* image/__img__.m: Silently accept more than 3 args.
-
-2006-11-14  John W. Eaton  <jwe@octave.org>
-
-	* plot/__do_legend__.m, plot/__errplot__.m,
-	plot/__init_plot_vars__.m, plot/__plot_globals__.m,
-	plot/__plt3__.m, plot/__plt__.m, plot/__setup_plot__.m,
-	plot/legend.m, plot/mplot.m, plot/multiplot.m, plot/oneplot.m,
-	plot/replot.m, plot/subplot.m, plot/subwindow.m:
-	Use __plot_globals__ for multiplot variables.  Keep track of
-	multiplot info for each figure.  Eliminate __multiplot_xscale__.
-
-2006-11-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/mesh.m: Use proper dimensions for y in call to repmat.
-
-	* miscellaneous/substruct.m: New function.
-
-	* testfun/assert.m: Force orientation to match when comparing
-	struct elements.
-
-	* general/__isequal__.m: Avoid assignment of comma-separated lists
-	when comparing structs.
-
-2006-11-13  S�ren Hauberg  <hauberg@gmail.com>
-
-	* general/bicubic.m, general/cart2pol.m, general/cart2sph.m,
-	plot/contour.m, linear-algebra/cross.m, general/cumtrapz.m,
-	linear-algebra/dot.m, image/imshow.m, general/interp2.m,
-	general/mod.m, plot/plot3.m, plot/__plr2__.m, plot/__plr__.m,
-	general/pol2cart.m, general/polyarea.m, polynomial/polyfit.m,
-	general/rem.m, image/rgb2ind.m, general/sph2cart.m,
-	general/trapz.m, miscellaneous/xor.m: Use size_equal.
-
-2006-11-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/mesh.m: Use size_equal to compare dimensions.
-
-2006-11-13  S�ren Hauberg  <soren@hauberg.org>
-
-	* plot/mesh.m: Simplify.  Set hidden3d for the plot.
-
-2006-11-11  S�ren Hauberg  <soren@hauberg.org>
-
-	* miscellaneous/copyfile.m: Fix docs to match function.
-
-2006-11-08  John W. Eaton  <jwe@octave.org>
-
-	* plot/legend.m: New function, adapted from Octave Forge.
-
-	* plot/__do_legend__.m: New function.
-	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m,
-	plot/replot.m: Call it before plotting.
-
-	* plot/plot3.m, plot/mesh.m, plot/contour.m: Don't send "set
-	noparametric" to gnuplot..
-
-	* plot/__plotopt__.m, plot/__pltopt1__.m, plot/__plt1__.m,
-	plot/__plt2__.m, plot/__plt2mm__.m, plot/__plt2mv__.m,
-	plot/__plt2ss__.m, plot/__plt2vm__.m, plot/__plt2vv__.m: Accept
-	and return key title separate from line format.  Accept format and
-	key as cellstr.  Always return data as cell array.  Return format
-	and key title as cellstr.
-	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m:
-	Handle line format and key titles separately.
-	* plot/__plt3__.m, plot/__plt__.m: Handle data as cell array only.
-
-	* plot/__plot_globals__.m (__plot_line_offset__,
-	__plot_key_labels__, __plot_key_properties__): New global
-	variables.  Initialize them.
-	* plot/__init_plot_vars__.m (__plot_line_offset__,
-	__plot_key_labels__, __plot_key_properties__): Initialize.
-	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m
-	(__plot_line_offset__, __plot_key_labels__,
-	__plot_key_properties__): Store information about plot key titles.
-
-	* plot/__errplot__.m, plot/__init_plot_vars__.m, plot/__plt3__.m,
-	plot/__plt__.m: Use cf, mxi, and myi as shorthand for
-	__current_figure__, __multiplot_xi__, and __multiplot_yi__,
-	respectively.
-
-	* plot/__errcomm__.m: Allow fmt to be cellstr.
-
-	* strings/strcat.m: Disable Octave:empty-list-elements warning
-	whle concatenating args.
-
-2006-11-07  John W. Eaton  <jwe@octave.org>
-
-	* startup/main-rcfile: Conditionally set PAGER_FLAGS.
-
-2006-11-06  S�ren Hauberg  <soren@hauberg.org>
-
-	* pkg/pkg.m (extract_pkg): No need to pass "dotexceptnewline"
-	option to regexp.
-
-	* image/__img__.m: Send "set size ratio -1" before plotting.
-
-2006-11-03  Bill Denney  <denney@seas.upenn.edu>
-
-	* strings/index.m: New arg, direction.  Simplify and speed up.
-	* strings/rindex.m: Implement using index (..., "last");
-
-	* blanks.m, strcat.m: Simplify.  Add tests.
-
-2006-11-01  Bill Denney  <denney@seas.upenn.edu>
-
-	* general/__isequal__.m: Test size and class more consistently.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/ls_command.m: Use /D instead of /w.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-	* miscellaneous/ls.m, miscellaneous/ls_command.m: New files.
-	* miscellaneous/dir.m: Mark as a command.
-
-2006-10-27  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* miscellaneous/unpack.m: Fix missing comma in strcat call.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* image/image.m: Set x = y = [] when nargin == 0;
-
-2006-10-25  Quentin Spencer  <qspencer@ieee.org>
-
-	* image/image.m: Call __img__ if gnuplot version is > 4.0.
-	* image/__img__.m: New file, originally from
-	Daniel J Sebald <daniel.sebald@ieee.org>.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/__gnuplot_version__.m: New function, originally from
-	Daniel J Sebald <daniel.sebald@ieee.org> by way of
-	Quentin Spencer <qspencer@ieee.org>.
-
-2006-10-25  S�ren Hauberg  <soren@hauberg.org>
-
-	* plot/__pltopt__.m: Update symbol marker id numbers for gnuplot 4.
-
-2006-10-24  Bill Denney  <denney@seas.upenn.edu>
-
-	* miscellaneous/unpack.m, miscellaneous/bunzip2.m,
-	miscellaneous/gunzip.m: New files.
-	* miscellaneous/untar.m, miscellaneous/unzip.m:
-	Call unpack to do the real work.
-
-2006-10-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/plot3.m: If we have a format string, then also pass using
-	string to __plt3__.
-
-	* plot/sombrero.m: Don't return anything if nargout == 0.
-
-	* plot/__plt3__.m: Create using clause if none is supplied.
-	* plot/mesh.m: Always pass empty using string to __plt3__.
-
-2006-10-20  Bill Denney  <denney@seas.upenn.edu>
-
-	* movefile.m, copyfile.m: Handle cellstr lists of files.
-	Quote filenames in shell commands.
-
-2006-10-17  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (uninstall): Allow the uninstall to proceed even if
-	the package directory is missing.
-
-2006-10-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/box.m: New function.
-
-2006-10-13  Etienne Grossmann  <etienne@tyzx.com>
-
-	* general/ind2sub.m, general/sub2ind.m: Handle empty indices.
-
-2006-10-12  Quentin Spencer  <qspencer@ieee.org>
-
-	* plot/sombrero.m: Only plot if nargout == 0.  Otherwise, return data.
-
-2006-10-10  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/copyfile.m, miscellaneous/movefile.m: New functions.
-
-2006-10-10  Bill Denney  <denney@seas.upenn.edu>
-
-	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m,
-	audio/playaudio.m, audio/record.m, audio/saveaudio.m,
-	audio/setaudio.m, audio/wavread.m, audio/wavwrite.m,
-	control/base/__bodquist__.m, control/base/__freqresp__.m,
-	control/base/are.m, control/base/bode.m, control/base/ctrb.m,
-	control/base/damp.m, control/base/dare.m, control/base/dcgain.m,
-	control/base/dre.m, control/base/impulse.m, control/base/lqg.m,
-	control/base/lsim.m, control/base/lyap.m, control/base/nichols.m,
-	control/base/nyquist.m, control/base/obsv.m, control/base/pzmap.m,
-	control/base/rlocus.m, control/base/step.m, control/base/tzero.m,
-	control/hinf/h2norm.m, control/hinf/h2syn.m,
-	control/hinf/hinfnorm.m, control/hinf/hinfsyn.m,
-	control/hinf/is_dgkf.m, control/hinf/wgt1o.m,
-	control/obsolete/dezero.m, control/system/__sysdefioname__.m,
-	control/system/buildssic.m, control/system/c2d.m,
-	control/system/cellidx.m, control/system/d2c.m,
-	control/system/dmr2d.m, control/system/fir2sys.m,
-	control/system/is_abcd.m, control/system/is_controllable.m,
-	control/system/is_detectable.m, control/system/is_digital.m,
-	control/system/is_observable.m, control/system/is_siso.m,
-	control/system/is_stabilizable.m, control/system/is_stable.m,
-	control/system/jet707.m, control/system/listidx.m,
-	control/system/ord2.m, control/system/parallel.m,
-	control/system/ss.m, control/system/ss2zp.m,
-	control/system/starp.m, control/system/sys2ss.m,
-	control/system/sys2tf.m, control/system/sys2zp.m,
-	control/system/sysadd.m, control/system/sysappend.m,
-	control/system/syschtsam.m, control/system/sysconnect.m,
-	control/system/syscont.m, control/system/sysdimensions.m,
-	control/system/sysdisc.m, control/system/sysdup.m,
-	control/system/sysgetsignals.m, control/system/sysgettsam.m,
-	control/system/sysgroup.m, control/system/sysidx.m,
-	control/system/sysmin.m, control/system/sysmult.m,
-	control/system/sysout.m, control/system/sysprune.m,
-	control/system/sysscale.m, control/system/syssetsignals.m,
-	control/system/syssub.m, control/system/sysupdate.m,
-	control/system/tf.m, control/system/tfout.m,
-	control/system/ugain.m, control/system/zp.m,
-	control/system/zpout.m, control/util/__outlist__.m,
-	control/util/__zgpbal__.m, control/util/prompt.m,
-	control/util/sortcom.m, control/util/strappend.m,
-	deprecated/com2str.m, elfun/acot.m, elfun/acoth.m, elfun/acsc.m,
-	elfun/acsch.m, elfun/asec.m, elfun/asech.m, elfun/cot.m,
-	elfun/coth.m, elfun/csc.m, elfun/csch.m, elfun/lcm.m, elfun/sec.m,
-	elfun/sech.m, finance/fv.m, finance/fvl.m, finance/irr.m,
-	finance/nper.m, finance/npv.m, finance/pmt.m, finance/pv.m,
-	finance/pvl.m, finance/rate.m, finance/vol.m,
-	general/__isequal__.m, general/bitcmp.m, general/bitget.m,
-	general/bitset.m, general/blkdiag.m, general/cart2sph.m,
-	general/cell2mat.m, general/circshift.m, general/cplxpair.m,
-	general/cumtrapz.m, general/deal.m, general/diff.m,
-	general/flipdim.m, general/fliplr.m, general/flipud.m,
-	general/ind2sub.m, general/int2str.m,
-	general/is_duplicate_entry.m, general/isdefinite.m,
-	general/isequal.m, general/isequalwithequalnans.m,
-	general/isscalar.m, general/issquare.m, general/issymmetric.m,
-	general/isvector.m, general/logical.m, general/logspace.m,
-	general/mod.m, general/nargchk.m, general/nextpow2.m,
-	general/perror.m, general/postpad.m, general/prepad.m,
-	general/randperm.m, general/rem.m, general/repmat.m,
-	general/rot90.m, general/rotdim.m, general/shift.m,
-	general/shiftdim.m, general/sph2cart.m, general/strerror.m,
-	general/sub2ind.m, general/trapz.m, general/tril.m,
-	general/triu.m, image/gray.m, image/gray2ind.m, image/hsv2rgb.m,
-	image/image.m, image/imagesc.m, image/ind2gray.m, image/ind2rgb.m,
-	image/loadimage.m, image/ntsc2rgb.m, image/ocean.m,
-	image/rgb2hsv.m, image/rgb2ntsc.m, image/saveimage.m, io/beep.m,
-	linear-algebra/commutation_matrix.m, linear-algebra/cond.m,
-	linear-algebra/cross.m, linear-algebra/dmult.m,
-	linear-algebra/dot.m, linear-algebra/duplication_matrix.m,
-	linear-algebra/krylov.m, linear-algebra/krylovb.m,
-	linear-algebra/logm.m, linear-algebra/norm.m,
-	linear-algebra/null.m, linear-algebra/orth.m,
-	linear-algebra/qzhess.m, linear-algebra/rank.m,
-	linear-algebra/trace.m, linear-algebra/vec.m,
-	linear-algebra/vech.m, miscellaneous/bincoeff.m,
-	miscellaneous/delete.m, miscellaneous/dir.m, miscellaneous/dos.m,
-	miscellaneous/fileattrib.m, miscellaneous/fileparts.m,
-	miscellaneous/flops.m, miscellaneous/fullfile.m,
-	miscellaneous/ispc.m, miscellaneous/isunix.m,
-	miscellaneous/menu.m, miscellaneous/not.m, miscellaneous/popen2.m,
-	miscellaneous/single.m, miscellaneous/unix.m, miscellaneous/ver.m,
-	miscellaneous/xor.m, optimization/glpk.m, optimization/glpkmex.m,
-	optimization/qp.m, optimization/sqp.m, plot/__axis_label__.m,
-	plot/__errplot__.m, plot/__plr1__.m, plot/__plr2__.m,
-	plot/__plr__.m, plot/__plt1__.m, plot/__plt2__.m,
-	plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
-	plot/__plt2vm__.m, plot/__plt2vv__.m, plot/__pltopt1__.m,
-	plot/__pltopt__.m, plot/bar.m, plot/bottom_title.m, plot/close.m,
-	plot/contour.m, plot/errorbar.m, plot/figure.m, plot/fplot.m,
-	plot/grid.m, plot/hist.m, plot/hold.m, plot/ishold.m,
-	plot/loglogerr.m, plot/mesh.m, plot/meshdom.m, plot/meshgrid.m,
-	plot/multiplot.m, plot/orient.m, plot/polar.m, plot/replot.m,
-	plot/semilogxerr.m, plot/semilogyerr.m, plot/sombrero.m,
-	plot/stairs.m, plot/subplot.m, plot/subwindow.m, plot/title.m,
-	plot/top_title.m, polynomial/compan.m, polynomial/conv.m,
-	polynomial/deconv.m, polynomial/mkpp.m, polynomial/poly.m,
-	polynomial/polyder.m, polynomial/polyderiv.m,
-	polynomial/polyfit.m, polynomial/polygcd.m,
-	polynomial/polyinteg.m, polynomial/polyout.m,
-	polynomial/polyreduce.m, polynomial/polyval.m,
-	polynomial/polyvalm.m, polynomial/ppval.m, polynomial/residue.m,
-	polynomial/roots.m, polynomial/unmkpp.m, quaternion/quaternion.m,
-	set/complement.m, set/create_set.m, set/intersect.m,
-	set/ismember.m, set/setdiff.m, set/setxor.m, set/union.m,
-	set/unique.m, signal/arch_fit.m, signal/arch_rnd.m,
-	signal/arma_rnd.m, signal/autocor.m, signal/autoreg_matrix.m,
-	signal/bartlett.m, signal/blackman.m, signal/detrend.m,
-	signal/diffpara.m, signal/durbinlevinson.m, signal/fftconv.m,
-	signal/fftfilt.m, signal/fftshift.m, signal/filter2.m,
-	signal/freqz.m, signal/hamming.m, signal/hanning.m,
-	signal/hurst.m, signal/ifftshift.m, signal/sinetone.m,
-	signal/sinewave.m, signal/spencer.m, signal/stft.m,
-	signal/synthesis.m, signal/unwrap.m, sparse/gplot.m,
-	sparse/spfun.m, sparse/sprand.m, sparse/sprandn.m,
-	sparse/sprandsym.m, sparse/spstats.m, specfun/beta.m,
-	specfun/betai.m, specfun/betaln.m, specfun/erfinv.m,
-	specfun/gammai.m, specfun/log2.m, specfun/pow2.m,
-	special-matrix/hankel.m, special-matrix/hilb.m,
-	special-matrix/invhilb.m, special-matrix/sylvester_matrix.m,
-	special-matrix/toeplitz.m, special-matrix/vander.m,
-	statistics/base/center.m, statistics/base/cloglog.m,
-	statistics/base/cor.m, statistics/base/corrcoef.m,
-	statistics/base/cov.m, statistics/base/cut.m,
-	statistics/base/gls.m, statistics/base/iqr.m,
-	statistics/base/kendall.m, statistics/base/kurtosis.m,
-	statistics/base/logit.m, statistics/base/mahalanobis.m,
-	statistics/base/mean.m, statistics/base/meansq.m,
-	statistics/base/median.m, statistics/base/moment.m,
-	statistics/base/ols.m, statistics/base/ppplot.m,
-	statistics/base/probit.m, statistics/base/qqplot.m,
-	statistics/base/range.m, statistics/base/ranks.m,
-	statistics/base/run_count.m, statistics/base/skewness.m,
-	statistics/base/spearman.m, statistics/base/statistics.m,
-	statistics/base/std.m, statistics/base/studentize.m,
-	statistics/base/table.m, statistics/base/values.m,
-	statistics/base/var.m, statistics/distributions/betacdf.m,
-	statistics/distributions/betainv.m,
-	statistics/distributions/betapdf.m,
-	statistics/distributions/betarnd.m,
-	statistics/distributions/binocdf.m,
-	statistics/distributions/binoinv.m,
-	statistics/distributions/binopdf.m,
-	statistics/distributions/binornd.m,
-	statistics/distributions/cauchy_cdf.m,
-	statistics/distributions/cauchy_inv.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chi2cdf.m,
-	statistics/distributions/chi2inv.m,
-	statistics/distributions/chi2pdf.m,
-	statistics/distributions/chi2rnd.m,
-	statistics/distributions/discrete_cdf.m,
-	statistics/distributions/discrete_inv.m,
-	statistics/distributions/discrete_pdf.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/empirical_rnd.m,
-	statistics/distributions/expcdf.m,
-	statistics/distributions/expinv.m,
-	statistics/distributions/exppdf.m,
-	statistics/distributions/exprnd.m,
-	statistics/distributions/fcdf.m, statistics/distributions/finv.m,
-	statistics/distributions/fpdf.m, statistics/distributions/frnd.m,
-	statistics/distributions/gamcdf.m,
-	statistics/distributions/gaminv.m,
-	statistics/distributions/gampdf.m,
-	statistics/distributions/gamrnd.m,
-	statistics/distributions/geocdf.m,
-	statistics/distributions/geoinv.m,
-	statistics/distributions/geopdf.m,
-	statistics/distributions/geornd.m,
-	statistics/distributions/hygecdf.m,
-	statistics/distributions/hygeinv.m,
-	statistics/distributions/hygepdf.m,
-	statistics/distributions/hygernd.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/laplace_cdf.m,
-	statistics/distributions/laplace_inv.m,
-	statistics/distributions/laplace_pdf.m,
-	statistics/distributions/laplace_rnd.m,
-	statistics/distributions/logistic_cdf.m,
-	statistics/distributions/logistic_inv.m,
-	statistics/distributions/logistic_pdf.m,
-	statistics/distributions/logistic_rnd.m,
-	statistics/distributions/logncdf.m,
-	statistics/distributions/logninv.m,
-	statistics/distributions/lognpdf.m,
-	statistics/distributions/lognrnd.m,
-	statistics/distributions/normcdf.m,
-	statistics/distributions/norminv.m,
-	statistics/distributions/normpdf.m,
-	statistics/distributions/normrnd.m,
-	statistics/distributions/pascal_cdf.m,
-	statistics/distributions/pascal_inv.m,
-	statistics/distributions/pascal_pdf.m,
-	statistics/distributions/pascal_rnd.m,
-	statistics/distributions/poisscdf.m,
-	statistics/distributions/poissinv.m,
-	statistics/distributions/poisspdf.m,
-	statistics/distributions/poissrnd.m,
-	statistics/distributions/stdnormal_cdf.m,
-	statistics/distributions/stdnormal_inv.m,
-	statistics/distributions/stdnormal_pdf.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/tcdf.m, statistics/distributions/tinv.m,
-	statistics/distributions/tpdf.m, statistics/distributions/trnd.m,
-	statistics/distributions/unifcdf.m,
-	statistics/distributions/unifinv.m,
-	statistics/distributions/unifpdf.m,
-	statistics/distributions/unifrnd.m,
-	statistics/distributions/wblcdf.m,
-	statistics/distributions/wblinv.m,
-	statistics/distributions/wblpdf.m,
-	statistics/distributions/wblrnd.m,
-	statistics/distributions/wienrnd.m, statistics/tests/anova.m,
-	statistics/tests/bartlett_test.m,
-	statistics/tests/chisquare_test_homogeneity.m,
-	statistics/tests/chisquare_test_independence.m,
-	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
-	statistics/tests/hotelling_test.m,
-	statistics/tests/hotelling_test_2.m,
-	statistics/tests/kolmogorov_smirnov_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m,
-	statistics/tests/kruskal_wallis_test.m, statistics/tests/manova.m,
-	statistics/tests/mcnemar_test.m, statistics/tests/prop_test_2.m,
-	statistics/tests/run_test.m, statistics/tests/sign_test.m,
-	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
-	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
-	statistics/tests/var_test.m, statistics/tests/welch_test.m,
-	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
-	statistics/tests/z_test_2.m, strings/base2dec.m, strings/blanks.m,
-	strings/deblank.m, strings/dec2base.m, strings/dec2bin.m,
-	strings/dec2hex.m, strings/findstr.m, strings/hex2dec.m,
-	strings/index.m, strings/isletter.m, strings/lower.m,
-	strings/rindex.m, strings/split.m, strings/str2mat.m,
-	strings/str2num.m, strings/strcat.m, strings/strcmpi.m,
-	strings/strfind.m, strings/strjust.m, strings/strmatch.m,
-	strings/strncmp.m, strings/strncmpi.m, strings/strrep.m,
-	strings/strtrunc.m, strings/strvcat.m, strings/substr.m,
-	strings/upper.m, testfun/assert.m, testfun/demo.m,
-	testfun/example.m, testfun/fail.m, testfun/speed.m,
-	testfun/test.m, time/asctime.m, time/calendar.m, time/ctime.m,
-	time/datenum.m, time/datestr.m, time/datevec.m, time/eomday.m,
-	time/etime.m, time/is_leap_year.m:
-	Use print_usage instead of usage.
-
-2006-10-09  David Bateman  <dbateman@free.fr>
-
-	* time/datevec.m: Add additional compatible default parsing strings.
-
-2006-10-09  Bill Denney  <denney@seas.upenn.edu>
-
-	* pkg/pkg.m: Remove trailing "\n" from error messages.
-	Remove compare_versions subfunction.
-
-	* miscellaneous/compare_versions.m: New function to compare
-	version numbers as strings with any boolean operators.
-
-	* miscellaneous/untar.m: Check more rigorously to see if the tar
-	file exists.
-
-2006-10-04  John W. Eaton  <jwe@octave.org>
-
-	* pkg/pkg.m: Use fullfile to concatenate directory and file names.
-
-2006-10-04  S�ren Hauberg  <soren@hauberg.org>
-
-	* pkg/pkg.m: Update docs.  Handle prefix option.
-	Handle dependencies for load option.
-
-2006-10-04  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/clearplot.m, deprecated/clg.m: New functions.
-
-	* plot/clg.m: Delete.
-	* plot/__init_plot_vars__.m: New function.
-	* plot/__setup_plot__.m: Use __init_plot_vars__.
-
-2006-10-03  S�ren Hauberg  <soren@hauberg.org>
-
-	* pkg/pkg.m: Avoid calling addpath with no args.
-
-2006-10-03  Bill Denney  <denney@seas.upenn.edu>
-
- 	* audio/loadaudio.m, control/base/nyquist.m,
- 	control/system/__zp2ssg2__.m, linear-algebra/cross.m,
- 	linear-algebra/krylov.m, statistics/base/center.m,
- 	statistics/base/median.m, statistics/base/std.m,
- 	statistics/base/var.m, testfun/test.m: 	Use the new find syntax to
-	find first or last element matching a condition.
-
-2006-10-02  Bill Denney  <denney@seas.upenn.edu>
-
-	* strings/deblank.m, strings/upper.m, strings/lower.m,
-	general/__isequal__.m: Minimize looping using cellfun.
-
-2006-10-02  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (copy_files): always create installation directory.
-
-2006-10-02  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* miscellaneous/doc.m: Swap file and directory args to info.
-
-2006-10-01  Arno Onken  <whyly@gmx.net>
-
-	* statistics/distributions/exprnd.m: Fix typo.
-
-2006-09-30  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* polynomial/ppval.m: Use .' instead of '.
-	* polynomial/spline.m: Likewise.  New tests.
-
-2006-09-26  David Bateman  <dbateman@free.fr>
-
-	* __plt3__.m: Using global variables __plot_data__,
-	__plot_data_offset__ and __plot_command__ to store plots and
-	correctly handle multiplots, and hold state. Only accept a single
-	data parameter plus, using, format and with strings. Remove
-	setting of gnuplot parameters.
-	* __make_using_clause__.m: New function extracted from __plt__.m.
-	* __setup_plot__.m: Convert to a function and pass the plotting
-	command to use.
-	* __plt__.m: Change call to __setup_plot__ and __make_using_clause__.
-	* contour.m: Use unwind protect on the parametric state of plot
-	and __plt3__ instead of calling __gnuplot_splot__ directly.
-	* mesh.m: ditto.
-	* plot3.m: Error checking, setting of parametric state and
-	formation of matrix to plot moved from old __plt3__.
-
-2006-09-22  Michael Creel  <michael.creel@uab.es>
-
-	* deprecated/chisquare_pdf.m: Typo in documentation.
-
-2006-09-22  S�ren Hauberg  <soren@hauberg.org>
-
-	* signal/filter2.m: Correct texinfo doc.
-
-2006-09-22  David Bateman  <dbateman@free.fr>
-
-	* miscellaneous/parseparams.m: Correct texinfo doc.
-
-2006-09-15  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (prepare_installation): Don't create package
-	installation directory here.
-	(copy_files): Create it here instead, to avoid issues with
-	upgrades. Also install the COPYING file in packinfo.
-
-2006-09-13  John W. Eaton  <jwe@octave.org>
-
-	* general/blkdiag.m: Adjust to new cellfun rules.
-
-2006-08-30  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (install): Disallow bundles of packages. More verbose
-	error message for archive name not matching package name.
-	(installed_packages): Size header of printed results to
-	arguments. Sort the list of installed packages before printing
-	them.
-
-2006-09-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/freqz.m: Update tests.
-
-2006-09-11  Ken Kouno  <kouno@mk.ecei.tohoku.ac.jp>
-
-	* signal/freqz.m: Corretly postpad arrays.
-	Don't call fliplr on a column vector.
-
-2006-09-11  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* general/shiftdim.m: Use permute instead of reshape.
-
-2006-09-05  Alexander Barth  <abarth93@users.sourceforge.net>
-
-	* miscellaneous/parseparams.m: New function.
-
-2006-09-05  Rafael Laboissiere  <rafael@debian.org>
-
-	* miscellaneous/doc.m: Swap order of --file and --directory
-	options for info program invocation.
-
-2006-08-30  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (create_pkgadddel): Resolve variable name-clash from
-	previous change.
-
-2006-08-26  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (install, uninstall, installed_packages): Allow for
-	absence of trailing "/" in OCTAVE_HOME.
-
-2006-08-25  Alexander Barth  <abarth@marine.usf.edu>
-
-	* time/datenum.m: Allow arg to be character string.
-
-2006-08-25  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (install): Verify that package name correponds to the
-	archive name. Treat both PKG_ADD and PKG_DEL and remove them if
-	they are empty. If package directory is empty, remove it to fail
-	gracefully for system specific packages.
-	(extract_pkgadd, create_pkgadd): delete.
-	(extract_pkg, create_pkg): Generalized versions of deleted functions
-	(copy_files): Install both bin/ and doc/ directories, adding the
-	bin/ to the EXEC_PATH when the package is loaded.
-
-2006-08-24  John W. Eaton  <jwe@octave.org>
-
-	* image/saveimage.m: Use logical indexing instead of
-	indices computed by calling find on the logical index.
-
-2006-08-24  S�ren Hauberg  <soren@hauberg.org>
-
-	* miscellaneous/bincoeff.m, specfun/factorial.m:
-	Use logical indexing instead of indices computed by calling find
-	on the logical index.
-
-	* linear-algebra/krylov.m: Delete unused local var nzidx.
-
-2006-08-23  Quentin Spencer  <qspencer@ieee.org>
-
-	* control/system/tf2zp.m: Simplify gain calculation.
-
-2006-08-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt__.m: Insert using clauses for all plots.
-
-2006-08-23  A S Hodel  <hodelas@auburn.edu>
-
-	* control/system/sysscale.m: Call tf and zp with correct number of
-	args.
-
-2006-08-22  David Bateman  <dbateman@free.fr>
-
-	* pkg/pkg.m (extract_pkgadd, create_pkgadd): New functions to
-	Search inst/*.m and src/*.m files in the package for
-	PKG_ADD directives and append user supplied PKG_ADD.
-	(pkg): Call create_pkgadd after copying files.
-
-2006-08-21  S�ren Hauberg  <soren@hauberg.org>
-
-	* pkg/pkg.m: Handle multiple packages in a single file.
-	Insert directory separator between OCTAVE_HOME and rest of package
-	installation directory.
-
-2006-08-21  John W. Eaton  <jwe@octave.org>
-
-	* general/num2str.m: Early return if arg is empty.
-	From Thomas Treichl <Thomas.Treichl@gmx.net>.
-
-2006-08-21  David Bateman  <dbateman@free.fr>
-
-	* strings/mat2str.m: Compute NC before using.
-
-2006-08-17  John W. Eaton  <jwe@octave.org>
-
-	* audio/wavread.m: Fix calculation of sample count.
-
-2006-08-14  S�ren Hauberg  <soren@hauberg.org>
-
-	* image/imshow.m: New Matlab-compatible version.
-
-2006-08-15  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/is_global.m: Delete.
-
-2006-08-14  John W. Eaton  <jwe@octave.org>
-
-	* pkg/Makefile.in (script_sub_dir): Change from plot to pkg.
-
-2006-08-14  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
-
-	* sparse/spy.m, control/base/bode.m, control/base/__stepimp__.m,
-	signal/freqz_plot.m: Adapt to new automatic_replot definition.
-
-2006-08-14  S�ren Hauberg  <soren@hauberg.org>
-
-	* pkg/pkg.m: Don't pass function name to print_usage.
-	Use addpath and rmpath instead of manipulating LOADPATH.
-	Handle changes to system function.
-	(rm_rf): New subfunction.  Use it to avoid confirmation dialog for
-	recursive directory removal.
-
-	* strings/bin2dec.m: Ignore spaces in input for compatibility.
-
-	* colormap.m: Change global variable to persistent.
-
-	* rgb2ind.m: Handle single 3-d array as rgb image.
-
-2006-08-14  John W. Eaton  <jwe@octave.org>
-
-	* strings/str2double.m: Fix missing semicolon.
-
-2006-07-27  Jim Peterson  <jpeterson@annapmicro.com>
-
-	* plot/plot3.m: Accept one complex or one real and one complex
-	argument and plot real and imaginary components for y and z.
-
-2006-07-27  John W. Eaton  <jwe@octave.org>
-
-	* testfun/test.m: Call fflush after each block of calls to
-	fprintf, fputs, or fdisp.
-
-2006-07-26  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/mex.m: New function.
-
-2006-07-22  John W. Eaton  <jwe@octave.org>
-
-	* special-matrix/hadamard.m: Coerce bool matrix to double.
-
-2006-07-07  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/orderfields.m: New file.
-
-2006-06-30  John W. Eaton  <jwe@octave.org>
-
-	* time/datevec.m: Make another attempt to account for precision of
-	datenum format.
-
-2006-06-29  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dump_prefs.m: Remove obsolete symbols from the list.
-	Use feval instead of "type -q" to get values now that all the
-	symbols are functions.
-
-2006-06-16  John W. Eaton  <jwe@octave.org>
-
-	* time/datevec.m: Avoid computing log of non-positive values.
-
-2006-06-14  John W. Eaton  <jwe@octave.org>
-
-	* time/datevec.m: Attempt to account for precision of datenum format.
-
-2006-06-01  Quentin H. Spencer  <qspencer@ieee.org>
-
-	* audio/wavread.m: Fix file range error and add read support for
-	24-bit WAV files.
-
-2006-06-01  David Bateman  <dbateman@free.fr>
-
-	* general/interpft.m, general/quadl.m, general/polyarea.m,
-	general/interp1.m, general/gradient.m, general/interp2.m,
-	general/bicubic.m, miscellaneous/inputname.m, plot/__plt3__.m,
-	plot/ndgrid.m, plot/plot3.m, polynomial/pchip.m, sparse/pcg.m,
-	sparse/pcr.m, strings/mat2str.m: New files from Octave Forge.
-
-2006-05-31  Bill Denney  <bill@givebillmoney.com>
-
- 	* miscellaneous/fileparts.m, miscellaneous/fullfile.m: Add seealso.
- 	* miscellaneous/texas_lotto.m: Fix warning message.
-
-2006-05-26  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/doc.m: Also handle nargin == 0.
-
-2006-05-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/mesh.m: Use __gnupot_raw__ except where __gnuplot_set__ is
-	really needed.
-
-2006-05-22  John W. Eaton  <jwe@octave.org>
-
-	* general/lookup.m: New file from Octave Forge.
-
-2006-05-22  David Bateman  <dbateman@free.fr>
-
-	* general/nthroot.m, linear-algebra/rref.m, specfun/isprime.m,
-	specfun/primes.m, specfun/factor.m, specfun/nchoosek.m,
-	specfun/legendre.m, specfun/perms.m, special-matrix/rosser.m,
-	special-matrix/wilkinson.m, special-matrix/pascal.m,
-	special-matrix/magic.m, special-matrix/hadamard.m,
-	strings/strtok.m: New files from Octave Forge.
-
-2006-05-19  David Bateman  <dbateman@free.fr>
-
-	* polynomial/unmkpp.m, polynomial/mkpp.m, polynomial/spline.m,
-	polynomial/ppval.m, set/setxor.m: New files from Octave Forge.
-
-2006-05-17  John W. Eaton  <jwe@octave.org>
-
-	* set/intersection.m: Delete
-	* deprecated/intersection.m: New file.
-
-2006-05-17  David Bateman  <dbateman@free.fr>
-
-	* general/cplxpair.m, general/trapz.m, general/cumtrapz.m,
-	general/isdir.m, miscellaneous/dos.m, miscellaneous/getfield.m,
-	miscellaneous/setfield.m, plot/fplot.m, set/intersect.m,
-	signal/ifftshift.m, signal/filter2.m, specfun/betaln.m,
-	specfun/factorial.m, strings/strvcat.m: New files from Octave
-	Forge.
-
-2006-05-11  John W. Eaton  <jwe@octave.org>
-
-	* path/path.m: Delete (now a built-in function).
-
-	* pkg/Makefile.in: New file.
-	* configure.in (AC_CONFIG_FILES): Add pkg/Makefile to the list.
-	* Makefile.in (SUBDIRS): Add pkg to the list.
-
-2006-05-10  John W. Eaton  <jwe@octave.org>
-
-	* tar.m, untar.m, unzip.m: Adapt to Octave coding style.
-	* tar.m, untar.m: Only tar; don't compress or uncompress.
-
-2006-05-10  S�ren Hauberg  <hauberg@gmail.com>
-
-	* tar.m, untar.m, unzip.m: New files.
-
-2006-05-10  John W. Eaton  <jwe@octave.org>
-
-	* path/addpath.m, path/rmpath.m: Improve compatibility.
-	* path/setpath.m: Delete.
-
-	* pkg/pkg.m: New file.
-
-2006-05-09  Keith Goodman  <kwgoodman@gmail.com>
-
-	* plot/plot.m: Doc string fix.
-
-2006-05-09  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* testfun/speeed.m: Use new interface to unique and assert.
-	Improve documentation.  Approximate time complexity from log-log
-	plot.  Return time complexity and raw times if requested.  The
-	mean ratio is no longer returned.  Provide complete control over
-	which n are computed.
-
-2006-05-09  John W. Eaton  <jwe@octave.org>
-
-	* path/path.m: Move here from miscellaneous.
-	Adapt to new LOADPATH definition.
-
-2006-05-03  David Bateman  <dbateman@free.fr>
-
-	* path/rmpath.m, path/addpath.m, miscellaneous/path.m: Replace all
-	explicit uses of a path seperation character with pathsep().
-
-2006-05-03  Bob Weigel  <rweigel@gmu.edu>
-
-	* set/setdiff.m: New arg, byrows.  New tests.
-
-2006-04-29  John W. Eaton  <jwe@octave.org>
-
-	* startup/main-rcfile: Disable some warnings.
-
-2006-04-14  Bill Denney  <denney@seas.upenn.edu>
-
- 	* strings/strcmpi.m: Return false instead of error if args are not
-	char or cellstr.
-
-2006-04-10  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dir.m: Ensure that returned structure array is
-	Nx1, not 1xN.
-
-2006-04-06  Olli Saarela  <olli.saarela@kcl.fi>
-
-	* plot/hist.m: Ignore NaN in inputs.
-
-2006-04-06  Keith Goodman  <kwgoodman@gmail.com>
-
-	* miscellaneous/mkoctfile.m: Doc string fix.
-
-2006-04-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt2__.m: Return data = [] and fmtstr = "" if x1 and x2
-	are both empty.
-	* plot/__plt__.m: Ignore empty data and format strings returned
-	from __plt1__ or __plt2__.
-
-2006-04-04  Bob Weigel  <rweigel@gmu.edu>
-
-	* set/unique.m: Properly handle single column input when
-	"rows" is specified.
-
-2006-04-04  John W. Eaton  <jwe@octave.org>
-
-	* path/setpath.m: New file.
-	* path/savepath.m: Use setpath to set path instead of assigning
-	directly to LOADPATH.
-
-	* path/Makefile.in, path/addpath.m, path/rmpath.m, path/savepath.m:
-	New files, adapted from Octave Forge by Keith Goodman
-	<kwgoodman@gmail.com>.
-	* path: New directory.
-	* Makefile.in (SUBDIRS): Add it to the list.
-	* configure.in (AC_CONFIG_FILES): Include path/Makefile here.
-
-2006-04-02  David Bateman  <dbateman@free.fr>
-
-	* general/tril.m, general.triu.m:
-	Use resize (resize (x, 0), nr, nc) rather than zeros (nr, nc)
-	to allow user types to work correctly.
-	* special-matrix/hankel.m, special-matrix/toeplitz.m: Ditto.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* plot/grid.m: Cache the state of the grid to allow toggling.
-	Accept keyword "minor" for minor grid.
-
-2006-03-28  John W. Eaton  <jwe@octave.org>
-
-	* general/isscalar.m: Only require that all dimensions are 1 for
-	compatiblity.
-
-2006-03-28  Bill Denney  <bill@givebillmoney.com>
-
-	* general/isvector.m: Allow non-numeric objects to be vectors for
-	compatibility.
-
-2006-03-28  Keith Goodman  <kwgoodman@gmail.com>
-
-	* plot/__errplot__.m: Doc string fix.
-
-	* miscellaneous/doc.m: Mark as command.
-
-	* general/isequal.m, general/__isequal__.m, general/cell2mat.m,
-	general/isequalwithequalnans.m, general/blkdiag.m,
-	strings/strfind.m, miscellaneous/doc.m: Update FSF address.
-
-2006-03-27  Don Bindner  <dbindner@truman.edu>
-
-	* plot/meshgrid.m: If nargout == 3 and vectors are supplied,
-	return 3d matrices.
-
-2006-03-27  Keith Goodman  <kwgoodman@gmail.com>
-
-	* time/toc.m: Don't print "Elapsed time..." if tic has not been set.
-
-2006-03-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/print.m: Don't replot after popping terminal setting.
-
-2006-03-20  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/mkoctfile.m: Use version-specific name of
-	mkoctfile.  Use fullfile to construct file name.
-
-2006-03-20  Keith Goodman  <kwgoodman@gmail.com>
-
-	* miscellaneous/mkoctfile.m: Make it possible to call mkoctfile
-	shell script from Octave prompt.
-
-2006-03-17  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/weibcdf.m, deprecated/weibinv.m,
-	deprecated/weibpdf.m, deprecated/weibrnd.m: New functions.
-
-	* deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
-	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m:
-	Call new wbl functions to do the real work.
-	Swap args and provide default values as necessary to preserve
-	compatibility with old version of Octave.
-
-	* statistics/distributions/wblcdf.m: Rename from weibcdf.m.
-	statistics/distributions/wblinv.m: Rename from weibinv.m.
-	statistics/distributions/wblpdf.m: Rename from weibpdf.m.
-	statistics/distributions/wblrnd.m: Rename from weibrnd.m.
-	Swap scale and shape args for compatibility.
-
-	* deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
-	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m:
-	Preserve compatibility with old versions of Octave given new
-	definitions of logncdf, logninv, lognpdf, and lognrnd.
-
-	* statistics/distributions/logncdf.m,
-	statistics/distributions/logninv.m,
-	statistics/distributions/lognpdf.m,
-	statistics/distributions/lognrnd.m: Compatibility fixes.
-	From Ben Barrowes  <barrowes@alum.mit.edu>
-
-	* deprecated/hypergeometric_rnd.m: Update interface to match
-	current 2.1.x version.
-
-	* deprecated/t_rnd.m: Call trnd, not t_rnd.
-
-	* miscellaneous/dir.m: Use readdir instead of glob.
-	Special case for "." to avoid globbing.  Use list_in_columns.
-	Eliminate unused variables len and finfo.
-
-2006-03-16  Bill Denney  <bill@givebillmoney.com>
-
-	* miscellaneous/dir.m: Improve compatibility.
-
-2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* time/calendar.m, time/datestr.m, time/datevec.m, time/eomday.m,
-	time/now.m, time/weekday.m: New functions from Octave Forge.
-
-2006-03-16  John W. Eaton  <jwe@octave.org>
-
-	* control/base/bode_bounds.m: Check for iip and iiz empty instead
-	of looking at sum of max dimensions.
-
-2006-03-16  David Bateman  <dbateman@free.fr>
-
-	* testfun/test.m: Clear last warning before warning test to avoid
-	issues with previously set warnings.
-	* build_sparse_test.sh: Tests for multiple RHS for rectanguar
-	sparse matrices. Force matrix type from spqr solution to be
-	singular to force QR solvers to be used for assert.
-
-2006-03-16  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* strings/strfind.m: New file.
-
-2006-03-16  John W. Eaton  <jwe@octave.org>
-
-	* general/rows.m, general/columns.m: Delete.
-
-2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* strings/strcmpi.m: Simplify.
-	* strings/strncmpi.m: Import from octave-forge, simplify.
-	* strings/strtrunc.m: New file.
-
-	* strings/lower.m, strings/upper.m: Handle cellstr arguments.
-
-2006-03-15  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/doc.m: New file.
-	From S�ren Hauberg <soren@hauberg.org>.
-
-2006-03-15  Keith Goodman  <kwgoodman@gmail.com>
-
-	* miscellaneous/mkoctfile.m: New file.
-
-2006-03-15  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/residue.m: Use & instead of && to generate arg for find.
-
-2006-03-14  Keith Goodman  <kwgoodman@gmail.com>
-
-	* strings/bin2dec.m: Doc fix.
-
-2006-03-10  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* time/etime.m: Use datenum to support times spanning year boundaries.
-	* time/datenum.m: New function to compute day number from time.
-
-2006-03-09  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/unix.m, plot/print.m:
-	Swap order of outputs from system.
-
-2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
-
-	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m,
-	audio/playaudio.m, audio/record.m, audio/saveaudio.m,
-	audio/wavread.m, audio/wavwrite.m, control/base/DEMOcontrol.m,
-	control/base/__stepimp__.m, control/base/are.m,
-	control/base/controldemo.m, control/base/damp.m,
-	control/base/dare.m, control/base/impulse.m, control/base/lqg.m,
-	control/base/step.m, control/system/abcddim.m,
-	control/system/is_abcd.m, control/system/is_controllable.m,
-	control/system/is_detectable.m, control/system/is_observable.m,
-	control/system/is_stabilizable.m, control/system/is_stable.m,
-	control/system/jet707.m, control/system/sys2fir.m,
-	control/system/sysdimensions.m, control/system/sysupdate.m,
-	control/system/tfout.m, control/system/ugain.m,
-	control/system/zpout.m, elfun/lcm.m, finance/irr.m,
-	finance/nper.m, finance/npv.m, finance/pmt.m, finance/pv.m,
-	finance/rate.m, general/__isequal__.m, general/bitcmp.m,
-	general/bitget.m, general/bitset.m, general/blkdiag.m,
-	general/cart2pol.m, general/cart2sph.m, general/cell2mat.m,
-	general/circshift.m, general/columns.m, general/flipdim.m,
-	general/fliplr.m, general/flipud.m, general/ind2sub.m,
-	general/int2str.m, general/isdefinite.m, general/isequal.m,
-	general/isequalwithequalnans.m, general/isscalar.m,
-	general/issquare.m, general/issymmetric.m, general/isvector.m,
-	general/logspace.m, general/mod.m, general/nextpow2.m,
-	general/num2str.m, general/perror.m, general/pol2cart.m,
-	general/rem.m, general/rot90.m, general/rotdim.m, general/rows.m,
-	general/shiftdim.m, general/sph2cart.m, general/sub2ind.m,
-	general/tril.m, image/hsv2rgb.m, image/image.m, image/imagesc.m,
-	image/imshow.m, image/ind2gray.m, image/ind2rgb.m,
-	image/loadimage.m, image/rgb2hsv.m, image/rgb2ind.m,
-	image/saveimage.m, io/beep.m, linear-algebra/cond.m,
-	linear-algebra/norm.m, miscellaneous/comma.m, miscellaneous/dir.m,
-	miscellaneous/license.m, miscellaneous/menu.m,
-	miscellaneous/semicolon.m, miscellaneous/texas_lotto.m,
-	miscellaneous/unix.m, miscellaneous/ver.m, optimization/sqp.m,
-	plot/__errcomm__.m, plot/__errplot__.m, plot/__pltopt1__.m,
-	plot/__pltopt__.m, plot/bar.m, plot/contour.m, plot/errorbar.m,
-	plot/grid.m, plot/hist.m, plot/loglog.m, plot/loglogerr.m,
-	plot/mesh.m, plot/meshgrid.m, plot/plot.m, plot/polar.m,
-	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
-	plot/semilogyerr.m, plot/shg.m, plot/stairs.m, plot/title.m,
-	plot/xlabel.m, polynomial/compan.m, polynomial/conv.m,
-	polynomial/deconv.m, polynomial/polyderiv.m, polynomial/polygcd.m,
-	polynomial/polyinteg.m, polynomial/polyout.m,
-	polynomial/polyreduce.m, polynomial/polyval.m,
-	polynomial/polyvalm.m, polynomial/residue.m, set/complement.m,
-	set/create_set.m, set/intersection.m, set/ismember.m,
-	set/setdiff.m, set/union.m, set/unique.m, sparse/etreeplot.m,
-	sparse/gplot.m, sparse/spalloc.m, sparse/sphcat.m,
-	sparse/sprand.m, sparse/sprandn.m, sparse/sprandsym.m,
-	sparse/spvcat.m, sparse/treeplot.m, specfun/erfinv.m,
-	specfun/log2.m, specfun/pow2.m, special-matrix/hankel.m,
-	special-matrix/hilb.m, special-matrix/invhilb.m,
-	special-matrix/sylvester_matrix.m, special-matrix/toeplitz.m,
-	special-matrix/vander.m, statistics/base/median.m,
-	statistics/base/std.m, statistics/distributions/gamcdf.m,
-	statistics/distributions/gaminv.m,
-	statistics/distributions/gampdf.m,
-	statistics/distributions/gamrnd.m, strings/base2dec.m,
-	strings/bin2dec.m, strings/dec2base.m, strings/dec2bin.m,
-	strings/dec2hex.m, strings/hex2dec.m, strings/isletter.m,
-	strings/lower.m, strings/upper.m, testfun/assert.m,
-	testfun/demo.m, testfun/example.m, testfun/test.m, time/etime.m:
-	Move @seealso inside @defXXX macro.  Remove "and" from @seealso.
-
-2006-02-27  John W. Eaton  <jwe@octave.org>
-
-	* time/tic.m: Move here from miscellaneous/tic.m.
-	* time/toc.m: Move here from miscellaneous/toc.m.
-
-2006-02-26  Keith Goodman  <kwgoodman@gmail.com>
-
- 	* miscellaneous/toc.m: Display "Elapsed time is X seconds" if user
-	does not assign output of toc to a variable.
-
-2006-02-16  Bill Denney  <denney@seas.upenn.edu>
-
- 	* axis.m: Catch limits that are the same and return an error.
-
-2006-02-15  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
-
-	* plot/print.m: Accept emf device option to support Enhanced
-	Metafile format.
-
-2006-02-15  A S Hodel  <hodelas@auburn.edu>
-
-	* control/base/lqe.m: Doc fix.
-
-2006-02-15  Keith Goodman  <kwgoodman@gmail.com>
-
- 	* statistics/distributions/gamcdf.m: Doc fix.
- 	* statistics/distributions/gaminv.m: Doc fix.
- 	* statistics/distributions/gampdf.m: Doc fix.
- 	* statistics/distributions/gamrnd.m: Doc fix.
-
-2006-02-09  David Bateman  <dbateman@free.fr>
-
-	* general/triu.m: Minimum change to allow sparse matrix. More needed
-	for arbitrary user type.
-	* general/tril.m: ditto.
-	* sparse/sprand.m: Doc fix.
-	* sparse/sprandn.m: Ditto.
-	* sparse/sprandsym.m: New function.
-	* audio/setaudio.m, general/cart2pol.m, general/cart2sph.m,
-	general/pol2cart.m, general/sph2cart.m, signal/freqz_plot.m:
-	Update for syntax error for latest texinfo.tex file.
-
-2006-02-02  John W. Eaton  <jwe@octave.org>
-
-	* plot/grid.m: Append ";\n" to "set grid" command.
-
-2006-02-02  A S Hodel  <hodelas@auburn.edu>
-
-	* control/base/rlocus.m: Don't atttempt to plot rlzer if it is empty.
-
-2006-01-13  John W. Eaton  <jwe@octave.org>
-
-	* audio/Makefile.in, control/base/Makefile.in,
-	control/hinf/Makefile.in, control/obsolete/Makefile.in,
-	control/system/Makefile.in, control/util/Makefile.in,
-	deprecated/Makefile.in, elfun/Makefile.in, finance/Makefile.in,
-	general/Makefile.in, image/Makefile.in, io/Makefile.in,
-	linear-algebra/Makefile.in, miscellaneous/Makefile.in,
-	optimization/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
-	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
-	special-matrix/Makefile.in, startup/Makefile.in,
-	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, time/Makefile.in, testfun/Makefile.in:
-	(all): Depend on PKG_ADD.
-	(PKG_ADD): New target.
-
-2006-01-13  Bill Denney  <bill@givebillmoney.com>
-
- 	* miscellaneous/dir.m: Add @seealso{} to docstring.
-
-2006-01-13  John W. Eaton  <jwe@octave.org>
-
-	* time/etime.m: Move here from miscellaneous/etime.m.
-	* time/is_leap_year.m: Move here from miscellaneous/is_leap_year.m.
-
-2006-01-13  Bill Denney  <bill@givebillmoney.com>
-
-	* miscellaneous/dir.m: Use filesep instead of "/" where needed.
-	* miscellaneous/fullfile.m: Likewise.
-
-2006-01-12  David Bateman  <dbateman@free.fr>
-
-	* general/blkdiag.m: Compatible behavior for empty matrices
-	* statistics/base/unidrnd.m: Documentation buglet.
-
-2005-12-14  David Bateman  <dbateman@free.fr>
-
-	* testfun/assert.m, testfun/fail.m, testfun/test.m, testfun/demo.m,
-	testfun/speed.m, testfun/example.m, Makefile.in: New files.
-
-	* Makefile.in (SUBDIRS): Include testfun.
-	* configure.in (AC_CONFIG_FILES): Include testfun/Makefile.
-
-	* miscellaneous/dir.m: Transpose sub-assignment for cleanness.
-
-	* general/__isequal__.m: Remove reference to getfield.
-
-	* plot/hist.m: Update test code for row/column discrepencies.
-	* signal/freqz.m: Alter output row/column for matlab compatibility.
-	Update the test code for this.
-	* sparse/spstats.m: Fix small bug in the dimension of output.
-
-2005-12-13  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* cell/cell2mat.m: New file, from octave-forge.
-
-2005-12-13  Ivana Varekova  <varekova@redhat.com>
-
-	* sparse/treeplot.m, sparse/etreeplot.m, sparse/gplot.m:
-	New graph theory functions.
-
-2005-12-13  John W. Eaton  <jwe@octave.org>
-
-	* general/blkdiag.m: Use "isempty" instead of @isempty.
-
-	* control/system/ss.m: Doc fix.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-12-12  Michael Zeising  <michael@michaels-website.de>
-
-	* audio/wavread.m, audio/wavwrite.m:
-	Correct scaling for 8-bit linear pcm samples.
-	Improve scaling for all other linear pcm resolutions.
-
-2005-12-07  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/moment.m: Don't save and restore warn_str_to_num.
-
-	* sparse/spdiags.m: Don't save and restore warn_fortran_indexing.
-	* strings/strjust.m: Likewise.
-
-	* general/shift.m: Don't save and restore warn_empty_list_elements.
-	* signal/arma_rnd.m: Likewise.
-	* strings/strcat.m: Likewise.
-	* control/base/__freqresp__.m: Likewise.
-	* control/base/place.m: Likewise.
-	* control/base/pzmap.m: Likewise.
-	* control/base/pzmap.m: Likewise.
-	* control/system/sysappend.m: Likewise.
-	* control/system/syscont.m: Likewise.
-	* control/system/sysdisc.m: Likewise.
-	* control/system/sysgroup.m: Likewise.
-	* control/system/tfout.m: Likewise.
-	* control/system/zpout.m: Likewise.
-	* control/util/__outlist__.m: Likewise.
-
-2005-12-06  John W. Eaton  <jwe@octave.org>
-
-	* audio/wavread.m, audio/wavwrite.m: Adapt to Octave coding style.
-	Avoid for loop in interleave/deinterleave steps.
-
-2005-12-06  Michael Zeising  <michael@michaels-website.de>
-
-	* audio/wavread.m, audio/wavwrite.m: New files.
-
-2005-12-06  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dir.m: Return Nx1 instead of 1xN struct array.
-
-2005-12-05  John W. Eaton  <jwe@octave.org>
-
-	* plot/axis.m: Add "## PKG_ADD: mark_as_command axis" line.
-
-2005-12-02  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/fileattrib.m: New function.
-
-2005-12-01  John W. Eaton  <jwe@octave.org>
-
-	* general/columns.m: Use size (x, 2) instead of [nr, nc] = size (x).
-	* general/rows.m: Use size (x, 1) instead of [nr, nc] = size (x).
-	From William Poetra Yoga Hadisoeseno <williampoetra@yahoo.com>.
-
-2005-11-30  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/krylov.m: Format doc string.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-11-23  William Poetra Yoga Hadisoeseno  <williampoetra@yahoo.com>
-
-	* general/blkdiag.m: Import from octave-forge.
-	Ignore empty matrices in the input.  Add tests.
-
-	* general/isequal.m, general/isequalwithequalnans.m:
-	New wrapper scripts for general/__isequal__.m.
-	* general/__isequal__.m: Rename from general/isequal.m.
-	New arg, nans_compare_equal.
-
-2005-11-29  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/ver.m: Use new uname built-in function instead of
-	calling system.  Only append octave_forge_string if
-	OCTAVE_FORGE_VERSION exists.  Use puts instead of disp.
-	Call license instead of hard-coding license info here.
-
-	* miscellaneous/license.m: Use persistent instead of global for
-	__octave_licenses__.  Use puts instead of disp.
-	Use getuid and getpwuid instead of calling unix ("id -un").
-	If nargout = 1, return license info instead of printing usage message.
-
-2005-11-29  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* miscellaneous/ver.m: New file.
-	* miscellaneous/license.m: New file.
-
-2005-11-22  John W. Eaton  <jwe@octave.org>
-
-	* plot/axis.m: Use %.16g instead of just %g to format ranges for
-	gnuplot set command.
-
-2005-11-15  John W. Eaton  <jwe@octave.org>
-
-	* general/shiftdim.m: Doc fix.
-
-2005-11-07  Keith Goodman  <kwgoodman@gmail.com>
-
-	* set/unique.m: Doc string fix.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (distclean, maintainer-clean):
-	Also remove autom4te.cache directory.
-	From Quentin Spencer  <qspencer@ieee.org>.
-
-2005-10-28  John W. Eaton  <jwe@octave.org>
-
-	* general/shiftdim.m: Compatibility fix for row vectors.
-	Correct check for non-scalar non-integer shift.  For positive
-	N, shift is remainder of N and number of dims.  Always return NS.
-	Simplify.
-
-2005-10-18  Keith Goodman  <kwgoodman@gmail.com>
-
-	* general/randperm.m: Improve compatibility by allowing input
-	value of zero.
-
-2005-10-13  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt__.m, plot/__errplot__.m, plot/replot.m:
-	If in multiplot mode, clear plot before issuing new plot command.
-
-	* plot/__setup_plot__.m: New function.
-	* plot/__plt__.m, plot__errplot__.m: Use it.
-	Handle multiplot data and offsets here.
-
-	* plot/__plot_globals__.m: Also keep track of multiplot options.
-	Move initialization to __setup_plot__.m.
-
-	* plot/subplot.m: Multiplot globals now in __plot_globals__.m.
-	Don't reset gnuplot_command_replot.
-
-	* plot/replot.m: Handle multiplot data and offsets here.
-	* plot__axis_label__.m, plot/axis.m, plot/grid.m,
-	plot/plot_border.m, plot/plot.m, plot/plot_title.m,
-	plot/top_title.m: Call replot, not __gnuplot_replot__.
-
-2005-10-12  John W. Eaton  <jwe@octave.org>
-
-	* plot/figure.m: Handle __current_figure__, not gnuplot details.
-
-2005-10-04  Rafael Laboissiere  <rafael@debian.org>
-
-	* binoinv.m, chi2pdf.m, frnd.m, poissinv.m, tinv.m, trnd.m,
-	weibrnd.m: Removed calls and references to deprecated _pdf and
-	_inv functions.
-	* chi2pdf.m: Fixed typos in the documentation.
-
-2005-09-28  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/single.m: New function.
-
-	* statistics/base/unidrnd.m: New function.
-
-2005-09-27  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/dir.m: Filename never includes directory part.
-
-2005-09-22  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/residue.m: Use logical indexing instead of find..
-
-2005-09-22  Julius Smith  <jos@ccrma.stanford.edu>
-
-	* polynomial/residue.m: Avoid division by zero for pure imaginary
-	and zero poles.
-
-2005-09-22  Bill Denney  <denney@seas.upenn.edu>
-
-	* strings/deblank.m: Handle cell arrays.
-	* strings/split.m: New argument, N, to limit number of splits.
-
-2005-09-22  Miroslaw Kwasniak  <mirek@zind.ikem.pwr.wroc.pl>
-
-	* plot/__pltopt1__.m: Handle plot colors "w" and "k" separately.
-
-2005-09-20  "Orestes Mas"  <orestes@tsc.upc.edu>
-
-	* control/base/rlocus.m: Doc fix.
-
-2005-09-20  John W. Eaton  <jwe@octave.org>
-
-	* general/isvector.m: Improve compatibility.
-
-	* general/postpad.m: Allow first argument to be a scalar.
-	Allow padding to extend dimensionality.
-	* general/prepad.m: Likewise.
-
-2005-09-14  Daniel  <durbano@shbano.com>
-
-	* statistics/tests/bartlett_test.m, linear-algebra/cross.m,
-	statistics/distributions/discrete_cdf.m, general/fliplr.m,
-	/control/base/dgram.m: Doc string fixes.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-09-12  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* saveimage.m: Do not ignore most significant bit when writing
-	black and white images to file.
-
-2005-09-07  Bill Denney  <denney@seas.upenn.edu>
-
-	* audio/playaudio.m, control/base/__bodquist__.m,
-	control/base/lqg.m, control/obsolete/dezero.m,
-	control/system/__syschnamesl__.m, control/system/__sysconcat__.m,
-	control/system/c2d.m, control/system/cellidx.m,
-	control/system/d2c.m, control/system/dmr2d.m,
-	control/system/is_signal_list.m, control/system/listidx.m,
-	control/system/ss.m, control/system/sysappend.m,
-	control/system/sysconnect.m, control/system/sysdup.m,
-	control/system/sysgetsignals.m, control/system/sysidx.m,
-	control/system/sysprune.m, control/system/syssetsignals.m,
-	control/system/tfout.m, control/system/zpout.m,
-	control/util/prompt.m, control/util/sortcom.m,
-	control/util/strappend.m, finance/fv.m, finance/nper.m,
-	finance/pmt.m, finance/pv.m, finance/rate.m, general/diff.m,
-	general/num2str.m, general/repmat.m, general/sortrows.m,
-	general/strerror.m, image/colormap.m, image/imshow.m,
-	image/loadimage.m, image/saveimage.m, linear-algebra/norm.m,
-	miscellaneous/fileparts.m, miscellaneous/popen2.m,
-	plot/__axis_label__.m, plot/__errcomm__.m, plot/__plt1__.m,
-	plot/__plt2__.m, plot/__plt__.m, plot/__pltopt1__.m,
-	plot/__pltopt__.m, plot/axis.m, plot/bottom_title.m, plot/close.m,
-	plot/grid.m, plot/hist.m, plot/plot_border.m, plot/polar.m,
-	plot/print.m, plot/title.m, plot/top_title.m,
-	polynomial/polyout.m, set/unique.m, signal/freqz.m, signal/stft.m,
-	statistics/base/mean.m, statistics/base/moment.m,
-	statistics/tests/cor_test.m,
-	statistics/tests/kolmogorov_smirnov_test.m,
-	statistics/tests/kolmogorov_smirnov_test_2.m,
-	statistics/tests/prop_test_2.m, statistics/tests/sign_test.m,
-	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
-	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
-	statistics/tests/var_test.m, statistics/tests/welch_test.m,
-	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
-	statistics/tests/z_test_2.m, strings/base2dec.m, strings/blanks.m,
-	strings/deblank.m, strings/dec2base.m, strings/index.m,
-	strings/rindex.m, strings/split.m, strings/str2mat.m,
-	strings/str2num.m, strings/strcat.m, strings/strcmpi.m,
-	strings/strncmp.m, strings/strrep.m, strings/substr.m:
-	Avoid deprecated functions.  Use ischar instead of isstr.  Use
-	isvector instead of is_vector.  Use isstruct instead of
-	is_struct.  Use char instead of setstr.
-
-2005-08-31  Daniel  <durbano@shbano.com>
-
-	* special-matrix/invhilb.m, statistics/base/iqr.m,
-	control/system/is_controllable.m, set/ismember.m: Doc fixes.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-08-29  Bill Denney  <denney@seas.upenn.edu>
-
-	* image/saveimage.m: Open output file in binary mode.
-
-	* miscellaneous/bug_report.m: Open prefs file in text mode.
-
-2005-08-16  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/computer.m: Handle optional maxsize and endian
-	outputs.
-
-2005-08-15  John W. Eaton  <jwe@octave.org>
-
-	* strings/strcat.m: Allow single argument.
-
-2005-07-18  John W. Eaton  <jwe@octave.org>
-
-	* strings/strcmp.m: Delete.
-
-2005-07-13  John W. Eaton  <jwe@octave.org>
-
-	* deprecated/hypergeometric_rnd.m: Preserve compatibility with old
-	versions of Octave.
-
-2005-07-13  Ben Barrowes  <barrowes@alum.mit.edu>
-
-	* statistics/distributions/betacdf.m: Rename from beta_cdf.m.
-	* statistics/distributions/betainv.m: Rename from beta_inv.m.
-	* statistics/distributions/betapdf.m: Rename from beta_pdf.m.
-	* statistics/distributions/betarnd.m: Rename from beta_rnd.m.
-	* statistics/distributions/binocdf.m: Rename from binomial_cdf.m.
-	* statistics/distributions/binoinv.m: Rename from binomial_inv.m.
-	* statistics/distributions/binopdf.m: Rename from binomial_pdf.m.
-	* statistics/distributions/binornd.m: Rename from binomial_rnd.m.
-	* statistics/distributions/chi2cdf.m: Rename from chisquare_cdf.m.
-	* statistics/distributions/chi2inv.m: Rename from chisquare_inv.m.
-	* statistics/distributions/chi2pdf.m: Rename from chisquare_pdf.m.
-	* statistics/distributions/chi2rnd.m: Rename from chisquare_rnd.m.
-	* statistics/distributions/expcdf.m: Rename from exponential_cdf.m.
-	* statistics/distributions/expinv.m: Rename from exponential_inv.m.
-	* statistics/distributions/exppdf.m: Rename from exponential_pdf.m.
-	* statistics/distributions/exprnd.m: Rename from exponential_rnd.m.
-	* statistics/distributions/fcdf.m: Rename from f_cdf.m.
-	* statistics/distributions/finv.m: Rename from f_inv.m.
-	* statistics/distributions/fpdf.m: Rename from f_pdf.m.
-	* statistics/distributions/frnd.m: Rename from f_rnd.m.
-	* statistics/distributions/gamcdf.m: Rename from gamma_cdf.m.
-	* statistics/distributions/gaminv.m: Rename from gamma_inv.m.
-	* statistics/distributions/gampdf.m: Rename from gamma_pdf.m.
-	* statistics/distributions/gamrnd.m: Rename from gamma_rnd.m.
-	* statistics/distributions/geocdf.m: Rename from geometric_cdf.m.
-	* statistics/distributions/geoinv.m: Rename from geometric_inv.m.
-	* statistics/distributions/geopdf.m: Rename from geometric_pdf.m.
-	* statistics/distributions/geornd.m: Rename from geometric_rnd.m.
-	* statistics/distributions/hygecdf.m: Rename from hypergeometric_cdf.m.
-	* statistics/distributions/hygeinv.m: Rename from hypergeometric_inv.m.
-	* statistics/distributions/hygepdf.m: Rename from hypergeometric_pdf.m.
-	* statistics/distributions/hygernd.m: Rename from hypergeometric_rnd.m.
-	* statistics/distributions/logncdf.m: Rename from lognormal_cdf.m.
-	* statistics/distributions/logninv.m: Rename from lognormal_inv.m.
-	* statistics/distributions/lognpdf.m: Rename from lognormal_pdf.m.
-	* statistics/distributions/lognrnd.m: Rename from lognormal_rnd.m.
-	* statistics/distributions/normcdf.m: Rename from normal_cdf.m.
-	* statistics/distributions/norminv.m: Rename from normal_inv.m.
-	* statistics/distributions/normpdf.m: Rename from normal_pdf.m.
-	* statistics/distributions/normrnd.m: Rename from normal_rnd.m.
-	* statistics/distributions/poisscdf.m: Rename from poisson_cdf.m.
-	* statistics/distributions/poissinv.m: Rename from poisson_inv.m.
-	* statistics/distributions/poisspdf.m: Rename from poisson_pdf.m.
-	* statistics/distributions/poissrnd.m: Rename from poisson_rnd.m.
-	* statistics/distributions/tcdf.m: Rename from t_cdf.m.
-	* statistics/distributions/tinv.m: Rename from t_inv.m.
-	* statistics/distributions/tpdf.m: Rename from t_pdf.m.
-	* statistics/distributions/trnd.m: Rename from t_rnd.m.
-	* statistics/distributions/unifcdf.m: Rename from unifoxorm_cdf.m.
-	* statistics/distributions/unifinv.m: Rename from uniform_inv.m.
-	* statistics/distributions/unifpdf.m: Rename from uniform_pdf.m.
-	* statistics/distributions/unifrnd.m: Rename from uniform_rnd.m.
-	* statistics/distributions/weibcdf.m: Rename from weibull_cdf.m.
-	* statistics/distributions/weibinv.m: Rename from weibull_inv.m.
-	* statistics/distributions/weibpdf.m: Rename from weibull_pdf.m.
-	* statistics/distributions/wienrnd.m: Rename from wiener_rnd.m.
-
-	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
-	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
-	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
-	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
-	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
-	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
-	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
-	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
-	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
-	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
-	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
-	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
-	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
-	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
-	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
-	deprecated/hypergeometric_rnd.m, deprecated/lognormal_cdf.m,
-	deprecated/lognormal_inv.m, deprecated/lognormal_pdf.m,
-	deprecated/lognormal_rnd.m, deprecated/normal_cdf.m,
-	deprecated/normal_inv.m, deprecated/normal_pdf.m,
-	deprecated/normal_rnd.m, deprecated/poisson_cdf.m,
-	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
-	deprecated/poisson_rnd.m, deprecated/t_cdf.m, deprecated/t_inv.m,
-	deprecated/t_pdf.m, deprecated/t_rnd.m, deprecated/uniform_cdf.m,
-	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
-	deprecated/uniform_rnd.m, deprecated/weibull_cdf.m,
-	deprecated/weibull_inv.m, deprecated/weibull_pdf.m,
-	deprecated/wiener_rnd.m: New files.
-
-2005-07-08  John W. Eaton  <jwe@octave.org>
-
-	* statistics/distributions/weibrnd.m: Rename from weibull_rnd.m.
-	* deprecated/weibull_rnd.m: New file.
-
-2005-07-08  cctsim  <cctsim@yahoo.co.uk>
-
-	* strings/dec2base.m: Allow matrix arguments.
-
-2005-07-08  John W. Eaton  <jwe@octave.org>
-
-	* plot/__errplot__.m: Use __plot_globals__.
-	* plot/__plt__.m: Likewise.
-	* plot/figure.m: Likewise.
-
-	* plot/hold.m: New file.
-	* plot/ishold.m: New file.
-	* plot/__plot_globals__.m: New file.
-
-2005-07-05  cctsim  <cctsim@yahoo.co.uk>
-
-	* strings/dec2base.m: Don't remove all leading zeros if result is zero.
-
-2005-07-05  John W. Eaton  <jwe@octave.org>
-
-	* strings/findstr.m: Return [] for no matches.
-
-2005-06-17  Keith Goodman  <kwgoodman@gmail.com>
-
-	* miscellaneous/tic.m: Fix doc string.
-
-2005-06-15  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/polyfit.m: Force return value to be a row vector.
-
-2005-06-15  Tom Holroyd  <tomh@kurage.nimh.nih.gov>
-
-	* general/isequal.m: Correct nargin check.
-
-2005-06-14  John W. Eaton  <jwe@octave.org>
-
-	* general/isvector.m: Handle N-d arrays.
-	From Bill Denney <denney@seas.upenn.edu>.
-
-2005-06-02  Ben Barrowes  <barrowes@alum.mit.edu>
-
-	* plot/meshgrid.m: Handle 3 input arguments.
-
-2005-06-02  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/freqz.m: Use correct calculations when given a vector of
-	frequencies.  Improve accuracy of returned frequency vector.
-	Improve speed for medium length filters (at a slight cost for slow
-	filters).  Add test cases.
-
-2005-05-27  "Dmitri A. Sergatskov"  <dasergatskov@gmail.com>
-
-	* plot/loglog.m: Fix set commands.
-
-2005-05-25  John W. Eaton  <jwe@octave.org>
-
-	* plot/sombrero.m: Default n to 41 if nargin == 0.
-
-2005-05-24  John W. Eaton  <jwe@octave.org>
-
-	* statistics/tests/anova.m: Use mean (y(:)) to compute total_mean.
-
-	* strings/strncmp.m: New file, from Tom Holroyd
-	<tomh@kurage.nimh.nih.gov>.
-
-	* strings/strcmp.m: Return logical values in all cases.
-
-2005-05-23  John W. Eaton  <jwe@octave.org>
-
-	* plot/orient.m: New file.  Adapt to Octave coding style.
-	Texinfoize doc string.
-
-	* plot/print.m: New file.  Adapt to Octave coding style. Include
-	PKG_ADD command.  Use set terminal consistently	throughout.  Use
-	set terminal push/pop and unconditionally set output to screen
-	when done to avoid requiring gget.  Use a cell array for dev_list
-	and cellidx to search for items in the list.  Delete local
-	variable endl.  Don't set and restore automatic_replot.  Use {}
-	instead of nth to index varargin.  Delete local variable
-	va_arg_cnt.
-
-2005-05-18  John W. Eaton  <jwe@octave.org>
-
-	* general/num2str.m: Return early if X is a character string.
-
-2005-05-11  John W. Eaton  <jwe@octave.org>
-
-	* strings/findstr.m: Allow non-string arguments for compatiblity.
-	From Tom Holroyd <tomh@kurage.nimh.nih.gov>.
-
-	* plot/polar.m: Don't call __pltopt__ here.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* mkdoc: Print header message.
-
-2005-04-28  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CONFIG_SRCDIR): Look for startup/inputrc, not
-	startup/octaverc.
-
-2005-04-28  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* image/imshow.m: Handle various image depths and 3d RGB images.
-	(__im_numeric_limits__): New internal function.
-
-2005-04-28  toni saarela  <toni.saarela@helsinki.fi>
-
-	* statistics/tests/anova.m: Compute total_mean as mean of all
-	data, not mean of group_mean.
-
-2005-04-28  John W. Eaton  <jwe@octave.org>
-
-	* startup/local-rcfile: New file.
-	* startup/main-rcfile: Rename from startup/octaverc.
-	* startup/Makefile.in (SOURCES): Add inputrc to the list.
-	(install install-strip): Install main-rcfile in $(fcnfiledir)/startup.
-	Install local-rcfile in $(localfcnfiledir)/startup.
-
-2005-04-28  Keith Goodman  <kwgoodman@gmail.com>
-
-	* startup/inputrc: New file.
-	* startup/octaverc: Configure readline using inputrc from
-	startupfiledir.
-	* startup/Makefile.in (install, install-strip): Install octaverc
-	in $(fcnfiledir)/startup.
-
-2005-04-27  John W. Eaton  <jwe@octave.org>
-
-	* optimization/qp.m: Define n_in after removing -Inf bounds from Ain.
-
-2005-04-21  John W. Eaton  <jwe@octave.org>
-
-	* optimization/glpk.m: Handle SENSE argument.
-
-	* optimization/qp.m, optimization/sqp.m: New files.
-
-2005-04-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (clean, distclean, maintainer-clean):
-	Avoid duplication in rules.
-
-2005-03-28  John W. Eaton  <jwe@octave.org>
-
-	* plot/contour.m, plot/mesh.m: Continue to use __gnuplot_raw__ for
-	setting {no,}parametric.
-	* plot/figure.m: Likewise, for setting terminal type.
-
-	*  __axis_label__.m:, plot/axis.m, plot/bottom_title.m,
-	plot/contour.m, plot/figure.m, plot/multiplot.m, plot/mplot.m,
-	plot/plot_border.m, plot/subplot.m, plot/subwindow.m,
-	plot/title.m, plot/top_title.m: Avoid eval.
-
-2005-03-28  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
-
-	* plot/__axis_label__.m, plot/axis.m, plot/grid.m,
-	plot/plot_border.m, plot/replot.m, plot/title.m, plot/top_title.m:
-	Use __gnuplot_replot__ instead of replot.
-
-	* plot/__axis_label__.m, plot/axis.m, plot/bottom_title.m,
-	plot/contour.m, plot/errorbar.m, plot/figure.m, plot/grid.m,
-	plot/loglogerr.m, plot/loglog.m, plot/mesh.m, plot/mplot.m,
-	plot/multiplot.m, plot/oneplot.m, plot/plot_border.m, plot/plot.m,
-	plot/polar.m, plot/semilogxerr.m, plot/semilogx.m,
-	plot/semilogyerr.m, plot/semilogy.m, plot/shg.m, plot/subplot.m,
-	plot/subwindow.m, plot/title.m, plot/top_title.m:
-	Use __gnuplot_raw__ instead of __gnuplot_set__.
-
-	* plot/replot.m: Use __gnuplot_replot__, not __greplot__.
-
-2005-03-24  John W. Eaton  <jwe@octave.org>
-
-	* optimization/glpkmex.m: Texinfoize Doc string.
-	* optimization/glpk.m: Likewise.
-	Allow VARTYPE and CTYPE to be row or column vectors of characters
-	(row vectors are orginary character strings).
-	* optimization/glpkparam.m: Delete.
-
-2005-03-24  Quentin Spencer  <qspencer@ieee.org>
-
-	* statistics/base/mean.m: Allow DIMS arg greater than the number
-	of dimensions of X.
-
-2005-03-23  John W. Eaton  <jwe@octave.org>
-
-	* general/tril.m, general/triu.m: Return value of same class as
-	argument.
-
-	* optimization/glpk.m: Simplify interface.  By default, solve
-	standard LP min C'*x s.t. A*x = b, x >= 0.
-	* optimization/glpkmex.m: New file.
-
-2005-03-22  John W. Eaton  <jwe@octave.org>
-
-	* configure.in (AC_CONFIG_FILES): Add optimization/Makefile to the
-	list.
-
-	* optimization/glpk.m: Adapt to Octave coding style.
-	No need for varargout or varargin.
-	Print usage message if nargin > 11.
-	Allow any value of nargout.
-	Use repmat (C, nr, nc) instead of char (C * ones (nr, nc)).
-	Avoid looping when checking character classes.
-
-	* optimization: New directory.
-	* Makefile.in (SUBDIRS): Add it to the list.
-	* optimization/Makefile.in: New file.
-	* optimization/glpk.m, optimization/glpkparams.m,
-	optimization/glpktest1, optimization/glpktest2: New files.
-
-2005-03-16  S�ren Hauberg  <soren@hauberg.org>
-
-	* strings/split.m: Quick return for empty second arg.
-	Improve warning for multi-line strings.
-	Speed up by avoiding sprintf in loop and eval.
-
-2005-03-16  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* polynomial/polyderiv.m : Accept a*b, a/b.  Auto-reduce common terms.
-	* polynomial/polyder.m: Ditto.
-	* polynomial/polygcd.m: New function.
-
-2005-03-16  John W. Eaton  <jwe@octave.org>
-
-	* control/base/__stepimp__.m, control/base/bode.m,
-	control/base/frdemo.m, control/base/nichols.m,
-	control/base/nyquist.m, control/base/pzmap.m,
-	control/base/rldemo.m, control/base/rlocus.m,
-	control/hinf/dhinfdemo.m, control/hinf/hinfdemo.m,
-	plot/__axis_label__.m, plot/__errplot__.m, plot/__plt__.m,
-	plot/axis.m, plot/bar.m, plot/bottom_title.m, plot/contour.m,
-	plot/errorbar.m, plot/figure.m, plot/grid.m, plot/loglog.m,
-	plot/loglogerr.m, plot/mesh.m, plot/meshgrid.m, plot/mplot.m,
-	plot/multiplot.m, plot/oneplot.m, plot/plot.m, plot/plot_border.m,
-	plot/polar.m, plot/semilogx.m, plot/semilogxerr.m,
-	plot/semilogy.m, plot/semilogyerr.m, plot/shg.m, plot/stairs.m,
-	plot/subplot.m, plot/subwindow.m, plot/title.m, plot/top_title.m,
-	plot/xlabel.m, quaternion/demoquat.m,
-	quaternion/qcoordinate_plot.m, signal/freqz_plot.m, sparse/spy.m,
-	statistics/base/ppplot.m, statistics/base/qqplot.m:
-	Use __gnuplot_plot__ instead of gplot, __gnuplot_splot__ instead
-	of gsplot, and __gnuplot_set__ instead of gset. Remove gplot,
-	gsplot from @seealso docs.
-
-	* plot/replot.m: New file.
-
-2005-03-15  David Bateman  <dbateman@free.fr>
-
-	* set/unique.m, set/ismember.m: Handle cell arrays.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* statistics/Makefile.in (bin-dist): Delete target.
-	(BINDISTSUBDIRS): Delete variable.
-	* control/Makefile.in: Likewise.
-
-	* audio/Makefile.in (bin-dist): Delete target.
-	(BINDISTFILES): Delete variable.
-	* control/base/Makefile.in: Likewise.
-	* control/hinf/Makefile.in: Likewise.
-	* control/obsolete/Makefile.in: Likewise.
-	* control/system/Makefile.in: Likewise.
-	* control/util/Makefile.in: Likewise.
-	* deprecated/Makefile.in: Likewise.
-	* elfun/Makefile.in: Likewise.
-	* finance/Makefile.in: Likewise.
-	* general/Makefile.in: Likewise.
-	* image/Makefile.in: Likewise.
-	* sparse/Makefile.in: Likewise.
-	* io/Makefile.in: Likewise.
-	* plot/Makefile.in: Likewise.
-	* Makefile.in: Likewise.
-	* miscellaneous/Makefile.in: Likewise.
-	* linear-algebra/Makefile.in: Likewise.
-	* polynomial/Makefile.in: Likewise.
-	* quaternion/Makefile.in: Likewise.
-	* set/Makefile.in: Likewise.
-	* signal/Makefile.in: Likewise.
-	* specfun/Makefile.in: Likewise.
-	* special-matrix/Makefile.in: Likewise.
-	* startup/Makefile.in: Likewise.
-	* statistics/base/Makefile.in: Likewise.
-	* statistics/distributions/Makefile.in: Likewise.
-	* statistics/models/Makefile.in: Likewise.
-	* statistics/tests/Makefile.in: Likewise.
-	* strings/Makefile.in: Likewise.
-	* time/Makefile.in: Likewise.
-
-2005-03-08  John W. Eaton  <jwe@octave.org>
-
-	* general/repmat.m: Correctly diagnose 3-argument non-scalar
-	dimensions case.  From Matthew A Swabey <mas01r@ecs.soton.ac.uk>.
-
-2005-03-04  John W. Eaton  <jwe@octave.org>
-
-	* plot/clg.m: New file.
-
-2005-03-03  John W. Eaton  <jwe@octave.org>
-
-	* general/isequal.m, general/sortrows.m, set/ismember.m,
-	set/setdiff.m, strings/str2double.m, strings/strmatch.m,
-	strings/strcmpi.m:
-	New files from Octave-forge.  Adapt to Octave coding standards.
-
-2005-03-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* statistics/distributions/binomial_pdf.m: Extend the feasible
-	computation range.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	Sparse merge.
-
-	2005-01-23  David Bateman  <dbateman@free.fr>
-
-	* sparse/randperm.m: Delete duplicate randperm.m.
-
-	2005-01-10  John W. Eaton  <jwe@octave.org>
-
-	* sparse/Makefile.in: New file.
-	* configure.in (AC_CONFIG_FILES): Add sparse/Makefile to the list.
-
-	2005-01-07  David Bateman  <dbateman@free.fr>
-
-	* set/unique.m: import file from octave-forge.
-
-	2005-01-05  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: include sparse directory in SUBDIRS.
-
-	2004-12-30  John W. Eaton  <jwe@octave.org>
-
-	* sparse/nzmax.m: Delete (there is an nzmax function in
-	src/DLD-FUNCTIONS/sparse.cc).
-
-	2004-12-28  John W. Eaton  <jwe@octave.org>
-
-	Merge of sparse code from David Bateman <dbateman@free.fr> and
-	Andy Adler <adler@site.uottawa.ca>.
-
-	* sparse/colperm.m, sparse/nonzeros.m, sparse/nzmax.m,
-	sparse/randperm.m, sparse/spalloc.m, sparse/spconvert.m,
-	sparse/spdiags.m, sparse/speye.m, sparse/spfun.m, sparse/sphcat.m,
-	sparse/spones.m, sparse/sprand.m, sparse/sprandn.m,
-	sparse/spstats.m, sparse/spvcat.m, sparse/spy.m: New files.
-
-	* sparse: New directory.
-
-2005-02-22  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/residue.m: Force prepad to always create row vectors.
-
-	* polynomial/poly.m: Quick return if m is 0.
-	From Carmen Navarrete <carmen.navarrete@uam.es>.
-
-2005-02-21  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/poisson_rnd.m: fix for lambda of zero.
-	From Mark van Rossum <mvanross@inf.ed.ac.uk>.
-	Fix for row vectors with at least one element of lambda not in
-	(0, Inf).
-
-2005-02-21  John W. Eaton  <jwe@octave.org>
-
-	* statistics/base/qqplot.m: Use feval instead of eval.
-
-	* plot/grid.m, plot/plot_border.m, plot/title.m, plot/top_title.m,
-	plot/__axis_label__.m: Issue replot command.
-
-2005-02-09  John W. Eaton  <jwe@octave.org>
-
-	* polynomial/polyderiv.m: Force P to be a row vector.
-
-2005-02-08  John W. Eaton  <jwe@octave.org>
-
-	* strings/dec2base.m: Don't delete leading zero if third arg is
-	provided and len <= computed max_len.
-
-2005-01-27  David Bateman  <dbateman@free.fr>
-
-	* strings/dec2base.m: Be even more careful about handling all digits.
-
-2005-01-27  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* strings/dec2base.m: Use integer arithmetic to count number of digits.
-
-2005-01-27  Benjamin Hall  <benjamin.hall@pw.utc.com>
-
-	* statistics/base/median.m: Make it work for the scalar case too.
-
-2005-01-25  Daniel J Sebald  <daniel.sebald@ieee.org>
-
-	* plot/__plt__.m: Initialize fmt and sep outside of loop.
-	Simplify logic for decoding args.
-
-2005-01-24  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plr__.m, plot/__plr2__.m: Pass name of caller to __plt__.
-
-	* plot/__plt__.m: No need to save and reset hold state now.
-	(first_plot): Delete unused variable.
-
-	* plot/__plr2__.m, plot/__plt2__.m: Improve diagnostics.
-
-	* plot/__plr__.m: Use __plt__, not specific __pltXX__ functions.
-	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
-	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
-	plot/__plt2vv__.m:
-	Return data and gnuplot commands instead of evaluating them.
-	* plot/__plt__.m: Handle evaluation of all gnuplot commands here.
-	Based on changes from Daniel J Sebald <daniel.sebald@ieee.org>.
-
-2005-01-18  John W. Eaton  <jwe@octave.org>
-
-	* linear-algebra/cross.m: Allocate idx1 before use.
-
-2004-12-08  Heikki Junes  <Heikki.Junes@hut.fi>
-
-	* statistics/base/range.m: Fix varargin usage.
-
-2004-12-02  Pascal A. Dupuis  <Pascal.Dupuis@esat.kuleuven.ac.be>
-
-	* strings/deblank.m: Remove all trailing whitespace (check with
-	isspace), not just SPC.
-
-2004-12-02  Balint Reczey  <balint_reczey@yahoo.com>
-
-	* statistics/base/moment.m: Fix argument parsing for N-d arrays.
-
-2004-11-09  John W. Eaton  <jwe@octave.org>
-
-	* miscellaneous/fileparts.m: Allow filenames with no extension.
-	From Julius Smith <jos@ccrma.stanford.edu>.
-
-2004-11-08  John W. Eaton  <jwe@octave.org>
-
-	* plot/__plt2vm__.m: Delete debugging statement.
-	From Dmitri A. Sergatskov <dmitri@unm.edu>.
-
-2004-11-04  John W. Eaton  <jwe@octave.org>
-
-	* plot/hist.m: Always return row vectors for vector args.
-
-2004-09-23  John W. Eaton  <jwe@octave.org>
-
-	* strings/strcmp.m: If args are not strings or cell arrays of
-	strings, return zero instead of reporting an error.
-
-2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
-
-	* control/base/analdemo.m, control/base/are.m, control/base/bddemo.m,
-	control/base/controldemo.m, control/base/damp.m, control/base/dare.m,
-	control/base/dcgain.m, control/base/dgram.m, control/base/dlyap.m,
-	control/base/dre.m, control/base/frdemo.m, control/base/gram.m,
-	control/base/impulse.m, control/base/lqp.m, control/base/obsv.m,
-	control/base/pzmap.m, control/base/rldemo.m, control/hinf/h2norm.m,
-	control/hinf/hinfsyn.m, control/hinf/hinfsyn_ric.m,
-	control/hinf/is_dgkf.m, control/system/c2d.m,
-	control/system/is_detectable.m, control/system/is_sample.m,
-	control/system/is_siso.m, control/system/is_stable.m,
-	control/system/ss2sys.m, control/system/ss.m, control/system/sys2ss.m,
-	control/system/sys2tf.m, control/system/sys2zp.m,
-	control/system/sysappend.m, control/system/sysconnect.m,
-	control/system/sysdisc.m, control/system/sysdup.m,
-	control/system/sysgetsignals.m, control/system/sysmult.m,
-	control/system/syssetsignals.m, control/system/syssub.m,
-	control/system/tf2sys.m, control/system/ugain.m,
-	control/system/zp2ss.m, control/system/zp2sys.m,
-	control/system/zp2tf.m, control/util/axis2dlim.m, polynomial/roots.m,
-	special-matrix/toeplitz.m: Fix typos in doc strings.
-
-	* control/base/are.m, control/base/dare.m, control/base/lsim.m,
-	control/base/ltifr.m, control/base/place.m,control/base/tzero2.m,
-	control/base/tzero.m, control/hinf/hinf_ctr.m, control/hinf/wgt1o.m,
-	ontrol/system/is_abcd.m, control/system/parallel.m,
-	control/system/ss2tf.m, control/system/ss2zp.m, control/system/ss.m,
-	control/system/sysappend.m, control/system/sysconnect.m,
-	control/system/sysdup.m, control/system/sysgroup.m,
-	control/system/sysprune.m, control/system/sysreorder.m,
-	control/system/sysscale.m, control/system/syssub.m,
-	control/system/tf2ss.m, control/system/tf2zp.m, control/util/zgfmul.m,
-	control/util/zginit.m, control/util/zgscal.m, elfun/acoth.m,
-	polynomial/polyout.m, specfun/log2.m:
-	Add output arguments in doc strings.
-
-	* control/base/are.m, control/base/bode_bounds, control/base/bode.m,
-	control/base/__bodquist__.m, control/base/ctrb.m, control/base/dare.m,
-	control/base/DEMOcontrol.m, control/base/dlyap.m, control/base/dre.m,
-	control/base/freqchkw.m, control/base/__freqresp__.m,
-	control/base/__freqresp__.m, control/base/lqp.m, control/base/lqr.m,
-	contol/base/lsim.m, control/base/lyap.m, control/base/nyquist.m,
-	control/base/obsv.m, control/base/place.m, control/base/pzmap.m,
-	control/base/__stepimp__.m, control/base/step.m, control/base/tzero2.m
-	control/base/tzero.m, control/hinf/dhinfdemo.m, control/hinf/h2norm.m,
-	control/hinf/h2syn.m, control/hinf/hinfdemo.m,
-	control/hinf/hinfnorm.m, control/hinf/hinfsyn_chk.m,
-	control/hinf/hinfsyn.m, control/hinf/is_dgkf.m,
-	control/obsolete/syschnames.m, control/obsolete/syschnames.m,
-	control/system/c2d.m, control/system/is_abcd.m,
-	control/system/is_controllable.m, control/system/is_detectable.m,
-	control/system/is_observable.m, control/system/is_stable.m,
-	control/system/jet707.m, control/system/ord2.m,
-	control/system/starp.m, control/system/sys2fir.m,
-	control/system/sys2ss.m, control/system/sys2tf.m,
-	control/system/sys2zp.m, control/system/syscont.m,
-	control/system/sysdisc.m, control/system/sysdup.m,
-	control/system/sysgettype.m, control/system/sysgroup.m,
-	control/system/sysmult.m, control/system/sysprune.m,
-	control/system/sysreorder.m, control/system/sysscale.m,
-	control/system/syssetsignals.m, control/system/sysupdate.m,
-	control/system/tf2ss.m, control/system/tf2sys.m,
-	control/system/zp2ss.m, control/system/zp2sys.m,
-	control/util/axis2dlim.m, control/util/prompt.m,
-	control/util/zgfmul.m, control/util/zginit.m,
-	control/util/__zgpbal__.m, control/util/zgscal.m:
-	Use @var, @strong, @command, @math, @acronym, @table and @cite
-	in doc strings.
-
-	* control/base/bode_bounds.m, control/base/ctrb.m, control/base/dre.m,
-	control/base/dgram.m, control/base/dlyap.m, control/base/ltifr.m,
-	control/base/nyquist.m, control/base/obsv.m, control/base/tzero.m,
-	control/hinf/dgkfdemo.m, control/hinf/dhinfdemo.m,
-	control/hinf/h2norm.m, control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
-	control/hinf/hinfdemo.m, control/hinf/hinfnorm.m,
-	control/hinf/hinfsyn_chk.m, control/hinf/hinfsyn.m,
-	control/hinf/wgt1o.m, control/obsolete/syschnames.m,
-	control/system/c2d.m, control/system/fir2sys.m,
-	control/system/is_stabilizable.m, control/system/jet707.m,
-	control/system/ord2.m, control/system/ss2tf.m, control/system/tf2ss.m,
-	control/util/zgshsr.m, polynomial/polyout.m:
-	New @tex section(s) in doc strings for better formating of printed
-	output.
-
-	* control/base/__freqresp__.m, control/base/nyquist.m,
-	control/base/__stepimp__.m, control/hinf/hinfdemo.m,
-	control/obsolete/syschnames.m, control/system/sysprune.m:
- 	Use proper double quote marks for TeX.
-
-	* control/base/DEMOcontrol.m: Add missing ;
-
-	* control/base/nichols.m, control/base/rlocus.m,
-	control/obsolete/minfo.m, control/system/is_digital.m,
-	control/system/ss2zp.m, control/system/sysmin.m,
-	control/system/tf2zp.m, control/util/sortcom.m:
-	Convert documentation to use or more completely use Texinfo.
-
-	* control/base/rlocus.m, control/hinf/dhinfdemo.m,
-	control/hinf/hinfdemo.m, control/system/ord2.m,
-	control/system/parallel.m, control/system/ss2tf.m,
-	control/system/starp.m: Use "@group ... @end group" to avoid ascii
-	art splitting over a page boundary.
-
-	* control/hinf/dgkfdemo.m, control/hinf/dhinfdemo.m,
-	control/hinf/h2norm.m, control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
-	control/hinf/hinfdemo.m, control/hinf/hinfnorm.m,
-	control/hinf/hinfsyn_chk.m, control/hinf/hinfsyn.m,
-	control/hinf/wgt1o.m, control/system/buildssic.m:
-	Use {\cal H}_\infty for H-infinity and likewise for H-2 to
-	the TeX documentation.
-
-	* control/system/is_stabilizable.m:
-	Add Copyright so that help is displayed correctly.
-
-	* special-matrix/vander.m: Octave indexes start at 1.
-
-2004-09-21  David Bateman  <dbateman@free.fr>
-
-	* general/rotdim.m: New function for rotation of an N-d array in an
-	arbitrary plane.
-
-	* general/flipdim.m: New function to flip an N-d array about an
-	arbitrary axis.
-
-2004-09-15  David Bateman  <dbateman@free.fr>
-
-	* general/bitget.m: Replace Bmax, which is undefined with bitmax
-
-2004-09-15  John W. Eaton  <jwe@octave.org>
-
-	* strings/strcmp.m: Fix typo in cell/string array case.
-	Use iscellstr to check for cells rather than iscell.
-	Improve diagnostics for invalid args.
-
-2004-09-10  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/binomial_rnd.m: Fix error for scalar n
-	and p with n > 1, and fix for matrix n and p with n == 1.
-
-	* statistics/distributions/poisson_rnd.m: Fix for matrix length,
-	due to row vs. column vector operations.
-
-2004-09-03  David Bateman  <dbateman@free.fr>
-
-	* general/repmat.m: Fix to allow logical classes.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* general/isa.m: New function, from Octave-forge.
-
-2004-08-31  David Bateman  <dbateman@free.fr>
-
-	* general/bitcmp.m, general/bitget.m, general/bitset.m: Remove
-	limitation on the use of int64 and uint64 types, and the use
-	of the eval.
-
-	* general/bitset.m: Remove superfluous cast to return type, as bug
-	in .^ with integer types is fixed.
-
-	* general/repmat.m: Adapt to allow integer types.
-
-2004-08-31  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* plot/axis.m: Don't reset axes when querying them.
-
-2004-08-27  David Bateman  <dbateman@free.fr>
-
-	* statistics/base/ranks.m: Handle non-consecutive ties.
-	Eliminate loop.
-
-2004-07-27  David Bateman  <dbateman@free.fr>
-
-	* general/num2str.m: Also insert spaces in output when precision
-	argument is supplied.
-
-2004-07-23  David Bateman  <dbateman@free.fr>
-
-	* general/bitcmp.m, general/bitget.m, general/bitset.m: New functions.
-
-2004-07-22  Etienne Grossmann  <etienne@cs.uky.edu>
-
-	* general/sub2ind.m: Make reshaping index list unnecessary.
-
-2004-07-22  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* miscellaneous/unix.m: Fix doc string.
-
-2004-07-22  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* plot/figure.m: Clarification of documentation.
-
-	* image/imshow.m: Warn for complex images.
-	Only estimate colourmap for images in [0, 65536].
-
-2004-07-22  David Bateman  <dbateman@free.fr>
-
-	* general/num2str.m: Fix the case of an all zero input.
-
-2004-06-22  Etienne Grossmann  <etienne@cs.uky.edu>
-
-	* general/ind2sub.m: Doc fix.
-
-2004-06-08  John W. Eaton  <jwe@octave.org>
-
-	* statistics/tests/kolmogorov_smirnov_test.m: Use func2str to
-	convert function handle to string for eval.
-
-2004-06-04  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* plot/errorbar.m: Remove debugging output.
-
-2004-06-03  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* plot/__pltopt__.m: Properly escape @ symbols in doc string.
-
-2004-06-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* deprecated/com2str.m: Include 'i' suffix for pure imaginary numbers.
-
-	* polynomial/polyout.m: Use parenthesis if necessary around
-	complex polynomial coefficient.
-
-	* plot/__errcomm__.m, plot/__errplot__.m: Simplify code and fix
-	the bug which causes __errplot__ to ignore the last argument.
-
-2004-06-03  David Bateman  <dbateman@free.fr>
-
-	* general/shiftdim.m: New function based on JWE code snippet.
-
-	* general/circdim.m: New function.
-
-2004-05-06  David Bateman  <dbateman@free.fr>
-
-	* general/issquare.m: Fail if ndim(x) > 2.
-
-	* linear-algebra/norm.m, linear-algebra/norm.m: Fail if ndim(x) > 2.
-
-	* linear-alegbra/cross.m, linear-algebra/dot.m: Allow matrix and
-	N-d array arguments.  Add optional dim argument to define
-	dimension along which to operate.
-
-	* linear-algebra/dmult.m: Allow N-d arrays.
-
-	* linear-algebra/vec.m: Use v(:) and not reshape.
-
-2004-04-29  David Bateman  <dbateman@free.fr>
-
-	* statistics/base/ranks.m, statistics/base/run_count.m,
-	statistics/base/studentize.m, statistics/base/kurtosis.m
-	statistics/base/statistics.m, statistics/base/skewness.m
-	statistics/base/iqr.m:
-	Make N-d array aware.  Allow optional argument to define the
-	dimension along which to operate.  Update the documentation.
-
-	* statistics/base/ranks.m: Change algorithm to use sort,
-	and adjust for the ties after.
-
-	* statistics/base/run_counts.m: Change algorithm to use
-	the a combination of diff and find, rather than a for-loop.
-
-2004-04-23  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* plot/hist.m: Correctly determine cutoffs.  New tests.
-
-2004-04-23  David Bateman  <dbateman@free.fr>
-
-	* general/int2str.m: Treat only real part of argument, and treat
-	NDArrays by stacking the slices through the matrix vertically.
-
-	* general/num2str.m: Improve format of integer matrices, and the
-	conversion of complex matrices added. Treat NDArrays by stacking
-	the slices through the matrix vertically.
-
-	* deprecated/com2str.m: Moved here from general subdirectory.
-
-2004-04-22  John W. Eaton  <jwe@octave.org>
-
-	* quaternion/qtransvmat.m: Use continuation characters to make
-	sure result is a matrix instead of a vector.  From <aklark@atdot.it>.
-
-2004-04-21  David Bateman  <dbateman@free.fr>
-
-	* elfun/lcm.m: Make N-d aware.
-
-	* general/diff.m: Make the code N-d array aware.  Allow an
-	optional argument to define the dimension along which to perform
-	the differences and allow the order of the differences to be larger
-	than the dimension itself.
-
-	* general/rot90.m, general/fliplr.m, general/flipud.m: Limit the
-	use of these functions to 1- and 2-d arrays.
-
-2004-04-16  John W. Eaton  <jwe@octave.org>
-
-	* elfun/gcd.m: Delete.
-
-2004-04-15  David Bateman  <dbateman@free.fr>
-
-	* set/create_set.m, general/is_duplicate_entry.m: Make N-d array aware.
-
-	* general/shift.m, general/prepad.m, general/postpad.m: Make N-d
-	array aware and and optional argument for the dimension along
-	which to operate.
-
-	* signal/unwrap.m: Make N-d array aware and fix optional
-	argument for the dimension to be consistent with other N-d array
-	functions.
-
-2004-04-08  David Bateman  <dbateman@free.fr>
-
-	* statistics/distributions/discrete_cdf.m,
-	statistics/distributions/discrete_inv.m,
-	statistics/distributions/discrete_pdf.m,
-	statistics/distributions/discrete_rnd.m,
-	statistics/distributions/exponential_cdf.m,
-	statistics/distributions/exponential_inv.m,
-	statistics/distributions/exponential_pdf.m,
-	statistics/distributions/exponential_rnd.m,
-	statistics/distributions/f_cdf.m,
-	statistics/distributions/f_inv.m,
-	statistics/distributions/f_pdf.m,
-	statistics/distributions/f_rnd.m,
-	statistics/distributions/geometric_cdf.m,
-	statistics/distributions/geometric_inv.m,
-	statistics/distributions/geometric_pdf.m,
-	statistics/distributions/geometric_rnd.m,
-	statistics/distributions/hypergeometric_rnd.m,
-	statistics/distributions/kolmogorov_smirnov_cdf.m,
-	statistics/distributions/laplace_cdf.m,
-	statistics/distributions/laplace_inv.m,
-	statistics/distributions/laplace_pdf.m,
-	statistics/distributions/laplace_rnd.m,
-	statistics/distributions/logistic_inv.m,
-	statistics/distributions/logistic_rnd.m,
-	statistics/distributions/lognormal_cdf.m,
-	statistics/distributions/lognormal_inv.m,
-	statistics/distributions/lognormal_pdf.m,
-	statistics/distributions/lognormal_rnd.m,
-	statistics/distributions/pascal_cdf.m,
-	statistics/distributions/pascal_inv.m,
-	statistics/distributions/pascal_pdf.m,
-	statistics/distributions/pascal_rnd.m,
-	statistics/distributions/poisson_cdf.m,
-	statistics/distributions/poisson_inv.m,
-	statistics/distributions/poisson_pdf.m,
-	statistics/distributions/poisson_rnd.m,
-	statistics/distributions/t_cdf.m,
-	statistics/distributions/t_inv.m,
-	statistics/distributions/t_pdf.m,
-	statistics/distributions/t_rnd.m,
-	statistics/distributions/weibull_cdf.m,
-	statistics/distributions/weibull_inv.m,
-	statistics/distributions/weibull_pdf.m,
-	statistics/distributions/weibull_rnd.m:
-	Allow N-d arrays.
-
-	* statistics/distributions/discrete_inv.m: Fix bug in indexing,
-	that results in NaN in places where it should not have had.
-
-	* statistics/distributions/discrete_rnd.m: New argument formats to
-	allow creating arbitrary matrices, compatiable with the other
-	*_rnd.m functions. Maintain compatibility with previous format.
-
-	* statistics/distributions/empirical_rnd.m: New argument formats
-	to allow creating arbitrary matrices, compatiable with the other
-	*_rnd.m functions. Maintain compatibility with previous
-	format.  Allow N-d arrays.
-
-	* statistics/distributions/hypergeometric_cdf.m,
-	statistics/distributions/hypergeometric_inv.m,
-	statistics/distributions/hypergeometric_pdf.m,
-	statistics/distributions/wiener_rnd.m:
-	Error for non-scalar arguments.
-
-	* statistics/distributions/pascal_rnd.m:
-	Correct for n = 1 bug, where all elements were equal.
-
-2004-04-06  David Bateman  <dbateman@free.fr>
-
-	* general/common_size.m, miscellaneous/bincoeff.m,
-	statistics/distributions/beta_cdf.m,
-	statistics/distributions/beta_inv.m,
-	statistics/distributions/beta_pdf.m,
-	statistics/distributions/beta_rnd.m,
-	statistics/distributions/binomial_cdf.m,
-	statistics/distributions/binomial_inv.m,
-	statistics/distributions/binomial_pdf.m,
-	statistics/distributions/binomial_rnd.m,
-	statistics/distributions/cauchy_cdf.m,
-	statistics/distributions/cauchy_inv.m,
-	statistics/distributions/cauchy_pdf.m,
-	statistics/distributions/cauchy_rnd.m,
-	statistics/distributions/chisquare_cdf.m,
-	statistics/distributions/chisquare_inv.m,
-	statistics/distributions/chisquare_pdf.m,
-	statistics/distributions/chisquare_rnd.m,
-	statistics/distributions/gamma_cdf.m,
-	statistics/distributions/gamma_inv.m,
-	statistics/distributions/gamma_pdf.m,
-	statistics/distributions/gamma_rnd.m,
-	statistics/distributions/normal_cdf.m,
-	statistics/distributions/normal_inv.m,
-	statistics/distributions/normal_pdf.m,
-	statistics/distributions/normal_rnd.m,
-	statistics/distributions/stdnormal_cdf.m,
-	statistics/distributions/stdnormal_pdf.m,
-	statistics/distributions/stdnormal_rnd.m,
-	statistics/distributions/uniform_cdf.m,
-	statistics/distributions/uniform_inv.m,
-	statistics/distributions/uniform_pdf.m,
-	statistics/distributions/uniform_rnd.m:
-	Allow the inputs to be N-d arrays.
-
-	* statistics/base/var.m: Update for N-d arrays.  Allow dimension arg.
-	* statistics/base/median.m: Likewise.
-
-2004-04-02  David Bateman  <dbateman@free.fr>
-
-	* statistics/base/std.m: Allow optional args for type and dim.
-	* statistics/base/center.m, statistics/base/meansq.m,
-	statistics/base/moment.m, statistics/base/range.m:
-	Update for N-d arrays.
-	* signal/fftshift.m: Fix dimensioning error.
-
-	* statistics/base/std.m: Use repmat not ones(nr,1)*mean to allow
-	N-d arrays.
-
-	* general/mod.m, general/mod.m: Allow N-d arrays with one scalar arg.
-
-	* signal/fftshift.m: Update for N-d arrays, allow optional dim arg.
-
-	* specfun/erfinv.m, general/repmat.m: Update for N-d arrays.
-
-	* control/base/bode.m, control/base/lqg.m, control/system/ss2sys.m,
-	control/system/cellidx.m, control/system/dmr2d.m control/system/ss.m,
-	control/system/sysprune.m: Doc update for usage of cell arrays.
-
-	* control/system/sysidx.m: Use cellidx and not listidx.
-
-2004-03-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__pltopt1__.m: Always add title clause to plot command with
-	default of "" (so it is off unless explicitly set by the user).
-
-2004-03-12  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* image/imshow.m: Accept "truesize" argument.
-	Ignore current colormap.  New tests and demos.
-
-2004-03-10  Volker Kuhlmann  <VolkerKuhlmann@gmx.de>
-
-	* signal/sinewave.m: Allow N to default to M.
-
-2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* signal/unwrap.m: Use "isempty (tol)" instead of "tol == []".
-
-2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/deal.m: New function.
-	Add tests from Paul Kienzle.
-
-2004-03-03  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* plot/hist.m: Compute histogram correctly for n>=30.
-
-2004-03-02  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/sinc.m: Use i(:) instead of i when checking for any nonzeros.
-
-2004-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/horzcat.m: Delete.
-	* miscellaneous/vertcat.m: Delete.
-
-2004-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/figure.m: Also look for GNUTERM in the environment and use
-	that if it is set (for OS X).  From Per Persson <persquare@mac.com>.
-
-2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/__stepimp__.m: Only call clearplot if we will be
-	doing multiple plots in the same gnuplot frame.
-
-2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/system/__sysconcat__.m, control/system/__tfl__.m,
-	control/system/cellidx.m, control/system/ss.m,
-	control/system/tf.m, control/system/zp.m: New functions.
-
-2004-02-16  Glenn Golden  <gdg@zplane.com>
-
-	* statistics/distributions/discrete_inv.m:
-	Reduce memory requirements.
-
-2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__errcomm__.m: Fix thinko in previous change.
-	From Teemu Ikonen  <tpikonen@pcu.helsinki.fi>.
-
-2004-02-16  A S Hodel  <a.s.hodel@Eng.Auburn.EDU>
-
-	* control/base/__bodquist__.m, control/base/__stepimp__.m,
-	control/base/analdemo.m, control/base/bddemo.m,
-	control/base/bode.m, control/base/dre.m, control/base/frdemo.m,
-	control/base/lqg.m, control/base/nyquist.m, control/base/place.m,
-	control/base/rldemo.m, control/base/rlocus.m,
-	control/base/tzero.m, control/hinf/dgkfdemo.m,
-	control/hinf/dhinfdemo.m, control/hinf/h2syn.m,
-	control/hinf/hinf_ctr.m, control/hinf/hinfsyn.m,
-	control/hinf/wgt1o.m, control/obsolete/dlqg.m,
-	control/obsolete/packsys.m, control/obsolete/series.m,
-	control/system/__sysdefioname__.m,
-	control/system/__sysdefstname__.m, control/system/__sysgroupn__.m,
-	control/system/__tf2sysl__.m, control/system/buildssic.m,
-	control/system/c2d.m, control/system/d2c.m,
-	control/system/dmr2d.m, control/system/fir2sys.m,
-	control/system/is_signal_list.m, control/system/is_siso.m,
-	control/system/jet707.m, control/system/listidx.m,
-	control/system/moddemo.m, control/system/ord2.m,
-	control/system/packedform.m, control/system/parallel.m,
-	control/system/ss2sys.m, control/system/sys2tf.m,
-	control/system/sys2zp.m, control/system/sysadd.m,
-	control/system/sysappend.m, control/system/sysconnect.m,
-	control/system/syscont.m, control/system/sysdimensions.m,
-	control/system/sysdisc.m, control/system/sysdup.m,
-	control/system/sysgetsignals.m, control/system/sysgettype.m,
-	control/system/sysgroup.m, control/system/sysmin.m,
-	control/system/sysmult.m, control/system/sysprune.m,
-	control/system/sysrepdemo.m, control/system/sysscale.m,
-	control/system/syssetsignals.m, control/system/syssub.m,
-	control/system/sysupdate.m, control/system/tf2sys.m,
-	control/system/ugain.m, control/system/zp2ss.m,
-	control/system/zp2sys.m, control/util/__outlist__.m,
-	control/util/__zgpbal__.m, control/util/strappend.m:
-	Use cell arrays instead of lists.
-
-2004-01-23  Stefan van der Walt  <stefan@sun.ac.za>
-
-	* plot/bar.m: Increase size of cutoff vector from xlen-1 to xlen
-	so that bar (1, 1) will work.
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__errcomm__.m: Cope with nargin now being a function.
-	* plot/__errplot__.m: Likewise.
-	* plot/__plt__.m: Likewise.
-	* plot/plot_border.m: Likewise.
-
-	* Makefile.in (distclean, maintainer-clean): Remove DOCSTRINGS,
-	not $(DOCSTRINGS).
-
-2004-01-21  Quentin Spencer  <qspencer@ieee.org>
-
-	* linear-algebra/rank.m: Allow rank ([]) to return 0, same as
-	rank ([], tol).
-
-2004-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* elfun/acot.m: Return atan (1./z).
-	From Gregory Vanuxem <g.vanuxem@wanadoo.fr>.
-
-	* miscellaneous/dir.m: New file.
-
-	* general/num2str.m: Use "%d" as format if values are ints with
-	magnitude less than 1e10.
-
-2004-01-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/num2str.m: If single arg is string, return it.
-
-	* miscellaneous/not.m: New file.
-
-	* miscellaneous/unix.m: New file.
-
-	* miscellaneous/isunix.m: New file.
-	* miscellaneous/ispc.m: New file.
-
-	* miscellaneous/computer.m: New file.
-
-	* miscellaneous/delete.m: New file.
-
-2004-01-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/tests/kolmogorov_smirnov_test_2.m: Fix test for ties.
-
-2004-01-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/path.m: Handle DEFAULT_LOADPATH substitution.
-	Always return substituted version of LOADPATH if nargout != 0.
-
-2003-12-21  Schloegl Alois  <alois.schloegl@tugraz.at>
-
-	* miscellaneous/fullfile.m: If filename is empty, set it to "."
-	before continuing.
-
-	* miscellaneous/fileparts.m: Allow name to start with ".".
-
-2003-12-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/ind2sub.m: New file.
-	* general/sub2ind.m: New file.
-
-2003-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/system/zp2ss.m: Don't save and restore
-	warn_empty_list_elements.
-
-2003-12-15  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* control/system/zp2ss.m: Correct definition of pure gain system.
-
-2003-12-10  Quentin Spencer  <qspencer@ieee.org>
-
-	* statistics/base/mean.m: Remove special case for row vectors.
-
-2003-11-19  Quentin Spencer  <qspencer@ieee.org>
-
-	* signal/freqz_plot.m: Save and restore automatic_replot too.
-
-2003-11-18  Danilo Piazzalunga  <danilopiazza@libero.it>
-
-	* statistics/base/iqr.m: Handle matrices.
-
-2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/issymmetric.m: Don't fail if norm (x) == 0.
-
-2003-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/path.m: Fix thinko in previous change.
-
-2003-11-14  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* control/base/dare.m: Check positive (semi)definiteness and
-	dimensions of r (and q).
-	* control/base/dlqr.m: Check stabilizability of (A,B),
-	detectability of (A,Q), and whether (A,Q) has non minimal modes
-	near unit circle.
-
-	* control/system/is_detectable.m: Use Hautus Lemma.
-	Correct the behavior for discrete-time systems.
-	* control/system/is_stabilizable.m: Likewise.
-
-	* linear-algebra/krylov.m: Return H = [] in Vnrm == 0 case.
-
-	* linear-algebra/krylovb.m: Fix typo in usage message.
-
-	* general/isdefinite.m: New function.
-
-2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/reshape: Delete.
-
-2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/numel.m: Delete.
-
-2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/horzcat.m, miscellaneous/vartcat.m: New files.
-
-	* deprecated/isstr.m: New file.
-
-2003-10-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__axis_label__.m, plot/xlabel.m, plot/ylabel.m,
-	plot/zlabel.m, plot/title.m: Return a value if nargout > 0.
-
-2003-10-02  Quentin Spencer  <qspencer@ieee.org>
-
-	* statistics/base/mean.m: Fix missing semicolon problem.
-
-2003-09-08  Al Niessner  <Al.Niessner@jpl.nasa.gov>
-
-	* plot/subplot.m: New global variable, __multiplot_scale__.
-
-2003-08-29  David Castelow  <DCastelow@Airspan.com>
-
-	* strings/dec2base.m, strings/dec2bin.m, strings/dec2hex.m:
-	Allow optional length argument.
-
-2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Avoid calling flipud.
-	From Pascal A. Dupuis <Pascal.Dupuis@esat.kuleuven.ac.be>.
-	Return structure as second output value for improved Matlab
-	compatibility.
-
-2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/cond.m: Behave as though old built-in variable
-	propagate_empty_matrices is always 1.  Also handle empty matrices
-	with one non-zero dimension.
-
-	* miscellaneous/dump_prefs.m: Add warn_separator_insert and
-	warn_single_quote_string to the list.
-	Delete whitespace_in_literal_matrix and propagate_empty_matrices
-	from the list.
-
-2003-07-25  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/autocov.m: Transpose result of conj because diag returns
-	a column vector, not a row vector.
-
-	* audio/playaudio.m, audio/record.m, image/image.m,
-	miscellaneous/bug_report.m: Protect spaces in filenames
-	with quotes.
-
-2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* io/printf.m, io/puts.m: Delete.
-
-	* miscellaneous/dump_prefs.m: Delete define_all_return_values and
-	default_return_value from the list.
-	Add warn_undefined_return_values to the list.
-
-
-2003-07-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/dump_prefs.m: Delete default_global_variable_value
-	and initialize_global_variables from the list.
-
-2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/colormap.m: Don't save and restore default_eval_print_flag.
-
-	* miscellaneous/dump_prefs.m: Delete default_eval_print_flag.
-
-	* control/util/zgshsr.m: Use x OP= y instead of x = x OP y.
-	* control/system/sys2fir.m: Likewise.
-
-	* control/system/is_siso.m: Use && instead of & where appropriate.
-	* control/system/__tf2sysl__.m: Likewise.
-
-	* control/system/__tf2sysl__.m: Use end instead of length(X).
-
-	* control/freqchkw.m: Use %-escapes for error instead of num2str
-	and [] concatenation.
-	* control/system/sys2fir.m: Likewise.
-
-	* control/base/dgram.m, control/base/freqchkw.m,
-	control/base/gram.m, control/system/__abcddims__.m,
-	control/system/__sysdefstname__.m, control/system/__tf2sysl__.m,
-	control/system/is_sample.m, control/system/is_signal_list.m,
-	control/system/is_siso.m, control/system/sys2fir.m,
-	control/system/syschtsam.m, control/system/sysgettsam.m,
-	control/system/sysgettype.m, control/system/tf2zp.m,
-	control/system/ugain.m, control/util/prompt.m,
-	control/util/run_cmd.m, control/util/zgrownorm.m,
-	control/util/zgshsr.m:
-	Improve conformance to Octave coding style.
-
-	* miscellaneous/dump_prefs.m: Add warn_resize_on_reange_error to
-	the list.
-	Delete resize_on_range_error from the list.
-
-	* control/base/pzmap.m, control/base/place.m,
-	control/base/__freqresp__.m, control/system/sysappend.m,
-	control/system/syscont.m, control/system/sysdisc.m,
-	control/system/sysgroup.m, control/system/tfout.m,
-	control/system/zp2ss.m, control/system/zpout.m,
-	control/util/__outlist__.m, signal/arma_rnd.m, general/shift.m,
-	strings/strcat.m: Save and restore warn_empty_list_elements, not
-	empty_list_elements_ok.
-
-	* miscellaneous/dump_prefs.m: Add warn_empty_list_elements to the list.
-	Delete empty_list_elements_ok from the list.
-
-2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/dump_prefs.m: Include warn_neg_dim_as_zero in the
-	list.
-	Delete treat_neg_dim_as_zero from the list.
-
-	* strings/blanks.m: Don't check treat_neg_dim_as_zero.
-
-2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/reshape.m: Omit do_fortran_indexing from doc string (it
-	was not used in the code in any case).
-
-	* strings/strjust.m: Temporarily set warn_fortran_indexing, not
-	do_fortran_indexing.
-
-	* statistics/base/moment.m: Temporarily set warn_str_to_num, not
-	implict_str_to_num_ok.  Use unwind_protect block to do it.
-
-	* miscellaneous/dump_prefs.m: Include DEFAULT_EXEC_PATH,
-	DEFAULT_LOAD_PATH, crash_dumps_octave_core,
-	sighup_dumps_octave_core, sigterm_dumps_octave_core,
-	warn_imag_to_real, warn_num_to_str, warn_str_to_num, and
-	warn_fortran_indexing in the list.
-	Delete ok_to_lose_imaginary_part, implicit_num_to_str_ok,
-	implicit_str_to_num_ok, do_fortran_indexing, and
-	prefer_column_vectors from list.
-
-2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean, maintainer-clean): Also remove
-	gethelp$(BUILD_EXEEXT), $(DOCSTRINGS), and autom4te.cache
-	directory.
-
-2003-06-17  Aaron A. King  <king@quercus.tiem.utk.edu>
-
-	* plot/hist.m: Don't forget to define n if x is a vector.
-
-2003-06-13  Alois Schloegl  <alois.schloegl@tugraz.at>
-
-	* miscellaneous/fileparts.m: For compatibility with Matlab,
-	return "." with extension.
-
-2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/__stepimp__.m, control/base/nichols.m,
-	control/base/nyquist.m, miscellaneous/dump_prefs.m,
-	plot/bottom_title.m, plot/mplot.m, plot/multiplot.m,
-	plot/oneplot.m, plot/plot_border.m, plot/subplot.m,
-	plot/subwindow.m, plot/top_title.m, signal/freqz_plot.m:
-	Eliminate gnuplot_has_multiplot (assume it is always true).
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, image/Makefile.in, startup/Makefile.in: Handle DESTDIR.
-
-2003-05-05  Andy Adler  <adler@site.uottawa.ca>
-
-	* plot/hist.m: Improve performance by using different algorithms
-	depending on number of bins.
-
-2003-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/system/sysadd.m: If systems are not "tf", convert before
-	adding.
-
-2003-05-01  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* image/imagesc.m: Accept data limits parameter for colormap.
-
-2003-04-11  Doug Stewart  <dastew@sympatico.ca>
-
-	* control/base/__stepimp__.m: If digital impulse, reduce gain of
-	the impulse by t_step.
-
-2003-04-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/__bodquist__.m: Don't convert pdbig and fdbig to
-	column vectors.
-
-2003-03-24  Quentin Spencer  <qspencer@ieee.org>
-
-	* linear-algebra/null.m: Handle empty matrix arg.
-
-2003-03-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/shift.m: Force empty_list_elements_ok to 1.
-
-2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* deprecated/struct_contains.m, deprecated/struct_elements.m:
-	New files.
-
-2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/tests/kolmogorov_smirnov_test.m: Use str2func to make
-	function handle to pass to feval.
-	* statistics/base/qqplot.m: Likewise.
-	* statistics/base/ppplot.m: Likewise.
-	* signal/spectral_xdf.m: Likewise.
-	* signal/spectral_adf.m: Likewise.
-
-2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/axis.m: Avoid whitespace in literal matrix problem.
-
-2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/logm.m: New file.
-
-2003-02-18  David Bateman  <dbateman@free.fr>
-
- 	* mkpkgadd: Scan C++ files as well
-
-2003-02-13  Alois Schloegl  <alois.schloegl@tugraz.at>
-
-	* strings/findstr.m: Return empty set for zero-length target.
-
-2003-02-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* set/union.m: Preserve the orientation of inputs.
-
-2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/int2str.m: Eliminate leading spaces.
-
-2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/int2str.m: Do a better job with 0, Inf, and NaN,
-
-2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in (gethelp$(BUILD_EXEEXT)): Pass $(BUILD_CXXFLAGS) and
-	$(BUILD_LDFLAGS) to compiler.
-
-2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/num2str.m: Don't specify field width for scalars.
-
-2003-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTFILES): Don't forget mkpkgadd.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* gethelp.cc: Define __USE_STD_IOSTREAM if using Compaq C++.
-
-	* miscellaneous/tempname.m: New file.
-
-	* miscellaneous/tempdir.m: New file.
-
-	* miscellaneous/fullfile.m: New file.
-
-2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/fileparts.m: New file.
-
-	* io/beep.m: New file.
-
-	* plot/__pltopt1__.m: Call undo_string_escapes for title part of
-	format only.
-
-2003-01-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/strcmp.m: Handle cell arrays of strings.
-
-2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/int2str.m: Handle matrices.
-	* general/num2str.m: Likewise.
-	Also handle optional precision, and format args.
-
-2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* audio/Makefile.in, control/base/Makefile.in,
-	control/hinf/Makefile.in, control/obsolete/Makefile.in,
-	control/system/Makefile.in, elfun/Makefile.in,
-	finance/Makefile.in, general/Makefile.in, image/Makefile.in,
-	io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, polynomial/Makefile.in,
-	quaternion/Makefile.in, set/Makefile.in, signal/Makefile.in,
-	specfun/Makefile.in, special-matrix/Makefile.in,
-	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
-	statistics/models/Makefile.in, statistics/tests/Makefile.in,
-	strings/Makefile.in, time/Makefile.in, plot/Makefile.in,
-	deprecated/Makefile.in: Use new do-script-install and
-	do-script-uninstall macros.
-
-	* mkpkgadd: New script.
-
-	* plot/close.m: New file.
-
-2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/image.m: Use -raw option for xv.
-	From Remy Bruno <remy.bruno@libertysurf.fr>
-
-2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/lsim.m: Use approximate test for step size change.
-
-	* signal/bartlett.m: Avoid row/column mismatch error.
-
-2002-11-12  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* statistics/base/var.m: Use better formula for improved accuracy.
-
-2002-11-04  Nicholas Piper  <nick-octave@nickpiper.co.uk>
-
-	* control/base/lsim.m: Correct doc string.
-
-2002-11-04  A S Hodel  <a.s.hodel@Eng.Auburn.EDU>
-
-	* control/system/syssub.m: Call tf2sys with Gnum-Hnum, not Gnum+Hnum.
-
-2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/contour.m: Handle x and y as matrices too.
-
-2002-11-01  Joseph P. Skudlarek  <jskud@jskud.com>
-
-	* plot/contour.m: Fix error and usage messages.
-
-2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/contour.m: Correct orientation of plot.
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/analdemo.m: Fix typo.
-
-2002-10-31  Francesco Potorti`  <pot@gnu.org>
-
-	* statistics/distributions/discrete_pdf.m: Fix typo.
-
-2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkdoc: Exit immediately on errors.
-	Exit with error if gethelp does not exist.
-
-	* Makefile.in: Use $(BUILD_EXEEXT) as appropriate.
-
-2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (gethelp): Use $(BUILD_CXX), not $(CXX).
-
-2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* statistics/distributions/normal_cdf.m: Handle variance == 0.
-	* statistics/distributions/normal_pdf.m: Likewise.
-	* statistics/distributions/normal_inv.m: Likewise.
-
-2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* specfun/erfinv.m: Return NaN for NaN inputs.
-
-2002-09-26  Jeff Cunningham  <jeffrey@cunningham.net>
-
-	* statistics/base/var.m: Handle complex values.
-
-2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_CONFIG_FILES): Add deprecated/Makefile to the
-	list.
-	* deprecated/Makefile.in: New file.
-
-2002-08-09  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* statistics/distributions/beta_cdf.m: Replace betai with betainc.
-	* statistics/distributions/binomial_cdf.m: Likewise.
-	* statistics/distributions/f_cdf.m: Likewise.
-	* statistics/distributions/t_cdf.m: Likewise.
-
-	* miscellaneous/bincoeff.m: Replace lgamma with gammaln.
-	* specfun/beta.m: Likewise.
-	* special-matrix/invhilb.m: Likewise (but it is only in a comment).
-	* statistics/distributions/gamma_pdf.m: Likewise.
-	* statistics/distributions/poisson_pdf.m: Likewise.
-
-	* statistics/distributions/gamma_cdf.m: replace gammai with gammainc
-	* statistics/distributions/poisson_cdf.m: Likewise.
-
-2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* deprecated/is_bool.m: New file.
-	* deprecated/is_complex.m: New file.
-	* deprecated/is_global.m: New file.
-	* deprecated/is_list.m: New file.
-	* deprecated/is_matrix.m: New file.
-	* deprecated/is_scalar.m: New file.
-	* deprecated/is_square.m: New file.
-	* deprecated/is_stream.m: New file.
-	* deprecated/is_struct.m: New file.
-	* deprecated/is_symmetric.m: New file.
-	* deprecated/is_vector.m: New file.
-	* Change all callers of these functions to use the new names.
-
-	* deprecated: New directory.
-	* Makefile.in (SUBDIRS): Add it to the list.
-
-	* general/isscalar.m: Rename from is_scalar.m.
-	* general/issquare.m: Rename from is_square.m.
-	* general/issymmetric.m: Rename from is_symmetric.m.
-	* general/isvector.m: Rename from is_vector.m.
-
-2002-08-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/base/mean.m: Allow empty matrices.
-	Handle DIM arg.
-
-2002-08-05  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* plot/__errcomm__.m: If format is not specified, default to error
-	bar format.
-
-2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/popen2.m: Use F_SETFL and O_NONBLOCK, not
-	__F_SETFL__ and __O_NONBLOCK__.
-
-	* image/saveimage.m: Use OCTAVE_VERSION, not __OCTAVE_VERSION__.
-	* miscellaneous/bug_report.m: Likewise.
-
-2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/mod.m: Use isreal (x), not any (any (imag (x))).
-	* general/rem.m: Likewise.
-
-	* plot/loglogerr.m: Use varargin instead of old style varargs.
-	* plot/semilogxerr.m: Likewise.
-	* plot/semilogyerr.m: Likewise.
-
-2002-07-25  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* plot/__errcomm__.m: New file.  Common functionality for error plots.
-	* plot/loglogerr.m: New file.  Double logarithm plots with errorbars.
-	* plot/semilogxerr.m: New file.  Semilogarithm plots with errorbars.
-	* plot/semilogyerr.m: New file.  Semilogarithm plots with errorbars
-
-	* plot/errorbar.m: Use __errcomm__.m.
-	* plot/__errplot__.m: Minor cleanups.
-	* plot/__pltopt__.m: Handle boxxyerrorbars plot style.
-	* plot/__pltopt1__.m: Likewise.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/rem.m: Delete redundant call to usage.
-
-	* general/mod.m: Additional error checks, Texinfoize doc string.
-
-2002-04-29  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* general/mod.m: New function.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/system/sysmult.m: Use varargin instead of old style varargs.
-	* control/system/sysadd.m: Likewise.
-	* control/system/sysgroup.m: Likewise.
-	* control/system/syssub.m: Likewise.
-	* elfun/gcd.m: Likewise.
-	* elfun/lcm.m: Likewise.
-	* general/common_size.m: Likewise.
-	* io/printf.m: Likewise.
-	* miscellaneous/menu.m: Likewise.
-	* miscellaneous/path.m: Likewise.
-	* plot/__errplot__.m: Likewise.
-	* plot/__plt__.m: Likewise.
-	* plot/axis.m: Likewise.
-	* plot/errorbar.m: Likewise.
-	* plot/mplot.m: Likewise.
-	* plot/loglog.m: Likewise.
-	* plot/plot.m: Likewise.
-	* plot/plot_border.m: Likewise.
-	* plot/semilogx.m: Likewise.
-	* plot/semilogy.m: Likewise.
-	* plot/xlabel.m: Likewise.
-	* plot/ylabel.m: Likewise.
-	* plot/zlabel.m: Likewise.
-	* statistics/base/ppplot.m: Likewise.
-	* statistics/base/qqplot.m: Likewise.
-	* statistics/tests/bartlett_test.m: Likewise.
-	* statistics/tests/kolmogorov_smirnov_test.m: Likewise.
-	* statistics/tests/kruskal_wallis_test.m: Likewise.
-	* strings/str2mat.m: Likewise.
-	* strings/strcat.m: Likewise.
-
-2002-06-27  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
-
-	* statistics/distributions/gamma_pdf.m: Avoid overflow in more cases.
-
-2002-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* skip-autoheader: New file, for autogen.sh.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-2002-04-29  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* general/repmat.m: New function.
-
-2002-04-25  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* audio/lin2mu.m: Accept matrices and [-1,1] normalized audio.
-	Use optional parameter to specify the number of bits in the input.
-	* audio/mu2lin.m: Accept matrices, return n-bit integers or
-	floats in the range [-1,1], 2x speedup.
-
-	* strings/index.m, strings/rindex.m: Vectorize for speed.
-
-2002-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/kron.m: Delete.
-
-2002-04-24  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/freqz.m: If nargout is zero, plot results instead of
-	returning them.
-	* signal/freqz_plot.m: New file.
-
-2002-04-24  Bill Lash  <lash@tellabs.com>
-
-	* signal/unwrap.m: New file.
-
-2002-04-23  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* image/rgb2hsv.m: Faster, more accurate, remove the
-	divide by zero warning.
-
-2002-04-09  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* strings/deblank.m: Trim \0 as well as blank.
-
-	* freqz.m: Evaluate a specific range of frequencies
-	expressed in radians or Hz relative to a supplied sample rate.
-
-2002-04-04  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* signal/fftfilt.m: Filter columns if called with a matrix.
-
-	* strings/findstr.m: Vectorize as much as possible.
-
-2002-04-04  Dirk Laurie  <dirk@calvyn.puk.ac.za>
-
-	* special-matrix/invhilb.m: New version that is faster and more
-	accurate.
-
-2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* configure.in: Update for autoconf 2.5x.
-
-2002-04-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* special-matrix/vander.m: Code tidy and vectorize.
-
-2002-04-02  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* linear-algebra/cross.m: Accept nx3 and 3xn matrices, in addition
-	to vectors.  Issue a warning in the case x matches y' but return a
-	column vector as Octave currently does.
-
-	* plot/contour.m: Set default number of levels for contour(x,y,z).
-
-	* control/system/starp.m: Leave more of the documentation
-	processing to texinfo and less to the @format block.
-
-	* image/imagesc.m: Only display image if no output is requested.
-	Code tidying.
-
-2002-03-07  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
- 	* statistics/base/center.m: Accept and return empty matrix.
-
-2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/erfinv.m: Fix usage message.
-
-2002-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* elfun/coth.m: Use 1 ./ tanh(z) instead of cosh(z) ./ sinh(z).
-	From "Michael O'Brien" <mobrien@kento.unm.edu>.
-
-2001-06-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/distributions/discrete_cdf.m: Downcase incorrectly
-	capitalized variable names.
-
-2001-05-30  Jean-Francois Cardoso  <cardoso@tsi.enst.fr>
-
-	* m/image/saveimage.m: fix saving an image to Postscript format.
-
-2001-04-18  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/system/is_stabilizable.m: Pass a to sys2ss, not sys.
-
-2001-02-28  Kai Habel  <kai.habel@gmx.de>
-
-	* general/cart2pol.m: New file.
-	* general/pol2cart.m: New file.
-	* general/cart2sph.m: New file.
-	* general/sph2cart.m: New file.
-	* image/rgb2hsv.m: New file.
-	* image/hsv2rgb.m: New file.
-
-2001-02-26  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* plot/meshgrid.m: Avoid for loops.
-	* plot/meshdom.m: Likewise.
-
-2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/norm.m: Use sqrt instead of ^0.5.
-
-2001-02-22  Heinz Bauschke  <bauschke@cecm.sfu.ca>
-
-	* linear-algebra/norm.m: Use more efficient method for Frobenius
-	norm.
-
-2001-02-09  David Livings  <david.livings@asa.co.uk>
-
-	* statistics/tests/welch_test.m: Fix typo.
-
-	* statistics/distributions/chisquare_cdf.m:
-	Don't restrict inputs to be only positive integers.
-	* statistics/distributions/chisquare_inv.m: Likewise.
-	* statistics/distributions/chisquare_pdf.m: Likewise.
-	* statistics/distributions/chisquare_rnd.m: Likewise.
-	* statistics/distributions/f_cdf.m: Likewise.
-	* statistics/distributions/f_inv.m: Likewise.
-	* statistics/distributions/f_pdf.m: Likewise.
-	* statistics/distributions/f_rnd.m: Likewise.
-	* statistics/distributions/t_cdf.m: Likewise.
-	* statistics/distributions/t_inv.m: Likewise.
-	* statistics/distributions/t_pdf.m: Likewise.
-	* statistics/distributions/t_rnd.m: Likewise.
-
-2001-02-08  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* strings/dec2base.m: New file.
-	* strings/base2dec.m: New file.
-	* strings/strjust.m: New file.
-	* strings/dec2hex.m: Replace with version that just calls 2dec2base.
-	* strings/dec2bin.m: Likewise.
-	* strings/hex2dec.m: Replace with version that just calls base2dec.
-	* strings/bin2dec.m: Likewise.
-
-2001-02-07  David Livings  <david.livings@asa.co.uk>
-
-	* statistics/base/ppplot.m: Use gset, not set.
-	* statistics/base/qqplot.m: Likewise.
-
-2001-02-05  Ondrej Popp  <ondrej@geocities.com>
-
-	* control/system/c2d.m: Add missing endif.
-
-2000-12-15  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* strings/index.m: Return 0 if either string is empty.
-
-2000-12-15  Ben Sapp  <bsapp@lanl.gov>
-
-	* control/system/c2d.m: Allow option of matched pole/zero
-	equivalent for conversion.
-
-2000-12-15  Matthew W. Roberts  <matt@lehi.tamu.edu>
-
-	* strings/findstr.m: Return empty matrix if search string is empty.
-
-2000-12-15  Kai Habel  <kai.habel@gmx.de>
-
-	* saveimage.m: Do create rawbit image for black and white images,
-	but do it correctly.
-
-2000-12-13   Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* polynomial/deconv.m: For compatibility with Matlab, don't reduce
-	result polynomials.
-
-2000-12-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Don't try to create rawbit image.
-
-2000-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (bin-dist): Pass -C to $(MAKE), not -c.
-
-2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* plot/contour.m: Reorder args for Matlab compatibility.
-
-2000-10-27  Mats Jansson  <mats.e.jansson@home.se>
-
-	* set/create_set.m: Avoid empty matrix in matrix list warning.
-
-2000-09-08  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* plot/errorbar.m, plot/__errplot__.m: New functions.
-
-	* plot/mesh.m: Also set nologscale before plotting.
-	* plot/__pltopt1__.m: Handle xerrorbars, yerrorbars, and
-	xyerrorbars instead of just errorbars.
-
-2000-08-25  Thomas Walter  <walter@pctc.chemie.uni-erlangen.de>
-
-	* image/image.m: Try display (from ImageMagick) first.
-
-2000-08-01  Rolf Fabian  <fabian@tu-cottbus.de>
-
-	* plot/meshgrid.m: Use transpose to reorient vectors, not complex
-	conjugate transpose.
-
-2000-07-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/str2mat.m: Apply setstr to each argument.
-
-2000-07-17  Gabriele Pannocchia  <pannocchia@ing.unipi.it>
-
-	* control/base/dkalman.m: New file.
-	* control/base/dlqe.m: Handle singular A matrix.
-	* control/base/dlqr.m: Likewise.
-
-2000-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/strcmp.m: Return 0 instead of an error if row and column
-	dimensions don't match.
-
-2000-06-30  Kai Habel  <kahacjde@calvados.zrz.TU-Berlin.DE>
-
-	* plot/hist.m: Allow 3 argument form to work.
-
-2000-06-27  Matthew W. Roberts  <matt@lehi.tamu.edu>
-
-	* plot/plot.m: Add examples in doc string.
-
-2000-06-08  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* control/base/__stepimp__.m: Reset multiplot state when done.
-	Do the right thing even if automatic_replot is not zero.
-	Avoid failure if system has pure imaginary poles.
-
-2000-06-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/logical.m: Return arg if it is empty.  Better error
-	message for non-numeric types.
-
-2000-05-31  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/base/dlqe.m: Update documentation.  Fix typo.  Warn
-	about difference with Matlab dlqe function.
-
-	* control/system/sysmult.m: Fix typo in argument dimensions checking.
-
-2000-05-24  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* strings/strrep.m: Fix typo.
-
-2000-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/strrep.m: Don't transpose result for case of jump > 0.
-
-2000-05-13  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* strings/strrep.m: Avoid for loop for speed.
-	* plot/axis.m: Handle string options for Matlab compatibility.
-
-2000-04-04  John Smith  <john@arrows.demon.co.uk>
-
-	* statistics/distributions/beta_inv.m: Provide better(?) initial
-	guess for iteration.
-
-2000-03-31   Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* image/image.m: Allow image (A) or image (x, y, A).
-	* image/imagesc.m: Likewise.
-
-	* image/image.m: If zoom is not supplied, or if it is an empty
-	matrix, autoscale the image.
-
-2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/title.m, plot/bottom_title.m, plot/top_title.m:
-	Undo string escapes in text twice(!) before sending to gnuplot.
-
-	* image/saveimage.m: Add comment to file saying who created it and
-	when it was created.  Suggested by Stephen Eglen
-	<stephen@cogsci.ed.ac.uk>.
-
-2000-03-21  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* polynomial/polyreduce.m: Simplify by looking for the first
-	non-zero element rather than the last of the first set of zero
-	elements.
-
-	* plot/__pltopt1__.m: Accept "--", "-.", and ":" line styles.
-
-2000-03-21  Kai Habel  <kahacjde@calvados.zrz.TU-Berlin.DE>
-
-	* image/saveimage.m: Swap black and white colormaps so zero is
-	displayed as black and 1 is displayed as white.
-	Fix indexing bug in ppm case.
-
-2000-03-06  Stephen Eglen  <stephen@anc.ed.ac.uk>
-
-	* statistics/tests/kolmogorov_smirnov_test_2.m: Account for ties
-	between the two distributions (took same approach as ks.test() in R.)
-
-2000-02-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/bode.m: Temporarily disable automatic_replot.
-
-2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): Also remove gethelp.
-
-	* specfun/erfinv.m: Use z_new in convergence test, not z_old.
-
-2000-02-11  Georg Thimm  <mgeorg@SGraphicsWS1.mpe.ntu.edu.sg>
-
-	* set/create_set.m: Use find to avoid while loop.
-
-2000-02-11  Stephen Eglen  <stephen@cogsci.ed.ac.uk>
-
-	* plot/hist.m: New optional third argument.
-
-2000-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/bug_report.m: Use octave-bug script with version
-	number appended.
-
-2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* gethelp.cc: Sprinkle with std:: qualifier.
-
-2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Delete some debugging code.
-
-2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* signal/sinc.m: Avoid reshaping.
-
-	* image/rgb2ind.m: No longer needs to reset do_fortran_indexing.
-	* image/ind2rgb.m: Ditto.
-	* image/ind2gray.m: Ditto.
-	* general/reshape.m: Ditto.  Also no longer needs to reset
-	implicit_str_to_num_ok.
-
-2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/popen2.m: Deal with the fact that pipe now returns
-	a list of file structures, not a vector of numeric file ids.
-
-2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__axis_label__.m: New function.
-	Undo string escapes in text twice(!) before sending to gnuplot.
-	* plot/xlabel.m: Use it.
-	* plot/ylabel.m: Ditto.
-	* plot/zlabel.m: Ditto.
-
-	* plot/mesh.m: Fix error message to reflect reality.
-
-2000-01-24  Cyril Humbert  <humbert@phobos.univ-mlv.fr>
-
-	* statistics/distributions/weibull_pdf.m: Use correct formula.
-
-2000-01-22  Michael Reifenberger  <mike@Plaut.de>
-
-	* audio/saveaudio.m: Also accept files with .ul extension.
-	* audio/loadaudio.m: Ditto.
-	* audio/playaudio.m: Ditto.
-
-2000-01-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/distributions/beta_cdf.m: Texinfoize doc string.
-	* statistics/distributions/beta_inv.m: Ditto.
-	* statistics/distributions/beta_pdf.m: Ditto.
-	* statistics/distributions/beta_rnd.m: Ditto.
-	* statistics/distributions/binomial_cdf.m: Ditto.
-	* statistics/distributions/binomial_inv.m: Ditto.
-	* statistics/distributions/binomial_pdf.m: Ditto.
-	* statistics/distributions/binomial_rnd.m: Ditto.
-	* statistics/distributions/cauchy_cdf.m: Ditto.
-	* statistics/distributions/cauchy_inv.m: Ditto.
-	* statistics/distributions/cauchy_pdf.m: Ditto.
-	* statistics/distributions/cauchy_rnd.m: Ditto.
-	* statistics/distributions/chisquare_cdf.m: Ditto.
-	* statistics/distributions/chisquare_inv.m: Ditto.
-	* statistics/distributions/chisquare_pdf.m: Ditto.
-	* statistics/distributions/chisquare_rnd.m: Ditto.
-	* statistics/distributions/discrete_cdf.m: Ditto.
-	* statistics/distributions/discrete_inv.m: Ditto.
-	* statistics/distributions/discrete_pdf.m: Ditto.
-	* statistics/distributions/discrete_rnd.m: Ditto.
-	* statistics/distributions/empirical_cdf.m: Ditto.
-	* statistics/distributions/empirical_inv.m: Ditto.
-	* statistics/distributions/empirical_pdf.m: Ditto.
-	* statistics/distributions/empirical_rnd.m: Ditto.
-	* statistics/distributions/exponential_cdf.m: Ditto.
-	* statistics/distributions/exponential_inv.m: Ditto.
-	* statistics/distributions/exponential_pdf.m: Ditto.
-	* statistics/distributions/exponential_rnd.m: Ditto.
-	* statistics/distributions/f_cdf.m: Ditto.
-	* statistics/distributions/f_inv.m: Ditto.
-	* statistics/distributions/f_pdf.m: Ditto.
-	* statistics/distributions/f_rnd.m: Ditto.
-	* statistics/distributions/gamma_cdf.m: Ditto.
-	* statistics/distributions/gamma_inv.m: Ditto.
-	* statistics/distributions/gamma_pdf.m: Ditto.
-	* statistics/distributions/gamma_rnd.m: Ditto.
-	* statistics/distributions/geometric_cdf.m: Ditto.
-	* statistics/distributions/geometric_inv.m: Ditto.
-	* statistics/distributions/geometric_pdf.m: Ditto.
-	* statistics/distributions/geometric_rnd.m: Ditto.
-	* statistics/distributions/hypergeometric_cdf.m: Ditto.
-	* statistics/distributions/hypergeometric_inv.m: Ditto.
-	* statistics/distributions/hypergeometric_pdf.m: Ditto.
-	* statistics/distributions/hypergeometric_rnd.m: Ditto.
-	* statistics/distributions/kolmogorov_smirnov_cdf.m: Ditto.
-	* statistics/distributions/laplace_cdf.m: Ditto.
-	* statistics/distributions/laplace_inv.m: Ditto.
-	* statistics/distributions/laplace_pdf.m: Ditto.
-	* statistics/distributions/laplace_rnd.m: Ditto.
-	* statistics/distributions/logistic_cdf.m: Ditto.
-	* statistics/distributions/logistic_inv.m: Ditto.
-	* statistics/distributions/logistic_pdf.m: Ditto.
-	* statistics/distributions/logistic_rnd.m: Ditto.
-	* statistics/distributions/lognormal_cdf.m: Ditto.
-	* statistics/distributions/lognormal_inv.m: Ditto.
-	* statistics/distributions/lognormal_pdf.m: Ditto.
-	* statistics/distributions/lognormal_rnd.m: Ditto.
-	* statistics/distributions/normal_cdf.m: Ditto.
-	* statistics/distributions/normal_inv.m: Ditto.
-	* statistics/distributions/normal_pdf.m: Ditto.
-	* statistics/distributions/normal_rnd.m: Ditto.
-	* statistics/distributions/pascal_cdf.m: Ditto.
-	* statistics/distributions/pascal_inv.m: Ditto.
-	* statistics/distributions/pascal_pdf.m: Ditto.
-	* statistics/distributions/pascal_rnd.m: Ditto.
-	* statistics/distributions/poisson_cdf.m: Ditto.
-	* statistics/distributions/poisson_inv.m: Ditto.
-	* statistics/distributions/poisson_pdf.m: Ditto.
-	* statistics/distributions/poisson_rnd.m: Ditto.
-	* statistics/distributions/stdnormal_cdf.m: Ditto.
-	* statistics/distributions/stdnormal_inv.m: Ditto.
-	* statistics/distributions/stdnormal_pdf.m: Ditto.
-	* statistics/distributions/stdnormal_rnd.m: Ditto.
-	* statistics/distributions/t_cdf.m: Ditto.
-	* statistics/distributions/t_inv.m: Ditto.
-	* statistics/distributions/t_pdf.m: Ditto.
-	* statistics/distributions/t_rnd.m: Ditto.
-	* statistics/distributions/uniform_cdf.m: Ditto.
-	* statistics/distributions/uniform_inv.m: Ditto.
-	* statistics/distributions/uniform_pdf.m: Ditto.
-	* statistics/distributions/uniform_rnd.m: Ditto.
-	* statistics/distributions/weibull_cdf.m: Ditto.
-	* statistics/distributions/weibull_inv.m: Ditto.
-	* statistics/distributions/weibull_pdf.m: Ditto.
-	* statistics/distributions/weibull_rnd.m: Ditto.
-	* statistics/distributions/wiener_rnd.m: Ditto.
-
-2000-01-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/base/values.m: Texinfoize doc string.
-	* statistics/base/var.m: Ditto.
-	* statistics/base/table.m: Ditto.
-	* statistics/base/studentize.m: Ditto.
-	* statistics/base/statistics.m: Ditto.
-	* statistics/base/spearman.m: Ditto.
-	* statistics/base/run_count.m: Ditto.
-	* statistics/base/ranks.m: Ditto.
-	* statistics/base/range.m: Ditto.
-	* statistics/base/qqplot.m: Ditto.
-	* statistics/base/probit.m: Ditto.
-	* statistics/base/ppplot.m: Ditto.
-	* statistics/base/moment.m: Ditto.
-	* statistics/base/meansq.m: Ditto.
-	* statistics/base/logit.m: Ditto.
-	* statistics/base/kendall.m: Ditto.
-	* statistics/base/iqr.m: Ditto.
-	* statistics/base/cut.m: Ditto.
-	* statistics/base/cor.m: Ditto.
-	* statistics/base/cloglog.m: Ditto.
-	* statistics/base/center.m: Ditto.
-	* statistics/models/logistic_regression.m: Ditto.
-	* statistics/models/logistic_regression_derivative.m: Ditto.
-	* statistics/models/logistic_regression_likelihood.m: Ditto.
-	* statistics/tests/anova.m: Ditto.
-	* statistics/tests/bartlett_test.m: Ditto.
-	* statistics/tests/chisquare_test_homogeneity.m: Ditto.
-	* statistics/tests/chisquare_test_independence.m: Ditto.
-	* statistics/tests/cor_test.m: Ditto.
-	* statistics/tests/f_test_regression.m: Ditto.
-	* statistics/tests/hotelling_test.m: Ditto.
-	* statistics/tests/hotelling_test_2.m: Ditto.
-	* statistics/tests/kolmogorov_smirnov_test.m: Ditto.
-	* statistics/tests/kolmogorov_smirnov_test_2.m: Ditto.
-	* statistics/tests/kruskal_wallis_test.m: Ditto.
-	* statistics/tests/manova.m: Ditto.
-	* statistics/tests/mcnemar_test.m: Ditto.
-	* statistics/tests/prop_test_2.m: Ditto.
-	* statistics/tests/run_test.m: Ditto.
-	* statistics/tests/sign_test.m: Ditto.
-	* statistics/tests/t_test.m: Ditto.
-	* statistics/tests/t_test_2.m: Ditto.
-	* statistics/tests/t_test_regression.m: Ditto.
-	* statistics/tests/u_test.m: Ditto.
-	* statistics/tests/var_test.m: Ditto.
-	* statistics/tests/welch_test.m: Ditto.
-	* statistics/tests/wilcoxon_test.m: Ditto.
-	* statistics/tests/z_test.m: Ditto.
-	* statistics/tests/z_test_2.m: Ditto.
-
-2000-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/bin2dec.m: Texinfoize doc string.
-	* plot/__plr1__.m: Ditto.
-	* plot/__pltopt__.m: Ditto.
-	* plot/__plt__.m: Ditto.
-	* plot/__plt2vv__.m: Ditto.
-	* plot/__plr2__.m: Ditto.
-	* plot/__plr__.m: Ditto.
-	* plot/__plt1__.m: Ditto.
-	* plot/__plt2__.m: Ditto.
-	* plot/__plt2mm__.m: Ditto.
-	* plot/__plt2mv__.m: Ditto.
-	* plot/__plt2ss__.m: Ditto.
-	* miscellaneous/paren.m: Ditto.
-	* miscellaneous/comma.m: Ditto.
-	* miscellaneous/semicolon.m: Ditto.
-	* miscellaneous/path.m: Ditto.
-	* miscellaneous/list_primes.m: Ditto.
-	* miscellaneous/flops.m: Ditto.
-	* miscellaneous/dump_prefs.m: Ditto.
-	* miscellaneous/bug_report.m: Ditto.
-	* linear-algebra/dot.m: Ditto
-	* linear-algebra/dmult.m: Ditto.
-	* general/randperm.m: Ditto.
-	* general/logical.m: Ditto.
-	* general/is_duplicate_entry.m: Ditto.
-	* signal/arch_fit.m: Ditto.
-	* signal/arch_rnd.m: Ditto.
-	* signal/arch_test.m: Ditto.
-	* signal/arma_rnd.m: Ditto.
-	* signal/autocor.m: Ditto.
-	* signal/autocov.m: Ditto.
-	* signal/autoreg_matrix.m: Ditto.
-	* signal/bartlett.m: Ditto.
-	* signal/blackman.m: Ditto.
-	* signal/detrend.m: Ditto.
-	* signal/diffpara.m: Ditto.
-	* signal/durbinlevinson.m: Ditto.
-	* signal/fftconv.m: Ditto.
-	* signal/fftfilt.m: Ditto.
-	* signal/fftshift.m: Ditto.
-	* signal/fractdiff.m: Ditto.
-	* signal/freqz.m: Ditto.
-	* signal/hamming.m: Ditto.
-	* signal/hanning.m: Ditto.
-	* signal/hurst.m: Ditto.
-	* signal/periodogram.m: Ditto.
-	* signal/rectangle_lw.m: Ditto.
-	* signal/rectangle_sw.m: Ditto.
-	* signal/sinc.m: Ditto.
-	* signal/sinetone.m: Ditto.
-	* signal/sinewave.m: Ditto.
-	* signal/spectral_adf.m: Ditto.
-	* signal/spectral_xdf.m: Ditto.
-	* signal/spencer.m: Ditto.
-	* signal/stft.m: Ditto.
-	* signal/synthesis.m: Ditto.
-	* signal/triangle_lw.m: Ditto.
-	* signal/triangle_sw.m: Ditto.
-	* signal/yulewalker.m: Ditto.
-	* control/util/strappend.m: Ditto.
-	* control/base/nichols.m: Ditto.
-	* control/system/is_signal_list.m: Ditto.
-	* control/system/listidx.m: Ditto.
-	* control/system/sysgettsam.m: Ditto.
-	* control/system/sysidx.m: Ditto.
-
-2000-01-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/system/__abcddims__.m: Rename from
-	control/system/abcddims.m, change all callers.
-	* control/base/__bodquist__.m: Likewise.
-	* control/base/__freqresp__.m: Likewise.
-	* control/util/__outlist__.m: Likewise.
-	* control/base/__stepimp__.m: Likewise.
-	* control/system/__syschnamesl__.m: Likewise.
-	* control/system/__syscont_disc__.m: Likewise.
-	* control/system/__sysdefioname__.m: Likewise.
-	* control/system/__sysdefstname__.m: Likewise.
-	* control/system/__sysgroupn__.m: Likewise.
-	* control/system/__tf2sysl__.m: Likewise.
-	* control/util/__zgpbal__.m: Likewise.
-	* control/system/__zp2ssg2__.m: Likewise.
-
-	* quaternion/demoquat.m: Add copyright notice, Texinfoize doc string.
-	* quaternion/qconj.m: Ditto.
-	* quaternion/qcoordinate_plot.m: Ditto.
-	* quaternion/qderiv.m: Ditto.
-	* quaternion/qderivmat.m: Ditto.
-	* quaternion/qinv.m: Ditto.
-	* quaternion/qmult.m: Ditto.
-	* quaternion/qtrans.m: Ditto.
-	* quaternion/qtransv.m: Ditto.
-	* quaternion/qtransvmat.m: Ditto.
-	* quaternion/quaternion.m: Ditto.
-
-2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/base/Makefile.in: Ditto.
-	* control/hinf/Makefile.in: New file.
-	* control/marsyas/Makefile.in: Ditto.
-	* control/obsolete/Makefile.in: Ditto.
-	* control/system/Makefile.in: Ditto.
-	* control/util/Makefile.in: Ditto.
-
-	* strings/com2str.m: Move here from control directory.
-
-	* control/base: New directory.
-	* control/base/DEMOcontrol.m: Move here from control directory.
-	* control/base/analdemo.m: Ditto.
-	* control/base/are.m: Ditto.
-	* control/base/bddemo.m: Ditto.
-	* control/base/bode.m: Ditto.
-	* control/base/bode_bounds.m: Ditto.
-	* control/base/bodquist.m: Ditto.
-	* control/base/controldemo.m: Ditto.
-	* control/base/ctrb.m: Ditto.
-	* control/base/damp.m: Ditto.
-	* control/base/dare.m: Ditto.
-	* control/base/dcgain.m: Ditto.
-	* control/base/dgram.m: Ditto.
-	* control/base/dlqe.m: Ditto.
-	* control/base/dlqr.m: Ditto.
-	* control/base/dlyap.m: Ditto.
-	* control/base/dre.m: Ditto.
-	* control/base/frdemo.m: Ditto.
-	* control/base/freqchkw.m: Ditto.
-	* control/base/freqresp.m: Ditto.
-	* control/base/gram.m: Ditto.
-	* control/base/impulse.m: Ditto.
-	* control/base/lqe.m: Ditto.
-	* control/base/lqg.m: Ditto.
-	* control/base/lqr.m: Ditto.
-	* control/base/lsim.m: Ditto.
-	* control/base/ltifr.m: Ditto.
-	* control/base/lyap.m: Ditto.
-	* control/base/nichols.m: Ditto.
-	* control/base/nyquist.m: Ditto.
-	* control/base/obsv.m: Ditto.
-	* control/base/place.m: Ditto.
-	* control/base/pzmap.m: Ditto.
-	* control/base/rldemo.m: Ditto.
-	* control/base/rlocus.m: Ditto.
-	* control/base/step.m: Ditto.
-	* control/base/stepimp.m: Ditto.
-	* control/base/tzero.m: Ditto.
-	* control/base/tzero2.m: Ditto.
-
-	* control/hinf: New directory.
-	* control/hinf/dhinfdemo.m: Move here from control directory.
-	* control/hinf/h2norm.m: Ditto.
-	* control/hinf/h2syn.m: Ditto.
-	* control/hinf/hinf_ctr.m: Ditto.
-	* control/hinf/hinfdemo.m: Ditto.
-	* control/hinf/hinfnorm.m: Ditto.
-	* control/hinf/hinfsyn.m: Ditto.
-	* control/hinf/hinfsyn_chk.m: Ditto.
-	* control/hinf/hinfsyn_ric.m: Ditto.
-	* control/hinf/wgt1o.m: Ditto.
-	* control/hinf/dgkfdemo.m: Ditto.
-	* control/hinf/is_dgkf.m: Ditto.
-
-	* control/marsyas: New directory.
-	* control/marsyas/demomarsyas.m: Move here from control directory.
-	* control/marsyas/susball.m: Ditto.
-
-	* control/obsolete/dezero.m: Move here from control directory.
-	* control/obsolete/rotg.m: Ditto.
-
-	* control/system: New directory.
-	* control/system/abcddim.m: Move here from control directory.
-	* control/system/abcddims.m: Ditto.
-	* control/system/buildssic.m: Ditto.
-	* control/system/c2d.m: Ditto.
-	* control/system/d2c.m: Ditto.
-	* control/system/dmr2d.m: Ditto.
-	* control/system/fir2sys.m: Ditto.
-	* control/system/is_abcd.m: Ditto.
-	* control/system/is_digital.m: Ditto.
-	* control/system/is_sample.m: Ditto.
-	* control/system/is_signal_list.m: Ditto.
-	* control/system/is_siso.m: Ditto.
-	* control/system/is_controllable.m: Ditto.
-	* control/system/is_detectable.m: Ditto.
-	* control/system/is_observable.m: Ditto.
-	* control/system/is_stabilizable.m: Ditto.
-	* control/system/is_stable.m: Ditto.
-	* control/system/jet707.m: Ditto.
-	* control/system/listidx.m: Ditto.
-	* control/system/moddemo.m: Ditto.
-	* control/system/ord2.m: Ditto.
-	* control/system/packedform.m: Ditto.
-	* control/system/parallel.m: Ditto.
-	* control/system/ss2sys.m: Ditto.
-	* control/system/ss2tf.m: Ditto.
-	* control/system/ss2zp.m: Ditto.
-	* control/system/starp.m: Ditto.
-	* control/system/sys2fir.m: Ditto.
-	* control/system/sys2ss.m: Ditto.
-	* control/system/sys2tf.m: Ditto.
-	* control/system/sys2zp.m: Ditto.
-	* control/system/sysadd.m: Ditto.
-	* control/system/sysappend.m: Ditto.
-	* control/system/syschnamesl.m: Ditto.
-	* control/system/syschtsam.m: Ditto.
-	* control/system/sysconnect.m: Ditto.
-	* control/system/syscont.m: Ditto.
-	* control/system/syscont_disc.m: Ditto.
-	* control/system/sysdefioname.m: Ditto.
-	* control/system/sysdefstname.m: Ditto.
-	* control/system/sysdimensions.m: Ditto.
-	* control/system/sysdisc.m: Ditto.
-	* control/system/sysdup.m: Ditto.
-	* control/system/sysgetsignals.m: Ditto.
-	* control/system/sysgettsam.m: Ditto.
-	* control/system/sysgettype.m: Ditto.
-	* control/system/sysgroup.m: Ditto.
-	* control/system/sysgroupn.m: Ditto.
-	* control/system/sysidx.m: Ditto.
-	* control/system/sysmin.m: Ditto.
-	* control/system/sysmult.m: Ditto.
-	* control/system/sysout.m: Ditto.
-	* control/system/sysprune.m: Ditto.
-	* control/system/sysreorder.m: Ditto.
-	* control/system/sysrepdemo.m: Ditto.
-	* control/system/sysscale.m: Ditto.
-	* control/system/syssetsignals.m: Ditto.
-	* control/system/syssub.m: Ditto.
-	* control/system/sysupdate.m: Ditto.
-	* control/system/tf2ss.m: Ditto.
-	* control/system/tf2sys.m: Ditto.
-	* control/system/tf2sysl.m: Ditto.
-	* control/system/tf2zp.m: Ditto.
-	* control/system/tfout.m: Ditto.
-	* control/system/ugain.m: Ditto.
-	* control/system/zp2ss.m: Ditto.
-	* control/system/zp2ssg2.m: Ditto.
-	* control/system/zp2sys.m: Ditto.
-	* control/system/zp2tf.m: Ditto.
-	* control/system/zpout.m: Ditto.
-
-	* control/util: New directory.
-	* control/util/axis2dlim.m: Move here from control directory.
-	* control/util/outlist.m: Ditto.
-	* control/util/prompt.m: Ditto.
-	* control/util/run_cmd.m: Ditto.
-	* control/util/sortcom.m: Ditto.
-	* control/util/strappend.m: Ditto.
-	* control/util/swap.m: Ditto.
-	* control/util/zgfmul.m: Ditto.
-	* control/util/zgfslv.m: Ditto.
-	* control/util/zginit.m: Ditto.
-	* control/util/zgpbal.m: Ditto.
-	* control/util/zgreduce.m: Ditto.
-	* control/util/zgrownorm.m: Ditto.
-	* control/util/zgscal.m: Ditto.
-	* control/util/zgsgiv.m: Ditto.
-	* control/util/zgshsr.m: Ditto.
-
-2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* gethelp.cc (extract_help_text): Discard first space character
-	after consecutive comment characters.
-
-Thu Jan 13 00:56:57 2000  John W. Eaton  <jwe@bahaha.che.wisc.edu>
-
-	* control/obsolete: New directory
-	* control/obsolete/swaprows.m: Move here from control directory.
-	* control/obsolete/swapcols.m: Ditto.
-	* control/obsolete/dlqg.m: Ditto.
-	* control/obsolete/minfo.m: Ditto.
-	* control/obsolete/packsys.m: Ditto.
-	* control/obsolete/qzval.m: Ditto.
-	* control/obsolete/unpacksys.m: Ditto.
-	* control/obsolete/series.m: Ditto.
-	* control/obsolete/syschnames.m: Ditto.
-	* polynomial/polyout.m: Ditto.
-
-2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/fliplr.m: Eliminate useless copy of arg.
-	* general/flipud.m: Ditto.
-
-2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/cross.m: Only return a row vector if both args
-	are row vectors.
-	* polynomial/polyfit.m: Likewise.
-
-	* signal/autocov.m: Don't reset prefer_column_vectors.
-
-	* statistics/distributions/discrete_rnd.m:
-	Always generate a row vector.
-	* statistics/distributions/hypergeometric_rnd.m: Likewise.
-
-2000-01-11  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* strings/upper.m: Add missing `-*- texinfo -*-' tag to doc string.
-
-	* audio/setaudio.m: Texinfoize doc string.
-	* control/com2str.m: Likewise.
-	* control/controldemo.m: Likewise.
-	* control/DEMOcontrol.m: Likewise.
-	* control/dezero.m: Likewise.
-	* control/dre.m: Likewise.
-	* control/hinfsyn_ric.m: Likewise.
-
-2000-01-05  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* io/printf.m: Add @seealso{...} to doc string.
-	* io/puts.m: Likewise.
-	* plot/semilogx.m: Likewise.
-	* plot/semilogy.m: Likewise.
-	* plot/__pltopt__.m: Likewise.
-	* plot/bar.m: Likewise.
-	* plot/xlabel.m: Likewise.
-	* plot/grid.m: Likewise.
-	* plot/shg.m: Likewise.
-	* plot/title.m: Likewise.
-	* plot/mesh.m: Likewise.
-	* plot/__pltopt1__.m: Likewise.
-	* plot/contour.m: Likewise.
-	* plot/hist.m: Likewise.
-	* plot/stairs.m: Likewise.
-	* plot/meshgrid.m: Likewise.
-	* plot/polar.m: Likewise.
-	* plot/loglog.m: Likewise.
-	* plot/plot.m: Likewise.
-	* miscellaneous/semicolon.m: Likewise.
-	* miscellaneous/menu.m: Likewise.
-	* miscellaneous/etime.m: Likewise.
-	* miscellaneous/texas_lotto.m: Likewise.
-	* miscellaneous/comma.m: Likewise.
-	* audio/lin2mu.m: Likewise.
-	* audio/playaudio.m: Likewise.
-	* audio/loadaudio.m: Likewise.
-	* audio/saveaudio.m: Likewise.
-	* audio/mu2lin.m: Likewise.
-	* audio/record.m: Likewise.
-	* strings/isletter.m: Likewise.
-	* strings/lower.m: Likewise.
-	* strings/lower.m: Likewise.
-	* strings/upper.m: Likewise.
-	* specfun/erfinv.m: Likewise.
-	* specfun/gammai.m: Likewise.
-	* specfun/log2.m: Likewise.
-	* specfun/pow2.m: Likewise.
-	* elfun/gcd.m: Likewise.
-	* elfun/lcm.m: Likewise.
-	* special-matrix/vander.m: Likewise.
-	* special-matrix/sylvester_matrix.m: Likewise.
-	* special-matrix/hilb.m: Likewise.
-	* special-matrix/hankel.m: Likewise.
-	* special-matrix/toeplitz.m: Likewise.
-	* special-matrix/invhilb.m: Likewise.
-	* statistics/base/std.m: Likewise.
-	* statistics/base/median.m: Likewise.
-	* linear-algebra/cond.m: Likewise.
-	* linear-algebra/norm.m: Likewise.
-	* finance/nper.m: Likewise.
-	* finance/pmt.m: Likewise.
-	* finance/pv.m: Likewise.
-	* finance/rate.m: Likewise.
-	* finance/npv.m: Likewise.
-	* general/fliplr.m: Likewise.
-	* general/flipud.m: Likewise.
-	* general/is_scalar.m: Likewise.
-	* general/rem.m: Likewise.
-	* general/perror.m: Likewise.
-	* general/tril.m: Likewise.
-	* general/rot90.m: Likewise.
-	* general/num2str.m: Likewise.
-	* general/int2str.m: Likewise.
-	* general/reshape.m: Likewise.
-	* general/logspace.m: Likewise.
-	* general/is_symmetric.m: Likewise.
-	* general/is_vector.m: Likewise.
-	* general/nextpow2.m: Likewise.
-	* general/columns.m: Likewise.
-	* general/is_square.m: Likewise.
-	* general/rows.m: Likewise.
-	* control/ugain.m: Likewise.
-	* control/damp.m: Likewise.
-	* control/dare.m: Likewise.
-	* control/are.m: Likewise.
-	* control/sys2fir.m: Likewise.
-	* control/abcddim.m: Likewise.
-	* control/is_abcd.m: Likewise.
-	* control/step.m: Likewise.
-	* control/is_observable.m: Likewise.
-	* control/is_controllable.m: Likewise.
-	* control/jet707.m: Likewise.
-	* control/polyout.m: Likewise.
-	* control/impulse.m: Likewise.
-	* control/lqg.m: Likewise.
-	* control/is_detectable.m: Likewise.
-	* control/sysdimensions.m: Likewise.
-	* control/sysupdate.m: Likewise.
-	* control/stepimp.m: Likewise.
-	* control/is_stable.m: Likewise.
-	* control/tfout.m: Likewise.
-	* control/zpout.m: Likewise.
-
-2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* set/complement.m: Add @seealso{} stuff.
-	* set/create_set.m: Likewise.
-	* set/intersection.m: Likewise.
-	* set/union.m: Likewise.
-
-1999-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/d2c.m: Use double quotes instead of single quotes for
-	string constants.
-	* control/dgkfdemo.m: Likewise.
-	* control/fir2sys.m: Likewise.
-	* control/frdemo.m: Likewise.
-	* control/moddemo.m: Likewise.
-	* control/minfo.m: Likewise.
-	* control/is_stabilizable.m: Likewise.
-	* control/is_dgkf.m: Likewise.
-	* control/polyout.m: Likewise.
-	* control/sysconnect.m: Likewise.
-	* control/sysrepdemo.m: Likewise.
-	* control/tf2sys.m: Likewise.
-	* control/tfout.m: Likewise.
-	* control/zp2sys.m: Likewise.
-	* control/zpout.m: Likewise.
-	* control/tzero.m: Likewise.
-
-	* control/DEMOcontrol.m: Handle moddemo case too.
-
-	* image/loadimage.m: Use double quotes instead of single quotes
-	for string constants.  Use sprintf instead of square brackets to
-	construct string.
-
-	* control/DEMOcontrol.m: Formatting tweaks.
-	* control/fir2sys.m: Likewise.
-
-1999-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkdoc: Only delete spaces before @ characters at the beginning
-	of a line.
-
-1999-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/bddemo.m: Make it more likely to work with any value of
-	whitespace_in_literal_matrix.
-	* control/analdemo.m: Ditto.
-	* control/dgkfdemo.m: Ditto.
-	* control/frdemo.m: Ditto.
-	* control/sysrepdemo.m: Ditto.
-	* control/moddemo.m: Ditto.
-	* control/zp2ss.m: Ditto.
-	* control/zp2tf.m: Ditto.
-	* control/syssub.m: Ditto.
-	* finance/npv.m: Ditto.
-	* statistics/base/studentize.m: Ditto.
-	* statistics/base/values.m: Ditto.
-	* statistics/distributions/exponential_cdf.m: Ditto.
-	* statistics/distributions/poisson_cdf.m: Ditto.
-
-	* control/dezero.m: Use toascii to convert string to ASCII value
-	instead of multiplying it by 1.
-
-	* control/zp2sys.m: Don't save and restore implicit_str_to_num_ok.
-	* control/zpout.m: Ditto.
-	* control/tfout.m: Ditto.
-	* control/tf2sys.m: Ditto.
-	* control/syssub.m: Ditto.
-	* control/syssetsignals.m: Ditto.
-	* control/sysout.m: Ditto.
-	* control/sysmult.m: Ditto.
-	* control/sysgroup.m: Ditto.
-	* control/sysdup.m: Ditto.
-	* control/sysdisc.m: Ditto.
-	* control/syscont.m: Ditto.
-	* control/sysconnect.m: Ditto.
-	* control/sysappend.m: Ditto.
-	* control/sysadd.m: Ditto.
-	* control/ss2sys.m: Ditto.
-	* control/nyquist.m: Ditto.
-	* control/lqg.m: Ditto.
-	* control/fir2sys.m: Ditto.
-	* control/dmr2d.m: Ditto.
-	* control/dezero.m: Ditto.
-	* control/d2c.m: Ditto.
-	* control/c2d.m: Ditto.
-	* control/bddemo.m: Ditto.
-	* control/pzmap.m: Ditto.
-
-1999-12-08  Daniel Calvelo  <dcalvelo@pharion.univ-lille2.fr>
-
-	* signal/spectral_adf.m: Fix typo.
-
-1999-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/cond.m: Texinfoize doc string.
-	* linear-algebra/kron.m: Ditto.
-	* linear-algebra/norm.m: Ditto.
-	* linear-algebra/null.m: Ditto.
-	* linear-algebra/orth.m: Ditto.
-	* linear-algebra/rank.m: Ditto.
-	* linear-algebra/trace.m: Ditto.
-	* linear-algebra/qzhess.m: Ditto.
-	* miscellaneous/menu.m: Ditto.
-	* general/perror.m: Ditto.
-	* general/strerror.m: Ditto.
-	* general/columns.m: Ditto.
-	* general/rows.m: Ditto.
-	* image/colormap.m: Ditto.
-	* image/gray.m: Ditto.
-	* image/gray2ind.m: Ditto.
-	* image/image.m: Ditto.
-	* image/imagesc.m: Ditto.
-	* image/imshow.m: Ditto.
-	* image/ind2gray.m: Ditto.
-	* image/ind2rgb.m: Ditto.
-	* image/loadimage.m: Ditto.
-	* image/rgb2ntsc.m: Ditto.
-	* image/ntsc2rgb.m: Ditto.
-	* image/ocean.m: Ditto.
-	* image/rgb2ind.m: Ditto.
-	* image/saveimage.m: Ditto.
-	* io/printf.m: Ditto.
-	* io/puts.m: Ditto.
-
-1999-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* special-matrix/hankel.m: Texinfoize doc string.
-	* special-matrix/hilb.m: Ditto.
-	* special-matrix/invhilb.m: Ditto.
-	* special-matrix/sylvester_matrix.m: Ditto.
-	* special-matrix/toeplitz.m: Ditto.
-	* special-matrix/vander.m: Ditto.
-	* linear-algebra/vec.m: Ditto.
-	* linear-algebra/vech.m: Ditto.
-	* general/common_size.m: Ditto.
-	* general/diff.m: Ditto.
-	* general/fliplr.m: Ditto.
-	* general/flipud.m: Ditto.
-	* general/rot90.m: Ditto.
-	* general/reshape.m: Ditto.
-	* general/shift.m: Ditto.
-	* general/tril.m: Ditto.
-	* general/triu.m: Ditto.
-	* general/logspace.m: Ditto.
-	* general/nargchk.m: Ditto.
-
-1999-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/base/mean: Texinfoize doc string.
-	* statistics/base/median: Ditto.
-	* statistics/base/std: Ditto.
-	* statistics/base/cov: Ditto.
-	* statistics/base/corrcoef: Ditto.
-	* statistics/base/kurtosis: Ditto.
-	* statistics/base/mahalanobis: Ditto.
-	* statistics/base/skewness: Ditto.
-	* statistics/base/gls.m: Ditto.
-	* statistics/base/ols.m: Ditto.
-	* signal/detrend.m: Ditto.
-	* signal/freqz.m: Ditto.
-	* signal/sinc.m: Ditto.
-	* signal/fftconv.m: Ditto.
-	* signal/fftfilt.m: Ditto.
-	* set/create_set.m: Ditto.
-	* set/union.m: Ditto.
-	* set/intersection.m: Ditto.
-	* set/complement.m: Ditto.
-	* poly/compan.m: Ditto.
-	* poly/conv: Ditto.
-	* poly/deconv: Ditto.
-	* poly/poly: Ditto.
-	* poly/polyderiv: Ditto.
-	* poly/polyfit: Ditto.
-	* poly/polyinteg: Ditto.
-	* poly/polyreduce: Ditto.
-	* poly/polyval: Ditto.
-	* poly/polyvalm: Ditto.
-	* poly/residue: Ditto.
-	* poly/roots: Ditto.
-	* plot/top_title.m: Ditto
-	* plot/subwindow.m: Ditto
-	* plot/subplot.m: Ditto
-	* plot/plot_border.m: Ditto
-	* plot/oneplot.m: Ditto
-	* plot/multiplot.m: Ditto
-	* plot/mplot.m: Ditto
-	* plot/xlabel.m: Ditto
-	* plot/figure.m: Ditto
-	* plot/meshdom.m: Ditto
-	* plot/mesh.m: Ditto
-	* plot/stairs.m: Ditto
-	* plot/polar.m: Ditto
-	* plot/loglog.m: Ditto
-	* plot/hist.m: Ditto
-	* plot/contour.m: Ditto
-	* plot/bar.m: Ditto
-	* plot/axis.m: Ditto
-	* plot/plot.m: Ditto.
-
-1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/pinv.m: Delete.
-
-	* Makefile.in (DOCSTRINGS): Don't echo $(ALL_M_FILES).
-
-	* strings/blanks.m: Texinfoize doc string.
-	* strings/strcat.m: Ditto.
-	* strings/str2mat.m: Ditto.
-	* strings/deblank.m: Ditto.
-	* strings/findstr.m: Ditto.
-	* strings/index.m: Ditto.
-	* strings/rindex.m: Ditto.
-	* strings/split.m: Ditto.
-	* strings/strcmp.m: Ditto.
-	* strings/strrep.m: Ditto.
-	* strings/substr.m: Ditto.
-	* general/int2str.m: Ditto.
-	* general/num2str.m: Ditto.
-	* strings/dec2bin.m: Ditto.
-	* strings/bin2dec: Ditto.
-	* strings/dec2bin: Ditto.
-	* strings/dec2hex: Ditto.
-	* strings/hex2dec: Ditto.
-	* strings/str2num: Ditto.
-
-1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTFILES): Include DOCSTRINGS.
-
-1999-11-09  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* control/DEMOcontrol.m: Texinfoize doc string.
-	* control/abcddim.m: Ditto.
-	* control/abcddims.m: Ditto.
-	* control/analdemo.m: Ditto.
-	* control/are.m: Ditto.
-	* control/axis2dlim.m: Ditto.
-	* control/bddemo.m: Ditto.
-	* control/bode.m: Ditto.
-	* control/bode_bounds.m: Ditto.
-	* control/bodquist.m: Ditto.
-	* control/buildssic.m: Ditto.
-	* control/c2d.m: Ditto.
-	* control/ctrb.m: Ditto.
-	* control/d2c.m: Ditto.
-	* control/damp.m: Ditto.
-	* control/dare.m: Ditto.
-	* control/dcgain.m: Ditto.
-	* control/dgkfdemo.m: Ditto.
-	* control/dgram.m: Ditto.
-	* control/dlqe.m: Ditto.
-	* control/dlqr.m: Ditto.
-	* control/dlyap.m: Ditto.
-	* control/dmr2d.m: Ditto.
-	* control/fir2sys.m: Ditto.
-	* control/frdemo.m: Ditto.
-	* control/freqchkw.m: Ditto.
-	* control/freqresp.m: Ditto.
-	* control/gram.m: Ditto.
-	* control/h2norm.m: Ditto.
-	* control/h2syn.m: Ditto.
-	* control/hinf_ctr.m: Ditto.
-	* control/hinfdemo.m: Ditto.
-	* control/hinfnorm.m: Ditto.
-	* control/hinfsyn.m: Ditto.
-	* control/hinfsyn_chk.m: Ditto.
-	* control/impulse.m: Ditto.
-	* control/is_abcd.m: Ditto.
-	* control/is_controllable.m: Ditto.
-	* control/is_detectable.m: Ditto.
-	* control/is_dgkf.m: Ditto.
-	* control/is_digital.m: Ditto.
-	* control/is_observable.m: Ditto.
-	* control/is_sample.m: Ditto.
-	* control/is_signal_list.m: Ditto.
-	* control/is_siso.m: Ditto.
-	* control/is_stabilizable.m: Ditto.
-	* control/is_stable.m: Ditto.
-	* control/jet707.m: Ditto.
-	* control/lqe.m: Ditto.
-	* control/lqg.m: Ditto.
-	* control/lqr.m: Ditto.
-	* control/lsim.m: Ditto.
-	* control/ltifr.m: Ditto.
-	* control/lyap.m: Ditto.
-	* control/moddemo.m: Ditto.
-	* control/nyquist.m: Ditto.
-	* control/obsv.m: Ditto.
-	* control/ord2.m: Ditto.
-	* control/outlist.m: Ditto.
-	* control/pinv.m: Ditto.
-	* control/place.m: Ditto.
-	* control/polyout.m: Ditto.
-	* control/prompt.m: Ditto.
-	* control/pzmap.m: Ditto.
-	* control/qzval.m: Ditto.
-	* control/rldemo.m: Ditto.
-	* control/rlocus.m: Ditto.
-	* control/sortcom.m: Ditto.
-	* control/ss2sys.m: Ditto.
-	* control/ss2tf.m: Ditto.
-	* control/ss2zp.m: Ditto.
-	* control/starp.m: Ditto.
-	* control/step.m: Ditto.
-	* control/stepimp.m: Ditto.
-	* control/susball.m: Ditto.
-	* control/sys2fir.m: Ditto.
-	* control/sys2ss.m: Ditto.
-	* control/sys2tf.m: Ditto.
-	* control/sys2zp.m: Ditto.
-	* control/sysadd.m: Ditto.
-	* control/sysappend.m: Ditto.
-	* control/syschnames.m: Ditto.
-	* control/syschnamesl.m: Ditto.
-	* control/syschtsam.m: Ditto.
-	* control/sysconnect.m: Ditto.
-	* control/syscont.m: Ditto.
-	* control/syscont_disc.m: Ditto.
-	* control/sysdefioname.m: Ditto.
-	* control/sysdefstname.m: Ditto.
-	* control/sysdimensions.m: Ditto.
-	* control/sysdisc.m: Ditto.
-	* control/sysdup.m: Ditto.
-	* control/sysgetsignals.m: Ditto.
-	* control/sysgettype.m: Ditto.
-	* control/sysgroup.m: Ditto.
-	* control/sysgroupn.m: Ditto.
-	* control/sysmult.m: Ditto.
-	* control/sysout.m: Ditto.
-	* control/sysprune.m: Ditto.
-	* control/sysreorder.m: Ditto.
-	* control/sysrepdemo.m: Ditto.
-	* control/sysscale.m: Ditto.
-	* control/syssetsignals.m: Ditto.
-	* control/syssub.m: Ditto.
-	* control/sysupdate.m: Ditto.
-	* control/tf2ss.m: Ditto.
-	* control/tf2sys.m: Ditto.
-	* control/tf2sysl.m: Ditto.
-	* control/tf2zp.m: Ditto.
-	* control/tfout.m: Ditto.
-	* control/tzero.m: Ditto.
-	* control/tzero2.m: Ditto.
-	* control/ugain.m: Ditto.
-	* control/wgt1o.m: Ditto.
-	* control/zgfmul.m: Ditto.
-	* control/zgfslv.m: Ditto.
-	* control/zginit.m: Ditto.
-	* control/zgpbal.m: Ditto.
-	* control/zgreduce.m: Ditto.
-	* control/zgrownorm.m: Ditto.
-	* control/zgscal.m: Ditto.
-	* control/zgsgiv.m: Ditto.
-	* control/zgshsr.m: Ditto.
-	* control/zp2ss.m: Ditto.
-	* control/zp2ssg2.m: Ditto.
-	* control/zp2sys.m: Ditto.
-	* control/zp2tf.m: Ditto.
-	* control/zpout.m: Ditto.
-
-1999-11-02  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* audio/lin2mu.m: Texinfoize doc string.
-	* audio/loadaudio.m: Ditto.
-	* audio/mu2lin.m: Ditto.
-	* audio/playaudio.m: Ditto.
-	* audio/record.m: Ditto.
-	* audio/saveaudio.m: Ditto.
-
-1999-10-26  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* elfun/acot.m: Texinfoize doc string.
-	* elfun/acsc.m: Ditto.
-	* elfun/acsch.m: Ditto.
-	* elfun/asec.m: Ditto.
-	* elfun/asech.m: Ditto.
-	* elfun/cot.m: Ditto.
-	* elfun/coth.m: Ditto.
-	* elfun/csc.m: Ditto.
-	* elfun/csch.m: Ditto.
-	* elfun/gcd.m: Ditto.
-	* elfun/lcm.m: Ditto.
-	* elfun/sec.m: Ditto.
-	* elfun/sech.m: Ditto.
-	* general/nextpow2.m: Ditto.
-	* general/rem.m: Ditto.
-	* linear-algebra/commutation_matrix.m: Ditto.
-	* linear-algebra/cross.m: Ditto.
-	* linear-algebra/duplication_matrix.m: Ditto.
-	* miscellaneous/bincoeff.m: Ditto.
-	* miscellaneous/xor.m: Ditto.
-	* specfun/bessel.m: Ditto.
-	* specfun/beta.m: Ditto.
-	* specfun/betai.m: Ditto.
-	* specfun/erfinv.m: Ditto.
-	* specfun/gammai.m: Ditto.
-	* specfun/log2.m: Ditto.
-	* specfun/pow2.m: Ditto.
-
-1999-10-23  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* general/is_scalar.m: Texinfoize help text.
-	* general/is_square.m: Ditto.
-	* general/is_symmetric.m: Ditto.
-
-1999-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/split.m: If the string to be split is empty, just return
-	an empty string.
-
-1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (ALL_M_FILES): New macro.
-	(DOCSTRINGS): No longer .PHONY; depend on $(ALL_M_FILES).
-
-1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/bode.m: Don't return anything if nargout == 0.
-
-1999-10-20  James B. Rawlings  <jbraw@bevo.che.wisc.edu>
-
-	* control/bode.m: Don't do axis scaling for magnitude plots.
-
-1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTFILES): Add move-if-change, mkdoc, and
-	gethelp.cc to the list.
-
-1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time/asctime.m: Texinfoize help text.
-	* time/clock.m: Ditto.
-	* time/date.m: Ditto.
-	* miscellaneous/cputime.m: Ditto.
-	* miscellaneous/etime.m: Ditto.
-	* miscellaneous/is_leap_year.m: Ditto.
-	* miscellaneous/popen2.m: Ditto.
-	* miscellaneous/version.m: Ditto.
-	* miscellaneous/tic.m: Ditto.
-	* miscellaneous/toc.m: Just refer to tic.m.
-
-	* Makefile.in (dist, bin-dist): Use `$(MAKE) -C dir' instead of
-	`cd dir; $(MAKE); cd ..'.
-	($(SUBDIRS)): Likewise.
-
-	* statistics/Makefile.in ($(SUBDIRS)): Likewise.
-
-	* statistics/Makefile.in (bin-dist): Use `$(MAKE) -C dir' instead
-	of `cd dir; $(MAKE)'.
-
-	* gethelp.cc, mkdoc: New files.
-	* Makefile.in: Use them to create DOCSTRINGS file from .m file
-	sources.
-
-1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/kron.m: Fix typo in previous change
-
-1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/bode.m: Allow optional 5th arg to specify plot style.
-
-Wed Sep 22 22:12:03 1999 A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* linear-algebra/krylov.m: Correctly handle case of V having full
-	rank when V has more columns than rows.
-
-Mon Sep 20 23:04:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/linspace.m, linear-algebra/pinv.m: Delete.
-
-	* statistics/tests/manova.m: Avoid problems if
-	whitespace_in_literal_matrix is set to "traditional".
-	* statistics/tests/t_test_regression.m: Likewise.
-	* statistics/tests/u_test.m: Likewise.
-	* statistics/tests/chisquare_test_homogeneity.m: Likewise.
-	* statistics/tests/anova.m: Likewise.
-	* statistics/tests/kruskal_wallis_test.m: Likewise.
-	* statistics/base/statistics.m: Likewise.
-	* image/saveimage.m: Likewise.
-	* signal/arch_fit.m: Likewise.
-	* signal/autoreg_matrix.m: Likewise.
-	* signal/triangle_lw.m: Likewise.
-	* strings/dec2hex.m: Likewise.
-
-Thu Sep  9 19:31:58 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Initialize scale.
-
-Sun Sep  5 22:13:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/reshape.m: Allow reshape (a, size (b)).
-
-Fri Sep  3 00:01:38 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/erfinv.m: Improve stopping criterion.
-	Add iteration count as second return value.
-
-Mon Aug 30 12:07:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/base/mean.m: Use .', not ' to reorient row vectors.
-
-Tue Aug 17 11:11:27 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/pack.m: New function.
-
-Mon Aug 16 07:46:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/figure.m: Always return figure number.  With no args,
- 	figure now creates a new figure window and returns its number.
-	Accept figure (property, value) syntax, but do nothing.
-
-Thu Aug 12 09:28:01 PDT 1999  Tom Poage  <tfpoage@ucdavis.edu>
-
-	* general/shift.m: Avoid printing temporary value for backward shift.
-
-Mon Aug  2 16:39:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/bar.m: Compute bar widths correctly when x-values are not
-	evenly spaced.
-
-Mon Jul 12 22:48:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/cond.m: Avoid returning NaN for matrices that
-	contain only zeros.
-
-Sun Jun 20 22:24:27 1999  Eduardo Gallestey  <eduardo@faceng.anu.edu.au>
-
-	* linear-algebra/kron.m: Create result matrix and insert blocks
-	instead of appending them.
-
-Sat Jun 19 01:52:18 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/bodquist.m, control/buildssic.m, control/is_digital.m,
-	control/stepimp.m, control/sysmin.m, control/syssetsignals.m:
-	Update from A. S. Hodel.
-
-Fri Jun 18 12:19:22 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Correct previous change.
-
-Wed Apr  7 13:57:26 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/qrhouse.m, linear-algebra/krygetq.m: Delete.
-
-Wed Apr  7 13:22:43 1999  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
-
-	* control/is_controllable.m, control/zgscal.m: Accomodate new
-	version of krylov and krylovb.
-
-	* control/outlist.m, control/sysout.m: Fix typos.
-
-	* control/sysdimensions.m: Add option for total number of states.
-
-	* linear-algebra/krylov.m: Improve robustness by row-pivoting.
-	* linear-algebra/krylovb.m: Just call krylov with appropriate
-	arguments.
-
-Tue Mar 30 00:43:09 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/index.m: Fail with meaningful error message if either
-	arg is a string array.
-
-Wed Mar 24 20:34:48 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/norm.m: Do the right thing for 1- and
-	infinity-norms of complex matrices.  From Sven Khatri
-	<khatri@saturn.vocalpoint.com>.
-
-Tue Mar 16 13:36:36 1999  A. Scottedward Hodel"  <scotte@eng.auburn.edu>
-
-	* linear-algebra/qrhouse.m: Handle default args correctly.
-
-Thu Mar 11 12:52:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/split.m: Avoid problems when splitting strings that have
-	\ in them.
-
-Thu Mar 11 12:36:13 1999  Massimo Lorenzin  <maxlorenzin@tin.it>
-
-	* image/colormap.m: Do better arg checking, handle string args
-	that name the colormap function to call (e.g., colormap ("ocean")).
-
-Mon Mar  8 22:23:24 1999  Rolf Fabian  <fabian@TU-Cottbus.De>
-
-	* polynomial/polyfit.m: Use .' transpose operator, not '.
-	* linear-algebra/dot.m: Likewise.
-	* linear-algebra/cross.m: Likewise.
-	* general/rot90.m: Likewise.
-
-Sat Mar  6 01:45:00 1999  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
-
-	* linear-algebra/qrhouse.m: Permute columns at each iteration so
-	that the leading column is not all zeros.
-
-Fri Mar  5 00:37:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/shift.m: Fix potential problems with
-	whitespace_in_literal_matrix.
-	* signal/arch_rnd.m: Ditto.
-	* signal/autocov.m: Ditto.
-	* signal/diffpara.m: Ditto.
-	* signal/hurst.m: Ditto.
-	* signal/periodogram.m: Ditto.
-	* signal/spectral_adf.m: Ditto.
-	* signal/spectral_xdf.m: Ditto.
-	* signal/spencer.m: Ditto.
-	* signal/synthesis.m: Ditto.
-	* statistics/distributions/wiener_rnd.m: Ditto.
-	* statistics/models/logistic_regression_likelihood.m: Ditto.
-	* statistics/models/logistic_regression.m: Ditto.
-	* statistics/models/logistic_regression_derivatives.m: Ditto.
-	* statistics/tests/run_test.m: Ditto.
-	* statistics/tests/chisquare_test_independence.m: Ditto.
-
-Wed Mar  3 02:25:00 1999  Joao Cardoso  <jcardoso@inescn.pt>
-
-	* plot/__plr2__.m: Fix typo.
-
-Tue Jan 12 10:31:15 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__pltopt1__.m: Accept "k" to mean black.
-
-Fri Dec 11 10:43:19 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
-
-	* linear-algebra/krylov.m: Force empty_list_elements_ok for this
-	function.
-
-Thu Dec 10 11:07:00 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
-
-	* control/ss2sys.m: Fix typo.
-
-Wed Dec  9 12:42:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/subplot.m, plot/oneplot.m: Don't call clearplot.
-
-	* control: Update from A. S. Hodel <a.s.hodel@eng.auburn.edu> for
-	signal names as lists of strings instead of string arrays.
-
-Fri Dec  4 16:08:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* quaternion: New directory of functions from A. S. Hodel
-	<a.s.hodel@eng.auburn.edu>.
-	* Makefile.in (SUBDIRS): Add it to the list.
-	* quaternion/Makefile.in: New file.
-	* configure.in (AC_OUTPUT): Add quaternion/Makefile.
-
-Tue Nov 24 21:41:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Make it work again for black and white colormaps.
-
-	* image/imagesc.m: Use rows (colormap), not length (colormap),
-	since there can be fewer rows than columns.  Round values to
-	nearest position in colormap instead of truncating. Correct usage
-	message.
-
-Tue Nov 24 14:50:52 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
-
-	* linear-algebra/krylov.m: New arg pflg.  If nonzero, avoid using
-	zero rows of [A,v] as householder pivots; this avoids spurious
-	non-zero entries in returned orthogonal matrix U, but destroys the
-	Householder matrix structure of H.
-
-Fri Nov 20 12:46:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/logical.m: Just copy input to output if argument is
-	already a logical object.
-
-Fri Nov  6 10:17:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* New files from OCST, in control subdiretory:
-
-	    DEMOcontrol.m      is_siso.m          syschnames.m
-	    abcddim.m          is_stabilizable.m  syschnamesl.m
-	    abcddims.m         is_stable.m        syschtsam.m
-	    analdemo.m         jet707.m           sysconnect.m
-	    are.m              lqe.m              syscont.m
-	    axis2dlim.m        lqg.m              syscont_disc.m
-	    bddemo.m           lqr.m              sysdefioname.m
-	    bode.m             lsim.m             sysdefstname.m
-	    bode_bounds.m      ltifr.m            sysdimensions.m
-	    bodquist.m         lyap.m             sysdisc.m
-	    buildssic.m        mb.m               sysdup.m
-	    c2d.m              minfo.m            sysgetsignals.m
-	    com2str.m          moddemo.m          sysgettsam.m
-	    controldemo.m      nichols.m          sysgettype.m
-	    ctrb.m             nyquist.m          sysgroup.m
-	    d2c.m              obsv.m             sysgroupn.m
-	    damp.m             ord2.m             sysmult.m
-	    dare.m             outlist.m          sysout.m
-	    dcgain.m           packedform.m       sysprune.m
-	    demomarsyas.m      packsys.m          sysreorder.m
-	    dezero.m;          parallel.m         sysrepdemo.m
-	    dgkfdemo.m         place.m            sysscale.m
-	    dgram.m            polyout.m          syssub.m
-	    dhinfdemo.m        prompt.m           sysupdate.m
-	    dlqe.m             pzmap.m            tf2ss.m
-	    dlqg.m             qzval.m            tf2sys.m
-	    dlqr.m             rldemo.m           tf2sysl.m
-	    dlyap.m            rlocus.m           tf2zp.m
-	    dmr2d.m            rotg.m             tfout.m
-	    fir2sys.m          run_cmd.m;         tzero.m
-	    frdemo.m           series.m           tzero2.m
-	    freqchkw.m         sortcom.m          ugain.m
-	    freqresp.m         ss2sys.m           unpacksys.m
-	    gram.m             ss2tf.m            wgt1o.m
-	    h2norm.m           ss2zp.m            zgfmul.m
-	    h2syn.m            starp.m            zgfslv.m
-	    hinf_ctr.m         step.m             zginit.m
-	    hinfdemo.m         stepimp.m          zgpbal.m
-	    hinfnorm.m         strappend.m;       zgreduce.m
-	    hinfsyn.m          susball.m          zgrownorm.m
-	    hinfsyn_chk.m      swap.m             zgscal.m
-	    impulse.m          swapcols.m         zgsgiv.m
-	    is_abcd.m          swaprows.m         zgshsr.m
-	    is_controllable.m  sys2fir.m          zp2ss.m
-	    is_detectable.m    sys2ss.m           zp2ssg2.m
-	    is_dgkf.m          sys2tf.m           zp2sys.m
-	    is_digital.m       sys2zp.m           zp2tf.m
-	    is_observable.m    sysadd.m           zpout.m
-	    is_sample.m        sysappend.m
-
-Thu Nov  5 13:28:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Escape newlinew in macro call with \.
-
-	* strings/deblank.m: Make it work for string arrays too.
-
-Wed Nov  4 21:51:13 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/housh.m: New file from the OCST.
-	* linear-algebra/krygetq.m: Ditto.
-	* linear-algebra/krylov.m: Ditto.
-	* linear-algebra/krylovb.m: Ditto.
-	* linear-algebra/qrhouse.m: Ditto.
-	* general/is_duplicate_entry.m: Ditto.
-
-	* general/is_symmetric.m: Call is_square instead of doing that
-	check in line.
-
-Wed Oct 28 11:51:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/is_square.m:
-
-	* general/isempty.m, general/is_matrix.m: Delete.
-
-	* general/is_symmetric: Delete special case for strings.  Whether
-	the conversion is valid should depend on implicit_str_to_num_ok.
-
-	* general/is_square.m: If arg is not a matrix, don't check size,
-	just return 0.
-	* general/is_symmetric: Likewise.
-	* general/is_vector.m: Likewise.
-	* general/is_scalar.m: Likewise.
-
-	* general/length.m: Delete.
-
-Fri Oct 23 00:21:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in: Add finance/Makefile, statistics/base/Makefile,
-	statistics/distributions/Makefile, statistics/models/Makefile,
-	and statistics/tests/Makefile to the list of files to create.
-
-	* finance/Makefile.in, statistics/base/Makefile.in,
-	statistics/distributions/Makefile.in, statistics/models/Makefile.in,
-  	statistics/tests/Makefile.in: New files.
-	* statistics/Makefile.in: Delete file lists.  Now only handle
-	subdirectories.
-	* Makefile.in (SUBDIRS): Add finance.
-
-	* Move the following files from statistics to statistics/base:
-
-	    corrcoef.m
-	    kurtosis.m
-	    mahalanobis.m
-	    median.m
-	    ols.m
-	    skewness.m
-	    std.m
-
-	New files, from Kurt Hornik's octave-ci package:
-
-	* finance (new directory):
-
-	    fv.m
-	    fvl.m
-	    irr.m
-	    nper.m
-	    npv.m
-	    pmt.m
-	    pv.m
-	    pvl.m
-	    rate.m
-	    vol.m
-
-	* linear-algebra/dmult.m
-
-	* signal:
-
-	    arch_fit.m
-	    arch_rnd.m
-	    arch_test.m
-	    arma_rnd.m
-	    autocor.m
-	    autocov.m
-	    autoreg_matrix.m
-	    bartlett.m
-	    blackman.m
-	    diffpara.m
-	    durbinlevinson.m
-	    fractdiff.m
-	    hamming.m
-	    hanning.m
-	    hurst.m
-	    periodogram.m
-	    rectangle_lw.m
-	    rectangle_sw.m
-	    sinetone.m
-	    sinewave.m
-	    spectral_adf.m
-	    spectral_xdf.m
-	    spencer.m
-	    stft.m
-	    synthesis.m
-	    triangle_lw.m
-	    triangle_sw.m
-	    yulewalker.m
-
-	* statistics/base (new directory):
-
-	    center.m
-	    cloglog.m
-	    cor.m
-	    cov.m
-	    cut.m
-	    iqr.m
-	    kendall.m
-	    logit.m
-	    mean.m
-	    meansq.m
-	    moment.m
-	    ppplot.m
-	    probit.m
-	    qqplot.m
-	    range.m
-	    ranks.m
-	    run_count.m
-	    spearman.m
-	    statistics.m
-	    studentize.m
-	    table.m
-	    values.m
-	    var.m
-
-	(Replaces cov.m and mean.m with new versions.)
-
-	* statistics/distributions (new directory):
-
-	    beta_cdf.m
-	    beta_inv.m
-	    beta_pdf.m
-	    beta_rnd.m
-	    binomial_cdf.m
-	    binomial_inv.m
-	    binomial_pdf.m
-	    binomial_rnd.m
-	    cauchy_cdf.m
-	    cauchy_inv.m
-	    cauchy_pdf.m
-	    cauchy_rnd.m
-	    chisquare_cdf.m
-	    chisquare_inv.m
-	    chisquare_pdf.m
-	    chisquare_rnd.m
-	    discrete_cdf.m
-	    discrete_inv.m
-	    discrete_pdf.m
-	    discrete_rnd.m
-	    empirical_cdf.m
-	    empirical_inv.m
-	    empirical_pdf.m
-	    empirical_rnd.m
-	    exponential_cdf.m
-	    exponential_inv.m
-	    exponential_pdf.m
-	    exponential_rnd.m
-	    f_cdf.m
-	    f_inv.m
-	    f_pdf.m
-	    f_rnd.m
-	    gamma_cdf.m
-	    gamma_inv.m
-	    gamma_pdf.m
-	    gamma_rnd.m
-	    geometric_cdf.m
-	    geometric_inv.m
-	    geometric_pdf.m
-	    geometric_rnd.m
-	    hypergeometric_cdf.m
-	    hypergeometric_inv.m
-	    hypergeometric_pdf.m
-	    hypergeometric_rnd.m
-	    kolmogorov_smirnov_cdf.m
-	    laplace_cdf.m
-	    laplace_inv.m
-	    laplace_pdf.m
-	    laplace_rnd.m
-	    logistic_cdf.m
-	    logistic_inv.m
-	    logistic_pdf.m
-	    logistic_rnd.m
-	    lognormal_cdf.m
-	    lognormal_inv.m
-	    lognormal_pdf.m
-	    lognormal_rnd.m
-	    normal_cdf.m
-	    normal_inv.m
-	    normal_pdf.m
-	    normal_rnd.m
-	    pascal_cdf.m
-	    pascal_inv.m
-	    pascal_pdf.m
-	    pascal_rnd.m
-	    poisson_cdf.m
-	    poisson_inv.m
-	    poisson_pdf.m
-	    poisson_rnd.m
-	    stdnormal_cdf.m
-	    stdnormal_inv.m
-	    stdnormal_pdf.m
-	    stdnormal_rnd.m
-	    t_cdf.m
-	    t_inv.m
-	    t_pdf.m
-	    t_rnd.m
-	    uniform_cdf.m
-	    uniform_inv.m
-	    uniform_pdf.m
-	    uniform_rnd.m
-	    weibull_cdf.m
-	    weibull_inv.m
-	    weibull_pdf.m
-	    weibull_rnd.m
-	    wiener_rnd.m
-
-	* statistics/models (new directory):
-
-	    logistic_regression.m
-	    logistic_regression_derivatives.m
-	    logistic_regression_likelihood.m
-
-	* statistics/tests (new directory):
-
-	    anova.m
-	    bartlett_test.m
-	    chisquare_test_homogeneity.m
-	    chisquare_test_independence.m
-	    cor_test.m
-	    f_test_regression.m
-	    hotelling_test.m
-	    hotelling_test_2.m
-	    kolmogorov_smirnov_test.m
-	    kolmogorov_smirnov_test_2.m
-	    kruskal_wallis_test.m
-	    manova.m
-	    mcnemar_test.m
-	    prop_test_2.m
-	    run_test.m
-	    sign_test.m
-	    t_test.m
-	    t_test_2.m
-	    t_test_regression.m
-	    u_test.m
-	    var_test.m
-	    welch_test.m
-	    wilcoxon_test.m
-	    z_test.m
-	    z_test_2.m
-
-Thu Oct 22 12:25:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time/date.m: Use %Y, not %y in format string, for Matlab 5
-	compatibility and to avoid Y2K problems.
-
-Mon Oct 19 17:26:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Just use the \ operator to handle the
-	least-squares solution.
-
-Thu Sep  3 12:40:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/str2num.m: If eval returns a string, return an empty matrix.
-
-	* strings/strrep.m: Don't convert args to numeric values.
-	Prevent warnings for empty string args.
-	From Georg Thimm <thimm@idiap.ch>.
-
-	* strings/strcat.m: Prevent warnings for empty string args.
-
-Wed Sep  2 17:20:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/menu.m: Remove special case for empty string
-	returned from input().  Add second arg to eval() to catch errors.
-
-Thu Jun 18 16:32:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__plt__.m: Don't call usleep.
-
-Mon May 18 11:42:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/dot.m: New function.
-
-	* strings/lower.m, strings/upper.m: New functions, for Matlab
-	compatibility.
-
-Fri May 15 01:16:53 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/hist.m: Also allow just one output argument.
-
-Sun May 10 23:00:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/deblank.m: Make it work if the string is only blanks.
-
-Tue May  5 00:53:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__plt2mv__.m: Delete calls to keyboard.
-
-Mon May  4 11:43:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/oneplot.m: Fix typo.
-
-Wed Apr 22 12:11:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/flops.m: Allow a single argument too.
-
-Tue Apr 21 10:18:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/str2mat.m: Also handle case when there are no empty
-	strings correctly.
-
-Mon Apr 20 22:14:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/isletter.m: New function, for Matlab compatibility.
-
-Fri Apr 17 10:53:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/str2mat.m: Handle string matrices too.
-
-Wed Apr 15 11:16:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* audio/loadaudio.m: Accept "pcm" as another file extension for
-	linear encoding.
-
-	* audio/saveaudio.m, audio/loadaudio.m, audio/playaudio.m,
-	audio/record.m: Open files in binary mode.
-
-Fri Apr 10 10:46:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/dump_prefs.m: Use string array for list of values.
-	Move functionality of dump_1_pref here, but use built-in function
-	type to extract value, and put it inside try/catch block.
-	* miscellaneous/dump_1_pref.m: Delete unused function.
-
-Wed Apr  8 13:17:58 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__pltopt1.m__: New file.
-	* plot/__pltopt.m__: Handle opt as a string array by calling
-	__pltopt1__ multiple times and returning a string array with rows
-	corresponding to the rows of opt.
-	* plot/__plt2ss__.m, plot/__plt2vv__.m, plot/__plt2vm__.m,
-	plot/__plt2mv__.m, plot/__plt2mm__.m: Handle fmt as a string
-	array.
-
-Fri Mar 27 03:00:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/mplot.m: Fix misspellings of global variables.
-	Don't call clearplot.
-
-Tue Mar 17 17:45:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/subplot.m, plot/multiplot.m: Set gnuplot_command_replot to
-	"cle;rep" when going in ot multiplot mode.
-	* plot/oneplot.m: Reset gnuplot_command_replot to "rep" when
-	switching out of multiplot mode.
-
-Fri Feb 20 01:31:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/mplot.m, plot/subplot.m, plot/oneplot.m, plot/multiplot.m,
-	plot/subwindow.m: Call clearplot after setting up multiplot mode.
-
-Tue Feb  3 00:18:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* special-matrix/sylvester_matrix.m: Rename from hadamard.m
-
-	* miscellaneous/bug_report.m: Don't try to get smart with
-	OCTAVE_HOME.  Assume octave-bug can be found in EXEC_PATH.
-
-	* Makefile.in (install): Create separate ls-R files for
-	$(datadir) and $(libexecdir).
-	(uninstall): Remove both ls-R files.
-
-Sat Jan 31 01:09:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* signal/fftshift.m: New file.
-
-	* plot/contour.m: Fix for non-square case.
-
-	* general/randperm.m: New file.
-
-Fri Jan 30 15:20:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/betai.m: Restore file for compatibility with previous
-	versions.  Call betainc with reordered args.
-	* specfun/gammai.m: Likewise, call gammainc with reordered args.
-
-Wed Jan 28 22:44:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/contour.m: Handle discrete contour levels.
-
-Tue Jan 27 04:31:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/lyap.m: For compatibility with Matlab, solve
- 	A*X + X*A' + C = 0 instead of A'*X + X*A + C = 0.
-
-Wed Dec 10 00:14:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/bessel.m: New file.
-
-	* specfun/betai.m, specfun/betainc.m, specfun/gammai.m,
-	specfun/gammainc.m: Delete.
-
-Wed Nov 19 00:19:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/colormap.m: Initialize __current_color_map__ in global
-	statement.
-	* miscellaneous/toc.m: Initialize __tic_toc_timestamp__ in global
-	statement.
-	* plot/axis.m: Initialize __current_axis__ in global statement.
-	* plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/subplot.m,
-	plot/subwindow.m: Initialize __multiplot_mode__ in global statement.
-
-Tue Nov 18 01:35:50 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time/tic.m: Rename _time_tic_called to __tic_toc_timestamp__.
-	* time/toc.m: Likewise.
-
-	* image/colormap.m: Rename CURRENT_COLOR_MAP to __current_color_map__.
-
-	* plot/mplot.m, plot/multiplot.m, plot/subplot.m: Don't do
-	anything special for automatic_replot when in multiplot mode --
-	recent 3.6beta releases handle this correctly.
-
-	* plot/figure.m: Ensure that we are not in multiplot mode before
-	setting the terminal type.
-
-	* plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/subplot.m,
- 	plot/subwindow.m: Use leading and trailing underscores for
- 	`private' globals.
-
-	* plot/oneplot.m: Don't do anything if gnuplot_has_multiplot is false.
-
-Fri Nov 14 10:53:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__pltopt__.m: Use sprintf instead of strcat when adding TITLE.
-
-Fri Oct 10 11:18:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/gammai.m: Avoid problems with whitespace when
-	constructing matrices.
-
-	* polynomial/polyfit.m: Compute yf correctly.  From Seung Lee
-	<SJL@nrc.gov>.  Also return yf in the same orientation as the
-	original y vector.
-
-Fri Sep 19 17:04:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/cross.m: Use direct formula instead of calling
-	det three times in a loop.  If both args are column (row) vectors,
-	return a column (row) vector.  If they don't match, pay attention
-	to the value of prefer_column_vectors.
-
-Thu Aug 28 15:31:20 1997  Rolf Fabian  <fabian@olymp.Umwelt.TU-Cottbus.de>
-
-	* polynomial/polyvalm.m: Don't assume orthogonal eigenvectors for
-	nonsymmetric matrices.
-
-	* general/tril.m: Fix usage message.
-
-	* polynomial/polyvalm.m: Fix error messages.
-	* polynomial/polyderiv.m: Likewise.
-	* polynomial/polyval.m: Likewise.
-
-Wed Aug 13 14:14:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/blanks.m: Allow blanks(0) to return empty string.
-	Allow negative arguments if treat_neg_dim_as_zero is true.
-
-Wed Jun 25 21:26:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/mesh.m: Set noparametric plot mode after plotting.
-
-Wed Jun 25 21:06:10 1997  Rick Niles  <niles@axp745.gsfc.nasa.gov>
-
-	* plot/__pltopt__.m: Handle key/legend names.
-	Correctly set colors, line styles, and point styles.
-
-Wed Jun 25 13:34:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Return fit y values as second output.
-	Don't use QR factorization to solve least squares problem.
-
-Wed Jun 18 10:24:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/dlqr.m: Use ao, not a, to compute k.
-
-Tue Jun  3 12:16:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/path.m: New file.
-
-Wed May 21 11:45:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/bug_report.m: Pass file id to dump_prefs, not file
-	name.
-
-Mon May 12 02:04:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/erfinv.m: Add missing semicolon.
-
-Wed Apr  2 22:04:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/xor.m: Make type of return value logical.
-
-Fri Mar 28 16:19:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/dump_prefs.m: Delete call to dump_1_pref for
-	warn_comma_in_global_decl.
-
-Tue Mar 25 22:00:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/bug_report.m: Use __OCTAVE_HOME__ to find
-	octave-bug script.
-
-Mon Mar 24 16:49:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/dump_prefs.m: Delete call to dump_1_pref for
-	prefer_zero_one_indexing.
-
-	* general/logical.m: New file.
-
-Sat Mar 15 15:07:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/nextpow2.m: Correctly handle new meaning of is_scalar()
-	and is_vector().
-
-Thu Mar 13 16:36:35 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* specfun/erfinv.m: Scale update by sqrt (pi) / 2.
-	Use tolerance of 2 * eps.
-
-Wed Mar 12 16:57:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): New target.
-	* audio/Makefile.in: Ditto.
-	* control/Makefile.in: Ditto.
-	* elfun/Makefile.in: Ditto.
-	* general/Makefile.in: Ditto.
-	* image/Makefile.in: Ditto.
-	* io/Makefile.in: Ditto.
-	* linear-algebra/Makefile.in: Ditto.
-	* miscellaneous/Makefile.in: Ditto.
-	* plot/Makefile.in: Ditto.
-	* polynomial/Makefile.in: Ditto.
-	* set/Makefile.in: Ditto.
-	* signal/Makefile.in: Ditto.
-	* specfun/Makefile.in: Ditto.
-	* special-matrix/Makefile.in: Ditto.
-	* startup/Makefile.in: Ditto.
-	* statistics/Makefile.in: Ditto.
-	* strings/Makefile.in: Ditto.
-
-Tue Mar 11 10:14:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* elfun/coth.m: Write as cosh(x) ./ sinh(x) instead of 1 ./ tanh(x).
-
-Fri Mar  7 23:06:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/corrcoef.m: Make it actually work.
-
-Thu Mar  6 12:36:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/corrcoef.m: Don't fail if single argument is a matrix.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Wed Feb 26 01:48:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (maintainer-clean): Also remove configure.
-
-	* signal/fftconv.m: Check inputs with is_vector(), not is_matrix().
-
-	* general/is_matrix.m: Return zero for empty matrices.
-
-Tue Feb 25 15:16:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/vech.m: Size result just once.
-
-Sun Feb 23 00:15:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/is_square.m: Handle empty matrices correctly.
-	* general/is_symmetric.m: Handle empty matrices and strings.
-
-Sat Feb 22 01:06:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/conv.m: Check inputs with is_vector(), not is_matrix().
-	* polynomial/deconv.m: Likewise.
-	* polynomial/polyderiv.m: Likewise.
-	* polynomial/polyinteg.m: Likewise.
-	* polynomial/polyreduce.m: Likewise.
-	* polynomial/polyval.m: Likewise.
-	* polynomial/polyvalm.m: Likewise.
-	* general/postpad.m: Likewise.
-	* general/prepad.m: Likewise.
-
-	* polynomial/compan.m: Check input with is_vector(), not
-	is_matrix().  Handle scalar case.
-
-Fri Feb 21 13:36:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/contour.m: Order data so that it is consistent with
-	meshgrid and mesh.
-
-	* plot/meshdom.m, plot/meshgrid.m: Change help message.
-	* plot/sombrero.m: Use meshgrid, not meshdom.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/paren.m: New file.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.3 released.
-
-Thu Feb 13 19:06:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Only clip image data that is actually out of
-	range.
-
-Sun Feb  9 19:52:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/is_matrix.m: Scalars, vectors, and empty matrices may
-	also be considered to be matrices.
-
-	* general/is_vector.m: Scalars may also be considered to be vectors.
-
-	* general/isempty.m: Use size(), not rows() and columns().
-
-	* plot/contour.m: Convert set to gset.
-	Set view to 0, 0, 1, 1, not 0, 0, 1.9, 1.
-
-Fri Feb  7 12:55:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/erfinv.m: Fix typo in last change.
-
-Fri Jan 31 09:30:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/loadimage.m: Make it possible to load files with image
-	data named X or img.
-
-	* image/default.img: Change name of image from X to img to match
-	what saveimage does now.
-
-	* image/loadimage.m: Rename X to be img, to match what saveimage
-	does now.
-
-Mon Jan 27 13:48:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-	* plot/__plt__.m: Use usleep() instead of replot to try to avoid
-	weird missing-lines bug without creating extra plots unecessarily.
-
-Sat Jan 25 22:37:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in, audio/Makefile.in, control/Makefile.in,
-	elfun/Makefile.in, general/Makefile.in, image/Makefile.in,
-	io/Makefile.in, linear-algebra/Makefile.in,
-	miscellaneous/Makefile.in, plot/Makefile.in,
-	polynomial/Makefile.in, set/Makefile.in, signal/Makefile.in,
-	specfun/Makefile.in, special-matrix/Makefile.in,
-	startup/Makefile.in, statistics/Makefile.in, strings/Makefile.in,
-	time/Makefile.in (bin-dist): New target.
-
-Wed Jan 22 11:28:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/erfinv.m: Avoid A([]) = X, X != [] error.
-
-Tue Jan 21 11:16:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/xor.m: Make it work.
-
-Mon Jan 20 12:28:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/sombrero.m: Doc fix.
-
-Tue Jan  7 00:16:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Thu Dec 19 22:16:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* elfun/lcm.m: Replace missing if statement.
-
-	* elfun/gcd.m: Report error if no input args.
-	* elfun/lcm.m: Likewise.
-
-Mon Dec 16 15:23:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install): Use ls -LR to create ls-R database.
-	Also list contents of $libexecdir/octave in ls-R database.
-
-Tue Dec 10 01:43:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-Fri Dec  6 15:23:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.94.
-
-Sun Dec  1 20:55:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/str2num.m: New file.
-
-Wed Nov 20 01:00:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.93.
-
-Tue Nov 19 15:13:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* linear-algebra/commutation_matrix.m, linear-algebra/cross.m,
-	linear-algebra/duplication_matrix.m, linear-algebra/vec.m,
-	linear-algebra/vech.m: New files from Kurt Hornik.
-
-	* general/nextpow2.m, general/shift.m, general/diff.m,
-	general/common_size.m: New files from Kurt Hornik.
-
-	* miscellaneous/bincoeff.m, miscellaneous/xor.m:
-	New files from Kurt Hornik.
-
-	* signal/detrend.m: New file from Kurt Hornik.
-
-	* specfun/betai.m, specfun/gammai.m, specfun/erfinv.m,
-	specfun/pow2.m, specfun/log2.m:
-	New files and updates from Kurt Hornik.
-
-Fri Nov 15 18:13:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/__plt__.m: Add explicit replot after last command is
-	issued, to force all lines to be displayed.  Hmm.
-
-Thu Nov 14 00:06:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/axis.m, plot/bottom_title.m, plot/contour.m,
-	plot/figure.m, plot/grid.m, plot/loglog.m, plot/mesh.m,
-	plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/plot.m,
-	plot/plot_border.m, plot/polar.m, plot/semilogx.m,
-	plot/semilogy.m, plot/subplot.m, plot/subwindow.m, plot/title.m,
-	plot/top_title.m, plot/xlabel.m, plot/ylabel.m, plot/zlabel.m:
-	Uset gset, not set.
-
-	* Version 1.92.
-
-Thu Nov  7 12:43:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: When writing PostScript, name Octave as the
-	almighty Creator.  Use single call to fprintf instead of looping.
-
-	* image/Makefile.in: Delete references to octtopnm.
-
-	* general/logspace.m: Doc fix.
-
-	* Version 1.91.
-
-Sat Nov  2 21:06:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/image.m: Use tmpnam() instead of home-brew scheme.
-
-	* audio/record.m, audio/playaudio.m: Use tmpnam() instead of
-	octave_tmp_file_name().  Use unwind_protect to ensure tmp file is
-	deleted.
-	* miscellaneous/bug_report.m: Likewise.  Also use unlink() instead
-	of a system() command to delete the tmp file.
-
-Wed Oct 30 17:19:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-Thu Oct 10 17:31:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/subplot.m, plot/multiplot.m, plot/mplot.m:
-	Don't check for string value of automatic_replot.
-
-	* image/ind2ind.m, image/ind2rgb.m, image/ind2gray.m:
-	Temporarily set do_fortran_indexing to 1, not "true".
-
-	* miscellaneous/menu.m: Temporarily set page_screen_output to 0,
-	not "false".
-
-	* linear-algebra/cond.m: Don't compare propagate_empty_matrices to
-	"false".
-
-Tue Aug 20 18:27:36 1996  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
-
-	* strings/substr.m: Allow negative OFFSET.  LEN is now optional.
-
-Mon Jul 15 16:15:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/bug_report.m: Don't redirect output to /dev/tty in
-	system command.
-
-Fri Jul 12 12:24:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* __plr1__.m: Renamed from polar_int_1.m.
-	* __plr2__.m: Renamed from polar_int_2.m.
-	* __plr__.m: Renamed from polar_int.m.
-	* __plt1__.m: Renamed from plot_int_1.m.
-	* __plt2__.m: Renamed from plot_int_2.m.
-	* __plt2mm__.m: Renamed from plot_2_m_m_.m.
-	* __plt2mv__.m: Renamed from plot_2_m_v_.m.
-	* __plt2ss__.m: Renamed from plot_2_s_s_.m.
-	* __plt2vm__.m: Renamed from plot_2_v_m_.m.
-	* __plt2vv__.m: Renamed from plot_2_v_v_.m.
-	* __plt__.m: Renamed from plot_int.m.
-	* __pltopt__.m: Renamed from plot_opt.m.
-	Change all callers.
-
-Thu Jul 11 17:24:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* All .m files: Add regular Author:, Created:, and Adapted-By:
-	comments like those found in Emacs lisp files.
-
-Mon Jun 24 04:16:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* All .m files: Change comment style.
-
-Fri Jun 14 01:42:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* bottom_title.m, mplot.m, multiplot.m, oneplot.m, plot_border.m,
-	subplot.m, subwindow.m, top_title.m:
-	Print error message if gnuplot_has_multiplot is not true.
-
-Thu Jun  6 00:18:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/figure.m: New function.
-
-Wed Jun  5 18:19:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/strrep.m: New function.
-
-Thu May 23 15:04:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strings/bin2dec.m, strings/blanks.m, strings/deblank.m,
-	strings/dec2bin.m, strings/dec2hex.m, strings/findstr.m,
-	strings/hex2dec.m, strings/index.m, strings/rindex.m,
-	strings/split.m, strings/str2mat.m, strings/substr.m:
-	New functions from Kurt Hornik, heavily modified by jwe.
-
-	* general/reshape.m: Allow strings to be reshaped too.
-
-	* strings/strcmp.m: No longer need to set implicit_str_to_num_ok.
-	Always return a scalar.
-
-Wed May 22 19:52:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Make orientation of result compatible with
-	Matlab.
-
-Sat May 18 17:32:15 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Add missing close paren.
-
-Thu May 16 10:23:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/plot_opt.m: Set compatibility arg in call to sscanf.
-
-	* io/scanf.m: Delete.
-
-Mon May 13 09:37:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/median.m: Fix typo in usage message.
-
-Wed Apr 24 02:45:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/popen2.m: New file.
-
-Wed Apr 17 18:34:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Add io/Makefile.
-
-	* io: New directory.
-	* Makefile.in (SUBDIRS): Add it to the list.
-
-	* miscellaneous/flops.m: New file.
-
-Fri Mar 22 04:40:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/cputime.m: Return three arguments instead of a
-	vector, for compatibility with previous versions and with Matlab
-	(which only returns one scalar value).
-
-Wed Mar 20 05:09:48 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
-
-	* general/triu.m: Compute lower bound on loop index correctly.
-	* general/tril.m: Likewise, for upper bound.
-
-Tue Feb  6 09:29:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: For color images, make sure indices into
-	temporary colormap and result matrix have proper orientation.
-	Set grey flag correctly.
-
-Tue Jan  9 00:12:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* statistics/std.m: Use better formula (from Jim Van Zandt
-	jrv@vanzandt.mv.com).
-
-Sun Jan  7 20:12:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* meshgrid.m: New file (from Jim Van Zandt jrv@vanzandt.mv.com).
-	* mesh.m: Transpose Z if only one arg.
- 	Handle case of all three args being matrices (from Jim Van Zandt
-	jrv@vanzandt.mv.com).
-	* meshdom.m: Undo previous change.
-
-Wed Dec 20 13:48:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* configure.in (AC_OUTPUT): Add audio/Makefile
-
-Thu Nov 16 13:07:07 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* audio: New directory of files from Kurt Hornik and Andreas
-	Weingessel.
-	* audio/Makefile.in: New file.
-	* Makefile.in (SUBDIRS): Add audio to the list.
-
-Mon Nov  6 07:29:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/polyfit.m: Use `economy-stle' QR factorization.
-
-Fri Nov  3 00:38:46 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/mesh.m: Require, length (y) == rows (z) and length (x) ==
-	columns (z), not the other way around.
-	* plot/meshdom.m: Don't reverse order of elements in y.
-
-Thu Nov  2 23:56:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/axis.m: Return current axis if nargin == 0.
-
-Tue Oct 31 04:11:28 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* polynomial/roots.m: Updates from Kurt Hornik.
-
-	* polynomial/polyder.m: New file.
-
-	* polynomial/polyderiv.m: Give return value and arg different names.
-
-Mon Oct 30 23:27:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* specfun/betainc.m: New file.
-	* specfun/gammainc.m: New file.
-
-Wed Oct 18 23:45:52 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* general/strerror.m: New file.
-	* general/perror.m: Implement using strerror().
-
-Thu Oct  5 03:21:36 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/bottom_title.m plot/mplot.m plot/multiplot.m plot/oneplot.m
-	plot/plot_border.m plot/subplot.m plot/subwindow.m
-	plot/top_title.m plot/zlabel.m: New files, from Vinayak Dutt.
-
-	* image/saveimage.m: Round img values first.
-
-Tue Oct  3 03:55:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/abcddim.m control/are.m general/tril.m general/triu.m
-	image/saveimage.m linear-algebra/kron.m linear-algebra/norm.m
-	linear-algebra/null.m miscellaneous/etime.m plot/contour.m
-	plot/mesh.m plot/plot_int.m plot/polar_int.m
-	special-matrix/hankel.m special-matrix/toeplitz.m
-	tuwien/strfun/split.m: Add missing semicolons.
-
-	* plot/polar_int.m: Use .', not ' to make vectors conform.
-
-	* image/Makefile.in: Don't build or install octtoppm.
-
-	* image/saveimage.m: Rewrite to avoid using octoppm and pbm
-	routines so that people who don't have the pbm stuff installed
-	can still use this function.
-
-Mon Oct  2 05:10:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* image/saveimage.m: Better error checking, clean up a bit.
-
-Tue Sep 26 00:04:56 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* plot/plot_opt.m: Change more to more_opts as a temporary fix to
-	avoid conflict with new built-in text-style function more.
-
-	* linear-algebra/norm.m: Also allow 2nd arg == "inf".
-
-	* startup/Makefile.in (install): Also install octaverc in
-	$localfcnfiledir/startup/octavrc.
-
-Wed Sep 20 00:01:30 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkinstalldirs: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-	* Makefile.in (DISTFILES): Distribute configure.in and configure.
-
-Thu Sep 14 03:56:19 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* special-matrix/hankel.m: Compatibility fix.  Complain if
-	r(1) != c(nr), not if r(1) != c(1).
-
-	* signal/filter.m: Doc fix.
-
-Wed Sep 13 03:19:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* miscellaneous/cputime.m: Use new resource structure names (no
-	ru_ or tv_ prefixes).
-
-Tue Sep 12 02:20:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time/ctime.m: Fix doc string and usage message.
-
-Mon Sep 11 18:43:46 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time/clock.m: Use new time structure names (no tm_ prefix).
-
-Thu Aug 24 20:53:08 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* control/c2d.m: Make function work for any value of
-	whitespace_in_literal_matrix.
-	* control/dare.m: Likewise.
-	* control/tzero.m: Likewise.
-	* elfun/gcd.m: Likewise.
-	* elfun/lcm.m: Likewise.
-	* general/postpad.m: Likewise.
-	* general/prepad.m: Likewise.
-	* linear-algebra/kron.m: Likewise.
-	* miscellaneous/etime.m: Likewise.
-	* polynomial/conv.m: Likewise.
-	* polynomial/deconv.m: Likewise.
-	* polynomial/poly.m: Likewise.
-	* polynomial/roots.m: Likewise.
-	* signal/filter.m: Likewise.
-	* signal/freqz.m: Likewise.
-	* signal/fftfilt.m: Likewise.
-
-Tue Jun  6 22:34:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* miscellaneous/is_leap_year.m: Make work for vector args.
-
-Tue May  2 16:18:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* plot/polar_int_2.m: Add missing semicolons.
-	Set theta = theta', not rho'.
-
-Sun Apr 30 11:19:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* polynomial/roots.m: Make it work for any value of
-	whitespace_in_literal_matrix.
-
-Mon Apr 10 09:37:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* configure.in: New file.
-
-Thu Mar 30 13:29:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* control/lyap.m: Add missing semicolon.
-
-	* miscellaneous/cputime.m: New function file.
-
-Wed Mar 29 22:50:49 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* time: New directory.
-	* time/asctime.m, time/clock.m, time/ctime.m, time/date.m:
-	New function files.
-	* time/Makefile.in: New file.
-	* Makefile.in (SUBDIRS): Add time.
-
-Thu Mar 23 15:42:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* polynomial/polyreduce.m: Make sure initial index is not empty.
-
-Tue Mar 14 23:38:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* plot/plot_int_1.m: Transpose data with .', not '.
-
-Fri Mar 10 10:40:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (install uninstall clean mostlyclean distclean
-	realclean): Use SUBDIR_FOR_COMMAND.  Combine actions.
-
-Sun Feb 26 22:18:22 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (install): Create ls-R database file.
-	(uninstall): Delete it.
-
-Fri Feb 24 10:36:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* image/saveimage.m: Fix typo.
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/OLD-ChangeLogs/src-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38717 +0,0 @@
-2011-04-13  Rik  <octave@nomad.inbox5.com>
-
-	* help.cc: Add spaces after commas in @seealso blocks.
-
-2011-04-12  Rik  <octave@nomad.inbox5.com>
-
-	* load-path.cc (restoredefaultpath): Correct use of it's -> its in 
-	documentation.
-
-2011-04-10  John Eaton  <jwe@octave.org>
-
-	* graphics.cc (Fishandle) Accept vector of handles (bug #33025).
-
-2011-04-08  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/eig.cc,
-	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/schur.cc,
-	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc, data.cc: Improve
-	docstrings.
-
-2011-04-06  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/dmperm.cc, data.cc: Clean up operator and function
-	indices.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/nproc.cc: Spellcheck documentation for 3.4.1 release.
-
-2011-04-04  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/colamd.cc, data.cc, file-io.cc: Grammarcheck files
-	for 3.4.1 release.
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* input.cc (add_input_event_hook, remove_input_event_hook): Improve
-	docstring.
-	* utils.cc (isvarname): Add seealso link to iskeyword().
-	* variables.cc (missing_function_hook): Improve docstring.
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/dot.cc (blkmm): Improve docstring.
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (diag): Add documentation for 3-input form of diag.  Add new
-	tests.
-
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (diag): Reverse previous changeset.  Return 3-input form
-	of diag().
-
-2011-04-01  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (diag): Remove archaic 3-input argument form of function.
-	Add all calling forms of function to docstring.
-
-2011-04-01  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/filter.cc: Fix orientation of initial conditions vector
-	(bug #32741).  Revamp test vectors.
-
-2011-04-01  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/__fltk_uigetfile__.cc, DLD-FUNCTIONS/__init_fltk__.cc:
-	Correct typo in #include path (bug #32972).
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/onCleanup.cc: Remove non-existent @seealso link in
-	docstring.
-
-2011-03-31  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/quadcc.cc: Add reference to original paper in docstring.
-
-2011-03-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* file-io.cc: Document the "all" parameter to fclose.
-
-2011-03-29  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.cc: Prevent ticks from being cropped by round-off errors
-	when limmode == auto (bug #32701).
-
-2011-03-28  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/inv.cc (inv, inverse), DLD-FUNCTIONS/tril.cc (tril),
-	data.cc (cumsum, szie), file-io.cc (fgets), ov-typeinfo.cc (typeinfo),
-	ov-usr-fcn.cc (nargout), utils.cc (make_absolute_filename), 
-	variables.cc (who): Improve docstrings
-
-2011-03-25  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Fmkstemp): Use gnulib::mkstemp.
-	* DLD-FUNCTIONS/__init_fltk__.cc (f): Use gnulib::floor.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* dot.cc: Improve seealso cross references in docstring.
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* help.cc (get_help_text, get_help_text_from_file): Improve docstrings.
-
-2011-03-17  John W. Eaton  <jwe@octave.org>
-
-	* ov-float.cc (octave_float_scalar::do_index_op): Widen to float
-	matrix, not double.
-
-2011-03-17  Rik  <octave@nomad.inbox5.com>
-
-	* syscalls.cc (gethostname): Redo documentation string.
-
-2011-03-17  Iain Murray  <iain@iainmurray.net>
-
-	* DLD-FUNCTIONS/nprocs.cc: Delete file.
-	* DLD-FUNCTIONS/nproc.cc: New file.  New function nproc provided by
-	gnulib.
-	* DLD-FUNCTIONS/module-files: Add nproc.cc.
-
-2011-03-16  Iain Murray  <iain@iainmurray.net>
-
-	* DLD-FUNCTIONS/nprocs.cc: New file.
-	* DLD-FUNCTIONS/module-files: Add nprocs.cc.
-	Expose nprocs and nprocs_conf from gnulib.
-
-2011-03-15  Marco Caliari  <marco.caliari@univr.it>
-
-	* graphics.cc: Simplify calculation of number of tick labels.  Fixes
-	bug #32692.
-
-2011-03-13  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (plot_window::plot_window):
-	Revert changes from 2011-02-26.
-
-2011-03-10  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in: Add PERSISTENT mode to listener_mode.
-	(base_property::delete_listener): Take into account persistent
-	mode of a listener.
-	* graphics.cc (addlistener, dellistener): Accept a new optional
-	argument for persistent listeners.
-
-2011-03-07  Konstantinos Poulios  <logari81@googlemail.com>
-
-	Bug #32482.
-
-	* graphics.h.in (axes::properties::update_yaxislocation,
-	axes::properties::update_yaxislocation):
-	Hook update_ylabel_position and update_xlabel_position
-	respectively.
-
-2011-03-06  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (axes::properties::update_xlabel_position,
-	axes::properties::update_ylabel_position,
-	axes::properties::update_zlabel_position,
-	axes::properties::update_title_position):
-	Determine position also for empty axes labels/titles in order
-	to improve the tightinset calculation.
-	(axes::properties::get_extent): Take position of empty strings
-	into account for the calculation of axes extents.
-
-2011-03-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (axes::properties::get_extent): Add new optional
-	argument for ignoring the length of text objects.
-	* graphics.cc (axes::properties::get_extent): Add the possibility
-	of ignoring the length of text objects.
-	(axes::properties::calc_tightbox): Take only text height into
-	account for the calculation of the tight box.
-
-2011-02-26  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (plot_window::plot_window):
-	Move canvas allocation after the configuration of the menubar.
-	(plot_window::show_menubar, plot_window::hide_menubar):
-	Simplify source code.
-
-2011-02-26  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/matrix_type.cc,
-	DLD-FUNCTIONS/strfind.cc, DLD-FUNCTIONS/sub2ind.cc, bitfcns.cc,
-	data.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
-	load-path.cc, load-save.cc, oct-parse.yy, ov-base.cc, ov-cell.cc,
-	ov-class.cc, ov-fcn-handle.cc, ov-fcn-inline.cc, ov-flt-re-mat.cc,
-	ov-struct.cc, ov-usr-fcn.cc, pr-output.cc, pt-mat.cc, sparse.cc,
-	strfns.cc, syscalls.cc, sysdep.cc, toplev.cc, utils.cc, variables.cc:
-	Rewrite error strings to use variables named in documentation.
-
-2011-02-23  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_base::dup): Return retval.
-
-2011-02-22  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (class axes::properties): New hidden property
-	looseinset.
-	(axes::properties::update_looseinset): New function.
-	* graphics.cc (axes::properties::init): Initialize looseinset.
-	(axes::properties::sync_positions): Take looseinset into account
-	instead of default_axes_position.
-	(axes::properties::set_defaults): Default values for looseinset.
-
-2011-02-21  Kai Habel  <kai.habel@gmx.de>
-
-	* src/DLD-FUNCTIONS/__fltk_uigetfile__cc:
-	Use forward slash as file seperator for fltk file path processing only.
-
-2011-02-21  Kai Habel  <kai.habel@gmx.de>
-
-	* src/DLD-FUNCTIONS/__init_fltk__.cc(plot_window::plot_window):
-	Call size_range early to allow window resizing for MacOS and MinGW.
-
-2011-02-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/regexp.cc: Assume we have PCRE.
-
-2011-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* src/DLD-FUNCTIONS/regexp.cc: Use PCRE regular expressions everywhere
-	now that Octave requires library for building.  Remove testif PCRE
-	on testing blocks and adjust all documentation.
-	
-2011-02-18  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (axes::properties::sync_positions): Fix a small
-	bug introduced with changes from 2011-02-14.
-
-2011-02-15  Konstantinos Poulios  <logari81@googlemail.com>
-
-	Bug #32319.
-
-	* DLD-FUNCTIONS/__init_fltk__.cc: Include sysdep.h.
-	(class OpenGL_fltk): Replace integer print_fid member with
-	boolean print_mode. New class member print_cmd of type string.
-	(OpenGL_fltk::print): Accept command string argument instead of
-	file id.
-	(OpenGL_fltk::draw): Invoke and terminate an octave process for
-	the printing job.
-	(plot_window::print, figure_manager::print,
-	figure_manager::do_print): Replace file id with command string.
-	(fltk_graphics_toolkit::print_figure): Remove parsing of file id.
-	* graphics.cc (drawnow): Recognize strings beginning with "|" as
-	pipelines instead of filenames.
-
-2011-02-14  David Bateman  <dbateman@free.fr>
-
-	* gl-render.cc (void opengl_renderer::draw_patch (
-	const patch::properties &)): Obtain the marker color directly
-	from the cdata rather that the facecolor, as the facecolor might
-	not have been set.  Bug #31801.
-
-2011-02-14  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (axes::properties::sync_positions): Calculation of
-	tightinset property.
-
-2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
-
-	Bugs #31800, #32211.
-
-	* gl-render.cc (opengl_renderer::draw_axes_boxes): Draw only one
-	y-axis line when plotyy tag is present.
-	(opengl_renderer::draw_text): Remove superfluous calls of set_font
-	and set_color.
-	* graphics.h.in (class text::properties): Tag color with "u"
-	qualifier.
-	(text::properties::update_color): New function.
-
-2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (axes::properties::update_boundingbox,
-	axes::properties::update_dataaspectratio,
-	axes::properties::update_dataaspectratiomode,
-	axes::properties::update_plotboxaspectratio,
-	axes::properties::update_plotboxaspectratiomode):
-	Replace update_transform hooks with sync_positions. 
-
-2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (axes::properties::get_extent,
-	axes::properties::calc_tightbox): New functions prototypes.
-	(axes::properties::update_view): Hook sync_positions.
-	(axes::properties::update_outerposition,
-	axes::properties::update_position): Set activepositionproperty
-	appropriately.
-	(text::properties::update_string): Call	update_text_extent after
-	request_autopos.
-	* graphics.cc (axes::properties::sync_positions): Enable
-	synchronization of position and outer position. Take label and
-	title extents in the calculation of outerposition into account.
-	Do iterative calculation of position when activepositionproperty
-	is set to outerposition.
-	(axes::properties::update_title_position): Use new function
-	get_extent.
-	(axes::properties::update_autopos): Handle new tag "sync".
-	(axes::properties::get_extent): New function calculating the
-	tight box which contains all axes labels and axes title.
-	(axes::properties::calc_tightbox): New function calculating axes
-	tight box.
-	(axes::properties::update_units): Don't call any hooks and listeners
-	for position, outerposition and tightset.
-	(text::properties::update_text_extent): Request axes positions
-	synchronization when axes labels or title extents change.
-
-2011-02-11  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (strip_trailing_separators): Declare K as size_t
-	rather than octave_idx_type.
-
-2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* DLD-FUNCTIONS/mgorth.cc: New file implementing modified
-	Gram-Schmidt orthogonalization.
-
-2011-02-10  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Avoid deprecated
-	Array<T>::resize function.
-
-2011-02-09  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (axes::properties::update_xlabel_position,
-	axes::properties::update_ylabel_position,
-	axes::properties::update_zlabel_position,
-	axes::properties::update_title_position): Use get_transform only
-	when it is required.
-	(text::properties::request_autopos): Remove redundant temporary
-	settting of autopos_tag to none.
-
-2011-02-08  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (INSTANTIATE_ABS): Omit inline keyword from
-	template instantiation.  From Orion Poplawski <orion@cora.nwra.com>.
-
-2011-02-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (parse_fcn_file): Don't warn about coercing
-	nested functions to subfunctions if yyparse failed.
-
-2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (class axes::properties): Tag positionmode,
-	rotationmode, horizontalalignmentmode, verticalalignmentmode
-	with "u" qualifier. New hidden property autopos_tag.
-	(axes::properties::request_autopos,
-	axes::properties::update_positionmode,
-	axes::properties::update_rotationmode,
-	axes::properties::update_horizontalalignmentmode,
-	axes::properties::update_verticalalignmentmode): New functions
-	(base_properties::update_autopos): New virtual function.
-	(axes::properties::update_xlabel_position,
-	axes::properties::update_ylabel_position,
-	axes::properties::update_zlabel_position,
-	axes::properties::update_title_position): Made public.
-	* graphics.cc (base_properties::update_autopos,
-	axes::properties::update_autopos,
-	text::properties::request_autopos): New functions.
-	(axes::properties::init, axes::properties::set_defaults,
-	axes::properties::set_xlabel, axes::properties::set_ylabel,
-	axes::properties::set_zlabel, axes::properties::set_title):
-	Set autopos_tag for {x,y,z}label and title.
-	(axes::properties::update_xlabel_position,
-	axes::properties::update_ylabel_position,
-	axes::properties::update_zlabel_position,
-	axes::properties::update_title_position): Run only for non-empty
-	strings. Set autopos_tag temporarily to none in order to prevent
-	race conditions.
-
-2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc: Untabify and improve indentation.
-
-2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (updating_axes_layout): New file-scope variable.
-	(axes::properties::update_axes_layout):	Return immediately if
-	updating_axes_layout is true.
-
-2011-02-03  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc: Include <sys/types.h> and <unistd.h> for isatty.
-	Bug #32336.
-
-2011-02-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* gl-render.h: (opengl_renderer::draw_axes_titles): Remove prototype.
-	* gl-render.cc: (opengl_renderer::draw_axes_titles): Remove function.
-	(opengl_renderer::draw_axes_x_grid,
-	opengl_renderer::draw_axes_y_grid,
-	opengl_renderer::draw_axes_z_grid): Remove calculation of axis label
-	positions.
-	* graphics.cc: (axes::properties::update_xlabel_position,
-	axes::properties::update_ylabel_position
-	axes::properties::update_zlabel_position
-	axes::properties::update_title_position): New functions calculating
-	label and title positions.
-	(axes::properties::get_ticklabel_extents): New function.
-	* graphics.h.in: Provide functions prototypes.
-	* txt-eng-ft.cc (ft_render::get_extent): New function version.
-	* txt-eng-ft.h (ft_render::get_extent): Provide function prototype.
-
-2011-02-03  Kai Habel  <kai.habel@gmx.de>
-
-	* src/gl-render.cc(text_to_pixels): Use text_renderer object only
-	when freetype is available
-
-2011-02-03  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (octave_base_value::as_mxArray): Return 0 silently.
-	* mex.cc (mxArray_octave_value::dup): If value can't be
-	converted to mxArray object, then simply create a clone of the
-	mxArray_octave_value container.
-
-2011-02-02  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/eigs.cc, DLD-FUNCTIONS/qr.cc: Use testif to only run
-	some sparse tests when necessary libraries are installed.
-
-2011-02-03  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (axes::properties::update_axes_layout):
-	New function calculating axes layout.
-	(axes::properties::update_ticklengths): New function calculating
-	tick lengths and offsets.
-	* graphics.h.in (class axes::properties):: New private data
-	describing axes layout and corresponding "get" methods. Provide
-	declaration and call dependencies for "update_axes_layout".
-	Tag layer, yaxislocation, xaxislocation, tickdir, tickdirmode,
-	with "u" qualifier.
-	(axes::properties::update_layer,
-	axes::properties::update_yaxislocation,
-	axes::properties::update_xaxislocation,
-	axes::properties::update_ticklengths,
-	axes::properties::update_tickdir,
-	axes::properties::update_tickdirmode): New functions
-	* gl-render.cc:	(opengl_renderer::draw_axes_planes,
-	opengl_renderer::draw_axes_boxes,
-	opengl_renderer::draw_axes_x_grid,
-	opengl_renderer::draw_axes_y_grid,
-	opengl_renderer::draw_axes_z_grid,
-	opengl_renderer::draw_axes_title): Simplify arguments list.
-	(opengl_renderer::draw_axes): Remove calculation of axes layout.
-	(opengl_renderer::setup_opengl_transformation): Disable antializing.
-	* gl-render.h: Adapt functions prototypes.
-
-2011-02-01  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.h (opengl_renderer::draw (const Matrix& hlist)):
-	Use get_object instead of lookup.
-	* DLD-FUNCTIONS/__init_fltk__.cc (Fl_Gl_Window::draw): Likewise.
-	* graphics.h.in (gh_manager::get_object (double)): New function.
-	* gl-renderer.h (opengl_renderer::draw (const graphics_handle&)):
-	Delete.
-	* gl2ps-renderer.h (glps_renderer::draw (const graphics_handle&)):
-	Delete.
-
-2011-02-01  John W. Eaton  <jwe@octave.org>
-
-	* gl2ps-renderer.h: Remove virtual tag for derived virtual functions.
-	(opengl_renderer (const graphics_handle&)): New function.
-	* DLD-FUNCTIONS/__init_fltk__.cc (OpenGL_fltk::Fl_Gl_Window):
-	Don't use new to create temporary glps_renderer object.
-
-2011-02-01  Michael Godfrey  <godfrey@isl.stanford.edu>
-
-	* gl2ps-renderer.cc (glps_renderer::draw):
-	Return immediately if fdopen fails.
-
-2011-02-01  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc:	(opengl_renderer::setup_opengl_transformation,
-	opengl_renderer::draw_axes_planes,
-	opengl_renderer::draw_axes_boxes,
-	opengl_renderer::draw_axes_x_grid,
-	opengl_renderer::draw_axes_y_grid,
-	opengl_renderer::draw_axes_z_grid,
-	opengl_renderer::draw_axes_title,
-	opengl_renderer::draw_axes_children):
-	New private functions, extracted from opengl_renderer::draw_axes.
-	(opengl_renderer::draw_axes): Call subfunctions to do most of
-	the work.
-	* gl-render.h: Provide decls.
-
-2011-01-31  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (get_P_tmpdir): New function.
-	* file-io.cc (FP_tmpdir): Use it.
-	Bug #32158.
-
-2011-01-30  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (mouse_wheel_zoom, gui_mode): Rename
-	functions and strip "fltk_" prefix.  Improve docstrings.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* txt-eng-ft.cc (ft_manager::ft_manager): Omit fc_init_done from
-	initialization list if fontconfig is missing.
-
-2011-01-30  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* oct-parse.yy (class stdio_stream_reader): Disallow copying.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (gnuplot_toolkit::redraw): Call __gnuplot_drawnow__,
-	not gnuplot_drawnow.
-	(gnuplot_toolkit::print_figure): Likewise.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (OCTAVE_LIBS): Remove $(ARPACK_LDFLAGS) and
-	$(ARPACK_LIBS) from the list.
-	(DLD-FUNCTIONS/eigs.df): Don't add $(ARPACK_CPPFLAGS) to CPPFLAGS.
-	(DLD_FUNCTIONS_eigs_la_CPPFLAGS): Remove $(ARPACK_CPPFLAGS) from
-	the list.
-	(DLD_FUNCTIONS_eigs_la_LIBADD): Remove $(ARPACK_LDFLAGS) and
-	$(ARPACK_LIBS) from the list.
-
-2011-01-30  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (Fload): Doc fix.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (fltk_gui_mode, fltk_mouse_wheel_zoom):
-	Improve docstrings.
-
-	* graphics.cc (available_graphics_toolkits): Fix typo in docstring.
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* syscalls.cc (S_ISSOCK, S_ISCHR): Improve docstrings
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* dirfns.cc (readdir, filesep, pathsep): Improve docstrings
-	* file-io.cc (tmpnam): Improve docstring
-	* input.cc (filemarker): Improve docstring
-	* syscalls.cc (stat, lstat): Improve docstring
-
-2011-01-29  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/getrusage.cc, toplev.cc: Improve docstring
-
-2011-01-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__fltk_uigetfile__.cc (__fltk_uigetfile__):
-	Don't allocate Fl_File_Chooser object with new.  Delete unused
-	variable fargs.  Allocate default retval values in initial
-	declaration.
-
-2011-01-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc: Undefine Complex after
-	including FLTK headers.
-	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: Likewise.
-
-2011-01-29  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (__fltk_uigetfile__): Use the same compiler flags
-	as for __init_fltk__.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/eigs.cc (Feigs): Assume we have ARPACK.
-	Use "test" instead of "testif HAVE_ARPACK".
-	* toplev.cc (octave_config_info): Remove ARPACK_CPPFLAGS,
-	ARPACK_LDFLAGS, ARPACK_LIBS from the struct.
-	* oct-conf.h.in (OCTAVE_CONF_ARPACK_CPPFLAGS,
-	OCTAVE_CONF_ARPACK_LDFLAGS, OCTAVE_CONF_ARPACK_LIBS):
-	Delete #defines.
-
-2011-01-28  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: File filter value is
-	1-based now.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (Foutput_max_field_width): Set internal variable
-	output_max_field_width, not output_precision.
-
-2011-01-28  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (Fformat, Ffixed_point_format, Foutput_precision,
-	Foutput_max_field_width, Fsplit_long_rows, Fprint_empty_dimensions):
-	Update @seealso lists.
-
-2011-01-27  Rik  <octave@nomad.inbox5.com>
-
-	* graphics.cc: Improve reset docstring.
-
-2011-01-27  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (__fltk_uigetfile__): Remove here.
-	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: New file. 
-	* DLD-FUNCTIONS/module-files: Add __fltk_uigetfile__.cc.
-	Bug #32190.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Skip leading whitespace
-	on each line.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::subsasgn,
-	octave_scalar_struct::subsasgn): Call undef_subsasgn on object
-	returned by octave_value::empty_conv if LHS is initially undefined.
-	Bug #32242.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (input_event_hook): Fix incorrect use of iterator.
-	Reported by Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
-
-2011-01-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (octave_class::reconstruct_exemplar):
-	Call constructor with do_multi_index_op instead of feval.
-	Verify that symbol_table::find_method did return a class
-	constructor for the correct type.  Bug #32242.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll, graphics.cc, gl-render.cc, ov-mex-fcn.h, graphics.h.in:
-	Delete trailing whitespace.
-
-2011-01-26  John W. Eaton  <jwe@octave.org>
-
-	Bug #32242.
-
-	* ov.h, ov.cc (octave_value::undef_subsasgn): New function.
-	* ov-class.h, ov-class.cc (octave_class::undef_subsasgn,
-	octave_class::subsasgn_common): New functions.
-	* ov-base.h, ov-base.cc (octave_base_value::subsasgn): If
-	undefined, call undef_subsasgn on object returned by
-	octave_value::empty_conv.
-	(octave_base_value::undef_subsasgn): New virtual function.
-	(octave_base_value::subsasgn): Only handle case of undefined
-	values here.
-
-2011-01-26  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-	    John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (scaler::scaler (const std::string&)): New constructor.
-	(graphics_handle::operator++, graphics_hanlde::operator--):
-	Implement as recommended by Effective C++.
-
-	* graphics.h.in (class base_property, class array_property,
-	class children_property, class property, class graphics_xform,
-	class graphics_event): Explicitelly iniatialize
-	all data members in constructor initialisation list.
-	* gl-render.cc (class patch_tesselator): Likewise
-	* graphics.cc (class radio_values, class gh_manager),
-	(class callback_event, class set_event): Likewise.
-
-	* graphics.h.in (class base_graphics_property): Disallow copying.
-	* graphics.cc (class function_event): Likewise.
-	(function_event::function_event (void)): Delete implementation.
-
-2011-01-25  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/config-module.awk: Use automake variable for 
-	portability.
-	* Makefile.am (uninstall-oct): Use GNU Make features for portability
-
-2011-01-25  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
-	load-save.cc: Make docstrings static by removing documentation
-	depending on #ifdef configuration variables.
-
-2011-01-25  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (OCT_STAMP_FILES): New variable.
-	(DISTCLEANFILES): Add $(OCT_STAMP_FILES) to the list.
-	(all-local): Depend on $(OCT_STAMP_FILES) instead of $(OCT_FILES).
-
-	* DLD-FUNCTIONS/config-module.awk: Create stamp files when
-	creating .oct file links.
-
-2011-01-25  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* src/graphics.cc (text::properties::update_text_extent):
-	Disable warning about missing freetype library.
-
-2011-01-25  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* src/graphics.cc (axes::properties::calc_ticks_and_lims):
-	Fixing wrong dimensions of minor ticks vector.
-
-2011-01-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.h (octave_map::octave_map (const string_vector&)):
-	Initialize xvals elements to 1x1 Cells.  Bug #32222.
-
-2011-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* ov-base-mat.h (class octave_base_matrix): Disallow assignment.
-	* ov-range.h (class octave_range): Likewise.
-
-2011-01-23  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_scalar_struct::print_raw):
-	Avoid unnecessary conversion of map value to Cell.
-
-2011-01-22  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table::parent_classes):
-	Also add parents of parents to the list.  Bug #32210.
-
-2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (octave_class::subsasgn): Find appropriate unique base
-	before trying any indexed assignment.  Bug #32182.
-
-2011-01-22  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in, graphics.cc (xmtick, ymtick, zmtick):
-	New properties holding minor ticks positions.
-	(axes::properties::calc_ticks_and_lims): Calculation of minor ticks
-	positions.
-	* gl-render.h, gl-render.cc
-	(opengl_renderer::render_grid,	opengl_renderer::render_tickmarks,
-	opengl_renderer::render_ticktexts): New functions.
-	(opengl_renderer::draw_axes): Make use of new rendering functions
-	and minor ticks positions.
-	Correct axis label positioning for x axis at top and y axis at right
-	position. Bug #31800.
-	Change axis positioning policy for 3D plots, keeping x and y axis
-	always at bottom.
-
-2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* gl-render.cc: Use octave_refcount for refcounting.
-	* oct-map.h: Ditto.
-	* ov-base.h: Ditto.
-	* pt-mat.cc: Ditto.
-
-2011-01-22  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* ov-mex-fcn.h, txt-eng-ft.cc, mex.cc:
-	Initialize all data members in initialization list.
-
-2011-01-22  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (fltk_uimenu): Disallow copying.
-	(class plot_window): Likewise.
-	* c-file-ptr-stream.h (class c_file_ptr_buf): Likewise.
-	(class c_file_ptr_stream): Likewise.
-	(class c_zfile_ptr_buf): Likewise.
-	* gl-render.cc (class opengl_tesselator): Likewise.
-	(class patch_tesselator): Likewise.
-	* lex.ll (class flex_stream_reader): Likewise.
-	* mex.cc (class mex): Likewise.
-	* oct-procbuf.h (class octave_procbuf): Likewise.
-	* pt-cbinop.h (class tree_compound_binary_expression): Likewise.
-	* symtab.h (class scope_id_cache): Likewise.
-	(class symbol_table): Likewise.
-	* txt-eng-ft.h (class ft_manager): Likewise.
-	(class ft_render): Likewise.
-	* unwind-prot.h (class unwind_protect::elem): Likewise.
-	(class unwind_protect::fcn_arg_elem): Likewise.
-	(class unwind_protect::method_elem): Likewise.
-	(class unwind_protect::restore_var_elem): Likewise.
-	(class unwind_protect::delete_ptr_elem): Likewise.
-	(class unwind_protect): Likewise.
-	* zfstream.h (class gzfilebuf): Likewise.
-
-	* mex.cc (class mxArray_octave_value): Disallow assignment.
-	(class mxArray_matlab): Likewise.
-	(class mxArray_number): Likewise.
-	(class mxArray_sparse): Likewise.
-	(class mxArray_struct): Likewise.
-	(class mxArray_cell): Likewise.
-
-	* unwind-prot.h (unwind_protect::elem::elem):
-	Provide default constructor.
-
-2011-01-21  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* src/graphics.cc (axes::properties::set_xlabel,
-	axes::properties::set_ylabel, axes::properties::set_zlabel):
-	Setting axis label color from axis color.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* src/file-io.cc, src/variables.cc: Prevent doubled quotes around @table
-	items in Info.
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* src/DLD-FUNCTIONS/chol.cc, src/DLD-FUNCTIONS/luinc.cc,
-	src/DLD-FUNCTIONS/qz.cc: Use non-breaking spaces between certain
-	adjectives and their linked nouns in docstrings
-
-2011-01-20  Rik  <octave@nomad.inbox5.com>
-
-	* src/DLD-FUNCTIONS/str2double.cc, src/data.cc, src/mappers.cc,
-	src/variables.cc: Use @nospell macro on certain words in docstring.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__delaunayn__.cc,
-	DLD-FUNCTIONS/__init_fltk__.cc,
-	DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/quadcc.cc, DLD-FUNCTIONS/regexp.cc, data.cc,
-	gripes.cc, ls-mat5.cc, toplev.cc, variables.cc:
-	Style fixes for error and warning messages.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Array.cc, Sparse.cc, base-lu.cc, idx-vector.cc,
-	lo-array-gripes.cc: Style fixes for error and warning messages.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__contourc__.cc, DLD-FUNCTIONS/__delaunayn__.cc,
-	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/__glpk__.cc,
-	DLD-FUNCTIONS/__init_fltk__.cc,
-	DLD-FUNCTIONS/__lin_interpn__.cc,
-	DLD-FUNCTIONS/__magick_read__.cc,
-	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/__qp__.cc,
-	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
-	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/ccolamd.cc,
-	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/chol.cc,
-	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/colloc.cc,
-	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
-	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/dlmread.cc,
-	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc,
-	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc,
-	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/givens.cc,
-	DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc,
-	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lookup.cc,
-	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
-	DLD-FUNCTIONS/max.cc, DLD-FUNCTIONS/md5sum.cc,
-	DLD-FUNCTIONS/onCleanup.cc, DLD-FUNCTIONS/qr.cc,
-	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/quadcc.cc,
-	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
-	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
-	DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/sqrtm.cc,
-	DLD-FUNCTIONS/str2double.cc, DLD-FUNCTIONS/strfind.cc,
-	DLD-FUNCTIONS/sub2ind.cc, DLD-FUNCTIONS/svd.cc,
-	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
-	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/tril.cc,
-	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/typecast.cc,
-	DLD-FUNCTIONS/urlwrite.cc, OPERATORS/op-b-sbm.cc,
-	OPERATORS/op-bm-sbm.cc, OPERATORS/op-cdm-cdm.cc,
-	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-scm.cc,
-	OPERATORS/op-cm-sm.cc, OPERATORS/op-cs-cs.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-dm-dm.cc, OPERATORS/op-dms-template.cc,
-	OPERATORS/op-fcdm-fcdm.cc, OPERATORS/op-fcm-fcm.cc,
-	OPERATORS/op-fcm-fcs.cc, OPERATORS/op-fcm-fm.cc,
-	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcs-fcm.cc,
-	OPERATORS/op-fcs-fcs.cc, OPERATORS/op-fcs-fm.cc,
-	OPERATORS/op-fcs-fs.cc, OPERATORS/op-fdm-fdm.cc,
-	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
-	OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
-	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
-	OPERATORS/op-fs-fm.cc, OPERATORS/op-int-concat.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-pm-pm.cc, OPERATORS/op-pm-scm.cc,
-	OPERATORS/op-pm-sm.cc, OPERATORS/op-pm-template.cc,
-	OPERATORS/op-range.cc, OPERATORS/op-s-scm.cc,
-	OPERATORS/op-sbm-b.cc, OPERATORS/op-sbm-bm.cc,
-	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
-	OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-m.cc,
-	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-scm.cc,
-	OPERATORS/op-scm-sm.cc, OPERATORS/op-sm-cm.cc,
-	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-m.cc,
-	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-scm.cc,
-	OPERATORS/op-sm-sm.cc, OPERATORS/op-str-str.cc,
-	OPERATORS/op-ui64-ui64.cc, bitfcns.cc, c-file-ptr-stream.cc,
-	c-file-ptr-stream.h, comment-list.h, data.cc, debug.cc, debug.h,
-	defun-int.h, defun.cc, dynamic-ld.cc, error.cc, file-io.cc,
-	gl-render.cc, gl-render.h, gl2ps-renderer.cc, gl2ps-renderer.h,
-	gl2ps.c, gl2ps.h, graphics.cc, graphics.h.in, help.cc, input.cc,
-	lex.h, lex.ll, load-path.cc, load-path.h, load-save.cc,
-	load-save.h, ls-ascii-helper.cc, ls-hdf5.cc, ls-hdf5.h,
-	ls-mat-ascii.cc, ls-mat4.cc, ls-mat4.h, ls-mat5.cc,
-	ls-oct-ascii.cc, ls-oct-ascii.h, ls-oct-binary.cc, mappers.cc,
-	mex.cc, mex.h, mexproto.h, mxarray.h.in, oct-hist.cc,
-	oct-lvalue.cc, oct-lvalue.h, oct-map.cc, oct-map.h, oct-obj.cc,
-	oct-obj.h, oct-parse.yy, oct-procbuf.cc, oct-stream.cc,
-	oct-stream.h, octave.cc, ov-base-diag.cc, ov-base-diag.h,
-	ov-base-int.cc, ov-base-int.h, ov-base-mat.cc, ov-base-mat.h,
-	ov-base-scalar.cc, ov-base-scalar.h, ov-base-sparse.cc,
-	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
-	ov-bool-mat.h, ov-bool-sparse.cc, ov-bool-sparse.h, ov-bool.cc,
-	ov-bool.h, ov-builtin.h, ov-cell.cc, ov-cell.h, ov-ch-mat.cc,
-	ov-class.cc, ov-class.h, ov-complex.cc, ov-complex.h,
-	ov-cx-diag.cc, ov-cx-diag.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-cx-sparse.cc, ov-cx-sparse.h, ov-dld-fcn.h, ov-fcn-handle.cc,
-	ov-fcn-handle.h, ov-fcn-inline.cc, ov-fcn-inline.h, ov-fcn.h,
-	ov-float.cc, ov-float.h, ov-flt-complex.cc, ov-flt-complex.h,
-	ov-flt-cx-diag.cc, ov-flt-cx-diag.h, ov-flt-cx-mat.cc,
-	ov-flt-cx-mat.h, ov-flt-re-diag.cc, ov-flt-re-diag.h,
-	ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h, ov-lazy-idx.cc,
-	ov-lazy-idx.h, ov-null-mat.cc, ov-null-mat.h, ov-perm.cc,
-	ov-perm.h, ov-range.cc, ov-range.h, ov-re-diag.cc, ov-re-diag.h,
-	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
-	ov-scalar.cc, ov-scalar.h, ov-str-mat.cc, ov-str-mat.h,
-	ov-struct.cc, ov-struct.h, ov-type-conv.h, ov-typeinfo.cc,
-	ov-usr-fcn.cc, ov-usr-fcn.h, ov.cc, ov.h, pager.cc,
-	pr-output.cc, procstream.h, pt-arg-list.cc, pt-assign.h,
-	pt-binop.cc, pt-bp.cc, pt-bp.h, pt-cbinop.cc, pt-cell.cc,
-	pt-colon.cc, pt-const.cc, pt-decl.cc, pt-eval.cc,
-	pt-fcn-handle.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-mat.cc,
-	pt-mat.h, pt-pr-code.cc, pt-select.cc, pt-select.h, pt-stmt.cc,
-	pt-unop.cc, pt-unop.h, sighandlers.cc, sighandlers.h,
-	sparse-xdiv.cc, sparse-xdiv.h, sparse-xpow.cc, sparse-xpow.h,
-	sparse.cc, strfns.cc, symtab.cc, symtab.h, syscalls.cc,
-	sysdep.cc, toplev.cc, toplev.h, txt-eng-ft.cc, txt-eng-ft.h,
-	txt-eng.h, unwind-prot.h, utils.cc, utils.h, variables.cc,
-	variables.h, xdiv.cc, xdiv.h, xnorm.cc, xpow.cc, zfstream.cc,
-	zfstream.h: Strip trailing whitespace.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc, DLD-FUNCTIONS/__init_fltk__.cc,
-	DLD-FUNCTIONS/__magick_read__.cc: Untabify.
-
-2011-01-20  Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
-
-	* debug.h, dynamic-ld.cc, gl-render.cc, gl-render.h,
-	gl2ps-renderer.h, lex.h, ls-hdf5.h, oct-stream.h, oct-strstrm.h,
-	ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
-	ov-cell.h, ov-class.h, ov-dld-fcn.h, ov-fcn-handle.h,
-	ov-lazy-idx.h, ov-perm.h, ov-range.h, ov-struct.h, procstream.h,
-	pt-assign.h, symtab.h, unwind-prot.h: Initialize
-	all data members in initialization list.
-
-2011-01-20  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/__init_fltk__.cc (__fltk_uigetfile__): Append file
-	seperator to 2nd return value (file path).
-	Bug #32190.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* oct-obj.h (octave_value_list::octave_value_list): Initialize
-	all data members in initialization list.  From Pascal Dupuis
-	<Pascal.Dupuis@worldonline.be>.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_mat5_binary_element):
-	Improve diagnositc if uncompress fails.
-
-	* load-path.cc (strip_trailing_separators): New static function.
-	(load_path::do_add, load_path::do_remove): Call it on directory arg.
-
-2011-01-20  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.h, graphics.cc, gl-render.cc, graphics.h.in:
-	Update for backend -> graphics_toolkit change.
-
-	* DLD-FUNCTIONS/__init_fltk__.cc: Rename from fltk_backend.cc
-	Update for backend -> graphics_toolkit change.
-	* DLD-FUNCTIONS/module-files, Makefile.am: Update for renamed file.
-
-2011-01-19  Rik  <octave@nomad.inbox5.com>
-
-	* src/data.cc, src/input.cc, src/utils.cc: spellcheck docstrings.
-
-2011-01-19  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/quad.cc,
-	DLD-FUNCTIONS/quadcc.cc, DLD-FUNCTIONS/rcond.cc,
-	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/strfind.cc,
-	DLD-FUNCTIONS/typecast.cc, data.cc, dirfns.cc, error.cc, file-io.cc,
-	graphics.cc, help.cc, input.cc, load-path.cc, load-save.cc, mappers.cc,
-	oct-hist.cc, oct-parse.yy, pager.cc, pr-output.cc, pt-binop.cc,
-	sparse.cc, strfns.cc, syscalls.cc, sysdep.cc, utils.cc: grammarcheck
-	files in src directory.	
-
-2011-01-19  John W. Eaton  <jwe@octave.org>
-
-	* oct-obj.cc (octave_value_list::all_scalars): Check for scalar
-	values, not strings.  Bug #32172.
-
-2011-01-17  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/module-files: Add quadcc.cc to list of files.
-	* DLD-FUNCTIONS/quad.cc: Add Seealso links to quadcc.
-
-2011-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTION/lookup.cc (Flookup): Validate option string.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_function::bind_automatic_vars):
-	Save argument names in hidden variable .argn..
-
-	* variables.cc (F__varval__): New function.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (bind_automatic_vars): Mark variables created
-	here as automatic.
-
-	* symtab.h (symbol_table::mark_automatic): New function.
-	(symbol_table::do_mark_automatic): New function.
-
-2011-01-17  Michael Godfrey <godfrey@isl.stanford.edu>
-
-	* variables.cc (Fwhos): Describe a and f attributes in help text.
-
-2011-01-17  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (octave_signal_handler): Wait for children here.
-	(sigchld_handler): Not here.
-
-2011-01-16  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dispatch__.cc,
-	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/__glpk__.cc,
-	DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/__pchip_deriv__.cc,
-	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
-	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/ccolamd.cc,
-	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/chol.cc,
-	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/colloc.cc,
-	DLD-FUNCTIONS/conv2.cc, DLD-FUNCTIONS/convhulln.cc,
-	DLD-FUNCTIONS/cquad.cc, DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/det.cc,
-	DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/dmperm.cc,
-	DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
-	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
-	DLD-FUNCTIONS/fltk_backend.cc, DLD-FUNCTIONS/gammainc.cc,
-	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/getgrent.cc,
-	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/hess.cc,
-	DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
-	DLD-FUNCTIONS/max.cc, DLD-FUNCTIONS/md5sum.cc,
-	DLD-FUNCTIONS/onCleanup.cc, DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
-	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
-	DLD-FUNCTIONS/rcond.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/spparms.cc,
-	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/str2double.cc,
-	DLD-FUNCTIONS/strfind.cc, DLD-FUNCTIONS/sub2ind.cc,
-	DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
-	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/time.cc, DLD-FUNCTIONS/tril.cc,
-	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/typecast.cc,
-	DLD-FUNCTIONS/urlwrite.cc: Improve docstrings.  Use same variable names
-	in error() strings and docstrings.
-
-2011-01-16  John W. Eaton  <jwe@octave.org>
-
-	* mkgendoc: Write function name along with file name in comment.
-
-2011-01-15  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* symtab.h (do_clear_global_pattern): Reword so as to not
-	invalidate iterators when calling std::map::erase().
-	* DLD-FUNCTIONS/urwlwrite.cc (~curl_handles): Ditto.
-
-2011-01-15  Rik  <octave@nomad.inbox5.com>
-
-	* src/dirfns.cc, src/help.cc, src/input.cc, src/load-save.cc,
-	src/oct-hist.cc, src/pager.cc, src/pr-output.cc, src/variables.cc:
-	Eliminate @deffn macros.
-
-2011-01-15  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (FWEXITSTATUS, FWIFEXITED): Missing semicolon.
-
-2011-01-15  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc: Use version instead of flops in test.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/svd.cc: Add Seealso references to svd.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* src/mappers.cc: Add Seealso links between sqrt, cbrt, nthroot
-	functions.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Ffnmatch): Use DEFUNX until gnulib's fnmatch is C++
-	friendly.
-
-2011-01-14  Rik  <octave@nomad.inbox5.com>
-
-	* src/mappers.cc: Add Seealso links between erf variants to docstring.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (BADSIG, BLOCK_SIGNAL, SIGCHLD, BLOCK_CHILD,
-	UNBLOCK_CHILD): Move macro definitions here from sighandlers.h.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (mkstemp): Delete.
-	Delete decl for mkstemps.
-	(Fmkstemp): Assume we have mkstemp from gnulib.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/dot.cc,
-	octave.cc: Style fixes.
-
-2011-01-13  David Bateman  <dbateman@free.fr>
-
-	ls-mat5.cc (int save_mat5_element_length (const octave_value&,
-	const std::string&, bool, bool)): For sparse matrices use nnz rather
-	than nzmax.
-	(bool save_mat5_binary_element (std::ostream&, const octave_value&,
-	const std::string&, bool, bool, bool, bool)): ditto.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* base-list.h (class octave_base_list): Provide explicit
-	default and copy construtors, assignment operator, and destructor.
-	* load-path.h (load_path::dir_info::class_info): Likewise.
-
-	* load-path.h (load_path::dir_info::dir_info): Initialize all
-	members in initializaition list.
-	* lex.h (lexical_feedback::lexical_feedback): Likewise.
-
-2011-01-13  John W. Eaton  <jwe@octave.org>
-
-	* cutils.h: New file.
-	(octave_sleep, octave_usleep, octave_raw_vsnprintf): Move decls
-	here from utils.h.
-	* Makefile.am (octinclude_HEADERS): Add cutils.h to the list.
-	* utils.h: Include cutils.h.
-	* cutils.c: Include cutils.h.
-
-2011-01-12  David Grundberg  <individ@acc.umu.se>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (__magick_read__) [!HAVE_MAGICK]:
-	Write more verbose error message that blames on imread, not
-	__magick_read__.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/rand.cc (reset_rand_generator): Delete unused
-	static function.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (graphics_object::get_ancestor): Avoid GCC warning.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gcd.cc (extended_gcd): Tag call to floor with gnulib::.
-
-2011-01-12  John W. Eaton  <jwe@octave.org>
-
-	* oct-hist.cc (Fhistory_control): New function.
-
-2011-01-12  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* oct-hist.cc (default_history_control): New function.
-	(initialize_history): Pass Vhistory control to
-	command_history::initialize.
-
-2011-01-11  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* gl-render.cc (opengl_renderer::draw_axes): Improve positioning
-	of titles.
-
-2011-01-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::print_as_scalar): Always return true.
-	(octave_cell::print_raw): Handle extra newlines here.
-	* ov-struct.cc (Fstruct_levels_to_print): Move here from pr-output.cc
-	(Vstruct_levels_to_print): Move here from pr-output.cc.  Now static.
-	(Vprint_struct_array_contents): New static variable.
-	(Fprint_struct_array_contents): New function.
-	(octave_struct::print_raw): Use Vprint_struct_array_contents.
-	Simplify and improve output.
-	(octave_scalar_struct::print_raw): Simplify and improve output.
-	* pr-output.h (Vstruct_levels_to_print): Delete decl.
-	* ov-class.cc (octave_class::print_raw): Don't unwind_protect
-	Vstruct_levels_to_print.
-
-2011-01-09  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (save_mat5_array_length (const float*, octave_idx_type,
-	bool)): Take in to account the short tags for single data elements.
-	(int save_mat5_element_length (const octave_value&, const std::string&,
-	bool, bool)): Declare sparse matrices const to avoid a copy on read.
-	* ls-utils.cc (save_type get_save_type (float, float)): New function.
-	* ls-utils.h  (save_type get_save_type (float, float)): Declare it.
-
-2011-01-09  John W. Eaton  <jwe@octave.org>
-
-	* token.h, token.cc (token::plot_tok_typ): Delete unused enum.
-	(token::token_type): Delete pttype_token from the list.
-	(token::token (plot_tok_type, int, int)): Delete unused constructor.
-	(token::pttype): Delete unused function.
-	(token::anonymous union): Delete PT element.
-
-2011-01-09  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll (display_token): Display token value for NUM, IMAG_NUM,
-	STRUCT_ELT, NAME, DQ_STRING, and SQ_STRING tokens.
-
-2011-01-09  John W. Eaton  <jwe@octave.org>
-
-	* lex.h, lex.ll, oct-parse.yy (lexer_flags::parsed_function_name):
-	Declare to be std::stack<bool> instead of bool.  Change all uses.
-	Bug #32083.
-
-2011-01-08  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* gl-render.cc (opengl_renderer::draw_axes): Revert positionmode
-	to auto after automatic positioning of titles. Bug #32074.
-
-2011-01-08  David Grundberg  <individ@acc.umu.se>
-
-	* ov-fcn.h (is_subfunction): Rename from is_nested_function.
-	Change all uses and nearby comments.
-	* ov-usr-fcn.h (is_subfunction, mark_as_subfunction): Rename from
-	is_nested_function, mark_as_nested_function.  Change all uses.
-
-2011-01-07  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): For uniformoutput case
-	with nargout > 0, initialize elements of retval to NDArray
-	objects of the same size as the input.  Bug #32067.
-
-2011-01-07  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (Fget): Return empty matrix if no values are found.
-	Bug #32067.
-
-2011-01-06  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* txt-eng-ft.h, txt-eng-ft.cc: Remove dependency on graphics.h.
-	(ft_render::set_font): New arguments list.
-	(ft_render::text_to_pixels): New method.
-	* graphics.cc (text::properties::update_text_extent): Adapt the call
-	to ft_render::set_font.
-	(text::properties::get_extent_matrix): New function.
-	(text::properties::update_text_extent): Function rewrite.
-	* gl-render.cc (opengl_renderer::set_font): Likewise.
-	(opengl_renderer::text_to_pixels):
-	Make use of ft_render::text_to_pixels.
-	(opengl_renderer::render_text): Simplify.
-	(opengl_renderer::draw_text): Make text drawing aware of the text
-	extent property.
-	* gl-render.h (opengl_renderer::text_to_pixels): Arguments reordering.
-	(opengl_renderer::get_transform): New function.
-	* gl2ps-renderer.cc (glps_renderer::render_text): Adapt the call to
-	text_to_pixels.
-	(glps_renderer::alignment_to_mode): New function.
-	(glps_renderer::draw_text): Overload inherited function.
-	* gl2ps-renderer.h (glps_renderer::alignment_to_mode): New function.
-	* graphics.h.in: Add dependency on txt-eng-ft.h.
-	(class text::properties): Tag horizontalalignment and verticalalignment
-	with "u" qualifier.
-	(text::properties::get_extent_matrix, get_pixels,
-	update_horizontalalignment, update_verticalalignment): New functions.
-	(text::properties::renderer): New class member of type ft_render.
-	(text::properties::pixels): New class member of type uint8NDArray.
-
-2011-01-06  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/rand.cc (Frandperm): Tag call to floor with gnulib::.
-	* DLD-FUNCTIONS/gcd.cc (divide): Tag calls to floor with gnulib::.
-	* ov-scalar.cc (octave_scalar::map): Tag floor with gnulib::.
-	* ov-cell.cc (octave_cell::save_hdf5): Tag call to floor with gnulib::.
-	* pr-output.cc (engineering_exponent, num_digits,
-	octave_print_internal_template): Tag call to floor with gnulib::.
-	* graphics.cc: Consistently use std::ceil.
-	(axes::properties::get_axis_limits): Tag calls to floor with gnulib::.
-	(axes::properties::calc_ticks_and_lims): Likewise.
-
-2011-01-05  John W. Eaton  <jwe@octave.org>
-
-	Bug #32060.
-
-	* ov-fcn.h (octave_function::mark_as_private_function): Now virtual.
-	* ov-usr-fcn.h (octave_function::mark_as_private_fucntion):
-	New function.  Mark subfunctions as private also.
-	* symtab.cc, symtab.h
-	(symbol_table::mark_subfunctions_in_scope_as_private,
-	symbol_table::fcn_info::mark_subfunction_in_scope_as_private,
-	symbol_table::fcn_info::fcn_info_rep::mark_subfunction_in_scope_as_private):
-	New functions.
-
-2011-01-04  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw): Improve
-	display of percentage full.  Bug #32011.
-
-2011-01-04  John W. Eaton  <jwe@octave.org>
-
-	* ov-typeinfo.cc (Ftypeinfo): Return cell array of character
-	strings, not character array.  Bug #32050.
-
-2011-01-03  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (islogical, isnumeric): Add tests to check sparse forms of
-	logical matrices.
-
-2011-01-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-bool-sparse.h (octave_sparse_bool_matrix::is_numeric_type): New
-	virtual method override.
-
-2010-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* toplev.cc (system): Add additional calling form "shell_cmd" to
-	documentation.
-
-2010-12-31  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (islogical, isinteger, iscomplex, isfloat, isempty,
-	isnumeric, ismatrix, issorted): Improve docstring
-	* graphics.cc (ishandle): Improve docstring
-	* lex.ll (iskeyword): Improve docstring
-	* mappers.cc (isalnum, isalpha, isascii, iscntrl, isdigit, isinf,
-	isgraph, islower, isna, isnan, isprint, ispunct, isspace, isupper,
-	isxdigit): Improve docstring
-	(finite/isfinite): Make finite an alias for isfinite rather than the
-	reverse.  Improve docstring.
-	* ov-cell.cc (iscell, iscellstr): Improve docstring
-	* ov-class.cc (isobject, ismethod): Improve docstring
-	* ov-null-mat.cc (isnull): Improve docstring
-	* ov-struct.cc (isstruct, isfield): Improve docstring
-	* ov-usr-fcn.cc (isargout): Improve docstring
-	* sparse.cc (issparse): Improve docstring
-	* strfns.cc (ischar): Improve docstring
-	* sysdep.cc (isieee): Improve docstring
-	* utils.cc (isvarname, is_absolute_filename,
-	is_rooted_relative_filename, isindex): Improve docstring
-	* variables.cc (isglobal): Improve docstring
-
-2010-12-28  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (and, ctranspose, eq, ge, gt, ldivide, le, lt, minus,
-	mldivide, mpower, mrdivide, mtimes, ne, not, or, plus, power, rdivide,
-	times, transpose, uminus, uplus): Improve docstrings for functions
-	which emulate operators.  Add Seealso cross-referencing.
-
-2010-12-28  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (save_mat5_array_length (const float*, octave_idx_type,
-	bool)): Take in to account the 4 bytes of padding for an odd number
-	of elements in single precision arrays.
-
-2010-12-27  Rik  <octave@nomad.inbox5.com>
-
-	* syscalls.cc (stat): Add additional calling form using file descriptor
-	fid to docstring.
-
-2010-12-26  Michael Godfrey <godfrey@isl.stanford.edu>
-
-	* gammainc.cc: Add @tex blocks to docstring.
-
-2010-12-25  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/str2double.cc: Fix bug in converting "numberi" strings
-	such as "2i".  Add ability to process special value "NA".  Rewrite 
-	docstring.
-
-2010-12-25  Rik  <octave@nomad.inbox5.com>
-
-	* input.cc (PS1): Correct use of xref macro to remove Tex warning.
-
-2010-12-22  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* input.cc (PS1): Give an example of how PS1 can use ANSI escape
-	codes for getting a colourised prompt.
-	* oct-hist.cc (history): Correct documentation about how
-	history("-r") appends to history, doesn't replace it.
-
-2010-12-22  Judd Storrs  <jstorrs@gmail.com>
-
-	* data.cc (Fvec): New optional second argument to set dimension
-	of result.
-
-2010-12-18  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (class axes::properties): Tag xtickmode, ytickmode
-	and ztickmode with "u" qualifier.
-	(axes::properties::update_xtickmode, axes::properties::update_ytickmode
-	axes::properties::update_ztickmode): New functions.
-
-2010-12-18  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Simplify file name/id logic.
-	Bug #31910.
-
-2010-12-17  Rik  <octave@nomad.inbox5.com>
-
-	* oct-parse.yy (builtin): Remove seealso reference to deprecated 
-	function dispatch.
-
-2010-12-17  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (class text::properties): New properties positionmode,
-	rotationmode, horizontalalignmentmode, verticalalignmentmode.
-	* graphics.cc (axes::properties::init, axes::properties::set_defaults):
-	Set mode to auto for all initialized positioning properties.
-	(axes::properties::set_xlabel,set_ylabel,set_zlabel,set_title):
-	Revert to auto-positioning mode and turn clipping off when title or
-	labels are set.
-	* gl-render.cc (opengl_renderer::draw_axes): Disable auto-positioning
-	of manually positioned title and axes labels.
-
-2010-12-17  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.h.in (class axes::properties): Change default value for
-	fontsize from 12 to 10.
-	* graphics.cc (axes::properties::set_defaults): Likewise.
-
-2010-12-15  John W. Eaton  <jwe@octave.org>
-
-	Bug #31883.
-
-	* oct-hist.cc (initialize_history): Call command_history::initialize.
-
-	* octave.cc (gripe_safe_source_exception): New function.
-	(safe_source_file): New function.
-	(execute_startup_files): Call safe_source_file instead of source_file.
-	(execute_command_line_file): Likewise.  Don't handle exceptions here.
-	(execute_eval_option_code): Also catch octave_execution	exception.
-
-2010-12-15  John W. Eaton  <jwe@octave.org>
-
-	Bug #31861.  Also bug #31286.
-
-	* lex.h (lexical_feedback::defining_func): Now int instead of bool.
-	lex.ll (is_keyword_token): Increment lexer_flags.defining_func
-	instead of setting it to true.
-	(lexical_feedback::init): Set defining_func to 0 instead of false.
-	* oct-parse.yy (recover_from_parsing_function): Decrement
-	lexer_flags.defining_func here.
-	* input.cc (input_event_hook): Don't do anything if we are
-	lexer_flags.defining_func is nonzero.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* ov-struct.cc (isfield): Additional test for cellstring of field names.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (mod): Additional tests for mod with non-integer real values.
-
-2010-12-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Drop support for the "i" option.
-
-2010-12-09  Marco Atzeri   <marco_atzeri@yahoo.it>
-
-	* mappers.cc: In test for gamma, expect Inf for gamma(-1), not NaN.
-	Bug #31772.
-
-2010-12-08  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (base_property::do_set): Don't reverse order of
-	children.  Bug #31822.
-
-2010-12-08  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_user_function):
-	Return if an error occurs in out_of_date_check.
-
-2010-12-07  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find): If an
-	error occurred during the first call to xfind, don't try again.
-
-2010-12-07  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (case_list): Also accept default_case by itself.
-	Bug #31793.
-
-2010-12-01  John W. Eaton  <jwe@octave.org>
-
-	* pt-pr-code.cc	(tree_print_code::visit_octave_user_function_trailer):
-	Don't indent or print "endfunction" here.
-	* ov-usr-fcn.cc (ov_user_script::do_multi_index_op): Save and
-	set tree_evaluator::statement_context, not
-	tree_evaluator::in_fcn_or_script_body.
-	(ov_user_function::do_multi_index_op): Likewise.
-	* pt-eval.cc: Initialize tree_evaluator::statement_context, not
-	tree_evaluator::in_fcn_or_script_body.
-	(tree_evaluator::visit_break_command): Check statement_context,
-	not in_fcn_or_script_body.
-	(tree_evaluator::visit_continue_command): Likewise.
-	(tree_evaluator::visit_return_command): Likewise.
-	(visit_statement): Also echo commands in scripts if
-	Vecho_executing_commands & ECHO_SCRIPTS is true.
-	* pt-eval.h (tree_evaluator::in_fcn_body,
-	tree_evaluator::in_script_body): New static variables.
-	(tree_evaluator::): Now an enum.
-	(tree_evaluator::in_function_or_script_body): Now an enum.
-	Rename from in_fcn_or_script_body.
-
-2010-12-01  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_gui_mode): Fix gui mode
-	problems when set to none.
-
-2010-11-26  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (find_uimenu_children,
-	__fltk_redraw__): Consider hidden handles here.
-
-2010-11-26  John W. Eaton  <jwe@octave.org>
-
-	* defaults.cc (FEXEC_PATH): Only call set_exec_path if nargin is
-	greater than zero.
-
-2010-11-25  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_gui_mode): New
-	function to set GUI mode.
-	(__fltk_uigetfile__): Remove nargout from argument list.
-	(plot_window): Remove gui_mode enum here.
-
-2010-11-25  John W. Eaton  <jwe@octave.org>
-
-	* defaults.cc (set_exec_path): Append EXEC_PATH to PATH.  Store
-	only extra directories in EXEC_PATH.
-	(FEXEC_PATH): Update doc string.
-	Bug #31695.
-
-2010-11-22  John W. Eaton  <jwe@octave.org>
-
-	* defun.cc (defun_isargout): Cast nout to octave_idx_type in call
-	to std::min.
-
-2010-11-21  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/fltk-backend.cc (__fltk_uigetfile__): New function
-	for GUI file dialogs.
-	* graphics.cc (property_list::set): Indentation	fix.
-
-2010-11-20  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in: Change intended for 11272.
-
-2010-11-19  John W. Eaton  <jwe@octave.org>
-
-	Bug #31706.
-
-	* mex.h, mex.cc (mxArray::dup): Rename from clone.  Change all
-	uses and derived classes.
-	(mxArray_octave_value::dup): Convert to mxArray object here.
-
-2010-11-19  John W. Eaton  <jwe@octave.org>
-
-	Bug #31707.
-
-	* mex.cc (mex::free): Don't warn about skipping memory not
-	allocated by mxMalloc, mxCalloc, or mxRealloc.
-
-2010-11-18  Daisuke TAKAGO  <takago@neptune.kanazawa-it.ac.jp>
-
-	* gl-render.cc (opengl_renderer::draw_line):
-	Layer markers in 2D plots.
-
-2010-11-18  John W. Eaton  <jwe@octave.org>
-
-	Bug # 31689.
-
-	* ov-str-mat.cc (octave_char_matrix_str::save_ascii):
-	Adapt to change in charMatrix::row_as_string function.
-	* DLD-FUNCTIONS/md5sum.cc: New tests.
-
-2010-11-17  John W. Eaton  <jwe@octave.org>
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue1): Also stash
-	the directory name of the parent function in the newly created
-	anonymous function.  Bug #31484.
-
-2010-11-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (parse_fcn_file): Protect and set global_command
-	to 0 before calling yyparse.
-	* toplev.cc (main_loop): Likewise.
-
-	* oct-parse.yy (eval_string): Set global_command to 0 after
-	protecting it and before calling yyparse.
-	* input.cc (get_debug_input): Likewise.
-
-2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (graphics_object::get_ancestor): New method.
-	* graphics.cc (graphics_object::get_ancestor): Likewise.
-	(convert_text_position, convert_cdata): Use it.
-	(xget_ancestor): Remove obsolete function.
-	* DLD_FUNCTIONS/fltk_backend.cc (plot_window::uimenu_update,
-	fltk_backend::update): Replace xget_ancestor with
-	graphics_objects::get_ancestor.
-
-2010-11-13  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (figure::properties::filename): Make writable.
-	Bug #31450.
-
-2010-11-12  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (nodist_liboctinterp_la_SOURCES): Remove
-	$(OPT_HANDLERS) from  the  list.  Bug #31623.
-
-2010-11-11  John W. Eaton  <jwe@octave.org>
-
-	* data.cc: New tests for cat.  Enable 4 asserts that were disabled.
-
-2010-11-11  Kai Habel  <kai.habel@gmx.de>
-
-	* fltk-backend.cc (plot_window::uimenu_update,
-	fltk_backend::update): Add prefix 'ID_' to property ids to avoid
-	name clash on windows systems.
-	* graphics.cc (gnuplot_backend::update): Ditto.
-	* genprops.awk (emit_declarations, emit_source): Ditto.
-
-2010-11-11  John W. Eaton  <jwe@octave.org>
-
-	Bug #31165.
-
-	* symtab.h (symbol_table::parent_classes): New static function.
-	* symtab.cc (out_of_date_check): Also look for methods defined
-	in parent classes of dispatch_type.
-	(symbol_table::fcn_info::fcn_info_rep::load_class_method): Call
-	parent_classes instead of accessing parent_map directly.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Call octave_ieee_init here.
-	* sysdep.cc (sysdep_init): Not here.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc: Eliminate special case for __DECCXX.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (sysdep_init): Eliminate special case for NeXT systems.
-	(malloc_handler, NeXT_init): Delete.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (MAYBE_ACK_SIGNAL): Delete macro and all uses.
-	(sigchld_handler): Delete special case for __EMX__.
-	* sysdep.cc (sysdep_init): Eliminate special case for __EMX__.
-	(OS2_init, Fextproc): Delete.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (sysdep_init): Eliminate special case for SCO.
-	(SCO_init): Delete.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__dispatch__.cc: Rename from dispatch.cc.
-	Move tests to scripts/deprecated/dispatch.m.
-	(F__dispatch__): Rename from Fdispatch.
-
-	* DLD-FUNCTIONS/module-files: Add __dispatch__.cc to the list.
-	Remove dispatch.cc from the list.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (Fbuiltin): Move here from DLD-FUNCTIONS/dispatch.cc.
-
-2010-11-10  Kai Habel  <kai.habel@gmx.de>
-
-	* fltk-backend.cc (fltk_uimenu::update_accelerator
-	fltk_uimenu::update_callback, fltk_uimenu::update_enable,
-	fltk_uimenu::update_foregroundcolor fltk_uimenu::update_visible):
-	Check if find_item was succesful.
-	(fltk_uimenu::update_seperator): Make sure we don't write beyond
-	limits of menubar structure.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	Bug #31491.
-
-	* pt-pr-code.cc, pt-pr-code.h (tree_print_code::print_fcn_handle_body):
-	New function.
-	* ov-fcn-handle (octave_fcn_handle::print_raw): Use it.
-	* pt-pr-code.cc (tree_print_code::visit_anon_fcn_handle): Likewise.
-	* pt-pr-code.h (tree_print_code::suppress_newline): Rename from
-	printing_newlines.  Now int.  Change all uses.
-	* pt-pr-code.cc (tree_print_code::newline): Only set
-	beginning_of_line if newline is printed.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	Bug #31567.
-
-	* ov-fcn.h (octave_base_value::is_class_constructor)
-	octave_base_value::is_class_method): New optional character
-	string argument.
-	* ov-usr-fcn.h (octave_usr_fcn::is_class_constructor)
-	octave_usr_fcn::is_class_method): New optional arg. If this
-	argument is not empty, also check it against the name of the
-	dispatch class.
-	* ov-class.cc (Fclass): Allow class function to be called inside
-	a class method.  Require that the to-be-constructed object is of
-	the same class as the class constructor or method.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll (handle_number): Set lexer_flags.looking_for_object_index
-	to false here.  Fixes bug #31608.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc (make_marker_list): Call fmod instead of mod.
-
-	* data.cc (Frem): Use xrem instead of fmod and fmodf.
-	(Fmod): Use xmod instead of mod.
-
-2010-11-08  Kai Habel  <kai.habel@gmx.de>
-
-	* fltk-backend.cc (fltk_uimenu::do_find_uimenu_children):
-	Simplify.  Remove unused code.
-	(fltk_uimenu::update_submenu): Remove unused function.
-	(fltk_uimenu::add_to_menu, fltk_uimenu::remove_from_menu):
-	Simplify.  Get properties for valid objects only.
-
-2010-11-03  Ben Abbott  <bpabbott@mac.com>
-
-	* gl-render.cc: Do not give rendering error for uimenus.
-
-2010-11-03  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/cquad.cc: If we don't have copysign but we do
-	have _copysign, define copysign to be _copysign.
-
-2010-11-02  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/cquad.cc (Fcquad): Use octave_Inf, not INFINITY.
-
-2010-11-02  David Bateman  <dbateman@free.fr>
-
-	* ls-hdf5.cc (bool hdf5_get_scalar_attr (hid_t, hid_t,
-	const char *, void *), herr_t hdf5_add_scalar_attr
-	(hid_t, hid_t, const char *, void *)): New functions.
-	(herr_t hdf5_add_scalar_attr (hid_t, const char *)): Remove static
-	definition to make this function visible externally.
-	* ls-hdf5.h (extern OCTINTERP_API bool hdf5_check_attr (hid_t,
-	const char *), extern OCTINTERP_API bool hdf5_get_scalar_attr
-	(hid_t, hid_t, const char *, void *buf), extern OCTINTERP_API herr_t
-	hdf5_add_attr (hid_t, const char *), extern OCTINTERP_API herr_t
-	hdf5_add_scalar_attr (hid_t, hid_t, const char *, void *)): Function
-	declarations.
-	* ov-range.cc (bool octave_range::save_hdf5 (hid_t, const char *,
-	bool)): Save the number of elements in the range as an HDF5 attribute.
-	(bool octave_range::load_hdf5 (hid_t, const char *)): If an HDF5
-	attribute containing the number of elements exists use it to ensure
-	the correct number of elements in the range.
-
-2010-11-01  David Bateman  <dbateman@free.fr>
-
-	* gl-render.cc (void opengl_renderer::draw_patch (const
-	patch::properties &)): Draw clipped contours of patches.
-	* graphics.cc (template<class T> static void get_array_limits
-	(const Array<T>&, double&, double&, double&)): Don't need to test
-	for NaN as comparison is always false.
-	(Matrix children_property::do_get_children (bool) const): New method of
-	new children_property class.
-	(void children_property::do_delete_children (bool)): Ditto.
-	(void base_properties::remove_child (const graphics_handle&)): Delete.
-	(void base_properties::set_children (const octave_value&)): Delete.
-	(void base_properties::delete_children (void)): Delete.
-	(base_properties::update_axis_limits (const std::string&,
-	const graphics_handle&) const): New method.
-	(void base_graphics_object::update_axis_limits (const std::string&,
-	const graphics_handle&)): New Method.
-	(Matrix base_properties::get_children_internal (bool) const): Delete.
-	(Matrix base_properties::get_children (void) const): Delete.
-	(Matrix base_properties::get_hidden_children (void) const): Delete.
-	(void axes::update_axis_limits (const std::string&,
-	const graphics_handle&): New Method.
-	(void hggroup::properties::update_limits (void) const): New method.
-	(void hggroup::properties::update_limits (const graphics_handle&)
-	const): New method.
-	(void hggroup::update_axis_limits (const std::string&,
-	const graphics_handle&)): New method.
-	* graphics.h.in (class children_property): New class.
-	(class base_properties): Use it.
-	(base_graphics_object::update_axis_limits(const std::string&,
-	const graphics_handle&)): New method.
-	(graphics_object::update_axis_limits(const std::string&,
-	const graphics_handle&)): New method.
-	(axes::update_axis_limits(const std::string&,
-	const graphics_handle&)): New method.
-	(hggroup::adopt (const graphics_handle&)): Use it
-	(void hggroup::properties::update_limits (void) const): Remove inline
-	definition of the methid.
-	(void hggroup::properties::update_limits (const graphics_handle&)
-	const): New method.
-	(void hggroup::update_axis_limits (const std::string&,
-	const graphics_handle&)): New method.
-
-2010-10-31  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* xnorm.h (xnorm, xcolnorms, xrownorms, xfrobnorm): tag with
-	OCTINTERP_API.
-
-2010-10-31  Kai Habel  <kai.habel@gmx.de>
-
-	* fltk-backend.cc (find_uimenu_children): Remove template argument.
-	(do_find_uimenu_children): New function.
-
-2010-10-29  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (octave_value patch::properties::get_color_data
-	(void) const): Don't call convert_data is the facevertexcdata
-	property is undefined or empty.
-	* gl-render.cc (void opengl_renderer::draw_patch
-	(const patch::properties &)): Set ec_mode to 0 if edgecolor is "none".
-	Set fc_mode to 0 if facecolor is "none".
-
-2010-10-29  Ben Abbott  <bpabbott@mac.com>
-
-	* gl-render.cc: Crop ticks, ticklabels, and gridlines for OpenGL
-	backend.
-
-2010-10-28  Konstantinos Poulios  <logari81@googlemail.com>
-
-	* graphics.cc (normalized_aspectratios, max_axes_scale):
-	New file-scope static function
-	(updating_aspectratios): New file-scope variable.
-	(axes::properties::update_aspectratios, axes::update_axis_limits):
-	Return immediately if updating_aspecratios is true.
-	(axes::properties::update_aspectratios):
-	If dataaspectratiomode is set to manual this function will try to
-	respect it even after changes in xlim, ylim, zlim.
-	If both dataaspectratiomode and plotboxaspectratiomode is set to
-	manual this function will try to recalulate xlim, ylim, zlim
-	depending on the status of xlimmode, ylimmode, zlimmode. If
-	altering xlim, ylim, zlim is not possible, plotboxaspectratio will
-	be overriden.
-	* graphics.h.in (class axes::properties): Tag dataaspectratio,
-	dataaspectratiomode, plotboxaspectratio, and
-	plotboxaspectratiomode with "u" qualifier.
-	(axes::update_dataaspectratio,
-	axes::update_dataaspectratiomode,
-	axes::update_plotboxaspectratio,
-	axes::update_plotboxaspectratiomode): New functions.
-
-2010-10-25  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Use F77_CHAR_ARC_LEN macro to pass
-	character string length in call to xerbla.
-
-2010-10-25  Kai Habel  <kai.habel@gmx.de>
-
-	* gl-render.cc (opengl_renderer::draw): Ignore uimenu objects here.
-	* graphics.h.in (class OCTINTERP_API uimenu): New graphics object.
-	* graphics.cc (lookup_object_name): Add uimenu here.
-	(make_graphics_object_from_type): Likewise.
-	(property_list::set): Likewise.
-	(property_list::lookup): Likewise.
-	(root_figure::init_factory_properties): Likewise.
-	(__go_uimenu__): New function.
-	* DLD-Functions/fltk-backend.cc (OpenGL_fltk::resize): Make public.
-	(script_cb): New function.
-	(fltk_uimenu): New class.
-	(plot_window::plot_window): Initialize fltk_uimenu object.
-	(plot_window::~plot_window): Delete fltk_uimenu object.
-	(plot_window::show_menubar): New function.
-	(plot_window::hide_menubar): New function.
-	(plot_window::uimenu_update): New function.
-	(plot_window::handle): Do not evaluate FLTK events when figure
-	is deleted.
-	(figure_manager::uimenu_update): New function.
-	(figure_manager::toggle_menubar_visibility): New functions.
-	(figure_manager::do_toggle_menubar_visibility): New function.
-	(figure_manager::do_uimenu_update): New function.
-	(fltk_backend::uimenu_set_fltk_label): New function.
-	(fltk_backend::update): Add figure and uimenu updates.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/tril.cc, syscalls.cc: Docstring improvements.
-
-2010-10-24  Rik  <octave@nomad.inbox5.com>
-
-	* variables.cc: Deprecate is_global function
-
-2010-10-23  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Ffopen): Only handle fopen ("all") case if nargout
-	is 0 or 1.
-
-2010-10-22  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (usage): Put whitespace before and after usage message.
-	(octave_main): If getopt_long returns '?', it means an
-	unrecognized option was encountered.
-	Panic if default case in option switch statement is reached.
- 	(verbose_usage, short_opts, usage_string): Remove '?' as an
-	alias for 'h' in the list of possible options.
-	Fixes bug #31423.
-
-2010-10-22  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (load_fcn_from_file): Also strip directory when
-	computing function name from filename.  Bug #31395.
-
-2010-10-21  Gunnar Farnebäck  <gunnar@lysator.liu.se>
-
-	* mex.cc (mxArray_number::as_octave_value): Convert single
-	matlab array to single octave array instead of to double octave
-	array.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* gripes.h: Include lo-array-gripes.h.
-
-2010-10-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-float.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
-	ov-scalar.cc: Use gripe_nan_to_character_conversion.
-
-	* ops.h, ov-base-mat.cc, ov-base-scalar.cc, ov-complex.h,
-	ov-cx-mat.cc, ov-cx-sparse.cc, ov-float.h, ov-flt-complex.h,
-	ov-flt-cx-mat.cc, ov-flt-re-mat.cc, ov-range.cc, ov-re-mat.cc,
-	ov-re-sparse.cc, ov-scalar.h: Use gripe_nan_to_logical_conversion.
-
-2010-10-20  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (Fsystem): Allow optional RETURN_OUTPUT and TYPE
-	arguments to be specified independently.  Update doc string.
-
-2010-10-18  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_first_of,
-	load_path::do_find_all_first_of): Also search path for relative
-	filenames.
-
-2010-10-17  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/tril.cc: Use Octave copyright notice instead of
-	generic "This program is free software" notice.
-
-	* toplev.cc (Fwarranty): Say "GNU Octave" instead of "This program".
-
-2010-10-16  John W. Eaton  <jwe@octave.org>
-
-	* mxarray.h.in (mxArray::is_function_handle): New virtual function.
-	* mex.cc (mxArray_base::is_function_handle): New pure virtual function.
-	(mxArray_octave_value::is_function_handle): New function.
-	(mxArray_matlab::is_function_handle): New function.
-	(mxIsFunctionHandle): New function.
-	* mexproto.h (mxIsFunctionHandle): Provide decl.
-
-2010-10-14  John W. Eaton  <jwe@octave.org>
-
-	* sparse.cc: Rename from DLD-FUNCTIONS/sparse.cc.  Include
-	defun.h, not defun-dld.h.
-	(Fissparse, Fsparse, Fspalloc): Use DEFUN, not DEFUN_DLD.
-	* Makefile.am (DIST_SRC): Add sparse.cc to the list.
-	* DLD-FUNCTIONS/module-files: Remove sparse.cc from the list of files.
-
-2010-10-09  Ben Abbott  <bpabbott@mac.com>
-
-	* gl-render.cc: Treat images with scalar unique(x/ydata) like Matlab.
-
-2010-10-08  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (maximum_braindamage):
-	Set do_braindead_shortcircuit_evaluation to true.
-	Disable Octave:possible-matlab-short-circuit-operator warning.
-	* oct-parse.yy (if_cmd_list1, elseif_clause, loop_command):
-	Mark conditions in IF and WHILE statements for braindead
-	short-circuit behavior.
-	* pt-binop.cc (Vdo_braindead_shortcircuit_evaluation): New
-	static variable.
-	(Fdo_braindead_shortcircuit_evaluation): New function.
-	(tree_binary_expression::rvalue1): Perform short-circuit
-	evaluation of | and & expressions that are conditions of WHILE
-	and IF statements if Vdo_braindead_shortcircuit_evaluation is true.
-	* pt-binop.h
-	(tree_binary_expression::eligible_for_braindead_shortcircuit):
-	New data member.  Initialize it in class constructors.
-	(tree_binary_expression::mark_braindead_shortcircuit): New function.
-	* pt-exp.h (tree_expression::mark_braindead_shortcircuit):
-	New virtual function.
-
-2010-10-08  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in: Properly set image pixel size when unique(x/ydata)
-	is scalar.
-
-2010-10-07  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/conv2.cc (convn): Update docstring.  Add 1 new test.
-
-2010-10-07  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/conv2.cc (convn): Style fixes.  Edit docstring.
-
-2010-10-07  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (do_stream_open): Use fileno instead of ::fileno to
-	avoid problems if fileno is a macro.
-
-2010-10-05  John W. Eaton  <jwe@octave.org>
-
-	* oct-stdstrm.h (octave_stdiostream::octave_stdiostream): Use
-	fileno instead of ::fileno to avoid problems if fileno is a macro.
-
-2010-10-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (axis::properties::pixel_size): New function.
-	(axis::properties::pixel_xsize,axis::properties::pixel_ysize):
-	New functions, use axis::properties::pixel_size
-	(axis::properties::update_ydata,axis::properties::update_xdata):
-	Use axis::properties::pixel_size functions
-
-	* graphics.cc (__image_pixel_size__): New function uses
-	axis::properties::pixel_size functions
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (class caseless_str): Move to
-	liboctave/caseless-string.h.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (base_properties::get_dynamic): Create and return
-	octave_scalar_map object instead of Octave_map.
-	(base_graphics_object::remove_all_listeners): Use octave_map
-	instead of Octave_map.
-	(base_graphics_object::values_as_string): Likewise.
-
-	* graphics.h.in, graphics.cc (property_list::as_struct):
-	Return octave_scalar_map instead of Octave_map.
-	(base_graphics_object::values_as_struct): Likewise.
-	(graphics_object:values_as_struct): Likewise.
-	(graphics_object::set): Accept octave_map instead of Octave_map.
-
-	* genprops.awk: Use octave_map instead of Octave_map in
-	generated code.  Convert second arg to octave_value in call to
-	octave_map::assign.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_struct::as_octave_value): Use octave_map
-	instead of Octave_map.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.h: Delete forward decl for Octave_map class.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.h (octave_struct (const Octave_map&)): Delete constructor.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-inline.cc (octave_fcn_inline::map_value):  Use
-	octave_scalar_map and octave_map instead of Octave_map.
-
-2010-10-01  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_info_list::map_value): Use
-	octave_scalar_map and octave_map instead of Octave_map.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.h (octave_fields::nil_rep): Make a static function.
-	(octave_fields::octave_fields (void)): Use it here.
-
-2010-09-30  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Use Octave_scalar_map instead
-	of Octave_map.
-	* sighandlers.cc (make_sig_struct, FSIG): Likewise.
-
-	* utils.cc (decode_subscripts): Use octave_map instead of Octave_map.
-	* octave.cc (F__version_info__): Likewise.
-	* pt-eval.cc (visit_complex_for_command): Likewise.
-	* pt-idx.cc (tree_index_expression::lvalue): Likewise.
-
-2010-09-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gcd.cc: Style fixes.
-
-2010-09-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-errno.cc.in (octave_errno::do_list, octave_errno::list):
-	Use octave_scalar_map instead of Octave_map.
-
-2010-09-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* DLD-FUNCTIONS/gcd.cc (divide): New function, complex integer
-	division with remainder.
-	(simple_gcd): Overload for complex values.
-	(extended_gcd): Ditto.
-	(do_simple_gcd): Dispatch for complex gcd.
-	(do_extended_gcd): Ditto.
-	(Fgcd): Mention that complex gcd is now also possible.
-
-2010-09-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* DLD-FUNCTIONS/gcd.cc (extended_gcd): Fix bug that didn't
-	distinguish the two output coefficients.
-	(Fgcd): Fix off-by-one bug and typo from copy-pasted code.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-parse.yy (Fautoload): Replace Octave_map by octave_map.
-	* ov-fcn-handle.cc (Ffunctions): Replace Octave_map by
-	octave_scalar_map.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help.cc (F__which__): Use octave_map instead of Octave_map.
-	* load-save.cc (do_load, save_fields, save_vars): Use
-	octave_scalar_map instead of Octave_map.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* debug.cc (Fdbstatus, Fdbstack): Use octave_map instead of
-	Octave_map.
-	* error.cc (warning_options, initialize_warning_options,
-	pr_where, Frethrow, Ferror, Fwarning, Flasterror): Use
-	octave_scalar_map or octave_map instead of Octave_map.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-errno.cc (octave_errno::list, octave_errno::do_list): Use
-	octave_scalar_map instead of Octave_map.
-	* oct-errno.h: Update decls.
-
-2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-idx.cc (tree_index_expression::make_arg_struct): Use octave_map
-	instead of Octave_map.
-	* pt-idx.h: Update decl.
-
-2010-09-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (octave_map::contents): Fix off-by-1 error.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (OCTAVE_GLPK_GET_REAL_PARAM,
-	OCTAVE_GLPK_GET_INT_PARAM): Use GETFIELD to access map fields,
-	not CONTENTS.
-	* DLD-FUNCTIONS/amd.cc (Famd): Likewise.
-	* DLD-FUNCTIONS/luinc.cc (Fluinc): Likewise.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (F__ftp_dir__): Use octave_scalar_map
-	instead of Octave_map.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/luinc.cc (Fluinc): Use octave_scalar_map
-	instead of Octave_map.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Use octave_scalar_map
-	instead of Octave_map.  Use scalar values where appropriate in
-	call to glpk.
-	(OCTAVE_GLPK_GET_REAL_PARAM, OCTAVE_GLPK_GET_INT_PARAM):
-	Update for octave_scalar_map.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/amd.cc (Famd): Use octave_scalar_map instead of
-	Octave_map.
-	* DLD-FUNCTIONS/cellfun.cc (get_output_list): Likewise.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dispatch.cc (Fdispatch): Use octave_scalar_map
-	instead of Octave_map.
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Likewise.
-	* DLD-FUNCTIONS/regexp.cc (octregexp): Likewise.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/eigs.cc (Feigs): Use octave_scalar_map instead
-	of Octave_map.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/getpwent.cc (mk_pw_map): Use octave_scalar_map
-	instead of Octave_map.
-	* DLD-FUNCTIONS/getgrent.cc (mk_gr_map): Likewise.
-	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Likewise.
-
-2010-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/time.cc (intfield, stringfield): New functions.
-	(mk_tm_map, extract_tm): Arg is now octave_scalar_map instead of
-	Octave_map.
-	(extract_tm): Use local intfield and setfield functions.
-	(Fmktime, Fstrftime): Use octave_scalar_map instead of Octave_map.
-
-2010-09-28  John W. Eaton  <jwe@octave.org>
-
-	* Cell.h, Cell.cc (Cell::Cell (const std::list<std::string>&)):
-	New constructor.
-
-2010-09-28  John P. Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (maybe_initialize_magick):
-	Warn on initialization of *Magick if QuantumDepth is less than 32.
-
-2010-09-28  John P. Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_format_list__):
-	New function.
-
-2010-09-28  John P. Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image)
-	(encode_bool_image): Ensure bit depth encoding is correct for
-	logical, uint8, and uint16 images.
-
-2010-09-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (xpow (double, const Matrix&)): Ensure real result for
-	positive base.
-	(xpow (double, const Matrix&)): Likewise.
-
-2010-09-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* error.cc (interpreter_try): New function.
-	* error.h: Declare it.
-	* ov-fcn-handle.cc (octave_fcn_binder::maybe_binder): Use it here.
-	* variables.cc (safe_symbol_lookup): Also here.
-
-2010-09-27  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc (opengl_renderer::draw_axes): Reverse order in
-	which child objects are processed.
-
-2010-09-26  Rik  <octave@nomad.inbox5.com>
-
-	* load-path.cc: Use single quotes for regex when possible.
-	* DLD-FUNCTIONS/regexp.cc (regexp): Update docstring to highlight
-	differences between POSIX and PCRE regex.
-
-2010-09-26  Rik  <octave@nomad.inbox5.com>
-
-	* load-path.cc: Use single quotes for regular expression patterns when
-	possible.
-
-2010-09-26  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/regexp.cc (regexp, regexprep, regexpi): Update
-	docstrings to more fully explain PCRE.  Modify advanced tests to run
-	only run when PCRE is present.
-
-2010-09-25  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (Fquit): Allow any number of output parameters.
-
-2010-09-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/gcd.cc (Fgcd): Rewrite. Use more efficient code.
-	Specialize for simple/extended Euclid. Handle integer arguments.
-
-2010-09-24  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/regexp.cc (regexp, regexprep): Update docstring to
-	discuss limits when not compiled with PCRE.
-
-2010-09-23  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (ALL_DEF_FILES): New variable.
-	(DEF_FILES): Don't include $(DLD_DYNAMIC_DEF_FILES) in the list.
-	(DEF_FILES DLD_DYNAMIC_DEF_FILES): Fix dependency info.
-	(doc-files): Depend on $(ALL_DEF_FILES), not $(DEF_FILES).
-
-2010-09-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (elem_xpow (float, const NDArray&),
-	elem_xpow (float, const FloatNDArray&)): Use simpler tests.
-
-2010-09-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.h (octave_base_stream::file_number): Return 0, 1,
-	and 2 for named stdin, stdout, and stderr streams; -1 otherwise.
-
-2010-09-21  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (Fgethostname): New function.
-
-2010-09-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/time.cc (Fmktime): New tests (bug #31079).
-
-2010-09-20  John W. Eaton  <jwe@octave.org>
-
-	Bug #31085:
-
-	* file-io.cc (do_stream_open): Use fopen, fileno, and gzdopen
-	instead of gzopen.  Pass integer file id to
-	octave_zstdiostream::create.
-
-	* oct-stdstrm.h (class octave_base_tstdiostream): Rename from
-	octave_tstdiostream.
-	(octave_tstdiostream::fnum): New data member.
-	(octave_tstdiostream::file_number): New member function.
-	(octave_tstdiostream::octave_tstdiostream): New arg, FID.
-	(octave_tstdiostream::create): Delete.
-	(class octave_stdiostream, class octave_zstdiostream): New
-	non-template classes derived from octave_tstdiostream to replace
-	typedefs.
-
-	* oct-stream.h (octave_base_stream::file_number): Now virtual
-	and const.  Return -1 in defaault implementation.
-
-2010-09-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list) [HAVE_PCRE]:
-	Break from search loop if idx is at or beyond end of buffer
-	(bug #31056).
-
-2010-09-19  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in: Add displayname property to patch and surface objects.
-
-2010-09-18  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in: Remove properties for dead legend code.
-
-2010-09-18  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.cc: Replace pagetype property value custom with <custom>.
-
-2010-09-16  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (static Matrix screen_size_pixels (void), static Matrix
-	papersize_from_type (const caseless_str, const caseless_str))): New
-	functions.
-	(void figure::properties::set_paperunits (const octave_value&),
-	void figure::properties::set_papertype (const octave_value&),
-	void figure::properties::update_paperunits (const caseless_str&))
-	void figure::properties::update_papertype (void),
-	void figure::properties::update_papersize (void),
-	void figure::properties::update_units (const caseless_str&)): New
-	methods of the figure class.
-	(void axes::properties::set_units (const octave_value&),
-	void axes::properties::update_units (const caseless_str&),
-	void axes::properties::set_fontunits (const octave_value&),
-	void axes::properties::update_fontunits (const caseless_str&)):
-	New methods of the axes class.
-	* graphics.h.in (void figure::properties::update_paperunits
-	(const caseless_str&), void figure::properties::update_units
-	(const caseless_str&)): Declaration of new figure methods.
-	(void figure::properties::update_paperunits (const caseless_str&),
-	void figure::properties::update_units (const caseless_str&)):
-	Declaration of new axes methods.
-
-2010-09-16  John P. Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/))magick_read__.cc (write_image): Remove
-	unnecessary for loop to set image format.
-
-2010-09-16  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/svd.cc (Fsvd): Delete assert to avoid
-	"comparison is always false due to limited range of data type"
-	warning from GCC.
-
-	* utils.cc (octave_vsnprintf): Declare nchars volatile to avoid
-	GCC warning.
-
-	* pr-output.cc (octave_print_internal): Avoid uninitialized
-	variable warning from GCC.
-
-2010-09-16  John Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (write_image): Allow
-	arbitrary extensions with format specifier.
-
-2010-09-15  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (Faddpath, Frmpath): Document path arguments.
-
-2010-09-15  John Swensen  <jpswensen@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (write_image): Allow writing
-	arbitrary image types to filenames without an extension (bug #30784).
-
-2010-09-14  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_exist): If looking for any type of file
-	or "file", return 7 for directories and 2 for all other types of
-	files.
-
-2010-09-14  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (base_graphics_backend::initialize): Rename
-	from base_graphics_backend::object_created.  Change all uses.
-	(base_graphics_backend::finalize): Rename from
-	base_graphics_backend::object_destoyed.  Change all uses.
-	(base_graphics_backend::update): Rename from
-	base_graphics_backend::property_changed.  Change all uses.
-
-2010-09-14  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::object_destroyed):
-	Don't attempt to delete window if __plot_stream__ is empty.
-
-2010-09-14  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* load-path.cc (genpath): Pass SKIP in recursive call.
-	(Fgenpath): Accept list of directories to skip.
-
-2010-09-14  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (BEGIN_CHAR_CLASS_CONVERSION): If we hit EOF but
-	have found a match, clear the stream state (bug # 30997).
-
-2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Remove subsref optimization.
-
-2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellindexmat): New DEFUN.
-
-2010-09-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.cc (octave_fcn_binder::maybe_binder): Stash name tags
-	in the template.
-	(octave_fcn_binder::do_multi_index_op): Don't use xelem to ensure
-	proper unsharing. Make a shallow copy prior to call to ensure
-	consistency throughout recursive calls.
-
-2010-09-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.h (octave_fcn_binder): New subclass.
-	* ov-fcn-handle.cc: Define methods.
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue1): Call
-	octave_fcn_binder::maybe_binder.
-
-2010-09-11  John W. Eaton  <jwe@octave.org>
-
-	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
-	Avoid GCC shadow variable warning.
-
-2010-09-11  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (Faddpath): Adjust value of nargin if numeric
-	option is found (bug #31001).
-
-2010-09-09  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl2ps-renderer.cc: Renders to a previously opened fid.
-	* gl2ps-renderer.h: Ditto.
-	* DLD-FUNCTIONS/fltk_backend.cc: print now accepts fid instead
-	of filename to use with above change
-
-2010-09-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (maybe_initialize_magick): New
-	helper function. Move initialization code & static variable here.
-	(F__magick_read__, F__magick_write__, F__magick_finfo__): Call it
-	here.
-
-2010-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cquad.cc: New source, courtesy by Pedro Gonnet.
-	* DLD-FUNCTIONS/module-files: Update.
-
-2010-09-01  Marco Caliari  <marco.caliari@univr.it>
-
-	* graphics.cc: Fix axes limits underflow to zero for logscale.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (single_type_concat (Array<T>&, ...)): Optimize all
-	scalars case.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (octave_map::cat): Search first for an index with
-	nonzero nfields and use it for comparisons.
-	(permute_to_correct_order1): New overloaded helper func.
-	(permute_to_correct_order): use it here. Pass the index here.
-	* pt-mat.cc (single_type_concat): Don't subst 0x0 for all empty
-	arrays. Use the respective cat() capability instead.
-
-2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Support "emptyvalue" option.
-	Fix condition for terminating read.
-
-2010-08-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Support reading from a file ID.
-
-2010-08-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (get_current_method_class): Make it an octave_class
-	method. Return class_name as default.
-	(octave_class::dotref): Error on zero return value.
-
-2010-08-30  Ben Abbott  <bpabbott@mac.com>
-
-	* gl-render.cc: Matlab compatible markers for the OpenGL.
-
-2010-08-30  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (convert_cdata_1, convert_cdata_2): New functions.
-	(convert_cdata): Use them to avoid converting all elements of
-	cdata to double at once.
-	* graphics.h.in (surface::properties::init): Constrain cdata and
-	alphadata to be single, double, or uint8.
-
-2010-08-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* graphics.cc (convert_cdata): Avoid extracting pointer to temporary
-	copy.
-
-2010-08-30  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (convert_cdata): Allow cdata to be any type that
-	can be converted to double.
-	* graphics.h.in (surface::properties::init): Remove constraints
-	on cdata and alphadata.
-
-2010-08-27  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
-
-	* graphics.cc (axes::properties::rotate_view): Don't rotate past
-	the top and bottom.
-	(axes::properties::update_camera): Fix the view when rotating to
-	the bottom.
-	(calc_dimensions): New static function.
-	(F__calc_dimensions__) New defun to replace m-script function.
-	* graphics.h.in (calc_dimension): Provide decl.
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
-	Use calc_dimensions to decide whether the current figure should
-	be rotated.
-	(plot_window::mark_modified) Recompute the number of dimensions.
-	Deactivate rotation if necessary.
-	(plot_window::ndim) New data member.
-	(plot_window::button_press, plot_window::handle): Only turn on
-	rotation if ndim == 3.
-
-2010-08-24  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (static void read_mat5_binary_data (std::istream&,
-	float *, octave_idx_type, bool, mat5_data_type,
-	oct_mach_info::float_format)) : New function
-	(std::string read_mat5_binary_element (std::istream&,
-	const std::string&, bool, bool&, octave_value&)): Treat
-	MAT_FILE_SINGLE_CLASS as single precision rather than convert to
-	double precision.
-	(static void write_mat5_array (std::ostream&, const FloatNDArray&,
-	bool), int save_mat5_array_length (const float*, octave_idx_type,
-	bool), int save_mat5_array_length (const FloatComplex*,
-	octave_idx_type, bool)): New functions.
-	(int save_mat5_element_length (const octave_value&,
-	const std::string&, bool save_as_floats, bool), bool
-	save_mat5_binary_element (std::ostream&, const octave_value&,
-	const std::string&, bool, bool, bool, bool)):  Treat
-	MAT_FILE_SINGLE_CLASS as single precision rather than convert to
-	double precision.
-
-2010-08-23  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::dir_info::initialize): Clear
-	method_file_map before updating file list.
-	* load-path.cc (load_path::load_path): Explicitly initialize
-	private_fcn_map.
-
-2010-08-17  Rik  <octave@nomad.inbox5.com>
-
-	* mappers.cc (gamma,lgamma): Add %!tests for negative integer
-	input arguments.
-
-2010-08-17  Rik  <octave@nomad.inbox5.com>
-
-	* bitfcns.cc (bitmax): Add additional calling argument, class, and
-	additional return value for bitmax("single").
-
-2010-08-17  Rik  <octave@nomad.inbox5.com>
-
-	* bitfcns.cc (sizemax): Improve documentation string.
-
-2010-08-16  Ben Abbott  <bpabbott@mac.com>
-
-	* gl2ps.c: Use upstream version gl2ps-1.3.5-svn-20100816.
-
-2010-08-13  Rik  <octave@nomad.inbox5.com>
-
-	* toplev.c (do_goto_frame_relative): Remove unused variable c.
-
-2010-08-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-builtin.cc
-	(octave_builtin::subsref (..., const std::list<octave_lvalue> *)
-	octave_builtin::do_multi_index_op (..., const std::list<octave_lvalue> *)):
-	New methods. Move code here. Set curr_lvalue_list.
-	(octave_builtin::curr_lvalue_list): New static member.
-	* ov-fcn-handle.h: Declare them.
-	* defun.cc (defun_isargout): New overloaded function.
-	* defun-int.h: Declare it.
-
-2010-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-lazy-idx.h (octave_lazy_index::subsasgn): Remove override. Leave
-	it to the defualt numeric conversion mechanism.
-
-2010-08-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fdiff): Allow logical type.
-
-2010-08-09  Rik  <octave@nomad.inbox5.com>
-
-	* oct-parse.yy (parse_fcn_file): Restore parsing of help text
-	accidentally lost in previous changeset.
-
-2010-08-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (parse_fcn_file): Handle empty script files
-	(bug #30588).
-
-2010-08-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::assign (assign_op, const std::string&,
-	const std::list<octave_value_list>&, const octave_value&):
-	Don't attempt to fix struct assignment to non-struct values here.
-	Check for successful assignment before overwriting this.
-
-	* ov-cell.cc (octave_cell::subsasgn): Allow dot assignment into empty
-	cell.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/config-module.awk: Add newlines to divide blocks
-	in generated modules.mk and improve readability.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Create .DOCSTRINGS quietly and avoid screen clutter
-	during build.
-
-2010-08-08  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Run do_subst macro quietly without cluttering screen
-	during build.
-
-2010-08-08  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc
-	(base_graphics_backend::print_figure): Add a redraw to get the
-	thing going.
-
-2010-08-05  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl2ps-renderer.cc (draw): Add support for more terminal types.
-	* DLD-FUNCTIONS/fltk_backend.cc: Likewise.
-
-2010-08-04  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_number (const char *)): Create empty string if
-	given NULL arg  (bug #30639).  Create 0x0 string array if given
-	an empty string argument, not 1x0.
-
-2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-str-str.cc: Fix assignment operator.
-	* OPERATORS/op-str-s.cc: Likewise.
-	* OPERATORS/op-str-m.cc: Likewise.
-
-2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.cc
-	(octave_value::subsref (..., const std::list<octave_lvalue> *)
-	octave_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
-	New methods. Move code here.
-	* ov-fcn-handle.h: Declare them.
-
-2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-usr-fcn.cc (Fis_ignored_output): Rename to Fisargout. Change the
-	behavior to indicate not ignored outputs.
-
-2010-08-01  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/amd.cc, DLD-FUNCTIONS/balance.cc,
-	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
-	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
- 	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/onCleanup.cc,
-	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/str2double.cc,
-	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/typecast.cc, data.cc, graphics.cc,
-	load-save.cc, ov-null-mat.cc, ov-struct.cc, ov-usr-fcn.cc,
-	pr-output.cc, strfns.cc, variables.cc: Grammarcheck documentation.
-	Add @noindent lines and ensure line length is less than 80.
-
-2010-07-31  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/__voronoi__.cc,
-	DLD-FUNCTIONS/amd.cc, DLD-FUNCTIONS/balance.cc,
-	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
-	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/conv2.cc,
-	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
-	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
-	DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/givens.cc,
-	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc,
-	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
-	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
-	DLD-FUNCTIONS/md5sum.cc, DLD-FUNCTIONS/onCleanup.cc,
-	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc,
-	DLD-FUNCTIONS/str2double.cc, DLD-FUNCTIONS/strfind.cc,
-	DLD-FUNCTIONS/sub2ind.cc, DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc,
-	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/time.cc,
-	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/typecast.cc,
-	DLD-FUNCTIONS/urlwrite.cc, bitfcns.cc, data.cc, debug.cc, defaults.cc,
-	dirfns.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
-	load-path.cc, load-save.cc, ls-oct-ascii.cc, mappers.cc, oct-hist.cc,
-	octave.cc, ov-base.cc, ov-cell.cc, ov-class.cc, ov-fcn-handle.cc,
-	ov-fcn-inline.cc, ov-null-mat.cc, ov-range.cc, ov-struct.cc,
-	ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-eval.cc, pt-mat.cc,
-	sighandlers.cc, strfns.cc, symtab.cc, syscalls.cc, sysdep.cc,
-	toplev.cc, utils.cc, variables.cc: Grammarcheck .cc files
-
-2010-07-30  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (Fdbstack): Improve display.
-
-	* toplev.cc (octave_call_stack::do_goto_frame_relative):
-	Improve message.  Don't display column number.
-
-	* debug.cc (get_file_line): Don't allow eol to be less than bol.
-	(Fdbwhere): Improve message.  Don't display column number.
-	(Fdbstack): Omit column number from display.
-
-	* pt-eval.cc (tree_evaluator::visit_statement): Don't call
-	octave_call_stack::set_statement for commands issued while
-	debugging.
-
-2010-07-30  John W. Eaton  <jwe@octave.org>
-
-	* pt-bp.cc (tree_breakpoint::take_action): Only call
-	delete_breakpoint if is_breakpoint returns true.
-	(tree_breakpoint::visit_statement): If statement is command,
-	accept it, otherwise, maybe take action on the statement.
-	(tree_breakpoint::visit_no_op_command): Handle breakpoints at
-	end of function.
-	Addresses more problems found with bug #30490.
-
-2010-07-30  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: add .DOCSTRINGS to the DISTCLEANFILES list
-
-2010-07-30  John W. Eaton  <jwe@octave.org>
-
-	* pt-eval.cc (tree_evaluator::visit_if_command,
-	tree_evaluator::visit_switch_command): Also process breakpoints
-	for the command (bug #30490).
-
-2010-07-29  Ben Abbott  <bpabbott@mac.com>
-
-	* gl-render.cc: Transpose markers '^' and 'v'.
-
-2010-07-29  John W. Eaton  <jwe@octave.org>
-
-	* pt-bp.cc (tree_breakpoint::visit_if_command): Also allow
-	breakpoint to be set on command, same as for switch, while, or
-	do-until statments.
-	* pt-select.h, pt-select.cc (tree_if_command::set_breakpoint,
-	tree_if_command::delete_breakpoint, tree_switch_command::set_breakpoint,
-	tree_switch_command::delete_breakpoint): Delete functions and decls.
-	(bug #30490).
-
-2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::subsref (..., const std::list<octave_lvalue> *)
-	octave_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
-	New methods.
-	* ov.h: Declare them.
-	* ov-base.cc (octave_base_value::subsref (..., const std::list<octave_lvalue> *)
-	octave_base_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
-	New methods.
-	* ov-base.h: Declare them.
-	* ov-usr-fcn.cc (octave_user_function::subsref (..., const std::list<octave_lvalue> *)
-	octave_user_function::do_multi_index_op (..., const std::list<octave_lvalue> *)):
-	New virtual method overrides. Move code here.
-	(octave_user_function::bind_automatic_vars): Add lvalue_list
-	parameter. Bind automatic variable ".ignored.".
-	(Fis_ignored_output): New defun.
-	* ov-usr-fcn.h: Update decls.
-	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
-	Skip warning if outputs are ignored.
-	* pt-exp.cc (tree_expression::rvalue (..., const
-	std::list<octave_lvalue> *)): New method overload.
-	* pt-exp.h: Declare it.
-	* pt-idx.cc (tree_index_expression::rvalue (..., const
-	std::list<octave_lvalue> *)): New method override. Move code here.
-	* pt-idx.h: Declare it.
-	* pt-assign.cc (tree_multi_assignment::rvalue): Pass in the pointer to
-	lvalue_list.
-
-2010-07-28  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Reorder cases to check for
-	character strings before numeric arrays.
-	Delete explicit instantiations of find_nonzero_elem_idx templates.
-	New test for char array argument.
-
-2010-07-27  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/schur.cc (rsf2csf): Change first documentation line to
-	active voice.
-
-2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/schur.cc (Frsf2csf): New DEFUN.
-
-2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-scalar.cc (octave_base_scalar::diag): Implement here. Fix.
-	* ov-base-scalar.h: Only declare here.
-
-2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-diag.cc (octave_diag_matrix::try_narrowing_conversion): Remove
-	redundant cast.
-	* ov-flt-re-diag.cc
-	(octave_float_diag_matrix::try_narrowing_conversion): Ditto.
-	* ov-cx-diag.cc
-	(octave_complex_diag_matrix::try_narrowing_conversion): Ditto.
-	* ov-flt-cx-diag.cc
-	(octave_float_complex_diag_matrix::try_narrowing_conversion): Ditto.
-
-2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (do_single_type_concat_no_mutate): Remove.
-	(tree_matrix::rvalue1): Use do_single_type_concat instead.
-
-2010-07-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* bitfcns.cc (Fsizemax): New DEFUN.
-
-2010-07-20  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
-	Added a bottom Fl_Box (copied from gmsh) and tooltips
-
-2010-07-20  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/typecast.cc (typecast): Combine two @seealso macro
-	uses to one.
-
-2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Use octave_idx_type instead of
-	unsigned long. Over-allocate by a factor 2 to reduce copying.
-	Attempt to estimate number of columns from first line.
-	Hoist tmp_stream out of the loop and reset it for each substring.
-
-2010-07-17  Rik  <octave@nomad.inbox5.com>
-
-	* data.cc (repelems): Add more documentation about new function.
-
-2010-07-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (do_repelems): New helper func.
-	(Frepelems): New DEFUN.
-
-2010-07-19  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::gui_mode):
-	Use enum instead of int.  Change all uses.
-
-2010-07-18  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/fltk_backend.cc: Add mode for mouse rotation.
-	(view2status): new function
-	* graphics.cc: Remove limitations for zooming and translation.
-	(axes::properties::rotate_view): new function
-
-2010-07-17  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/ccolamd.cc,
-	  DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/dasrt.cc,
-	  DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/eigs.cc, DLD-FUNCTIONS/qz.cc,
-	  DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/sparse.cc,
-	  DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/symrcm.cc, dirfns.cc,
-	  file-io.cc, syscalls.cc: Spellcheck documentation
-
-2010-07-08  Rik  <octave@nomad.inbox5.com>
-
-	* DLD_FUNCTIONS/rand.cc: Correct typo in rande documentation.
-	(bug #30446).
-
-2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (mat2cell_mismatch, prepare_idx,
-	do_mat2cell_2d, do_mat2cell_nd, do_mat2cell): New helper funcs.
-	(Fmat2cell): Use them here.
-
-2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (do_sparse_diff): Use typecasts where needed.
-
-2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Pass the distribution name as an
-	argument. Ensure restoration using unwind_protect.
-	(Frand, Frandn, Frandg, Frandp, Frande): Update.
-
-2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind-prot.h (unwind_protect::fcn_crefarg_elem): New class.
-	(unwind_protect::add_fcn (void (*) (const T&), T)): New method
-	overload.
-
-2010-07-08  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/__magick_read__,cc (F__magick_read__): Add the syntax
-	__magick_read__ ("file", "frames", "all").
-
-2010-07-08  Rik  <octave@nomad.inbox5.com>
-
-	* DLD_FUNCTIONS/eigs.cc: Initialize random number generator in test
-	blocks to get reproducible results.
-
-2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (Fstruct2cell): Use octave_map. Optimize.
-
-2010-07-07  Rik  <octave@nomad.inbox5.com>
-
-	* pr-output.cc (calc_scale_exp): Avoid use of % operator on negative
-	operands for portability between C++ compilers.
-	(engineering_exponent): Avoid use of % operator.  Keep calculation of
-	exponent within pr_engineering_float class.  (encapsulation).
-	(num_digits): Rename from calc_digits.  Return true number of digits =
-	1 + calc_digits.
-	(calc_scale_exp): Rename from maybe_mod3 for readability.
-	(operator << (... pr_engineering_float pef): Use pef abbreviation for
-	pr_engineering_float.
-
-2010-07-07  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (axes): Add hidden property __hold_all.
-
-2010-07-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.h (octave_class::map): Turn to octave_map.
-	* ov-class.cc (octave_class): Update methods.
-	* ov-base.h, ov-base.cc (octave_base_value::old_map_value) : Remove.
-	* ov.h, ov.cc (octave_value::old_map_value) : Remove.
-
-2010-07-06  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (static bool print_eng): Flag engineering format,
-	(float_format::float_format (int, int, int, int)): New constructor.
-	(int float_format::ex): New field in the class.
-	(static int maybe_mod3 (const int&), static int
-	engineering_exponent (const double&),
-	static int calc_digits (const double&)): New functions
-	(class pr_engineering_float): New class
-	(std::ostream& operator << (std::ostream&,
-	const pr_formatted_float&)): New operator. Make it a friend of the
-	float_format class.
-	(static void set_real_format(...),
-	static void set_real_matrix_format (...),
-	static void set_complex_format(...),
-	static void set_complex_matrix_format (...),
-	static void set_range_format (...)): Set width for engineering format.
-	(static void set_format (...)): Call calc_digits to find the number
-	of digits in a value.
-	(static void pr_any_float (const float_format *, std::ostream&,
-	double, int)): Print engineering formats.
-	(static void init_format_state (void)): Set default state of print_eng.
-	(static void set_format_style (int, const string_vector&)): Parse
-	the "eng" argument.
-	(Fformat): Document the new engineering format.
-
-2010-07-04  Soren Hauberg  <hauberg@gmail.com>
-
-	* DLD_FUNCTIONS/__magick_read__.cc: restore locale after
-	GraphicsMagick initialisation.
-
-2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* toplev.cc (octave_call_stack::do_backtrace): Use static
-	octave_fields struct.
-	(octave_call_stack::empty_backtrace): New static method.
-	* toplev.h: Declare it.
-	* error.cc (Vlast_error_stack, initialize_last_error_stack,
-	Frethrow): Use octave_map or octave_scalar_map where applicable.
-
-2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::all_1x1,
-	tm_cont::all_1x1): New member fields.
-	(tm_row_const::tm_row_const_rep::init, tm_const::init):
-	Handle them here.
-	(tm_row_const::all_1x1_p, tm_const::all_1x1_p): New methods.
-	(single_type_concat<MAP> (octave_map&, ...)): New template
-	overload.
-	(do_single_type_concat<octave_map>): New template specialization.
-	(tree_matrix::rvalue1): Specialize for cell and struct classes.
-	* oct-map.cc (octave_map::do_cat (..., const octave_map *, ...)):
-	Assign result dimensions.
-
-2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (octave_map::cat (..., const octave_scalar_map *)):
-	Handle special dims (-1, -2).
-	* data.cc (do_single_type_concat_map): Don't handle them here.
-
-2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* syscalls.cc (mk_stat_map, Funame): Use octave_scalar_map.
-
-2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.h (octave_scalar_map::assign (const std::string&, const
-	octave_value&), octave_map::assign (const std::string&, const Cell&)):
-	Backward-compatible aliases for setfield.
-
-2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (octave_fields::equal_up_to_order (const octave_fields&,
-	octave_idx_type *)): New overload.
-	(octave_fields::equal_up_to_order (const octave_fields&,
-	Array<octave_idx_type>&)): Use it here.
-	(octave_map::fast_elem_insert,
-	octave_map::fast_elem_extract): New methods.
-	* oct-map.h: Update decls.
-	* ov-struct.cc (octave_struct::fast_elem_extract,
-	octave_struct::fast_elem_insert,
-	octave_scalar_struct::fast_elem_insert_self): New methods.
-	* ov-struct.h: Update decls.
-
-2010-06-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (single_type_concat): Optimize all scalars case where
-	applicable.
-	(single_type_concat_map, do_single_type_concat_map): New funcs.
-	* pt-mat.cc (get_concat_class): Handle cell and struct concats.
-
-
-2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell, do_num2cell): Optimize cells
-	and structs.
-
-2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.h (octave_scalar_struct::resize, octave_struct::resize):
-	Don't ignore fill argument.
-
-2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.h (octave_map::octave_map (const dim_vector&, const
-	octave_fields&)): New internal ctor.
-
-	* oct-map.cc (octave_map::assign): Handle no fields case.
-
-2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.cc (Fcell2struct): Rewrite.
-
-2010-06-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-range.cc (octave_range::save_ascii): Save length rather than
-	limit when inc is zero. Adjust comment.
-	(octave_range::save_binary, octave_range::save_hdf5): Ditto.
-	(octave_range::load_ascii): Assume limit is length when increment is
-	zero.
-	(octave_range::load_binary, octave_range::load_hdf5): Ditto.
-
-
-2010-06-25  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (reset_default_properties): New static function.
-	(root_figure::reset_default_properties,
-	figure::reset_default_properties, axes::reset_default_properties):
-	Use it to avoid duplicated code.
-
-2010-06-24  Rik  <octave@nomad.inbox5.com>
-
-	* octave.cc: Add [FILE] to octave usage string (bug #30258).
-
-2010-06-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.h (octave_map, octave_scalar_map): New classes.
-	* oct-map.cc (octave_map, octave_scalar_map): Implement them.
-	(Octave_map::Octave_map (const octave_map&)): New ctor.
-	* ov-struct.h (octave_struct): Use octave_map for storage.
-	(octave_scalar_struct): New class.
-	* ov-struct.cc: Update implementations.
-	* ov-base.h (octave_base_value::old_map_value): New method.
-	(octave_base_value::map_value): Return octave_map.
-	(octave_base_value::scalar_map_value): New method.
-	* ov-base.cc (octave_base_value::old_map_value,
-	octave_base_value::map_value, octave_base_value::scalar_map_value):
-	Add default implementations.
-	* ov-class.h (octave_class::old_map_value): New override.
-	* ov-class.cc: Use old_map_value for efficiency.
-
-2010-06-23  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void root_figure::reset_default_properties (void),
-	void figure::reset_default_properties (void),
-	void figure::reset_default_properties (void),
-	Freset): New functions.
-	* graphics.h.in (void graphics_object:reset_default_properies (void),
-	virtual void base_graphics_object:reset_default_properies (void)):
-	New functions.
-	(void root_figure::reset_default_properties (void),
-	void figure::reset_default_properties (void),
-	void figure::reset_default_properties (void)): Declarations.
-	(std::string color_property::values_as_string (void) const,
-	Cell color_property::values_as_cell (void) const): New functions.
-
-2010-06-21  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/dlmread.cc: Fix spreadsheet style range option.
-	(bug #30183).
-
-2010-06-21  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (std::string radio_values:values_as_string (void)
-	const, Cell radio_values:values_as_cell (void) const): New functions.
-	(void graphics_object::set (const octave_value_list&)): Throw error
-	with no arguments.
-	(std::string base_graphics_object::values_as_string (void),
-	Octave_map base_graphics_object::values_as_struct (void)): New
-	functions.
-	(Fset): Allow single handle as an argument and return the radio
-	values.
-	* graphics.h.in (virtual bool base_property::is_radio (void) const,
-	virtual std::string base_property::values_as_string (void) const,
-	virtual Cell base_property::values_as_cell (void) const):
-	New function.
-	(std::string radio_values::values_as_string (void) const,
-	Cell radio_values::values_as_cell (void) const): Declaration.
-	(octave_idx_type radio_values::nelem (void) const): New function.
-	(std::string radio_property::values_as_string (void) const,
-	Cell radio_property::values_as_cell (void) const,
-	bool radio_property::is_radio (void) const): New functions.
-	(bool property::is_radio (void) const,
-	std::string raproperty::values_as_string (void) const,
-	Cell property::values_as_cell (void) const): New functions.
-	(std::string base_graphics_object::values_as_string (void),
-	Octave_map base_graphics_object::values_as_struct (void)): Declaration.
-	(std::string graphics_object::values_as_string (void),
-	Octave_map graphics_object::values_as_struct (void)): New functions.
-
-2010-06-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (single_type_concat): Assume matrix arguments start from
-	index zero.
-	(do_cat): Make dim a separate argument. Special-case support for dim =
-	-1 and dim = -2
-
-2010-06-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (tm_row_const::eval_error): Make a static func.
-	(tm_row_const::do_init_element): Simplify using dim_vector::hvcat.
-	(tm_const::init): Ditto.
-	(single_type_concat): Special-case empty results. Skip or use 0x0 for
-	empty arrays otherwise.
-	(tree_matrix::rvalue1): Skip empty arrays in the fallback branch.
-
-2010-06-16  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/dot.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/lookup.cc,
-	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/onCleanup.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/svd.cc,
-	data.cc, dirfns.cc, graphics.cc, mappers.cc, ov-cell.cc, ov-range.cc:
-	Periodic grammar check of documentation to ensure a common format.
-
-2010-06-11  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rand.cc : Add "reset" flag to reset the random
-	generators from the entropy pool.
-
-	* genprops.awk : Don't special case the color_property in the
-	factory default methods.
-
-2010-06-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fsort): Fix invalid tests.
-
-2010-06-15  Rik  <octave@nomad.inbox5.com>
-
-	* pr-output.cc: Second try at removing extra newlines from NDArrays
-
-2010-06-14  Rik  <octave@nomad.inbox5.com>
-
-	* pr-output.cc: Remove extra newlines when displaying multi-dimensional
-	arrays (bug #30029).
-
-2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fsort, Fnth_element): Fix behavior when trailing singleton
-	dim is specified.
-
-2010-06-12  Ben Abbott  <bpabbott@mac.com>
-
-	* DLD-FUNCTIONS/gammainc.cc: Fix doc-string typo.
-
-2010-06-11  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/gammainc.cc: Implement complementary incomplete
-	gamma function.
-
-2010-06-10  Ben Abbott  <bpabbott@mac.com>
-
-	* data.cc: Fix test for concatentating empty nd-arrays.
-
-2010-06-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fvec): New DEFUN.
-
-2010-06-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Freshape): Use octave_idx_type rather than int.
-	Don't use intermediate Array when sizes are given as separate
-	arguments. Simplify computing unknown dimension.
-
-2010-06-09  David Grundberg  <individ@acc.umu.se>
-
-	* ov-struct.cc (Fisfield): Accept cell array as name argument.
-
-2010-06-08  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/tril.cc,
-	data.cc, ov.cc: Improve documentation string.
-
-2010-06-06  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* data.cc (Frem, Fmod): Specify template arguments of binmap
-	explicitely.
-
-2010-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/strfind.cc (Fqs_replace): Allow overlapped matches.
-	(Fstrrep): Support "overlaps" option.
-	(Fstrfind): Ditto.
-
-2010-05-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::fast_elem_extract,
-	octave_value::fast_elem_insert): New methods.
-	* ov-base.cc (octave_base_value::fast_elem_extract,
-	octave_base_value::fast_elem_insert,
-	octave_base_value::fast_elem_insert_self): New methods.
-	* ov-base.h: Declare them.
-	* ov-base-mat.cc (octave_base_matrix::fast_elem_extract,
-	octave_base_matrix::fast_elem_insert): New overrides.
-	* ov-base-mat.h: Declare them.
-	* ov-base-scalar.cc (octave_base_scalar::fast_elem_extract,
-	octave_base_scalar::fast_elem_insert_self): New overrides.
-	* ov-base-scalar.h: Declare them.
-	(octave_base_scalar::scalar_ref): New method.
-	* ov-scalar.cc (octave_scalar::fast_elem_insert_self): New override.
-	* ov-scalar.h: Declare it.
-	* ov-float.cc (octave_float_scalar::fast_elem_insert_self): New override.
-	* ov-float.h: Declare it.
-	* ov-cell.cc (octave_base_matrix<Cell>::fast_elem_extract,
-	octave_base_matrix<Cell>::fast_elem_insert): New specializations.
-	* DLD-FUNCTIONS/cellfun.cc (scalar_col_helper, scalar_col_helper_def,
-	scalar_col_helper_nda, make_col_helper, can_extract): Remove.
-	(Fcellfun): Use the new fast_elem_insert method.
-
-2010-05-10  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/eigs.cc: Improve documentation string.
-	Use ~ notation instead of dummy variables for unused return arguments.
-
-2010-05-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.h (octave_base_matrix::matrix_ref (void) const): New
-	overload.
-
-2010-05-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.h (octave_value_list::slice): Optionally include tags in
-	slicing.
-	* oct-parse.yy (get_feval_args): Simplify.
-	* pt-idx.cc (make_value_list): Use octave_idx_type instead of int.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::length): Simplify.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.h (octave_base_matrix::ndims): New override.
-	* ov-base-scalar.h (octave_base_scalar::numel,
-	octave_base_scalar::ndims): New overrides.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.cc (octave_base_value::ndims): Remove fallback
-	implementation (makes no sense).
-	* ov-base.h (octave_base_value::ndims): Use a simplistic fallback
-	here.
-
-2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::rows, octave_base_value::columns):
-	Use const where appropriate, don't test for impossible condition.
-
-2010-05-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.h (Cell::index, Cell::assign, Cell::delete_elements):
-	Make signatures consistent with inherited overloads. Import inherited
-	overloads to class's scope.
-	* oct-map.cc (Octave_map::maybe_delete_elements): Simplify.
-
-2010-05-20  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (Ffile_in_path, Ffile_in_loadpath): If no file is
-	found, return empty character string instead of empty matrix.
-
-2010-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/onCleanup.cc (octave_oncleanup::load_ascii,
-	octave_oncleanup::load_binary, octave_oncleanup::load_hdf5,
-	octave_oncleanup::save_ascii, octave_oncleanup::save_binary,
-	octave_oncleanup::save_hdf5): Comment out unused params.
-
-2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* defun-int.h (octave_auto_shlib): Make members public.
-	* DLD-FUNCTIONS/onCleanup.cc: New source.
-	* DLD-FUNCTIONS/module-files: Add it here.
-
-2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (set_internal_variable (int&, ..., const char **)):
-	Drop nchoices argument. Instead determine nchoices by trailing NULL.
-	* variables.h (SET_INTERNAL_VARIABLE_CHOICES): Update.
-	* DLD-FUNCTIONS/svd.cc (Fsvd_driver): Update.
-
-2010-05-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (set_internal_variable (int&, ..., const char **, int)):
-	New overload.
-	* variables.h: Declare it.
-	(SET_INTERNAL_VARIABLE_CHOICES): New macro.
-	* DLD-FUNCTIONS/svd.cc (Fsvd_driver): Use it here.
-
-2010-05-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-usr-fcn.h (octave_user_function::curr_unwind_protect_frame): New
-	field.
-	(octave_user_function::local_protect): New template method.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Initialize it here.
-	(octave_user_function::do_multi_index_op): Set and restore it here.
-	* variables.cc (wants_local_change, try_local_protect): New helper
-	funcs.
-	(set_internal_variable): Call them in all overloads.
-
-2010-05-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (symtab::do_mark_global, symtab::do_mark_hidden): Force
-	non-existing symbol to be created.
-
-2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xdiv.cc (solve_singularity_warning): Use ID for the warning.
-
-2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sqrtm.cc (sqrtm_utri_inplace): Use an ID for the
-	warning.
-
-2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-save.cc (install_loaded_variable): Pre-extract symbol record
-	reference to do all operations.
-
-2010-05-11  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (save_mat5_element_length): Correct element length for
-	sparse elements with NZMAX=1 or NC=0.
-	(save_mat5_binary_element): Save the NZMAX elements of the RIDX
-	sparse index.
-
-2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-lazy-idx.cc (octave_lazy_index::save_binary): Fix arguments to
-	save_binary_data.
-
-2010-05-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sqrtm.cc (do_sqrtm): Mark the result as triangular
-	where applicable.
-
-2010-05-10  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/qr.cc: Split qrdelete test into high precision test
-	when QRUPDATE is present and low precision when it is not.
-
-2010-05-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/schur.cc (Fschur): Mark triangular matrices on output.
-
-2010-05-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-range.cc (octave_range::index_vector): Optimize order of
-	conditions.
-
-2010-05-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::do_non_const_unary_op): Always return *this as
-	octave_value&. Remove unused overload.
-	* oct-lvalue.cc (octave_lvalue::do_unary_op): Simplify.
-	* pt-unop.cc (tree_prefix_expression::rvalue1,
-	tree_postfix_expression::rvalue1): Remove dummy rvalue1 calls.
-
-2010-05-07  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ov-base.h (Vsparse_auto_mutate): Add OCTINTERP_API tag.
-
-2010-05-07  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (maximum_braindamage): Set value of internal
-	variable Vallow_noninteger_range_as_index to true instead of
-	setting Octave:allow-noninteger-ranges-as-indices warning state.
-	* ov-range.cc (Fallow_noninteger_range_as_index): New function.
-	(Vallow_noninteger_range_as_index): New variable.
-	(octave_range::index_vector): Only allow non-integer range as
-	index if Vallow_noninteger_range_as_index is true.
-	(octave_range::bool_array_value): Move definition here from ov-range.h.
-	* ov-range.h (Vallow_noninteger_range_as_index): Provide decl.
-	* utils.cc (reset_warning_state): Delete.
-	(Fisindex): Temporarily set Vallow_noninteger_range_as_index
-	instead of changing warning state for
-	Octave:allow-noninteger-ranges-as-indices to "error".
-
-2010-05-06  John W. Eaton  <jwe@octave.org>
-
-	* xgl2ps.c: Don't compile gl2ps.c unless we have OpenGL.
-	From Petr Mikulik <mikulik>.
-
-2010-05-06  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.cc (octave_range::index_vector):
-	Improve warning/error message.
-
-2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sqrtm.cc (sqrtm_utri_inplace, do_sqrtm): New helper
-	functions.
-	(Fsqrtm): Rewrite.
-
-2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/schur.cc (Fschur): Recognize "complex" option for
-	Matlab compatibility. Simplify argument handling and improve error
-	messages.
-
-2010-05-05  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (reset_warning_state): New function.
-	(Fisindex): Temporarily set warning state for
-	Octave:allow-noninteger-ranges-as-indices to "error".
-	* error.cc (set_warning_state): New function.
-	(initialize_default_warning_state): Set default warning state
-	for Octave:allow-noninteger-ranges-as-indices to "error".
-	* error.h (set_warning_state): Provide decl.
-	* octave.cc (maximum_braindamage): Set warning state for
-	Octave:allow-noninteger-ranges-as-indices to "on".
-	* ov-range.cc (octave_range::index_vector): Warn if range
-	contains non-integer values.
-
-2010-05-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/svd.cc (driver): New static var.
-	(Fsvd): Use it to select a driver.
-	(Fsvd_driver): New DEFUN.
-
-2010-05-02  Rik  <octave@nomad.inbox5.com>
-
-	* ov-cell.cc: Wrap documentation line to prevent overfull hbox
-	LaTex warning
-
-2010-05-01  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.cc, graphics.h.in: Remove line object properties ldata,
-	udata, xldata, xudata.
-
-2010-04-30  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::set_axes_currentpoint):
-	check for valid object before manipulating it
-
-2010-04-27  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (string_array_property::string_array_property):
-	Index string_vector with [], not ().
-	(string_array_property::string_value): Likewise.
-	(string_array_property::do_set): Likewise.
-	Avoid indexing past last element of string_vector object.
-	Fixes bug #29695.
-
-2010-04-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cs-list.cc (octave_cs_list::subsref): New methods. Just gripe.
-	* ov-cs-list.h: Declare them.
-
-2010-04-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
-	Correct spelling of max_recursion_depth in error message.
-	(octave_usr_fcn::do_multi_index_op): Ditto.
-	* pt-eval.h, pt-eval.cc (Vmax_recursion_depth): Move definition
-	here from ov-usr-fcn.cc.  Now extern.
-	(Fmax_recursion_depth): Move definition here from ov-usr-fcn.cc.
-	* oct-parse.yy (source_file): Limit recursive calls on a
-	per-file basis.
-	Addresses bug #29491.
-
-2010-04-25  David Bateman  <dbateman@free.fr>
-
-	* oct-parse.yy (octave_function * load_fcn_from_file
-	(const std::string&, const std::string&, const std::string&)
-	(const std::string&, bool)): When loading a mex-file attempt
-	to load the m-file first to get the help string.
-
-2010-04-24  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in: Have figure color property support a radio value,
-	'none'.
-
-2010-04-24  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void axes::properties::set_defaults
-	(base_graphics_object&, const std::string&)): Make the default
-	axes color "none".
-
-2010-04-24  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* Makefile.am: change GRAPHICS_CPPFLAGS to GRAPHICS_CFLAGS since
-	the former does not exist and the latter serves the same purpose
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Clarify compilation note about defaults.h
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* symtab.h: Clear global variables when 'clear -all' called
-
-2010-04-23  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc	(OpenGL_fltk::OpenGL_fltk):
-	Explicitly initizlize all data members in the order they are declared.
-
-2010-04-23  John W. Eaton  <jwe@octave.org>
-
-	* txt-eng-ft.cc (ft_render::visit): Declare loop counter size_t,
-	not int.
-
-	* graphics.h.in (graphics_xform::untransform):  Likewise.
-	* graphics.cc (text::properties::update_text_extent): Likewise.
-	* DLD-FUNCTIONS/fltk_backend.cc	(plot_window::set_axes_currentpoint):
-	Avoid GCC shadow variable warning.
-
-	* DLD-FUNCTIONS (plot_window::plot_window): Explicitly
-	initialize all data members in the order they are declared.
-
-2010-04-23  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gcd.cc (Fgcd): Use two-argument dim_vector constructor.
-
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
-	Explicitly create idx_vec with column orientation.
-
-	* oct-obj.cc (octave_value_list::octave_value_list):
-	Explicitly resize data to be row vector.
-
-2010-04-23  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/regexp.cc.: Eliminate compile warning.
-	warning: suggest explicit braces to avoid ambiguous 'else'.
-
-2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-scalar.h (octave_base_scalar::reshape,
-	octave_base_scalar::permute): Remove implementations.
-	* ov-base-scalar.cc (octave_base_scalar::reshape,
-	octave_base_scalar::permute): Provide correct implementations here.
-
-2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-bool.h (octave_bool::empty_clone): Correctly return an empty
-	matrix.
-	* ov-float.h (octave_float::empty_clone): Ditto.
-	* ov-base-mat.h (octave_base_matrix::clone,
-	octave_base_matrix::empty_clone): Remove.
-	* ov-base-scalar.h (octave_base_scalar::clone,
-	octave_base_scalar::empty_clone): Remove.
-	* ov-base-sparse.h (octave_base_sparse::clone,
-	octave_base_sparse::empty_clone): Remove.
-	* ov-base.h (octave_base_value::empty_clone): Remove implementation.
-	* ov-base.cc (octave_base_value::empty_clone): Implement here.
-	Fall back to resize() for empty_clone().
-	* ov.cc (octave_value::assign): Correct behavior in the indexed
-	OP= case.  Use better error messages. Always return non-const
-	reference, like any assignment.
-	* ov.h: Update decls.
-	* oct-lvalue.cc (octave_lvalue::assign): Simplify.
-
-2010-04-22  Rik  <octave@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/hess.cc.: return correct Hessenberg matrix when
-	called with only one output argument.
-
-2010-04-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (do_hypot): New helper function. Move bulk code from Fhypot
-	here.
-	(Fhypot): Account for >2 args by folding do_hypot several times.
-
-2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (single_type_concat): New overloads. Make TYPE an explicit
-	template parameter. Try to forward some cases to Array<T>::cat and
-	Sparse<T>::cat.
-	(do_single_type_concat, do_single_type_concat_no_mutate): Don't
-	allocate the array here, let single_type_concat do it.
-
-2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (single_type_concat, do_single_type_concat): Rewrite using
-	new liboctave facilities.
-	(do_cat): Don't compute result dims if the case can be forwarded to
-	liboctave.
-
-2010-04-13  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void text::properties::update_text_extent (void)):
-	Don't call text_renderer.set_font if HAVE_FONTCONFIG is not set.
-
-2010-04-13  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Handle repeated matches
-	in the list of matches returned by pcre.
-
-2010-04-13  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::set_currentpoint,
-	(plot_window::set_axes_currentpoint, plot_window::key2shift,
-	(plot_window::key2ascii, plot_window::modifier2cell): New helper
-	functions for keypress and mousebutton callbacks.
-	(plot_window::handle): implement keypress and mousebutton callbacks.
-
-	* graphics.h.in (callback_property::is_defined): New conveniance
-	function.  Rename figure.current_point to figure.currentpoint.
-
-2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sparse.cc (Fspalloc): New DEFUN.
-	* ov-base.cc (octave_base_value::nzmax): Return numel by default.
-
-2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-sparse.cc (octave_base_sparse::assign): Rewrite.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::assign
-	(const octave_value_list& idx, const SparseMatrix& rhs)): Remove.
-	* ov-cx-sparse.h: Remove decl.
-
-2010-04-10  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in: Fix nextplot property values. Add "new" to
-	list for axes nextplot values. Change "replace_children" to
-	"replacechildren" for both axes and figures.
-
-2010-04-09  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Properly ignore
-	zero-length matches in named tokens.
-
-2010-04-09  John W. Eaton  <jwe@octave.org>
-
-	* ov-ch-mat.h (octave_char_matrix::mex_get_data): New function.
-	Addresses bug #29475.
-
-2010-04-09  Judd Storrs  <jstorrs@gmail.com>
-
-	* utils.cc (isvarname): Keywords are not valid variable names.
-
-2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help.cc (make_name_list): Don't insert global and top-level scope
-	variables. Always insert current scope.
-
-2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT): Replace by
-	templates.
-	(single_type_concat, do_single_type_concat): New static temvplate
-	funcs. Correctly skip 0x0 matrices.
-	(Fcat): Call them here. Add tests.
-
-2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-parse.yy (feval): Use do_multi_index_op on handles.
-	(get_feval_args): Use array slicing functions rather than loops.
-
-2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-sparse.cc (octave_base_sparse::delete_elements): Rewrite.
-
-2010-04-02  Judd Storrs  <jstorrs@gmail.com>
-
-	* octave.cc (intern_argv): Truncate argv when script files are
-	run without command line parameters. Resolves bug #29423.
-
-2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): Rewrite.
-
-2010-03-28  David Grundberg  <davidg@cs.umu.se>
-
-	* DLD-FUNCTIONS/convhulln.cc [HAVE_QHULL]: Neither include
-	qhull/qhull_a.h nor run tests if unless we HAVE_QHULL.
-
-2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (maybe_missing_function_hook): Temporarily clear before
-	executing the hook to avoid recursive calls.
-
-2010-03-25  John W. Eaton  <jwe@octave.org>
-
-	* gl2ps-renderer.cc (glps_renderer::draw): Tag call to fclose
-	with gnulib::.
-
-2010-03-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy, oct-fstrm.cc, mex.cc, input.cc,
-	c-file-ptr-stream.cc: Revert changes from 2010-03-24.
-
-2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* kron.cc (Fkron): Completely rewrite.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* version.h.in (OCTAVE_BUGS_STATEMENT): Point to
-	http://www.octave.org/bugs.html, not the mailing list.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/config-module.awk: Emit additions to EXTRA_DIST.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am ($(srcdir)/DLD-FUNCTIONS/module.mk):
-	Remove doubled // from file name in rule.
-
-2010-03-24  David Grundberg  <davidg@cs.umu.se>
-
-	* oct-parse.yy: Include gnulib stdlib.h/stdio.h instead of C++
-	headers.
-	* oct-fstrm.cc: Include gnulib stdlib.h/string.h instead of C++
-	headers.
-	* mex.cc: Include gnulib stdlib.h instead of C++ headers.
-	* input.cc: Include gnulib stdio.h instead of C++ headers.
-	* c-file-ptr-stream.cc: Include gnulib stdio.h.
-
-2010-03-24  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::add_to_fcn_map): Style fixes.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (maybe_missing_function_hook): Don't call hook if
-	errors are being handled.
-
-2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (Fmissing_function_hook): New pseudo-variable.
-	(Vmissing_function_hook): New static var.
-	(maybe_missing_function_hook): New function.
-	* variables.h: Declare it.
-	* pt-id.cc (tree_identifier::eval_undefined_error): Call it here.
-	* oct-parse.yy (feval (const std::string&, ...)): Also here.
-
-2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Frem, Fmod): New DEFUNs.
-	(Ffmod): Remove. Make an alias of Frem.
-
-2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (map_d_m, map_m_d, map_m_m, map_f_fm, map_fm_f, map_fm_fm,
-	map_d_s, map_s_d, map_s_s): Remove.
-	(Fatan2, Fhypot, Ffmod): Rewrite using binmap.
-
-2010-03-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix the parsing of string
-	function arguments.
-
-2010-03-20  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll: Don't undefine GNULIB_NAMESPACE.  Define fprintf,
-	fwrite, malloc, and realloc and GNULIB_NAMESPACE::fprintf, ...
-	* oct-parse.yy: Likewise.  Always include cstdlib.
-
-2010-03-16  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (save_ascii_data): Insert extra newline after
-	data is written to file.  From Brett Stewart <btstewart@wisc.edu>.
-
-2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (unary_mapper_t::umap_cbrt): New enum member.
-	* ov.h (octave_value::cbrt): New forwarder method.
-	* ov-scalar.cc (octave_scalar::map): Handle cbrt.
-	* ov-float.cc (octave_float_scalar::map): Ditto.
-	* ov-re-mat.cc (octave_matrix::map): Ditto.
-	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
-	* ov-re-sparse.cc (octave_sparse_matrix::map): Ditto.
-
-2010-03-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy, lex.ll: Undefine GNULIB_NAMESPACE immediately
-	after including <config.h>.
-
-	* toplev.cc (wait_for_input): Tag call to select with gnulib::.
-
-	* sighandlers.h (BLOCK_SIGNAL): Tag calls to sigemptyset,
-	sigaddset, and sigprocmask with gnulib::.
-	(UNBLOCK_CHILD): Tag call to sigprocmask with gnulib::.
-	* sighandlers.cc (octave_set_signal_handler): Tag calls to
-	sigemptyset with gnulib::.
-	(octave_set_signal_handler): Tag call to sigaction with gnulib::.
-
-	* oct-procbuf.cc (octave_procbuf::open): Tag calls to close, dup2,
-	and fclose with gnulib::.
-	(octave_procbuf::close): Tag call to fclose with gnulib::.
-
-	* oct-hist.cc (unlink_cleanup): Tag call to unlink with gnulib::.
-
-	* oct-fstrm.cc (octave_fstream::octave_fstream): Tag call to
-	strerror with gnulib::.
-
-	* mex.cc (mex::malloc_unmarked, mex::realloc, mxArray::malloc,
-	mxMalloc, mxRealloc): Tag call to malloc with gnulib::.
-
-	* input.cc (gnu_readline): Tag call to fputs with gnulib::.
-
-	* file-io.cc (cleanup_tmp_files): Tag call to unlink with gnulib::.
-	(do_stream_open, Ftmpfile, Fmkstemp): Tag call to strerror with
-	gnulib::.
-
-	* dirfns.cc (octave_change_to_directory): Tag call to strerror
-	with gnulib::.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::overflow): Tag calls to
-	fputc with gnulib::.
-	(c_file_ptr_buf::xsputn): Tag call to fwrite with gnulib::.
-	(c_file_ptr_buf::file_close): Move here from
-	c-file-ptr-stream.h.  Tag call to fclose with gnulib::.
-
-2010-03-12  Ben Abbott  <bpabbott@mac.com>
-
-	* /DLD-FUNCTIONS/chol.cc: Increase tolerance for single precision test.
-
-2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Fix deprecated array constructor.
-
-2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-intx.h
-	(OCTAVE_INT_NDARRAY_T::convert_gripe): Remove method.
-	(OCTAVE_INT_NDARRAY_T): Remove all uses.
-	(OCTAVE_INT_T::convert_gripe): Remove method.
-	(OCTAVE_INT_T): Remove all uses.
-	* ov.cc (convert_to_int_array, convert_to_octave_idx_type_array):
-	Remove int conversion warnings.
-	* data.cc (NATIVE_REDUCTION_1): Ditto.
-
-	* OPERATORS/op-intx.h: Remove integer warning stubs.
-	* OPERATORS/opt-int-conv.cc: Ditto.
-
-	* gripes.cc (gripe_truncated_conversion,
-	gripe_binop_integer_math_truncated,
-	gripe_native_integer_math_truncated,
-	gripe_unop_integer_math_truncated, gripe_non_integer_conversion,
-	gripe_nan_conversion): Remove.
-	* gripes.h: Remove decls.
-	* error.cc (initialize_default_warning_state): Don't initialize
-	removed warnings.
-
-2010-03-07  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* gl-render.cc (draw_figure): disable depth test on the 3rd pass.
-	(draw_text): use get_data_position to get text position.
-	* graphics.h.in (graphics_xform): New zlim field.
-	(graphics_xform::untransform(double,double,bool)): New method.
-	(axes::properties::get_transform): Provide zlim data to graphics_xform
-	constructor.
-	(text::properties::string, text::properties::units,
-	text::properties::rotation, text::properties::fontname,
-	text::properties::fontangle, text::properties::fontsize,
-	text::properties::fontweight, text::properties::interpreter): Add 'u'
-	modified.
-	(text::properties::extent): New property.
-	(text::properties::get_data_position): New method.
-	(text::properties::update_position): Use it.
-	(text::properties::update_text_extent,
-	text::properties::update_string, text::properties::update_rotation,
-	text::properties::update_fontname, text::properties::update_fontsize,
-	text::properties::update_fontangle,
-	text::properties::update_fontweight,
-	text::properties::update_interpreter, text::properties::update_units):
-	New updaters.
-	* graphics.cc (convert_position): Support single point.
-	(convert_text_position): New helper function.
-	(text::properties::get_data_position, text::properties::get_extent,
-	text::properties::update_text_extent, text::properties::update_units):
-	New methods.
-	* txt-eng-ft.h (ft_render::get_extent, ft_render::rotation_to_mode):
-	New methods.
-	* txt-eng-ft.cc (ft_render::get_extent, ft_render::rotation_to_mode):
-	Ditto.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (do_accumdim_sum): New helper function.
-	(F__accumdim_sum__): New DEFUN.
-
-2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (unary_mapper_t::umap_erfcx): New enum member.
-	* ov.h (octave_value::erfcx): New forwarder method.
-	* ov-scalar.cc (octave_scalar::map): Handle erfcx.
-	* ov-float.cc (octave_float_scalar::map): Ditto.
-	* ov-re-mat.cc (octave_matrix::map): Ditto.
-	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
-
-2010-03-03  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_read__):
-	Call Magick::InitializeMagick.
-
-2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/__convn__.cc: Remove.
-	* DLD-FUNCTIONS/module-files: Update.
-
-2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/conv.cc (Fconv2): Rewrite using convn from liboctave.
-	(Fconvn): New DEFUN.
-
-2010-03-01  John W. Eaton  <jwe@octave.org>
-
-	* (str2double1): Pass argument as const reference and make
-	explicit copy instead of passing by value.
-
-2010-03-01  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/str2double.cc (set_component): Use autoconf
-	macros instead of checking predefined compiler macros.
-	(str2double1): Pass val to set_component, not c.
-
-2010-03-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/str2double.cc (set_component): New helper func.
-	(str2double1): Use it here.
-
-2010-03-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/str2double.cc (str2double1): Use ISO-conformant code
-	for setting the real and imaginary part.
-
-2010-02-28  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Don't set
-	CURLOPT_USERPWD if userpwd is empty.
-
-2010-02-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am ($(srcdir)/DLD-FUNCTIONS/module.mk): New target.
-
-	* DLD-FUNCTIONS/config-module.sh: Accept top_srcdir argument.
-	Work from build directory too, not just source tree.
-
-2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-typeinfo.h (octave_value_typeinfo::octave_value_typeinfo):
-	Add missing initializers.
-
-2010-02-28  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/conv2.cc (conv2 (const MArray<T>&, const MArray<T>&,
-	Shape)): Args are now const.  Move invariant expressions outside
-	of loops.  Use pointers instead of Array class indexing methods.
-	(conv2 (const MArray<T>&, const MArray<T>&, const MArray<T>&, Shape)):
-	Ditto.
-
-2010-02-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.cc (do_index_op): Use checkelem for scalar indices.
-	Simplify.
-
-2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc: Update.
-	* ov-base-diag.cc: Update.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/str2double.cc (single_number): New helper func.
-	(extract_number): Call it instead of >> to get Inf's and NaN's
-	correctly.
-
-2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/str2double.cc: New source.
-
-2010-02-19  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/qr.cc: Increase tolerance for test.
-
-2010-02-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* TEMPLATE-INST/Array-tc.cc: Remove Array2 instantiation.
-	* DLD-FUNCTIONS/besselj.cc: Use Array instead of Array2.
-	* DLD-FUNCTIONS/tril.cc: Ditto.
-	* data.cc: Ditto.
-	* ov-typeinfo.cc: Ditto.
-	* ov-typeinfo.h: Ditto.
-	* pr-output.cc: Ditto.
-
-2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-bool-mat.h (octave_bool_matrix::octave_bool_matrix (const
-	Array<bool>&)): New ctor.
-	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix (const
-	Array<char>&)): New ctor.
-	* ov-str-mat.h (octave_char_matrix_str::octave_char_matrix_str (const
-	Array<char>&)): New ctor.
-	(octave_char_matrix_sq_str::octave_char_matrix_sq_str (const
-	Array<char>&)): New ctor.
-
-2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.cc: Reflect Array API changes.
-	* DLD-FUNCTIONS/__convn__.cc: Ditto.
-	* DLD-FUNCTIONS/__glpk__.cc: Ditto.
-	* DLD-FUNCTIONS/__magick_read__.cc: Ditto.
-	* DLD-FUNCTIONS/bsxfun.cc: Ditto.
-	* DLD-FUNCTIONS/cellfun.cc: Ditto.
-	* DLD-FUNCTIONS/conv2.cc: Ditto.
-	* DLD-FUNCTIONS/dlmread.cc: Ditto.
-	* DLD-FUNCTIONS/filter.cc: Ditto.
-	* DLD-FUNCTIONS/kron.cc: Ditto.
-	* DLD-FUNCTIONS/qz.cc: Ditto.
-	* DLD-FUNCTIONS/regexp.cc: Ditto.
-	* DLD-FUNCTIONS/sub2ind.cc: Ditto.
-	* data.cc: Ditto.
-	* file-io.cc: Ditto.
-	* gl-render.cc: Ditto.
-	* ls-mat5.cc: Ditto.
-	* oct-map.cc: Ditto.
-	* oct-obj.h: Ditto.
-	* oct-parse.yy: Ditto.
-	* oct-stream.cc: Ditto.
-	* ov-base-mat.cc: Ditto.
-	* ov-base-sparse.cc: Ditto.
-	* ov-perm.cc: Ditto.
-	* ov-struct.cc: Ditto.
-	* ov-typeinfo.cc: Ditto.
-	* ov-typeinfo.h: Ditto.
-	* ov.cc: Ditto.
-	* pr-output.cc: Ditto.
-	* pt-mat.cc: Ditto.
-	* strfns.cc: Ditto.
-	* txt-eng-ft.cc: Ditto.
-	* variables.cc: Ditto.
-
-2010-02-22  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc: Use numel instead of nelem consistently and where
-	appropriate in all functions.
-	(read_mat5_binary_element): Declare ridx and cidx as pointer to
-	octave_idx_type, not int.
-	(read_mat5_integer_data): Declare count as octave_idx_type, not int.
-	(READ_INTEGER_DATA): Loop counter is octave_idx_type, not int.
-	(OCTAVE_MAT5_INTEGER_READ): Declare n and loop counter as
-	octave_idx_type, not int.
-	(read_mat5_binary_element): Rows and columns of sparse matrix
-	are octave_idx_type, not int.  Declare nzmax and nnz as
-	octave_idx_type.  Read nzmax as 32-bit int, and assign.  Move
-	decls closer to first use.
-	(read_mat5_binary_data): Declare count as octave_idx_type, not int.
-	(read_mat5_binary_element, write_mat5_array):
-	Use octave_idx_type instead of int for numel and loop counters.
-	(write_mat5_array): Declare len and nel as octave_idx_type.
-	Move declarations closer to first use.
-	(write_mat5_tag): Declare bytes arg as octave_idx_type, not int.
-	(write_mat5_integer_data): Declare nel as octave_idx_type, not int.
-	(write_mat5_cell_array): Declare nel and loop counter as
-	octave_idx_type, not int.
-	(save_mat5_array_length): Declare nel nad loop counters as
-	octave_idx_type, not int.
-	(save_mat5_binary_element): Declare dims and counters as
-	octave_idx_type, not int. Delete unused streampos variables.
-	Call write_mat5_sparse_index_vector to write ridx and cidx.
-	Don't write element if dimension is too large to save.
-	(gripe_dim_too_large, write_mat5_sparse_index_vector): New functions.
-
-2010-02-22  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* dirfns.cc (Fglob): Make glob function test more robust.
-
-2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* gl-render.h: Define WIN32_LEAN_AND_MEAN and don't #undef min/max.
-	* DLD-FUNCTIONS/fltk_backend.cc: Don't #undef min/max.
-
-	* sighandlers.cc (octave_set_signal_handler): Don't use SIGALRM
-	unconditionally.
-
-	* ov-bool.h (class octave_bool): Add OCTINTERP_API.
-	* unwind-prot.h (class unwind_protect_safe): Ditto.
-
-	* Makefile.am: Add -bindir flag to liboctinterp_la_LDFLAGS. Remove
-	temporary libtool module file after copying oct file.
-
-2010-02-19  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/qr.cc: Increase tolerance for test.
-
-2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-lazy-idx.cc (octave_lazy_index::reshape,
-	octave_lazy_index::squeeze, octave_lazy_index::permute,
-	octave_lazy_index::sort, octave_lazy_index::is_sorted,
-	octave_lazy_index::sort_rows_idx, octave_lazy_index::is_sorted_rows):
-	New method overrides.
-	* ov-lazy-idx.h: Declare them.
-	* ov-re-mat.cc (octave_matrix::reshape, octave_matrix::squeeze,
-	octave_matrix::sort, octave_matrix::is_sorted,
-	octave_matrix::sort_rows_idx, octave_matrix::is_sorted_rows): New
-	method overrides.
-	* ov-re-mat.h: Declare them.
-
-2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Avoid unsafe conversion from Inf to
-	integer.
-
-2010-02-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* syscalls.cc (mk_stat_result): New helper function.
-	(Flstat): Call it here.
-	(Fstat): Also here. Handle also the fstat case here.
-
-2010-02-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* dirfns.cc (Fglob): Document globbing patterns, add test.
-
-2010-02-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-path.cc (in_path_list): New helper function.
-	(add_to_fcn_map): Use it here.
-
-2010-02-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (__magick_finfo__):
-	Handle multiple frames in a single image file.
-
-2010-02-18  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.h (Octave_map::Octave_map): Allow dimension to also be
-	specified in string_vector constructor.
-
-2010-02-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
-	Include ../libcruft/libranlib.la in the list.
-	* oct-conf.h.in (OCTAVE_CONF_F77_INTEGER_8_FLAG): New macro.
-	* toplev.cc (octave_config_info): Include F77_INTEGER_8_FLAG in
-	the struct.
-
-2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Return an idx_vector
-	when left_inf is in effect, to enable lazy index optimization.
-
-2010-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-lazy-idx.h: New source.
-	* ov-lazy-idx.cc: New source.
-	* ov.cc (install_types): Register lazy_index here.
-	(octave_value::octave_value (const idx_vector&)): Use lazy
-	construction if possible, under control of an optional flag.
-	(octave_value::clone): Implement.
-	* ls-hdf5.cc (save_hdf5): Avoid saving lazy indices.
-
-2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.h (octave_fcn_handle::print_as_scalar): New method
-	override.
-
-2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::is_equal_to): New method.
-	* ov-fcn-handle.h: Declare it.
-	* OPERATORS/op-fcn.cc (eq, ne): Call it here. Register new handler.
-
-2010-02-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-path.cc (load_path::do_any_class_method): Rename to
-	do_overloads. Return a list of classes.
-	* load-path.h (load_path::any_class_method): Likewise.
-	* symtab.cc (get_dispatch_type): Rewrite.
-	* symtab.h (get_dispatch_type): Update decl.
-	* ov-fcn-handle.h (octave_fcn_handle): Partially rewrite.
-	(octave_fcn_handle::builtin_overloads, octave_fcn_handle::overloads,
-	octave_fcn_handle::has_overloads): New members.
-	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Rewrite.
-	(make_fcn_handle): Partially rewrite.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/config-module.awk, genprops.awk, graphics.h.in,
-	mkgendoc, mk-pkg-add, mxarray.h.in, zfstream.cc, zfstream.h:
-	Untabify.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fstrcmpi, Fstrncmpi): Use DEFUNX instead of DEFUN.
-	(Fstrncmpi): Report strncmpi in error message, not strncmp.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Cell.cc, bitfcns.cc, c-file-ptr-stream.cc, comment-list.cc,
-	data.cc, debug.cc, defaults.cc, defun.cc, dirfns.cc, display.cc,
-	dynamic-ld.cc, error.cc, file-io.cc, gl-render.cc,
-	gl2ps-renderer.cc, graphics.cc, gripes.cc, help.cc, input.cc,
-	load-path.cc, load-save.cc, ls-ascii-helper.cc, ls-hdf5.cc,
-	ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc, ls-oct-ascii.cc,
-	ls-oct-binary.cc, mex.cc, oct-fstrm.cc, oct-hist.cc,
-	oct-lvalue.cc, oct-map.cc, oct-obj.cc, oct-prcstrm.cc,
-	oct-procbuf.cc, oct-stream.cc, oct-strstrm.cc, octave.cc,
-	ov-base-diag.cc, ov-base-int.cc, ov-base-mat.cc,
-	ov-base-scalar.cc, ov-base-sparse.cc, ov-base.cc,
-	ov-bool-mat.cc, ov-bool-sparse.cc, ov-bool.cc, ov-builtin.cc,
-	ov-cell.cc, ov-ch-mat.cc, ov-class.cc, ov-colon.cc,
-	ov-complex.cc, ov-cx-diag.cc, ov-cx-mat.cc, ov-cx-sparse.cc,
-	ov-dld-fcn.cc, ov-fcn-handle.cc, ov-fcn-inline.cc, ov-float.cc,
-	ov-flt-complex.cc, ov-flt-cx-diag.cc, ov-flt-cx-mat.cc,
-	ov-flt-re-diag.cc, ov-flt-re-mat.cc, ov-int16.cc, ov-int32.cc,
-	ov-int64.cc, ov-int8.cc, ov-mex-fcn.cc, ov-perm.cc, ov-range.cc,
-	ov-re-diag.cc, ov-re-mat.cc, ov-re-sparse.cc, ov-scalar.cc,
-	ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc, ov-uint16.cc,
-	ov-uint32.cc, ov-uint64.cc, ov-uint8.cc, ov-usr-fcn.cc, ov.cc,
-	pager.cc, pr-output.cc, procstream.cc, pt-arg-list.cc,
-	pt-assign.cc, pt-binop.cc, pt-bp.cc, pt-cbinop.cc, pt-cell.cc,
-	pt-check.cc, pt-cmd.cc, pt-colon.cc, pt-const.cc, pt-decl.cc,
-	pt-eval.cc, pt-except.cc, pt-exp.cc, pt-fcn-handle.cc, pt-id.cc,
-	pt-idx.cc, pt-jump.cc, pt-loop.cc, pt-mat.cc, pt-misc.cc,
-	pt-pr-code.cc, pt-select.cc, pt-stmt.cc, pt-unop.cc,
-	sighandlers.cc, sparse-xdiv.cc, sparse-xpow.cc, strfns.cc,
-	symtab.cc, syscalls.cc, sysdep.cc, toplev.cc, txt-eng-ft.cc,
-	utils.cc, variables.cc, xdiv.cc, xpow.cc, oct-parse.yy, lex.ll:
-	Untabify.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Cell.h, base-list.h, c-file-ptr-stream.h, comment-list.h,
-	debug.h, defun-int.h, dynamic-ld.h, error.h, gl-render.h,
-	gl2ps-renderer.h, gripes.h, load-path.h, load-save.h, ls-hdf5.h,
-	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
-	ls-oct-binary.h, oct-fstrm.h, oct-iostrm.h, oct-lvalue.h,
-	oct-map.h, oct-obj.h, oct-prcstrm.h, oct-stdstrm.h,
-	oct-stream.h, oct-strstrm.h, octave.h, ops.h, ov-base-diag.h,
-	ov-base-int.h, ov-base-mat.h, ov-base-scalar.h,
-	ov-base-sparse.h, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
-	ov-bool.h, ov-builtin.h, ov-cell.h, ov-class.h, ov-complex.h,
-	ov-cx-diag.h, ov-cx-mat.h, ov-cx-sparse.h, ov-dld-fcn.h,
-	ov-fcn-handle.h, ov-fcn-inline.h, ov-fcn.h, ov-float.h,
-	ov-flt-complex.h, ov-flt-cx-diag.h, ov-flt-cx-mat.h,
-	ov-flt-re-diag.h, ov-flt-re-mat.h, ov-intx.h, ov-mex-fcn.h,
-	ov-perm.h, ov-range.h, ov-re-diag.h, ov-re-mat.h,
-	ov-re-sparse.h, ov-scalar.h, ov-str-mat.h, ov-struct.h,
-	ov-type-conv.h, ov-typeinfo.h, ov-usr-fcn.h, ov.h, parse.h,
-	pr-output.h, pt-arg-list.h, pt-assign.h, pt-binop.h, pt-cell.h,
-	pt-cmd.h, pt-colon.h, pt-const.h, pt-decl.h, pt-eval.h,
-	pt-except.h, pt-exp.h, pt-fcn-handle.h, pt-id.h, pt-idx.h,
-	pt-jump.h, pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h,
-	pt-select.h, pt-stmt.h, pt-unop.h, sighandlers.h, sparse-xdiv.h,
-	sparse-xpow.h, symtab.h, token.h, toplev.h, txt-eng-ft.h,
-	txt-eng.h, utils.h, variables.h, xdiv.h: Untabify.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/qz.cc: Untabify.
-	(Fqz): Declare complex_case volatile to avoid GCC warning.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/qz.cc: Style fixes.
-
-2010-02-11  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc: If gnulib defines open, undefine it.  Move
-	#undefs before including zfstream.h.
-
-2010-01-30  Jyh-Miin Lin  <jyhmiin@gmail.com>
-
-	* DLD-FUNCTIONS/qz.cc (Fqz): Handle complex case without reordering.
-	Return Q' for Matlab compatibility.
-
-2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc: Reverse the effect of 2ceae0b40515.
-	(get_dispatch_type): If btyp_unknown occurs, read the class dispatch
-	type.
-
-2010-02-10  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc: If gnulib defines close, undefine it.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-perm.h (octave_perm_matrix::builtin_type): New function.
-	* symtab.cc (build_sup_table): Build the matrix with extra column
-	and row to avoid segfault when undefined value leaks in.
-	(get_dispatch_type): Update. Gripe if invalid result is detected.
-
-2010-02-10  John W. Eaton  <jwe@octave.org>
-
-	* data.cc: Ensure that CLOCKS_PER_SEC is defined instead of HZ.
-	(Fcputime): Use CLOCKS_PER_SEC instead of HZ.
-
-2010-02-10  John W. Eaton  <jwe@octave.org>
-
-	* data.cc: Include <sys/times.h>.  Define HZ if it is not defined.
-
-2010-02-10  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (base_properties::set_children): Ensure that new
-	children are stored as a column vector.
-
-	* syscalls.cc (Fdup2, Fexec, Fpopen2, Ffork, Fgetpgrp, Fgetpid,
-	Fgetppid, Fgetegid, Fgetgid, Fgeteuid, Fkill, Ffstat, Flstat,
-	Fpipe, Fstat, Fwaitpid): Use DEFUNX instead of DEFUN.
-
-2010-02-10  David Grundberg  <davidg@cs.umu.se>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (read_images): Reimplement
-	copying with direct fortran_vec manipulation, avoiding indexing
-	operations.  Replace scale_quantum_to_depth calls with simple
-	arithmetics.
-	(scale_quantum_to_depth): Remove function.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc (Fbsxfun): Remove redundant test. Add
-	explanation.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::is_list): Remove.
-	* ov.h (octave_value::is_list): Remove.
-	* data.cc (Fislist): Remove.
-	* oct-stream.cc (printf_value_cache::printf_value_cache): Don't call
-	is_list.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-str-mat.h (octave_char_matrix_str::is_real_type): Delete
-	overload.
-	* data.cc (Fisreal): Improve docs.
-
-2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fisnumeric): Improve documentation.
-	(Fismatrix): Ditto.
-
-2010-02-09  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc, graphics.h.in
-	(base_properties::get_hidden_children): New function.
-	(base_properties::get_children_internal): New function.
-	(base_properties::get_children): Call get_children_internal to
-	do the work.
-	(base_properties::set_children): Incorporate maybe_set_children
-	function here.  Account for hidden children.
-	(maybe_set_children): Delete.
-
-	* c-file-ptr-stream.h (c_file_ptr_buf::buf_close): Rename from close.
-	(c_file_ptr_buf::file_close): Rename from fclose.
-	(c_file_ptr_stream::stream_close): Rename from close.
-	(c_zfile_ptr_buf:buf_close): Rename from close.
-	Change all callers.
-
-2010-02-09  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (clear): Only warn if reloading a dynamically
-	linked file that defines multiple functions.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx (const Array<T>&, ...)):
-	Optimize creation of result indices.
-	* data.cc (Fsort): Ditto.
-
-2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd, Fetree): Fix improper arg
-	checks.
-	* DLD-FUNCTIONS/ccolamd.cc (Fccolamd, Fcsymamd): Likewise.
-
-2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (octave_matrix::sort): Special-case sorting a known
-	index vector.
-
-2010-02-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (Fclass): If more than 1 argument, check that
-	call is inside class constructor first, then check for valid
-	arguments.
-
-2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (F__accumarray_sum__): Allow bool and char inputs.
-	(do_accumarray_minmax, do_accumarray_minmax_fun): New helper funcs.
-	(F__accumarray_min__, F__accumarray_max__): New defuns.
-
-2010-02-04  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc: Don't include <sys/utsname.h>.
-
-2010-02-04  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (gh_manager::lookup (const octave_value&)):
-	New function.
-	* graphics.cc (axes::properties::set_text_child): Validate value.
-	Allow value to be character string or handle of text object.
-
-2010-02-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (OCTAVE_LIBS): Include all liboctave library
-	dependencies here.
-
-2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.h (octave_fcn_handle::anonymous): New static field.
-	* ov-fcn-handle.cc (octave_fcn_handle::anonymous): Initialize it.
-	Use everywhere instead of hardwired string.
-	(octave_fcn_handle::print_raw): Print named function handle with
-	starting @.
-	* pt-fcn-handle.cc: Use octave_fcn_handle::anonymous rather than
-	hardcoded string.
-
-2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-fcn.cc: New source.
-	* OPERATORS/module.mk: Include it.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc: Assume we have fcntl.h and sys/stat.h.
-
-	* syscalls.cc: Assume we have fcntl.h and fcntl.
-	(Ffcntl): Use DEFUNX, not DEFUN.  Call octave_fcntl, not
-	octave_syscalls::fcntl.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/sub2ind.cc (get_dim_vector):
-	Eliminate unnecessary cast.
-
-	* DLD-FUNCTIONS/qr.cc (Fqrinsert, Fqrdelete):
-	Avoid type mismatch errors with octave_idx_type.
-
-	* oct-stream.cc (scanf_format_list::add_elt_to_list):
-	NUM_ELTS arg is octave_idx_type, not int.
-
-	* ov-struct.cc (octave_struct::load_ascii): Ensure args to
-	std::max are the same type.
-	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Likewise.
-	* DLD-FUNCTIONS/sub2ind.cc (get_dim_vector): Likewise.
-	* DLD-FUNCTIONS/strfind.cc (qs_search): Likewise, for std::min.
-	* DLD-FUNCTIONS/tril.cc (do_tril, do_triu): Likewise.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (octave_vsnprintf): Assume we have vsnprintf with
-	semantics that match the version provided by gnulib.
-
-	* DLD-FUNCTIONS/convhulln.cc (Fconvhulln):
-	Use std::sstream instead of fixed-length buffer and snprintf.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* cutils.c (octave_usleep): Implement using nanosleep.
-	(octave_sleep): Assume sleep exists.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (Fcanonicalize_file_name):
-	Call octave_canonicalize_file_name instead of
-	file_ops::canonicalize_file_name.
-
-2010-02-03  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Fpwd): Call octave_env::get_current_directory, not
-	octave_env::getcwd.
-
-	* utils.cc (search_path_for_file, search_path_for_all_files,
-	make_absolute, Ffile_in_loadpath, Ffile_in_path, file_in_path,
-	contents_file_in_path, Fmake_absolute_filename):
-	Don't pass current directory to octave_env::make_absolute.
-	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
-	* octave.cc (execute_startup_files): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-	* load-save.cc (find_file_to_load): Likewise.
-	* load-path.cc (load_path::dir_info::update,
-	load_path::dir_info::initialize, load_path::do_find_dir,
-	load_path::do_find_matching_dirs): Likewise.
-	* file-io.cc (do_stream_open): Likewise.
-	* oct-parse.yy (load_fcn_from_file, Fautoload): Likewise.
-	* DLD-FUNCTIONS/md5sum.cc (Fmd5sum): Likewise.
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite): Likewise.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (Fcanonicalize_file_name): Use DEFUNX instead of DEFUN.
-
-2010-02-02  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* DLD-FUNCTIONS/filter.cc: New tests.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Assume we have atexit.
-	* sighandlers.h, sighandlers.cc: Delete conditional definition
-	of RETSIGTYPE.  Replace all uses of RETSIGTYPE with void.
-	(MAYBE_REINSTALL_SIGHANDLER, SIGHANDLER_RETURN):
-	Delete macros and all uses.
-
-2010-02-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-path.cc (load_path::add_to_fcn_map): Warn when core library or
-	built-in functions are being shadowed.
-	(load_path::do_add): Pass at_end to add_to_fcn_map, add_to_method_map.
-	Don't abort when "." not yet included.
-	(load_path::do_clear): Don't append "." here.
-	(load_path::do_set): Always prepend "." here.
-	(load_path::initialize): Don't explicitly include "." here.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
-	MArrayN<T>&, MArrayN<T>&, int)): Return early if X is empty.
-
-2010-02-02  John W. Eaton  <jwe@octave.org>
-
-	* cutils.c: Include <sys/times.h>, not "systime.h".
-	* data.cc (Fcputime): Assume we have times.
-
-	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Assume we have times.
-	Include <times.h> and <sys/times.h> unconditionally.
-	Don't include <windows.h>
-
-2010-02-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strfns.cc (Fstrncmpi): Fix typo in docstring.
-
-2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-list.h, ov-list.cc, OPERATORS/op-list.cc: Remove.
-
-	* Makefile.am, OPERATORS/module.mk: Update.
-	* debug.cc: Remove #include.
-	* ov-base.cc: Ditto.
-	* ov-cs-list.h: Ditto.
-	* ov-struct.cc: Ditto.
-	* pt-bp.cc: Ditto.
-	* ov.cc (octave_value::octave_value (const octave_value_list&)):
-	Simplify.
-	(install_types): Omit octave_list.
-
-2010-01-30  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* DLD-FUNCTIONS/time.cc: Replace struct_contains by isfield.
-
-2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-assign.h (tree_multi_assignment::etype): Remove.
-	(tree_multi_assignment::tree_multi_assignment): Update.
-	(tree_multi_assignment::op_type): Update.
-	* pt-assign.cc (tree_multi_assignment::tree_multi_assignment): Update.
-	(tree_multi_assignment::rvalue): Update.
-	(tree_multi_assignment::dup): Update.
-	* oct=parse.yy (make_assign_op): Don't allow computed multiple
-	assignments.
-
-2010-01-30  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (__fltk_redraw__): call
-	Fl::check twice to ensure all pending draws are shown on screen
-
-2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-lvalue.h (octave_lvalue::black_hole): Remove field.
-	(octave_lvalue::(all methods)): Update.
-	* oct-lvalue.cc: Ditto.
-
-2010-01-29  David Grundberg  <davidg@cs.umu.se>
-
-	* mex.cc (mex::realloc): Allocate new memory if the argument is
-	NULL.
-
-2010-01-29  Ryan Rusaw  <rrusaw@gmail.com>
-
-	* pt-eval.h, pt-eval.cc (tree_evaluator::do_keyboard):
-	New virtual function.
-
-2010-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* toplev.cc (run_command_and_return_output): Fix testing of failed
-	process creation, simplify.
-	(cleanup_iprocstream): Remove.
-
-2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-eval.cc (do_unwind_protect_cleanup_code): Save
-	current_statement and restore it after cleanup block.
-
-2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-parse.yy (validate_matrix_row): New static helper func.
-	(cell_or_matrix_row): Call it here.
-
-2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-lvalue.h (octave_lvalue::is_black_hole): New method.
-	(octave_lvalue::black_hole): New field.
-	(octave_lvalue::is_defined, octave_lvalue::is_undefined,
-	octave_lvalue::is_map): Make const.
-	(octave_lvalue::index_set): Remove field.
-	(octave_lvalue::octave_lvalue, octave_lvalue::operator =): Correctly
-	handle black holes. Update.
-	(dummy_value): Remove.
-	* pt-id.h (tree_identifier::is_black_hole): New method.
-	(tree_identifier::is_variable): Make virtual.
-	(tree_black_hole): New class.
-	* oct-parse.yy (magic_tilde): New terminal.
-	(param_list): Allow magic_tilde.
-	(arg_list): Allow magic_tilde.
-	* pt-misc.cc (tree_parameter_list::validate): Handle black holes.
-	* pt-idx.cc (tree_index_expression::append): Gripe if arguments
-	contain magic tilde.
-	* pt-arg-list.h (tree_argument_list::has_magic_tilde): New method
-	decl.
-	(tree_argument_list::list_includes_magic_tilde): New field.
-	(tree_argument_list::tree_argument_list): Initialize it in ctors.
-	* pt-arg-list.cc (tree_argument_list::has_magic_tilde): New method.
-	(tree_argument_list::append): Update list_includes_magic_tilde.
-
-2010-01-27  Judd Storrs  <jstorrs@gmail.com>
-
-	* ov-class.cc (octave_class::print_with_name) Add default case for
-	classes that don't define a display method.
-
-2010-01-26  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl-render.cc (draw_text): scale position.
-
-2010-01-26  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Fmkdir, Frmdir, Flink, Fsymlink, Freadlink,
-	Frename, Ftmpnam, Fumask): Use DEFUNX instead of DEFUN.
-	* syscall.scc (Fmkfifo, Funlink): Ditto.
-	* DLD-FUNCTIONS/urlwrite.cc (cleanup_urlwrite, reset_path,
-	delete_file): Now static.
-
-2010-01-23  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Use getopt directly instead of using
-	the (mostly useless) prog_args wrapper class.
-	Include <getopt.h>, not "prog-args.h".
-
-2010-01-23  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (user_abort): Also set debug_mode if Vdebugging.
-	* debug.cc (bp_table::do_add_breakpoint, do_remove_all_breakpoints,
-	bp_table::do_remove_breakpoint,	do_remove_all_breakpoints_in_file):
-	Also set debug_mode if Vdebugging.
-	* pt-eval.cc (visit_return_command): Actually call reset_debug_state.
-	(reset_debug_state): Also set debug_mode if Vdebugging.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Use new names for prog_args member
-	functions.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc: Don't include sys/types.h, unistd.h, or fstream.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (make_break_command, make_continue_command,
-	make_return_command): Don't examine evaluator state here.
-	* pt-eval.cc (tree_evaluator::visit_break_command): Don't set
-	tree_break_command::breaking unless inside function or script
-	body, or inside a looping command.
-	(tree_evaluator::visit_continue_command): Likewise, for
-	tree_continue_command::continuing.
-	(tree_evaluator::visit_return_command): Likewise, for
-	tree_return_command::returning.  Act like dbcont if debugging
-	and in the top-level debugging stack frame.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_base_stream::do_scanf): Don't skip
-	whitespace, literal text, and %% elements at the end of the
-	format spec.  Correctly process formats containing only literal text.
-	(scanf_format_list::finish_conversion): Don't increment nconv
-	for literal % characters.
-	(scanf_format_list::length, scanf_format_list::num_conversions):
-	Return octave_idx_type, not int.
-	(scanf_format_list::nconv, scanf_format_list::curr_idx):
-	Now octave_idx_type, not int.  Change all uses.
-	(printf_format_list::length): Return octave_idx_type, not int.
-	(scanf_format_list::nconv, scanf_format_list::curr_idx):
-	Now octave_idx_type, not int.  Change all uses.
-	(scanf_format_list::add_elt_to_list,
-	scanf_format_list::process_conversion,
-	scanf_format_list::finish_conversion,
-	printf_format_list::add_elt_to_list,
-	printf_format_list::process_conversion,
-	printf_format_list::finish_conversion):
-	Use size_t instead of int as appropriate.
-	* oct-stream.h: Update decls.
-
-2010-01-22  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (Fdbcont, Fdbquit): Call reset_debug_state.
-	(Fdbquit): Set Vdebugging to false.
-	* input.cc (Fkeyboard): Set tree_evaluator::debug_state to true.
-	Set tree_evaluator::current_frame to the initial stack frame
-	that is active for debugging commands.
-	* pt-eval.cc (tree_evaluator::reset_debug_state): New function.
-	* pt-eval.h (tree_evaluator::reset_debug_state): Provide decl.
-	* toplev.cc (main_loop): Call tree_evaluator::reset_debug_state
-	if at top level.
-
-2010-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fnorm): Don't special-case empty matrix.
-	* DLD-FUNCTIONS/svd.cc (Fsvd): Fix empty matrix case. Add tests.
-
-2010-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Partially undo
-	previous change.
-	* ov-type-conv.h (octave_type_conv_body): Undo previous change.
-	* ov-dld-fcn.cc (octave_dld_function::do_multi_index_op): Ditto.
-
-2010-01-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/getgrent.cc,
-	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/regexp.cc, lex.ll,
-	cutils.c, data.cc, defaults.cc, dirfns.cc, file-io.cc, help.cc,
-	input.cc, oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc,
-	pager.h, procstream.h, sighandlers.cc, toplev.cc, syscalls.cc,
-	sysdep.cc, utils.cc: Assume sys/types.h and unistd.h are present
-	(gnulib provides them).
-
-2010-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::dim_vector): Return 0x0 by default.
-	* oct-obj.h (octave_value_list::xelem, octave_value_list::clear): New
-	methods.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Don't call
-	make_storable_values. Chop a potential single undefined value.
-	* ov-type-conv.h (octave_type_conv_body): Ensure storable value.
-	* ov-dld-fcn.cc (octave_dld_function::do_multi_index_op): New method.
-	* DLD-FUNCTIONS/cellfun.cc (get_output_list): New helper function.
-	(Fcellfun): Call it here. Optimize.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* defaults.h.in, graphics.h.in, oct-conf.h.in, oct-errno.cc.in,
-	version.h.in: Delete Emacs local-variable settings.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* cutils.c, main.c, matherr.c, siglist.c, Cell.cc, bitfcns.cc,
-	c-file-ptr-stream.cc, comment-list.cc, data.cc, debug.cc,
-	defaults.cc, defun.cc, dirfns.cc, display.cc, dynamic-ld.cc,
-	error.cc, file-io.cc, gl-render.cc, gl2ps-renderer.cc,
-	graphics.cc, gripes.cc, help.cc, input.cc, load-path.cc,
-	load-save.cc, ls-ascii-helper.cc, ls-hdf5.cc, ls-mat-ascii.cc,
-	ls-mat4.cc, ls-mat5.cc, ls-oct-ascii.cc, ls-oct-binary.cc,
-	ls-utils.cc, mappers.cc, oct-fstrm.cc, oct-hist.cc,
-	oct-iostrm.cc, oct-lvalue.cc, oct-map.cc, oct-obj.cc,
-	oct-prcstrm.cc, oct-procbuf.cc, oct-stream.cc, oct-strstrm.cc,
-	octave.cc, ov-base-int.cc, ov-base-mat.cc, ov-base-scalar.cc,
-	ov-base-sparse.cc, ov-base.cc, ov-bool-mat.cc,
-	ov-bool-sparse.cc, ov-bool.cc, ov-builtin.cc, ov-cell.cc,
-	ov-ch-mat.cc, ov-class.cc, ov-colon.cc, ov-complex.cc,
-	ov-cs-list.cc, ov-cx-mat.cc, ov-cx-sparse.cc, ov-dld-fcn.cc,
-	ov-fcn-handle.cc, ov-fcn-inline.cc, ov-fcn.cc, ov-float.cc,
-	ov-flt-complex.cc, ov-flt-cx-mat.cc, ov-flt-re-mat.cc,
-	ov-int16.cc, ov-int32.cc, ov-int64.cc, ov-int8.cc, ov-list.cc,
-	ov-mex-fcn.cc, ov-range.cc, ov-re-mat.cc, ov-re-sparse.cc,
-	ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc,
-	ov-uint16.cc, ov-uint32.cc, ov-uint64.cc, ov-uint8.cc,
-	ov-usr-fcn.cc, ov.cc, pager.cc, pr-output.cc, procstream.cc,
-	pt-arg-list.cc, pt-assign.cc, pt-binop.cc, pt-bp.cc, pt-cell.cc,
-	pt-check.cc, pt-cmd.cc, pt-colon.cc, pt-const.cc, pt-decl.cc,
-	pt-eval.cc, pt-except.cc, pt-exp.cc, pt-fcn-handle.cc, pt-id.cc,
-	pt-idx.cc, pt-jump.cc, pt-loop.cc, pt-mat.cc, pt-misc.cc,
-	pt-pr-code.cc, pt-select.cc, pt-stmt.cc, pt-unop.cc, pt.cc,
-	sighandlers.cc, sparse-xdiv.cc, sparse-xpow.cc, strfns.cc,
-	symtab.cc, syscalls.cc, sysdep.cc, token.cc, toplev.cc,
-	unwind-prot.cc, utils.cc, variables.cc, xdiv.cc, xpow.cc,
-	zfstream.cc, Cell.h, base-list.h, builtins.h,
-	c-file-ptr-stream.h, comment-list.h, debug.h, defun-dld.h,
-	defun-int.h, defun.h, dirfns.h, display.h, dynamic-ld.h,
-	error.h, file-io.h, gl2ps-renderer.h, gripes.h, help.h, input.h,
-	lex.h, load-path.h, load-save.h, ls-ascii-helper.h, ls-hdf5.h,
-	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
-	ls-oct-binary.h, ls-utils.h, mex.h, mexproto.h, oct-errno.h,
-	oct-fstrm.h, oct-hdf5.h, oct-hist.h, oct-iostrm.h, oct-lvalue.h,
-	oct-map.h, oct-obj.h, oct-prcstrm.h, oct-procbuf.h,
-	oct-stdstrm.h, oct-stream.h, oct-strstrm.h, oct.h, octave.h,
-	ops.h, ov-base-int.h, ov-base-mat.h, ov-base-scalar.h,
-	ov-base-sparse.h, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
-	ov-bool.h, ov-builtin.h, ov-cell.h, ov-ch-mat.h, ov-class.h,
-	ov-colon.h, ov-complex.h, ov-cs-list.h, ov-cx-mat.h,
-	ov-cx-sparse.h, ov-dld-fcn.h, ov-fcn-handle.h, ov-fcn-inline.h,
-	ov-fcn.h, ov-float.h, ov-flt-complex.h, ov-flt-cx-diag.h,
-	ov-flt-cx-mat.h, ov-flt-re-mat.h, ov-int-traits.h, ov-int16.h,
-	ov-int32.h, ov-int64.h, ov-int8.h, ov-intx.h, ov-list.h,
-	ov-mex-fcn.h, ov-range.h, ov-re-mat.h, ov-re-sparse.h,
-	ov-scalar.h, ov-str-mat.h, ov-struct.h, ov-type-conv.h,
-	ov-typeinfo.h, ov-uint16.h, ov-uint32.h, ov-uint64.h,
-	ov-uint8.h, ov-usr-fcn.h, ov.h, pager.h, parse.h, pr-output.h,
-	procstream.h, pt-all.h, pt-arg-list.h, pt-assign.h, pt-binop.h,
-	pt-bp.h, pt-cbinop.h, pt-cell.h, pt-check.h, pt-cmd.h,
-	pt-colon.h, pt-const.h, pt-decl.h, pt-eval.h, pt-except.h,
-	pt-exp.h, pt-fcn-handle.h, pt-id.h, pt-idx.h, pt-jump.h,
-	pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h, pt-select.h,
-	pt-stmt.h, pt-unop.h, pt-walk.h, pt.h, sighandlers.h, siglist.h,
-	sparse-xdiv.h, sparse-xpow.h, symtab.h, sysdep.h, token.h,
-	toplev.h, unwind-prot.h, utils.h, variables.h, xdiv.h, xpow.h,
-	zfstream.h, oct-parse.yy, lex.ll: Delete EMacs local-variable settings.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/balance.cc,
-	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
-	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc,
-	DLD-FUNCTIONS/colloc.cc, DLD-FUNCTIONS/conv2.cc,
-	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
-	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/det.cc,
-	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc,
-	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/fltk_backend.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
-	DLD-FUNCTIONS/getgrent.cc, DLD-FUNCTIONS/getpwent.cc,
-	DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/givens.cc,
-	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/inv.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
-	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
-	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
-	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/sparse.cc,
-	DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/sqrtm.cc,
-	DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc,
-	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/time.cc,
-	DLD-FUNCTIONS/tril.cc: Delete Emacs local-variable settings.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__contourc__.cc, DLD-FUNCTIONS/__convn__.cc,
-	DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dsearchn__.cc,
-	DLD-FUNCTIONS/__glpk__.cc, DLD-FUNCTIONS/__lin_interpn__.cc,
-	DLD-FUNCTIONS/__magick_read__.cc,
-	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/__qp__.cc,
-	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
-	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/bsxfun.cc,
-	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc,
-	DLD-FUNCTIONS/colloc.cc, DLD-FUNCTIONS/conv2.cc,
-	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
-	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/dispatch.cc,
-	DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/dmperm.cc,
-	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc,
-	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
-	DLD-FUNCTIONS/fltk_backend.cc, DLD-FUNCTIONS/gammainc.cc,
-	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/getgrent.cc,
-	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/givens.cc,
-	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/hex2num.cc,
-	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
-	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/md5sum.cc,
-	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
-	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/rcond.cc,
-	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc,
-	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
-	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
-	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/time.cc,
-	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/tsearch.cc,
-	DLD-FUNCTIONS/urlwrite.cc: Untabify.
-
-2010-01-20  John W. Eaton  <jwe@octave.org>
-
-	* TEMPLATE-INST/Array-os.cc, TEMPLATE-INST/Array-tc.cc,
-	TEMPLATE-INST/Array-sym.cc: Delete Emacs local-variable settings.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (xpow, elem_xpow): Don't do redundant real->complex
-	conversions.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc: Substitute OCTAVE_QUIT -> octave_quit ().
-	* input.cc: Ditto.
-	* ls-mat-ascii.cc: Ditto.
-	* oct-stream.cc: Ditto.
-	* ov-base-int.cc: Ditto.
-	* ov-base-sparse.cc: Ditto.
-	* ov-bool-sparse.cc: Ditto.
-	* ov-cell.cc: Ditto.
-	* ov-cx-sparse.cc: Ditto.
-	* ov-flt-re-mat.cc: Ditto.
-	* ov-re-mat.cc: Ditto.
-	* ov-re-sparse.cc: Ditto.
-	* pr-output.cc: Ditto.
-	* pt-eval.cc: Ditto.
-	* pt-mat.cc: Ditto.
-	* sighandlers.cc: Ditto.
-	* sparse-xdiv.cc: Ditto.
-	* sparse-xpow.cc: Ditto.
-	* toplev.cc: Ditto.
-	* utils.cc: Ditto.
-	* xdiv.cc: Ditto.
-	* xpow.cc: Ditto.
-
-2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc: New tests.
-
-2010-01-20  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (string_array_property): New property.
-	(axes::properties): Use it here for the linestyleorder property.
-	Remove the markerorder property.
-	* genprops.awk: Emit string_array_property
-
-2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/strfind.cc: Optimize searching for 1 or 2 characters.
-
-2010-01-18  John W. Eaton  <jwe@octave.org>
-
-	* oct-parse.yy (fcn_end): Allow EOF as end of function if
-	reading from eval string.
-	(eval_string): Protect and set reading_fcn_file,
-	reading_script_file, and reading_classdef_file.
-
-2010-01-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (xpow (const NDArray&, double), xpow (const FloatNDArray&,
-	float)): Optimize also the x.^3 case.
-
-2010-01-18  David Grundberg  <davidg@cs.umu.se>
-
-	* mex.cc (mexPrintf): Change signature.
-	* mexproto.h (mexPrintf): Ditto.
-
-2010-01-18  David Grundberg  <davidg@cs.umu.se>
-
-	* mexproto.h (mxSetDimensions): Change signature.
-	* mex.cc (mxSetDimensions): Ditto.
-
-2010-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Support dim argument, make
-	consistent with rest of functions.
-
-2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* ov-cell.cc (Fstruct2cell): Add example, add test.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun, Fnum2cell), ov-struct.cc
-	(Fisstruct): Fix docstring.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellslices, Fisfield, Ffieldnames,
-	Frmfield): Add test.
-	* ov-struct.cc (Fcell2struct): Fix docstring, add test.
-
-2010-01-16  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (line::properties, surface::properties,
-	patch::properties): Allow the use of a "@" marker.
-	(axes::properties): Add markerorder properties to set the
-	order of the marker styles for the "@" marker.
-
-2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT,
-	DO_SINGLE_TYPE_CONCAT_NO_MUTATE): Remove macros.
-	(single_type_concat, do_single_type_concat,
-	do_single_type_concat_no_mutate): New template funcs.
-	(tree_matrix::rvalue1): Call them here.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* strfns.cc (do_strcmp_fun,
-	strcmp_array_op, strcmp_str_op,
-	strcmpi_array_op, strcmpi_str_op,
-	strncmp_array_op, strncmp_str_op,
-	strncmpi_array_op, strncmpi_str_op): New functions.
-	(Fstrcmp, Fstrncmp): Reimplement using do_strcmp_fun.
-	(Fstrcmpi, Fstrncmpi): New defuns.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc (maybe_fill_table): register relational
-	handlers for char arrays.
-
-2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (octave_class::numel (const octave_value_list&)): Don't
-	attempt to query overloaded size.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn.h (octave_function (const std::string&, const std::string&)):
-	Explicitly initialize all data members.
-
-	* ov-builtin.h (octave_builtin::octave_builtin):
-	Explicitly initialize base class object and data member.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (read_indexed_images):
-	No need to explicitly call chop_trailing_singletons now.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-obj.cc (octave_value_list::any_cell): Avoid assignment in
-	condition of if statement.
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/lu.cc: Avoid test failures if HAVE_QRUPDATE_LUU is
-	not defined.
-
-2010-01-12  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (patch::properties): Add "flat" value to
-	markeredgecolor and  markerfacecolor properties.
-
-2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (builtin_type_t): New enum constants: btyp_cell,
-	btyp_struct and btyp_func_handle.
-	(btyp_isinteger, btyp_isfloat, btyp_isarray): New funcs.
-	(btyp_class_name): New array.
-	(get_builtin_classes): New func.
-	* ov-cell.h (octave_cell::builtin_type): New virtual override.
-	* ov-struct.h (octave_struct::builtin_type): New virtual override.
-	* ov-fcn-handle.h (octave_fcn_handle::builtin_type): New virtual override.
-	* symtab.cc (get_dispatch_type): Rewrite. Add overload.
-	* symtab.h: Update decls.
-	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Rewrite.
-	(get_builtin_classes): Remove.
-
-2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.cc (octave_value_list::any_cell): New method.
-	* oct-obj.h: Declare it.
-	* utils.cc (do_simple_cellfun): New overloaded function.
-	* utils.h: Declare it.
-	* DLD-FUNCTIONS/strfind.cc (Fstrfind): Call it here.
-	(Fstrrep): Also here.
-
-2010-01-11  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Update DOCSTRINGS rules to avoid
-	simple_move_if_change_rule and allow Make to update timestamps.
-
-2010-01-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::lasterror):
-	Avoid using errno as a local variable name.
-
-2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lu.cc (Fluupdate): Add tests for LU updating.
-
-2010-01-11  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
-
-	* Makefile.am (OCTINTERP_LINK_DEPS): Include FT2_LDFLAGS and
-	FT2_LIBS in the list.
-
-2010-01-09  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/lookup.cc (stri_comp_lt, stri_comp_gt):
-	Comment out unused functions.
-
-	* oct-stream.cc (BEGIN_S_CONVERSION): Don't declare local tmp
-	variable twice.
-
-	* gl-render.cc (opengl_renderer::draw_image): Avoid shadow
-	declaration warning from GCC.
-
-	* DLD-FUNCTIONS/fltk_backend.cc (base_graphics_backend):
-	Avoid unused parameter warning from GCC.
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Likewise.
-
-	* data.cc (get_sort_mode_option): Avoid uninitialized variable
-	warning from GCC.
-
-2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.h (octave_value_list::operator () const,
-	octave_value_list::elem const): Return const octave_value&.
-	* ov.cc (octave_value::function_value,
-	octave_value::user_function_value, octave_value::user_script_value,
-	octave_value::user_code_value, octave_value::fcn_handle_value,
-	octave_value::fcn_inline_value): Declare as const.
-	* ov.h: Likewise.
-	* ov-base.h (octave_value::function_value const): Remove overload.
-	* ov-usr-fcn.h (octave_user_function::function_value const): Likewise.
-	* ov-builtin.h (octave_builtin::function_value const): Likewise.
-	* ov-builtin.h (octave_builtin::function_value const): Likewise.
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Take a non-const copy prior to
-	calling non-const functions.
-
-
-2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/strfind.cc (qs_replace): New function.
-	(Fstrrep): Use it here. Allow S to be a cellstr.
-
-2010-01-07  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (cputime): Eliminate Windows-specific code.
-
-2010-01-07  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (get_global_value): Fix function name in error message.
-	(get_top_level_value, set_top_level_value): New functions.
-	* variables.h (get_top_level_value, set_top_level_value):
-	Provide decls.
-
-	* symtab.h (symbol_table::top_level_varref,
-	symbol_table::top_level_varval): New static functions.
-
-2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* utils.cc (octave_sleep (double)): Add OCTAVE_QUIT.
-
-2010-01-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind_protect.h, unwind_protect.cc (unwind_protect): Rewrite.
-	Remove obsolete macros. Use a simple linked list.
-
-	* debug.cc (Fdbwhere): Update to new unwind_protect style.
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct,
-	  octave_dynamic_loader::do_load_mex): Ditto.
-	* error.cc (Flasterror, Flasterr, error_2, warning_1): Ditto.
-	* graphics.cc (base_graphics_object::remove_all_listeners,
-	  axes::update_axis_limits, gh_manager::do_execute_callback,
-	  Fdrawnow): Ditto.
-	* help.cc (raw_help_from_file): Ditto.
-	* input.cc (do_keyboard, Fkeyboard, get_debug_input): Ditto.
-	* load-path.cc (load_path::do_set, execute_pkg_add_or_del,
-	* ls-mat4.cc (save_mat_binary_data): Ditto.
-	* ls-mat5.cc (read_mat5_binary_element): Ditto.
-	* mex.cc (call_mex, mexGetVariable): Ditto.
-	* oct-hist.cc (do_edit_history, do_run_history): Ditto.
-	* octave.cc (execute_startup_files, execute_eval_option_code,
-	  execute_command_line_file): Ditto.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Ditto.
-	* ov-class.cc (octave_class::subsasgn, octave_class::print_raw):
-	Ditto.
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
-	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5): Ditto.
-	* ov-list.cc (octave_list::print_raw): Ditto.
-	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Ditto.
-	* ov-struct.cc (octave_struct::print_raw): Ditto.
-	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op,
-	  octave_user_function::do_multi_index_op): Ditto.
-	* pager.cc (flush_octave_stdout): Ditto.
-	* pr-output.cc (Frats): Ditto.
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector): Ditto.
-
-	* pt-eval.cc (tree_evaluator::visit_simple_for_command,
-	tree_evaluator::visit_complex_for_command,
-	tree_evaluator::visit_while_command,
-	tree_evaluator::visit_do_until_command): Update to new unwind_protect
-	style.
-	(do_catch_code): Remove.
-	(tree_evaluator::visit_try_catch_command): Simplify. Don't register
-	catch code for unwind_protect.
-	(tree_evaluator::do_unwind_protect_cleanup_code): Make a
-	tree_evaluator method. Update to new unwind_protect style.
-	(tree_evaluator::visit_unwind_protect_command): Use explicit try/catch
-	handling rather than inserting unsafe code into unwind_protect.
-
-	* pt-eval.h (tree_evaluator::do_unwind_protect_cleanup_code): New decl.
-	* toplev.cc (main_loop): Update to new unwind_protect style.
-	  (run_command_and_return_output): Ditto.
-	* utils.cc (Fisindex): Ditto.
-	* variables.cc (generate_struct_completions, safe_symbol_lookup,
-	do_who): Ditto.
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Ditto.
-	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Ditto.
-	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): Ditto.
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Ditto.
-	* DLD-FUNCTIONS/eigs.cc (Feigs): Ditto.
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Ditto.
-	* DLD-FUNCTIONS/quad.cc (Fquad): Ditto.
-	* DLD-FUNCTIONS/rand.cc (Frandn, Frande, Frandg, Frandp): Ditto.
-	* DLD-FUNCTIONS/typecast.cc (get_data_and_bytesize, Ftypecast): Ditto.
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, mput_directory,
-	getallfiles, F__ftp_mget__): Ditto.
-
-2010-01-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.cc (Cell::cellstr_value): New method.
-	* Cell.h (Cell::cellstr_value): Declare it.
-
-	* ov-cell.h (octave_cell::cellstr_cache): Declare as autopointer.
-	(octave_cell::clear_cellstr_cache): Move here.
-	* ov-cell.cc (octave_cell::is_cellstr): Only allocate the pointer, but
-	don't actually create strings.
-	(octave_cell::cellstr_value): Use cached test, call
-	Cell::cellstr_value.
-	(octave_cell::make_cellstr_cache): Remove.
-
-2010-01-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (AM_CPPFLAGS): Include -I../libgnu in the list.
-
-2010-01-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* graphics.cc (graphics_object::set (const Octave_map&)): New function.
-	(graphics_object::set (const Array<std::string>&, const Cell&,
-	octave_idx_type)):  New function.
-	(graphics_object::set_value_or_default (const caseless_str&,
-	const octave_value&)): New function.
-	(graphics_object::set (const octave_value_list&)):
-	Call set_value_or_default to set property values.
-	(Fset): Handle struct and cell array arguments.
-	New tests.
-	* graphics.h.in (graphics_objects::set): Provide decls.
-
-2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/strfind.cc (qs_search): Optionally discard overlaps.
-	Return result as Array<octave_idx_type>.
-	(Fstrfind): Use octave_value (Array<octave_idx_type>) constructor.
-	(Fstrrep): New function.
-
-2010-01-04  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll (can_be_command): New function.
-	(handle_identifier): Use it.
-
-2010-01-04  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makefile.am (install-oct): Write $(DESTDIR)$(...), not
-	$(DESTDIR).$(...).
-
-2010-01-02  Ben Abbott  <bpabbott@mac.com>
-
-	* mappers.cc: Change test tolerance from 1e-16 to eps.
-
-2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (scalar_query_helper): Remove.
-	(can_extract): New overloaded helper function.
-	(scalar_col_helper_nda): Rewrite using can_extract and
-	octave_value_extract. Instantiate for integer types.
-	(make_col_helper): Support integer types.
-
-
-2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix tests.
-
-2009-12-28  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* DLD-FUNCTIONS/md5sum.cc, DLD-FUNCTIONS/lookup.cc: Include
-	config.h before another header file.
-
-2009-12-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (xgl2ps.c): New file.
-	(EXTRA_DIST): Include gl2ps.c in the list.
-	(DIST_SRC): Include xgl2ps.c in the list instead of gl2ps.c.
-
-2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (decode_subscripts): Move to utils.cc.
-	* utils.cc (decode_subscripts): New func.
-	* utils.h: Declare it.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Optimize the
-	`cellfun (@subsref, args, {subs}, "uniformoutput", true)' case.
-
-2009-12-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* gripes.cc (gripe_nonbraced_cs_list_assignment): New function.
-	* gripes.h: Declare it.
-	* ov-cell.cc (octave_cell::subsasgn): Use it here.
-	* ov-struct.cc (octave_struct::subsasgn): Also here.
-	* pt-idx.cc (tree_simple_assignment::rvalue1): And here. Check for
-	single lhs value.
-
-2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-str-mat.h (octave_char_matrix_str::is_matrix_type): Remove
-	override.
-	* data.cc (Fismatrix): Update test.
-
-2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/strfind.cc: New source.
-	* DLD-FUNCTIONS/module-files: Add it here.
-
-2009-12-23  John W. Eaton  <jwe@octave.org>
-
-	* lex.ll: Use %top block to include config.h.
-
-2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/max.cc (do_cumminmax_body): Support also btyp_bool.
-
-2009-12-22  Rob Mahurin  <octave@tertiarysource.net>
-
-	* find-defun-files.sh: Use SED and EGREP as returned by configure.
-
-2009-12-20  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_sindow::set_name): New method.
-	(figure_manager::set_name, figure_manage::do_set_name): New methods.
-	(fltk_backend::property_changed): Handle change of figure title string.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
-	variables of top_builddir and top_srcdir.
-
-2009-12-18  David Grundberg  <davidg@cs.umu.se>
-
-	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
-	Print script filename in script indexing errors.
-	(octave_user_script::subsref): Ditto.
-
-2009-12-18  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (get_debug_input): Don't attempt to get user input
-	unless stdin is a tty.  Force interactive input mode when
-	reading debugging input.
-	(octave_gets): Bypass readline if get_input_from_eval_string is true.
-
-	* input.cc, input.h (stdin_is_tty): New variable.
-	* octave.cc (octave_main): Set it to true if stdin is not a tty.
-
-2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/max.cc (do_minmax_red_op<boolNDArray>): New
-	specialization.
-	(do_minmax_body): Handle btyp_bool.
-
-2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (symbol_table::cleanup): Call clear_variables rather than
-	clear_all on the top and global scopes.
-
-2009-12-16  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (F__init_fltk__):
-	Add __remove_fltk__ to the list of atexit functions.
-	(F__remove_fltk__): Wait fltk_maxtime instead of 10 seconds.
-
-2009-12-15  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (do_goto_frame_relative): Stop searching at top
-	stack frame even though it is not a function.
-
-2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Preserve original nargout. Call
-	functions with this value. Use nargout1 to possibly accumulate extra
-	outputs, as long as they are defined.
-
-2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-range.cc (octave_range::do_index_op): Defer single subscript to
-	new Range methods.
-
-2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (symbol_table::cleanup): New static method.
-	* symtab.h: Declare it.
-	* toplev.cc (clean_up_and_exit): Call it here.
-
-2009-12-12  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::toggle_grid,
-	plot_window::axis_auto): Modify the axes of the correct figure.
-
-2009-12-12  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
-	Handle case where window is created but not visible. Cache
-	window label.
-	(figure_manager::toggle_window_visibility,
-	(figure_manager::do_toggle_window_visibility): New methods.
-	(fltk_backend::property_change): Handle figure visibility change.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (base_properties::all_dynamic_properties):
-	No longer static.
-	(base_properties::set (const caseless_str&, const octave_value&)):
-	Only provide decl, not definition.
-	(base_properties::set (const caseless_str&, const std::string&,
-	const octave_value&)): Delete.
-	(base_properties::dynamic_properties): Rename from
-	all_dynamic_properties.  No longer static.  Now protected.
-	(base_properties::has_dynamic_property,
-	base_properties::dynamic_property_names,
-	base_properties::set_dynamic): Omit class name argument.
-	* graphics.cc (base_properties::all_dynamic_properties):
-	Delete obsolete definition.
-	(base_properties::dynamic_property_names): Now const.
-	Omit class name argument.  Simply return dynamic_properties set.
-	(base_properties::has_dynamic_property): Omit class name argument.
-	Simply return dynamic_properties set.  Don't pass class name to
-	dynamic_property_names function.
-	(base_properties::set_dynamic): Omit class name argument.
-	Dynamic_properties is no longer a map.
-
-	* genprops.awk: Omit class name from arguments of generated
-	base_properties::all_property_names and base_properties::set
-	functions.  Don't pass class name to base_properties::set in
-	generated derived class set functions.
-
-2009-12-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (DOCSTRINGS): Use $(cp_update_rule) instead of
-	cp -a --update.
-
-2009-12-10  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: distclean symbolic links for OCT_FILES
-
-2009-12-10  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Copy DOCSTRINGS from srcdir to builddir if it does not
-	exist.  Enables VPATH builds.
-
-2009-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-dld-fcn.h (octave_dld_function::get_shlib): New method.
-	* ov-mex-fcn.h (octave_mex_function::get_shlib): New method.
-	* defun.cc (get_current_shlib): New function.
-	* defun-int.h: Declare it.
-	(octave_auto_shlib): New class.
-
-2009-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (out_of_date_check): Try also autoloads.
-
-2009-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (symbol_table::fcn_info::clear_autoload_function):
-	New method.
-	(symbol_table::clear_dld_function): New method.
-	* dynamic-ld.cc (octave_shlib_list::do_remove): Switch order of stmts.
-	(octave_mex_file_list::do_remove): Likewise.
-	(do_clear_function): Call symbol_table::clear_dld_function.
-	(octave_dynamic_loader::do_load_oct): Don't use
-	octave_shlib::mark_relative.
-	(octave_dynamic_loader::do_load_mex): Ditto.
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (fopen_mode_to_ios_mode): Allow "+" at the end of
-	modestrings like "rb+".
-
-2009-12-10  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (BEGIN_C_CONVERSION, BEGIN_S_CONVERSION):
-	Store characters directly in appropriately sized std::string object.
-	(FINISH_CHARACTER_CONVERSION): Do store ASCII NUL values.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc: Style fixes.
-
-2009-12-09  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::print): Print immediatly.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* gl2ps-renderer.cc (draw_pixels): New template function.
-	(opengl_renderer::draw_pixels): Use it.
-
-2009-12-09  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl2ps.c, gl2ps.h: Use upstream version gl2ps-1.3.5-svn-20091202.
-
-	* gl-render.cc (opengl_renderer::draw_pixels): New function.
-	(opengl_renderer::draw_image): Correctly handle images with width
-	or height of 1.  Use draw_pixels.
-	* gl-render.h (opengl_renderer::draw_pixels): Provide decl.
-
-	* gl2ps-renderer.cc (glps_renderer::draw_pixels): New function.
-	* gl2ps-renderer.h (glps_renderer::draw_pixels): Provide decl.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc: Call nstrftime instead of my_strftime.
-
-2009-12-09  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc: Include strftime.h.
-	(write_header): Call my_strftime instead of strftime.
-
-	* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libgnu to the list.
-	(OCTAVE_LIBS, OCTINTERP_LINK_DEPS, OCT_LINK_DEPS):
-	Add ../libgnu/libgnu.la to the list.
-
-2009-12-09  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Distribute DOCSTRINGS in tar.gz file
-
-2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dirfns.cc (Ffnmatch): Simplify.
-
-2009-12-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ov-ch-mat.cc: Add missing #include.
-	* oct-stream.cc (do_read): Simplify.
-	* gl-render.h: Undef min and max after #including windows.h.
-
-2009-12-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (gendoc.cc): Don't pass $(srcdidr) to mkgendoc.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc,
-	OPERATORS/op-b-sbm.cc, OPERATORS/op-bm-b.cc,
-	OPERATORS/op-bm-bm.cc, OPERATORS/op-bm-sbm.cc,
-	OPERATORS/op-cdm-cdm.cc, OPERATORS/op-cdm-cm.cc,
-	OPERATORS/op-cdm-cs.cc, OPERATORS/op-cdm-dm.cc,
-	OPERATORS/op-cdm-m.cc, OPERATORS/op-cdm-s.cc,
-	OPERATORS/op-cell.cc, OPERATORS/op-chm.cc,
-	OPERATORS/op-class.cc, OPERATORS/op-cm-cdm.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cm-dm.cc, OPERATORS/op-cm-m.cc,
-	OPERATORS/op-cm-pm.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc,
-	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-dm-cdm.cc, OPERATORS/op-dm-cm.cc,
-	OPERATORS/op-dm-cs.cc, OPERATORS/op-dm-dm.cc,
-	OPERATORS/op-dm-m.cc, OPERATORS/op-dm-s.cc,
-	OPERATORS/op-dm-scm.cc, OPERATORS/op-dm-sm.cc,
-	OPERATORS/op-dm-template.cc, OPERATORS/op-dms-template.cc,
-	OPERATORS/op-double-conv.cc, OPERATORS/op-fcdm-fcdm.cc,
-	OPERATORS/op-fcdm-fcm.cc, OPERATORS/op-fcdm-fcs.cc,
-	OPERATORS/op-fcdm-fdm.cc, OPERATORS/op-fcdm-fm.cc,
-	OPERATORS/op-fcdm-fs.cc, OPERATORS/op-fcm-fcdm.cc,
-	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
-	OPERATORS/op-fcm-fdm.cc, OPERATORS/op-fcm-fm.cc,
-	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcm-pm.cc,
-	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
-	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
-	OPERATORS/op-fdm-fcdm.cc, OPERATORS/op-fdm-fcm.cc,
-	OPERATORS/op-fdm-fcs.cc, OPERATORS/op-fdm-fdm.cc,
-	OPERATORS/op-fdm-fm.cc, OPERATORS/op-fdm-fs.cc,
-	OPERATORS/op-float-conv.cc, OPERATORS/op-fm-fcdm.cc,
-	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
-	OPERATORS/op-fm-fdm.cc, OPERATORS/op-fm-fm.cc,
-	OPERATORS/op-fm-fs.cc, OPERATORS/op-fm-pm.cc,
-	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
-	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc,
-	OPERATORS/op-i16-i16.cc, OPERATORS/op-i32-i32.cc,
-	OPERATORS/op-i64-i64.cc, OPERATORS/op-i8-i8.cc,
-	OPERATORS/op-int-concat.cc, OPERATORS/op-int-conv.cc,
-	OPERATORS/op-list.cc, OPERATORS/op-m-cdm.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
-	OPERATORS/op-m-dm.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-pm.cc,
-	OPERATORS/op-m-s.cc, OPERATORS/op-m-scm.cc,
-	OPERATORS/op-m-sm.cc, OPERATORS/op-pm-cm.cc,
-	OPERATORS/op-pm-fcm.cc, OPERATORS/op-pm-fm.cc,
-	OPERATORS/op-pm-m.cc, OPERATORS/op-pm-pm.cc,
-	OPERATORS/op-pm-scm.cc, OPERATORS/op-pm-sm.cc,
-	OPERATORS/op-pm-template.cc, OPERATORS/op-range.cc,
-	OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc,
-	OPERATORS/op-s-s.cc, OPERATORS/op-s-scm.cc,
-	OPERATORS/op-s-sm.cc, OPERATORS/op-sbm-b.cc,
-	OPERATORS/op-sbm-bm.cc, OPERATORS/op-sbm-sbm.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
-	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
-	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
-	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
-	OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
-	OPERATORS/op-str-str.cc, OPERATORS/op-struct.cc,
-	OPERATORS/op-ui16-ui16.cc, OPERATORS/op-ui32-ui32.cc,
-	OPERATORS/op-ui64-ui64.cc, OPERATORS/op-ui8-ui8.cc:
-	Delete Emacs local-variable settings.
-
-2009-12-07  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-pm-sm.cc, OPERATORS/op-pm-scm.cc,
-	OPERATORS/op-dm-sm.cc, OPERATORS/op-dm-scm.cc,
-	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fcm.cc,
-	OPERATORS/op-fs-fcs.cc, OPERATORS/op-fm-fm.cc,
-	OPERATORS/op-fm-fcs.cc, OPERATORS/op-fm-fcm.cc,
-	OPERATORS/op-fcs-fs.cc, OPERATORS/op-fcs-fm.cc,
-	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcm-fs.cc,
-	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fm-fs.cc,
-	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-class.cc,
-	OPERATORS/op-fcm-fcs.cc, OPERATORS/op-str-str.cc,
-	OPERATORS/op-str-s.cc, OPERATORS/op-str-m.cc,
-	OPERATORS/op-struct.cc, OPERATORS/op-sm-scm.cc,
-	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-sm.cc,
-	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-cm.cc,
-	OPERATORS/op-scm-sm.cc, OPERATORS/op-scm-scm.cc,
-	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-m.cc,
-	OPERATORS/op-scm-cs.cc, OPERATORS/op-sm-m.cc,
-	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
-	OPERATORS/op-sbm-bm.cc, OPERATORS/op-s-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-sbm-b.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-int.h,
-	OPERATORS/op-int-conv.cc, OPERATORS/op-int-concat.cc,
-	OPERATORS/op-cs-sm.cc, OPERATORS/op-cs-scm.cc,
-	OPERATORS/op-cm-sm.cc, OPERATORS/op-cs-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-scm.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-chm.cc,
-	OPERATORS/op-cell.cc, OPERATORS/op-bm-sbm.cc,
-	OPERATORS/op-bm-bm.cc, OPERATORS/op-bm-b.cc,
-	OPERATORS/op-b-sbm.cc, OPERATORS/op-fcs-fcs.cc:
-	Untabify.
-
-2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.am: Build OPT_HANDLERS before DEF_FILES.
-
-2009-12-06  Rik  <rik@nomad.inbox5.com>
-
-	* Makefile.am: Distribute DOCSTRINGS so that documentation will
-	not require rebuild after merely untarring a distribution.
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Document complexity.
-
-2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Rewrite.
-	(Flookup): Simplify string part. Use Array<std::string>::lookup.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Always use
-	CURLOPT_USERPWD instead of CURLOPT_USER and CURLOPT_PASSWD.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* version.h.in (OCTAVE_API_VERSION_NUMBER): New macro.
-	* Makefile.am (version.h): Substitute OCTAVE_API_VERSION_NUMBER.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (mkdefs): New arguments, srcdir and file.
-	Generate output here.  (.cc.df): Not here.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (BUILT_SOURCES): Include graphics-props.cc in the
-	list.
-
-2009-12-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (liboctinterp_la_SOURCES): Remove $(OPT_HANDLERS)
-	from the list.
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (CLEANFILES): Include DLD-FUNCTIONS/PKG_ADD,
-	doc-files, gendoc.cc, gendoc$(BUILD_EXEEXT), graphics-props.cc,
-	oct-parse.output, $(BUILT_NODISTFILES) in the list.  Remove
-	$(BUILT_SOURCES) from the list.  (MAINTAINERCLEANFILES): New
-	variable.  (BUILT_DISTFILES): Remove oct-parse.cc and lex.cc
-	from the list.  (BUILT_NODISTFILES): Include defaults.h,
-	graphics.h, oct-conf.h, oct-errno.cc, ops.cc, mxarray.h, and
-	version.h in the list.  Remove $(OPT_INC) from the list.
-	(BUILT_SOURCES): Include mxarray.h and version.h in the list.
-	(EXTRA_DIST): Include version.h.in in the list.  (.cc.df): Don't
-	silence rules.  Omit $(srcdir) from XDEFUN_FILE_NAME.
-	($(DEF_FILES)): Depend on mkdefs and Makefile.  (mxarray.h,
-	version.h): New rules.  (DLD-FUNCTIONS/PKG_ADD): Don't silence
-	rules.  (builtins.cc, DOCSTRINGS, gendoc.cc, ops.cc,
-	$(OPT_HANDLERS)) oct-errno.cc, oct-gperf.h): Don't silence
-	rules.  (doc-files, defaults.h, oct-conf.h): Don't silence
-	rules.
-
-	* mxarray.h.in, version.h.in: Use % to delimit substitutions,
-	not @.
-
-	* mkbuiltins: Operate on a list of files passed as arguments.
-
-	* genprops.awk: Write either graphics.h or graphics-props.cc to
-	stdout instead of graphics.h simultaneously with
-	graphics-props.cc ot a file.  * Makefile.am (graphics.h,
-	graphics-props.cc): Split into two separate rules.
-
-	* find-defun-files.sh: Omit directory part from .df file names.
-	Operate on .ll and .yy files instead of generated .cc files.
-
-2009-12-02  Rik  <rik@nomad.inbox5.com>
-
-	* DLD-FUNCTIONS/urlwrite.cc: Correctly compile code even when
-	libcurl is not present according to configure.
-
-2009-12-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-bool-mat.h (octave_bool_matrix::octave_bool_matrix (const
-	boolNDArray&, const idx_vector&)): New constructor.
-	* ov-re-mat.h (octave_bool_matrix::octave_bool_matrix (const
-	NDArray&, const idx_vector&)): Simplify.
-	* ov.cc (octave_value::octave_value (const idx_vector&)): Allow
-	the mask case.
-	* DLD-FUNCTIONS/find.cc (Ffind): Explicitly call unmask.
-
-2009-11-30  Kacper Kowalik  <xarthisius.kk@gmail.com>
-
-	* oct-hdf5.h: Drop force the use of the v1.6 API * ls-hdf5.cc,
-	ov-base-int.cc, ov-bool-mat.cc, ov-bool-sparse.cc, ov-bool.cc,
-	ov-cell.cc, ov-class.cc, ov-complex.cc, ov-cx-mat.cc,
-	ov-cx-sparse.cc, ov-fcn-handle.cc, ov-fcn-inline.cc,
-	ov-float.cc, ov-flt-complex.cc, ov-flt-cx-mat.cc,
-	ov-flt-re-mat.cc, ov-list.cc, ov-range.cc, ov-re-mat.cc,
-	ov-re-sparse.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc:
-	Allow v1.8 API versions of hdf5 functions.
-
-2009-11-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fft2.cc (Fifft2): Docstring fix.
-
-2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-unop.cc (tree_prefix_expression::rvalue1): Try to use
-	octave_value::do_non_const_unary_op.
-
-2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Use
-	CURLOPT_USERPWD if libcurl ver < 7.19.0.
-
-2009-11-28  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl-render.cc (opengl_renderer::draw_image): Handle indexed
-	images.
-
-2009-11-28  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl-render.h (opengl_renderer::draw): Draw children from end of
-	list to preserve correct stacking order (first child should be
-	on top).
-
-	* graphics.cc (maybe_set_children): Store sorted child lists.
-
-2009-11-27  Kacper Kowalik  <xarthisius.kk@gmail.com>
-
-	* ls-hdf5.cc (have_h5giterate_bug): Drop this group iteration
-	flag for buggy pre 1.2.2 versions of hdf5.  * ov-base-int.cc
-	(octave_base_int_matrix<T>::load_hdf5)
-	octave_base_int_scalar<T>::load_hdf5), ov-base-int.h
-	(octave_base_int_matrix<T>::load_hdf5,
-	octave_base_int_scalar<T>::load_hdf5), ov-base.cc
-	(octave_base_value::load_hdf5), ov-base.h
-	(octave_base_value::load_hdf5), ov-bool-mat.cc
-	(octave_bool_matrix::load_hdf5), ov-bool-mat.h
-	(octave_bool_matrix::load_hdf5), ov-bool-sparse.cc
-	(octave_sparse_bool_matrix::load_hdf5), ov-bool-sparse.h
-	(octave_sparse_bool_matrix::load_hdf5), ov-bool.cc
-	(octave_bool::load_hdf5), ov-bool.h (octave_bool::load_hdf5),
-	ov-cell.cc (octave_cell::load_hdf5), ov-cell.h
-	(octave_cell::load_hdf5), ov-class.cc (octave_class::load_hdf5),
-	ov-class.h (octave_class::load_hdf5), ov-complex.cc
-	(octave_complex::load_hdf5), ov-complex.h
-	(octave_complex::load_hdf5), ov-cx-mat.cc
-	(octave_complex_matrix::load_hdf5), ov-cx-mat.h
-	(octave_complex_matrix::load_hdf5), ov-cx-sparse.cc
-	(octave_sparse_complex_matrix::load_hdf5), ov-cx-sparse.h
-	(octave_sparse_complex_matrix::load_hdf5), ov-fcn-handle.cc
-	(octave_fcn_handle::load_hdf5), ov-fcn-handle.h
-	(octave_fcn_handle::load_hdf5), ov-fcn-inline.cc
-	(octave_fcn_inline::load_hdf5), ov-fcn-inline.h
-	(octave_fcn_inline::load_hdf5), ov-float.cc
-	(octave_float_scalar::load_hdf5), ov-float.h
-	(octave_float_scalar::load_hdf5), ov-flt-complex.cc
-	(octave_float_complex::load_hdf5), ov-flt-complex.h
-	(octave_float_complex::load_hdf5), ov-flt-cx-mat.cc
-	(octave_float_complex_matrix::load_hdf5), ov-flt-cx-mat.h
-	(octave_float_complex_matrix::load_hdf5), ov-flt-re-mat.cc
-	(octave_float_matrix::load_hdf5), ov-flt-re-mat.h
-	(octave_float_matrix::load_hdf5), ov-list.cc
-	(octave_list::load_hdf5), ov-list.h (octave_list::load_hdf5),
-	ov-range.cc (octave_range::load_hdf5), ov-range.h
-	(octave_range::load_hdf5), ov-re-mat.cc
-	(octave_matrix::load_hdf5), ov-re-mat.h
-	(octave_matrix::load_hdf5), ov-re-sparse.cc
-	(octave_sparse_matrix::load_hdf5), ov-re-sparse.h
-	(octave_sparse_matrix::load_hdf5), ov-scalar.cc
-	(octave_scalar::load_hdf5), ov-scalar.h
-	(octave_scalar::load_hdf5), ov-str-mat.cc
-	(octave_char_matrix_str::load_hdf5), ov-str-mat.h
-	(octave_char_matrix_str::load_hdf5), ov-struct.cc
-	(octave_struct::load_hdf5), ov-struct.h
-	(octave_struct::load_hdf5), ov.h (octave_value::load_hdf5):
-	Remove have_hg5iterate_bug from the call to load_hdf5.
-	* ov-cell.cc (octave_bool::load_hdf5), ov-class.cc
-	(octave_class::load_hdf5), ov-fcn-handle.cc
-	(octave_fcn_handle::load_hdf5), ov-list.cc
-	(octave_list::load_hdf5), ov-struct.cc
-	(octave_struct::load_hdf5): Remove HAVE_H5GGET_NUM_OBJS cruft
-	for old hdf5 versions.
-
-2009-11-27  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/urlwrite.cc (curl_handle, curl_handles): Add
-	classes to manage the open curl connections.  (F__ftp__,
-	F__ftp_pwd__, F__ftp_cwd__, F__ftp_dir__, F__ftp_ascii__,
-	F__ftp_binary__, F__ftp_close__, F__ftp_mode__, F__ftp_delete__,
-	F__ftp_rmdir__, F__ftp_mkdir__, F__ftp_rename__, F__ftp_mput__,
-	F__ftp_mget__): New functions.
-
-2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::octave_value (const index_vector&)): Take
-	a copy if idx to allow mutation.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/dot.cc (Fdot): Update docs.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/dot.cc: New source.
-	* DLD-FUNCTIONS/module-files: Include it.
-
-2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fismatrix): Return true for empty matrices as well.
-
-2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/chol.cc (get_chol_l): New helper function.
-	(Fchol): Use it to set MatrixType for lower triangular factors
-	as well. Use default octave_idx_type->octave_value conversion.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (do_accumarray_sum): Simplify.
-
-2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.cc (octave_struct::save_binary): Save dimensions for
-	structs.  (octave_struct::load_binary): Load dimensions if
-	present, use 1x1 otherwise.
-
-2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fmerge): Add missing parentheses.
-
-2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-complex.h (octave_complex::bool_value,
-	octave_complex::bool_array_value): New methods.
-	* ov-flt-complex.h (octave_float_complex::bool_value,
-	octave_float_complex::bool_array_value): New methods.
-	* ov-cx-mat.cc (octave_complex_matrix::bool_array_value): New
-	method.  * ov-cx-mat.h: Declare it.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::bool_array_value):
-	New method.
-	* ov-flt-cx-mat.h: Declare it.
-
-2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.cc (octave_struct::save_ascii): Save dimensions for
-	structs.  (octave_struct::load_ascii): Load dimensions if
-	present, use 1x1 otherwise.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fmerge): Correct query for logical masks.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* utils.cc (dims_to_numel): Fallback to index_vector query for
-	non-numeric types.
-
-2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-bool.h (octave_bool::is_numeric_type): New overload.
-	* ov-bool-mat.h (octave_bool-matrix::is_numeric_type): New overload.
-
-2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (unary_mapper_t): New member: umap_erfinv.
-	* ov-base.c (octave_base_value::get_umap_name): Add "erfinv" here.
-	* ov.h (octave_value::erfinv): New method.
-	* ov-scalar.cc (octave_scalar::map): Handle umap_erfinv.
-	* ov-float.cc (octave_float::map): Ditto.
-	* ov-re-mat.cc (octave_matrix::map): Ditto.
-	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
-	* ov-re-sparse.cc (octave_sparse_matrix::map): Ditto.
-	* mappers.cc (Ferfinv): New DEFUN.
-
-2009-11-14  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl-render.cc (opengl_renderer::text_to_pixels): New function
-	from code in render_text to produce the pixels and compute
-	bounding box.  (opengl_renderer::render_text): Call
-	text_to_pixels to compute rotation mode and bounding box.
-	* gl-renger.h (opengl_renderer::text_to_pixels): Provide decl.
-	* gl2ps-renderer.cc (glps_renderer::render_text): Call
-	text_to_pixels to compute bounding box.
-	(glps_renderer::set_font): Call opengl_renderer::set_font.
-
-2009-11-18  Michael Godfrey  <godfrey@isl.stanford.edu>
-
-	* txt-eng-ft.cc: Relax font match test.
-
-2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc (bsxfun_builtin_op): New member:
-	bsxfun_builtin_power.  (bsxfun_builtin_names): Include "power".
-	(do_bsxfun_real_pow): New static function.  (maybe_fill_table):
-	Register power handlers.
-
-2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-complex.cc (octave_complex::try_narrowing_conversion):
-	Don't check signbit.
-	* ov-flt-complex.cc
-	(octave_float_complex::try_narrowing_conversion): Ditto.
-	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
-	Simplify.  Don't check signbit.
-	* ov-flt-cx-mat.cc
-	(octave_float_complex_matrix::try_narrowing_conversion): Ditto.
-
-2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (do_rc_map): New static function.
-	(octave_matrix::map): Use it here.
-	* ov-flt-re-mat.cc (do_rc_map): New static function.
-	(octave_float_matrix::map): Use it here.
-
-2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/balance.cc: Fix docs.
-
-2009-11-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (liboctinterp_la_CPPFLAGS): Define.
-
-2009-11-13  Joel Keay  <keay@ou.edu>
-
-	* graphics.h.in (image::properties::init): Also allow single,
-	int16, and uint16 data types.
-
-2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (unary_mapper_t): Move to octave_base_value.
-	* ov.h: Partially revert to c657c056240d.
-	(FORWARD_MAPPER): Update to use octave_base_value::map.
-	(octave_value::map): Ditto.
-	* mappers.cc: Revert to c657c056240d.
-	* data.cc: Ditto.
-	* Cell.h, Cell.cc: Ditto.
-	* ov-cell.cc (octave_cell::map): Rewrite.
-	* ov-base-sparse.cc (octave_base_sparse::map): New method.
-	* ov-base-sparse.h: Declare it.
-	* ov-re-sparse.cc (octave_sparse_matrix::map): Use it as a fallback.
-	* ov-cx-sparse.cc (octave_sparse_complexmatrix::map): Ditto.
-
-2009-11-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (unary_mapper_t): New enum.
-	(octave_base_value::map (unary_mapper_t)): New method.
-	(octave_base_value::abs, octave_base_value::acos,
-	octave_base_value::acosh, octave_base_value::angle,
-	octave_base_value::arg, octave_base_value::asin,
-	octave_base_value::asinh, octave_base_value::atan,
-	octave_base_value::atanh, octave_base_value::ceil,
-	octave_base_value::conj, octave_base_value::cos,
-	octave_base_value::cosh, octave_base_value::erf,
-	octave_base_value::erfc, octave_base_value::exp,
-	octave_base_value::expm1, octave_base_value::finite,
-	octave_base_value::fix, octave_base_value::floor,
-	octave_base_value::gamma, octave_base_value::imag,
-	octave_base_value::isinf, octave_base_value::isna,
-	octave_base_value::isnan, octave_base_value::lgamma,
-	octave_base_value::log, octave_base_value::log2,
-	octave_base_value::log10, octave_base_value::log1p,
-	octave_base_value::real, octave_base_value::round,
-	octave_base_value::roundb, octave_base_value::signum,
-	octave_base_value::sin, octave_base_value::sinh,
-	octave_base_value::sqrt, octave_base_value::tan,
-	octave_base_value::tanh): Remove.
-
-	* ov.h (octave_value::map (unary_mapper_t)): New method.
-	(octave_value::abs, octave_value::acos, octave_value::acosh,
-	octave_value::angle, octave_value::arg, octave_value::asin,
-	octave_value::asinh, octave_value::atan, octave_value::atanh,
-	octave_value::ceil, octave_value::conj, octave_value::cos,
-	octave_value::cosh, octave_value::erf, octave_value::erfc,
-	octave_value::exp, octave_value::expm1, octave_value::finite,
-	octave_value::fix, octave_value::floor, octave_value::gamma,
-	octave_value::imag, octave_value::isinf, octave_value::isna,
-	octave_value::isnan, octave_value::lgamma, octave_value::log,
-	octave_value::log2, octave_value::log10, octave_value::log1p,
-	octave_value::real, octave_value::round, octave_value::roundb,
-	octave_value::signum, octave_value::sin, octave_value::sinh,
-	octave_value::sqrt, octave_value::tan, octave_value::tanh): Remove.
-
-	* ov-scalar.h, ov-scalar.cc (octave_scalar): Update.
-	* ov-float.h, ov-float.cc (octave_float): Update.
-
-	* ov-complex.h, ov-complex.cc (octave_complex): Update.
-	* ov-flt-complex.h, ov-flt-complex.cc (octave_float_complex):
-	Update.
-
-	* ov-re-matrix.h, ov-re-matrix.cc (octave_matrix): Update.
-	* ov-flt-re-matrix.h, ov-flt-re-matrix.cc (octave_float_matrix): Update.
-	* ov-cx-matrix.h, ov-cx-matrix.cc (octave_complex_matrix): Update.
-	* ov-flt-cx-matrix.h, ov-flt-cx-matrix.cc
-	(octave_float_complex_matrix): Update.
-
-	* ov-re-sparse.h, ov-re-sparse.cc (octave_sparse_matrix): Update.
-	* ov-cx-sparse.h, ov-cx-sparse.cc (octave_sparse_complex_matrix):
-	Update.
-
-	* ov-re-diag.h, ov-re-diag.cc (octave_diag_matrix): Update.
-	* ov-flt-re-diag.h, ov-flt-re-diag.cc (octave_float_diag_matrix):
-	Update.
-	* ov-cx-diag.h ov-cx-diag.cc (octave_complex_diag_matrix): Update.
-	* ov-flt-cx-diag.h, ov-flt-cx-diag.cc
-	(octave_float_complex_diag_matrix): Update.
-
-	* ov-range.h (octave_range): Update.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T): Update.
-	(OCTAVE_VALUE_INT_SCALAR_T): Update.
-
-	* ov-perm.h (octave_perm_matrix): Update.
-	* ov-bool.h (octave_bool): Update.
-	* ov-bool-mat.h (octave_bool_matrix): Update.
-	* ov-ch-mat.h (octave_char_matrix): Update.
-
-	* mappers.cc (Fabs, Facos, Facosh, Fangle, Farg, Fasin, Fasinh,
-	Fatan, Fatanh, Fceil, Fconj, Fcos, Fcosh, Ferf, Ferfc, Fexp,
-	Fexpm1, Ffinite, Ffix, Ffloor, Fgamma, Fimag, Fisinf, Fisna,
-	Fisnan, Flgamma, Flog, Flog2, Flog10, Flog1p, Freal, Fround,
-	Froundb, Fsignum, Fsin, Fsinh, Fsqrt, Ftan, Ftanh, Fisalnum,
-	Fisalpha, Fisascii, Fiscntrl, Fisdigit, Fisgraph, Fislower,
-	Fisprint, Fispunct, Fisspace, Fisupper, Fisxdigit, Ftoascii,
-	Ftolower, Ftoupper): Update.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_all_first_of): Take advantage
-	of string_vector (std::list<std:string>) constructor.
-
-2009-11-11  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (do_get_help_text_from_file,
-	Fget_help_text_from_file): New functions.
-	(do_get_help_text): Pass NAME by const reference.
-	* utils.cc (find_dir_in_path): New optional argument "all".
-	* load-path.cc (load_path::do_find_matching_dirs): New function.
-	(load_path::do_find_dir): Perform match on absolute directory
-	names, but return name as it appears in dir_info_list.  Adjust
-	dname_len after stripping directory separator.
-	* load-path.h (load_path::do_find_matching_dirs): Provide decl.
-	(load_path::find_matching_dirs): New function.
-
-2009-11-11  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (Fl_Gl_Window::draw):
-	If zooming, call overlay.
-	(Fl_Gl_Window::overlay): Rename from draw_overlay.  Don't return
-	early if zooming.  Don't call valid and conditionally call
-	setup_veiwport.  Set overlay color and draw line around zoom box.
-	(Fl_Gl_Window::zoom_box_vertex): New function.
-	(Fl_Gl_Window::pixel2status): Call canvas->redraw, not
-	canvas->redraw_overlay.
-
-2009-11-10  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* gl2ps-renderer.cc, gl2ps-renderer.h, gl2ps.c, gl2ps.h: New
-	files.  PostScript backend based on opengl_renderer and gl2ps.
-	* Makefile.am (octinclude_HEADERS): Add gl2ps.h to the list.
-	(DIST_SRC): Add gl2ps.c to the list.
-	* gl-render.cc (opengl_renderer::render_text): Rename from
-	opengl_renderer::draw_text.
-	(opengl_renderer::draw_figure, opengl_renderer::draw_axes,
-	opengl_renderer::draw_line, opengl_renderer::draw_surface,
-	opengl_renderer::draw_patch, opengl_renderer::draw_hggroup,
-	opengl_renderer::draw_text, opengl_renderer::draw_image):
-	Rename from overloaded opengl_renderer::draw.
-	* gl-render.h: Fix decls.
-
-	* DLD-FUNCTIONS/fltk_backend.cc (OpenGL_fltk::print): New function.
-	(OpenGL_fltk::print_filename): New data member.
-	(OpenGL_fltk::draw): Add support for printing.
-	(fltk_backend::print_figure): Call figure_manager::print.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Fferror): Update doc string.
-
-2009-11-10  David Grundberg  <davidg@cs.umu.se>
-
-	* oct-strstrm.h (octave_base_strstream::tell): Declare virtual.
-	(octave_istrstream::tell): New method.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am, OPERATORS/module.mk, TEMPLATE-INST/module.mk,
-	find-defun-files.sh, version.h.in,
-	DLD-FUNCTIONS/config-module.awk, DLD-FUNCTIONS/config-module.sh,
-	DLD-FUNCTIONS/module-files: New files.
-	* Makefile.in, version.h: Delete.
-	* lex.ll: Rename from lex.l.  Include oct-parse.h instead of y.tab.h.
-	* parse.yy: Rename from parse.y
-	* mkbuiltins, mkgendoc: Don't require filenames to start with a
-	"." at beginning of line.
-
-	* oct-conf.h.in (OCTAVE_CONF_LAPACK_LIBS): Delete macro.
-	* toplev.cc (octave_config_info): Don't include LAPACK_LIBS in the
-	struct.
-
-2009-11-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (octave_class::numel): Use base version if called
-	from built-in assignment.
-	(octave_class::size): Ditto.
-
-2009-11-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Simplify examples in
-	docs.
-
-2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.cc (btyp_mixed_numeric): New function.
-	* ov-base.h: Declare it.
-	(btyp_isnumeric): New inline function.
-	* DLD_FUNCTIONS/max.cc (do_minmax_red_op, do_minmax_bin_op,
-	do_minmax_body, do_cumminmax_red_op): New functions.
-	(MINMAX_DOUBLE_SBODY, MINMAX_DOUBLE_BODY, MINMAX_SINGLE_SBODY,
-	MINMAX_SINGLE_BODY, MINMAX_SPARSE_BODY, MINMAX_INT_SBODY,
-	MINMAX_INT_BODY, MINMAX_BODY, CUMMINMAX_BODY): Remove.
-	(Fmin, Fmax, Fcummin, Fcummax): Update.
-
-2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h: Add sparse matrix extractors.
-
-2009-11-09  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dsearchn__.cc,
-	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/convhulln.cc,
-	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/tsearch.cc: Correctly include
-	config.h, don't include oct.h, etc.
-
-2009-11-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/bsxfun.cc: Add missing copyright.  (fill_table):
-	Mark table as initialized.
-
-2009-11-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-assign.cc (tree_multi_assignment::rvalue): Don't skip
-	zero-length lvalue cs-lists.
-
-2009-11-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::print_raw): Indent properly. Use
-	newline rather than '\n'.
-
-2009-11-03  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (root_figure): Add commandwindowsize, diary,
-	diaryfile, echo, format, language, monitorpositions,
-	pointerlocation, pointerwindow, and recursionlimit properties.
-
-2009-11-03  David Grundberg  <davidg@cs.umu.se>
-
-	* graphics.h.in (root_figure): Add FormatSpacing property.
-
-2009-11-03  David Grundberg  <davidg@cs.umu.se>
-
-	* ov-class.cc (octave_class::size): Allow and ignore extra
-	outargs from user-defined size methods.
-
-2009-11-03  David Grundberg  <davidg@cs.umu.se>
-
-	* ov-class.cc (make_idx_args): Call user-defined
-	subsref/subsasgn with 1xN structs instead of Nx1.
-
-2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (octave_class::unique_parent_class): New method.
-	(octave_class::subsasgn): Use it here.
-	* ov-class.h: Declare it.
-
-2009-11-01  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (get_sort_mode_option): New function.
-	(Fissorted): Handle ascending or descending option.
-
-2009-11-01  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::dir_info::update): Always initialize
-	relative directories that are not yet included in abs_dir_cache.
-
-2009-10-29  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (finish_function): Return function object unless
-	parsing function file.
-
-2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/tril.cc: New source.  * Makefile.in: Include it.
-
-2009-10-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* error.cc (verror (bool, std::ostream&, ..., bool)): Add
-	optional with_cfn flag. If specified, prepend current function
-	name (unless already there).
-	(error_1): Accept with_cfn flag and pass it on.
-	(error_2): Ditto.
-	(verror_with_cfn, error_with_cfn, error_with_id_cfn,
-	verror_with_id_cfn): New functions.
-	* error.h: Declare them.
-	* octave.cc (lo_error_handler): Call verror_with_cfn.
-	* ov-base.cc (INT_CONV_METHOD): Call error_with_cfn.
-	* ov.cc (octave_value::int_vector_value, octave_idx_type_vector_value):
-	Call error_with_cfn.
-
-2009-10-21  Rik  <octave@nomad.inbox5.com>
-
-	* variables.cc: Correct use of deftypefnx for who and whos.
-
-2009-10-21  John W. Eaton  <jwe@octave.org>
-
-	* load-path.h (load_path::dir_path::dir_time_last_checked): New
-	field.  (load_path::dir_path::dir_path,
-	load_path::dir_path::operator=): Initialize and copy
-	dir_time_last_checked.
-	* load-path.cc (load_path::dir_info::initialize): Store time of
-	last update.
-	(load_path::dir_info::update): Check directory modification time
-	against time of last update, within resolution of filesystem
-	time stamps.  Suggested by Judd Storrs <storrsjm@email.uc.edu>.
-
-2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (builtin_type_t): Declare also btyp_num_types.
-	* DLD-FUNCTIONS/bsxfun.cc (bsxfun_builtin_op): New enum.
-	(bsxfun_handler): New typedef.
-	(bsxfun_builtin_names, bsxfun_handler_table): New variables.
-	(bsxfun_builtin_lookup, maybe_fill_table, maybe_optimized_builtin):
-	New static funcs.
-	(bsxfun_forward_op, bsxfun_forward_rel): New static template funcs.
-	(Fbsxfun): Try to optimize some built-in operations.
-
-2009-10-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Allow non-positive
-	indices as bounds.
-
-2009-10-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fnth_element): Clarify docstring.
-
-2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.cc, Cell.h, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/lookup.cc,
-	DLD-FUNCTIONS/max.cc, TEMPLATE-INST/Array-tc.cc, data.cc,
-	oct-map.cc, ov-cx-mat.h, ov-flt-cx-mat.cc, ov-flt-cx-mat.h,
-	ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h, ov-re-mat.h,
-	ov.cc, ov.h, pr-output.cc, pr-output.h, variables.cc:
-	Remove traces of ArrayN.
-
-	* OPERATORS/op-dm-scm.cc: Avoid using dm + s, dm - s operators.
-	* OPERATORS/op-dm-sm.cc: Ditto.
-	* OPERATORS/op-dms-template.cc: Ditto.
-
-2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): Use Array<T>::column here.
-
-2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Update docstring.
-
-2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::octave_value (octave_base_value *, bool)):
-	New constructor.
-	(octave_value::octave_value (octave_base_value *, int)): Deprecate.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Allow the obsolete func
-	body syntax.
-
-2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (extract_function): Pass 0 to eval_string to avoid
-	error.
-
-2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::octave_value (const Array<std::string>&)): New
-	constructor.
-	* ov.h: Declare it.
-	* data.cc (Fnth_element): New DEFUN.
-
-2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fcumsum, Fcumprod, Fprod, Fsum, Fsumsq): Correct help
-	string.
-
-2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fsum): Rewrite.
-	(Fcumsum): Rewrite.
-	(NATIVE_REDUCTION, NATIVE_REDUCTION_1): Remove.
-
-2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-binop.cc, pt-unop.cc: Revert the effect of 1be3c73ed7b5.
-
-2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lu.cc (maybe_set_triangular): Remove.
-	(get_lu_l, get_lu_u): New helper funcs.
-	(Flu, Fluupdate): Use them to auto-set MatrixType of results.
-	* DLD-FUNCTIONS/qr.cc (maybe_set_triangular): Remove.
-	(get_qr_r): New helper func.
-	(Fqr, Fqrupdate, Fqrinsert, Fqrdelete,
-	Fqrshift): Use it to auto-set MatrixType of results.
-	* DLD-FUNCTIONS/chol.cc (get_chol_r): New helper func.
-	(Fchol, Fcholupdate, Fcholinsert, Fcholdelete, Fcholshift): Use it
-	to auto-set MatrixType of result.
-
-2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Support 'nocompute'
-	option.
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lu.cc (Fluupdate): New DEFUN_DLD.
-	(check_lu_dims): New helper func.
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Flength): Simplify.
-	(Fndims): Simplify.
-	(Fsize): Rewrite, use dim_vector::redim to simplify.
-	(Fsize_equal): Don't chop trailing singletons (should be already
-	chopped).
-
-2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* utils.cc (dims_to_numel): New function.
-	* utils.h: Declare it.
-	* ov-base.cc (octave_base_value::numel (const octave_value_list&)):
-	Use it here.
-	* data.cc (Fnumel): Also here.
-
-2009-10-07  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (get_dims_str): New function.
-	(symbol_info_list::display_line,
-	symbol_info_list::parse_whos_line_format): Use it to get dims string.
-
-2009-10-07  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::get_count): Return octave_idx_type, not int.
-
-2009-10-07  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	Avoid uninitialized variable warning.
-	* pt-cbinop.cc (simplify_ldiv_op): Avoid unused parameter warning.
-	* ov-flt-re-mat.cc (convert_to_str_internal):
-	Update for octave_value constructor changes.
-
-2009-10-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-stream.cc (octave_base_stream::skipl,
-	octave_stream::skipl (long, ...), octave_stream::skipl (const
-	octave_value&, ...)): New methods.
-	* oct-stream.h: Declare them.
-	* file-io.cc (Ffskipl): New DEFUN.
-
-2009-10-07  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-str-str.cc (DEFUNOP (transpose, char_matrix_str)):
-	Update for octave_value constructor changes.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::assign): Do not gripe "assignment failed" if
-	already griped about the binary operation.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-idx.cc (tree_index_expression::rvalue): When evaluating index
-	chain, split on chaining ()() and (){}.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-misc.cc (tree_argument_list::convert_to_const_vector):
-	Return more than nargout arguments only unless undefined elements
-	occur.
-	* ov-class.cc (octave_class::subsref): Pack return list from
-	overloaded method into first value.
-
-2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-ch-mat.h (octave_char_matrix): Don't declare allocator and
-	typeid.
-	* ov-ch-mat.cc: Don't define them.
-	* ov.cc (install_types): Don't register octave_char_matrix.
-
-2009-10-05  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value (const charMatrix&, char, bool),
-	octave_value (const charNDArray&, char, bool),
-	octave_value (const ArrayN<char>&, char, bool)):
-	New constructor decls.
-	(octave_value (const charMatrix&, bool, char),
-	octave_value (const charNDArray&, bool, char),
-	octave_value (const ArrayN<char>&, bool, char)): Mark with
-	GCC_ATTR_DEPRECATED.  Single-quoted strings are now default string
-	type.
-	(octave_value::convert_to_str): Default is single-quoted strings.
-	* ov.cc (octave_value (const charMatrix&, char, bool),
-	octave_value (const charNDArray&, char, bool),
-	octave_value (const ArrayN<char>&, char, bool)): New constructors.
-	(octave_value (const charMatrix&, bool, char),
-	octave_value (const charNDArray&, bool, char),
-	octave_value (const ArrayN<char>&, bool, char)):
-	Assume is_string argument is always true.
-
-	* ov-re-mat.cc (octave_sparse_matrix::convert_to_str_internal):
-	Update for octave_value constructor changes.
-	* ov-ch-mat.h (octave_char_matrix::convert_to_str_internal): Likewise.
-	* ov-re-sparse.cc (octave_sparse_matrix::convert_to_str_internal):
-	Likewise.
-	* ov-str-mat.h (octave_char_matrix_str::squeeze,
-	octave_char_matrix_str::reshape, octave_char_matrix_str::permute,
-	octave_char_matrix_str::diag, octave_char_matrix_str::sort,
-	octave_char_matrix_sq_str::squeeze,
-	octave_char_matrix_sq_str::reshape,
-	octave_char_matrix_sq_str::permute,
-	octave_char_matrix_sq_str::diag, octave_char_matrix_sq_str::sort):
-	Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
-	Likewise.
-	(octave_char_matrix_str::resize): Likewise.
-	* data.cc (do_cat, Fmerge): Likewise.
-	* ops.h (DEFNDCHARCATOP_FN): Likewise.
-	* ov-base-int.cc (octave_base_int_matrix<T>::convert_to_str_internal):
-	Likewise.
-	* pt-mat.cc (tree_matrix::rvalue1): Likewise.
-
-	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix): Delete
-	unused bool arg.  Declare constructors protected.
-
-	(xisalnum, xisalpha, xisascii, xiscntrl, xisdigit, xisgraph,
-	xislower, xisprint, xispunct, xisspace, xisupper, xisxdigit,
-	xtoascii, xtolower, xtoupper): Move decls here from ov-str-mat.h.
-	(MAT_MAPPER, BOOL_MAT_MAPPER): Move macro definitions and uses
-	here from ov-str-mat.h.
-
-	* ov-ch-mat.cc (MACRO_WRAPPER, STRING_MAPPER, TOSTRING_MAPPER):
-	Move macro definitions and uses here.
-	* ov-str-mat.cc: From here.
-
-	* DLD-FUNCTIONS/typecast (Ftypecast): Update for octave_value
-	constructor changes.  Create sq_string unless casting from string,
-	then preserve exact type.
-	(Fbitpack): Update for octave_value constructor changes.  Create
-	sq_string.
-	* DLD-FUNCTIONS/hex2num.cc (Fnum2hex): Update for octave_value
-	constructor changes.  Create sq_string.
-	* ls-oct-ascii.cc (read_ascii_data): Likewise.
-	* mex.cc (mxArray_number::as_octave_value): Likewise.
-	* oct-stream.cc (octave_stream::read): Likewise.
-	* ov-base.cc (STRING_MAPPER): Likewise.
-
-2009-10-04  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.h (octave_char_matrix_str::squeeze,
-	octave_char_matrix_sq_str::squeeze, octave_char_matrix_str::diag,
-	octave_char_matrix_sq_str::diag): New functions.
-
-2009-10-03  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (image::update_xdata): Add a half-pixel to each limit.
-	(image::update_ydata): Ditto.
-	* gl-render.cc (opengl_renderer::draw): Clip image to axis and fix
-	unpack alignment.
-
-2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-scalar.h (octave_base_scalar::matrix_type): Always
-	return MatrixType::Diagonal.
-	(octave_base_scalar::typ): Remove.
-
-2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h: Define also diag matrix extractors.
-	(octave_type_traits, octave_array_type_traits): Remove.
-	(octave_value::builtin_type): New method.
-	* oct-stream.cc (do_read): Update.
-	* data.cc (identity_matrix): Update.
-	* ov-base.h (builtin_type_t): New enum.
-	(octave_base_value::builtin_type): New method.
-	* ov-re-mat.h (octave_matrix::builtin_type): New method.
-	* ov-flt-re-mat.h (octave_float_matrix::builtin_type): New method.
-	* ov-cx-mat.h (octave_complex_matrix::builtin_type): New method.
-	* ov-flt-cx-mat.h (octave_float_complex_matrix::builtin_type):
-	New method.
-	* ov-bool-mat.h (octave_bool_matrix::builtin_type): New method.
-	* ov-ch-mat.h (octave_char_matrix::builtin_type): New method.
-	* ov-scalar.h (octave_scalar::builtin_type): New method.
-	* ov-float.h (octave_float::builtin_type): New method.
-	* ov-complex.h (octave_complex::builtin_type): New method.
-	* ov-bool.h (octave_bool::builtin_type): New method.
-	* ov-flt-complex.h (octave_float_complex::builtin_type): New method.
-	* ov-re-diag.h (octave_diag_matrix::builtin_type): New method.
-	* ov-flt-re-diag.h (octave_float_diag_matrix::builtin_type): New method.
-	* ov-cx-diag.h (octave_complex_diag_matrix::builtin_type): New method.
-	* ov-flt-cx-diag.h
-	(octave_float_complex_diag_matrix::builtin_type):
-	New method.
-	* ov-re-sparse.h (octave_sparse_matrix::builtin_type): New method.
-	* ov-cx-sparse.h (octave_sparse_complex_matrix::builtin_type):
-	New method.
-	* ov-bool-sparse.h (octave_sparse_bool_matrix::builtin_type):
-	New method.
-	* ov-intx.h (octave_int_matrix::builtin_type,
-	octave_int_scalar::builtin_type): New methods.
-	* ov-int8.h: Define OCTAVE_INT_BTYP.
-	* ov-int16.h: Define OCTAVE_INT_BTYP.
-	* ov-int32.h: Define OCTAVE_INT_BTYP.
-	* ov-int64.h: Define OCTAVE_INT_BTYP.
-	* ov-uint8.h: Define OCTAVE_INT_BTYP.
-	* ov-uint16.h: Define OCTAVE_INT_BTYP.
-	* ov-uint32.h: Define OCTAVE_INT_BTYP.
-	* ov-uint64.h: Define OCTAVE_INT_BTYP.
-
-2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix initialization, add missing
-	break.
-
-2009-10-01  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc (opengl_renderer::draw (const image::properties&)):
-	Adjust origin for glRasterPos3d.
-
-2009-10-01  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc: Style fixes.
-
-2009-10-01  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (image::properties::get_color_data): New function.
-	* gl-render.cc (opengl_renderer::draw): Handle RGB images.
-
-2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc
-	(do_num2cell_helper, do_num2cell): New funcs.
-	(Fnum2cell): Rewrite.
-	(do_cellslices_nda): Do not leave trailing dims.
-
-2009-09-30  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (error_1, pr_where_2, handle_message):
-	Don't do anything if fmt is empty.
-	(Ferror): Call print_usage if nargin == 0.
-
-2009-09-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/typecast.cc (Ftypecast): Rewrite.
-	(Fbitpack, Fbitunpack): New DEFUNs.
-
-2009-09-28  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Redraw the
-	overlay when zoom box changes size.
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_mouse_wheel_zoom): New
-	function to set mouse wheel zoom factor.
-
-2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sub2ind.cc (get_dimensions): Allow singleton array.
-	(Fsub2ind): Allow single index.
-
-2009-09-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-m-m.cc (trans_mul, mul_trans): Update.
-	* OPERATORS/op-fm-fm.cc (trans_mul, mul_trans): Update.
-	* OPERATORS/op-cm-cm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
-	Update.
-	* OPERATORS/op-fcm-fcm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
-	Update.
-	* OPERATORS/op-m-cm.cc (trans_mul): Update.
-	* OPERATORS/op-cm-m.cc (mul_trans): Update.
-	* OPERATORS/op-fm-fcm.cc (trans_mul): Update.
-	* OPERATORS/op-fcm-fm.cc (mul_trans): Update.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-m-cm.cc: Declare and install trans_mul operator.
-	* OPERATORS/op-fm-fcm.cc: Ditto.
-	* OPERATORS/op-cm-m.cc: Declare and install mul_trans operator.
-	* OPERATORS/op-fcm-fm.cc: Ditto.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-m-cm.cc: Declare and install trans_ldiv operator.
-	* OPERATORS/op-fm-fcm.cc: Ditto.
-
-2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::op_trans_ldiv, op_herm_ldiv): New enum constants.
-	* ov.cc (decompose_binary_op, binary_op_fcn_name): Support them.
-	* xdiv.h: Include mx-defs.h, delete forward decls.
-	* xdiv.cc (xleftdiv): Support transt parameter.
-	(xdiv): Optimize.
-	* pt-cbinop.cc (simplify_ldiv_op): New static func.
-	(maybe_compound_binary_expression): Try it.
-	* OPERATORS/op-m-m.cc: Define and install trans_ldiv handler.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-cm-cm.cc: Define and install trans_ldiv and herm_ldiv
-	handlers.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-
-2009-09-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value_extract): New template function.
-	* data.cc (do_linspace): New static template function.
-	(Flinspace): Rewrite.
-
-2009-09-18  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::redraw_figure):
-	Call __fltk_redraw__ after marking figure as modified.
-
-2009-09-18  John W. Eaton  <jwe@octave.org>
-
-	* mexproto.h: Define OCTINTERP_API if it is not already defined.
-	Use C-style comments.
-
-2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/rand.cc (Frandperm): New function.
-
-2009-09-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-misc.cc (tree_parameter_list::convert_to_const_vector): Pass
-	in nargout. Don't return excess elements. Optimize varargout-only case
-	to possibly use a shallow copy.
-	* pt-misc.h: Update decl.
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op): Update call
-	to tree_parameter_list::convert_to_const_vector.
-
-2009-09-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pr-output.cc (Fdisp, Ffdisp): Declare retval as octave_value_list.
-
-2009-09-14  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::pixel2status,
-	plot_window::pixel2pos): New argument AXES, which the
-	coordinates are relative to.
-	(plot_window::handle): Pass axes to pixel2status and pixel2pos.
-
-2009-09-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (symbol_table::curr_fcn): New member field.
-	(symbol_table::get_curr_fcn, symbol_table::set_curr_fcn): New member
-	funcs.
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::xfind): Use
-	symbol_table::get_curr_fcn.
-	(symbol_table::fcn_info::fcn_info_rep::x_builtin_find): Ditto.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function): Call
-	symbol_table::set_curr_fcn.
-
-2009-09-12  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.3.50+.
-	(OCTAVE_API_VERSION): Now api-v38+.
-
-2009-09-12  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.3.50.
-	(OCTAVE_API_VERSION): Now api-v38.
-	(OCTAVE_RELEASE_DATE): Now 2009-09-12.
-
-2009-09-08  Rafael Laboissiere  <rafael@debian.org>
-
-	* pr-output.cc: New test.
-
-2009-09-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Add LDFLAGS to OCT_LINK_DEPS.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc: Fix test.
-
-2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-s-cs.cc: Use DEFCMPLXCMPOP_OP.
-	* OPERATORS/op-cs-s.cc: Ditto.
-	* OPERATORS/op-fs-fcs.cc: Ditto.
-	* OPERATORS/op-fcs-fs.cc: Ditto.
-
-2009-09-05  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk: Fix formatting of generated output.
-	* graphics.h.in (graphics_object::get (const std::string&) const,
-	graphics_object::get (const char *) const): New functions.
-
-2009-09-05  John W. Eaton  <jwe@octave.org>
-
-	* txt-eng-ft.cc (ft_manager::do_get_font): Remove spurious
-	assignment usd for debugging.
-
-2009-09-04  John W. Eaton  <jwe@octave.org>
-
-	* txt-eng-ft.cc (ft_manager::do_get_font, ft_render::set_font,
-	ft_render::set_mode, ft_render::visit, ft_render::set_color):
-	Issue warnings instead of errors for non-fatal problems.
-	(ft_render::visit): If face is null, then return without warning.
-	* genprops.awk: Also generate const std::string& and const char*
-	versions of the get member functions.
-	* gl-render.cc (opengl_renderer::draw): Omit caseless_str
-	constructor in call to get method.
-	* ft_render::set_font (): Likewise.
-
-2009-09-03  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (set_format (const Complex&, int&, int&)):
-	Avoid passing NaN or Inf to log10.
-
-2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::assign (assign_op, const octave_value&)):
-	Call maybe_mutate after in-place operation.
-
-2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::do_non_const_unary_op): Split to
-	genuine/non-genuine case.
-	(octave_value::binary_op_to_assign_op): New method.
-	* ov.h: Declare it.
-	* ov-re-mat.h (octave_matrix::changesign): New method.
-	* ov-flt-re-mat.h (octave_float_matrix::changesign): New method.
-	* ov-cx-mat.h (octave_complex_matrix::changesign): New method.
-	* ov-flt-cx-mat.h (octave_float_complex_matrix::changesign): New
-	method.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::changesign): New method.
-	* ov-bool-mat.h (octave_bool_matrix::invert): New method.
-	* pt-unop.cc (tree_prefix_expression::rvalue1): Use
-	do_non_const_unary_op.
-	* pt-binop.cc (tree_binary_expression::rvalue1): If possible,
-	convert to computed assignment.
-
-	* OPERATORS/op-m-m.cc: Define & install in-place minus operation.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-cm-cm.cc: Ditto.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-	* OPERATORS/op-int.h: Ditto.
-	* OPERATORS/op-bm-bm.cc: Define & install in-place not operation.
-
-2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.h (octave_matrix::increment, octave_matrix::decrement):
-	Use matrix_ref.
-	* ov-flt-re-mat.h (octave_float_matrix::increment,
-	octave_float_matrix::decrement): Use matrix_ref.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::increment,
-	OCTAVE_VALUE_INT_MATRIX_T::decrement):
-	Use matrix_ref.
-
-2009-09-02  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (axes::properties::calc_ticklabels):
-	Avoid unused parameter warning from gcc.
-
-	* ov-perm.cc (octave_perm_matrix::save_binary,
-	octave_perm_matrix::load_binary): Avoid shadow warning from gcc.
-
-2009-09-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/eig.cc (Feigs): Correct nesting error in option
-	parsing that prevented the use of a function for generalized
-	eigenvalue problems.
-
-2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ops.h (DEFCMPLXCMPOP_OP, DEFNDCMPLXCMPOP_FN): New macros.
-	* gripes.cc (gripe_warn_complex_cmp): New function.
-	* gripes.h: declare it.
-
-	* OPERATORS/op-cm-cm.cc: Call the new macros.
-	* OPERATORS/op-cm-cs.cc: Ditto.
-	* OPERATORS/op-cm-m.cc: Ditto.
-	* OPERATORS/op-cm-s.cc: Ditto.
-	* OPERATORS/op-cs-cm.cc: Ditto.
-	* OPERATORS/op-cs-cs.cc: Ditto.
-	* OPERATORS/op-cs-m.cc: Ditto.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-	* OPERATORS/op-fcm-fcs.cc: Ditto.
-	* OPERATORS/op-fcm-fm.cc: Ditto.
-	* OPERATORS/op-fcm-fs.cc: Ditto.
-	* OPERATORS/op-fcs-fcm.cc: Ditto.
-	* OPERATORS/op-fcs-fcs.cc: Ditto.
-	* OPERATORS/op-fcs-fm.cc: Ditto.
-	* OPERATORS/op-fm-fcm.cc: Ditto.
-	* OPERATORS/op-fm-fcs.cc: Ditto.
-	* OPERATORS/op-fs-fcm.cc: Ditto.
-	* OPERATORS/op-m-cm.cc: Ditto.
-	* OPERATORS/op-m-cs.cc: Ditto.
-	* OPERATORS/op-s-cm.cc: Ditto.
-
-
-2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ops.h (BOOL_OP1, BOOL_OP2, BOOL_OP3, SC_MX_BOOL_OP, MX_SC_BOOL_OP,
-	MX_MX_BOOL_OP): Remove.
-
-2009-08-28  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk: Generate static member functions has_core_property
-	and core_property_names.  Make has_property and all_property_names
-	non-static const member functions.  Pass object type to
-	validate_property_name.
-	* graphics.cc (validate_property_name): New arg, WHAT.
-	Improve warning and error messages.
-	(property_list::set): Use has_core_property instead of has_property.
-	(base_properties::has_property): Delete definition.
-	(base_graphics_object::remove_all_listeners): Move unwind protect
-	block here, from old base_properties::has_property function.
-	* graphics.h.in (base_properties::has_property): Now virtual.
-	Unconditionally call panic_impossible.
-
-2009-08-28  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (validate_property_name): Return full name of
-	matched property value.  Issue warning if given property name is
-	abbreviated.
-	* genprops.awk: Use name returned by validate_property_name for
-	subsequent matching.
-	* octave.cc (maximum_braindamage):
-	Disable Octave:abbreviated-property-match warning.
-
-2009-08-27  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (validate_property_name): New static function.
-	(base_properties::dynamic_property_names): New function.
-	* graphicffs.h.in (base_properties::dynamic_property_names):
-	Provide decl.
-	* genprops.awk: Generate all_property_names functions.  Use
-	all_property_names as needed to avoid duplication elsewhere.
-	Call validate_property_name in set/get functions.
-
-2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (get_current_method_class): Simplify.
-	(octave_class::in_class_method): Don't rely on multiple copies of
-	methods. Don't declare as const.
-	(octave_class::octave_class (const Octave_map&, const std::string&,
-	const octave_value_list&)):
-	Call symbol_table::add_to_parent_map instead.
-	* ov-class.h (octave_class::in_class_method): Don't declare as const.
-	* symtab.h (symbol_table::parent_map): New field.
-	(symbol_table::add_to_parent_map): New method.
-	(symbol_table::load_class_method): Search also parent classes.
-	* load-path.h (load_path::parent_map, load_path::add_to_parent_map,
-	load_path::do_add_to_parent_map): Remove.
-	* load-path.cc (load_path::do_find_method): Don't search parent
-	classes.
-
-2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-cs-cs.cc: Simplify comparison operators.
-	* OPERATORS/op-fcs-fcs.cc: Ditto.
-
-2009-08-25  David Grundberg  <individ@acc.umu.se>
-
-	* DLD-FUNCTIONS/__magick_read__.cc [HAVE_MAGICK]: Include
-	Magick++.h instead of GraphicsMagick/Magic++.h.
-	* Makefile.in: Replace MAGICK_LIBS with MAGICK_LDFLAGS and
-	MAGICK_LIBS. Replace MAGICK_INCFLAGS with MAGICK_CPPFLAGS.
-	* oct-conf.h.in: Ditto.
-	* toplev.cc (octave_config_info): Ditto.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New defines for UMFPACK_CPPFLAGS and UMFPACK_LDFLAGS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New defines for QRUPDATE_CPPFLAGS and QRUPDATE_LDFLAGS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New defines for ARPACK_CPPFLAGS and ARPACK_LDFLAGS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
-	Include BLAS_LIBS in the list.
-
-2009-08-26  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (OCTAVE_LIBS): Include FLIBS in the list.
-	(OCTINTERP_LINK_DEPS): Include TERM_LIBS, LIBGLOB, and FLIBS in
-	the list.
-
-2009-08-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Ffmod): Reverse order of args.
-
-2009-08-26  Rob Mahurin  <rob@utk.edu>
-
-	* syscalls.cc: Recommend waitpid() in popen2() documentation.
-
-2009-08-25  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (gnuplot_backend::send_quit): Wait for gnuplot process.
-
-2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-m-m.cc: Install .*= and ./= operators.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-cm-cm.cc: Ditto.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-	* OPERATORS/op-int.h: Ditto.
-
-2009-08-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (UNARY_OP_DEFUN_BODY,
-	BINARY_OP_DEFUN_BODY, BINARY_ASSOC_OP_DEFUN_BODY): Remove.
-	(unary_op_defun_body, binary_op_defun_body,
-	binary_assoc_op_defun_body): New functions.
-	(Fnot, Fuplus, Fuminus, Ftranspose, Fctranspose): Use
-	unary_op_defun_body.
-	(Fminus, Fmrdivide, Fmpower, Fmldivide, Flt, Fle, Feq, Fge, Fgt, Fne,
-	Frdivide, Fpower, Fldivide): Use binary_op_defun_body.
-	(Fplus, Ftimes, Fmtimes, Fand, For): Use binary_assoc_op_defun_body.
-
-2009-08-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-s-s.cc: Check for NaN in ! operator.
-	* OPERATORS/op-fs-fs.cc: Ditto.
-	* OPERATORS/op-cs-cs.cc: Ditto.
-	* OPERATORS/op-fcs-fcs.cc: Ditto.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ops.h (DEFNDASSIGNOP_FNOP): New macro.
-	* OPERATORS/op-bm-bm.cc: Define and install &= and |= operators.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-m-m.cc: Define and install += and -= operators.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-cm-cm.cc: Ditto.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-	* OPERATORS/op-m-s.cc: Define and install +=,-=,*=,/= operators.
-	* OPERATORS/op-fm-fs.cc: Ditto.
-	* OPERATORS/op-cm-cs.cc: Ditto.
-	* OPERATORS/op-fcm-fcs.cc: Ditto.
-	* OPERATORS/op-cm-s.cc: Define and install *=,/= operators.
-	* OPERATORS/op-fcm-fs.cc: Ditto.
-	* ops.h (DEFNDASSIGNOP_OP): New macro.
-	* ov.cc (octave_value::assign (assign_op, const octave_value&)):
-	Try looking up specialized handlers if the value is not shared.
-	* ov-base-mat.h (octave_base_matrix::matrix_ref): New method.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.h (octave_value_list::octave_value_list (octave_idx_type)):
-	Allow this constructor.
-
-2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Reuse cached index vector when
-	converting boolean mask to indices.
-
-2009-08-18  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New #defines for HDF5_LDFLAGS and HDF5LDFLAGS.
-	* Makefile.in (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
-	Include them in the lists.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New #defines for ZLIB_CPPFLAGS and ZLIB_LDFLAGS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (OCTINTERP_LINK_DEPS): Include FFTW_LDFLAGS,
-	FFTW_LIBS and READLINE_LIBS in the list.
-	(OCTAVE_LIBS): Attempt to include all necessary dependencies for
-	static linking.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (eigs.oct, chol.oct, qr.oct): Add library-specific
-	CPPFLAGS and LDFLAGS variables to CPPFLAGS and LDFLAGS.
-	From Benjamin Lindner <lindnerb@users.sourceforge.net>.
-
-2009-08-17  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (OCTINTERP_LINK_DEPS): List $(LIBS) last.
-
-2009-08-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makefile.in (OCTINTERP_LINK_DEPS): Include $(LIBCRUFT) and
-	$(LIBS) in the list.
-	(OCT_LINK_DEPS): Include $(LIBOCTAVE) and $(LIBCRUFT) in the list.
-	(eigs.oct, qz.oct): Add $(BLAS_LIBS) to LDFLAGS.
-	(ccolamd.oct, symbfact.oct): Add library-specific CPPFLAGS and
-	LDFLAGS variables to CPPFLAGS and LDFLAGS.
-
-2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.h, ov-struct.cc: Revert to e08d72bb988e.
-	* ov-class.h, ov-class.cc: Partially revert to e08d72bb988e.
-	(octave_class::subsasgn): Cut&paste code from octave_struct::subsasgn
-	for the nested dot indexing.
-	* ov-usr-fcn.cc (Voptimize_subasgn_calls): Default to true.
-
-2009-08-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc: Update for new FFTW
-	defines.
-
-	* Makefile.in (amd.oct, colamd.oct, dmperm.oct, symcrm.oct,
-	qr.oct, fft.oct, fft2.oct, fftn.oct, fftw.oct): Add
-	library-specific CPPFLAGS and LDFLAGS variables to CPPFLAGS
-	and LDFLAGS.
-	* oct-conf.h.in: New #defines for GLPK_CPPFLAGS, GLPK_LDFLAGS,
-	AMD_CPPFLAGS, AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS,
-	CCOLAMD_CPPFLAGS, CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS,
-	CHOLMOD_LDFLAGS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS,
-	CXSPARSE_CPPFLAGS, CXSPARSE_LDFLAGS, FFTW3_CPPFLAGS,
-	FFTW3_LDFLAGS, FFTW3_LIBS, FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS, and
-	FFTW3F_LIBS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.h (octave_class): Derive from octave_struct.
-	(octave_class::octave_class): Update all constructors.
-	(octave_class::numeric_conv, octave_class::byte_size, octave_class::numel, octave_class::nfields,
-	octave_class::reshape, octave_class::resize, octave_class::is_defined,
-	octave_class::map_value): Remove methods (inherit).
-	* ov-class.h (octave_class::obsolete_copies): New field.
-	Init to 0 in all constructors.
-	(octave_class::unique_clone): New decl.
-	* ov-class.cc (octave_class::unique_clone): Fake clone if all
-	remaining copies are obsolete.
-	(octave_class::subsref): Share code with octave_struct::subsref.
-	(octave_class::subsref (..., bool auto_add)): New method.
-	(octave_class::subsasgn): If plausible, attempt to
-	optimize the method call by marking appropriate number of copies
-	obsolete. Share code with octave_struct::subsasgn.
-	(octave_class::dotasgn): New method override.
-	* ov-struct.h (octave_struct::dotref): New virtual overload.
-	(octave_struct::dotasgn): New virtual method decl.
-	* ov-struct.cc (octave_struct::dotasgn): New virtual method.
-	* ov-usr-fcn.h (octave_user_function::num_args_passed,
-	octave_user_function::saved_args): Remove fields. Wipe from all
-	constructor lists.
-	(octave_user_function::save_args_passed,
-	octave_user_function::restore_args_passed): Remove methods.
-	(octave_user_function::all_va_args): Update decl.
-	(octave_user_function::subsasgn_optimization_ok): New method decl.
-	* ov-usr-fcn.cc (octave_user_function::all_va_args): Rename from
-	octave_all_va_args, take args as a parameter.
-	(octave_user_function::subsasgn_optimization_ok): New method.
-	(octave_user_function::do_multi_index_op): Simplify.
-
-2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::count): Declare as octave_idx_type.
-	(octave_base_value::octave_base_value (const octave_base_value&)):
-	Initialize count to 1.
-	(octave_base_value::unique_clone ()): New method.
-	(octave_base_value::print_with_name): Declare as non-const.
-	* ov-base.cc (octave_base_value::print_with_name): Update.
-	* ov.h (octave_value::make_unique (void)): Don't set rep->count.
-	Call unique_clone.
-	(octave_value::make_unique (int)): Don't set rep->count.
-	Call unique_clone.
-	(octave_value::octave_value (const octave_base_value *)): Declare
-	as private.
-	* ov-class.cc (octave_class::print_with_name): Avoid using clone ().
-	* ov-class.h (octave_class::print_with_name): Declare as non-const.
-
-2009-08-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Consistently add library-specific CPPFLAGS and
-	LDFLAGS variables to CPPFLAGS and LDFLAGS for .oct files that need
-	them.  Also add X11_FLAGS to CPPFLAGS for display.d display.df and
-	pic/display.o.
-
-	* oct-conf.h.in: New #defines for QHULL_CPPFLAGS, QHULL_LDFLAGS,
-	CURL_CPPFLAGS, and CURL_LDFLAGS.
-	* toplev.cc (octave_config_info): Include them in the list.
-
-2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Include LDFLAGS when linking shared executable.
-
-2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fissorted, F__sort_rows_idx__, Fnorm): Mark as Built-in
-	Functions in the inline help.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fftw.cc (Ffftw): Update for octave_fftw_planner
-	and octave_float_fftw_planner as singleton objects.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: Use READLINE_LIBS instead of LIBREADLINE.
-	New #defines for TERM_LIBS and DL_LIBS.
-	* toplev.cc (octave_config_info): Add TERM_LIBS and DL_LIBS to the
-	struct.  Use READLINE_LIBS instead of LIBREADLINE.
-
-2009-08-11  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in: New #defines for AMD_LIBS, ARPACK_LIBS,
-	CAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS, COLAMD_LIBS, CXSPARSE_LIBS,
-	FT2_LIBS, GRAPHICS_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS,
-	PTHREAD_LIBS, QHULL_LIBS, QRUPDATE_LIBS, REGEX_LIBS, UMFPACK_LIBS,
-	ZLIB_LIBS.
-
-	* toplev.cc (octave_config_info): Include them in the struct.
-
-2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fdiff): New built-in function.
-	(do_diff): New assistant function.
-
-2009-08-10  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Perform tilde expansion on
-	filename argument.
-
-2009-08-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (out_of_date_check): Remove overloads. Add check_relative
-	parameter.
-	(out_of_date_check_internal): Remove.
-	* symtab.h: Update.
-	* ov-fcn-handle.cc (octave_fcn_handle::do_index_op): Call
-	out_of_date_check with check_relative = false.
-
-2009-08-09  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Fevalin): Also return output from CATCH expression.
-
-2009-08-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fifelse): Rename to Fmerge, alias to Fifelse.
-
-2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-dm-template.cc, OPERATORS/op-pm-template.cc:
-	Also define conversions for null string and null sq_string.
-
-2009-08-06  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-cdm-m.cc, OPERATORS/op-dm-m.cc, OPERATORS/op-pm-m.cc:
-	Define LDMATRIX and DEFINENULLASSIGNCONV.
-	* OPERATORS/op-dm-template.cc, OPERATORS/op-pm-template.cc:
-	Include ov-null-mat.h and define assignment conversion for null
-	matrices if DEFINENULLASSIGNCONV is defined.  Define OCTAVE_LDMATRIX.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* pt-eval.cc (tree_evaluator::visit_complex_for_command):
-	Use key_list order for iterating through map.
-
-	* Makefile.in (OCT_LINK_DEPS): Also include $(RLD_FLAG) in the list.
-
-2009-08-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (octave$(EXEEXT)): Clean up link flags and library list.
-	(OCTINTERP_LINK_DEPS): Omit -L../libcruft $(LIBCRUFT) $(LIBS)
-	$(FLIBS) from the list.  Include $(RLD_FLAG) in the list.
-	(OCT_LINK_DEPS): Only include -L. $(LIBOCTINTERP) in the list.
-
-2009-08-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* utils.cc (Fisindex): New DEFUN.
-
-2009-08-04  Kristian Rumberg  <kristianrumberg@gmail.com>
-
-	* input.cc (is_completing_dirfns): New function.
-	(generate_completion): Use it to selectively complete file names.
-
-2009-08-04  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (Fdbwhere): Call octave_call_stack::goto_frame_relative
-	to move to user code frame.  Get line and column information from
-	call stack.
-	* input.cc (Fkeyboard): Don't pass verbose flag to
-	octave_call_stack::goto_frame_relative.
-	(get_debug_input): Get line and column information from call stack.
-
-	* pt-eval.h, pt-eval.cc (tree_evaluator::debug_line,
-	tree_evaluator::debug_column, tree_evaluator::db_line,
-	tree_evaluator::db_column): Delete.
-	* pt-eval.cc (tree_evaluator::do_breakpoint): Don't print function
-	name and location info here.  Delete line and column number args.
-	Change all callers.
-
-	* toplev.h (octave_call_stack::do_current,
-	octave_call_stack::do_current_statement): New functions.
-	(octave_call_stack::current): Call do_current, not top.
-	(octave_call_stack::current_statement): Call do_current_statement,
-	not top_statement.
-	(octave_call_stack::top, octave_call_stack::top_statement,
-	octave_call_stack::do_top, octave_call_stack::do_top_statement):
-	Delete.
-
-2009-08-04  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_call_stack::do_goto_frame_relative): Allow
-	NSKIP to be 0.  Set current scope and context.
-	* input.cc (Fkeyboard): Use octave_call_stack::goto_frame_relative
-	to set scope in user code that called the keyboard function.
-
-2009-08-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* input.cc (Fkeyboard): Only call do_keyboard, don't fiddle with
-	stack.
-
-2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sub2ind.cc: New source.
-	* Makefile.in: Include it.
-	* ov-range.h (octave_range::octave_range (const Range&, const
-	idx_vector&)): New constructor.
-	* ov-re-mat.h (octave_matrix::octave_matrix (const NDArray&, const
-	idx_vector&)): New constructor.
-	* ov.cc (octave_value::octave_value (const idx_vector&)): New
-	constructor.
-	* ov.h: Declare it.
-
-2009-07-30  Ryan Rusaw  <rrusaw@gmail.com>
-
-	* input.cc (reading_classdef_file): New file-scope variable.
-	(gnu_readline): Also set curr_stream if reading_classdef_file.
-	(octave_gets, get_input_from_file):
-	Handle classdef files like other input files.
-	* input.h (reading_classdef_file): Provide decl.
-
-	* octave.gperf (classdef, endclassdef, endevents, endmethods,
-	endproperties, events, get, methods, properties, set): New keywords.
-
-	* lex.l: Handle classdef filees like other input files.
-	Recognize superclass method identifiers and metaclass query constructs.
-	(is_keyword_token): Recognize endclassdef, endevents, endmethods,
-	endproperties, get, set, properties, methods, and events keywords.
-	(maybe_classdef_get_set_method, parsing_classdef): New variables.
-	(handle_superclass_identifier, handle_meta_identifier):
-	New static functions.
-	(lexical_feedback::init): Initialize parsing_classdef and
-	maybe_classdef_get_set_method.
-	(display_token): Handle SUPERCLASSREF, METAQUERY, GET, SET,
-	PROPERTIES, METHODS, EVENTS, and  CLASSDEF tokens.
-	* lex.h (maybe_classdef_get_set_method, parsing_classdef):
-	Provide decls.
-	* parse.y (%union): New placeholder type, dummy_type.
-	(SUPERCLASSREF, METAQUERY, GET, SET, PROPERTIES, METHODS, EVENTS,
-	CLASSDEF): New tokens.
-	(superclass_identifier, meta_identifier, classdef_beg,
-	classdef_end, classdef1, classdef, opt_attr_list, attr_list, attr,
-	opt_superclasses, superclasses, class_body, properties_beg,
-	properties_block, properties_list, class_property, methods_beg,
-	methods_block, methods_list, events_beg, events_block,
-	events_list, class_event): New non-terminals.
-	(primary_expr): Include superclass_identifier and meta_identifier
-	as possible primary_exprs.
-	(function_beg): If parsing classdef file, set
-	lexer_flags.maybe_classdef_get_set_method to true.
-	be recognized.
-	(fcn_name): Accept GET '.' identifier or SET '.' identifier.
-	(end_error): Handle endclassdef.
-	(looking_at_classdef_keyword): New function.
-	(gobble_leading_whitespace): Handle classdef.
-	* token.h, token.cc (sc, mc):
-	New union fields for symbol classdef symbol_record info.
-	(token::token (symbol_table::symbol_record *,
-	symbol_table::symbol_record *, int, int),
-	token::token (symbol_table::symbol_record *,
-	symbol_table::symbol_record *, symbol_table::symbol_record *, int,
-	int)): New constructors.
-	(token::method_rec, token::class_rec, token::package_rec,
-	token::meta_class_rec, token::meta_package_rec): New methods.
-	(token_type): New enum values: scls_rec_token, meta_rec_token.
-	(end_tok_type): New enum values: classdef_end, events_end,
-	methods_end, properties_end.
-
-2009-07-30  David Grundberg  <individ@acc.umu.se>
-
-	* symtab.h (symbol_table::parent_scope): Remove.
-	(symbol_table::set_parent_scope): Remove.
-	(symbol_table::reset_parent_scope): Remove.
-	(symbol_table::install_subfunction): Require scope parameter
-	instead of xparent_scope default.
-	* symtab.cc: Remove symbol_table::xparent_scope
-	* lex.h (lexical_feedback::parsing_nested_function): Remove.
-	* lex.l	(is_keyword_token): Don't ignore endfunctions.
-	(prep_lexer_for_script_file): Renamed from prep_lexer_for_script.
-	(prep_lexer_for_function_file): New function.
-	(display_token): Display SCRIPT_FILE and FUNCTION_FILE.
-	(display_state): Display FUNCTION_FILE_BEGIN
-	(FUNCTION_FILE_BEGIN): New state.
-	(NESTED_FUNCTION_END, NESTED_FUNCTION_BEGIN): Remove states.
-	(prep_for_function, prep_for_nested_function): Remove functions.
-	* parse.h: Remove extern declaration parent_function_name,
-	end_tokens_expected.
-	* parse.y: Add variables current_function_depth,
-	max_function_depth, parsing_subfunctions, seen_endfunction. Remove
-	parent_function_name. Rename curr_fcn_ptr to primary_fcn_ptr. Add
-	token FUNCTION_FILE. Rename token SCRIPT to SCRIPT_FILE.
-	(function_file): New rule.
-	(input): Accept function_file.
-	(script_file): Rule renamed from script.
-	(function_file): New rule.
-	(function_list): New rule.
-	(push_fcn_symtab): Parse nested functions.
-	(fcn_name): Remove parent_function_name.
-	(function_end): Use seen_endfunction. New error messages.
-	(make_script): Use primary_fcn_ptr.
-	(frob_function): Simplify control structures. Don't use
-	symbol_table::parent_scope.
-	(push_fcn_symtab, function_end, frob_function, finish_function):
-	Use current_function_depth instead of
-	lexical_feedback::parsing_nested_function.
-	(make_return_command): Use current_function_depth instead of
-	lexical_feedback::defining_func.
-	(make_break_command, make_decl_command, maybe_warn_missing_semi):
-	Ditto
-	(parse_fcn_file): Warn when nested functions have been
-	declared. Remove superfluous local variables. Parse function files
-	using function_file rule.
-
-2009-07-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fmerge): Rename to Fifelse.
-
-2009-07-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fmerge): New DEFUN.
-	(do_merge): New helper function.
-
-2009-07-29  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (param_list_end): Also set
-	lexer_flags.looking_for_object_index to false.
-
-	* ov-float.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
-	ov-scalar.cc: Use complex function for acos mapper if arg is out
-	of range [-1, 1].
-
-	* ov-bool.cc (octave_bool::load_ascii): Call template function to
-	read value.
-	* ov-scalar.cc (octave_scalar::load_ascii): Likewise.
-	* ov-complex.cc (octave_complex::load_ascii): Likewise.
-	* ov-float.cc (octave_float_scalar::load_ascii): Likewise.
-	* ov-flt-complex.cc (octave_float_complex::load_ascii): Likewise.
-	* ls-mat-ascii.cc (read_mat_ascii_data): Likewise.
-
-	* ov-re-sparse.cc (octave_sparse_matrix::load_binary,
-	octave_sparse_matrix::load_hdf5): Perform sanity check on indices.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::load_binary,
-	octave_sparse_complex_matrix::load_hdf5): Likewise.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::load_binary,
-	octave_sparse_bool_matrix::load_hdf5): Likewise.
-
-2009-07-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op):
-	Cache lookups also for classes.
-
-2009-07-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Support auto-expanding scalar
-	cells.
-
-2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::xfind,
-	symbol_table::fcn_info::fcn_info_rep::find,
-	symbol_table::fcn_info::fcn_info_rep::find_function,
-	symbol_table::fcn_info::find,
-	symbol_table::fcn_info::find_function,
-	symbol_table::find, symbol_table::do_find,
-	symbol_table::find_function):
-	Add local_funcs parameter.
-	* symtab.h: Update decls.
-	* ov-fcn-handle.cc (make_fcn_handle): Add local_funcs parameter.
-	* ov-fcn-handle.h: Update decls.
-
-2009-07-24  John W. Eaton  <jwe@octave.org>
-
-	* pt-mat.cc (DO_SINGLE_TYPE_CONCAT_NO_MUTATE): New macro.
-	(tree_matrix::rvalue1): Use it to avoid complex -> real conversion.
-
-2009-07-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCIONS/cellfun.cc (Fcellfun): Avoid double error messages.
-
-2009-07-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-path.cc (load_path::do_any_class_method): New method.
-	* load-path.h (load_path::do_any_class_method): New method decl.
-	(load_path::any_class_method): New method.
-	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Support
-	calls without non-overloaded base function.
-	(make_fcn_handle): Support creation without non-overloaded base
-	function.
-
-2009-07-23  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::pixel2axes_or_ca):
-	Replace plot_window::pixel2axes and use algorithm from octavede.
-	(plot_window::handle): Zooming now works on the axes below the
-	mouse pointer instead of the current axes. Combine old and new
-	zooming methods.
-	(help_text): Update to reflect new mouse/key bindings.
-
-2009-07-23  Soren Hauberg  <hauberg@gmail.com>
-
-	* graphics.cc (axes::properties::zoom_about_point,
-	axes::properties::translate_view): New functions.
-	(axes::properties::zoom): make zoom_stack usage optional.
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Use new
-	zoom API.
-
-2009-07-23  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (safe_symbol_lookup): New function.
-	(symbol_exist): Use it.
-
-2009-07-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/chol.cc (Fcholupdate,
-	Fcholinsert, Fcholdelete, Fcholshift): Replace is_matrix_type ->
-	is_numeric_type.
-
-2009-07-23  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (IGNORE_EXCEPTION, SAFE_CALL): New macros.
-	(clean_up_and_exit, do_octave_atexit): Use SAFE_CALL to handle
-	exceptions while preparing to exit.
-
-2009-07-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (get_dispatch_type): Omit first-arg dispatch, export.
-	* symtab.h (get_dispatch_type): Provide decl.
-	* ov-fcn-handle.h (octave_fcn_handle::warn_reload): Delete.
-	(octave_fcn_handle::disp): New field.
-	(octave_fcn_handle::str_ov_map): New typedef.
-	(octave_fcn_handle::octave_fcn_handle (..., str_ov_map *)): New
-	constructor.
-	(octave_fcn_handle::do_multi_index_op): New method decl.
-	(octave_fcn_handle::is_overloaded): New method.
-	* ov-fcn-handle.cc
-	(octave_fcn_handle::do_multi_index_op): New method.
-	(octave_fcn_handle::subsref): Rewrite using do_multi_index_op.
-	(octave_fcn_handle::make_fcn_handle): Construct overloaded handles if
-	appropriate.
-	(Ffunctions): Indicate (statically) overloaded handles.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Update & modernize.
-	* DLD-FUNCTIONS/bsxfun.cc (Fbsxfun): Ditto.
-
-2009-07-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.cc (symbol_table::find,
-	symbol_table::find_function,
-	symbol_table::symbol_record::find,
-	symbol_table::fcn_info::find,
-	symbol_table::fcn_info::fcn_info_rep::find,
-	symbol_table::fcn_info::fcn_info_rep::xfind): Simplify argument lists.
-	* symtab.h: Update declarations.
-	* pt-id.cc (tree_identifier::rvalue): Simplify.
-	* pt-id.h (tree_identifier::do_lookup): Simplify.
-	* pt-idx.cc (tree_index_expression::rvalue): Update.
-	* variables.cc (symbol_exist): Update.
-
-2009-07-21  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::builtin_find,
-	symbol_table::do_builtin_find,
-	symbol_table::fcn_info::builtin_find,
-	symbol_table::fcn_info::fcn_info_rep::builtin_find,
-	symbol_table::fcn_info::fcn_info_rep::x_builtin_find): New functions.
-	* symtab.h: Provide decls.
-	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Call
-	symbol_table::builtin_find instead of symbol_table::find_function.
-
-2009-07-20  Aleksej Saushev  <asau@inbox.ru>
-
-	* sysdep.cc: Also define BSD_init if __NetBSD__ is defined.
-	(sysdep_init): Also call BSD_init if __NetBSD__ is defined.
-
-2009-07-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* bitfcns.cc (DO_UBITSHIFT): Avoid overflow.
-	(DO_SBITSHIFT): Fix mask calculation.
-
-2009-07-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_read__):
-	Determine correct number of bits required when reading images.
-
-2009-07-16  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (get_array_limits): Require min_pos value to be
-	greater than zero.
-
-2009-07-15  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* DLD-FUNCTIONS/filter.cc: New tests.
-
-2009-07-09  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fones, Fzeros, Ftrue, Ffalse): Update docstrings.
-
-2009-07-08  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (convert_cdata): Return NaN for NaN values in cdata.
-
-	* pt-assign.cc (maybe_warn_former_built_in_variable): Improve message.
-
-2009-07-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-eval.cc (do_unwind_protect_cleanup_code): Add missing
-	unwind_protect::run.
-
-2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* help.cc (do_which): Also look for files.
-
-2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.cc (Cell::index): Use proper resize_fill_value.
-
-2009-07-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (symbol_table::get_fcn_info): New private static method.
-	(symbol_record_rep::finfo): New field.
-	* symtab.cc (symbol_record::find): Use cached finfo if possible,
-	cache on successful queries.
-
-2008-07-01  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (static inline std::string rational_approx (double,
-	int)): Test for underflow of fractional part of rational approximation
-	earlier in the loop.
-
-2009-07-01  Joe Rothweiler  <octaveuser@sensicomm.com>
-
-	* input.cc (raw_mode): Use TCSADRAIN if no wait.
-
-2009-06-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (force_variable): Remove assertion.
-
-2009-06-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makefile.in (INCLUDES): Install txt-eng.h and txt-eng-ft.h.
-	* gl-render.cc (opengl_renderer::draw_text): Fix bitmap offset
-	computation for 90x rotated text.
-	* txt-eng-ft.cc (ft_render::render): Compute bitmap pixels correctly
-	for 90x rotated text.
-
-	* gl-render.cc (opengl_renderer::draw(text::properties)): Don't do
-	anything if the bitmap data is empty. Issue a warning instead of
-	an error if Freetype library is not available.
-	* txt-eng-ft.cc (ft_manager::do_get_font): Small change in error
-	string (add prefix).
-	(ft_render::render): Don't do anything if the bitmap data is empty.
-
-2009-06-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (erase_scope (void *)): Remove overload.
-
-2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* txt-eng.h: New file for simple text engine.
-	* txt-eng.h, txt-eng.cc: Freetype based text render engine.
-	* Makefile.in: Add txt-eng-ft.cc to list of source files.
-	* gl-render.h (opengl_renderer::draw_text, opengl_renderer::set_font,
-	opengl_renderer::draw(text::properties)): New method to support text
-	rendering using the Freetype renderer.
-	(opengl_renderer::text_renderer): New field for text rendering.
-	* gl-render.cc (opengl_renderer::draw(graphics_object)): Support text
-	object.
-	(opengl_renderer::draw(figure::properties)): Setup alpha test.
-	(opengl_renderer::draw(axes::properties)): Render tick labels, hide
-	labels for depth axes and fix a problem in calling
-	graphics_object::get(char*).
-	(opengl_renderer::draw(text::properties)): Basic text rendering using
-	Freetype engine.
-	(opengl_renderer::draw_text): Ditto.
-	(opengl_renderer::set_color): Propagate the color to the text
-	renderer.
-	(opengl_renderer::set_font): New utility method.
-	* graphics.cc (axes::properties::init, axes::properties::set_defauls):
-	(Re)initialize tick labels, labels and title property.
-
-2009-06-26  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (Faddpath): Preserve order of prepended elements.
-
-2009-06-25  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (gh_manager::restore_gcbo):
-	Arg is now void, not void*.
-
-2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind-prot.h (unwind_protect::fcn_elem): New class.
-	(unwind_protect::fcn_arg_elem): New class.
-	(unwind_protect::method_elem): New class.
-	(unwind_protect::add_action_var): Rename to add_fcn.
-	(unwind_protect::add_fcn): New static method.
-	(unwind_protect::add_method): New static method.
-
-	* symtab.h: Split clear_variables into two overloads.
-	* toplev.h (octave_call_stack::restore_frame): New static method.
-
-	* graphics.cc: Update unwind_protect usage.
-	* input.cc: Ditto.
-	* lex.h: Ditto.
-	* ls-mat5.cc: Ditto.
-	* mex.cc: Ditto.
-	* ov-builtin.cc: Ditto.
-	* ov-fcn-handle.cc: Ditto.
-	* ov-mex-fcn.cc: Ditto.
-	* ov-usr-fcn.cc: Ditto.
-	* parse.y: Ditto.
-	* pt-eval.cc: Ditto.
-	* toplev.cc: Ditto.
-	* variables.cc: Ditto.
-
-2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* input.cc: Use unwind_protect::add_action_var where appropriate.
-	* ls-mat5.cc: Ditto.
-	* ov-fcn-handle.cc: Ditto.
-	* parse.y: Ditto.
-	* toplev.cc: Ditto.
-	* variables.cc: Ditto.
-
-2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind-prot.h (unwind_protect::elem): New polymorphic class.
-	(unwind_protect::restore_var): Remove.
-	(unwind_protect::restore_mem): Remove.
-	(unwind_protect::elt_list): Update.
-	(unwind_protect::add (elem *)): New method.
-	(unwind_protect::add (void (*)(void *), void *)): Reimplement.
-	(unwind_protect::run (void)): Rewrite.
-	(unwind_protect::discard (void)): Rewrite.
-	(unwind_protect::protect_var): Rewrite.
-	(unwind_protect::protect_mem): Rewrite.
-	(unwind_protect::add_action_var): New method.
-	* unwind-prot.cc (unwind_protect::restore_mem): Remove.
-
-2009-06-24  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* oct-map.cc (Octave_map::squeeze, Octave_map::permute,
-	Octave_map::transpose, Octave_map::reshape, Octave_map::concat,
-	Octave_map::index): Add tests for preservation of key order in
-	struct arrays.
-
-2009-06-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (get_concat_class): Use empty string as zero value.
-	(tm_row_const_rep::tm_row_const_rep): Initialize class_nm to empty
-	string.
-	(tm_const::tm_const): Ditto.
-
-2009-06-24  John W. Eaton  <jwe@octave.org>
-
-	* pt-assign.cc (former_built_in_variables): Remove "ans" from the list.
-
-2009-06-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind-prot.h (restore_var, restore_mem): Hide also copy
-	constructors.
-
-2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* quit.h (octave_quit_exception): Delete.
-	(exit_status, quitting_gracefully): New globals.
-	* quit.cc: Initialize them.
-	(Fquit): Set the globals, simulate interrupt.
-	(main_loop): Handle exit properly.
-	* octave.cc (execute_eval_option_code): Ditto.
-	(execute_command_line_file): Ditto.
-	* pt-eval.cc (do_unwind_protect_cleanup_code):
-	Fix order of unwind_protect calls.
-
-2009-06-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::squeeze, Octave_map::permute,
-	Octave_map::transpose, Octave_map::reshape, Octave_map::concat):
-	Preserve key order.
-
-2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-eval.cc (tree_evaluator::visit_try_catch_command): Simplify.
-
-2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc: Modernize unwind_protect usage.
-	* DLD-FUNCTIONS/daspk.cc: Ditto.
-	* DLD-FUNCTIONS/dasrt.cc: Ditto.
-	* DLD-FUNCTIONS/dassl.cc: Ditto.
-	* DLD-FUNCTIONS/eigs.cc: Ditto.
-	* DLD-FUNCTIONS/lsode.cc: Ditto.
-	* DLD-FUNCTIONS/quad.cc: Ditto.
-	* DLD-FUNCTIONS/rand.cc: Ditto.
-	* debug.cc: Ditto.
-	* dynamic-ld.cc: Ditto.
-	* error.cc: Ditto.
-	* graphics.cc: Ditto.
-	* help.cc: Ditto.
-	* input.cc: Ditto.
-	* load-path.cc: Ditto.
-	* ls-mat4.cc: Ditto.
-	* ls-mat5.cc: Ditto.
-	* mex.cc: Ditto.
-	* oct-hist.cc: Ditto.
-	* octave.cc: Ditto.
-	* ov-builtin.cc: Ditto.
-	* ov-class.cc: Ditto.
-	* ov-fcn-handle.cc: Ditto.
-	* ov-list.cc: Ditto.
-	* ov-mex-fcn.cc: Ditto.
-	* ov-struct.cc: Ditto.
-	* ov-usr-fcn.cc: Ditto.
-	* pager.cc: Ditto.
-	* pr-output.cc: Ditto.
-	* pt-arg-list.cc: Ditto.
-	* pt-eval.cc: Ditto.
-	* toplev.cc: Ditto.
-	* variables.cc: Ditto.
-
-2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* unwind-prot.h (unwind_protect): Rewrite.
-	(unwind_protect::protect_var): New class.
-	(unwind_protect::protect_mem): New class.
-	* unwind-prot.cc (unwind_protect): Rewrite.
-	* pt-eval.cc (tree_evaluator::visit_try_catch_command): Delete frame
-	properly.
-
-2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::all_strings): Avoid duplicate conversions.
-
-2009-06-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (Fsubsasgn): Uniquify shared value before assigning to it.
-
-2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc: Update docs.
-
-2009-06-17  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_octave_value::get_data):
-	If octave_value::mex_get_data returns a valid pointer, mark it as
-	foreign and return it instead of enumerating the types that can be
-	handled directly.
-
-	* ov-re-mat.h (octave_matrix::mex_get_data): New function.
-	* ov-bool-mat.h (octave_bool_matrix::mex_get_data): Ditto.
-	* ov-flt-re-mat.h (octave_float_matrix::mex_get_data): Ditto.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::mex_get_data): Ditto.
-	* ov-base-mat.h (octave_base_matrix::mex_get_data): Delete.
-
-2009-06-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (symbol_table::set_scope_and_context): Avoid checking
-	error_state for setting context.
-
-2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.h (octave_matrix::octave_matrix (const Array<octave_idx_type>&,
-	bool)): New constructor.
-	* ov.cc (octave_value::octave_value (const Array<octave_idx_type>&,
-	bool)): New constructor.
-	* ov.h: Declare it.
-
-	* data.cc (Fsort, F__sort_rows_idx__): Use the new constructor.
-	* DLD-FUNCTIONS/find.cc (Ffind): Ditto.
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Ditto.
-	* DLD-FUNCTIONS/max.cc (Fmax, Fmin, Fcummax, Fcummin): Ditto.
-
-2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.h (octave_base_matrix::idx_cache): New member field.
-	(octave_base_matrix::typ): Turn to MatrixType *.
-	(octave_base_matrix::octave_base_matrix (...)): Update constructors.
-	(octave_base_matrix::clear_cached_info,
-	octave_base_matrix::set_idx_cache): New member functions.
-	* ov-base-mat.cc (octave_base_matrix::assign,
-	octave_base_matrix::delete_elements): Call clear_cached_info here.
-	* ov-re-mat.h (octave_matrix::index_vector): Use idx_cache.
-	* ov-flt-re-mat.h (octave_float_matrix::index_vector): Ditto.
-	* ov-bool-mat.h (octave_bool_matrix::index_vector): Ditto.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::index_vector): Ditto.
-	* ov-range.h (octave_range::idx_cache): New member field.
-	(octave_range::octave_range (...)): Update constructors.
-	(octave_range::clear_cached_info,
-	octave_base_matrix::set_idx_cache): New member functions.
-	(octave_range::idx_vector): Use idx_cache.
-
-2009-06-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (axes::properties::xtick, axes::properties::ytick,
-	axes::properties::ztick, axes::properties::xticklabelmode,
-	axes::properties::yticklabelmode, axes::properties::zticklabelmode):
-	Add 'u' modifier to enable updaters.
-	(axes::properties::calc_ticklabels): New function to update tick
-	labels.
-	(axes::properties::update_xtick, axes::properties::update_ytick,
-	axes::properties::update_ztick,
-	axes::properties::update_xticklabelmode,
-	axes::properties::update_yticklabelmode,
-	axes::properties::update_zticklabelmode): Add updaters to update tick
-	labels correctly.
-	(axes::properties::update_xlim, axes::properties::update_ylim,
-	axes::properties::update_zlim): Update tick labels.
-	* graphics.cc (axes::properties::calc_ticklabels): New function to
-	update tick labels.
-
-2009-06-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Support character array lookup.
-
-2009-06-12  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (make_fcn_handle): Accept operators which have
-	corresponding functions and make function handles using the names.
-	New test.
-
-2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): New template function.
-	(Flookup): Extend to support b and m options, improve diagnostic.
-	Refactor.
-
-2009-06-12  Kai NODA  <nodakai@gmail.com>
-
-	* ls-mat4.h: Fix include guard
-	* ov-type-conv.h: Add missing include guard.
-
-2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (BINARY_ASSOC_OP_DEFUN_BODY): New helper macro.
-	(Fplus, Fmtimes, Ftimes, Fand, For): Allow >= 1 arguments.
-
-2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::sort (Array<octave_idx_type>&)): Simplify.
-
-2009-06-11  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc: Keep long options alphabetized.
-
-	* display.h (display_info::no_window_system): New static function.
-	(display_info::display_info, display_info::init,
-	display_info::instance_ok): New argument, QUERY.
-	(display_info::init): Skip query if QUERY is false.
-
-	* octave.cc (long_opts, octave_main): Handle --no-window-system option.
-	(NO_WINDOW_SYSTEM_OPTION): New defined value.
-	(usage_string, verbose_usage): Mention --no-window-system option.
-
-2009-06-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-class.cc (octave_class::subsref): Set up proper nargout for call to subsref
-	method.
-	* ov-class.cc (octave_class::subsref): Unpack cs-list and setup nargin
-	for call to subsasgn.
-
-2009-06-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.cc (octave_base_value::numel (const octave_value_list&),
-	octave_base_value::size): New virtual methods.
-	* ov-base.h: Declare them.
-	* ov.h (octave_value::numel (const octave_value_list&)): New method.
-	(octave_value::size): Forward to octave_base_value.
-	* ov-class.cc (octave_class::numel (const octave_value_list&),
-	octave_base_value::size): New method overrides.
-	* ov-class.h: Declare them.
-	* pt-idx.cc (tree_index_expression::lvalue): Rewrite.
-	* data.cc (Fnumel): Allow indexed query.
-
-2009-06-10  John W. Eaton  <jwe@octave.org>
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::dup): Don't convert to
-	tree_constant object here.  Do inherit from current symbol table
-	scope and context.  New test.
-
-	* lex.l	(handle_identifier): Set lexer_flags.looking_for_object_index
-	false if identifier is a keyword.
-	({IDENT}{S}*): Don't set lexer_flags.looking_for_object_index here.
-
-2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* octave.cc (octave_main): Call initialize_command_input
-	conditionally. Move line_editing update in front of it.
-	Call command_editor::force_default_editor if not line_editing.
-
-2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Flog2): Fix tests.
-
-2009-06-08  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_exist): Returnn 1 for function handles and
-	inline function objects.
-
-2009-06-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* symtab.h (symbol_table::do_clear_global,
-	symbol_table::do_clear_global_pattern): Properly erase from both local
-	and global table.
-
-2009-06-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (Fclear): Clear also globals when called without
-	arguments.
-
-2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* graphics.cc (color_property::do_set): Allow a wider range of types.
-
-2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Fix docs. Improve second argument
-	handling. Add regression tests.
-
-2009-06-06  Rik  <rdrider0-list@yahoo.com>
-
-	* data.cc: Update documentation for 'complex' function
-
-2009-06-06  Rik  <rdrider0-list@yahoo.com>
-
-	* load-save.cc: Update documentation for NA and isna functions
-
-2009-06-06  Rik  <rdrider0-list@yahoo.com>
-
-	* load-save.cc: Update documentation for load and save
-
-2009-06-06  Rik  <rdrider0-list@yahoo.com>
-
-	* pr-output.cc: Update documentation for 'format'
-
-2009-06-05  Rik  <rdrider0-list@yahoo.com>
-
-	* variables.cc: Update documentation for 'who' family of functions
-
-2009-06-03  Rik  <rdrider0-list@yahoo.com>
-
-	* input.cc: Correct documentation for keyboard function
-
-2009-06-02  Rob Mahurin  <rob@utk.edu>
-
-	* Makefile.in: Add CARBON_LIBS to OCTINTERP_LINK_DEPS.
-	From Bernard Desgraups <bdesgraupes@orange.fr>.
-
-2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.cc (octave_base_value::numeric_assign): Gripe when no index
-	given.
-	* ov-cell.cc (octave_cell::subsasgn): Ditto.
-	* ov-struct.cc (octave_struct::subsasgn): Ditto.
-	* ov-list.cc (octave_list::subsasgn): Ditto.
-
-2009-05-28  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_files): Avoid shadow warning from GCC.
-
-2009-05-27  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (write_image):
-	Bail out if given indexed image.
-
-2009-05-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (encode_map): Fix RGB color
-	construction.
-
-2009-05-26  John W. Eaton  <jwe@octave.org>
-
-	* load-path.h, load-path.cc (load_path::files, load_path::do_files):
-	New arg, OMIT_EXTS.
-	* help.cc (F__list_functions__): Call load_path::files with
-	omit_exts set to true.
-
-	* symtab.h
-	(symbol_table::symbol_record::symbol_record_rep::is_variable):
-	Use "! is_local ()" instead of storage_class != local.
-	(symbol_table::do_variable_names): Only add variables to the list.
-	(symbol_table::unmark_forced_variables): New static function
-	* variables.cc (do_who): Use is_variable instead of is_defined.
-	Also limit output to variables when using regexp pattern.
-	* octave.cc (unmark_forced_vars): Delete.
-	(execute_eval_option_code): Don't add unmark_forced_vars to
-	unwind_protect stack here.
-	* toplev.cc (main_loop): Add symbol_table::unmark_forced_variables
-	to the unwind_protect stack here.
-	* input.cc (get_debug_input): Likewise.
-	* parse.y (parse_fcn_file, eval_string): Likewise.
-
-2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* toplev.h (quit_allowed): New global variable.
-	* toplev.cc (quit_allowed): Declare it.
-	(Fquit): Raise error if quitting is not allowed.
-	* octave.cc (octave_main): if running as embedded, disable quit by
-	default.
-
-2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* variables.cc (do_who): Only output symbols with a defined value.
-
-2009-05-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* toplev.h (main_loop): Tag with OCTINTERP_API.
-	* input.h (octave_read, get_input_from_file, get_input_from_stdin):
-	Ditto.
-	* lex.h (create_buffer, current_buffer, switch_to_buffer,
-	delete_buffer, restore_input_buffer, delete_input_buffer): Ditto.
-
-2009-05-22  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* ov-class.h, ov-class.cc (octave_class::clear_exemplar_map):
-	New function.
-	* symtab.h (symbol_record::clear_objects,
-	symbol_record::do_clear_objects): New functions.
-	* variables.cc (do_matlab_compatible_clear, clear):
-	Handle -classes option.
-
-2009-05-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::assign (const
-	octave_value_list, typename MT::element_type)): Avoid out of bounds
-	assignments.
-
-2009-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.cc (figure::properties::get_boundingbox,
-	figure::properties::set_boundingbox): Get screen size from root
-	object.
-	(convert_position): Get screen resolution from root object and remove
-	unneeded "backend" argument.
-	(axes::properties::get_boundingbox,
-	figure::properties::get_boundingbox,
-	figure::properties::set_boundingbox): Remove unneeded backend argument
-	to convert_position call.
-
-	* debug.h (class bp_table): Tag with OCTINTERP_API.
-	* input.h (Vdebugging): Ditto.
-	* pt-eval.h (class tree_evaluator): Ditto.
-	* toplev.h (class octave_call_stack): Ditto.
-
-	* file-io.cc (mkstemp): Add mktemp-based implementation of mkstemp on
-	platforms that do not have it (mkstemp is required by the new help
-	system).
-
-	* TEMPLATE-INST/Array-os.cc: Add "extern template" declaration for
-	Array<octave_idx_type> to avoid implicit instantiation (and duplicate
-	symbols at link-time) [Win32]
-
-2009-05-20  John W. Eaton  <jwe@octave.org>
-
-	* pt-assign.cc (maybe_warn_former_built_in_variable):
-	Set initialized to true when done initializing vars set.
-	From Michael Goffioul  <michael.goffioul@gmail.com>.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-typeinfo.h
-	(octave_value_typeinfo::unary_class_ops,
-	octave_value_typeinfo::unary_ops,
-	octave_value_typeinfo::non_const_unary_ops,
-	octave_value_typeinfo::binary_class_ops,
-	octave_value_typeinfo::binary_ops,
-	octave_value_typeinfo::compound_binary_class_ops,
-	octave_value_typeinfo::compound_binary_ops,
-	octave_value_typeinfo::cat_ops,
-	octave_value_typeinfo::assign_ops,
-	octave_value_typeinfo::assignany_ops,
-	octave_value_typeinfo::pref_assign_conv,
-	octave_value_typeinfo::type_conv_ops,
-	octave_value_typeinfo::widening_ops): Declare as Array<void *>.
-	* ov-typeinfo.cc: Reflect changes.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* toplev.h (octave_exit_func): New typedef.
-	(octave_exit): Change to octave_exit_func.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-typeinfo.cc: Don't include oct-obj.h.
-
-2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* toplev.h (octave_quit_exception): New class.
-	(octave_exit): New global variable.
-	* toplev.cc (octave_exit): Initialize to ::exit.
-	(clean_up_and_exit): Call octave_exit if set.
-	(Fquit): Raise octave_quit_exception to quit.
-	(main_loop): Catch octave_quit_exception.
-	* octave.cc (execute_command_line_file): Ditto.
-	(execute_eval_option_code): Ditto.
-
-2009-05-19  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (F__fltk_redraw__): New function.
-	(F__init_fltk__): Call add_input_event_hook with feval to add
-	__fltk_redraw__ to the list of even hook functions to call.
-	Call mlock when initializing.
-	(F__remove_fltk__): Call remove_input_event_hook with feval to
-	remove __fltk_redraw__ from the list of event hook functions.
-	Unlock __init_fltk__ when shutting down.
-
-	* input.cc (Finput_event_hook): Delete.
-	(input_event_hook): Handle set of functions instead of just one.
-	(Fadd_input_event_hook, Fremove_input_event_hook): New functions.
-
-2009-05-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in: Add X11_LIBS to OCTINTERP_LINK_DEPS.
-
-2009-05-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* TEMPLATE-INST/Array-tc.cc: Change #include.
-
-2009-05-15  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* ov-class.cc (octave_class::exemplar_info): Fix typo in error message.
-	* ov-class.cc (Fmethods): Methods returns cell array.
-	* ls-mat5.cc (read_mat5_binary_element):
-	Construct exemplar array and ensure inheritance is correct.
-
-2009-05-15  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (Ferror): Handle error struct argument.
-
-	* ls-mat5.cc (save_mat5_binary_element): Avoid multiple calls to
-	contents method.  From David Bateman <dbateman@free.fr>.
-	(save_mat5_element_length): Use const Cell to avoid making copies
-	when indexing.
-
-2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-stream.cc: Don't instantiate Array2<read_fptr>.
-	(octave_stream::read): Make read_fptr_table a static 2d array.
-	(FILL_TABLE_ROW): Update.
-
-2009-05-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (F__accumarray_sum__): Optimize the constant range case.
-
-2009-05-11  John W. Eaton  <jwe@octave.org>
-
-	* sparse-xdiv.cc (do_rightdiv_sm_dm, do_leftdiv_dm_sm):
-	Avoid apparent MSVC bug with typedef.
-
-	* Makefile.in (install-lib): Remove
-	$(DESTDIR)$(octlibdir)/$(SHLLIBPRE)octinterp.$(SHLLIB_VER), not
-	$(DESTDIR)$(octlibdir)/$(SHLPRE)octinterp.$(SHLEXT_VER).
-
-2009-05-08  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
-
-	* data.cc (Fissorted): Fix typo in documentation entry.
-
-2009-05-07  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* ov-class.h, ov-class.cc (octave_class::reconstruct_exemplar):
-	New function.
-	* ov-class.cc (octave_class::load_binary, octave_class::load_hdf5,
-	octave_class::load_ascii): Construct exemplar table and ensure
-	inheritance is correct.
-	* ov-struct.cc (struct): Return struct from object.
-
-2009-05-07  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (base_graphics_object::set): Undo previous change.
-	(base_properties::set (const caseless_str&, const octave_value&):
-	New virtual function.
-	(base_properties::set (const caseless_str&, const std::string&,
-	const octave_value&)): No longer virtual.
-
-	* toplev.cc (octave_config_info): Remove F2C and F2CFLAGS from the
-	config infor struct.
-	* oct-conf.h.in (OCTAVE_CONF_F2CFLAGS, OCTAVE_CONF_F2C):
-	Delete definitions.
-
-2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
-
-	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
-
-2009-05-07  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk (emit_declarations): Emit decls for static
-	has_property functions.
-	(emit_source): Add class name argument to base_properties::set
-	function.  Pass class name to set_dynamic and
-	base_properties::set.  Emit definitions for has_property
-	functions.
-	* graphics.h.in, graphics.cc
-	(base_properties::set, base_properties::set_dynamic):
-	New argument CNAME.
-	(base_properties::all_dynamic_properties): New static data member.
-	(base_properties::has_dynamic_property): New static function.
-	(base_graphics_object::set): Pass class name to
-	base_properties::set function.
-	(property_list::set): Check for invalid property names.
-
-2009-05-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (Fdouble): Fix order of branches.
-
-2009-05-05  John Swensen  <jpswensen@comcast.net>
-
-	* debug.h, debug.cc (breakpoints): Rename from bp_map, use a
-	std::set instead of a std::map object.  Change all uses.
-	(bp_table::do_get_breakpoint_list): Simplify.
-
-2009-05-05  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* ov-class.h, ov-class.cc (octave_class::reconstruct_parents):
-	New function.
-	* ov-class.cc (octave_class::load_binary, octave_class::load_hdf5):
-	Contstruct parent list.
-	(get_current_method_class): Clean up method class extraction.
-
-2009-05-05  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (array_property::validate): Require object to be any
-	numeric type, not necessarily a double precision value.
-
-	* variables.cc (set_internal_variable): Pass NM in call to error.
-
-2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
-
-	* utils.cc: Don't define HAVE_C99_VSNPRINTF here.
-
-2009-05-01  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (Vlast_error_file, Vlast_error_name, Vlast_error_line,
-	Vlast_error_column): Delete.
-	(Vlast_error_stack): New static variable.
-	(initialize_last_error_stack): New static function.
-	(verror, Frethrow, Flasterror): Set or use Vlast_error_stack, not
-	Vlast_error_file, etc.
-
-2009-04-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (octave_class::dotref): Handle empty parent class.
-	(octave_class::get_current_method_class): Allow result to be empty.
-	(called_from_builtin): New static function.
-	(octave_class::subsref, octave_class::subsasgn): Use it.
-
-2009-04-23  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (Fclass): Check newly constructed classes against
-	the first constructed object of the class.
-
-	* ov-class.h, ov-class.cc (octave_class::exmplar_info): New class.
-	(exemplar_map): New static data member.
-	(exemplar_iterator, exemplar_const_iterator): New typedefs.
-
-	* ov-class.h (octave_class::nparents,
-	octave_class::parent_class_name_list): New functions.
-	* ov.h (octave_base_value::nparents,
-	octave_base_value::parent_class_name_list): New functions.
-	* ov-base.h, ov-base.cc (octave_base_value::nparents,
-	octave_base_value::parent_class_name_list): New functions.
-	(parent_class_names): Error if called for wrong type argument.
-
-	* symtab.cc (load_out_of_date_fcn): New arg, dispatch_type.
-	(out_of_date_check_internal): Pass dispatch type to
-	load_out_of_date_fcn.
-
-2009-04-22  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-int.cc (octave_base_int_helper<T, false,
-	false>::char_value_out_of_range): Correct result for specialization.
-
-	* ov-class.cc (octave_class::dotref, octave_class::subsasgn):
-	Protect against possibly invalid octave_value -> string conversions.
-
-2009-04-22  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* variables.cc (symbol_exist): Also return 1 for objects.
-	* ov-base.h (octave_base_value::assign): New virtual function.
-	* ov-class.h (octave_class::assign): New function.
-	* ov-class.cc (octave_class::find_parent_class): Simplify.
-	(octave_class::octave_class): Don't allow duplicate parent classes.
-	(octave_class::subsasgn): Allow cls = method (cls, value) to work
-	properly when method is a parent-class method.
-	(get_method_class): New static function.
-	(octave_class:subsasgn, octave_class::dotref): Use it.
-	(F__isa_parent__): New function.
-
-2009-04-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-range.cc (octave_range::char_array_value): New virtual function
-	override.
-	* ov-range.h: Declare it.
-
-2009-04-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
-	Update class name even for all-zeros elements.
-	(get_concat_class): Update the default value if possible.
-
-2009-04-21  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Fassignin): Add missing unwind_protect frame.
-
-	* toplev.h (push (symbol_table::scope_id, symbol_table::context_id)):
-	New function.
-
-	* toplev.cc (main_loop): Don't call symbol_table::reset_scope.
-
-	* mex.cc (mexGetVariable, mexPutVariable): Use unwind_protect to
-	restore call stack and scope.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Don't use symbol_table::push_scope.
-	* variablees.cc (do_who): Likewise.  Use octave_call_stack and
-	unwind_protect to manage change in scope.
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
-	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5):
-	Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-
-	* symtab.h (erase_scope (void*)): New function, for unwind_protect.
-	(symbol_table::push_scope, symbol_table::pop_scope,
-	symbol_table::reset_scope): Delete.
-	(symbol_table::scope_stack): Delete static member.
-	* symtab.cc (symbol_table::scope_stack): Delete definition.
-
-2009-04-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.h (Octave_map::contents (const_iterator) const,
-	Octave_map::contents (iterator)): Simplify.
-
-2009-04-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (Octave_map::assign (const octave_value_list&, const
-	std::string&, const Cell&)): Fix & simplify.
-	(common_size): Remove.
-
-2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-idx.cc (make_value_list): Gripe on magic end query for undefined
-	variables.
-
-2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (same_sign): New helper function.
-	(elem_xpow (double, const Range&), elem_xpow (const Complex&, const Range&)):
-	Only optimize monotonic-magnitude integer ranges, start always from
-	the smaller end.
-
-2008-04-11  David Bateman  <dbateman@free.fr>
-
-	* ov-cell.cc (Fstruct2cell): Treat possible trailing singleton for
-	creation of cell array from column structure vector.
-
-2009-04-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::subsasgn): Fix reference counting
-	optimization.
-
-2009-04-08  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (rehash_internal): New function.
-	(Frehash): Use it.
-	(Fpath, Faddpath, Frmpath): Call rehash_internal if path is modified.
-
-2009-04-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (elem_xpow (double, const Range&),
-	elem_xpow (const Complex&, const Range&)): New functions.
-	* xpow.h: Declare them.
-	* OPERATORS/op-range.cc: Define scalar .^ range and complex .^ range &
-	install them.
-
-2009-04-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.cc (octave_struct::subsasgn): Fix reference counting
-	optimization.
-
-2008-04-03  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/max.cc (MINMAX_SPARSE_BODY): Allow sparse boolean
-	values.
-
-2009-04-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-str-mat.cc (default_numeric_conversion_function):
-	Create an octave_scalar if possible.
-
-2009-03-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::button_press):
-	Don't pass arbitrary input to fl_message as a format string.
-
-2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-eval.cc (do_unwind_protect_cleanup_code): Protect also
-	octave_interrupt_state.
-
-2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Index n-d arrays along the
-	last dimension.
-
-2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/balance.cc (Fbalance): Fix order of output args.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc
-	(find_nonzero_elem_idx (const Array<T>&, ...)): Move dimensions
-	fixup to liboctave.
-
-2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/find.cc
-	(find_nonzero_elem_idx (const Array<T>&, ...)): Simplify.
-	Instantiate for bool and octave_int types.
-	(find_nonzero_elem_idx (const Sparse<T>&, ...)):
-	Instantiate for bool.
-	(Ffind): Handle bool and octave_int cases.
-
-2009-03-25  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.55+.
-	(OCTAVE_API_VERSION): Now api-v37+.
-
-	* version.h (OCTAVE_VERSION): Now 3.1.55.
-	(OCTAVE_API_VERSION): Now api-v37.
-	(OCTAVE_RELEASE_DATE): Now 2009-03-25.
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Also return
-	[](0x0) if the array has 0 rows and it is not a column vector.
-
-	* oct-stream.cc (octave_stream::write (const Array<T>&,
-	octave_idx_type, oct_data_conv::data_type, octave_idx_type,
-	oct_mach_info::float_format)): Seek to skip if still inside bounds
-	of existing file.  Otherwise, write NUL to skip.
-
-	* Makefile.in (%.df : %.cc): Write source file name to output,
-	wrapped in XDEFUN_FILE_NAME macro.
-	* mkbuiltins: Provide definition for XDEFUN_FILE_NAME.
-	* mkgendoc: Likeiwse.
-	(XDEFUN_DLD_INTERNAL, XDEFUNX_DLD_INTERNAL, XDEFUN_INTERNAL,
-	XDEFCONSTFUN_INTERNAL, XDEFUNX_INTERNAL, XDEFVAR_INTERNAL,
-	XDEFCONST_INTERNAL): Pass file_name to print_doc_string.
-	(print_doc_string): New arg, FILE_NAME.  Print file name as
-	comment.
-
-2009-03-24  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (F__parent_classes__): New function.
-
-2009-03-24  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* ov-class.h, ov-class.cc (octave_class::octave_class (const
-	Octave_map&, const std::string&, const octave_value_list&)):
-	New constructor.
-	(octave_class::find_parent_class, octave_class::parent_classes):
-	New functions.
-	(octave_class::dotref): Also look in parent class.
-	(Fclass): Handle parent class arguments.
-
-	* ov-base.h (octave_base_value::get_parent_list,
-	octave_base_value::parent_classes): New virtual functions.
-
-	* load-path.h, load-path.cc (load_path::parent_map): New data member.
-	(load_path::add_to_parent_map): New static function.
-	(load_path::do_add_to_parent_map): New member function.
-	(load_path::do_find_method): Also look in parent classes for methods.
-	(load_path::parent_map_type, load_path::const_parent_map_iterator,
-	load_path::parent_map_iterator): New typedefs.
-
-2009-03-23  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h
-	(symbol_table::symbol_record::symobl_recoord_rep::is_variable):
-	Also return true if symbol is tagged as a variable.
-	(symbol_table::symbol_record::symobl_recoord_rep::force_variable):
-	Don't set variable value.
-	(symbol_table::symbol_record::symobl_recoord_rep::clear_forced,
-	symbol_table::symbol_record::clear_forced): Delete.
-	(symbol_table::unmark_forced_variables): Rename from
-	symbol_table::clear_forced_variables.
-	(symbol_table::do_unmark_forced_variables): Rename from
-	symbol_table::do_clear_forced_variables.
-	* parse.y (make_script, finish_function): Call
-	symbol_table::unmark_forced_variables instead of
-	symbol_table::clear_forced_variables.
-	* octave.cc (unmark_forced_vars): New function.
-	(execute_eval_option_code): Add it to the unwind-protect stack.
-
-2009-03-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-eval.cc (tree_evaluator::visit_simple_for_command):
-	Remove struct branch, handle structs by the generic code.
-	(tree_evaluator::visit_complex_for_command):
-	Add missing const qualifiers.
-
-2009-03-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-diag.cc: Add missing include.
-	* sparse-xdiv.cc: Ditto.
-	* DLD-FUNCTIONS/__glpk__.cc: Ditto.
-	* DLD-FUNCTIONS/__lin_interpn__.cc: Ditto.
-	* DLD-FUNCTIONS/__voronoi__.cc: Ditto.
-
-2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (octave_matrix::load_ascii): Simplify.
-	* ov-flt-re-mat.cc (octave_float_matrix::load_ascii): Simplify.
-	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Simplify.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::load_ascii): Simplify.
-
-2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (octave_matrix::isnan, octave_matrix::isinf,
-	octave_matrix::finite): Simplify.
-	* ov-flt-re-mat.cc (octave_float_matrix::isnan,
-	octave_float_matrix::isinf, octave_float_matrix::finite): Simplify.
-	* ov-cx-mat.cc (octave_complex_matrix::isnan,
-	octave_complex_matrix::isinf, octave_complex_matrix::finite):
-	Simplify.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::isnan,
-	octave_float_complex_matrix::isinf,
-	octave_float_complex_matrix::finite): Simplify.
-
-2009-03-19  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* ls-oct-ascii.cc (extract_keyword): Replace loop with call to
-	read_until_newline to avoid leaving stray '\r' in stream when
-	reading files with CRLF line endings.
-
-2009-03-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc
-	(scalar_col_helper, scalar_col_helper_def, scalar_col_helper_nda,
-	scalar_query_helper): New classes.
-	(make_col_helper): New function.
-	(Fcellfun): Use col_helper classes for UniformOutput. Avoid copying by
-	using const variables.
-
-2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-b-bm.cc: Add missing INSTALL_BINOPs.
-	* OPERATORS/op-bm-b.cc: Ditto.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-m-m.cc: Ditto.
-
-2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::octave_value): Move to ov.h
-	* ov.h (octave_value::octave_value): Implement fast inline constructor
-	using a static rep.
-
-2009-03-15  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): New DLD function.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::compound_binary_op): Support bool compound ops.
-	* ov.cc (do_binary_op, decompose_binary_op, binary_op_fcn_name):
-	Ditto.
-	* pt-cbinop.cc (strip_not, simplify_and_or_op): New funcs.
-	(maybe_compound_binary_expression): Support bool compound ops.
-	* OPERATORS/op-int.h: Support bool compound ops.
-	* OPERATORS/op-b-bm.cc: Ditto.
-	* OPERATORS/op-bm-b.cc: Ditto.
-	* OPERATORS/op-bm-bm.cc: Ditto.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-m-m.cc: Ditto.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (xpow (const NDArray&, double), xpow (const ComplexNDArray&, double),
-	xpow (const FloatNDArray&, float), xpow (const FloatComplexNDArray&,
-	float)): Use xisint for testing ints. Optimize w.r.t int exponents.
-
-2009-03-13  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (maybe_warn_assign_as_truth_value, make_binary_op,
-	maybe_warn_variable_switch_label, maybe_warn_associativity_change):
-	Print file and line number info if available.
-	* lex.l (gripe_matlab_incompatible): Likewise.
-
-	* error.cc (pr_where): Use octave_call_stack::backtrace to print
-	complete stack trace at once.  Don't attempt to print code.
-	(error_2): Set error_state to 0 before calling pr_where.
-	(warning_1): Switch sense of test on symbol_table::at_top_level.
-	Call pr_where after printing primary warning message.
-
-2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-range.h (octave_range::octave_range (const Range&)): Allow
-	constructing from invalid range op result.
-	* ov-range.cc (octave_range::try_narrowing_conversion): Validate
-	invalid range op results.
-	* data.cc (fill_matrix): Return packed form (zero-step range) if
-	possible.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* DLD-FUNCTIONS/lu.cc (lu): Call fact.Pr_mat () and fact.Pc_mat ()
-	to return permutation matrices in the sparse case.
-
-2009-03-12  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat-ascii.cc (get_mat_data_input_line): If we are looking at
-	'\r' or '\n', skip current line ending instead of skipping until
-	the next.
-
-2009-03-12  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.cc: Fix default "papersize" property value.
-
-2009-03-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-flt-perm.h, ov-flt-perm.cc: Remove sources.
-	* ov.h, ov.cc (octave_value::octave_value (const PermMatrix&)): Remove
-	use "single" argument.
-	* ov.cc (install_types): Update.
-	* xpow.cc, xpow.h (xpow (PermMatrix, float)): Remove.
-	* ov-base-diag.cc (octave_base_diag::do_index_op): Remove permutation
-	creating block.
-	* ov-re-diag.cc (octave_diag_matrix::do_index_op): Move it here.
-	* ov-re-diag.h (octave_diag_matrix::do_index_op): New decl.
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Update.
-	* DLD-FUNCTIONS/inv.cc (Finv): Update.
-	* DLD-FUNCTIONS/pinv.cc (Fpinv): Update.
-
-	* OPERATORS/op-fcm-pm.cc <-- OPERATORS/op-fcm-fpm.cc
-	* OPERATORS/op-fcm-pm.cc: Update.
-	* OPERATORS/op-fm-pm.cc <-- OPERATORS/op-fm-fpm.cc
-	* OPERATORS/op-fm-pm.cc: Update.
-	* OPERATORS/op-pm-fcm.cc <-- OPERATORS/op-fpm-fcm.cc
-	* OPERATORS/op-pm-fcm.cc: Update.
-	* OPERATORS/op-pm-fm.cc <-- OPERATORS/op-fpm-fm.cc
-	* OPERATORS/op-pm-fm.cc: Update.
-	* OPERATORS/op-pm-pm.cc: Update.
-	* OPERATORS/op-pm-template.cc: Update.
-
-2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc (xpow (const PermMatrix&, double), xpow (const PermMatrix&,
-	float)): New functions.
-	* xpow.h: Declare them.
-	* DLD-FUNCTIONS/op-pm-pm.cc: Support permutation matrix ^ scalar.
-	* DLD-FUNCTIONS/op-fpm-fpm.cc: Ditto.
-
-2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-ch-mat.cc (octave_char_matrix::double_value,
-	octave_char_matrix::float_value, octave_char_matrix::complex_value,
-	octave_char_matrix::float_complex_value): Cast to unsigned char.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* OPERATORS/op-pm-sm.cc (mul_pm_sm): New Octave binding for
-	perm * sparse.
-	(ldiv_pm_sm): New Octave binding for perm \ sparse.
-	(mul_sm_pm): New Octave binding for sparse * perm.
-	(div_sm_pm): New Octave binding for sparse / perm.
-	(install_pm_sm_ops): Install the above bindings.
-
-	* OPERATORS/op-pm-scm.cc (mul_pm_scm): New Octave binding for
-	perm * sparse complex.
-	(ldiv_pm_scm): New Octave binding for perm \ sparse complex.
-	(mul_scm_pm): New Octave binding for sparse complex * perm.
-	(div_scm_pm): New Octave binding for sparse complex / perm.
-	(install_pm_scm_ops): Install the above bindings.
-
-	* Makefile.in (PERM_OP_XSRC): Add op-pm-sm.cc and op-pm-scm.cc for
-	operations between permutations and sparse matrices.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): New override
-	for find on PermMatrix.
-	(find): Add a branch testing arg.is_perm_matrix () and calling the
-	above override.
-
-2009-03-10  John W. Eaton  <jwe@octave.org>
-
-	* c-file-ptr-stream.cc, dynamic-ld.cc, error.cc, lex.l, pager.cc,
-	zfstream.cc: Include <iostream>.
-	* zfstream.h: Include <iosfwd> instead of <istream> and <ostream>.
-	* c-file-ptr-stream.h, help.h, load-path.h, load-save.h,
-	ls-ascii-helper.h, oct-iostrm.h, oct-stream.h, ov-base-diag.h,
-	ov-base-int.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
-	ov-base.h, ov-bool-mat.h, ov-bool-sparse.h, ov-bool.h, ov-cell.h,
-	ov-ch-mat.h, ov-class.h, ov-colon.h, ov-complex.h, ov-cs-list.h,
-	ov-cx-mat.h, ov-cx-sparse.h, ov-fcn-handle.h, ov-fcn-inline.h,
-	ov-float.h, ov-flt-complex.h, ov-flt-cx-mat.h, ov-flt-re-mat.h,
-	ov-intx.h, ov-list.h, ov-range.h, ov-re-mat.h, ov-re-sparse.h,
-	ov-scalar.h, ov-str-mat.h, ov-struct.h, ov.h, pager.h,
-	pr-output.h, procstream.h, pt-assign.h, pt-cell.h, pt-const.h,
-	pt-fcn-handle.h, pt-id.h, pt-mat.h, pt.h, utils.h:
-	Include <iosfwd> instead of <iosstream>.
-
-2009-03-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fsize_equal): Allow single argument call.
-	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Update docs.
-
-2009-03-09  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* ls-ascii-helper.h, ls-ascii-helper.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* load-save.cc (Fload): Open all files in binary mode.
-	* ov-range.cc (load_ascii): Explicitly handle CR and CRLF line endings.
-	* ov-fcn-handle.cc (load_ascii): Likewise.
-	* ov-fcn-inline.cc (load_ascii): Likewise.
-	* ov-str-mat.cc (load_ascii): Likewise.
-	* ls-mat-ascii.cc (get_mat_data_input_line): Likewise.
-	* ls-oct-ascii.cc (extract_keyword, read_ascii_data): Likewise.
-	* ls-oct-ascii.h (extract_keyword): Likewise.
-
-2009-03-09  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (OCTAVE_DEFAULT_FONTNAME): New macro, defaults to "*".
-	(axes::properties, text::properties): Use it to set default fontname.
-	* graphics.cc (axes::properties::set_defaults): Likewise.
-
-2009-03-09  Rafael Laboissiere  <rafael@debian.org>
-
-	* Makefile.in (maintainer-clean): Remove y.tab.h here.
-	(distclean): Not here.
-
-2009-03-09  Jason Riedy  <jason@acm.org>
-
-	* OPERATORS/op-dm-sm.cc (add_dm_sm): Octave binding for diag + sparse.
-	(sub_dm_sm): Octave binding for diag - sparse.
-	(add_sm_dm): Octave binding for diag + sparse.
-	(sub_sm_dm): Octave binding for diag - sparse.
-	(install_dm_sm_ops): Install above bindings.
-
-	* OPERATORS/op-dm-scm.cc (add_cdm_sm): Octave binding for diag + sparse.
-	(add_dm_scm): Octave binding for diag + sparse.
-	(add_cdm_scm): Octave binding for diag + sparse.
-	(sub_cdm_sm): Octave binding for diag - sparse.
-	(sub_dm_scm): Octave binding for diag - sparse.
-	(sub_cdm_csm): Octave binding for diag - sparse.
-	(add_sm_cdm): Octave binding for diag + sparse.
-	(add_scm_dm): Octave binding for diag + sparse.
-	(add_scm_cdm): Octave binding for diag + sparse.
-	(sub_sm_cdm): Octave binding for diag - sparse.
-	(sub_scm_dm): Octave binding for diag - sparse.
-	(sub_scm_cdm): Octave binding for diag - sparse.
-	(install_dm_scm_ops): Install above bindings.
-
-2009-03-08  Jason Riedy  <jason@acm.org>
-
-	* sparse-xdiv.h (xleftdiv): Declare overrides for
-	xleftdiv (diagonal, sparse), both real and complex.
-	(xdiv): Declare overrides for xdiv (sparse, diagonal), both real
-	and complex.
-
-	* sparse-xdiv.cc (do_rightdiv_sm_dm): New template function.
-	Implementation for xdiv (sparse, diagonal).
-	(xdiv): Call do_rightdiv_sm_dm to implement overrides, real and
-	complex.
-	(do_leftdiv_dm_sm): New template function.  Implementation for
-	xleftdiv (diagonal, sparse).
-	(xleftdiv): Call do_leftdiv_dm_sm to implement overrides, real and
-	complex.
-
-	* OPERATORS/op-dm-sm.cc (ldiv_dm_sm): Octave binding for real left
-	division, diagonal into sparse.
-	(div_sm_dm): Octave binding for real right division, sparse by
-	diagonal.
-	(install_dm_sm_ops): Install above bindings.
-
-	* OPERATORS/op-dm-scm.cc (ldiv_dm_scm): Octave binding for real
-	diagonal \ complex sparse.
-	(ldiv_cdm_sm): Octave binding for complex diagonal \ real sparse.
-	(ldiv_cdm_scm): Octave binding for complex diagonal \ complex sparse.
-	(div_scm_dm): Octave binding for complex sparse / real diagonal.
-	(div_sm_cdm): Octave binding for real sparse / complex diagonal.
-	(div_scm_cdm): Octave binding for complex sparse / complex diagonal.
-	(install_dm_scm_ops): Install above bindings.
-
-2009-03-08  Jason Riedy  <jason@acm.org>
-
-	* OPERATORS/op-dm-scm.cc: New file.  Implement multiplication
-	between diagonal matrices (both real and complex) and complex
-	sparse matrices.
-	* OPERATORS/op-dm-sm.cc: New file.  Implement multiplication
-	between diagonal matrices and sparse matrices, all real.
-	* Makefile.in (DIAG_OP_XSRC): Add op-dm-sm.cc and op-dm-scm.cc.
-
-2009-03-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (F__accumarray_sum__): New function.
-	(do_accumarray_sum): New helper template function.
-
-2009-03-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xdiv.cc (mdm_div_impl, dmm_lelftdiv_impl, dmdm_div_impl,
-	dmdm_leftdiv_impl): Optimize.
-
-2009-03-07  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (octave_print_internal (std::ostream&,
-	const PermMatrix&, bool, int)): Delete unused variable SCALE.
-
-	* utils.cc (octave_vsnprintf): Avoid uninitialized variable
-	warning from GCC.
-
-	* DLD-FUNCTIONS/qz.cc (Fqz): Avoid "maybe clobbered by vfork"
-	warning from GCC.
-
-	* version.h (OCTAVE_VERSION): Now 3.1.54.
-	(OCTAVE_API_VERSION): Now api-v36.
-	(OCTAVE_RELEASE_DATE): Now 2009-03-07.
-
-	* octave.cc (verbose_usage): Include --doc-cache-file in option list.
-
-2009-03-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::diag_matrix_value,
-	octave_value::complex_diag_matrix_value,
-	octave_value::float_diag_matrix_value,
-	octave_value::float_complex_diag_matrix_value,
-	octave_value::perm_matrix_value): New methods.
-
-	* ov-base.cc (octave_base_value::diag_matrix_value,
-	octave_base_value::complex_diag_matrix_value,
-	octave_base_value::float_diag_matrix_value,
-	octave_base_value::float_complex_diag_matrix_value,
-	octave_base_value::perm_matrix_value): New virtual methods.
-
-	* ov-base.h: Declare them.
-
-	* ov-base-diag.h (octave_base_diag::diag_matrix_value,
-	octave_base_diag::complex_diag_matrix_value,
-	octave_base_diag::float_diag_matrix_value,
-	octave_base_diag::float_complex_diag_matrix_value,
-	octave_base_diag::perm_matrix_value): Remove declarations.
-
-	* DLD-FUNCTIONS/inv.cc (Finv): Simplify handling diag & perm matrices.
-	* DLD-FUNCTIONS/pinv.cc (Fpinv): Ditto.
-	* DLD-FUNCTIONS/det.cc (Fdet): Ditto.
-
-2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ls-hdf5.cc (add_hdf5_data): Handle diag & perm matrices.
-
-2009-03-05  John W. Eaton  <jwe@octave.org>
-
-	* pt-cell.cc, pt-cell.h (tree_cell::dup): Now const.
-	* comment-list.cc, comment-list.h (octave_comment_list::dup): Ditto.
-	* pt-arg-list.cc, pt-arg-list.h (tree_argument_list::dup): Ditto.
-	* pt-assign.cc, pt-assign.h (tree_simple_assignment::dup,
-	tree_multi_assignment::dup): Ditto.
-	* pt-binop.cc, pt-binop.h (tree_binary_expression::dup,
-	tree_boolean_expression::dup): Ditto.
-	* pt-cmd.cc, pt-cmd.h (tree_no_op_command::dup,
-	tree_function_def::dup): Ditto.
-	* pt-colon.cc, pt-colon.h (tree_colon_expression::dup): Ditto.
-	* pt-const.cc, pt-const.h (tree_constant::dup): Ditto.
-	* pt-decl.cc, pt-decl.h (tree_decl_elt::dup, tree_decl_init_list::dup,
-	tree_global_command::dup, tree_static_command::dup): Ditto.
-	* pt-except.cc, pt-except.h (tree_try_catch_command::dup,
-	tree_unwind_protect_command::dup): Ditto.
-	* pt-fcn-handle.cc, pt-fcn-handle.h (tree_fcn_handle::dup,
-	tree_anon_fcn_handle::dup): Ditto.
-	* pt-id.cc, pt-id.h (tree_identifier::dup): Ditto.
-	* pt-idx.cc, pt-idx.h (tree_index_expression::dup): Ditto.
-	* pt-jump.cc, pt-jump.h (tree_break_command::dup,
-	tree_continue_command::dup, tree_return_command::dup): Ditto.
-	* pt-loop.cc, pt-loop.h (tree_while_command::dup,
-	tree_do_until_command::dup, tree_simple_for_command::dup,
-	tree_complex_for_command::dup): Ditto.
-	* pt-mat.cc, pt-mat.h (tree_matrix::dup): Ditto.
-	* pt-misc.cc, pt-misc.h (tree_parameter_list::dup,
-	tree_return_list::dup): Ditto.
-	* pt-select.cc, pt-select.h (tree_if_clause::dup,
-	tree_if_command_list::dup, tree_if_command::dup,
-	tree_switch_case::dup, tree_switch_case_list::dup,
-	tree_switch_command::dup): Ditto.
-	* pt-stmt.cc, pt-stmt.h (tree_statement::dup,
-	tree_statement_list::dup): Ditto.
-	* pt-unop.cc, pt-unop.h (tree_prefix_expression::dup,
-	tree_postfix_expression::dup): Ditto.
-	* pt-fcn-handle.h (tree_anon_fcn_handle::parameter_list,
-	tree_anon_fcn_handle::return_list, tree_anon_fcn_handle::body,
-	tree_anon_fcn_handle::scope): Ditto.
-
-2009-03-05  Jason Riedy  <jason@acm.org>
-
-	* ov-base-int.cc (convert_to_str_internal): Replace elt_type with
-	element_type throughout.
-
-2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): Handle diagonal and permutation
-	matrices.
-
-2009-03-03  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::save_ascii,
-	octave_struct::save_binary, octave_struct::save_hdf5):
-	Preserve order of structure fields.
-	* ls-mat5.cc (save_mat5_binary_element): Likewise.
-
-	* symtab.h (symbol_table::do_inherit): Only inherit values for
-	symbols from the donor_scope that already exist in the table.
-	(symbol_table::symbol_record::symbol_record_rep::dup): Now const.
-	(symbol_table::symbol_record::operator=): Decrement rep->count and
-	maybe delete rep.
-	(symbol_table::fcn_info::operator=): Likewise.
-
-	* pt-fcn-handle.cc: (tree_anon_fcn_handle::dup): Transform
-	tree_anon_fcn_handle objects to tree_constant objects containing
-	octave_fcn_handle objects.  New tests.
-
-	* pt-assign.cc (tree_simple_assignment::rvalue1): Assign result of
-	call to rhs->rvalue1() to an octave_value object, not an
-	octave_value_list object.
-
-2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-stream.h (octave_stream_list::lookup_cache): New member field.
-	(octave_stream_list::octave_stream_list): Initialize it.
-	(octave_stream_list::do_lookup): Use it.
-	(octave_stream_list::clear): Make flush optional. Do physically erase
-	entries from the map. Close files.
-	(octave_stream_list::do_remove): Call clear on "all". Do erase deleted
-	entry from the map.
-
-2009-03-02  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (Fget, F__get__): Return a column vector of property
-	values, not a row vector.
-
-2009-03-01  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-fcm-fcm.cc (DEFNDASSIGNOP_FN (dbl_assign)):
-	LHS type is float_complex_matrix, not complex_matrix.  RHS value
-	function is float_complex_array, not complex_array.
-
-2009-03-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-perm.cc (octave_perm_matrix::print_raw): Call
-	octave_print_internal.
-	(octave_perm_matrix::print_raw): Call print_raw.
-	* pr-output.cc (octave_print_internal (...,const DiagMatrix&,...)):
-	Indicate diagonal matrix.
-	(octave_print_internal (...,const ComplexDiagMatrix&,...)): Ditto.
-	(octave_print_internal (...,const PermMatrix&,...)): New function.
-	* pr-output.h: Declare it.
-
-2009-02-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-dms-template.cc (gripe_if_zero): New template static
-	function.
-	(dmsdiv, sdmldiv): Call it.
-
-2009-02-26  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table::symbol_record::symbol_record_rep::forced):
-	New static constant.
-	(symbol_table::symbol_record::symbol_record_rep::force_variable,
-	symbol_table::symbol_record::force_variable): New functions.
-	(symbol_table::symbol_record::symbol_record_rep::is_forced,
-	symbol_table::symbol_record::symbol_record_rep::mark_forced,
-	symbol_table::symbol_record::symbol_record_rep::unmark_forced,
-	symbol_table::symbol_record::symbol_record_rep::clear_forced,
-	symbol_table::symbol_record::is_forced,
-	symbol_table::symbol_record::mark_forced,
-	symbol_table::symbol_record::clear_forced,
-	symbol_table::symbol_record::unmark_forced): New fucntions.
-	* lex.h, lex.l (force_local_variable): Delete.
-	(handle_identifier): Call symbol_table::force_variable instead of
-	force_local_variable.
-	* parse.y (make_script): Call symbol_table:clear_forced_variables
-	after defining script.
-	(finish_function): Call symbol_table::clear_forced_variables
-	instead of symbol_table::clear_variables.
-
-	* DLD-FUNCTIONS/chol.cc: Correct spelling of CHOLMOD in tests.
-
-	* version.h (OCTAVE_VERSION): Now 3.1.53+.
-	(OCTAVE_API_VERSION): Now api-v35+.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.53.
-	(OCTAVE_API_VERSION): Now api-v35.
-	(OCTAVE_RELEASE_DATE): Now 2009-02-25.
-	(OCTAVE_COPYRIGHT): Update year.
-
-	* Makefile.in (distclean): Remove tags TAGS y.tab.h y.output
-	yy.lex.c here, not in maintainer-clean target.  Also remove
-	parse.output.
-
-	* DLD-FUNCTIONS/rand.cc: Note that the tests for the old random
-	number generator will fail if using 64-bit indexing.
-
-2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lu.cc (maybe_set_triangular): New function.
-	(Flu): Use it.
-	* DLD-FUNCTIONS/qr.cc (maybe_set_triangular): New function.
-	(Fqr): Use it.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/chol.cc: Fix tests for missing cholmod.
-
-	* input.cc (get_debug_input): Write debugging location info
-	directly to std::cerr instead of calling message.
-	* pt-eval.cc (tree_evaluator::do_breakpoint): Write debugging
-	location info directly to std::cerr, not octave_stdout.
-
-	* defaults.h.in (OCTAVE_DOC_CACHE_FILE): New macro.
-	* defaults.cc (set_default_doc_cache_file): New function.
-	(install_defaults): Call it.
-
-	* help.cc (__list_functions__): Simplify
-
-	* input.cc (get_debug_input): Don't pass arbitrary input to
-	message as a format string.
-
-2009-02-24  John W. Eaton  <jwe@octave.org>
-
-	* help.cc, help.h (Vdoc_cache_file): New global variable.
-	(Fdoc_cache_file): New function.
-	* octave.cc (DOC_CACHE_FILE_OPTION): New option tag.
-	(long_opts): Include doc-cache-file in the list.
-	(octave_main): Handle DOC_CACHE_FILE_OPTION.
-
-2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-scalar.h
-	(octave_scalar::int8_scalar_value): New method.
-	(octave_scalar::int16_scalar_value): New method.
-	(octave_scalar::int32_scalar_value): New method.
-	(octave_scalar::int64_scalar_value): New method.
-	(octave_scalar::uint8_scalar_value): New method.
-	(octave_scalar::uint16_scalar_value): New method.
-	(octave_scalar::uint32_scalar_value): New method.
-	(octave_scalar::uint64_scalar_value): New method.
-
-	* ov-float.h
-	(octave_float_scalar::int8_scalar_value): New method.
-	(octave_float_scalar::int16_scalar_value): New method.
-	(octave_float_scalar::int32_scalar_value): New method.
-	(octave_float_scalar::int64_scalar_value): New method.
-	(octave_float_scalar::uint8_scalar_value): New method.
-	(octave_float_scalar::uint16_scalar_value): New method.
-	(octave_float_scalar::uint32_scalar_value): New method.
-	(octave_float_scalar::uint64_scalar_value): New method.
-
-	* OPERATORS/op-s-s.cc (scalar_to_float): Remove duplicate conversion.
-	* OPERATORS/op-range.cc (range_to_float_matrix): Ditto.
-
-2009-02-24  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-float-conv.cc: New file.
-	* Makefile.in (FLOAT_OP_XSRC): Add it to the list.
-	(DOUBLE_OP_XSRC): Move op-double-conv.cc here from INTTYPE_OP_XSRC.
-	* ops.h (DEFFLTCONVFN, DEFSTRFLTCONVFN): New macros.
-
-2009-02-23  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
-	Remove extra ")" from output.
-
-	* DLD-FUNCTIONS/eigs.cc (Feigs): If sigma argument is not a
-	string, try extraction as complex value and check for error
-	instead of inquiring about type first.
-
-	* pt-eval.cc (tree_evaluator::visit_break_command,
-	tree_evaluator::visit_return_command,
-	tree_evaluator::visit_global_command,
-	tree_evaluator::visit_static_command): Handle breakpoint.
-	(tree_evaluator::visit_simple_for_command,
-	tree_evaluator::visit_complex_for_command): Handle breakpoint once
-	at beginning of loop.
-	(tree_evaluator::visit_if_command_list): Don't call do_breakpoint
-	for else clauses.
-	(tree_evaluator::visit_no_op_command): Handle breakpoint if no-op
-	command is end of function or script.
-	(tree_evaluator::visit_statement): Handle breakpoint for
-	expressions but not commands.
-	(tree_evaluator::visit_while_command,
-	tree_evaluator::visit_do_until_command):
-	Check for breakpoint set on cmd, not expr.
-	(tree_evaluator::visit_do_until_command): Handle breakpoint
-	between check for breaking out of loop and loop control
-	expression.
-
-	* pt-cmd.h (tree_no_op_command::eof): New data member
-	(tree_no_op_command::tree_no_op_command): Initialize it.
-	(tree_no_op_command::is_end_of_fcn_or_script): New function.
-	* pt-stmt.cc (tree_statement::is_end_of_fcn_or_script):
-	Call is_end_of_fcn_or_script instead of looking at original text
-	of no-op command.
-
-	* pt-select.h, pt-select.cc (tree_if_command::set_breakpoint,
-	tree_if_command::delete_breakpoint): New functions.
-	(tree_switch_command::set_breakpoint,
-	tree_switch_command::delete_breakpoint): New functions.
-	* pt-stmt.h, pt-stmt.cc (tree_statement::set_breakpoint,
-	tree_statement::delete_breakpoint, tree_statement::is_breakpoint):
-	Delegate real work to cmd or expr.
-	(tree_statement::bp): Delete data member.
-	(tree_statement::tree_statement): Don't initialize bp.
-	(tree_statement::dup): Don't copy bp.
-
-	* pt.h (tree::line (int), tree:column (int)): New functions.
-	(tree:set_breakpoint, tree::delete_breakpoint): Now virtual.
-
-	* parse.y (finish_if_command): Also store line and column info for
-	if statement in first element of list.
-	(finish_switch_command): Likewise, for switch.
-
-	* input.cc (last_debugging_command): New static variable.
-	(octave_gets): Set it here.  Don't insert repeated debugging
-	commands in the history list.
-
-2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/pinv.cc: Support diagonal and permutation matrices.
-
-2008-02-21  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc, OPERATORS/op-s-scm.cc,
-	OPERATORS/op-s-sm.cc, OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-s.cc: Don't perform any
-	narrowing to full matrices.
-
-2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-diag.h (octave_base_diag::sqrt): Remove.
-	* ov-re-diag.cc (octave_diag_matrix::sqrt): New method.
-	* ov-re-diag.h: Declare it.
-	* ov-flt-re-diag.cc (octave_float_diag_matrix::sqrt): New method.
-	* ov-flt-re-diag.h: Declare it.
-	* ov-cx-diag.cc (octave_complex_diag_matrix::sqrt): New method.
-	* ov-cx-diag.h: Declare it.
-	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::sqrt): New method.
-	* ov-flt-cx-diag.h: Declare it.
-
-2009-02-20  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Clear and
-	reload mex file if it is out of date.  Don't check path for file.
-
-	* pt-bp.cc (tree_breakpoint::visit_octave_user_script,
-	tree_breakpoint::visit_octave_user_function):
-	Don't panic.  Call accept on command list if it exists.
-
-2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
-	Correctly compute all-scalar index.
-	* ov-cell.cc (octave_cell::is_sorted, octave_cell::is_sorted_rows):
-	New methods.
-	(octave_cell::octave_cell (const Array<std::string>&)): New
-	constructor.
-	* ov-cell.h: Declare them.
-	* ov-cell.cc (octave_cell::sort): Create result already with
-	cellstr_cache.
-	* strfns.cc (Fstrcmp): Use special code when dealing with
-	cellstr arrays.
-
-2009-02-20  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::assign):
-	Correctly compute all-scalar index.
-
-	* symbtab.cc (symbol_table::stash_dir_name_for_subfunctions):
-	New function.
-	* symtab.h: Provide decl.
-	* parse.y (load_fcn_from_file): Call it after parsing a function.
-
-2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.h (octave_cell::cellstr_cache): New field.
-	(octave_cell::clear_cellstr_cache, octave_cell::make_cellstr_cache,
-	octave_cell::assign, octave_cell::delete_elements,
-	octave_cell::mex_get_data): New methods.
-	(octave_cell::is_cellstr): Reuse cellstr cache if possible, create if
-	successful.
-	(octave_cell::cellstr_value): Reuse cellstr cache if possible.
-	(octave_cell::subsasgn): Clear cellstr cache.
-
-2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Use Array<T>::lookup if possible.
-	Do not compare octave_values directly. Properly check for iscellstr.
-
-2009-02-19  John W. Eaton  <jwe@octave.org>
-
-	* data.cc, graphics.cc, help.cc, lex.l, load-path.cc, parse.y:
-	Consistent doc strings for internal functions.
-
-2009-02-18  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (convert_to_octave_idx_type_array): New static function.
-	(octave_value::octave_idx_type_vector_value): New function.
-	* ov.h (octave_value::octave_idx_type_vector_value): Provide decl.
-	* DLD-FUNCTIONS/qr.cc (Fqrdelete, Fqrinsert): Use it to convert
-	octave_value object to array of octave_idx_type values.
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Likewise.
-	* DLD-FUNCTIONS/time.cc (strptime): Likewise.
-	* DLD-FUNCTIONS/quad.cc (Fquad): Eliminate unnecessary cast.
-	* toplev.cc (run_command_and_return_output): Likewise.
-
-	* strfns.cc (Fstrvcat): Use octave_idx_type and size_t instead of
-	int as needed.
-	(Fstrcmp, Fstrncmp): Use octave_idx_type instead of int as needed.
-
-	* DLD-FUNCTIONS/hex2num.cc (Fhex2num, Fnum2hex):
-	Use union to avoid reinterpret_cast and GCC warning.
-
-	* mex.cc (call_mex): Declare local nargout variable volatile to
-	avoid "maybe clobbered by vfork" warning from GCC.
-
-	* ov-cx-mat.cc (xabs): Comment out unused static function.
-	* ov-flt-cx-mat.cc (xabs): Ditto.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::seekoff,
-	c_file_ptr_buf::seepos, c_zfile_ptr_buf::seekoff,
-	c_zfile_ptr_buf::seepos): Avoid unused paramter warnings.
-
-2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (Fresize): Allow arbitrary number of parameters. Improve
-	documentation.
-
-2009-02-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
-
-	* file-io.cc: (Fmkstemp): Use mkstemps if it is available and
-	mkstemp is missing.
-
-2009-02-17  Olaf Till  <olaf.till@uni-jena.de>
-
-	* DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/dasrt.cc: Documentation fixes.
-
-2009-02-17  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/convhulln.cc (Fconvhulln): Compute convex hull
-	volume and return it as second output.  New tests.
-
-2009-02-17  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn.h (octave_function::octave_function): Initialize data members.
-	(octave_function::dispatch_class): No longer virtual.
-	Replace with version from ov-usr-fcn.h.
-	(octave_function::xdispatch_class,
-	octave_function::stash_dispatch_class): Move here from ov-usr-fcn.h.
-	(octave_function::mark_as_private_function,
-	octave_function::is_private_function,
-	octave_function::is_private_function_of_class): New functions.
-	(octave_function::private_function): New data member.
-	* ov-usr-fcn.h (octave_user_function::xdispatch_class,
-	octave_user_function::stash_dispatch_class,
-	octave_user_function::dispatch_class): Delete.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Don't initialize xdispatch_type.
-
-	* symtab.cc
-	(symbol_table::fcn_info::fcn_info_rep::load_private_function):
-	If private directory is subdirectory of class directory, qmark
-	function as a private directory of the class.
-
-	* ov-class.cc (octave_class::in_class_method): Also return true
-	for functions that are private to a class.
-	(octave_class::subsasgn): If not in class method, look for
-	subsasgn method.  If not found, or if not in a class method,
-	perform default struct-style subscripted indexing.
-
-	* ov-class.h (octave_class::empty_clone):
-	Preserve fields and class name.
-	* oct-map.h (Octave_map::Octave_map (const string_vector&):
-	New constructor.
-
-	* ov-class.cc (octave_class::subsref): If indexing directly and
-	result is map, return class object, not simple struct.
-
-	* symtab.cc
-	(symbol_table::fcn_info::fcn_info_rep::load_private_function):
-	Pass dir_name to load_fcn_from_file.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/data.cc (NATIVE_REDUCTION): Add BOOL_FCN argument.
-	(NATIVE_REDUCTION_1): Check integer overflow flags and possibly gripe.
-	(Fsum): Reflect change.
-	(Fcumsum): USE NATIVE_REDUCTION.
-	* gripes.cc (gripe_native_integer_math_truncated): New function.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Improve inline docs.
-
-2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/max.cc (MINMAX_DOUBLE_SBODY): New macro.
-	(MINMAX_DOUBLE_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
-	(MINMAX_SINGLE_SBODY): New macro.
-	(MINMAX_SINGLE_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
-	(MINMAX_INT_SBODY): New macro.
-	(MINMAX_INT_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
-	(CUMMINMAX_BODY): New macro.
-	(Fcummin, Fcummax): New DLD functions.
-
-2009-02-17  John W. Eaton  <jwe@octave.org>
-
-	* octave.gperf: Eliminate whitespace to allow gperf 2.7.2 to work.
-
-	* file-io.cc (Ffscanf, Fsscanf): Check error_state after call to
-	octave_stream::scanf.
-	(Ffgetl): Check error state after call to octave_stream::getl.
-	(Ffgets): Check error state after call to octave_stream::gets.
-
-	* oct-stream.cc (octave_base_stream::do_gets,
-	octave_base_stream::do_scanf):
-	Disallow reading from stdin when running interactively.
-
-	* toplev.cc (octave_config_info): Add CARBON_LIBS, X11_INCFLAGS,
-	and X11_LIBS to the struct.
-	* oct-conf.h.in (OCTAVE_CONF_CARBON_LIBS,
-	OCTAVE_CONF_X11_INCFLAGS, OCTAVE_CONF_X11_LIBS): New macros.
-
-2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* Makefile.in (octave$(EXEEXT)): Link with CARBON_LIBS.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (next_token_can_follow_bin_op):
-	Push all characters read on to buffer stack.
-
-	* genprops.awk (emit_source): Don't use + to concatenate strings.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* data.cc (NATIVE_REDUCTION): Use boolNDArray::any for native bool
-	summation, boolNDArray::sum for double-valued.
-
-2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::assign (const octave_value_list&,
-	typename MT::element_type): Fix invalid index.
-	* ov-re-mat.cc (default_numeric_demotion_function): Use
-	float_array_value instead of float_matrix_value.
-
-2009-02-16  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (gnu_readline): Use fputs instead of fprintf.
-
-2009-02-15  John W. Eaton  <jwe@octave.org>
-
-	* defun.cc, defun-int.h, defun-dld.h (DEFUN_INTERNAL,
-	DEFCONSTFUN_INTERNAL, DEFUNX_INTERNAL, DEFUN_DLD_INTERNAL,
-	DEFUNX_DLD_INTERNAL, install_builtin_function,
-	install_dld_function, install_mex_function):
-	Delete IS_TEXT_FCN arg.  Fix all uses.
-	(DEFMD, DEFUN_TEXT): Delete.
-	* mkbuiltins, mkgendoc: Adapt to DEFUN macro changes.
-
-	* lex.h, lex.l (lexer_flags::at_beginning_of_statement):
-	New data member.  Set it as needed in rules.
-	(is_keyword_token):
-	Handle lexer_flags::at_beginning_of_statement.
-	(next_token_can_follow_bin_op, looks_like_command_arg): New functions.
-	(handle_identifier): Use them to determine
-	Don't check is_command_name or is_rawcommand_name.
-	* parse.y (statement): Recognize word_list_cmd here.
-	(expression): Not here.
-
-	* lex.l (handle_string): Delete arg TEXT_STYLE.
-	(BIN_OP_RETURN, XBIN_OP_RETURN): New arg, BOS. Change all uses.
-
-	* lex.h, lex.l (lexer_flags::doing_raw_command): Delete data
-	member and all uses.
-
-	* debug.cc, dirfns.cc, error.cc, input.cc, lex.l, load-path.cc,
-	load-save.cc, oct-hist.cc, ov-class.cc, pager.cc, parse.y,
-	pr-output.cc, sysdep.cc, utils.cc, variables.cc:
-	Replace all uses of DEFCMD with DEFUN.
-
-	* variables.cc (command_set, rawcommand_set): Delete static variables.
-	(mark_as_command, unmark_command, is_command_name,
-	mark_as_rawcommand, unmark_raw_command, is_rawcommand_name): Delete.
-	(Fmark_as_command, Funmark_command, Fiscommand,
-	Fmark_as_rawcommand, Funmark_rawcommand, Fisrawcommand):
-	Convert to .m files and move to scripts/deprecated.
-	* variables.h (mark_as_command, is_command_name,
-	is_marked_as_rawcommand, mark_as_rawcommand, unmark_rawcommand,
-	is_rawcommand_name): Delete decls.
-
-	* lex.h, lex.l (lexer_flags.looking_at_object_index): Now a
-	std::list<bool> object instead of an int.
-	Push TRUE to list at start of object index.  Push FALSE at
-	beginning of matrix list.  Pop value at end of object index or
-	matrix list.
-	(lexer_flags.looking_for_object_index): New data member.
-	Set it as needed in rules.
-	(inside_any_object_index): New function.
-	* parse.y (begin_obj_idx, cancel_obj_idx): Delete non-terminals
-	and all uses.
-
-2009-02-13 Ben Abbott  <bpabott@mac.com>
-
-	* graphics.h.in (class axes::properties): Initialize ticklength.
-	* graphics.cc (default_axes_ticklength): New function.
-
-2009-02-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_base_stream::do_gets): Handle CRLF and CR.
-
-	* toplev.cc (do_octave_atexit): Only save history if
-	Vsaving_history is true.
-
-2009-02-12  John W. Eaton  <jwe@octave.org>
-
-	* data.cc, ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h,
-	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-perm.h, ov-range.h,
-	ov.h: Rename internal issorted and issorted_rows functions to
-	is_sorted and is_sorted_rows.
-
-	* ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base.h,
-	ov-cell.h, ov-perm.h, ov-range.h, ov.h, data.cc, ov-base.cc,
-	ov-cell.cc: Rename all uses of sortrows_idx to sort_rows_idx.
-
-	* TEMPLATE-INST/Array-tc.cc: Don't instantiate sort functions for
-	Arrays of octave_value objects.
-	(octave_sort<octave_value>::ascending_compare,
-	octave_sort<octave_value>::descending_compare): Delete.
-
-	* ov.h (octave_value::cellstr_value): New function.
-	* ov-base.cc, ov-base.h (octave_base_value::cellstr_value):
-	New function.
-	* ov-cell.h (octave_cell::cellstr_value, octave_cell::sort,
-	octave_cell::sortrows_idx): New functions
-	* Cell.h, Cell.cc (Cell::Cell (Array<std::string>)): New constructor.
-
-	* TEMPLATE-INST/Array-tc.cc: Undo previous change.
-	(octave_sort<octave_value>::ascending_compare,
-	octave_sort<octave_value>::descending_compare):
-	Pass args by const reference instead of value.
-
-	* version.h (OCTAVE_VERSION): Now 3.1.52+.
-	(OCTAVE_API_VERSION): Now api-v34+.
-
-	* TEMPLATE-INST/Array-tc.cc
-	(octave_sort<octave_value>::ascending_compare,
-	octave_sort<octave_value>::descending_compare):
-	Delete unused template specializations.
-	Use NO_INSTANTIATE_ARRAY_SORT instead of INSTANTIATE_ARRAY_SORT
-	for octave_values.
-
-2009-02-11  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* gl-render.h: Use HAVE_FRAMEWORK_OPENGL.
-	* gl-render.cc (opengl_tesselator, opengl_renderer::draw,
-	opengl_renderer::init_marker): Use HAVE_FRAMEWORK_OPENGL.
-
-2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::issorted, octave_value::sortrows_idx,
-	octave_value::issorted_rows): New methods.
-	* ov.cc (octave_base_value::issorted, octave_base_value::sortrows_idx,
-	octave_base_value::issorted_rows): New methods.
-	* ov.cc: Declare them.
-
-	* ov-base-mat.h (octave_base_matrix::issorted, octave_base_matrix::sortrows_idx,
-	octave_base_matrix::issorted_rows): New methods.
-
-	* ov-base-diag.h (octave_base_diag::issorted, octave_base_diag::sortrows_idx,
-	octave_base_diag::issorted_rows): New methods.
-
-	* ov-perm.h (octave_perm_matrix::issorted, octave_perm_matrix::sortrows_idx,
-	octave_perm_matrix::issorted_rows): New methods.
-
-	* ov-range.h (octave_range::issorted, octave_range::sortrows_idx,
-	octave_range::issorted_rows): New methods.
-
-	* data.cc (F__sortrows_idx__, Fissorted): New defuns.
-
-2009-02-11  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Add octetcdir to the struct.
-	* defaults.h.in (OCTAVE_OCTETCDIR): New macro.
-
-2009-02-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/__pchip_deriv__.cc (F__pchip_deriv__):
-	Add support for computing pchip derivatives along rows of matrix.
-	Eliminate redundant copying by using const args where appropriate.
-
-2009-02-09  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.52.
-	(OCTAVE_RELEASE_DATE): Now 2009-02-09.
-	(OCTAVE_COPYRIGHT): Update year.
-
-	* load-path.cc (dir_info::update, dir_info::initialize):
-	Likewise, to allow some functionality if getcwd fails.
-
-	* toplev.cc (main_loop): Also catch octave_execution_exception.
-
-	* DLD-FUNCTIONS/dispatch.cc: Comment out troublesome tests.
-
-	* DLD-FUNCTIONS/eigs.cc: Increase tolerance to 1e-11 on all tests.
-
-	* lex.l (lexical_feedback::looking_at_decl_list): New data member.
-	* lex.l (lexical_feedback::init): Initialize it.
-	(handle_identifier): Also force local variable if looking_at_decl_list.
-	* parse.y (parsing_decl_list): New non-terminal.
-	(declaration): Use it.  Set lexer_flags.looking_at_decl_list to
-	false after parsing the declaration.
-
-2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* TEMPLATE-INST/Array-tc.cc: Reflect changes in octave_sort.
-
-2009-02-08  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (initialize_pathsearch): Delete.
-	(octave_main): Don't call initialize_pathsearch.
-
-2009-02-07  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (eval_string): Use the one true evaluator.
-
-2009-02-06  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (INCLUDES): Include oct-hdf5.h in the list.
-
-	* Makefile.in (oct-gperf.h): Don't use pipeline to process gperf
-	output.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::cn_info_rep::xfind):
-	New function.
-	(symbol_table::fcn_info::cn_info_rep::find):
-	Use it to avoid recursive call.
-
-	* graphics.cc (Fdrawnow): Return after errors.  Don't strip
-	trailing directory separator from name used in call to file_stat.
-
-	* DLD-FUNCTIONS/eigs.cc (Feigs): Avoid warnings about ambiguous
-	else.  Style fixes.  Return after errors.
-
-2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-map.cc (Octave_map::index): Optimize.
-
-2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-cm-cs.cc: Use scalar_value in scalar-to-matrix
-	indexed assignments.
-	* OPERATORS/op-fcm-fcs.cc: Ditto.
-	* OPERATORS/op-fm-fs.cc: Ditto.
-	* OPERATORS/op-m-s.cc: Ditto.
-	* OPERATORS/op-int.h (OCTAVE_MS_INT_ASSIGN_OPS): Use homogeneous
-	integer scalar-to-matrix assignment.
-	(OCTAVE_MM_INT_ASSIGN_OPS): Use homogeneous integer matrix-to-matrix
-	assignment.
-
-	* Cell.h (Cell::index): Remove direct idx_vector overloads.
-	(Cell::assign): Remove direct idx_vector overloads.
-	(Cell::delete_elements): Remove direct idx_vector overloads.
-	* Cell.cc (Cell::index (const octave_value_list&)): Call
-	ArrayN<octave_value>::index.
-
-	* oct-map.h (Octave_map::index): Remove direct idx_vector overloads.
-	* oct-map.cc (Octave_map::index): Ditto.
-	* ov-base-mat.cc (octave_base_mat::do_index_op): Optimize scalar
-	indexing case.
-	(octave_base_mat::assign (const octave_value_list&, const MT&)):
-	Specialize variable argument number.
-	(octave_base_mat::assign (const octave_value_list&, const
-	typename MT::element_type&)):
-	New method overload with optimized scalar indexing case.
-
-	* ov-cell.cc (octave_base_matrix<Cell>::do_index_op,
-	octave_base_matrix<Cell>::assign,
-	octave_base_matrix<Cell>::delete_elements): Specialize.
-	(octave_cell::assign (const_octave_value_list, const octave_value&):
-	Delete method.
-	* ov-cell.h: Reflect change.
-
-	* ov-cx-mat.cc (octave_complex_matrix::assign): Delete overloads.
-	* ov-cx-mat.h: Reflect changes.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::assign): Delete overloads.
-	* ov-flt-cx-mat.h: Reflect changes.
-	* ov-list.cc (octave_list::do_index_op): Simplify.
-	* ov-struct.cc (octave_struct::do_index_op): Simplify.
-	* pt-eval.cc (tree_evaluator::visit_simple_for_command): Optimize
-	traversing a row vector.
-
-2009-02-05  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (Vignore_function_time_stamp):
-	Eliminate unused static variable.
-
-	* debug.cc (get_file_line): Override default precedence in logical
-	expression.
-
-	* ov-null-mat.cc (default_null_str_numeric_conversion_function,
-	default_null_sq_str_numeric_conversion_function,
-	default_null_matrix_numeric_conversion_function):
-	Avoid unused variable warning.
-
-	* ov-flt-re-diag.cc (octave_float_diag_matrix::save_binary):
-	Avoid unused parameter warning.
-	* pt-eval.cc (tree_evaluator::visit_if_clause): Likewise.
-	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type): Likewise.
-	* ov-base.cc (octave_base_value::subsref (const std::string&,
-	const std::list<octave_value_list>&, bool): Likewise.
-	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::save_binary):
-	Likewise.
-
-	* oct-hdf5.h: New file.
-	* ls-hdf5.cc, ov-base.h, ov.h: Include oct-hdf5.h instead of hdf5.h.
-	* ls-hdf5.h: Include oct-hdf5.h.
-	* load-save.cc: Include ls-hdf5.h instead of hdf5.h.
-	* ov-base-sparse.cc, load-save.cc:
-	Don't protect #include "ls-hdf5.h" with #ifdef.
-
-2009-02-04  Kai Habel  <kai.habel@gmx.de>
-
-	* gl-render.cc (opengl_renderer::draw (surface::properties)):
-	Normalize surface normals. Correct calculation of diffuse lighting.
-	* gl-render.cc (opengl_renderer::draw (patch::properties)):
-	Correct calculation of diffuse lighting.
-
-2009-02-04  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (do_which): If NAME is not in the symbol table, look for
-	a function file in the load path.
-	(raw_help_from_file): Unwind-protect and set reading_script_file.
-
-	* pt-loop.h, pt-loop.cc (evaluating_looping_command):
-	Delete global variable and all uses.
-	* parse.y, parse.h (evaluating_function_body): Delete global
-	variable and all uses.
-	(make_break_command, make_continue_command, make_return_command):
-	Use tree_evaluator::in_fcn_or_script_body and
-	tree_evaluator::in_loop_command instead of
-	evaluating_function_body and evaluating_looping_command.
-
-	* pt-eval.h (tree_evaluator::in_function_or_script_body):
-	Delete 	member variable and all uses.
-	(tree_evaluator::reset): Delete function and all uses.
-
-	* pt-eval.cc, pt-eval.h (tree_evaluator::in_fcn_or_script_body,
-	tree_evaluator::in_loop_command): New static variables.
-	(tree_evaluator::visit_simple_for_command,
-	tree_evaluator::visit_complex_for_command,
-	tree_evaluator::visit_while_command,
-	tree_evaluator::visit_do_until_command): Unwind-protect and set
-	tree_evaluator::in_loop_command instead of
-	evaluating_looping_command.
-	(tree_evaluator::visit_statement): Only call echo_code if
-	evaluating function or script and (Vecho_executing_commands &
-	ECHO_FUNCTIONS).  Use tree_evaluator::in_fcn_or_script_body
-	instead of evaluating_function_body.
-
-	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
-	octave_user_function::do_multi_index_op): Unwind-protect and set
-	tree_evaluator::in_fcn_or_script_body.
-
-	* pt-stmt.cc, pt-stmt.h (tree_statement::echo_code):
-	Rename from maybe_echo_code.  Simplify.
-
-2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-loop.h (tree_simple_for_command::do_for_loop_once,
-	tree_complex_for_command::do_for_loop_once): Remove obsolete decls.
-	* pt-loop.cc (quit_loop_now): Remove obsolete method.
-	* pt-eval.cc (DO_ND_LOOP): Delete macro.
-	(tree_evaluator::visit_simple_for_command): Use the generic
-	do_index_op for iterating matrices.
-
-2009-02-04  John W. Eaton  <jwe@octave.org>
-
-	New evaluator and debugger derived from tree-walker class.
-
-	* pt-eval.h, pt-eval.cc: New files.  Parse tree evaluator code
-	adapted from eval member functions in classes derived from
-	tree_command.
-	* Makefile.in (PT_INCLUDES, PT_SRC): Add them to the lists
-
-	* pt-cmd.cc (tree_function_def::eval): Delete.
-	* pt-cmd.h: Delete decl.
-	(tree_command::eval): Delete pure virtual function.
-	(tree_no_op_command::eval): Delete.
-	(tree_function_def::function): Return octave_value, instead of
-	pointer to octave_function.  Change all uses.
-
-	* pt-except.cc (do_catch_code, tree_try_catch_command::eval,
-	do_unwind_protect_cleanup_code,
-	tree_unwind_protect_command::eval): Delete.
-	* pt-except.h: Delete decls.
-
-	* pt-jump.cc (tree_break_command::eval, tree_return_command::eval,
-	tree_continue_command::eval): Delete.
-	* pt-jump.h: Delete decls.
-
-	* pt-loop.cc (DO_ND_LOOP): Delete macro.
-	(tree_while_command::eval, tree_do_until_command::eval,
-	tree_simple_for_command::do_for_loop_once,
-	tree_simple_for_command::eval,
-	tree_complex_for_command::do_for_loop_once,
-	tree_complex_for_command::eval):
-	* pt-loop.h: Delete decls.
-
-	* pt-select.cc (tree_if_clause::eval, tree_if_command_list::eval,
-	tree_if_command::eval, tree_switch_case::eval,
-	tree_switch_case_list::eval, tree_switch_command::eval): Delete.
-	* pt-select.h: Delete decls.
-	(class tree_if_clause, class tree_switch_case): Derive from tree.
-	Handle line and column in constructors.
-
-	* pt-stmt.cc (tree_statement::eval): Delete
-	* pt-stmt.h: Delete decl.
-
-	* pt-stmt.cc, pt-stmt.h (tree_statement::is_command,
-	tree_statement::is_expression, tree_statement::line,
-	tree_statement::column): Now const.
-
-	* pt-stmt.cc (tree_statement::set_print_flag,
-	tree_statement::is_end_of_fcn_or_script): New functions.
-	* pt-stmt.h: Provide decl.
-	(set_breakpoint, delete_breakpoint, is_breakpoint): New function.
-	(bp): New member variable.
-	(print_result): Delete member variable.
-	(tree_statement_list::anon_function_body): New member variable.
-	(tree_statement_list::mark_as_anon_function_body,
-	tree_statement_list::is_anon_function_body,
-	tree_statement_list::is_script_body): New functions.
-
-	* pt-decl.cc (tree_decl_init_list::eval,
-	tree_decl_command::accept, tree_global_command::do_init,
-	tree_global_command::eval, tree_static_command::do_init,
-	tree_static_command::eval): Delete.
-	* pt-decl.h: Delete decls.
-	(tree_decl_elt::eval_fcn): Delete typedef.
-
-	* pt-decl.cc (tree_global_command::accept,
-	tree_static_command::accept): New functions.
-
-	* pt-stmt.cc (tree_statement::print_result): Move here from
-	pt-stmt.h.  Return true if expr is printable.
-
-	* ov-base.cc (Vsilent_functions): Delete.
-	(octave_base_value::print_with_name): Don't check
-	evaluating_function_body && Vsilent_functions here.
-	* ov-class.cc (octave_class::print_with_name): Likewise.
-	* ov-base.h (Vsilent_functions): Delete decl.
-	* pt-eval.cc (Fsilent_functions): Move here from ov-base.cc.
-	(Vsilent_functions): New static variable.
-
-	* sighandlers.cc (user_abort): Set tree_evaluator::debug_mode here.
-
-	* pt.h (tree::bp): Rename from tree::break_point.
-	(tree::set_breakpoint, tree::delete_breakpoint, tree::is_breakpoint):
-	No longer virtual.
-
-	* input.cc (get_debug_input): Use current_evaluator and
-	tree-walker to evaluate command.
-	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op): Likewise.
-	* toplev.cc (main_loop): Likewise.
-	* parse.y (eval_string):
-
-	* input.h, input.cc (Vdebugging_current_line): Delete.
-	(get_debug_input): Use tree_evaluator::debug_line instead of
-	Vdebugging_current_line.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Handle inline functions and anonymous functions as single
-	expressions.
-	* parse.y (eval_string): Likewise.
-
-	* parse.y (make_do_until_command): Rename first argument from
-	do_tok to until_tok.
-	(loop_command): Pass UNTIL token instead of DO token to
-	make_do_until_command.
-	(make_elseif_clause): New arg, elseif_tok.  Pass line and column
-	info to tree_if_clause constructor.
-	(elseif_clause): Pass ELSEIF token to make_elseif_clause.
-	(make_switch_case): New arg, case_tok.  Pass line and column info
-	to tree_switch_case constructor.
-	(switch_case): Pass CASE token to make_switch_case.
-	(make_script): New arg end_script.  Append it to cmds.
-	(script): Create no-op command for end of script and pass it to
-	make_script.
-	(start_function): New arg, end_function. Append it to body.
-	(function2): Pass end_function to start_function.
-	(make_end): New function.
-	(function_end): Declare as tree_statement_type.
-	Create no-op command for end of script.
-	(make_anon_fcn_handle): Mark body as anonymous function.
-	(set_stmt_print_flag): Set print flag for all separator types
-
-	* parse.y (fold (tree_binary_expression*),
-	fold (tree_unary_expression *),	finish_colon_expression,
-	finish_matrix): Call rvalue1 instead of rvalue.
-	Stash line number in new tree_constant object.
-
-	* debug.h (bp_table::have_breakpoints): New static function.
-	(bp_table::do_have_breakpoints): New member function.
-	* debug.cc (bp_table::do_add_breakpoint,
-	bp_table::do_remove_breakpoint,
-	bp_table::do_remove_all_breakpoints_in_file,
-	bp_table::do_remove_all_breakpoints): Call
-	bp_table::have_breakpoints to set tree_evaluator::debug_mode.
-	(Fdbnext): Delete function.  Alias to dbstep.
-	(Fdbquit, Fdbcont): Set tree_evaluator::dbstep_flag to zero.
-	(Fdbstep): Rewrite to use tree_evaluator::dbstep_flag instead of
-	tree::break_next, tree::last_line, tree::break_function, and
-	tree::last_break_function.
-	(Fdbwhere): Use tree_evaluator::debug_line and
-	tree_evaluator::debug_column to get current line and column info.
-	Don't print column if it is less than zero.
-	* pt.cc, pt.h (tree::break_next, tree::last_line,
-	tree::last_break_function, tree::break_function,
-	tree::break_statement): Delete.
-
-	* pt-bp.cc (tree_breakpoint::visit_global_command,
-	tree_breakpoint::visit_static_command,
-	tree_breakpoint::take_action (tree_statement&)): New functions.
-	* pt-bp.h: Provide decls.
-
-	* pt-bp.h (tree_walker::visit_global_command,
-	tree_walker::visit_static_command): New pure virtual functions.
-	(tree_walker::visit_decl_command): Delete.
-
-	* pt-bp.cc (tree_breakpoint::visit_decl_command): Delete.
-	* pt-bp.h: Delete decl.
-	(MAYBE_DO_BREAKPOINT): Delete macro and all uses.
-
-	* pt-bp.cc (tree_breakpoint::visit_no_op_command): Do nothing.
-	(tree_breakpoint::visit_argument_list,
-	tree_breakpoint::visit_binary_expression,
-	tree_breakpoint::visit_colon_expression,
-	tree_breakpoint::visit_decl_elt,
-	tree_breakpoint::visit_decl_init_list,
-	tree_breakpoint::visit_octave_user_script,
-	tree_breakpoint::visit_octave_user_function,
-	tree_breakpoint::visit_octave_user_function_header,
-	tree_breakpoint::visit_octave_user_function_trailer,
-	tree_breakpoint::visit_identifier,
-	tree_breakpoint::visit_index_expression,
-	tree_breakpoint::visit_matrix, tree_breakpoint::visit_cell,
-	tree_breakpoint::visit_multi_assignment,
-	tree_breakpoint::visit_anon_fcn_handle,
-	tree_breakpoint::visit_constant,
-	tree_breakpoint::visit_fcn_handle,
-	tree_breakpoint::visit_parameter_list,
-	tree_breakpoint::visit_postfix_expression,
-	tree_breakpoint::visit_prefix_expression,
-	tree_breakpoint::visit_return_list,
-	tree_breakpoint::visit_simple_assignment): Call panic_impossible
-	since breakpoints aren't set on expressions.
-	(tree_breakpoint::visit_if_clause): Fold into visit_if_command_list.
-	(tree_breakpoint::visit_switch_case): Fold into visit_switch_case_list.
-	(tree_breakpoint::visit_try_catch_command,
-	tree_breakpoint::visit_unwind_protect_command):
-	Don't set breakpoint on command itself, the the statements it
-	contains.
-	(tree_breakpoint::visit_global_command,
-	tree_breakpoint::visit_static_command): Call do_decl_command to do
-	actual work.
-	(tree_breakpoint::visit_while_command,
-	tree_breakpoint::visit_do_until_command,
-	tree_breakpoint::visit_simple_for_command,
-	tree_breakpoint::visit_complex_for_command,
-	tree_breakpoint::visit_statement,
-	tree_breakpoint::visit_statement_list,
-	tree_breakpoint::visit_switch_case_list): Set breakpoints at
-	appropriate places.
-
-	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_global_command,
-	tree_print_code::visit_static_command,
-	tree_print_code::do_decl_command): New functions.
-	(tree_print_code::visit_decl_command): Delete.
-
-	* pt-check.h, pt-check.cc (tree_checker::visit_global_command,
-	tree_checker::visit_static_command, tree_checker::do_decl_command):
-	New functions.
-	(tree_checker::visit_decl_command): Delete.
-
-	* pt-select.cc (tree_switch_case::label_matches): Call rvalue1
-	instead of rvalue.
-
-	* pt-exp.h, pt-exp.cc (tree_expression::rvalue1): New function.
-	(tree_expression::rvalue (void)): Delete.
-	(tree_expression::is_logically_true): Call rvalue1 instead of rvalue.
-
-	* pt-fcn-handle.h, pt-fcn-handle.cc (tree_fcn_handle::rvalue1,
-	tree_anon_fcn_handle::rvalue1): New functions.
-	(tree_fcn_handle:rvalue (void),
-	tree_anon_fcn_handle::rvalue1 (void)): Delete.
-	(tree_fcn_handle::rvalue (int), tree_anon_fcn_handle_rvalue (int)):
-	Call rvalue1 instead of rvalue.
-
-	* pt-idx.h, pt-idx.cc (tree_index_expression::rvalue1): New function.
-	(tree_index_expression::rvalue (void)): Delete.
-	(tree_index_expression::get_struct_index,
-	tree_index_expression::rvalue (int)): Call rvalue1 instead of rvalue.
-
-	* pt-mat.h, pt-mat.cc (tree_matrix::rvalue1): New function.
-	(tree_matrix::rvalue (void)): Delete.
-	(tm_row_const::tm_row_const_rep::init,
-	tree_matrix::rvalue (int)): Call rvalue1 instead of rvalue.
-
-	* pt-misc.cc (tree_parameter_list::convert_to_const_vector):
-	Call rvalue1 instead of rvalue.
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	Likewise.
-
-	* pt-unop.h, pt-unop.cc (tree_prefix_expression::rvalue1,
-	tree_postfix_expression::rvalue1): New functions.
-	(tree_prefix_expression::rvalue (void),
-	tree_postfix_expression::rvalue (void)): Delete.
-	(tree_prefix_expression::rvalue (int),
-	tree_postfix_expression::rvalue (int)):
-	Call rvalue1 instead of rvalue.
-
-	* pt-id.h, pt-id.cc (tree_identifier::rvalue1): New function.
-	(tree_identifier::rvalue (void)): Delete.
-
-	* pt-assign.h, pt-assign.cc (tree_simple_assignment::rvalue1,
-	tree_multi_assignment::rvalue1): New functions.
-	(tree_simple_assignment::rvalue (void),
-	tree_multi_assignment::rvalue (void): Delete.
-	(tree_simple_assignment::rvalue (int)):
-	Call rvalue1 instead of rvalue.
-
-	* pt-binop.h, pt-binop.cc (tree_binary_expression::rvalue1,
-	tree_boolean_expression::rvalue1): New functions.
-	(tree_binary_expression::rvalue (void),
-	tree_boolean_expression::rvalue (void)): Delete.
-	(tree_binary_expression::rvalue (int),
-	tree_boolean_expression::rvalue (int)):
-	Call rvalue1 instead of rvalue.
-
-	* pt-cbinop.h, pt-cbinop.cc
-	(tree_compound_binary_expression::rvalue1): New function.
-	(tree_compound_binary_expression::rvalue (void)): Delete.
-
-	* pt-cell.h, pt-cell.cc (tree_cell::rvalue1): New function.
-	(tree_cell::rvalue (void)): Delete.
-	(tree_cell::rvalue (int)): Call rvalue1 instead of rvalue.
-
-	* pt-colon.h, pt-colon.cc (tree_colon_expression::rvalue1):
-	New function.
-	(tree_colon_expression::rvalue (void)): Delete.
-	(tree_colon_expression::rvalue (int)):
-	Call rvalue1 instead of rvalue.
-
-	* pt-const.h, pt-const.cc (tree_constant::rvalue1): New function.
-	(tree_constant::rvalue (void)): Delete.
-	(tree_constant::rvalue (int)): Call rvalue1 instead of rvalue.
-
-	* pt-decl.h, pt-decl.cc (tree_decl_elt::ravlue1): New function.
-	(tree_decl_elt::ravlue (void)): Delete.
-	(tree_decl_elt::eval): Call rvalue1 instead of rvalue.
-
-2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* TEMPLATE-INST/Array-tc.cc: Replace vec_index by pointers.
-
-2009-02-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (octave_matrix::abs, octave_matrix::real,
-	octave_matrix::imag, octave_matrix::conj): Use special code.
-	* ov-flt-re-mat.cc (octave_float_matrix::abs, octave_float_matrix::real,
-	octave_float_matrix::imag, octave_float_matrix::conj): Use special code.
-	* ov-cx-mat.cc (octave_complex_matrix::abs, octave_complex_matrix::real,
-	octave_complex_matrix::imag, octave_complex_matrix::conj): Use special code.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::abs, octave_float_complex_matrix::real,
-	octave_float_complex_matrix::imag, octave_float_complex_matrix::conj): Use special code.
-
-2009-01-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Add missing check.
-
-2009-01-29  John W. Eaton  <jwe@octave.org>
-
-	* pt-stmt.cc (tree_statement::eval): Check
-	in_function_or_script_body instead of symbol_table::at_top_level ()
-	to decide whether to call octave_call_stack::set_statement.
-
-	* graphics.cc (properties::set_defaults): Also set
-	horizontalalignment, verticalalignmnt, and rotation properties for
-	new label objects here.
-
-	* ov-base-scalar.cc (octave_base_scalar<ST>::is_true (void) const):
-	Error if scalar is NaN.
-	* ov-base-mat.cc (octave_base_matrix<MT>::is_true (void) const):
-	Likewise, if any element of matrix is NaN.
-	* ov-cell.cc (octave_cell::is_true): New function.
-	* Cell.h (Cell::any_element_is_nan): New function.
-
-2009-01-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pr-output.cc:
-	(void octave_print_internal (..., const DiagMatrix& m,...),
-	(void octave_print_internal (..., const ComplexDiagMatrix& m,...),
-	(void octave_print_internal (..., const FloatDiagMatrix& m,...),
-	(void octave_print_internal (..., const FloatComplexDiagMatrix& m,...)):
-	New functions.
-	* pr-output.h: Declare them.
-	* ov-base-diag.cc (octave_base_diag::print_raw): Call
-	octave_print_internal.
-
-2009-01-28  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (install, uninstall): Handle SHLLIBPRE and SHLBINPRE
-	library prefixes.  From Marco Atzeri <marco_atzeri@yahoo.it>.
-
-2008-01-28  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Don't break for zero
-	length match, but rather advance the index by one character and
-	try again.
-
-2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Fix doc string.
-
-2009-01-27  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (Fcommand_line_path): Rename from Fcommandlinepath.
-
-2009-01-27 Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.cc (convert_position): Handle character units.
-	(default_axes_tick, default_figure_papersize,
-	default_figure_paperposition): New functions.
-	* graphics.h.in (class figure::properties): Use them to
-	initialize papersize, paperposition, xtick, ytick, and ztick
-	properties.
-
-2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc (Fqr): Treat empty matrices correctly.
-
-2009-01-26  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* display.cc (display_info::init): Use double instead of CGFloat.
-	Use HAVE_FRAMEWORK_CARBON instead of OCTAVE_USE_OS_X_API.
-
-2009-01-26  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_fcn): Handle @foo/bar.
-
-2009-01-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-cell.cc (tree_cell::rvalue): Optimize the single row case.
-
-2009-01-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-struct.cc (octave_struct::subsasgn): Reshape cs-list on rhs
-	according to the index expression.
-	* ov-cell.cc (octave_cell::subsasgn): Ditto.
-
-2008-12-25 Ben Abbott  <bpabbott@mac.com>
-
-	* load-path.cc (Fcommandlinepath): New function.
-	* load-path.h (load_path::get_command_line_path,
-	load_path::do_get_command_line_path): New functions.
-
-2009-01-24 Ben Abbott  <bpabbott@mac.com>
-
-	* DLD-FUNCTIONS/eigs.cc: eigs.cc: skip tests if ARPACK is missing.
-
-2009-01-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* help.cc (do_get_help_text, raw_help_from_symbol_table): new output to
-	flag the a function is found but not documented.
-
-2009-01-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* help.cc (raw_help_from_file): No longer search for files called
-	'Contents.m', as this is moved to 'script/help.m'.
-
-
-2009-01-23  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_call_stack::do_goto_caller_frame):
-	Also allow caller frame to be base frame, not just user code.
-
-2009-01-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* gripes.cc (gripe_indexed_cs_list, gripe_invalid_inquiry_subscript):
-	New functions.
-	* gripes.h: Declare them.
-	* pt-idx.cc: Remove definitions of the above funcs.
-	* ov-cell.cc (octave_cell::subsref): Declare constants as const.
-	(octave_cell::subsasgn): Remove dead branch, declare constants as const.
-	(octave_cell::list_value): Optimize.
-	* ov-struct.cc
-	(octave_struct::subsref): Declare constants as const.
-	(octave_struct::subsasgn): Remove dead branch, declare constants as const.
-	* ov-cs-list.cc (octave_cs_list::octave_cs_list (const Cell&)):
-	Optimize.
-	* oct-obj.cc (octave_value_list::octave_value_list (const
-	std::list<octave_value_list>&)): New constructor.
-	* oct-obj.h: Declare it.
-	* pt-arg-list.cc (convert_to_const_vector): Optimize.
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find): Use const
-	reference to avoid redundant copy.
-	* ov-usr-fcn.cc (octave_user_function::bind_automatic_vars): Optimize.
-	(octave_user_function::octave_all_va_args): Optimize.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.h (Cell::Cell (octave_value_list)): Only declare.
-	(Cell::index (*)): Change resize_ok type to bool.
-	* Cell.cc (Cell::Cell (octave_value_list)): Redefine.
-	* oct-obj.h, oct-obj.cc: Change octave_value_list::data to
-	Cell variable, reflect changes.
-
-2009-01-22  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (do_which (std::ostream&, const std::string&), Fwhich):
-	Delete.
-	(do_which (const std::string&, std::string&), F__which__):
-	New functions.
-	* do_which (const std::string&):
-	Call do_which (const std::string&, std::string&) to do the work.
-
-2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
-
-	* defun-int.h (print_usage): No longer mark as deprecated.
-	* defun.cc (print_usage): Simply call feval to execute print_usage.m.
-	* help.cc (additional_help_message, display_names_from_help_list,
-	display_symtab_names, simple_help, try_info, help_from_info,
-	display_help_text, display_usage_text, raw_help_from_list,
-	help_from_list, help_from_symbol_table, help_from_file,
-	builtin_help, Fhelp, display_file, do_type, Ftype,
-	first_help_sentence, print_lookfor, Flookfor): Delete.
-	(looks_like_html, raw_help_from_map, raw_help, do_get_help_text,
-	F__operators__, F__keywords__, F__builtins__,
-	file_is_in_dir, F__list_functions__): New functions.
-	(pair_type, map_iter): New typedefs.
-	(operators, keywords): Use pair_type for elements of list.
-	(names): Use map for (keyword, doc) lists.
-	(make_name_list): Sprinkle with const.
-	* help.h (display_help_text, display_usage_text,
-	additional_help_message): Delete decls.
-
-2009-01-22  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Check OCTAVEUSE_OS_X_API instead
-	of __APPLE__ && __MACH__.
-
-	* display.cc (display_info::init): Get info for Windows and OS X
-	systems.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-idx.cc (tree_index_expression::lvalue): Correct tmpi when seeing
-	a plain struct component.
-	* ov-struct.cc (octave_struct::subsasgn): Use proper type substr in
-	empty_conv.
-
-2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc: Remove HAVE_QRUPDATE check.
-	* DLD-FUNCTIONS/chol.cc: Ditto.
-
-2009-01-21  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (display.o): Add X11_INCFLAGS to CPPFLAGS.
-	(octave$(EXEEXT)): Link with X11_LIBS.
-
-	* display.h, display.cc: New files.
-	* graphics.cc (default_screendepth, default_screensize,
-	default_screenpixelsperinch): New functions.
-	* graphics.h.in (class root_figure::properties): New property,
-	screendepth.  Use default_screensize to initialize screensize
-	property.  Use default_screenpixelsperinch to initialize
-	screenpixelsperinch property.
-
-	* graphics.cc (properties::init): Set default xlabel, ylabel,
-	zlabel, and title properties that differ from default text
-	properties.
-
-2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-range.cc: Define & register range-scalar ops.
-
-2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::subsref (..., bool auto_add)): New method.
-	(octave_value::next_subsref (bool auto_add, ...)): New method.
-	* ov.cc (octave_value::next_subsref (bool auto_add, ...)): New method.
-	* ov-base.h (octave_base_value::subsref (..., bool auto_add)): New
-	virtual method.
-	* ov-base.cc (octave_base_value::subsref (..., bool auto_add)): New
-	virtual method.
-	* ov-cell.cc (octave_cell::subsref (..., bool auto_add)): New virtual
-	method.
-	* ov-cell.h (octave_cell::subsref (..., bool auto_add)): Declare it.
-	* ov-struct.cc (octave_struct::subsref (..., bool auto_add)): New
-	virtual method.
-	(octave_struct::subsref (const std::string& type, const
-	std::list<octave_value_list>& idx)): Do not allow resizing.
-	* ov-struct.h (octave_struct::subsref (..., bool auto_add)): Declare
-	it.
-	* ov-struct.cc (octave_struct::dotref (..., bool auto_add)): New
-	virtual method.
-	* ov-struct.h (octave_struct::dotref (..., bool auto_add)): Declare it.
-	* pt-idx.cc (tree_index_expression::rvalue): Do not reevaluate already
-	evaluated part of the index chain.
-	(tree_index_expression::rvalue): Do not reevaluate already evaluated
-	part of the index chain. Do not actually perform trailing indexing.
-	Do not allow indexing cs-lists.
-
-2009-01-20  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Ffstat): New function.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete, Fqrshift):
-	Reflect changes in liboctave.
-	* DLD-FUNCTIONS/chol.cc (Fcholupdate, Fcholinsert):
-	Reflect changes in liboctave.
-
-2009-01-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::make_unique (int)): New method.
-	* oct-obj.h (octave_value_list::octave_value_list (const Cell&)): New
-	constructor.
-	* ov-cell.cc (octave_cell::subsasgn): Allow composed {} indexing
-	in multi-assignments. Optimize.
-	* ov-struct.cc (octave_struct::subsasgn): Correct composed {} indexing
-	in multi-assignments. Optimize & fix bugs.
-	* pt-idx.cc (tree_index_expression::lvalue): Rewrite to allow
-	specifying cs-list anywhere in index chain, be more robust.
-
-2009-01-19  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (grab_comment_block): If not reading input from a file,
-	bail out at first newline inside a comment.
-
-	* lex.l (lexer_debug_flag): New static variable.
-	(F__lexer_debug_flag__): New function.
-	(LEXER_DEBUG): New macro.  Use it in all patterns.
-	(DISPLAY_TOK_AND_RETURN): Also display token if lexer_debug_flag
-	is set.
-	(process_comment): Display comment if lexer_debug_flag is set.
-	(display_character, display_state, lexer_debug): New static functions.
-	(xunput): Display character if lexer_debug_flag is set.
-
-2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h: Describe usage of storable_value and make_storable_value.
-	* ov.cc: Remove FIXME comment.
-
-2009-01-15  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Freshape): Include mismatched dimensions in error message.
-	From Robert Millan <rmh@aybabtu.com>.
-
-2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.cc (octave_value::maybe_economize): New method.
-	(octave_value::non_null_value): rename to storable_value.
-	(octave_value::make_non_null_value): rename to make_storable_value.
-	* ov-base.h (octave_base_value::maybe_economize): New method.
-	* ov-base-mat.h (octave_base_mat::maybe_economize): New override.
-	* oct-obj.cc (octave_value_list::normalize_null_values):
-	Rename to make_storable_values, use make_storable_value.
-	* oct-obj.h: Ditto.
-	* ov-builtin.cc: non_null_value -> storable_value.
-	* ov-cell.cc: Ditto.
-	* ov-struct.cc: Ditto.
-	* pt-decl.h: Ditto.
-
-2009-01-15  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image):
-	Initialize bitdepth.
-
-2009-01-14  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/chol.cc,
-	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
-	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
-	DLD-FUNCTIONS/givens.cc, DLD-FUNCTIONS/hess.cc,
-	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/qz.cc,
-	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/svd.cc,
-	DLD-FUNCTIONS/syl.cc, data.cc, mappers.cc:
-	Use ifnottex instead of ifinfo.
-
-2009-01-14  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_set): Call do_clear after disabling
-	add_hook.
-
-2009-01-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* dirfns.cc (Freadddir): qsort -> sort.
-	* graphics.cc (maybe_set_children): Ditto.
-	* help.cc (simple_help): Ditto.
-	* input.cc (generate_possible_completions): Ditto.
-	* oct_map.cc (keys_ok): Ditto.
-	* ov-fcn-inline.cc (Finline): Ditto.
-	* variables.cc (Fisrawcommand): Ditto.
-
-2009-01-12  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (maximum_braindamage): Set confirm_recursive_rmdir to
-	false.
-
-	* strfns.cc (Fstrcmp, Fstrncmp): Simplify by initializing all
-	elements of output to false with constructor argument.
-
-2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strfns.cc (Fstrncmp): New test.
-
-2009-01-12  John W. Eaton  <jwe@octave.org>
-
-	* pt-stmt.h (tree_statement::is_null_statement): New function.
-	* parse.y (set_stmt_print_flag): Return list.  Remove trailing
-	null statements from list.
-	(list, simple_list): Simplify action.
-	(make_statement, make_statement_list, append_statement_list):
-	Always create statements and them to the list.
-
-	* base-list.h (octave_base_list::push_front,
-	octave_base_list::push_back, octave_base_list::pop_front,
-	octave_base_list::pop_back): New functions.
-
-	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete, Fqrshift):
-	Require args to be numeric, not necessarily matrix objects.
-
-2009-01-12  Ben Abbott  <bpabbott@mac.com>
-
-	* graphics.h.in (text::properties::fontunits): Fix typo in list of
-	possible values.
-
-2009-01-12  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fstrvcat, Fchar): Use queue to avoid duplicate calls
-	to all_strings.
-
-2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strfns.cc (Fstrvcap): New function.
-
-2008-11-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strfns.cc (Fchar, Fischar, Fstrncmp, Flist_in_columns):
-	Improve documentation strings.  Add examples and tests.
-
-2009-01-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-perm.cc (octave_perm_matrix::do_index_op): Return shallow copy
-	when indexed by (:,:).
-	* ov-base-mat.cc (octave_base_diag::do_index_op): Return shallow copy
-	when indexed by (:,:). Optimize indexing equivalent to resizing.
-	* data.cc: Fix tests.
-	* mappers.cc: Fix tests.
-
-2009-01-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
-	ov-base.cc, ov-base.h, ov-perm.h, ov-range.h, ov.h: Add full_value
-	methods to octave_value, octave_base_value and its relevant
-	subclasses.
-	* data.cc (Ffull): New DEFUN.
-	* DLD-FUNCTIONS/sparse.cc (Ffull): move to data.cc.
-2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::is_copy_of): New method.
-	* ov-struct.cc (numeric_conv): Add output parameter orig.
-	(octave_struct::subsasgn): Temporarily erase duplicate lhs value prior
-	to assignment.
-
-2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.cc (octave_value_list::all_scalars): New method.
-	* oct-obj.h: Declare it.
-	* ov-cell.cc (octave_cell::subsasgn): Disable assigning
-	to non-scalar {}-indexed cell, unless in a multi-assignment.
-
-2009-01-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/sparse.cc (Ffull): Convert diagonal & permutation
-	matrices, leave other classes untouched.
-
-2009-01-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-cdm-cdm.cc: Install missing widening op.
-	* OPERATORS/op-dm-dm.cc: Ditto.
-	* OPERATORS/op-fcdm-fcdm.cc: Ditto.
-	* OPERATORS/op-fdm-fdm.cc: Ditto.
-	* OPERATORS/op-pm-pm.cc: Ditto.
-	* OPERATORS/op-fpm-fpm.cc: Ditto.
-
-2009-01-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::subsasgn): Put erased copy back after
-	make_unique has been called.
-
-2009-01-09  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.cc: Calculate normals for surface boundaries, use
-	more neighboring points to calculate interior normals
-
-2009-01-09  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (get_user_input (void)): Don't increment input_line_number.
-	* lex.l (xunput): New function.  Use it in place of yyunput
-	anywhere a newline character may be put back on the input stream.
-	Increment input_line_number in all rules that consume newlines
-	characters.
-	(text_yyinput): Increment input_line_number
-	(fixup_column_count): Increment input_line_number.
-	(prep_for_function): Set input_line_number to 1, not 0.
-	(reset_parser): Set input_line_number to current_command_number,
-	not current_command_number-1.
-	(flex_stream_reader::ungetc): Call xunput, not yyunput.
-	* parse.y (input_line_number): Initialize to 1, not 0.
-	(text_getc): Increment input_line_number correctly.
-	(stdio_stream_reader::ungetc): Decrement input_line_number if
-	putting back a newline character.
-	(parse_fcn_file): Set input_line_number to 1, not 0.
-	(eval_string): Unwind-protect input_line_number and
-	current_input_column.
-
-	* parse.y (make_statement): New function.
-	(statement): Use it.
-	(make_statement_list, append_statement_list): New functions.
-	(simple_list1, list1): Use them.
-
-2009-01-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (octave_cell::subsasgn): Erase duplicate lhs value
-	prior to assignment to avoid a redundant copy.
-
-2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* mappers.cc (Ftoascii), mappers.cc (Ftolower), mappers.cc
-	(Ftoupper), DLD-FUNCTIONS/regexp.cc (Fregexp),
-	DLD-FUNCTIONS/regexp.cc	(Fregexpi), DLD-FUNCTIONS/regexp.cc
-	(Fregexprep): Add references.
-
-2008-12-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-obj.h, oct-obj.cc (octave_value_list::valid_scalar_indices): Remove.
-	* ov-base-diag.cc, ov-base-diag.h, ov-base-scalar.cc, ov-base.h,
-	ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc, ov-bool-sparse.h,
-	ov-bool.cc, ov-bool.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.h,
-	ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-cx-sparse.cc, ov-cx-sparse.h, ov-float.cc, ov-float.h,
-	ov-flt-complex.cc, ov-flt-complex.h, ov-flt-cx-mat.cc,
-	ov-flt-cx-mat.h, ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h,
-	ov-perm.cc, ov-perm.h, ov-range.h, ov-re-mat.cc, ov-re-mat.h,
-	ov-re-sparse.cc, ov-re-sparse.h, ov-scalar.cc, ov-scalar.h,
-	ov-str-mat.cc, ov-str-mat.h, ov.h:
-	Remove valid_as_scalar_index and valid_as_zero_index methods
-	from octave_value, octave_base_value and all of its subclasses.
-
-2008-12-26  Francesco Potortì  <pot@gnu.org>
-
-	* data.cc (resize): Add cross reference to postpad.
-
-2008-12-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-save.h (load_save_format_type, load_save_format_options): New
-	enums.
-	(load_save_format): Convert to a class.
-	* load-save.cc (do_save(..., const octave_value&,...)): Use fmt.type
-	in switch. Use options of LS_MAT_ASCII.
-	(do_load, write_header): Use format.type in switch.
-	* ls-mat-ascii.h (save_mat_ascii_data): Add tabs option.
-	* ls-mat-ascii.cc (save_mat_ascii_data): Implement it.
-
-2008-12-24  Ben Abbott  <bpabbott@mac.com>
-
-	* DLD-FUNCTIONS/chol.cc: Compare results to 0 in tests.
-	Delete spurious function calls in test block.
-
-2008-12-24  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/eigs.cc: Use "testif HAVE_ARPACK" to skip tests if
-	ARPACK is not available.
-
-	* Makefile.in (DLD_XSRC): Add eigs.cc to the list.
-
-	* load-save.cc (parse_save_options): Handle -double.
-
-2008-12-23  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/eigs.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it here.
-
-2008-12-22  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/__voronoi__.cc (F__voronoi__): Resize AtInf array
-	before returning it.
-
-2008-12-12  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/chol.cc (Fcholinv): Add test.
-
-2008-12-12  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ls-hdf5.cc (add_hdf5_data): Check for diagonal & permutation
-	matrices and convert them to full prior to saving.
-
-2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-mat.cc (Fdouble): Handle diagonal & perm matrices.
-	* ov-flt-re-mat.cc (Fsingle): Handle diagonal & perm matrices.
-
-2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-diag.cc (octave_base_diag<DMT,MT>::subsasgn): New method.
-	* ov-base-diag.h (octave_base_diag<DMT,MT>::subsasgn): Declare it.
-	(octave_base_diag<DMT,MT>::chk_valid_scalar): New method decl.
-
-	* ov-re-diag.cc (octave_diag_matrix::chk_valid_scalar): New method
-	override.
-	* ov-re-diag.h: Declare it.
-	* ov-flt-re-diag.cc (octave_float_diag_matrix::chk_valid_scalar): New
-	method override.
-	* ov-flt-re-diag.h: Declare it.
-	* ov-cx-diag.cc (octave_complex_diag_matrix::chk_valid_scalar): New
-	method override.
-	* ov-cx-diag.h: Declare it.
-	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::chk_valid_scalar):
-	New method override.
-	* ov-flt-cx-diag.h: Declare it.
-
-2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/expm.cc: Remove.
-	* Makefile.in: Update.
-
-2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::empty_clone): Construct an
-	empty matrix instead of zero.
-
-2008-12-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* mappers.cc (Ftolower): Make lower alias of tolower, add tests
-	* mappers.cc (Ftoupper): Make upper alias of toupper, add tests
-
-2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/balance.cc (Fbalance): Exploit the new AEPBAL functionality.
-
-2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xpow.cc ( xpow (const DiagMatrix& a, double b),
-	xpow (const DiagMatrix& a, const Complex& b),
-	xpow (const ComplexDiagMatrix& a, double b),
-	xpow (const ComplexDiagMatrix& a, const Complex& b),
-	xpow (const FloatDiagMatrix& a, float b),
-	xpow (const FloatDiagMatrix& a, const FloatComplex& b),
-	xpow (const FloatComplexDiagMatrix& a, float b),
-	xpow (const FloatComplexDiagMatrix& a, const FloatComplex& b)):
-	New methods.
-	* xpow.h: Declare them.
-	* OPERATORS/op-dms-template.cc: Support diagonal matrix ^ scalar.
-
-2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-re-diag.cc (octave_diag_matrix::save_binary,
-	octave_diag_matrix::load_binary): New methods.
-	* ov-re-diag.h: Declare them.
-	* ov-flt-re-diag.cc (octave_float_diag_matrix::save_binary,
-	octave_float_diag_matrix::load_binary): New methods.
-	* ov-flt-re-diag.h: Declare them.
-	* ov-cx-diag.cc (octave_complex_diag_matrix::save_binary,
-	octave_complex_diag_matrix::load_binary): New methods.
-	* ov-cx-diag.h: Declare them.
-	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::save_binary,
-	octave_float_complex_diag_matrix::load_binary): New methods.
-	* ov-flt-cx-diag.h: Declare them.
-	* ov-perm.cc (octave_perm_matrix::save_binary,
-	octave_perm_matrix::load_binary): New methods.
-	* ov-perm.h: Declare them.
-
-2008-12-06  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::load_binary): Call istream::get
-	rather than istream::read to supply null terminating character.
-
-2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
-	* file-io.cc, gl-render.cc, load-save.cc, ls-hdf5.cc, ls-mat4.cc,
-	ls-mat5.cc, ls-oct-binary.cc, mex.cc, oct.h, ov-base-int.cc,
-	ov-bool-mat.cc, ov-bool-sparse.cc, ov-cell.cc, ov-class.cc,
-	ov-cx-mat.cc, ov-cx-sparse.cc, ov-fcn-handle.cc, ov-fcn-inline.cc,
-	ov-flt-cx-mat.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
-	ov-str-mat.cc, ov-struct.cc, toplev.cc,
-	DLD-FUNCTIONS/__lin_interpn__.cc, DLD-FUNCTIONS/amd.cc,
-	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/gcd.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/symrcm.cc:
-	Include oct-locbuf.h.
-
-2008-12-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base-diag.cc (save_ascii, load_ascii): Save natively.
-	* ov-base-diag.h (load_ascii): Declare.
-	* ov-perm.cc (save_ascii, load_ascii): Save natively.
-	* ov-perm.h (load_ascii): Declare.
-
-2008-12-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strfns.cc (Fchar): Add test from str2mat.m
-
-2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov.h (octave_value::is_perm_matrix): New method.
-	* ov-base.h (octave_base_value::is_perm_matrix): New method.
-	* ov-perm.h (octave_perm_matrix::is_perm_matrix): New method.
-	* DLD-FUNCTIONS/inv.cc (Finv): Handle permutation matrices specially,
-	compute rcond for diagonal matrices.
-	* DLD-FUNCTIONS/det.cc (Fdet): Handle permutation & diagonal matrices
-	specially.
-
-2008-12-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-perm.h: New source.
-	* ov-perm.cc: New source.
-	* ov-flt-perm.h: New source.
-	* ov-flt-perm.cc: New source.
-	* ov-base-diag.cc (octave_base_diag<DMT, MT>::do_index_op):
-	If subscripting an identity matrix by permutation(s), return a
-	permutation matrix object.
-	* ov.cc (octave_value::octave_value (const PermMatrix&)): New
-	constructor.
-	* ov.cc (octave_value::octave_value (const PermMatrix&)): Declare it.
-	* op-cm-pm.cc: New source.
-	* op-fcm-fpm.cc: New source.
-	* op-fm-fpm.cc: New source.
-	* op-fpm-fcm.cc: New source.
-	* op-fpm-fm.cc: New source.
-	* op-fpm-fpm.cc: New source.
-	* op-m-pm.cc: New source.
-	* op-pm-cm.cc: New source.
-	* op-pm-m.cc: New source.
-	* op-pm-pm.cc: New source.
-	* op-pm-template.cc: New source.
-	* Makefile.in: Include new sources.
-	* DLD-FUNCTIONS/qr.cc (Fqr): Reflect interface changes of QR classes.
-
-2008-12-03  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (bp_table::do_get_breakpoint_list): Style fixes.
-
-2008-12-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::is_diag_matrix): New virtual method.
-	* ops.h (CONCAT2, CONCAT3): New macros. Use CONCAT macros instead of
-	direct token pasting to avoid disabling argument prescan.
-	* xdiv.cc, xdiv.h: Implement xdiv and xleftdiv overloads for diagonal
-	and mixed dense-diagonal operands.
-
-	* ov-re-diag.h: New source.
-	* ov-re-diag.cc: New source.
-	* ov-flt-re-diag.h: New source.
-	* ov-flt-re-diag.cc: New source.
-	* ov-base-diag.h: New source.
-	* ov-base-diag.cc: New source.
-	* OPERATORS/op-m-dm.cc: New source.
-	* OPERATORS/op-m-cdm.cc: New source.
-	* OPERATORS/op-fm-fdm.cc: New source.
-	* OPERATORS/op-fm-fcdm.cc: New source.
-	* OPERATORS/op-fdm-fs.cc: New source.
-	* OPERATORS/op-fdm-fm.cc: New source.
-	* OPERATORS/op-fdm-fdm.cc: New source.
-	* OPERATORS/op-fdm-fcs.cc: New source.
-	* OPERATORS/op-fdm-fcm.cc: New source.
-	* OPERATORS/op-fdm-fcdm.cc: New source.
-	* OPERATORS/op-fcm-fdm.cc: New source.
-	* OPERATORS/op-fcm-fcdm.cc: New source.
-	* OPERATORS/op-fcdm-fs.cc: New source.
-	* OPERATORS/op-fcdm-fm.cc: New source.
-	* OPERATORS/op-fcdm-fdm.cc: New source.
-	* OPERATORS/op-fcdm-fcs.cc: New source.
-	* OPERATORS/op-fcdm-fcm.cc: New source.
-	* OPERATORS/op-fcdm-fcdm.cc: New source.
-	* OPERATORS/op-dms-template.cc: New source.
-	* OPERATORS/op-dm-template.cc: New source.
-	* OPERATORS/op-dm-s.cc: New source.
-	* OPERATORS/op-dm-m.cc: New source.
-	* OPERATORS/op-dm-dm.cc: New source.
-	* OPERATORS/op-dm-cs.cc: New source.
-	* OPERATORS/op-dm-cm.cc: New source.
-	* OPERATORS/op-dm-cdm.cc: New source.
-	* OPERATORS/op-cm-dm.cc: New source.
-	* OPERATORS/op-cm-cdm.cc: New source.
-	* OPERATORS/op-cdm-s.cc: New source.
-	* OPERATORS/op-cdm-m.cc: New source.
-	* OPERATORS/op-cdm-dm.cc: New source.
-	* OPERATORS/op-cdm-cs.cc: New source.
-	* OPERATORS/op-cdm-cm.cc: New source.
-	* OPERATORS/op-cdm-cdm.cc: New source.
-	* Makefile.in: Include them.
-
-	* ov-re-mat.cc (octave_matrix::diag): New method override.
-	* ov-re-mat.h: Declare it.
-	* ov-cx-mat.cc: Likewise with octave_complex_matrix.
-	* ov-cx-mat.h: Likewise with octave_complex_matrix.
-	* ov-flt-re-mat.cc: Likewise with octave_float_matrix.
-	* ov-flt-re-mat.h: Likewise with octave_float_matrix.
-	* ov-flt-cx-mat.cc: Likewise with octave_float_complex_matrix.
-	* ov-flt-cx-mat.h: Likewise with octave_float_complex_matrix.
-	* ov.cc (octave_value::octave_value (const DiagMatrix&))
-	(octave_value::octave_value (const FloatDiagMatrix&))
-	(octave_value::octave_value (const ComplexDiagMatrix&))
-	(octave_value::octave_value (const FloatComplexDiagMatrix&)):
-	Construct a diagonal matrix object.
-	* data.cc (Fdiag): Support explicit dimensions. Fix tests.
-	(Feye): Return diagonal matrix objects if possible. Fix tests.
-	* mappers.cc (Freal, Fimag): Fix tests.
-	* DLD-FUNCTIONS/inv.cc (Finv): Handle diagonal matrix objects.
-	* ov-range.h (octave_range::diag): Declare only.
-	* ov-range.cc (octave_range::diag): Return DiagMatrix if possible.
-
-2008-11-25  Jaroslav Hajek  <highegg@gmail.com>
-	* ov.cc (octave_value::is_equal): New member function.
-	* ov.h: Declare it.
-	* pt-select.cc (tree_switch_case::label_matches): Call
-	octave_value::is_equal.
-
-2008-12-04  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* DLD-FUNCTIONS/cellfun.cc: Added more tests for cellfun.
-
-2008-11-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.h (octave_base_value::type_conv_info): New class.
-	* ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc,
-	ov-bool-sparse.h, ov-bool.cc, ov-bool.h, ov-complex.cc, ov-complex.h,
-	ov-cx-mat.cc, ov-cx-mat.h, ov-null-mat.cc, ov-null-mat.h,
-	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc,
-	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov.h:
-	Return type_conv_info instead of type_conv_fcn from
-	numeric_conversion_function and numeric_demotion_function
-	methods.
-	* ov-base.cc (octave_base_value::numeric_assign): Try biased conversion
-	first if possible.
-	* ov.cc (do_binary_op): Likewise. Also, search recursively.
-	* ov.cc (do_cat_op): Likewise.
-
-2008-11-24  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (F__go_delete__): Check validity of handles before
-	deleting them to avoid issues with callback function also deleting
-	the handles.
-
-2008-11-21  John Swensen  <jpswensen@comcast.net>
-
-	* debug.cc (bp_table::do_get_breakpoint_list): Avoid modifying
-	bp_map while iterating over it.
-
-2008-11-21  Jarkko Kaleva  <d3roga@gmail.com>
-
-	* DLD-FUNCTIONS/eig.cc (Feig): Handle generalized eigenvalues and
-	eigenvectors.
-
-2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD_FUNCTIONS/det.cc: Include only DET.h. Retrieve & matrix type &
-	store it after calculation if possible.
-
-2008-11-17  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::dir_info::update): Simplify previous
-	change.
-
-	* load-path.h (load_path::dir_info::abs_dir_name): New data member.
-	(load_path::dir_info::dir_info, load_path::dir_info::operator =):
-	Copy abs_dir_name.
-	(load_path::abs_dir_cache_type, load_path::dir_cache_iterator,
-	load_path::const_dir_cache_iterator): New typedefs.
-	(load_path::abs_dir_cache): New static data member.
-	(load_path::dir_info:dir_info): New constructor.
-	* load-path.cc (load_path::abs_dir_cache): Define new static data
-	member.
-	(load_path::dir_info::update): Look in abs_dir_cache for relative
-	directory names.
-	(load_path::dir_info::initialize): Update abs_dir_cache here.
-
-2008-11-13  John W. Eaton  <jwe@octave.org>
-
-	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-uint8.h,
-	ov-uint16.h, ov-uint32.h, ov-uint64.h: Don't define
-	OCTAVE_INT_NDARRAY_T.
-	* ov-intx.h (class OCTAVE_VALUE_INT_MATRIX_T,
-	class OCTAVE_VALUE_INT_SCALAR_T): Use intNDArray<OCTAVE_INT_T>
-	instead of OCTAVE_INT_NDARRAY_T.
-	(OCTAVE_VALUE_INT_MATRIX_T::increment,
-	OCTAVE_VALUE_INT_MATRIX_T::decrement,
-	OCTAVE_VALUE_INT_SCALAR_T::increment,
-	OCTAVE_VALUE_INT_SCALAR_T::decrement): Convert 1 to OCTAVE_INT_T.
-
-2008-11-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* strfns.cc (Fchar): adapt to conserve empty strings, add tests
-
-2008-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* dirfcn.cc (Ffilesep): Make it return all file separators when 'all'
-	is given as argument.
-
-	* DLD-FUNCTIONS/getrusage.cc: Undefine min/max.
-	* TEMPLATE-INST/Array-os.cc: Declare Array<bool> as extern template.
-
-2008-11-12  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-cell.cc (op_catop_matrix_cell): Cast args in the correct
-	order.
-	* OPERATORS/op-struct.cc (op_catop_matrix_struct): Ditto.
-
-2008-11-11  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-assign.cc: Fix handling of empty cs-lists in assignment LHS.
-
-2008-11-11  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (<MATRIX_START>{S}+): Don't insert separator if next token
-	is a separator.
-
-	* parse.y (F__parser_debug_flag__): New function.
-
-2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
-
-	* xnorm.cc: New source.
-	* xnorm.h: New header file.
-	* Makefile.in: Include xnorm.cc in the build process.
-	* data.cc (Fnorm): Call xnorm, xcolnorms, xrownorms or xfrobnorm
-	to do the actual work.
-
-2008-10-31  David Bateman  <dbateman@free.fr>
-
-	* ov-base-scalar.h (octave_value octave_base_scalar::reshape
-	(const dim_vector&) const): New method.
-
-2008-10-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::index): Copy key_list.
-
-2008-10-31  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (void image::init (void)): Add a constraint for
-	logical cdata.
-
-	* graphics.h.in (base_property::delete_listener): New method.
-	(property::delete_listener): New method.
-	(base_graphics_object::delete_listener): New method.
-	(base_graphics_object::delete_property_listener): New method.
-	(base_graphics_object::remove_all_listeners): New method.
-	(graphics_object::delete_property_listener): New method.
-	(axes::set_defaults): Call remove_all_listeners.
-	* graphics.cc (void base_properties::delete_listener): New method
-	(void base_graphics_object::remove_all_listeners (void)): New method
-	(Fdellistener): New command to remove listener functions associated
-	with a property.
-
-2008-10-30  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (axes::properties): Add keyreverse property.
-	* graphics.cc (axes::properties::set_defaults): Initialize
-	keyreverse property.
-
-2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.h (Cell::assign (const Array<idx_vector>&, ...),
-	Cell::delete_elements (const Array<idx_vector>&, ...)):
-	New member functions.
-	* Cell.cc (Cell::assign (const octave_value_list&, ...),
-	Cell::delete_elements (const octave_value_list&, ...)):
-	Call Array<T>::assign.
-	* DLD-FUNCTIONS/dlmread.cc: Call Array<T>::resize_fill.
-	* ov-base-mat.cc (octave_base_matrix::assign): Call Array<T>::assign.
-	(octave_base_matrix::delete_elements):: Call Array<T>::delete_elements.
-	* ov-cell.cc (Fcell): Call Array<T>::chop_trailing_singletons,
-	simplify.
-	* ov-cx-mat.cc (octave_complex_matrix::assign): Call Array<T>::assign.
-	* ov-flt-cx-mat.cc (octave_float_complex_matrix::assign): Call
-	Array<T>::assign.
-	* ov-list.cc (octave_list::subsasgn): Call Array<T>::assign.
-	* pr-output.cc (PRINT_ND_ARRAY): Use zero-based indices.
-
-2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* data.cc (Fcolumns): Remove "and" from @seealso string.
-	* mappers.cc (Fgamma, Flgamma): Replace @seealso reference to
-	deprecated gammai by gammainc.
-	* DLD-FUNCTIONS/sqrtm.cc (Fsqrtm): Remove reference to Octave
-	Forge function funm.
-	* DLD-FUNCTIONS/qz.cc (Fqz): removed @seealso reference to Octave
-	Forge function dare.
-	* DLD-FUNCTIONS/rcond.cc (Frcond): removed @seealso reference to
-	mldivide.
-	* debug.cc (Fdbstop): Fix @seealso references and function name in
-	docstring of dbnext.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Remove @seealso reference
-	to isclass.
-	* syscalls.cc (Fwaitpid): Replace WCONTINUED by WCONTINUE.
-	* oct-hist.cc (Fhistory_size, Fsaving_history): Fix @seealso
-	references to history_timestamp_format_string.
-	* DLD-FUNCTIONS/luinc.cc (Fluinc): Remove reference to missing
-	function cholinc.
-
-2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc (Fcholinsert, Fcholdelete, Fcholshift): Fix
-	inline docs.
-
-2008-10-28  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (finish_function): Clear local variables in function scope.
-	* symtab.h (symbol_table::clear_variables): New argument, scope.
-
-2008-10-28  Brian Gough  <bjg@gnu.org>
-
-	* DLD-FUNCTIONS/besselj.cc: Added tests.
-
-2008-10-23  John W. Eaton  <jwe@octave.org>
-
-	* oct-hist.c (initialize_history): New arg, read_history_file)
-	* oct-hist.h: Fix decl.
-	* octave.cc (octave_main): Set read_history_file to false if
-	--no-history option is specified.  Pass read_history_file to
-	initialize_history.
-
-	* DLD-FUNCTIONS/fltk_backend.cc: Update initialization comment.
-
-2008-10-22  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (figure_manager::do_close_all):
-	Rename from close_all.  Now private.
-	(figure_manager::do_new_window): Rename from new_window.
-	Now private.
-	(figure_manager::do_delete_window): Rename from delete_window.
-	Now private.
-	(figure_manager::do_mark_modified): Rename from mark_modified.
-	Now private.
-	(figure_manager::do_get_size): Rename from get_size.  Now private.
-	(figure_manager::close_all, figure_manager::do_new_window,
-	figure_manager::do_delete_window,
-	figure_manager::do_mark_modified, figure_manager::do_get_size):
-	New static functions.
-	(figure_manager::instance_ok): New function.
-	(figure_manager::Instance): Delete.  Eliminate all uses in favor
-	of static methods that call instance_ok and forward to private
-	member functions.
-	(figure_manager::instance): New static data member.
-	(figure_manager::hnd2idx, figure_manager::figprops2idx,
-	figure_manager::figprops2idx, figure_manager::str2idx): Now static.
-
-	* DLD-FUNCTIONS/fltk_backend.cc (figure_manager::default_size):
-	Increase default window size.
-
-	* graphics.cc (figure::properties::remove_child): New function.
-	* graphics.h.in: Provide decl.
-
-	* gl-render.cc (opengl_renderer::draw): Get all children.
-
-	* DLD-FUNCTIONS/fltk_backend.cc (__fltk_redraw__):
-	Check for "root" object, not "root_figure".
-
-	* graphics.h.in (base_properties::get_all_children): New function.
-
-2008-10-22  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (line::properties, surface::properties): Add data
-	source properties.
-
-2008-10-21  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (axes::properties::delete_children): Delete decl.
-
-	* graphics.h.in (gh_manager::is_handle_visible): New function.
-	(axes::properites): Move title property after label properties.
-	(graphics_object::is_handle_visible): New function.
-	(base_properties::is_handle_visible): New function.
-	(base_properties): Mark children property with G.
-	* graphics.cc (axes::properties::set_text_child): New function.
-	(axes::properties::set_title, axes::properties::set_xlabel,
-	axes::properties::set_ylabel, axes::properties::set_zlabel): Use it.
-	(base_property::get_children): New function.  Only
-	return handles that are visible.
-	(axes::properties::delete_text_child): Set handlevisibility to
-	"off" for newly created object and add it to the list of children.
-	Call base_properties::remove_child on previous handle value.
-	(axes::properties::set_defaults): Don't explicitly delete xlabel,
-	ylabel, zlabel, and title handles.  Reinitialize them after
-	deleting children.
-	(axes::properties::remove_child): Don't explicitly delete xlabel,
-	ylabel, zlabel, and title handles.
-	(axes::properties::init): Move here from graphics.h.in.  Set
-	handlevisibility to "off" for xlabel, ylabel, zlabel, and title
-	and add them to the list of children.
-	(axes::properties::delete_children): Delete.
-
-	* genprops.awk: Allow whitespace between BEGIN_PROPERTIES and
-	opening paren.  Accept optional second argument for graphics
-	object name.
-	* graphics.h.in (root_figure properties): Pass "root" as second
-	arg to BEGIN_PROPERTIES.
-
-2008-10-16  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (make_handle_fraction): New static function.
-	(gh_manager::get_handle): Use it.
-	(gh_manager::do_free): Call make_handle_fraction to replace
-	fractional part of non-figure handles.
-
-	* graphics.cc (base_properties::remove_child): Handle children as
-	a column vector instead of a row vector.
-
-	* utils.cc (Fis_absolute_filename, Fis_rooted_relative_filename,
-	Fmake_absolute_filename, Ffind_dir_in_path): New functions.
-
-2008-10-16  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void axes::properties::set_defaults
-	(base_graphics_object&,	const std::string&)): Preserve font
-	and position properties if the axis is "replaced".
-
-2008-10-16  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (class axes::properties): New property: interpreter.
-
-2008-10-15  David Bateman  <dbateman@free.fr>
-
-	* ov-class.c (Fsuperiorto, Finferiorto): Allow more than one class
-	to be defined at a time.
-
-2008-10-12  David Bateman  <dbateman@free.fr>
-
-	* pt-colon.cc (octave_value tree_colon_expression::make_range
-	(const octave_value&, const octave_value&, const octave_value&)):
-	Treating class overloading of colon operator.
-	(octave_value tree_colon_expression::rvalue (void)): Ditto.
-
-2008-10-10  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (base_properties::adopt): Place new child at front
-	of list, not end.  Make list of children a column vector instead
-	of a row vector.
-
-	* graphics.cc (gh_manager::do_free): Set the beingdeleted
-	property, then delete the children, then execute the deletefcn.
-	(axes::properties::set_defaults, axes::properties::remove_child,
-	axes::properites::delete_children): Call delete_text_child to
-	manage the title, xlabel, ylabel, and zlabel properties.
-	(axes::properties::get_title, axes::properties::get_xlabel,
-	axes::properties::get_ylabel, axes::properties::get_zlabel): Delete.
-
-	* graphics.h.in (axes::properites::title,
-	axes::properites::xlabel, axes::properites::ylabel,
-	axes::properites::zlabel): No longer mutable.  Don't generate
-	factory default values or custom get functions for these
-	properties.
-
-	* graphics.cc (axes::properties::delete_text_child): New function.
-	* graphics.h.in: Provide decl.
-
-	* graphics.h.in (graphics_object::type): New function.
-
-2008-10-10  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (radio_property axes::properties::__colorbar__):
-	Delete.
-	* graphics.cc (void axes::properties::sync_positions (void)):
-	Disable code synchronizing outerposiiton and position.
-	(void axes::properties::set_defaults (base_graphics_object&,
-	const std::string&): Remove __colorbar__.
-	(F__go_delete__): Don't delete if already being deleting to avoid
-	recursion in callback functions.
-	(F__go_axes_init__): Flag error if handle is deleted during
-	initialization due.
-
-2008-10-09  David Bateman  <dbateman@free.fr>
-
-	* ov-class.cc (Octave_map octave_class::map_value (void) const):
-	Remove.
-	(bool octave_class::save_ascii (std::ostream&),
-	bool octave_class::load_ascii (std::istream&),
-	bool octave_class::save_binary (std::ostream&, bool&),
-	bool octave_class::save_binary (std::ostream&, bool&),
-	bool octave_class::save_hdf5 (hid_t, const char *, bool),
-	bool octave_class::load_hdf5 (hid_t, const char *, bool)):
-	Allow saving and reloading of classes.
-	* ov-class. (Octave_map octave_class::map_value (void) const):
-	Remove.
-	* ls-mat.cc (std::string read_mat5_binary_element (std::istream&,
-	const std::string&, bool, bool&, octave_value&),
-	int save_mat5_element_length (const octave_value&, const std::string&,
-	bool, bool)): Allow saving and loading of classes.
-	* ls-oct-ascii.h (template <class T> bool extract_keyword
-	(std::istream&, const char *, T&, const bool)): Initialize value with
-	null constructor rather than 0.
-
-2008-10-07  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (F__go_delete__): Allow arrays of graphic handles.
-
-2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-i64-i64.cc: Instantiate all 64-bit operations.
-	* OPERATORS/op-ui64-ui64.cc: Instantiate all unsigned 64-bit operations.
-
-2008-10-06  John W. Eaton  <jwe@octave.org>
-
-	* ov-type-conv.h (octave_type_conv_body): Avoid shadow warning
-	from GCC.
-
-2008-10-06  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (static bool is_handle (const octave_value&)): Delete.
-	(static octave_value is_handle (const octave_value&)): New function.
-
-2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.cc (Cell::delete_elements): Don't pass second arg to
-	Array<T>::maybe_delete_elements.
-	* ov-base-mat.cc (octave_base_matrix<MT>::delete_elements): Ditto.
-
-2008-10-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Cell.h (Cell::delete_elements): Declare new member function.
-	* Cell.h (Cell::delete_elements): Define it.
-	* oct-map.cc (Octave_map::maybe_delete_elements): Call delete_elements
-	instead of assign with empty Cell.
-
-2008-10-02  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	Don't insert undefined elements in return list.
-
-2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-str-mat.h (octave-char-matrix-str::assign): Remove declaration.
-	* ov-str-mat.cc (octave-char-matrix-str::assign): Remove definition.
-
-2008-09-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__magick_read__.cc: Only define
-	magick_to_octave_value if HAVE_MAGICK is defined.
-
-2008-09-29  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::load_class_method):
-	Call load_class_constructor if name and dispatch_type are the same.
-
-2008-09-29  David Bateman  <dbateman@free.fr>
-
-	* symtab.cc (octave_value symbol_table::find_function
-	(const std::string&, tree_argument_list *, const string_vector&,
-	octave_value_list&, bool&)): If first character of function name
-	is "@" then look for class specific method.
-
-2008-09-26  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (out_of_date_check_internal):
-	Fix order of arguments in call to load_path::find_method.
-
-2008-09-26  David Bateman  <dbateman@free.fr>
-
-	* ov-class.h (idx_vector index_vector (void) const): Declare new
-	maethod.
-	* ov-class.cc (idx_vector index_vector (void) const): Define new
-	method.
-	* (Fismethod): New function.
-
-2008-09-26  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (urlwrite_cleanup_file) New function.
-	(urlwrite_delete_file, urlwrite_filename): New static variables.
-	(Furlwrite): Only return filename if urlget succeeds.  Use
-	unwind_protect to delete files we create if download fails.
-
-2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-null-mat.h: New header file.
-	* ov-null-mat.cc: New source.
-	* ov.h (octave_value::is_null_value, octave_value::non_null_value,
-	octave_value::make_non_null_value):
-	Declare new member functions.
-	* ov.cc (octave_value:non_null_value, octave_value::make_non_null_value):
-	Define them.
-	(octave_value::assign (assign_op op, const octave_value& rhs)):
-	(register_types): Register null types.
-	Call non_null_value ().
-	* oct-obj.cc (octave_value_list::normalize_null_values): New member
-	function.
-	* oct-obj.h (octave_value_list::normalize_null_values): Declare it.
-	* ov-base.h (is_null_value): New virtual member function.
-	* ops.h (NULLASSIGNOPDECL, DEFNULLASSIGNOP_FN): New macros.
-	* ov-base-mat.cc (octave_base_mat<MT>::delete_elements): New member func.
-	* ov-base-mat.h: Declare it.
-	* ov-base-sparse.cc (octave_base_sparse<MT>::delete_elements): New member func.
-	* ov-base-sparse.h: Declare it.
-	* ov-cell.cc (octave_cell:subsasgn): Handle null values.
-	* ov-struct.cc (octave_cell:subsasgn): Handle null values.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Normalize return
-	values.
-	* pt-misc.cc (tree_parameter_list::define_from_arg_vector): Call
-	octave_lvalue::define instead of octave_lvalue::assign.
-	* pt-decl.h (tree_decl_elt::rvalue): Call non_null_value ().
-	* OPERATORS/op-int.h (OCTAVE_INT_NULL_ASSIGN_OPS,
-	OCTAVE_INSTALL_INT_NULL_ASSIGN_OPS): New macros.
-	* OPERATORS/op-m-m.cc: Install & define assignment & conversion operators.
-	* OPERATORS/op-bm-bm.cc: Ditto.
-	* OPERATORS/op-cell.cc: Ditto.
-	* OPERATORS/op-cm-cm.cc: Ditto.
-	* OPERATORS/op-cs-cs.cc: Ditto.
-	* OPERATORS/op-fcm-fcm.cc: Ditto.
-	* OPERATORS/op-fcs-fcs.cc: Ditto.
-	* OPERATORS/op-fm-fm.cc: Ditto.
-	* OPERATORS/op-fs-fs.cc: Ditto.
-	* OPERATORS/op-int.h: Ditto.
-	* OPERATORS/op-m-m.cc: Ditto.
-	* OPERATORS/op-range.cc: Ditto.
-	* OPERATORS/op-s-s.cc: Ditto.
-	* OPERATORS/op-scm-scm.cc: Ditto.
-	* OPERATORS/op-sm-sm.cc: Ditto.
-	* OPERATORS/op-str-str.cc: Ditto.
-	* OPERATORS/op-i16-i16.cc: Ditto.
-	* OPERATORS/op-i32-i32.cc: Ditto.
-	* OPERATORS/op-i64-i64.cc: Ditto.
-	* OPERATORS/op-i8-i8.cc: Ditto.
-	* OPERATORS/op-ui16-ui16.cc: Ditto.
-	* OPERATORS/op-ui32-ui32.cc: Ditto.
-	* OPERATORS/op-ui64-ui64.cc: Ditto.
-	* OPERATORS/op-ui8-ui8.cc: Ditto.
-
-2008-09-25  David Bateman  <dbateman@free.fr>
-
-	* pt-mat.cc (class tm_row_const): Add any_class test
-	(class tm_const): Ditto.
-	(octave_value tree_matrix::rvalue (void)): If any object to
-	concatenate is a class object, dispatch to the appropriate
-	vertcat/horzcat function.
-
-2008-09-25  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::do_find): Don't set evaluated_args and
-	args_evaluated here, prior to call to symbol_table::fcn_info::find.
-
-2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (magick_to_octave_value): New
-	template function with specializations for various
-	GraphicsMagick++ types.
-	(F__magick_finfo__): New function.
-
-2008-09-24  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Add symbol_table::clear_variables cleanup function to the
-	unwind_protect stack after the parameter list cleanup functions.
-
-	* load-path.cc (load_path::do_initialize): Check for OCTAVE_PATH
-	in the environment, not OCTAVE_LOADPATH.
-
-2008-09-24  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Retry if match limit
-	is exceeded.
-
-2008-09-24  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk (emit_declarations): Emit call to set_mode before
-	updaters.
-
-2008-09-23  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc (F__end__): Dispatch to user-defined end
-	function for classes if one is defined.
-	* lex.l (is_keyword_token): Allow "end" as a functon name.
-
-2008-09-23  David Bateman  <dbateman@free.fr>
-
-	* variables.cc (static octave_value do_who (int, const string_vector&,
-	bool, bool, std::string): Add final message argument and simple
-	treatment of the "-file" option.
-
-2008-09-22  David Bateman  <dbateman@free.fr>
-
-	* debug.cc (static octave_user_code * get_user_code
-	(const std::string&)): Only check user code as break points can't
-	be set in builtins or oct-files.
-	(bp_table::intmap bp_table::do_remove_all_breakpoints_in_file
-	(const std::string&, bool)): Add flag to silence the error message
-	from this function if a user code with breakpoints is not found.
-	(bp_table::fname_line_map bp_table::do_get_breakpoint_list (const
-	octave_value_list&)): Do an ourt of date check on the function
-	before checking the breakpoints.
-	* debug.h (do_remove_all_breakpoints_in_file,
-	remove_all_breakpoints_in_file): Add flag to silence error
-	message.
-	* symtab.cc (out_of_date_check_internal): Clear breakpoints in
-	function if out_of_date. split into two versions taking the
-	octave_function pointer seperately or not.
-	* symtab.h (bool out_of_date_check (octave_function*)): New function.
-
-2008-09-18  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/fftw.cc (Ffftw): Clarify the documentation.
-
-2008-09-17  Krzesimir Nowak  <qdlacz@gmail.com>
-
-	* debug.cc (Fisdebugmode): New function.
-
-2008-09-17  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): Chopping trailing singleton dimensions.
-
-	* data.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT): New macros
-	(do_cat): Special case single type concatenations for speed.
-	* pt.mat.cc (std::string get_concat_class (const std::string&,
-	const std::string&), void maybe_warn_string_concat (bool, bool)):
-	Remove static declaration.
-	* pt-mat.h (std::string get_concat_class (const std::string&,
-	const std::string&), void maybe_warn_string_concat (bool, bool)):
-	Define extern here.
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): Clarify the help string.
-
-2008-09-10  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Make all command-line arguments
-	available to startup scripts and PKG_ADD files.
-
-2008-09-09  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Distinguish between
-	matlab named tokens and perl lookbehind expressions. For
-	lookbehind expression replace "*" and "+" with a limited number of
-	fixed length expressions to simulate arbitrary length look behind.
-
-2008-09-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image): Resolve "pow"
-	ambiguity.
-
-	* graphics.cc (base_properties::get_dynamic,
-	base_properties::set_dynamic, base_propertyes::get_property_dynamic):
-	Add the 3rd template parameter to std::map, corresponding to all_props
-	field.
-
-2008-09-08  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (std::string extract_keyword (std::istream&,
-	const char *, const bool)): Also accept \r as line ending character.
-	* ls-oct-ascii.h (template <class T> bool extract_keyword
-	(std::istream&, const char *, T&, const bool)): Likewise.
-	(template <class T> bool extract_keyword (std::istream&, const
-	string_vector&, std::string&, T&, const bool)): Likewise.
-
-2008-09-03  Ben Abbott  <bpabott@mac.com>
-
-	* mappers.cc: Use eps(single) as tolerance for single precesion test.
-
-2008-09-03  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (mlock): Lock current function on the call stack.
-	(Fmlock): Lock caller.
-
-	* symtab.cc (out_of_date_check_internal): If dispatch type is set,
-	check for method.  If that fails, check for regular function.
-
-2008-09-02  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.cc (hggroup::update_axis_limits): Also reacts on
-	[xyzac]liminclude changes.
-
-2008-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::redraw_figure,
-	fltk_backend::print_figure): Change graphics_handle argument to
-	graphics_object.
-
-2008-08-29  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc: Replace int by octave_idx_type in multiple
-	places.
-	(array_property::is_equal): In macro CHECK_ARRAY_EQUAL, special
-	case scalar case and keep copy of array value to avoid early
-	destruction of converted array values.
-
-2008-08-28  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (root_figure::properties::showhiddenhandles):
-	New property.
-
-2008-08-27  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Initialize output vectors
-	by NA value.
-
-2008-08-26 Ben Abbott  <bpabott@mac.com>
-
-	* mappers.cc: Adjust tolerance for single precesion tests.
-
-	* DLD-FUNCTIONS/chol.cc: Double tolerance.
-
-2008-08-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* parse.y (Fassignin): Use default  scope when calling varref.
-
-2008-08-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* genprops.awk (emit_declarations): Call updaters/listeners only when
-	'set' method returned true.
-	* graphics.h.in (base_property::set, base_property::do_set):
-	Return bool value.
-	(property::set): Likewise.
-	(string_property::do_set): Check value change and return bool value.
-	(radio_property::do_set, double_property::do_set,
-	array_property::do_set): Likewise.
-	(color_property::do_set, double_radio_property::do_set,
-	row_vector_property::do_set, bool_property::do_set,
-	handle_property::do_set): Return bool value.
-	(any_property::do_set, callback_property::do_set): Return always true.
-	(color_values::operator==, color_values::operator!=): Add.
-	(array_property::is_equal): Add.
-	* graphics.cc (base_property::set): Executes listeners/notifiers only
-	when do_set returns true. Return bool value.
-	(color_property::do_set, double_radio_property::do_set): Check value
-	change and return bool value.
-	(array_property::is_equal): Add.
-
-	* genprops.awk (emit_declarations, emit_source): Change code emission
-	when emitting base_properties code (base is 1).
-	(BEGIN): Initialize pcount to 0.
-	(BEGIN_PROPERTIES): Initialize base to 0.
-	(BEGIN_BASE_PROPERTIES): New statement.
-	(main): Add support for 'f' modifier. Add support for non xxx_property
-	typed properties.
-	* graphics.h.in (base_properties::base_properties): Remove
-	implementation.
-	(base_properties::get_tag, base_properties::get_parent,
-	base_properties::get_type, base_properties::get___myhandle__,
-	base_properties::get_busyaction, base_properties::get_buttondownfcn,
-	base_properties::is_clipping, base_properties::get_clipping,
-	base_properties::execute_createfcn, base_properties::get_createfcn,
-	base_properties::execute_deletefcn, base_properties::get_deletefcn,
-	base_properties::get_handlevisibility, base_properties::is_hittest,
-	base_properties::get_hittest, base_properties::is_interruptible,
-	base_properties::get_interruptible, base_properties::is_selected,
-	base_properties::get_selected, base_properties::is_selectionhighlight,
-	base_properties::get_selectionhighlight,
-	base_properties::get_uicontextmenu, base_properties::get_userdata,
-	base_properties::is_visible, base_properties::get_visible,
-	base_properties::is_beingdeleted, base_properties::get_beingdeleted,
-	base_properties::set_busyaction, base_properties::set_buttondownfcn,
-	base_properties::set_clipping, base_properties::set_createfcn,
-	base_properties::set_deletefcn, base_properties::set_handlevisibility,
-	base_properties::set_hittest, base_properties::set_interruptible,
-	base_properties::set_selected,
-	base_properties::set_selectionhighlight,
-	base_properties::set_uicontextmenu, base_properties::set_userdata,
-	base_properties::set_visible, base_properties::set_beingdeleted,
-	base_properties::get_children): Remove (now auto-generated).
-	(base_properties::enum): Likewise.
-	(base_properties::is_modified): Call is___modified__.
-	(base_properties::set_modified): Call set___modified__.
-	(base_properties::set_children): Add.
-	(base_properties::set_dynamic, base_properties::get_dynamic,
-	base_properties::get_property_dynamic): New methods.
-	(class base_properties): Surround properties declaration with
-	BEGIN_BASE_PROPERTIES/END_PROPERTIES pair.
-	* graphics.cc (base_properties::get, base_properties::set,
-	base_properties::get_property): Remove (now auto-generated).
-	(base_properties::set_dynamic, base_properties::get_dynamic,
-	base_properties::get_property_dynamic): New methods.
-	(base_properties::set_children): Likewise.
-
-	* DLD_FUNCTIONS/fltk_backend.cc (F__fltk_redraw__): Make static.
-	(F__init_fltk__): Protect from mutliple invocations.
-	(F__remove_fltk__): Likewise.
-	(F__init_fltk__): Register input event hook.
-	(F__remove_fltk__): Unregister input event hook.
-
-	* DLD_FUNCTIONS/fltk_backend.cc (fltk_backend::close_figure): Remove.
-	(fltk_backend::object_destroyed, fltk_backend::property_changed): New
-	methods.
-	* genprops.awk (emit_declarations): Generate "enum" property fields.
-	(emit_sources): Emit set_id calls.
-	* graphics.h.in (base_property::id): New field.
-	(base_property::base_property): Initialize it.
-	(base_property::get_id, base_property::set_id): Add accessors.
-	(property::get_id, property::set_id): Likewise.
-	(base_graphics_backend::close_figure, graphics_backend::close_figure):
-	Remove methods.
-	(base_graphics_backend::redraw_figure,
-	base_graphics_backend::print_figure, graphics_backend::redraw_figure,
-	graphics_backend::print_figure): Change graphics_handle argument into
-	graphics_object.
-	(base_graphics_backend::property_changed,
-	base_graphics_backend::object_created,
-	base_graphics_backend::object_destroyed,
-	graphics_backend::property_changed, graphics_backend::object_created,
-	graphics_backend::object_destroyed): New signature with
-	graphics_object argument.
-	(base_properties::base_properties): Add set_id calls.
-	(class base_properties): Add "enum" property fields.
-	(root_figure::properties::remove_child): Add overloaded method.
-	(figure::properties::close): Remove.
-	(figure::properties::set_backend): Call object_destroyed instead of
-	close.
-	(figure::~figure): Remove close call.
-	(figure::properties::get_title): New method.
-	* graphics.cc (base_property::set): Call property_changed only for
-	valid id (>=0); Use graphics_object argument.
-	(gh_manager::do_free): Call object_destroyed with graphics_object
-	argument.
-	(base_graphics_backend::property_changed,
-	base_graphics_backend::object_created,
-	base_graphics_object::object_destroyed): Implement wrappers for
-	graphics_handle argument case.
-	(gnuplot_backend::close_figure): Remove.
-	(gnuplot_backend::object_destroyed,
-	gnuplot_backend::property_changed): New methods.
-	(gnuplot_backend::redraw_figure, gnuplot_backend::print_figure):
-	Change graphics_handle argument to graphics_object.
-	(root_figure::properties::remove_child): Add.
-	(figure::properties::close): Remove.
-	(figure::properties::set_position): Do not call set_figure_position.
-	(figure::properties::get_title): New method.
-	(gh_manager::do_make_graphics_handle): Call object_created with
-	a graphics_object argument.
-	(gh_manager::do_make_figure_handle): Likewise.
-	(Fdrawnow): Call redraw_figure and print_figure with a graphics_object
-	argument.
-
-2008-08-26  Maciek Gajewski  <maciej.gajewski0@gmail.com>
-
-	* graphics.h.in (base_property::set): Remove inline implementation.
-	(base_graphics_backend::property_changed,
-	base_graphics_backend::object_created,
-	base_graphics_backend::object_destroyed): New method.
-	(graphics_backend::property_changed, graphics_backend::object_created,
-	graphics_backend::object_destroyed): Likewise.
-	* graphics.cc (base_property::set): Moved from header file.
-	(gh_manager::do_free): Add backend notification.
-	(gh_manager::do_make_graphics_handle): Likewise.
-	(gh_manager::do_make_figure_handle): Likewise.
-
-2008-08-25  Thomas L. Scofield  <scofield@calvin.edu>
-
-	* DLD-FUNCTIONS/__magick_read__.cc: Untabify.
-	(jpg_settings, encode_bool_image, encode_uint_image, encode_map):
-	New functions.
-	(write_image): Use them to handle various image types.
-
-2008-08-25  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void gh_manager::do_execute_callback
-	(const graphics_handle&, const octave_value&, const
-	octave_value&)): Don't pass the function handle as first arg of
-	property listener functions
-
-	* graphics.h.in (class base_properties): Add functor for caseless
-	string comparison. Use it in the property map, so that user added
-	properties are found in a case insensitive fashion.
-
-2008-08-22  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table::inherit): Pass reference to symbol table
-	to do_inherit instead of scope.
-	(symbol_table::do_inherit): First arg is now reference to
-	symbol_table, not scope id.  Insert all variables from donor scope.
-
-2008-08-21  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* mappers.cc: Increase test script tolerance.
-
-2008-08-20  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (builtin_help): Go to next symbol name on error.
-	(do_type, do_which): Omit separate path search for files.
-	(help_from_symbol_table): Only insert Texinfo markup if it looks
-	like the help message is already in Texinfo.
-
-2008-08-19  David Bateman  <dbateman@free.fr>
-
-	* load-path.cc (load-path::do_find_dir (const std:string&) const)):
-	Method to find a directory on the load-path corresponding to the
-	argument.
-	* load-path.h (load-path::do_find_dir (const std:string&) const),
-	load-path::find_dir (const std::string&) const): New methods.
-	* utils.cc (std::string contents_file_in_path (const std::string&)):
-	New function.
-	* utils.h  (std::string contents_file_in_path (const std::string&)):
-	Declare it.
-	* help.cc (static bool raw_help_from_file (const std::string&,
-	std::string&, std::string&, bool&)): Also check is requested
-	argument is a directory and contains the file Contents.m.
-
-	* OPERATORS/op-int-conv.cc (DEFINTCONVFN): New macro that warn
-	for integer conversion issues. Use it to replace DEFCONVFN.
-	* OPERATORS/op-int.h (DEFINTBINOP_OP, DEFINTNDBINOP_OP,
-	DEFINTBINOP_FN, DEFINTNDBINOP_FN): New macros that warn for
-	integer truncation issues. Use them to replace the corresponding
-	macros in the integer arithmetic macros. Update other integer
-	arithmetic functions that don't use these macros individually.
-	* error.cc (initialize_default_warning_state (void)): Initialize
-	the default warning state for the integer warnings to be off.
-	* gripes.cc (void gripe_binop_integer_math_truncated (const char *,
-	const char *, const char *), void gripe_unop_integer_math_truncated
-	(const char *, const char *), void gripe_non_integer_conversion
-	(const char *, const char *), void gripe_nan_conversion (const char *,
-	const char *)): Warning functions for integer conversion and math
-	issues.
-	* gripes.h (void gripe_binop_integer_math_truncated (const char *,
-	const char *, const char *), void gripe_unop_integer_math_truncated
-	(const char *, const char *), void gripe_non_integer_conversion
-	(const char *, const char *), void gripe_nan_conversion (const char *,
-	const char *)): Declare them.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::convert_gripe,
-	OCTAVE_VALUE_INT_SCALAR_T::convert_gripe): Adapt for new means of
-	flagging integer truncation.
-	(OCTAVE_VALUE_INT_MATRIX_T::decrement,
-	OCTAVE_VALUE_INT_MATRIX_T::increment,
-	OCTAVE_VALUE_INT_SCALAR_T::decrement,
-	OCTAVE_VALUE_INT_SCALAR_T::increment): Check for integer
-	truncation.
-	* ov.cc (convert_to_int_array): Adapt for new means of
-	flagging integer truncation.
-
-2008-08-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* pt-assign.h (tree_simple_assignment::first_execution): New
-	member field.
-	(tree_simple_assignment::first_execution): Ditto.
-	* pt-assign.cc (tree_simple_assignment::tree_simple_assignment):
-	Initialize first_execution.
-	(tree_multi_assignment::tree_multi_assignment): Ditto.
-	(tree_simple_assignment::rvalue): Check for obsolete built-in
-	variables only at first execution.
-	(tree_multi_assignment::rvalue): Ditto.
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Checks whether LB and UB are
-	of proper size.
-
-	* oct-obj.cc, oct-obj.h (octave_value_list::make_argv):
-	Allow calling without fcn_name.
-	* load-save.cc (parse_save_options (const string_vector&, ...)):
-	Return string_vector with parsed arguments removed instead.
-	(parse_save_options (const std::string&, ...)):	Ditto.
-	(Fsave): Fix calls to parse_save_options.
-
-2008-08-19  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Feval): Return value produced by evaluating CATCH string.
-
-2008-08-12  John W. Eaton  <jwe@octave.org>
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
-	Call stash_parent_function_scope for user function.
-	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline):
-	Likewise.
-
-	* ov-struct.cc (octave_struct::subsref): Don't allow resizing for
-	simple x(idx) case.
-
-2008-08-07  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (octave_value::idx_type_value): Don't include default
-	argument values in definition.
-
-	* glrender.h, zfstream.h: Don't include config.h.
-
-	* oct-errno.h: Include <cerrno>.
-
-	* Cell.cc, DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/dlmread.cc,
-	debug.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
-	lex.l, load-path.cc, load-save.cc, ls-mat-ascii.cc,
-	ls-oct-ascii.cc, oct-stream.cc, octave.cc, variables.cc,
-	ov-fcn-handle.cc, parse.y, pr-output.cc, symtab.cc, sysdep.cc,
-	utils.cc, graphics.h.in: Replace all uses of NPOS with
-	std::string::npos.
-
-	* ov.cc (octave_value::idx_type_value): Move definition here.
-	* ov.h: From here.
-
-	* DLD-FUNCTIONS/fsolve.cc (override_options): Don't fail if
-	options_map does not contain an expected keyword.
-	Fix typo in warning identifier.
-	(make_unimplemented_options): Use CamelCase names here.
-
-2008-08-06  S�ren Hauberg  <hauberg@gmail.com>
-
-	* error.cc (Ferror): Update format of error messages in exmple.
-	* parse.y: (Feval): Likewise.
-
-2008-08-06  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fsolve.cc (hybrd_info_to_fsolve_info):
-	Update INFO values to be compatible with Matlab's current fsolve.
-	(make_unimplemented_options, override_options): New functions.
-	(Ffsolve): Handle optimset options.  Update doc string.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op,
-	octave_user_script::do_multi_index_op):
-	Call octave_call_stack::backtrace_error_message.
-	* toplev.h (octave_call_stack::do_pop): Don't call
-	backtrace_error_message here.
-	* toplev.cc, toplev.h (octave_call_stack::do_backtrace_error_message):
-	Rename from octave_call_stack::backtrace_error_message.
-	* toplev.h (octave_call_stack::backtrace_error_message):
-	New public static function.
-
-2008-08-05  John W. Eaton  <jwe@octave.org>
-
-	* gripes.cc (gripe_truncated_conversion,
-	gripe_logical_conversion): Don't declare as extern here.
-	* utils.cc (octave_format, octave_vformat): Likewise.
-	* pr-output.cc (octave_print_internal (std::ostream&, const Cell&,
-	bool, int, bool)): Likewise.
-
-	* toplev.cc (octave_call_stack::backtrace_error_message): New
-	function.
-	* toplev.h: Provide decl.
-	(octave_call_stack::do_pop): Call backtrace_error_message if
-	error_state is nonzero.
-
-	* pt-unop.cc (tree_prefix_expression::eval_error,
-	tree_postfix_expression::eval_error): Delete.  Eliminate all uses.
-	* pt-unop.h: Delete decls.
-
-	* pt-select.cc (tree_switch_case::eval_error,
-	tree_switch_command::eval_error): Delete.  Eliminate all uses.
-	(tree_if_command::eval): Omit "evaluating if command" message.
-	* pt-select.h: Delete decls.
-
-	* pt-loop.cc (tree_while_command::eval_error,
-	tree_complex_for_command::eval_error,
-	tree_simple_for_command::eval_error,
-	tree_do_until_command::eval_error): Delete.  Eliminate all uses.
-	* pt-loop.h: Delete decls.
-
-	* pt-exp.cc (tree_expression::is_logically_true): Omit "evaluating
-	conditional expression" error message.
-
-	* pt-decl.cc (tree_global_command::eval): Omit "evaluating global
-	command" error message.
-	(tree_static_command::eval): Omit "evaluating static command"
-	error message.
-
-	* pt-colon.cc (tree_colon_expression::eval_error): Omit
-	"evaluating colon expression" error message.
-	* pt-colon.h (tree_colon_expression::eval_error): Eliminate
-	default argument value.
-
-	* pt-idx.cc (tree_index_expression::eval_error): Delete.
-	Eliminate all uses.
-	* pt-idx.h: Delete decl.
-
-	* pt-binop.cc (tree_binary_expression::eval_error): Delete.
-	* pt-binop.cc, pt-cbinop.cc: Eliminate all uses of eval_error.
-	* pt-binop.h: Delete decl.
-
-	* pt-assign.cc (tree_simple_assignment::eval_error,
-	tree_multi_assignment::eval_error): Delete.  Eliminate all uses.
-	* pt-assign.h: Delete decls.
-
-	* ov-usr-fcn.cc (octave_user_script::traceback_error,
-	octave_user_function::traceback_error): Delete.  Eliminate all uses.
-	* ov-usr-fcn.h: Delete decls.
-
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Call
-	gripe_library_exectuion_error on octave_execution_exception.
-	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Likewise.
-	* ov.cc (do_binary_op, do_cat_op, do_unary_op,
-	do_non_const_unary_op): Likewise.
-	* pt-stmt.cc (tree_statement::eval): Likewise.
-
-	* gripes.cc (gripe_library_execution_error): New function.
-	* gripes.h: Provide decl.
-
-	* dirfns.cc (Fpathsep): Fix usage of dir_path::path_sep_str.
-	* defaults.cc (set_exec_path, set_image_path): Likewise.
-	* load-path.h (load_path::set_command_line_path): Likewise.
-	* load-path.cc (maybe_add_path_elts, load_path::do_initialize,
-	load_path::do_path, genpath, Fpath): Likewise.
-	(split_path): Fix usage of dir_path::path_sep_char.
-
-2008-08-04  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_autoload):
-	Fix usage of file_ops::dir_sep_chars.
-	* variables.cc (looks_like_struct):
-	Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
-	* octave.cc (execute_command_line_file): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-	* load-save.cc (find_file_to_load): Likewise.
-	* load-path.cc (load_path::do_find_file): Likewise.
-	* graphics.cc (drawnow): Likewise.
-	* parse.y (frob_function): Likewise.
-
-	* octave.cc (initialize_pathsearch): Fix usage of
-	file_ops::dir_sep_str.
-	* help.cc (Flookfor): Likewise.
-	* dirfns.cc (Ffilesep): Likewise.
-	(Fautoload): Likewise.
-
-	* defaults.cc (subst_octave_home): Fix usage of
-	file_ops::dir_sep_char.
-	(Fmfilename): Likewise.
-
-2008-07-31  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (assign_lhs): Call force_local_variable on all elements
-	of lexer_flags.pending_local_variables here, then clear the set.
-	(matrix): Clear lexer_flags.pending_local_variable here.
-	* lex.l (lexical_feedback::init): Clear it.
-	(force_local_variable): No longer static.
-	(is_variable): Also return true for names in the
-	lexer_flags.pending_local_variables.
-	(handle_identifier): If we are parsing a matrix list, mark
-	identifiers as pending local variables rather than forcing them to
-	be local variables immediately.
-	* lex.h (lexical_feedback::pending_local_variables): New data member.
-	(force_local_variable): Provide decl.
-
-2008-07-30  John W. Eaton  <jwe@octave.org>
-
-	* ov-intx.h, ov.cc: Style fixes.
-
-	* gripes.cc (gripe_truncated_conversion): Use the warning ID
-	Octave:int-convert-overflow.
-
-2008-07-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* gripes.cc (gripe_truncated_conversion): New function.
-	* gripes.h (gripe_truncated_conversion): Declare it.
-	* ops.h (DEFCONVFNX2): New macro.
-	(DEFCONVFN, DEFCONVFN2): Call DEFCONVFNX2 instead of DEFCONVFNX.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::convert_gripe): New member
-	function.
-	(OCTAVE_VALUE_INT_MATRIX_T::int*_array_value): Call convert_gripe.
-	(OCTAVE_VALUE_INT_SCALAR_T::convert_gripe): New member function.
-	(OCTAVE_VALUE_INT_SCALAR_T::int*_scalar_value): Call convert_gripe.
-	(OCTAVE_VALUE_INT_SCALAR_T::int*_array_value): Call int*_scalar_value.
-	* ov.cc (convert_to_int_array): New function.
-	(int_vector_value): Call convert_to_int_array.
-
-2008-07-30  John W. Eaton  <jwe@octave.org>
-
-	* defun-dld.h (DEFUNX_DLD): Eliminate fsname arg.
-	* defun-int.h (DEFINE_FUN_INSTALLER_FUN2,
-	DEFINE_FUN_INSTALLER_FUN3, DEFINE_FUNX_INSTALLER_FUN2): Delete.
-	(DEFINE_FUNX_INSTALLER_FUN): Rename from DEFINE_FUNX_INSTALLER_FUN3.
-	Don't emit fsname function.  Don't append cxx_abi to gname.
-	(DEFINE_FUN_INSTALLER_FUN): Define in terms of
-	DEFINE_FUNX_INSTALLER_FUN, not DEFINE_FUN_INSTALLER_FUN2.
-	* dynamic-ld.cc (octave_dynamic_loader::name_mangler,
-	octave_dynamic_loader::name_uscore_mangler): New functions.
-	(octave_dynamic_loader::mangle_name,
-	octave_dynamic_loader::xmangle_name): Delete.
-	(octave_dynamic_loader::do_load_oct): Search for function with
-	name_mangler then name_uscore_mangler.
-
-	* oct-stream.cc (do_read): New arg, do_NA_conv.
-	Perform NA translation if do_NA_conv is true.
-	(DO_READ_VAL_TEMPLATE, read_fptr): Include the new arg for do_read
-	in decl.
-	(octave_stream::read): Pass do_NA_conv to do_read.
-
-2008-07-29  David Bateman  <dbateman@free.fr>
-
-	* data.cc (FNA): Add tests for conversion of single to double NA
-	values.
-
-	* ov-flt-re-mat.cc (Fsingle): Documentation fix.
-
-2008-07-28  David Bateman  <dbateman@free.fr>
-
-	* error.cc (last_error_id, last_error_message, last_warning_id,
-	last_warning_message): New functions to return the error/warning
-	message and id without exposing the internal values.
-	* error.h  (last_error_id, last_error_message, last_warning_id,
-	last_warning_message): Declare them.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Use them to pass the error
-	to the ErrorHandler function.
-
-2008-07-28  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (Flasterror, Flasterr): Unwind-protect error_state.
-
-	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_write__, write_image):
-	New functions.
-
-2008-07-25  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Return calculated determinant for
-	numerically singular matrices, not 0.
-
-	* symtab.cc (get_dispatch_type): New function.
-	(symbol_table::fcn_info::fcn_info_rep::find): Use it.
-
-	* ov-class.cc (set_class_relationship): Delete static function.
-	(Fsuperiorto, Finferiorto): Warn about precedence conflicts.
-	Call symbol_table::set_class_relationship instead of local static
-	function.
-	* symtab.h (symbol_table::class_precedence_table): New data member.
-	(symbol_table::set_class_relationship, symbol_table::is_superiorto):
-	New static functions.
-
-2008-07-24  John W. Eaton  <jwe@octave.org>
-
-	* load-path.h (load_path::dir_info::class_info): New struct.
-	(load_path::dir_info::method_file_map_type): Now a map from
-	class name to a to a class_info object.  Change all uses.
-	* load-path.cc (load_path::dir_info::get_method_file_map):
-	Also look for private functions in the class directory.
-	(load_path::add_to_method_map): Also add private functions from
-	class directories to private_fcn_map.
-
-	* dirfns.cc (Fmkdir): If directory already exists, return status =
-	true, but also set error message.
-
-2008-07-23  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr_fcn.cc (octave_user_function::do_multi_index_op):
-	Don't unwind_protect and set curr_parent_function here.
-	* toplev.cc (curr_parent_function): Delete definition.
-	* toplev.h: (curr_parent_function): Delete declaration.
-
-	* ov-usr-fcn.h (octave_user_function::parent_scope): New data member.
-	(octave_user_function::parent_fcn_scope,
-	octave_user_function::stash_parent_fcn_scope): New functions.
-	* ov-usr_fcn.cc (octave_user_function::octave_user_function):
-	Initialize parent_scope.
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find):
-	Check parent of current function by looking at call stack, not
-	global curr_parent_function variable.
-	* parse.y (frob_function): If parsing nested function, stash
-	current parent function scope.
-	* ov-fcn.h (octave_function::parent_fcn_scope): New virtual function.
-
-2008-07-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.cc (F__go_execute_callback__): New function.
-
-	* DLD-FUNCTIONS/fltk_backend.cc: Undefine min/max after FLTK headers
-	inclusion.
-
-	* graphics.h.in (class base_graphics_event, class graphics_event): New
-	classes (replace gh_manager::event_data).
-	(class gh_manager::event_data): Remove.
-	(gh_manager::post_function, gh_manager::do_post_function): Use
-	graphics_event::event_fcn type.
-	(gh_manager::event_queue, gh_manager::do_post_event): Use
-	graphics_event type.
-	* graphics.cc (class callback_event, class function_event, class
-	set_event): Renamed from xxx_data classes.
-	(graphics_event::create_callback_event,
-	graphics_event::create_function_event,
-	graphics_event::create_set_event): Renamed from gh_manager::xxx
-	equivalent methods, removed reference count increment.
-	(gh_manager::do_post_event): Likewise.
-	(gh_manager::do_post_event): Use graphics_event type.
-	(gh_manager::do_post_function): Use graphics_event::event_fcn type.
-
-2008-07-22  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.51+.
-
-2008-07-21  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.51.
-	(OCTAVE_RELEASE_DATE): Now 2008-07-21.
-
-	* ov-class.cc (octave_class::subsasgn): Only do internal magic if
-	rhs is not an octave_class object.
-
-	* OPERATORS/op-struct.cc: Define concatenation operators for
-	struct/matrix concatenation (valid if matrix is empty).
-	* OPERATORS/op-cell.cc (install_cell_ops): Likewise, for cells.
-
-	* DLD-FUNCTIONS/fltk_backend.cc: Don't include oct.h.
-	Make compilation of entire file conditional on HAVE_FLTK.
-
-	* gl-render.cc: Make compilation of entire file conditional on
-	HAVE_OPENGL.
-
-	* Makefile.in (GL_RENDER_SRC, FLTK_BACKEND_SRC): Delete variables.
-	(DLD_XSRC): Always include fltk_backend.cc in the list.
-	(DIST_SRC): Always include gl-render.cc in the list.
-
-2008-07-19  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.50+.
-	(OCTAVE_API_VERSION): Now api-v33+.
-
-2008-07-18  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 3.1.50.
-	(OCTAVE_API_VERSION): Now api-v33.
-	(OCTAVE_RELEASE_DATE): Now 2008-07-18.
-	(OCTAVE_COPYRIGHT): Update date to 2008.
-
-2008-07-18  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (__magick_read__.df): New rule.
-	Append MAGICK_INCFLAGS to CPPFLAGS.
-
-	* Makefile.in (EXTRAS): Add graphics-props.cc to the list.
-	List graphics-props.cc as a target generated by genprops.awk.
-
-2008-07-18 Carlo de Falco  <carlo.defalco@gmail.com>
-
-	* gl-render.h: Conditionally include GL/gl.h or OpenGL/gl.h
-	and GL/glu.h or OpenGL/glu.h
-
-2008-07-17  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (out_of_date_check_internal): New arg, dispatch_type.
-	Use it to handle class methods.
-
-	* toplev.h (octave_call_stack::do_caller): New function.
-	(octave_call_stack::caller): Use it.
-
-2008-07-17  Jaroslav Hajek  <highegg@gmail.com>
-
-	* Makefile.in (convhulln.oct, __delaunayn__.oct, __voronoi__.oct,
-	regexp.oct, urlwrite.oct, __glpk__.oct, fltk_backend.oct):
-	Use OCT_LINK_DEPS instead of DL_LDFLAGS for target-specific
-	dependencies.
-
-2008-07-17  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTION/__magick_read__.cc (F__magick_read__): Allow build
-	without GraphicsMagick++ installed.
-
-2008-07-16  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (gh_manager::autolock): Delete copy constructor
-	and assignment definitions.
-
-2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (callback_property::execute): Remove static version.
-	(base_properties::is_hittest, base_properties::is_interruptible,
-	base_properties::is_selected, base_properties::is_selectionhighlight):
-	New convenience property accessors.
-	(base_graphics_object::get_handle, graphics_object::get_handle): Idem.
-	(gh_manager::graphics_lock): New global mutex
-	(gh_manager::lock, gh_manager::unlock, gh_manager::do_lock,
-	gh_manager::do_unlock): Add accessors for it.
-	(gh_manager::autolock): New class for easy locking of the graphics
-	system.
-	(gh_manager::event_data): New class for event management.
-	(gh_manager::event_queue): New object to hold pending events.
-	(gh_manager::callback_objects): New stack of callback objects.
-	(gh_manager::execute_callback, gh_manager:post_callback,
-	gh_manager::post_function, gh_manager::post_set,
-	gh_manager::process_events, gh_manager::flush_events,
-	gh_manager::restore_gcbo): New static methods for event management.
-	(gh_manager::do_execute_callback, gh_manager::do_post_callback,
-	gh_manager::do_post_function, gh_manager::do_post_set,
-	gh_manager::do_process_events, gh_manager::do_post_event,
-	gh_manager::do_restore_gcbo): New non-static versions.
-	* graphics.cc (xreset_gcbo): Remove.
-	(execute_callback): Likewise.
-	(base_property::run_listeners, callback_property::execute): Use
-	gh_manager::execute_callback.
-	(class callback_event_data, class function_event_data, class
-	set_event_data): New classes to implement various types of events.
-	(gh_manager::event_data::create_callback_event,
-	gh_manager::event_data::create_function_event,
-	gh_manager::event_data::create_set_event): Implement event factory
-	methods.
-	(gh_manager::do_restore_gcbo, gh_manager::do_execute_callback,
-	gh_manager::do_post_event, gh_manager::do_post_callback,
-	gh_manager::do_post_function, gh_manager::do_post_set,
-	gh_manager::do_process_events): New methods for event management.
-	(Fishandle, Fset, Fget, F__get__, F__go_figure__, F__go_delete__,
-	F__go_axes_init__, F__go_handles__, F__go_figure_handles__,
-	Favailable_backends, Fdrawnow, Faddlistener, Faddproperty,
-	get_property_from_handle, set_property_in_handle): Lock graphics
-	system.
-	(GO_BODY): Likewise.
-	(Fdrawnow): Support single "expose" argument.
-
-2008-07-15  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__convn__.cc (convn): Cast second arg to
-	octave_idx_type in call to std::max.
-
-2008-07-14  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (convhulln.oct, __delaunayn__.oct, __voronoi__.oct,
-	regexp.oct, urlwrite.oct, __glpk__.oct, fltk_backend.oct):
-	Simplify with target-specific settings for DL_LDFLAGS.
-
-	* DLD-FUNCTIONS/__magick_read__.cc: Delete "using namespace std"
-	and "using namespace Magick" directives.  Style fixes.
-
-	* oct-conf.h.in (OCTAVE_CONF_MAGICK_INCFLAGS,
-	OCTAVE_CONF_MAGICK_LIBS): Substitute here.
-	* toplev.cc (octave_config_info): Include MAGICK_INCFLAGS and
-	MAGICK_LIBS in the struct.
-	* Makefile.in (DLD_XSRC): Add __magick_read__.cc to the list.
-	(OCTAVE_LIBS): Add $(MAGICK_LIBS) to the list for static linking case.
-	(__magick_read__.d, __magick_read__.o, pic/__magick_read__.o):
-	Append MAGICK_INCFLAGS to CPPFLAGS.
-	(__magick_read__.oct): Append MAGICK_LIBS to LDFLAGS.
-
-2008-07-14  Thomas L. Scofield  <scofield@calvin.edu>
-
-	* DLD-FUNCTIONS/__magick_read__.cc: New file from Octave Forge.
-
-2008-07-11  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (const_value): Delete arg NM.  Change all uses.
-
-	* DLD-FUNCTIONS/fft.cc (do_fft): Avoid GCC warning.
-	* DLD-FUNCTIONS/fft2.cc (do_fft2): Likewise.
-	* DLD-FUNCTIONS/fftn.cc (do_fftn): Likewise.
-	* DLD-FUNCTIONS/qr.cc (Fqrshift): Likewise.
-	* DLD-FUNCTIONS/lookup.cc (Flookup): Likewise.
-	* gl-render.cc (opengl_renderer::draw): Likewise.
-	* graphics.cc (axes::update_axis_limits,
-	hggroup::update_axis_limits, Favailable_backends):
-	Likewise.
-	* pt-cmd.cc (tree_no_op_command::dup, tree_function_def::dup):
-	Likewise.
-	* pt-const.cc (tree_constant::dup): Likewise.
-	* pt-id.cc (tree_identifier::dup): Likewise.
-	* pt-jump.cc (tree_break_command::dup, tree_continue_command::dup,
-	tree_return_command::dup): Likewise.
-
-	* DLD-FUNCTIONS/colamd.cc: Style fixes.
-	(tree_postorder): Rename from TreePostorder.
-	(tree_postorder, coletree): Avoid GCC warnings.
-
-	* DLD-FUNCTIONS/chol.cc (Fchol): Avoid GCC warnings.
-	(Fcholdelete, Fcholshift): Delete unused arg nargout.
-
-	* toplev.cc, toplev.h (octave_call_stack::caller_user_function,
-	octave_call_stack::caller_user_script,
-	octave_call_stack::do_caller_user_function,
-	octave_call_stack::do_caller_user_script):
-	Delete functions and decls.
-
-	* defun.cc (print_usage): Call octave_call_stack::caller_user_code,
-	not octave_call_stack::caller_user_function.
-	* debug.cc (get_user_code): Likewise.
-
-	* toplev.h (octave_call_stack::difference_type): Delete typedef.
-	* toplev.cc, toplev.h (octave_call_stack::caller_user_code_line,
-	octave_call_stack::do_caller_user_code_line,
-	octave_call_stack::caller_user_code_column,
-	octave_call_stack::do_caller_user_code_column,
-	octave_call_stack::caller_script,
-	octave_call_stack::do_caller_script,
-	octave_call_stack::caller_user_function,
-	octave_call_stack::do_caller_user_function,
-	octave_call_stack::caller_user_code,
-	octave_call_stack::do_caller_user_code):
-	Delete unused difference_type arg.
-
-	* ov-float.h, ov-flt-re-mat.cc, ov-range.h, ov-re-mat.h,
-	ov-re-sparse.cc, ov-scalar.h: Check for NaN in bool_value and
-	bool_array_value member functions to bool.
-
-	* ops.h (DEFSCALARBOOLOP_OP): New macro.
-	* OPERATORS/op-s-s.cc, OPERATORS/op-fs-fs.cc: Use it to define
-	el_and and el_or ops.
-
-2008-07-10  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/lookup.cc (assign): Delete.
-	(Flookup): Use new NDArray constructors rather than assign.
-	* data.cc (Fsort): Use new NDArray constructors rather than
-	directly assigning.
-	* besselj.cc (int_array2_to_matrix, int_arrayn_to_array,
-	int_array2_to_float_matrix, int_arrayn_to_float_array): Delete.
-	(do-bessel): Use new NDArray constructors.
-	* max.cc (MINMAX_SPARSE_BODY, MINMAX_INT_BODY, MINMAX_SINGLE_BODY,
-	MINMAX_DOUBLE_BODY): Use new NDArray constructors.
-	* ov-bool.h (array_value, float_array_value): Explictly cast
-	boolean scalar to double before the assignment to avoid ambiguity.
-
-2008-07-10  David Bateman  <dbateman@free.fr>
-
-	* ls-mat4.cc (read_mat_binary_data, save_mat_binary_data): Add
-	loading and saving of sparse matrices.
-
-2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makefile.in: Add OPENGL_LIBS to liboctinterp link command. Add
-	GRAPHICS_CFLAGS to fltk_backend.cc compilation command.
-	* data.cc: Define hypotf to _hypotf when not present.
-	* gl-render.h: Replace OCTGRAPHICS_API with OCTINTERP_API.
-	* gl-render.cc: Get rid of Array2<vertex_data>.
-	* OPERATORS/op-int.h: Use powf instead of pow when invoked
-	with float arguments.
-
-2008-07-09  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (get_debug_input): Don't delete global_command here.
-	* toplev.cc (main_loop): Undo previous change.
-
-	* toplev.h (octave_call_stack::instance_ok): Push top scope when
-	creating instance.
-
-	* DLD-FUNCTIONS/inv.cc (Finv): Avoid GCC warning.
-
-	* DLD-FUNCTIONS/expm.cc (Fexpm): Avoid GCC warning.
-
-	* ov-fcn-inline.cc (octave_fcn_inline::load_ascii): Avoid GCC warning.
-
-2008-07-09  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* gl-render.cc (opengl_renderer::draw(figure)): Enable line smoothing
-	according to __enhanced__ property.
-	(opengl_renderer::draw_marker): Only draw markers with valid call
-	lists ID.
-	(opengl_renderer::make_marker_list): Do not produce filled marker call
-	list for non-fillable markers.
-	(opengl_renderer::draw(axes)): Do not antialias axes system.
-
-	* gl-render.cc (opengl_renderer::set_polygon_offset): Also enable
-	polygon offseting in GL_LINE mode.
-	(opengl_renderer::draw_marker): Offset markers foward instead of
-	backward (to draw them above lines).
-
-	* Makefile.in: new substituted variables GL_RENDER_SRC and
-	FLTK_BACKEND_SRC.
-
-	* gl-render.cc (vertex_data::vertex_data_rep::vertex_data(void),
-	vertex_data::vertex_data(void), vertex_data::vertex_data(...)):
-	initialize reference counting correctly.
-
-2008-07-09  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (main_loop): Unwind-protect global_command.
-	* input.cc (get_debug_input): Likewise.
-
-2008-07-09  David Bateman  <dbateman@free.fr>
-
-	* pt-id.cc (octave_value_list tree_identifier::rvalue (int),
-	octave_lvalue tree_identifier::lvalue (void)): Remove
-	MAYBE_DO_BREAKPOINT.
-
-2008-07-08  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (axes::properties::keypos): Declare as
-	any_property instead of double_property.
-
-2008-06-28  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (push_dummy_call_stack_elt): Delete.
-	(Fdbstack): Don't push dummy stack elt.  Use nskip instead of
-	nframes, and curr_frame instead of idx.  Pass curr_frame to
-	octave_call_stack::backtrace.
-
-	* ls-mat5.cc (read_mat5_binary_element): Explicitly pass 0 for
-	current_context in call to symbol_table::varref.
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii): Likewise.
-	Fix test.
-
-	* mex.cc (mexGetVariable, mexPutVariable): Use octave_call_stack
-	methods to manipulate scope and context.
-	* parse.y (source_file, Fassignin, Fevalin): Likewise.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Call octave_call_stack::push after call to symbol_table::push_scope.
-	Call unwind_protect::add with octave_call_stack::unwind_pop
-	immediately after call to octave_call_stack::push.
-
-	* symtab.cc (symbol_table::xcurrent_caller_scope): Delete definition.
-	* symtab.h (symbol_table::xcurrent_caller_scope): Delete decl.
-	Delete all uses.
-	(xcurrent_context_this_table): Delete.  Delete all uses.
-	(symbol_table::current_caller_scope): Delete.
-
-	* toplev.cc (octave_call_stack::do_num_user_code_frames):
-	New function.
-	(octave_call_stack::do_backtrace): New arg, curr_user_frame.
-	Rename nframes arg to nskip.  Correctly handle curr_frame not at
-	end of stack.
-	(octave_call_stack::do_goto_frame_relative): Rename n arg to nskip.
-	Correctly handle curr_frame not at end of stack.
-	(octave_call_stack::do_goto_caller_frame): New function.
-	(octave_call_stack::do_goto_base_frame): New function.
-	* toplev.h: Provide decls for new functions.
-	(octave_call_stack::call_stack_elt::prev): New data member.
-	Initialize it in constructor.
-	(octave_call_stack::const_reverse_iterator,
-	octave_call_stack::reverse_iterator): New typedefs.
-	(octave_call_stack::symbol_table::scope_id current_scope,
-	octave_call_stack::symbol_table::context_id current_context,
-	octave_call_stack::num_user_code_frames,
-	octave_call_stack::goto_caller_frame,
-	octave_call_stack::goto_base_frame,
-	octave_call_stack::do_num_user_code_frames,
-	octave_call_stack::do_current_scope,
-	octave_call_stack::do_current_context): New functions.
-
-	(octave_call_stack::push): Default value for context arg is
-	symbol_table::current_context, not 0.
-	(octave_call_stack::do_push): Save previous frame.  Always push
-	new frame on back of stack.  Call symbol_table::set_scope_and_context.
-	(octave_call_stack::do_pop): Restore previous frame.  Always pop
-	frame from back of stack.  Call symbol_table::set_scope_and_context.
-
-2008-06-26  John W. Eaton  <jwe@octave.org>
-
-	* token.h: Omit "class symbol_table::symbol_record" decl;
-
-	* lex.l (grab_block_comment): Use parens around || expression
-	within && expression.
-
-2008-06-23  John W. Eaton  <jwe@octave.org>
-
-	* debug.cc (Fdbstack): Avoid shadowed variable warning.
-
-2008-06-23  Jaroslav Hajek  <highegg@gmail.com>
-
-	* genprops.awk (emit_source): Avoid gensub for portability.
-	(BEGIN): Ditto.
-
-2008-06-20  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Make "once" an output
-	argument.
-	(octregexp): Do not use cell arrays when "once" is requested.
-
-	* ov.cc (make_vector_dims): New function.
-	(vector_value, complex_vector_value, float_vector_value,
-	float_complex_vector_value): Query N-d array values and simplify,
-	avoid copying.
-	(column_vector_value, complex_column_vector_value,
-	float_column_vector_value, float_complex_column_vector_value,
-	row_vector_value, complex_row_vector_value,
-	float_row_vector_value, float_complex_row_vector_value):
-	Simplify to trivial wrappers.
-	(int_vector_value): Avoid conversions if integer type, query N-d array
-	value, simplify.
-
-2008-06-17  John W. Eaton  <jwe@octave.org>
-
-	* toplev.h, toplev.cc (class octave_call_stack):
-	Push elements on and pop from back of queue.
-	(octave_call_stack::do_push, octave_call_stack::do_pop):
-	Always adjust curr_frame.
-	(octave_call_stack::size, octave_call_stack::do_size): New functions.
-	* pt-stmt.cc (tree_statement::eval):
-	Also call octave_call_stack::set_statement when debugging.
-	* debug.cc (push_dummy_call_stack_elt): New function.
-	(Fdbstack): Omit dbstack from call stack by popping element rather
-	than adjusting frame number.  Correctly handle arg.
-
-2008-06-12  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrshift, Fqrdelete):
-	Allow single precision arguments, add tests for single precision.
-
-2008-06-11  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (octave_base_value::streamoff_value,
-	octave_base_value::streamoff_array_value): Delete.
-	* ov-base.h: Delete decls.
-	(octave_base_value::is_streamoff): Delete.
-	* ov-float.cc (octave_float_scalar::streamoff_value,
-	octave_float_scalar::streamoff_array_value): Delete.
-	* ov-float.h: Delete decls.
-	* ov-flt-re-mat.cc (octave_float_matrix::streamoff_array_value): Delete.
-	* ov-flt-re-mat.h: Delete decl.
-	* ov-re-mat.cc (octave_matrix::streamoff_array_value): Delete.
-	* ov-re-mat.h: Delete decl.
-	* ov-re-sparse.cc (octave_sparse_matrix::streamoff_array_value): Delete.
-	* ov-re-sparse.h: Delete decl.
-	* ov-scalar.cc (octave_scalar::streamoff_value,
-	octave_scalar::streamoff_array_value): Delete.
-	* ov-scalar.h: Delete decls.
-	* ov.cc (octave_value::octave_value (const streamoff_array&),
-	octave_value::octave_value (const ArrayN<std::streamoff>&),
-	octave_value::streamoff_value (void) const,
-	octave_value::streamoff_array_value (void) const): Delete.
-	* ov.h: Delete decls.
-	(octave_value::is_streamoff): Delete.
-	* ov.cc (install_types): Don't register streamoff type.
-	* ov-streamoff.h, ov-streamoff.cc, OPERATORS/op-streamoff.cc: Delete.
-	* Makefile.in: Delete them from the lists.
-
-	* error.cc (verror): Restore newline in msg_string.  Stripping
-	"error: " prefix when buffering error messages is no longer neeed.
-
-2008-06-25  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (Frats): Print usage if nargin == 0.
-
-2008-06-10  John W. Eaton  <jwe@octave.org>
-
-	* mexproto.h (mxCreateLogicalScalar): Declar arg as mxLogical, not int.
-
-2008-06-09  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (execute_callback): Pass CB by const reference and
-	explicitly make a copy.
-	(xget_ancestor): Pass GO by const reference and explicitly make a copy.
-
-	* error.cc (verror): Omit "name: " and "\a" from Vlast_error_msg.
-	Save line and column information from user code.
-	* toplev.cc (octave_call_stack::do_caller_user_code_line,
-	octave_call_stack::do_caller_user_code_column): New functions.
-	* toplev.h: Provide decls.
-	(octave_call_stack::caller_user_code_line,
-	octave_call_stack::caller_user_code_column): New functions.
-	(octave_call_stack::current_line, octave_call_stack::current_column):
-	Default return value is -1, not 0.
-
-2008-06-06  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::erase_subfunctions):
-	New function.
-	* ov-base.h (octave_base_value::erase_subfunctions):
-	New virtual function.
-	* ov-usr-fcn.h (octave_user_function::erase_subfunctions):
-	New function.
-	* symtab.h (symbol_table::fcn_info::::erase_subfunction,
-	symbol_table::fcn_info::fcn_info_rep::erase_subfunction,
-	symbol_table::erase_subfunctions_in_scope):
-	New functions.
-	(symbol_table::fcn_info::fcn_info_rep::clear_user_function):
-	Erase subfunctions here.
-
-	* variables.cc (Fmlock): Doc fix.
-
-2008-06-05  John W. Eaton  <jwe@octave.org>
-
-	* gl-render.cc (opengl_renderer::draw): Correctly avoid shadow
-	warnings from gcc for xmin, xmax, ymin, ymax, zmin, and zmax.
-
-	* graphics/ChangeLog, graphics/Makefile.in, graphics/Makerules.in,
-	graphics/fltk_backend/Makefile.in, graphics/opengl/Makefile.in:
-	Delete.
-
-	* gl-render.cc, gl-render.h: Move here from graphics/opengl.
-	* Makefile.in: Add them to the appropriate lists.
-	(octave$(EXEEXT)): Also link with $(OPENGL_LIBS)
-
-	* fltk_backend.cc: Move here from graphics/fltk_backend.
-	* Makefile.in (DLD_XSRC): Add it to the list
-	(fltk_backend.oct): Include special rules for linking with
-	$(GRAPHICS_LIBS) and $(FT2_LIBS).
-
-	* dynamic-ld.cc (octave_dynamic_loader::mex_mangler,
-	octave_dynamic_loader::mex_uscore_mangler,
-	octave_dynamic_loader::mex_f77_mangler): New functions.
-	(octave_dynamic_loader::do_load_mex): Use them.
-	(octave_dynamic_loader::do_remove_oct): Rename from
-	octave_dynamic_loader::do_remove.
-	(octave_dynamic_loader::do_remove_mex): New function.
-	* dynamic-ld.h: Provide/fix decls.
-
-	* graphics.cc (properties::update_normals): Style fixes.
-	* graphics.h.in: Style fixes.
-
-	ChangeLog entries for gl-render.h, gl-render.cc, and
-	fltk_backend.cc before the move:
-
-	2008-06-05  John W. Eaton  <jwe@octave.org>
-
-	* opengl/gl-render.cc (xmin): New static function.
-
-	* opengl/gl-render.h (opengl_renderer): Style fixes.
-	* fltk_backend/fltk_backend.cc: Style fixes.
-
-	2008-04-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.h (opengl_renderer::draw(hggroup)): New method.
-	* opengl/gl-render.cc (opengl_renderer::draw(hggroup)): Likewise.
-	(opengl_renderer::draw(graphics_object)): Call it.
-
-	2008-03-17  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (plot_window::resize,
-	plot_window::draw): make canvas the size of figure.position
-
-	2008-03-09  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (plot_window::handle): add zoom
-	stack
-
-	2008-03-06  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (plot_window::handle): Add handling
-	of the 'a' and 'g' keys
-	(plot_window: toggle_grid): New helper function
-	(plot_window): Add new togglegrid button
-
-	2008-03-01  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (OpenGL_fltk::draw_overlay,
-	OpenGL_fltk::zoom, OpenGL_fltk::set_zoom_box): Added to support
-	zoom box
-	(plot_window::handle): Added zoom box code, B-3 now does autoscale
-	(plot_window::axis_auto): New utility function to call axis("auto")
-	(plot_window::button_press): "A" button now does autoscale
-
-	* opengl/gl-render.cc (make_marker_list): Add the "+x*.^v><"
-	markers
-
-	2008-02-27  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (opengl_renderer::draw(patch),
-	opengl_renderer::draw(surface)): Adapt to type change of facealpha and
-	edgealpha, using double_radio_property class.
-
-	2008-02-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.h: Make sure windows.h is included before OpenGL
-	headers.
-	* fltk_backend/Makefile.in (FLTK_EXTRA_CXXFLAGS): Use $(srcdir) for
-	includesion of OpenGL renderer headers.
-	(Makeconf): Move inclusion of Makeconf later on, to avoid freezing
-	MinGW make.
-
-	* fltk_backend/Makefile.in (GRAPHICS_CFLAGS): New substituted
-	variable.
-
-	2008-02-25  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (class plot_window): Many changes
-	to use figure::properties instead of figure handle to reference
-	the figure
-	(class figure_manager): ditto
-	(__fltk_redraw__): moved most of functionality into the
-	figure_manager class
-	(plot_window::pixel2pos): Modified to use axes::pixel2coord
-	(plot_window::pixel2staus): Modified to use pixel2pos
-	(plot_window::handle): Added zoom with mouse
-
-	2008-02-24  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (OpenGL_fltk::Draw): removed double
-	buffer switch
-	(OpenGL_fltk::setup_viewport): removed call to glOrtho --
-	gl-render takes care of all the transformations
-
-	2008-02-23  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/fltk_backend.cc (plot_window::mark_modifed): mark
-	the whole window as damaged (otherwise changing figure.postion
-	does not have immediate effect)
-	(plot_window::draw): New function, checks for window size
-	(__fltk_maxtime__): New DEFUN to allow tweaking of fltk timeout
-	(__fltk_redraw__): Use fltk_maxtime as timeout
-
-	2008-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (opengl_renderer::patch_tesselator::combine):
-	Protect against NULL vertex data.
-
-	* opengl/gl-render.cc (opengl_renderer::draw(patch)): Add marker
-	rendering of patch objects.
-
-	2008-02-21  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* opengl/gl-render.cc: remove OpenGL includes
-	* opengl/gl-render.h: add OpenGL includes
-	* fltk_backend/fltk_backend.cc: remove OpenGL includes
-	(__fltk_redraw__): put figure handle into the figure's
-	__plot_stream__ property for later
-	(fltk_backend::close_figure): use argument as figure handle to
-	close
-
-	2008-02-20  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* fltk_backend/Makefile.in: initial import
-
-	* fltk_backend/fltk_backend.cc: initial import
-
-
-	2008-02-20  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.h (opengl_renderer::draw(patch)): New method to
-	render patch objects.
-	(class opengl_renderer::patch_tesselator): Forward declaration.
-	* opengl/gl-render.cc (opengl_texture::create): Use RGB data format
-	instead of RGBA.
-	(class opengl_tesselator): New classes to abstract GLU tessellation
-	process.
-	(class opengl_renderer::patch_tesselator): New class to render opaque
-	patch objects.
-	(class vertex_data): New class to hold vertex data during tessellation
-	of patch objects.
-	(opengl_renderer::draw(patch)): New method to render patch objects (no
-	transparency, no border, no marker yet).
-	(opengl_renderer::draw(graphics_object)): Dispatch to it.
-
-	* opengl/gl-render.cc (opengl_renderer::draw(patch)): Use patch color
-	data and support face/vertex single color specification.
-
-	* opengl/gl-render.cc (opengl_tesselator::begin_polygon): Set
-	tessellation property also for non-filled polygons.
-	(opengl_renderer::patch_tesselator::vertex): Protect against empty
-	color matrices.
-	(opengl_renderer::draw(patch)): Render patch border (no transparency
-	yet).
-
-	2008-02-19  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (opengl_texture::texture_rep::tex_coord,
-	opengl_texture::tex_coord): New wrapper around glTexCoord2d.
-	(opengl_renderer::draw(surface)): Use it for texturemap
-	implementation.
-	(opengl_renderer::draw(surface)): Fix indexing bug when creating clip
-	matrix.
-	(opengl_texture::operator=): Add assignment operator.
-	(opengl_texture::create): New static opengl_texture creator.
-	(opengl_texture::is_valid): New accessor.
-
-	2008-02-18  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (class opengl_texture): New class to wrap
-	texture operations in OpenGL.
-
-	2008-02-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (opengl_renderer::draw(surface)): Set material
-	color when rendering surface facets.
-
-	* opengl/gl-render.cc (opengl_renderer::draw(surface)): Add rendering
-	of mesh and markers.
-
-	2008-02-16  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.cc (opengl_renderer::draw(figure)): Initialize the
-	OpenGL context correctly.
-	(opengl_renderer::draw(surface)): Add missing glEnd call.
-
-	2008-02-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* opengl/gl-render.h opengl/gl-render.cc: Add rendering
-	interface for surface objects (actual implement still
-	missing).
-
-	2008-02-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makefile.in Makerules.in: Initial import
-	* opengl/Makefile.in: Likewise.
-	* opengl/gl-render.h opengl/gl-render.cc: Likewise.
-
-2008-06-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (axes::properties::set_defaults): Preserve position
-	if mode is replace.
-	(axes::properties::sync_positions): Use default_axes_postion for
-	consistency.
-
-	* graphics.h.in (axes::properties::sync_positions,
-	axes::properties::update_position,
-	axes::properties::update_outerposition): New functions to sync
-	outerposition and position.
-
-	* graphics.h.in (axes::properties::update_xlim,
-	axes::properties::update_ylim, axes::properties::update_zlim):
-	pass is_logscale flag to axes::properties::calc_ticks_and_lims
-	* graphics.cc (axes::properties::calc_ticks_and_lims): Added
-	support for log scale
-
-	* graphics.h.in (axes::properities::fix_limits) : New method.
-	(axes::properties::update_xlim, axes::properties::update_ylim,
-	axes::properties::update_zlim): Use fix_limits.
-
-	* graphics.cc (axes::properties::calc_ticks_and_lims): Make sure
-	that lo <= hi.
-
-	* graphics.h.in (axes::pixel2coord, axes::coord2pixel): New functions.
-
-	* graphics.cc (convert_position): No longer static.
-	* graphics.h.in: Provide decl.
-
- 	* graphics.cc (Favailable_backends): New function.
-  	* graphics.h.in (base_graphics_backend::available_backends_list):
-	New function.
-
-	* graphics.cc (axes::properties::calc_ticks_and_lims): Refactor.
-	Adjust axes limits & tics together so that the result is consistent.
-	(axes::properties::calc_tick_sep): Ditto.
-	(axes::properties::get_axis_limits): Ditto.  Now a member of
-	axes::properties
-	(magform): Now file-scope static function instead of
-	axes::properties member function.
-
-	* graphics.h.in (axes::properties::update_xlim): call the new
-	axes::properties::calc_ticks_and_lims method
-	(axes::properties::update_ylim): ditto
-	(axes::properties::update_zlim): ditto
-
-2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ov-fcn-inline.h (class octave_fcn_inline): Mark with OCTINTERP_API.
-	* ov-fcn-handle.h (class Octave_fcn_handle): Likewise.
-	* ls-oct-binary.h (save_binary_data, read_binary_data): Likewise.
-
-	* genprops.awk (emit_source): Fix if-then-else statement generation
-	when the first property is hidden.
-	* graphics.h.in (base_properties::adopt): Call mark_modified.
-	(class hggroup): New graphics object class.
-	* graphics.cc (lookup_object_name, make_graphics_object_from_type,
-	property_list::lookup, property_list::set,
-	root_figure::init_factory_properties): Support hggroup as possible
-	object type.
-	(hggroup::update_axis_limits): New graphics object class.
-	(make_graphics_object): Look for "parent" property in the arguments
-	and use it as actual parent for the created object.
-	(F__go_hggroup__): New function.
-	(F__go_delete__): Set Vdrawnow_requested to true.
-
-	* graphics.h.in (base_property::clone, string_property::clone,
-	radio_property::clone, color_property::clone, double_property::clone,
-	double_radio_property::clone, array_property::clone,
-	row_vector_property::clone, bool_property::clone,
-	handle_property::clone, callback_property::clone, any_property::clone,
-	property::clone): New virtual method.
-	(property::create): New static method to create dynamic properties.
-	(base_properties::has_property): New method to check the existence of
-	a property.
-	(any_property::any_property, row_vector_property::row_vector_property,
-	double_radio_property::double_radio_property): New copy constructors.
-	* graphics.cc (lookup_object_name): New static utility function.
-	(make_graphics_object_from_type): Likewise.
-	(gh_manager::do_make_graphics_handle): Use it.
-	(dprop_obj_map): New static map used for chaching purpose in dynamic
-	property creation.
-	(property::create): New static method to create dynamic properties.
-	(base_properties::has_property): New method to check the existence of
-	a property.
-	(base_properties::override_defaults): Check parent validity.
-	(Faddlistener): Documentation fix.
-	(Faddproperty): New function to create dynamic properties.
-
-	* genprops.awk (emit_get_array): Don't produce get_xxx_property
-	accessors.
-	* graphics.h.in (array_property::get_limits): New method to return the
-	array limits.
-	(base_properties::get_xdata_property,
-	base_properties::get_ydata_property,
-	base_properties::get_zdata_property,
-	base_properties::get_ldata_property,
-	base_properties::get_udata_property,
-	base_properties::get_xldata_property,
-	base_properties::get_xudata_property,
-	base_properties::get_cdata_property): Remove methods, replaced with
-	limit-based equivalent.
-	(base_graphics_object::get_xdata_property,
-	base_graphics_object::get_ydata_property,
-	base_graphics_object::get_zdata_property,
-	base_graphics_object::get_ldata_property,
-	base_graphics_object::get_udata_property,
-	base_graphics_object::get_xldata_property,
-	base_graphics_object::get_xudata_property,
-	base_graphics_object::get_cdata_property): Likewise.
-	(graphics_object::get_xdata_property,
-	graphics_object::get_ydata_property,
-	graphics_object::get_zdata_property,
-	graphics_object::get_ldata_property,
-	graphics_object::get_udata_property,
-	graphics_object::get_xldata_property,
-	graphics_object::get_xudata_property,
-	graphics_object::get_cdata_property): Likewise.
-	(base_properties::get_xlim, base_properties::get_ylim,
-	base_properties::get_zlim, base_properties::get_clim,
-	base_properties::get_alim, base_properties::is_xliminclude,
-	base_properties::is_yliminclude, base_properties::is_zliminclude,
-	base_properties::is_climinclude, base_properties::is_aliminclude):
-	New methods.
-	(base_graphics_object::get_xlim, base_graphics_object::get_ylim,
-	base_graphics_object::get_zlim, base_graphics_object::get_clim,
-	base_graphics_object::get_alim, base_graphics_object::is_xliminclude,
-	base_graphics_object::is_yliminclude,
-	base_graphics_object::is_zliminclude,
-	base_graphics_object::is_climinclude,
-	base_graphics_object::is_aliminclude): Likewise.
-	(graphics_object::get_xlim, graphics_object::get_ylim,
-	graphics_object::get_zlim, graphics_object::get_clim,
-	graphics_object::get_alim, graphics_object::is_xliminclude,
-	graphics_object::is_yliminclude, graphics_object::is_zliminclude,
-	graphics_object::is_climinclude, graphics_object::is_aliminclude):
-	Likewise.
-	(base_graphics_object::update_axis_limits): Provide default behavior
-	by passing the call to the parent object.
-	(line::properties::xdata, line::properties::ydata,
-	line::properties::zdata, line::properties::ldata,
-	line::properties::udata, line::properties::xldata,
-	line::properties::xudata): Replace 'l' modifier with 'u'.
-	(line::properties::xlim, line::properties::ylim,
-	line::properties::zlim, line::properties::xliminclude,
-	line::properties::yliminclude, line::properties::zliminclude): New
-	hidden properties.
-	(line::properties::update_xdata, line::properties::update_ydata,
-	line::properties::update_zdata, line::properties::update_xldata,
-	line::properties::update_xudata, line::properties::update_ldata,
-	line::properties::update_udata): New updaters that update limit
-	properties.
-	(line::properties::compute_xlim, line::properties::compute_ylim): New
-	method to compute actual limits taking into account x/y data and
-	upper/lower bounds.
-	(text::properties::position): Add 'u' modifier.
-	(text::properties::xlim, text::properties::ylim,
-	text::properties::zlim, text::properties::xliminclude,
-	text::properties::yliminclude, text::properties::zliminclude): New
-	hidden properties.
-	(text::properties::update_position): New updater that updates limit
-	properties.
-	(image::properties::xdata, image::properties::ydata,
-	image::properties::cdata): Replace 'l' modifier with 'u'.
-	(image::properties::cdatamapping): Add 'l' modifier.
-	(image::properties::xlim, image::properties::ylim,
-	image::properties::clim, image::properties::xliminclude,
-	image::properties::yliminclude, image::properties::climinclude): New
-	hidden properties.
-	(image::properties::get_climinclude,
-	image::properties::is_climinclude): Provide specialized inline
-	accessors.
-	(image::properties::update_xdata, image::properties::update_ydata,
-	image::properties::update_cdata): New updaters that update limit
-	properties.
-	(patch::properties::xdata, patch::properties::ydata,
-	patch::properties::zdata, patch::properties::cdata): Replace 'l'
-	modifier with 'u'.
-	(patch::properties::cdatamapping): Add 'l' modifier.
-	(patch::properties::alphadatamapping): New property.
-	(patch::properties::xlim, patch::properties::ylim,
-	patch::properties::zlim, patch::properties::clim,
-	patch::properties::alim, patch::properties::xliminclude,
-	patch::properties::yliminclude, patch::properties::zliminclude,
-	patch::properties::climinclude, patch::properties::aliminclude: New
-	hidden properties.
-	(patch::properties::get_climinclude,
-	patch::properties::is_climinclude, patch::properties::get_aliminclude,
-	patch::properties::is_aliminclude): Provide specialized inline
-	accessors.
-	(patch::properties::update_xdata, patch::properties::update_ydata,
-	patch::properties::update_zdata, patch::properties::update_cdata): New
-	updaters that update limit properties.
-	(surface::properties::xdata, surface::properties::ydata,
-	surface::properties::zdata, surface::properties::cdata,
-	surface::properties::alphadata): Replace 'l' modifier with 'u'.
-	(surface::properties::cdatamapping,
-	surface::properties::alphadatamapping): Add 'l' modifier.
-	(surface::properties::xlim, surface::properties::ylim,
-	surface::properties::zlim, surface::properties::clim,
-	surface::properties::alim, surface::properties::xliminclude,
-	surface::properties::yliminclude, surface::properties::zliminclude,
-	surface::properties::climinclude, surface::properties::aliminclude: New
-	hidden properties.
-	(surface::properties::get_climinclude,
-	surface::properties::is_climinclude,
-	surface::properties::get_aliminclude,
-	surface::properties::is_aliminclude): Provide specialized inline
-	accessors.
-	(surface::properties::update_xdata, surface::properties::update_ydata,
-	surface::properties::update_zdata): Update limit properties.
-	(surface::properties::update_cdata,
-	surface::properties::update_alphadata): New updaters that update limit
-	properties.
-	* graphics.cc (base_properties::update_axis_limits): Simply call
-	update_axis_limits in owning graphics_object.
-	(base_graphics_object::update_axis_limits): Provide default behavior
-	by passing the call to the parent object.
-	(check_limits_vals(double&,double&,double&,const octave_value&)): New
-	static method to work with new limit properties in graphics objects.
-	(get_children_limits): New static method to compute the raw limits of
-	a set of children, based on the new limit properties.
-	(axes::update_axis_limits): Simplify and call get_children_limits. Add
-	handling of alpha limits.
-	(line::properties::compute_xlim, line::properties::compute_ylim): New
-	methods to compute line limits taking into account upper/lower bounds.
-
-	* graphics.cc (axes::properties::sync_positions): Update
-	transformation data.
-
-	* graphics.cc (Faddlistener): Rename from Fadd_listener.
-
-	* graphics.h.in (axes::properties::pixel2coord): Center Z coordinate
-	on x_zlim instead of 0.
-	(axes::properties::zoom, axes::properties::unzoom,
-	axes::properties::clear_zoom_stack): New methods to handle zoom stack.
-	(axes::properties::zoom_stack): New field to hold zoom stack.
-	(axes::properties::update_xlim, axes::properites::update_ylim):
-	Additional do_clr_zoom argument to control whether the zoom stack will
-	be cleared.
-	(axes::properties::update_zlim): Clear zoom stack.
-	* graphics.cc (axes::properties::zoom, axes::properties::unzoom,
-	axes::properties::clear_zoom_stack): New methods to handle zoom stack.
-
-	* genprops.awk (emit_source): Use all properties in factory defaults.
-
-	* graphics.h.in (base_property::base_property): Set internal counter
-	to 1 by default.
-	(property::property): Adapt constructors to default counter value in
-	base_property.
-
-	* graphics.h.in (base_properties::get_property): Make virtual and
-	remove const modifier.
-	* graphics.cc (base_properties::get_property): Can return built-in
-	properties. Generate an error if the property does not exist.
-	(base_properties::add_listener): Use get_property.
-	(Fadd_listener): Add documentation.
-	* genprops.awk (emit_common_declarations, emit_source): Emit code for
-	overloaded get_property method.
-
-	* genprops.awk (emit_declarations): Run listeners in the property
-	setter methods.
-	* graphics.h.in (enum listener_mode): New enum type for listeners.
-	(base_property::set): Make non-virtual and handle listeners execution.
-	(base_property::listeners): New field holding a map of listeners.
-	(base_property::add_listener, base_property::run_listeners,
-	base_property::do_set): New methods to handle listeners.
-	(property::add_listener, property::run_listeners): Likewise.
-	(base_properties::add_listener): Likewise.
-	(base_graphics_object::add_property_listener,
-	graphics_object::add_property_listener): Likewise.
-	(all property classes): Rename set to do_set and make it protected.
-	* graphics.cc (base_property::run_listeners): New method to execute
-	listeners.
-	(color_property::set, double_radio_property::set,
-	handle_property::set): Rename to do_set.
-	(base_properties::add_listener): New method to handle listener
-	additio. Only handle dynamic properties.
-	(Fadd_listener): New octave interface to add property listeners to
-	graphics object.
-
-	* genprops.awk (emit_get_data): Remove.
-	(emit_declarations): Treat row_vector_property as array_property and
-	remove data_property references.
-	* graphics.h.in (array_property::array_property(array_property)): Add
-	copy constructor.
-	(class data_property): Remove (replaced by array_property).
-	(class base_graphics_backend, class graphics_backend): Replace
-	data_property references with array_property.
-	(line::properties::xdata, line::properties::ydata,
-	line::properties::zdata, line::properties::ldata,
-	line::properties::udata, line::properties::xldata,
-	line::properties::xudata): Turn into row_vector_property.
-	(image::properties::xdata, image::properties::ydata): Likewise.
-	(image::properties::init): Add length constraints for xdata and ydata.
-	(patch::properties::xdata, patch::properties::ydata,
-	patch::properties::zdata, patch::properties::facevertexalphadata):
-	Turn into array_property.
-	(surface::properties::xdata, surface::properties::ydata,
-	surface::properties::zdata): Likewise.
-	(patch::properties::init): Add size constraints for xdata, ydata,
-	zdata and facevertexalphadata.
-	(surface::properties::init): Add size constraints for xdata, ydata and
-	zdata.
-	* graphics.cc (check_limit_vals): Remove override with data_property.
-	(axes::update_axis_limits): Replace data_property references with
-	array_property.
-
-	* graphics.h.in (root_figure::get_default): Use factory defaults when
-	no explicit default value exists.
-	(figure::properties::set___backend__): Reset __plot_stream__ to empty
-	value.
-	* graphics.cc (gh_manager::gh_manager): Call
-	graphics_backend::default_backend to make sure the default backend is
-	initialized.
-
-	* graphics.h.in (patch::properties::edgealpha,
-	surface::properties::facealpha, surface::properties::edgealpha): Fix
-	typos in property names.
-
-	* graphics.h.in (class double_radio_property): New property class for
-	holding face/edge alpha values.
-	(patch::properties::facealpha, patch::properties::edgealpha,
-	surface::properties::facealpha, surface::properties::edgealpha): Use
-	double_radio_property class.
-	* graphics.cc (double_radio_property::set): Implement new property
-	class.
-	* genprops.awk (emit_get_double_radio): New function to emit code for
-	double_radio_property.
-	(emit_declarations): Use it.
-
-	* graphics.h.in (array_property::array_property(void)): New default
-	constructor.
-	(array_property::xmin, array_property:xmax, array_property::xminp,
-	array_property::min_val, array_property::max_val,
-	array_property::min_pos): New fields and accessors to hold min/max
-	values of the array data.
-	(array_property::get_data_limits): New method to compute min/max
-	values of the array data.
-	(base_properties::get_cdata_property,
-	graphics_object::get_cdata_property): Return array_property.
-	(image::properties::cdata, surface::properties::cdata,
-	patch::properties::cdata, patch::properties::facevertexcdata): Turn
-	into array_property type.
-	(image::properties::init, surface::properties::init,
-	patch::properties::init): Add constraint initialization for cdata and
-	facevertexcdata (patch only).
-	* genprops.awk (emit_get_array): New function to emit accessor for
-	array_property.
-	(emit_declarations): Use it.
-	* graphics.cc (get_array_limits): New template function to compute
-	min/max values of an Array<T> object.
-	(array_property::get_data_limits): New method to compute min/max
-	values of the array data, using get_array_limits.
-	(check_limit_vals): Overridden function with array_property.
-	(axes::update_axis_limits): Turn cdata property into array_property.
-
-	* graphics.h.in (patch::properties::get_color_data): New utility
-	function to retrieve actual color data.
-	* graphics.cc (patch::properties::get_color_data): Likewise.
-
-	* graphics.h.in (base_scaler::is_linear, lin_scaler::is_linear,
-	scaler::is_linear): New method to detect linear scales.
-	(graphics_xform::scale(Matrix)): New method to scale 2D/3D coordinates
-	directly.
-	(patch::properties::facelighting): Set default value to "none".
-
-	* graphics.h.in (axes::axes): Be sure to initialize transformation
-	data correctly.
-
-	* graphics.cc (xget_ancestor): Pass graphics_object argument by value
-	instead of by reference.
-
-	* graphics.h.in (surface::properties::xdata,
-	surface::properties::ydata, surface::properties::zdata,
-	surface::properties::normalmode, surface::properties::vertexnormals):
-	Add 'u' modifier.
-	(surface::properties::update_normals): New method to compute normals
-	automatically.
-	(surface::properties::update_xdata, surface::properties::update_ydata,
-	surface::properties::update_zdata,
-	surface::properties::update_normalmode,
-	surface::properties::update_vertexnormals): New updaters to update
-	normals automatically.
-	* graphics.cc (surface::properties::update_normals): Likewise.
-	(cross_product): New inlined utility function for cross product
-	computation adn accumulation.
-
-	* graphics.h.in (class base_scaler, class lin_scaler, class
-	log_scaler, class scaler): Add scale method for NDArray.
-	(log_scaler::do_scale): Factorize scaling code.
-
-	* graphics.h.in (figure::properties::update_position): Re-remove.
-	(figure::properties::facecolor): Re-add 'texturemap' value.
-	(surface::properties::get_color_data): New method to compute actual
-	surface color data from cdata.
-	* graphics.cc (surface::properties::get_color_data): Likewise.
-	(xget_ancestor): New utility function to retrieve an ancestor of a
-	given type.
-	(convert_cdata): New utility function to convert cdata property into
-	actual color data.
-
-	* graphics.h.in (surface::properties::facecolor): Add "texturemap"
-	as possible value.
-	(class surface::properties): New properties alphadata,
-	alphadatmapping, ambientstrength, backfacelighting, diffusestrength,
-	edgealpha, edgelighting, erasemode, facelighting, meshstyle,
-	normalmode, specularcolorreflectance, specularexponent,
-	specularstrength, vertexnormals.
-	(surface::properties::init): Add constraints for alphadata,
-	vertexnormals and cdata (the latter are commented until cdata
-	has changed type).
-
-	* graphics.h.in (base_properties::update_boundingbox): New method
-	to handle object resize.
-	(figure::properties::set_boundingbox): New method to set figure
-	position from backend.
-	(figure::properties::update_position): Remove method.
-	(figure::properties::position): Remove 'u' modifier and add 'S'
-	modifier.
-	(axes::properties::update_boundingbox): Overload to recompute
-	transformation when axes size changed.
-	* graphics.cc (base_properties::update_boundingbox): New method.
-	(figure::properties::set_boundingbox,
-	figure::properties::set_position): Likewise.
-
-	* genprops.awk: Add 'U' modifier to support extern updaters.
-	* graphics.h.in (base_graphics_backend::gripe_invalid): New method
-	to simplify error reporting.
-	(class base_graphics_backend): Use it.
-	(base_graphics_backend::set_figure_position): New backend method.
-	(graphics_backend::set_figure_position): Likewise.
-	(figure::properties::position): Mark property with updater.
-	(figure::properties::update_position): New updater.
-
-	* graphics.h.in (root_figure::properties::callbackobject):
-	New root property.
-	(root_figure::properties::cbo_stack): New field.
-	* graphics.cc (xset_gcbo, xreset_gcbo): New utility functions.
-	(execute_callback): Set callbackobject property in root object
-	before executing a callback.
-	(root_figure::properties::set_callbackobject): Implement accessor.
-
-	* graphics.h.in (root_figure::properties::callbackobject):
-	New root property.
-	(root_figure::properties::cbo_stack): New field.
-	* graphics.cc (xset_gcbo, xreset_gcbo): New utility functions.
-	(execute_callback): Set callbackobject property in root object
-	before executing a callback.
-	(root_figure::properties::set_callbackobject): Implement accessor.
-
-	* graphics.h.in (class root_figure::properties,
-	class line::properties, class text::properties,
-	class image::properties, class patch::properties,
-	class surface::properties): Export classes with
-	OCTINTERP_API.
-
-	* graphics.cc (axes::properties::set_defaults): Use correct
-	default values for gridlinestyle and minorgridlinestyle.
-
-2008-06-03  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-save.cc (Fload): Fix "-7" option.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* pt.cc (tree:last_break_function): Next pointer to last function
-	with a breakpoint.
-	* pt.h (tree:last_break_function): ditto.
-	* debug.cc (Fdbstep): Use tree::break_function value of zero to
-	signal to step into the next function. Set tree::last_break_function
-	to indicate position of last breakpoint.
-	(Fdbnext):  Set tree::last_break_function to indicate position of
-	last breakpoint.
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Check tree::break_function value
-	of zero as well. Only check tree::last_line if we are in teh same
-	function as the last breakpoint.
-	* input.cc (char Vfilemarker): New global variable.
-	(Ffilemarker): New function to query and set Vfilemarker.
-	* input.h (extern char Vfilemarker): Make Vfilemarker available.
-	* util.cc (fcn_file_in_path): If the input argument contains
-	Vfilemarker, strip the trailing part of string from this point
-	when looking for function file.
-	* toplev.cc (octave_call_stack::fo_backtrace): Mark subfunctions
-	with the name of the parent function and Vfilemarker.
-	* symtab.cc (symbol_table::find_function (const std::string&,
-	tree_argument_list *, const string_vector&, octave_value_list*,
-	bool&): If function name contains Vfilemarker, check in scope of
-	specified parent function.
-
-	* DLD-FUNCTIONS/betainc.cc: Move test code here. Add test code for
-	single precision type.
-	* DLD-FUNCTIONS/gammainc.cc: Ditto.
-	* DLD-FUNCTIONS/gcd.cc (Fgcd): Support single precision. Move test
-	code here. Add test code for single precision type.
-	* data.cc: Move test code here and add tests for single precision
-	type. Add tests for Fislogical.
-	(NATIVE_REDUCTION): Support the 'double' argument.
-	* mapper.cc: Move test code here and add tests for single precision
-	type.
-	* ov-float.cc (CD_SCALAR_MAPPER): Replace Complex with
-	FloatComplex.
-	(erf, erfc, abs, acos, asin, asinh, atan, atanh, ceil, cos, cosh,
-	exp, expm1, floor, log10, log1p, sin, sinh, sqrt, tan, tanh): Use
-	float version of base functions (ie. ::sinf and not ::sin)
-	(lgamma, acosh, log, log2, log10, log1p): Use single precision
-	infinity value.
-	* ov-flt-complex.cc (erf, erfc, expm1, log1p): Use the float
-	version of base functions.
-	* ov-flt-cx-mat.cc (DARRY_MAPPER): Replace NDArray with FloatNDArray.
-	(erf, erdc, gamma): Use FloatNDArray::dmapper and not
-	NDArray::dmapper.
-	* ov-flt-cx-mat.h (is_double_type): Delete.
-	(is_single_type): New method.
-	* ov-flt-re-mat.cc (lgamma,  acosh, log, log2, log10, log1p,
-	sqrt): Use single precision infinity value.
-
-	* chol.cc (Fcholinv, Fchol2inv, Fcholupdate, Fcholinsert,
-	Fcholdelete, Fcholshift): Allow single precision arguments.
-	(Fchol): Move test code here. Add test code for single precision.
-	(Fcholupdate, Fcholinsert, Fcholdelete, Fcholshift): Add test code
-	for single precision.
-	* conv2.cc (Fconv2): Add single precision test code.
-	* det.cc (Fdet): For single values or empty matrices, return
-	single precision arg for single precion input. Move test code
-	here. Add single precision test code.
-	* fft.cc (do_fft): For empty single precision arguments return a
-	single precision value. Add single precision test code. Remove
-	fft2 test code.
-	* fft2.cc (do_fft2): For empty single precision arguments return a
-	single precision value. Add single precision test code. Move fft2
-	test code here.
-	* fftn.cc (do_fftn): For empty single precision arguments return a
-	single precision value.
-	* eig.cc (Feig):  Move test code here. Add single precision test
-	code.
-	* expm.cc (Fexpm): Ditto.
-	* find.cc (Ffind): Ditto.
-	* hess.cc (Fhess): Ditto.
-	* inv.cc (Finc): Ditto.
-	* lu.cc (Flu): Ditto.
-	* qr.cc (Fqr): Ditto.
-	* schur.cc (Fschur): Ditto.
-	* svd.cc (Fsvd): Ditto.
-	* syl.cc (Fsyl): Ditto.
-
-	* op-fcm-fcm.cc, op-fcm-fcs.cc, op-fcm-fm.cc, op-fcm-fs.cc,
-	op-fcs-fcm.cc, op-fcs-fcs.cc, op-fcs-fm.cc, op-fcs-fs.cc,
-	op-fm-fcm.cc, op-fm-fcs.cc, op-fm-fm.cc, op-fm-fs.cc,
-	op-fs-fcm.cc, op-fs-fcs.cc, op-fs-fm.cc, op-fs-fs.cc: Add mixed
-	double, single precision concatenation operators.
-
-	* data.cc (Fall, Fany, Fdiag, Fcat, Fismatrix, Fones, Fzeros,
-	Finf, FNaN, FNA, Feye, Flinspace, Freshape, Ftranspose,
-	Fctranspose, Fsort). Move tests here. Add single precision tests.
-	* mappers.cc (Ffinite, Fisinf, Fisna, Fisnan): Ditto.
-	* ov-float.cc (octave_float_scalar:resize): single precision
-	return value.
-	* ov.cc (octave_value::octave_value (const
-	FloatComplexDiagMatrix&)): Ditto.
-	* data.cc (Fnorm): Add single precision.
-	(do_cat): Disable fast return and skipping empty matrices, as they
-	play a part in determining the return type.
-	* ov.cc (octave_value do_cat_op (const octave_value&, const
-	octave_value&, const Array<octave_idx_type>&)): ditto.
-
-2008-06-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-cell.cc (Fcellstr): For compatibility with Matlab, return {''}
-	when given ''.
-
-2008-05-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function,
-	fsolve_user_jacobian): Reshape argument to original dims before
-	passing.
-	(Ffsolve): Save original dimensions of the starting guess and reshape
-	on return. Fix tests.
-
-2008-05-21  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/quad.cc (quad_float_user_function): New function.
-	(Fquad): Handle float type.
-	New tests.
-
-2008-05-21  Jaroslav Hajek  <highegg@gmail.com>
-
-	* OPERATORS/op-fcm-fcm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
-	New functions.
-	(install_fcm_fcm_ops): Install them.
-	* OPERATORS/op-fm-fm.cc (trans_mul, mul_trans): New functions.
-	(install_fm_fm_ops): Install them.
-
-	* OPERATORS/op-sm-m.cc (trans_mul): New function.
-	(install_sm_m_ops): Register it.
-	* OPERATORS/op-m-sm.cc (mul_trans): New function.
-	(install_m_sm_ops): Register it.
-	* OPERATORS/op-scm-cm.cc (trans_mul, herm_mul): New function.
-	(install_scm_cm_ops): Register it.
-	* OPERATORS/op-cm-scm.cc (mul_trans, mul_herm): New function.
-	(install_cm_scm_ops): Register it.
-
-	* dMatrix.cc: Declare DSYRK.
-	(xgemm): Call DSYRK if symmetric case detected.
-	* CMatrix.cc: Declare ZSYRK, ZHERK.
-	(xgemm): Call ZSYRK/ZHERK if symmetric/hermitian case detected.
-
-	* ov.h (octave_value::compound_binary_op): New enum.
-	(do_binary_op (octave_value::compound_binary_op, ...),
-	octave_value::binary_op_fcn_name (compound_binary_op),
-	octave_value::do_binary_op (compound_binary_op, ...)):
-	New declarations.
-	(OV_COMP_BINOP_FN): New macro (+ several expansions).
-	* ov.cc (octave_value::binary_op_fcn_name (compound_binary_op),
-	decompose_binary_op, do_binary_op (compound_binary_op, ...)):
-	New functions.
-	* ov-typeinfo.h (octave_value_typeinfo::register_binary_class_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::register_binary_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_register_binary_class_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_register_binary_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_lookup_binary_class_op
-	(octave_value::compound_binary_op),
-	octave_value_typeinfo::do_lookup_binary_op
-	(octave_value::compound_binary_op, ...)):
-	New declarations.
-	(octave_value_typeinfo::lookup_binary_class_op
-	(octave_value::compound_binary_op),
-	(octave_value_typeinfo::lookup_binary_op
-	(octave_value::compound_binary_op, ...)):
-	New functions.
-	(octave_value_typeinfo::compound_binary_class_ops,
-	octave_value_typeinfo::compound_binary_ops):
-	New fields.
-	* ov-typeinfo.cc (octave_value_typeinfo::register_binary_class_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::register_binary_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_register_binary_class_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_register_binary_op
-	(octave_value::compound_binary_op, ...),
-	octave_value_typeinfo::do_lookup_binary_class_op
-	(octave_value::compound_binary_op),
-	octave_value_typeinfo::do_lookup_binary_op
-	(octave_value::compound_binary_op, ...)):
-	New functions.
-	(octave_value::do_register_type): Resize also compound_binary_ops
-	field.
-	* pt-exp.h (tree_expression::is_unary_expression): New virtual
-	function.
-	* pt-unop.h (tree_unary_expression::is_unary_expression): New virtual
-	override.
-	* pt-cbinop.h, pt-cbinop.cc: New files (implement
-	tree_compound_binary_expression class).
-	* pt-all.h: Include pt-cbinop.h.
-	* Makefile.in (PT_INCLUDES, PT_SRC): Include them in the lists.
-	* parse.y (make_binary_op): Call maybe_compound_binary_expression.
-	* OPERATORS/op-m-m.cc (trans_mul, mul_trans): New operator handlers.
-	(install_m_m_ops): Register them.
-	* OPERATORS/op-cm-cm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
-	New operator handlers.
-	(install_cm_cm_ops): Register them.
-
-	* DLD-FUNCTIONS/matrix_type.cc: Fix tests relying on the
-	older more optimistic hermitian check.
-
-2008-05-21  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rcond.cc (Frcond): Add support for single precision.
-
-	* DLD-FUNCTIONS/sqrt.m: Replace DBL_* with FLT_* for single
-	precision types.
-	* data.cc (static octave_value fill_matrix (const
-	octave_value_list&, double, float, const char *)): Add function
-	with additional argument to allow for different valid for double
-	and single precision.
-	(Finf, FNaN, FNA, Frealmax, Frealmin): Use it here.
-	(Feps): Modify behavior for a single numerical argument to give
-	difference to next largest value in the class of the type passed.
-
-2008-05-21  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.h (tree_index_expression::tree_index_expression (int, int)):
-	Delete default argument values.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Flog2): Handle single precision.
-	* ov-float.h, ov.float.cc, ov-flt-complex.h, ov-flt-complex.cc,
-	ov-flt-re-mat.h, ov-flt-re-mat.cc, ov-flt-cx-mat.h,
-	ov-flt-cx-mat.cc: Provide single precision version of log2 mapper
-	function.
-
-	* DLD-FUNCTIONS/__convn__.cc, DLD-FUNCTIONS/__pchip_deriv__.cc,
-	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
-	DLD-FUNCTIONS/conv2.cc, DLD-FUNCTIONS/gammainc.cc,
-	DLD-FUNCTIONS/givens.cc, DLD-FUNCTIONS/kron.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/syl.cc, data.cc:
-	Prefer demotion to single precision rather than promotion to double.
-
-	* ov-float.cc, ov-float.h, ov-flt-complex.cc, ov-flt-complex.h,
-	ov-flt-cx-mat.cc, ov-flt-cx-mat.h, ov-flt-re-mat.cc,
-	ov-flt-re-mat.h (numeric_conversion_function (void) const):
-	Remove method.
-
-	* ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h
-	(numeric_conversion_function (void) const): Add method for
-	conversion to single precision.
-
-	* DLD-FUNCTIONS/conv2.cc (Fconv2): Don't access third arg if we
-	don't have one.
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/expm.cc,
-	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/hess.cc,
-	DLD-FUNCTIONS/qr.cc: COnvert for use with single precision.
-
-	* OPERATORS/op-int.h, OPERATORS/op-int-conv.cc,
-	OPERATORS/op-int-concat.cc: Adapt for single precision.
-
-	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
-	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
-	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
-	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
-	Add includes for single precision types.
-
-	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
-	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcs-fs.cc,
-	OPERATORS/op-fm-fs.cc, OPERATORS/op-fs-fcm.cc,
-	OPERATORS/op-fs-fcs.cc, OPERATORS/op-fs-fm.cc,
-	OPERATORS/op-fs-fs.cc, OPERATORS/op-int.h, ov.cc, ov-scalar.cc,
-	ov-float.h, ov-flt-complex.cc, ov-float.cc, ov-flt-re-mat.cc,
-	ov-flt-cx-mat.cc: Replace octave_float with octave_scalar_float
-
-	* OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
-	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
-	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc,
-	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
-	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fcm-fs.cc,
-	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
-	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
-	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
-	OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
-	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
-	OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
-	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc:
-	Add mixed single/double assign operators.
-
-	* ov.h (numeric_demotion_function): New method for double to
-	single demotion.
-	* ov-base.h (numeric_demotion_function): Declare virtual version.
-
-	* ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h
-	(numeric_cdemote_function (void) const): Add method for
-	conversion to single precision renamed from the method
-	numeric_conversion_function
-
-	* ov.cc (do_binary_op): Use demotion function seperately than the
-	numeric conversion function so as to avoid isses like
-	a=zeros(2,2);a(1,:)=1:2.
-
-	* OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
-	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fcm-fs.cc,
-	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
-	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
-	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
-	OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
-	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
-	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc, ov-float.cc,
-	ov-float.h, ov-flt-complex.cc, ov-flt-complex.h, ov-flt-cx-mat.cc,
-	ov-flt-cx-mat.h, ov-flt-re-mat.cc, ov-flt-re-mat.h: New files.
-	* Makefile.in (OV_INCLUDES, OV_SRC, OP_XSRC. FLOAT_OP_XSRC,
-	DOUBLE_OP_XSRC): Add them here.
-
-	* DLD-FUNCTIONS/__convn__.cc, DLD-FUNCTIONS/__lin_interpn__.cc,
-	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/bsxfun.cc,
-	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/conv2.cc,
-	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/fft.cc,
-	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
-	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/givens.cc,
-	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
-	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
-	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/schur.cc,
-	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
-	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
-	DLD-FUNCTIONS/typecast.cc, OPERATORS/op-b-b.cc,
-	OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-range.cc, OPERATORS/op-s-s.cc, bitfcns.cc, data.cc,
-	oct-stream.cc, ov-base.cc, ov-base.h, ov-bool-mat.cc,
-	ov-bool-mat.h, ov-bool.h, ov-ch-mat.cc, ov-ch-mat.h,
-	ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-intx.h,
-	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.h,
-	ov.cc, ov.h, pr-output.cc, pr-output.h, pt-mat.cc, utils.cc,
-	utils.h, xdiv.cc, xdiv.h, xpow.cc, xpow.h:
-	Allow single precision types.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rcond.cc: New function.
-	* Makefile.in (DLD_XSRC): Add it here.
-
-	* debug.cc (Fdbstop): If no line specified assume line 1.
-	(Fdbstep, Fdbcont, Fdbnext): Move debugging functions
-	to normal commands.
-	(Fdbquit): New command to quit debugging mode and return to the
-	prompt.
-	(Fdbstep): Modify the dbstep command for compatibility.
-	* input.cc (Vdebugging_current_line): Store current line being
-	debugged for use in DEFCMD versions of debug commands.
-	(match_sans_spaces_semi): Delete.
-	(static void get_debug_input (const std;string&)): New function to
-	parse input in debug mode using standard Octave parser.
-	(static octave_value_list get_user_input (const
-	octave_value_list&, int)): Remove debugging specialization.
-	* input.h (Vdebugging_current_line): Store current line being
-	debugged for use in DEFCMD versions of debug commands.
-	* parse.y (make_return_command): Special handling in debug mode.
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Support break in n lines needed
-	to support "dbstep N".
-	* pt.cc (tree::break_next): Convert to a down counter to support
-	break in N lines. Breakpoint occure when tree::break_next is zero.
-	* toplev.cc (octave_user_script *
-	octave_call_stack::do_caller_user_script (difference_type) const):
-	Support skipping the first N functions to support "dbstep out".
-	(octave_user_function * octave_call_stack::do_caller_user_function
-	(difference_type) const): Ditto.
-	(octave_user_code * octave_call_stack::do_caller_user_code
-	(difference_type) const): Ditto.
-	* toplev.h (octave_user_script *
-	octave_call_stack::do_caller_user_script (difference_type) const):
-	Add difference_type argument.
-	(octave_user_function * octave_call_stack::do_caller_user_function
-	(difference_type) const): Ditto.
-	(octave_user_code * octave_call_stack::do_caller_user_code
-	(difference_type) const): Ditto.
-	(static octave_user_script *caller_script (difference_type)):
-	Ditto.
-	(static octave_user_function *caller_user_function
-	(difference_type q)): Ditto.
-	(static octave_user_code *caller_user_code (difference_type q)):
-	Ditto.
-
-2008-05-20  Kim Hansen  <kimhanse@gmail.com>
-
-	* load-path.cc (load_path::do_initialize):
-	Include separator when appending sys_path.
-
-2008-05-20  Bill Denney  <bill@denney.ws>
-
-	* file-io.cc (Ffgets, Fgets, Ffputs, Ffscanf): Doc fix (seealso).
-
-2008-05-20  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* DLD-FUNCTIONS/rand.cc (Frandn): Doc fix.
-
-2008-05-20  David Bateman  <dbateman@free.fr>
-
-	* load-save.cc (do_load): Treat non verbose list_only output in
-	the same manner as Fwho.
-	* symtab.h (static void clear_variable_regexp (const
-	std::string&): New method.
-	(static std::list<symbol_record> regexp (const std::string&)): Ditto.
-	(static std::list<symbol_record> regexp_variables (const
-	std::string&)): Ditto.
-	(static std::list<symbol_record> regexp_global_variables (const
-	std::string&)): Ditto,
-	(static std::list<symbol_record> regexp_variables (const
-	string_vector&)): Ditto.
-	(void do_clear_variable_regexp (const std::string&)): Ditto.
-	(std::list<symbol_record> do_regexp (const std::string&, bool)
-	const): Ditto.
-	(do_who): Accept the "-regexp" option. Use regexp versions of
-	symbol table functions.
-	(static inline bool name_match_any_pattern (const string_vector&,
-	int, int, bool): Add regexp argument, and use regexp matching if
-	true.
-	(do_clear_variables): Add regexp option and pass to
-	name_match_any_pattern.
-	(Fclear): Accept the -regexp option.
-
-2008-05-07  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc, pt-arg-list.h (tree_argument_list::dup):
-	New arg, context.
-	* pt-assign.cc, pt-assign.h (tree_simple_assignment::dup,
-	tree_multi_assignment::dup): Likewise.
-	* pt-binop.cc, pt-binop.h (tree_binary_expression::dup,
-	tree_boolean_expression::dup): Likewise.
-	* pt-cell.cc, pt-cell.h (tree_cell::dup): Likewise.
-	* pt-cmd.cc, pt-cmd.h (tree_no_op_command::dup,
-	tree_function_def::dup): Likewise.
-	* pt-colon.cc, pt-colon.h (tree_colon_expression::dup): Likewise.
-	* pt-const.cc, pt-const.h (tree_constant::dup): Likewise.
-	* pt-decl.cc, pt-decl.h (tree_decl_elt::dup, tree_decl_init_list::dup,
-	tree_global_command::dup, tree_static_command::dup): Likewise.
-	* pt-except.cc, pt-except.h (tree_try_catch_command::dup,
-	tree_unwind_protect_command::dup): Likewise.
-	* pt-exp.h (tree_expression:dup): Likewise.
-	* pt-fcn-handle.cc, pt-exp.h (tree_expression:dup): Likewise.
-	* pt-fcn-handle.h (tree_fcn_handle::dup,
-	tree_anon_fcn_handle::dup): Likewise.
-	* pt-id.cc, pt-id.h (tree_identifier::dup): Likewise.
-	* pt-idx.cc, pt-idx.h (tree_index_expression::dup): Likewise.
-	* pt-jump.cc, pt-jump.h (tree_break_command::dup,
-	tree_continue_command::dup, tree_return_command::dup): Likewise.
-	* pt-loop.cc, pt-loop.h (tree_while_command::dup,
-	tree_do_until_command::dup, tree_simple_for_command::dup,
-	tree_complex_for_command::dup): Likewise.
-	* pt-mat.cc, pt-mat.h (tree_matrix::dup): Likewise.
-	* pt-misc.cc, pt-misc.h (tree_parameter_list::dup,
-	tree_return_list::dup): Likewise.
-	* pt-select.cc, pt-select.h (tree_if_clause::dup,
-	tree_if_command_list::dup, tree_if_command::dup,
-	tree_switch_case::dup, tree_switch_case_list::dup,
-	tree_switch_command::dup, tree_statement::dup,
-	tree_statement_list::dup, tree_prefix_expression::dup,
-	tree_postfix_expression::dup): Likewise.
-
-	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
-	octave_fcn_handle::save_binary, octave_fcn_handle::save_hdf5):
- 	Pass context to symbol_table::all_variables.
-	* load-save.cc (dump_octave_core): Likewise.
-	* ov-fcn-handle.cc (Ffunctions): Don't skip anonymous functions
-	with the name set to the text of the function body.
- 	Pass context to symbol_table::all_variables and
-	symbol_table::symbol_record::varval.
-
-	* symtab.h (symbol_table::varref, symbol_table::do_varref,
-	symbol_table::varval, symbol_table::do_varval,
-	symbol_table::all_variables, symbol_table::do_all_variables,
-	symbol_table::symbol_record::varref,
-	symbol_table::symbol_record::varval,
-	symbol_table::symbol_record::is_defined,
-	symbol_table::symbol_record::is_variable,
-	symbol_table::symbol_record::symbol_record_rep::varref,
-	symbol_table::symbol_record::symbol_record_rep::varval,
-	symbol_table::symbol_record::symbol_record_rep::is_defined,
-	symbol_table::symbol_record::symbol_record_rep::is_variable,
-	):
-	* symtab.h (symbol_table::do_inherit): New arg, donor_context.
-	Look for value in donor_contxt.  Set value in base context.
-	* symtab.cc (symbol_table::symbol_record::symbol_record_rep::dump):
-	Pass xcurrent_context to varval.
-
-2008-05-06  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline.cc (Finline): Also ignore NaN, Inf, pi, NA and eps.
-
-	* bitfcns.cc (BITOP): Treat octave_bool types and octave_scalar.
-
-2008-05-06  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table::scope_id_cache): New class.  Use it to
-	replace scope_ids_in_use and scope_ids_free_list.
-	(symbol_table::erase_scope): Call free_scope.
-	(symbol_table::free_scope): Call scope_id_cache::free.
-
-	* ov-fcn.h (octave_function::lock_subfunctions,
-	octave_function::unlock_subfunctions): New virtual functions.
-	(octave_function::lock_subfunctions): Call lock_subfunctions here.
-	(octave_function::unlock_subfunctions): Call unlock_subfunctions here.
-	* ov-usr-fcn.h (octave_user_function::lock_subfunctions,
-	octave_user_function::unlock_subfunctions): New functions.
-
-	* symtab.h (symbol_table::lock_subfunctions,
-	symbol_table::lock_subfunctions,
-	symbol_table::fcn_info::lock_subfunction,
-	symbol_table::fcn_info::unlock_subfunction,
-	symbol_table::fcn_info::fcn_info_rep::lock_subfunction,
-	symbol_table::fcn_info::fcn_info_rep::unlock_subfunction):
-	New functions.
-
-	* symtab.h (symbol_table::set_scope, symbol_table::get_instance):
-	Don't set instance unless allocation succeeds.
-	(symbol_table::print_scope, symbol_table::do_print_scope): Delete.
-	(symbol_table::free_scope): Avoid using invalid iterator.
-	(symbol_table::erase_scope): Call free_scope here.
-
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
-	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5):
-	Cache anonymous name here.
-	(octave_fcn_handle::octave_fcn_handle): Move here from
-	ov-fcn-handle.h.  Cache name if function is user-defined.
-
-	* pt-id.cc (tree_identifier::dup): Avoid shadow warning.
-
-	* symtab.h (symbol_table::cache_name, symbol_table::do_cache_name):
-	New functions.
-	(symbol_table::get_instance): Cache top-level name here.
-	* parse.y (finish_function): Call symbol_table::cache_name here.
-
-	* symtab.cc (F__dump_symtab_info__): New function.
-
-	* symtab.cc (symbol_table::dump, symbol_table::dump_global,
-	symbol_table::dump_functions, symbol_table::do_dump,
-	symbol_table::symbol_record::symbol_record_rep::dump,
-	symobl_table::fcn_info::fcn_info_rep::dump): New functions.
-	* symtab.h: Provide decls.
-	(symtab::scopes, symbol_table::symbol_record::dump,
-	symbol_table::fcn_info::dump): New functions.
-	(symtab::get_instance): New arg, create; if false throw error if
-	instance for given scope is not found.
-
-	* ov-base.cc (octave_base_value::dump): New virtual function.
-	* ov-base.h: Proivde decl.
-	* ov.h (octave_value::dump): New function.
-
-	* ov.h, ov.c (octave_value::function_value): New const version.
-	* ov-base.h, ov-base.cc (octave_base_value::function_value): Likewise.
-	* ov-builtin.h (octave_builtin::function_value): Likewise.
-	* ov-fcn-handle.h (octave_fcn_handle::function_value): Likewise.
-	* ov-mex-fcn.h (octave_mex_function::function_value): Likewise.
-	* ov-usr-fcn.h (octave_user_script::function_value,
-	octave_user_function): Likewise.
-
-	* symtab.h, symtab.cc: Use consistent naming scheme for iterator
-	typedefs.  Change all uses.
-
-	* variables.cc (F__print_symtab_info__, F__print_symbol_info__):
-	Delete.
-
-	* ov-cell.cc (Fstruct2cell): Handle structure arrays properly.
-
-2008-05-05  David Bateman  <dbateman@free.fr>
-
-	* sysdep.cc (Fputenv): Allow single arg. Alias to setenv.
-
-2008-05-05  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (Fre_read_readline_init_file): New function.
-
-2008-05-04  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (Ffunctions): Pass octave_value object instead
-	of Cell in structure field assignment.
-
-	* parse.y (frob_function): Don't install subfunctions here.
-	(finish_function): Handle subfunctions here.
-	Conditionally define tree_function_def object here.
-
-	* symtab.h (symbol_table::fcn_info::fcn_info_rep::find_function):
-	Initialize args_evaluated.
-	* pt-id.cc (tree_identifier::rvalue): Likewise.
-	* variables.cc (symbol_exist): Likewise.
-
-	* pt-id.h (tree_identifier::tree_identifer): Delete useless statement.
-
-	* variables.cc (get_global_value): Use symbol_table::global_varval
-	instead of passing scope to symbol_table::varval.
-	(set_global_value): Use symbol_table::global_varref
-	instead of passing scope to symbol_table::varref.
-	(do_who): Use symbol_table::glob_global_variables
-	instead of passing scope to symbol_table::glob_variables.
-	(do_clear_globals):
-	Use symbol_table::global_variable_names and
-	symbol_table::clear_global instead of passing scope to
-	symbol_table::clear_variables.
-	Use symbol_table::global_variable_names instead of passing scope
-	to symbol_table::variable_names.
-
-	* unwind-prot.cc (unwind_protect::save_size_t): New function.
-	(saved_variable::restore_value): Handle size_t values.
-	(saved_variable::saved_variable): New size_t constructor.
-	(saved_variable::size_type): New var_type enum value.
-	(saved_variable::ptr_to_size_t, saved_variable::size_t_value):
-	New union elements.
-	* unwind-prot.h (unwind_protect::save_size_t): Provide decl
-	(unwind_protect_size_t): New macro.
-
-	* toplev.cc (octave_call_stack::do_goto_frame,
-	octave_call_stack::do_goto_frame_relative): New functions.
-	(octave_call_stack::do_backtrace): Also return scope and context ids.
-	* toplev.h 	(octave_call_stack::do_goto_frame,
-	octave_call_stack::do_goto_frame_relative): Provide decls.
-	(octave_call_stack::curr_frame): New data member.
-	(octave_call_stack::octave_call_stack): Initialize it.
-	(octave_call_stack::call_stack_elt::scope,
-	(octave_call_stack::call_stack_elt::context): New data members.,
-	(octave_call_stack::current_frame,
-	(octave_call_stack::do_current_frame
-	octave_call_stack::do_goto_frame,
-	octave_call_stack::do_goto_frame_relative): New functions.
-	(octave_call_stack::push, octave_call_stack::do_push):
-	New args, scope and context.
-	(octave_call_stack::do_push, octave_call_stack::do_pop): Update
-	curr_frame if debugging.
-
-	* symtab.cc (symbol_table::global_table): New map for global values.
-	(symbol_table::xcurrent_context): New variable for context info.
-	* symtab.h: Provide decls.
-	(symbol_table::global_varref, symbol_table::global_varval,
-	symbol_table::current_context,
-	symbol_table::set_scope_and_context,
-	symbol_table::glob_global_variables,
-	symbol_table::global_variable_names,
-	symbol_table::top_leve_variable_names):
-	New functions.
-	(symbol_table::context_id, const_global_table_iterator,
-	global_table_iterator): New typedefs.
-	(symbol_table::xcurrent_context_this_table): New variable.
-	(symbol_table::symbol_table): Initialize it.
-	(symbol_table::set_scope): Use it.
-	(symbol_table::symbol_record::find, symbol_table::do_find):
-	Use symbol_table::global_varref instead of passing scope to
-	symbol_table::varref.
-	(symbol_table::symbol_record::symbol_record_rep::value_stack):
-	Now a std::deque instead of a std::stack.
-	(symbol_table::symbol_record::symbol_record_rep::push_context,
-	symbol_table::symbol_record::symbol_record_rep::pop_context):
-	Don't push or pop persistent of global variables.
-	(symbol_table::symbol_record::symbol_record_rep::varval,
-	Handle context here.  Call symbol_table::global_varval instead of
-	passing scope to symbol_table::varval.
-	(symbol_table::symbol_record::symbol_record_rep::varref):
-	Handle context here.  Call symbol_table::global_varref instead of
-	passing scope to symbol_table::varref.
-	(symbol_table::symbol_record::varref,
-	symbol_table::symbol_record::varval): No need to handle global
-	values specially here.
-	(symbol_table::symbol_record::push_context
-	symbol_table::symbol_record::pop_context: No need to handle global
-	or persistent values specially here.
-	(symbol_table::get_instance): Don't return global scope.
-	(symbol_table::do_push_context, symbol_table::do_pop_context):
-	Increment/decrement xcurrent_context.
-	(symbol_table::do_clear_global, symbol_table::do_clear_global_pattern):
-	Use global_table instead of separate scope.
-
-	* symtab.h, symtab.cc (symbol_table::fcn_info::fcn_info_rep::find,
-	symbol_table::fcn_info::fcn_info_rep::find_function,
-	symbol_table::fcn_info::find, symbol_table::fcn_info::find_function,
-	symbol_table::find, symbol_table::find_function,
-	symbol_table::do_find, symbol_table::insert, symbol_table::varref,
-	symbol_table::varval, symbol_table::persistent_varref,
-	symbol_table::persistent_varval, symbol_table::erase_persistent,
-	symbol_table::is_variable, symbol_table::clear,
-	symbol_table::clear_variables, symbol_table::clear_global,
-	symbol_table::clear_variable, symbol_table::clear_global_pattern,
-	symbol_table::clear_variable_pattern, symbol_table::push_context,
-	symbol_table::pop_context, symbol_table::mark_hidden,
-	symbol_table::mark_global, symbol_table::glob,
-	symbol_table::glob_variables, symbol_table::variable_names,
-	symbol_table::is_local_variable, symbol_table::is_global):
-	Eliminate scope arg.  Change all uses.
-	(symbol_table::erase_scope, symbol_table::dup_scope):
-	Require scope arg.
-
-	* pt-stmt.cc (tree_statement::eval): Don't update statement info
-	in octave_call_stack if debugging.
-
-	* pt-id.h (tree_identifier::xsym): New function.
-	(tree_identifier::rvalue, tree_identifier::lvalue,
-	tree_identifier::dup, tree_identifier::is_defined,
-	tree_identifier::is_variable, tree_identifier::mark_global,
-	tree_identifier::mark_as_static, tree_identifier::do_lookup,
-	tree_identifier::mark_as_formal_parameter):
-	Use xsym to access symbol.
-	(tree_identifier::scope): New data member.
-	(tree_identifier::tree_identifier): Initialize it.
-
-	* ov-usr-fcn.cc (octave_user_script::octave_user_script,
-	octave_user_function::octave_user_function):
-	Initialize call_depth to -1.
-	(octave_user_script::do_multi_index_op): Fix comparison of
-	call_depth with Vmax_recursion_depth.
-	(octave_user_function::do_multi_index_op):
-	Compare call depth > 0, instead of > 1.
-	* ov-usr-fcn.h (octave_user_function::save_args_passed):
-	Compare call depth > 0, instead of > 1.
-
-	* input.cc (Vdebugging): New variable.
-	(get_user_input): Eliminate DEBUG argument.  Use global Vdebugging
-	variable instead.  Change all callers.
-	(saved_frame): New static variable.
-	(restore_frame): New function.
-	(do_keyboard): Unwind-protect Vdebugging here and set it to TRUE.
-	Save current frame.  Use unwind_protect to restore it.
-	(Fkeyboard): Save current frame.  Use unwind_protect to restore it.
-	Move up the call stack one frame before calling do_keyboard.
-	* input.h (Vdebugging): Provide decl.
-
-	* mex.cc (mexGetVariable): Handle global vars with get_global_value.
-	(mexPutVariable): Likewise, with set_global_value.
-
-	* octave.cc (intern_argv): Assert that we are at the top level.
-	Don't pass scope to symbol_table::varref or symbol_table::mark_hidden.
-
-	* load-save.cc (install_loaded_variable): Use
-	symbol_table::global_varref instead of passing global scope to
-	symbol_table::varref.
-
-	* help.cc (make_name_list): Call symbol_table::global_variable_names
-	and symbol_table::top_level_variable_names instead of passing
-	scope to symbol_table::variable_names.
-
-	* debug.cc (do_dbupdown, Fdbup, Fdbdown): New functions.
-	(current_stack_frame): Delete static variable.
-	(Fdbstack): Rename from F__dbstack__.  Implement all of dbstack
-	here instead of partially in dbstack.m.
-
-2008-05-03  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc (F__end__): If there are more dimensions than
-	indices, smash extra dimensions first.
-	(num_indices): New static variable.
-	(tree_argument_list::convert_to_const_vector): Save and set it.
-
-	* parse.y (parse_fcn_file): Also temporarily set parser_end_of_input
-	and get_input_from_eval_string to false while reading script files.
-
-2008-05-01  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (load_fcn_from_file): Expect
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
-	Search currently loaded .oct files by file name.  Don't search
-	currently loaded files for functions.
-	(octave_shlib_list::find_file, octave_shlib_list::do_find_file):
-	New functions.
-	(octave_shlib_list::search, octave_shlib_list::do_search): Delete.
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct): No need to
-	do load_path lookups here.
-	(octave_shlib_list::iterator, octave_shlib_list::const_iterator):
-	New typedefs.
-	(octave_shlib_list::do_remove, octave_shlib_list::do_search,
-	octave_shlib_list::do_display): Use them.
-	(octave_mex_file_list::iterator, octave_mex_file_list::const_iterator):
-	New typedefs.
-	(octave_mex_file_list::do_remove): Use them.
-
-2008-05-03  Rafael Laboissiere  <rafael@debian.org>
-
-	* DLD-FUNCTIONS/time.cc, file_io.cc: Use ischar instead of
-	deprecated isstr.
-
-2008-04-30  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
-	If function already exists, reload it anyway.  Clear existing
-	oct_file only if reloading a function from the same file.
-	(octave_shlib_list::display): New static function.
-	(octave_shlib_list::do_display): New function.
-
-	* symtab.cc (out_of_date_check_internal): Better handling for
-	functions found in files by relative file names.
-	(load_out_of_date_fcn): New function.
-
-	* ls-oct-ascii.cc (extract_keyword): Return early if first char is
-	not a comment character.
-	(read_ascii_data): Accept .nargin. and .nargout. as valid identifiers.
-
-	* ov-fcn-handle.cc: Combine tests.  Test saving and loading
-	handles for built-in, .oct, and .m functions.
-	(octave_fcn_handle::save_ascii, octave_fcn_handle::save_binary,
-	octave_fcn_handle::save_hdf5, octave_fcn_handle::print):
-	Avoid dereferencing invalid pointer.
-
-	* data.cc: Fix tests.  Use "%!assert", not "%! assert" for
-	individual assert tests.
-
-2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
-	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-cx-sparse.cc, ov-cx-sparse.h, ov-intx.h, ov-range.h,
-	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
-	ov-scalar.cc, ov-scalar.h, ov.h:
- 	Provide log2 mapper function.
-	* data.cc (Flog2): New function.
-
-2008-04-25  John W. Eaton  <jwe@octave.org>
-
-	* pt-stmt.h (tree_statement_list::function_body): New data member.
-	(tree_statement_list::tree_statement_list): Initialize it.
-	(tree_statement_list::mark_as_script_body): New function.
-	(tree_statement::maybe_echo_code, tree_statement::eval):
-	Rename in_function_body argument to in_function_or_script_body.
-	* pt-stmt.cc (tree_statement::eval): Only set statement in call
-	stack if in_function_or_script_body is true.
-
-	* pt-stmt.cc (tree_statement_list::eval): Call elt->eval with
-	function_body || script_body.
-	* ov-usr-fcn.cc (octave_user_script::octave_user_script):
-	command list as script body here.
-	(octave_user_function::octave_user_function):
-	Mark command list as function body here.
-	* parse.y (start_function, make_anon_fcn_handle): Not here.
-
-	* toplev.h, toplev.cc (octave_call_stack::backtrace,
-	octave_call_stack::do_backtrace): New arg, N.  Skip innermost N
-	stack frames.
-
-	* debug.cc (F__dbstack__): New function.
-	(current_stack_frame): New static variable.
-
-	* error.cc (verror, pr_where): Use octave_call_stack instead of
-	tree_statement stack to get line and column information.
-	(pr_where): Use octave_call_stack instead of tree_statement stack
-	to get current statement.
-	* input.cc (get_user_input): Extract current line number from
-	octave_call_stack instead of tree_statement_stack.
-	* pt-stmt.cc (tree_statement::eval): Put current statement on
-	octave_call_stack instead of tree_statement_stack.
-	* pt-stmt.h, pt-stmt.cc (class tree_statement_stack): Delete.
-
-	* toplev.h, toplev.cc (octave_call_stack::call_stack_elt):
-	New nested struct.
-	(octave_call_stack::cs): Now a deque of call_stack_elts.
-	Change all uses.
-	(octave_call_stack::current_statement,
-	octave_call_stack::current_line,
-	octave_call_stack::current_column,
-	octave_call_stack::top_statement,
-	octave_call_stack::set_statement, octave_call_stack::backtrace):
-	New static functions.
-	(octave_call_stack::do_current_line,
-	octave_call_stack::do_current_column,
-	octave_call_stack::do_top_statement,
-	octave_call_stack::do_set_statement,
-	octave_call_stack::do_backtrace): New member functions.
-
-2008-04-24  John W. Eaton  <jwe@octave.org>
-
-	* toplev.h, toplev.cc (octave_call_stack::unwind_pop_script):
-	Delete unused function.
-
-	* ov-usr-fcn.cc: Move constructor definitions here, from ov-usr-fcn.h.
-	* ov-usr-fcn.h (octave_user_script::octave_user_script):
-	Also Initialize t_parsed and t_checked.
-
-2008-04-24  Jaroslav Hajek  <highegg@gmail.com>
-
-	* ov-usr-fcn.h (octave_user_script::octave_user_script):
-	Initialize call_depth.
-
-2008-04-24  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (do_stream_open): Return -1 for directories.
-
-2008-04-23  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Avoid bounds error when removing
-	constraint from active set.
-
-	* lex.l (text_yyinput): New function.  Use it in place of yyinput.
-	(next_token_is_sep_op, scan_for_comments, eat_whitespace,
-	have_continuation): No need to check for CR or CRLF.
-	* parse.y (text_getc): Also return NL for single CR.
-
-2008-04-32  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* input.cc (get_input_from_file): Open file in binary mode.
-
-2008-04-20  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream::read): Allow single data type
-	specification but return double.
-
-2008-04-18  John W. Eaton  <jwe@octave.org>
-
-	* lex.l, lex.h (process_comment): New arg, start_in_block.  Call
-	grab_block_comment if start_in_block is true.  Change all uses.
-	* lex.l (grab_block_comment): New function.
-	(grab_comment_block): New arg, at_bol.  Change all uses.
-	Call grab_block_comment if we find the start of a block comment.
-	(block_comment_nesting_level): New static variable.
-	(^{S}*{CCHAR}\{{S}*{NL}): New rule.
-	(<<EOF>>): Warn about open block comments.
-	(reset_parser): Set block_comment_nesting_level to zero.
-	* parse.y (parse_fcn_file): Stash help text from
-	gobble_leading_white_space after calling reset_parser.
-	(text_getc): Keep track of input_line_number here.
-	(skip_white_sapce): Don't increment input_line_number here.
-	* lex.l (grab_comment_block): Or here.
-
-	* lex.l (Vdisplay_tokens): New static variable.
-	(F__display_tokens__): New function.
-	(display_token): New function.
-	(DISPLAY_TOK_AND_RETURN): New macro.
-	(COUNT_TOK_AND_RETURN): Use DISPLAY_TOK_AND_RETURN.
-	(<COMMAND_START>[\"\'], "'", \"): Move handle_string outside of
-	COUNT_TOK_AND_RETURN macro parameter list.
-	(handle_identifier): Don't use macros to return token values here.
-	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*|<MATRIX_START>{S}*{NL}{SNLCMT}*):
-	Recognize block comments here.
-
-	* pr-output.cc (Fdisp): If nargout > 0, produce an sq-string
-	unless arg is a dq-string.
-
-2008-04-17  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (looks_like_copyright): Handle leading whitespace.
-	(class stdio_stream_reader): New class.
-	(skip_white_space): New function.
-	(gobble_leading_white_space): New arg, EOF.  Change all uses.
-	Use skip_white_space and grab_comment_block to process comments.
-	(process_leading_comments): Delete.
-	(parse_fcn_file): Call gobble_leading_white_space instead of
-	process_leading_comments.
-	Skip parsing if gobble_leading_white_space detects EOF.
-	* lex.l (process_comment): Delete CCHAR arg.  Change all uses.
-	({CCHAR}): Unput comment character before calling process_comment.
-	(grab_comment_block): Rename from grab_help_text.  Don't discard
-	spaces from comment text.  Update input_line_number and
-	current_input_column as characters are read.  Warn only once about
-	incompatible comment characters in a given block of comments.
-	Use stream_reader class instead of accessing yyinput and yyunput
-	directly.
-	(class flex_stream_reader): New class.
-	(process_comment): Use grab_comment_block to handle all comments.
-	Don't call maybe_gripe_matlab_incompatible_comment.
-	Always store comment text returned by grab_comment_block.
-	* lex.h (grab_comment_block): Provide decl.
-	(class stream_reader): New class.
-
-2008-04-16  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Fautoload, Fmfilename): Call
-	octave_call_stack::caller_user_code, not
-	octave_call_stack::caller_user_script_or_function.
-	* toplev.cc, toplev.h (octave_call_stack::caller_user_code):
-	Rename from octave_call_stack::caller_user_script_or_function.
-	(octave_call_stack::do_caller_user_code): Rename from
-	octave_call_stack::do_caller_user_script_or_function.
-	* ov-usr-fcn.h (class octave_user_code): New class, derived from
-	octave_fucntion.
-	(class octave_user_function, class octave_user_script): Derive
-	from octave_user_code, not octave_function.
-	(octave_user_script::user_code_value,
-	octave_user_function::user_code_value): New functions.
-	* ov.cc (octave_value::user_script_value,
-	octave_value::user_code_value): New functions.
-	* ov.h: Provide decls.
-	(octave_value::is_user_code, octave_value::is_user_script):
-	New functions.
-	* ov-base.cc (octave_base_value::user_script_value,
-	octave_base_value::user_code_value): New virutal functions.
-	* ov-base.h: Provide decls.
-	(octave_base_value::is_user_script, octave_base_value::is_user_code):
-	New virtual functions.
-	* error.cc (verror, pr_where, error_2, warning_1):
-	Call octave_call_stack::caller_user_code instead of
-	octave_call_stack::caller_user_script_or_function
-	* input.cc (get_user_input): Likewise.
-	* debug.h (bp_table::breakpoint_map): Use pointer to
-	octave_user_code instead of octave_user_function.
-	* debug.cc (get_user_code): Rename from get_user_function.
-	Return pointer to octave_user_code instead of octave_user_function.
-	Change all uses.
-	(bp_table::do_add_breakpoint, bp_table::do_remove_breakpoint,
-	bp_table::do_remove_all_breakpoints_in_file,
-	bp_table::do_get_breakpoint_list):
-	Avoid dereferencing invalid pointers.
-	(parse_dbfunction_params): Call
-	octave_call_stack::caller_user_code, not
-	octave_call_stack::caller_user_script_or_function.
-
-	* load-save.cc (Fsave): Fix continuation character in doc string.
-
-	* pt-walk.h (tree_walker::visit_function_def): New function.
-	* pt-pr-code.cc (tree_print_code::visit_function_def): New function.
-	* pt-pr-code.h: Provide decl.
-	* pt-bp.cc (tree_breakpoint::visit_function_def): New function.
-	* pt-bp.h: Provide decl.
-	* pt-check.cc (tree_checker::visit_function_def): New function.
-	* pt-check.h: Provide decl.
-
-	* parse.y (finish_function): Return ptr to tree_function_def object
-	if curr_fcn_ptr is not defined.  Avoid dereferencing invalid pointers.
-	(frob_function): Set curr_fcn_ptr only when reading a function file.
-	(function): Call finish function in both cases to generate value
-	of production.
-
-	* pt-cmd.h, pt-cmd.cc (tree_function_def): New class.
-
-	* parse.y (parse_and_execute): Delete.
-	* parse.h: Delete decl.
-
-	* pt-pb.cc (tree_breakpoint::visit_octave_user_script): New function.
-	* pt-pb.h: Provide decl.
-	* pt-check.cc (tree_checker::visit_octave_user_script): New function.
-	* pt-check.h: Provide decl.
-	* pt-pr-code.cc (tree_print_code::visit_octave_user_script):
-	New function.
-	* pt-pr-code.h: Provide decl.
-	* pt-walk.h (visit_octave_user_script): New pure virtual function.
-
-	* parse.y (make_script, process_leading_comments,
-	looking_at_function_keyword): New static functions.
-	(SCRIPT): New token.
-	(script): New non-terminal.
-	(command): Handle script here.
-	(parse_fcn_file): Eliminate EXEC_SCRIPT argument.  Change all
-	callers.  Parse scripts and return an octave_user_script rather
-	than executing them here.
-	(load_fcn_from_file): Handle script and function files the same.
-	(source_file): Call d_multi_index_op on object returned by
-	parse_fcn_file.
-	(is_function_file): Delete.
-	(gobble_leading_white_space): Don't recurse.  Simplify.  Eliminate
-	SKIP_CODE, IN_PARTS, and SAVE_COPYRIGHT arguments.  Change all
-	callers.
-	(octave_function_ptr): Delete unused typedef.
-	(get_help_from_file): If help text isn't found by
-	gobble_leading_whitespace, parse file to find it.
-
-	* lex.l (SCRIPT_FILE_BEGIN): New exclusive start state.
-	(prep_lexer_for_script): New function.
-	(grab_help_text): New arg, EOF.
-	(process_comment): New function.
-	({CCHAR}): Use it.
-	* lex.h (prep_lexer_for_script): Provide decl.
-
-	* lex.h, lex.cc, parse.y (lexical_feedback::beginning_of_function):
-	Delete data member and all uses.
-
-	* ov-usr-fcn.cc (octave_user_script::~octave_user_script):
-	Move destructor here from ov-usr-fcn.h.  Delete cmd_list.
-	(octave_user_script::subsref, octave_user_script::accept,
-	octave_user_script::traceback_error): New functions.
-	(octave_user_script::do_multi_index_op):
-	Execute cmd_list instead of calling source_file.
-	* ov-usr-fcn.h (octave_usr_script::cmd_list,
-	octave_usr_script::t_parsed, octave_usr_script::t_checked,
-	octave_usr_script::call_depth): New data members.
-	(octave_usr_script::octave_usr_script): Initialize all data members.
-	(octave_usr_script::octave_usr_script (const std::string&, const
-	std::string&, tree_statement_list *, const std::string&)):
-	New constructor.
-	(octave_usr_script::function_value,
-	octave_usr_script::user_script_value, mark_fcn_file_up_to_date,
-	octave_usr_script::stash_fcn_file_time,
-	octave_usr_script::time_parsed, octave_usr_script::time_checked,
-	octave_usr_script::subsref, octave_usr_script::body): New functions.
-	(octave_user_script::subsref, octave_user_script::accept,
-	octave_user_script::traceback_error): Provide decls.
-
-2008-04-14  Jaroslav Hajek  <highegg@gmail.com>
-
-	* oct-stream.cc (octave_scan_1): Ensure digit following X is hex
-	digit before reading number as hex.
-
-2008-04-14  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Ffread): Allow SKIP arg to be omitted.
-	(Ffwrite): Likewise.  Handle args in a way consistent with Ffread.
-
-2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* DLD-FUNCTIONS/dispatch.cc: Replace system("echo '...'>...") calls
-	with real file writing.
-
-2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc (Fqrshift): New function.
-	* DLD-FUNCTIONS/chol.cc (Fcholinsert, Fcholdelete, Fcholshift):
-	New functions.
-
-2008-04-04  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (make_constant): Handle escape sequences in dq-strings.
-
-2008-04-03  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (make_constant): Also stash original text for strings.
-
-	* ov-fcn-handle.cc (octave_fcn_handle::subsref):
-	Don't call next_subsref here.
-
-2008-04-01  John W. Eaton  <jwe@octave.org>
-
-	* pt-id.h (do_lookup (bool&, bool)): Delete.
-	(do_lookup (tree_argument_list *, const string_vector&,
-	octave_value_list&, bool&)): Call MAYBE_DO_BREAKPOINT here.
-
-2008-04-02  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (void gnuplot_backend::close_figure (const
-	octave_value&) const): Allow for an input and output stream.
-
-2008-03-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/lookup.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2008-03-28  David Bateman  <dbateman@free.fr>
-
-	* ov-complex.cc (SCALAR_MAPPER, CD_SCALAR_MAPPER): New macro for
-	complex values with zero imaginary part.
-	(erf, erfc, gamma, lgamma): Use the new mappers to define these
-	mapper functions.
-	* ov-complex.h (erf, erfc, gamma, lgamma): Declare them.
-	* ov-cx-mat.cc (any_element_less_than, any_element_greater_than):
-	New static functions
-	(DARRAY_MAPPER, CD_ARRAY_MAPPER): New macro for complex values
-	with zero imaginary part.
-	(erf, erfc, gamma, lgamma): Use the new mappers to define these
-	mapper functions.
-	* ov-cx-mat.h (erf, erfc, gamma, lgamma): Declare them.
-	* ov-cx-sparse.cc (any_element_less_than, any_element_greater_than):
-	New static functions
-	(DSPARSE_MAPPER, CD_SPARSE_MAPPER): New macro for complex values
-	with zero imaginary part.
-	(erf, erfc, gamma, lgamma): Use the new mappers to define these
-	mapper functions.
-	* ov-cx-sparse.h (erf, erfc, gamma, lgamma): Declare them.
-	* ov-re-sparse.cc (CD_SPARSE_MAPPER): Use correct mapper functors.
-	* mapper.cc: Add tests for the above cases.
-
-2008-03-27  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/max.cc: Rename from minmax.cc.
-	* Makefile.in (DLD_XSRC): Rename minmax.cc to max.cc.
-
-	* DLD-FUNCTIONS/__convn__.cc (convn): Use traits class and
-	typedefs to allow all types to be deduced from argument types.
-
-2008-03-27  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__convn__.cc (Fconvn): Allow convolving real data with
-	complex data.
-
-2008-03-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)):
-	Forward to simple subsref.
-	* ov-base-sparse.h (octave_base_sparse<T>::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)): Likewise.
-	* ov-base-scalar.h (octave_base_sparse<T>::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)): Likewise.
-	* ov-base-matrix.h (octave_base_matrix<T>::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)): Likewise.
-
-	* ov-struct.cc, ov-cell.h (octave_cell::subsref (const
-	std::string&, const std::list<octave_value_list>&, int)):
-	Define nargout version of subsref instead of simple version.
-	* ov-struct.cc, ov-struct.h (octave_struct::subsref (const
-	std::string&, const std::list<octave_value_list>&, int)):
-	Define nargout version of subsref instead of simple version.
-
-	* ov-builtin.h (octave_builtin::subsref (const std::string&,
-	const std::list<octave_value_list>&): Forward to nargout subsref.
-	* ov-cell.h (octave_cell::subsref (const std::string&,
-	const std::list<octave_value_list>&)):
-	* ov-class.h (octave_class::subsref (const std::string&,
-	const std::list<octave_value_list>&): Likewise.
-	* ov-fcn-handle.h (octave_fcn_handle::subsref (const std::string&,
-	const std::list<octave_value_list>&): Likewise.
-	* ov-list.h (octave_list::subsref (const std::string&,
-	const std::list<octave_value_list>&): Likewise.
-	* ov-mex-fcn.h (octave_mex_function::subsref (const std::string&,
-	const std::list<octave_value_list>&): Likewise.
-	* ov-struct.h (octave_struct::subsref (const std::string&,
-	const std::list<octave_value_list>&)):
-	* ov-usr-fcn.h (octave_user_function::subsref (const std::string&,
-	const std::list<octave_value_list>&): Likewise.
-
-	* ov.cc (octave_value::subsref): Use value of nargout instead of
-	is_constant method to decide which type of subsref method to call.
-	(octave_value::assign): Always call simple subref method here.
-
-	* DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/det.cc,
-	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/inv.cc,
-	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/symrcm.cc, file-io.cc):
-	Texinfo fixes.
-
-2008-03-26  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__convn__.cc (Fconvn):
-	Call complex_array_value to extract N-d array.
-
-2008-03-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
-	Also display percentage of elements that are nonzero.
-
-2008-03-25  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__convn__.cc: New file.
-	* Makefile.in: Add __convn__.cc
-
-2008-03-25  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/hex2num.cc: New function
-	* Makefile.in (DLD_XSRC): Add hex2num.cc.
-
-2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* mappers.cc (Fexpm1, Flog1p): New functions.
-	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
-	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-cx-sparse.cc, ov-cx-sparse.h, ov-range.h, ov-re-mat.cc,
-	ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h, ov-scalar.cc,
-	ov-scalar.h, ov.h:
-	Provide expm1 and log1p functions.
-
-	* mappers.cc (Froundb): New functions
-	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
-	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
-	ov-cx-sparse.cc, ov-cx-sparse.h, ov-intx.h, ov-range.h,
-	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
-	ov-scalar.cc, ov-scalar.h, ov.h:
- 	Provide roundb mapper function.
-
-2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* load-save.cc (save_vars): Handle -struct modifier.
-	(save_fields): New function.
-	(Fsave): Document new feature.
-
-2008-03-25  John W. Eaton  <jwe@octave.org>
-
-	* lex.h (lexical_feedback::looking_at_initializer_expression):
-	New data member.
-	* lex.l (lexical_feedback::init): Initialize it.
-	(handle_identifier): Don't unconditionally force identifiers to be
-	variables in the current scope.  Don't call force_local_variable
-	for symbols that appear in parameter initializer expressions.
-	* parse.y (decl_param_init): New parser "subroutine".
-	(decl2): Use it.  Set lexer_flags.looking_at_initializer_expression
-	to false after parsing initializer.
-
-2008-03-24  David Bateman  <dbateman@free.fr>
-
-	* data.cc (map_s_s): Fix for sparse/sparse mappers that resulted
-	in an empty sparse matrix being returned.
-	(Fhypot): New function based on the libm hypot function.
-
-2008-03-24  Primozz Peterlin  <primozz.peterlin@gmail.com>
-
-	* variables.cc (Fexist): Doc fix.
-
-2008-03-23  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-int.h: Add el_div and el_ldiv operators to the
-	binops that were missing them. Added elem_pow functions for mixed
-	integer floating point cases. Initialize the mixed integer
-	floating point cases.
-
-2008-03-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.h (octave_cell::is_constant): Return true.
-	* ov-cell.h, ov-cell.cc (octave_cell::subsref (const std::string&,
-	const std::list<octave_value_list>&)): Define.
-	(octave_cell::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)): Call panic_impossible.
-
-	* ov-struct.h (octave_struct::is_constant): New function.
-	* ov-struct.h, ov-struct.cc (octave_struct::subsref (const std::string&,
-	const std::list<octave_value_list>&)): Define.
-	(octave_struct::subsref (const std::string&,
-	const std::list<octave_value_list>&, int)): Call panic_impossible.
-
-2008-03-21  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/amd.cc: New file.
-	* Makefile.in (DLD_XSRC): Add amd.cc.
-
-2008-03-20  David Bateman  <dbateman@free.fr>
-
-	* Cell.cc (Cell Cell::diag (void) const): delete.
-	(Cell Cell::diag (octave__idx_type) const):Rewrite in terms of
-	template classes function.
-	* Cell.h (Cell diag (void) const): delete.
-
-	* ov.h (octave_value diag (octave_idx_type) const): New method.
-	* ov-base.h (virtual octave_value diag (octave_idx_type) const):
-	New virtual method.
-	* ov-base.cc (octave_value octave_base_value::diag
-	(octave_idx_type) const): New default method.
-
-	* ov-base-mat.h (octave_value diag (octave_idx_type) const): New
-	method.
-	* ov-base-sparse.h (octave_value diag (octave_idx_type) const): New
-	method.
-	* ov-base-scalar.h (octave_value diag (octave_idx_type) const): New
-	method.
-	* ov-range.h (octave_value diag (octave_idx_type) const): New
-	method.
-
-	* data.cc (make_diag, make_spdiag): Delete.
-	(Fdiag): Rewrite in terms of octave_value diag function.
-
-	* data.cc (static octave_value make_diag (const Cell&,
-	octave_idx_type)): New instantiation of template function.
-	(static octave_value make_diag (const octave_value&,
-	octave_idx_type)): Allow cell arrays.
-
-	* Cell.cc (Cell Cell::diag (void) const, Cell Cell::diag
-	(octave__idx_type)): New methods for diagonal matrices.
-	* Cell.h (Cell Cell::diag (void) const, Cell Cell::diag
-	(octave__idx_type)): Declare them.
-
-2008-03-18  David Bateman  <dbateman@free.fr>
-
-	* ov-re-mat.cc (lgamma): Convert to a allow negative arguments.
-	* ov-re-sparse.cc (lgamma): ditto.
-	* ov-scalar.cc (lgamma): ditto.
-
-	* DLD-FUNCTIONS/minmax.cc: 64-bit indexing fix.
-
-2008-03-13  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Handle num_named_args in initialization list instead of functinon body.
-
-	* octave.gperf: Eliminate varargin and varargout keywords.
-	* lex.l (is_keyword_token): Eliminate varargin_kw and varargout_kw
-	from switch statement.
-	* parse.y (return_list): Eliminate special cases for VARARGOUT.
-	Call validate on tree_parameter_list object.
-	(param_list1): Likewise, for VARARGIN.
-	* pt-misc.cc (tree_parameter_list::validate): New function.
-	(tree_parameter_list::mark_varargs_only): Now private.
-	(tree_parameter_list::mark_varargs): Now private.
-	* pt-misc.h (tree_parameter_list::validate): Provide decl.
-
-2008-03-12  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (Vwhos_line_format): Omit print_dims parameter.
-	Fix doc string in Vwhos_line_format DEVAR.
-	(symbol_record_name_compare): Delete unused function.
-	(whos_parameter::dimensions): Delete struct field.
-	(symbol_info_list): New class.
-	(dimensions_string_req_first_space, make_dimensions_string,
-	dimensions_string_req_total_space): Delete.
-	(parse_whos_line_format): Move functionality to new
-	symbol_info_list class.
-	(print_symbol_info_line): Move functionality to new
-	symbol_info_list::struct symbol_info::displaly_line method.
-	(do_who): Simplify with new symbol_info_list class.
-	Handle index expressions in addition to symbol names.
-
-	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Fix separator detection.
-
-2008-03-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/eig.cc (Feig): Handle possible error from EIG.
-	* DLD-FUNCTIONS/qp.cc (qp, Fqp): Likewise.
-	* xpow.cc (xpow): Likewise.
-
-2008-03-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dlmread.cc: Style fixes.
-
-2008-03-11  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/dlmread.cc: Function ported from octave forge. Add
-	spreadsheet style ranges.
-	* Makefile.in (DLD_XSRC): Add dlmread.cc.
-
-2008-03-10  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxCreateLogicalScalar): Argument is now mxLogical.
-
-	* data.cc (Fisfloat): New function.
-	* ov.h (octave_value::is_float_type): Ditto.
-	* ov-base.h (octave_base_value::is_float_type): Ditto.
-	* ov-complex.h (octave_complex): Ditto.
-	* ov-cx-mat.h (octave_complex_matrix): Ditto.
-	* ov-cx-sparse.h (octave_sparse_complex_matrix): Ditto.
-	* ov-range.h (octave_range): Ditto.
-	* ov-re-mat.h (octave_matrix): Ditto.
-	* ov-re-sparse.h (octave_sparse_matrix): Ditto.
-	* ov-scalar.h (octave_scalar): Ditto.
-
-	* mxarray.h.in (mxLogical): Use unsigned char instead of int.
-	From Antwerpen, G. (Gert) van <gert.vanantwerpen@tno.nl>.
-
-2008-03-07  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::print_raw): Don't print contents fo
-	struct arrays that have more than one element.
-
-2008-03-06  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Document that
-	the initial interpretation of a positive definite return from
-	matrix_type is that the matrix is "probably" positive definite and
-	not certainly so.
-
-2008-03-06  John W. Eaton  <jwe@octave.org>
-
-	* parse.y: Move tests here from test/test_eval.m.
-	* DLD-FUNCTIONS/fft.cc: Move tests here from test/test_signal.m.
-	* DLD-FUNCTIONS/dassl.cc: Move tests here from test/test_diffeq.m.
-	* DLD-FUNCTIONS/lsode.cc: Move tests here from test/test_diffeq.m.
-	* DLD-FUNCTIONS/quad.cc: Move tests here from test/test_quad.m.
-	* DLD-FUNCTIONS/time.cc: Move tests here from test/test_system.m.
-
-2008-03-06  Alexander Barth  <barth.alexander@gmail.com>
-
-	* DLD-FUNCTIONS/__lin_interpn__.cc (lookup):
-	Handle decreasing coordinate values.
-
-2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/chol.cc (Fcholupdate): Adjust code to meet
-	Octave's coding guidelines.
-
-	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete): Adjust
-	code to meet Octave's coding guidelines.
-	* DLD-FUNCTIONS/qr.cc (Fqrdelete): Fix incorrect test.
-
-	* DLD-FUNCTIONS/qr.cc (Fqrinsert, Fqrdelete): Modify to use
-	0-based indexing in liboctave's QR classes.
-
-2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/chol.cc (Fcholupdate): New function.
-
-	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete):
-	New functions.
-
-2008-03-04  Ryan Rusaw  <rrusaw@gmail.com>
-
-	* toplev.h (octave_call_stack::element): New static function.
-	(octave_call_stack::cs): Now std::deque instead of std::list.
-
-	* pt-stmt.cc (curr_statement, curr_caller_statement): Delete.
-	* pt-stmt.h: Delete decls.
-
-	* pt-stmt.h, pt-stmt.cc (tree_statement_stack): New class.
-
-	* pt-stmt.cc (tree_statement::eval): Use tree_statement_stack
-	instead of curr_statement variable.
-
-	* ov-usr-func.cc (octave_user_function::do_multi_index_op):
-	Don't set curr_caller_statement.
-
-	* error.cc (verror, pr_where): Call tree_statement_stack::current_line
-	and tree_statement_stack::current_column instead of
-	instead of curr_statement->line and curr_statement->column.
-	* input.cc (get_user_input): Likewise.
-
-2008-02-27  John P. Swensen  <jpswensen@gmail.com>
-
-	* debug.cc (get_user_function): Call symtab::find_function instead
-	of symtab::find_user_function.
-
-2008-02-27  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (do_read): Stop reading if seek fails.
-
-2008-02-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-int.cc (octave_base_int_helper,
-	octave_base_int_helper_traits): New templates and specializations.
-	(octave_base_int_matrix<T>::convert_to_str_internal,
-	octave_base_int_matrix<T>::convert_to_str_internal): Use them.
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Pass name of calling function
-	to octave_rand::state.
-
-	* variables.cc (bind_ans): Handle cs-lists recursively.
-
-	* ov-cs-list.h, ov-cs-list.cc (octave_cs_list::print,
-	octave_cs_list::print_raw): Delete.
-
-2008-02-25  John W. Eaton  <jwe@octave.org>
-
-	* Cell.cc (Cell::map): New function.
-	* Cell.h (Cell::map): Declare.
-	(xisalnum, xisalpha, xisascii, xiscntrl, xisdigit,
-	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
-	xisxdigit, xtoascii, xtolower, xtoupper): New mapper functions.
-	(ctype_mapper): New private typedef.
-
-	* ov-cell.h (xisalnum, xisalpha, xisascii, xiscntrl, xisdigit,
-	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
-	xisxdigit, xtoascii, xtolower, xtoupper): New mapper functions.
-
-2008-02-25  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ov-scalar.cc (octave_scalar::round): Use xround instead of ::round
-	in mapper implementation.
-
-2008-02-25  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (UNDEFINED_MAPPER, STRING_MAPPER): New macros.  Use
-	them to define mapper functions.
-
-	* mappers.cc (Fisalnum, Fisalpha, Fisascii, Fiscntrl, Fisdigit,
-	Fisgraph, Fislower, Fisprint, Fispunct, Fisspace, Fisupper,
-	Fisxdigit, Ftoascii, Ftolower, Ftoupper):
-	Use DEFUNX to define ctype mapper functions.
-	Use new function names.
-
-	* ov-base.h, ov-base.cc, ov-str-mat.h, ov-str-mat.cc:
-	Prepend x to ctype mapper function names.
-
-	* graphics.h.in (row_vector_property::row_vector_property):
-	Set default constraints here.
-	(row_vector_property::add_constraint): New function.
-	(row_vector_property::validate): Delete decl.
-	(axes::properties::init): Use single-arg add_constraint function
-	for xlim, ylim, zlim, clim, and alim properties.
-
-	* graphics.cc (row_vector_property::validate): Delete.
-
-	* graphics.cc (axes::properties::update_camera,
-	axes::properties::update_aspectratios):
-	Avoid shadow warnings from GCC.
-
-	* graphics.h.in (base_properties::get_bounding_box):
-	Avoid unused argument warning from GCC.
-
-	* graphics.h.in (array_property::add_constraint): Arg is now const
-	reference, not value.
-
-	* graphics.h.in, graphics.cc (class row_vector_property): New class.
-	(axes::properties): xlim, ylim, zlim, clim, alim, xtick, ytick,
-	ztick properties are now row_vector_property objects instead of
-	array_property objects.
-
-	* genprops.awk: Special case row_vector_property in the same way
-	as array_property.
-
-2008-02-22  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/colamd.cc,
-	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/dmperm.cc,
-	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/symbfact.cc, zfstream.h, zfstream.cc:
-	Use 0 instead of NULL.
-
-2008-02-22  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/chol.c (Fchol, Fcholinv, Fchol2iinv): Treat
-	sparse matrices. Add the "lower" and "vector" flags.
-	* DLD-FUNCTIONS/inv.c (Finv): Treat sparse matrices.
-	* DLD-FUNCTION/sparse.cc (static bool is_sparse (const
-	octave_value&)): Remove and use arg.is_sparse_type () instead.
-	(Fspcumprod, Fspcumsum, Fspprod, spsum, spsumsq, spdiag): Remove.
-	* DLD-FUNCTIONS/splu.cc: Remove.
-	* DLD-FUNCTIONS/lu.cc: Treat sparse matrices, Add "vector" flag.
-	* DLD-FUNCTIONS/spchol.cc: Move to symbfact.cc
-	* DLD-FUNCTIONS/symbfact.cc: Remove cholesky functions Fspchol,
-	Fspcholinv, Fspchol2inv.
-	* DLD-FUNCTIONS/luinc.cc: Modify for new sparse LU
-	constructors. Ass the 'vector' flag.
-	* DLD-FUNCTIONS/spparms.cc: Add the sum_tol flag.
-
-	* Makifile.in (DLD_XSRC): Remove spchol.cc, splu.cc and add
-	symbfact.cc
-	* data.cc (NATIVE_REDUCTION): Treat sparse matrices
-	(DATA_REDUCTION): Ditto.
-	(template <class T> static octave_value make_spdiag (const T&,
-	octave_idx_type)): New template function for sparse diag
-	function. Instantiate it.
-	(static octave_value make_diag (const octave_value&,
-	octave_idx_type): Use make_spdiag for sparse matrice.
-	(Fatan2): Compatibility fixes for mixed full/sparse matrices.
-
-2008-02-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_jacobian):
-	Check dimensions of user-supplied Jacobian matrix.
-	(fsolve_user_function): Check for non-square systems.
-
-2008-02-20  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (map_d_m, map_m_d, map_m_m, Fatan2, Ffmod):
-	Handle N-d arrays.
-
-	* ov-bool-mat.h (octave_bool_matrix (const Array2<bool>&)): Delete.
-
-2008-02-20  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/find.cc,
-	* DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/qr.cc:
-	Treat sparse matrices.
-
-	* DLD-FUNCTIONS/sparse.cc (Fspmin, Fspmax, Fatan2): Remove functions.
-
-	* DLD-FUNCTIONS/dmperm.cc: Rename from spqr.cc.
-	(Fspqr): Delete function.
-
-	* DLD-FUNCTIONS/spqr.cc, DLD-FUNCTIONS/spdet.cc,
-	DLD-FUNCTIONS/spfind.cc: Remove.
-
-	* Makefile.in (DLD_XSRC): Add dmperm.cc to the list.
-	Delete det.cc, find.cc, minmax.cc, and qr.cc from the list.
-
-	* Makefile.in (OV_SRC): Remove ov-mapper.cc.
-	(OV_INCLUDES): Remove ov-mapper.h.
-	(DEFUN_PATTERN): No longer accept DEFUN_MAPPER as valid.
-	* ov-mapper.cc, ov-mapepr.h: Delete, remove all includes of
-	ov-mapper.h from all files.
-
-	* op-b-sbm.cc, op-bm-sbm.cc, op-smb-b.cc, op-sbm-bm.cc: Include
-	ov-bool-sparse.h.
-
-	* defun-int.h (DEFUN_MAPPER_INTERNAL, install_builtin_mapper):
-	Remove.
-	* defun.cc (install_builtin_mapper): Ditto.
-	* defun.h (DEFUN_MAPPER): Remove.
-
-	* mappers.cc: Rewrite all mapper function using DEFUN and newly
-	introduced octave_value mapper functions.
-	(dummyp, xabs, xisalnum, xisascii, xiscntrl, xisdigit,
-	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
-	xtoascii, xtolower, xtoupper, xconj, ximag, xreal): Remove
-	static wrapper functions.
-
-	* mkbuiltins (XDEFUN_MAPPER_INTERNAL, install_builtin_functions):
-	Remove.
-	* mkgendoc (XDEFUN_MAPPER_INTERNAL): Remove.
-
-	* ov.cc (octave_mapper::register_type): Remove.
-
-	* ov.h (abs, acos, acosh, angle, arg, asin, asinh, atan, atanh,
-	ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor, gamma,
-	imag, isinf, isna, isnan, lgamma, log, log10, real, round, signum,
-	sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii, iscntrl,
-	isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
-	isxdigit, toascii, tolower, toupper):
-	New octave_value mapper	functions.
-
-	* ov-base.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
-	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
-	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
-	signum, sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii,
-	iscntrl, isdigit, isgraph, slower, isprint, ispunct, isspace,
-	isupper, isxdigit, toascii, tolower, toupper):
-	New virtual mapper functions.
-	* ov-base.cc (abs, acos, acosh, angle, arg, asin, asinh, atan,
-	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
-	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
-	signum, sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii,
-	iscntrl, isdigit, isgraph, slower, isprint, ispunct, isspace,
-	isupper, isxdigit, toascii, tolower, toupper):
-	Base versions of mapper functions.
-
-	* ov-bool-mat.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
-	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
-	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
-	signum, sin, sinh, sqrt, tan, tanh):
-	Mapper function recast boolen matrix as double.
-	* ov-bool.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
-	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
-	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
-	signum, sin, sinh, sqrt, tan, tanh): Ditto.
-	* ov-bool-sparse.h (abs, acos, acosh, angle, arg, asin, asinh,
-	atan, atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix,
-	floor, gamma, imag, isinf, isna, isnan, lgamma, log, log10, real,
-	round, signum, sin, sinh, sqrt, tan, tanh): Ditto.
-	(char_array_value): New method to convert to charNDArray.
-	* ov-bool-sparse.cc (char_array_value): New method to convert to
-	charNDArray.
-	* ov-complex.cc (char_array_value): ditto.
-	(xabs, ximag, xreal): Static wrapper functions.
-	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
-	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
-	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
-	tanh): New mapper methods.
-	* ov-complex.h: Provide decls.
-
-	* ov-cx-mat.cc (char_array_value): New method to convert to
-	charNDArray.
-	(xabs, ximag, xreal): Static wrapper functions.
-	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
-	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
-	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
-	tanh): New mapper methods.
-	* ov-cx-mat.h: Provide decls.
-
-	* ov-cx-sparse.cc (char_array_value): New method to convert to
-	charNDArray.
-	(xabs, ximag, xreal): Static wrapper functions.
-	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
-	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
-	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
-	tanh): New mapper methods.
-	* ov-cx-sparse.h: Provide decls.
-
-	* ov-intx.h (abs, signum, imag, ceil, conj, fix, floor, real,
-	round, finite, isinf, isna, isnan): Define for both matrix and
-	scalar classes.
-
-	* ov-range.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
-	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
-	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
-	signum, sin, sinh, sqrt, tan, tanh): New mapper functions.
-
-	* ov-re-mat.cc (any_element_less_than): Static function to check if
-	any elemet was less than a value,
-	(any_element_greater_than): Ditto with greater than.
-	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
-	conj, cos, cosh, erf, erfc, exp, finite, fix, floor, gamma, imag,
-	isinf, isna, isnan, lgamma, log, log10, real, round, signum, sin,
-	sinh, sqrt, tan, tanh): New mapper functions.
-	* ov-re-mat.h: Provide decls.
-
-	* ov-scalar.cc (any_element_less_than): Static function to check if
-	any elemet was less than a value,
-	(any_element_greater_than): ditto with greater than.
-	(abs acos acosh angle arg asin asinh atan atanh
-	ceil conj cos cosh erf erfc exp finite fix floor gamma imag
-	isinf isna isnan lgamma log log10 real round signum sin sinh
-	sqrt tan tanh): New mapper functions.
-	* ov-scalar.h: Provide decls.
-
-	* ov-str-mat.cc (xisalnum, xisascii, xiscntrl, xisdigit,
-	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
-	xtoascii, xtolower, xtoupper): New static wrapper functions.
-	(isalnum, isalpha, isascii, iscntrl, isdigit, isgraph, islower,
-	isprint, ispunct, isspace, isupper, isxdigit, toascii, tolower,
-	toupper): New mapper methods.
-	* ov-str-mat.h: Provide decls.
-
-2008-02-18  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fatan2): Reject arguments that are integer types.
-
-2008-02-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* DLD-FUNCTIONS/qr.cc: Doc fix.
-
-2008-02-18  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h
-	(symbol_table::fcn_info::fcn_info_rep::clear_unlocked_functions):
-	symbol_table::fcn_info::fcn_info_rep::clear_cmdline_function,
-	symbol_table::fcn_info::fcn_info_rep::clear_autoload_function):
-	New functions.
-	(symbol_table::fcn_info::fcn_info_rep::clear_user_function):
-	Don't clear locked functions.
-	(symbol_table::fcn_info::fcn_info_rep::clear_mex_function):
-	Call clear_user_function instead of setting function_on_path directly.
-	(symbol_table::fcn_info::fcn_info_rep::clear):
-	Use new functions to do the real work.
-
-	* ov.h (octave_value::lock, octave_value::unlock,
-	octave_value::islocked): New functions.
-	* ov-base.cc (octave_base_value::lock, octave_base_value::unlock):
-	New functions.
-	* ov-base.h Provide decls.
-	(octave_base_value::islocked): New function.
-	* ov-fcn.h (octave_function::islocked): Now const.
-
-2008-02-15  John W. Eaton  <jwe@octave.org>
-
-	* ov-builtin.cc (octave_builtin::do_multi_index_op):
-	Catch possible octave_execution_exception.
-	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Likewise.
-	* ov.cc (do_binary_op, do_cat_op, do_unary_op,
-	octave_value::do_non_const_unary_op): Likewise.
-
-2008-02-14  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/qz.cc:
-	Don't check f77_exception_encountered.
-
-	* sighandlers.cc (user_abort): If interrupting immediately, set
-	octave_interrupt_state if it is not already set.
-
-	* pt-stmt.cc (tree_statement::eval): Catch execution exceptions.
-
-	* octave.cc (lo_error_handler): New static function.
-	(initialize_error_handlers): Set liboctave_error_handler to
-	lo_error_handler, not error.
-
-	* DLD-FUNCTIONS/urlwrite.cc (urlget): Call octave_rethrow_exception
-	instead of octave_throw_interrupt_exception.
-	* utils.cc (BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_FOR_VSNPRINTF):
-	Likewise.
-
-2008-02-12  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in: Implement the cdatamapping property in patch and
-	image objects.
-
-2008-02-12  John W. Eaton  <jwe@octave.org>
-
-	* pt-loop.cc (tree_simple_for_command::eval): Compute range
-	element with multiplication.
-
-2008-02-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in ($(MAKEDEPS)): Skip dependencies if omit_deps is defined.
-
-2008-02-09  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (set_range_format): Eliminate sign arg.
-	Change all callers.
-
-2008-02-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::subsref): Allow Cell::index to resize.
-
-	* input.cc (interactive_input): Eliminate debug arg.  Change All uses.
-	(get_user_input): Don't process input_buf if there is an error.
-	Call reset_error_handler instead of setting error_state to 0.
-
-2008-02-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (callback_property::execute): New static
-	helper method (useful to execute callbacks by name).
-	* graphics.cc (callback_property::execute): Likewise.
-	(execute_callback): Avoid undefined argument when executing
-	callback. Do not use arguments when the callback is a string.
-
-2008-02-07  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::sort): New functions.
-
-2008-02-07  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (DLD_XSRC): Delete spkron.cc.
-	* DLD-FUNCTIONS/spkron.cc: Delete.
-	* DLD-FUNCTIONS/kron.cc: Include here and dispatch to the sparse
-	version if either argument is sparse.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (parse.cc): Also use --defines option for bison.
-
-2008-02-06  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.cc (axes::properties::set_defaults): Set default axes
-	color to white.
-
-2008-02-06  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (parse.cc): Use "-o $@" instead of renaming y.tab.c.
-	(maintainer-clean): Don't remove y.tab.c.
-
-	* Makefile.in (parse.cc : parse.y): Use mv instead of move-if-change.
-	(stamp-prereq, stamp-liboctave-prereq): Eliminate.
-	(clean): Don't remove stamp-prereq and stamp-liboctave-prereq.
-	(OPT_BASE, OPT_IN, OPT_INC): New macros.
-	(OPT_HANDLERS): Define in terms of OPT_BASE.
-	($(OPT_INC) : %.h : %.in): New pattern rule.
-	(PREREQ): New macro.
-	($(MAKEDEPS)): Simplify with $(PREREQ).
-
-2008-02-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Unconditionally include $(MAKEDEPS).
-	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
-
-2008-02-05  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_properties::get_boundingbox): New method.
-	(figure::properties::get_boundingbox): Overload method.
-	(axes::properties::get_boundingbox): Likewise.
-	* graphics.cc (figure::properties::get_boundingbox): Return a
-	left-to-right/top-to-bottom bounding box rectangle.
-	(axes::properties::get_boundingbox): Likewise.
-	(axes::properties::update_camera): Remove backend access and
-	use the new axes bounding box.
-
-2008-02-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (axes::properties::update_xlim,
-	axes::properties::update_ylim, axes::properties::update_zlim):
-	New update methods.
-
-	* graphics.cc (axes::properties::calc_ticks): New function.
-	(axes::properties::magform): New function.
-	(axes::update_axis_limits): Call update_{x,y,z}lims if
-	appropriate.
-
-2008-02-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_graphics_backend::get_screen_size,
-	graphics_backend::get_screen_size): New methods.
-	(graphics_backend::available_backends): Export symbol.
-	(class figure::properties, class axes::properties): Export classes.
-	(figure::properties::get_boundingbox): New utility method.
-	(figure::properties::position): Use valid default position.
-	(axes::properties::gridlinestyle,
-	axes::properties::minorgridlinestyle):
-	Use dotted line style as default.
-	* graphics.cc (default_figure_position): New static function.
-	(gnuplot_backend::get_screen_size): New method.
-	(figure::properties::get_boundingbox): New utility method.
-
-2008-02-02  Shai Ayal  <shaiay@users.sourceforge.org>
-
-	* graphics.h.in (base_scaler::~base_scalar): New virtual destructor.
-	* graphics.cc (axes::properties::update_camera): Tag abs with std.
-
-	* graphics.h.in (graphics_backend::find_backend): New function.
-	(class figure): Add __backend__ property and set method.
-
-2008-02-02  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (do_type): Don't print dyamically loaded function files.
-
-	* ov-fcn.h (octave_function::is_dynamically_loaded_function): Delete.
-
-2008-02-01  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (Fset_variable, Fvariable_value):
-	New functions, but commented out for now.
-
-2008-01-30  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (axes::properties::get_transform_matrix,
-	axes::properties::get_inverse_transform_matrix,
-	axes::properties::get_opengl_matrix_1,
-	axes::properties::get_opengl_matrix_2,
-	axes::properties::get_transform_zlim): New accessors.
-	(base_properties::is_clipping): New accessor.
-	(class graphics_xform): New class encapsulating axes transformation.
-	(axes::properties::get_transform): New method returning a
-	graphics_xform object.
-	* graphics.cc (class graphics_xform): New class.
-
-2008-01-31  David Bateman  <dbateman@free.fr>
-
-	* ov.cc (octave_value::octave_value (const ArrayN<bool>&),
-	octave_value::octave_value (const Sparse<bool>&, const MatrixType &),
-	octave_value::octave_value (const ArrayN<std::streamoff>&)): New
-	constructors.
-	* ov.h: (octave_value (const ArrayN<bool>&),
-	octave_value (const Sparse<bool>&, const MatrixType &),
-	octave_value (const ArrayN<std::streamoff>&)): Declare them.
-	(octave_value sort (octave_idx_type, sortmode) const, octave_value
-	sort (Array<octave_idx_type> &, octave_idx_type, sortmode) const):
-	octave_value sort method.
-
-
-	* ov-base.cc (sort): Base versions of teh octave_value sort methods.
-	* ov-base.h (sort): Declare the octave_value sort methods
-	* ov-base-scalar.h (sort): Simple sort methods for scalars.
-	* ov-base-mat.h, ov-base-sparse.h (sort): Sort methods calling
-	underlying array or sparse sort methods.
-	* ov-str-mat.h (sort): String specific sort methods.
-
-	* TEMPLATE-INST/Array-tc.cc: Instantiate the array sort methods.
-	* ov-streamoff.h (sort): Sort versions returning and error.
-	* oct-stream.cc, ov-typeinfo.cc, Array-os.cc: Null instantiation
-	of array sort methods.
-
-	* Makefile.in (DLD_XSRC): Remove sort.cc
-	* DLD-FUNCTIONS/sort.cc: Remove
-	* data.cc (Fsort): New function using octave_value sort methods
-	for the sorting. Add tests.
-
-2008-01-30  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* pager.cc (Fmore): Doc fix.
-
-2008-01-28  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* genprops.awk: Add update ('u') modifier and document the
-	readonly ('r') modifier.
-	* graphics.h.in (class base_scaler, class lin_scaler, class
-	log_scaler, class scaler): New classes to make abstraction of the
-	axis scale.
-	(base_graphics_backend::get_screen_resolution,
-	graphics_backend::get_screen_resolution): New methods.
-	(axes::properties::sx, axes::properties::sy,
-	axes::properties::sz): New scaler fields.
-	(axes::properties::get_x_scaler, axes::properties::get_y_scaler,
-	axes::properties::get_z_scaler): New accessors.
-	(axes::properties::x_render, axes::properties::x_render_inv,
-	axes::properties::x_gl_mat1, axes::properties::x_gl_mat2,
-	axes::properties::x_zlim): New utility Matrix fields.
-	(axes::properties::get_boundingbox,
-	axes::properties::update_camera,
-	axes::properites::update_aspectratios,
-	axes::properties::update_transform,
-	axes::properties::update_xscale, axes::properties::update_yscale,
-	axes::properties::update_zscale, axes::properties::update_view,
-	axes::properties::update_xdir, axes::properties::update_ydir,
-	axes::properties::update_zdir): New updater methods.
-	(axes::properties::init): Initialize sx, sy, sz and x_zlim correctly.
-	(axes::properties::position): Use valid default position value.
-	(axes::properties::xscale, axes::properties::yscale,
-	axes::properties::zscale, axes::properties::xdir,
-	axes::properties::ydir, axes::properties::zdir,
-	axes::properties::view): Add updater ('u') property modifier.
-	* graphics.cc (default_axes_position, default_axes_outerposition):
-	New initializers.
-	(convert_position): New utility function to convert position
-	according to specified units.
-	(gnuplot_backend::get_screen_resolution): New method.
-	(axes::properties::set_defaults): Initilize recently added properties.
-	(xform_matrix, xform_vector, transform, xform_scale,
-	xform_translate, scale, translate, xform, normalize, dot, cross,
-	unit_cube, cam2xform, xform2cam): New inline transformation
-	utility functions.
-	(axes::properties::update_camera,
-	axes::properties::update_aspectratios,
-	axes::properties::get_boundingbox): New updater methods for
-	computing transformation matrices.
-	(axes::update_axis_limits): Update transformation data.
-
-2008-01-28  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (BEGIN_CHAR_CLASS_CONVERSION): Handle width properly.
-	(OCTAVE_SCAN) [__GNUG__ && ! CXX_ISO_COMPLIANT_LIBRARY]:
-	Delete special case.
-
-2008-01-25  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rand.cc (Frandp): Relax relative error on randp
-	tests.
-
-2008-01-25  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_properties::get_backend,
-	base_graphics_object::get_backend, graphics_backend::get_backend):
-	New methods for convenient access to the backend.
-	(figure::get_backend, figure::set_backend): Remove.
-	* graphics.cc (base_properties::get_backend): New method.
-	(Fdrawnow): Use graphics_object::get_backend to simplify code.
-
-2008-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
-
-	* mxarray.h.in: Include <cstring>.
-
-2008-01-22  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (clear_drawnow_request): New function.
-	(Fdrawnow): Add it to the unwind_protect stack.
-
-	* input.cc (Vdrawnow_requested): No longer static.
-	* input.h: Provide decl.
-	* graphics.cc (Fdrawnow, Fset, make_graphics_object):
-	Use Vdrawnow_requested directly.
-
-	* toplev.cc (octave_add_atexit_function,
-	octave_remove_atexit_function): New functions.
-	(Fatexit): Use them.
-	* graphics.cc (Fdrawnow): Call octave_add_atexit_function instead
-	of using eval.
-	* toplev.h (octave_add_atexit_function,
-	octave_remove_atexit_function): Provide decls.
-
-2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_properties::is_visible,
-	base_properties::set_modified): New accessors.
-	(class base_graphics_backend, class graphics_backend): New classes
-	for handling octave/backend interaction.
-	(figure::properties::close): Add "pop" argument controlling
-	whether the figure should be popped from the list of existing figures.
-	(class figure::properties): New backend field and accessors, holding
-	the graphics backend associated with the figure.
-	* graphics.cc (class gnuplot_backend): New class for the default
-	gnuplot backend.
-	(figure::properties::close): Add "pop" argument and transfer the
-	figure closing to the associated backend.
-	(Fdrawnow): New builtin function, converted from drawnow.m.
-
-2008-01-19  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk (emit_source): Use "pname" for property name argument.
-
-2008-01-19  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (class figure::properties): New properties:
-	alphamap, currentcharacter, currentobject, current_point,
-	dockcontrols, doublebuffer, filename, integerhandle,
-	inverthardcopy, keypressfcn, keyreleasefcn, menubar, mincolormap,
-	name, numbertitle, paperunits, paperposition, paperpositionmode,
-	papersize, papertype, pointer, pointershapecdata,
-	pointershapehotspot, position, renderer, renderermode, resize,
-	resizefcn, selectiontype, toolbar, units, windowbuttondownfcn,
-	windowbuttonmotionfcn, windowbuttonupfcn, windowbuttonwheelfcn,
-	windowstyle, wvisual, wvisualmode, xdisplay, xvisual, xvisualmode,
-	buttondownfcn.
-
-2008-01-19  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_properties::beingdeleted,
-	base_properties::is_beingdeleted,
-	base_properties::get_beingdeleted,
-	base_properties::set_beingdeleted):
-	Add beingdeleted property and accessors.
-	* graphics.cc (base_properties::get): Likewise.
-	(gh_manager::free): Set beingdeleted to "on" when freeing an object.
-	* genprops.awk: Skip C++-style comments in property declaration.
-
-	* graphics.h.in (class axes::properties): New properties: alim,
-	alimmode, xminortick, yminortick, zminortick, ambientlightcolor,
-	cameraposition, cameratarget, cameraupvector, cameraviewangle,
-	camerapositionmode, cameratargetmode, cameraupvectormode,
-	cameraviewanglemode, currentpoint, drawmode, fontangle, fontname,
-	fontsize, fontweight, fontunits, gridlinestyle,
-	minorgridlinestyle, linestyleorder, linewidth, plotboxaspectratio,
-	plotboxaspectratiomode, projection, tickdir, tickdirmode,
-	ticklength, tightinset, units, x_viewtransform,
-	x_projectiontransform, x_viewporttransform, x_normrendertransform,
-	x_rendertransform.
-	* genprops.awk: Handle new readonly modifier 'r'.
-
-2008-01-18  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
-
-	* genprops.awk: Avoid using "default" as a variable name.
-
-2008-01-17  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (data_property::get_data_limits): Reset min/max values.
-
-2008-01-17  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline.cc: Add tests for Finline.
-
-2008-01-17  Ben Abbott  <bpabbott@mac.com>
-
-	* load-path.cc (F__pathorig__): Rename from Fpathdef.
-	(Frestoredefaultpath): New function.
-
-2008-01-16  John W. Eaton  <jwe@octave.org>
-
-	* pt-assign.cc (tree_simple_assignment::rvalue,
-	tree_multi_assignment::rvalue): Handle assignment of
-	comma-separated lists.
-
-2008-01-15  John W. Eaton  <jwe@octave.org>
-
-	* mappers.cc (install_mapper_functions): Move test for asin here
-	from test/test_arith.m.
-
-	* graphics.h.in (class line::properties, class text::properties):
-	Rename erase_mode property to erasemode.
-
-2008-01-15  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (base_properties::remove_child,
-	base_properties::adopt, base_properties::update_axis_limits):
-	Make virtual.
-	(base_graphics_object::mark_modified,
-	base_graphics_object::override-defaults,
-	base_graphics_object::set_from_list, base_graphics_object::set,
-	base_graphics_object::get, base_graphics_object::get_parent,
-	base_graphics_object::remove_child, base_graphics_object::adopt,
-	base_graphics_object::reparent, base_graphics_object::defaults,
-	base_graphics_object::type): Add default implementation.
-	(class root_figure, class figure, class axes, class line,
-	class text, class image, class patch, class surface):
-	Remove overloaded virtual methods whose implementation is
-	identical to the default one.
-
-	* genprops.awk: Handle 'h' modifier for hidden properties.
-	Replace "get(void)" method with "get(bool all = false)" to allow
-	access to hidden properties.
-
-	* graphics.h.in (base_properties::get, base_graphics_object::get,
-	graphics_object::get, root_figure::get, figure::get, axes::get,
-	line::get, text::get, patch::get, surface::get, image::get):
-	New arg, ALL, to access hidden properties.
-	(gh_manager::do_get_object): Do not look for invalid handles.
-	(figure::properties::__plot_stream__,
-	figure::properties::__enhanced__, axes::properties::__colorbar__):
-	Make properties hidden.
-	(axes::properties, line::properties, text::properties,
-	patch::properties, surface::properties): Remove obsolete 'a'
-	property modifier.
-	* graphics.cc (base_properties::get): New arg ALL, to access
-	hidden properties.
-	(base_properties::mark_modified): Call mark_modified only on valid
-	parent object.
-	(__get__): New internal function returning all properties,
-	including the hidden ones.
-
-2008-01-15  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (properties::set_currentfigure,
-	properties::set_currentaxes): Don't convert arg to double
-	before passing to graphics_handle constructor.
-	(base_properties::remove_child): Call mark_modified if list of
-	children changes.
-
-2008-01-15  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (class line::properties): New properties:
-	displayname, erasemode.
-	(class text::properties) New properties: backgroundcolor,
-	displayname, edgecolor, erase_mode, editing, fontunits, linestyle,
-	linewidth, margin, verticalalignment.
-
-2008-01-14  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_initialize): Start with sys_path empty.
-	(maybe_add_path_elts): Omit path_sep_str if path is empty.
-
-	* symtab.h (symbol_table::do_pop_context): Remove symbol_records
-	which have no more context.
-	(symbol_table::symbol_record::pop_context,
-	(symbol_table::symbol_record::symbol_record_rep::pop_context):
-	Return size of value_stack, or 1 if variable is persistent or global.
-
-2008-01-14  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.h.in (class patch::properties): New properties:
-	cdatamapping, facevertexalphadata, facevertexcdata, vertexnormals,
-	normalmode, facelighting, edgealpha, edgelighting,
-	backfacelighting, ambientstrength, diffusestrength,
-	specularstrength, specularexponent, specularcolorreflectance,
-	erasemode.
-
-2008-01-14  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in (gh_manager::do_make_graphics_handle,
-	gh_manager::make_graphics_handle): New boolean parameter
-	do_createfcn.
-	* graphics.cc (xcreatefcn): New static function.
-	(gh_manager::do_make_graphics_handle): New boolean parameter
-	do_createfcn.  Execute createfcn callback accordingly.
-	(make_graphics_object, F__go_figure__): Use do_createfcn
-	parameter and call xcreatefcn
-
-	* genprops.awk (emit_get_callback): Pass user data to execute method.
-	* graphics.cc (execute_callback): New static function.
-	(callback_property::validate): Make it work.
-	(callback_property::execute): Make it work.
-	(gh_manager::do_free): Execute delete function here.
-	* graphics.h.in (callback_property::execute): Fix decl.
-	(base_properties::buttondownfcn, base_properties::createfcn,
-	base_properties::deletefcn, base_properties::userdata): Default
-	value is empty Matrix, not undefined octave_value object.
-	(base_properties::execute_createfcn): New function.
-	(base_properties::execute_deletefcn): New function.
-
-2007-12-13  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in, graphics.cc (class base_properties): New
-	properties: busyaction, buttondownfcn, clipping, createfcn,
-	deletefcn, handlevisibility, hittest, interruptible, selected,
-	selectionhighlight, uicontextmenu, userdata, visible.
-	(class figure): Delete visible property.
-
-2008-01-13  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* graphics.h.in: Sprinkle with OCTINTERP_API as needed.
-	(axes::properties::xaxislocation): Allow value of zero.
-	(axes::properties::yaxislocation): Likewise.
-
-2008-01-12  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* Makefile.in (distclean): Delete graphics-props.cc.
-
-	* genprops.awk: Handle new graphics property classes.
-
-	* graphics.h.in, graphics.cc: Adapt for new specific property types.
-
-2008-01-12  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Add GNUPLOT to the struct.
-	* oct-conf.h.in (OCTAVE_CONF_GNUPLOT): New macro.
-
-2008-01-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Undo part of change from
-	2007-09-04 (compute Y at each iteration).
-
-2008-01-10  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Doc fix.
-	(hybrd_info_to_fsolve_info): Swap return values for -1 and -2 inputs.
-
-	* DLD_FUNCTIONS/__gnuplot_raw__.l: Delete.
-	* Makefile.in (DLD_XSRC): Remove it from the list.
-	(BUILT_DISTFILES): Remove __gnuplot_raw__.cc from the list.
-	(stamp-prereq): Don't depend on __gnuplot_raw__.cc.
-	(maintainer-clean): Don't remove __gnuplot_raw__.cc.
-	(__gnuplot_raw__.cc): Delete target.
-	(__gnuplot_raw__.o, pic/__gnuplot_raw__.o): Delete targets.
-
-	* mex.cc (calc_single_subscript_internal): New static function.
-	(mxArray_octave_value::calc_single_subscript): Use it.
-	(mxArray_matlab::calc_single_subscript): Use it.
-
-2008-01-07  John W. Eaton  <jwe@octave.org>
-
-	* pt-except.cc (tree_try_catch_command::eval):
-	Set Vdebug_on_error and Vdebug_on_warning to false while executing
-	try block.
-
-	* error.cc (Vdebug_on_error, Vdebug_on_warning): No longer static.
-	* error.h: Provide decls.
-
-	* gripes.cc (gripe_wrong_type_arg (const std::string&, const
-	octave_value&, bool)): New function.
-	* gripes.h: Provide decl.
-
-	* oct-stream.cc (printf_value_cache::printf_value_cache):
-	Reject structs, cells, objects, and lists.
-	(octave_base_stream::do_printf): Quit early if printf_value_cache
-	constructor fails.
-
-	* parse.y (make_anon_fcn_handle): Don't attempt to convert
-	expression to assignment to __retval__.
-
-2008-01-07  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ov-builtin.h (octave_builtin): Tag with OCTINTERP_API.
-	* ov-dld-fcn.h (octave_dld_function): Likewise.
-
-	* ov-dld-fcn.cc (octave_dld_function::create): New function.
-	* ov-dld-fcn.h: Provide decl.
-	* defun.h (DEFINE_FUNX_INSTALLER_FUN3): Call it instead of
-	creating a new octave_dld_function object directly.
-
-2008-01-04  John Swensen  <jpswensen@comcast.net>
-
-	* debug.cc (bp_table::do_remove_all_breakpoints_in_file):
-	Avoid calling erase on invalid bp_map iterators.
-	(bp_table::do_remove_breakpoint): Only try to delete breakpoints
-	if some exist.  Avoid calling erase on invalid bp_map iterators.
-	(parse_dbfunction_params): Return early if ARGS is empty.
-	New arg, WHO.  Change all uses.
-	Accept but do nothing with struct args.
-
-2008-01-04  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* variables.cc (Fclear): Doc fix.
-
-2008-01-04  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table:pop_scope): Avoid accessing beyond end of
-	scope_stack.
-
-2008-01-04  David Bateman  <dbateman@free.fr>
-
-	* ov-mapper.cc (SPARSE_MAPPER_LOOP_2): Use data method instead of
-	elem in the case where F(0) is non-zero.
-
-2007-12-28  John W. Eaton  <jwe@octave.org>
-
-	Merge changes from object branch:
-
-	2007-12-12  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::dir_info::get_file_list,
-	load_path::move_method_map, load_path::remove_method_map,
-	load_path::do_find_fcn, load_path::do_find_private_fcn,
-	load_path::do_find_method, load_path::do_find_file,
-	load_path::do_find_first_of, load_path::do_find_all_first_of,
-	load_path::do_display, load_path::add_to_method_map, genpath,
-	execute_pkg_add_or_del): Use file_ops::concat.
-
-	2007-08-24  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (Fmislocked): return value for nargin == 0 case.
-
-	2007-07-27  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.cc (tree_index_expression::rvalue):
-	Pass substring of type to subsref when doing partial evaluation.
-	(tree_index_expression::lvalue): Likewise.
-
-	2007-06-29  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (is_built_in_class, set_class_relationship,
-	Fsuperiorto, Finferiorto): New functions.
-	(octave_class::in_class_method): New function.
-	(octave_class::subsref, octave_class:subsasgn): Use it.
-
-	2007-06-28  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (sanitize): New function.
-	(make_idx_args): Use it.
-
-	2007-06-28  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (octave_class::subsasgn): Expect and use only
-	one return value from feval of subsasgn method.
-
-	* ov.cc (octave_value::assign): Don't convert to struct if
-	indexing a class object with ".".
-
-	* pt-idx.cc (tree_index_expression::make_arg_struct):
-	Use Cell instead of octave_value_list for subscripts.
-
-	* ov-class.cc (make_idx_args): For "." index, subs field is
-	string, not cell.
-
-	2007-06-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
-	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
-	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
-	octave_fcn_handle::load_hdf5): Adapt to new symbol table objects.
-
-	* symtab.h (symbol_table::all_variables,
-	symbol_table::do_all_variables): New arg, defined_only.
-
-	2007-06-26  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_mat5_binary_element): Adapt to new symbol table
-	objects.
-
-	* variables.cc (Vwhos_line_format): New static variable.
-	(Fwhos_line_format): New function.
-	(symbol_record_name_compare): Delete function.
-	(symbol_record_name_compare, whos_parameter): New structs.
-	(print_descriptor, dimensions_string_req_first_space,
-	dimensions_string_req_total_space, make_dimensions_string,
-	parse_whos_line_format, print_symbol_info_line): New static
-	functions, adapted from old symbol table class.
-	(do_who): Adapt to new symbol table objects.
-
-	* symtab.h (symbol_table::glob_variables): New functions.
-	(symbol_table::do_glob): New argument, vars_only.  Change all uses.
-
-	2007-06-22  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::help_for_dispatch):
-	New function.
-	* symtab.h: Provide decl.
-	(symbol_table::fcn_info::help_for_dispatch,
-	symbol_table::help_for_dispatch): New functions.
-
-	* help.cc (help_from_symbol_table): Call
-	symbol_table::help_for_dispatch instead of
-	extract_help_from_dispatch.
-
-	* help.cc (extract_help_from_dispatch): Delete.
-	* help.h: Delete decl.
-
-	2007-06-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dispatch.cc (class octave_dispatch): Delete class.
-	(builtin, any_arg_is_magic_colon, dispatch_record): Delete functions.
-	(Fbuiltin, Fdispatch): Adapt to new symbol table objects.
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::print_dispatch):
-	New function.
-	* symtab.h: Provide decl.
-	(symbol_table::fcn_info::print_dispatch, symbol_table::print_dispatch):
-	New functions.
-
-	* symtab.h (symbol_table::fcn_info::fcn_info_rep::clear_dispatch,
-	symbol_table::fcn_info::clear_dispatch, symbol_table::clear_dispatch):
-	New functions.
-
-	* symtab.h (symbol_table::fcn_info::fcn_info_rep::get_dispatch,
-	symbol_table::fcn_info::get_dispatch, symbol_table::get_dispatch):
-	New functions.
-
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find):
-	Use leftmost class argument as dispatch type, or first argument if
-	there are no class arguments.
-
-	2007-06-20  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (Vprint_answer_id_name, Fprint_answer_id_name): Delete.
-	(octave_base_value::print_with_name): Always print name.
-
-	* ov-base.cc (Vsilent_functions): No longer static.
-	* ov-base.h: Provide decl.
-
-	* ov-class.cc (Fmethods): Define as command.
-
-	* ov-class.cc (octave_class::print): Simply call print_raw.
-
-	* ov-class.cc (octave_class::print_with_name): New function.
-	* ov-class.h: Provide decl.
-
-	2007-06-19  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (octave_value::do_unary_op, octave_value::do_binary_op):
-	Handle class methods.
-
-	* ov.cc (octave_value::unary_op_fcn_name,
-	octave_value::binary_op_fcn_name): New functions.
-	* ov.h: Provide decls.
-
-	* ov-typeinfo.cc (octave_value_typeinfo::register_unary_class_op,
-	octave_value_typeinfo::register_binary_class_op,
-	octave_value_typeinfo::do_register_unary_class_op,
-	octave_value_typeinfo::do_register_binary_class_op,
-	octave_value_typeinfo::do_lookup_unary_class_op,
-	octave_value_typeinfo::do_lookup_binary_class_op): New functions.
-	* ov-typeinfo.h: Provide decls.
-
-	* ov-typeinfo.h (octave_value_typeinfo::unary_class_op_fcn,
-	octave_value_typeinfo::binary_class_op_fcn): New typedefs.
-	(octave_value_typeinfo::unary_class_ops,
-	octave_value_typeinfo::binary_class_ops): New data members.
-	(octave_value_typeinfo::octave_value_typeinfo): Initialize them.
-	(octave_value_typeinfo::lookup_unary_class_op,
-	octave_value_typeinfo::lookup_binary_class_op): New functions.
-
-	* OPERATORS/op-class.cc: New file.
-	* Makefile.in (OP_XSRC): Add it to the list.
-
-	* ov.cc (install_types): Call octave_class::register_type here.
-
-	* ov-class.h (octave_class): Implement by containing a map object
-	instead of deriving from octave_struct.
-	* ov-class.cc (octave_class::subsref, octave_class::subsasgn):
-	Don't use octave_class implementation as default action.
-
-	* ov.h, ov.cc (octave_value::octave_value (const Octave_map&, const
-	std::string&)): New constructor.
-
-	2007-06-18  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (octave_class::subsref, octave_class::subsasgn):
-	Handle dispatch to user-defined methods.
-
-	* parse.y (load_fcn_from_file): New arg, dispatch_type.
-	Change all uses.
-
-	* ov-fcn.h (octave_function::is_class_constructor,
-	octave_function::is_class_method, octave_function::dispatch_class):
-	New virtual functions.
-
-	* ov-usr-fcn.h (octave_user_function::dispatch_class,
-	octave_usr_function::stash_dispatch_class): New functions.
-	(octave_usr_fucntion::xdispatch_class): New data member.
-	* parse.y (frob_function): Call stash_dispatch_class here.
-
-	* ov-struct.cc (Ffieldnames): Also handle objects.
-
-	* ov-class.cc (Fmethods): New function.
-	* load-path.cc (load_path::do_methods): New function.
-	* load-path.h (load_path::methods): New function.
-
-	* ov.h (octave_value::is_object): New function.
-	* ov-base.h (octave_base_value::is_object): New virtual function.
-	* ov-class.h (octave_class::is_object): New function.
-	* ov-class.cc (Fisobject): New function.
-
-	2007-06-15  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (octave_class::print): Call display method if found.
-
-	* symtab.h (symbol_table::fcn_info::find_method): New function.
-	(symbol_table::find_method): New function.
-	(symbol_table::fcn_info::fcn_info_rep::find_method): Provide decl.
-	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_method):
-	New function.
-	(symbol_table::fcn_info::fcn_info_rep::find): Use it.
-
-	2007-06-14  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_table::clear_mex_functions): Make it work.
-	(symbol_table::fcn_info::fcn_info_rep::clear_mex_function,
-	symbol_table::fcn_info::clear_mex_function): New functions.
-
-	2007-06-08  John W. Eaton  <jwe@octave.org>
-
-	* defun.cc (Falias): Delete.
-
-	* variables.cc (load_fcn_try_ctor): New function.
-	(lookup): call load_fcn_try_ctor instead of load_fcn_from_file.
-
-	* variables.cc, variables.h (at_top_level, lookup_by_name, lookup,
-	initialize_symbol_tables, fcn_out_of_date, symbol_out_of_date,
-	lookup_function, lookup_user_function, link_to_global_variable,
-	link_to_builtin_or_function, force_link_to_function, Fdocument,
-	is_local_variable, do_clear_all, do_clear_functions,
-	do_clear_globals, do_clear_variables, do_clear_function,
-	do_clear_global, do_clear_variable, do_clear_symbol,
-	do_clear_function_pattern, do_clear_global_pattern,
-	do_clear_variable_pattern, do_clear_symbol_pattern,
-	clear_function, clear_variable, clear_symbol):
-	Delete (some functionality moved to the new symtab.cc and some is
-	no longer needed).
-	(Fignore_function_time_stamp): Move to symtab.cc.
-
-	* lex.l (lookup_identifier): Delete.
-
-	* parse.y (is_function_file): New function.
-	(load_fcn_from_file): Return pointer to octave_function, not bool.
-
-	* ov-usr-fcn.h, ov-usr-fcn.cc (octave_user_function::argn_sr,
-	octave_user_function::nargin_sr, octave_user_function::nargout_sr,
-	octave_user_function::varargin_sr): Delete data members.
-	(octave_user_function::install_automatic_vars): Delete.
-	(octave_user_script::do_multi_index_op): New function.
-
-	* ov-fcn.h (octave_function::locked, octave_function::my_dir_name):
-	New data members.
-	(octave_function::dir_name, octave_function::stash_dir_name,
-	octave_function::lock, octave_function::unlock,
-	octave_function::islocked): New functions.
-
-	* of-fcn-handle.h, ov-fcn-handle.cc (octave_fcn_handle::subsref):
-	Call out_of_date_check here to simplify time stamp checking.
-	(octave_fcn_handle::reload_warning): Delete.
-
-	* ov.h (octave_value::is_user_script, octave_value::is_user_function):
-	New functions.
-	* ov-base.h (octave_base_value::is_user_script,
-	octave_base_value::is_user_function): New pure virtual functions.
-	* ov-fcn.h (octave_function::is_user_script,
-	octave_function::is_user_function): Delete.
-
-	* load-save.cc (install_loaded_variable): Greatly simplify.
-
-	* load-path.h, load-path.cc: Change private_fcn_file to private_file.
-	(load_path::private_fcn_map): New data member.
-	(load_path::do_add, load_path::do_remove, load_path::do_update):
-	Also manage private_file_map here.
-	(load_path::add_to_private_fcn_map): New function.
-	(load_path::remove_private_fcn_map): New function.
-	(load_path::do_find_private_fcn): Make it work.
-	(get_file_list): New function.
-	(load_path::do_display): Use it.  Display private map.
-	(load_path::find_method, load_path::find_fcn): Handle directory name.
-
-	* token.cc, token.h, toplev.cc, debug.cc, defun.cc, defun-dld.h,
-	defun-int.h, error.cc, help.cc, load-save.h, load-save.cc, mex.cc,
-	octave.cc, ov-fcn-handle.cc, ov-usr-fcn.cc, parse.h, parse.y,
-	lex.l, variables.cc: Adapt to new symbol table objects (my
-	apologies for the lack of detail).
-
-	* unwind-prot.h (unwind_protect::add): Set default value for ptr arg.
-
-	* pt-stmt.cc (tree_statement::eval): Rework method for deciding
-	whether to assign value to ans.
-
-	* pt-idx.cc (tree_index_expression::rvalue):
-	Looking up symbol may evaluaate first args now.
-
-	* pt-id.h, pt-id.cc (tree_identifier::document,
-	tree_identifier::is_defined, tree_identifier::define,
-	tree_identifier::is_function, tree_identifier::lookup,
-	tree_identifier::link_to_global): Delete.
-	(tree_identifier::do_lookup): Simplify.
-	(tree_identifier::rvalue): Looking up symbol can't execute script now.
-
-	* pt-misc.cc (tree_parameter_list::initialize_undefined,
-	tree_parameter_list::is_defined): Call is_variable for elt, not
-	is_defined.
-
-	* pt-fcn-handle.h (tree_anon_fcn_handle::fcn): Now pointer to
-	octave_user_function, not value.  Change all uses.
-
-	* pt-decl.h (tree_decl_command::initialized): Delete data member.
-	(tree_decl_elt::is_variable): New function.
-	* pt-decl.cc: Fix all uses of tree_decl_command::initialized.
-
-	* ls-hdf5.cc, ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc,
-	ls-oct-ascii.cc, ls-oct-binary.cc, input.cc: Don't include symtab.h.
-
-	* dynamic-ld.h, dynamic-ld.cc (octave_dynamic_loader::load_oct,
-	octave_dynamic_loader::load_mex, octave_dynamic_loader::do_load_oct,
-	octave_dynamic_loader::do_load_mex): Adapt to new symbol table
-	objects.  Return pointer octave_function instead of bool.
-
-	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Disable for now.
-	Disable code that works with old symbol tables.
-	(Fbuiltin): Simply call symbol_table::add_dispatch.
-
-	* pt-arg-list.cc, pt-arg-list.h, pt-assign.cc, pt-assign.h,
-	pt-binop.cc, pt-binop.h, pt-bp.h, pt-cell.cc, pt-cell.h,
-	pt-cmd.cc, pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc,
-	pt-const.h, pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h,
-	pt-exp.h, pt-fcn-handle.cc, pt-fcn-handle.h, pt-id.cc, pt-id.h,
-	pt-idx.cc, pt-idx.h, pt-jump.cc, pt-jump.h, pt-loop.cc, pt-loop.h,
-	pt-mat.cc, pt-mat.h, pt-misc.cc, pt-misc.h, pt-select.cc,
-	pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc, pt-unop.h:
-	Adapt dup functions to use scope instead of symbol_table objects.
-
-	* TEMPLATE-INST/Array-sym.cc: Delete.
-	* Makefile.in (TI_XSRC): Remove it from the list.
-
-	* symtab.h, symtab.cc: Replace with new versions.
-
-	2007-05-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-lvalue.cc, oct-lvalue.h (octave_lvalue::chg_fcn): Delete.
-	Fix all uses.
-
-	2007-05-15  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_private_function): New function.
-	* load-path.h (load_path::do_find_private_function): Provide decl.
-	(load_path::find_private_function): New function.
-
-	2007-05-08  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.cc (tree_index_expression::rvalue): Handle dispatch here.
-
-	* pt-id.cc (tree_identifier::is_variable, tree_identifier::lookup):
-	New functions.
-	* pt-id.cc: Provide decls.
-
-	* parse.y (current_class_name): New global variable.
-	* parse.h: Provide decl.
-
-	* parse.y (load_fcn_from_file, parse_fcn_file):
-	New arg, dispatch_type.
-	(parse_fcn_file): Protect current_class_name and set it to
-	dispatch_type before parsing function.
-	(load_fcn_from_file): If dispatch_type is not empty, call
-	load_path::find_method instead of load_path::find_fcn.
-	* parse.h: Fix decls for extern functions.
-
-	* lex.h (lexical_feedback::parsing_class_method): New data member.
-	* lex.l (lexical_feedback::init): Initialize it.
-	(lookup_identifier): Check it and set sym_name accordingly.
-
-	* ov-usr-fcn.h (octave_user_function::mark_as_class_constructor,
-	octave_user_function::is_class_constructor,
-	octave_user_function::mark_as_class_method,
-	octave_user_function::is_class_method): New functions.
-	(octave_user_function::class_constructor,
-	octave_user_function::class_method): New data members.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Initialize them.
-
-	* load-path.h, load-path.cc: Use typedefs to simplify template decls.
-	Use fcn consistently instead of function.
-
-	2007-05-03  John W. Eaton  <jwe@octave.org>
-
-	* ov-class.cc (Fclass): Move here.
-	* ov-typeinfo.cc: From here.
-
-	* input.cc (octave_gets): Call load_path::update if user input
-	contains something other than one of the characters " \t\n\r".
-
-	* ov-class.cc, ov-class.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* load-path.cc (genpath): Skip directories beginning with "@".
-	(load_path::dir_info::get_file_list):  Don't return anything.
-	Call get_private_function_map here.
-	(load_path::dir_info::initialize): Not here.
-	(load_path::dir_info_::get_method_file_map): New function.
-	(load_path::method_map): New data member.
-	(load_path::do_clear): Also clear method_map.
-	(load_path::do_add): Also call add_to_method_map.
-	(load_path::do_update): Also clear method_map and call
-	(load_path::do_find_method): New function.
-	(load_path::do_add_to_method_map): New function.
-	(load_path::move_fcn_map, load_path::move_method_map): New functions.
-	(load_path::move): Use them.
-	(load_path::remove_fcn_map, load_path::remove_method_map):
-	New functions.
-	(load_path::remove): Use them.
-	* load-path.h: Provide/fix decls.
-	(load_path::find_method): New static function.
-
-	* Makefile.in (%.df : %.cc): Use mv instead of
-	$(simple-move-if-change-rule).
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-	* version.h (OCTAVE_VERSION): Now 3.0.0.
-	(OCTAVE_API_VERSION): Now api-v32.
-	(OCTAVE_RELEASE_DATE): Now 2007-12-21.
-
-2007-12-19  Thomas Kasper  <ThomasKasper@gmx.net>
-
-	* OPERATORS/op-scm-cs.cc (DEFBINOP (pow)): Extract complex value
-	from second arg.
-
-2007-12-12  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): Check for scalar arguments
-	for 2 argument version.
-
-2007-12-12  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (class axes) Add the layer property.
-	* graphics.cc (class axes) Ditto.
-
-	* graphics.cc (gh_manager::get_handle): Use ceil instead of trunc.
-
-2007-12-11  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.19+.
-
-2007-12-11  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.19.
-	(OCTAVE_API_VERSION): Now api-v31.
-	(OCTAVE_RELEASE_DATE): Now 2007-12-11.
-
-	* graphics.cc (make_graphics_object):
-	If successful, call __request_drawnow__.
-
-	* input.cc (Vgud_mode): New static variable.
-	(F__gud_mode__): New function.
-	(get_user_input): If debug and Vgud_mode, print location info in
-	format for Emacs GUD mode.
-
-2007-12-11  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
-	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc: Privilege
-	conversion to dense matrices for compatibility.
-
-	* DLD-FUNCTIONS/sparse.cc (FSparse): Remove the mutate flag, as
-	default bahavior is now to keep matrix sparse always.
-
-	* graphics.cc (axes::properties::properties):
-	Initialize xcolor, ycolor, and zcolor to (0, 0, 0).
-
-	* graphics.h.in (gh_manager::next_handle): Now double.
-	* graphics.cc (gh_manager::get_handle, gh_manager::gh_manager):
-	Set fractional part of next_handle to a random value.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::all_strings): Handle empty elements.
-	Handle N-d cell arrays.
-
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve):
-	For compatibility, return [x, fval, info] instead of [x, info, msg].
- 	Move tests here from test/test_nonlin.m.
-
-	* OPERATORS/op-cm-s.cc: Define function for el_mul with
-	DEFNDBINOP_OP, not DEFBINOP_OP.
-
-	* OPERATORS/op-s-cm.cc: Define functions for el_and and el_or
-	operators with DEFNDBINOP_FN.
-
-	* oct-hist.cc (default_history_file): Use file_ops::concat.
-	* load-path.cc (dir_info::initialize, dir_info::get_file_list,
-	load_path::do_find_fcn, load_path::do_find_file, genpath,
-	execute_pkg_add_or_del, load_path::do_find_first_of,
-	load_path::do_find_all_first_of): Likewise.
-
-	* help.cc (Flookfor): Avoid doubling directory separator.
-	* dirfns.cc (Fmkdir): Likewise.
-
-	* pt-mat.cc (tree_matrix::rvalue): Produce sq_string if any
-	strings are sq_string objects.
-
-2007-12-10  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (data_property::data): Declare as NDArray instead
-	of Matrix.  Change all uses.
-
-2007-12-10  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (class figure) Add the color property.
-	* graphics.cc (class figure) Ditto.
-
-2007-12-07  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fnorm): Don't return a scalar stored as a sparse
-	matrix. Convert it to a scalar.
-
-	* graphics.cc (check_limit_val): Delete.
-	(check_limit_vals): Simplify and no longer use check_limit_val.
-
-2007-12-05  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.18+.
-
-2007-12-05  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.18.
-	(OCTAVE_API_VERSION): Now api-v30.
-	(OCTAVE_RELEASE_DATE): Now 2007-12-05.
-
-2007-12-04  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (INCLUDES): Add builtins.h to the list.
-
-	* oct-hist.cc (default_history_file): Use += instead of
-	push_back to append character to std::string object.
-
-	* Makefile.in (LIBDLFCN): Delete all uses.
-
-	* toplev.cc (octave_config_info): Remove LIBDLFCN and
-	DLFCN_INCFLAGS from the list.
-	* oct-conf.h.in (OCTAVE_CONF_DLFCN_INCFLAGS, OCTAVE_CONF_LIBDLFCN):
-	Delete.
-
-	* error.cc (Ferror): Handle error id.
-
-	* load-save.cc (Fsave, Fload): Doc fixes.
-	From Marco Caliari <caliari@sci.univr.it>.
-
-2007-12-04  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h.in (base_properties::get_type
-	base_properties::get___modified__,
-	base_properties::get___myhandle__): New functions.
-
-2007-12-04  Christoph Mayer  <Christoph.Mayer@dlr.de>.
-
-	* toplev.h (clean_up_and_exit, recover_from_exception,
-	do_octave_atexit, global_command, curr_parent_function):
-	Tag with OCTINTERP_API.
-
-2007-12-03  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/luinc.cc: Make tests conditional on HAVE_UMFPACK.
-	* DLD-FUNCTIONS/spqr.cc: Make tests conditional on HAVE_CXSPARSE.
-
-	* DLD-FUNCTIONS/regexp.cc: Use "%!testif" blocks for conditional
-	tests on PCRE.
-
-	* graphics.cc (class axes): Add color and activepositionproperty
-	properties to axis objects.
-	* graphics.h.in (class axes): ditto.
-
-	* DLD-FUNCTIONS/regexp.cc: Also include sys/types.h for regexp.
-
-2007-11-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/sort.cc (operator < (const Complex&, const Complex&),
-	operator > (const Complex&, const Complex&)):
-	Pass args by const reference, not value.
-
-	* data.cc, matherr.c, pr-output.cc, sysdep.cc,
-	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/minmax.cc,
-	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/sort.cc,
-	DLD-FUNCTIONS/tsearch.cc: Include lo-math.h instead of cmath
-	or math.h.
-
-2007-11-30  Moritz Borgmann  <octave@moriborg.de>
-
-	* ls-mat5.h (mat5_data_type): Delete trailing comma in enum decl.
-	* oct-stream.cc (octave_base_stream::do_printf): Use
-	OCTAVE_EMPTY_CPP_ARG to avoid annoying Sun compiler warning.
-	* OPERATORS/op-sbm-sbm.cc (DEFDBLCONVFN): Delete useless macro
-	invocation.
-
-	* DLD-FUNCTIONS/typecast.cc (typecast): No longer static.
-
-2007-11-30  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (updating_axis_limits): New static variable.
-	(check_limit_val, check_limit_vals, get_axis_limits): New functions.
-	(axes::update_axis_limits): Make it work.
-	* graphics.h.in (base_properties::get_children): New function.
-	(base_properties::get_xdata, base_properties::get_ydata,
-	base_properties::get_zdata, base_properties::get_ldata,
-	base_properties::get_udata, base_properties::get_xldata,
-	base_properties::get_xudata, base_properties::get_cdata,
-	base_properties::get_properties (void) const):
-	New virtual functions.
-	(graphics_object::get_xdata, graphics_object::get_ydata,
-	graphics_object::get_zdata, graphics_object::get_ldata,
-	graphics_object::get_udata, graphics_object::get_xldata,
-	graphics_object::get_xudata, graphics_object::get_cdata,
-	graphics_object::get_properties (void) const,
-	root_figure::get_properties (void) const,
-	figure::get_properties (void) const,
-	axes::get_properties (void) const,
-	line::get_properties (void) const,
-	text::get_properties (void) const,
-	image::get_properties (void) const,
-	patch::get_properties (void) const,
-	surface::get_properties (void) const)): New functions.
-	(radio_property::radio_property (const radio_values&)):
-	Provide	default value for argument.
-	(radio_property::radio_property (const radio_values&, const
-	std::string&)): Delete.
-	(axes::xlimmode, axes::ylimmode, axes::zlimmode, axes::climmode,
-	axes::xscale, axes::yscale, axes::zscale): Declare as
-	radio_property instead of octave_value values.  Adjust all uses.
-
-2007-11-29  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (octave_print_internal_template (std::ostream&,
-	const octave_int<T>&, bool)): Rename from octave_print_internal.
-	(PRINT_INT_SCALAR_INTERNAL): New macro.  Use it to define
-	non-template functions for printing scalar octave_int values.
-	(octave_print_internal_template (std::ostream&, const intNDArray<T>&,
-	bool, int)): Rename from octave_print_internal.
-	(PRINT_INT_ARRAY_INTERNAL): New macro.  Use it to define
-	non-template functions for printing scalar octave_int values.
-	* pr-output.h: Declare non-template functions for printing
-	octave_int scalar and array values.
-	Delete declarations of template funtions for printing octave_int
-	scalar and array values.
-
-2007-11-28  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (base_properties::update_axis_limits,
-	axes::update_axis_limits): New functions.
-	* graphics.h.in (class data_property): New class.
-	(graphics_object::update_axis_limits): New function.
-	(base_graphics_object::update_axis_limits): New virtual function.
-	(base_properties::update_axis_limits, axes::update_axis_limits):
-	Provide decls.
-	(class line, class image, class patch, class surface): Use it
-	instead of octave_value for data properties.  Tag data properties
-	with "l" modifier.
-	(class axes): Tag scale properties with "l" modifier.
-	* genprops.awk: Handle "l" modifier.
-
-	* mkbuiltins: Emit #include "builtins.h" for the builtins.cc file.
-	From Christoph Mayer <Christoph.Mayer@dlr.de>.
-
-	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
-	Delete.
-
-	* Cell.cc (Cell::Cell (const dim_vector&, const string_vector&, bool)):
-	Initialize undefined values to resize_fill_value ().
-
-2007-11-27  John W. Eaton  <jwe@octave.org>
-
-	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
-	Tag inline.  From Moritz Borgmann <octave@moriborg.de>.
-
-	* pt-bp.cc (tree_breakpoint::visit_decl_command): Also check line
-	number of cmd.
-	* pt-decl.cc (tree_global_command::eval, tree_static_command::eval):
-	Insert MAYBE_DO_BREAKPOINT here.
-
-	* error.cc (Fwarning): If setting state "all" to "error", leave
-	Octave:matlab-incompatible and Octave:single-quote-string warning
-	states unchanged.
-	(warning_enabled): Allow individual warning states to override
-	"warning error all".
-
-	* octave.cc (execute_eval_option_code, execute_command_line_file):
-	Handle interrupts.
-	* toplev.cc (recover_from_exception): Now extern.
-	* toplev.h (recover_from_exception): Provide decl.
-
-	* pt-idx.cc (tree_index_expression::lvalue): Treat object == []
-	the same as undefined.
-
-2007-11-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (DO_DOUBLE_CONV): Always use long.
-
-	* oct-stream.cc (do_write): Call float_value and double_value on
-	octave_int<T> objects instead of relying on conversion operators.
-
-	* ls-mat5.cc (read_mat5_binary_element, OCTAVE_MAT5_INTEGER_READ):
-	Call double_value on octave_int<T> objects
-	instead of relying on conversion operator.
-	(read_mat5_binary_file_header):
-	Call char_value on octave_int<T> objects
-	instead of relying on conversion operator.
-	(read_mat5_binary_element):
-	Call bool_value on octave_int<T> objects
-	instead of relying on conversion operator.
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::double_value,
-	OCTAVE_VALUE_INT_MATRIX_T::scalar_value,
-	OCTAVE_VALUE_INT_MATRIX_T::matrix_value,
-	OCTAVE_VALUE_INT_MATRIX_T::complex_matrix_value,
-	OCTAVE_VALUE_INT_MATRIX_T::array_value,
-	OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::double_value,
-	OCTAVE_VALUE_INT_SCALAR_T::scalar_value,
-	OCTAVE_VALUE_INT_SCALAR_T::matrix_value,
-	OCTAVE_VALUE_INT_SCALAR_T::complex_matrix_value,
-	OCTAVE_VALUE_INT_SCALAR_T::array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::complex_array_value,
-	Call double_value on octave_int<T> objects
-	instead of relying on conversion operator.
-	(OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value):
-	Call bool_value on octave_int<T> objects
-	instead of relying on conversion operator.
-	(OCTAVE_VALUE_INT_MATRIX_T::char_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::char_array_value):
-	Call char_value on octave_int<T> objects
-	instead of relying on conversion operator.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* Sparse-op-defs.h (SPARSE_BASE_REDUCTION_OP): Check that the fill
-	value is not zero before creating the matrices.
-
-	* graphics.cc (class axes): Add the {x|y|z}color color property.
-	* graphics.h.in (class axes): ditto.
-
-	* ov-base.cc (Vsparse_auto_mutate, Fsparse_auto_mutate): New
-	internal variable and built-in function to set it.
-	* ov-base.h (extern bool Vsparse_auto_mutate): Export internal
-	variable to other functions.
-	* ov-re-sparse.cc (octave_sparse_matrix::try_narrowing_conversion
-	(void)), ov-cx-sparse.cc
-	(octave_sparse_complex_matrix::try_narrowing_conversion (void)),
-	ov-bool-sparse.cc
-	(octave_sparse_bool_matrix::try_narrowing_conversion (void)):
-	Use Vsparse_auto_mutate flag to determine whether to convert
-	sparse matrices to full matrices if that saves space.
-
-	* DLD-FUNCTIONS/minmax.cc (MINMAX_DOUBLE_BODY): New version of
-	MINMAX_BODY macro without the initialization.
-	(MINMAX_INT_BODY): Macro for min/max for the integer types
-	(MINMAX_BODY): New macro that calls the appropriate instantiation
-	of the other two macros.
-
-	* graphics.cc (class axes): Add __colorbar__ property.
-	* graphics.h.in (class axes): ditto.
-
-	* data.cc (Fnorm): Document the "inf" string argument for matrice
-	and vectors and the "fro" argument for vectors.
-
-	* graphics.h.in (class figure): Add __enhanced__ property to cache
-	whether the terminal supports enhanced mode. Add interpreter
-	property to all text classes, to determine the renderer for the
-	text.
-	* graphics.cc (class figure): ditto.
-
-2007-11-26  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (string_properties): delete class
-	(property_name): rename class to caseless_str.
-	(radio_values::possible_vals): change type to caseless_str.
-
-2007-11-26  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* builtins.h (install_builtins): Tag with OCTINTERP_API.
-	* toplev.h (octave_interpreter_ready, octave_initialized): Likewise.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mex::foreign_memlist): New data member.
-	(mex::mark_foreign, mex::unmark_foreign): New functions.
-	(mex::free): Don't warn about pointers found in foreign_memlist.
-	(maybe_mark_foreign): New function.
-	(mxArray_octave_value::get_data, mxArray_octave_value::get_ir,
-	mxArray_octave_value::get_jc):
-	Call maybe_mark_foreign on returned pointer.
-
-2007-11-14  David Bateman  <dbateman@free.fr>
-
-	* mex.cc (mxArray_sparse::mxArray_sparse (const mxArray_sparse&)):
-	Also ensure that pr and pi are correctly copied.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (@bsd_gcc_kluge_targets_frag@): Delete line for
-	Makefrag.bsd substitution.
-
-	* graphics.h.in (base_properties::tag): New property.
-	(base_properties::get_tag, base_properties::set_tag): New functions.
-	(root_figure::set, root_figure::get, figure::set, figure::get,
-	axes::set, axes::get, line::set, line::get, text::set, text::get,
-	patch::set, patch::get, surface::set, surface::get): Handle tag.
-
-2007-11-14  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* DLD-FUNCTIONS/regexp.cc: Undo previous change.
-
-2007-11-14  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mex::mark, mex::unmark): Now public.
-	(mex::persistent): Delete.
-	(mexMakeArrayPersistent): Call maybe_unmark_array instead of
-	mex::persistent.
-	(mexMakeMemoryPersistent): Call maybe_unmark instead of
-	mex::persistent.
-	(maybe_unmark (void *)): New function.
-	(mxSetDimensions, mxSetPr, mxSetPi, mxSetData, mxSetImagData,
-	mxSetIr, mxSetJc): Use it.  From David Bateman.
-
-2007-11-13  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* DLD-FUNCTIONS/rand.cc (Frand): Update URL reference in doc string.
-
-2007-11-12  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in, graphics.cc (class text): Add the fontangle and
-	fontweight properties. Add string_property class to handle the
-	string radio values.
-
-2007-11-12  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.17+.
-
-2007-11-12  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in, graphics.cc (class text): Add the fontname and
-	fontsize properties.
-
-2007-11-10  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.17.
-	(OCTAVE_API_VERSION): Now api-v29.
-	(OCTAVE_RELEASE_DATE): Now 2007-11-10.
-
-2007-11-09  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l: Don't add atexit ("closeplot")
-	to PKG_ADD file.
-
-2007-11-09  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc, graphics.h.in (class patch): Add the field "keylabel".
-
-	* data.cc (Fcputime) [__WIN32__]: Correct scaling of sys and usr times.
-
-	* graphics.cc (is_handle): Handle must be a real scalar.
-
-2007-11-09  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
-	* data.cc (Fislogical): Fix typo in documentation entry.
-
-2007-11-08  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__gnuplot_save_data__):
-	Note obsolescence in doc string.
-	(WARN_OBSOLETE): New macro
-	(F__gnuplot_save_data__, Fgnuplot_command_plot,
-	Fgnuplot_command_replot, Fgnuplot_command_splot,
-	Fgnuplot_command_using, Fgnuplot_command_with,
-	Fgnuplot_command_axes, Fgnuplot_command_title,
-	Fgnuplot_command_end, Fgnuplot_use_title_option,
-	F__clear_plot_window__, Fcloseplot, Fpurge_tmp_files,
-	F__gnuplot_raw__, F__gnuplot_send_inline_data__, F__gnuplot_set__,
-	F__gnuplot_show__, F__gnuplot_plot__, F__gnuplot_splot__,
-	F__gnuplot_replot__): Use WARN_OBSOLETE.
-
-2007-11-07  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/regexp.cc: Handle HAVE_PCRE_PCRE_H.  Check
-	HAVE_PCRE_H instead of HAVE_PCRE to decide whether to include pcre.h.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (Fgnuplot_command_plot,
-	Fgnuplot_command_replot, Fgnuplot_command_splot,
-	Fgnuplot_command_using, Fgnuplot_command_with,
-	Fgnuplot_command_axes, Fgnuplot_command_title,
-	Fgnuplot_command_end, Fgnuplot_use_title_option,
-	F__clear_plot_window__, Fcloseplot, Fpurge_tmp_files,
-	F__gnuplot_raw__, F__gnuplot_send_inline_data__, F__gnuplot_set__,
-	F__gnuplot_show__, F__gnuplot_plot__, F__gnuplot_splot__,
-	F__gnuplot_replot__): Note obsolescence in doc string.
-
-2007-11-06  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.h.in (class surface::properties): New properties,
-	cdata, facecolor, facealpha, edgecolor, linestyle,
-	linewidth, marker, markeredgecolor, markerfacecolor, markersize.
-	* graphics.cc (surface::properties::properties,
-	surface::properties::set, surface::properties::get,
-	surface::properties::factory_defaults): Handle new properities.
-
-2007-11-06  David Bateman  <dbateman@free.fr>
-
-	* data.cc (DATA_REDUCTION): Handle the 'native' and 'double'
-	arguments of the Fsum function.
-	* OPERATORS/op-bm-bm.cc (matrix_to_bool_matrix,
-	scalar_to_bool_matrix): New type conversion functions.
-	(install_bm_bm_ops): Install new type conversions functions.
-
-2007-11-06  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* toplev.cc (Fsystem) [__WIN32__ && ! __CYGWIN__]:
-	Quote the complete command.
-
-2007-11-06  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fnorm): New tests.
-
-	* defun-int.h (DEFINE_FUNX_INSTALLER_FUN3): Don't install function
-	if check_version produces an error.
-
-2007-11-05  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.cc (tree_index_expression::lvalue): Try to do a better
-	job of computing the number of elements in lvalue expressions when
-	the last indexing element is ".".
-
-2007-11-02  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (fopen_mode_to_ios_mode): Use std::ios::app instead
-	of std::ios::ate.
-
-2007-11-02  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* input.cc, pr-output.cc, bitfcns.cc, DLD-FUNCTIONS/time.cc:
-	Fix broken @examples in help texts.
-
-2007-10-31  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fnorm): Avoid warning about p_val possibly being used
-	uninitialized.
-
-	* version.h (OCTAVE_VERSION): Now 2.9.16+.
-
-2007-10-31  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.16.
-	(OCTAVE_API_VERSION): Now api-v28.
-	(OCTAVE_RELEASE_DATE): Now 2007-10-31.
-
-2007-10-31  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* pt-assign.h (tree_simple_assignment::op_type,
-	tree_multi_assignment::op_type): New functions.
-	* pt-unop.h (tree_unary_expression::op_type): New function.
-
-2007-10-31  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (line::properties::get): Fix property name
-	(markerface -> markerfacecolor).
-
-	* Makefile.in (INCLUDES): Add debug.h to the list.
-
-2007-10-30  John Swensen  <jpswensen@comcast.net>
-
-	* debug.h: New file.
-	* debug.cc (parse_dbfunction_params, do_find_bkpt_list,
-	intmap_to_ov): New functions.
-	(Fdbstop, Fdbclear): Use parse_dbfunction_params.
-	Improve compatibility.
-	(Fdbstatus): Improve compatibility.
-
-	* help.cc (do_which): No longer static.
-	* help.h: Provide decl.
-
-2007-10-30  David Bateman  <dbateman@free.fr>
-
-	* symtab.cc: Doc fixes for small book format.
-
-2007-10-30  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (fopen_mode_to_ios_mode): Handle 'W' as 'w' and 'R'
-	as 'r', but warn about them.
-
-2007-10-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
-
-	* data.cc: Include sytime.h, sys/types.h, and sys/resource.h.
-
-2007-10-25  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (figure::properties::set_currentaxes):
-	Allow currentfigure to be NaN.
-
-2007-10-25  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* DLD-FUNCTIONS/__contourc__.cc: Use unsigned int instead of uint.
-	(drawcn): Use 1 << k instead of pow (2, k).
-
-2007-10-25  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_record::TYPE): Delete trailing comma in enum decl.
-
-	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Use
-	OCTAVE_EMPTY_CPP_ARG to avoid annoying Sun compiler warning.
-
-	* Makefile.in (graphics.h): Use $(AWK) instead of awk.
-
-	* DLD-FUNCTIONS/time.cc (Ftime, Fmktime): Avoid unnecessary cast.
-
-	* data.cc (Ftic, Ftoc): Call double_value on octave_time objects
-	instead of relying on conversion operator.
-	* ov.cc (octave_value::octave_value (octave_time)): Likewise.
-
-	* variables.cc (symbol_out_of_date): Use explicit conversion to
-	time_t instead of relying on conversion operator.
-	* ov-fcn-handle.cc (octave_fcn_handle::subsref): Likewise.
-
-	* data.cc (tic_toc_timestamp): Rename from __tic_toc_timestamp__.
-	Change all uses.
-
-2007-10-24  David Bateman  <dbateman@free.fr>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::OCTAVE_VALUE_INT_MATRIX_T
-	(const ArrayN<OCTAVE_INT_T>&)): New constructor.
-	* ov.cc (octave_value::octave_value(const ArrayN<T>) with T being
-	octave_int8, octave_uint8, octave_int16, octave_uint16,
-	octave_int32, octave_uint32, octave_int64, octave_uint64): New
-	constructors.
-	* ov.h (octave_value::octave_value(const ArrayN<T>) with T being
-	octave_int8, octave_uint8, octave_int16, octave_uint16,
-	octave_int32, octave_uint32, octave_int64, octave_uint64):
-	Declare them.
-	* DLD-FUNCTIONS/sort.cc (template class octave_sort<T>,
-	template class vec_index<T>, template class
-	octave_sort<vec_index<T> *>,  with T being
-	octave_int8, octave_uint8, octave_int16, octave_uint16,
-	octave_int32, octave_uint32, octave_int64, octave_uint64): New
-	instantiations of sort template classes.
-	(Fsort): Use them.
-
-2007-10-24  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (root_figure::properties::set_currentfigure):
-	Allow currentfigure to be NaN.
-
-	* pt-idx.cc (tree_index_expression::lvalue): Correctly compute
-	number of elements in lvalue expression when last indexing
-	element is ".".
-
-2007-10-23  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (is_handle (const graphics_handle&)): New function.
-	(gh_manager::do_free, reparent, base_properties::set_parent,
-	properties::get_title, properties::get_xlabel,
-	properties::get_ylabel, properties::get_zlabel,
-	properties::remove_child, make_graphics_object, F__go_figure__,
-	F__go_delete__, __go_axes_init__): Call OK on graphics handle
-	object instead of relying on implicit conversion operator.
-	* graphics.h.in (graphics_handle::operator double ()): Delete.
-	(graphics_handle::operator bool ()): Delete.
-	(gh_manager::do_handle_list, gh_manager::do_figure_handle_list,
-	base_properties::adopt): Call VALUE on graphics handle object
-	instead of relying on implicit conversion operator.
-
-	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Call
-	DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 with "( )" as arg list
-	instead of "()".
-
-	* mxarray.h.in (mxClassID): Delete trailing comma in enum decl.
-
-	* symtab.h (symbol_table::symbol_table): Reduce default table size
-	to 64.
-
-2007-10-22  Kim Hansen  <kimhanse@gmail.com>
-
-	* unwind-prot.cc: Include <cstring>.
-
-2007-10-22  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Ftic, Ftoc, Fcputime): New builtin versions of the
-	benchmarking functions for speed.
-	* oct-map.cc (Octave_map::squeeze, Octave_map::permute): New methods.
-	(Octave_map::index (const octave_value_list&, bool)): Add resize_ok
-	argument, define as const and use const_iterator internally.
-	(Octave_map::index (idx_vector&, ...), Octave_map::index (Array
-	<idx_vector>&, ...)): New forms of the index function.
-	* oct-map.h (squeeze, permute, indx (const octave_value_list&, bool),
-	index (idx_vector&, ...), index (Array <idx_vector>&, ...)): Add
-	or update declaration.
-	* ov-struct.cc (octave_struct::do_index_op (const octave_value_list&,
-	bool)): New method.
-	* ov-struct.h (do_index_op (const octave_value_list&, bool)): Declare
-	it.
-	(squeeze (void), permute (const Arra<int>&, bool): New methods.
-
-2007-10-19  Kai Habel  <kai.habel@gmx.de>
-
-	* DLD-FUNCTIONS/__contourc__.cc (add_point): Rename from
-	cl_add_point.  Change all uses.
-	(end_contour): Rename from cl_end_contour.  Change all uses.
-	(start_contour): Rename from cl_start_contour.  Change all uses.
-	(drawcn): Rename from cl_drawcn.  New algorithm for locating contours.
-	(mark_facets): New function.
-	(cntr): Rename from cl_cntr.  Change all uses.  New algorithm for
-	locating contours.
-
-2007-10-19  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::subsasgn): If RHS is cs-list, don't
-	fail if shape of LHS is different.
-	* ov-struct.cc (octave_struct::subsasgn): Likewise.
-
-2007-10-19  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* help.cc (Flookfor): Call print_usage instead of usage.
-	* DLD-FUNCTIONS/cellfun.cc (Fmat2cell): Likewise.
-
-2007-10-17  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/spchol.cc (Fsymbfact): Delete special code for METIS.
-
-2007-10-17  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Fix check for Wact(j).
-
-2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
-
-	* error.cc (Ferror): Make text fit on pages when using smallbook.
-	* load-save.cc (Fsave_header_format_string): Ditto.
-	* ov-struct.cc (Fcell2struct): Ditto.
-	* DLD-FUNCTIONS/besselj.cc (Fairy): Ditto.
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread): Ditto.
-
-2007-10-15  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (axes::properties::get): Fix typo.
-
-2007-10-13  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.15+.
-
-2007-10-13  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.15.
-	(OCTAVE_API_VERSION): Now api-v27.
-	(OCTAVE_RELEASE_DATE): Now 2007-10-13.
-
-2007-10-13  David Bateman  <dbateman@free.fr>
-
-	* graphics.h.in (class patch): Add the faces and vertices properties.
-	* graphics.cc (patch::properties::properties): Initialize faces
-	and vertices.
-	(patch::properties::get): Also fetch faces and vertices.
-	(patch::properties::factory_defaults): Set faces and vertices.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (urlget): Disable use of EPSV mode.
-
-2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
-
-	* DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/regexp.cc, dirfns.cc,
-	input.cc: Spelling fixes.
-
-2007-10-10  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-sbm-sbm.cc (bool_matrix_to_double_matrix):
-	New conversion function.
-	(install_sbm_sbm_ops): Install it.
-
-	* ov-re-mat.cc (double): Handle sparse as a special case.
-
-2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* data.cc, debug.cc, dirfns.cc, error.cc, file-io.cc, help.cc,
-	load-save.cc, ov-fcn-inline.cc, parse.y, pr-output.cc, symtab.cc,
-	syscalls.cc, toplev.cc, variables.cc, DLD-FUNCTIONS/bsxfun.cc,
-	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/fft.cc,
-	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftw.cc,
-	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/lsode.cc,
-	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spchol.cc,
-	DLD-FUNCTIONS/splu.cc, DLD-FUNCTIONS/spparms.cc: Spelling fixes.
-
-2007-10-10  Kim Hansen  <kimhanse@gmail.com>
-
-	* DLD-FUNCTIONS/lpsolve.cc: Delete.
-	* Makefile.in (DLD_XSRC): Remove it from the list.
-
-	* data.cc (Fsqueeze): Document 2d behaviour.
-	* ov-range.h (octave_range::squeeze): New function.
-
-2007-10-09  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (urlget_cleanup): New function.
-	(urlget): Protect call to curl_easy_perform with
-	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE and
-	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
-
-2007-10-09  David Bateman  <dbateman@free.fr>
-
-	* input.cc (accept_line): Drop this function and remove automatic
-	insertion of closing quotes as the transpose operator confuses it.
-	(initialize_command_input): Remove accept_line from here as well.
-
-2007-10-09  John W. Eaton  <jwe@octave.org>
-
-	* ov-mapper.cc (octave_mapper::apply): If possible, use
-	d_d_map_fcn to handle complex values which have imag(z) == 0.
-
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread) [! HAVE_CURL]:
-	Throw error instead of returning empty string hiding error message
-	in third return value.
-	(progress_func): Delete.
-	(Furlread): Don't set progress callback for curl.
-	(write_data, form_query_string, urlget): Now static.
-
-2007-10-08  David Bateman  <dbateman@free.fr>
-
-	*  input.cc (quoting_filename): Function to add a leading quote to
-	a string if needed.
-	(accept_line): Function to check if a string needs a closing quote
-	before calling the rl_newline function.
-	(initialize_command_input): Initialize completer_quote_characters,
-	filename_quote_characters, quoting_function,
-	user_accept_line_function.
-
-	* data.cc (template <class T> static make_diag (...)): New
-	template class version of make_diag. Make other make_diag
-	functions depend on it.
-	( static octave_value make_diag (const octave_value&,
-	octave_idx_type)): Treat all possible internal Octave types.
-
-2007-10-08  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc 	(save_vars, dump_octave_core):
-	Don't pass INFNAN_WARNED to do_save.
-	(do_save): Delete unused arg, INFNAN_WARNED.
-	Don't pass INFNAN_WARNED to save_ascii_data.
-	* ls-oct-ascii.cc (save_ascii_data_for_plotting):
-	Don't pass INFNAN_WARNED to save_ascii.
-	(save_ascii_data): Delete unused arg, INFNAN_WARNED.
-
-	* ov.h (octave_value::save_ascii): Delete unused arg, INFNAN_WARNED.
-	* ov-base-int.cc (octave_base_int_matrix<T>::save_ascii,
-	octave_base_int_scalar<T>::save_ascii): Likewise.
-	* ov-base-sparse.cc (octave_base_sparse<T>::save_ascii): Likewise.
-	* ov-base.cc (octave_base_value::save_ascii): Likewise.
-	* ov-bool-mat.cc (octave_bool_matrix::save_ascii): Likewise.
-	* ov-bool.cc (octave_bool::save_ascii): Likewise.
-	* ov-cell.cc (octave_cell::save_ascii): Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii): Likewise.
-	* ov-fcn-inline.cc (octave_fcn_inline::save_ascii): Likewise.
-	* ov-list.cc (octave_list::save_ascii): Likewise.
-	* ov-struct.cc (octave_struct::save_ascii): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::save_ascii): Likewise.
-	* ov-range.cc (octave_range::save_ascii): Likewise.
-
-	* ov-scalar.cc (octave_scalar::save_ascii): Remove warning about
-	reloading inf/nan values.  Delete unused arg, INFNAN_WARNED.
-	* ov-complex.cc (octave_complex::save_ascii): Likewise.
-	* ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::save_ascii): Likewise.
-
-	* ov-fcn-inline.cc (Finline): Use DEFUNX instead of DEFUN.
-
-2007-10-08  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* sighandlers.h (can_interrupt): Tag with OCTINERP_API.
-	* sysdep.h (raw_mode, octave_popen, octave_pclose,
-	same_file_internal): Likewise.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_base_stream::do_scanf):
-	Always allow MVAL to re resized if NR > 0.
-	(FINISH_CHARACTER_CONVERSION): Likewise.
-
-	* mappers.cc (install_mapper_functions): Undo previous change.
-	Fix doc string for lgamma.
-	(xzlgamma): Delete.
-
-2007-10-05  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h.in (axes::properties): New property, colororder.
-	* graphics.cc (default_colororder): New function.
-	(axes::properties::properties, axes::properties::get,
-	axes::properties::set_defaults,
-	axes::properties::factory_defaults, ): Handle colororder.
-
-	* mappers.cc (xzlgamma): New static function.
-	(install_mapper_functions): Pass xzlgamma for c_c_map for lgamma
-	mapper.  Pass 1 for can_ret_cmplx_for_real and set hi to
-	octave_Inf.
-
-2007-10-04  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/symrcm.cc: Move static functions to top of file to
-	avoid forward decls.
-	(Q_enq): Delete unused arg QH.  Change all uses.
-	(Q_deq): Delete unused arg QT.  Change all uses.
-	(find_starting_node): Delete unused local variable J.
-	(H_heapify_min, H_insert, find_starting_node, Fsymrcm):
-	Move local variable decls to point of first use.
-
-	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP):
-	Avoid control-reaches-end-of-non-void-function warning.
-
-	* pt-const.cc (tree_constant::dup): Avoid unused parameter warning.
-
-	* pr-output.cc (set_real_format, set_real_matrix_format,
-	set_complex_format, set_complex_matrix_format):
-	Delete unused arg, SIGN.  Change uses.
-
-	* oct-map.cc (Octave_map::Octave_map): Avoid shadow warning.
-
-	* load-save.cc (write_header): Use reinterpret_cast to avoid
-	old-style cast warning.
-
-	* data.cc (do_permute): Delete unused arg, FNAME.  Change all uses.
-
-	* sysdep.cc (w32_set_octave_home, w32_set_quiet_shutdown,
-	MINGW_signal_cleanup):
-	Only define if defined (__WIN32__) && !	defined (_POSIX_VERSION).
-
-2007-10-04  Jason Riedy  <jason@acm.org>
-
-	* ls-mat5.cc (read_mat5_binary_data): Map miUTF16 to miUINT16,
-	miUTF32 to miUINT32.  The matfile format currently states that
-	wide UTF formats are in the same byte order as the integers.
-	(read_mat5_binary_element): Replace all UTF16 and UTF32
-	characters with the high bit set (value >127) by '?' and warn
-	that we've done so.
-
-2007-10-04  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* sysdep.cc (w32_set_octave_home): Base OCTAVE_HOME location on
-	octinterp, not the main exe.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fnorm): New function.
-	(F__vnorm__): Delete.
-
-2007-10-03  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* DLD-FUNCTIONS/typecast.cc: Include <algorithm>.
-
-2007-10-03  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::Octave_map (const dim_vector&,
-	const string_vector&)): Delete.
-	(Octave_map::Octave_map (const dim_vector&, const Cell&)):
-	New function.
-	* ov-struct.cc (Fstruct): Allow creation of empty struct arrays
-	with field names.
-
-2007-10-01  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc ((color_property::color_property (const
-	octave_value& val)): Undo change from 2007-09-26
-	(patch::properties::properties): use the "a" modifier to
-	face_color & edge_color properties
-	(patch::properties::set): Undo change from 2007-09-26
-	* graphics.h.in	(color_property::color_property
-	(const octave_value& val)): Undo change from 2007-09-26
-
-2007-10-01  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* octave.cc (octave_main): Add "--line-editing" option to force
-	readline line editing.
-
-2007-09-28  David Bateman  <dbateman@free.fr>
-
-	* ov-range.h (int8_array_value, int16_array_value, int32_array_value,
-	int64_array_value, uint8_array_value, uint16_array_value,
-	int32_array_value, uint64_array_value): New methods
-
-2007-09-28  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.h.in (color_property::colormap_property (const Matrix&)):
-	Use floating point math in calculation of colormap.
-
-2007-09-26  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (color_values::str2rgb): accept upper, lower and
-	mixed-case versions of the string representing the color. Allow
-	black defined as "k" and white as "w".
-	(color_property::color_property (const octave_value& val,
-	const radio_values &v)): Modify the constructor to also take a
-	radio_values argument. Use it.
-	(patch::properties::set): Change set_facecolor calls to initialize
-	the color_property argument with the available radio_values.
-	* graphics.h.in (color_property::color_property
-	(const octave_value& val, const radio_values &v)): Also pass a
-	radio_values argument.
-
-	* ov-range.h (sparse_matrix_value, sparse_complex_matrix_value):
-	New methods.
-
-	* mk-pkg-add: Simplfy the autoload commands.
-	* parse.y (Fautoload): Allow bare filename if file is in the same
-	directory as the script from where the autoload command is run.
-
-2007-09-25  Matthias Drochner  <m.drochner@fz-juelich.de>
-
-	* syscalls.cc (Fpopen2): Doc fix.
-	Use "sort -r" instead of "sort -nr" in test.
-
-2007-09-18  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (input_event_hook, Finput_event_hook): Call
-	command_editor::add_event_hook and
-	command_editor::remove_event_hook intstead of
-	command_editor::set_event_hook and
-	command_editor::restore_event_hook.
-
-2007-09-17  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.14+.
-
-2007-09-17  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.14.
-	(OCTAVE_API_VERSION): Now api-v26.
-	(OCTAVE_RELEASE_DATE): Now 2007-09-17.
-
-	* Makefile.in (DISTFILES): Add genprops.awk to the list.
-
-	* ov-typeinfo.h (cat_op_fcn): Third arg in function pointer
-	typedef is now Array<octave_idx_type> instead of Array<int>.
-
-	* file-io.cc (do_stream_open): Use binary mode by default.
-
-2007-09-14  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* genprop.awk: Handle "a" modifier.
-
-2007-09-14  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.h.in (radio_values::contains): New function.
-	(radio_values::validate): Use it.
-	* graphics.cc (color_property::operator =): Call it instead of
-	validate here.
-
-2007-09-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (glpk): Pass LPX_FX, not LB_DB, to
-	lpx_set_col_bnds when lb[i] == ub[i].
-	From: Zhi Wang <zcwang@umich.edu>.
-
-	* graphics.h.in (colormap_property::colormap_property):
-	Use jet colormap as default.
-
-2007-09-12  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (text::properties::properties): Default color is
-	black, not white.
-	* graphics.h (text::properties::color): Declare as color_property,
-	not octave_value.
-
-	* graphics.h.in (root_figure::defaults, figure::defaults,
-	axes::defaults, line::defaults, text::defaults, image::defaults,
-	patch::defaults, surface::defaults): New functions.
-	* gripes.cc (gripe_not_implemented): New function.
-	* gripes.h: Provide decl.
-
-2007-09-10  John W. Eaton  <jwe@octave.org>
-
-	* genprops.awk: Add missing newline character at end of file.
-	From Alexander Klimov <alserkli@inbox.ru>.
-
-2007-09-10  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): Avoid invalid indexing into ra_idx vector.
-
-2007-09-06  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/__delaunay__.cc, DLD-FUNCRIONS/__voronoi__.cc,
-	DLD-FUNCTIONS/convhulln.cc: Avoid variables in global scope
-
-2007-09-06  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (stamp-prereq): Add graphics.h to the dependency list.
-
-2007-08-31  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (INCLUDES): Remove graphics.h from the list.
-	(DISTFILES): Include graphics.h.in in the list.
-	(genprops.awk): New file.
-	(graphics.h): New rule.
-	(distclean): Remove graphics.h.
-	* graphics.h.in: New file, from graphics.h.
-	(graphics_handle): Now a class instead of typedef.  Adapt all uses.
-	(OCTAVE_GRAPHICS_PROPERTY_INTERNAL, OCTAVE_GRAPHICS_PROPERTY,
-	OCTAVE_GRAPHICS_MUTABLE_PROPERTY): Delete macros.
-	(class root_figure, class figure, class axes, class line, class
-	text, class image, class patch, class surface): Use genprops.awk
-	to generate property declarations and set/get functions.
-	* graphics.h: Delete.
-	* graphics.cc (nan_to_empty, empty_to_nan): Delete.
-	(root_figure::properties::set, figure::properties::set,
-	axes::properties::set, line::properties::set,
-	text::properties::set, image::properties::set,
-	patch::properties::set, surface::properties::set): Call
-	type-specific set functions to set properties.
-	(root_figure::properties::set_currentfigure,
-	figure::properties::set_currentaxes, figure::properties::set_visible,
-	axes::properties::get_title, axes::properties::get_xlabel,
-	axes::properties::get_ylabel,  axes::properties::get_zlabel,
-	axes::properties::set_title, axes::properties::set_xlabel,
-	axes::properties::set_ylabel,  axes::properties::set_zlabel):
-	Define custom versions.
-
-2007-09-06  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/bsxfun.cc: New function.
-	* DLD-FUNCTIONS/typecast.cc: New function.
-	* Makefile.in (DLD_XSRC): Add bsxfun.cc and typecast.cc.
-	* ov.cc (do_cat_op): Modify use of Array<int> to
-	Array<octave_idx_type> and adjust where necessary.
-	* ov.h (do_cat_op): ditto.
-	* data.cc (do_cat): ditto.
-	* pt-mat.cc (tree_matrix::rvalue): ditto.
-
-2007-09-05  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* oct-stream.cc (octave_base_stream::do_printf): Ignore precision
-	portion of format string if printing Inf, NaN, or NA values.
-
-2007-09-05  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort_sparse, mx_sort_sparse_indexed):
-	New template classes for sparse sort functions.
-	(Fsort): Use them.
-	* ov.h (octave_value (const Sparse<double>&, const MatrixType&),
-	octave_value (const Sparse<Complex>&, const MatrixType&)): New
-	constructors.
-	* ov.cc (octave_value::octave_value (const Sparse<double>&,
-	const MatrixType&), octave_value::octave_value (const
-	Sparse<Complex>&, const MatrixType&)): Define them.
-	* ov-re-sparse.h (octave_sparse_matrix (const MSparse<double>&,
-	const MatrixType&), octave_sparse_matrix (const Sparse<double>&),
-	octave_sparse_matrix (const Sparse<double>&, const MatrixType&)):
-	New constructors.
-	* ov-cx-sparse.h (octave_sparse_complex_matrix (const MSparse<double>&,
-	const MatrixType&), octave_sparse_complex_matrix (const
-	Sparse<double>&), octave_sparse_complex_matrix (const
-	Sparse<double>&, const MatrixType&)): ditto.
-
-2007-09-04  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Use Wact(j) == i - n_eq when
-	checking for blocking constraint.  Don't resize lambda_tmp.  Only
-	compute Y = Aact.pseudo_inverse () if it is needed.
-
-2007-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* ls-mat-ascii.cc (get_lines_and_columns): Check beg variable for
-	NPOS to avoid segmentation fault.
-
-	* load-path.cc (load_path::do_find_file): Do not assume paths
-	use forward slashes.
-
-2007-08-30  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (Fpause): Doc fix.
-
-2007-08-30  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Resize Wact to n_act-neq, not n_act.
-
-2007-08-29  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (class root_figure::properties):
-	Rename from root_figure::root_figure_properties.
-	(class figure::properties): Rename from figure::figure_properties.
-	(class axes::properties): Rename from axes::axes_properties.
-	(class line::properties): Rename from line::line_properties.
-	(class text::properties): Rename from text::text_properties.
-	(class image::properties): Rename from image::image_properties.
-	(class patch::properties): Rename from patch::patch_properties.
-	(class surface::properties): Rename from surface::surface_properties.
-
-	* base-list.h (octave_base_list::remove): Implement our own
-	remove_if function here.
-
-2007-08-28  John W. Eaton  <jwe@octave.org>
-
-	* graphics.h (base_properties): Move class definition before
-	definition of base_graphics_object class.  Provide forward
-	declaration of base_graphics_object prior to definition of
-	base_properties.
- 	(base_graphics_object::get_properties): New virtual function.
-	(graphics_object::get_properties, root_figure::get_properties,
-	figure::get_properties, axes::get_properties,
-	line::get_properties, text::get_properties, image::get_properties,
-	patch::get_properties, surface::get_properties): New functions.
-	(root_figure::properties, figure::properties, axes::properties,
-	line::properties, text::properties, image::properties,
-	patch::properties, surface::properties): Data member now private.
-
-2007-08-27  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_file): Also files with non
-	rooted relative names.
-	* load-save.cc (find_file_to_load): Likewise.  Also handle
-	appending .mat to files with relative names.
-
-	* graphics.cc (base_properties::mark_modified,
-	base_properties::override_defaults,
-	base_properties::delete_children, figure::get_default,
-	axes::get_default): Move definitions here, from graphics.h.
-	* graphics.h (class gh_manager): Move decl to end of file.
-
-	* Cell.h (Cell::Cell (const octave_value_list&)): Create row
-	vector instead of column vector.
-
-	* pt-idx.cc (tree_index_expression::lvalue): Handle [x.a] =
-	... style assignments.
-	* ov-struct.cc (octave_struct::subsasgn): Handle case of RHS as
-	comma-separated list.
-
-	* ov-cell.cc (gripe_failed_assignment): New function.
-	(octave_cell::subsasgn): Call gripe_failed_assignment if assign
-	methods fail.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* symtab.cc (void symbol_table::clear (void)): If the record in
-	the symbol table to clear is a user function that is a sub
-	function with a static parent or if the parent is the current
-	parent function, don't delete the record.
-	(void symbol_table::clear_functions (void)): ditto.
-	(void symbol_table::clear (const std::string&)): ditto.
-	(void symbol_table::clear_function (const std::string&)): ditto.
-
-	* graphics.h (class text): Add property color.
-	* graphics.cc (text::text_properties::text_properties) ditto.
-	(text::text_properties::set): ditto.
-	(text::text_properties::get): ditto.
-	(text::text_properties::factory_defaults): ditto.
-
-2007-08-24  John W. Eaton  <jwe@octave.org>
-
-	* mappers.cc (dummyp): New function.
-	(install_mapper_functions): Use it to handle character data in
-	finite, isinf, isna, and isnan functions.
-
-	* load-path.cc (load_path::do_remove): Call remove_hook function
-	before removing directory from list.
-
-2007-08-24  David Bateman  <dbateman@free.fr>
-
-	* ov-bool-sparse.cc (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Class
-	is now logical.
-	* ov-re-sparse.cc, ov-cx-sparse.cc
-	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Class is now double.
-	* ov-mapper.cc (octave_mapper::apply): Use is_sparse_type method
-	rather than comparing class name.
-	* ls-mat5.cc (save_mat5_element_length, save_mat5_binary_element):
-	ditto.
-	* pt-mat.cc (tree_matrix:rvalue): sparse matrices are now of class
-	"double" or "logical", create new single type concat clause for
-	them.
-	* mex.cc (get_class_id): No longer need to special case sparse
-	matrices.
-
-	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/convhulln.cc,
-	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/__voronoi__.cc: New
-	functions ported from octave-forge.
-	* DLD-FUCTIONS/__dsearchn__.cc: New file.
-	* DLD-FUNCTIONS/__voronoi__.cc: Return point at infinity and
-	include it in the polygrons of the Voronoi diagram for
-	compatibility.
-	* Makefile.in: Add specific build targets for __delanayn__.cc,
-	convhulln.cc and __voronoi__.cc to link to Qhull.
-	(DLD_SRC): Add new functions.
-	(OCTAVE_LIBS): Add QHULL_LIBS
-
-2007-08-22  David Bateman  <dbateman@free.fr>
-
-	* variables.cc (Fmunlock): Call munlock and not mlock.
-	* symtab.cc (symbol_record::mark_as_formal_parameter): Typo.
-
-2007-08-10  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.cc (tree_index_expression::get_struct_index): Improve
-	error message.
-	* ov-struct.cc (Fstruct, Fcell2struct): Trap invalid field names here.
-
-2007-08-10  Peter A. Gustafson  <petegus@umich.edu>
-
-	* graphics.h, graphics.cc (axes::axes_properties): New properties,
-	xaxislocation and yaxislocation.
-
-2007-08-10  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.cc, graphics.h (patch): New class.
-	(axes::axes_properties): New properties, clim and climmode.
-	(surface::surface_properties::surface_properties): Handle patch.
-	(F__go_patch__): New function.
-
-2007-07-30  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_number::mxArray_number (int, const char **)):
-	First arg is now mwSize.
-	(max_str_len): Return mwSize value, not int.
-	* mxarray.h.in (mxArray::mxArray (int, const char **)):
-	First arg is now mwSize.
-	(mxArray::mxArray (mxClassID, mwSize, mwSize, int, mxComplexity)):
-	Third arg is now mwSize.
-	(mxArray::get_string (char *, int)): Second arg is now mwSize.
-
-2007-07-26  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc: Include glpk/glpk.h if
-	HAVE_GLPK_GLPK_H is defined.
-
-2007-07-26  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (Frats): Return character array with same number of
-	rows as original value.
-
-2007-07-26  John W. Eaton  <jwe@octave.org>
-
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Rename cur_fcn to xfcn.
-
-	* version.h (OCTAVE_VERSION): Now 2.9.13+.
-
-2007-07-25  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.13
-	(OCTAVE_API_VERSION): Now api-v25.
-	(OCTAVE_RELEASE_DATE): Now 2007-07-25.
-
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Rename fcn to curr_fcn.
-
-2007-07-25  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: 	Adjust DISTFILES to allow out of tree "make dist"
-	to work.
-
-2007-07-24  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (color_property::operator = (const octave_value&)):
-	New method.
-	* graphics.h: Provide decl.
-
-2007-07-24  Rafael Laboissiere  <rafael@debian.org>
-
-	* oct-conf.h.in (OCTAVE_CONF_RUNTEST): Delete definition.
-	* toplevel.cc (Foctave_config_info): Remove RUNTEST from struct.
-
-2007-07-23  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (rat_format, rat_string_len): Global variable
-	controlling behavior of rational approximation. Use throughout.
-	(class pr_rational_float): New class for rational approximation of
-	floats, specifically with the << operator defined.
-	(std::ostream& operator << (std::ostream&, const
-	pr_rational_float&)): Operator to print rational approximations of
-	double values.
-	(std::string rational_approx (double, int)): Function to convert a
-	double value to a string of maximum length giving the rational
-	approximation.
-	(pr_any_float): Include the output of rational approximations.
-	(Fformat): Add the "rat" format as an option.
-	(Frats): New function.
-
-2007-07-23  Aquil H. Abdullah  <aquil.abdullah@gmail.com>
-
-	* mex.cc (mxCreateStructArray): Declare second arg as const.
-	* mexproto.h (mxCreateStructArray): Ditto.
-
-2007-07-20  David Bateman  <dbateman@free.fr>
-
-	* zfstream.cc (BUFSIZE): Increase default buffer size to 256kB
-	(gzfilebuf::underflow): Stash the last 16 characters read, so as
-	to avoid calling pbackfail as much as possible.
-
-2007-07-18  David Bateman  <dbateman@free.fr>
-
-	 * zfstream.cc (int_type gzfilebuf::pbackfail (int_type)): New
-	 method to putback a character when the putback position in the
-	 internal buffer doesn't exist.
-	 * zfstream.h (int_type pbackfail (int_type)): Declaration it.
-
-2007-07-14  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix:load_hdf5):
-	Use OCTAVE_LOCAL_BUFFER for temporary boolean value.
-
-2007-06-27  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sparse.cc (Fspdiag): Ensure spdiag(zeros(1,0)) returns
-	0x0 matrix. Doc update.
-	* data.cc (Fdiag): Doc update.
-
-2007-06-28  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::subsasgn): Given x = {}, convert to
-	struct for assignments like x(1).f = val;
-
-	* oct-stream.cc (octave_scan_1): New function
-	(octave_scan): Use it.  Handle fmt.width.
-
-	* graphics.h (axes::axes_properties::visible): New data member.
-	* graphics.cc (axes::axes_properties::axes_properties,
-	axes::axes_properties::set, axes::axes_properties::get,
-	axes::axes_properties::factory_defaults): Handle visible property.
-
-2007-06-27  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.h (color_values::color_values): Arg is now std:string
-	instead of char.  Call str2rgb, not c2rgb.
-	* graphics.h, graphics.cc: (color_values::str2rgb): Rename from
-	c2rgb.  Handle long color names, not just single char abbreviations.
-
-2007-06-27  David Bateman  <dbateman@free.fr>
-
-	* load-save.cc (Fsave): Ensure header is written for non
-	existent file with "-append".
-	* ls-hdf5.h: First steps towards having append work for hdf5.
-
-2007-06-26  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (Fsave): Open files correctly for -append.
-	Don't write file headers if appending.  Error for -append -hdf5.
-
-2007-06-25  Olaf Till  <i7tiol@t-online.de>
-
-	* oct-stream.h (octave_stream_list::list): Use std::map.
-	(octave_stream_list::curr_len): Delete data member.
-	(octave_stream_list::octave_stream_list): Fix initializations.
-
-	* oct-stream.cc (octave_steam_list::do_insert,
-	octave_steam_list::do_lookup, octave_steam_list::do_remove,
-	octave_steam_list::do_clear, octave_steam_list::do_list_open_files,
-	octave_steam_list::do_open_file_numbers,
-	octave_steam_list::do_get_file_number):
- 	Use new octave_stream_list::list type.
-	(octave_stream_list::do_insert): Insert octave_stream with key
-	corresponding to file-descriptor.
-	(octave_stream_list::do_insert, octave_steam_list::insert):
-	Remove const qualifier of argument.
-
-2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
-
-	* DLD-FUNCTIONS/__lin_interpn__.cc: Replace octave_NaN with octave_NA.
-
-2007-06-15  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h (OCTAVE_GRAPHICS_PROPERTY_INTERNAL,
-	OCTAVE_GRAPHICS_PROPERTY, OCTAVE_GRAPHICS_MUTABLE_PROPERTY):
-	New macros. Use them to declare individual properties and define
-	accessor methods for each property in the property classes.
-
-2007-06-15  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.cc (Fget, Fset): Handle vectors of handles.
-
-2007-06-14  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (octave_popen, octave_pclose): New functions.
-	* sysdep.h: Provide decls.
-
-	* oct-procbuf.cc (procbuf::open): Use octave_popen.
-	(procbuf::close): Use octave_pclose.
-	* oct-prcstrm.cc (octave_oprocstream::octave_oprocstream,
-	octave_iprocstream::ictave_oprocstream): Likewise.
-
-	* graphics.h (text::text_properties::rotation): New data member.
-	* graphics.cc (text::text_properties::text_properties,
-	text::text_properties::set, text::text_properties::get,
-	text::text_properties::factory_defaults): Handle rotation property.
-
-2007-06-14  Kai Habel  <kai.habel@gmx.de>
-
-	* graphics.cc (color_values::c2rgb): Also accept 'k' for black.
-
-2007-06-14  David Bateman  <dbateman@free.fr>
-
-	* ov-ch-mat.h (idx_vector index_vector (void) const): Remove
-	definition.
-	* ov-ch-mat.cc (idx_vector index_vector (void) const): Move it
-	here. Special case ":" case for compatibility.
-
-2007-06-13  John W. Eaton  <jwe@octave.org>
-
-	* ov-re-mat.cc (octave_matrix::load_ascii):
-	Do a better job of handling read errors and empty matrices.
-	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Likewise.
-	* ov-bool-mat.cc (octave_bool_matrix::load_ascii): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::load_ascii): Likewise.
-
-2007-06-13  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): Don't treat as single
-	argument if arg2 is empty and nargin=2.
-
-2007-06-13  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.h, graphics.cc: Move class declarations to graphics.h.
-	Move larger functions outside of class declarations in graphics.cc.
-
-2007-06-12  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* DLD-FUNCTIONS/cellfun.cc: Use fullfile to generate filenames
-	instead of assuming / will work as directory separator.
-
-2007-06-12  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/interpn.cc: Remove it.
-	* DLD-FUNCTIONS/__lin_interpn__.cc: Move it. This is now a support
-	function of interpn.m.
-	* Makefile.in (DLD_XSRC): Remove interpn.cc and add __lin_interpn__.cc.
-
-2007-06-07  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-handles.cc (octave_fcn_handle::save_hdf5): More care that
-	all open HDF5 descriptors are closed.
-	(octave_fcn_handle::load_hdf5): Ditto.
-
-2007-06-06  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* utils.cc [__MINGW32__]: Don't define HAVE_C99_VSNPRINTF.
-
-2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* defaults.h.in, ls-hdf5.h, ov-complex.h, ov-cx-mat.h, ov-intx.h,
-	sysdep.h: Sprinkle with OCTINTERP_API as needed.
-
-2007-06-05  John W. Eaton  <jwe@octave.org>
-
-	* help.h (raw_help): Tag with OCTINTERP_API.
-
-	* Makefile.in (INCLUDES): Remove mxarray.h from the list so that
-	it is not distributed.
-	(EXTRAS): Add mxarray.h to the list so that it is installed.
-
-	* sysdep.cc (same_file_internal) [OCTAVE_USE_WINDOWS_API]:
-	Avoid leaking file handles.
-
-2007-05-08 Michael Weitzel  <michael.weitzel@uni-siegen.de>
-
-	* DLD-FUNCTIONS/symrcm.cc: Fix for queuing error that might cause
-	an infinite loop.
-
-2007-06-04  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fislogical): Rename from Fisbool.
-	Make isbool an alias for islogical.
-
-2007-06-03  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (DISTFILES): Add mxarray.h.in
-	(install-inc): Modify target so that mxarray.h is installed
-	correctly.
-	(distclean): Remove mxarray.h on distclean.
-	* mex.cc: Use mwSize for dimensions and mwIndex for indexing
-	throughout, with the exception of struct key indexes.
-	* mexproto.h: ditto.
-	* mxarray.h: remove.
-	* mxarray.h.in: Copy here and define mwSize, mwIndex, and use
-	throughout.
-	* ov-bool-mat.cc (octave_bool_matrix::as_mxArray): Use mwSize and
-	mwIndex.
-	* ov-bool-sparse (octave_sparse_bool_matrix::as_mxArray): ditto.
-	* ov-cell.cc (octave_cell:as_mxArray): ditto.
-	* ov-ch-mat.cc (octave_char_matrix:as_mxArray): ditto.
-	* ov-cx-mat.cc (octave_complex_matrix::as_mxArray): ditto.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::as_mxArray): ditto.
-	* ov-int.h (as_mxArray): ditto.
-	* ov-range.cc (octave_range:as_mxArray): ditto.
-	* ov-re-mat.cc (octave_matrix:as_mxArray): ditto.
-	* ov-re-sparse.cc (octave_sparse_matrix::as_mxArray): ditto.
-	* ov-struct.cc (octave_struct::as_mxArray): ditto.
-
-2007-06-02  David Bateman  <dbateman@free.fr>
-
-	* graphics.cc (color_property class): g++ doesn't like anonymous
-	enums. Give type to color_type enum.
-
-2007-05-31  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (radio_values, radio_property, color_values):
-	New classes.
-	(color_property class): Handle both color and radio values.
-
-2007-05-31  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (main_loop): Improve bad_alloc error message.
-
-	* octave.cc (execute_command_line_file, execute_eval_option_code):
-	Likewise.
-
-2007-05-31  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* toplev.cc (octave_atexit_functions):
-	Now std::list instead of std::stack.
-	(do_octave_atexit): Adapte to octave_atexit_functions as list.
-	(Fatexit): Allow second arg of false to remove element from list.
-
-	* DLD-FUNCTIONS/symrcm.cc: Use ! instead of "not".
-
-	* sysdep.cc (same_file_internal) [OCTAVE_USE_WINDOWS_API]:
-	Use INVALID_HANDLE_VALUE, not INVALID_FILE_HANDLE.
-
-2007-05-28  G. D. McBain  <geordie_mcbain@yahoo.com.au>
-
-	* ov-list.cc (append): Doc fix.
-
-2007-05-28  John W. Eaton  <jwe@octave.org>
-
-	* pt-loop.cc (DO_ND_LOOP): Avoid parser problem with obsolete g++.
-
-2007-05-23  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.12+.
-
-2007-05-23  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.12.
-	(OCTAVE_RELEASE_DATE): Now 2007-05-23.
-
-	* parse.y (make_anon_fcn_handle): Don't build assignment expression.
-	* ov-fcn-handle.cc (octave_fcn_handle::print_raw):
-	Don't split assignment expression.
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Special case for inline function body evaluation.
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
-	Set current function as parent of anonymous function handle.
-
-	* Makefile.in (uninstall): Also remove
-	$(DESTDIR)$(octincludedir)/octave, $(DESTDIR)$(octincludedir),
-	$(DESTDIR)$(octlibdir), and $(DESTDIR)$(octfiledir).
-
-2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* debug.cc, error.cc, load-save.cc, oct-hist.cc, sighandlers.cc,
-	symtab.cc: Fix typos.
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.11+.
-
-2007-05-22  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.11.
-	(OCTAVE_API_VERSION): Now api-v24.
-	(OCTAVE_RELEASE_DATE): Now 2007-05-22.
-
-2007-05-21  David Bateman  <dbateman@free.fr>
-
-	* debug.cc (Fdbstop): handle integer, vector and multiple line
-	arguments.
-	(Fdbclar): ditto. Eliminate extraneous debugging messages.
-
-2007-05-21  S�ren Hauberg  <hauberg@gmail.com>
-
-	* load-path.cc (Fpath, Frehash): Replace "LOADPATH" with "load
-	path" in doc strings.
-
-	* parse.y (Feval): Add example.
-
-2007-05-21  David Bateman  <dbateman@free.fr>
-
-	* error.cc (rethrow_error): Use NULL name so that "error:" is not
-	added to the message
-	(Frethrow): Correctly treat empty stack.
-
-2007-05-21  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.h (Octave_map::numel): Return number of array elements,
-	not number of map elements.
-	(Octave_map::nfields): Rename from length.
-	(Octave_map::empty): Delete.
-	Change all uses of empty to check nfields () == 0 instead.
-
-2007-05-21  S�ren Hauberg  <soren@hauberg.org>
-
-	* help.cc (Fautoload): Doc fix.
-	* variables.cc (Fiscommand): Doc fix.
-
-2007-05-19  David Bateman  <dbatemna@free.fr>
-
-	* ov-fcn-inline.cc (Fvectorize): Doc fix.
-
-2007-05-16  S�ren Hauberg  <soren@hauberg.org>
-
-	* ov.cc (Fsubsref, Fsubsasgn): Doc fix.
-
-2007-05-16  John W. Eaton  <jwe@octave.org>
-
-	* load-path.h (load_path::sys_path): New static data member.
-	(load_path::system_path): New static function.
-	(load_path::do_system_path): New function.
-	* load-path.cc (Vsystem_path): Delete.
-	(load_path::do_initialize): Use sys_path, not Vsystem_path.
-	(Fpathdef): Call load_path::system_path instead of using Vsystem_path.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
-
-2007-05-16  David Bateman  <dbateman@free.fr>
-
-	* load_pathc.cc (std::string octave_system_path (void)): New
-	function.
-	* load-path.h (std::string octave_system_path (void)): Declare it.
-
-	* load-save.cc (static load_save_format get_file_format
-	(std::istream&, const std::string&)): Add filename argument, and
-	pass it to read_mat5_binary_header. Use new format throughout file.
-	(Fload): Don't allow gzip of matlab v7 files as the files
-	themselves include compression.
-
-	* ls-mat5.cc (arrayclsstype:MAT_FILE_WORKSPACE_CLASS): New class
-	type.
-	(read_mat5_binary_element): Workspaces, don't have dimensions, so
-	don't read them. Implement read of matlab objects, but only use
-	them for inline functions. Implement reading of function and
-	workspace classes.
-	(read_mat5_binary_header): Add filename argument. Read sub-system
-	specific data block given as an offset in bytes 117 to 124.
-	(save_mat5_binary_element): Include saving of inline functions.
-
-	* ls-mat5.h (read_mat5_binary_header): Include filename.
-
-	* ov-fcn-handle.cc (octave_fcn_handle_save_ascii,
-	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
-	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
-	octave_fcn_handle::load_hdf5): Save and reload the local symbol
-	table of the user function associated with anonymous function
-	handles. Save and load the absolute path and the exec_prefix for
-	normal function handles and use then to find equivalent functions
-	between different installations of Octave. Attempt to maintain
-	backward and forward compatibility.
-	(Ffunctions): Additional outputs, including the workspace of
-	anonymous functions, and more compatiable outputs.
-
-	* ov-fcn-handle.h (user_function_value): Expose the user function
-	value of a function handle.
-
-	* ov-fcn-inline.cc (Octave_map octave_fcn_inline::map_value
-	(void) const): Return a structure compatiable with matlab's class
-	implementation of inline functions.
-
-	* ov-fcn-inline.h (map_value): Declare it.
-
-2007-05-14  Bob Weigel  <rweigel@gmu.edu>
-
-	* DLD-FUNCTIONS/svd.cc: Doc fix.
-
-2007-05-14  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* DLD-FUNCTIONS/fft.cc (do_fft): Handle empty matrices.  New tests.
-
-2007-05-14  S�ren Hauberg  <soren@hauberg.org>
-
-	* toplev.cc (Fatexit): Simplify example in doc string.
-	* help.cc (Flookfor): Doc fix.
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
-	Reformat to avoid long lines in doc string example.
-
-2007-05-13  S�ren Hauberg  <soren@hauberg.org>
-
-	* toplev.cc (Fquit): Doc fix.
-	* help.cc (Fhelp): Doc fix.
-	* oct-hist.cc (Fsaving_history): Doc fix.
-
-2007-05-11  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_out_of_date):
-	Always check for files that have gone missing.
-
-2007-05-08 Michael Weitzel  <michael.weitzel@uni-siegen.de>
-
-	* DLD-FUNCTIONS/symrcm.cc: New function for Reverse Cuthill-McKee
-	permutation.
-
-2007-05-07  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::resize): Handle case of no keys.
-	(keys_ok): Rename from equiv_keys.  Return value is now status.
-	Pass key names as string_vector reference arg.
-	(Octave_map::assign (const octave_value_list&, const Octave_map&)):
-	Call keys_ok, not equiv_keys.  Handle case of no keys.
-
-2007-04-30  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (%.df : %.cc): Use mv instead of
-	$(simple-move-if-change-rule).
-
-2007-04-30  David Bateman  <dbateman@free.fr>
-
-	* pt-loop.cc (DO_ND_LOOP): New args, CONV and ARG.
-	Use octave_idx_type instead of int for loop counters.
-	Remove redundant assignments to variable "quit" as it is
-	always defined in quit_loop_now.
-	Special case rows = 0 and 1 cases in loops over arrays.
-	Include some of the code that was separate from the macro
-	DO_ND_LOOP in the macro itself
-	(tree_simple_for_command::eval): USE DO_ND_LOOP for all loops.
-	(DO_LOOP): Delete.
-
-2007-04-30  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mex::cleanup): Don't call unmark for elements of the set
-	inside the loop.  From Laurent Mazet <laurent.mazet@motorola.com>.
-
-2007-04-30  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-int-conv.cc: Define sq and dq string conversion
-	operators.  Delete old char_matrix_str conversions.
-	* OPERATORS/op-int-conv.cc (install_int_conv_ops): Install them.
-
-2007-04-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>.
-
-	* octave.cc (execute_startup_files): Call same_file to check for
-	already executed init files.
-
-2007-04-27  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (same_file_internal): New function.  POSIX code
-	from same_file in utils.cc.  Windows code from
-	Benjamin Lindner  <lindnerb@users.sourceforge.net>.
-	Don't canonicalize file names.
-	Also return false if stat calls fail.
-	* sysdep.h: Provide decl.
-	* utils.cc (same_file): Use same_file_internal.
-
-2007-04-27  David Bateman  <dbateman@free.fr>
-
-	* graphic.cc (get_property_form_handle, set_property_in_handle):
-	New functions.
-	* grahics.h: New file.
-	* mex.cc (mexGet, mexSet): use the above to implement mexGet
-	and mexSet.
-	* Makefile.in (INCLUDES): Add graphics.h
-
-2007-04-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Only deal with varargout if ret_list->takes_varargs () is true.
-
-2007-04-26  S�ren Hauberg  <soren@hauberg.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc: Doc fix.
-
-2007-04-26  David Bateman  <dbateman@free.fr>
-
-	* pt-loop.cc (tree_simple_for_command::eval (void)): Correct
-	reshaping of dim_vector in for loop for multi-dimensional array.
-
-2007-04-26  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (find_file_to_load): Only consider regular files.
-
-2007-04-24  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (color_property): Eliminate alpha channel from RGB
-	color spec.
-
-2007-04-23  Shai Ayal  <shaiay@users.sourceforge.net>
-
-	* graphics.cc (color_property::color_property):
-	New arg A for alpha channel.  Set rgba instead of red, green, blue.
-	(color_property::color_property (char)): New constructor.
-	(color_propery::rgba): New data member.
-	(color_property::red, color_property::green, color_property::blue):
-	Delete.
-	(color_property::validate): Use rgba.
-	(color_property::c2rgba): New function.
-
-2007-04-23  S�ren Hauberg  <soren@hauberg.org>
-
-	* data.cc (Fsize_equal): Allow more than two arguments.
-
-2007-04-20  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (deftypefn):
-	(Vautomatic_replot): Delete static variable.
-	(Fautomatic_replot): Delete function.
-
-	* toplev.cc (Fcasesen): Delete obsolete function.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (gnuplot::makeplot): Check
-	whether caller is "splot", not "gsplot".
-
-2007-04-19  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (is_keyword_token): Delete all_va_args_kw switch case.
-	* octave.gperf: Remove all_va_args_kw from the list.
-
-2007-04-19  Daniel J. Sebald  <daniel.sebald@ieee.org>
-
-	* syscalls.cc: Fix popen2 test to stop trying after 100 times
-	throught the loop.
-
-2007-04-16  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* ov-fcn-inline.cc (Fargnames): Doc fix.
-
-2007-04-13  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Doc fix.
-
-2007-04-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DOCSTRINGS): Don't echo commands.
-	(doc-files): Use mv, not $(simple-move-if-change-rule).
-
-	* data.cc (Fnot, Fuplus, Fuminus, Ftranspose, Fctranspose, Fplus,
-	Fminus, Fmtimes, Fmrdivide, Fmpower, Fmldivide, Flt, Fle, Feq,
-	Fge, Fgt, Fne, Ftimes, Frdivide, Fpower, Fldivide, Fand, For):
-	New functions.
-
-2007-04-09  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (line::line_properties::markeredgecolor,
-	line::line_properties::markerfacecolor): New properties.
-
-2007-04-06  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (F__vnorm__): New function.
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::param_list,
-	tree_anon_fcn_handle::cmd_list,	tree_anon_fcn_handle::ret_list,
-	tree_anon_fcn_handle::sym_tab): Delete.  Remove all uses.
-	(tree_anon_fcn_handle::fcn): New data member.
-	(tree_anon_fcn_handle::tree_anon_fcn_handle): Initialize it.
-	(tree_anon_fcn_handle::rvalue, tree_anon_fcn_handle::dup):
-	Extract parameter list, return list, function body, and symbol
-	table from fcn.
-	(tree_anon_fcn_handle::parameter_list, tree_anon_fcn_handle::body):
-	Forward request to fcn.
-
-	* ov-usr-fcn.h (octave_user_function::local_sym_tab): Rename from
-	sym_tab.  Change all uses.
-	(octave_user_function::sym_tab): New function.
-
-	* octave.cc (execute_command_line_file):
-
-2007-04-05  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (Fregexprep): Correct iteration over
-	cell arrays so that the source and pattern are iterated seperately
-	in the same manner as matlab.
-
-2007-04-05  Laurent Mazet  <laurent.mazet@motorola.com>
-
-	* mex.cc (mxArray_octave_value::get_string): Copy nel elements,
-	not buflen elements.
-
-2007-04-05  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (DO_DOUBLE_CONV): New macro.
-	(do_printf): Use it.
-
-2007-04-04  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (octave_yes_or_no): Force interactive_input to use readline.
-
-	* octave.cc (execute_eval_option_code): Catch bad::alloc here.
-
-2007-04-03  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread):
-	Use && for logical, not &.
-
-	* DLD-FUNCTIONS/qr.cc (Fqr): Clarify nargin check.
-
-	* error.cc (Frethrow): Add braces to avoid ambiguous if/else.
-	* oct-stream.cc (octave_scan<>): Likewise.
-	* DLD-FUNCTIONS/colamd.cc (Fetree): Likewise.
-	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Likewise.
-
-	* ov-fcn-handle.cc (make_fcn_handle): Pass ultimate parent
-	function name to lookup_function.
-
-2007-03-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/filter.cc (filter): Fix typo in doc string.
-	From Utkarsh Upadhyay <musically.ut@gmail.com>.
-
-2007-03-28  Rafael Laboissiere  <rafael@debian.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc: Fix #ifdef logic around GLPK_PRE_4_14.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.10+
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.10.
-	(OCTAVE_API_VERSION): Now api-v23.
-	(OCTAVE_RELEASE_DATE): Now 2007-03-27.
-
-	* version.h (OCTAVE_COPYRIGHT): Update for 2007.  Add "and others".
-	(X_OCTAVE_WARRANTY_STATEMENT): Rename from OCTAVE_WARRANTY_STATEMENT.
-	Accept arg.
-	(OCTAVE_WARRANTY_STATEMENT): Define using X_OCTAVE_WARRANTY_STATEMENT.
-	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Define using
-	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY.
-	(X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Rename
-	from OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY.
-	Accept arg and pass to X_OCTAVE_WARRANTY_STATEMENT.
-	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Pass empty
-	arg to X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS.
-	(OCTAVE_STARTUP_MESSAGE): Put info about news last.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (dist, conf-dist): Use ln, not $(LN_S).
-
-2007-03-26  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
-
-	* file-io.cc (do_stream_open) [! HAVE_ZLIB]:
-	Call fopen with mode, not tmode.
-
-2007-03-26  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-str-str.cc (DEFCHARNDBINOP): New macro.  Use it to
-	define functions for eq and ne ops.  Also define lt, le, ge, and
-	gt ops.
-
-2007-03-23  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rand.cc: Make more statistical tests optional.
-
-2007-03-23  John W. Eaton  <jwe@octave.org>
-
-	* bitfcns.cc (Fbitshift): Error if third argument is not a scalar.
-
-2007-03-23  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rand.cc: Make statistical tests optional and
-	add tests for fixed sequences.
-
-2007-03-22  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc (base_graphics_object::mark_modified):
-	New virtual function.
-	(base_properties::__modified__): New data member.
-	(base_properties::base_properties): Initialize it.
-	(graphics_object::mark_modified, base_properties::mark_modified,
-	root_figure::mark_modified, figure::mark_modified,
-	axes::mark_modified, line::mark_modified, text::mark_modified,
-	image::mark_modified, surface::mark_modified,
-	root_figure::root_figure_properties::mark_modified,
-	figure::figure_properties::mark_modified,
-	axes::axes_properties::mark_modified,
-	line::line_properties::mark_modified,
-	text::text_properties::mark_modified,
-	image::image_properties::mark_modified,
-	surface::surface_properties::mark_modified): New functions.
-	(figure::figure_properties::set, figure::figure_properties::get,
-	axes::axes_properties::set, axes::axes_properties::get,
-	line::line_properties::set, line::line_properties::get,
-	text::text_properties::set, text::text_properties::get,
-	image::image_properties::set, image::image_properties::get,
-	surface::surface_properties::set, surface::surface_properties::get):
-	Handle __modified__ property.
-
-	* parse.y (Fautoload): Use warning_with_id.
-
-2007-03-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__qp__.cc (ABS): Delete.  Use std::abs instead.
-	(null): Set elements of retval with magnitudes less than eps to 0.
-
-	* error.cc (Fwarning): Allow setting options with struct.
-	If setting options, return previous state.
-
-	* graphics.cc (axes::axes_properties::set_defaults): Reverse sense
-	of mode test for setting outerposition property.
-	(figure::figure_properties::set): If setting visible property,
-	make this figure the current figure.
-	(gh_manager::figure_handle_list, gh_manager::do_figure_handle_list):
-	New functions.
-	(F__go_figure_handles__): New function.
-
-	* sysdep.cc (Fpause): Also call drawnow if nargin == 0.
-	(Fkbhit, Fsleep, Fusleep): Also call drawnow here.
-
-2007-03-20  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Correct for shape of return
-	matrix for the case of UniformOutput being true.
-
-2007-03-20  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (Fpause): Call drawnow.
-
-2007-03-15  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (F__lock_global__): Delete.
-
-2007-03-14  John W. Eaton  <jwe@octave.org>
-
-	* graphics.cc: New file.
-	* Makefile.in (DIST_SRC): Add it to the list.
-
-2007-03-13  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (do_stream_open): Use binary mode if 't' is not
-	specified in mode, but don't add 'b' if it is already present.
-
-2007-03-09  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat):  Also treat case of all empty matrices.
-
-2007-03-08  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_octave_value::set_dimensions,
-	mxArray_octave_value::set_m, mxArray_octave_value::set_n,
-	mxArray_octave_value::set_class_name,
-	mxArray_octave_value::set_ir, mxArray_octave_value::set_jc,
-	mxArray_octave_value::remove_field,
-	mxArray_octave_value::set_field_by_number):
-	Don't panic; request mutation instead.
-	(class mxArray_octave_value):
-
-	* mxarray.h (mxArray::set_m, mxArray::set_n,
-	mxArray::set_dimensions): Wrap method call call with
-	DO_VOID_MUTABLE_METHOD.
-
-2007-03-08  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): Ignore leading empty matrices.
-
-2007-03-07  Bob Weigel  <rweigel@gmu.edu>
-
-	* urlwrite.cc (urlget): Allow URL redirects.
-
-2007-03-05  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/md5sum.cc (Fmd5sum): Treat both files and strings.
-
-2007-03-05  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Check GLPK_PRE_4_14, not
-	GLPK_PRE_4_15.
-
-2007-03-02  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Fautoload): Undo previous change.
-	Warn if FILE is not an absolute file name.
-
-	* utils.cc (make_absolute): Make copy of arg before
-
-2007-03-01  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-mat.h	(octave_base_matrix::octave_base_matrix (const MT&),
-	(octave_base_matrix::octave_base_matrix (const MT&, const MatrixType&)):
-	Use common definition with default argument value.
-	* ov-base-scalar.h (octave_base_scalar<T>::typ): New data member.
-	Initialize in constructors.
-	(octave_base_scalar<T>::matrix_type): New funtions.
-
-2007-03-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/md5sum.cc: New file.
-	* Makefile.in (DLD_XSRC): Add md5sum.cc
-
-2007-03-01  Olli Saarela  <Olli.Saarela@kcl.fi>
-
-	* input.cc (FPS1): Fix @seealso.
-
-2007-03-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Special case scalar
-	types and always return "Full" matrix type.
-
-2007-02-28  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (interactive_input): Also call flush_octave_stdout
-	after calling drawnow.
-
-2007-02-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (uninstall): Also remove octave-$(version)$(EXEEXT),
-	oct-gperf.h, and all .oct files.  Remove PKG_ADD.
-	From Thomas Treichl <Thomas.Treichl@gmx.net>.
-
-	* load-path.h, (load_path::initialize, load_path::do_initialize):
-	New arg, set_initial_path.
-	* load-path.cc (load_path::do_initialize): Don't add system
-	directories to apth if set_initial_path is false.
-	* octave.cc (set_initial_path): New static variable.
-	(NO_INITIAL_PATH_OPTION): New define.
-	(usage_string): Include --no-initial-path in message.
-	(long_opts): Include no-initial-path/NO_INITIAL_PATH_OPTION here.
-	(octave_main): Handle NO_INITIAL_PATH_OPTION.
-	Pass set_initial_path to load_path::initialize.
-
-	* parse.y (Fautoload): Warn about duplicate entries.  Only insert
-	the first found.
-
-2007-02-27  David Bateman  <dbateman@free.fr>
-
-	* error.cc (Vlast_error_file, Vlast_erro_name, Vlast_error_row,
-	Vlast_error_column): New static variables.
-	(verror): Use them to store the location of last error.
-	(rethrow_error, Frethrow, Flasterror): New functions.
-
-	* DLD-FUNCTIONS/regexp.cc (octcellregexp): Wrapper to octregexp
-	function for cases when string or pattern are cell arrays
-	(Fregexp, Fregexpi): Use them.
-	(octregexprep): New function with functionality of old Fregexprep.
-	(Fregexprep): Treat cell arguments.
-
-2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
-
-	* DLD-FUNCTIONS/getrusage.cc: Undef min after including windows.h.
-
-2007-02-25  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/interpn.cc: Include dNDArray.h, not dMatrix.cc.
-
-	* error.h: Include cstdarg.
-	From Juhani Saastamoinen <juhani@cs.joensuu.fi>.
-
-2007-02-23  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (lookup_function): Don't dereference NULL
-	curr_parent_fucntion pointer.
-	* ov-fcn-handle.cc (make_fcn_handle): Call lookup_function with
-	parent set to empty string if call_stack is empty.
-
-	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Also adjust argument list
-	in calls to functions that are not overloaded.  Call
-	lookup_by_name to find function instead of searching fbi_symtab
-	directly.
-
-	* help.cc (do_which): Return empty string if file not found.
-
-2007-02-22  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_cell::mxArray_cell (const mxArray_cell&),
-	mxArray_struct::mxArray_struct (const mxArray_struct&)):
-	Avoid calling clone on 0 elements.
-
-	* variables.cc (symbol_out_of_date): If checking nested function,
-	look for file using parent function name.  Delete unused
-	variable NAMES.
-
-	* oct-stream.cc (octave_stream::do_gets): If no limit or not
-	at limit, read ahead one character at end of line for compatibility.
-	(octave_stream::gets, octave_stream::getl): Set max_len to -1 if
-	tc_max_len is not defined.
-	* file-io.cc (Ffgets, Ffgetl): If no limit specified, pass
-	undefined octave_value object as max_len in call to
-	octave_stream::gets.
-
-2007-02-21  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mexErrMsgIdAndTxt, mexWarnMsgIdAndTxt): Handle second
-	arg as format and accept variable number of arguments.
-	* mexproto.h: Fix decls.
-
-	* error.h, error.cc (vmessage, vusage, vwarning, verror,
-	vparse_error, vmessage_with_id, vusage_with_id, vwarning_with_id,
-	verror_with_id, vparse_error_with_id): Provide va_list versions of
-	variadic error, warning, and message functions.
-	(message, usage, warning, error, parse_error, message_with_id,
-	usage_with_id, warning_with_id, error_with_id,
-	parse_error_with_id): Call va_list versions.
-
-	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread): Return error
-	code and message instead of throwing error if functionality is
-	missing.
-
-	* oct-obj.h (octave_value_list::splice): Set default for
-	replacement list argument.
-
-2007-02-20  Rafael Laboissiere  <rafael@laboissiere.net>
-
-	* DLD-FUNCTIONS/__glpk__.cc: Adapt code for changes in the GLPK
-	API for version 4.15 or later.
-
-2007-02-20  John W. Eaton  <jwe@octave.org>
-
-	* mxarray.h (mxArray::get_scalar): New function.
-	* mex.cc (mxArray_base::get_scalar): New pure virtual function.
-	(mxArray_octave_value::get_scalar, mxArray_matlab::get_scalar,
-	mxArray_number::get_scalar): New functions.
-	(mxGetScalar): Call get_scalar here.
-
-	* mex.cc (mxArray_octave_value::get_dimensions): Cache ndims here.
-	(mxArray_octave_value::get_number_of_dimensions):
-	Call get_dimensions here to cache both ndims and dims.
-
-2007-02-17  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_out_of_date): Don't exit early if looking
-	at nested function.
-
-2007-02-16  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct): Clear
-	function if original was loaded from relative path and the name
-	can no longer be found in path.  Mark files found from relative
-	path as relative.
-	(clear): Only warn if there is more than one function to clear.
-
-	* variables.cc (symbol_out_of_date): Don't ignore return value in
-	call to octave_env::make_absolute.
-	(symbol_out_of_date): Clear symbol if original was loaded from
-	relative path and name can no longer be found in path.
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
-	Also check whether new file is same as the old file.
-
-	* utils.cc (same_file): Move here from variables.cc.
-	* utils.h: (same_file): Provide decl.
-
-	* parse.y (frob_function): Stash parent function name if parsing
-	nested function.
-
-	* ov-fcn-handle.cc (make_fcn_handle): Pass current function name
-	as parent in call to lookup_function.
-
-	* ov-fcn.h (octave_function::parent_fcn_name): New virtual function.
-
-	* ov-usr-fcn.h (octave_user_function::parent_name): New data member.
-	(octave_user_function::stash_parent_function_name,
-	octave_user_function::parent_function_name): New methods.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Initialize parent_name.
-
-	* variables.h, variables.cc (lookup_function): New arg, parent.
-	If not empty, try this first for lookup.
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): If doing
-	path lookup, check relative status. Pass relative to oct_file_in_path.
-	(octave_dynamic_loader::do_load_mex): Likewise, for mex_file_in_path
-
-	* defun-int.h, defun.cc (install_mex_function): New arg, relative.
-	(install_dld_function): Likewise.
-	(octave_dld_fcn_installer): Likewise.
-	(DEFINE_FUNX_INSTALLER_FUN3): Pass relative to install_dld_function.
-
-	* dynamic-ld.h (octave_dynamic_loader::load_oct,
-	octave_dynamic_loader::load_mex,
-	octave_dynamic_loader::do_load_oct
-	octave_dynamic_loader::do_load_mex): New arg, relative.
-
-	* dirfns.h (Vcurrent_directory): Delete unused variable.
-
-	* variables.cc (symbol_out_of_date): Also compare function time
-	stamp to Vlast_chdir_time if function is from relative lookup.
-
-	* dirfns.cc (Vlast_chdir_time): New variable.
-	(octave_change_to_directory): Update it if chdir succeeds.
-	* dirfns.h (Vlast_chdir_time): Provide decl.
-
-	* ov-fcn.h (octave_function::relative): New data member.
-	(octave_function::mark_relative, octave_function::is_relative):
-	New functions.
-
-	* parse.y (fcn_file_from_relative_lookup): New static variable.
-	(load_fcn_from_file): Note whether function file was found from
-	relative path element.
-	(frob_function): Maybe mark function as relative.
-
-	* parse.y (lookup_autoload): Don't call octave_env::make_absolute
-	on return value.
-	* variables.cc (symbol_out_of_date): Make name absolute after call
-	to lookup_autoload.
-
-	* input.cc (interactive_input): New arg, DEBUG.  Don't call
-	drawnow if debugging.
-	(get_user_input): Pass DEBUG to interactive_input.
-
-2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* syscalls.cc (Fpopen2): New function.
-	(pipe): Modify to return input and output file descriptor
-	seperately rather than in a list.
-
-2007-02-16  Muthiah Annamalai  <muthuspost@gmail.com>
-
-	* debug.cc (Fdbtype): Improve compatibility.
-
-2007-02-16  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (wait_for_input): New function.
-	(run_command_and_return_output): Use it instead of napping.
-
-	* oct-procbuf.h (octave_procbuf::pid): Now const.
-	* procstream.h (procstreambase::pid): Now const.
-	(procstreambase::file_number): New function.
-
-2007-02-15  John W. Eaton  <jwe@octave.org>
-
-	* mxarray.h (mxChar): Use char instead of unsigned short.
-
-	* toplev.cc (Foctave_config_info): Remove
-	OCTAVE_CONF_MKOCTFILE_INCFLAGS and OCTAVE_CONF_MKOCTFILE_LFLAGS
-	from the list.
-	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_INCFLAGS,
-	OCTAVE_CONF_MKOCTFILE_LFLAGS): Don't define.
-	(OCTAVE_CONF_INCLUDEDIR, OCTAVE_CONF_OCTINCLUDEDIR,
-	OCTAVE_CONF_OCTLIBDIR, OCTAVE_CONF_PREFIX): New definitions.
-
-2007-02-14  Alexander Barth  <abarth@marine.usf.edu>
-
-	* DLD-FUNCTIONS/interpn.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2007-02-14  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (interactive_input): Check error_state after call to feval.
-
-2007-02-10  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream::rewind): Call seek (0, SEEK_SET)
-	instead of rep->rewind.
-	(octave_base_stream::rewind): Delete Function.
-	* oct-stream.h (octave_base_stream::rewind): Delete decl.
-
-2007-02-09  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (PAD): Adjust to change in write_mat5_tag.
-	(TAGLENGTH): Delete unused macro.
-
-	* ov-struct.cc (octave_struct::load_ascii,
-	octave_struct::load_binary, octave_struct::load_hdf5):
-	Delete obsolete attempt at backward compatibility.
-
-	* ls-mat5.cc (read_mat5_binary_element): Don't attempt to read
-	fieldnames if there are no fields.
-	(write_mat5_tag): Don't use small data element format if bytes == 0.
-
-	* ls-mat5.cc (read_mat5_binary_element): Always create a structure
-	that is at least 1x1.
-	* ov-struct.cc (octave_struct::load_ascii,
-	octave_struct::load_binary, octave_struct::load_hdf5): Likewise.
-
-2007-02-08  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* DLD-FUNCTIONS/__glpk__.cc: Include glplib.h if glpk.h does not.
-	Provide definitions for lib_set_fault_hook and lib_set_print_hook
-	if they are not defined.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* defaults.cc (subst_octave_home):
-	Only substitute at beginning of string.
-
-	* ls-hdf5.cc (save_hdf5_empty): Use OCTAVE_LOCAL_BUFFER.
-	* ov-bool-mat.cc (octave_bool_matrix::save_hdf5,
-	octave_bool_matrix::load_hdf5): Likewise.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_hdf5,
-	octave_sparse_bool_matrix::load_hdf5): Likewise.
-
-2007-02-07  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* ov-cell.cc (octave_cell::save_hdf5): Correct test for H5Dwrite
-	return value.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* zfstream.cc (gzfilebuf::open_mode): Always append "b" to c_mode.
-
-	* toplev.cc (Foctave_config_info): Use struct for conf_info.
-	Call subst_octave_home on selected values when initializing map.
-	* defaults.cc (subst_octave_home): Now extern.
-	* defaults.h.in: Provide decl.
-
-2007-02-05  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_number::as_octave_value): Fake mxSINGLE_CLASS
-	by returning double-precision values.
-	(mxArray_sparse::as_octave_value): Clarify error message.
-
-	* ov-complex.h (octave_complex): Use std instead of OCTAVE_STD
-	since the latter was unconditionally defined to be std anyway.
-
-2007-02-05  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* ov-complex.h: Tag octave_complex class with OCTINTERP_API.
-
-2007-01-30  John W. Eaton  <jwe@octave.org>
-
-	* Merge of changes from graphics-branch:
-
-	2007-01-26  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__contourc__.cc: New function.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-	2007-01-25  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (Vdrawnow_requested): New static variable.
-	(F__request_drawnow__): New function.
-	(interactive_input): New function.  Update Vlast_prompt_time here.
-	(octave_gets, get_user_input, octave_yes_or_no):
-	Call interactive_input instead of gnu_readline.
-
-	* symtab.h (symbol_record::eternal): New data member.
-	(symbol_record::symbol_record): Initialize it.
-	(symbol_record::make_eternal, symbol_record::is_eternal):
-	Don't forward to symbol_def functions.
-	(symbol_record::symbol_def::make_eternal,
-	symbol_record::symbol_def::is_eternal): Delete.
-	(symbol_record::symbol_def::eternal): Delete data member.
-	(symbol_record::symbol_def::symbol_def): Delete initialization.
-
-	* pt-id.cc (tree_identifier::link_to_global): Include variable
-	name in warning message.
-
-	* variables.cc (F__lock_global__): New function.
-
-	2007-01-11  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (save_ascii_data_for_plotting, save_three_d):
-	Set precision to 6 instead of 4.
-
-2007-01-29  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Don't panic if
-	nargout is greater than 3.
-
-2007-01-24  John W. Eaton  <jwe@octave.org>
-
-	* pt-assgn.cc (former_built_in_variables): New static data.
-	(maybe_warn_former_built_in_variable): New static function.
-	(tree_simple_assignment::tree_simple_assignment,
-	tree_multi_assignment::tree_multi_assignment):
-	Move definition here from pt-assign.h
-	Maybe warn about assignment to obsolete built-in variables.
-
-	* version.h (OCTAVE_STARTUP_MESSAGE): Mention "news" function.
-
-	* pt-stmt.cc (tree_statement::eval): Use dynamic_cast, not
-	static_cast.
-
-	* help.cc (help_from_file): Show .oct or .mex file name if one
-	exists in the same directory as the .m file.
-
-2007-01-23  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* strfns.cc (Fstrncmp): New function.
-
-2007-01-17  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (help_from_file, help_from_symbol_table, help_from_list):
-	Rewrite using raw_ versions.
-
-2007-01-17  David Bateman  <dbateman@free.fr>
-
-	* help.cc (raw_help, raw_help_from_file,
-	raw_help_from_symbol_table, raw_help_from_list): New functions.
-	* help.h (raw_help): Provide decl.
-
-2007-01-16  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__pchip_deriv__.cc: Fix dpchim decl for --enable-64.
-	(F__pchip_deriv__): Fix call to dpchim for --enable-64.
-
-	* DLD-FUNCTIONS/fftw.cc: Delete decl for fftw_planner.
-
-2007-01-11  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* load-path.h (class load_path): Tag with OCTINTERP_API.
-
-	* ls-oct-binary.cc (read_binary_data): Use unsigned char, not
-	char, for reading flags and data types.
-
-2007-01-10  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* parse.y (load_fcn_from_file): Delete unused variable NAMES.
-	If NM is absolute, strip directory and extension parts.
-
-2007-01-10  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* DLD-FUNCTIONS/getrusage.cc: Use #ifdef __WIN32__, not __MINGW32__.
-
-2007-01-10  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (load_fcn_from_file): Only compare last two characters
-	when looking for ".m".
-
-2007-01-06  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_CONFIG_STATEMENT): New macro
-	(OCTAVE_NAME_AND_VERSION): Remove config info.
-	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY):
-	Use OCTAVE_CONFIG_STATEMENT here.
-
-2007-01-05  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (DLD_XSRC): Add fftw.cc and remove fftw_wisdom.cc
-	* DLD-FUNCTIONS/fftw.cc: New file.
-	* DLD-FUNCTIONS/fftw_wisdom.cc: Delete.
-	* defaults.cc (Vfftw_wisdom_program): Delete variable.
-	(set_default_fftw_wisdom_prog): Delete function that sets it.
-	(install_defaults): Delete set_default_fftw_prog from defaults.
-	(Ffftw_wisdom_program): Delete.
-
-2007-01-04  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
-	octave_fcn_handle::load_binary):
-	Throw error if handle can't be created.
-
-2007-01-04  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* mex.cc (mxArray_number::mxArray_number (int, const char **)):
-	Correctly index LHS in assignment.
-
-2007-01-03  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fisinteger): New function.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::is_integer_type,
-	OCTAVE_VALUE_INT_SCALAR_T::is_integer_type): New function.
-	* ov.h (octave_value::is_integer_type): New function.
-	* ov-base.h (octave_base_value::is_integer_type): New virtual function.
-
-2007-01-03  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* toplev.cc (Fsystem): Handle async calls on Windows systems.
-
-2007-01-03  David Bateman  <dbateman@free.fr>
-
-	* (OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
-	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
-	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
-	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc):
-	Modify div and ldiv functions so that scalars stored as sparse
-	matrices are special cased.
-
-	* ov-re-sparse.cc (double_value, complex_value): Scalar can be
-	stored as a sparse matrix and so don't warn on implicit conversion
-	to a scalar.
-	* ov-cx-sparse.cc (double_value, complex_value): ditto.
-	* ov-bool-sparse.cc (double_value, complex_value): ditto.
-
-2007-01-03  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Also check
-	for _mexFunction.
-
-2006-12-30  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-inline.cc: For compatibility, class id is
-	"function_handle", not "inline function".
-
-2006-12-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (%.df : %.cc): Insert a "do not edit" notice in the
-	.df files.
-
-	* mex.cc (mxArray_matlab::get_class_name,
-	mxArray_octave_value::get_class_id): Use "function_handle", not
-	"function handle".
-
-2006-12-14  John W. Eaton  <jwe@octave.org>
-
-	* pt-decl.cc (tree_decl_elt::eval): New function.
-	* pt-decl.h (tree_decl_elt::eval): Provide decl.
-	(tree_decl_elt::is_defined, tree_decl_elt::lvalue_ok,
-	tree_decl_elt::mark_as_formal_parameter, tree_decl_elt::rvalue,
-	tree_decl_elt::lvalue): New functions.
-
-	* pt-misc.h (class tree_parameter_list): Derive from
-	octave_base_list<tree_decl_elt *> instead of
-	octave_base_list<tree_identifier *>.
-	(tree_parameter_list::tree_parameter_list (tree_identifier *)): Delete.
-	(tree_parameter_list::tree_parameter_list (tree_decl_elt *)):
-	New function.
-	* pt-misc.cc (tree_parameter_list::mark_as_formal_parameters,
-	tree_parameter_list::initialize_undefined_elements,
-	tree_parameter_list::undefine, tree_parameter_list::dup,
-	tree_parameter_list::convert_to_const_vector,
-	tree_parameter_list::is_defined): Handle argument list elements
-	as tree_decl_list objects instead of tree_identifier objects.
-	(tree_parameter_list::define_from_arg_vector): Likewise.
-	Always process entire list, setting default values if possible.
-	Accept ":" to mean "use default argument".
-
-	* parse.y (param_list2): Use decl2 to recognize
-	"identifier '=' expression" in addition to "identifier".
-
-	* parse.y (return_list1, make_anon_fcn_handle, finish_function):
-	Adapt to new definition of tree_parameter_list.
-	* pt-bp.cc (tree_breakpoint::visit_parameter_list): Likewise.
-	* pt-check.cc (tree_checker::visit_parameter_list): Likewise.
-	* pt-pr-code.cc (tree_print_code::visit_parameter_list): Likewise.
-
-2006-12-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::array_value,
-	OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
-	OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
-	OCTAVE_VALUE_INT_MATRIX_T::char_array_value):
-	Use fortran_vec to avoid expensive indexing operator.
-
-2006-12-08  David Bateman  <dbateman@free.fr>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::matrix_value,
-	OCTAVE_VALUE_INT_SCALAR_T::complex_matrix_value,
-	OCTAVE_VALUE_INT_MATRIX_T::matrix_value,
-	OCTAVE_VALUE_INT_MATRIX_T::comlex_matrix_value): New functions.
-	(OCTAVE_VALUE_INT_MATRIX_T::array_value,
-	OCTAVE_VALUE_INT_MATRIX_T::comlex_array_value):
-	Use octave_idx_type instead of int for indexing.
-
-2006-12-04  David Bateman  <dbateman@free.fr>
-
-	* xpow.cc (xpow (const Matrix&, double)): Add matrix type probing
-	to matrix inverse.
-	(xpow (const ComplexMatrix&, double)): ditto.
-	* DLD-FUNCTIONS/inv.cc (Finv): Add matrix type probing.
-
-2006-12-06  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc: Include "Cell.h" here.
-	* input.h: Include "oct-obj.h", not "ov-list.h".
-
-2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* mappers.cc (install_mapper_functions): Undefine isascii before
-	the DEFUN_MAPPER for it.
-
-	* input.cc (get_user_input): Prevent out of bounds array access
-	when checking for EOL.
-
-2006-12-05  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (extract_keyword): If no match and looking for
-	more, skip to end of line before trying another match.
-
-	* pt-mat.cc (tm_row_const::empty): New function.
-	(tm_const::init): Don't append anything if tmp tm_row_const object
-	is empty.
-	(tree_matrix::rvalue): Default return value is Matrix().
-	Don't do anything if tmp tm_const object is empty.
-
-	* dirfns.cc (Fmkdir): Fix thinko in previous change.
-
-2006-12-05  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* DLD-FUNCTIONS/rand.cc: Test for Poisson generator with lambda > 1e8.
-
-2006-12-04  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fdata): If ndims is greater than nargout and
-	nargout is greater than 1, then collect size of trailing
-	dimensions into retval(end).
-
-	* load-path.cc (load_path::do_find_fcn): Return empty string if
-	tests fail.
-
-	* ov-base-mat.cc (void octave_base_matrix<MT>::assign (const
-	octave_value_list&, const MT&)): Invalidate matrix type on
-	assignment.
-
-2006-11-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom):
-	Accept "r" or "w" for second argument.
-
-2006-11-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Look in load-path
-	if reading wisdom file, but not if writing.
-
-2006-11-28  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_struct::get_field_by_number):
-	Return 0 if key_num is out of range.
-	(mxArray_struct::set_field_by_number):
-	Do nothing if key_num is out of range.
-	(mxArray_cell::get_cell, mxArray_cell::set_cell):
-	Avoid out-of-bounds indexing
-
-2006-11-28  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* mex.cc (mxArray_matlab::get_n, mxArray_octave_value::get_n):
-	Return product of last N-1 dims.
-
-2006-11-28  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (eat_whitespace): Also handle CRLF as EOL.
-
-	* dirfns.cc (Fmkdir): Handle "mkdir (parent, dir)".
-
-2006-11-21  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (load_path::do_find_file,
-	load_path::do_find_first_of, load_path::do_find_all_first_of):
-	Call rooted_pathname instead of absolute_pathname.
-	* utils.cc (fcn_file_in_path, oct_file_in_path, mex_file_in_path):
-	Likewise.
-
-2006-11-16  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-hist.cc (default_history_file): Instead of appending
-	"/.octave_hist", append directory separator (but only if
-	necessary), then ".octave_hist".
-
-2006-11-16  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fresize): Fix doc string.
-
-2006-11-15  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (write_data, write_inline_data):
-	New functions.
-	(save_in_tmp_file): Use write_data.
-	(gnuplot::send_inline_data, gnuplot_do_send_inline_data):
-	New functions.
-	(F__gnuplot_send_inline_data__, F__gnuplot_save_data__):
-	New functions.
-
-	* ls-oct-ascii.cc (save_ascii_data_for_plotting):
-	Call save_ascii_data with precision = 4.
-	(save_three_d): Temporarily set precision to 4 for output stream.
-
-2006-11-15  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Cell.h (Cell): Tag class with OCTINTERP_API.
-
-2006-11-13  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (maximum_braindamage): Disable
-	Octave:fopen-file-in-path and Octave:load-file-in-path warnings.
-
-	* load-save.cc (find_file_to_load): New function.
-	(Fload): Call find_file_to_load to search load path for file.
-
-	* file-io.cc (Ffopen): Search load path for file.
-
-	* load-path.cc (path::do_find_first_of, path::do_find_file):
-	Break out of all loops once file is found, not just innermost one.
-
-	* data.cc (Fsize_equal): New function.
-
-2006-11-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* ov.cc (check_subsref_elements, Fsubsref, Fsubsasgn):
-	New functions.
-
-	* ov-re-mat.h, ov-scalar.h, pr-output.h:
-	Sprinkle with OCTINTERP_API as needed.
-
-2006-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (parse.cc): Avoid creating empty files.
-	(%.df : %cc, builtins.cc, mkbuiltins, PKG_ADD, DOCSTRINGS,
-	doc-files, gendoc.cc, ops.cc, $(OPT_HANDLERS), oct-errno.cc,
-	oct-gperf.h): Use $(simple-move-if-change-rule) here.
-	(lex.cc, __gnuplot_raw__.cc):
-	Use $(destdir-move-if-change-rule) here.
-	(ifndef omit_deps): Don't include stamp-prereq here.
-	($(DEF_FILES), $(MAKEDEPS)): Also depend on stamp-prereq.
-
-2006-11-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.cc (octave_char_matrix_str::load_ascii,
-	octave_char_matrix_str::load_binary):
-	Use chMatrix as buffer instead of C string.
-
-2006-11-09  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.h (octave_user_function::inline_function):
-	 New data member.
-	(octave_user_function::mark_as_inline_function): Set it.
-	(octave_user_function::is_inline_function): Check it.
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Also skip setting curr_parent_fucntion if evaluating an inline
-	function.
-	(octave_user_function::octave_user_function):
-	 Initialize inline_function.
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
-	Mark user function as inline here.
-
-2006-11-09  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* load-path.cc (load_path::move): Don't use reference to file_info
-	object that will be erased.
-
-2006-11-07  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (file_in_path): Don't unconditionally return "".
-
-	* pager.cc (default_pager): Don't append options here.
-	(pager_command): New function.
-	(do_sync): Use it.
-	(VPAGER_FLAGS): New variable.
-	(FPAGER_FLAGS): New function.
-
-2006-11-06  John W. Eaton  <jwe@octave.org>
-
-	* oct-hist.cc (default_history_file): If env_file is not empty,
-	just accept it rather than checking to see if it exists.
-
-2006-11-03  Bill Denney  <denney@seas.upenn.edu>
-
-	* help.cc (keywords): Document try and unwind_protect.
-
-2006-11-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
-	(DLL_CDEFS): Rename from XTRA_CDEFS.
-	Substitute OCTINTERP_DLL_DEFS, not XTRA_OCTINTERP_DEFS.
-
-2006-11-02  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* sysdep.cc (MSVC_init): Also cal w32_sigint_init and
-	w32_set_quiet_shutdown.
-
-2006-11-01  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::idx_type_value): New function.
-	* data.cc (fill_matrix, Flinspace, Freshape): Use idx_type_value
-	instead of int_value to extract size args.
-
-2006-10-31  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::empty_clone): Return octave_matrix
-	object instead of octave_range.
-
-2006-10-29  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
-
-	* ls-mat5.cc (read_mat5_tag): Declare bytes as int32_t, not just int.
-
-2006-10-28  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (Fatexit): Push function names on the stack even if we
-	don't have atexit or on_exit.
-
-2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* mappers.cc (install_mapper_functions): Undefine toascii before
-	the DEFUN_MAPPER for it.
-
-2006-10-27  John W. Eaton  <jwe@octave.org>
-
-	* mexproto.h: Include oct-dlldefs.h.
-
-	* pr-output.cc (SPECIALIZE_UABS): New macro.
-	Use it to generate specializations of abs for unsigned int types.
-	Instantiate abs for signed int types.
-
-	* load-path.cc (load_path::do_initialize):
-	Use dir_path::path_sep_str instead of ":".
-	Don't append ":::" to xpath when calling do_set.
-
-	* dirfns.cc (Fls, cleanup_iprocstream): Delete.
-
-	* sysdep.cc (Ftilde_expand): If arg is cellstr, return cellstr.
-
-	* ov.h (octave_value::is_cellstr): New function.
-	* ov-base.h (octave_base_value::is_cellstr): New function.
-	* ov-cell.h (octave_cell::is_cellstr): New function.
-	* ov-cell.cc (Fiscellstr): Implement with is_cellstr.
-	* Cell.cc (Cell::Cell (const dim_vector&, const string_vector&, bool)):
-	New constructor.
-	(Cell::is_cellstr): New function.
-	* Cell.h: Provide decls.
-
-	* defaults.cc (subst_octave_home): If dir_sep_char is not '/',
-	replace before returning.
-	From Michael Goffioul <michael.goffioul@swing.be>.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* cutils.c (octave_strcasecmp, octave-strncasecmp):
-	Move to liboctave/lo-cutils.c.
-	* utils.h: Delete decls.
-	* strcasecmp.c: Move to liboctave/strcasecmp.c.
-	* strncase.c: Move to liboctave/strncase.c.
-	* Makefile.in (DIST_SRC): Delete them from the list.
-
-	* bitfcns.cc (bitshift): If A < 0, return -bitshift (-A, N, MASK).
-
-2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* help.cc (display_help_text): Quote sed patterns with ".
-
-	* file-io.cc: Include file-io.h.
-
-	* TEMPLATE-INST/Array-os.cc, TEMPLATE-INST/Array-sym.cc,
-	TEMPLATE-INST/Array-tc.cc, defun-int.h, error.h, file-io.h,
-	gripes.h, ls-oct-ascii.h, mexproto.h, oct-map.h, oct-obj.h,
-	oct-stream.cc, oct-stream.h, octave.h, ov-base.h,
-	ov-bool-sparse.cc, ov-bool-sparse.h, ov-cx-sparse.cc,
-	ov-cx-sparse.h, ov-fcn.h, ov-re-sparse.cc, ov-re-sparse.h,
-	ov-str-mat.h, ov-typeinfo.cc, ov-typeinfo.h, ov.h, pager.h,
-	parse.h, pr-output.cc, pr-output.h, procstream.h, sighandlers.h,
-	symtab.h, unwind-prot.h, utils.h, variables.h:
-	Sprinkle with OCTINTERP_API as needed.
-
-2006-10-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-bool.h (octave_bool::sparse_matrix_value,
-	octave_bool::sparse_complex_matrix_value
-	octave_bool::sparse_bool_matrix_value): New functions.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc: Check defined (RETSIGTYPE_IS_VOID) instead of
-	RETSIGTYPE == void.
-
-	* oct-procbuf.cc (BUFSIZ): Define if not already defined.
-	(octave_procbuf::open): Pass BUFSIZ as size argument to setvbuf.
-
-2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
-
-	* oct-procbuf.cc [_MSC_VER]: Define W32POPEN and W32PCLOSE the
-	same as for __MINGW32__.
-	(octave_procbuf::open, octave_procbuf::close) [_MSC_VER]:
-	Use the same code as for __MINGW32__ and __CYGWIN__.
-
-	* oct-prcstrm.cc [_MSC_VER]: Define popen and pclose.
-
-2006-10-25  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (w32_set_octave_home): Correctly initialize bin_dir.
-	Fill it with '\0' instead of ' '.
-
-2006-10-24  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Filter out $(XTRA_CXXDEFS) from $(ALL_CXXFLAGS) for
-	$(DLD_PICOBJ).
-
-2006-10-24  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.cc (MSC_init): New function.
-	(sysdep_init): Call it.
-	(w32_set_octave_home): New function, based on code from Michael
-	Goffioul <michael.goffioul@swing.be>.
-	(MINGW_init): Call w32_set_octave_home here too.
-
-2006-10-23  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_table::clear_mex_functions): New function.
-	* symtab.h: Provide decl.
-	* vriables.cc (clear_mex_functions): New function.
-	* variables.h Provide decl.
-	* toplev.cc: Call clear_mex_functions instead of delete_symbol_tables.
-
-	* variables.cc (delete_symbol_tables): Delete.
-	* variables.h: Delete decl.
-
-	* mex.cc (mex::unmark_array): New function.
-	(mex::persistent): Define with unmark_array.
-	(maybe_unmark_array): New function.
-	(mxArray_struct::set_field_by_number, mxArray_cell::set_cell):
-	Call maybe_unmark_array on val to avoid freeing val twice on exit
-	from mex function.
-	(mxFree): Call xfree, not free.
-
-2006-10-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-intx.h
-	(OCTAVE_VALUE_INT_MATRIX_T::OCTAVE_TYPE_PREDICATE_FUNCTION,
-	(OCTAVE_VALUE_INT_SCALAR_T::OCTAVE_TYPE_PREDICATE_FUNCTION):
-	Function is now const, so it properly overloads method in base
-	class.
-
-	* mex.cc (mxArray_octave_value::is_uint32):
-	Call val.is_uint32_type, not val.is_int32_type.
-	(mxArray_octave_value::is_uint64):
-	Call val.is_uint64_type, not val.is_int64_type.
-	(mxArray_octave_value::is_uint8):
-	Call val.is_uint8_type, not val.is_int8_type.
-
-2006-10-20  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* ov-mex-fcn.h (octave_mex_function::atexit): New function.
-	(octave_mex_function::exit_fcn_ptr): New data member.
-	* ov-mex-fcn.cc (octave_mex_function::exit_fcn_ptr): New data member.
-	(octave_mex_function::octave_mex_function): Initialize it.
-	(octave_mex_function::~octave_mex_function):
-	If we have an exit function, call it.
-
-2006-10-20  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (delete_symbol_tables): New function.
-	* variables.h: Provide decl.
-	* toplev.cc (do_octave_atexit): Call it.
-
-	* mex.cc (mex::mex): New arg, a pointer to the current mex function.
-	(mex::curr_mex_fcn): New data member.
-	(mex::current_mex_function): New function.
-	(mexAtExit): Set exit function pointer in current mex file object.
-
-2006-10-20  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* mex.cc (enum callstyle): Delete enum definition.
-	(Fortran_mex, C_mex): Delete functions.
-	(call_mex): First arg is now bool.
-	* ov-mex-fcn.cc (call_mex): Fix decl to match new definition.
-	(Fortran_mex, C_mex): Delete decls.
-	(octave_mex_function::do_multi_index_op): Simplify call to call_mex.
-
-2006-10-20  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (handle_identifier): If a command name is found, skip
-	starting command mode if parsing an object index.
-
-2006-10-20  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTION/spqr.cc (dmperm_internal): New function with core
-	of Fdmperm.
-	(Fdmperm): Call dmperm_internal rather then calculating loally.
-	(Fsprank): New function to calculate the strutural rank also using
-	dmperm_internal.
-
-2006-10-19  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::as_mxArrary):
-	Use OCTAVE_LOCAL_BUFFER to allocate tempoarary array of field names.
-
-	* mxarray.h (mxArray::persistent): Delete var and all uses.
-	(mxArray::mark_persistent, mxArray::unmark_persistent,
-	mxArray::is_persistent): Delete functions.
-	* mex.cc (mex::function_name): Use mxArray::strsave, not strsave.
-	(mex::mark_array): New function.
-	(mex::make_value): Use it.
-	(mex::free_value): Return true if we found ptr in arraylist.
-	(mex::persistent (mxArray *)): Remove ptr from arraylist instead
-	of marking it as persistent.
-	(mxArray::malloc): Call ::malloc instead of malloc.
-	(mxArray::calloc): Call ::calloc instead of calloc.
-	(maybe_mark_array): New function.
-	(mxCreateCellArray, mxCreateCellMatrix, mxCreateCharArray,
-	mxCreateCharMatrixFromStrings, mxCreateDoubleMatrix,
-	mxCreateDoubleScalar, mxCreateLogicalArray, mxCreateLogicalMatrix,
-	mxCreateLogicalScalar, mxCreateNumericArray,
-	mxCreateNumericMatrix, mxCreateSparse,
-	mxCreateSparseLogicalMatrix, mxCreateString, mxCreateStructArray,
-	mxCreateStructMatrix, mxDuplicateArray): Use it.
-	(mxDestroyArray): No need to check persistence now.
-	Also delete ptr if mex_context->free_value does not.
-	(call_mex): No need to delete elements of argout now.
-
-2006-10-18  John W. Eaton  <jwe@octave.org>
-
-	* dynamic-ld.cc (octave_shlib_list::remove,
-	octave_shlib_list::do_remove, octave_mex_file_list::remove,
-	octave_mex_file_list::do_remove): New arg, cl_hook.
-	(octave_shlib_list::do_remove): Pass cl_hook to octave_shlib close
-	function.
-	(octave_dynamic_loader::do_load_oct): Don't call close on shl
-	directly.  Pass do_clear_function to octave_shlib_list::remove.
-
-	* mex.cc (mexUnlock): Don't warn if unlocking a function that is
-	not locked.
-
-	* pt-fcn-handle.cc (tree_anon_fcn_handle::dup):
-	Correctly duplicate symbol table info.
-
-2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* oct-map.h: Include <algorithm>.
-
-2006-10-16  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream_list::do_remove): Handle "all" as a
-	special case.
-
-2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Adapt rules to use $(LIBPRE).
-
-2006-10-11  John W. Eaton  <jwe@octave.org>
-
-	* mex.h (UINT64_T, uint64_T, INT64_T, int64_T, UINT32_T, uint32_T,
-	INT32_T, int32_T, UINT16_T, uint16_T, INT16_T, int16_T, UINT8_T,
-	uint8_T, INT8_T, int8_T): Conditionally define.
-	From Andy Adler <adler@site.uottawa.ca>.
-
-2006-10-09  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in (OCTAVE_CONF_CURL_LIBS): Substitute.
-	* toplev.cc (octave_config_info): Add CURL_LIBS to the list.
-
-2006-10-09  Alexander Barth  <abarth@marine.usf.edu>
-
-	* DLD-FUNCTIONS/urlwrite.cc: New file providing urlwrite and urlread.
-
-2006-10-09  John W. Eaton  <jwe@octave.org>
-
-	* pt-mat.cc (tree_matrix::dup): Append new elements to new matrix.
-	* pt-cell.cc (tree_cell::dup): Append new elements to new cell array.
-
-2006-10-04  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.9+.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__clear_plot_window__):
-	Rename from Fclearplot.  Only clear plot window.
-
-2006-10-03  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/luinc.cc (Fluinc): Avoid crash if SparseLU or
-	SparseComplexLU constructor fails.
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx):
-	Delete unused variable.
-
-2006-10-03  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (OCT_LINK_DEPS) Include $(CAMD_LIBS) in the list.
-	(octave$(EXEEXT)): Include $(CAMD_LIBS) in link command.
-
-2006-10-02  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.9.
-	(OCTAVE_API_VERSION): Now api-v22.
-	(OCTAVE_RELEASE_DATE): Now 2006-10-02.
-
-	* pr-output.cc (pr_plus_format): Use "inline" instead of "static
-	inline" for template functions to avoid problems when not
-	compiling with 	g++.
-
-	* mex.cc (call_mex): Delete elements of argout.
-	From Kai Labusch <labusch@inb.uni-luebeck.de>.
-
-2006-09-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/spfind.cc (sparse_find_non_zero_elem_idx):
-	Leading dimension is NR, not NC.
-
-	* Makefile.in (DEP_5): Include oct-errno.cc in the list.
-
-2006-09-27  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (abs): New template function.  Instantiate for
-	unsigned types.
-
-2006-09-27  David Bateman  <dbateman@free.fr>
-
-	* file-io.cc (Fsprintf): If fmt is an sq_string, return an sq_string.
-
-	* DLD-FUNCTIONS/sparse.cc (spfind, sparse_find): Delete.
-	* DLD-FUNCTIONS/spfind.cc: New file implementating compatible
-	sparse find function.
-	* Makefile.in (DLD_XSRC): Add spfind.cc.
-
-2006-09-26  Bill Denney  <bill@givebillmoney.com>
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx, Ffind):
-	Handle direction and limit on number of elements to find.
-
-2006-09-26  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (warning_1): Call error_2, not error.
-
-2006-09-15  John W. Eaton  <jwe@octave.org>
-
-	* ops.h (DEFSTRDBLCONVFN): New arg, TFROM.
-	* OPERATORS/op-double-conv.cc: Declare and install sq_string
-	conversions too.
-
-	* ov-base-int.cc (octave_base_int_scalar<T>::convert_to_str_internal,
-	octave_base_int_matrix<T>::convert_to_str_internal):
-	New functions.
-	* ov-base-int.h: Provide decls.
-
-2006-09-15  S�ren Hauberg  <soren@hauberg.org>.
-
-	* data.cc (Fsize): If nargout > ndims, fill with 1.
-
-2006-09-15  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc: Fix xerbla decl.
-
-2006-09-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/cellfun.cc: Improve error message for uniform
-	output case when results are not scalars.  Avoid shadow decls.
-
-2006-09-13  David Bateman  <dbateman@free.fr>
-
-	* ov-scalar.h (octave_scalar::sparse_matrix_value,
-	octave_scalar::sparse_complex_matrix_value): New extractor functions.
-	* ov-complex.h (octave_complex::sparse_matrix_value,
-	octave_complex::sparse_complex_matrix_value): Ditto.
-	* DLD-FUNCTIONS/spkron.cc (Fspkron): Change example in help.
-
-2006-09-12  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Allow matlab compatiable
-	'UniformOutput' and 'ErrorHandler' options.  Change output when
-	called with function handler or inline function to by default have
-	'UniformOutput' set to true.  Allow functions with multiple inputs
-	and outputs. Add test code.  Replace some int with octave_idx_type.
-	(Fnum2cell): Replace some int with octave_idx_type.  Add test code.
-
-2006-09-11  Yozo Hida  <yozo@cs.berkeley.edu>
-
-	* DLD-FUNCTIONS/gcd.cc (Fgcd): Extend range by using std::floor
-	instead of converting to int.
-
-2006-09-05  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_sparse::as_octave_value): Cast nzmax to
-	octave_idx_type for sparse matrix constructors.
-
-2006-09-01  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc: Don't handle nargout == 0 as a special case.
-	(octave_change_to_directory): Perform tilde expansion on directory
-	name here.
-
-2006-08-30  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (get_file_format): Fix misplaced #endif.
-
-2006-08-29  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (execute_pkg_add_or_del):
-	Source PKG_ADD or PKG_DEL in base workspace.
-	* parse.y (source_file): New optional arg, context.
-	* parse.h (source_file): Fix decl.
-
-2006-08-25  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.8+.
-
-2006-08-24  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.8.
-	(OCTAVE_API_VERSION): Now api-v21.
-	(OCTAVE_RELEASE_DATE): Now 2006-08-24.
-
-2006-08-23  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::save_ascii): Delete strip_nan_and_inf arg.
-	* ov-base.h, ov-base.cc (octave_base_value::save_ascii): Likewise.
-	* ov-base-int.h, ov-base-int.cc	(octave_base_int_matrix<T>::save_ascii,
-	octave_base_int_scalar<T>::save_ascii, ): Likewise.
-	* ov-base-sparse.cc, ov-base-sparse.h
-	(octave_base_sparse<T>::save_ascii): Likewise.
-	* ov-bool-mat.cc, ov-bool-mat.h (octave_bool_matrix::save_ascii):
-	Likewise.
-	* ov-bool.cc, ov-bool.h (octave_bool::save_ascii): Likewise.
-	* ov-cell.cc, ov-cell.h (octave_cell::save_ascii): Likewise.
-	* ov-complex.cc, ov-complex.h (octave_complex::save_ascii): Likewise.
-	* ov-fcn-handle.cc, ov-fcn-handle.h (octave_fcn_handle::save_ascii):
-	Likewise.
-	* ov-fcn-inline.cc, ov-fcn-inline.h (octave_fcn_inline::save_ascii):
-	Likewise.
-	* ov-list.cc, ov-list.h (octave_list::save_ascii): Likewise.
-	* ov-range.cc, ov-range.h (octave_range::save_ascii): Likewise.
-	* ov-scalar.cc, ov-scalar.h (octave_scalar::save_ascii): Likewise.
-	* ov-str-mat.cc, ov-str-mat.h (octave_char_matrix_str::save_ascii):
-	Likewise.
-	* ov-struct.cc, ov-struct.h (octave_struct::save_ascii): Likewise.
-	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
-	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
-	Likewise.
-	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
-	Likewise.
-	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
-
-	* ls-oct-ascii.cc, ls-oct-ascii.h (save_ascii_data):
-	Delete strip_nan_and_inf arg.
-	(save_ascii_data_for_plotting): Delete strip_nan_and_inf arg from
-	call to save_ascii_data.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (handle_using): Accept "(EXPR)"
-	as components of using clauses.
-	(enum _toktype): New element DOLLAR.
-	Accept "$" in lexer.
-
-	* ls-oct-ascii.cc (save_ascii_data): Delete arg strip_nan_and_inf.
-	Change all uses.
-
-	* ls-oct-ascii.h (save_three_d): Provide decl.
-	* load-save.h (save_ascii_data_for_plotting, save_three_d):
-	Delete decls.
-
-2006-08-22  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::save_ascii): strip_nan_and_inf is now int,
-	not bool.
-	* ov-base.h, ov-base.cc (octave_base_value::save_ascii): Likewise.
-	* ov-base-int.h, ov-base-int.cc	(octave_base_int_matrix<T>::save_ascii,
-	octave_base_int_scalar<T>::save_ascii, ): Likewise.
-	* ov-base-sparse.cc, ov-base-sparse.h
-	(octave_base_sparse<T>::save_ascii): Likewise.
-	* ov-bool-mat.cc, ov-bool-mat.h (octave_bool_matrix::save_ascii):
-	Likewise.
-	* ov-bool.cc, ov-bool.h (octave_bool::save_ascii): Likewise.
-	* ov-cell.cc, ov-cell.h (octave_cell::save_ascii): Likewise.
-	* ov-complex.cc, ov-complex.h (octave_complex::save_ascii): Likewise.
-	* ov-fcn-handle.cc, ov-fcn-handle.h (octave_fcn_handle::save_ascii):
-	Likewise.
-	* ov-fcn-inline.cc, ov-fcn-inline.h (octave_fcn_inline::save_ascii):
-	Likewise.
-	* ov-list.cc, ov-list.h (octave_list::save_ascii): Likewise.
-	* ov-range.cc, ov-range.h (octave_range::save_ascii): Likewise.
-	* ov-scalar.cc, ov-scalar.h (octave_scalar::save_ascii): Likewise.
-	* ov-str-mat.cc, ov-str-mat.h (octave_char_matrix_str::save_ascii):
-	Likewise.
-	* ov-struct.cc, ov-struct.h (octave_struct::save_ascii): Likewise.
-	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
-	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
-	Likewise.
-
-	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
-	Don't strip Inf and NaN here.  Call ComplexMatrix::save_ascii to
-	do the real work.
-	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii):
-	Don't strip Inf and NaN here.  Call Matrix::save_ascii to do the
-	real work.
-
-	* ov-re-mat.cc, ov-cx-mat.cc (strip_infnan): Delete.
-	* ls-oct-ascii.cc, ls-oct-ascii.h (save_ascii_data):
-	strip_nan_and_inf is now int, not bool.
-	(strip_infnan): Delete.
-	(save_ascii_data_for_plotting): Call save_ascii_data with
-	strip_nan_and_inf = 2.
-
-	* Makefile.in (INCLUDES): Remove matrix.h from the list.
-
-2006-08-22  David Bateman  <dbateman@free.fr>
-
-	* sparse-xpow.cc: Replace all uses of pow by std::pow.
-	(elem_pow): Simplify for two sparse matrices arguments.
-
-2006-08-22  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc: Increase default value of save_precision to 16.
-
-	* ls-mat-ascii.cc (save_mat5_ascii_data): Use scientific format.
-
-2006-08-21  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_mat5_binary_data, read_mat5_integer_data,
-	write_mat5_array): Unconditionally enable code for 64-bit int types.
-
-	* ov-fcn-handle.cc (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA):
-	For compatibility, set class to function_handle.
-
-2006-08-18  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (set_real_matrix_format): Also always include space
-	for sign if values are int, inf, or nan.
-	(set_complex_format, set_complex_matrix_format): Always include
-	space for sign in real format, but never in imaginary format.
-
-	* gripes.cc (gripe_logical_conversion): New function.
-	* gripes.h: Provide decl.
-	* ov.h (octave_value::bool_value, octave_value::bool_matrix_value,
-	octave_value::bool_array_value): New arg, warn.
-	* ov-base.cc, ov-base.h (octave_base_value::bool_value,
-	octave_base_value::bool_matrix_value,
-	octave_base_value::bool_array_value): Likewise.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value): Likewise.
-	* ov-range.h (octave_range::bool_array_value): Likewise.
-	* ov-re-mat.cc, ov-re-mat.h (octave_matrix::bool_array_value):
-	Likewise.
-	* ov-re-sparse.cc, ov-re-sparse.h
-	(octave_sparse_matrix::bool_array_value): Likewise.
-	* ov-scalar.h (octave_scalar::bool_value,
-	octave_scalar::bool_array_value): Likewise.
-	* OPERATORS/op-bm-b.cc (oct_assignop_conv_and_assign):
-	Ask for warning from bool_array_value.
-	* OPERATORS/op-bm-bm.cc (oct_assignop_conv_and_assign): Likewise.
-	* ov-bool.h (octave_bool::bool_value,
-	octave_bool::bool_matrix_value, octave_bool::bool_array_value):
-	Likewise.
-	* ov-bool-mat.h (octave_bool_matrix::bool_matrix_value,
-	octave_bool_matrix::bool_array_value): Likewise.
-	* ov-bool-sparse.cc, ov-bool-sparse.h
-	(octave_sparse_bool_matrix::bool_matrix_value,
-	octave_sparse_bool_matrix::bool_array_value): Likewise.
-
-2006-08-18  Benjamin Lindner  <lindnerben@gmx.net>
-
-	* ls-mat5.cc (read_mat5_tag): Declare type as int32_t, not int.
-	(read_mat5_binary_element): Likewise, for len and element_length.
-
-2006-08-18  John W. Eaton  <jwe@octave.org>
-
-	* load-save.h (enum load_save_format): New element, LS_MAT_ASCII_LONG.
-	* load-save.cc (Fload, Fsave): Make -ascii Matlab compatible.
-	(do_save): Handle LS_MAT_ASCII.
-	* ls-mat-ascii.cc (save_mat_ascii_data): New function.
-	* ls-mat-ascii.h: Provide decl.
-
-2006-08-17  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (save_mat5_element_length): Correctly compute element
-	length for character data.  Handle N-d character data
-	(save_mat5_binary_element): Handle N-d character data.
-
-2006-08-16  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (gobble_leading_white_space): New arg, SKIP_CODE.
-	Change all uses.
-
-2006-08-15  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (help_from_file): Call get_help_from_file with new file
-	arg.  Print file info here.
-
-	* parse.y (get_help_from_file): Delete include_file_info arg.
-	Provide two versions, one that returns the file found in a
-	reference arg and one that does not.
-
-	* variables.cc (do_isglobal): New function.
-	(Fisglobal): Use it.
-	(Fis_global): New function.
-
-2006-08-14  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_record_name_compare): Fix casts.
-
-	* ov-cell.cc (octave_cell::subsasgn): Call empty_conv for 0x0
-	objects, not just empty objects.
-
-	* oct-map.h (Octave_map::clear): Also clear key_list.
-
-	* load-path.cc (load_path::find_dir_info, load_path::do_add,
-	load_path::do_remove): Perform tilde expansion on directory here.
-
-2006-07-29  John W. Eaton  <jwe@octave.org>
-
-	* matrix.h: Delete to avoid conflict with liboctave/Matrix.h on
-	case-insensitive filesystems.
-
-	* version.h (OCTAVE_VERSION): Now 2.9.7+.
-
-2006-07-28  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.7.
-	(OCTAVE_API_VERSION): Now api-v20.
-	(OCTAVE_RELEASE_DATE): Now 2006-07-28.
-
-	* load-path.cc (path::do_add): Warn for trailing "//".
-
-	* strfns.cc: Comment out some tests for snapshot.
-
-2006-07-27  John W. Eaton  <jwe@octave.org>
-
-	* defaults.cc (Vlocal_api_arch_lib_dir): New variable.
-	(set_default_local_api_arch_lib_dir): New function.
-	(install_defaults): Call it.
-	(set_exec_path): Put Vlocal_api_arch_lib_dir in the list.
-	* toplev.cc (localapiarchlibdir): Include it in the list.
-	* defaults.h.in (OCTAVE_LOCALAPIARCHLIBDIR): Substitute here.
-
-2006-07-26  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray::as_octave_value (mxArray *)): New static function.
-	(call_mex, mexPutVariable, mexCallMATLAB,
-	mxArray_cell::as_octave_value, mxArray_struct::as_octave_value):
-	Use static version of as_octave_value here.
-	(mxArray_sparse::mxArray_sparse (const mxArray_sparse&)):
-	Check pr, ir, and jc before calling memcpy.
-	(mxArray_number::mxArray_number): Check pr before calling memcpy
-
-	* mxarray.h (mxArray::as_octave_value (mxArray *)): Provide decl.
-	(mxArray::as_octave_value): Now protected.
-
-	* file-io.cc (Ffeof, Fferror): Use DEFUNX instead of DEFUN.
-
-	* mex.cc (xfree): New function.
-	(mex::free): Use it.
-	(mxArray_struct::~mxArray_struct, mxArray_cell::~mxArray_cell):
-	Delete elements with delete, not mxDestroyArray.
-	(mex::cleanup): Don't call mex::free or mex::free_value.
-	(mex::free_value): Add debug warning.
-	(mex::mark, mex::unmark): Fix debug warning.
-	(call_mex): Use unwind_protect frame.
-	(mexUnlock): Use iterator to remove item from mex_lock_count.
-
-	* octave.cc (maximum_braindamage): Use disable_warning instead of
-	bind_internal_variable to disable function-name-clash warning.
-	* error.cc (disable_warning): No longer static.
-	* error.h: Provide decl.
-
-2006-07-25  David Bateman  <dbateman@free.fr>
-
-	* mex.cc (mxArray_octave_value::get_class_id): Handle sparse.
-	(class mxArray_sparse): Derive from mxArray_matlab, not
-	mxArray_number.
-	(mxArray_sparse::as_octave_value): Implement function.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::as_mxArray):
-	Implement function.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::as_mxArray):
-	Implement function.
-	* ov-re-sparse.cc (octave_sparse_matrix::as_mxArray):
-	Implement function.
-
-2006-07-25  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mxArray_struct::as_octave_value, call_mex,
-	mexCallMATLAB, mxArray_cell::as_octave_value):
-	Convert NULL mxArray* pointers to empty matrix values.
-	(mxArray_octave_value:get_ir): Fix typo.
-
-2006-07-22  John W. Eaton  <jwe@octave.org>
-
-	* mxarray.h: New file.
-	* mex.h, mexproto.h, mex.cc: New implementation of mxArray and MEX
-	interface.
-
-	* ov.h (octave_value::mex_get_ir, octave_value::mex_get_jc):
-	New functions.
-	* ov-base.h (octave_base_value::mex_get_ir,
-	octave_base_value::mex_get_jc): New virtual functions.
-	* ov-base-sparse.h (octave_base_sparse<T>::mex_get_ir,
-	octave_base_sparse<T>::mex_get_jc): New functions.
-
-	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::as_mxArray,
-	OCTAVE_VALUE_INT_MATRIX_T::as_mxArray): New functions.
-	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-uint8.h,
-	ov-uint16.h, ov-uint32.h, ov-uint64.h: Define OCTAVE_INT_MX_CLASS
-	before including ov-intx.h.  Undef it after.
-	* ov-range.cc (octave_range::as_mxArray): New function.
-	* ov-range.h: Provide decl.
-	* ov-scalar.cc (octave_scalar::as_mxArray): New function.
-	* ov-scalar.h: Provide decl.
-	* ov-complex.cc (octave_complex::as_mxArray): New function.
-	* ov-complex.h: Provide decl.
-	* ov-re-mat.cc (octave_matrix::as_mxArray): New function.
-	* ov-re-mat.h: Provide decl.
-	* ov-cx-mat.cc (octave_complex_matrix::as_mxArray): New function.
-	* ov-cx-mat.h: Provide decl.
-	* ov-ch-mat.cc (octave_char_matrix::as_mxArray): New function.
-	* ov-ch-mat.h: Provide decl.
-	* ov-bool-mat.cc (octave_bool_matrix::as_mxArray): New function.
-	* ov-bool-mat.h: Provide decl.
-	* ov-bool.cc (octave_bool::as_mxArray): New function.
-	* ov-bool.h: Provide decl.
-
-	* ov-struct.h (octave_struct::numel): New function.
-
-	* ls-mat5.cc (arrayclasstype): Use "MAT_FILE_" instead of "mx" as
-	prefix for element names.
-
-	* ov.h (octave_value::as_mxArray): New function.
-	* ov-base.cc (octave_base_value::as_mxArray): New function.
-	* ov-base.h: Provide decl.
-
-	* ov.h (octave_value::mex_get_data): New function.
-	* ov-base.h (octave_base_value::mex_get_data): New function.
-	* ov-base-scalar.h (octave_base_scalar<ST>::mex_get_data): New function.
-	* ov-base-matrix.h (octave_base_matrix<MT>::mex_get_data): New function.
-	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::mex_get_data): New function.
-
-	* ov.h (octave_value::nfields): New function.
-	* ov-base.cc (octave_base_value::nfields): New virtual function.
-	* ov-base.h: Provide decl.
-	* ov-struct.h (octave_struct::nfields): New function.
-
-2006-07-19  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-bm-bm.cc (oct_assignop_conv_and_assign): New function.
-	(install_bm_bm_ops): Install it for various types.
-	* OPERATORS/op-bm-b.cc (oct_assignop_conv_and_assign): New function.
-	(install_bm_b_ops): Install it for various types.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value): New functions.
-	* ov-range.h (octave_range::bool_array_value): New function.
-	* ov-re-sparse.cc (octave_sparse_matrix::bool_array_value):
-	New function.
-	* ov-re-sparse.h: Provide decl.
-	* ov-re-mat.cc (octave_matrix::bool_array_value): New function.
-	* ov-re-mat.h: Provide decl.
-
-	* ov-base.cc (octave_base_value::numeric_assign):
-	Avoid memory leak when converting LHS.
-
-2006-07-18  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::is_int8_type, octave_value::is_int16_type,
-	octave_value::is_int32_type, octave_value::is_int64_type,
-	octave_value::is_uint8_type, octave_value::is_uint16_type,
-	octave_value::is_uint32_type, octave_value::is_uint64_type):
-	New functions.
-	* ov-base.h (octave_base_value::is_int8_type,
-	octave_base_value::is_int16_type,
-	octave_base_value::is_int32_type,
-	octave_base_value::is_int64_type,
-	octave_base_value::is_uint8_type,
-	octave_base_value::is_uint16_type,
-	octave_base_value::is_uint32_type,
-	octave_base_value::is_uint64_type): New functions.
-	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int16.h, ov-uint8.h,
-	ov-uint16.h, ov-uint32.h, ov-uint16.h: Define OCTAVE_BASE_INT_T.
-	* ov-intx.h: Use OCTAVE_BASE_INT_T to define type-specific predicate.
-
-	* ov.h (octave_value::is_double_type, octave_value::is_single_type):
-	New functions.
-	* ov-base.h (octave_base_value::is_double_type,
-	octave_base_value::is_single_type): New functions.
-	* ov-re-mat.h (octave_matrix::is_double_type): New function.
-	* ov-cx-mat.h (octave_matrix::is_double_type): New function.
-	* ov-scalar.h (octave_scalar::is_double_type): New function.
-	* ov-complex.h (octave_complex::is_double_type): New function.
-	* ov-range.h (octave_range::is_double_type): New function.
-	* ov-re-sparse.h (octave_sparse_matrix::is_double_type): New function.
-	* ov-cx-sparse.h (octave_sparse_complex_matrix::is_double_type):
-	New function.
-
-2006-07-15  John W. Eaton  <jwe@octave.org>
-
-	* ov-typeinfo.cc: Also instantiate arrays of assignany_ops.
-
-	* oct-errno.cc.in (octave_errno::octave_errno): VALUE field in
-	errno_struct no longer const.
-
-	* DLD-FUNCTIONS/dispatch.cc (octave_dispatch::do_index_op):
-	Declare	resize_ok arg as bool, not int.
-	Provide default value for resize_ok.
-
-2006-07-14  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (do_write): Include explicit instantiations.
-
-	* ov-str-mat.h (octave_char_matrix_sq_str::resize):
-	Include fill arg to match base class.
-	* ov-struct.h (octave_struct::resize): Likewise.
-
-	* ov-base-mat.cc, ov-base-mat.h, ov-base-sparse.cc,
-	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-bool.cc,
-	ov-bool.h, ov-complex.cc, ov-complex.h, ov-intx.h, ov-list.cc,
-	ov-list.h, ov-range.cc, ov-range.h, ov-scalar.cc, ov-scalar.h,
-	ov-str-mat.cc, ov-str-mat.h, ov.h (do_index_op):
-	Declare	resize_ok arg as bool, not int.
-	Provide default value for resize_ok.
-
-	* c-file-ptr-stream.h (c_file_ptr_stream::c_file_ptr_stream):
-	Qualify init.
-
-2006-07-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.h (Octave_map::del): Add missing std:: qualifier to use
-	of find template.
-
-2006-07-07  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (octave_value::is_bool_scalar): New function.
-	* ov-base.h (octave_base_value::is_bool_scalar): New function.
-	* ov-bool.h (octave_bool::is_bool_scalar): New function.
-
-	* oct-map.cc (Octave_map::keys): Use assert.
-	(Octave_map::assign): Avoid inserting new key in map unless
-	assignment to cell succeeds.
-
-	* oct-map.h (Octave_map::del): Only touch key_list if map contains key.
-	Assert that key_list contains key.
-
-	* oct-map.h (Octave_map::maybe_add_to_key_list): For efficiency,
-	check map, not key_list.  From Paul Kienzle  <pkienzle@users.sf.net>.
-
-2006-07-06  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Declare mrowsc volatile.
-
-	* ov-struct.cc (octave_struct::print_raw): Print keys in key_list
-	order.
-
-	* oct-map.h (Octave_map::key_list): New data member.
-	(Octave_map::maybe_add_to_key_list): New function.
-	(Octave_map::key_list_iterator, Octave_map::const_key_list_iterator):
-	New typedefs.
-	(Octave_map::del): Also delete key from key_list.
-	* oct-map.cc (Octave_map::keys): Compute return value from
-	key_list instead of map.
-	(Octave_map::assign, Octave_map::contents): Call maybe_add_to_key_list.
-	* oct-map.h, oct-map.cc (Octave_map::Octave_map):
-	Insert keys in key_list.
-
-	* oct-map.h (Octave_map::Octave_map (const dim_vector&,
-	const string_vector&)): New arg, key_list_arg.
-	* oct-map.cc: Move definition here.
-
-2006-07-05  John W. Eaton  <jwe@octave.org>
-
-	* mex.cc (mexGetVariable): Rename from mexGetArray, swap arguments.
-	(mexGetVariablePtr): Rename from mexGetArrayPtr, swap arguments.
-	(mexErrMsgIdAndTxt, mexWarnMsgIdAndTxt): New functions.
-	* mexproto.h: Provide decls.
-	Include decls for as yet unsupported functions.
-	* mex.h: Add enum for class ids.
-	(mexGetArray): Define using mexGetVariable.
-	(mexGetArrayPtr): Define using mexGetVariablePtr.
-
-2006-07-02  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.cc (CHAR_MATRIX_CONV): Omit "warn-" from label.
-	* parse.y (maybe_warn_variable_switch_label): Likewise.
-
-2006-07-01  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (finish_cell): Use finish_matrix to do constant folding.
-
-2006-06-30  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (octave_base_value::numeric_assign):
-	Avoid memory leak when converting LHS.
-
-	* oct-hist.cc (do_history, initialize_history, Fhistory_file):
-	Don't perform tilde expansion on history file name.
-
-	* syscalls.cc (Flstat, Fstat): Don't perform tilde expansion on arg.
-	* input.cc (Fread_readline_init_file): Likewise.
-	* dirfns.cc (Fcd, Freaddir): Likewise.
-
-	* load-path.cc (genpath): Don't perform tilde expansion on name.
-	(load_path::do_add): Don't warn about moving "." to front of list.
-
-2006-06-28  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (Faddpath): Don't treat "." specially here.
-	Don't check directory status here.
-	(Fpath): Handle all args.  Don't treat "." specially here.
-	(Faddpath, Frmpath): Delete unused variable xpath.
-	(load_path::do_add): New function.
-	(load_path::do_prepend, load_path::do_append): Use it.
-	(load_path::do_remove): Really prevent removal of ".".
-	(load_path::do_clear): Clearing doesn't remove ".".
-	(load_path::append, load_path::prepend, load_path::do_append,
-	load_path::do_prepend): New arg, warn.
-
-	* load-path.h: Fix decls.
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp_list):
-	Avoid bug in older versions of g++.
-
-2006-06-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (clean): Also remove $(DLD_OBJ).
-
-	* sighandlers.cc (install_signal_handlers): Don't handle SIGPROF.
-	From Geoffrey Knauth <geoff@knauth.org>.
-
-2006-06-25  John W. Eaton  <jwe@octave.org>
-
-	* mk-pkg-add: Avoid apparently non-portable sed patterns.
-
-2006-06-21  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (do_who): Handle mex.
-
-	* symtab.cc (SYMBOL_DEF::type_as_string, SYMBOL_DEF::which,
-	symbol_table::clear_functions, table::clear_function,
-	symbol_table::clear_function_pattern):
-	Handle mex.
-	* symtab.h (symbol_record::is_mex_function,
-	symbol_record::symbol_def::is_mex_function): New functions.
-	(symbol_record::TYPE): New value, MEX_FUNCTION.
-	(symbol_record::is_function, symbol_table::user_function_name_list,
-	SYMTAB_ALL_TYPES): Handle MEX_FUNCTION.
-
-	* ov-fcn.h (octave_function::octave_function):
-	Provide default for doc string arg.
-
-	* defun.cc (install_mex_function): New function.
-	* defun-int.h: Provide decl.
-
-	* ov-builtin.cc (any_arg_is_magic_colon): Delete.
-	(octave_builtin::do_multi_index_op): Call has_magic_colon method
-	for args instead of any_arg_is_magic_colon.
-
-	* ov-base.h (octave_base_value::is_mex_function): New function.
-	* ov.h (octave_value::is_mex_function): New function.
-
-	* ov-mex-fcn.h, ov-mex-fcn.cc: New files.
-
-	* parse.y (load_fcn_from_file): Also handle .mex files.
-
-	* dynamic-ld.cc (octave_dynamic_loader::load_oct): Rename from load.
-	(octave_dynamic_loader::do_load_oct): Rename from do_load.
-	* dynamic-ld.h: Fix decls.
-
-	* utils.cc (mex_file_in_path): New function.
-	* utils.h: Provide decl.
-
-	* variables.cc (symbol_out_of_date): Also handle mex files.
-
-	* load-path.cc (load_path::dir_info::get_file_list,
-	load_path::dir_info::get_private_function_map,
-	load_path::do_find_fcn, load_path::add_to_fcn_map,
-	load_path::do_display): Also handle mex files.
-	* load-path.h (load_path::find_mex_file): New static function.
-	(load_path::MEX_FILE): New static data member.
-	(load_path::do_find_fcn): By default, also look for mex files.
-
-	* matrix.h, mex.h, mex.cc: New files from Octave Forge
-	* mexproto.h: New file, extracted from mex.h.
-	* Makefile.in: Add them to the appropriate lists.
-
-2006-06-20  John W. Eaton  <jwe@octave.org>
-
-	* ov-re-mat.cc (octave_matrix::convert_to_str_internal):
-	Don't lose empty dimensions on conversion to char.
-
-	* strfns.cc (Fstrcmp): Handle comparison of cellstr and empty string.
-
-2006-06-16  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (%union): New type, anon_fcn_handle_type.
-	(anon_fcn_handle): Now anon_fcn_handle_type, not tree_constant_type.
-	(make_anon_fcn_handle):	Return tree_anon_fcn_handle, not tree_constant.
-
-	* comment-list.cc (octave_comment_list::dup): New function.
-	* comment-list.h: Provide decl.
-
-	* pt-cmd.cc (tree_no_op_command::dup): New function.
-	* pt-cmd.h: Provide decl.
-	(tree_command::dup): New pure virtual function.
-
-	* pt-loop.cc (tree_while_command::dup, tree_do_until_command::dup,
-	tree_simple_for_command::dup, tree_complex_for_command::dup):
-	New functions.
-	* pt-loop.h: Provide decls.
-
-	* pt-jump.cc (tree_break_command::dup, tree_continue_command::dup,
-	tree_return_command::dup): New functions.
-	* pt-jump.h: Provide decls.
-
-	* pt-except.cc (tree_try_catch_command::dup,
-	tree_unwind_protect_command::dup): New functions.
-	* pt-except.h: Provide decls.
-
-	* pt-select.cc (tree_if_clause::dup, tree_if_command_list::dup,
-	tree_if_command::dup, tree_switch_case::dup,
-	tree_switch_case_list::dup, tree_switch_command::dup):
-	New functions.
-	* pt-select.h: Provide decls.
-
-	* pt-decl.cc (tree_decl_elt::dup, tree_decl_init_list::dup,
-	tree_global_command::dup, tree_static_command::dup): New functions.
-	* pt-decl.h: Provide decls.
-
-	* pt-exp.h (tree_expression::copy_base): New function.
-	(tree_expression::dup): New pure virtual function.
-
-	* pt-fcn-handle.cc, pt-fcn-handle.h (tree_anon_fcn_handle): New class.
-
-	* pt-fcn-handle.cc (tree_function_handle::dup): New function.
-	* pt-fcn-handle.h: Provide decl.
-
-	* pt-colon.cc (tree_colon_expression::dup): New function.
-	* pt-colon.h: Provide decl.
-	(tree_colon_expression::tree_colon_expression (tree_expression *,
-	tree_expression *, tree_expression *, int, int)): New constructor.
-
-	* pt-const.cc (tree_constant::dup): New function.
-	(tree_constant::tree_constant (const octave_value&, const
-	std::string&, int, int)): New constructor.
-	* pt-const.h: Provide decls.
-
-	* pt-idx.cc (tree_index_expression::dup): New functoin.
-	(tree_index_expression::tree_index_expression (int, int)):
-	New constructor.
-	* pt-idx.h: Provide decls.
-
-	* pt-arg-list.cc (tree_argument_list::dup): New function.
-	* pt-arg-list.h: Provide decl.
-
-	* pt-id.cc (tree_identifier::dup): New function.
-	* pt-id.h: Provide decl.
-
-	* pt-cell.cc (tree_cell::dup): New function.
-	* pt-cell.h: Provide decl.
-
-	* pt-mat.cc (tree_matrix::dup): New function.
-	* pt-mat.h: Provide decl.
-
-	* pt-assign.cc (tree_simple_assignment::dup,
-	tree_multi_assignment::dup): New functions.
-	* pt-assign.h: Provide decls.
-
-	* pt-binop.cc (tree_binary_expression::dup,
-	tree_boolean_expression::dup): New functions.
-	* pt-binop.h: Provide decls.
-
-	* pt-unop.cc (tree_prefix_expression::dup,
-	tree_postfix_expression::dup): New functions.
-	* pt-unop.h: Provide decls.
-
-	* pt-stmt.cc (tree_statement::dup, tree_statement_list::dup):
-	New functions.
-	* pt-stmt.h: Provide decls.
-
-	* pt-misc.cc (tree_parameter_list::dup,
-	tree_return_list::dup): New functions.
-	* pt-misc.h: Provide decls.
-
-	* symtab.cc (symbol_table::dup, symbol_table::inherit,
-	symbol_record:is_automatic_variable): New functions.
-	* symtab.h: Provide decls.
-	(symbol_record::automatic_variable): New data member.
-	(symbol_record::symbol_record): Initialize it.
-	(symbol_record::mark_as_automatic_variable): New function.
-
-	* pt-walk.h (tree_walker::visit_anon_fcn_handle):
-	New pure virtual function.
-	* pt-pr-code.cc (tree_print_code::visit_anon_fcn_handle): New function.
-	* pt-pr-code.h: Provide decl.
-	* pt-bp.cc (tree_breakpoint::visit_anon_fcn_handle): New function.
-	* pt-bp.h: Provide decl.
-	* pt-check.cc (tree_checker::visit_anon_fcn_handle): New function.
-	* pt-check.h: Provide decl.
-
-2006-06-13  John W. Eaton  <jwe@octave.org>
-
-	* pt-stmt.cc (tree_statement_list::eval): Revise previous change
-	to preserve return-last-value-computed semantics.
-
-	* DLD-FUNCTIONS/fsolve.cc (hybrd_info_to_fsolve_info):
-	Warn about invalid values of INFO from MINPACK instead of calling
-	panic_impossible.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Don't assign values returned by evaluation of cmd_list to
-	temporary variable.  Delete unused variable last_computed_value.
-
-	* pt-stmt.cc (tree_statement_list::eval):
-	Clear retval before each statement is evaluated.
-
-2006-06-12  John W. Eaton  <jwe@octave.org>
-
-	* unwind-prot.h (unwind_protect_fptr): New macro.
-	* load-path.cc (load_path::do_set): Use it instead of
-	unwind_protect_ptr when protecting add_hook function pointer.
-	* dynamic-ld.cc (octave_dynamic_loader::do_load): Use FCN_PTR_CAST
-	here instead of reinterpret_cast.
-
-2006-06-09  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.6+.
-
-2006-06-09  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.6.
-	(OCTAVE_API_VERSION): Now api-v19.
-	(OCTAVE_RELEASE_DATE): Now 2006-06-09.
-
-	* ov-cell.cc (cell::save_hdf5): Use leading zeros to keep elements
-	correctly sorted in the HDF file.
-	From Stephen Fegan <sfegan@astro.ucla.edu>.
-
-2006-06-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (function::do_multi_index_op): Append contents of
-	varargout to ret_list before calling convert_to_const_vector.
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	No need to handle all_va_args here.
-
-	* ov-va-args.h, ov-va-args.cc: Delete files.
-	* Makefile.in (OV_INCLUDES, OV_SRC): Delete from the lists.
-
-	* ov.cc (install_types): Don't register octave_all_va_args type.
-	* ov.h, ov.cc (octave_value::octave_value (octave_value::all_va_args)):
-	Delete.
-	* ov.h (octave_value::is_all_va_args): Delete.
-	(octave_value::enum all_va_args): Delete.
-
-	* pt-pr-code.cc	(tree_print_code::visit_octave_user_function_header):
-	Print "varargout" and "varargin" instead of "...".
-
-	* pt-misc.h, pt-misc.cc	(tree_parameter_list::convert_to_const_vector):
-	Arg is now const Cell& instead of tree_va_return_list*.
-
-	* ov-usr-fcn.h, ov-usr-fcn.cc (octave_user_function::vr_list,
-	octave_user_function::curr_va_arg_number):
-	Delete variables and all uses.
-	(octave_function::octave_va_start, octave_function::octave_va_arg,
-	octave_function::octave_vr_val,	octave_function::has_varargout):
-	Delete functions and all uses.
-
-	* ov-fcn.h (octave_function::octave_va_start,
-	octave_function::octave_va_arg, octave_function::octave_vr_val,
-	octave_function::has_varargout): Delete.
-
-	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Delete.
-
-	* lex.l ({EL}): Don't handle "..." as varargin or varargout.
-	* octave.gperf (all_va_args, ALL_VA_ARGS, all_va_args_kw): Delete.
-	* parse.y (ALL_VA_ARGS): Delete token and all uses.
-
-	* defaults.h.in (OCTAVE_DATAROOTDIR): Substitute here.
-	* toplev.cc (octave_config_info): Add datarootdir to the struct.
-
-2006-06-07  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::subsasgn): Handle c-s list object on
-	RHS if last index is '{'.
-	* pt-assign.cc (tree_multi_assignment::rvalue): Compute all LHS
-	lvalues before evaluating RHS.  If LHS lvalue expects more than
-	one output, pass octave_cs_list object to assign method.
-	* pt-idx.cc (tree_index_expression::lvalue): Compute expected
-	number of values if '{' index appears last.
-	* pt-arg-list.cc (tree_argument_list::lvalue_list): New function.
-	* pt-arg-list.h (tree_argument_list::lvalue_list): Provide decl.
-	* oct-lvalue.h (octave_lvalue::nel): New data member.
-	(octave_lvalue::numel): New functions
-	* oct-obj.cc (octave_value_list::has_magic_colon): New function.
-	* oct-obj.h (octave_value_list::has_magic_colon): Provide decl.
-	* pt-arg-list.cc (tree_argument_list::nargout_count): Delete function.
-	* pt-arg-list.h (tree_argument_list::nargout_count): Delete decl.
-
-2006-06-06  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (generic_sig_handler, sigint_handler):
-	Use strsignal instead of accessing sys_siglist directly.
-	* siglist.h: Use HAVE_DECL_SYS_SIGLIST instead of SYS_SIGLIST_DECLARED.
-	* siglist.c: Update sys_siglist.
-	(init_signals, strsignal): New functions.
-	* octave.cc (octave_main): Call init_signals here.
-
-	* toplev.cc (Foctave_config_info): Delete LIBPLPLOT from struct.
-
-2006-06-05  John W. Eaton  <jwe@octave.org>
-
-	* pt-assign.cc (Vprint_rhs_assign_val): Delete variable.
-	(Fprint_rhs_assign_val): Delete function.
-	tree_simple_assignment::rvalue, tree_multi_assignment::rvalue):
-	No special case for Vprint_rhs_assign_val.
-
-2006-06-02  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.h (tree_argument_list::mark_as_simple_assign_lhs,
-	tree_argument_list::is_simple_assign_lhs): New functions.
-	(tree_argument_list::simple_assign_lhs): New data member.
-	* parse.y (assign_lhs): Classify LHS here.
-	(make_assign_op): Create simple or multi assign op based on
-	classification of LHS, not its length.
-
-2006-06-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DLD_XSRC): Add __pchip_deriv__.cc to the list.
-
-2006-06-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/__pchip_deriv__.cc: New file.
-
-2006-05-31  John W. Eaton  <jwe@octave.org>
-
-	* load-path.h (load_path::set_command_line_path): Make it
-	additive.
-
-2006-05-26  John W. Eaton  <jwe@octave.org>
-
-	* load-path.cc (genpath, maybe_add_path_elts, Fgenpath, Frehash,
-	Fpath, Fpathdef): Move here from defaults.cc.
-	* load-path.cc, load-path.h: New files.
-	* Makefile.in (INCLUDES, DIST_SRC): Add them to the lists.
-	* help.cc (make_name_list, simple_help): Use load_path instead of
-	octave_fcn_file_name_cache.
-	(Flookfor): Use load_path instead of Vload_path_dir_path.
-	* octave.cc (octave_main):  Likewise.
-	* parse.y (load_fcn_from_file): Likewise.
-	* utils.cc (Ffile_in_loadpath, file_in_path, fcn_file_in_path,
-	oct_file_in_path): Likewise.
-	* variables.cc (symbol_exist, symbol_out_of_date): Likewise.
-	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Likewise.
-	* utils.cc (Ffind_first_of_in_loadpath): Delete.
-	* input.cc (octave_gets): Call load_path::update here.
-	* dirfns.cc (octave_change_to_directory): Likewise.
-	* defaults.cc (VLOADPATH, VDEFAULT_LOADPATH, Vload_path_dir_path,
-	maybe_add_or_del_packages, update_load_path_dir_path,
-	execute_default_pkg_add_files, set_load_path): Delete.
-	* defaults.h.in (Vload_path_dir_path,
-	execute_default_pkg_add_files, maybe_add_default_load_path,
-	set_load_path): Delete decls.
-
-	* fn-cache.h, fn-cache.cc: Delete.
-	* Makefile.in (INCLUDES, DIST_SRC): Remove them from the lists.
-
-	* input.cc (octave_gets): Only update Vlast_prompt_time if we are
-	interactive and actually printing a prompt.  Don't print prompt if
-	reading startup files or command line files.  Initialize
-	Vlast_prompt_time to 0.
-
-	* pr-output.cc (set_format): Always include space for sign.
-
-2006-05-23  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (Fsave): Use tellp instead of pubseekoff to
-	determine whether we are at beginning of file.
-
-	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::increment,
-	OCTAVE_VALUE_INT_SCALAR_T::decrement,
-	OCTAVE_VALUE_INT_MATRIX_T::increment,
-	OCTAVE_VALUE_INT_MATRIX_T::decrement): New functions.
-	* OPERATORS/op-int.h (OCTAVE_INSTALL_M_INT_UNOPS,
-	OCTAVE_INSTALL_S_INT_UNOPS, OCTAVE_M_INT_UNOPS,
-	OCTAVE_S_INT_UNOPS): Uncomment increment and decrement ops.
-
-2006-05-19  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (SYMBOL_DEF::document): If definition is a function,
-	also pass doc string to function object.
-	* ov-fcn.h (octave_function::document): New function.
-	* defun.cc (print_usage (octave_function *)): New function.
-	(print_usage (void)): New function.
-	(print_usage (const std::string&)): Provide for backward
-	compatibility.  Ignore arg.
-	(Fprint_usage): Don't accept arg.
-	* defun-int.h (print_usage (void)): Provide decl.
-	(print_usage (const std::string&)): Tag with GCC_ATTR_DEPRECATED.
-
-2006-05-04  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/conv2.cc: New file from Octave Forge.
-	* Makefile.in (DLD_XSRC): Add it to the list
-
-2006-05-17  Bill Denney  <bill@givebillmoney.com>
-
-	* help.cc (keywords): Improve and Texinfoize.
-
-2006-05-17  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (Vwhos_line_format): Show class instead of type.
-	(symbol_table::parse_whos_line_format):
-	Use 't' for "Type" and 'c' for "Class".
-	(symbol_record::print_symbol_info_line): Likewise.
-	(maybe_list_cmp_fcn): Fix casts.
-
-2006-05-11  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (IMAGE_PATH_OPTION): New macro.
-	(usage_string, verbose_usage): Include --image-path option.
-	(long_opts): Include --image-path.
-	(octave_main): Handle IMAGE_PATH_OPTION.
-
-	* toplev.cc (Foctave_config_info): Delete fcnfilepath, imagepath,
-	localfcnfilepath, and localoctfilepath from the struct.
-	* defaults.h.in (OCTAVE_FCNFILEPATH, OCTAVE_IMAGEPATH,
-	OCTAVE_LOCALFCNFILEPATH, OCTAVE_LOCALOCTFILEPATH): Delete variables.
-
-	* octave.cc (octave_main): Call set_exec_path and set_load_path
-	instead of bind_internal_variable.
-
-	* defaults.cc (Fpathdef): Rename from FDEFAULT_LOADPATH.
-	Don't allow default path to be set.
-	(Fpath): Rename from FLOADPATH.  Make Matlab-compatible.
-	(update_load_path_dir_path): No need to pass VDEFAULT_LOADPATH to
-	dir_path constructor now.
-	(update_exec_path, FDEFAULT_EXEC_PATH,
-	set_default_default_exec_path, set_default_exec_path,
-	maybe_add_default_load_path): Delete functions.
-	(VDEFAULT_EXEC_PATH): Delete variable.
-	(FEXEC_PATH): Leading and trailing colons no longer special.
-	(set_exec_path, set_load_path, set_image_path,
-	maybe_add_path_elts): New functions.
-	(install_defaults): Call set_exec_path and set_load_path instead
-	of set_default_exec_path and set_default_path.  Don't call
-	set_default_default_exec_path.  Do call set_image_path.
-	* defaults.cc (genpath, Fgenpath): New functions.
-	(Vlocal_ver_oct_file_dir, Vlocal_api_oct_file_dir,
-	Vlocal_oct_file_dir, Vlocal_ver_fcn_file_dir,
-	Vlocal_api_fcn_file_dir, Vlocal_fcn_file_dir, Vimage_dir):
-	New variables.
-	(set_default_local_ver_oct_file_dir,
-	set_default_local_api_oct_file_dir,
-	set_default_local_oct_file_dir,
-	set_default_local_ver_fcn_file_dir,
-	set_default_local_api_fcn_file_dir,
-	set_default_local_fcn_file_dir, set_default_image_dir):
-	New functions.
-	(install_defaults): Call them.
-	* defaults.h.in (set_exec_path, set_load_path, set_image_path,
-	Vlocal_ver_oct_file_dir, Vlocal_api_oct_file_dir,
-	Vlocal_oct_file_dir, Vlocal_ver_fcn_file_dir,
-	Vlocal_api_fcn_file_dir, Vlocal_fcn_file_dir,
-	Vlocal_fcn_file_dir, Vimage_dir): Provide decls.
-
-2006-05-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (Fcellstr): Trim trailing blanks.
-	* Cell.h (Cell::Cell (const string_vector&)): New arg, TRIM.
-
-	* oct-hist.cc (initialize_history, Fhistory_size):
-	Also call command_history::set_size here.
-
-	* defun.cc (Fprint_usage): New function.
-	* help.cc (display_usage_text): New function.
-
-2006-05-09  Keith Goodman  <kwgoodman@gmail.com>
-
-	* DLD-FUNCTIONS/rand.cc: Doc string fix.
-
-2006-05-09  Jorge Barros de Abreu  <ficmatin01@solar.com.br>
-
-	* data.cc (FInf, FNaN): Fix typo in doc string.
-
-2006-05-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DEFUN_PATTERN): Match DEFUNX_DLD.
-	* mkbuiltins: Handle XDEFUNX_DLD_INTERNAL.
-	* mkgendoc: Likewise.
-	* mk-pkg-add: Likewise.  Do all the matching with sed.
-	* defun-int.h 	(DEFINE_FUNX_INSTALLER_FUN, DEFINE_FUNX_INSTALLER_FUN2,
-	DEFINE_FUNX_INSTALLER_FUN3): New macros.
-	(DEFINE_FUN_INSTALLER_FUN3): Define using DEFINE_FUNX_INSTALLER_FUN3.
-	(DEFUNX_DLD_INTERNAL): New macro.
-	* defun-dld.h (DEFUNX_DLD): New macro.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l: Mark __gnuplot_set__ as a
-	command, not a rawcommand.
-
-	* load-save.cc: No need to handle built-in variables.
-	* help.cc (simple_help): No need to handle built-in variables.
-
-	* variables.cc (is_builtin_variable, builtin_string_variable,
-	builtin_real_scalar_variable, builtin_any_variable):
-	Delete functions.
-	(Fexist, Fdocument, do_who, Fwho, link_to_builtin_or_function):
-	No need to handle built-in variables.
-	* variables.h (is_builtin_variable, builtin_string_variable,
-	builtin_real_scalar_variable, builtin_any_variable): Delete decls.
-
-	* symtab.h (symbol_record::symbol_def::is_builtin_variable,
-	symbol_record::is_builtin_variable): Delete.
-	(symbol_record::TYPE): Remove BUILTIN_VARIABLE from enum.
-	(symbol_record::symbol_def::is_variable, SYMTAB_ALL_TYPES,
-	SYMTAB_VARIABLES): No need to handle built-in variables now.
-	(symbol_record::define_builtin_variable,
-	symbol_record::link_to_builtin_variable): Delete decls.
-	* symtab.cc (record::define, SYMBOL_DEF::type,
-	SYMBOL_DEF::type_as_string): No need to handle built-in variables.
-	(symbol_record::define_builtin_variable): Delete.
-	(symbol_record::variable_reference): No need to attemp to link to
-	built-in variable.
-
-	* utils.cc (check_preference, warn_old_style_preference): Delete.
-	* utils.h (check_preference): Delete decl.
-
-	* defun-int.h: Delete all DEFVAR macros.
-
-	* Makefile.in, mkbuiltins: No need for VAR_FILES.
-
-	* parse.y (current_script_file_name): Delete all uses.
-	(clear_current_script_file_name): Delete function.
-
-	* variables.cc (symbols_of_variables): Delete DEFVAR and function.
-	(bind_ans): Lookup ans in curr_sym_tab, not fbi_sym_tab.
-	SR is no longer static, so we insert value in local scope.
-
-	* defun.cc (bind_builtin_variable): Delete function.
-	* defun-int.h: Delete decl.
-
-	* defaults.cc (fftw_wisdom_program): Rename from fftw_wisdom_prog.
-	Change all uses.
-	(VDEFAULT_LOADPATH): Rename from Vdefault_load_path.  Change all uses.
-	(VLOADPATH): Rename from Vload_path.  Change all uses.
-	(VDEFAULT_EXECPATH): Rename from Vdefault_exec_path.  Change all uses.
-	(VEXECPATH): Rename from Vexec_path.  Change all uses.
-	(VEDITOR): Rename from Veditor.  Change all uses.
-	(Ffftw_wisdom_program, FDEFAULT_LOADPATH, FLOADPATH,
-	FDEFAULT_EXEC_PATH, FEXEC_PATH, FEDITOR, FIMAGEPATH): New functions.
-	(fftw_wisdom_program, default_load_path, loadpath,
-	default_exec_path, exec_path, editor, image_path): Delete functions.
-	(symbols_of_defaults): Delete DEFVARs and function.
-
-	* pr-output.cc (set_output_prec_and_fw): Set Voutput_precision and
-	Voutput_max_field_width directly instead of calling
-	bind_builtin_variable.
-
-	* octave.cc (octave_main, maximum_braindamage):
-	Call bind_internal_variable instead of bind_builtin_variable.
-
-	* pager.cc (Fmore): Set Vpage_screen_output directly instead of
-	calling bind_builtin_variable.
-
-	* error.cc (Fwarning): Set Vdebug_on_warning directly instead of
-	calling bind_builtin_variable.
-
-	* error.cc (initialize_warning_options): Now static.
-	(disable_warning, initialize_default_warning_state): New functions.
-
-	* error.h (initialize_warning_options): Delete decl.
-	(initialize_default_warning_state): Provide decl.
-	* octave.cc (octave_main): Call initialize_default_warning_state
-	instead initialize_warning_options.
-
-	* lex.l (warn_matlab_incompatible, warn_separator_insert,
-	warn_single_quote_string): Delete functions.
-	(symbols_of_lex): Delete DEFVARS.
-	(Vwarn_matlab_incompatible, Vwarn_separator_insert,
-	Vwarn_single_quote_string): Delete variables.
-	(maybe_warn_separator_insert, gripe_single_quote_string,
-	gripe_matlab_incompatible): Call warning_with_id instead of warning.
-
-	* variables.h (SET_NONEMPTY_INTERNAL_STRING_VARIABLE,
-	SET_INTERNAL_VARIABLE_WITH_LIMITS): New macros.
-
-	* ls-oct-ascii.cc (Fsave_precision): New function.
-	(save_precision): Delete function.
-	(symbols_of_ls_oct_ascii): Delete DEFVAR and function.
-
-	* oct-hist.cc (initialize_history): New function.
-	* oct-hist.h: Provide decl.
-	* octave.cc (octave_main): Call initialize_history instead of
-	command_history::read.
-
-	* oct-hist.cc (Fhistory_size, Fhistory_file,
-	Fhistory_timestamp_format_string, Fsaving_history): New functions.
-	(history_size, history_file, history_timestamp_format_string,
-	saving_history): Delete functions.
-	(symbols_of_oct_hist): Delete DEFVARs and function.
-
-	* pt-mat.cc (Fstring_fill_char): New function.
-	(string_fill_char): Delete function.
-	(symbols_of_pt_mat): Delete DEFVAR and function.
-
-	* variables.cc (Fignore_function_time_stamp, ans): New functions.
-	(ignore_function_time_stamp): Delete function.
-	(symbols_of_variables): Delete DEFVARs and function.
-
-	* oct-procbuf.cc: (Vkluge_procbuf_delay): Delete variable.
-	(octave_procbuf::open): Never delay after fork.
-	(kluge_procbuf_delay): Delete function.
-	(symbols_of_oct_procbuf): Delete DEFVAR and function.
-
-	* dirfns.cc (Fconfirm_recursive_rmdir): New function.
-	(confirm_recursive_rmdir): Delete function.
-	(symbols_of_dirfns): Delete DEFVAR and function.
-
-	* error.cc (initialize_warning_options): Now extern.
-	Rename from init_warning_options.
-	* error.h: Provide decl.
-	* octave.cc (octave_main): Call it here.
-
-	* error.cc (Fbeep_on_error, Fdebug_on_error, Fdebug_on_warning):
-	New functions.
-	(beep_on_error, debug_on_error, debug_on_warning): Delete Functions.
-	(symbols_of_error): Delete DEFVARs and function.
-
-	* help.cc (Finfo_file, Finfo_program, Fmakeinfo_program,
-	Fsuppress_verbose_help_message): New function.
-	(info_file, info_program, makeinfo_program,
-	suppress_verbose_help_message): Delete function.
-	(symbols_of_help): Delete DEFVARs and function.
-	(Vinfo_program): Rename from Vinfo_prog.  Change all uses.
-
-	* input.cc (FPS1, FPS2, FPS4, Fcompletion_append_char,
-	Fecho_executing_commands): New functions.
-	(ps1, ps2, ps4, completion_append_char, echo_executing_commands):
-	Delete functions.
-	(symbols_of_input): Delete DEFVARs and function.
-	(VPS1, VPS2, VPS4): Rename from Vps1, Vps2, Vps4.  Change all uses.
-	(Fecho): Set Vecho_executing_commands directly.
-
-	* load-save.cc (crash_dumps_octave_core, Fdefault_save_options,
-	Foctave_core_file_limit, Foctave_core_file_name,
-	Foctave_core_file_options, Fsave_header_format_string):
-	New functions.
-	(crash_dumps_octave_core, default_save_options,
-	octave_core_file_limit, octave_core_file_name,
-	octave_core_file_options, save_header_format_string):
-	Delete functions.
-	(symbols_of_load_save): Delete DEFVARs and function.
-
-	* ov-base.cc (Fprint_answer_id_name, Fsilent_functions): New functions.
-	(print_answer_id_name, silent_functions): Delete functions.
-	(symbols_of_ov_base): Delete DEFVARs and function.
-
-	* ov-usr-fcn.cc (Fmax_recursion_depth): New function.
-	(max_recursion_depth): Delete function.
-	(symbols_of_ov_usr_fcn): Delete DEFVAR for max_recursion_depth.
-	Delete function.
-
-	* pager.cc (Fpage_output_immediately, Fpage_screen_output, FPAGER):
-	New functions.
-	(page_output_immediately, page_screen_output, pager_binary):
-	Delete functions.
-	(symbols_of_pager): Delete DEFVARs and function.
-	(VPAGER): Rename from Vpager_binary.  Change all uses.
-
-	* pr-output.cc (Ffixed_point_format, Fprint_empty_dimensions,
-	Fsplit_long_rows, Foutput_max_field_width, Foutput_precision,
-	Fstruct_levels_to_print): New functions.
-	(fixed_point_format, print_empty_dimensions, split_long_rows,
-	output_max_field_width, output_precision, struct_levels_to_print):
-	Delete functions.
-	(symbols_of_pr_output): Delete DEFVARs and function.
-
-	* pt-assign.cc (Fprint_rhs_assign_val): New function.
-	(print_rhs_assign_val): Delete function.
-	(symbols_of_pt_assign): Delete DEFVAR.  Delete function.
-
-	* sighandlers.cc (Fdebug_on_interrupt, Fsighup_dumps_octave_core,
-	Fsigterm_dumps_octave_core): New functions.
-	(debug_on_interrupt, sighup_dumps_octave_core,
-	sigterm_dumps_octave_core): Delete functions.
-	(symbols_of_sighanlders): Delete DEFVARs.  Delete function.
-
-	* symtab.cc (Vdebug_symtab_lookups): Now bool.
-	(Fdebug_symtab_lookups, Fwhos_line_format,
-	Fvariables_can_hide_functions): New functions.
-	(debug_symtab_lookups, whos_line_format,
-	variables_can_hide_functions): Delete functions.
-	(symbols_of_symtab): Delete DEFVARs and function.
-
-2006-05-04  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sqqr (Fdmperm): Allow compilation with versions
-	v2.0.0 of CXSparse or later.
-
-2006-05-04  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (set_internal_variable): Move here from
-	DLD-FUNCTIONS/__gnuplot_raw__.l.
-	* variables.h (SET_INTERNAL_VARIABLE): Likewise.
-	(set_internal_variable): Provide decls.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l: Convert all DEFVARs to DEFUN_DLDs.
-	(gnuplot::init): Delete.
-	(gnuplot::gnuplot): Don't call init here.
-	(set_internal_variable): New functions.
-	(SET_INTERNAL_VARIABLE): New macro.
-
-	* Makefile.in: Undo changes of 2006-03-16.
-	* DLD-FUNCTINS/__gnuplot_raw__.l: Move here from __gnuplot_raw__.l.
-	Undo changes of 2006-03-16.
-
-2006-05-03  David Bateman  <dbateman@free.fr>
-
-	* ov-base-mat.h: Add caching of matrix type, and code to supply
-	and copy matrix type.
-	* ov-bool-mat.h: Add caching to constructor.
-	* ov-re-mat.h: ditto.
-	* ov-cx-mat.h: ditto.
-	* ov.cc: Add to the BoolMatrix, Matrix and the ComplexMatrix
-	octave_value constructors, the ability to specify the matrix type.
-	* ov.h: Adapt declaration of above constructors.
-	(MatrixType matrix_type(void) const, MatrixType matrix_type (const
-	MatrixType&)): New functions for probing and setting matrix type.
-	* ov-base.cc (virtual MatrixType matrix_type(void) const, virtual
-	MatrixType matrix_type (const MatrixType&)): New default functions
-	for probing and setting matrix type.
-	* ov-base.h  (virtual MatrixType matrix_type(void) const, virtual
-	MatrixType matrix_type (const MatrixType&)): Declarations.
-	* ov-base-sparse.h: Replace all uses of SparseType with
-	MatrixType. Replace sparse_type function with matrix_type function.
-	* ov-bool-sparse.h: Replace all uses of SparseType with MatrixType.
-	* ov-cx-sparse.h: ditto.
-	* ov-re-sparse.h: ditto.
-	* sparse-xdiv.cc: ditto.
-	* sparse-xdiv.h: ditto.
-	* sparse-xpow.cc: ditto.
-	* DLD-FUNCTIONS/luinc.cc: ditto.
-	* DLD-FUNCTIONS/splu.cc: ditto.
-	* xdiv.cc (xdiv, xleftdiv): Pass the matrix type, simplfy since
-	the matrix solve function now calls lssolve if singular.
-	* xdiv.h (xdvi, xleftdiv): Update the declarations
-	* OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-m.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
-	OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-s-cm.cc, OPERATORS/op-s-m.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-m.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-m.cc: Update use of
-	xdiv and xleftdiv functions to allow matrix type caching.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Update to allow typing
-	 of Matrix, and ComplexMatrix types. Add new test code for this.
-
-	* DLD-FUNCTIONS/cellfun.cc (Fmat2cell): new function.
-
-	* DLD-FUNCTIONS/regexp.cc (class regexp_elem): New class to store
-	matched element in a std::list.
-	(octregexp_list): Take algorithm from octregexp and construct a
-	list of matches.
-	(octregexp): Rewrite to use linked list of matches.
-	(Fregexprep): New function, working directly in linked list of
-	matches.
-
-2006-05-02  John W. Eaton  <jwe@octave.org>
-
-	* lex.l ({CCHAR}): Exit rawcommand mode if returning '\n' token.
-
-2006-05-02  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Require real scalar for seed.
-
-2006-05-01  John W. Eaton  <jwe@octave.org>
-
-	* error.h (Vwarning_option): Delete.
-	* variables.cc (looks_like_struct): Remove use from commented code.
-
-	* gripes.cc, gripes.h (gripe_implicit_conversion): New arg, ID.
-	Change all uses.
-
-	* defaults.cc (set_local_site_defaults_file, set_site_defaults_file):
-	Allow filenames to be set from the environment.
-
-	* oct-map.cc (octave_map::resize): No longer const.
-	* ov-struct.h (octave_struct::resize): Deal with it.
-
-	* octave.cc (initialize_error_handlers): Also call
-	set_liboctave_warning_with_id_handler.
-	(execute_startup_files): Check that home_rc is not an empty string.
-	(F__version_info__): Resize vinfo before assigining elements.
-
-	* ov-base.cc (warn_num_to_str, warn_resize_on_range_error):
-	Delete functions.
-	(symbols_of_ov_base): Delete DEFVARS.
-	(Vwarn_num_to_str, Vwarn_resize_on_range_error): Delete variables.
-	(value::convert_to_str): Check state of warning ID
-	Octave:num-to-str instead of using Vwarn_num_to_str.
-	* OPERATORS/op-chm.cc: Likewise.
-	* ov-base.h (Vwarn_num_to_str, Vwarn_resize_on_range_error):
-	Delete decls.
-
-	* ov-list.cc (octave_list::assign): Call warning_with_id instead
-	of warning.
-
-	* parse.y (warn_assign_as_truth_value, warn_associativity_change,
-	warn_function_name_clash, warn_future_time_stamp,
-	warn_missing_semicolon, warn_precedence_change,
-	warn_variable_switch_label, symbols_of_parse):
-	Delete DEFVARs and functions.
-	(Vwarn_assign_as_truth_value, Vwarn_associativity_change,
-	Vwarn_function_name_clash, Vwarn_future_time_stamp,
-	Vwarn_missing_semicolon, Vwarn_precedence_change,
-	Vwarn_variable_switch_label): Delete variables.
-	* parse.h (Vwarn_future_time_stamp): Delete decl.
-	* parse.y (fold): Check state of warning ID
-	Octave:associativity-change and Octave:precedence-change instead
-	of using Vwarn_associativity_change and Vwarn_precedence_change.
-	(maybe_warn_associativity_change, maybe_warn_missing_semi,
-	maybe_warn_assign_as_truth_value, make_binary_op, make_boolean_op,
-	frob_function): Call warning_with_id instead of warning.
-	* dynamic-ld.cc (octave_dynamic_loader::do_load): Likewise.
-
-	* ov.cc (warn_fortran_indexing, warn_imag_to_real, symbols_of_ov):
-	Delete DEFVARs and functions.
-	(Vwarn_fortran_indexing, Vwarn_imag_to_real): Delete variables.
-
-	* ov.cc (octave_value::vector_value, octave_value::int_vector_value,
-	octave_value::complex_vector_value): Check state of warning ID
-	Octave:fortran-indexing instead of using Vwarn_fortran_indexing.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::double_value,
-	octave_sparse_complex_matrix::complex_value): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::matrix_value,
-	octave_complex_matrix::complex_value): Likewise.
-	* ov-re-mat.cc (octave_matrix::complex_value,
-	octave_matrix::double_value): Likewise.
-	* ov-streamoff.cc (octave_streamoff::streamoff_value): Likewise.
-	* ov-re-sparse.cc (octave_sparse_matrix::complex_value,
-	octave_sparse_matrix::double_value): Likewise.
-	* ov-range.cc (octave_range::complex_value,
-	octave_range::double_value): Likewise.
-	* ov-ch-mat.cc (octave_char_matrix::complex_value,
-	octave_char_matrix::double_value): Likewise.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::complex_value,
-	octave_sparse_bool_matrix::double_value): Likewise.
-	* ov-bool-mat.cc (octave_bool_matrix::complex_value,
-	octave_bool_matrix::double_value): Likewise.
-
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::double_value,
-	octave_sparse_complex_matrix::matrix_value,
-	octave_sparse_complex_matrix::sparse_matrix_value): Check state of
-	warning ID Octave:imag-to-real instead of using Vwarn_imag_to_real.
-	* ov-cx-mat.cc (octave_complex_matrix::double_value,
-	octave_complex_matrix::matrix_value,
-	octave_complex_matrix::complex_value,
-	octave_complex_matrix::sparse_matrix_value): Likewise.
-	* ov-complex.cc (octave_complex::double_value,
-	octave_complex::matrix_value, octave_complex::array_value): Likewise.
-
-	* ov.h (Vwarn_fortran_indexing, Vwarn_imag_to_real): Delete decls.
-
-	* pt-mat.cc (warn_empty_list_elements, warn_string_concat):
-	Delete functions.
-	(symbols_of_pt_mat): Delete DEFVARs.
-	(Vwarn_empty_list_elements, Vwarn_string_concat): Delete variables.
-	(tm_row_const::tm_row_const_rep::eval_warning, tm_const::init,
-	maybe_warn_string_concat): Call warning_with_id instead of warning.
-
-	* ov-str-mat.cc (warn_str_to_num, symbols_of_ov_str_mat):
-	Delete DEFVAR and functions.
-	(Vwarn_str_to_num): Delete variable.
-	(CHAR_MATRIX_CONV): Call warning_with_id instead of warning.
-
-	* utils.cc (warn_neg_dim_as_zero, symbols_of_utils):
-	Delete DEFVAR and functions.
-	(Vwarn_neg_dim_as_zero): Delete variable.
-	(check_dimensions): Call warning_with_id instead of warning.
-
-	* pt-misc.cc (warn_undefined_return_values, symbols_of_pt_misc):
-	Delete DEFVAR and functions.
-	(Vwarn_undefined_return_values): Delete variable.
-	(tree_parameter_list::initialize_undefined_elements):
-	Call warning_with_id instead of warning.
-
-	* dynamic-ld.cc	(warn_reload_forces_clear, symbols_of_dynamic_ld):
-	Delete DEFVAR and functions.
-	(Vwarn_reload_forces_clear): Delete variable.
-	(do_clear_function, octave_dynamic_loader::do_load):
-	Call warning_with_id instead of warning.
-	* error.cc (warning_enabled): Now extern.
-	(Fwarning): If specific id is not found, return state of "all".
-
-	* error.h: Provide decl.
-
-	* gripes.cc (warn_divide_by_zero, symbols_of_gripes):
-	Delete DEFVAR and functions.
-	(gripe_divide_by_zero): Check whether warning is enabled, then
-	call warning_with_id instead of warning.
-	(Vwarn_divide_by_zero): Delete variable.
-
-2006-04-27  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (Fexist): Fix doc string.
-
-	* help.cc (simple_help): No need to handle built-in constants now.
-	* variables.cc (do_who): Likewise.
-	(symbol_exist): Likewise.
-	(link_to_builtin_or_function): Likewise.
-	* symtab.cc (SYMBOL_DEF::type_as_string): Likewise.
-	(record::read_only_error): Likewise.
-	(SYMBOL_DEF::type): Likewise.
-	(record::variable_reference): Likewise.
-	(symbol_record::define_builtin_const): Delete function.
-
-	* symtab.h (symbol_record::define_builtin_const): Delete decl.
-	(symbol_record::symbol_def::is_constant): Delete function.
-	(symbol_record::symbol_def::is_builtin_constant): Delete function.
-	(symbol_record::symbol_def::is_constant): Delete function.
-	(symbol_record::is_builtin_constant): Delete function.
-	(SYMTAB_ALL_TYPES): No need to handle builtin-constants now.
-	(symbol_record::TYPE): Remove BUILTIN_CONSTANT from enum.
-
-	* defun.cc (install_builtin_constant): Delete function.
-	* defun-int.h (install_builtin_constant): Delete decl.
-
-	* variables.cc (bind_builtin_constant): Delete function.
-	* variables.h (bind_builtin_constant): Delete decl.
-
-	* defun-int.h (DEFCONST, DEFCONSTX, DEFCONST_INTERNAL,
-	DEFCONSTX_INTERNAL): Delete definitions.
-
-	* sighandlers.cc (FSIG): New function to replace DEFCONST in
-	symbols_of_sighandlers.
-
-	* octave.cc (intern_argv): Set octave_argv instead of calling
-	bind_builtin_variable here.
-	(Fargv, Fprogram_invocation_name, Fprogram_name): New functions to
-	replace DEFCONSTs in symbols_of_toplvev in toplev.cc.
-	(octave_program_invocation_name, octave_program_name):
-	New static variables.
-	(execute_command_line_file): Use unwind_protect_str to protect
-	octave_program_invocation_name, octave_program_name instead of
-	using a restore function.
-	(restore_program_name): Delete.
-
-	* defaults.cc (FOCTAVE_HOME): New function to replace DEFCONST in
-	symbols_of_defaults.
-
-2006-04-27  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp): Fix for infinite loop in
-	regexp. Include news regexp arguments, and associated tests.
-
-2006-04-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc: Also instantiate do_read functions for boolNDArray.
-
-2006-04-26  Bill Denney  <denney@seas.upenn.edu>
-
- 	* pager.cc (Fterminal_size): Add list_in_columns to @seealso.
-
-2006-04-26  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Ffilesep): New function to replace DEFCONST in
-	symbols_of_dirfns.
-	(Fpathsep): New function.
-
-	* defaults.cc (set_default_default_exec_path): Use
-	dir_path::path_sep_str instead of std::string (SEPCHAR_STR).
-	(set_default_exec_path): Likewise.
-	(set_default_path): Likewise.
-	(maybe_add_default_load_path): Likewise.  Use dir_path::is_path_sep.
-
-2006-04-18  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/regexp.cc: Include <algorithm>, for transform decl.
-
-	* DLD-FUNCTIONS/ccolamd.cc (Fccolamd, Fcsymamd):
-	Always return something.
-
-	* sighandlers.cc (octave_set_signal_handler,
-	octave_set_interrupt_handler): New arg, restart_syscalls, with
-	default value true.
-	* sighandlers.h: Fix decls to match.
-	* sysdep.cc (octave_kbhit): Disable restarting of system calls.
-
-	* help.cc (Flookfor): Add std qualifier to transform function.
-	Include <algorithm>, for transform decl.
-
-2006-04-16  John W. Eaton  <jwe@octave.org>
-
-	* pager.h (octave_diary_buf, octave_pager_buf): Use std:stringbuf
-	directly.
-
-	* ls-mat-ascii.cc (read_mat_ascii_data): Use std::istringstream
-	directly.
-	* load-save.cc (parse_save_options): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-	* oct-strstrm.h (octave_istrstream::is): Likewise.
-
-	* __gnuplot_raw__.l (printrange, handle_using, gnuplot::do_open,
-	gnuplot::do_set, gnuplot::do_show, gnuplot::makeplot,
-	gnuplot::handle_title): Use std::ostringstream directly.
-	* toplev.cc (run_command_and_return_output): Likewise.
-	* symtab.h (symbol_table::symbol_table): Likewise.
-	* strfns.cc (Flist_in_columns): Likewise.
-	* pt.cc (tree::str_print_code): Likewise.
-	* parse.y (yyerror, fold, finish_matrix): Likewise.
-	* pr-output.cc (PRINT_ND_ARRAY, octave_print_internal, Fdisp):
-	Likewise.
-	* symtab.cc (symbol_table::print_descriptor): Likewise.
-	* ov-list.cc (octave_list::print_raw, octave_list::save_ascii,
-	octave_list::save_binary, octave_list::save_hdf5): Likewise.
-	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline,
-	octave_fcn_inline::load_ascii, octave_fcn_inline::print_raw,
-	Finline): Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
-	octave_fcn_handle::save_binary, octave_fcn_handle::save_hdf5):
-	Likewise.
-	* ov-cs-list.cc (octave_cs_list::print_raw): Likewise.
-	* ov-cell.cc (octave_cell::print_raw, octave_cell::save_hdf5):
-	Likewise.
-	* oct-strstrm.h (octave_ostrstream::os, octave_ostrstream::str):
-	Likewise.
-	* oct-stream.h (scanf_format_list::buf, printf_format_list::buf):
-	Likewise.
-	* oct-stream.cc (scanf_format_list::scanf_format_list,
-	printf_format_list::printf_format_list,
-	octave_base_stream::do_gets, BEGIN_CHAR_CLASS_CONVERSION,
-	octave_stream_list::do_list_open_files): Likewise.
-	* ls-oct-ascii.h (extract_keyword): Likewise.
-	* load-save.cc (do_load): Likewise.
-	* lex.l (have_continuation, handle_string): Likewise.
-	* input.cc (get_user_input): Likewise.
-	* dirfns.cc (Fls): Likewise.
-	* error.cc (error_message_buffer, vwarning, verror, pr_where):
-	Likewise.
-	* defun.cc (print_usage): Likewise.
-	* help.cc (display_help_text, Ftype, first_help_sentence):
-	Likewise.
-	* ls-mat5.cc (save_mat5_binary_element): Likewise.
-	* DLD-FUNCTIONS/regexp.cc (octregexp): Likewise.
-	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Likewise.
-
-2006-04-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (lex.o parse.o __gnuplot_raw__.o, pic/parse.o
-	pic/__gnuplot_raw__.o):	Omit -Wold-style-cast from CXXFLAGS.
-
-	* ls-mat5.cc (READ_INTEGER_DATA): Allocate local buffer to avoid
-	pointer tricks.
-
-	* DLD-FUNCTIONS/regexp.cc (octregexp): Use OCTAVE_LOCAL_BUFFER
-	instead of allocting memory with malloc.
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): Use octave_value extractors
-	instead of using get_rep.
-
-	* DLD-FUNCTIONS/dispatch.cc (dispatch_record): Use dynamic_cast,
-	not reinterpret_cast.
-
-	* DLD-FUNCTIONS/besselj.cc (Fairy): Use int_value instead of
-	double_value and cast to extract kind arg.
-	(int_arrayN_to_array): Arg is ArrayN<octave_idx_type>, not ArrayN<int>.
-
-	* OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
-	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
-	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
-	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc: No need to cast
-	away const just to cache sparse type.
-	* ov-base-sparse.h (octave_base_sparse::typ): Now mutable.
-	(octave_base_sparse::sparse_type): Now const.
-
-	* OPERATORS/op-cm-scm.cc (DEFBINOP(div)): Explicitly cast args
-	here instead of using CAST_BINOP_ARGS.
-
-	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP): Second arg to
-	CAST_BINOP_ARGS is also const.
-
-	* DLD-FUNCTIONS/chol.cc (Fcholinv, Fchol2inv): Eliminate nargout
-	arg to avoid unused variable warnings.
-
-	* unwind-prot.h, unwind-prot.cc (unwind_protect::save_bool,
-	unwind_protect::save_int, unwind_protect::save_str,
-	unwind_protect::save_ptr, unwind_protect::save_var):
-	Pointer args now const.
-	(unwind_protect_const_ptr): New macro.
-
-	* symtab.cc (maybe_list_cmp_fcn): Use static_cast instead of X_CAST.
-	* variables.cc (symbol_record_name_compare): Likewise.
-	* ls-mat5.cc (MAT5_DO_WRITE, save_mat5_binary_element): Likewise.
-
-	* ov-fcn-handle.cc (octave_fcn_handle::save_hdf5,
-	octave_fcn_handle::load_hdf5): Eliminate unnecessary casts.
-	* ov-fcn-inline.cc (octave_fcn_inline::save_hdf5,
-	octave_fcn_inline::load_hdf5): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::save_hdf5,
-	octave_char_matrix_str::load_hdf5): Likewise.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_hdf5,
-	octave_sparse_bool_matrix::load_hdf5): Likewise.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::save_hdf5,
-	octave_sparse_complex_matrix::load_hdf5): Likewise.
-	* ov-re-sparse.cc (octave_sparse_matrix::save_hdf5,
-	octave_sparse_matrix::load_hdf5): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::save_ascii,
-	octave_char_matrix_str::load_ascii): Likewise.
-	* mappers.cc (xtoascii): Likewise.
-	* load-save.cc (read_binary_file_header, write_header): Likewise.
-	* parse.y (get_help_from_file, parse_fcn_file): Likewise.
-	* DLD-FUNCTIONS/rand.cc (do_rand): Likewise.
-	* ls-hdf5.cc (read_hdf5_data, hdf5_add_attr, save_hdf5_empty,
-	load_hdf5_empty add_hdf5_data): Likewise.
-	* ls-mat4.cc (read_mat_binary_data): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-
-	* oct-stream.cc (expand_char_class, octave_base_stream::do_gets):
-	Use static_cast instead of C-style cast.
-	* oct-procbuf.cc (kluge_procbuf_delay): Likewise.
-	* parse.y (gobble_leading_white_space,: Likewise.
-	* DLD-FUNCTIONS/besselj.cc (int_array2_to_matrix,
-	int_arrayN_to_array): Likewise.
-	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd): Likewise.
-	* DLD-FUNCTIONS/ccolamd.cc (Fcsymamd): Likewise.
-	* pt-pr-code.cc (tree_print_code::print_comment_elt): Likewise.
-	* DLD-FUNCTIONS/besselj.cc (do_bessel): Likewise.
-	* DLD-FUNCTIONS/spchol.cc (Fsymfact): Likewise.
-	* DLD-FUNCTIONS/sparse.cc (sparse_find): Likewise.
-	* DLD-FUNCTIONS/sort.cc (FloatFlip): Likewise.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element, OCTAVE_MAT5_INTEGER_READ,
-	read_mat5_binary_element, save_mat5_binary_element): Likewise.
-
-	* DLD-FUNCTIONS/splu.cc (Fspinv): Use dynamic_cast instead of
-	C-style cast.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Likewise.
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort): Use reinterpret_cast instead of
-	C-style cast.
-	* ls-mat5.cc (write_mat5_tag): Likewise.
-
-	* ov-typeinfo.h (octave_value_typeinfo::octave_value_typeinfo):
-	Eliminate unnecessary casts in constructor initializers.
-
-	* ops.h (CAST_CONV_ARG, CAST_UNOP_ARG, CAST_BINOP_ARGS,
-	DEFASSIGNANYOP_FN): Use C++ dynamic_cast instead of DYNAMIC_CAST macro.
-
-	* unwind-prot.h (unwind_protect_ptr): Use combination of
-	reinterpret_cast and const_cast instead of X_CAST.
-
-	* dynamic-ld.cc (loader::do_load): Use reinterpret_cast instead of
-	X_CAST.
-	* ov-base-int.cc (octave_base_int_matrix<T>::save_binary,
-	octave_base_int_matrix<T>::load_binary,
-	octave_base_int_scalar<T>::save_binary,
-	octave_base_int_scalar<T>::load_binary): Likewise.
-	* ov-bool-mat.cc (octave_bool_matrix::save_binary,
-	octave_bool_matrix::load_binary): Likewise.
-	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_binary,
-	octave_sparse_bool_matrix::load_binary): Likewise.
-	* ov-bool.cc (octave_bool::save_binary, octave_bool::load_binary):
-	Likewise.
-	* ov-cell.cc (octave_cell::save_binary, octave_cell::load_binary):
-	Likewise.
-	* ov-complex.cc (octave_complex::save_binary,
-	octave_complex::load_binary): Likewise.
-	* ov-cx-mat.cc (octave_matrix::save_binary,
-	octave_matrix::load_binary): Likewise.
-	* ov-cx-sparse.cc (octave_sparse_complex_matrix::save_binary,
-	octave_sparse_complex_matrix::load_binary): Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::save_binary,
-	octave_fcn_handle::load_binary): Likewise.
-	* ov-fcn-inline.cc (octave_fcn_inline::save_binary,
-	octave_fcn_inline::load_binary): Likewise.
-	* ov-list.cc (octave_list::save_binary, octave_list::load_binary):
-	Likewise.
-	* ov-range.cc (octave_range::save_binary, octave_range::load_binary):
-	Likewise.
-	* ov-re-mat.cc (octave_matrix::save_binary,
-	octave_matrix::load_binary): Likewise.
-	* ov-re-sparse.cc (octave_sparse_matrix::save_binary,
-	octave_sparse_matrix::load_binary): Likewise.
-	* ov-scalar.cc (octave_scalar::save_binary,
-	octave_scalar::load_binary): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::save_binary,
-	(octave_char_matrix_str::load_binary): Likewise.
-	* ov-struct.cc (octave_struct::save_binary,
-	octave_struct::load_binary): Likewise.
-	* ls-oct-binary.cc (save_binary_data, read_binary_data): Likewise.
-	* ls-mat4.cc (read_mat_file_header, save_mat_binary_data): Likewise.
-	* ls-mat5.cc (read_mat5_tag, read_mat5_binary_element,
-	read_mat5_binary_element, read_mat5_binary_file_header,
-	MAT5_DO_WRITE, write_mat5_array, write_mat5_integer_data,
-	save_mat5_binary_element, READ_INTEGER_DATA): Likewise.
-
-2006-04-12  John W. Eaton  <jwe@octave.org>
-
-	* ov.h (OV_REP_TYPE): New macro.
-
-	* DLD-FUNCTIONS/sparse.cc (MINMAX_BODY): No need to cast arg1 to
-	const octave_sparse_matrix&.
-
-	* ov-base.cc (print_answer_id_name, warn_resize_on_range_error,
-	warn_num_to_str, silent_functions): Move here, from ov.cc.
-	(Vwarn_resize_on_range_error, Vsilent_functions): Likewise.
-	(Vprint_answer_id_name): Likewise.  Now static.
-	(symbols_of_ov_base): New function.  Move DEFVARs for
-	print_answer_id_name, warn_resize_on_range_error, warn_num_to_str,
-	and silent_functions here from symbols_of_ov in ov.cc.
-	* ov.h (Vprint_answer_id_name): Delete decl.
-	* ov-base.h (Vwarn_resize_on_range_error, Vwarn_num_to_str):
-	Move decls here from ov.h.
-
-	* ov-str-mat.cc (warn_str_to_num): Move here, from ov.cc.
-	(Vwarn_str_to_num): Likewise.  Now static.
-	(symbols_of_ov_str_mat): New function.  Move DEFVAR for
-	warn_str_to_num here from symbols_of_ov in ov.cc.
-	* ov.h (Vwarn_str_to_num): Delete decl.
-
-	* ov-struct.cc (octave_struct::load_ascii): Pass loop counter, not
-	count, to read_ascii.
-	* ov-list.cc (octave_list::load_ascii): Likewise.
-
-	* ov-list.cc (octave_list::do_index_op): Allow index to extract
-	multiple items.  Result is always a list.
-
-	* pr-output.cc (struct_levels_to_print): Move here from ov.cc.
-	(Vstruct-levels_to_print): Likewise.
-	(symbols_of_pr_output): Move DEFVAR for struct_levels_to_print here
-	from symbols_of_ov in ov.cc.
-	* pr-output.h (Vstruct_levels_to_print): Nove decl here from ov.h.
-
-	* gripes.cc (warn_divide_by_zero): Move here from ov.cc.
-	(Vwarn_divide_by_zero): Likewise.  Now static.
-	(symbols_of_gripes): New function.  Move DEFVAR for
-	warn_divide_by_zero here from symbols_of_ov in ov.cc.
-	* ov.h (Vwarn_divide_by_zero): Delete decl.
-
-	* load-save.cc (do_load): Declare count octave_idx_type, not int.
-	* ls-oct-ascii.cc, ls-oct-ascii.h (read_ascii_data): Likewise.
-
-	Rearrange octave_value class hierarchy so that rep is a pointer
-	an octave_base_value object and the octave_base_value class
-	stores the reference count.  Virtualness now goes with the
-	octave_base_value class, not the octave_value class.
-
-	* ops.h, ov-base-int.cc, ov-base-int.h, ov-base-mat.h,
-	ov-base-scalar.h, ov-base-sparse.h, ov-base.cc, ov-base.h,
-	ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc,
-	ov-bool-sparse.h, ov-bool.cc, ov-bool.h, ov-cell.cc, ov-cell.h,
-	ov-ch-mat.h, ov-colon.h, ov-complex.cc, ov-complex.h,
-	ov-cs-list.h, ov-cx-mat.cc, ov-cx-mat.h, ov-cx-sparse.cc,
-	ov-cx-sparse.h, ov-fcn-handle.h, ov-fcn-inline.h, ov-fcn.cc,
-	ov-fcn.h, ov-intx.h, ov-list.cc, ov-list.h, ov-range.cc,
-	ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc,
-	ov-re-sparse.h, ov-scalar.h, ov-str-mat.cc, ov-str-mat.h,
-	ov-streamoff.h, ov-struct.cc, ov-struct.h, ov-type-conv.h,
-	ov-typeinfo.cc, ov-typeinfo.h, ov-va-args.h, ov.cc, ov.h,
-	variables.cc, DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/splu.cc,
-	OPERATORS/op-chm.cc: Cope with octave_value hierarchy changes
-	(apologies for the lack of detail).
-
-	* ov.cc (octave_value::nil_rep): Delete.
-	* ov.h (octave_value::nil_rep): Delete decl.
-
-	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA,
-	DECLARE_OV_BASE_TYPEID_FUNCTIONS_AND_DATA,
-	DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2,
-	DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA):
-	Move macro definitions here from ov.h.
-	(struct_indent, increment_struct_indent, decrement_struct_indent,
-	list_indent, increment_list_indent, decrement_list_indent):
-	Delete decls.
-
-	* ov-base.cc. ov-base.h (do_index_op, ndims, all, any,
-	convert_to_str, print_with_name, numeric_assign,
-	reset_indent_level, increment_indent_level,
-	decrement_indent_level, current_print_indent_level, newline,
-	indent, reset): Move member functions here from octave_value class.
-	(count, curr_print_indent_level, beginning_of_line):
-	Move data members here from octave_value class.
-	(gripe_indexed_assignment, gripe_assign_conversion_failed,
-	gripe_no_conversion): Move here from ov.cc.
-
-	* ov.h (class octave_xvalue): Delete.
-	(octave_value::octave_value (const octave_xvalue&)): Delete.
-	(anonymous union): Delete.
-	(octave_value::rep): Now a pointer to octave_base_value instead of
-	octave_value.
-
-	(octave_value::internal_rep): Return pointer to octave_base_value,
-	not octave_value.
-
-2006-04-11  John W. Eaton  <jwe@octave.org>
-
-	* pt-assign.cc (tree_simple_assignment::rvalue,
-	tree_multi_assignment::rvalue):
-	Error if RHS is a comma-separated list.
-
-2006-04-07  John W. Eaton  <jwe@octave.org>
-
-	* defaults.cc (FOCTAVE_VERSION): New function to replace
-	corresponding DEFCONSTX macro in symbols_of_defaults.
-
-	* file-io.cc (FP_tmpdir, FSEEK_SET, FSEEK_CUR, FSEEK_END, Fstdin,
-	Fstdout, Fstderr): New functions to replace DEFCONSTX macros in
-	symbols_of_file_io.
-	(const_value): New static function.
-	(symbols_of_file_io): Delete.
-
-	* syscalls.cc (FF_DUPFD, FF_GETFD, FF_GETFL, FF_SETFD, FF_SETFL,
-	FO_APPEND, FO_ASYNC, FO_CREAT, FO_EXCL, FO_NONBLOCK, FO_RDONLY,
-	FO_RDWR, FO_SYNC, FO_TRUNC, FO_WRONLY, FWNOHANG, FWUNTRACED,
-	FWCONTINUE): New functions to replace DEFCONSTX macros in
-	symbols_of_syscalls.
-	(const_value): New static function.
-	(symbols_of_syscalls): Delete.
-
-	* pr-output.cc (pr_max_internal, pr_min_internal):
-	Return 0 if all values are Inf or NaN.
-	Always leave space for sign when printing Inf or NaN values.
-
-	* parse.y (Fmfilename): Don't let filenames like ../foo fake us out.
-
-	* data.cc (fill_matrix): Create separate versions for int, bool,
-	and double, and Complex values.
-	(FInf, FNaN, Fe, Feps, Fpi, Frealmax, Frealmin, FI, FNA, Ffalse,
-	Ftrue): New functions to replace DEFCONST and DEFCONSTX macros in
-	symbols_of_data.  Provide i, J, and j aliases for I.
-	Provide nan alias for NaN.  Provide inf alias for Inf.
-	(symbols_of_data): Delete.
-
-2006-04-06  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (parse_and_execute, parse_fcn_file):
-	Create octave_script_function object and push it on the call stack.
-
-	* parse.y (Fmfilename): Check for script or user function file on
-	call stack.
-
-	* ov-builtin.cc (octave_builtin::do_multi_index_op):
-	Use octave_call_stack instead of curr_function to save pointer to
-	current function.
-	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op): Likewise.
-
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Use octave_call_stack instead of
-	curr_function to get pointer to current function.
-	* pt-arg-list.cc (list::convert_to_const_vector): Likewise.
-	* variables.cc (Fmlock, Fmunlock, Fmislocked): Likewise.
-	* input.cc (get_user_input): Likewise.
-	* error.cc (warning_1, error_2): Likewise.  Only enter debug mode
-	if there is a scripting language caller.
-	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Likewise.  Check
-	scripting language caller, not current function.
-
-	* toplev.cc (curr_caller_function, curr_function): Delete.
-	* toplev.h: Delete decls.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Don't protect and set curr_caller_function.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
-	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
-
-	* variables.cc (do_who): Use octave_call_stack instead of
-	curr_caller_function to get pointer to calling function.
-	* input.cc (get_user_input): Likewise.
-	* error.cc (pr_where): Likewise.  No need for curr_function now.
-	* parse.y (Fmfilename): Likewise.  Check for scripting language
-	caller, not any calling function.
-
-	* ov-usr-fcn.h (octave_user_script): New class.
-	* ov-fcn.h (octave_function::is_user_script): New virtual function.
-
-	* toplev.h, toplev.cc (octave_call_stack): New class.
-
-	* debug.cc (Fdbwhere): Use get_user_function here.
-
-2006-04-05  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (mk-pkg-add): Use mfilename to simplify.
-	(PKG_ADD): Don't pass --prefix arg to mk-pkg-add.
-	(PKG_ADD.inst): Delete target.
-	(clean): Don't remove PKG_ADD.inst.
-	(install-oct): Don't depend on PKG_ADD.inst.  Install PKG_ADD, not
-	PKG_ADD.inst.
-
-	* parse.y (Fmfilename): New function.
-
-2006-04-04  David Bateman  <dbateman@free.fr>
-
-	* help.cc (Flookfor): Skip overloaded functions.  Lookup help text
-	of autoloaded function, not parent that contains the autoload.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fresize): New function.
-	* oct-map.cc, ov-base-mat.cc, ov-base-sparse.cc, ov-base.cc,
-	ov-bool.cc, ov-complex.cc, ov-range.cc, ov-scalar.cc,
-	ov-str-mat.cc (resize): Add boolean fill argument.
-	* oct-map.h, ov-base-mat.h, ov-base-sparse.h, ov-base.h,
-	ov-bool.h, ov-complex.h, ov-intx.h, ov-range.h, ov-scalar.h,
-	ov-str-mat.h, ov.h (resize): Ditto.
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Additional argument for
-	gamma and poisson distributions.  Change "state" and "seed"
-	arguments so that they choose between generators.
-	Add, poisson, gamma and exponential generators.
-	(Frand, Frandn): Update docs for new generators, add tests.
-	(Frande, Frandp, Frandg): New generators, with test code.
-
-	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Allow functions to be passed
-	using function handles, inline functions, and cell arrays of
-	strings, inline and function handles.
-	* DLD-FUNCTIONS/dasrtk.cc (Fdasrt): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (Flsode):  Likewise.
-
-	* ls-hdf5.h (hdf5_fstreambase::open): Remove unused arg prot.
-
-2006-03-30  Bill Denney  <denney@seas.upenn.edu>
-
- 	* data.cc: Include numel in @seealso.
-
-2006-03-30  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/fftw_wisdom.cc: Don't attempt to save wisdom to
-	an empty filename or invalid filename.
-
-2006-03-28  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/matrix_type.cc: Update copyright notice and FSF
-	address.
-
-2006-03-24  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/spchol.cc (Fsymbfact): Use CHOLMOD_NAME to select
-	proper version of row_subtree function.
-
-	* ov-cell.cc (octave_cell::save_hdf5): Use OSSTREAM instead of
-	fixed character buffer and sprintf.
-	* ov-list.cc (octave_list::save_hdf5, octave_list::save_ascii,
-	octave_list::save_binary): Likewise.
-
-	* ov-cell.h (octave_cell::convert_to_str_internal):
-	Undo previous change for pad arg.
-	* ov-cell.cc (octave_cell::all_strings): Reinstate pad arg, pass
-	it on to all_strings.
-	* ov.h (octave_value::all_strings): Reinstate pad arg.
-	* ov-base.cc (octave_base_value::all_strings): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::all_strings): Likewise.
-	* ov.h, ov-base.h, ov-cell.h, ov-str-mat.h: Fix all_strings decls.
-
-2005-10-25  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): With 1 arg, return [](0x0) for compatibility.
-
-2006-03-23  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.5+.
-
-2006-03-22  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.5.
-	(OCTAVE_API_VERSION): Now api-v18.
-	(OCTAVE_RELEASE_DATE): Now 2006-03-22.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.h (octave_cell::convert_to_str_internal):
-	Ignore pad and force args.
-	* ov-cell.cc (octave_cell::all_strings): Delete args.  Never pad.
-	* ov-base.cc (octave_base_value::all_strings): Delete args.
-	Always force string conversion, never pad.
-	* ov-str-mat.cc (octave_char_matrix_str::all_strings):
-	Delete args.  Don't strip whitespace.
-	* ov.h, ov-base.h, ov-cell.h, ov-str-mat.h: Fix all_strings decls.
-	* strfns.cc (Fchar): No args for all_strings.
-
-2006-03-21  David bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Use GetProcessTimes for
-	MinGW to obtain user and system times.
-
-2006-03-17  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (F__list_in_columns__): New function.
-
-2006-03-16  Bill Denney  <bill@givebillmoney.com>
-
-	* DLD-FUNCTIONS/time.cc: Improve @seealso entries in doc strings.
-
-2006-03-16  John W. Eaton  <jwe@octave.org>
-
-	* __gnuplot_raw__.l (F__gnuplot_show__): Temporarily use DEFCMD
-	instead of DEFUN.
-	(symbols_of___gnuplot_raw__): Temporarily mark __gnuplot_plot__,
-	__gnuplot_set__, __gnuplot_splot__, and __gnuplot_replot__ as raw
-	commands.
-
-	* variables.cc (is_marked_as_rawcommand, unmark_rawcommand,
-	mark_as_rawcommand): Temporarily not static.
-	* variables.h: Temporarily Provide decls.
-
-2006-03-16  David Bateman  <dbateman@free.fr>
-
-	* sparse-xdiv.cc (result_ok): delete.
-	(xdiv, xleftdiv): Simplify to use version of SpareMatrix::solve
-	and SparseComplexMatrix::solve which internally treats rectangular
-	and singular matrices.
-	* DLD-FUNCTIONS/luinc.cc: Remove error test for singular matrix as
-	QR solver now implemented.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Paranoid check on
-	error_state. Disable tests for the detection of underdetermined
-	lower and over-determined upper matrix due to problems with
-	non minimum norm solutions.
-	* DLD-FUNCTIONS/spqr.cc: Warning for issue of use of Fspqr for
-	under-determined problems.
-
-2006-03-16  John W. Eaton  <jwe@octave.org>
-
-	* __gnuplot_raw__.l: Move here from DLD-FUNCTIONS/__gnuplot_raw__.l.
-	Use DEFUN, not DEFUN_DLD.  Include defun.h, not defun-dld.h.
-	(gnuplot::do_init):Move guts to symbols_of___gnuplot_raw__.
-	(symbols_of___gnuplot_raw__): New function.
-
-	* Makefile.in (DLD_XSRC): Delete __gnuplot_raw__.l from the list.
-	(DIST_SRC): Include __gnuplot_raw__.l in the list.
-	(__gnuplot_raw__.cc): Depend on __gnuplot_raw__.l, not
-	DLD-FUNCTIONS/__gnuplot_raw__.l
-
-	* ls-oct-ascii.h (extract_keyword): Use std::string compare method
-	instead of strncmp.
-	* ls-oct-ascii.cc (extract_keyword): Likewise.
-
-2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
-
-	* data.cc (Frows, Fcolumns): New functions.
-
-	* DLD-FUNCTIONS/time.cc (Fstrptime, Fstrftime): Fix docstring.
-
-	* strfns.cc (Fstrcmp): Fixed docstring.
-
-2006-03-15  John W. Eaton  <jwe@octave.org>
-
-	* pager.cc (Fterminal_size): New function.
-
-	* help.cc (help_from_info): Simplify.
-	(try_info): Use feval to call doc instead of executing info program.
-	(additional_help_message): Point users to doc instead of help -i.
-	From S�ren Hauberg <soren@hauberg.org>.
-
-	* toplev.cc (Fsystem): Return output if nargout > 1, not 0.
-
-2006-03-14  Keith Goodman  <kwgoodman@gmail.com>
-
-	* help.cc (Fhelp, Fwhich, Flookfor): Doc string fix.
-
-2006-03-14  John W. Eaton  <jwe@octave.org>
-
-	* defun.cc (print_usage): New arg, extra_msg.
-
-	* xpow.cc: Omit tests for now.
-
-	* parse.y (QUOTE, TRANSPOSE): For compatibility, now have same
-	precedence as POW and EPOW.
-
-2006-03-14  Bill Denney  <bill@givebillmoney.com>
-
-	 * load-save.cc (Fload, Fsave): Update docstring for functional form.
-
-2006-03-14  John W. Eaton  <jwe@octave.org>
-
-	* xpow.cc (elem_xpow): Undo previous change.
-
-2006-03-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* xpow.cc: New tests.
-
-2006-03-13  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (fcn_out_of_date): No longer static.
-	* ov-fcn-handle.cc (warn_reload): New function.
-	(octave_fcn_handle::subsref): Implement basic logic for updating
-	when pointed-to function changes.
-
-2006-03-10  John W. Eaton  <jwe@octave.org>
-
-	* xpow.cc (elem_xpow): Only use complex pow if really necessary.
-
-	* symtab.cc (symbol_table::glob, symbol_table::symbol_list,
-	symbol_table::subsymbol_list): Force result to be a column
-	vector.
-
-	* oct-stream.h (octave_stream::stream_ok): Undo previous change.
-	Eliminate who parameter.  Change all callers.
-
-	* variables.cc (do_who): Return more info in structure array for
-	verbose output.
-	* symtab.h (symbol_record::size, symbol_record::class_name,
-	symbol_record::is_sparse_type, symbol_record::is_complex_type,
-	symbol_record::size, symbol_record::symbol_def::class_name,
-	symbol_record::symbol_def::is_sparse_type,
-	symbol_record::symbol_def::is_complex_type): New functions.
-	* ov.h (octave_value::size): New function.
-
-2006-03-09  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (run_command_and_return_output): Swap output and
-	status for compatibility.
-
-	* Makefile.in (defaults.h, oct-conf.h): Force updates.
-
-	* defaults.h.in (OCTAVE_RELEASE): New macro.
-
-	* octave.cc (F__version_info__): New arg, release.
-	(initialize_version_info): Pass release arg to F__version_info__.
-
-	* toplev.cc: Include api_version in the list.
-
-	* Makefile.in (DIST_SRC): Include octave.cc here.
-	(DISTFILES, DEP_5): Not here.
-
-	* octave.cc (F__version_info__): New function.
-	(initialize_version_info): New function.
-	(octave_main): Call initialize_version_info just before reading
-	init files.
-
-	* version.h (OCTAVE_RELEASE_DATE): New macro.
-
-	* ov-fcn-handle.h (octave_fcn_handle::dims): New function.
-
-2006-03-08  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream::stream_ok): Move definition here,
-	from oct-stream.h.  New arg, warn.  If warn is true and stream is
-	invalid, print warning.
-	(octave_stream::error): Always avoid warning message from
-	stream_ok.  Return "invalid stream object" if stream is not ok.
-
-2006-03-08  David Bateman  <dbateman@free.fr>
-
-	* ov-mapper.cc (SPARSE_MAPPER_LOOP_2): Change nnz to nz to remove
-	shadowed variable warning.
-	* DLD-FUNCTIONS/spqr.cc: Update for new upstream CXSPARSE release.
-
-2006-03-06  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (display_help_text): Force linebreak with @sp.
-
-2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
-
-	* bitfcns.cc, data.cc, debug.cc, file-io.cc, help.cc,
-	load-save.cc, mappers.cc, ov-cell.cc, ov-fcn-inline.cc,
-	ov-struct.cc, ov-usr-fcn.cc, ov.cc, pr-output.cc, utils.cc,
-	variables.cc, DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
-	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/daspk.cc,
-	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
-	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw_wisdom.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
-	DLD-FUNCTIONS/luinc.cc,	DLD-FUNCTIONS/sparse.cc,
-	DLD-FUNCTIONS/spchol.cc, DLD-FUNCTIONS/splu.cc,
-	DLD-FUNCTIONS/spqr.cc, DLD-FUNCTIONS/sqrtm.cc:
-	Move @seealso inside @defXXX macro.  Remove "and" from @seealso.
-
-2006-03-04  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (additional_help_message): Don't print "\n" before message.
-	(help_from_symbol_table): If Vsuppress_verbose_help_message is
-	true, don't print which info.
-
-2006-03-03  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Vconfirm_recursive_rmdir): New static variable.
-	(symbols_of_dirfns): DEFVAR it.
-	(confirm_recursive_rmdir): New function.
-	(Frmdir): Maybe ask for confirmation for recursive removal.
-	Require second arg to be "s".
-
-	* input.cc (octave_yes_or_no): New function.
-	(Fyes_or_no): New function.
-	* input.h (octave_yes_or_no): Provide decl.
-
-2006-03-02  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (Fmkdir, Frmdir): Now commands.
-
-2006-02-20  David Bateman  <dbateman@free.fr>
-
-	* ov.h (virtual bool is_sparse_type (bool)): New virtual function
-	* ov-base.h (bool is_sparse_type (bool)): New function
-	* ov-base-sparse.h (bool is_sparse_type (bool)): New function
-	* DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTION/colamd.cc,
-	DLD-FUNCTIONS/__glpk__.cc, DLD-FUNCTIONS/splu.cc,
-	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/matrix_type.cc, pt-mat.cc:
-	Replace us of 'arg.class_name () == "sparse"' with
-	'arg.is_sparse_type ()'
-
-2006-02-20  David Bateman  <dbateman@free.fr>
-
-	* pt-mat.cc (class tm_row_const): Add any_sparse bool variable.
-	(tm_row_const::tm_row_const_rep::do_init_element): Initialize
-	any_sparse variable if any matrice is sparse.
-	(class tm_const): Add any_sparse bool variable.
-	(tm_const::init): Initialize any_sparse variable.
-	(tree_matrix::rvalue): If any matrix is sparse use sparse matrix
-	as initial matrix for concatenation
-	* DLD-FUNCTIONS/matrix_type.cc: Add tests for new rectangular
-	diagonal, permuted diagonal, triangular and permuted triangular
-	matrices
-
-2006-02-20  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (__builtin_delete, __builtin_new): Use std::cerr for
-	messages instead of std::cout.
-	(main_loop, do_octave_atexit): Use octave_stdout, not std::cout.
-
-2006-02-15  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (Fautoload): Return struct array of autoload info if
-	nargin == 0.
-
-2006-02-15  Keith Goodman  <kwgoodman@gmail.com>
-
-	* help.cc (keywords): Doc string fix.
-
-2006-02-15  John W. Eaton  <jwe@octave.org>
-
-	* oct-procbuf.cc (close): Use __CYGWIN__ instead of __CYGWIN32__.
-
-2006-02-13  David Bateman  <dbateman@free.fr>
-
-	* DLD_FUNCTIONS/regexp.cc (octregexp): Add matlab compatiable
-	named tokens. Update the tests
-
-2006-02-10  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (\[{S}*): Maybe set lexer_flags.looking_at_return_list or
-	lexer_flags.looking_at_matrix_or_assign_lhs here.
-	* parse.y
-	(return_list_beg): Don't use in_return_list here.
-	(assign_lhs, matrix): Don't use in_matrix_or_assign_lhs here.
-	(in_matrix_or_assign_lhs, in_return_list): Delete unused macros.
-	(matrix): Clear lexer_flags.looking_at_matrix_or_assign_lhs in all
-	cases.
-
-2006-02-09  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (oct_file_in_path): Check len > 4, not len > 2.
-	From Larrie Carr <larrie@telus.net>.
-
-2006-02-09  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/spqr.cc: New file for sparse QR and dmperm based on
-	CSparse.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): dintinguish between
-	rectangular and singular matrices. Add tests.
-	* DLD-FUNCTIONS/luinc.cc: Add tests.
-	* DLD-FUNCTIONS/spkron.cc: Ditto.
-	* Makefile.in (DLD_XSRC): Add spqr.cc.
-	(OCT_LINK_DEPS): Add CSSPARSE_LIBS.
-	* sparse-xdiv.h: Remove conditio of lssolve.
-
-2006-02-08  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (frob_function): Clear ID_NAME from top_level symbol
-	table if we are defining a function at the top-level and a
-	function with the same name is already in the top-level symbol
-	table.
-
-2006-01-31  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-sparse.h (octave_base_sparse<T>::nzmax): New function.
-	* ov.h (octave_value::nzmax): New function.
-	* ov-base.cc (octave_base_value::nzmax): New function.
-	* ov-base.h: Provide decl.
-	* data.cc (Fnzmax): New function.
-	* DLD-FUNCTIONS/sparse.cc (Fnzmax): Delete.
-
-2006-01-31  Kim Hansen  <kim@i9.dk>
-
-	* __glpk__.cc (F__glpk__): Fix for sparse matrices.
-
-2006-01-30  John W. Eaton  <jwe@octave.org>
-
-	* gripes.cc (gripe_wrong_type_arg (const char*, const char*, bool)):
-	New function.
-	(gripe_wrong_type_arg (const char*, const std::string&, bool)):
-	Define using const char*, const char*, bool version.
-	(gripe_wrong_type_arg (const char*, const octave_value&, bool)):
-	Define using const char*, const std::string&, bool version.
-
-	* ov.h (octave_value::nnz): New function.
-	* ov-base.cc (octave_base_value::nnz): New function.
-	* ov-base.h: Provide decl.
-	* ov-base-mat.h (octave_base_matrix<MT>::nnz): New function.
-	* ov-base-scalar.h (octave_base_scalar<MT>::nnz): New function.
-	* Cell.cc (Cell::nnz): New function.
-	* Cell.h: Provide decl.
-	* data.cc (Fnnz): New function.
-	* DLD-FUNCTIONS/sparse.cc (Fnnz): Delete.
-
-2006-01-13  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::print_raw): Correctly print scalar
-	structs and empty struct arrays.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (Fclearplot): For compatibility,
-	also turn off hold state for current figure.
-
-2006-01-13  Bill Denney  <bill@givebillmoney.com>
-
- 	* dirfns.cc: Add @seealso{} to docstrings.
-
-2006-01-13  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (display_help_text): Use warning() to print raw Texinfo
-	source.  Don't redirect error output for makeinfo process.
-
-	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__gnuplot_init__): Delete
-	function and PKG_ADD directive.
-	(gnuplot::gnuplot): Call do_init here.
-	(gnuplot::init): Delete static function.
-	(gnuplot::close_all): New static function.
-	(class gnuplot_X): New class.
-	(gnpulot_X::X): New static instance.
-
-2006-01-12  David Bateman  <dbateman@free.fr>
-
-	* help.cc (make_name_list): Add autoload functions to list of
-	available completions.
-	(simple_help): Add autoloaded functions to functions listed
-	(first_help_sentence): Avoid issue with single line help string
-	that is not terminated in \n.
-	(Flookfor): Check for string match in the keyword/function, etc
-	name. Also look for string match in help of autoloaded functions.
-	Load oct-files to be able to access their help string.
-	* parse.y (string_vector autoloaded_functions (void)): New
-	function to list all autloaded functions.
-	(string_vector reverse_lookup_autoload (const std::string& nm)):
-	Reverse lookup function to match file to autoloaded functions.
-	* parse.h (autoloaded_functions, reverse_lookup_autoload):
-	Declaration.
-
-	* oct-map.cc (maybe_delete_elements): New function.
-	* oct-map.h (maybe_delete_elements): Declare it.
-	* ov-struct.cc (octave_struct::subsref): Handle indexing empty
-	structure.
-	(octave_struct::subsasgn): If rhs is [], delete elements.
-	(octave_struct::print_raw): Handle printing empty structure.
-
-	* ls-mat5.cc (read_mat5_binary_element): Allow reading of sparse
-	elements when nnz doesn't equal nzmax.
-
-2006-01-10  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sparse.cc (sparse_find): Use Sparse<T>::nonzero()
-	rather than Sparse<T>::nnz(), due to possibility of overallocation
-	of memory.
-
-2006-01-06  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::transpose): Avoid GCC 3.3.x parse error.
-
-2005-12-14  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream::invalid_stream_error): Delete.
-	* oct-stream.h (octave_stream::stream_ok): Don't fail with error.
-
-2005-12-14  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/regexp.cc: New file.
-
-	* DLD-FUNCTIONS/dispatch.cc: Update tests for string/sq_string
-	differences.
-
-	* error.cc (Vquiet_warning): New variable.
-	(vwarning): Use Vquiet_warning to prevent warning output.
-	(Fwarning): Include "quiet" option to Fwarning function.
-	Assign retval when using "query".  Typo in error message.
-	(Flastwarn): Clear warning_state when using Flastwarn to probe warning
-	message.
-
-	* ov-struct.cc: Update Fstruct tests for change in error output.
-
-	* Makefile.in: Include regexp when needed with appropriate libraries.
-
-2005-12-13  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: Change references to gplot.l to __gnuplot_raw__.l.
-	* DLD-FUNCTIONS/__gnuplot_raw__.l: Rename from DLD-FUNCTIONS/gplot.l.
-	Remove all references to deprecated gplot, gsplot, graw, gset and
-	gshow functions.
-	* help.cc (static help_list keywords[]): Remove gsplot and gplot.
-
-	* ls-oct-ascii.cc (save_three_d):  Don't strip Inf or NaN.
-	(save_ascii_data_for_plotting): Ditto.
-
-2005-12-13  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream_list::do_insert): Check open state
-	of stream in list instead of whether stream state is OK.
-
-2005-12-12  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-struct.cc (transpose): New function.
-	(install_struct_ops): Install it.
-
-	* oct-map.cc (Octave_map::transpose): New function.
-	* oct-map.h: Provide decl.
-
-2005-12-08  John W. Eaton  <jwe@octave.org>
-
-	* Cell.cc (Cell::column): New function.
-	* pt-loop.cc (DO_ND_LOOP): Simplify.
-	(simple_for_loop_command::eval): Correctly handle N-d numeric and
-	cell arrays when only the first dimension is 0.
-
-2005-12-07  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (NL): Also accept '\r'.
-
-	* error.cc (Vbacktrace_on_warning, warning_options,
-	Vlast_warning_id, Vlast_error_id): New file-scope variables.
-	(Vwarning_frequency, Vwarning_option): Delete unused variables.
-	(set_warning_option): Delete unused function.
-	(Fwarning): Update for compatibility.  Use DEFCMD, not DEFUN.
-	(warning_enabled, check_state): New functions.
-	(warning (const char *fmt, ...)): Use it.
-	(init_warning_options): New function.
-	(symbols_of_error): Call it.
-	(vwarning, Flastwarn): Handle Vlast_warning_id.  Improve compatibility.
-	(handle_message): New arg, ID.  Change all callers.
-	(vwarning, verror, error_1): New arg, ID.  Change all callers.
-	(verror, Flasterr): Handle Vlast_error_id.  Improve compatibility.
-
-	* error.cc (message_with_id, usage_with_id, warning_with_id,
-	error_with_id, parse_error_with_id): New functions.
-	(error_2, warning_1, usage_1): New functions.
-	* error.h (message_with_id, usage_with_id, warning_with_id,
-	error_with_id, parse_error_with_id): Provide decls.
-
-2005-11-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/schur.cc (Fschur): Doc string fix.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-11-28  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (Funame): New function.
-
-2005-11-21  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (pr_int): Fix thinko in byte-swapping for bit format.
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
-	Use C++ static_cast instead of C-style casts.
-
-2005-11-21  William Poetra Yoga H <williampoetra@yahoo.com>
-
-	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
-	Docstring and error message fixes.
-
-2005-11-17  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): Don't cast arg1 to
-	const octave_complex_matrix&.
-
-2005-11-16  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (PKG_ADD.inst): New target.
-	(install-oct): Depend on it.
-	(clean): Remove it.
-
-	* mk-pkg-add: New option --install.  Don't use --prefix option.
-	Delete obsolete comments.
-
-	* Cell.cc (Cell::index): Indexing with () is a no-op, not an error.
-	* oct-map.cc (Octave_map::index): Likewise.
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Likewise.
-	* ov-base-sparse.cc (octave_base_sparse<T>::do_index_op): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
-	Likewise.
-
-2005-11-11  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (install-oct): Fix thinko in previous change.
-
-	* version.h (OCTAVE_VERSION): Now 2.9.4
-	(OCTAVE_API_VERSION): Now api-v17.
-
-	* variables.cc (symbol_out_of_date): Check for autoloads here too.
-
-	* Makefile.in (PKG_ADD): Depend on $(DLD_DEF_FILES), not $(DLD_SRC).
-	(%.df : %.cc): Also insert PKG_ADD commands in .df files.
-	(install-oct): Generate PKG_ADD file for install directory here.
-	Don't depend on PKG-ADD. No need to make .oct file links.
-	(clean): No need to delete links.
-	(stamp-oct-links): Delete target.
-	(distclean): No need to remove stamp-oct-links.
-	(all): Depend on $(OCT_FILES), not stamp-oct-links.
-
-	* mk-pkg-add: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-	* mk-oct-links: Delete.
-	* Makefile.in (DISTFILES): Remove it from the list.
-
-2005-11-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.h (octave_char_matrix_str::permute,
-	octave_char_matrix_str::resize): New functions.
-	(octave_char_matrix_sq_str::reshape,
-	octave_char_matrix_sq_str::permute,
-	octave_char_matrix_sq_str::resize): New functions.
-
-	* OPERATORS/op-str-str.cc, OPERATORS/op-str-s.cc,
-	OPERATORS/op-str-m.cc: Use DEFNDCHARCATOP_FN.
-
-	* data.cc (do_cat): No need to handle character arrays specially here.
-
-	* ops.h (DEFNDCHARCATOP_FN): New macro.
-	* OPERATORS/op-int.h (OCTAVE_INT_CHAR_CONCAT_FN,
-	OCTAVE_CHAR_INT_CONCAT_FN, OCTAVE_INSTALL_INT_CHAR_CONCAT_FN,
-	OCTAVE_INSTALL_CHAR_INT_CONCAT_FN): New macros.
-	* OPERATORS/op-int-concat.cc: Use them do define char/int op functions.
-	(install_int_concat_ops): Install char/int concat ops.
-
-	* ov-scalar.h (class octave_scalar): Provide extractors
-	for all int array types and char array type.
-
-2005-11-09  John W. Eaton  <jwe@octave.org>
-
-	* ov-bool-mat.h (class octave_bool_matrix): Provide extractors
-	for all int array types and char array type.
-	* ov-bool.h (class octave_bool): Likewise.
-
-	* ov-intx.h (class OCTAVE_VALUE_INT_MATRIX_T): Provide extractors
-	for all int array types and char array type.
-	(class OCTAVE_VALUE_INT_SCALAR_T): Provide extractors for all int
-	scalar and array types and char array type.
-
-	* pt-mat.cc (tm_const::class_nm): New data member.
-	(tm_const::tm_const): Initialize it.
-	(tm_const::class_name): New function.
-	(tm_row_const::tm_row_const_rep::class_nm): New data member.
-	(tm_row_const::tm_row_const_rep::tm_row_const_rep): Initialize it.
-	(tm_row_const::class_name): New function.
-	(get_concat_class): New function.
-	(tm_row_const::tm_row_const_rep::do_init_element): Use it.
-	(tm_const::init): Use it.
-
-2005-11-07  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fstrcmp): If args are not strings or cell arrays of
-	strings, return false.
-
-2005-11-01  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (oct-gperf.h): Avoid extra temporary file.
-	(distclean): Delete oct-errno.cc here.
-	From Quentin Spencer  <qspencer@ieee.org>.
-
-2005-11-01  Quentin Spencer  <qspencer@ieee.org>
-
-	* DLD-FUNCTIONS/spchol.cc: Use C++ true/false instead of
-	preprocessor defined TRUE/FALSE.
-	* Makefile.in (DISTFILES): Add mk-errno-list to the list.
-
-2005-10-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (gnuplot::set_gnuplot_exe,
-	gnuplot::do_set_gnuplot_exe): New functions.
-	(gnuplot_binary): Call gnuplot::set_gnuplot_exe here.
-
-	* DLD-FUNCTIONS/gplot.l (gnuplot::set_gnuplot_use_title_option,
-	gnuplot::do_set_gnuplot_use_title_option): New functions.
-	(gnuplot_use_title_option):
-	Call gnuplot::set_gnuplot_use_title_option here.
-
-2005-10-27  James R. Van Zandt  <jrvz@comcast.net>
-
-	* mappers.cc: Doc fix for lgamma.
-	* DLD-FUNCTIONS/gammainc.cc (Fgammainc): Doc fix.
-
-2005-10-27  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Declare mrowsA volatile.
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::tm_row_const_rep):
-	Ensure that we always have at least two dimensions here.
-	(tm_const::tm_const): Likewise.
-	(tm_const::rows, tm_const::columns): Simplify.
-	(tm_row_const::rows, tm_row_const::columns)): Simplify.
-
-2005-10-26  John W. Eaton  <jwe@octave.org>
-
-	* oct-procbuf.cc (octave_procbuf::open): Cast 0 to void * to avoid
-	new g++ warning.
-	* toplev.cc (Fsystem): Likewise.
-
-	Changes for GCC 4.1, tip from Arno J. Klaassen
-	<arno@heho.snv.jussieu.fr>:
-
-	* ov.h (do_unary_op (octave_value::unary_op, const octave_value&)):
-	Publish externally used friend function.
-	(do_unary_op (octave_value::unary_op, const octave_value&,
-	const octave_value&)): Likewise.
-
-2005-10-25  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): called with 2 args, should return args(1)
-	for compatibility.
-
-2005-10-23  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (DLD_XSRC): Add spchol.cc.
-	* sparse-xpow.cc (xpow): Change call to sparse inverse to include
-	SparseType.
-	* DLD-FUNCTIONS/colamd.c (Fsymbfact): Remove.
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): 64-bit fixes and fix
-	for permutation of upper/lower triangular matrices.
-	* DLD-FUNCTIONS/splu.cc (Fspinv): Implemtation of sparse inverse
-	function.
-	* DLD-FUNCTIONS/spchol.cc (sparse_chol): Static function for core of
-	the sparse cholesky factorization.
-	(Fspchol): New function for sparse cholesky factorization R'R.
-	(Fsplchol): New function for sparse cholesky factorization LL'.
-	(Fspcholinv): New cholesky inverse function.
-	(Fspchol2inv): New cholesky inverse function.
-	(Fsymbfact): Implementation of symbolic factorization using cholmod.
-
-2005-10-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (read_until): Special case STRING.
-	(handle_string): Restore function.
-	("'", "\""): Call handle string when matching these tokens..
-
-2005-10-20  John W. Eaton  <jwe@octave.org>
-
-	* pt-mat.cc (tm_row_const::all_real): New data member.
-	(tm_row_const::all_real_p): New function.
-	(tm_row_const::tm_row_const_rep::all_real): New data member.
-	(tm_row_const::tm_row_const_rep::all_real_p): New function.
-	(tm_row_const::tm_row_const_rep::init): Set all_real and all_cmplx
-	to true here.
-	(tm_row_const::all_cmplx): Rename from is_cmplx.
-	(tm_row_const::all_complex_p): Rename from complex_p.
-	(tm_row_const::tm_row_const_rep::all_cmplx): Rename from is_cmplx.
-	(tm_row_const::tm_row_const_rep::all_complex_p): Rename from complex_p.
-	(tm_row_const::tm_row_const_rep::init): Set all_real and all_cmplx
-	to true here.
-	(SINGLE_TYPE_CONCAT): New macro.
-	(tree_matrix::rvalue): Use it for single type cases.
-
-	* pt-mat.cc: Sprinkle with OCTAVE_QUIT.
-
-2005-10-18  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): If not embedded, call clean_up_and_exit
-	instead of return to exit function.
-
-2005-10-18  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
-
-	* DLD-FUNCTIONS/gplot.l (gnuplot::handle_title):
-	Omit class name from declaration.
-
-2005-10-17  Keith Goodman  <kwgoodman@gmail.com>
-
-	* DLD-FUNCTIONS/sort.cc: Doc string fix.
-
-2005-10-17  John W. Eaton  <jwe@octave.org>
-
-	* oct-conf.h.in (OCTAVE_CONF_F77_FLOAT_STORE_FLAG): Substitute
-	OCTAVE_CONF_F77_FLOAT_STORE_FLAG here.
-
-2005-10-14  John W. Eaton  <jwe@octave.org>
-
-	* mk-errno-list: New script.
-	* Makefile.in (oct-errno.cc): Use it.
-
-2005-10-13  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (F__gnuplot_raw__):
-	Call print_usage with correct function name.
-
-2005-10-12  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l: Major cleanup.
-	Built-in variable gnuplot_has_frames no longer necessary.
-	(gnuplot): New class to manage multiple gnuplot processes.
-	(handle_string): Delete.  It was only used for the case of
-	__gnuplot_plot__ "file", which is no longer allowed.
-
-2005-10-05  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_exist): Chekck for autoloaded functions.
-
-	* parse.y (Fautoload): New function.
-	(autoloading, autoload_map): New static variables.
-	(load_fcn_from_file, frob_function): Handle autoloading.
-	(lookup_autoload): New function.
-	(get_help_from_file): New args, symbol_found and include_file_info.
-	Change all callers.
-
-2005-10-05  David Bateman  <dbateman@free.fr>
-
-	* help.cc (try_info): format in command string for mingw.
-
-2005-09-30  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (octave_value::~octave_value): No need to set rep to zero
-	after deleting.
-
-2005-09-29  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (mk_stat_map): Store mode too.
-	(FS_ISREG, FS_ISDIR, FS_ISCHR, FS_ISBLK, FS_ISFIFO, FS_ISLNK,
-	FS_ISSOCK): New functions.
-	(Fstat): Fix docstring.
-
-2005-09-28  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (printf_value_cache::double_value): Force
-	character strings to be converted to ASCII equivalents.
-
-	* data.cc (Fcomplex): New function.
-
-	* ov-type-conv.h (OCTAVE_TYPE_CONV_BODY3): Return arg unchanged if
-	class name is same as name of conversion.
-
-	* dirfns.cc (Frmdir, Fmkdir): For compatibility, return true for
-	success and false for failure.  Return third value, msgid.
-	(Frmdir): Handle second arg for recursive behavior.
-
-2005-09-23  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (load_fcn_from_file): Don't look in path if file is
-	absolute and has .oct or .m extension.
-
-	* utils.cc (Ferrno_list): New function.
-
-	* oct-errno.h, oct-errno.cc.in: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	(oct-errno.cc): New rule.
-	($(OPT_HANDLERS)): Use $(PERL) instead of just perl.
-
-	* utils.cc: Include oct-errno.h.
-	(Ferrno): Rename from FERRNO.  Allow errno to be set.  Allow
-	lookups of errno codes by name and access to structure containing
-	all errno names and codes.
-
-2005-09-19  John W. Eaton  <jwe@octave.org>
-
-	* pt-bp.cc (tree_breakpoint::visit_index_expression):
-	Avoid dereferencing invalid pointer.
-
-2005-09-19  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (OCT_LINK_DEPS): Include UFsparse libraries.
-
-	* DLD_FUNCTIONS/__glpk__.cc (F__glpk__): Replace isinf with
-	xisinf. Allow sparse matrices as second argument.
-
-	* syscalls.cc: Typos.
-	* sysdep.cc: Typos.
-
-2005-09-16  John W. Eaton  <jwe@octave.org>
-
-	* syscalls.cc (Fwaitpid): Doc fix.  Expect WNOHANG, WUNTRACED,
-	WCONTINUED as args instad of int values.
-	Return values are now [pid, status, msg] instad of [pid, msg].
-	(WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP,
-	WIFSTOPPED, WSTOPSIG, WIFCONTINUED): New functions.
-	(symbols_of_syscalls): DEFCONST WNOHANG, WUNTRACED, and WCONTINUE.
-
-	* oct-procbuf.cc (octave_procbuf::close): Call octave_syscalls::waitpid
-	here instead of calling waitpid directly.
-	* sighandlers.cc (OCL_REP::wait): Likewise.
-
-	* sysdep.h [__MINGW32__]: Don't define waitpid here.
-
-2005-09-15  John W. Eaton  <jwe@octave.org>
-
-	* sysdep.h [__MINGW32__]: Move to definition of waitpid sysdep.h.
-
-	* sysdep.cc, sighandlers.cc: Rename all win32_ symbols to w32.
-
-	* sysdep.cc (w32_set_quiet_shutdown): New function.
-	* sysdep.h: Provide decl.
-	* sysdep.cc (MINGW_signal_cleanup): Use it.
-	* sighandlers.cc (octave_catch_interrupts): Use it.
-
-	* sysdep.h: Provide decl.
-	(MINGW_SIGNAL_CLEANUP): New macro.
-	(USE_W32_SIGINT): Move definition here.
-	* sighandlers.cc: From here.
-
-	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): Use print_usage, not usage.
-	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd, Fetree): Likewise.
-	(Fcolamd, Fsymamd) [! HAVE_COLAMD]: Return empty octave_value_list
-	object.
-
-	* sysdep.cc (sysdep_cleanup): New function.
-	Move w32 clean up code here.
-	* toplev.cc (clean_up_and_exit): From here.
-	Call sysdep_cleanup here.
-
-2005-09-15  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in (DLD_XSRC): Add ccolamd.cc
-	(OCTAVE_LIBS): Add LIBGLOB.
-	(OCT_LINK_DEPST, octave): Add AMD, COLAMD, CCOLAMD and CHOLMOD
-	libraries.
-	* default.cc (set_default_exec_path, set_default_path,
-	maybe_add_default_load_path, LOADPATH): Use SEPCHAR_STR and SEPCHAR.
-	* help.cc (display_help_text): Exclude /dev/null on mingw.
-	* oct-procbuf.cc (W32POPEN, W32PCLOSE): Macros for cygwin/mingw.
-	(octave_procbuf::open, octave_probuf::close): Use them.
-	* sighandler.cc (user_abort): New function with core of old
-	sigint_handler.
-	(sigint_handler): Simplify and specialize for w32.
-	(w32_sigint_handler): W32 version of sigint handler.
-	(octave_catch_interrupts): Initialize w32 siginit handler.
-	* sysdep.cc (MINGW_init): New function.
-	(sysdep_init): Use it.
-	* toplev.cc (clean_up_and_exit): Clean w32 signalling shutdown.
-	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): New function.
-	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd): Allow conditional build.
-	Include oct-sparse.h rather than colamd.h.
-	* DLD-FUNCTIONS/ccolamd.cc: New file with Fccolamd a Fcsymamd.
-
-2005-09-14  John W. Eaton  <jwe@octave.org>
-
-	* ov-complex.cc (octave_complex::try_narrowing_conversion):
-	Don't drop -0i.
-	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
-	Likewise.
-
-2005-09-14  Daniel  <durbano@shbano.com>
-
-	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/chol.cc,
-	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fftw_wisdom.cc, utils.cc:
-	Doc string fixes.
-	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
-
-2005-09-14  David Bateman  <dbateman@free.fr>
-
-	* help.cc (Flookfor, print_lookfor, first_help_sentence):
-	New functions.
-
-2005-09-07  Bill Denney  <denney@seas.upenn.edu>
-
-	* dirfns.cc (Fglob): Doc fix.
-
-2005-09-07  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (Fstruct): Allow struct (zeros (0, N)) to create a
-	0xN struct array.
-
-2005-09-04  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/colamd.c (COLAMD_NAME, SYMAMD_NAME): New macros
-	(symetree, make_set, link, finf, etdfs, TreePostorder, coletree,
-	Fcolamd, Fsymamd, Fetree): Update for 64-bit indexing and colamd
-	versin 2.4.
-
-2005-09-01  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_out_of_date): Don't check nested functions.
-
-2005-08-31  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.cc (Octave_map::index): Don't crash if index list is empty.
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
-	Likewise.
-
-	* oct-map.h (Octave_map::ndims): New function.
-
-2005-08-30  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::permute): New function.
-
-	* ov-struct.cc (octave_struct::load_ascii,
-	octave_struct::load_binary, octave_struct::load_hdf5): Try harder
-	to read old-style files correctly.
-
-2005-08-25  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-sm-m.cc, OPERATORS/op-sm-cm.cc, OPERATORS/op-scm-m.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-m-sm.cc, OPERATORS/op-m-scm.cc,
-	OPERATORS/op-cm-sm.cc, OPERATORS/op-cm-scm.cc: Use mixed matrix/sparse
-	multiply operator rather than casting sparse to matrix.
-
-2005-07-18  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fstrcmp): New function from S�ren Hauberg
-	<soren@hauberg.org> and Tom Holroyd <tomh@kurage.nimh.nih.gov>.
-	Adapt to Octave conventions.
-
-2005-07-11  David Bateman  <dbateman@free.fr>
-
-	* ov-fc-inline.cc (Fvectorize): Allow string arguments
-
-2005-07-08  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (Fhold, Fishold): Delete.
-	(clear_before_plotting): Delete static variable.
-	Delete PKG_ADD line for hold.
-
-2005-07-07  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (pr_plus_format): Delete "static" from template decl.
-
-	* oct-stream.cc (octave_scan): Delete explicit instantiation of
-	octave_scan<double> since a specialization is provided.
-
-	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Include
-	<algorithm>, for std::transform decl.  Use std qualifier for
-	transform and tolower.
-
-2005-07-05  Antoine Moreau  <antoine.moreau@univ-bpclermont.fr>
-
-	* DLD-FUNCTIONS/betainc.cc (Fbetainc): Fix doc string to match
-	function definition..
-
-2005-07-05  Mats Jansson  <mats.e.jansson@home.se>
-
-	 * file-io.cc (Fmkstemp): Check if second argument is true
-	 before marking file for deletion.
-
-2005-07-05  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
-	Rename from char_matrix_str::do_index_op.  New arg, type.
-	ov-str-mat.h (octave_char_matrix_str::do_index_op): Define using
-	do_index_op_internal.
-	(octave_char_matrix_sq_str::do_index_op): New function.
-
-2005-07-01  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (end_error): Also handle end_try_catch case.
-
-2005-06-17  John W. Eaton  <jwe@octave.org>
-
-	* help.cc (help_from_list, help_from_symbol_table,
-	help_from_file): New arg, symbol_found.
-	(builtin_help): Use symbol_found arg to determine whether help
-	text is empty or symbol is not available.
-
-	* symtab.cc (symbol_record::print_info): Print more info.
-
-	* DLD-FUNCTIONS/dispatch.cc (Fdispatch_help): Delete.
-	(dispatch_record): Don't prepend "<>" to help text.
-	(Fdispatch): Don't setup dispatched help.
-
-	* help.cc (extract_help_from_dispatch): New function.
-	(help_from_symbol_table): Use it.
-	* defun.cc (print_usage): Use it.
-
-	* toplev.cc (octave_config_info): Include localapifcnfiledir and
-	localapioctfiledir in the list.
-
-	* symtab.h (symbol_record::alias): New arg, mark_to_clear.
-	(symbol_record::aliases_to_clear): New data member.
-	(symbol_record::push_alias_to_clear): New function.
-	* symtab.cc (symbol_record::alias): If mark_to_clear is true, push
-	this pointer on aliases_to_clear stack for s.
-	(symbol_record::clear): Also clear aliases_to_clear_stack.
-
-	* defun.cc (install_dld_function): Create full file name alias in
-	fbi_sym_tab and hide it from view.
-	Don't call protect or make_eternal on sym_rec.
-
-	* variables.cc (fcn_out_of_date): New function.
-	(symbol_out_of_date): Also check for symbol using full function
-	file name.
-
-	* symtab.h (symbol_record::visible): New data member.
-	(symbol_record::hide, symbol_record::show, symbol_record::is_visible):
-	New functions.
-
-	* symtab.h (symbol_record::maybe_delete_def): New private function.
-	* symtab.cc (symbol_record::clear, symbol_record::alias,
-	symbol_record::pop_context,
-	symbol_record::define (octave_function *, unsigned int)): Use it.
-	(symbol_table::symbol_list): Only include visible symbols in list.
-
-	* parse.y (frob_function): Hide nested function names.
-
-	* parse.y (frob_function): Create full file name alias in
-	fbi_sym_tab and hide it from view.
-	* defun.cc (install_dld_function): Likewise.
-
-2005-06-16  John W. Eaton  <jwe@octave.org>
-
-	* ov-dld-fcn.cc (octave_dld_function): Check Voct_file_dir to see
-	if function is system file, Vfcn_file_dir.
-	* defaults.cc (set_default_oct_file_dir): New function.
-	(install_defaults): Call it.
-	(Voct_file_dir): New global variable.
-	* defaults.h.in (Voct_file_dir): Provide decl.
-
-	* variables.cc (function_out_of_date_internal): Use
-	Vignore_function_time_stamp only to avoid calling stat.
-	(symbol_out_of_date): Don't check Vignore_function_time_stamp here.
-	(function_out_of_date): Rename from function_out_of_date_internal.
-
-	* defaults.cc (loadpath): Don't do anything if value is unchanged.
-	If loadpath changes, also update Vlast_prompt_time.
-
-2005-06-14  John W. Eaton  <jwe@octave.org>
-
-	* pt-mat.cc (Vwarn_string_concat): Default value now false.
-	(symbols_of_pt_mat): Change initial value here as well.
-
-	* ls-mat5.cc, mappers.cc, oct-stream.cc, pr-output.cc: Change all
-	uses of octave_is_NaN_or_NA to xisnan.
-
-2005-06-14  Keith Goodman  <kwgoodman@gmail.com>
-
-	* input.cc (get_user_input): Renamed debug commands to dbnext,
-	dbstep, and dbcont.
-	* pt.cc: Renamed dbg_next to dbnext in comment string.
-	* pt.h: Renamed dbg_next to dbnext in comment string.
-
-2005-06-14  David Bateman  <dbateman@free.fr>
-
-	* pt-arg-list.cc (F__end__): Return 1 for dimensions larger than ndim.
-
-2005-06-14  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (save_mat5_array_length): Special case for NaN, NA,
-	and Inf values.  Only check if abs value is greater than FLT_MAX.
-
-2005-06-09  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (save_mat5_element_length): 1 element strings will be
-	saved in a compressed format, so calculate the length accordingly.
-
-2005-05-30  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (read_mat5_binary_element): Don't convert to string
-	if matrix is not of type mxCHAR_CLASS.
-
-2005-05-23  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Ffopen): Don't fail with internal error message if
-	we fail to create a valid stream object.
-	(do_stream_open (const std::string&, const std::string&,
-	const std::string&, int&): Always create octave_stream object,
-	even if file pointer returne from fopen is 0.
-
-	* load-save.cc (gripe_file_open): New function.
-	(get_file_format, Fload, Fsave): Use it.
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Return
-	appropriately sized empty values for empty args.
-
-	* debug.cc (Fdbwhere, get_user_function): Look at
-	curr_caller_function, not curr_function, since function is now set
-	inside mapper, built-in (and therefore dld) functions too.
-
-2005-05-21  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc, pr-output.h (Vprint_empty_dimensions): Now extern.
-	* ov-cell.cc (octave_cell::print_raw): Conditionally print
-	dimensions of empty 2-d cell arrays.
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Return empty
-	values for empty args.
-
-	* lex.l (handle_string): If single-quote string, \ and . have no
-	special meaning.
-
-2005-05-18  John W. Eaton  <jwe@octave.org>
-
-	* pt-colon.cc (tree_colon_expression::make_range): Don't require
-	scalars values as range components.
-
-	* version.h (OCTAVE_VERSION): Now 2.9.3
-	(OCTAVE_API_VERSION): Now api-v16.
-
-	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
-	Make spacing of output consistent with other parts of Octave.
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Chop trailing singelton
-	dimensions before generating array.
-
-2005-05-17  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (install_types): Don't call octave_stream::register_type.
-	* ov.h, ov.cc (octave_value::octave_value (const octave_stream&,
-	int): Delete constructor.
-	(octave_value::is_stream, octave_value::stream_value,
-	octave_value::stream_number): Delete functions.
-	* ov-base.h (octave_base_value::is_stream): Delete function.
-	* ov-base.h, ov-base.cc (octave_base_value::stream_value,
-	octave_base_value::stream_number): Delete functions.
-	* file-io.cc (Fisstream): Delete function.
-	* op-file.h, op-file.cc, OPERATORS/op-fil-sbm.cc,
-	OPERATORS/op-fil-scm.cc, OPERATORS/op-fil-sm.cc,
-	* OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
-	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
-	OPERATORS/op-fil-m.cc, OPERATORS/op-fil-s.cc,
-	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-rec.cc,
-	OPERATORS/op-fil-str.cc: Delete files.
-	* Makefile.in (OP_XSRC, SPARSE_OP_XSRC): Delete op-fil-*.cc from
-	the lists.
-	(OV_INCLUDES): Delete op-file.h from the list.
-	(OV_SRC): Delete op-file.cc from the list.
-	* oct-stream.cc, oct-stream.h (octave_stream_list::insert,
-	octave_stream_list::do_insert): Return stream number instead of
-	octave_value.
-
-2005-05-16  David Bateman  <dbateman@free.fr>
-
-	* ls-mat.cc (save_mat5_binary_element): Increase size of
-	compression buffer.
-	(load_mat5_binary_element): Allow ASCII encoded as UTF8,
-	and give error messages for multi-byte UTF8 and UTF16 and UTF32
-	encodings.
-
-	* ls-hdf5.h (H5T_NATIVE_IDX): New macro defining native indexing
-	type for HDF5 files
-
-	* ls-hdf5.cc (save_hdf5_empty, load_hdf5_empty): Use
-	H5T_NATIVE_IDX to allow 64-bit indexing.
-	* ov-bool-sparse.cc (save_hdf5, load_hdf5): ditto.
-	* ov-re-sparse.cc (save_hdf5, load_hdf5): ditto.
-	* ov-cx-sparse.cc (save_hdf5, load_hdf5): ditto.
-	* ov-cell.cc (save_hdf5, load_hdf5): ditto.
-
-	* load-save.cc (parse_save_options): Remove -nozip option.
-	(Fsave): If user defines file format, ignore completely the default
-	file format options.
-
-2005-05-12  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (oct-gperf.h): Try harder to cause Make to exit here
-	if gperf is missing or fails to create a valid file.
-
-2005-05-10  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (<MATRIX_START>{SNLCMT}*\]{S}*): If whitespace was gobbled,
-	unput SPC before returning the token.
-	(<MATRIX_START>{SNLCMT}*\}{S}*): Likewise.
-
-2005-05-09  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (except_command): Make catch clause optional in try
-	statements.
-	* pt-except.cc (tree_try_catch_command::eval):
-	Always buffer error messages.
-
-2005-05-06  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::save_ascii,
-	octave_struct::save_binary, octave_sruct::save_hdf5):
-	Always save cell array.
-	(octave_struct::load_ascii, octave_struct::load_binary,
-	octave_sruct::load_hdf5): Try to read old-style files correctly.
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Use chol2inv to compute inverse
-	from Cholesky factors.
-	(cholinv): Delete.
-
-	* DLD-FUNCTIONS/chol.cc (Fcholinv): New function.
-	(Fchol2inv): New function.
-
-2005-05-05  Keith Goodman  <kwgoodman@gmail.com>
-
-	* ov-usr-fcn.cc	(Fnargout, Fnargin): Update doc strings.
-	* help.cc (keywords): Update doc strings for varargin, varargout.
-
-2005-05-05  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (BEGIN_S_CONVERSION): Correctly handle width
-	specifiers.
-
-2005-05-04  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_mat5_binary_element): Implement reading of N-d
-	structure arrays.
-
-	* ov-struct.cc (octave_struct::load_hdf5,
-	octave_struct::load_binary, octave_struct::load_ascii): Assign
-	cell_value to map slot, not octave_value containing the cell.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* error.cc (Flasterr): Don't access argv if an error occurs when
-	creating it.
-
-	* mkgendoc (main): Print header message.
-
-2005-05-02  Bill Denney  <denney@seas.upenn.edu>
-
-	* data.cc, defaults.cc, DLD-FUNCTIONS/qz.cc, file-io.cc,
-	sighandlers.cc, syscalls.cc: Docstring fixes.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (octave_print_internal (std::ostream&,
-	const Range&, bool, int)): Don't print newline at end of broken
-	rows (that is handled by pr_col_num_header).
-	From Keith Goodman <kwgoodman@gmail.com>.
-
-	* Makefile.in (octave$(EXEEXT)): List $(UMFPACK_LIBS) ahead of
-	$(BLAS_LIBS).
-	(OCTAVE_LIBS): Include $(GLPK_LIBS) in the list if dynamic linking
-	is not enabled.
-	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
-
-2005-05-02  John W. Eaton  <jwe@octave.org>
-
-	* oct-map.h, oct-map.cc (Octave_map::seek, Octave_map::contents):
-	New non-const versions.
-	(Octave_map::assign (const octave_value_list&,
-	const std::string&, const Cell&)): Allow both tmp RHS and LHS to
-	be resized.  For clarity, always resize to new_dims.
-
-2005-05-02  David Bateman  <dbateman@free.fr>
-
-	* ov-re-sparse.cc, ov-cx-sparse.cc (load_binary): read save_type into
-	one byte variable.
-
-2005-04-29  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (DO_LITERAL_CONVERSION): Cast fmt[i] to unsigned
-	char for comparison.
-
-	* c-file-ptr-stream.h (c_file_ptr_stream): New template class,
-	converted from i_c_file_ptr_stream.
-	(i_c_file_ptr_stream, o_c_file_ptr_stream, io_c_file_ptr_stream):
-	Now typedefs.
-	(i_c_zfile_ptr_stream, o_c_zfile_ptr_stream, io_c_zfile_ptr_stream):
-	New typedefs.
-	* c-file-ptr-stream.h, c-file-ptr-stream.cc (c_zfile_ptr_buf):
-	New class.
-
-	* oct-stdstrm.h (class octave_tstdiostream): New template class,
-	converted from octave_stdiostream.
-	(octave_stdiostream): Now a typedef.
-	[HAVE_ZLIB] (octave_zstdiostream): New a typedef.
-	* oct-stdstrm.cc: Delete.
-	* Makefile.in (DIST_SRC): Remove it from the list.
-
-2005-04-29  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: Add matrix_type.cc and spkron.cc to DLD_XSRC.
-
-	* ls.mat.cc (read_mat5_binary_element): Allow for endian change
-	for compressed data elements.
-
-	* ov-base-sparse.cc (assign): Invalidate matrix type.
-
-	* ov-base-sparse.cc (SparseType sparse_type (void),
-	SparseType sparse_type (const SparseType&):
-	Functions to read and set sparse matrix type.
-
-	* ov-bool-sparse.cc (load_binary): Remove third argument.
-	(load_hdf5): Cast hsize_t comparisions with int to avoid warning.
-	* ov-cx-sparse.cc (load_hdf5): Ditto.
-	* ov-re-sparse.cc (load_hdf5): Ditto.
-
-	* ov-re-sparse.cc (convert_to_str_internal): Add third argument
-	for string type.
-	* ov-re-sparse.h (convert_to_str_internal): Adject declaration.
-
-	* sparse-xdiv.cc (xdiv, xleftdiv): Pass SparseType as third
-	argument, use it and return it to allow caching of type.
-	* sparse-xdiv.h (xdiv, xleftdiv): Change declarations for third
-	argument of type SparseType.
-
-	* DLD-FUNCTIONS/luinc.cc (Fluinc): Use type_name and not
-	class_name to test for real/complex sparse matrices.
-	Set matrix type.
-
-	* DLD-FUNCTIONS/splu.cc (Fsplu): Set matrix type.
-
-	* OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
-	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
-	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
-	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc (div, ldiv):
-	Pass and recache SparseType wirh xdiv/xleftdiv.
-
-2005-04-29  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (maybe_warn_interface_change): Delete function.
-	(fopen_mode_to_ios_mode): Don't call it.
-
-2005-04-27  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::subsref):
-	Check whether function referenced by handle is out of date.
-	(Ffunctions): Tag nameless user function as "command-line".
-
-	* variables.cc (symbol_out_of_date (octave_fucntion *)): New function.
-	(function_out_of_date): New function.
-	* parse.y (load_fcn_from_file (const std::string&, bool)):
-	New function.
-
-	* DLD-FUNCTIONS/gplot.l (gnuplot_init): New function to handle
-	initialization.  If builtin variables have already been installed,
-	simply update our cached values.
-	(F__gnuplot_init__): Call gnuplot_init to do all the real work.
-	(Fclearplot, Fcloseplot, Fhold, Fishold, Fpurge_tmp_files,
-	F__gnuplot_raw__, F__gnuplot_set__, F__gnuplot_plot__,
-	F__gnuplot_splot__, F__gnuplot_replot__, Fgplot, Fgsplot, Fgraw,
-	Fgset, Fgshow): Call gnuplot_init before doing anything.
-
-	* parse.y: (safe_fclose): Delete comment list to avoid memory leak.
-	(parse_and_execute (FILE *)): Also save and restore global_command.
-
-2005-04-26  John W. Eaton  <jwe@octave.org>
-
-	* mkbuiltins (VAR_FILES): Expect $(VAR_FILES) to have .df suffix.
-
-	* Makefile.in (clean): Also remove $(DLD_PICOBJ).
-	Use mk-oct-links --delete to remove links to .oct files.
-	Remove $(DOC_FILES) not $(DEF_FILES) and $(VAR_FILES).
-
-	* mk-oct-links (mk-oct-links): Handle --delete option.
-	Rename -p option to be --print.  Skip nonexistent .df files.
-
-2005-04-25  John W. Eaton  <jwe@octave.org>
-
-	* oct-hist.cc (default_history_file, default_history_size): Now static.
-	* oct-hist.h: Delete decls.
-
-	* oct-hist.cc (default_history_timestamp_format,
-	default_history_timestamp_format): New functions.
-	(Vdefault_history_timestamp_format): New variable.
-	(symbols_of_oct_hist): DEFVAR it.
-	(octave_history_write_timestamp): New function.
-	* oct-hist.h (octave_history_write_timestamp): Provide decl.
-	* toplev.cc (): call octave_history_write_timestamp here.
-	* octave.cc (maximum_braindamage):
-	Bind history_timestamp_format_string here.
-
-2005-04-22  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.9.2.
-	(OCTAVE_API_VERSION): Now api-v15.
-
-	* pager.cc (default_pager): Also append -X.
-
-	* DLD-FUNCTIONS/dispatch.cc (Fdispatch): Dispatch help on "string"
-	and "sq_string" types.
-	(dispatch_record): Add extra space to force new paragraph after
-	each dispatched function name if we are formatting with Texinfo.
-	Force noindent of preceding "Overloaded function:" tag.
-
-2005-04-21  John W Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_mat5_binary_element): Only read sparse matrix
-	values if sizeof (int) == sizeof (octave_idx_type).
-
-	* DLD-FUNCTIONS/colamd.cc: These functions only work if
-	sizeof (int) == sizeof (octave_idx_type).
-
-	* Makefile.in (parse.cc): Expect 14 shift/reduce conflicts.
-
-	* parse.y (USING TITLE WITH AXES COLON OPEN_BRACE CLEAR):
-	Delete unused tokens.
-
-	* DLD-FUNCTIONS/__qp__.cc (qp): Use octave_idx_type where needed.
-
-	* DLD-FUNCTIONS/__qp__.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2005-04-20  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (IDENT): Allow $ in identifiers.
-	* utils.cc (valid_identifier): Likewise.
-
-2005-04-19  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (Fsystem): Move enum exec_type declaration to file
-	scope and rename system_exec_type.  Change all uses.
-
-2005-04-14  David Bateman  <dbateman@free.fr>
-
-	* load-save.cc (Vdefault_save_format, Voctave_core_file_format):
-	Delete variables.
-	(Vdefault_save_options, Voctave_core_file_options): New variables.
-	(get_save_format): Delete function.
-	(parse_save_options (const string_vector&, ...),
-	parse_save_options (const std::string&, ...)): New functions.
-	(dump_octave_core): Allow save_as_floats to be used.
-	(dump_octave_core): Parse save options.
-	(Fsave): Split parsing of options, and default formats.
-	(default_save_format): Delete function and DEFVAR.
-	(default_save_options): New function.  DEFVAR it.
-	(octave_core_file_format): Delete function and DEFVAR.
-	(octave_core_file_options): New function.  DEFVAR it.
-
-	* octave.cc (default_save_format): Delete binding
-	(default_save_options): New bindings
-
-	* Makefile.in: Add luinc.cc to DLD_XSRC.
-	* DLD-FUNCTIONS/luinc.cc: New file for incomplete LU factorization.
-
-	* ov-bool-sparse.h (index_vector): New function.
-	* ov-re-sparse.cc (index_vector): Ditto.
-	* ov-re-sparse.h (index_vector): Definition.
-
-	* ov-mapper.cc (any_element_less_than, any_element_greater_than):
-	New versions for SparseMatrix
-	(SPARSE_MAPPER_LOOP_2, SPARSE_MAPPER_LOOP_1, SPARSE_MAPPER_LOOP):
-	New macros.
-	(octave_mapper::apply): Add special cases for sparse arguments to
-	the mapper functions
-
-	* ov-re-sparse.cc (streamoff_array_value): Use octave_idx_type.
-	(convert_to_str_internal): New function.
-	* ov-re-sparse.h (convert_to_str_internal): Definition.
-
-	* DLD-FUNCTIONS/sparse.cc (Fsparse): More care for nargin=2 case.
-
-	* DLD-FUNCTIONS/splu.cc (Fsplu): Use octave_idx_type.
-
-2005-04-14  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fchar): If arg is a dq string, return a dq string.
-
-	* pt-mat.cc (Vwarn_string_concat): New static variable.
-	(symbols_of_pt_mat): DEFVAR it.
-	(warn_string_concat): New function.
-	(maybe_warn_string_concat): New function.
-	(tree_matrix::rvalue): If all args are single quoted strings,
-	create a single quoted string object.  If all args are strings
-	(any type), create a double quoted string object.  If a mixture of
-	string types, maybe warn.
-	(class tm_row_const, class tm_row_const_rep, class tm_const):
-	Note whether all values are double or single quoted strings.
-
-	* ov.h (octave_value::is_dq_string): New function.
-
-2005-04-13  John W. Eaton  <jwe@octave.org>
-
-	* strfns.cc (Fchar): Create sq_string objects here.
-
-2005-04-12  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (Ffprintf, Fprintf, Fsprintf):
-	Pass octave_value to octave_stream::printf for FMT.
-	(Fscanf, Fsscanf): Likewise, for octave_stream::scanf and
-	octave_stream::oscanf.
-
-	* oct-stream.cc, oct-stream.h (octave_stream::printf,
-	octave_stream::scanf, octave_stream::oscanf): New versions that
-	accept an octave_value for FMT.
-	(octave_stream::puts): New version that accepts octave_value for
-	value to print.
-	(octave_base_stream::do_scanf): If all_char_conv, force
-	conversion to string to avoid warning.
-
-	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_sq_str): New class.
-	(octave_char_matrix_dq_str): New typedef.
-
-	* ov.h, ov.cc: All string constructors now take type argument.
-
-	* ov.cc (install_types): Register octave_char_matrix_sq_str.
-
-	* ov.h (octave_value::convert_to_str): New arg, type.
-	(octave_value::convert_to_str_internal): Likewise.
-	Change all derived classes.
-
-	* ov.h (octave_value::is_sq_string): New predicate.
-
-	* octave.gperf (__FILE__): Now a DQ_STRING.
-
-	* ls-mat4.cc (read_mat_binary_data): Force sq strings here.
-	* ls-mat5.cc (read_mat5_binary_element): And here.
-
-	* lex.l (<COMMAND_START>[\;\,]): Return SQ_STRING, not STRING.
-	(<COMMAND_START>[^#% \t\r\n\;\,\"\'][^ \t\r\n\;\,]*{S}*): Likewise.
-	(handle_string): Type of string to return depends on delimeter.
-
-	* parse.y (DQ_STRING, SQ_STRING): New token types.
-	(STRING): Delete token type.
-	(string): New non-terminal.
-	(constant): Recognize string here instead of STRING.
-	(word_list): Likewise.
-	(opt_sep): Handle DQ_STRING and SQ_STRING.
-
-	* OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
-	OPERATORS/op-str-str.cc: Define operators for both sq and dq
-	strings.
-
-2005-04-08  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (clean): Use exact filenames instead of *.xxx.
-	Also remove PKG_ADD.
-	(DISTFILES): Add gplot.cc to the list.
-	(maintainer-clean): Remove gplot.cc here.
-
-	* Initial merge of 64-bit changes from Clinton Chee:
-
-	2005-04-07  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.h, ls-oct-ascii.cc (extract_keyword): Now template
-	functions defined in the header file.
-
-	* ls-mat5.cc, ov-base-sparse.h, ov-base.h, ov-bool-sparse.cc
-	ov-cx-sparse.cc, ov-re-sparse.cc, ov.cc, pt-loop.cc,
-	sparse-xdiv.cc, sparse-xpow.cc, DLD-FUNCTIONS/sparse.cc,
-	DLD-FUNCTIONS/spdet.cc:
-	Use octave_idx_type instead of int where needed.
-
-	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
-
-	* Cell.cc, Cell.h, data.cc, defaults.cc, dirfns.cc, file-io.cc,
-	gripes.cc, gripes.h, ls-mat-ascii.cc, ls-mat4.cc, ls-oct-ascii.cc,
-	oct-map.cc, oct-map.h, oct-obj.cc, oct-obj.h, oct-stream.cc,
-	oct-stream.h, octave.cc, ops.h, ov-base-mat.cc, ov-base.h,
-	ov-bool-mat.cc, ov-cell.cc, ov-cs-list.cc, ov-cx-mat.cc,
-	ov-intx.h, ov-list.cc, ov-mapper.cc, ov-range.cc, ov-range.h,
-	ov-re-mat.cc, ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.cc,
-	ov.h, pr-output.cc, pt-arg-list.cc, pt-cell.cc, pt-loop.cc,
-	pt-mat.cc, pt-select.cc, symtab.h, utils.cc, utils.h, xdiv.cc,
-	xpow.cc:
-	Use octave_idx_type instead of int where needed.
-
-	2005-04-01  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Add USE_64_BIT_IDX_T to the list.
-	* oct-conf.h.in (OCTAVE_CONF_USE_64_BIT_IDX_T): Substitute here.
-
-	2005-03-31  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/sort.cc: Don't use unsigned int for index into
-	dim_vector, or cast dim to unsigned int.
-	(Fsort): No need to cast arg before asking for dims.
-
-	* DLD-FUNCTIONS/gcd.cc (Fgcd): Use OCTAVE_LOCAL_BUFFER to allocate
-	local array of NDArray objects.
-
-	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colloc.cc,
-	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
-	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/det.cc,
-	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/expm.cc, DLD-FUNCTIONS/fft.cc,
-	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
-	DLD-FUNCTIONS/fftw_wisdom.cc, DLD-FUNCTIONS/filter.cc,
-	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/fsolve.cc,
-	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/inv.cc,
-	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lu.cc,
-	DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/quad.cc,
-	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
-	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/sort.cc,
-	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
-	DLD-FUNCTIONS/syl.cc:
-	Use octave_idx_type instead of int where needed.
-
-2005-04-06  David Bateman  <dbateman@free.fr>
-
-	* Makefile.in: Link to UMFPACK_LIBS. Add zfstream.{cc,h} to build and
-	dist files.
-
-	* zfstream.cc: New file for C++ binding for fstream like class for
-	zlib.
-
-	* zfstream.h: Definition for fstream like C++ bindings to zlib.
-
-	* load-save.cc (static bool check_gzip_magic (const std::string&)):
-	New function to look for GZIP magic
-	(static load_save_format get_file_format (const istream &file)): New
-	function split from old get_file_format but passed istream to allow
-	use with zlib istream.
-	(static load_save_format get_file_format (const std::string&,
-	const std::string&, bool)): Modify the test uncompressed file first,
-	then compressed version
-	(Fload) Allow -v6, -6, -v7 and -7 options. Split load code to allow
-	use of zlib.
-	(Fsave) Allow -zip, -z, -v6, -6, -v7 and -7 options. Split save code
-	to allow use of zlib.
-
-	* load-save.h: add LS_MAT7_BINARY to load_save_format enum
-
-	* ls-mat5.cc (read_mat5_binary_element): Test for miCOMPRESSED flag for
-	matlab v7 files, and decompress data in memory. Allow reading of matlab
-	logical variables either in mxDOUBLE_CLASS or mxUINT8_CLASS.
-	(int save_mat5_array_length(const double*, ...): New function to
-	calculate number of bytes used to save NDArray.
-	(int save_mat5_array_length(const Complex*, ...): New function to
-	calculate number of bytes used to save ComplexNDArray.
-	(int save_mat5_element_length): New function to find number of bytes
-	needed to save data element.
-	(save_mat5_binary_element): New input arguments, mat7_format and
-	compressing, that define if we are in a matlab v7 format and where we
-	are currently compressing the data element. If mat7_format use
-	miCOMPRESSED flag for matlab v7 files, and compress data in memory.
-	Add capability to save logical variables as mxUINT8_CLASS. If v7
-	format maximum variable length is 63 characters and not 31. Use the
-	save_mat5_element_length function to pre-calculate the number of bytes
-	taken by a variable rather than use a negative seek to correct after
-	writing (zlib can't do negative seeking)
-
-	* ls-mat5.h: Add to miCOMPRESSED, miUTF8, miUTF16 and miUTF32 flags to
-	the enum mat5_data_type.
-	(save_mat5_binary_element): Add args mat7_format and compressing to the
-	definition.
-
-2005-04-06  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-scm-scm.cc: Delete #pragma implementation.
-
-2005-04-05  John W. Eaton  <jwe@octave.org>
-
-	* ov-ch-mat.h (octave_char_matrix::index_vector): New function.
-
-	* oct-stream.cc (BEGIN_C_CONVERSION): Clear stream state if
-	we hit EOF after we read something.
-
-	* pt-assign.cc (tree_multi_assignment::rvalue):
-	Allow assignments of the form [a,b,c] = x{:}.
-
-2005-03-30  John W. Eaton  <jwe@octave.org>
-
-	* mappers.cc (install_mapper_functions): Use std:: as needed.
-	* defun-int.h (DEFUN_MAPPER_INTERNAL): Don't use X_CAST on
-	function pointer args.
-
-	* ov-complex.cc, ov-cx-mat.cc, xpow.cc, ls-mat5.cc: Use std:: for
-	Complex functions instead of relying on wrappers from oct-cmplx.h.
-
-	* oct-stream.cc (octave_scan): Initialize c1 to EOF.
-
-2005-03-29  John W. Eaton  <jwe@octave.org>
-
-	* utils.cc (get_dimensions): Produce error instead of warning if
-	given a matrix argument.
-
-	* load-save.cc (Fload, Fsave): Also accept -V4 option.
-
-	* ls-hdf5.h (hdf5_fstreambase::hdf5_fstreambase,
-	hdf5_fstreambase::open): Use & instead of == to test whether mode
-	is std::ios::in or std::ios::out.
-	(hd5_ifstream::istream, hd5_ifstream::open, hd5_ofstream::istream,
-	hd5_ofstream::open): Default mode now includes binary flag.
-
-2005-03-28  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_stream::write): For compatibility, Write
-	zeros instead of seeking if SKIP is nonzero.
-
-	* DLD-FUNCTIONS/gplot.l (Fgraw): Recommend __gnuplot_raw__, not
-	__gnuplot__raw__.
-	(Fgshow): Recommend __gnuplot_show__, not __gnuplot__show__.
-	Don't add "mark_as_rawcommand ("replot")" to PKG_ADD file.
-
-2005-03-26  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (gnu_readline): Don't wrap call to command_editor::readline
-	with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
-
-2005-03-25  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (main_loop): Don't use octave_set_current_context here.
-
-	* pt-loop.cc (simple_for_loop::eval): In for i = matrix ... end,
-	skip loop if matrix is empty.  Likewise for cell arrays.
-
-2005-03-24  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Texinfoize doc string.
-
-	* Makefile.in (install-oct): Always create $(octfiledir) and
-	install PKG_ADD file there.
-
-	* octave.cc (octave_main): Fix logic in test for exit after
-	evaluating --eval option code.
-
-2005-03-23  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Require 9 arguments.
-	Print error messages and return early if value extractions fail.
-	Default for message level now 0.
-	Rename local variable error to be errnum.
-	(glpk_fault_hook): Call message instead of writing to octave_stderr.
-	(glpk_fault_hook): Call error instead of writing to octave_stderr.
-	(glpk): Likewise.
-	Declare mark static.  Delete declaration of fperr.
-	(glpk): Delete unnecessary casts.
-
-	* DLD-FUNCTIONS/__glpk__.cc (OCTAVE_GLPK_GET_REAL_PARAM,
-	OCTAVE_GLPK_GET_INT_PARAM): New macros.
-	(F__glpk__): Use them.
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Accept lpsolver and
-	save_pb in param arg instead of as separate args.
-	Arg list now matches new interface for glpk.m.
-	Don't return lambda and redcosts fields in extra if isMIP.
-
-	* toplev.cc (do_octave_atexit): Call reset_error_handler before
-	each call to feval.
-
-2005-03-22  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in: Add special rule for __glpk__.oct.
-
-	* toplev.cc (octave_config_info): Add GLPK_LIBS to the list.
-	* oct-conf.h.in (OCTAVE_CONF_GLPK_LIBS): Substitute here.
-
-	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__, glpk):
-	Adapt to Octave coding style.
-	(glpk): Move decls closer to first use.
-	(F__glpk__): Eliminate unnecessary loop seting inf values.
-	Ensure that isMIP is initialized.
-	Declare sense, nz, and isMIP volatile to avoid GCC warnings that
-	these variables might be might be clobbered by `longjmp' or `vfork'
-
-	* DLD-FUNCTIONS/__glpk__.cc: New file.
-
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2005-03-21  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (maximum_braindamage):
-	Don't set warn_matlab_incompatible to true.
-
-2005-03-17  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (class bracket_brace_paren_nesting_level): Use static
-	const int members instead of anonymous enum.
-
-2005-03-16  John W. Eaton  <jwe@octave.org>
-
-	* ov-struct.cc (octave_struct::save_ascii): Don't convert Cell
-	object to cs-list.
-	(octave_struct::save_binary): Likewise
-	(octave_struct::save_hdf5): Likewise.
-
-	* DLD-FUNCTIONS/gplot.l (Fset, Fshow): Delete.
-	(F__gnuplot_plot__): Rename from Fgplot.
-	(F__gnuplot_splot__): Rename from Fgsplot.
-	(F__gnuplot_raw__): Rename from Fgraw.
-	(F__gnuplot_set__): Rename from Fgset.
-	(F__gnuplot_show__): Rename from Fgshow.
-	(F__gnuplot_replot__): Rename from Freplot.
-	(WARN_DEPRECATED, DEPRECATED_BODY): New macros.
-	(Fgplot, Fgsplot, Fgraw, Fgset, Fgshow): New functions.
-
-2005-03-15  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (<COMMAND_START>{NL}): Reset lexer_flags.doing_rawcommand
-	state here.
-
-	* version.h (OCTAVE_API_VERSION): Now 2.9.0.
-	(OCTAVE_API_VERSION): Now api-v14.
-
-	* Makefile.in (INCLUDES): Delete sparse-ops.h from the list.
-
-	* cellfun.cc: New function from Octave-forge.  Adapt to Octave
-	coding standards.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2005-03-14  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin):	Avoid crash if symbol
-	lookup fails.
-
-2005-03-10  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (Foctave_config_info): Print error instead of crashing
-	if struct does not contain field we are looking for.
-
-2005-03-09  John W. Eaton  <jwe@octave.org>
-
-	* load-save.cc (Fload, Fsave): Accept -text as an alias for -ascii.
-	Issue warning for future change in meaning of -ascii.
-
-	* Makefile.in (bin-dist): Delete target.
-	(BINDISTFILES, BINDISTLIBS): Delete variables.
-
-2005-03-04  John W. Eaton  <jwe@octave.org>
-
-	* octave.cc (octave_main): Concatenate all --eval arguments.
-
-2005-03-03  John W. Eaton  <jwe@octave.org>
-
-	* input.cc (input_from_command_line_file): Move definition here.
-	* parse.y: From here.
-	* input.h (input_from_command_line_file): Move decl here.
-	* parse.h: From here.
-
-	* input.cc (octave_gets):
-	Don't save history if input is from command line file.
-
-	* parse.y (parse_and_execute, parse_fcn_file, eval_string):
-	Don't alter value of input_from_command_line_file here.
-	(input_from_command_line_file): Default value is false.
-	(eval_string): Turn off line editing here.
-
-	* toplev.cc, toplev.h (main_loop): Delete fun_to_call arg and all uses.
-
-	* octave.cc (fun_to_call): Delete static variable.
-	(persist, code_to_eval): New static variables.
-	(long_opts): Delete --funcall, add --eval and --persist.
-	(usage_string, verbose_usage, octave_main): Likewise.
-	(FUNCALL_OPTION): Delete.
-	(EVAL_OPTION, PERSIST_OPTION): New macros.
-	(maximum_braindamage): Set persist to true.
-	(execute_eval_option_code): New function.
-	(restore_program_name): New function.
-	(execute_command_line_file): New function.
-	(octave_main): Call execute_eval_option code and
-	execute_command_line file.  If persist, go interactive even after
-	evaluating --eval code and/or command-line file.
-
-	* ov-bool-sparse.h, ov-bool-sparse.cc
-	(octave_sparse_bool_matrix::sparse_matrix_value,
-	octave_sparse_bool_matrix::sparse_complex_matrix_value):
-	Accept bool arg.
-
-	* parse.y (looks_like_copyright): Check first 9 characters, not 14.
-
-2005-03-02  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_scan (std::istream&, const
-	scanf_format_elt&, double*)): New specialization to handle Inf,
-	NaN, and NA.
-
-	* parse.y (looks_like_copyright):
-	Rename from looks_like_octave_copyright.  Change all uses.
-	Simply match "Copyright".
-
-2005-03-01  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/odessa.cc: Delete.
-	* Makefile.in (DLD_XSRC): Remove it from the list.
-	(OPT_HANDLERS): Remove ODESSA-opts.cc from the list.
-
-2005-02-28  John W. Eaton  <jwe@octave.org>
-
-	* toplev.cc (octave_config_info): Remove LIBGLOB and GLOB_INCFLAGS
-	from the list.
-	* oct-conf.h.in (OCTAVE_CONF_LIBGLOB, OCTAVE_CONF_GLOB_INCFLAGS):
-	Delete.
-	* Makefile.in (OCTAVE_LIBS): Remove $(LIBGLOB) from the list.
-
-2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	Sparse merge.
-
-	2005-02-25  John W. Eaton  <jwe@octave.org>
-
-	* DLD-SRC/rand.cc (Frand): Accept "state" as an alias for "seed".
-
-	* DLD-SRC/dispatch.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-	2005-02-13  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline.h, DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/gcd.cc:
-	Remove additional licensing clause, with authors permission
-
-	* ov-base-sparse.h: New constructor to cache SparseType, not yet
-	used
-	* ov-re-sparse.h: likewise
-	* ov-cx-sparse.h: likewise
-	* ov.h: Likewise
-
-	* sparse-xdiv.cc: Remove spparms umfpack flag
-
-	* DLD-FUNCTIONS/spparms.cc: Warning that umfpack flag is ignored.
-
-	2005-01-16  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (read_mat5_integer_data): Change "T &m" to "T *m" and
-	instantiate with values like octave_int8 rather than int8NDArray.
-	Modify function to fit
-	(read_mat5_binary_element): Use new form of read_mat_integer_data
-	to read data directly into sparse matrix
-	(write_mat5_integer_data): Change "const T &m" to "T *m", etc. New
-	instantiation with int.
-	(save_mat5_binary_element): Modify to save sparse data
-
-	2005-01-15  David Bateman  <dbateman@free.fr>
-
-	* data.cc (do_cat): Use first non-empty matrix as base for
-	concatenation.
-	* pt-mat.cc (tree_matrix::rvalue): ditto.
-
-	2005-01-14  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (do_cat_op): When checking for empty args, use
-	all_zero_dims, not numel.
-	* ov.h (octave_value::all_zero_dims): New function.
-
-	* ov-bool-sparse.cc (try_narrowing_conversion): Convert to
-	bool_matrix, not matrix.
-
-	2005-01-13  David Bateman  <dbateman@free.fr>
-
-	* data.cc (make_diag): Use numel not capacity to remove ambiguity.
-	* ov.h (octave_value::capacity): New virtual funtion.
-	* ov-base.h (octave_base_value::capacity): New function calls numel.
-	* data.cc (Freshape): Use arg.numel() rather than arg.dims().numel()
-	since sparse numel now consistent.
-	* symtab.h (symbol_record::symbol_def::capacity,
-	symbol_record::capacity): New methods.
-	* symtab.cc (symbol_record::print_symbol_info_line,
-	symbol_table::parse_whos_line_format, symbol_table::maybe_list):
-	used capacity() and not numel() to properly assess size of
-	sparse objects.
-	* ov-base-sparse.h (octave_base_sparse::capacity): New function,
-	(octave_base_sparse::numel): Delete.
-	* ov-re-sparse.cc (octave_sparse_matrix::streamoff_array_value):
-	Only fill from non-zero elements of sparse array.
-	* DLD-FUNCTIONS/splu.cc (Fsplu): Change use of nelem to numel.
-	* ov.cc (do_cat_op): Early return for concatenation with empty
-	objects.
-
-	2005-01-12  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Make it work for character strings.
-
-	2005-01-11  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-double-conv.cc: New conversions for sparse_matrix
-	and sparse_bool_matrix to matrix.
-
-	2005-01-11  David Bateman  <dbateman@free.fr>
-
-	* ov-base-sparse.h (octave_base_sparse::any,
-	octave_base_sparse::all): Use new constructors, etc as pointed out
-	by JWE.
-
-	2005-01-10  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/sparse.cc (MINMAX_BODY, Fspatan2, make_spdiag):
-	Write retval(0) = result instead of retval(0) = octave_value (result).
-	* DLD-FUNCTIONS/splu.cc (Fsplu): Likewise.
-
-	2005-01-08  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (read_mat5_integer_data): Instantiate for Array<int>
-	(read_mat5_binary_element): Add code to read sparse matrices
-	saved in matlab v5 format
-
-	2005-01-07  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
-	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
-	OPERATORS/op-sbm-b.cc, OPERATORS/op-sbm-bm.cc,
-	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
-	OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-m.cc,
-	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-scm.cc,
-	OPERATORS/op-scm-sm.cc, OPERATORS/op-sm-cm.cc,
-	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-m.cc,
-	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-scm.cc,
-	OPERATORS/op-sm-sm.cc, OPERATORS/op-s-scm.cc,
-	OPERATORS/op-s-sm.cc: New octave_value constructors allow
-	macros from ops.h to be used rather than sparse-ops.h. Remove
-	other explicit uses of maybe_mutate.
-
-	* sparse-ops.h: delete file.
-
-	* colamd.cc (Fcolamd, Fsymamd, Fetree): Remove no longer needed
-	use of get_rep() and use the sparse matrix conversion functions
-	directly.
-
-	* data.cc (Freshape): Use arg.dims().numel() rather than
-	arg.numel() due to definition of numel for sparse matrices.
-
-	* sparse.cc (Ffull, Fspfind, SPARSE_DIM_ARG_BODY, MINMAX_BODY,
-	Fspatan2, make_spdiag): Convert to use new octave_value sparse
-	constructors, sparse matrix conversion functions and remove
-	maybe_mutate calls.
-	(Fspreshape): Delete
-
-	* splu.cc (Fsplu): Remove remaining explicit octave_value
-	construction.
-
-	* ov-base-sparse.h (do_index_op, resize, reshape, permute, squeeze):
-	Move these methods from the derived classes.
-	* ov-base-spase.cc (do_index_op): Move this method from the derived
-	classes.
-	* ov-bool-sparse.h (do_index_op, resize, reshape, permute, squeeze):
-	delete.
-	* ov-re-spase.cc (do_index_op): delete.
-	* ov-cx-sparse.h (do_index_op, resize, reshape, permute, squeeze):
-	delete.
-	* ov-cx-spase.cc (do_index_op): delete.
-	* ov-bool-spase.cc (do_index_op): delete.
-	* ov-re-sparse.h (do_index_op, resize, reshape, permute, squeeze):
-	delete.
-
-	* DLD-FUNCTIONS/spdet.cc (Fspdet): Remove use of SparseDet and
-	SparseComplexDET classes and use DET and ComplexDET classes.
-
- 	* DLD-FUNCTIONS/colamd.cc op-bm-sbm.cc OPERATORS/op-b-sbm.cc
-	OPERATORS/op-cm-scm.cc OPERATORS/op-cm-sm.cc OPERATORS/op-cs-scm.cc
-	OPERATORS/op-cs-sm.cc OPERATORS/op-fil-sbm.cc OPERATORS/op-fil-scm.cc
-	OPERATORS/op-fil-sm.cc OPERATORS/op-m-scm.cc OPERATORS/op-m-sm.cc
-	OPERATORS/op-sbm-b.cc OPERATORS/op-sbm-bm.cc OPERATORS/op-sbm-sbm.cc
-	OPERATORS/op-scm-cm.cc OPERATORS/op-scm-cs.cc OPERATORS/op-scm-m.cc
-	OPERATORS/op-scm-s.cc OPERATORS/op-scm-scm.cc OPERATORS/op-scm-sm.cc
-	OPERATORS/op-sm-cm.cc OPERATORS/op-sm-cs.cc OPERATORS/op-sm-m.cc
-	OPERATORS/op-sm-s.cc OPERATORS/op-sm-scm.cc OPERATORS/op-sm-sm.cc
-	OPERATORS/op-s-scm.cc OPERATORS/op-s-sm.cc ov-base-sparse.cc
-	ov-base-sparse.h ov-bool-sparse.cc ov-bool-sparse.h ov-cx-sparse.cc
-	ov-cx-sparse.h ov-re-sparse.cc ov-re-sparse.h sparse-base-lu.cc
-	sparse-base-lu.h DLD-FUNCTIONS/sparse.cc sparse-xdiv.cc sparse-xdiv.h
-	sparse-xpow.cc sparse-xpow.h DLD-FUNCTIONS/spdet.cc
-	DLD-FUNCTIONS/splu.cc DLD-FUNCTIONS/spparms.cc: Remove additional
-	licensing clause with authors permission.
-
-	2005-01-05  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/colamd.cc: Rename from colamdoct.cc. Base colamd.h
-	now found in COLAMD/colamd.h.
-	(Fcolamd): Return value is now used.
-	(Fsymamd): ditto.
-
-	* Makefile.in: include colamd.cc in DLD_XSRC.
-
-	* ov.h (sparse_matrix_value, sparse_complex_matrix_value,
-	sparse_bool_matrix_value): New virtual functions
-
-	* ov-base.cc (octave_base_value::sparse_matrix_value,
-	octave_base_value::sparse_complex_matrix_value,
-	octave_base_value::sparse_bool_matrix_value): New default sparse
-	matrix extraction functions.
-
-	* ov-base.h (sparse_matrix_value, sparse_complex_matrix_value,
-	sparse_bool_matrix_value): Declare them.
-
-	* ov-re-mat.cc (octave_matrix::sparse_matrix_value,
-	octave_matrix::sparse_complex_matrix_value): Conversion functions.
-
-	* ov-re-mat.h (sparse_matrix_value, sparse_complex_matrix_value):
-	Declare them.
-
-	* ov-cx-mat.cc (octave_complex_matrix::sparse_matrix_value,
-	octave_complex_matrix::sparse_complex_matrix_value): Conversion
-	functions.
-
-	* ov-cx-mat.h (sparse_matrix_value, sparse_complex_matrix_value):
-	Declare them.
-
-	* ov-bool-mat.h (sparse_matrix_value, sparse_complex_matrix_value,
-	sparse_bool_matrix_value): Conversion functions.
-
-	* DLD_FUNCTIONS/spdet.cc (Fspdet): Use the above constructors
-	and conversion functions.
-	* DLD_FUNCTIONS/splu.cc (Fsplu): ditto.
-
-	2004-12-30  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/splu.cc (Fsplu): Avoid shadow warnings.
-
-	* sparse-xpow.cc (elem_xpow): Delete unsed variables.
-	* sparse-xdiv.cc (x_el_div): Likewise.
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Delete unused argument nargout.
-	* DLD-FUNCTIONS/spdet.cc (Fspdet): Likewise.
-
-	* DLD-FUNCTIONS/sparse.cc (Fnzmax): Return a value.
-
-	* ov.cc, ov.h (octave_value::octave_value (const SparseMatrix&),
-	(octave_value::octave_value (const SparseBoolMatrix&),
-	(octave_value::octave_value (const SparseComplexMatrix&)):
-	New constructors.
-
-	2004-12-29  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/sparse.cc (SPARSE_DIM_ARG_BODY): Rename from
-	DEFUN_DLD_SPARSE_DIM_ARG.  Omit HELP arg.  Omit DEFUN_DLD, so the
-	macro only defines the function body.
-	(Fspprod, Fspcumprod, Fspsum, Fspcumsum, Fspsumsq): Define with
-	DEFUN_DLD, not DEFUN_DLD_SPARSE_DIM_ARG.  Use SPARSE_DIM_ARG_BODY
-	to define function body.
-
-	* DLD-FUNCTIONS/sparse.cc (load_sparse_type, sparse_type_loaded):
-	Delete function, variable, and all uses.
-	* ov.cc: Include ov-bool-sparse.h, ov-re-sparse.h, ov-cx-sparse.h.
-	(install_types): Register sparse types.
-
-	Merge of sparse code from David Bateman <dbateman@free.fr> and
-	Andy Adler <adler@site.uottawa.ca>.
-
-	* sparse-xdiv.cc, sparse-xpow.cc: New files.
-	* Makefile.in (DIST_SRC): Add them to the list.
-
-	* sparse-ops.h sparse-xdiv.h, sparse-xpow.h: New files.
-	* Makefile.in (INCLUDES): Add them to the list.
-
-	* DLD-FUNCTIONS/colamdoct.cc, DLD-FUNCTIONS/sparse.cc,
-	DLD-FUNCTIONS/spdet.cc, DLD-FUNCTIONS/splu.cc,
-	DLD-FUNCTIONS/spparms.cc: New files.
-	* Makefile.in (DLD_XSRC): Add them to the list.
-
-	* ov-base-sparse.cc, ov-base-sparse.h, ov-bool-sparse.cc,
-	ov-bool-sparse.h, ov-cx-sparse.cc, ov-cx-sparse.h,
-	ov-re-sparse.cc, ov-re-sparse.h: New files.
-	* Makefile.in (OV_SPARSE_SRC, OV_SPARSE_INCLUDES): New lists.
-	(OV_SRC): Add $(OV_SPARSE_SRC) to the list.
-	(INCLUDES): Add $(OV_SPARSE_INCLUDES) to the list.
-
-	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
-	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
-	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
-	OPERATORS/op-fil-sbm.cc, OPERATORS/op-fil-scm.cc,
-	OPERATORS/op-fil-sm.cc, OPERATORS/op-m-scm.cc,
-	OPERATORS/op-m-sm.cc, OPERATORS/op-sbm-b.cc,
-	OPERATORS/op-sbm-bm.cc, OPERATORS/op-sbm-sbm.cc,
-	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
-	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
-	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
-	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
-	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
-	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
-	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc: New files.
-	* Makefile.in (SPARSE_OP_XSRC): New list.
-	(OP_XSRC): Add $(SPARSE_OP_XSRC) to the list.
-
-2005-02-23  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (fold (tree_binary_expression*)): Skip constant folding
-	for some expressions to preserve warnings.
-	(Vwarn_associativity_change): New static variable.
-	(warn_associativity_change): New function.
-	(symbols_of_parse): DEFVAR warn_associativity_change.
-	(maybe_warn_associativity_change): New function.
-	(make_binary_op): Use it.
-
-2005-02-22  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (POW, EPOW): Use %left associativity for compatibility.
-
-	* ov-base-int.cc (octave_baes_int_matrix<T>::load_binary):
-	Handle arrays with only one dimension.
-	* ov-bool-mat.cc (octave_bool_matrix::load_binary): Likewise.
-	* ov-cell.cc (octave_cell::load_binary): Likewise.
-	* ov-cell.cc (octave_complex_matrix::load_binary): Likewise.
-	* ov-re-mat.cc (octave_matrix::load_binary): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::load_binary): Likewise.
-
-	* ov-mapper.cc (octave_mapper::subsref): Return retval after
-	calling next_subsref.
-
-	* ov-mapper.cc (octave_builtin::subsref): If nargout is 0 and we
-	have additional indexing to perform, set it to 1 before calling
-	do_multi_index_op.
-
-	* oct-map.cc (Octave_map::intfield, Octave_map::stringfield):
-	New functions.
-	* oct-map.h: Provide decls.
-	* DLD-FUNCTIONS/time.cc (extract_tm): Use intfield and stringfield
-	to access map elements.
-
-2005-02-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-builtin.cc (octave_builtin::subsref): If nargout is 0 and we
-	have additional indexing to perform, set it to 1 before calling
-	do_multi_index_op.
-	* ov-usr-fcn.cc (octave_user_function::subsref): Likewise.
-
-	* DLD-FUNCTIONS/gplot.l (send_to_plot_stream):
-	Replot with no previous plot is a no-op.
-	(makeplot): Likewise.
-	(Vautomatic_replot): Don't use this variable in low-level functions.
-
-2005-02-18  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (oct-gperf.h): Remove -E from list of gperf options.
-
-	* data.cc (do_permute): Use zero-based indexing for permutation
-	vector that is passed to octave_value::permute method.
-	Allow permutation vector longer	than number of dimenensions of
-	permuted matrix.
-
-2005-02-17  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_API_VERSION): Now 2.1.64-cvs.
-	(OCTAVE_API_VERSION): Now api-v12-cvs.
-
-2005-02-16  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-mat.h (octave_base_matrix::squeeze): Explicitly convert
-	result of matrix.squeeze() to MT.
-
-2005-02-15  John W. Eaton  <jwe@octave.org>
-
-	* dirfns.cc (deftypefn): Don't print to octave_stdout if nargout > 0.
-
-	* pt-mat.cc (tree_matrix::rvalue): Min size of ra_idx is 2.
-
-	* file-io.cc (Ffclear): New function.
-
-	* sighandlers.h: Define SIGCHLD if it is not already defined and
-	SIGCLD is defined.
-
-	* sighandlers.cc (octave_set_signal_handler): Request system calls
-	restarted if interrupted by signals (except for SIGALRM).
-	* dirfns.cc (Fls): Don't bother with sleeping or checking errno.
-
-2005-02-11  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (sigpipe_handler): Don't try to take action.
-	Set octave_signal_caught and octave_signals_caught here.
-	(sigchld_handler): Call octave_child_list::wait here.
-	Set octave_signal_caught and octave_signals_caught here.
-	(octave_signals_caught): New static file-scope variable.
-	(sigint_handler): Also set octave_signal_caught.
-
-	* sighandlers.cc (sigpipe_handler):
-
-	* DLD-FUNCTIONS/gplot.l (plot_stream_event_handler): Rename from
-	plot_stream_death_handler.  Return true if plotter has exited.
-	Call close_plot_stream with false arg.
-	(plot_stream_pid): Delete static file-scope variable and all uses.
-	(close_plot_stream): New arg, remove_from_child_list, with default
-	value of true.  Only call octave_child_list::remove if
-	remove_from_child_list is true.
-
-	* pager.cc (octave_pager_pid, saved_interrupt_handler,
-	interrupt_handler_saved): Delete static file-scope variables and
-	all uses.
-	(clear_external_pager): Do nothing if external_pager is 0.
-	(pager_event_handler): Rename from pager_death_handler.
-	Improve warning message.  Return true if pager has exited.
-	(octave_pager_buf::do_sync): Check errno == EPIPE after write.
-	(flush_octave_stdout): No need to check external_pager before
-	calling clear_external_pager.
-
-	* toplev.cc (recover_from_exception): Set octave_signal_caught to zero.
-	(main_loop): Set octave_signal_hook to octave_signal_handler here.
-
-	* sighandlers.cc (octave_signal_handler): New function.
-	* sighanlders.h: Provide decl.
-
-	* sighandlers.cc (install_signal_handlers): Initialize
-	octave_signals_caught.
-
-	* sighandlers.h (octave_child::status, have_status): New data members.
-	(child_event_handler): Rename from dead_child_handler.
-	Change all uses.
-	(octave_child_list::reap, octave_child_list::wait): New functions.
-	(octave_child_list::length, octave_child_list::do_length,
-	octave_child_list::elem, octave_child_list::do_elem,
-	octave_child_list::list, octave_child_list::curr_len): Delete.
-
-	* sighandlers.h, sighandlers.cc
-	(octave_child_list::octave_child_list_rep): New class.
-
-	* input.cc (gnu_readline, octave_gets, get_user_input):
-	Call OCTAVE_QUIT before doing anything.
-
-	* base-list.h (octave_base_list<T>::remove_if): New function.
-
-	* TEMPLATE-INST/Array-oc.cc: Delete.
-	* Makefile.in (TI_XSRC): Remove from list.
-
-2005-02-10  Driss Ghaddab  <driss.ghaddab@free.fr>
-
-	* cutils.c (octave_usleep) [HAVE_POLL]: Fix typo.
-
-2005-02-10  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (symbol_exist): Don't search path if explicitly
-	asked for a variable or builtin.  From David Bateman
-	<dbateman@free.fr>.
-
-2005-02-09  John W. Eaton  <jwe@octave.org>
-
-	* variables.cc (same_file): New static function.
-	(symbol_out_of_date): Use it.
-
-	* syscalls.cc (Fcanonicalize_file_name): New function.
-
-2005-02-08  Walter Landry  <landry@osc.edu>
-
-	* symtab.h (symbol_record::mark_as_command): Avoid AIX compiler error.
-
-2005-02-07  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Return [] instead
-	of [](1x0) for scalar arg of zero.
-
-2005-02-06  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (tmp_files): Delete.
-	From Todd Neal <tolchz@tolchz.net>.
-
-2005-02-04  John W. Eaton  <jwe@octave.org>
-
-	* sighandlers.cc (octave_child_list::~octave_child_list): Move here.
-	* sighandlers.h: From here.
-
-2005-02-02  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (parse.cc): Expect 12 shift/reduce conflicts.
-	* parse.y (loop_command): Allow "for (k=1:10) ... endfor".
-
-2005-01-27  David Bateman  <dbateman@free.fr>
-
-	* ov-mapper.cc (octave_mapper::apply): Only work on real arguments
-	if c_c_map_fcn or d_d_map_fcn or d_b_map_fcn is defined.xo
-
-2005-01-26  Joel Andersson  <snprintf@gmail.com>
-
-	* help.cc (keywords): Document endswitch.
-
-2005-01-21  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/filter.cc (filter): Avoid slow Marray indexing ops.
-
-2005-01-20  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (EXTRAS): Move ov-base-mat.cc ov-base-scalar.cc here.
-	(OV_SRC): From here.
-
-2005-01-18  John W. Eaton  <jwe@octave.org>
-
-	* ov-complex.h (octave_complex::any): New function.
-	* ov-scalar.h (octave_scalar::any): New function.
-
-	* file-io.cc (Fmkstemp): Fix doc string.  Error message belongs in
-	third output value.  From Mats Jansson <mats.e.jansson@home.se>.
-
-2005-01-12  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/find.cc (Ffind): Make it work for character strings.
-
-2005-01-11  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/gplot.l (UNOP): Avoid trailing comment.
-
-2005-01-10  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (extract_keyword (std::istream&, const
-	string_vector&, std::string&, int&, const bool)):
-	Remove duplicate definition.
-
-2004-12-27  Martin Dalecki  <martin@dalecki.de>
-
-	* Cell.cc, c-file-ptr-stream.cc, comment-list.cc, oct-map.cc,
-	oct-obj.cc, ov-base.cc, ov-base-int.cc, ov-base-mat.cc,
-	ov-base-scalar.cc, ov-bool.cc, ov-bool-mat.cc, ov-builtin.cc,
-	ov.cc, ov-cell.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
-	ov-cs-list.cc, ov-cx-mat.cc, ov-dld-fcn.cc, ov-fcn.cc,
-	ov-fcn-handle.cc, ov-fcn-inline.cc, ov-file.cc, ov-int16.cc,
-	ov-int32.cc, ov-int64.cc, ov-int8.cc, ov-list.cc, ov-mapper.cc,
-	ov-range.cc, ov-re-mat.cc, ov-scalar.cc, ov-streamoff.cc,
-	ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc, ov-uint16.cc,
-	ov-uint32.cc, ov-uint64.cc, ov-uint8.cc, ov-usr-fcn.cc,
-	ov-va-args.cc, procstream.cc, pt-arg-list.cc, pt-assign.cc,
-	pt-binop.cc, pt-bp.cc, pt.cc, pt-cell.cc, pt-check.cc, pt-cmd.cc,
-	pt-colon.cc, pt-const.cc, pt-decl.cc, pt-except.cc, pt-exp.cc,
-	pt-fcn-handle.cc, pt-id.cc, pt-idx.cc, pt-jump.cc, pt-loop.cc,
-	pt-mat.cc, pt-misc.cc, pt-pr-code.cc, pt-select.cc, pt-stmt.cc,
-	pt-unop.cc, symtab.cc, token.cc, unwind-prot.cc:
-	Delete #pragma implementation.
-
-	* Cell.h, c-file-ptr-stream.h, comment-list.h, oct-map.h,
-	oct-obj.h, ov-base.h, ov-base-int.h, ov-base-mat.h,
-	ov-base-scalar.h, ov-bool.h, ov-bool-mat.h, ov-builtin.h,
-	ov-cell.h, ov-ch-mat.h, ov-complex.h, ov-cs-list.h, ov-cx-mat.h,
-	ov-dld-fcn.h, ov-fcn.h, ov-fcn-handle.h, ov-fcn-inline.h,
-	ov-file.h, ov.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-int8.h,
-	ov-list.h, ov-mapper.h, ov-range.h, ov-re-mat.h, ov-scalar.h,
-	ov-streamoff.h, ov-str-mat.h, ov-struct.h, ov-typeinfo.h,
-	ov-uint16.h, ov-uint32.h, ov-uint64.h, ov-uint8.h, ov-usr-fcn.h,
-	procstream.h, pt-arg-list.h, pt-assign.h, pt-binop.h, pt-bp.h,
-	pt-cell.h, pt-check.h, pt-cmd.h, pt-colon.h, pt-const.h,
-	pt-decl.h, pt-except.h, pt-exp.h, pt-fcn-handle.h, pt.h, pt-id.h,
-	pt-idx.h, pt-jump.h, pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h,
-	pt-select.h, pt-stmt.h, pt-unop.h, symtab.h, token.h,
-	unwind-prot.h: Delete #pragma interface.
-
-2004-12-27  John W. Eaton  <jwe@octave.org>
-
-	Merge of changes from Teemu Ikonen <tpikonen@pcu.helsinki.fi> to
-	remove gnuplot from main parser.
-
-	* pt-plot.cc, pt-plot.h: Delete.
-	* Makefile.in (PT_SRC, PT_INCLUDES): Delete them from the lists.
-
-	* DLD-FUNCTIONS/gplot.l: New file.
-	* Makefile.in: Include it in the DLD_XSRC list.
-
-	* dirfns.cc (octave_change_to_directory):
-	Don't call do_external_plotter_cd.
-
-	* symtab.h (symbol_record::TYPE): New element, RAWCOMMAND.
-	(symbol_record::symbol_def::mark_as_rawcommand,
-	symbol_record::symbol_def::unmark_rawcommand,
-	symbol_record::symbol_def::is_rawcommand): New functions.
-	(symbol_record::symbol_def::symbol_type): Bitfield is now 9 bits wide.
-	(symbol_record::mark_as_rawcommand,
-	symbol_record::unmark_rawcommand, symbol_record::is_rawcommand):
-	New functions.
-	(SYMTAB_ALL_TYPES): Include RAWCOMMAND.
-
-	* parse.y (make_plot_command): Delete function.
-	(tree_plot_command_type, subplot_type, subplot_list_type,
-	plot_limits_type, plot_range_type, subplot_using_type,
-	subplot_style_type, subplot_axes_type):
-	Delete non-terminal type decls.
-	(PLOT, STYLE, AXES_TAG): Delete token types.
-	(title, plot_command, plot_command2, plot_options, plot_command1,
-	ranges, ranges1, using, using1, style, axes): Delete non-terminals.
-
-	* toplev.cc (do_octave_atexit): Don't call close_plot_stream.
-
-	* variables.cc (rawcommand_set): New static variable.
-	(is_marked_as_rawcommand, mark_as_rawcommand, unmark_rawcommand,
-	Fiscommand, Fmark_as_rawcommand, Funmark_rawcommand,
-	Fisrawcommand, is_rawcommand_name): New functions.
-	* variables.h: Provide decl for is_rawcommand_name.
-
-	* pt-bp.cc, pt-bp.h, pt-check.cc, pt-check.h, pt-pr-code.cc,
-	pt-pr-code.h, pt-walk.h: Delete all declarations, definitions, and
-	uses of visit_subplot, visit_subplot_axes, visit_subplot_list,
-	visit_subplot_style, and visit_subplot_using methods.
-
-	* lex.h (lexer_flags): New field, doing_rawcommand.
-	* lex.l (<COMMAND_START>[\;\,]): Also handle raw commands here.
-	(lexer_flags::init): Initialize doing_racommand to false.
-	(handle_identifier): Recognize raw commands ere.
-	(handle_string): Don't do string escape conversions on raw command
-	strings.
-
-	* octave.gperf: Delete gplot_kw, gsplot_kw, replot_kw.
-
-	* lex.h (lexer_flags): Delete fields cant_be_identifier,
-	doing_set, in_plot_range, in_plot_using, in_plot_style,
-	in_plot_axes, past_plot_range, and plotting.
-	* lex.l: Delete all uses of these lexer flags and remove all
-	special cases for plotting.
-	(plot_style_token, plot_axes_token, is_plot_keyword): Delete.
-
-	* file-io.cc, file-io.h (tmp_files, mark_for_deletion,
-	cleanup_tmp_files): Move here.
-	* pt-plot.cc, pt-plot.h: From here.
-
-	* Makefile.in (PKG_ADD): New target.
-	(all): Depend on PKG_ADD.
-	(install-oct): Depend on PKG_ADD.  Install PKG_ADD file.
-	(gplot.cc): New target.
-	(stamp-prereq): Depend on gplot.cc.
-	(VAR): Don't include $(DLD_SRC) here.
-	(DLD_OBJ, DLD_DEF_FILES): Include .l files.
-
-	* defun-int.h (DEFVAR, DEFCONST, DEFCONSTX): Move definition here.
-	* defun.h: From here.
-
-2004-12-22  John W. Eaton  <jwe@octave.org>
-
-	* ls-oct-ascii.cc (extract_keyword (std::istream&, const
-	string_vector&, std::string&, int&, const bool): New function.
-	* ls-oct-ascii.h: Provide decl.
-	* ov-bool-mat.cc (octave_bool_matrix::load_ascii):
-	Use new extract_keyword function to avoid calling tellg/seekg.
-	* ov-cell.cc (octave_cell::load_ascii): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Likewise.
-	* ov-re-mat.cc (octave_matrix::load_ascii): Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::load_ascii): Likewise.
-
-2004-12-20  John W. Eaton  <jwe@octave.org>
-
-	* pt-idx.cc (tree_index_expression::has_magic_end): Return true if
-	any argument list element has a magic end token.
-
-2004-12-03  John W. Eaton  <jwe@octave.org>
-
-  	* version.h (OCTAVE_VERSION): Now 2.1.64.
-
-2004-12-03  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* file-io.cc: Doc string fixes.
-
-2004-12-02  David Bateman  <dbateman@free.fr>
-
-	* input.cc (get_user_input): Only set nm and line for debugging if
-	both debug is true and curr_caller_function is non-null.
-
-2004-12-02  David Bateman  <dbateman@free.fr>
-
-	* ls-mat5.cc (arrayclasstype): Add mxINT64_CLASS, mxUINT64_CLASS,
-	mxFUNCTION_CLASS enum values.
-	(read_mat5_integer_data): New template function.
-	(OCTAVE_MAT5_INTEGER_READ): New macro.
-	(read_mat5_binary_element): Handle reading integer types.
-	Eliminate automatic conversion from int to double.
-	(write_mat5_integer_data): New template function.
-	Instantiate it for the 8 integer data types
-	(save_mat5_binary_element): Handle integer data types.
-
-	* load-save.cc (Fload): Check file existence here.
-	If file does not exist, append ".mat" to name and try again.
-	(get_file_format): Delete check for file existence.
-
-2004-11-30  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (oct-gperf.h): Use -L C++ instead of -L ANSI_C.
-	Use -Z octave_kw_hash option, delete -H and -N options.
-	* lex.l (is_keyword_token): Use octave_kw_hash::in_word_set
-	instead of octave_kw_lookup.
-	(is_keyword): Likewise.
-
-2004-11-22  John W. Eaton  <jwe@octave.org>
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	Check to see whether object is a function or function handle
-	instead of constant.
-
-2004-11-19  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op):
-	Skip indexing operation if indices are invalid.
-
-	* pr-output.cc (set_range_format, set_complex_matrix_format,
-	set_complex_format, set_real_matrix_format, set_real_format):
-	Also specify std::ios::fixed for bank format.
-
-2004-11-17  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.63.
-	(OCTAVE_API_VERSION): Now api-v12.
-
-2004-11-17  David Bateman  <dbateman@free.fr>
-
-	* pt-arg-list.cc (F__end__): Ask dv for the number of elements
-	instead indexed_object.
-
-2004-11-16  David Bateman  <dbateman@free.fr>
-
-	* ov.h (octave_value::numel): Now virtual.  Call rep->numel ().
-	* ov.cc (octave_value::numel): Delete.
-	* ov-base.h (octave_base_value::numel): New function.
-
-2004-11-12  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.62.
-
-2004-11-09  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-int-concat.cc: New file for mixed integer/other
-	concatentation operators.
-	* Makefile.in (INTTYPE_OP_XSRC): Add it to the list.
-
-	* ops.h (DEFNDCATOP_FN2): New macro.
-
-	* OPERATORS/op-int.h (OCTAVE_CONCAT_FN2,
-	OCTAVE_INSTALL_CONCAT_FN2, OCTAVE_DOUBLE_INT_CONCAT_FN,
-	OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN, OCTAVE_INT_DOUBLE_CONCAT_FN,
-	OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN): New macros.
-
-2004-11-09  David Bateman  <dbateman@free.fr>
-
-	* Cell.cc (concat): Delete.
-	(Cell::concat): New method.
-	* Cell.h: Provide decls.
-
-	* oct-map.cc (concat): Delete
-	(Octave_map::concat): New method.
-	* oct-map.h: Provide decls.
-
-	* ov.h (typedef octave_value (*cat_op_fcn) (octave_value&,
-	const octave_value&, const Array<int>&): Change definition of
-	cat_op_fcn so first argument is not constant.
-
-	* ops.h (CATOPDECL): First arg is no longer constant.
-	(DEFCATOP_FN, DEFNDCATOP_FN): Change to use new concat methods.
-
-	* OPERATORS/op-chm.cc, OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
-	OPERATORS/op-str-str.cc (DEFCATOP): Change explicit concat functions
-	to use new concatenation methods.
-
-2004-11-05  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.61.
-
-	* DLD-FUNCTIONS/det.cc (det): Always compute rcond so we can
-	detect numerically singular matrices.
-
-2004-11-04  John W. Eaton  <jwe@octave.org>
-
-	* pt-colon.cc (tree_colon_expression::line,
-	tree_colon_expression::column): New functions.
-	* pt-colon.h: Provide decls.
-
-	* oct-stream.cc (octave_stream::seek (long, int)): Return error
-	(but leave file position unchanged) for attempt to seek beyond end
-	of file.
-
-	* DLD-FUNCTIONS/inv.cc (Finv): Check rcond value returned from
-	LAPACK routines, and be careful to avoid optimizing away the
-	1+rcond == 1.0 check.
-	* DLD-FUNCTIONS/det.cc (Fdet): Likewise.
-
-2004-11-03  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (Fsize): Return 1 if requested dimension is larger than
-	the number of dimensions of the given object.
-
-2004-11-01  Claude Lacoursiere  <claude@hpc2n.umu.se>a
-
-	* ls-hdf5.cc (read_hdf5_data): Expect num_obj to be in distinct group.
-	* ov-cell.cc (octave_cell::load_hdf5): Likewise.
-	* ov-list.cc (octave_list::load_hdf5): Likewise.
-	* ov-struct.cc (octave_struct::load_hdf5): Likewise.
-
-2004-11-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
-	MArrayN<T>&, MArrayN<T>&, int)): The variable si is now at least 2-D.
-	(Ffilter): Force si to be 2-D, while allowing arbitrary vector
-	orientation.
-
-2004-11-01  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (INSTANTIATE_EYE): New macro.  Use it to instantiate
-	identity matrix functions for various matrix types.
-
-	* variables.cc (do_who): Fix typo in for loop.
-
-2004-10-28  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (save_mat5_binary_element): Save structure elements
-	in correct order.
-
-2004-10-26  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn.h (octave_function::octave_va_arg): No longer const.
-
-2004-10-22  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/filter.cc: Remove some unnecessary parens.
-
-2004-10-22  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
-	MArrayN<T>&, MArrayN<T>&, int)): If value to filter is
-	dimensionality 2 it might still be a vector, use special case.
-
-2004-10-21  John W. Eaton  <jwe@octave.org>
-
-	* ov-base.cc (INT_CONV_METHOD): Apply saturation semantics here too.
-
-2004-10-19  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::write): New function.
-
-2004-10-18  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (symbol_record::dimensions_string_req_first_space,
-	symbol_record::make_dimensions_string): Use dims() for all objects.
-
-2004-10-18  Oyvind Kristiansen  <oyvinkri@stud.ntnu.no>
-
-	* symtab.cc (symbol_table::parse_whos_line_format): Handle
-	size-of-parameter and center-specific format specifiers.
-
-2004-10-18  John W. Eaton  <jwe@octave.org>
-
-	* pt-plot.cc (handle_plot_data): If plotting data from file,
-	always use "using" clause.
-
-2004-10-12  David Bateman  <dbateman@free.fr>
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element,
-	tm_const::init): Dimensionality of matrices not necessarily the
-	same.  Check before comparing.
-
-2004-10-06  John W. Eaton  <jwe@octave.org>
-
-	* pt-fcn-handle.h (tree_fcn_handle::name): New function.
-
-2004-10-01  John W. Eaton  <jwe@octave.org>
-
-	* ov-range.h (octave_range::valid_as_scalar_index): Ensure int value.
-	(octave_range::valid_as_zero_index): Likewise.
-
-	* ov-scalar.h (octave_scalar::valid_as_scalar_index): Ensure int value.
-	(octave_scalar::valid_as_zero_index): Likewise.
-
-2004-09-24  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.60.
-	(OCTAVE_API_VERSION): Now api-v11.
-
-	* OPERATORS/op-int.h (OCTAVE_MM_INT_OPS): Include missing matrix
-	by int matrix ops.
-	(OCTAVE_INSTALL_MM_INT_OPS): Install them.
-
-	* OPERATORS/op-i64-i64.cc: Define and install missing int64 by
-	matrix and scalar ops.
-
-2004-09-24  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline (Finline): Attempt better auto-detection of
-	symbols that should be recognized as arguments.
-
-2004-09-24  John W. Eaton  <jwe@octave.org>
-
-	* ov-str-mat.cc (default_numeric_conversion_function): Return
-	scalar object if numel == 1.
-
-2004-09-23  John W. Eaton  <jwe@octave.org>
-
-	* ops.h	(DEFSTRDBLCONVFN): New macro.
-	* OPERATORS/op-double-conv.cc: Use it to define new conversion op.
-	Define new range to double matrix conversion.
-	(install_int_conv_ops): Install new ops.
-
-	* ops.h	(DEFSTRINTCONVFN): New macro.
-	* OPERATORS/op-int-conv.cc: Use it to define new conversion ops.
-	(install_int_conv_ops): Install them.
-
-	* (OCTAVE_SS_INT_OPS2, OCTAVE_SM_INT_OPS2, OCTAVE_MM_INT_OPS2,
-	OCTAVE_INSTALL_SS_INT_OPS2, OCTAVE_INSTALL_SM_INT_OPS2,
-	OCTAVE_INSTALL_MS_INT_OPS2, OCTAVE_INSTALL_MM_INT_OPS2):
-	Delete unused macros.
-
-	* OPERATORS/op-int.h (OCTAVE_SS_INT_BOOL_OPS): New args Z1 and Z2.
-	(OCTAVE_SS_INT_OPS): Pass appropriately typed zero values to
-	OCTAVE_SS_INT_BOOL_OPS.
-	* OPERATORS/op-i64-i64.cc, OPERATORS/op-ui64-ui64.cc: Likewise.
-
-	* pr-output.cc (pr_plus_format): Now template.
-	Specialize for Complex.
-	(octave_print_internal): Lookup print_conv_type using
-	octave_int<T>, not just T.
-
-	* ov-struct.cc (octave_struct::subsref): Pass skip to next_subsref.
-
-	* oct-stream.cc	(do_read): Hitting EOF should not be an error.
-
-2004-09-22  John W. Eaton  <jwe@octave.org>
-
-	* pt-plot.cc (send_to_plot_stream): Skip automatic replot if in
-	multiplot mode.
-
-	* variables.cc (get_global_value): New arg, silent.
-	* variables.h (get_global_value): Default value for silent arg is
-	false.
-
-2004-09-22  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline.cc (Finline): When called with a single arg, derive
-	argument of inline function in a compatible manner.
-
-2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
-
-	* DLD-FUNCTIONS/qz.cc (Fqz): New @tex section(s) in doc string for
-	better formating of printed documentation.  Use @var in doc string.
-
-	* DLD-FUNCTIONS/time.cc (Fstrftime): Fix typo in doc string.
-	* error.cc (Flasterr, Flastwarn): Likewise.
-	* mappers.cc (Farg, Fasinh, Fatanh, Ffinite, Fsin, Fsinh, Ftan):
-	Likewise.
-	* file-io.cc (Fmktemp): Likewise.
-	* pt-plot.cc (symbols_of_pt_plot): Fix typos in doc string for
-	gnuplot_has_frames.
-
-	* input.cc (symbols_of_input): Replace --echo-input with new
-	--echo-commands in PS4 doc string.
-
-	* pt-assign.cc (symbols_of_pt_assign): Mark print_rhs_assign_val
-	as built-in in doc string.
-
-	* symtab.cc (symbols_of_symtab): Mark variables_can_hide_functions
-	as built-in in doc string.
-
-2004-09-21  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.59.
-
-	* oct-fstrm.h (octave_fstream::octave_fstream,
-	octave_fstream::create): Set default float format to actual native
-	format, not flt_fmt_native.
-	* oct-iostrm.h (octave_base_iostream::octave_base_iostream,
-	octave_istream::octave_istream, octave_ostream::octave_ostream):
-	Likewise.
-	* oct-prcstrm.h (octave_iprocstream::octave_iprocstream,
-	octave_oprocstream::octave_oprocstream,
-	octave_iprocstream::create, octave_oprocstream::create):
-	Likewise.
-	* oct-stdstrm.h (octave_stdiostream::octave_stdiostream,
-	octave_stdiostream::create):
-	Likewise.
-	* oct-stream.h (octave_base_stream::octave_base_stream):
-	Likewise.
-	* oct-strstrm.h (octave_base_strstream::octave_base_strstream,
-	octave_istrstream::octave_istrstream, octave_istrstream::create):
-	Likewise.
-
-2004-09-21  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Freshape): Allow a single empty dimension argument
-	to flag unknown dimension and calculate its value from the
-	other dimensions.
-
-2004-09-21  John W. Eaton  <jwe@octave.org>
-
-	* symtab.h (symbol_record::~symbol_record): Delete definition if
-	count goes to zero.
-	* symtab.cc (symbol_table::~symbol_table): Move here from symtab.h.
-	Call delete on each symbol record in the table instead of just
-	clearing them.
-
-2004-09-17 David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sort.cc (ascending_compare, descending_compare):
-	Now templates (avoids g++ 3.4.x compile problems).
-	Fix other uses of these functions to also treat them as templates.
-	(mx_sort): For unsigned EIGHT_BYTE_INT versions correct the test
-	for the position of NaN.  Problems when mode was DESCENDING or
-	UNDEFINED.  Use static_cast<unsigned int> (dim) rather than
-	(unsigned int) dim.
-	(IFloatFlip): Now static.
-
-2004-09-17  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Only compute estimate of the
-	condition number if requested as output.
-
-	* DLD-FUNCTIONS/schur.cc (Fschur): Only compute unitary matrix if
-	requested as output.
-
-2004-09-17  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline):
-	Call eval_string instead of feval ("eval", ...).
-	Construct anonymous function handle to avoid going through the
-	symbol table.
-
-	* ov-fcn-handle.h (octave_fcn_handle::fcn_val): New function.
-	(octave_fcn_handle::octave_fcn_handle (const std:string&)):
-	New constructor.
-
-2004-09-16  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (frob_function): Clear id_name from curr_sym_tab, not
-	top_level_sym_tab.
-
-	* symtab.cc (maybe_list): Count sizes using size_t, not int.
-
-	* variables.cc (symbol_out_of_date): Always look in LOADPATH.
-
-2004-09-15  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-int-conv.cc: Define and install bool to int
-	conversions.
-	* OPERATORS/op-double-conv.cc: Define and install bool to double
-	conversions.
-
-	* ov.cc (octave_value::assign): Handle subsref for containers.
-	* oct-lvalue.cc (octave_lvale::value): Likewise.
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort): Return octave_value, not
-	octave_value list.
-
-2004-09-15  David Bateman  <dbateman@free.fr>
-
-	* ov.cc (octave_value::octave_value (const ArrayN<char>&, bool)):
-	New Constructor .
-	* ov.h: Provide decl.
-
-	* DLD-FUNCTIONS/sort.cc (sortmode): New enum to define sort direction.
-	(template <class T> class vec_index): New class to contain values and
-	index for indexed sorts, replacing all previous struct versions.
-	Instantiate for double, Complex, char and octave_value.
-	(template <class T> static octave_value_list mx_sort (ArrayN<T> &, int,
-	sortmode)): New templated version of mx_sort replacing all previous
-	versions, but specific to non indexed sorts. Instantiate for char
-	and double if not IEEE754.
-	(template <> static octave_value_list mx_sort (ArrayN<double> &,
-	int, sortmode)): Specialized function of mx_sort of IEEE754.
-	(template <class T> static octave_value_list mx_sort_indexed
-	(ArrayN<T> &, int, sortmode)): New templated version of mx_sort
-	for indexed sorts. Instantiate for double, Complex, char and
-	octave_value.
-	(ascending_compare, descending_compare): Comparison functions
-	for double, char, vec_index<double> *, vec_index<Complex> *,
-	vec_index<char> *, vec_index<octave_value>. Fix Complex comparison
-	operator to sort by arg of values if absolute values are equal.
-	(Fsort): Update docs for new mode argument and for sorting of
-	strings and cell arrays of strings. Implement mode argument to
-	define ascending and descending sorts. Include sorting of cell
-	arrays of strings. Adapt for new templated versions of the mx_sort
-	function.
-
-2004-09-15  John W. Eaton  <jwe@octave.org>
-
-	* ov-cell.cc (octave_cell::subsref): Pass nargout to next_subsref.
-	* ov-builtin.cc (octave_builtin::subsref): Likewise.
-	* ov-fcn-handle.cc (octave_fcn_handle::subsref): Likewise.
-	* ov-list.cc (octave_list::subsref): Likewise.
-	* ov-mapper.cc (octave_mapper::subsref): Likewise.
-	* ov-struct.cc (octave_struct::subsref): Likewise.
-	* ov-usr-fcn.cc (octave_user_function::subsref): Likewise.
-
-	* ov-struct.cc, ov-struct.h (octave_struct::subsref (const
-	std::string&, const std::list<octave_value_list>&, int)):
-	Define this version.
-	(octave_struct::subsref (const std::string&, const
-	std::list<octave_value_list>&)): Panic in this version.
-	* ov-list.cc, ov-list.h: Likewise.
-	* ov-cell.cc, ov-cell.h: Likewise.
-
-	* ov.cc (octave_value::subsref (int, const std::string&, const
-	std::list<octave_value_list>&, size_t)): New function.
-	* ov.h: Provide decl.
-
-	* ov-cell.h (octave_cell::is_constant): Return false.
-	* ov-struct.h (octave_struct::is_constant): Delete.
-	* ov-list.h (octave_list::is_constant): Delete.
-
-2004-09-14  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort (charNDArray&, bool, int)):
-	New function to sort character strings.
-	(Fsort): Handle character strings.
-
-2004-09-11  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii):
-	Write directly to OS.
-	(octave_fcn_handle::load_ascii,	octave_fcn_handle::load_binary,
-	octave_fcn_handle::load_hdf5): Check parse status after calling
-	eval_string.  Don't dereference fh unless it is valid.
-
-2004-09-11  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
-	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
-	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
-	octave_fcn_handle::load_hdf5): New functions.
-	* ov-fcn-handle.h: Provide decls.
-
-	* ov-fcn-inline.cc (octave_fcn_inline::load_ascii):
-	Allow spaces in saved function.
- 	(octave_fcn_inline::save_hdf5): Properly close all HDF5 objects.
-
-	* ls-oct-ascii.cc (read_ascii_data): Check return type of
-	<octave_value>.load_ascii for errors reading the variables
-
-	* variables.cc (lookup_function_handle, clear_variable,
-	clear_symbol): New functions.
-	* variables.h: Provide decls.
-
-2004-09-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Use unwind
-	protect frame instead of a single unwind_protect::run.
-	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
-
-	* data.cc (fill_matrix, identity_matrix):
-	Also allow logical data type.
-
-2004-09-10  David Bateman  <dbateman@free.fr>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::double_value,
-	OCTAVE_VALUE_INT_MATRIX_T::scalar_value,
-	OCTAVE_VALUE_INT_SCALAR_T::double_value,
-	OCTAVE_VALUE_INT_SCALAR_T::scalar_value): New functions.
-
-2004-09-10  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-scalar.h (octave_base_scalar::clone,
-	octave_base_scalar::empty_clone): New functions.
-
-2004-09-09  John W. Eaton  <jwe@octave.org>
-
-	* pt-pr-code.h (tree_print_code::newline): New optional arg, alt_nl.
-	* pt-pr-code.cc (tree_print_code::newline): Use it if not printing
-	newlines.
-	(tree_print_code::visit_statement): If we printed ";", call
-	newline with optional arg set to "".
-	(tree_print_code::printing_newlines): New data member.
-	(tree_print_code::tree_print_code): Initialize it.
-	(tree_print_code::suspend_newline, tree_print_code::resume_newline):
-	New functions.
-	(tree_print_code::newline, tree_print_code::indent): Use it
-
-	* ov-fcn-handle.cc (octave_fcn_handle::print_raw):
-	Print code for anonymous function handles.
-
-2004-09-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.cc (Ffunc2str, Ffunctions): Don't call substr(1)
-	on fh_nm, since we no longer need to skip "@" in the name.
-
-	* error.cc (pr_where): Do a better job of printing location info.
-
-	* input.cc (get_user_input): Print location info before the debug
-	prompt.  From Keith Goodman <kwgoodman@gmail.com>.
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Save and set curr_caller_function and curr_caller_statement here.
-	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
-
-	* pt-stmt.cc (curr_caller_statement): New variable.
-	* pt-stmt.h: Provide decl.
-
-	* toplev.cc (curr_caller_function): New variable.
-	* toplev.h: Provide decl.
-
-	* pt-arg-list.cc (convert_to_const_vector):
-	Unwind-protect index_position before modifying it.
-	Don't protect and set index_position unless stash_object is true.
-
-2004-09-08  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-inline.cc (octave_fcn_inline::save_ascii,
-	octave_fcn_inline::load_ascii, octave_fcn_inline::save_binary,
-	octave_fcn_inline::load_binary, octave_fcn_inline::save_hdf5,
-	octave_fcn_inline::load_hdf5): New functions.
-	* ov-fcn-inline.h: Provide decls.
-
-2004-09-08  John W. Eaton  <jwe@octave.org>
-
-	* ov.h: Add octave_array_type_traits specialization for
-	boolNDArray element type.
-
-2004-09-07  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc: Instantiate octave_stream::write for Array<bool>.
-	(octave_stream::read): Expand read_fptr_table to include dt_logical.
-
-	* ov-bool.h (octave_bool::write): New function.
-	* ov-bool-mat.h (octave_bool_matrix::write): New function.
-
-	* ov-fcn-inline.h (octave_fcn_inline::octave_fcn_inline): New copy
-	constructor.
-	(octave_fcn_inline::clone, octave_fcn_inline::empty_clone):
-	New functions.
-
-	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle): New copy
-	constructor.
-	(octave_fcn_handle::clone, octave_fcn_handle::empty_clone):
-	New functions.
-
-2004-09-06  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (install_types): Call octave_fcn_inline::register_type.
-
-	* version.h (OCTAVE_API_VERSION): Now api-v10.
-
-	* OPERATORS/op-b-b.cc, OPERATORS/op-bm-bm.cc: Define and install
-	unary plus and unary minus operators.
-
-	* OPERATORS/op-int.h, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-cs-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-range.cc:
-	Define and install unary plus operator.
-
-	* ov.cc (unary_op_as_string): Handle op_uplus too.
-
-	* parse.y (prefix_expr): Build unary plus op here instead of
-	converting to no-op.
-	(make_prefix_op): Accept op_uplus.
-
-2004-09-03  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-b-bm.cc (DEFCONV): Define bool scalar to bool
-	matrix conversion.
-	(install_b_bm_ops): Install it.
-	Install conversion for assignment of bool matrix to indexed bool.
-	* OPERATORS/op-b-b.cc (install_b_b_ops): Install conversion for
-	assignment of bool to indexed bool.
-
-2004-09-03  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
-	OPERATORS/op-bm-bm.cc: Modify concatenation between boolean types
-	so that it returns a boolean.
-
-	* ov-bool.cc (octave_bool::do_index_op): Return boolean matrix.
-
-	* ov-intx.h (do_index_op (const octave_value_list&, int)):
-	New function for indexed subsref of int types.
-
-2004-09-03  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-int.h (OCTAVE_SM_INT_OPS): Define int by double
-	mixed comparison and bool ops.
-	(OCTAVE_INSTALL_SM_INT_OPS): Install them.
-	(OCTAVE_MS_INT_OPS): Define double by int mixed comparison and
-	bool ops.
-	(OCTAVE_INSTALL_MS_INT_OPS): Install them
-
-	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
-	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
-	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
-	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
-	Define and install various mixed-type operators.
-
-	* OPERATORS/op-int.h (OCTAVE_MM_INT_OPS): Also define mixed int
-	and double matrix comparison and bool ops.
-	(OCTAVE_INSTALL_MM_INT_OPS): Install them.
-	(OCTAVE_SS_INT_BOOL_OPS, OCTAVE_SM_INT_BOOL_OPS,
-	OCTAVE_MS_INT_BOOL_OPS, OCTAVE_MM_INT_BOOL_OPS):
-	Define logical AND and OR ops.
-	(OCTAVE_INSTALL_SS_INT_BOOL_OPS, OCTAVE_INSTALL_SM_INT_BOOL_OPS,
-	OCTAVE_INSTALL_MS_INT_BOOL_OPS, OCTAVE_INSTALL_MM_INT_BOOL_OPS):
-	Install them.
-	(OCTAVE_MM_INT_CMP_OPS, OCTAVE_MM_INT_BOOL_OPS): Accept prefix arg.
-	(OCTAVE_MM_CONV): New macro.
-	(OCTAVE_MM_INT_OPS): Use it to define complex matrix conversion.
-	(OCTAVE_MIXED_INT_CMP_OPS, OCTAVE_MIXED_INT_BOOL_OPS): New macros.
-
-	* OPERATORS/op-int.h (OCTAVE_MS_INT_OPS): Don't define indexed int
-	matrix = complex scalar assignment ops.
-	(OCTAVE_MS_INT_OPS): Don't define indexed int matrix = complex
-	matrix assignment ops.
-	(OCTAVE_SM_CONV): New macro.
-	(OCTAVE_SM_INT_OPS): Use it to define int scalar -> (int|complex)
-	matrix widening ops.
-	(OCTAVE_RE_INT_ASSIGN_OPS, OCTAVE_CX_INT_ASSIGN_OPS): New macros.
-	(OCTAVE_INT_OPS): Use them here.
-	(OCTAVE_INSTALL_SS_INT_OPS): Install indexed int scalar = scalar
-	and indexed int scalar = complex scalar assignment conversions.
-	(OCTAVE_INSTALL_SM_INT_OPS): Install int scalar -> (int|complex)
-	matrix widening ops.  Install indexed int scalar =
-	(int|real|complex) matrix assignment conversions.
-	(OCTAVE_INSTALL_MS_INT_OPS): Install indexed int matrix = complex
-	scalar assignment conversion.
-	(OCTAVE_INSTALL_MM_INT_OPS): Install int matrix -> complex matrix
-	widening op.  Install indexed int matrix = complex matrix
-	assignment conversion.
-	(OCTAVE_INSTALL_RE_INT_ASSIGN_OPS, OCTAVE_INSTALL_CX_INT_ASSIGN_OPS):
-	New macros.
-	(OCTAVE_INSTALL_INT_OPS): Use them.
-
-	* op-int.h: (OCTAVE_INSTALL_SM_INT_ASSIGNCONV): New macro.
-	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
-	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
-	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
-	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
-	Use it to define mixed size integer scalar/integer matrix
-	assignment conversions.
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::complex_array_vale):
-	New functions.
-
-2004-09-02  John W. Eaton  <jwe@octave.org>
-
-	* DLD-FUNCTIONS/quad.cc (Fquad): Pass "__quad_fcn_" instead of
-	"__quad_fcn__" to unique_symbol_name.
-
-	* ov-fcn-inline.cc (octave_fcn_inline): Pass "__inline_" instead
-	of "__inline__" to unique_symbol_name.
-
-	* variables.cc (unique_symbol_name): Make better random symbol name.
-
-2004-09-01  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.58.
-
-	* Makefile.in (OP_INCLUDES): New variable.
-	Include OPERATORS/op-int.h here.
-	* Makefile.in (dist): Also link $(OP_INCLUDES).
-
-	* Makefile.in (DISTFILES): Include $(EXTRAS) in the list.
-
-2004-09-01  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTION/quad.cc: Allow function handle and inline functions.
-	Use a unique function name and delete it on exit.
-
-	* ov.h (is_inline_function): New virtual function.
-	* ov-fcn-inline.h (is_inline_function): New function.
-	* ov-base.h (is_inline_function): New function.
-
-	* ov-fcn-inline.cc (octave_fcn_handle::octave_fcn_handle):
-	Use unique_symbol_name and clear_function instead of manipulating
-	symbol table directly.
-
-	* variables.cc (unique_symbol_name): New function.
-	(clear_function): New function.
-	* variables.h: Provide decls.
-
-	* dynamic-ld.cc (do_clear_function): Rename from clear_function.
-
-2004-09-01  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
-	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
-	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
-	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
-	Define and install mixed assignment ops.
-	* op-int.h: Define mixed integer/double ops.
-	Define simple division ops.
-
-	* ov-complex.h (octave_complex_scalar): New typedef to simplify
-	various macros where naming consistency matters.
-
-2004-08-31  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-int.h (ss_pow, ms_el_pow, mm_el_pow): New power
-	functions.
-	(sm_el_pow): Return correct type.
-	(OCTAVE_SS_POW_OPS, OCTAVE_SM_POW_OPS, OCTAVE_MS_POW_OPS,
-	OCTAVE_MM_POW_OPS): New macros to define the power operator over
-	integer types.
-	(OCTAVE_SS_INT_OPS, OCTAVE_SM_INT_OPS, OCTAVE_MS_INT_OPS,
-	OCTAVE_MM_INT_OPS): Use the new macros for the power operators.
-	(OCTAVE_INSTALL_SS_INT_OPS, OCTAVE_INSTALL_MS_INT_OPS,
-	OCTAVE_INSTALL_MM_INT_OPS): Install new power functions.
-
-	* OPERATORS/op-int-conv.cc (INT_CONV_FUNCTIONS): Correct return
-	types for unsigned integer scalars and signed integer matrices.
-
-	* ov-type-conv.h (OCTAVE_TYPE_CONV_BODY3): Conversion betwen same
-	types returns the original value.
-
-	* bitfcns.cc (BITOP): Fix for mixed scalar/matrix ops. Allow
-	octave_range as an argument, by using class_name rather than
-	type_id to test.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.cc (pr_int): Also handle bank_format.
-	(octave_print_internal (std::ostream& os, const intNDArray<T>&,
-	bool, int)): Likewise.
-
-2004-08-31  David Bateman  <dbateman@free.fr>
-
-	* pr-output.cc (pr_int(std::ostream, const T&, int)):
-	New template function to print formatted integer types.
-	Instantiate it for all of the integer types.
-	(octave_print_internal (std::ostream, const intNDArray<T>&, bool,
-	int)): Use pr_int.  Align output up in columns, and check for
-	free_format or plus_format.
-	(octave_print_internal (std::ostream, const octave_int<T>&, bool)):
-	Use pr_int.  Check for free_format and plus_format.
-
-	* ls-hdf5.cc (hdf5_read_next_data): When importing hdf5 files,
-	allow structures and lists (for backward compatibility).  Also
-	allow importation of integer types into octave int and uint types.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* data.cc (fill_matrix, identity_matrix): Convert class name to
-	oct_data_conv::data_type and switch on that.
-	(identity_matrix (int, int)): New template.
-	(identity_matrix (int, int, const std::string&)): Use it.
-
-	* ov.h (octave_type_traits, octave_array_type_traits): Move here.
-	* oct-stream.cc: From here.
-
-2004-08-31  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fzeros, Fones, Feye): Update help text for optional
-	class argument.
-	(static octave_value identity_matrix (int, int, const std::string&)):
-	New function to create identity matrices with an arbitrary type.
-	(Feye): Call new version of identity matrix function, even for scalars.
-	(static octave_value fill_matrix (const octave_value_list&, double,
-	const char *)): Update to allow arbitrary classes of matrices to be
-	created.
-
-2004-08-31  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat5.cc (read_int): New function.
-
-	* oct-stream.cc (octave_base_stream::do_read,
-	octave_base_stream::read, octave_base_stream::write): Delete.
-	* oct-stream.h: Delete decls.
-
-	* oct-stream.cc (octave_stream::read): Handle block_size and
-	separate input/output types.
-	(octave_stream::write): Handle block_size and various input types.
-	(octave_type_traits, octave_array_type_traits):	New traits classes.
-	(do_read): New templates to read data and perform type conversion.
-	(octave_stream::write (const Array<T>&, int,
-	oct_data_conv::data_type, int, oct_mach_info::float_format),
-	do_write, write_int):
-	New templates to write ints and perform type conversion.
-	Instantiate for various Octave types.
-
-	* ov.cc (octave_value::write): New function.
-	* ov.h: Provide decl.
-	* ov-base.cc (octave_base_value::write): New function.
-	* ov-base.h: Provide decl.
-	* ov-complex.h (octave_complex::write): New function.
-	* ov-cx-mat.h (octave_complex_matrix::write): New function.
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::write): New function.
-	(OCTAVE_VALUE_INT_SCALAR_T::write): New function.
-	* ov-re-mat.h (octave_matrix::write): New function.
-	* ov-scalar.h (octave_scalar::write): New function.
-	* ov-str-mat.h (octave_char_matrix_str::write): New function.
-
-	* file-io.cc (Ffread): Handle block size, to/from format in
-	precision argument.
-	(Ffwrite): Handle block size in precision argument.
-
-2004-08-25  David Bateman  <dbateman@free.fr>
-
-	* ov-cell.cc (octave_cell::subsasgn): Delete elements of cell array
-	when type is "(" and rhs is empty.
-
-2004-08-09  John W. Eaton  <jwe@octave.org>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::index_vector,
-	OCTAVE_VALUE_INT_SCALAR_T::index_vector): New functions.
-
-2004-08-06  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-struct.cc: New file.
-	* ov-struct.h (octave_struct::resize (const dim_vector&)):
-	New function.
-	* oct-map.h (Octave_map::resize (const dim_vector&)): New function.
-	* ov-map.cc (Octave_map::reshape):
-	Correct return for same sized reshape.
-	(Octave_map::resize (const dim_vector&)): New function.
-	(concat (const Octave_map&, const Octave_map&, const Array<int>&)):
-	Complete concatenation function.
-	* Makefile.in (OP_XSRC): Include op-struct.cc in the list.
-
-2004-08-05  John W. Eaton  <jwe@octave.org>
-
-	* pt-stmt.h (tree_statement::set_command,
-	(tree_statement::set_expression): New functions.
-
-	* parse.y (param_list_beg): Handle pushing new symbol table
-	context for anonymous function handle parameter lists here.
-	(anon_fcn_handle): New non-terminal.
-	(expression): Include anon_fcn_handle here.
-	(make_anon_fcn_handle): New static function.
-
-2004-08-05  David Bateman  <dbateman@free.fr>
-
-	* ov.cc (octave_value::fcn_inline_value): New virtual function.
-	* ov.h (octave_value::fcn_inline_value): Provide decl.
-	* ov-base.cc (octave_base_value::fcn_inline_value): New function
-	* ov-base.h (octave_base_value::fcn_inline_value): Provide decl.
-	* ov-fcn-handle.cc (octave_fcn_handle::octave_fcn_handle
-	(const std::string&, const string_vector&, const std::string&),
-	octave_fcn_handle::convert_to_str_internal, Finline, Fargnames,
-	Fformula, Fvectorize): Delete.
-	(octave_fcn_handle::print_raw): Remove inline case.
-	* ov-fcn-handle.h (octave_fcn_handle::fcn_type,
-	octave_fcn_handle::octave_fcn_handle (const std::string&, const
-	string_vector&, const std::string&),
-	octave_fcn_handle::inline_fcn_name,
-	octave_fcn_handle::inline_fcn_text,
-	octave_fcn_handle::inline_fcn_arg_names,
-	octave_fcn_handle::is_inline,
-	octave_fcn_handle::convert_to_str_internal,
-	octave_fcn_handle::typ, octave_fcn_handle::iftext,
-	octave_fcn_handle::ifargs): Delete constructors,
-	functions, and data members (moved to ov-fcn-inline.h).
-	* Makefile.in: Include ov-fcn-inline.h and ov-fcn-inline.cc where
-	appropriate.
-	* ov-fcn-inline.h, ov-fcn-inline.cc: New class.
-
-2004-08-05  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-int.cc (octave_base_int_matrix<T>::save_ascii,
-	octave_base_int_matrix<T>::load_ascii,
-	octave_base_int_matrix<T>::save_binary,
-	octave_base_int_matrix<T>::load_binary,
-	octave_base_int_matrix<T>::save_hdf5,
-	octave_base_int_matrix<T>::load_hdf5,
-	octave_base_int_matrix<T>::try_narrowing_conversion,
-	octave_base_int_scalar<T>::print_raw,
-	octave_base_int_scalar<T>::save_ascii,
-	octave_base_int_scalar<T>::load_ascii,
-	octave_base_int_scalar<T>::save_binary,
-	octave_base_int_scalar<T>::load_binary,
-	octave_base_int_scalar<T>::save_hdf5,
-	octave_base_int_scalar<T>::load_hdf5):
-	Sprinkle with this-> as needed.
-
-	* Makefile.in (EXTRAS): New macro.  Move ov-base-int.cc here from
-	OV_INTTYPE_SRC.
-	(INCLUDES_FOR_INSTALL): New macro.
-	(install-inc, uninstall): Use it instead of INCLUDES.
-
-	* variables.h (symbol_exist): Default for type is now "any".
-
-2004-08-05  David Bateman  <dbateman@free.fr>
-
-	* ov-fcn-handle.cc (octave_fcn_handle (const std::string&,
-	const string_vector&, const std::string&)): New constructor for inline
-	function handles.
-	(octave_fcn_handle::print_raw): Allow inline functions to be printed.
-	(octave_fcn_handle::convert_to_str_internal): New function to allow
-	Fchar to work on inlined function handles.
-	(Finline, Fformula, Fargnames, Fvectorize): New functions.
-	* ov-fcn-handle.h (octave_fcn_handle (const std::string&,
-	const string_vector&, const std::string&)): Provide decl.
-	(octave_fcn_handle::convert_to_str_internal): Provide decl.
-	(fcn_type): New enum for the type of function handle.
-	(octave_fcn_handle::inline_fcn_text, octave_fcn_handle::is_inline,
-	octave_fcn_handle::inline_fcn_arg_names): New functions.
-	(octave_fcn_handle::typ, octave_fcn_handle::iftext,
-	octave_fcn_handle::ifargs): New private variables for inline functions.
-
-2004-08-04  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (fcn_handle):
-	Recognize '@' FCN_HANDLE rather than just FCN_HANDLE.
-	Decrement lexer_flags.looking_at_function_handle here.
-	* lex.h (lexical_feedback::looking_at_function_handle):
-	New data member.
-	(lexical_feedback::init): Initialize it.
-	* lex.l (handle_identifier): Only reject keywords if we are
-	looking at a function handle.
-	("@"): Recognize this separately from what follows.
-	Increment lexer_flags.looking_at_function_handle here.
-
-	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle
-	(octave_function*, const std::string)): Delete.
-	* ov.h, ov.cc (octave_value::octave_value (octave_function *)): Delete.
-	(octave_value::octave_value (octave_function *, const std::string)):
-	Delete.
-
-	* ov-fcn-handle.h (octave_fcn_handle::fcn): Now octave_value, not
-	pointer to octave_function.
-	(octave_fcn_handle::octave_fcn_handle (const octave_value&, const
-	std::string)): New constructor.
-	* variables.cc (lookup_function): Return octave_value, not pointer
-	to octave_function.  Change all uses.
-	(lookup_user_function): Return octave_value, not pointer
-	to octave_user_function.  Change all uses.
-
-2004-08-03  John W. Eaton  <jwe@octave.org>
-
-	* ov-usr-fcn.cc (octave_user_fcn::do_multi_index_op): Call
-	install_automatic_vars here.
-	(octave_user_fcn::octave_user_fcn): Not here.
-	(install_automatic_vars): Don't mark argn_sr, nargin_sr,
-	nargout_sr, or varargin_sr as static.
-
-	* oct-stream.cc (octave_scan): Avoid need for pushing two
-	characters back on the input stream.
-
-2004-08-02  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_scan): For %i format, recognize numbers
-	with leading 0x or 0X as hex and leading 0 as octal.
-
-	* OPERATORS/op-fcn-handle.cc: Delete.
-	* Makefile.in (OP_XSRC): Delete it from the list.
-	* pr-output.cc (octave_print_internal (std::ostream&, const
-	std::string&, bool, int): New function.
-	* ov-fcn-handle.cc (octave_value::subsref): New function.
-	* ov-fcn-handle.h (class fcn_handle_elt, class fcn_handle_array):
-	Delete.
-	(class octave_fcn_handle): Derive from octave_base_value, not
-	octave_base_matrix<fcn_handle_array>.
-
-	* ov-cx-mat.cc (try_narrowing_conversion): Also allow complex to
-	real conversion for N-d arrays.
-
-2004-07-30  John W. Eaton  <jwe@octave.org>
-
-	* lex.l (<COMMAND_START>[^#% \t\r\n\;\,\"\'][^ \t\r\n\;\,]*{S}*):
-	Also recognize \r as a word list separator.
-
-2004-07-27  John W. Eaton  <jwe@octave.org>
-
-	* bitfcns.cc (DO_BITSHIFT): Pass mask to bitshift.
-	(bitshift (double, int, EIGHT_BYTE_INT): New arg, mask.
-	(DO_UBITSHIFT, DO_SBITSHIFT): Use bitshfit, not operator >>.
-	Use nbits function from octave_int type to set bits_in_type.
-
-	* ov-struct.cc (Fisfield): Only print usage message if number of
-	arguments is incorrect.  Return false for invalid arguments.
-	From Andy Adler <adler@site.uottawa.ca>.
-
-2004-07-27  David Bateman  <dbateman@free.fr>
-
-	* Cell.cc (Cell::index): Quit early if an error occurs when
-	creating index vector object.
-
-	* ov-int8.cc, ov-int16.cc, ov-int32.cc, ov-int64.cc, ov-uint8.cc,
-	ov-uint16.cc, ov-uint32.cc, ov-uint64.cc (HDF5_SAVE_TYPE): Define
-	for HDF5 native format for the type.
-
-	* ov-base-int.h (save_ascii, save_binary, load_binary, save_hdf5):
-	Delete unused arguments.
-
-	* ov-base-int.cc (octave_base_int_matrix::save_ascii,
-	octave_base_int_matrix::save_binary,
-	octave_base_int_scalar::save_ascii,
-	octave_base_int_scalar::save_binary,
-	octave_base_int_scalar::save_hdf5): Delete unused argument.
-
-	* ov-base-int.cc (octave_base_int_matrix::save_binary,
-	octave_base_int_matrix::load_binary,
-	octave_base_int_matrix::save_hdf5,
-	octave_base_int_matrix::load_hdf5,
-	octave_base_int_scalar::save_ascii,
-	octave_base_int_scalar::load_ascii,
-	octave_base_int_scalar::save_binary,
-	octave_base_int_scalar::load_binary,
-	octave_base_int_scalar::save_hdf5,
-	octave_base_int_scalar::load_hdf5): Implement missing functions.
-
-2004-07-23  David Bateman  <dbateman@free.fr>
-
-	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::array_value,
-	OCTAVE_VALUE_INT_SCALAR_T::array_value): new methods to extract array
-	value from integer types.
-
-	* bitfcns.cc (BITOPX): New Macro renamed from BITOP.
-	(BITOP): Alter to allow different types and call BITOP appropriately.
-	(DO_SBITSHIFT, DO_UBITSHIFT): New macros for signed, unsigned
-	bitshifts.
-
-	(DO_BITSHIFT): Test for shift of more bits than in type, which is
-	undefined.  Generalize to allow double args as well.
-	(Fbitshift): Add int and double types.
-	(Fbitmax): Return 53 bit value which conforms to IEEE754 double
-	mantissa.
-	(Fintmax, Fintmin): New functions.
-	(Fbitget, Fbitset, Fbitcmp): Delete.
-
-	* OPERATORS/op-int.h: Add sm_el_pow function
-
-	* ops.h (CATOPDECL, DEFCATOPX, DEFCATOP, DEFCATOP_FB, DEFNDCATOP_FN,
-	CATOP_NONCONFORMANT, INSTALL_CATOP): New macros.
-
-	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
-	OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc, OPERATORS/op-chm.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
-	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc,
-	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc, OPERATORS/op-m-cm.cc,
-	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
-	OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
-	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
-	OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc (CATOPDECL, DEFCATOPX,
-	DEFCATOP, DEFCATOP_FB, DEFNDCATOP_FN, CATOP_NONCONFORMANT,
-	INSTALL_CATOP): Use them to define concatenation functions.
-
-	* OPERATORS/op-int.h (OCTAVE_CONCAT_FN, OCTAVE_INSTALL_CONCAT_FN):
-	New macros to define and install concatentaion functions for int/uint
-	types.
-
-	* TEMPLATE-INST/Array-tc.cc (INSTANTIATE_ARRAY_CAT): Delete.
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
-	Also append empty elements to the list of elements to be parsed.
-	(tree_matrix::rvalue): Use new concatenation binary operators.
-
-	* data.cc (cat_add_dims): Delete (now dim_vector::concat).
-	(do_cat): Use new concatenation binary operators.
-
-	* ov-typeinfo.cc (cat_op_fcn): Instantiate the array of cat functions.
-	(register_cat_op, do_register_cat_op, do_lookup_cat_op): New functions.
-	(cat_ops): Lookup table of binary concatentaion operators.
-
-	* ov-typeinfo.h (lookup_cat_op): New function.
-
-	* ov.cc (gripe_cat_op, gripe_cat_op_conv, do_cat_op): New functions.
-
-	* ov.h (cat_op_fcn): Definition.
-	(resize, do_cat_op): New functions.
-
-	* ov-intx.h (resize): New_function
-
-	* version.h (OCTAVE_API_VERSION): Bump version to api-v9.
-
-	* Cell.cc, Cell.h, oct-map.cc, oct-map.h (cat): Delete.
-	(concat): New function.
-
-	* Cell.cc, Cell.h (insert): New function
-
-	* ov-base.cc, ov-base.h, ov-scalar.h, ov-complex.h, ov-bool.h,
-	ov-range.h, ov-base-mat.h, (resize): New function.
-
-2004-07-23  John W. Eaton  <jwe@octave.org>
-
-	* symtab.cc (whos_parameter): Move decl here, from symtab.h.
-
-2004-07-23  Oyvind Kristiansen  <oyvinkri@stud.ntnu.no>
-
-	* symtab.cc (symbol_record::subsymbols_list): New method.
-	(symbol_record::maybe_list): Call to subsymbols_list and merge
-	result with the original list of symbols.
-
-	* symtab.cc (symbol_record::make_dimensions_string): New method.
-	(symbol_record::print_symbol_info_line): Print N-d info.  Output
-	for long format now under control of format string.
-	(symbol_table::maybe_list): Headers to whos listing updated.
-	Also print footer info.
-	(symbol_table::print_descriptor): Method printing the
-	header of whos listings.
-	(symbol_table::parse_whos_line_format): New method.
-	(whos_line_format, Vwhos_line_format): New built-in variables.
-	(symbols_of_symtab): DEFVAR them.
-	(symbol_record::nelem, symbol_record::symbol_def::nelem,
-	symbol_record::byte_size, symbol_record::symbol_def::byte_size):
-	New methods.
-	(symbol_record::dimensions_string_req_first_space): New	method.
-	(symbol_record::dimensions_string_req_total_space): New	method.
-	* symtab.h (whos_parameter): New struct.  Container for one
-	parameter in whos_line_format.
-
-2004-07-22  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Fix doc string.
-	* ov-struct.cc (Fstruct): Likewise.
-	* symtab.cc (Fdebug_symtab_lookups): Likewise.
-
-2004-07-22  David Bateman  <dbateman@free.fr>
-
-	* data.cc (Fsize): Return 1 for dimensions exceeding ndim.
-
-	* ov.cc (octave_value::octave_value (const ArrayN<double>)):
-	New constructor.
-	* ov.h: Provide decl.
-	* ov-cx-mat.h (octave_complex_matrix (const ArrayN<Complex>&)):
-	New constructor.
-	* ov-re-mat.h (octave_complex_matrix (const ArrayN<double>&)):
-	New constructor.
-
-	* ov-re-mat.h (octave_matrix(const ArrayN<double>&)): New constructor
-	* pt-loop.cc (DO_ND_LOOP): New macro for use of NDArray in for loop.
-	(tree_simple_for_command::eval): Use it, and allow iteration over
-	cell arrays.
-
-2004-07-12  John W. Eaton  <jwe@octave.org>
-
-	* ov-intx.h: N-d array and scalar extractor functions take no args.
-
-	* ov.h (octave_value::int8_scalar_value,
-	octave_value::int16_scalar_value, octave_value::int32_scalar_value,
-	octave_value::int64_scalar_value, octave_value::uint8_scalar_value,
-	octave_value::uint16_scalar_value, octave_value::uint32_scalar_value,
-	octave_value::uint64_scalar_value): New functions.
-	* ov-base.cc (octave_base_value::int8_scalar_value,
-	octave_base_value::int16_scalar_value,
-	octave_base_value::int32_scalar_value,
-	octave_base_value::int64_scalar_value,
-	octave_base_value::uint8_scalar_value,
-	octave_base_value::uint16_scalar_value,
-	octave_base_value::uint32_scalar_value,
-	octave_base_value::uint64_scalar_value): New functions.
-	* ov-base.h: Provide decls.
-
-	* lex.l: (Vtoken_count): New static variable.
-	(COUNT_TOK_AND_RETURN): New macro.  Use it everywhere a token is
-	returned to the parser.
-	(F__token_count__): New function.
-
-2004-06-25  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-int-conv.cc: Add conversions for range type.
-
-2004-06-17  John W. Eaton  <jwe@octave.org>
-
-	* bitfcns.cc (bitfcns): New file.
-	* Makefile.in (DIST_SRC): Add it to the list.
-
-2004-06-16  John W. Eaton  <jwe@octave.org>
-
-	* OPERATORS/op-int.h: New file.
-	* OPERATORS/op-i16-i16.cc, OPERATORS/op-i8-i8.cc,
-	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-i32-i32.cc,
-	OPERATORS/op-int-conv.cc, OPERATORS/op-ui64-ui64.cc,
-	OPERATORS/op-i64-i64.cc, OPERATORS/op-ui16-ui16.cc,
-	OPERATORS/op-ui8-ui8.cc: Use new macros from op-int.h.
-
-2004-06-14  John W. Eaton  <jwe@octave.org>
-
-	* pr-output.h, pr-output.cc (octave_print_conv): New traits class.
-	(template <class T> void octave_print_internal (std::ostream&,
-	const intNDArray<T>&, bool, int),
-	(template <class T> void octave_print_internal (std::ostream&,
-	const octave_int<T>&, bool)): New template functions.
-	Instantiate versions for new int types.
-
-	* ov-typeinfo.h (octave_value_typeinfo::type_conv_ops):
-	New data member.
-	(octave_value_typeinfo::register_type_conv_op,
-	octave_value_typeinfo::lookup_type_conv_op,
-	octave_value_typeinfo::do_register_type_conv_op,
-	octave_value_typeinfo::do_lookup_type_conv_op): New functions.
-
-	* ov-re-mat.cc (Fdouble): New function.
-
-	* ov-range.h (octave_range::reshape): Reshape array_value, not
-	matrix_value.
-
-	* ov-base-scalar.h (octave_base_scalar<ST>::all,
-	octave_base_scalar<ST>::any, octave_base_scalar<ST>::is_true): Use
-	ST() instead of 0.0.
-
-	* ov-base-mat.h (octave_base_matrix<MT>::byte_size): New function.
-
-	* ops.h (INSTALL_COLNVOP, DEFCONVFNX, DEFDBLCONVFN, DEFCONVFN,
-	DEFCONVFN2): New macros.
-
-	* DLD-FUNCTIONS/filter.cc (Ffilter): Kluge type conversions.
-
-	* ov.cc (install_types): Register new integer types.
-
-	* ov.h, ov.cc (octave_value::octave_value (const octave_int8&),
-	octave_value::octave_value (const octave_uint8&),
-	octave_value::octave_value (const octave_int16&),
-	octave_value::octave_value (const octave_uint16&),
-	octave_value::octave_value (const octave_int32&),
-	octave_value::octave_value (const octave_uint32&),
-	octave_value::octave_value (const octave_int64&),
-	octave_value::octave_value (const octave_uint64&),
-	octave_value::octave_value (const int8NDArray&),
-	octave_value::octave_value (const uint8NDArray&),
-	octave_value::octave_value (const int16NDArray&),
-	octave_value::octave_value (const uint16NDArray&),
-	octave_value::octave_value (const int32NDArray&),
-	octave_value::octave_value (const uint32NDArray&),
-	octave_value::octave_value (const int64NDArray&),
-	octave_value::octave_value (const uint64NDArray&)):
-	New constructors.
-
-	* ov.h (octave_value::internal_rep): New function.
-	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Also define
-	static_type_id, static_type_name, and static_class_name
-	functions.
-
-	* Cell.h (Cell::reshape (const dim_vector&)): New forwarding
-	function for return type conversion.
-
-	* ov-int16.cc, ov-int16.h, ov-int32.cc, ov-int32.h, ov-int64.cc,
-	ov-int64.h, ov-int8.cc, ov-int8.h, ov-uint16.cc, ov-uint16.h,
-	ov-uint32.cc, ov-uint32.h, ov-uint64.cc, ov-uint64.h, ov-uint8.cc,
-	ov-uint8.h, ov-type-conv.h, ov-int-traits.h,
-	OPERATORS/op-int-conv.cc, OPERATORS/op-double-conv.cc,
-	OPERATORS/op-i16-i16.cc, OPERATORS/op-i32-i32.cc,
-	OPERATORS/op-i64-i64.cc, OPERATORS/op-i8-i8.cc,
-	OPERATORS/op-ui16-ui16.cc, OPERATORS/op-ui32-ui32.cc,
-	OPERATORS/op-ui64-ui64.cc, OPERATORS/op-ui8-ui8.cc: New files.
-	Makefile.in: Add them to the appropriate lists.
-
-2004-06-03  John W. Eaton  <jwe@octave.org>
-
-	* ov-fcn-handle.h (octave_function_handle::is_matrix_type,
-	octave_function_handle::is_numeric_type,
-	octave_function_handle::is_constant,
-	octave_function_handle::is_true): New functions.
-	(octave_function_handle::is_defined): Delete (inherited version is
-	OK).
-
-2004-06-03  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/filter.cc: Fix for length(a)=1 && length(b)=2 case.
-
-2004-05-07  John W. Eaton  <jwe@octave.org>
-
-	* ov.cc (octave_value::print_with_name): Only print name tag if
-	Vprint_answer_id_name is true.
-
-	* octave.cc (intern_argv): Insert __nargin__ in top_level_sym_tab
-	instead of making it a builtin variable.  Mark it static.
-	* ov-usr-fcn.cc (octave_user_function::install_automatic_vars):
-	Mark local automatic variables static.
-
-2004-04-30  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (octave_base_stream::clearerr): New function.
-	(octave_stream::clearerr): New function.
-	(seek (long, int)): Call clearerr here.
-	* oct-stdstrm.h (octave_stdiostream::clear): New function.
-	* c-file-ptr-stream.h (c_file_ptr_buf::clear,
-	i_c_file_ptr_stream::clear, o_c_file_ptr_stream::clear,
-	io_c_file_ptr_stream::clear): New functions.
-
-2004-04-29  David Bateman  <dbateman@free.fr>
-
-	* load-save.cc (Fload, Fsave): Accept -mat as well as -mat-binary.
-
-2004-04-27  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/sort.cc: Add missing "class" keywords to template
-	instantiations.
-
-2004-04-22  John W. Eaton  <jwe@octave.org>
-
-	* pt-plot.cc (Fclearplot): Temporarily turn off automatic_replot.
-	Clear display after resetting title, labels, etc.
-
-2004-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-colon.cc (tree_colon_expression::rvalue): Also check for
-	error_state after evaluating each subexpression.
-
-2004-04-22  David Bateman  <dbateman@free.fr>
-
-	* ov-base-scalar.h (octave_base_scalar<ST>::permute): New function.
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::is_true): Make N-d aware.
-
-2004-04-22  John W. Eaton  <jwe@octave.org>
-
-	* oct-stream.cc (printf_value_cache::curr_value): Now NDArray.
-	(printf_value_cache::double_value): Extract N-d array, not Matrix.
-
-2004-04-21  John W. Eaton  <jwe@octave.org>
-
-	* parse.y (function2): Pass id name to frob_function.  Delete id.
-	(frob_function): Accept function name instead of identifier.
-	Don't try to rename symbol table entry.  Lookup symbol record for
-	function name here.  Insert name in symbol table if needed.
-	Operate on symbol record instead of identifier.
-
-2004-04-21  David Bateman  <dbateman@free.fr>
-
-	* DLD_FUNCTIONS/fft.cc(do_fft): Correctly initialize the variable dim
-	for scalar arguments.
-
-	* DLD-FUNCTIONS/minmax.cc: Handle single vector arg correctly.
-
-2004-04-20  John W. Eaton  <jwe@octave.org>
-
-	* ls-mat-ascii.cc (read_mat_ascii_data): Prepend "X" to keywords.
-	Only drop text after last "." in name.
-
-	* lex.l (is_keyword): New function.
-	(Fiskeyword): Use it.
-	* lex.h: Provide decl.
-
-	* lex.l (is_keyword_token): Rename from is_keyword.
-
-2004-04-16  John W. Eaton  <jwe@octave.org>
-
-	* file-io.cc (maybe_warn_interface_change): New function.
-	(fopen_mode_to_ios_mode): Use it.
-
-2004-04-16  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* file-io.cc (fopen_mode_to_ios_mode):  Default to binary mode.
-	(Ffopen): Document 't' and 'b' mode flags.
-
-2004-04-16  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (DLD_XSRC): Add gcd.cc to the list.
-
-2004-04-16  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/gcd.cc: New file.
-
-2004-04-15  David Bateman  <dbateman@free.fr>
-
-	* ov-ch-mat.h: convert_to_str_interal returns charNDArray.
-
-2004-04-12  John W. Eaton  <jwe@octave.org>
-
-	* version.h (OCTAVE_BUGS_STATEMENT): Bug list is now bug@octave.org.
-
-2004-04-08  John W. Eaton  <jwe@octave.org>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Quit early
-	if an error occurs when creating index vector object.
-
-	* ov.cc (octave_value::numeric_assign): Always call maybe_mutate
-	on return value.
-
-2004-04-06  David Bateman  <dbateman@free.fr>
-
-  	* DLD_FUNCTIONS/sort.cc: Use the new template sort class, adapt for
-	N-d arrays, and allow optional dim argument.
-
-	* DLD_FUNCTIONS/fftn.cc: Save result of transpose operation.
-	Check for failure of transpose.
-
-2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool.h (octave_bool::bool_array_value): New function.
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): Don't allow
-	expressions like x(i)(j) or x(i){j} when x is empty.
-
-	* load-save.cc (get_file_format): Error if file does not exist.
-	(Fload): Also complain here if specific file type is specified and
-	file does not exist.
-
-2004-04-02  Quentin Spencer  <qspencer@ieee.org>
-
-	* parse.y: Use persistent instead of static in warnings messages.
-
-2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-decl.cc (tree_static_command::do_init): Initialize to empty
-	matrix by default.
-
-2004-04-02  David Bateman  <dbateman@free.fr>
-
-	* ov-re-mat.cc (octave_matrix::convert_to_str_internal):
-	Return charNDArray.
-	* ov-bool-mat.cc (octave_bool_matrix::convert_to_str_internal):
-	Call array_value.
-
-	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
-	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/minmax.cc,
-	DLD-FUNCTIONS/filter.cc:
-	Convert for N-d array, better Matlab compatibility.
-
-	* load-save.cc (Fload): Better handling of non existent files.
-
-2004-03-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-list.cc (octave_list::subsref): Correctly create return value.
-	Return comma-separate list if {-style indexing extracts more than
-	one value.
-
-2004-03-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.57.
-	(OCTAVE_API_VERSION): Now api-v8.
-
-	* ov-cell.cc (octave_cell::save_hdf5): Handle empty cells.
-	(octave_cell::load_hdf5): Likewise.
-
-2004-03-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): If empty,
-	allow type conversion when indexing with "{" and ".".
-
-2004-03-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (init_format_state): Also set compact_format.
-	(pr_col_num_header): Print one newline character before column
-	headers for compact format.
-
-2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_WWW_STATEMENT): New macro.
-	(OCTAVE_STARTUP_MESSAGE): Include it here.
-	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS): And here.
-
-	* octave.cc (verbose_usage): Use OCTAVE_WWW_STATEMENT here.
-
-	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): If there are no
-	nonzero elements, return [](0x1) or [](1x0), not [](0x0).
-	Correctly preserve orientation for row vectors.
-
-2004-03-08  Petter Risholm  <risholm@idi.ntnu.no>
-
-	* data.cc (do_cat): Check for length of args before getting dimension.
-	New arg, fname.  Print usage message corresponding to fname.
-	(Fcat): Pass "cat" as fname arg to do_cat.
-	(Fhorzcat): Pass "horzcat" as fname arg to do_cat.
-	(Fvertcat): Pass "vertcat" as fname arg to do_cat.
-
-2004-03-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.56.
-	(OCTAVE_API_VERSION): Now api-v7.
-
-2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-struct.cc (Frmfield): New function
-
-	* oct-map.h (Octave_map::contains): Return bool, not int.
-
-	* ov-cell.cc (Fiscellstr): No error if arg is not a cell array.
-	(Fcellstr): Return arg if it is already a cell array of character
-	strings.
-
-2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool.cc (octave_bool::load_hdf5, octave_bool::save_hdf5):
-	Avoid unnecessary casts.
-	* ov-bool-mat.cc (octave_bool_matrix::load_hdf5,
-	octave_bool_matrix::save_hdf5): Likewise.
-	* ov-cell.cc (octave_cell::load_hdf5, octave_cell::save_hdf5):
-	Likewise.
-	* ov-complex.cc (octave_complex::load_hdf5,
-	octave_complex::save_hdf5): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::load_hdf5,
-	octave_complex_matrix::save_hdf5): Likewise.
-	* ov-range.cc (octave_range::load_hdf5, octave_range::save_hdf5):
-	Likewise.
-	* ov-re-mat.cc (octave_matrix::load_hdf5, octave_matrix::save_hdf5):
-	Likewise.
-	* ov-scalar.cc (octave_scalar::load_hdf5, octave_scalar::save_hdf5):
-	Likewise.
-	* ov-str-mat.cc (octave_char_matrix_str::load_hdf5,
-	octave_char_matrix_str::save_hdf5): Likewise.
-
-2004-03-03 David Bateman  <dbateman@free.fr>
-
-	* ov-cell.cc (octave_cell::save_hdf5, octave_cell::load_hdf5):
-	Make N-d aware.
-
-2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Delete spaces surrounding = in %name-prefix directive.
-
-2004-03-01  Petter Risholm  <risholm@idi.ntnu.no>
-
-	* Cell.cc (Cell::cat): New function.
-	* Cell.h: Provide decl.
-
-	* oct-map.cc (Octave_map::cat): New function.
-	* oct-map.h: Provide decl.
-
-	* data.cc (Fcat): Speedup implementation.
-
-	* data.cc (Fhorzcat, Fvertcat): New functions.
-
-	* Array-tc.cc: Instantiate cat function.
-
-2004-03-01  David Bateman  <dbateman@free.fr>
-
-	* ls-hdf5.cc (save_hdf5_empty, load_hdf5_empty): New functions
-	to save/load empty matrices keeping their dimensions.
-	* ls-hdf5.h (save_hdf5_empty, load_hdf5_empty): Provide decls.
-
-	* ov-re-mat.cc (save_hdf5, load_hdf5): Cleanup, check empty matrix.
-	* ov-cx-mat.cc (save_hdf5, load_hdf5): Ditto.
-	* ov-bool-mat.cc (save_hdf5, load_hdf5): Ditto.
-
-	* ov-str-mat.cc (save_ascoo, load_ascii, save_binary,
-	load_binary, save_hdf5, load_hdf5): Cleanup, check empty matrix,
-	and save/load N-d arrays.
-
-2004-02-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (execute_startup_files): Don't find current directory
-	for absolute name of local_rc until after executing home_rc.
-
-2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (input_event_hook): Return type is now int.  Return 0.
-
-	* file-io.cc (do_stream_open): Don't call ::error if stream can't
-	be created.  Don't call ::fopen if arch is invalid.  Set error
-	state for stream if fopen fails.
-	* oct-stream.h (octave_stream::error (const char *)): New function.
-	(octave_stream::error (const std::string&)): Now public.
-
-2004-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Fftell): Return long integer instead of streamoff_array.
-	(do_stream_open): Create octave_stdiostream instead of octave_fstream.
-
-	* oct-fstrm.cc (octave_fstream::seek, octave_fstream::tell):
-	Always fail.  Signatures now match C library functionsb.
-	* oct-iostrm.cc (octave_base_iostream::seek,
-	octave_base_iostream::tell): Likewise.
-	* oct-strstrm.cc (octave_base_strstream::seek,
-	octave_base_strstream::tell): Likewise.
-
-	* oct-stream.cc (octave_stream::seek, octave_stream::tell):
-	Signatures now match C-library functions.
-
-	* oct-stdstrm.cc (octave_stdiostream::seek, octave_stdiostream::tell):
-	Call io_c_file_ptr_stream::seek and tell.  Signatures now match
-	C-library functions.
-
-	* c-file-ptr-stream.h (c_file_ptr_buf::seek, c_file_ptr_buf::tell):
-	New functions.
-	(i_c_file_ptr_stream::seek, i_c_file_ptr_stream::tell): Likewise.
-	(o_c_file_ptr_stream::seek, o_c_file_ptr_stream::tell): Likewise.
-	(io_c_file_ptr_stream::seek, io_c_file_ptr_stream::tell): Likewise.
-
-2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.55.
-	(OCTAVE_API_VERSION): Now api-v6.
-
-	* sighandlers.cc (sigfpe_handler, sigpipe_handler):
-	Don't increment	octave_interrupt_state if it is less than 0.
-	(sigint_handler): If octave_interrupt_state is less than zero,
-	reset it.
-
-	* pt-except.cc (do_catch_code): Call OCTAVE_QUIT here so the catch
-	code won't run if an interrupt is pending.  Don't run catch code
-	if octave_interrupt_state is less than zero.
-
-2004-02-20  Per Persson  <persquare@mac.com>
-
-	* Makefile.in (OCT_LINK_DEPS, OCTINTERP_LINK_DEPS):
-	Include	$(LIBS) in the list before $(FLIBS).
-
-2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (octave_print_internal (std::ostream&, const
-	Range&, bool, int)): Don't print values beyond the limits of the
-	range.
-
-	* sighandlers.cc (sigint_handler): Print message after two
-	consecutive interrupts, dump core after three or more.
-
-	* load-save.cc (dump_octave_core): Handle core size limit.
-	Rename from save_user_variables.  Change all callers.
-	(Fload, dump_octave_core, Fsave): Open HDF5 fils in binary mode.
-	(do_save): Extract switch over file types to separate function.
-
-	* load-save.cc (Voctave_core_file_limit): New variable.
-	(octave_core_file_limit): New function.
-	(symbols_of_load_save): Add DEFVAR for octave_core_file_limit.
-
-	* load-save.cc (Voctave_core_file_name): New variable.
-	(octave_core_file_name): New function.
-	(symbols_of_load_save): Add DEFVAR for octave_core_file_name.
-
-	* load-save.cc (Voctave_core_file_format):
-	Rename from Voctave_core_format.
-	(octave_core_file_format): Rename from octave_core_format.
-	(symbols_of_load_save): Fix DEFVAR to match.
-
-2004-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc (Fsizeof): New function.
-
-	* ov.h (octave_value::byte_size): New function.
-	* ov-base.h (octave_base_value::byte_size): New function.
-	* ov-base-scalar.h (octave_base_scalar::byte_size): New function.
-	* ov-bool-mat.h (octave_bool_matrix::byte_size): New function.
-	* ov-ch-mat.h (octave_char_matrix::byte_size): New function.
-	* ov-cx-mat.h (octave_complex_matrix::byte_size): New function.
-	* ov-re-mat.h (octave_matrix::byte_size): New function.
-	* ov-range.h (octave_range::byte_size): New function.
-	* ov-cell.cc (octave_cell::byte_size): New function.
-	* ov-cell.h: Provide decl.
-	* ov-struct.cc (octave_struct::byte_size): New function.
-	* ov-struct.h: Provide decl.
-	* ov-streamoff.h (octave_streamoff::byte_size): New function.
-	* ov-list.cc (octave_list::byte_size): New function.
-	* ov-list.h: Provide decl.
-
-	* xpow.cc (elem_xpow (const Matrix&, double)):
-	Convert both operands to Complex if any element of A is negative.
-	(elem_xpow (const NDArray&, double)): Likewise.
-
-2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (Voctave_core_format): New static_variable.
-	(octave_core_format): New function.
-	(symbols_of_load_save): Add DEFVAR for octave_core_format.
-	(get_save_format): Rename from get_default_save_format.
-	Pass name of format as arg.  New optional arg, fallback_format.
-	Change all uses.
-	(save_user_variables): Use pass Voctave_core_format to
-	get_save_format here.  Pass LS_BINARY as fallback_format.
-
-	* sighandlers.cc (my_friendly_exit): New optional arg, save_vars.
-	Only call save_user_variables if save_vars is true.
-	(sigint_handler): If interactive, offer to abort and save
-	workspace after three consecutive interrupts.
-	(sigint_handler, sigpipe_handler, sigfpe_handler):
-	Increment octave_interrupt_handler instead of setting it to 1.
-
-2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.54.
-	(OCTAVE_API_VERSION): Now api-v5.
-
-	* Makefile.in (DLD_XSRC): Always include fftw_wisdom.cc.
-
-	* DLD-FUNCTIONS/fftw_wisdom.cc:
-	Rename from DLD-FUNCTIONS/fft_wisdom.cc.
-	(Vfftw_wisdom_prog): Delete extern decl.
-	(Ffftw_wisdom): Rename from Ffft_wisdom.
-	Use Vfftw_wisdom_prog instead of Vwisdom_prog.
-	Always define function.  Signal error if not configured to use FFTW3.
-
-	* defaults.cc (symbols_of_defaults): Rename WISDOM_PROGRAM to be
-	FFTW_WISDOM_PROGRAM.
-	(Vfftw_wisdom_prog): Rename from Vwisdom_prog.
-	(fftw_wisdom_program): Rename from wisdom_program.
-	For simplicity, always define FFTW_WISDOM_PROGRAM even when not
-	using fftw3.
-	(set_default_wisdom_prog): Look for OCTAVE_FFTW_WISDOM_PROGRAM in
-	the environment instead of OCTAVE_WISDOM_PROGRAM.
-	(set_default_fftw_wisdom_prog): Rename from set_default_wisdom_prog.
-	* defaults.h.in (Vfftw_wisdom_prog): Provide extern decl.
-
-2004-02-16 David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/fft.cc: Adapt for Nd arrays, combine with ifft.cc.
-	* DLD-FUNCTIONS/ifft.cc: Delete.
-	* DLD-FUNCTIONS/fft2.cc: Adapt for Nd arrays, combine with ifft.cc.
-	* DLD-FUNCTIONS/ifft2.cc: Delete.
-	* DLD-FUNCTIONS/fftn.cc: New function for Nd FFT and inverse FFT.
-	* DLD-FUNCTIONS/fft_wisdom.cc: New function to manipulate FFTW
-	wisdom.
-
-	* Makefile.in: Remove ifft.cc and ifft2.cc.  Add fftn.cc and
-	ifftn.cc.  Make building of fft-wisdom.cc conditional on the
-	value of FFTW_LIBS.
-	* defaults.cc (Vwisdom_prog): New variable
-	(set_default_wisdom_prog, wisdom_prog): New functions.
-	(symbols_of_defaults): Add DEFVAR for wisdom_prog.
-
-2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-list.cc (octave_list::subsasgn): Call assign for Cell objects
-	here, not the base octave_value::assign.
-
-2004-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (yywrap): Don't #undef this symbol.
-
-2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* pt-mat.cc: Make [,] concatenation work for N-d arrays.
-
-2004-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (do_cat): Merge with Fcat.
-
-2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ov-cell.cc (Fstruct2cell): New function.
-
-2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTINTERP_LINK_DEPS, OCT_LINK_DEPS): Always define.
-
-	* oct-conf.h.in: Add OCTAVE_CONF_DL_LD, OCTAVE_CONF_DL_LDFLAGS,
-	and OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS.
-	Delete OCTAVE_CONF_MKOCTFILE_SH_LDFLAGS.
-
-	* toplev.cc (octave_config_info): Delete MKOCTFILE_SH_LDFLAGS.
-	Add DL_LD, DL_LDFLAGS, and MKOCTFILE_DL_LDFLAGS to the struct.
-
-2004-02-14  Per Persson  <persquare@mac.com>
-
-	* Makefile.in (%.oct): Use DL_LD instead of SH_LD to build .oct files.
-
-2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-scalar.h (octave_base_scalar::squeeze): New function.
-
-2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* data.cc (Fcat): New function.
-	* data.cc (do_cat): New function.
-	* data.cc (cat_add_dims): New function.
-
-2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (main_loop): Call octave_parse, not yyparse.
-	* octave.cc (octave_main): Increment octave_debug, not yydebug.
-	* parse.y (%name-prefix): New directive, set to "octave_".
-	* parse.h: Provide declarations for octave_lex and octave_parse
-	instead of yylex and yyparse.
-	* lex.l (%option prefix): New directive, set to "_octave".
-	Define yylval to be octave_lval.
-	Move definitions of YY_INPUT, YY_FATAL_ERROR, TOK_RETURN,
-	TOK_PUSH_AND_RETURN, BIN_OP_RETURN, XBIN_OP_RETURN here.
-	* lex.h: From here.
-
-2004-02-07  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ov-struct.cc (Fcell2struct): New function.
-	(cell2struct_check_args, cell2struct_construct_idx): Likewise.
-
-2004-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-scalar.h (octave_scalar::empty_clone):
-	Return empty octave_matrix, not an octave_scalar object.
-	* ov-complex.h (octave_complex::empty_clone):
-	Return empty octave_complex_matrix, not an octave_complex object.
-
-2004-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.h (octave_user_function::function_name): Delete.
-	(octave_user_function::fcn_name): Delete unused data member.
-	(octave_user_function::stash_function_name): Save name in
-	tree_function::my_name instead of fcn_name.
-	Change all uses of fcn_name to be my_name instead.
-
-	* pt.h, pt.cc (tree::break_function): Now pointer to
-	octave_function rather than octave_user_function object.
-
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Use name instead of function_name
-	to get name from curr_function.
-	* pt-pr-code.cc (tree_print_code::visit_octave_user_function_header):
-	likewise.
-	* debug.cc (Fdbwhere, Fdbtype, ): Likewise
-	* error.cc (pr_where): Likewise.
-	* variables.cc (Fmlock, Fmunlock, Fmislocked): Likewise.
-	(lookup_function, lookup_user_function,	link_to_builtin_or_function):
-	Likewise, for curr_parent_function.
-
-	* debug.cc (get_user_function, Fdbwhere):
-	Cast curr_function to pointer to octave_user_function.
-
-	* ov-mapper.cc (octave_mapper::do_multi_index_op):
-	Save and restore curr_function here.
-	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
-
-	* toplev.h, toplev.cc (curr_function, curr_parent_function): Now
-	pointers to octave_function rather than octave_user_function objects.
-
-	* ov-usr-fcn.h (octave_user_function::is_user_function): New function.
-	* ov-fcn.h (octave_function::takes_varargs,
-	octave_function::octave_va_start, octave_function::octave_va_arg,
-	octave_function::octave_all_va_args,
-	octave_function::takes_var_return, octave_function::octave_vr_val,
-	octave_function::is_user_function): New virtual functions.
-
-2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-struct.cc (Fstruct): Use new Octave_map constructor to create
-	structures with specified sizes but no keys.
-
-	* ov-struct.cc (Fstruct): New function, from Paul Kienzle
-	<pkienzle@users.sf.net> and Petter Risholm  <risholm@stud.ntnu.no>.
-
-	* oct-map.h (Octave_map::Octave_map): Allow dimension to be
-	specified for map with no keys.
-
-	* ov-struct.cc (fieldnames): Return 0x1 cell array if no fieldnames.
-
-2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
-	Don't fail if number of indices is greater than 2.
-
-2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fsize): Update for N-d objects.
-
-	* ls-mat5.cc (read_mat5_binary_element): Force conversion.
-
-	* ov-base.cc (octave_base_value::char_matrix_value):
-	Pass force arg to convert_to_str.
-
-	* data.cc (Freshape): Chop trailing singletons from new dimensions.
-
-2004-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (defun_usage_message): Only accept one arg, a const
-	std::string& object.  Change all uses.  Pass nul-terminated string
-	to defun_message_1.
-	(defun_usage_message_1): New function, equivalent to old
-	defun_usage_message.
-
-	* ov-base.cc (nint_value): Use fix, not NINT.
-	(INT_CONV_METHOD): Likewise, use fix instead of just casting.
-
-	* data.cc (make_diag): Use int_value instead of nint_value to
-	extract k for Matlab compatibility.
-	(Flinspace): Likewise, for npoints.
-	(fill_matrix): Likewise, for extracting dims.
-	(Fsize): Likewise, for extracting dim argument.  Require int value.
-	* utils.cc (get_dimensions): Likewise.  Use fix, not NINT.
-
-2004-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (verror, error_1): New arg, os.  Use this instead
-	of always printing to std:cerr.  Change all callers.
-
-	* error.cc (defun_usage_message): New function.
-	* error.h: Provide decl.
-	* defun.cc (print_usage): Use it to display error message.
-
-	* error.cc (verror): New arg, save_last_error.  Change all callers.
-	(usage): Set error_state after calling verror.
-
-	* oct-map.cc (Octave_map::assign (const std::string, const Cell&)):
-	Set dimensions to RHS dimensions, not 1x1.
-
-2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool.cc, ov-cx-mat.cc, ov-re-mat.cc, ov-str-mat.cc:
-	Include <vector>.
-	* file-io.cc, ls-hdf5.cc, ls-mat4.cc, ls-mat5.cc, ls-oct-binary.cc:
-	Include <vector>, not <memory> for new defn of OCTAVE_LOCAL_BUFFER.
-	* load-save.cc, ls-mat-ascii.cc, ls-oct-ascii.cc
-	No need to include <memory> now.
-
-	* DLD-FUNCTIONS/eig.cc (Feig): Use new optional arg for EIG to
-	avoid computing eigenvectors if not requested.
-	Based on a patch from David Bateman  <dbateman@free.fr>.
-
-2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (all_strings): Always compute total required length
-	of retval.
-
-2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.53.
-	(OCTAVE_API_VERSION): Now api-v4.
-
-	* error.cc (pr_where): New arg, print_code with default value true.
-	(warning): Call pr_where with second arg false.
-
-	* file-io.cc (Ffrewind): Only return value if nargout > 0.
-	(Ffprintf): Likewise.
-	(Fprintf): Likewise.
-
-	* file-io.cc (Ffrewind): Return 0 for success, -1 for failure.
-	Make docs match.
-
-	* Makefile.in (distclean): Remove DOCSTRINGS.
-	(maintainer-clean): Remove $(OPT_HANDLERS).
-
-2004-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (octave_cell::subsref): Make '{' case N-d aware.
-
-	* ov-scalar.cc (streamoff_array_value): New function.
-	* ov-scalar.h: Provide decl.
-
-	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP): New maco.
-	Use it to define streamoff by matrix, streamoff by scalar, scalar
-	by streamoff, and matrix by streamoff comparison operators.
-	(install_streamoff_ops): Install them.
-
-	* Cell.h (Cell::operator ()): Delete (we inherit them from Array<T>).
-	(maybe_resize, elem_internal): Delete unused functions.
-
-	* ls-mat5.cc (write_mat5_cell_array): Cell& arg is now const.
-
-2004-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (is_valid_function): If warn, also print error
-	message if arg is not a string.
-
-	* ov-usr-fcn.cc (Fnargin, Fnargout): New functions.
-
-	* octave.cc (intern_argv): Lookup __nargin__ instead of nargin.
-	* ov-usr-fcn.cc (octave_user_function::install_automatic_vars):
-	Lookup __nargin__ and __nargout__ instead of nargin and nargout.
-
-	* variables.h (at_top_level): Now extern.
-	(lookup_user_function): New function.
-	* variables.cc: Provide decls.
-
-	* ov.h, ov.cc (octave_value::user_function_value):
-	New virtual function.
-	* ov-base.h, ov-base.cc (octave_base_value::user_function_value):
-	Provide default version.
-	* ov-usr-fcn.h (octave_user_function::user_function_value):
-	New function.
-
-	* ov-re-mat.cc (complex_array_value): New function.
-	* ov-re-mat.h: Provide decl.
-
-	* ov-cell.cc (Fiscellstr): Don't return value on usage error.
-
-	* error.cc: (symbols_of_error): Delete DEFVAR for error_text.
-	Define __error_text__ and error_text as aliases for lasterr.
-
-	* error.cc (bind_global_error_variable,	clear_global_error_variable):
-	Delete.
-	* variables.h: Delete decls.
-
-	* parse.y (Feval, Fevalin): Don't call bind_global_error_variable.
-	Don't add clear_global_error_variable to the unwind_protect stack.
-	Increment buffer_error_messages before evaluating "eval" code,
-	decrement it before evaluating "catch" code.
-
-	* pt-except.cc (do_catch_code): Don't call bind_global_error_variable.
-	Don't add clear_global_error_variable to the unwind_protect stack.
-	Decrement buffer_error_messages here.
-	(tree_try_catch_command::eval): Increment buffer_error_messages here.
-
-	* error.cc, error.h (buffer_error_messages): Now an int.
-
-2004-01-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (octave_config_info): Add float_format,
-	words_big_endian, and words_little_endian to the struct.
-
-2004-01-14  David Bateman  <dbateman@free.fr>
-
-	* ov-cell.cc (octave_cell::load_hdf5): Fix for HDF5 version 1.6
-	handling of number of objects in a group.
-	* ov-struct.cc (octave_struct::load_hdf5): Likewise.
-	* ov-list.cc (octave_list::load_hdf5): Likewise.
-	* ls-hdf5.cc (read_hdf5_data): Likewise.
-
-2004-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ls-hdf5.h: Surround contents with #if defined (HAVE_HDF5).
-
-2004-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (convert_to_valid_int, get_size):
-	Use lo_ieee_is_NaN_or_NA instead of xisnan.
-	(octave_base_stream::do_printf): Correct special case check for
-	NA, NaN, Inf, or out of range integers.
-
-	* dirfns.cc (Fglob): Always return list of files as a cell array.
-	(Freaddir): Likewise.
-
-	* dirfns.cc (Fls): If nargout > 0, return ls output.
-
-2004-01-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (Fload): Assume -force by default.
-
-	* oct-stream.cc (octave_base_stream::write):
-	Allow fwrite (fid, "some string") to work.
-
-	* toplev.cc (Fcomputer): Delete.
-	(octave_config_info): Add unix and windows fields to the struct.
-
-2004-01-06  David Bateman  <dbateman@free.fr>
-
-	* ls-hdf5.cc: Fix handle of old versus new format files.
-
- 	* ls-oct-binary.cc: Split the load/save functionality into the types
- 	themselves.  Backward compatibility maintained.
-
- 	* ov-struct.cc (save_binary, load_binary):
- 	* ov-str-mat.cc (save_binary, load_binary):
- 	* ov-scalar.cc (save_binary, load_binary):
- 	* ov-re-mat.cc (save_binary, load_binary):
- 	* ov-range.cc (save_binary, load_binary):
- 	* ov-list.cc (save_binary, load_binary):
- 	* ov-cx-mat.cc (save_binary, load_binary):
- 	* ov-complex.cc (save_binary, load_binary):
- 	* ov-cell.cc (save_binary, load_binary):
- 	* ov-bool.cc (save_binary, load_binary):
- 	* ov-bool-mat.cc (save_binary, load_binary):
-	New functions for loading and saving structures in octave binary
-	format.
-
- 	* ov-str-mat.h (save_binary, load_binary):
- 	* ov-scalar.h (save_binary, load_binary):
- 	* ov-re-mat.h (save_binary, load_binary):
- 	* ov-range.h (save_binary, load_binary):
- 	* ov-list.h (save_binary, load_binary):
- 	* ov-cx-mat.h (save_binary, load_binary):
- 	* ov-complex.h (save_binary, load_binary):
- 	* ov-cell.h (save_binary, load_binary):
- 	* ov-bool.h (save_binary, load_binary):
- 	* ov-bool-mat.h (save_binary, load_binary):
- 	* ov-struct.h (save_binary, load_binary):
-	Provide decls.
-
- 	* ov.h (save_binary, load_binary): New virtual functions.
-
- 	* ov-base.cc (save_binary, load_binary): New functions, for fallbacks
- 	with error message.
- 	* ov-base.h: Provide decls.
-
- 	* load-save.cc: Remove "-import" flag and make it the default.
- 	* load-save.h: Likewise.
-
- 	* ls-oct-ascii.cc: Split the load/save functionality into the types
- 	themselves. Save "string" variables with the name "string" rather than
- 	string array. Backward compatiability maintained in ov-cs-mat.cc.
- 	Include new version of extract_keyword that halts if the next value is
- 	invalid rather that searching for the next valid value.
-
- 	* ls-oct-ascii.h: Extract_keyword header updated.
-	Include definition of OCT_RBV and CELL_ELT_TAG, since they are now
-	used elsewhere.
-
- 	* ls-hdf5.cc: Split load/save functionality into the types themselves.
- 	The hdf5 format is changed so that each object is a group with a
- 	dataset "type" being a string with the octave_value type and the
- 	dataset or group "value" containing the value of the data, struct, etc.
- 	This allows extensibility. Backward compatibility is maintained. The
- 	"import" flag is now assumed to always be true and has been removed.
-
- 	* ov-struct.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-str-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-scalar.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
-	* ov-re-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-range.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-list.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-cx-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-complex.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-cell.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-bool.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-bool-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	New functions for loading and saving structures in octave ascii
-	and hdf5 formatted files.
-
- 	* ov-struct.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-str-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-scalar.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-re-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-range.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-list.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-cx-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-complex.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-cell.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-bool.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	* ov-bool-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
- 	Provide decls.
-
- 	* ov-typeinfo.cc (octave_value_typeinfo::do_lookup_type): Include
- 	make_unique so that the stored type value is not used for all loaded
- 	variables.
-
- 	* ov.h: (save_ascii, load_ascii, save_hdf5 and load_hdf5):
-	New virtual functions.
-
-  	* ov-base.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
-	New functions, for fallbacks with error message.
-	* ov-base.h: Provide decls.
-
-2003-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cx-mat.cc (octave_complex_matrix::assign): RHS arg is N-d.
-	* ov-cx-mat.h: Fix decl.
-
-	* ops.h (DEFNDASSIGNOP_FN): New macro.
-	* OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
-	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-m-s.cc: Use it instead of DEFASSIGNOP_FN.
-
-2003-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xpow.cc (xpow (double, double)): Avoid apparent GNU libm bug.
-
-2003-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.cc (symbol_record::print_symbol_info_line):
-	Also check is_static to see if a symbol can be cleared.
-
-2003-12-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (is_keyword): Also allow varargout_kw if
-	lexer_flags.looking_at_return_list is false provided that we are
-	defining a function and we haven't seen the function name yet.
-	* parse.y (return_list): Don't require [] around varargout.
-
-	* DLD-FUNCTIONS/find.cc (DO_FIND_OP): Delete macro.
-	(find_to_fortran_idx): Delete.  Move guts of function to
-	find_nonzero_elem_idx.
-	(find_nonzero_elem_idx): Now a template function.  Handle overall
-	array index here too.  Make it N-d aware.
-
-	* pt-pr-code.cc (tree_print_code::visit_complex_for_command,
-	tree_print_code::visit_octave_user_function_header,
-	tree_print_code::visit_matrix, tree_print_code::visit_cell,
-	tree_print_code::visit_multi_assignment): Keep track of nearest
-	[, {, or ( nesting level.
-	(tree_print_code::visit_index_expression): Likewise.  Check nesting
-	level to decide how to print index.
-	(tree_print_code::reset): Also reset nesting level stack.
-
-	* pt-pr-code.h (tree_print_code::nesting): New data member.
-	(tree_print_code::tree_print_code): Initialize it.
-
-	* ov-base-mat.h (octave_base_matrix::octave_base_matrix (const MT&)):
-	If arg has no dimensions, resize to be 0x0.
-
-2003-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-map.cc (Octave_map::assign): Use Octave_map::contents member
-	function instead of operator [].
-	* ov-struct.cc (octave_struct::subsasgn): Likewise.
-	* DLD-FUNCTIONS/time.cc (extract_tm): Likewise.
-
-	* DLD-FUNCTIONS/time.cc	(mk_tm_map): Use Octave_map::assign member
-	function instead of operator [].
-	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Likewise.
-	* DLD-FUNCTIONS/getgrent.cc (mk_gr_map): Likewise.
-	* DLD-FUNCTIONS/getpwent.cc (mk_pw_map): Likewise.
-	* load-save.cc (do_load): Likewise.
-	* ls-hdf5.cc (hdf5_read_next_data): Likewise.
-	* ls-mat5.cc (read_mat5_binary_element): Likewise.
-	* oct-map.cc (Octave_map::reshape): Likewise.
-	* oct-map.cc (Octave_map::index): Likewise.
-	* ov-fcn-handle.cc (Ffunctions): Likewise.
-	* pt-idx.cc (make_arg_struct): Likewise.
-	* sighandlers.cc (make_sig_struct): Likewise.
-	* syscalls.cc (mk_stat_map): Likewise.
-	* toplev.cc (Foctave_config_info): Likewise.
-
-	* ls-hdf5.cc (add_hdf5_data): Temporary Octave_map is now const.
-	* ls-mat5.cc (save_mat5_binary_element): Likewise.
-
-	* oct-map.cc (Octave_map::assign (const std::string&, const
-	octave_value&)): New function.
-	* oct-map.h: Provide decl.
-	(Octave_map::contents (const std::string&)): New function.
-	(Octave_map::operator [] (const std::string&) const): Delete.
-	(Octave_map::operator [] (const std::string&)): Delete.
-
-2003-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-cell.cc: Allow transpose for cell arrays.
-	* OPERATORS/op-m-m.cc, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-bm-bm.cc, OPERATORS/op-streamoff.cc,
-	OPERATORS/op-str-str.cc: Improve error message for attempt to
-	transpose N-d object.
-
-2003-11-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-arg-list.cc (F__end__): Handle N-d objects.
-
-2003-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-b-bm.cc: New file.
-
-	* OPERATORS/op-bm-b.cc (op_el_and, op_el_or): Define and install.
-	* OPERATORS/op-bm-bm.cc (op_el_and, op_el_or, assign): Likewise.
-
-	* ov-str-mat.cc (CHAR_MATRIX_CONV): New macro.
-	* ov-str-mat.h (octave_char_matrix_str::double_value,
-	octave_char_matrix_str::matrix_value,
-	octave_char_matrix_str::array_value,
-	octave_char_matrix_str::complex_value,
-	octave_char_matrix_str::complex_matrix_value,
-	(octave_char_matrix_str::complex_array_value): Use it.
-
-	* ov-bool-mat.cc (default_numeric_conversion_function):
-	Convert to NDArray, not Matrix.
-	* ov-str-mat.cc (default_numeric_conversion_function): Likewise.
-
-	* ov-range.h (octave_range::array_value): New function.
-	(octave_range::complex_array_value): Likewise.
-	* ov-ch-mat.h (charNDArray::array_value): New function.
-	(charNDArray::complex_array_value): Likewise.
-	* ov-str-mat.h (octave_char_matrix_str::array_value): Likewise.
-	(octave_char_matrix_str::complex_value): Likewise.
-	(octave_char_matrix_str::complex_matrix_value): Likewise.
-	(octave_char_matrix_str::complex_array_value): Likewise.
-
-	* mappers.cc (acosh, log, log10, sqrt):
-	Use octave_Inf instead of DBL_MAX for range limit.
-
-2003-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.52.
-	(OCTAVE_API_VERSION): Now api-v3.
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Pass function name from arg
-	list in calls to error.
-
-	* ov-cs-list.cc, ov-cs-list.h (octave_cs_list::octave_cs_list):
-	Explicitly initialize base class in constructors.
-
-	* ov.h (octave_value::all_strings): Pass second arg to rep function.
-
-	* ov.h (octave_value::string_value): Pass arg to rep function.
-
-	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_f): Delete unused arg names.
-	* DLD-FUNCTIONS/rand.cc (Frand, Frandn): Likewise.
-	* ls-hdf5.h (hdf5_streambase::hdf5_streambase): Likewise.
-	* ls-hdf5.cc (read_hdf5_data): Likewise.
-	* ls-utils.cc (get_save_type): Likewise.
-	* parse.y (Fassignin): Likewise.
-	* utils.cc (empty_arg): Likewise.
-	* ov-usr-fcn.h (octave_user_function::subsref): Likewise.
-	* ov-base-mat.h (octave_base_matrix::subsref): Likewise.
-	* ov-mapper.h (octave_mapper::subsref): Likewise.
-	* ov-builtin.h (octave_builtin::subsref): Likewise.
-	* ov-complex.cc (octave_complex::complex_array_value): Likewise.
-	* ov-cell.h (octave_cell::subsref): Likewise.
-	* ov-base-scalar.h (octave_base_scalar::subsref): Likewise.
-	* ov-struct.h (octave_struct::subsref): Likewise.
-	* ov-range.h (octave_range::subsref): Likewise.
-	* ov-list.h (octave_list::subsref): Likewise.
-	* ov-base.cc (octave_base_value::print_info): Likewise.
-	* pt-check.cc (tree_checker::visit_subplot_axes): Likewise.
-	* pr-output.cc (octave_print_internal (std::ostream&, double, bool),
-	octave_print_internal (std::ostream&, const Complex&, bool),
-	octave_print_internal (std::ostream&, const ArrayN<std::string>&,
-	bool, int): Likewise.
-	* oct-stream.cc (octave_scan<> (std::istream&, const
-	scanf_format_elt&, char*): Likewise
-	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
-	Likewise.
-	* pt-bp.cc (tree_breakpoint::visit_octave_user_function,
-	tree_breakpoint::visit_octave_user_function_header,
-	tree_breakpoint::visit_octave_user_function_trailer,
-	tree_breakpoint::visit_plot_limits,
-	tree_breakpoint::visit_plot_range,
-	tree_breakpoint::visit_subplot,
-	tree_breakpoint::visit_subplot_axes,
-	tree_breakpoint::visit_subplot_list,
-	tree_breakpoint::visit_subplot_style,
-	tree_breakpoint::visit_subplot_using): Likewise.
-	* ov.cc (octave_value::column_vector_value,
-	(octave_value::complex_column_vector_value,
-	(octave_value::row_vector_value,
-	octave_value::complex_row_vector_value,
-	octave_value::do_non_const_unary_op): Likewise.
-
-	* load-save.cc: Only include ls-hdf5.h if HAVE_HDF5 is defined.
-	From Melqart <melqart@free.fr>.
-
-	* pr-output.h (octave_fcn_handle::print_as_scalar): Delete.
-
-	* pr-output.cc (octave_print_internal): New version for
-	ArrayN<std::string> objects.
-	* pr-output.h: Provide decl.
-	* ov-fcn-handle.cc (octave_fcn_handle::print_raw): Use it.
-
-	* OPERATORS/op-fcn-handle.cc: New file.
-	* Makefile.in (OP_XSRC): Add it to the list.
-
-	* ov-fcn-handle.h, ov-fcn-handle.cc (octave_fcn_handle):
-	Now an array of function handle objects.
-
-	* ov.h, ov.cc (octave_value::octave_value (const fcn_handle_array&),
-	(octave_value::octave_value (octave_function *f, const std::string&)):
-	New constructors.
-	(octave_value::octave_value (const octave_fcn_handle&)): Delete.
-
-	* ov-base-mat.cc (octave_base_matrix<T>::print_as_scalar):
-	Check dims instead of rows and columns.
-
-	* ov.h (octave_value::is_function_handle): New function.
-	* ov-base.h (octave_base_value::is_function_handle): New function.
-
-2003-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool-mat.h (octave_bool_matrix::array_value): Construct return
-	value directly from matrix data member, not matrix.matrix_value ().
-
-	* ov-re-mat.h (octave_matrix::index_vector): Construct idx_vector
-	from NDArray, not Matrix.
-
-	* ov-bool-mat.h (octave_bool_matrix::index_vector): Construct
-	idx_vector from boolNDArray, not boolMatrix.
-
-	* ov.cc (install_types): Also register dld function type.
-
-	* OPERATORS/op-streamoff.cc: Install increment and decrement operators.
-	* ov-streamoff.h (octave_streamoff::increment,
-	octave_streamoff::decrement): New functions.
-
-	* ov-streamoff.h, ov-streamoff.cc: Move streamoff_array class to
-	liboctave/so-array.h and liboctave/so-array.cc.
-
-	* oct-stream.cc (octave_stream::seek): Extract std::streamoff from
-	tc_offset instead of int.
-
-	* ov-re-mat.cc (octave_matrix::double_value): Use numel, not length.
-
-	* ov-re-mat.cc (octave_matrix::streamoff_array_value): New function.
-	* ov-re-mat.h: Provide decl.
-
-	* ov-scalar.cc (octave_scalar::streamoff_value): New function.
-	* ov-scalar.h: Provide decl.
-
-	* ov.cc (octave_value::streamoff_array_value,
-	octave_value::streamoff_value): New functions.
-	* ov.h: Provide decls.
-
-	* ov-base.cc (octave_base_value::streamoff_array_value,
-	octave_base_value::streamoff_value): New functions.
-	* ov-base.h: Provide decls.
-
-	* ov-usr-fcn.cc (install_automatic_vars): Don't do anything unless
-	sym_tab is defined.
-
-	* ov-streamoff.h, ov-streamoff.cc, OPERATORS/op-streamoff.cc:
-	New files.
-
-	* ov-cell.h (octave_value_cell::is_matrix_type): New function.
-
-	* ov-mapper.h (octave_mapper::octave_mapper): No copying.
-	* ov-fcn.h (octave_function::octave_function): Likewise.
-	* ov-usr-fcn.h (octave_function::octave_function): Likewise.
-	* ov-builtin.h (octave_builtin::octave_builtin): Likewise.
-	* ov-dld-fcn.h (octave_dld_function::octave_dld_function): Likewise.
-
-2003-11-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-mapper.h (octave_mapper::octave_mapper): Make public.
-	Provide copy constructor and assignment operator.
-	* ov-fcn.h (octave_function::octave_function): Likewise.
-	* ov-builtin.h (octave_builtin::octave_builtin): Likewise.
-	* ov-dld-fcn.h (octave_dld_function::octave_dld_function): Likewise.
-
-	* ov-typeinfo.cc (octave_value_typeinfo::register_type,
-	octave_value_typeinfo::do_register_type): New arg, val.
-	Save it	in vals array.
-	(octave_value_typeinfo::lookup_type,
-	octave_value_typeinfo::do_lookup_type): New functions.
-	* ov-typeinfo.h: Provide decl.
-	(octave_value_typeinfo::vals): New data member.
-	(octave_value_typeinfo::octave_value_typeinfo): Initialize it.
-
-	* ov.h (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Pass
-
-	* ov.h (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Define register_type
-	here.  Also pass an empty object of the to-be-registered type to
-	register_type.
-	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Declare register_type
-	here, but don't define it.
-
-2003-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle (void)):
-	New constructor.
-
-	* ov-usr-fcn.h (octave_user_function::octave_user_function):
-	Delete decl for private constructor.
-
-	* ov-str-mat.cc (octave_char_matrix_str::matrix_value):
-	Conversion to matrix is an error unless explicitly forced.
-
-	* ov-str-mat.cc (octave_char_matrix_str::double_value): New function.
-	* ov-str-mat.h: Provide decl.
-
-	* ov-file.cc (print_raw): Use parens around ?: conditional used on
-	RHS of << output operator.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::seekoff,
-	c_file_ptr_buf::seekpos): Can't use fseek here, so just fail (by
-	returning -1) until we have a better solution.
-
-	* oct-stream.cc (octave_stream::tell): Return std::streamoff, not long.
-	* oct-iostrm.cc (octave_base_iostream::tell): Likewise.
-	* oct-stdstrm.cc (octave_stdiostream::tell): Likewise.
-	* oct-strstrm.cc (octave_base_strstream::tell): Likewise.
-	* oct-stream.h, oct-iostrm.h, oct-stdstrm.h, oct-strstrm.h:
-	Fix decls to match.
-
-2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ls-mat-ascii.cc (get_lines_and_columns): Delete second arg in
-	call to istream::seekg.
-
-	* ov-mapper.cc (MAPPER_LOOP_2, any_element_less_than,
-	any_element_greater_than, octave_mapper::apply):
-	Handle N-d arrays.
-
-2003-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ls-mat5.cc (read_mat5_binary_element, save_mat5_binary_element):
-	Handle N-d arrays.
-
-	* lex.l (next_token_is_index_op): New function.
-	(handle_close_bracket): Use it.
-
-	* ls-hdf5.cc, ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc,
-	ls-oct-ascii.cc, ls-oct-binary.cc, ls-utils.cc, ls-hdf5.h,
-	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
-	ls-oct-binary.h, ls-utils.h: New files, extracted from load-save.cc.
-	* Makefile.in: Add them to the appropriate lists.
-
-2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (octave_print_internal): Don't indent rows for
-	plus_format.  Use pr_plus_format for Range type with plus_format.
-	(plus_format_chars): New static variable.
-	(set_format_style): Allow optional arg for plus format to set it.
-	(pr_plus_format): Use it.
-
-	* ov-bool.h (octave_bool::array_value,
-	octave_bool::complex_array_value): New functions.
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
-	Ensure correct number of indices for Array indexing code.
-
-2003-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/qz.cc (qz): Use x.data()+offset instead of &a(i,j).
-	First and third args for dlag2 are const.
-
-	* DLD-FUNCTIONS/sort.cc (Fsort): Use const qualifier as appropriate.
-
-	* DLD-FUNCTIONS/balance.cc (balance): Use data() instead of
-	fortran_vec where appropriate in call to dggbak.
-
-	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_j): Simplify inserting x and
-	xdot in arg vector.
-	(dasrt_user_f): Likewise.
-	(dasrt_user_cf): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (dassl_user_function): Likewise.
-	(dassl_user_jacobian): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (lsode_user_function): Likewise.
-	(lsode_user_jacobian): Likewise.
-	* DLD-FUNCTIONS/daspk.cc (daspk_user_function): Likewise.
-	(daspk_user_jacobian): Likewise.
-
-2003-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-range.h (octave_range::reshape): New function.
-
-2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.51.
-	(OCTAVE_API_VERSION): Now api-v2.
-
-	* version.h (OCTAVE_BUGS_STATEMENT): Also tell people to look at
-	http://www.octave.org/bugs.html.
-
-	* oct-map.cc (Octave_map::assign): Use resize, not resize and fill.
-	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type): Likewise.
-
-	* Cell.cc (Cell::Cell): Pass dim_vector to resize instead of two ints.
-
-2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-liboctave-prereq): New target.
-	($(DEF_FILES), $(MAKEDEPS)): Depend on it.
-	(distclean): Remove it.
-
-	* parse.y (cancel_obj_idx): New rule.
-	(postfix_expr, prefix_expr): Use begin_obj_idx after every
-	postfix_expr on RHS.  Use cancel_obj_idx as soon as possible for
-	cases where we are not working on an index expression.
-
-	* lex.l (maybe_unput_comma, handle_close_bracket):
-	Don't insert comma if we are looking at an object index and the
-	closest nesting level is a brace.
-
-	* parse.y (postfix_expr): Use begin_obj_idx between postfix_expr
-	and the indexing delimiter rather than after it.
-
-	* lex.h (lexical_feedback::braceflag): New member variable.
-	* lex.l	(lexical_feedback::init): Initialize braceflag.
-	(\{{S}*): Increment lexer_flags.braceflag, not
-	lexer_flags.bracketflag.
-	(handle_close_bracket): Handle lexer_flags.braceflag and
-	lexer_flags.bracketflag separately based on bracket_type.
-	Delete unnecesary yyinput/yyunput.
-
-	* lex.l (next_token_is_postfix_unary_op): Also recognize ++ and --.
-
-	* ov-typeinfo.cc (octave_value_typeinfo::register_type,
-	octave_value_typeinfo::do_register_type):
-	New arg, c_name for class name.
-	* ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-builtin.cc,
-	ov-cell.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
-	ov-cs-list.cc, ov-cx-mat.cc, ov-dld-fcn.cc, ov-fcn-handle.cc,
-	ov-file.cc, ov-list.cc, ov-mapper.cc, ov-range.cc, ov-re-mat.cc,
-	ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov-usr-fcn.cc,
-	ov-va-args.cc: Pass class name to DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA.
-	* ov.h (octave_value::class_name): New virtual function.
-	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Define c_name, for class name.
-	Pass c_name to octave_value_typeinfo::register_type.
-	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Declare static member
-	c_name for class name.  Provide class_name member function.
-
-	* ov-typeinfo.cc (Fclass): New function.
-
-2003-11-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (Fisvarname): Pass correct name to make_argv.
-
-	* ov-cell.cc (Fiscellstr): New function.
-
-	* ov-file.h (octave_file::all, octave_file::any,
-	octave_file::dims, octave_file::is_real_type,
-	octave_file::ist_real_scalar): New functions.
-
-	* lex.l (bracket_brace_paren_nesting_level::is_bracket_or_brace):
-	New function.
-	(handle_close_bracket): New arg, bracket_type.  Change all uses.
-	First arg is now bool.
-	(<MATRIX_START>{SNLCMT}*\}{S}*): New pattern.
-	(maybe_unput_comma): Handle brace nesting level the same as brackets.
-	(handle_close_brace): Likewise.
-	(<MATRIX_START>{S}+): Likewise.
-	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*): Likewise.
-	(<MATRIX_START>{S}*{NL}{SNLCMT}*): Likewise.
-	({NL}): Likewise.
-	({CCHAR}): Likewise.
-	(")"): Likewise.
-	(\{{S}*): Handle the same as \[{S}*.
-	("}"): Handle the same as \].
-
-	* Makefile.in (stamp-prereq): Add oct-gperf.h, parse.cc, and
-	lex.cc to the list.
-
-2003-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (print_as_scalar): New function.
-	* ov-cell.h: Provide decl.
-
-	* ov-cell.cc (octave_cell::print_name_tag): Delete.
-	* ov-cell.h: Delete decl.
-
-	* ov-base-mat.cc (octave_base_matrix::print_name_tag): Delete.
-	* ov-base-mat.h: Delete decl.
-
-	* ov-base.cc (octave_base_value::print_name_tag):
-	Use print_as_scalar here.
-	* ov.h (octave_base_value::print_as_scalar): New virtual function.
-	* ov-base.h (octave_base_value::print_as_scalar):
-	New default implementation.
-	* ov-base-mat.h (octave_base_matrix::pirnt_as_scalar):
-	Don't declare as virtual here.
-
-	* ov-struct.cc (octave_struct::print_raw): If only printing keys,
-	also print dimensions of fields and overall array.
-
-	* sysdep.cc (Fnative_float_format): New function.
-
-	* input.cc (generate_possible_completions): Also append all
-	possible filename completions here.
-
-2003-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc: Explicitly instantiate octave_scan functions.
-
-	* TEMPLATE-INST/Array-c.cc, TEMPLATE-INST/Array-os.cc,
-	TEMPLATE-INST/Array-sym.cc, ov-typeinfo.cc:
-	Use new INSTANTIATE_ARRAY macro.
-
-	* data.cc (do_permute): New function.
-	(Fpermute, Fipermute): Use it.
-
-	* ov-base.cc (octave_base_value::permute): New function.
-	* ov-base.h: Provide decl.
-
-	* ov.h (octave_value::ipermute): New function.
-
-2003-11-11  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* data.cc (Fpermute, Fipermute): New functions.
-	* ov.h (octave_value::permute): New function.
-	* ov-base-mat.h (octave_base_matrix::permute): New function.
-
-2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.h (octave_value_list): Internal representation is now
-	std::vector instead of Array.
-
-	* ov-list.h, ov-list.cc: Internal representation is now Cell, not
-	octave_value_list.
-	(Flist): Print one-time warning.
-
-	* ov.cc (octave_value::octave_value (const octave_value_list&, bool)):
-	Cope with octave_cs_list not being derived from octave_list.
-
-	* ov-cs-list.cc (octave_cs_list): Handle conversion of Cell array
-	to octave_value_list here.
-
-	* ov-cs-list.h (class octave_cs_list): Derive from
-	octave_base_value, not octave_list.
-
-	* ov-cs-list.h, ov-cs-list.cc: Remove commented-out code.
-
-	* TEMPLATE-INST/Array-tc.cc (resize_fill_value): Use modern
-	specialization syntax.
-
-	* ov-cell.cc (octave_cell::print_raw): Use dim_vector::str.
-
-	* Cell.cc, Cell.h, debug.cc, file-io.cc, load-save.cc,
-	oct-fstrm.cc, oct-iostrm.cc, oct-iostrm.h, oct-map.cc, oct-map.h,
-	oct-prcstrm.cc, oct-stdstrm.h, oct-stream.cc, oct-strstrm.h,
-	octave.cc, ov-base.h, ov-cell.cc, ov.cc, ov.h, pt-cell.h,
-	pt-mat.cc, pt-mat.h, pt-plot.cc, pt-stmt.cc, variables.cc,
-	DLD-FUNCTIONS/rand.cc: Avoid -Wshadow warnings.
-
-2003-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_base_value::is_bool_matrix): New virtual function.
-	* ov-base.h (octave_base_value::is_bool_matrix): New function.
-
-2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc (octave_value::length): If any dim is zero, return 0.
-
-	* ov-cell.cc (octave_cell::subsref): When indexing with '{', quit
-	early if an error occurs in do_index_op.
-
-	* ov.cc (octave_value::next_subsref): Don't do anything if
-	error_state is true.
-
-	* cutils.c (octave_usleep) [HAVE_SELECT]: Introduce new local
-	scope for declaration of delay.
-	[HAVE_POLL]: Likewise, for delay and pfd.
-
-	* ov-base.cc (octave_base_value::bool_array_value):
-	Function takes no args.
-	* ov-base.h: Likewise, for decl.
-	* ov-bool-mat.h (boolNDArray::bool_array_value): Likewise.
-
-	* ov-fcn.cc, ov-fcn.h (octave_value::clone,
-	octave_value::empty_clone): Return type is octave_value*, not
-	octave_function*.
-
-2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-str-mat.h (octave_char_matrix_str::reshape): New function.
-	Force result to be a string.
-
-2003-10-29  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* data.cc (DATA_REDUCTION): Work on NDArray and ComplexNDArray
-	objects instead of Matrix and ComplexMatrix objects.
-
-2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool-mat.h (octave_bool_matrix::NDArray,
-	octave_bool_matrix::ComplexNDArray): New functions.
-
-	* ov-complex.cc (octave_complex::array_value,
-	octave_complex::complex_array_value): New functions.
-	* ov-complex.h: Provide decls.
-
-	* ov-scalar.cc (octave_scalar::array_value,
-	octave_scalar::complex_array_value): New functions.
-	* ov-scalar.h: Provide decls.
-
-	* oct-map.cc (Octave_map::reshape): New function.
-	* oct-map.h: Provide decl.
-
-	* ov-struct.h (octave_struct::reshape): New function.
-
-	* Cell.h (Cell:Cell (const Array<octave_value>&): New constructor.
-
-	* data.cc (Freshape): New function.
-	* ov.h (octave_value::reshape): New function.
-	* ov-base-mat.h (octave_base_matrix::reshape): New function.
-	* ov-base.cc (octave_base_value::reshape): New function.
-	* ov-base.h: Provide decl.
-
-	* DLD-FUNCTIONS/balance.cc: lscale and rscale args for dggbak are
-	const.  Use data() instead of fortran_vec where possible.
-	* DLD-FUNCTIONS/qz.cc: Likewise.
-
-	* data.cc (fill_matrix): Remove trailing singletons before
-	allocating the result matrix.
-
-	* input.cc (get_user_input): Don't forget about the diary here.
-
-2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-list.h (octave_list::nelem): Delete.
-	(octave_list::dims): New function.
-	* ov-range.h (octave_list::dims): New function.
-	* ov-struct.h (octave_struct::dims): New function.
-	* ov-base-scalar.h (octave_base_scalar::dims): New function.
-
-	* ov.h (octave_value::rows): No longer virtual.
-	* ov.cc (octave_value::rows): Provide common implementation.
-	* ov-base.h (octave_base_value::rows): Delete.
-	* ov-base-mat.h (octave_base_matrix<T>::rows): Delete.
-	* ov-base-scalar.h (octave_base_scalar<T>::rows): Delete.
-	* ov-struct.h (octave_struct::rows): Delete.
-	* ov-range.h (octave_range::rows): Delete.
-
-	* ov.h (octave_value::columns): No longer virtual.
-	* ov.cc (octave_value::columns): Provide common implementation.
-	* ov-base.h (octave_base_value::columns): Delete.
-	* ov-base-mat.h (octave_base_matrix<T>::columns): Delete.
-	* ov-base-scalar.h (octave_base_scalar<T>::columns): Delete.
-	* ov-struct.h (octave_struct::columns): Delete.
-	* ov-range.h (octave_range::columns): Delete.
-
-	* ov.h (octave_value::numel): No longer virtual.
-	* ov.cc (octave_value::numel): Provide common implementation.
-	* ov-base.h (octave_base_value::numel): Delete.
-	* ov-base-mat.h (octave_base_matrix<T>::numel): Delete.
-	* ov-base-scalar.h (octave_base_scalar<T>::numel): Delete.
-	* ov-struct.h (octave_struct::numel): Delete.
-
-	* ov-cs-list.h (octave_cs_list::dims): New function.
-	(octave_cs_list::length): Delete.
-
-	* ov.h (octave_value::ndims): No longer virtual.
-	* ov.cc (octave_value::ndims): Provide common implementation.
-	* ov-base.h (octave_base_value::ndims): Delete.
-	* ov-base-mat.h (octave_base_matrix<T>::ndims): Delete.
-	* ov-base-scalar.h (octave_base_scalar<T>::ndims): Delete.
-	* ov-struct.h (octave_struct::ndims): Delete.
-
-	* ov-cell.cc (Fcell): Make it work for N-d cells.
-
-	* Cell.h (Cell::Cell  (const dim_vector&, const octave_value&)):
-	New constructor.
-
-	* ov.h (octave_value::length): No longer virtual.
-	* ov.cc (octave_value::length): Provide common implementation.
-	* ov-base.h (octave_base_value::length): Delete.
-	* ov-base-mat.h (octave_base_matrix<T>::length): Delete.
-	* ov-base-scalar.h (octave_base_scalar<T>::length): Delete.
-	* ov-struct.h (octave_struct::length): Delete.
-	* ov-cs-list.h (octave_cs_list::length): Delete.
-	* ov-list.h (octave_list::length): Delete.
-	* ov-range.h (octave_range::length): Delete.
-
-	* load-save.cc (save_mat5_binary_element): Use numel instead of
-	array_length.
-	* ov-struct.cc (octave_struct::print_raw): Likewise.
-	* pt-loop.cc (tree_complex_for_command::eval): Likewise.
-	* oct-map.cc (Octave_map::numel): New function.
-	* oct-map.h: Provide decl.
-
-	* oct-map.cc, oct-map.h (Octave_map::array_length): Delete.
-	(common_size): New static function.
-	(Octave_map::assign): Make resizing work for N-d cell objects.
-
-	* oct-map.cc (Octave_map::dims): New function.
-	* oct-map.h: Provide decl.
-
-	* pr-output.cc 	(print_empty_nd_array): New static function.
-	(PRINT_ND_ARRAY): Use it.
-
-	* ov.h (octave_value::is_empty): No longer virtual.  Return value
-	based on numel.
-	* data.cc (Fisempty): Use it.
-	(Fnumel): New function.
-
-	* ov.h (octave_value::numel): New function.
-	* ov-base.h (octave_base_value::numel): Likewise.
-	* ov-base-mat.h (octave_base_matrix<T>::numel): Likewise.
-	* ov-base-scalar.h  (octave_base_scalar<T>::numel): Likewise.
-
-2003-10-27  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::is_true):
-	Only work for 2-dimensional objects.
-	* data.cc (ANY_ALL (FCN)): Allow dim to take values large than 2.
-
-	* ov.h (octave_value::ndims): New function.
-	* ov-base.h (octave_base_value::ndims): Likewise.
-	* ov-base-scalar.h (octave_base_scalar<T>::ndims): Likewise.
-	* ov-base-mat.cc (octave_base_matrix<MT>::ndims): New function.
-	(octave_base_matrix<MT>::length): Move here from ov-base-mat.h.
-	Make it work for N-d arrays.
-	* ov-base-mat.h (octave_base_matrix<MT>::ndims): Provide decl.
-	* data.cc (Fndims): New built-in function.
-
-2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/qz.cc:
-	Use new F77 arg macros in declarations of external Fortran
-	subroutines and for calling them.
-
-	* ops.h (DEFNDUNOP_OP, DEFNDUNOP_FN): New arg e, to name value
-	extractor function prefix.
-	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,	OPERATORS/op-m-m.cc:
-	Change all uses.
-
-	* ov-cx-mat.h (octave_complex_matrix::complex_array_value,
-	octave_char_matrix::char_array_value,
-	octave_bool_matrix::bool_array_value): Rename from array_value.
-	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
-	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-s-cm.cc: Use complex_array, char_array, and
-	bool_array as appropriate (instead of just array).
-
-	* ov-base.cc (octave_base_value::array_value,
-	octave_base_value::bool_array_value,
-	octave_base_value::complex_array_value,
-	octave_base_value::char_array_value): Provide default implementations.
-	* ov-base.h: Provide decls.
-
-	* ov.h (octave_value::array_value, octave_value::bool_array_value,
-	octave_value::complex_array_value, octave_value::char_array_value):
-	New virtual functions.
-
-2003-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-idx.cc (make_subs_cell): Pass dim_vector object to resize.
-
-	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type):
-	Use resize_and_fill for types.
-
-	* oct-obj.h (octave_value_list::maybe_resize): Use resize_and_fill.
-	(octave_value_list::resize (int, const octave_value&)): Likewise.
-
-	* oct-map.cc (Octave_map::assign): Use resize_and_fill as needed.
-
-	* Cell.h (Cell (void)): Default size is now 0x0.
-
-2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-cs-m.cc, OPERATORS/op-m-cm.cc, OPERATORS/op-s-cm.cc:
-	Include headers for N-d operators.
-
-2003-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ops.h (DEFNDUNOP_OP, DEFNDUNOP_FN, DEFNDBINOP_OP,
-	DEFNDBINOP_FN): New N-dimensional macros.
-	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
-	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
-	OPERATORS/op-cs-m.cc, OPERATORS/op-m-cm.cc,
-	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-m-s.cc, OPERATORS/op-s-cm.cc,
-	OPERATORS/op-s-m.cc: Use N-dimensional macros as appropriate.
-
-	* DLD-FUNCTIONS/rand.cc (do_rand, Frand, Frandn):
-	Handle N-dimensions.
-
-	* xpow.cc (elem_xpow (double, const NDArray&),
-	elem_xpow (double, const ComplexNDArray&),
-	elem_xpow (const NDArray&, double),
-	elem_xpow (const NDArray&, const NDArray&),
-	elem_xpow (const NDArray&, const Complex&),
-	elem_xpow (const NDArray&, const ComplexNDArray&),
-	elem_xpow (const Complex&, const NDArray&),
-	elem_xpow (const Complex&, const ComplexNDArray&),
-	elem_xpow (const ComplexNDArray&, double),
-	elem_xpow (const ComplexNDArray&, const NDArray&),
-	elem_xpow (const ComplexNDArray&, const Complex&),
-	elem_xpow (const ComplexNDArray&, const ComplexNDArray&):
-	New functions.
-	* xpow.h: Provide decls.
-
-	* xdiv.cc (x_el_div (double, const NDArray&),
-	x_el_div (double, const ComplexNDArray&),
-	x_el_div (const Complex, const NDArray&),
-	x_el_div (const Complex, const ComplexNDArray&)): New functions.
-	* xdiv.h: Provide decls.
-
-	* ov-bool-mat.h (boolNDArray::array_value): New function.
-	* ov-ch-mat.h (charNDArray::array_value): New function.
-	* ov-cx-mat.h (ComplexNDArray::array_value): New function.
-	* ov-re-mat.h (NDArray::array_value): New function.
-	(NDArray::double_nd_array_value): Delete.
-
-2003-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (text_getc): New static function.
-	(gobble_leading_white_space): Use it to simplify EOL processing.
-
-2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (fopen_mode_to_ios_mode): Ignore "t" in mode string.
-
-	* strfns.cc (Fischar): rename from Fisstr.
-
-2003-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (PRINT_ND_ARRAY): New macro.
-	(octave_print_internal): Use it.
-
-2003-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc	(octave_value::octave_value (const ArrayN<octave_value>&,
-	bool)):	New constructor.
-	* ov.h: Provide decl.
-
-	* ov.h (octave_value::squeeze): New virtual function.
-	* ov-base.cc (squeeze): Provide default implementation.
-	* ov-base-mat.h (octave_base_matrix::squeeze): New function.
-	* data.cc (Fsqueeze): New function.
-
-2003-10-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (make_valid_identifier): Return new string.
-	Arg is now string, not char *.
-	(ident_is_all_digits): New function.
-	(hdf5_read_next_data): Use it.
-
-2003-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (input_event_hook): Clear the event hook if hook_fcn
-	does not name a valid function.
-
-2003-10-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mappers.cc (xabs): New function.
-	(install_mapper_functions): Use it instead of abs for complex args
-	in Octave's abs mapper function.
-
-2003-09-27  Joseph P. Skudlarek  <Jskud@Jskud.com>
-
- 	* DLD-FUNCTIONS/minmax.cc (min, max): Use @deftypefn machinery,
- 	doc missing semantics, and add more examples to texinfo strings.
-
-2003-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_mat5_binary_element): Return early if the
-	miMATRIX element has length zero.
-
-2003-09-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (octave_cell::subsasgn): Also attempt empty
-	conversion after extracting single element from cell array to
-	allow things like x{i}.elt = rhs to work.
-
-2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::dim_vector): New function.
-
-	* ov.h, ov.cc (octave_value::octave_value (const Cell&)):
-	New arg, is_cs_list.
-	(octave_value::octave_value (const NDArray&)):
-	Create octave_matrix object, not octave_double_nd_array object.
-	(octave_value::octave_value (const ComplexNDArray&),
-	octave_value::octave_value (const boolNDArray&),
-	octave_value (const charNDArray&, bool)): New constructors.
-
-	* ov.h, ov.cc (octave_value::nil_rep): New function.
-	(octave_value::octave_value (void)): Use it to initialize empty
-	octave_value objects.
-
-	* ov-list.h, ov-list.cc (octave_list::octave_list (const Cell&)):
-	New constructor.
-	* ov-cs-list.h (octave_cs_list::octave_cs_list (const Cell&)):
-	Likewise.
-
-	* data.cc (Fsize): Handle N-d objects.
-
-	* pr-output.cc (octave_print_internal): New versions for NDArray,
-	ComplexNDArray, boolNDArray, and charNDArray objects.
-	* pr-output.h: Provide decls.
-
-	* ov-re-nd-array.h, ov-re-nd-array.cc: Delete.
-
-	* Cell.h, Cell.cc, ov-base-mat.h, ov-base-mat.cc, ov-bool-mat.h,
-	ov-bool-mat.cc, ov-ch-mat.h, ov-ch-mat.cc, ov-cx-mat.h,
-	ov-cx-mat.cc, ov-re-mat.h, ov-re-mat.cc, ov-str-mat.h,
-	ov-str-mat.cc: Now N-dimensional.
-
-	* oct-map.h, oct-map.cc: Now based on Cell ojects instead of
-	octave_value_list objects.  Change all uses.
-
-	* TEMPLATE-INST/Array-tc.cc: Also instantiate ArrayN objects.
-	Don't instantiate assign funcitons for Array2 objects.
-
-2003-09-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (symbols_of_pt_plot): Default for automatic replot is
-	now true.
-
-	* pr-output.cc (Fformat): Doc fix.
-	(current_output_max_field_width, current_output_precision):
-	New functions.
-	(float_format::float_format (int, int, int)): Use them to provide
-	default values for field width and precision.
-	(print_g): New static variable.
-	(set_real_format, set_real_matrix_format, set_complex_format)
-	(set_complex_matrix_format, set_range_format): Handle print_g.
-	(pr_float, pr_complex): Don't scale if using print_g.
-	(set_format_style): Accept new "g" and "G" modifiers for short and
-	long formats and set print_g.
-	Set default precision and width for short to 5, 10.
-	Set default precision and width for long to 15, 20.
-
-2003-09-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-m-cs.cc (complex_matrix_conv): Delete function.
-	(install_m_cs_ops): Don't install complex_matrix_conv here.
-
-	* OPERATORS/op-s-cs.cc (complex_matrix_conv): Delete function.
-	(install_s_cs_ops): Don't install complex_matrix_conv here.
-
-	* OPERATORS/op-s-s.cc (matrix_conv): Delete function.
-	(install_s_s_ops): Don't install matrix_conv here.
-
-	* OPERATORS/op-cs-s.cc (complex_matrix_conv): Delete function.
-	(install_cs_s_ops): Don't install complex_matrix_conv here.
-
-	* OPERATORS/op-cs-m.cc (complex_matrix_conv): Delete function.
-	(install_cs_m_ops): Don't install complex_matrix_conv here.
-
-	* OPERATORS/op-cs-cs.cc (complex_matrix_conv): Delete function.
-	(install_cs_cs_ops): Don't install complex_matrix_conv here.
-
-	* ov-typeinfo.cc (do_register_unary_op,
-	do_register_non_const_unary_op, do_register_binary_op,
-	do_register_assign_op, do_register_assignany_op,
-	do_register_pref_assign_conv, do_register_widening_op):
-	Print warning if installing a duplicate function.
-
-2003-09-10  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* data.cc, ov-base.cc, ov-base.h, ov.h, ov.cc, ov-re-mat.h,
-	ov-scalar.h, ov-re-nd-array.h, ov-re-nd-array.cc: Use NDArray, not
-	ArrayN<double>.
-
-2003-09-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::double_nd_array_value): New function.
-	(octave_value::is_real_nd_array): New function.
-
-	* ov-base.cc (octave_base_value::double_nd_array_value): New function.
-	* ov-base.h: Provide decl.
-	(octave_base_value::is_real_nd_array): New function.
-
-2003-09-09  Petter Risholm  <risholm@stud.ntnu.no>
-
-	* ov-re-mat.h (octave_matrix::double_nd_array_value): New function.
-	* ov-scalar.h (octave_scalar::double_nd_array_value): New function.
-
-	* ov-re-nd-array.cc (octave_double_nd_array::assign): New function.
-	(octave_double_nd_array::try_narrowing_conversion): Likewise.
-	(octave_double_nd_array::valid_as_scalar_index): Likewise.
-	(octave_double_nd_array::double_value): Likewise.
-	(octave_double_nd_array::matrix_value): Likewise.
-	(octave_double_nd_array::complex_value): Likewise.
-	(octave_double_nd_array::convert_slice_to_matrix): Likewise.
-	* ov-re-nd-array.h: Provide decls.
-	(octave_double_nd_array::is_real_nd_array): New function.
-	(octave_double_nd_array::double_nd_array_value): New function.
-	(octave_double_nd_array::double_nd_array_value): New function.
-
-	* OPERATORS/op-m-nd.cc, OPERATORS/op-nd-m.cc,
-	OPERATORS/op-nd-nd.cc, OPERATORS/op-nd-s.cc, OPERATORS/op-s-nd.cc:
-	New files.
-	* Makefile.in (OP_XSRC): Add them to the list.
-
-2003-09-09  David Bateman  <dbateman@free.fr>
-
-	* OPERATORS/op-cs-s.cc (DEFBINOP): First arg is complex, second is
-	double.
-
-2003-09-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-cell.cc (tree_cell::rvalue): Don't assume that the number of
-	elements in a tree_argument_list is the same as the number of
-	objects it contains (cs-list objects expand to more than one).
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
-	New function, extracted from tm_row_const::tm_row_const_rep::init.
-	(tm_row_const::tm_row_const_rep::init): Use it.
-	Also handle cs-list objects.
-
-	* ov-cs-list.cc (octave_cs_list::print_raw): New function.
-	* ov-cs-list.h (octave_cs_list::print_raw): Provide decl.
-	* ov-list.h (octave_list::lst): Now protected instead of private.
-
-2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (subplot_style::columns_ok): Allow boxes style to
-	have 2 columns as well.
-
-2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Fls): Check EAGAIN to avoid losing output.
-	* toplev.cc (run_command_and_return_output): Likewise.
-
-2003-08-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-str-s.cc, OPERATORS/op-str-m.cc: New files.
-	* Makefile.in (OP_XSRC): Add them to the list.
-
-2003-08-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (maybe_add_or_del_packages): Use source_file instead
-	of parse_and_execute.
-	* parse.y (source_file): New function.
-	(Fsource): Use it.
-	* parse.h (source_file): Provide decl.
-
-2003-08-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (octave_vsnprintf): Copy va_list to avoid using more
-	than once.
-
-2003-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (octave_vsnprintf): Call octave_raw_vsnprintf instead
-	of calling vsnprintf directly.
-	(octave_vsnprintf) [HAVE_C99_VSNPRINTF]: Declare nchars to be size_t.
-
-2003-08-06  Heine Kolltveit  <kolltvei@idi.ntnu.no>
-
-	* utils.cc (check_dimensions(Array<int>&, char),
-	get_dimensions(octave_value&, char, Array<int>&): New functions.
-	* utils.h (check_dimensions (Array<int>&, char),
-	get_dimensions (octave_value&, char, Array<int>&)): Provide decl.
-
-	* data.cc (fill_matrix): Also create N-d arrays.
- 	(Fones, Fzeros): Handle more than 2 args to create N-d arrays.
-
-2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (make_diag): Use std::abs instead of our own ABS macro.
-
-	* utils.cc (identity_matrix): Move here from data.cc.
-	(identity_matrix): Use std::min instead of our own MIN macro.
-
-	* utils.h (identity_matrix): Provide decl.
-
-	* DLD-FUNCTIONS/svd.cc (Fsvd): Improve handling of empty matrix arg.
-
-	* ov.cc (octave_value(const ArrayN<Complex>&)): New constructor.
-	* ov.h (octave_value(const ArrayN<Complex>&)): Provide decl.
-
-2003-07-30  Heine Kolltveit  <kolltvei@idi.ntnu.no>
-
-	* ov.cc (octave_value(const ArrayN<double>&)): New constructor.
-	* ov.h (octave_value(const ArrayN<double>&)): Provide decl.
-
-2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (Vpropagate_empty_matrices): Delete decl.
-	* ov.cc: (Vpropagate_empty_matrices): Delete.
-	(propagate_empty_matrices): Delete.
-	(symbols_of_ov): Delete DEFVAR for propagate_empty_matrices.
-
-	* utils.cc (empty_arg): Behave as though propagate_empty_matrices
-	is always 1.
-	* ov-range.cc (octave_range::is_true): Likewise.
-	* ov-base-mat.cc (octave_base_matrix<MT>::is_true): Likewise.
-
-	* octave.cc (maximum_braindamage): Also set
-	warn_matlab_incompatible to TRUE.
-
-	* lex.l (Vwhitespace_in_literal_matrix): Delete.
-	(whitespace_in_literal_matrix): Delete.
-	(symbols_of_lex): Delete DEFVAR for whitespace_in_literal_matrix.
-	(<MATRIX_START>{S}*\,{S}*, <MATRIX_START>{S}+,
-	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*,
-	<MATRIX_START>{S}*{NL}{SNLCMT}*, maybe_unput_comma): Behave as though
-	old Vwhitespace_in_literal_matrix varaible is always 1.
-
-	* octave.cc (maximum_braindamage): Don't set
-	whitespace_in_literal_matrix.
-
-2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Use $(INSTALL), not
-	$(INSTALL_PROGRAM) for $(SHLLIB) files.
-
-2003-07-29  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: Don't need special system.c for Cygwin.
-	* oct-procbuf.cc: Use popen rather than fork/exec for Windows.
-
-2003-07-28  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* sysdep.cc (CYGWIN_init): Convert TMPDIR to system agnostic path.
-
-2003-07-25  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* help.cc (try_info, display_help_text):
-	Protect spaces in filenames with quotes.
-	* oct-hist.cc (do_edit_history): Likewise.
-	* pt-plot.cc (open_plot_stream): Likewise.
-
-2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (get_size, octave_base_stream::error,
-	octave_base_stream::do_gets, octave_base_stream::getl,
-	octave_base_stream::gets, octave_base_stream::do_scanf,
-	octave_base_stream::scanf, octave_base_stream::do_oscanf,
-	octave_base_stream::oscanf, do_printf_conv,
-	octave_base_stream::do_printf, octave_base_stream::printf,
-	octave_base_stream::puts, octave_base_stream::invalid_operation,
-	octave_stream::getl, octave_stream::gets, octave_stream::scanf,
-	octave_stream::oscanf, octave_stream::printf, octave_stream::puts,
-	octave_stream::invalid_stream_error): Handle name of calling
-	function for error messages as a std::string object.  Change all
-	callers.
-
-	* file-io.cc (Fprintf, Fputs): New functions, so we can get
-	function prefixes on error messages right.
-	(Ffgetl, Ffgets, Ffprintf, Fsprintf, Fputs, Ffscanf, Fsscanf):
-	Pass name of calling function to octave_stream method.
-
-	* oct-stream.h (octave_base_stream::do_char_scanf,
-	octave_base_stream::do_real_scanf): Delete unused decls.
-
-	* load-save.cc (read_mat5_binary_element): Correctly read struct
-	arrays.
-
-	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
-	New args, warnfor and nargout.  Change all callers.
-	(symbols_of_pt_misc): New function.
-	(warn_undefined_return_values): New function.
-
-	* octave.cc (maximum_braindamage): Don't set
-	define_all_return_values.
-
-	* ov-usr-fcn.cc (ov_user_function::do_multi_index_op): Always
-	intiialize undefined elements in ret_list to [].
-	Never return last computed value.
-	(Vreturn_last_computed_value, Vdefine_all_return_values): Delete.
-	(return_last_computed_value, define_all_return_values): Delete.
-	(symbols_of_ov_usr_fcn): Delete DEFVARs for
-	return_last_computed_value, define_all_return_values, and
-	default_return_value.
-
-2003-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-misc.cc (tree_parameter_list::convert_to_const_vector):
-	Don't skip undefined elements.
-
-2003-07-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Don't set
-	default_global_variable_value or initialize_global_variables.
-
-	* pt-decl.cc (Vinitialize_global_variables): Delete.
-	(initialize_global_variables): Delete.
-	(symbols_of_pt_decl): Delete.
-	(tree_global_command::do_init): Default initial value is now
-	always [].
-
-2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Don't set default_eval_print_flag.
-
-	* parse.y (Vdefault_eval_print_flag): Delete:
-	(default_eval_print_flag): Delete.
-	(symbols_of_parse): Delete DEFVAR for default_eval_print_flag.
-	(Feval, Fevalin): Return empty octave_value_list and turn printing
-	on in eval_string if nargout is zero.
-
-	* ov-list.cc (octave_list::assign): Check
-	Vwarn_resize_on_range_error, not Vresize_on_range_error.
-
-	* ov.cc (Vwarn_resize_on_range_error): New variable.
-	(warn_resize_on_range_error): New function.
-	(symbols_of_ov): Add DEFVAR for warn_resize_on_range_error.
-
-	* ov.cc (Vresize_on_range_error): Delete.
-	(resize_on_range_error): Delete.
-	(symbols_of_ov): Delete DEFVAR for resize_on_range_error.
-
-	* pt-mat.cc (Vwarn_empty_list_elements): New variable.
-	(warn_empty_list_elements): New function.
-	(symbols_of_pt_mat): Add DEFVAR for warn_empty_list_elements.
-	(tm_row_const::tm_row_const_rep::init, tm_const::init):
-	Check Vwarn_empty_list_elements, not Vempty_list_elements_ok.
-
-	* pt-mat.cc (Vempty_list_elements_ok): Delete.
-	(empty_list_elements_ok): Delete.
-	(symbols_of_pt_mat): Delete DEFVAR for empty_list_elements_ok.
-
-2003-07-11  Russell Standish  <R.Standish@unsw.edu.au>
-
-	* TEMPLATE-INST/Array-tc.cc (resize_fill_value): Provide
-	specialization.
-
-2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strfns.cc (Fchar): Force string conversions without warnings.
-
-	* ov.h (octave_value::convert_to_str, octave_value::all_strings,
-	octave_value::string_value, octave_value:convert_to_str_internal):
-	New arg, force.  Fix all derived classes to match.
-
-	* strfns.cc (Fchar): Temporarily reset Vwarn_num_to_str to avoid
-	warnings.
-
-	* ov.cc (convert_to_str): New arg, force.
-
-	* octave.cc (maximum_braindamage): Don't set treat_neg_dim_as_zero.
-
-	* utils.cc (Vwarn_neg_dim_as_zero): New variable.
-	(warn_neg_dim_as_zero): New function.
-	(symbols_of_utils): Add DEFVAR for warn_neg_dim_as_zero.
-	(check_dimensions): Check Vwarn_neg_dim_as_zero, not
-	Vtreat_neg_dim_as_zero.
-
-	* utils.cc (Vtreat_neg_dim_as_zero): Delete.
-	(treat_neg_dim_as_zero): Delete.
-	(symbols_of_utils): Delete DEFVAR for treat_neg_dim_as_zero.
-
-2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Don't set prefer_column_vectors.
-
-	* ov.cc (Vprefer_column_vectors): Delete.
-	(prefer_column_vectors): Delete.
-	(symbols_of_ov): Delete DEFVAR for prefer_column_vectors.
-
-	* octave.cc (maximum_braindamage): Don't set do_fortran_indexing.
-
-	* ov-re-mat.cc (octave_matrix::double_value,
-	octave_matrix::complex_value): Use Vwarn_fortran_indexing, not
-	Vdo_fortran_indexing.
-	* ov-range.cc (octave_range::double_value,
-	octave_range::complex_value): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::double_value,
-	octave_complex_matrix::complex_value): Likewise.
-	* ov-ch-mat.cc (octave_char_matrix::double_value,
-	octave_char_matrix::complex_value): Likewise.
-	* ov-bool-mat.cc (octave_bool_matrix::double_value,
-	octave_bool_matrix::complex_value): Likewise.
-
-	* ov.cc (Vwarn_fortran_indexing): New variable.
-	(warn_fortran_indexing): New function.
-	(symbols_of_ov): Add DEFVAR for warn_fortran_indexing.
-	(octave_value::vector_value, octave_value::int_vector_value,
-	(octave_value::complex_vector_value): Check
-	Vwarn_fortran_indexing, not Vdo_fortran_indexing.
-
-	* ov.h (Vwarn_fortran_indexing): Provide decl.
-
-	* ov.cc (Vdo_fortran_indexing): Delete unused variable.
-	(do_fortran_indexing): Delete unused function.
-	(symbols_of_ov): Delete DEFVAR for do_fortran_indexing.
-	* ov.h (Vdo_fortran_indexing): Delete decl.
-
-	* ov.cc (octave_value::convert_to_str): Call convert_to_str_internal.
-	(octave_value::convert_to_str_internal): New virtual function.
-	Rename all derived class convert_to_str functions to match.
-
-	* variables.cc (generate_struct_completions): Set
-	discard_warning_messages, not Vwarning_option.  Also protect
-	warning_state.
-
-	* parse.y (fold): Temporarily discard warning messages.
-	Also protect warning_state.
-
-	* error.cc (discard_warning_messages): New variable.
-	(vwarning): Use it.
-	(warning): Don't print backtrace if discard_warning_messages is true.
-
-	* ov.cc (octave_value::convert_to_str):
-	Handle type conversion warning here.
-
-	* gripes.cc (gripe_implicit_conversion):
-	New function accepting std::string args.
-
-	* octave.cc (maximum_braindamage): Don't set
-	implicit_num_to_str_ok or implicit_str_to_num_ok.
-
-	* ov-base.cc (octave_base_value::char_matrix_value):
-	Vimplicit_num_to_str_ok no longer exists.
-	(octave_base_value::all_strings): Likewise.
-	(octave_base_value::string_value): Likewise.
-
-	* ov-str-mat.cc (octave_char_matrix_str::matrix_value): Warn based
-	on Vwarn_str_to_num instead of Vimplicit_str_to_num_ok.
-
-	* ov.cc (Vwarn_num_to_str, Vwarn_str_to_num): New variables.
-	(warn_num_to_str, warn_str_to_num): New functions.
-	(symbols_of_ov): Add DEFVARs for warn_num_to_str and Vwarn_str_to_num.
-	* ov.h (Vwarn_num_to_str, Vwarn_str_to_num): Provide decl.
-
-	* ov.cc (Vimplicit_num_to_str_ok, Vimplicit_str_to_num_ok):
-	Delete unused variables.
-	(implicit_num_to_str_ok, implicit_str_to_num_ok):
-	Delete unused functions.
-	(symbols_of_ov): Delete DEFVARs for implicit_num_to_str_ok and
-	implicit_str_to_num_ok.
-	* ov.h (Vimplicit_num_to_str_ok, Vimplicit_str_to_num_ok):
-	Delete decls.
-
-	* pt-mat.cc (tree_matrix::rvalue): Vimplicit_num_to_str_ok no
-	longer exists.
-
-	* ov.cc (Vwarn_imag_to_real): New variable.
-	(warn_imag_to_real): New function.
-	(symbols_of_ov): Add DEFVAR for warn_imag_to_real.
-	* ov.h (Vwarn_imag_to_real): Provide decl.
-
-	* ov.cc (Vok_to_lose_imaginary_part): Delete unused variable.
-	(ok_to_lose_imaginary_part): Delete unused function.
-	(symbols_of_ov): Delete DEFVAR for ok_to_lose_imaginary_part.
-	* ov.h (Vok_to_lose_imaginary_part): Delete decl.
-
-	* ov-complex.cc (octave_complex::double_value): Warn based on
-	Vwarn_imag_to_real instead of Vok_to_lose_imaginary_part.
-	(octave_complex::matrix_value): Likewise.
-	* ov-cx-mat.cc (octave_complex_matrix::double_value): Likewise.
-	(octave_complex_matrix::matrix_value): Likewise.
-
-	* octave.cc (maximum_braindamage): Don't set ok_to_lose_imaginary_part.
-
-2003-07-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (sig_hup_or_term_handler): New function.
-	(install_signal_handlers): Install sig_hup_or_term_handler for
-	SIGHUP and SIGTERM instead of generic_sig_handler.
-	(Vsighup_dumps_octave_core, Vsigterm_dumps_octave_core):
-	New static variables.
-	(sighup_dumps_octave_core, sigterm_dumps_octave_core):
-	New static functions.
-	(symbols_of_sighandlers): Add DEFVARs for sighup_dumps_octave_core
-	and sigterm_dumps_octave_core.
-
-	* defaults.h.in (OCTAVE_LOCALAPIFCNFILEDIR, OCTAVE_LOCALAPIOCTFILEDIR):
-	Subsitute new variables.
-
-	* defun.cc (check_version): Compare version to OCTAVE_API_VERSION,
-	not OCTAVE_VERSION.  Mismatch is now fatal.
-	* defun-int.h (DEFINE_FUN_INSTALLER_FUN3): Pass
-	OCTAVE_API_VERSION instead of OCTAVE_VERSION to check_version.
-	* version.h (OCTAVE_API_VERSION): New macro, initial value api-v1.
-
-	* defaults.cc (Vdefault_exec_path): New static variable.
-	(set_default_default_exec_path): New function.
-	(install_defaults): Call it.
-	(exec_path): Use it.
-	(default_exec_path): New function.
-	(symbols_of_defaults): Add DEFVAR for DEFAULT_EXEC_PATH.
-
-2003-07-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.h.in (OCTAVE_LOCALSTARTUPFILEDIR, OCTAVE_STARTUPFILEDIR):
-	Set values directly instead of constructing them.
-
-2003-06-28  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
-
-	* toplev.cc (octave_config_info): Key for OCTAVE_CONF_DEFS should
-	be DEFS, not UGLY_DEFS.
-
-2003-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.50.
-
-2003-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (symbol_exist): Distinguish between user and dld
-	functions loaded in memory.
-
-2003-06-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mat.cc (tm_row_const::init, tm_const::init): Don't ignore
-	empty matrices that have one non-zero dimension.
-
-	* variables.cc (symbol_exist): Use dir_path::find_first_of to
-	search for .oct and .m files.
-
-	* ov-base.cc (octave_base_value::subsasgn): Also allow type
-	conversion for empty numeric objects with more than one index.
-	* ov-base-mat.cc (octave_base_matrix<T>::subsasgn): Likewise.
-
-2003-06-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (do_who): New arg, return_list.  If return_list is
-	true, return values in cell or struct arrays instead of printing.
-	(Fwho, Fwhos): If nargout is 1, ask do_who to return lists of values.
-	* oct-map.h (Octave_map (const std::string&, const octave_value_list&):
-	New constructor.
-
-2003-06-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-idx.cc (tree_index_expression::rvalue):
-	Correctly handle index expressions like x(end).f(end).
-	(tree_index_expression::lvalue): Likewise.
-
-	* pt-arg-list.cc (F__end__): Add nr, nc info to error messages.
-
-2003-06-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (set_format (const Matrix&, int&, double&)): Ask
-	any_element_is_negative to return true for negative zero as well.
-	(set_format (const ComplexMatrix&, int&, int&, double&)): Likewise.
-
-2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (main_loop): Set octave_interrupt_hook and
-	octave_bad_alloc_hook to unwind_protect::run_all here.
-	(recover_from_exception): Don't call unwind_protect::run_all here.
-
-	* pt-except.cc (do_catch_code): Return immediately if
-	octave_interrupt_immediately is nonzero.
-
-	* sighandlers.cc (sigint_handler): If jumping, don't set
-	octave_interrupt_state.
-
-2003-06-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (get_save_type): Avoid all save types other than
-	LS_DOUBLE to avoid apparent Matlab bugs.
-
-2003-06-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (frob_function, parse_fcn_file): Handle help_buf as
-	stack of strings.
-	* lex.l ({CCHAR}): Handle help_buf as stack of strings.
-	Store text returned from grab_help_text in help_buf here.
-	(reset_parser): Handle help_buf as stack of strings.
-	(prep_for_nested_function): Push empty string onto help_buf stack.
-	(grab_help_text): Return help text instead of storing it in help_buf.
-	* parse.h, parse.y (help_buf): Now a stack of strings.
-
-	* oct-stream.cc (printf_value_cache::string_value): Don't attempt
-	to extract values when none are available.
-
-2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (Vgnuplot_has_multiplot): Delete variable.
-	(gnuplot_has_multiplot): Delete.
-	(symbols_of_pt_plot): Delete DEFVAR for gnuplot_has_multiplot.
-
-2003-05-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.49.
-
-2003-05-28  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
-
-	* load-save.cc (save_mat5_binary_element, save_mat_binary_data):
-	Allow saving of non-7-bit ASCII characters.
-
-2003-05-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (FINISH_CHARACTER_CONVERSION,
-	octave_base_stream::do_scanf): Do a better job of resizing for
-	charachter conversions.
-
-2003-05-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cx-mat.cc (octave_complex_matrix::assign): Move definition here.
-	* ov-cx-mat.h: From here.
-
-2003-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-range.cc (octave_range::try_narrowing_conversion): Convert to
-	[](1x0) instead of [](0x0) if range is empty.
-
-2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Handle DESTDIR.
-
-2003-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: Use yyunput (X, yytext) instead of unput (X) for newer
-	versions of flex.
-
-2003-05-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.48.
-
-2003-05-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.47.
-
-2003-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_ascii_data): If saving a range with
-	non-integer base, limit, or increment, save as matrix instead.
-	(get_save_type): Avoid unsigned types.
-
-2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (initialize_pathsearch): Don't save old and set new
-	value of TEXMFDBS.
-
-	* toplev.cc (restore_texmfdbs_envvar): Delete function.
-	(Fsystem): Don't set and reset TEXMFDBS.
-
-	* toplev.h, toplev.cc (octave_original_texmfdbs): Delete variable.
-
-2003-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/getpwent.cc (Fgetpwnam): Delete unnecessary
-	c_str() method.
-
-2003-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc: Include <memory> for auto_ptr.
-
-2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (octave_config_info): Delete LIBKPATHSEA from struct.
-	* oct-conf.h.in: Don't substitute LIBKPATHSEA.
-
-	* octave.cc (octave_main): Don't call dir_path::set_program_name.
-
-2003-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-file.h (octave_file::empty_clone): Create an octave_scalar
-	object, not an octave_file object.
-
-2003-04-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (hdf5_read_next_data): Extract list before
-	assigning to map element.
-	(add_hdf5_data): Prefix faked names with '_' so they are valid
-	identifiers.
-
-2003-03-24  Mats Jansson  <mats.e.jansson@home.se>
-
-	* syscalls.cc (Fkill): Fixed docstring typo.
-
-2003-03-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.h (octave_cell::is_matrix_type): New function.
-
-2003-03-09  Duncan Temple Lang  <duncan@research.bell-labs.com>
-
-	* octave.cc (octave_main): New arg, embedded.
-	* octave.h: Fix decl.
-	* main.c: Pass 0 for embedded here.
-
-2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.46.
-
-	* oct-conf.h.in: Undo previous change.
-
-	* load-save.cc (read_mat5_binary_element): Handle structure arrays.
-	(save_mat5_binary_element): Likewise.
-
-2003-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (octave_cell::subsasgn): Use make_unique in
-	appropriate places to preserve copy on write semantics.
-
-	* oct-conf.h.in: Substitute OCTAVE_CONF_KPATHSEA_INCFLAGS.
-
-	* oct-stdstrm.h (octave_stdiostream::output_stream): Return stream
-	if mode is out, not in.
-
-2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strfns.cc (Fchar): New function.
-
-	* ov-cell.cc (octave_cell::all_strings): Allow elements to be
-	string arrays.
-	* ov.cc (octave_value::all_strings, octave_value::convert_to_str):
-	New optional arg, pad.  Change all derived classes.
-
-	* ov-struct.cc (Ffieldnames, Fisfield): Move here from data.cc.
-
-	* data.cc (Ffieldnames): Rename from Fstruct_elements.  Return
-	cell array instead of a string array.
-	(Fisfield): Rename from struct_contains.
-
-2003-02-22  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* toplev.cc: Put config info in array of strings, then convert to map.
-
-2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (symbol_exist): For names like foo.bar, don't omit
-	the part after the dot.
-
-2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (fun_to_call): New static variable.
-	(octave_main): Pass it to main_loop.
-	(long_opts): Accept --funcall.
-	(usage_string, verbose_usage): Add --funcall.
-
-	* toplev.cc (main_loop): New arg, fun_to_call.  If non-empty,
-	evaluate this function before continuing.
-
-2003-02-21  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* file-io.cc (Fmkstemp): Use OCTAVE_LOCAL_BUFFER instead of using
-	std::auto_ptr directly.
-
-2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h, ov.cc (octave_value (long long int)): New constructor.
-	(octave_value (unsigned long long int)): Likewise.
-
-	* oct-obj.h (octave_value_list::operator delete): Handle systems
-	with or without placement delete.
-
-2003-02-21  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* utils.cc (octave_vsnprintf): Return value of vsnprintf is int,
-	not size_t.  Make sure there is some space left in the buffer for
-	vsnprintf versions which return the number of characters written
-	even when the buffer is too short.
-
-2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* debug.cc (get_user_function): Use dynamic_cast, not static_cast.
-
-	* ov-usr-fcn.cc (octave_user_function::traceback_error): Now const.
-
-	* ov.cc (octave_value (const octave_fcn_handle&)): New constructor.
-	(octave_value::fcn_handle_value): New virtual function.
-	* ov-base.cc (octave_value::fcn_handle_value): Provide default.
-	* ov-usr-fcn.cc (octave_user_function::stash_fcn_file_name): New
-	arg, nm.  Change all callers.
-	* ov-fcn.h (octave_function::is_nested_function): New virtual function.
-	* parse.y (get_feval_args): New function.
-	(feval (octave_function *, const octave_value_list&, int)): Likewise.
-	(feval (const octave_value_list&, int)): Allow the first arg to be
-	a function handle as well as a string.
-	* variables.cc (load_function): New function.
-	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc, pt-check.h, pt-check.cc,
-	pt-bp.h, pt-bp.cc: Handle new tree_fcn_handle class.
-	* pt-all.h: Include pt-fcn-handle.h.
-	* pt-fcn-handle.h, pt-fcn-handle.cc, ov-fcn-handle.h,
-	ov-fcn-handle.cc: New files.
-
-2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (FCN_HANDLE): New token type.
-	(fcn_handle): New non-terminal.
-	(primary_expr): Also accept fcn_handle.
-	(tree_fcn_handle_type): New %type.
-	(union): New field, tree_fcn_handle_type.
-	(make_fcn_handle): New function.
-
-	* lex.l (@{IDENT}): Recognize function handle syntax.
-	(@): Don't recognize "@" as a single token.
-
-	* load-save.cc (struct hdf5_callback_data): Provide constructor.
-	(hdf5_callback_data::name, hdf5_callback_data::doc): Now
-	std::string instead of char*.  Change all uses.
-
-2003-02-18  Roger Banks  <rbanks@colsa.com>
-
-	* load-save.cc (read_ascii_data, read_ascii_data,
-	read_mat5_binary_element, save_mat5_binary_element,
-	save_ascii_data): Handle cell arrays.
-	(write_mat5_cell_array): New function.
-
-2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DLD_XSRC): Delete log.cc from the list.
-	Add sqrtm.cc to the list.
-
-	* DLD-FUNCTIONS/log.cc: Delete.
-
-2003-02-18  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* DLD-FUNCTIONS/sqrtm.cc: New file.
-
-2003-02-18  David Bateman  <dbateman@free.fr>
-
-	* DLD-FUNCTIONS/lu.cc (Flu): Allow non-square matrices.
-
-2003-02-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_binary_file_header, do_load, do_save,
-	write_header): No longer static.
-	(load_save_format): Move enum decl to load-save.h.
-
-2003-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stdstrm.h, oct-stdstrm.cc (octave_base_stdiostream,
-	octave_iostdiostream, octave_istdiostram, octave_ostdiostream):
-	Combine all functionality into one class, octave_stdiostream.
-	Change all uses.
-
-	* file-io.cc (Ftmpfile, Fmkstemp): New functions.
-	* oct-stdstrm.h (octave_iostdiostream): New class.
-	(octave_istdiostream::octave_istdiostream,
-	octave_istdiostream::create,
-	octave_ostdiostream::octave_ostdiostream, octave_ostdiostream::create,
-	octave_iostdiostream::octave_iostdiostream,
-	octave_iostdiostream::create): Make close function the last arg.
-	Change all uses.
-
-	* c-file-ptr-stream.h (io_c_file_ptr_stream): New class.
-
-2003-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Set boolean built-in variables
-	to true and false instead of 1.0 and 0.0.
-	(octave_main): Likewise.
-	* error.cc (Fwarning): Likewise.
-
-	* pager.cc (Fmore): Make the no-arg case work too.
-
-	* ov-str-mat.h (octave_char_matrix_str::is_real_type,
-	octave_char_matrix_str::is_matrix_type,
-	octave_char_matrix_str::is_numeric_type): Always return false.
-
-2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (<CCHAR>): If we are parsing a command, reset start state.
-	Use BEGIN (INITIAL) instead of BEGIN 0.  Use parens around start
-	state in BEGIN statements.
-
-2003-02-13  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* variables.cc (Fmlock, Fmunlock, Fmislocked): New functions.
-
-	* variables.cc (mlock, munlock, mislocked): New functions.
-	* variables.h: Provide decls.
-
-	* symtab.h (symbol_record::unmark_static): New function.
-
-2003-02-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (reset_error_handler): New function.
-	* toplev.cc (main_loop): Use it here.
-	* lex.l (reset_parser): Don't set error_state and warning_state here.
-	* parse.y (eval_string): Reset parser before calling yyparse.
-
-2003-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Ffmod): New function.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::underflow_common): New
-	function.
-	* c-file-ptr-stream.h (c_file_ptr_buf::underflow,
-	c_file_ptr_buf::uflow): Use it.
-	(c_file_ptr_buf): Derive from std::streambuf, not OCTAVE_STD_FILEBUF.
-	Don't cache file descriptor.
-
-2003-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/minmax.cc: Move min and max functions from here to
-	liboctave/dMatrix.cc and liboctave/CMatrix.cc.
-
-2003-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/rand.cc: Rewrite to use new octave_rand functions.
-
-2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_printf): Handle values
-	outside the range of integers in int conversions for
-	compatibilitiy wtih Matlab.
-
-2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (get_mat_data_input_line): Handle lines with CR
-	only as separator.
-
-	* oct-stream.cc (octave_base_stream::do_printf): Handle Inf and
-	NaN in int conversions for compatibility with Matlab.
-
-	* data.cc (symbols_of_data): Doc fix for realmin.
-
-	* cutils.c (octave_raw_vsnprintf): New function.
-	* utils.cc (octave_snprintf): Move here from cutils.c.
-	(octave_Vsnprintf): Likewise.  Allow octave_raw_vsnprintf to be
-	interrupted.
-	* utils.h (octave_vsnprintf, octave_snprintf): No longer extern "C".
-
-2003-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-loop.cc (tree_complex_for_command::eval): Fix typo.
-
-2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* mk-oct-links: Use $SED if set.
-	* mkbuiltins: Likewise.
-	* mkdefs: Likewise.
-	* mkdocs: Likewise.
-	* mkgendoc: Likewise.
-	* mkops: Likewise.
-
-2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in (gendoc$(BUILD_EXEEXT)): Pass $(BUILD_CXXFLAGS) and
-	$(BUILD_LDFLAGS) to compiler.
-
-2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (Fassignin): New function.
-
-2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (make_sig_struct): New function.
-	(symbols_of_sighandlers): Add DEFCONST for SIG struct.
-
-	* syscalls.cc (Fkill): New function.
-
-2003-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (get_size): If only one dimension is specified and
-	it is zero, also set the other dimension to zero instead of one.
-
-2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc [__DECCXX]: Add a kluge for some missing template
-	functions.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (octave_vr_val): Assert vr_list != 0, not vr_list.
-	* variables.cc (builtin_string_variable, builtin_any_variable,
-	builtin_real_scalar_variable, bind_builtin_variable): Likewise.
-
-	* TEMPLATE-INST/Array-tc.cc: Provide specialization of
-	Array<octave_value>::resize_fill_value before instantiation of
-	Array<octave_value>.
-
-	* oct-obj.h (octave_value_list::operator delete): Define version
-	of delete operator to correspond to placement new operator.
-
-	* mkgendoc: In generated code, define __USE_STD_IOSTREAM if using
-	Compaq C++.
-
-	* Makefile.in (distclean): Also remove doc-files and gendoc.cc.
-
-	* input.cc (initialize_command_input): Use const for
-	initialization of char * from literal string.
-
-	* pt-plot.cc (subplot::extract_plot_data): Call single_subsref,
-	not subsref.
-	* ov.h, ov.cc (single_subsref (const std::string&, const
-	octave_value_list&)): Rename from subsref.
-
-	* symtab.cc (symbol_table::rename): Explicitly convert C string to
-	std::string so type of second arg of ?: matches third.
-	(symbol_table::lookup): Likewise.
-
-	* mappers.cc: Remove std:: qualifiers from C library names.
-
-2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-exp.h (tree_expression::has_magic_end): New pure virtual function.
-	* pt-id.h (tree_identifier::has_magic_end): New function.
-	* pt-colon.h (tree_colon_expression::has_magic_end): Likewise.
-	* pt-idx.h (tree_index_expression::has_magic_end): Likewise.
-	* pt-const.h (tree_constant::has_magic_end): Likewise.
-	* pt-unop.h (tree_unary_expression::has_magic_end): Likewise.
-	* pt-binop.h (tree_binary_expression::has_magic_end): Likewise.
-	* pt-assign.h (tree_multi_assignment::has_magic_end): Likewise.
-	(tree_simple_assignment::has_magic_end): Likewise.
-	* pt-mat.cc (tree_matrix::has_magic_end): Likewise.
-	* pt-arg-list.cc (tree_argument_list::has_magic_end): Likewise.
-
-	* pt-arg-list.cc (tree_argument_list::append): Check all
-	expression types for magic end token..
-
-	* file-io.cc (Ftmpnam): Improve error checking.
-	(symbols_of_file_io): Move definition of P_tmpdir here from dirfns.cc.
-
-	* dirfns.cc (symbols_of_dirfns): Install new built-in constant
-	P_tmpdir.
-
-2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (symbols_of_dirfns): New function.
-	Install new built-in constant filesep.
-
-	* utils.cc (Fisvaranme): New function.
-	(valid_identifier): Identifiers can't start with digits!  Doh!
-
-	* lex.l (Fiskeyword): New function.
-
-	* Makefile.in (INCLUDES): Don't forget base-list.h.
-
-	* symtab.cc (symbol_record::define): If definition already exists,
-	redefine it instead of replacing it.
-
-	* variables.cc (symbol_exist): Don't use reference when handling
-	sr->def ().
-
-	* pt-plot.cc (save_in_tmp_file): octave_value arg is now const.
-	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
-	Likewise.
-
-	* symtab.cc (symbol_record::clear): Don't do anything if the
-	symbol record is already undefined.
-
-2003-01-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-arg-list.cc (tree_argument_list::append): New function.
-	(tree_argument_list::convert_to_const_vector): Don't save and
-	set pointer to indexed object if list_includes_magic_end is false.
-	* pt-arg-list.h (tree_argument_list::append): Provide decl.
-	(tree_argument_list::list_includes_magic_end): New data member.
-	(tree_argument_list::tree_argument_list): Initialize it.
-
-	* ov-base.cc (octave_base_value::char_matrix_value,
-	octave_base_value::all_strings,	octave_base_value::string_value):
-	Attempt conversions here if Vimplicit_num_to_num_ok is true.
-
-	* ov.cc (Vimplicit_num_to_str_ok): Move here from pt-mat.cc and
-	make extern.
-	* ov.h: Provide decl.
-
-	* oct-stream.cc (printf_value_cache::looking_at_string): Delete.
-	(printf_value_cache::string_value): Just attempt conversion.
-	(octave_base_stream::do_printf): When doing '%s' format,
-	just attempt converstion.
-
-	* file-io.cc (Ffread): Allow size to be omitted even when
-	additional arguments are given.
-
-2002-12-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-arg-list.cc (F__end__): Fail if rows or columns is negative.
-	(tree_argument_list::convert_to_const_vector): Only protect and
-	save pointer to the indexed object if it is a constant.
-
-	* syscalls.cc (Fmkfifo): Use long_value instead of cast.
-
-	* ov.h (octave_value::short_value, octave_value::ushort_value,
-	octave_value::uint_value, octave_value::long_value,
-	octave_value::ulong_value): New functions.
-
-	* syscalls.cc (mk_stat_map, Fgetegid, getgid, geteuid): Likewise.
-	Delete unnecessary casts.
-	* file-io.cc (Ffgetl, Ffgets, Fftell, Fsscanf): Likewise.
-	* toplev.cc (Fsystem): Likewise.
-
-	* ov-file.h (octave_file::double_value,	octave_file::scalar_value):
-	Delete unnecessry cast.
-
-	* ov.cc (octave_value::octave_value): Add constructors for
-	octave_time, short int, unsigned short int, unsigned int, long
-	int, unsigned long int,
-
-	* ov.h (octave_value::do_subsref (const std::string&, const
-	octave_value_list&)): Rename from subsref.  Change all derived classes.
-
-	* input.cc (generate_completion): Delete unused variable prefix_len.
-
-	* ov.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Delete volatile
-	qualifier for decls of static_type_id and t_id.
-	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Likewise, for def of t_id.
-
-2002-12-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (Ffile_in_path): Index args correctly.
-
-	* utils.cc (Ffile_in_path): Call error, not print_usage, for
-	invalid option error.
-	(Ffile_in_loadpath): Likewise.
-
-	* load-save.cc: Use OCTAVE_LOCAL_BUFFER instead of local automatic
-	arrays or using new/delete.
-
-	* lex.l (.): Try another approach to handling EOF here.
-
-	* load-save.cc (read_mat_ascii_data): Use isalpha and isalnum, not
-	::isalpha and ::isalnum.
-
-	* defaults.cc (maybe_add_or_del_packages): SCRIPT_FILE arg is now
-	a const reference type.
-
-	* ov.h (octave_value::subsref, octave_value::subsasgn,
-	octave_value::assign, octave_value::do_non_const_unary_op,
-	octave_value::numeric_assign): TYPE arg is now a const reference
-	type.  Change all derived classes.
-
-	* ov.cc (octave_value::subsref (const std::string&, const
-	octave_value_list&)): Move body here, from ov.h.
-
-	* octave.cc (octave_main): Return 0 at end of function to avoid
-	compiler warnings.
-
-2002-12-30  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* parse.y: Fix typo in doc string.
-
-2002-12-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/lpsolve.cc (Flpsolve): Rename from Flp_solve.
-	(Flpsolve_options): Rename ffrom Flp_solve_options.
-
-2002-12-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (Fevalin): New function.
-
-	* variables.cc (curr_caller_sym_tab): New global variable.
-	* variables.h: Provide decl.
-	(initialize_symbol_tables): Initialize it.
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Protect	and set it here.
-
-2002-12-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (search_path_for_file): Second arg now string_vector.
-	Use find_first_of, not find.
-	(search_path_for_all_files): Second arg now string_vector.
-	Use find_all_first_of, not find_all.
-	(Ffile_in_path): Accept cell array of strings as first argument.
-	(Ffile_in_loadpath): Likewise.
-
-	* dynamic-ld.cc (octave_dynamic_loader::load): New arg, file_name.
-	(octave_dynamic_loader::do_load): Likewise.  If file_name is not
-	empty, use it instead of searching in path.
-
-	* parse.y (load_fcn_from_file): Use find_first_of to perform search.
-
-	* ov-cell.cc (octave_cell::all_strings): New function.
-	* ov-cell.h: Provide decl.
-
-2002-12-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (function_end): If parsing a nested function, set
-	lexer_flags.parsing_nested_function to -1.
-	(frob_function): If lexer_flags.parsing_nested_function is
-	negative, set it to zero.
-	* lex.h (lexical_feedback::parsing_nested_function): Now int.
-	Change uses as needed.
-
-	* lex.l (NESTED_FUNCTION_BEGIN): Rename from NESTED_FUNCTION_START.
-	Now an exclusive start state.
-	(NESTED_FUNCTION_END): New exclusive start state.
-	(is_keyword): When matching a new function keyword in a nested
-	function context, explicitly return END and set start state to
-	NESTED_FUNCTION_END.
-	(.): Accept EOF here too.
-
-	* variables.cc (link_to_builtin_or_function): Maybe prepend parent
-	function name symbol name.
-
-	* parse.y (parent_function_name): New variable.
-	(fcn_name): New non-terminal.
-	(function2): Use it.
-	(parsed_fcn_name): Fold into fcn_name.
-	(function_end): Don't call check_for_garbage_after_fcn_def.
-	Set lexer_flags.parsing_nested_function on EOF.
-	* parse.h: Provide decl for parent_function_name.
-
-	* ov-usr-fcn.h (octave_user_function::mark_as_nested_function,
-	(octave_user_funciton::is_nested_function): New functions.
-	(octave_user_function::nested_function): New data member.
-	(octave_user_function::do_multi_index_op): Maybe protect and set
-	curr_parent_function pointer.
-	* parse.y (frob_function): Maybe mark as nested function.
-
-	* toplev.cc (curr_parent_function): New global variable.
-	* toplev.h: Provide decl.
-
-	* lex.l (check_for_garbage_after_fcn_def): Delete.
-	* lex.h: Delete decl.
-
-	* lex.l (prep_for_nested_function): New function.
-	(<NESTED_FUNCTION_START>): Use it here.
-	(is_keyword): And here.
-	(lookup_identifier): Maybe prepend parent function name.
-
-	* variables.cc (initialize_symbol_tables): Give names to the three
-	main symbol tables.
-	* symtab.cc (symbol_table::lookup, symbol_table::rename): Print
-	debugging info if Vdebug_symtab_lookups is nonzero.
-	(debug_symtab_lookups): New function.
-	(Vdebug_symtab_lookups): New static varaible.
-	(symbols_of_symtab): DEFVAR it.
-	* symtab.h (symbol_table::table_name): New member variable.
-	(symtab_count): New static member variable.
-	(symbol_table::symbol_table): Handle table name.
-
-2002-12-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (frob_function): Don't give nested functions the same
-	name as the function file.
-
-	* lex.h (lexical_feedback::parsing_nested_function): New data member.
-	* lex.l (lexical_feedback::init): Initialize it to false.
-	(<NESTED_FUNCTION_START>): Set lexer_flags.parsing_nested_function
-	to true.
-
-	* parse.y (symtab_context): Now a stack.  Change all uses.
-
-	* lex.l (NESTED_FUNCTION_START): New start state to handle
-	"function" keyword in a nested function context.
-	(prep_for_function): New function.
-	(is_keyword): Allow functions to be nested in function files.
-
-	* lex.l (is_keyword): Maybe ignore END tokens.
-	Increment and decrement end_tokens_expected as appropriate.
-	(handle_identifier): If is_keyword returns -1, return immediately.
-	({IDENT}{S}*): Do nothing if handle_identifier returns -1.
-
-	* parse.y (end_tokens_expected): New variable.
-	(parse_fcn_file): Protect and set it.
-
-	* parse.y (begin_obj_idx): Increment
-	lexer_flags.looking_at_object_index.
-	(postfix_expr): Decrement it as appropriate here.
-
-	* lex.h (lexical_feedback::looking_at_object_index): Now int.
-
-	* parse.y (postfix_expr): Reset	lexer_flags.looking_at_object_index
-	in () and {} cases too.
-
-2002-12-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-arg-list.cc (indexed_object, indexed_position):
-	New file-scope static variables.
-	(tree_argument_list::convert_to_const_vector): New arg, object.
-	Protect and set indexed_object and indexed_position.
-	(F__end__): New function.
-
-	* octave-lvalue.h (octave_lvalue::object): New member function.
-	* pt-idx.cc (make_value_list): New arg, object.  Change all
-	callers.  Pass object to convert_to_const_vector.
-
-	* lex.h (lexical_feedback.looking_at_object_index): New data member.
-	* lex.l (lexical_feedback::init): Initialize it.
-	(is_keyword): If looking at object index, end is not a keyword.
-	(handle_identifier): If end is not a keyword, transform it to __end__.
-	* parse.y (begin_obj_idx): New non-terminal.
-	(postfix_expr): Use it.
-
-	* defun.cc (install_builtin_function): New arg, can_hide_function.
-	* defun-int.h: Fix decl.
-	(DEFCONSTFUN_INTERNAL): New macro.
-	* defun.h (DEFCONSTFUN): New macro.
-	* mkbuiltins (XDEFCONSTFUN_INTERNAL): New macro.
-	* mkgendoc: Likewise.
-	* Makefile.in (DEFUN_PATTERN): Make it work for DEFCONSTFUN too.
-	* symtab.h (symbol_record::can_hide_function): New data member.
-	(symbol_record::symbol_record): Initialize it.
-	* symtab.cc (symbol_record::variable_reference): Also check
-	can_hide_function flag.
-
-2002-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/time.cc (extract_tm): Use int_value() instead of
-	casting double_value() to int.
-
-	* ov.cc (octave_value::next_subsref): Arg "skip" is now size_t.
-
-	* oct-obj.h (octave_value_list::octave_value_list (double),
-	octave_value_list::octave_value_list (const Matrix&),
-	octave_value_list::octave_value_list (const DiagMatrix&),
-	octave_value_list::octave_value_list (const RowVector&),
-	octave_value_list::octave_value_list (const ColumnVector&),
-	octave_value_list::octave_value_list (const Complex&),
-	octave_value_list::octave_value_list (const ComplexMatrix&),
-	octave_value_list::octave_value_list (const ComplexDiagMatrix&),
-	octave_value_list::octave_value_list (const ComplexRowVector&),
-	octave_value_list::octave_value_list (const ComplexColumnVector&),
-	octave_value_list::octave_value_list (const char *),
-	octave_value_list::octave_value_list (const std::string&),
-	octave_value_list::octave_value_list (const string_vector&),
-	octave_value_list::octave_value_list (double, double, double),
-	octave_value_list::octave_value_list (const Range&): Delete.
-	Adjust uses of octave_value/octave_value_list to handle this change.
-
-	* ov.cc (octave_value::octave_value (int)): New constructor.
-	* ov.h: Provide decl.
-	In files that construct integer-valued octave_value objects, use
-	ints instead of casing to double.
-
-2002-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_mat_ascii_data): Allow commas to separate values.
-	Try harder to convert filenames to valid identifiers in a
-	Matlab-compatible way.
-
-2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: No need to add $(LIBKPATHSEA) to LINK_DEPS, since
-	it is not included in liboctave.
-
-2002-12-18  JD Cole  <jdcole@san.rr.com>
-
-	* pt-check.cc (tree_checker::visit_subplot_axes,
-	tree_checker::visit_do_until_command): New functions.
-	* pt-check.h: Provide decl.
-
-2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fclear): Fix off-by-one error.
-
-	* oct-stream.cc (octave_base_stream::do_gets): Correctly read
-	last line of file even if it does not end with new line
-	character.
-
-	* pt-select.cc (equal): Don't look up == op, just try it and see
-	whether it works.
-
-	* oct-stream.cc (printf_format_list::printf_format_list):
-	Handle empty format string.
-
-2002-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mat.cc (class tm_row_const::tm_row_const_rep): Derive from
-	octave_base_list instead of SLList.  Fix tm_row_const member
-	functions as needed, change all uses.
-	(class tm_const): Derive from octave_base_list, not SLList.  Fix
-	member functions as needed, change all uses.
-	* pt-mat.h (class tree_matrix): Derive from octave_base_list
-	instead of including SLList object as data member.  Fix member
-	functions as needed, change all uses.
-
-	* pt-idx.h (tree_index_expression::args,
-	tree_index_expression::arg_nm, tree_index_expression::dyn_field):
-	Now std::list, not SLList.  Fix member functions as needed, change
-	all uses.
-
-	* oct-map.h (Octave_map::map): Now std::map instead of CHMap.
-	Fix member functions as needed, change all uses.
-
-	* oct-lvalue.h (octave_lvalue::idx): Now std::list instead of
-	SLList object.  Fix member functions as needed, change all uses.
-
-	* dynamic-ld.cc (octave_shlib_list::lib_list): Now std::list
-	instead of DLList object.  Fix member functions as needed, change
-	all uses.
-
-	* ov.h (octave_value::subsref, octave_value::subsasgn):
-	Index arg is not std::list, not SLList.  Change all derived
-	classes, all uses.
-
-	* pt-stmt.h (tree_statement_list): Derive from base_octave_list
-	object instead of including SLList object as data member.  Fix
-	member functions as needed, change all uses.
-	* pt-select.h (tree_switch_case_list): Likewise.
-	(tree_if_command_list): Likewise.
-	* pt-misc.h (tree_parameter_list, tree_return_list,
-	tree_va_return_list): Likewise.
-	* pt-plot.h (subplot_list): Likewise.
-	* pt-mat.h (tree_matrix): Likewise.
-	* pt-decl.h (tree_decl_init_list): Likewise.
-	* pt-arg-list.h (tree_argument_list): Likewise.
-	* comment-list.h (octave_comment_list): Likewise.
-
-	* BaseSLList.cc, DLList.cc, Map.cc, SLList.cc, SLStack.cc,
-	Stack.cc: Delete.
-	* Makefile.in (DIST_SRC): Delete them from the list.
-
-	* BaseSLList.h, DLList.h, Map.h, Pix.h, SLList.h, SLStack.h,
-	Stack.h: Delete
-	* Makefile.in (INCLUDES): Delete them from the list.
-
-	* Map-oct-obj.cc, SLList-expr.cc, SLList-misc.cc, SLList-plot.cc,
-	SLList-tc.cc, SLList-tm.cc: Delete.
-	* Makefile.in (TI_XSRC): Delete them from the list.
-
-	* ov-base-mat.cc (octave_base_matrix::assign): Pass
-	MT::resize_fill_value () as third arg for ::assign.
-
-	* Cell.h (Cell::resize_fill_value): Use empty Matrix object, not
-	undefined octave_value object.
-	(Cell::Cell (int, int, const octave_value&)): Use
-	resize_fill_value () as default value, not undefined octave_value
-	object.
-
-2002-12-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DEFUN_PATTERN): Make it work for DEFCMD too.
-
-	* base-list.h: New file.
-
-2002-12-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (octave_interpreter_ready): New global variable.
-	* toplev.h: Provide decl.
-
-	* octave.cc (octave_main): Call execute_default_pkg_add_files just
-	before executing startup files.  Set octave_interpreter_ready to
-	true before calling execute_default_pkg_add_files.
-
-	* defaults.cc (maybe_add_or_del_packages, default_load_path,
-	update_load_path_dir_path): New static functions.
-	(set_default_path, loadpath): Call update_load_path_dir_path.
-	(symbols_of_defaults): Use DEFVAR, not DEFCONST for DEFAULT_LOADPATH.
-	(execute_default_pkg_add_files): New function.
-	* defaults.h.in: Provide decl.
-
-	* utils.cc (search_path_for_all_files): New function.
-	(Ffile_in_loadpath, Ffile_in_path): Allow search to return all
-	files in the path.
-
-	* Cell.cc (Cell (const string_vector&)): New constructor.
-
-	* oct-obj.cc (octave_value_list::assign): Allow optional fill
-	value for resizing.
-	* oct-map.cc (Octave_map::assign): Pass fill_value in initial
-	assignment too.
-
-2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/Map-fnc.cc: Delete.
-	* Makefile.in (TI_XSRC): Delete them from the list.
-
-	* fn-cache.h (octave_fcn_file_name_cache::cache): Now std::map,
-	not CHMap.
-
-	* TEMPLATE-INST/SLStack-i.cc, TEMPLATE-INST/SLStack-ovl.cc,
-	TEMPLATE-INST/SLStack-pc.cc, TEMPLATE-INST/SLStack-str.cc,
-	TEMPLATE-INST/SLStack-sym.cc, TEMPLATE-INST/SLStack-tok.cc,
-	TEMPLATE-INST/SLStack-ue.cc, TEMPLATE-INST/SLStack-ui.cc:
-	Delete unnecessary files.
-	* Makefile.in (TI_XSRC): Delete them from the list.
-
-	* toplev.cc (octave_atexit_functions): Now std::stack, not SLStack.
-	* pt-plot.cc (tmp_files): Likewise.
-	* lex.l (token_stack): Likewise.
-	(class bracket_brace_paren_nesting_level): Make context a data
-	member instead of deriving from SLStack object.
-	Use std::stack instead of SLStack.
-	* ov-usr-fcn.h (octave_user_function::saved_args): Likewise.
-	* symtab.h (symbol_record::context): Likewise.
-	(symbol_record::global_link_context): Likewise.
-
-	* unwind-prot.h (unwind_protect::elt_list): Rename from list.
-	Now std::stack, not SLStack.
-
-	* pt-stmt.h (tree_statement_list): Make list member data instead
-	of deriving from SLList object.
-	* pt-select.h (tree_switch_case_list): Likewise.
-	(tree_if_command_list): Likewise.
-	* pt-plot.h (subplot_list): Likewise.
-	* pt-mat.h (tree_matrix): Likewise.
-	* pt-decl.h (tree_decl_init_list): Likewise.
-	* pt-arg-list.h (tree_argument_list): Likewise.
-	* comment-list.h (octave_comment_list): Likewise.
-
-	* defun.h (DEFCMD): Rename from DEFUN_TEXT.  Provide DEFUN_TEXT as
-	an alias for DEFCMD.  Change all uses.
-
-	* variables.cc (at_top_level): New function.
-	(do_who, Fmark_as_command, Funmark_command): Use it.
-
-	* lex.l (COMMAND_START): Rename from TEXT_FCN.  Change all uses.
-	(MATRIX_START): Rename from MATRIX.  Change all uses.
-	* variables.cc (command_function_set): Rename from
-	text_function_set.
-	(mark_as_command): Rename from mark_as_text_function.
-	(is_marked_as_command): Rename from is_marked_as_text_function.
-	(Fmark_as_command): Rename from Fmark_as_text_function.
-	(Funmark_command): Rename from Funmark_text_function.
-	(is_command_name): Rename from is_text_function_name.
-	* symtab.h (symbol_record::COMMAND): Rename from TEXT_FUNCTION.
-	(symbol_record::mark_as_command): Rename from mark_as_text_function.
-	(symbol_record::unmark_command): Rename from
-	symbol_record::unmark_text_function.
-	(symbol_record::is_command): Rename from
-	symbol_record::is_text_function.
-	(symbol_record::symbol_def::mark_as_command): Rename from
-	symbol_record::symbol_def::mark_as_text_function.
-	(symbol_record::symbol_def::unmark_command): Rename from
-	symbol_record::symbol_def::unmark_text_function.
-	(symbol_record::symbol_def::is_command): Rename from
-	symbol_record::symbol_def::is_text_function.
-
-	* pt-jump.h, pt-jump.cc: Undo previous changes.
-	* parse.y: Undo previous changes for brea, continue, and return.
-
-2002-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-stmt.cc (tree_statement::eval): Allow the lookup to execute
-	script files.  If script file has been executed, don't bother to
-	call expr->rvalue ().
-
-2002-11-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTINTERP_LINK_DEPS): Include $(FLIBS) in
-	OCTINTERP_LINK_DEPS.
-
-	* variables.cc (text_function_set): New static data.
-	(mark_as_text_function, unmark_text_function,
-	is_marked_as_text_function, Fmark_as_text_function,
-	Funmark_text_function): New functions.
-	(is_text_function_name): Handle functions marked as text functions
-	in special list, not just those marked in the symbol record.
-	* symtab.h (symbol_record::mark_as_text_function,
-	symbol_record::unmark_text_function,
-	symbol_record::symbol_def::mark_as_text_function,
-	symbol_record::symbol_def::unmark_text_function): New functions.
-
-	* oct-map.h (Octave_map::rows, Octave_map::columns): New functions.
-	* ov-struct.h (octave_struct::rows, octave_struct::columns,
-	octave_struct::length): New functions.
-
-2002-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_SH_LDFLAGS): New macro.
-	* toplev.cc (octave_config_info): Add it to the struct.
-
-	* lex.l (<TEXT_FCN>): If yytext begins with # or %, don't
-	recognize it as a string.
-
-	* oct-map.h (Octave_map::operator[]): New const version.
-	* oct-map.cc (equiv_keys): New function.
-	(assign (const idx_vector&, const Octave_map&)): New function.
-	* ov-struct.cc (octave_struct::subsasgn): Use it.
-
-2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.40.
-
-	* p-b-b.cc, op-bm-bm.cc, op-chm.cc, op-cm-cm.cc, op-cm-cs.cc,
-	op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc,
-	op-cs-s.cc, op-fil-b.cc, op-fil-bm.cc, op-fil-cm.cc, op-fil-cs.cc,
-	op-fil-lis.cc, op-fil-m.cc, op-fil-rec.cc, op-fil-s.cc,
-	op-fil-str.cc, op-list.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc,
-	op-m-s.cc, op-range.cc, op-s-cm.cc, op-s-cs.cc, op-s-m.cc,
-	op-s-s.cc, op-str-str.cc, op-bm-b.cc, op-cell.cc, BaseSLList.cc,
-	BaseSLList.h, ChangeLog, Map.cc, Map.h, SLList.cc, SLList.h,
-	SLStack.cc, SLStack.h, Stack.cc, Stack.h, oct-map.cc, oct-map.h,
-	oct-obj.cc, oct-obj.h, c-file-ptr-stream.cc, c-file-ptr-stream.h,
-	ov-base-mat.cc, ov-base-scalar.cc, ov-base-scalar.h, ov-base.cc,
-	ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h,
-	ov-builtin.cc, ov-builtin.h, ov-ch-mat.cc, ov-ch-mat.h,
-	ov-colon.cc, ov-complex.cc, ov-complex.h, ov.h, ov-cx-mat.cc,
-	ov-cx-mat.h, ov-fcn.cc, ov-fcn.h, ov-file.cc, ov-file.h,
-	ov-list.cc, ov-list.h, ov-mapper.cc, ov-mapper.h, ov-range.cc,
-	ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h,
-	ov-str-mat.cc, ov-str-mat.h, ov-struct.cc, ov-struct.h,
-	ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc, ov-usr-fcn.h,
-	ov-va-args.cc, ov.cc, ov-base-mat.h, procstream.cc, procstream.h,
-	pt-arg-list.cc, pt-arg-list.h, pt-binop.cc, pt-binop.h,
-	pt-check.cc, pt-check.h, pt-cmd.cc, pt-cmd.h, pt-colon.cc,
-	pt-colon.h, pt-const.cc, pt-const.h, pt-decl.cc, pt-decl.h,
-	pt-except.cc, pt-except.h, pt-exp.cc, pt-exp.h, pt-id.cc, pt-id.h,
-	pt-idx.cc, pt-idx.h, pt-jump.cc, pt-jump.h, pt-loop.cc, pt-loop.h,
-	pt-mat.cc, pt-mat.h, pt-misc.cc, pt-misc.h, pt-pr-code.cc,
-	pt-pr-code.h, pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h,
-	pt-unop.cc, pt-unop.h, pt.cc, pt.h, symtab.h, token.cc, token.h,
-	unwind-prot.cc, unwind-prot.h, ov-base-nd-array.cc,
-	ov-re-nd-array.h, ov-re-nd-array.cc, ov-base-nd-array.h,
-	comment-list.h, comment-list.cc, DLList.cc, DLList.h,
-	ov-dld-fcn.h, ov-dld-fcn.cc, Cell.cc, Cell.h, pt-cell.h,
-	pt-cell.cc, ov-cell.h, ov-cell.cc, pt-plot.cc, pt-plot.h,
-	pt-assign.cc, pt-assign.h, pt-bp.cc, pt-bp.h, symtab.cc,
-	ov-cs-list.h, ov-cs-list.cc:
-	Use "defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)" instead of
-	"! defined (NO_PRAGMA_INTERFACE_IMPLEMENTATION)".
-
-2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.h (octave_value_list::~octave_value_list): New function.
-
-2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/odessa.cc (odessa_user_j): Put T in args(1), not
-	args(0).
-
-2002-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (symtab_context): Now extern.
-	* parse.h: Provide decl.
-	* lex.l (reset_parser): Set it to 0.
-
-2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-bp.cc (octave_debug_on_interrupt_state): New global variable.
-	* pt-bp.h: Provide decl.
-	(MAYBE_DO_BREAKPOINT): Check it.
-
-	* sighandlers.cc (sigint_handler): Handle debug_on_interrupt.
-	(Vdebug_on_interrupt): New static variable.
-	(symbols_of_sighandlers): New function.  DEFVAR Vdebug_on_interrupt.
-	(debug_on_interrupt): New function.
-
-	* lex.h (YY_FATAL_ERROR): Use OCTAVE_QUIT here.
-
-	* utils.cc (toplevel): Delete variable.
-
-	* sighandlers.cc (OCTAVE_MEMORY_EXHAUSTED_ERROR): Delete.
-
-2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (octave_new_handler): Delete.
-	(install_signal_handlers): Don't call set_new_handler.
-	* toplev.cc (main_loop): Handle bad_alloc exception here.
-
-	* sighandlers.cc (octave_new_handler): Allow return after
-	OCTAVE_JUMP_TO_TOP_LEVEL.
-	(sigfpe_handler): Likewise.
-
-2002-11-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (is_variable): New static function.
-	(generate_struct_completions): Only evaluate objects that look
-	like variables.
-
-2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-jump.h, pt-jump.cc (tree_break_expression,
-	tree_continue_expression, tree_return_expression): Rename from
-	tree_break_command, tree_continue_command, tree_return_command.
-	Implement as expressions that return TRUE instead of commands.
-	Change all uses.
-	* parse.y (make_break_expression, make_continue_expression,
-	make_return_expression): Rename from make_break_command,
-	make_continue_command, make_return_command.  Change all uses.
-	(jump_expr): Rename from jump_command, type is now expression.
-	Use in simple_expr, not command.
-
-	* toplev.cc (octave_initialized): New global variable.
-	(main_loop): Set it to true here.
-	* sighandlers.cc (sigint_handler): Exit immediately if we have not
-	finished init process.
-
-	* load-save.cc (extract_keyword): Return std::string, not char *.
-	Change all uses.
-	(read_ascii_data): Likewise.
-	(read_binary_data): Likewise.
-	(read_hdf5_data): Likewise.
-	(read_mat_ascii_data): Likewise.
-	(read_mat_binary_data): Likewise.
-	(do_load): Name and doc are now std::string objects, not char *.
-	(install_loaded_variable): Likewise.
-	(read_hdf5_data): Doc is now std::string object, not char *&.
-	(read_mat_ascii_data): Call OCTAVE_QUIT in strategic locations.
-	(get_lines_and_columns): Likewise.
-
-	* toplev.cc (main_loop): Call OCTAVE_QUIT after executing command.
-	* parse.y (parse_and_execute (FILE *)): Likewise.
-
-2002-11-12  Joseph P. Skudlarek  <jskud@jskud.com>
-
-	* input.cc (match_sans_spaces_semi): Rename from match_sans_spaces.
-	Ignore trailing semicolons too.  Change all callers.
-
-2002-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.gperf: Allow "persistent" as a synonym for static.
-
-	* defun-int.h (DEFUN_MAPPER_INTERNAL): Don't forget doc string
-	when creating octave_mapper object.
-
-	* sysdep.cc (BSD_init): Avoid failure if FP_X_DNML is not defined.
-
-2002-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c: Be sure to always return buf.
-
-	Undo previous vnprintf changes.  The portable snprintf I found
-	does not handle floating point conversions...
-
-2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (liboctinterp.$(LIBEXT)): Include $(XERBLA) here.
-	(octave.$(EXEEXT)): Not here.
-	(liboctinterp.$(SHLEXT)): Include $(PIC_XERBLA) here.
-
-	* main.c: Move decl for xerbla here from octave.cc.
-
-	* cutils.c (octave_vsnprintf): Use portable_snprintf to avoid
-	having to cope with all kinds of buggy implementations.
-
-	* snprintf.c: New file.
-	* Makefile.in (DISTFILES): Add it to the list.
-
-	* oct-snprintf.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-	* oct-snprintf.c: New file.
-	* Makefile.in (DIST_SRC): Add it to the list.
-
-	* toplev.cc (main_loop): Use SET_OCTAVE_INTERRUPT_IMMEDIATELY
-	instead of assigning octave_interrupt_immediately.
-
-2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (jump_to_top_level): Delete.
-
-	* toplev.cc (toplevel): Delete.
-	(main_loop): Adapt to new signal/exception handling scheme.
-
-	* sighandlers.cc (octave_signal_mask, octave_save_signal_mask,
-	octave_restore_signal_mask): Move to libcruft/misc/quit.cc.
-	(sigint_handler) [USE_EXCEPTIONS_FOR_INTERRUPTS]: set
-	octave_interrupt_state.  Only jump if octave_interrupt_immediately
-	is true, and then only to enclosing context.
-
-	* lex.h (YY_FATAL_ERROR): Use OCTAVE_JUMP_TO_TOP_LEVEL, not
-	jump_to_top_level.
-	* sighandlers.cc (octave_new_handler, sigfpe_handler, endif,
-	sigpipe_handler): Likewise.
-
-	* input.cc (gnu_readline): Surround call to
-	command_editor::readline with
-	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE and
-	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
-
-	* data.cc, oct-stream.cc, ov-cell.cc, ov-mapper.cc, ov-re-mat.cc,
-	ov.cc, pr-output.cc, pt-loop.cc, pt-stmt.cc, xdiv.cc, xpow.cc,
-	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
-	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
-	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/log.cc,
-	DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/qz.cc,
-	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/sort.cc: Sprinkle with
-	OCTAVE_QUIT.
-
-	* DLD-FUNCTIONS/odessa.cc (Fodessa): Correctly extract bsub from
-	function arg.
-
-2002-11-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c (octave_vsnprintf): Handle C99 snprintf semantics.
-
-	* oct-obj.h (octave_value_list::operator =): Copy names too.
-	(octave_value_list::octave_value_list (const octave_value_list&)):
-	Likewise.
-
-2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.39.
-
-	* variables.cc (generate_struct_completions): Temporarily reset
-	discard_error_messages and error_state
-	(looks_like_struct): Temporarily reset Vwarning option,
-	error_state, and discard_error_messages.
-
-	* pt-idx.cc (tree_index_expression::eval_error): Now const.
-	(tree_index_expression::get_struct_index): Require valid identifier.
-	(tree_index_expression::make_arg_struct,
-	tree_index_expression::rvalue, tree_index_expression::lvalue):
-	Handle possible error from get_struct_index.
-
-	* utils.cc (valid_identifier): Move here from load-save.cc.
-	* utils.h: Provide decl.
-
-	* input.cc (generate_possible_completions): Call
-	command_editor::filename_completion_desired here.
-	(generate_possible_completions): Don't generate struct completions
-	if text contains directory separator or "..".
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/odessa.cc (odessa_user_f, odessa_user_j,
-	odessa_user_b): Reorder args for consistency with other solvers.
-	(Fodessa): Use extract_function to set args.
-	(odessa_user_j): Rename from odessa_user_mf.
-
-	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function, fsolve_user_jacobian):
-	Print warning if user returns complex value.
-	* DLD-FUNCTIONS/quad.cc (quad_user_function): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (lsode_user_function, lsode_user_jacobian):
-	Likewise.
-	* DLD-FUNCTIONS/dassl.cc (dassl_user_function, dassl_user_jacobian):
-	Likewise.
-	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_f, dasrt_user_cf, dasrt_user_j):
-	Likewise.
-	* DLD-FUNCTIONS/daspk.cc (daspk_user_function, daspk_user_jacobian):
-	Likewise.
-
-	* DLD-FUNCTIONS/daspk.cc (daspk_user_jacobian): New function.
-	(Fdaspk): Handle extracting Jacobian from function argument.
-
-	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function): New function.
-	(Ffsolve): Handle extracting Jacobian from function argument.
-
-	* Makefile.in (%.oct): Depend on octave$(EXEEXT) so that octave
-	will be built before any .oct files.
-	(all): Depend on stamp-oct-links.
-	(octave$(EXEEXT)): Don't depend on stamp-oct-links.
-
-	* ov-base.cc (octave_base_value::subsasgn): Handle default numeric
-	case here.
-	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): Delete.
-
-2002-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCT_LINK_DEPS): Add $(BLAS_LIBS), $(FFTW_LIBS), and
-	$(FLIBS).
-
-2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_VERSION): Now 2.1.38.
-
-	* utils.cc (octave_vformat): Get return value from
-	streambuf::vform.
-
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Always return solution.
-	Don't barf on nargout == 3.
-
-	* pt-idx.h (tree_index_expression::dyn_field): New data member.
-	* pt-idx.cc (tree_index_expression::tree_index_expression
-	(tree_expression*, tree_expression*, int, int)): New constructor.
-	(tree_index_expression::append (tree_expression*)): New function.
-	(tree_index_expression::get_struct_index): New function.
-	(tree_index_expression::make_arg_struct): Handle dynamic fields.
-	(tree_index_expression::rvalue): Likewise.
-	(tree_index_expression::lvalue): Likewise.
-
-	* parse.y (make_indirect_ref (tree_expression*, tree_expression*)):
-	New function.
-	(indirect_ref_op): New non-terminal.
-	(postfix_expr): Use it.
-	Recognize dynamic struct field references.
-	(parsing_indir): Delete unused non-terminal.
-
-	* lex.l ("("): Set lexer_flags.looking_at_indirect_ref to false here.
-
-	* pt-idx.cc (tree_index_expression::name): Simplify.
-
-2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-conf.h.in (OCTAVE_CONF_HAVE_DLOPEN_API,
-	OCTAVE_CONF_HAVE_LOADLIBRARY_API, OCTAVE_CONF_HAVE_SHL_LOAD_API):
-	Delete.
-	* toplev.cc (octave_config_info): Delete them from the struct
-
-	* load-save.cc (read_ascii_data): Use octave_read_double and
-	octave_read_complex so that we handle Inf, NaN, and NA.
-	(read_mat_ascii_data): Likewise.
-	(save_ascii_data): Use octave_write_double andoctave_write_complex.
-
-2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (octave_config_info): Rename WITH_DYNAMIC_LINKING to
-	ENABLE_DYNAMIC_LINKING.
-	* oct-conf.h.in: Likewise.
-	* mkbuiltins: Likewise.
-	* fn-cache.cc (file_name_cache_elt::update): Likewise.
-	* Makefile.in: Likewise.
-
-2002-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c (octave_vsnprintf): Buffer and buffer size now static.
-	* utils.cc (octave_vformat): Don't free buffer returned from
-	octave_vsnprintf here.
-
-	* ov-usr-fcn.cc (va_arg, va_start, vr_val): Only print warning
-	once per session.
-
-	* ov-mapper.cc (octave_mapper::apply): Don't try real_type case if
-	arg is a string and we have a ch_map_fcn.
-
-	* Makefile.in: Add $(LIBKPATHSEA) to $(OCTAVE_LIBS) if
-	$(INCLUDE_LINK_DEPS) is false, not if $(SHARED_LIBS) is false.
-
-2002-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/daspk.cc (daspk): Use set_options, not copy.
-	* DLD-FUNCTIONS/dasrt.cc (dasrt): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (dassl): Likewise.
-	* DLD-FUNCTIONS/fsolve.cc (fsolve): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (lsode): Likewise.
-	* DLD-FUNCTIONS/odessa.cc (Fodessa): Likewise.
-	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
-
-2002-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-map.cc (Octave_map::assign): Fix typo in resizing.
-
-	* pt-loop.cc (tree_complex_for_command::eval): Only return list
-	for val if struct array has more than one element.
-	(tree_simple_for_command::eval): Likewise.
-
-	* ov-struct.cc (octave_struct::print_raw): Don't create
-	octave_list directly, use octave_value (const octave_value_list&)
-	constructor instead.
-	Call print_with_name for tmp, not val(0).
-
-	* version.h (OCTAVE_VERSION): Now 2.1.37.
-	(OCTAVE_CONTRIB_STATEMENT): New macro.
-	(OCTAVE_STARTUP_MESSAGE): Use it.
-
-2002-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (fill_matrix): If nargin is zero, use val, not 0.0.
-
-	* main.c: New file.
-	* octave.h: New file.
-	* octave.cc (octave_main): Rename from main.
-	Include octave.h.
-	* Makefile.in (OBJECTS): Add octave.o, builtins.o, and ops.o to
-	the list.
-	(octave): Depend on and link main.o, not octave.o, builtins.o, and
-	ops.o (they are now in liboctinterp).
-	(DEP_5): Add main.c here.
-
-	* oct-conf.h.in: No need to substitute OCTAVE_CONF_OCTAVE_LITE.
-	* toplev.cc (octave_config_info): Likewise, don't include it in
-	struct.
-
-	* mkbuiltins: Remove check for OCTAVE_LITE, since it is now
-	implied by WITH_DYNAMIC_LINKING.
-	* Makefile.in: Likewise, replace tests for OCTAVE_LITE with tests
-	for WITH_DYNAMIC_LINKING instead.
-
-	* oct-conf.h.in: Use OCTAVE_CONF_HAVE_DLOPEN_API,
-	OCTAVE_CONF_HAVE_LOADLIBRARY_API, and
-	OCTAVE_CONF_HAVE_SHL_LOAD_API instead of OCTAVE_CONF_WITH_DL and
-	OCTAVE_CONF_WITH_SHL.
-	* toplev.cc (octave_config_info): Likewise.
-
-2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (display_help_text): Quote output file name for Cygwin.
-
-	* Makefile.in (install-lib): Don't bother with versions for
-	$(SHLBIN) files.
-
-	* help.cc (display_help_text): Match zero or more comment
-	characters instead of one or more.
-
-	* Makefile.in (install-oct): Process files from $(DLD_DEF_FILES),
-	not $(DLD_SRC).  Look for them in current directory, not $(srcdir).
-
-2002-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-mapper.cc (octave_mapper::apply): Handle real and complex
-	types first.  If the arg is something else, try ch_map_fcn if it
-	is defined.
-
-2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: If building shared but not static libs, only set
-	XERBLA to the location of the pic object file if FPICFLAG is
-	defined.
-
-2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	*  DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/getrusage.cc, data.cc,
-	file-io.cc, ov-base.cc, ov-bool-mat.cc, ov-ch-mat.cc,
-	ov-complex.cc, ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc,
-	ov-re-nd-array.cc: Change all uses of octave_Inf, octave_NA, and
-	octave_NaN to be calls to lo_ieee_Inf_value, lo_ieee_NA_value, and
-	lo_ieee_NaN_value instead of using the constants directly to avoid
-	linking problem with Cygwin.
-
-	* Makefile.in (install): No need to use cd to create links.
-
-2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: Merge liboctave with liboct-readline and
-	liboct-pathsearch.
-	Use link dependencies for shared libs if INCLUDE_LINK_DEPS.
-	(LIBRARIES): If doing shared libs, include versioned library in	list.
-	(liboctinterp.$(SHLEXT), liboctinterp.$(SHLEXT_VER)): Reverse
-	actions -- build unversioned library, symbolic link adds version
-	info.
-	(install, uninstall): Handle link and load forms of the library
-	separately.
-
-	* toplev.cc (octave_config_info): Remove LIBOCT_READLINE and
-	LIBOCT_PATHSEARCH, add LIBREADLINE.
-	* oct-conf.h.in: Likewise.
-
-2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_identifier): Don't enter token in local symbol
-	table if the following token is a dot and it looks like a binary
-	operator.
-	(force_local_variable): If name is not a variable, clear it before
-	defining.
-
-	* oct-procbuf.cc (Vkluge_procbuf_delay): Make default 0 for all
-	systems.
-
-	* octave.cc (execute_startup_files, initialize_pathsearch):
-	Use file_ops::dir_sep_str instead of OCTAVE_DIR_SEP_STR.
-	(main): Use file_ops::dir_sep_chars instead of OCTAVE_DIR_SEP_CHARS.
-
-	* ov-re-mat.cc (octave_matrix::convert_to_str): Warn for out of
-	range conversions.  For negative values, set to 0.
-	* ov-scalar.cc (octave_scalar:convert_to_str): Likewise.
-
-	* mappers.cc (xabs): New static function.
-	(install_mapper_functions): Use it for abs for character matrices.
-	Handle ch_map_flag separately from can_ret_cmplx_for_real in
-	all uses of DEFUN_MAPPER.
-	* defun.h (DEFUN_MAPPER): Handle ch_map_flag separately from
-	can_ret_cmplx_for_real.
-	* defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise.
-	* mkbuiltins: Likewise.
-	* mkgendoc: Likewise.
-	* ov-mapper.cc (octave_mapper::apply): Use ch_map_flag and
-	can_ret_cmplx_for_real instead of flag.
-	* ov-mapper.h (octave_mapper::ch_map_flag): Rename from flag.
-	(octave_mapper::can_ret_cmplx_for_real): New data member.
-	(octave_mapper::octave_mapper): Handle it here.
-
-2002-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (execute_startup_files): Don't forget directory
-	separator for local initfile.
-
-	* move-if-change: Delete.
-	* Makefile.in (DISTFILES): Delete it from the list.
-
-2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Use $(EXEEXT) and $(BUILD_EXEEXT) as appropriate.
-
-	* pt-plot.cc (Vgnuplot_binary): Use GNUPLOT_BINARY as default.
-
-	* octave.cc (execute_startup_files):
-	Use octave_env::getcwd instead of "./".
-	Use OCTAVE_DIR_SEP_STR instead of "/".
-	(initialize_pathsearch): Use OCTAVE_DIR_SEP_STR instead of /.
-	(main): Look for OCTAVE_DIR_SEP_CHARS, not '/'.
-
-2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (gendoc): Use $(BUILD_CXX), not $(CXX).
-
-2002-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (octave_sleep): Cast result of modf to unsigned int.
-
-2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* sighandlers.cc (my_friendly_exit): If kill is unavailable, use
-	raise.
-
-2002-10-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc (CYGWIN_init): New function.
-	(sysdep_init) [__CYGWIN__]: Call it.
-
-	* pt-plot.cc (subplot::handle_plot_data): Surround file names in
-	single quotes, not double (for Windows).
-	(do_external_plotter_cd): Likewise.
-
-2002-10-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c (octave_usleep): Call octave_sleep, not sleep.
-
-	* utils.cc (octave_sleep (double)): New function.
-	* utils.h: Provide decl.
-	* sysdep.cc (Fpause, Fsleep): Use it.
-
-	* cutils.c (do_octave_usleep): Merge with octave_usleep.
-	(octave_usleep): Make it work for Windows systems.  From Paul
-	Kienzle <pkienzle@users.sf.net>.
-
-2002-10-03  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* cutils.c (octave_usleep): Make it work for Windows systems.
-
-	* toplev.cc (Fsystem): Error message if fork is not available.
-
-2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c (octave_sleep): Handle Windows, which may not have
-	sleep, but should have Sleep.
-
-	* oct-conf.h.in (OCTAVE_CONF_SED): Add an entry for SED.
-	* toplev.cc (octave_config_info): Likewise.
-	* Makefile.in (oct-gperf.h): Use $(SED), not sed.
-
-2002-09-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (fopen_mode_to_ios_mode): Set ios::ate instead of
-	ios::app for "a+" mode.
-	* oct-stream.cc (octave_stream::mode_as_string): Recognize
-	ios::ate, not ios::app as "a+" mode.
-	(octave_stream::mode_as_string): Use parens since | has lower
-	precedence than ==.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* sysdep.cc: Include conio.h if it exists.
-	(octave_kbhit): Rename from kbhit.  Implement with _kbhit if it
-	exists. Change all callers.
-	* cutils.c (octave_sleep): New function.
-	Change all callers of sleep to use octave_sleep instead.
-
-2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc,
-	DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc,
-	OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc,
-	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
-	OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
-	OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
-	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
-	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
-	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
-	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc,
-	OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
-	OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc,
-	SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc,
-	c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc,
-	oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h,
-	ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc,
-	ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
-	ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h,
-	ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc,
-	ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h,
-	ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc,
-	ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h,
-	ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc,
-	ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc,
-	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc,
-	ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc,
-	ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc,
-	procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc,
-	pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h,
-	pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc,
-	pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h,
-	pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc,
-	pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc,
-	pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc,
-	pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h,
-	pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc,
-	pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h,
-	unwind-prot.cc, unwind-prot.h:
-	If __GNUG__, use pragma interface/implementation.  Allow this to
-	be turned off by defining NO_PRAGMA_INTERFACE_IMPLEMENTATION.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* mappers.cc (install_mapper_functions): Install erf, not xerf.
-	Install erfc, not xerfc.
-
-	* pt-bp.cc (tree_breakpoint::visit_unwind_protect_command):
-	Rename lst1 and lst2 to avoid dlgs.h conflict.
-
-	* parse.y: Replace TEXT with STRING to avoid winnt.h conflict.
-	* lex.l: Ditto.
-
-	* sysdep.cc (raw_mode): Non-fatal warning if raw_mode is not
-	supported.
-
-	* sighandlers.cc: Don't define handlers for non-existent signals.
-
-	* utils.cc: Don't include unneeded termio headers.
-
-2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc,
-	DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc,
-	OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc,
-	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
-	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
-	OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
-	OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
-	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
-	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
-	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
-	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc,
-	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
-	OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc,
-	OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
-	OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc,
-	SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc,
-	c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc,
-	oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h,
-	ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc,
-	ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
-	ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h,
-	ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc,
-	ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h,
-	ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc,
-	ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h,
-	ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc,
-	ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc,
-	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc,
-	ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc,
-	ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc,
-	procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc,
-	pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h,
-	pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc,
-	pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h,
-	pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc,
-	pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc,
-	pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc,
-	pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h,
-	pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc,
-	pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h,
-	unwind-prot.cc, unwind-prot.h:
-	Use USE_PRAGMA_INTERFACE_IMPLEMENTATION instead of __GNUG__ to
-	decide whether to use the interface/implementation pragmas.
-
-2002-09-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc: Undo previous change.
-
-	* ov-struct.cc (octave_struct::subsasgn): Ensure that indexed
-	object is not shared before calling subsasgn.
-
-2002-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc: Use % instead of # as comment character in ascii
-	data files.
-
-2002-08-17  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add Intel
-	C++ runtime support.
-
-	* Cell.h, gripes.cc, ov-base-scalar.cc, ov-colon.cc, ov-fcn.cc,
-	ov-file.cc, ov-mapper.h, ov-va-args.cc, token.cc, xpow.cc,
-	OPERATORS/op-b-b.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
-	OPERATORS/op-cell.cc, OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
-	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc,
-	OPERATORS/op-cs-s.cc, OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
-	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
-	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
-	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
-	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, OPERATORS/op-m-cm.cc,
-	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
-	OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
-	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
-	TEMPLATE-INST/Array-sym.cc, TEMPLATE-INST/Array-tc.cc,
-	TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/SLList-expr.cc,
-	TEMPLATE-INST/SLList-tc.cc, TEMPLATE-INST/SLList-tm.cc,
-	TEMPLATE-INST/SLStack-sym.cc: Make the implementation of
-	octave_value_list visibile for template instantiation.
-
-2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dasrt.cc: Include <iostream> not <iostream.h>.
-
-	* pager.h: Include lo-sstream.h and use macros instead of using
-	strstreambuf class directly.
-
-	* load-save.cc (read_mat_ascii_data): Handle istrstream here too.
-
-	* procstream.h (procstream::procstream): Also accept std::string arg.
-	(iprocstream::iprocstream, iprocstream::open): Likewise.
-	(oprocstream::oprocstream, oprocstream::open): Likewise.
-	(procstreambase::procstreambase, procstreambase::open): Likewise.
-
-	* pt-plot.cc (gnuplot_terminal_type): Now std::string&, not char*.
-	(send_to_plot_stream): Likewise, for cmd arg.
-
-	* pt-plot.h, pt-plot.cc: Include lo-sstream.h and use macros
-	instead of using strstream classes directly.
-	* oct-strstrm.h: Likewise.
-	* error.h, error.cc: Likewise.
-	* oct-stream.h, oct-stream.cc: Likewise.
-	* lex.l: Likewise.
-	* toplev.cc: Likewise.
-	* utils.cc: Likewise.
-	* pt.cc: Likewise.
-	* pr-output.cc: Likewise.
-	* ov-list.cc: Likewise.
-	* ov-cs-list.cc: Likewise.
-	* ov-cell.cc: Likewise.
-	* load-save.cc: Likewise.
-	* help.cc: Likewise.
-	* dirfns.cc: Likewise.
-
-2002-08-15  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
-
-	* input.cc (octave_read): Do a better job of buffering.
-
-2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DLD_DEF_FILES): New macro.
-	(DEF_5): Delete.
-	(DEF_4): Now only includes $(SOURCES).
-	(DEF_FILES): Append $(DLD_DEF_FILES) here.
-	(stamp-oct-links): Pass $(DLD_DEF_FILES) to mk-oct-links instead
-	of a list of source files.
-	* mk-oct-links: Work on .df files instead of .cc files.
-
-	* parse.y (case_list): Allow it to be empty.
-
-	* ov.cc, ov.h (octave_value::int_vector_value): New function.
-
-2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTAVE_LIBS): Only include $(LIBKPATHSEA) if not
-	using shared libraries.
-
-	* ov.cc (octave_value::octave_value (const octave_value_list&, bool)):
-	Don't forget to assign rep.
-
-2002-08-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: Warn for various Matlab-incompatibilities.
-	No longer accept <> for NOTEQ.
-	(gripe_matlab_incompatible): New function.
-	(maybe_gripe_matlab_incompatible_comment): Likewise.
-	(gripe_matlab_incompatible_continuation): Likewise.
-	(gripe_matlab_incompatible_operator): Likewise.
-	(warn_matlab_incompatible): New function.
-	(Vwarn_matlab_incompatible): New static variable.
-	(symbols_of_lex): Add a DEFVAR for it.
-
-
-	* file-io.cc (fopen_mode_to_ios_mode): Default value is std::ios::in.
-	Return std::ios::openmode instead of int.
-
-2002-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dasrt.cc (DASRT_ABORT1, DASRT_ABORT2):
-	"##" pastes tokens, not strings.
-
-	* DLD-FUNCTIONS/odessa.cc: Add std:: qualifiers as needed.
-
-2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fisglobal): Rename from Fis_global.
-	* file-io.cc (Fisstream): Rename from Fis_stream.
-	* data.cc (Fisbool): Rename from Fis_bool.
-	(Fiscomplex): Rename from Fis_complex.
-	(Fislist): Rename from Fis_list.
-	(Fismatrix): Rename from Fis_matrix.
-	(Fisstruct): Rename from Fis_struct.
-
-	* parse.y (switch_case): Make list of command optional.
-
-2002-08-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (pr_max_internal): Use octave_is_NaN_or_NA instead
-	of xisnan.
-	(pr_min_internal): Likewise.
-	(output_max_field_width): Likewise.
-	(output_precision): Likewise.
-	(pr_any_float): Handle NA.
-	* mappers.cc (Fisna, F_is_nan_or_na): New functions.
-	* data.cc (symbols_of_data): New constant, NA.
-
-2002-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-binop.h (tree_binary_expression::is_binary_expression):
-	New function, return true.
-	(tree_boolean_expression::is_boolean_expression): New function,
-	return true.
-	* pt-exp.h (tree_expression::is_binary_expression): New function.
-	(tree_expression::is_boolean_expression): Likewise.
-	* parse.y (EXPR_OR_OR): Now lower precedence than EXPR_AND_AND.
-	(EXPR_OR): Now lower precedence than EXPR_AND.
-	(make_boolean_op): Maybe warn about change in precedence.
-	(make_binary_op): Likewise.
-	(Vwarn_precedence_change): New static variable.
-	(warn_precedence_change): New function.
-	(Vwarn_precedence_change): New DEFVAR.
-
-2002-08-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (ANY_ALL): Improve arg checks.
-
-2002-08-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::assign_op): New enum values, op_pow_eq and
-	op_el_pow_eq.
-	* ov.cc (octave_value::assign_op_as_string): Handle them here.
-	(ocatave_value::op_eq_to_binary_op): And here.
-	* parse.y (POW_EQ, EPOW_EQ): New tokens.
-	(assign_expr): Handle them here too.
-	(make_assign_op): And here.
-
-	* lex.l: Recognize {POW}= and {EPOW}=.
-
-2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-scalar.h (octave_base_scalar::all): New int arg.
-	(octave_base_scalar::any): Likewise.
-	* ov-range.h (octave_range::all): Likewise.
-	(octave_range::any): Likewise.
-
-	* Makefile.in (doc-files): Use mv, not move-if-change here.
-
-	* variables.cc (symbol_exist): New function.
-	(Fexist): Use it.  Handle optional type arg.  Make return codes
-	more compatible with Matlab.
-
-	* data.cc (ANY_ALL): New macro.
-	(Fany, Fall): Replace guts with ANY_ALL.
-
-2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fall, Fany): Handle optional DIM argument.
-
-	* ov.h (octave_value::any): New arg, dim.
-	(octave_value::all): Likewise.
-	* ov-base.h (octave_base_value::any): Likewise.
-	(octave_base_value::all): Likewise.
-	* ov-base-mat.h (octave_base_matrix::any): Likewise.
-	(octave_base_matrix::all): Likewise.
-
-	* Makefile.in: Use $@-t instead of $@.t.
-	(doc-files): Use move-if-change when creating doc-files.
-
-	* error.cc (warning): Don't print warning backtrace at top level.
-
-	* ov-cell.cc (octave_cell::print_raw): Print empty dimensions too.
-	(octave_cell::print_name_tag): Don't print new line if cell is empty.
-
-	* octave.cc (intern_argv): Don't install __argv__.
-
-	* defun-int.h (UNDERSCORIFY): Delete.
-	(DEFCONST_INTERNAL): Don't install double underscore versions of
-	constants since they aren't really needed.
-	(DEFCONSTX_INTERNAL): Likewise.
-
-2002-07-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.cc (symbol_table::clear (void)): Clear all records.
-	(symbol_table::clear (const std::string&)): Delete second arg.
-	Clear any symbol that matches, regardless of type.
-
-	* symtab.h (symbol_table::variable_name_list): New function.
-	(symbol_table::global_variable_name_list): Likewise.
-	(symbol_table::user_function_name_list): Likewise.
-
-	* symtab.h, symtab.cc (symbol_table::clear_variables): New function.
-	(symbol_table::clear_functions): Likewise.
-	(symbol_table::clear_globals): Likewise.
-	(symbol_table::clear_variable): New function.
-	(symbol_table::clear_function): Likewise.
-	(symbol_table::clear_global): Likewise.
-	(symbol_table::clear_variable_pattern): New function.
-	(symbol_table::clear_function_pattern): Likewise.
-	(symbol_table::clear_global_pattern): Likewise.
-
-	* variables.cc (name_matches_any_pattern): Rename from
-	var_matches_any_pattern.
-	(is_local_variable): New static inline function.
-	(maybe_warn_exclusive): Likewise.
-	(do_clear_all): Likewise.
-	(do_clear_functions): Likewise.
-	(do_clear_globals): Likewise.
-	(do_clear_variables): Likewise.
-	(do_clear_function): Likewise.
-	(do_clear_global): Likewise.
-	(do_clear_variable): Likewise.
-	(do_clear_symbol): Likewise.
-	(do_clear_function_pattern): Likewise.
-	(do_clear_global_pattern): Likewise.
-	(do_clear_variable_pattern): Likewise.
-	(do_clear_symbol_pattern): Likewise.
-	(do_clear_functions): Likewise.
-	(do_clear_functions): Likewise.
-	(do_clear_globals): Likewise.
-	(do_clear_variables): Likewise.
-	(do_clear_symbols): Likewise.
-	(do_matlab_compatible_clear): Likewise.
-	(CLEAR_OPTION_ERROR): New macro.
-	(Fclear): Rewrite for Matlab compatibility and to cope with new
-	symbol table semantics.
-
-2002-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.cc (symbol_table::clear): Simply clear everything.
-	(symbol_table::clear_functions, symbol_table::clear_globals,
-	symbol_table::clear_all): New functions.
-
-	* symtab.h (symbol_record::symbol_def::next_elem): Delete.
-	(symbol_record::symbol_def::symbol_def): Delete intializer.
-
-	* symtab.h, symtab.cc (symbol_record::push_def): Delete.
-	(symbol_record::remove_top_def): Delete.
-	(symbol_record::replace_all_defs): Delete.
-	(symbol_record::hides_fcn): Delete.
-	(symbol_record::hides_builtin): Delete.
-
-	* symtab.h (symbol_table::~symbol_table): Call clear before
-	deleting the table.
-
-	* variables.cc (initialize_symbol_tables): Create fbi_sym_tab too.
-	(Fexist): Look in fbi_sym_tab, not global_sym_tab.
-
-	* parse.y (function_symtab): Rename from global_symtab.
-	Set curr_sym_tab to fbi_sym_tab, not global_sym_tab.
-	Change all uses of global_symtab to be function_symtab instead.
-	(frob_function): Rename and look for function name in fbi_sym_tab,
-	not global_sym_tab.
-	(parse_fcn_file): Clear function name from fbi_sym_tab, not
-	global_sym_tab.
-
-	* load-save.cc (save_vars): Look for built-in vars in fbi_sym_tab.
-	* symtab.cc (symbol_record::link_to_builtin_variable): Likewise.
-	* variables.cc (is_builtin_variable): Likewise.
-	(bind_ans): Likewise.
-	(bind_builtin_constant): Likewise.
-	(bind_builtin_variable): Likewise.
-	(builtin_string_variable): Likewise.
-	(builtin_real_scalar_variable): Likewise.
-	(builtin_any_variable): Likewise.
-	(is_text_function_name): Likewise, for functions.
-	(force_link_to_function): Likewise.
-	(is_builtin_function_name): Likewise.
-	(is_mapper_function_name): Likewise.
-	(is_valid_function): Likewise.
-	(Fclear): Likewise.
-	(F__print_symtab_info__): Likewise.
-	* defun.cc (print_usage): Likewise.
-	(install_builtin_mapper): Likewise.
-	(install_builtin_function): Likewise.
-	(install_dld_function): Likewise.
-	(Falias): Likewise.
-	* dynamic-ld.cc (clear_function): Likewise.
-	* variables.cc (do_who): Likewise, for built-ins and functions.
-	(link_to_builtin_or_function): Likewise.
-	* help.cc (LIST_SYMBOLS): Likewise.
-	(make_name_list): Handle fbi_sym_tab too.
-
-	* variables.cc (fbi_sym_tab): New symbol table.
-	* variables.h (fbi_sym_tab): Provide decl.
-
-2002-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.h (symbol_record::alias): Delete unused arg force.
-	Change all callers.
-
-	* variables.cc (link_to_global_variable): Give local variable
-	global value.
-
-	* pt-id.cc (tree_identifier::link_to_global): Warn about global
-	variables that have been defined before being declared global.
-	for a global variable to be used before it is declared global.
-	* pt-decl.cc (tree_global_command::do_init): Handle possible error
-	from tree_identifier::link_to_global.
-
-2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc (silent_functions, Vsilent_functions): Move here.
-	(octave_value::print_with_name): Don't print anything if we are
-	evaluating a function and Vsilent_functions is true.
-
-	* pt-stmt.cc: From here.
-	(symbols_of_pt_stmt): Delete.
-	(tree_statement_list::eval): Don't bother with Vsilent_functions here.
-
-2002-07-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OPT_HANDLERS): New targets.
-	(doc-files): New target.
-	(gendoc.cc): Depend on doc-files, not $(DOC_FILES).
-
-	* DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
-	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/fsolve.cc,
-	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/odessa.cc
-	DLD-FUNCTIONS/quad.cc: Replace option handling code with include
-	directive.
-
-2002-07-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-loop.cc (tree_simple_for_command::eval): Once we know the RHS
-	is a matrix type check for real_type, not real_matrix.
-
-2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/quad.cc (quad): Cope with changes to Quad constructors.
-
-2002-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Also return istate and error
-	message.  Only generate error if user is not at least requesting
-	the istate output.
-	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (Fodessa): Likewise.
-
-2002-07-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): No need to find ng here.
-	(dasrt_user_j): New function.
-	(Fdasrt): Handle Jacobian function.
-
-	* DLD-FUNCTIONS/dassl.cc (dassl_user_jacobian): New function.
-	(Fdassl): Handle Jacobian function.
-
-	* DLD-FUNCTIONS/dasrt.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (@): Handle new token.
-	* parse.y (constant): Accept function handle syntax.
-	(make_constant): Create function handles here.
-
-2002-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun.cc (check_version): Improve error message.
-	* error.cc (warning): Only print backtrace once per warning series.
-	Print backtrace before warning messages.
-
-2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (maybe_unput_comma): Also handle '{' as an indexing op.
-
-	* DLD-FUNCTIONS/odessa.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2002-07-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-assign.cc (tree_multi_assignment::rvalue): Call
-	lhs->nargout_count, not lhs->length.
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
-	Handle cs-list objects here.
-	(tree_argument_list::nargout_count): New function.
-	* pt-arg-list.h: Provide decl.
-
-	* ov-cs-list.h, ov-cs-list.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* ov.cc: Include ov-cs-list.h.
-	New arg, is_cs_list for constructor taking octave_value_list arg.
-	(install_types): Register ov_cs_list.
-	* ov.h (octave_value::is_cs_list): New function.
-	* ov-base.h (octave_base_value::is_cs_list): Likewise.
-	* ov-cell.cc (octave_cell::subsref): Return cs-list for "{" indexing.
-
-2002-07-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mat.cc (Vempty_list_elements_ok): Default value is now 1.
-	* octave.cc (maximum_braindamage): No longer need to set value here.
-
-	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Warn that these
-	functions are deprecated.
-	* lex.l (EL): Warn that `...' is deprecated.
-	* ov-usr-fcn.cc (octave_user_function::varargout_to_vr_val,
-	octave_user_function::has_varargout): New functions.
-	(Fvr_val): Ensure varargout is not defined.
-	(octave_user_function::do_multi_index_op): Copy values from
-	varargout here.
-
-2002-07-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.h (octave_user_function::varargin_sr): New data member.
-	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
-	Initialize it.
-	(bind_automatic_vars): Handle varargin.  Change	all callers.
-
-	* octave.gperf: Handle varargin and varargout as keywords.
-	* lex.l (is_keyword): Likewise.
-	(IDENT): Move all actions into handle_identifier.
-	(handle_identifier): Now takes no args.
-
-	* lex.l (EL): Return VARARGIN or VARARGOUT, not ELLIPSIS.
-	* parse.y (param_list): Use VARARGIN instead of ELLIPSIS.
-	(return_list): Use VARARGOUT instead of ELLIPSIS.
-
-	* data.cc (make_diag const octave_value&, const octave_value&):
-	Allow first arg to be 1x0 or 0x1.
-
-2002-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (loadpath): Comment out previous change.
-
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Return message too.  Only
-	generate error if user is not at least requesting the info output.
-
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Fix typos in setting return value.
-
-2002-07-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (printf_value_cache::double_value): If the current
-	element is empty and there are no more elements in the value list,
-	set curr_state to conversion_error.
-
-	* input.cc (initialize_command_input): Include (, ), {, and } as
-	word break characters.
-
-	* variables.cc (looks_like_struct): Don't evaluate text if it is a
-	function.  From Ben Sapp <bsapp@lanl.gov>.
-
-	* symtab.h (symbol_record::is_function): Also return true if
-	symbol is a text function or a mapper function.
-
-2002-06-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (loadpath): Warn if loadpath doesn't contain
-	leading, trailing, or doubled colon.
-
-	* pt-decl.cc (tree_static_command::eval, tree_global_command::eval):
-	Call error for any non-zero value of error_state.
-	* pt-select.cc (tree_if_command::eval): Likewise.
-	* pt-loop.cc (tree_while_command::eval_error): Don't check error_state.
-	(tree_do_until_command::eval_error): Likewise.
-	(tree_simple_for_command::eval_error): Likewise.
-	(tree_complex_for_command::eval_error): Likewise.
-	* pt-assign.cc (tree_multi_assignment::eval_error): Likewise.
-	(tree_simple_assignment::eval_error): Likewise.
-	* pt-idx.cc (tree_index_expression::eval_error): Likewise.
-	* pt-colon.cc (tree_colon_expression::eval_error): Likewise.
-	(tree_colon_expression::rvalue): Delete rendundant error_state check.
-
-2002-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-mapper.cc (MAPPER_LOOP, MAPPER_LOOP_1, MAPPER_LOOP_2): New	macros.
-	(octave_mapper::apply): Use them to inline the mapper loops.
-
-	* pt-unop.cc (tree_prefix_expression::rvalue): Ensure that the
-	operand is defined for op_incr and op_decr.
-	(tree_postfix_expression::rvalue): Likewise.
-	From Ben Sapp <bsapp@lanl.gov>.
-
-2002-06-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-mapper.cc (octave_mapper::apply): Exit loops on error.
-
-2002-06-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-struct.cc (octave_struct::print_raw): Print field names with
-	data types if Vstruct_levels_to_print is 0.
-	(octave_struct::print_name_tag): Don't emit newline if
-	Vstruct_levels_to_print is negative.
-	* ov.cc (struct_levels_to_print): Allow negative values too.
-
-2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Also return istate and error
-	message.  Only generate error if user is not at least requesting
-	the istate output.
-
-	* load-save.cc (hdf5_import_multidim, hdf5_check_attr,
-	hdf5_callback_data, hdf5_read_next_data, read_hdf5_data,
-	add_hdf5_data): Use 0, not NULL in calls to HDF routines.
-
-	* oct-procbuf.cc (octave_procbuf::open): Use NULL, not 0 as last
-	arg in call to execl.
-
-	* debug.cc (get_user_function): Initialise dbg_fcn to 0, not NULL.
-
-2002-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/lsode.cc (LSODE_options::da_set_opt_mf,
-	LSODE_options::da_get_opt_mf): New typedefs.
-	(LSODE_OPTIONS::da_set_fcn, LSODE_OPTIONS::da_get_fcn): New fields.
-	(lsode_option_table): Fill them in.
-	(set_lsode_option (const Array<double>&)): New function.
-	(print_lsode_option_list): Handle vector options.
-	(show_lsode_option_list): Likewise.
-	(Flsode_options): Likewise.
-
-	* DLD-FUNCTIONS/lsode.cc (LSODE_options::s_set_opt_mf,
-	LSODE_options::s_get_opt_mf): New typedefs.
-	(LSODE_OPTIONS::s_set_fcn, LSODE_OPTIONS::s_get_fcn): New fields.
-	(lsode_option_table): Fill them in.
-	(set_lsode_option (const std::string&)): New function.
-	(print_lsode_option_list): Handle string options.
-	(show_lsode_option_list): Likewise.
-	(Flsode_options): Likewise.
-
-2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* c-file-ptr-stream.h (c_file_ptr_buf::fclose): New function.
-	(c_file_ptr_buf::c_file_ptr_buf): Use it as default argument
-	instead of extern "C" fclose function.
-	(i_c_file_ptr_stream::i_c_file_ptr_stream): Likewise.
-	(o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise.
-	* oct-stdstrm.h (octave_istdiostream::octave_istdiostream): Likewise.
-	(octave_istdiostream::create): Likewise.
-	* oct-stdstrm.h (octave_ostdiostream::octave_ostdiostream): Likewise.
-	(octave_ostdiostream::create): Likewise.
-
-	* oct-prcstrm.cc (cxx_pclose): New static function.
-	(octave_iprocstream::octave_iprocstream): Pass it to
-	octave_istdiostream constructor instead of extern "C" pclose function.
-	(octave_oprocstream::octave_oprocstream): Pass it to
-	octave_ostdiostream constructor instead of extern "C" pclose function.
-
-	* debug.cc (Fdbtype): Use C++ strings, not C strings.
-
-2002-05-22  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* debug.cc: Include cstdlib instead of stdlib.h. Include cstring.
-	(dbtype): Use strchr instead of index.
-	* TEMPLATE-INST/Array-tc.cc (Array<octave_value>::resize_fill_value):
-	Fix template specialization syntax.
-
-2002-05-17  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* c-file-ptr-stream.h (OCTAVE_STD_FILEBUF): New macro to handle
-	various forms of extensions to std::filebuf.
-	(c_file_ptr_buf::c_file_ptr_buf): Use.
-	* pt-idx.cc (tree_index_expression::tree_index_expression): Remove
-	default arguments are from definition.
-	* symtab.cc (SYMBOL_DEF::print_info): Add std::.
-	(symbol_record::print_info): Likewise.
-	(symbol_table::print_info): Likewise.
-
-2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-map.cc (Octave_map::assign): Resize RHS if it is shorter
-	than existing struct array.
-
-	* ov-cell.cc (octave_cell::subsasgn): If an error has occurred,
-	skip final assignment step.
-	* ov-list.cc (octave_list::subsasgn): Likewise.
-	* oct-lvalue.cc (octave_lvalue::assign): Add parens to clarify intent.
-	(octave_lvalue::do_unary_op): Likewise.
-
-	* parse.y (function_end): Also accept end of input as end of
-	function if input is coming from an eval string.
-
-	* pr-output.cc (pr_any_float): Don't convert -0 to 0.
-
-2002-05-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (generate_completion): If it looks like we are
-	completing a struct, set completion append char to '\0'.
-
-	* variables.cc (generate_struct_completions): Temporarily set
-	warnings off here.
-
-	* error.cc (warning): Don't do anything if Vdebug_option == "off".
-	Only print backtrace if Vdebug_option == "backtrace".
-	(handle_message): Now returns a string containing the text of the
-	formatted message.  Change all callers.
-	(Fwarning): Now a text-style function.  Handle Matlab-compatible
-	warning options.
-	(Flasterr, Flastwarn, set_warning_option): New functions.
-	(Vlast_error_message, Vlast_warning_message, Vwarning_frequency,
-	Vwarning_option): New static variables.
-	(vwarning): Set Vlast_warning_message here too.
-	(verror): Set Vlast_error_message here too.
-
-2002-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::get_count): Now const.
-
-	* ov.h, ov.cc (octave_value::do_non_const_unary_op,
-	octave_value::assign): Idx is now a list of octave_value_list
-	objects.
-
-	* ov-base.cc, ov-base.h	(octave_base_value::do_struct_elt_index_op,
-	octave_base_value::struct_elt_ref): Delete.
-	* ov-struct.cc, ov-struct.h (octave_sruct::do_struct_elt_index_op,
-	octave_struct::struct_elt_ref): Delete.
-	* ov.cc, ov.h (octave_value::do_struct_elt_index_op,
-	octave_value::struct_elt_ref, octave_value::assign_struct_elt,
-	octave_value::convert_and_assign, octave_value::try_assignment,
-	octave_value::try_assignment_with_conversion,
-	octave_value::simple_assign): Delete.
-
-	* parse.y (make_index_expression): Type is now a single
-	character.  Change all callers.  If expr is already an index
-	expression, append index to it.
-	(make_indirect_ref): Likewise.
-
-	* pt-pr-code.cc (octave_print_internal (std::ostream&, const
-	Cell&, bool, int)): Now just a dummy function, panic if called.
-
-	* pt-idx.cc (tree_index_expression::make_arg_struct): New function.
-	(tree_index_expression::type): Delete enum, rename from itype, now
-	a string.
-	(tree_index_expression::arg_nm): Now a list of string_vector objects.
-	(tree_index_expression::idx): Now a list of tree_argument_list*
-	objects.
-	(tree_index_expression::is_index_expression): Always return true.
-	(tree_index_expression::apend, make_value_list, make_subs_cell):
-	New functions.
-
-	* pt-pr-code.cc (visit_index_expression): Handle new definition of
-	tree_index_expression object.
-	* pt-check.cc (visit_index_expression): Likewise.
-	* pt-bp.cc (visit_index_expression): Likewise.
-
-	* ov-usr-fcn.h (octave_user_function::restore_args_passed):
-	Clear args_passed even if nothing was saved.
-
-	* ov-base.cc (octave_base_value::subsasgn,
-	octave_base_value::map_keys, octave_base_value::print_info):
-	New functions.
-
-	* ov.h, ov.cc (octave_value::map_keys, octave_value::print_info,
-	octave_value::subsref, octave_value::subsasgn,
-	octave_value::numeric_assign, octave_value::next_subsref):
-	New functions.
-	(octave_value::empty_conv): New static function.
-	(octave_value (octave_value *, int)): New arg, count.
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::subsref,
-	octave_base_matrix<MT>::subsasgn): New functions.
-	* ov-base-mat.h: Provide decls.
-
-	* ov-builtin.cc (octave_builtin::subsref): New function.
-	* ov-builtin.h: Provide decl.
-
-	* ov-range.cc (octave_range::subsref): New function.
-	* ov-range.h: Provide decl.
-
-	* ov-cell.cc (octave_cell::subsref, octave_cell::subsasgn,
-	octave_cell::list_value, octave_cell::print,
-	octave_cell::print_raw, octave_cell::print_name_tag): New functions.
-	* ov-cell.h: Provide decls.
-
-	* ov-struct.cc (octave_struct::dotref, octave_struct::subsref,
-	octave_struct::subsasgn, gripe_invalid_index,
-	gripe_invalid_index_for_assignment, grip_invalid_index_type,
-	gripe_failed_assignment): New functions.
-	(octave_struct::numeric_conv): New static function.
-	* ov-struct.h: Provide decls.
-	(octave_struct::is_constant): Return true.
-	(octave_struct::map_keys): New function.
-
-	* ov-list.cc (octave_list::subsref, octave_list::subsasgn):
-	New functions.
-	* ov-list.h: Provide decls.
-
-	* ov-usr-fcn.cc (octave_user_function::subsref,
-	octave_user_function::print_symtab_info): New functions.
-	* ov-usr-fcn.h: Provide decl.
-
-	* ov-mapper.cc (octave_mapper::subsref): New function.
-	* ov-mapper.h: Provide decl.
-
-	* ov-base.cc (octave_base_value::subsref,
-	octave_base_value::subsasgn): New functions.
-	* ov-base.h: Provide decls.
-
-	* ov-base.cc (octave_base_value::do_index_op): New arg, resize_ok.
-	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Likewise.
-	* ov-base-nd-array.cc (octave_base_nd_array<AT>::do_index_op): Ditto.
-	* ov-bool-mat.cc (octave_bool::do_index_op): Ditto.
-	* ov-str-mat.cc (octave_char_matrix_str::do_index_op): Ditto.
-	* ov-range.cc (octave_range::do_index_op): Ditto.
-	* ov-list.cc (octave_list::do_index_op): Ditto.
-	* ov.cc (octave_value::do_index_op): Ditto.
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::print_info): New function.
-
-	* ov-base-mat.h (octave_base_matrix<MT>::empty_clone): New function.
-	* ov-base-nd-array.h (octave_base_nd_array<AT>::empty_clone): Ditto.
-	* ov-base.h (octave_base_value::empty_clone): Ditto.
-	* ov-bool-mat.h (octave_bool::empty_clone): Ditto.
-	* ov-ch-mat.h (octave_char_matrix::empty_clone): Likewise.
-	* ov-colon.h (octave_magic_colon::empty_clone): Likewise.
-	* ov-complex.h (octave_complex::empty_clone): Likewise.
-	* ov-cx-mat.h (octave_complex_matrix::empty_clone): Likewise.
-	* ov-fcn.cc (octave_function::empty_clone): Likewise.
-	* ov-file.h (octave_file::empty_clone): Likewise.
-	* ov-range.h (octave_range::empty_clone): Likewise.
-	* ov-list.h (octave_list::empty_clone): Likewise.
-	* ov-re-mat.h (octave_matrix::empty_clone): Likewise.
-	* ov-re-nd-array.h (octave_double_nd_array::empty_clone): Likewise.
-	* ov-str-mat.h (octave_char_matrix_str::empty_clone): Likewise.
-	* ov-struct.h (octave_struct::empty_clone): Likewise.
-	* ov-va_args.h (octave_all_va_args::empty_clone): Likewise.
-	* ov.h (octave_value::empty_clone): Likewise.
-
-	* ov-base-mat.h (octave_base_matrix<MT>::clone): Now const.
-	* ov-base-nd-array.h (octave_base_nd_array<AT>::clone): Likewise.
-	* ov-base.h (octave_base_value::clone): Likewise.
-	* ov-bool-mat.h (octave_bool::clone): Likewise.
-	* ov-ch-mat.h (octave_char_matrix::clone): Likewise.
-	* ov-colon.h (octave_magic_colon::clone): Likewise.
-	* ov-complex.h (octave_complex::clone): Likewise.
-	* ov-cx-mat.h (octave_complex_matrix::clone): Likewise.
-	* ov-fcn.h (octave_function::clone): Likewise.
-	* ov-file.h (octave_file::clone): Likewise.
-	* ov-range.h (octave_range::clone): Likewise.
-	* ov-list.h (octave_list::clone): Likewise.
-	* ov-re-mat.h (octave_matrix::clone): Likewise.
-	* ov-re-nd-array.h (octave_double_nd_array::clone): Likewise.
-	* ov-str-mat.h (octave_char_matrix_str::clone): Likewise.
-	* ov-struct.h (octave_struct::clone): Likewise.
-	* ov-va_args.h (octave_all_va_args::clone): Likewise.
-	* ov.h (octave_value::clone): Likewise.
-
-	* oct-lvalue.cc (octave_lvalue::assign, octave_lvalue::set_index,
-	octave_lvalue::do_unary_op): Idx is now a list of indices.  Simplify.
-	* oct-lvalue.h (octave_lvalue::value): Simplify.
-	(octave_lvalue::struct_elt_names): Delete data member.
-	(octave_lvalue::type): Now string
-	Update decls.
-
-	* pt-exp.h (tree_expression::is_indirect_ref):
-	Delete virtual function.
-
-	* pt-plot.cc (subplot::extract_plot_data): Use subsref, instead of
-	do_index_op.
-
-	* pt-stmt.cc (tree_statement::eval): Don't try to avoid binding
-	ans for structure references.
-
-	* symtab.cc (symbol_record::symbol_def::print_info): Rename from
-	symbol_record::symbol_def::dump_symbol_info.
-	(symbol_record::print_info): Rename from
-	symbol_record::dump_symbol_info.  Now const..
-	(symbol_record::print_symbol_info_line): Now const.
-	(symbol_table::print_info): Rename from print_stats.  Accept
-	ostream arg.  Now const.  Print more info.
-	* symtab.h: Update decls.
-
-	* toplev.cc (octave_config_info): Indexing a map now returns a
-	list, but we only want to return the first element.
-
-	* variables.cc (generate_struct_completions, looks_like_struct):
-	Simplify using eval_string.
-	(F__print_symtab_info__): Rename from F__dump_symtab_info__.
-	Handle "top-level" and individual function names in addition to
-	"global".
-	(F__print_symbol_info__): Rename from F___dump_symbol_info__.
-
-	* octave.cc (intern_argv): Built-in variable argv is now a cell array.
-
-	* ov-complex.cc (valid_scalar_indices): Delete.
-	* ov-scalar.cc (valid_scalar_indices): Delete.
-
-	* oct-obj.cc (octave_value_list::valid_scalar_indices): New function.
-	(octave_value_list::index): New arg, resize_ok.
-	* oct-obj.h: Provide decls.
-
-	* oct-map.cc (Octave_map::keys): Rename from make_name_list.
-	Change all uses.
-	(Octave_map::assign, Octave_map::index): New functions.
-	* oct-map.h: Provide decls.
-
-	* data.cc (Fstruct_contains): Use map_value instead of
-	do_struct_elt_index_op.
-
-	* Cell.h (Cell (const Array2<octave_value>&, int, int)):
-	New constructor.
-	(Cell::resize_fill_value): New static function.
-
-	* input.cc (initialize_command_input): Set basic and completer
-	word break characters.
-
-2002-05-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::subsref): New function.
-	* ov-base.cc (octave_base_value::subsref): Likewise.
-
-	* ov-struct.cc (octave_struct::print_raw): Print scalar struct
-	arrays more compactly.
-
-	* DLD-FUNCTIONS/time.cc (extract_tm): Handle new struct array def.
-
-	* oct-map.cc (Octave_map::array_len): New data member.
-	(Octave_map::operator[], Octave_map::contsnts): Return
-	octave_value_list, not Octave_value.  Change callers as necessary.
-	(Octave_map::assign): New function.
-	(Octave_map::array_length): New fucntion.
-	* oct-obj.cc (octave_value_list::assign): New function.
-
-2002-05-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* TEMPLATE-INST/Map-oct-obj.cc: New file.
-	* Makefile.in (TI_XSRC): Add it to the list.
-
-	* oct-map.h (Octave_map): Make CHMap<octave_value_list> a data
-	member instead of deriving from CHMap<octave_value>, in
-	preparation for structure arrays.
-
-	* pt-indir.h, pt-indir.cc: Delete.
-
-	* pt-all.h: Don't include pt-indir.h.
-
-	* Makefile.in (PT_SRC): Delete pt-indir.cc from the list.
-	(PT_INCLUDES): Delete pt-indir.h from the list.
-
-	* pt-walk.h (tree_walker::visit_indirect_ref): Delete.
-	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_indirect_ref):
-	Likewise.
-	* pt-check.h, pt-check.cc (tree_checker::visit_indirect_ref): Likewise.
-	* pt-bp.h, pt-bp.cc (tree_breakpoint::visit_indirect_ref): Likewise.
-
-	* pt-walk.h: Delete forward decl for tree_indirect_ref.
-	* variables.h: Likewise.
-
-	* parse.y (make_indirect_ref): Return tree_index_expression, not
-	tree_indirect_ref.
-
-	* pt-idx.h (tree_index_expression::struct_elt_name): New function.
-
-	* pt-idx.cc (tree_index_expression::lvalue): Handle dot case too.
-	(tree_index_expression::name): Likewise.
-	(tree_index_expression rvalue (int)): Likewise.
-	(tree_index_expression::eval_error): Likewise.
-	* pt-pr-code.cc (visit_index_expression): Likewise.
-	* pt-bp.cc (tree_breakpoint::visit_index_expression): Likewise.
-
-	* pt-idx.h (tree_index_expression::dot): New type enum element.
-	(tree_index_expression::expr_type): New function.
-	(tree_index_expression::tree_index_expression (tree_expression*,
-	const std::string&, int, int)): New constructor.
-	(tree_index_expression::is_index_expression): Return value is now
-	conditional on itype.
-	(tree_index_expression::is_indirect_ref): New function.
-	(tree_index_expression::lvalue_ok): Also return true if itype is dot.
-
-2002-05-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (ABORT_PARSE): Maybe restore symbol table context too.
-
-	* pt-idx.h (tree_index_expression::type): New enum.
-	(tree_index_expression::etype): New data member.
-	* pt-idx.h (tree_index_expression::tree_index_expression):
-	New arg, t, to set type of index.
-	* parse.y (make_index_expression): Likewise.
-	Change all callers.
-
-	* ov-base.cc (cell_conv): New conversion function.
-	(install_base_type_conversions): Install it.
-	Install conversion for indexed assignment of octave_cells to
-	undefined values.
-
-	* TEMPLATE-INST/Array-tc.cc: Instantiate assign functions too.
-	(Array<octave_value>::resize_fill_value (void)):
-	Provide specialization for octave_value.
-
-	* ov-cell.cc (octave_cell::assign (const octave_value_list&,
-	const octave_value&)): New function.
-	* Cell.h (Cell::Cell (const octave_value&)): New function.
-
-	* OPERATORS/op-cell.cc (install_list_ops): Use DEFASSIGNANYOP_FN
-	and INSTALL_ASSIGNANYOP, not DEFASSIGNOP_FN and INSTALL_ASSIGNOP.
-
-2002-05-03  Cai Jianming  <caijianming@yahoo.co.uk>
-
-	* OPERATORS/op-cell.cc: New file.
-	* Makefile.in (OP_XSRC): Include it in the list.
-
-	* parse.y (cell): Return a cell type instead of Matrix type.
-
-	* ov.cc (install_types): Install octave_cell type.
-
-	* pr-output.cc (octave_print_internal): Handle Cells.
-	* pr-output.h (octave_print_internal): Provide decl.
-
-	* ov-cell.h (octave_cell): Derive from octave_base_matrix<Cell>.
-	* ov-cell.cc (do_index_op, assign, print, print_raw,
-	print_name_tag): Delete.
-
-	* Cell.cc (allocator, index): Delete.
-	* Cell.h (Cell): Derive from Array2<octave_value>.
-	Most functions removed since we can use those from Array2 instead.
-
-2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
-
-	* ov-base-mat.cc (octave_base_matrix<MT>::assign):
-	New function.
-	* ov-base-mat.h (octave_base_matrix<MT>::assign): Provide decl.
-	* ov-bool-mat.cc (octave_bool_matrix::assign): Delete.
-	* ov-bool-mat.h (octave_bool_matrix:assign): Delete decl
-	* ov-cx-mat.cc (octave_complex_matrix::assign (const
-	octave_value_list& idx, const ComplexMatrix&)): Delete.
-	* ov-cx-mat.h (octave_complex_matrix:assign (const
-	octave_value_list& idx, const ComplexMatrix&)): Replace decl with
-	function.
-	* ov-re-mat.cc (octave_bool_matrix::assign): Delete.
-	* ov-re-mat.h (octave_bool_matrix:assign): Delete decl.
-
-2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
-
-	* OPERATORS/op-bm-b.cc: New file.x
-	* Makefile.in (OP_XSRC): Add it to the list.
-
-2002-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (print_version_and_exit): Use
-	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not
-	OCTAVE_NAME_AND_VERSION.
-
-	* octave.cc (verbose_usage):
-	Use OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not
-	OCTAVE_NAME_VERSION_AND_COPYRIGHT.
-
-	* version.h (OCTAVE_COPYING_STATEMENT, OCTAVE_WARRANTY_STATEMENT,
-	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY,
-	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS,
-	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS,
-	OCTAVE_BUGS_STATEMENT): New macros.
-	(OCTAVE_STARTUP_MESSAGE): Define in terms of
-	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS
-	to include bugs address and amplified warranty information.
-
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Delete unused variable nsteps.
-
-2002-04-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (additional_help_message): Use www.octave.org, not
-	www.che.wisc.edu/octave/octave.html.
-	* octave.cc (verbose_usage): Likewise.
-
-2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/daspk.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-2002-04-25  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* DLD-FUNCTIONS/kron.cc: New file.
-	* Makefile.in (DLD_SRC): Add it to the list.
-
-2002-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (save_symtab): New non-terminal.  Save current symbol
-	table context here.
-	(function_beg): Use it.
-	(symtab_context): New file-scope variable.
-	(recover_from_parsing_function): Restore symbol table context here.
-
-2002-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (get_lines_and_columns): Handle CRLF as line
-	separator in addition to LF.
-
-2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (hdf5_ofstream::hdf5_ofstream):
-	Explicitly List std::ostream(0) in constructor.
-	(hdf5_ifstream::hdf5_ifstream):
-	Explicitly List std::istream(0) in constructor.
-	(hdf5_fstreambase::hdf5_fstreambase): Use std::ios::setstate, not set.
-	(hdf5_fstreambase::close): Likewise.
-	(hdf5_fstreambase::open): Likewise.
-
-2002-04-10  Ben Sapp  <bsapp@lanl.gov>
-
-	* pt-stmt.cc (delete_breakpoint): List breakpoints if line < 0.
-	* debug.cc (get_user_function): Check symbol by name first.
-	(Fdbstop): Rename from Fdbg_set.
-	(Fdbclear): Rename from Fdbg_delete.
-	(Fdbstatus): Rename from Fdbg_list.
-	(Fdbg_where): Rename from Fdbwhere.
-	(do_dbtype, Fdbtype): New functions.
-
-2002-04-10  Peter Van Wieren  <peter.vanwiere@avlna.com>
-
-	* load-save.cc (save_mat5_binary_element): Save elements of 2d
-	character matrices in proper order.
-
-2002-04-09  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* utils.cc (do_string_escapes): Handle \0 too.
-	(undo_string_escape): Likewise.
-
-2002-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (octave_config_info): Define struct member EXEEXT, not EXE.
-	* Makefile.in (install-bin): Use $(EXEEXT), not $(EXE).
-	* oct-conf.h.in (OCTAVE_CONF_EXEEXT): Define and substitute
-	OCTAVE_CONF_EXEEXT, not OCTAVE_CONF_EXE.
-
-2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* DLD-FUNCTIONS/balance.cc: Use F77_FUNC instead of F77_FCN.
-	* DLD-FUNCTIONS/qz.cc: Likewise.
-	* DLD-FUNCTIONS/rand.cc: Likewise.
-	* octave.cc: Likewise.
-	* toplev.cc (Foctave_config_info): Delete use of FORTRAN_MAIN_FLAG.
-	* oct-conf.h.in: Delete use of OCTAVE_CONF_FORTRAN_MAIN_FLAG.
-	* syscalls.cc (mk_stat_map):
-	Use HAVE_STRUCT_STAT_ST_RDEV instead of HAVE_ST_RDEV.
-	Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of HAVE_ST_BLKSIZE.
-	Use HAVE_STRUCT_STAT_ST_BLOCKS instead of HAVE_ST_BLOCKS.
-
-2002-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l, lex.h (parser_end_of_input): New global variable.
-	(reset_parser): Reset it here.
-	* parse.y (input): Set it to TRUE on EOF.
-	(parse_and_executed): Save and restore it, check it to correctly
-	break out of parse-execute loop.
-	(parse_fcn_file): Likewise.
-	(eval_string): Likewise.
-	* toplev.cc (main_loop): Likewise.
-
-	* parse.y (input): Call YYACCEPT for END_OF_INPUT.
-	Return no-op command for bare newline.
-	(parse_and_execute): Handle change in yyparse return value semantics.
-
-	* toplev.cc (main_loop): Likewise.
-
-2002-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (parse_fcn_file): Call error if there is no input file.
-	(parse_and_execute (FILE *): Protect get_input_from_eval_string.
-	Set get_input_from_eval_string to false before calling yyparse.
-	* lex.l (reset_parser): Also skip yyrestart (stdin) if
-	reading_script_file is true.
-
-2002-03-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-loop.cc (evaluating_looping_command): New global.
-	(tree_while_command::eval): Protect evaluating_looping_command.
-	Set it to true while evaluating loop.
-	(tree_do_until_command::eval): Ditto.
-	(tree_simple_for_command::eval): Ditto.
-	(tree_complex_for_command::eval): Ditto.
-	* pt-loop.h (evaluating_looping_command): Provide decl.
-	* parse.y (parse_fcn_file): Protect get_input_from_eval_string.
-	Set get_input_from_eval_string to false before calling yyparse.
-	(make_break_command): Also check evaluating_looping_command.
-	(make_continue_command): Also check evaluating_looping_command.
-	(eval_string (const std::string&, bool, int&, int)): Loop over
-	yyparse to handle multi-line strings.
-	Move call to unwind_protect::run_frame to end of function.
-	Don't reset parser before calling yyparse.
-	Correctly handle return, break, and continue.
-
-	* input.cc (input_from_eval_string_pending): New global variable.
-	(get_usr_input): Use it.
-	* input.h (input_from_eval_string_pending): Provide decl.
-
-2002-03-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Don't unwind_protect num_named_args (it doesn't change on
-	recursive calls).
-	Do re-initialize curr_va_arg_number to num_named_args after
-	unwind_protecting.
-
-	* ov-usr-fcn.h (octave_user_function::clear_args_passed): Delete.
-	(octave_user_function::saved_args): New data member.
-	(octave_user_function::save_args_passed): New function.
-	(octave_user_function::restore_args_passed): Ditto.
-	* ov-usr-fcn.cc (clear_args_passed): Delete.
-	(restore_args_passed): New function.
-	(octave_user_function::do_multi_index_op): Correctly save and
-	restore args passed for recursive calls.
-
-	* TEMPLATE-INST/SLStack-ovl.cc: New file.
-	* Makefile.in: Add it to the list.
-
-2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
-	Handle define_all_return_values after function is evaluated.
-	From Paul Kienzle <pkienzle@jazz.ncnr.nist.gov>.
-
-	* ov-scalar.cc (convert_to_str): Use octave_value (std::string)
-	constructor instead of octave_value (char *) constructor so that
-	setstr (0) will work.
-
-	* pager.cc (octave_pager_buf::sync): Set pointer to beginning
-	of buffer after calling flush_currnt_contents_to_diary.
-	(octave_diary_buf::sync): Call eback only once.
-
-2002-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (.): Remove test for EOF since it is already handled
-	separately.
-
-2001-12-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_mat5_binary_element):
-	Extract dimensions directly from tc.
-	Handle ranges the same as real matrices.
-
-2001-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (DATA_REDUCTION): If no DIM arg, pass -1 to FCN.
-
-2001-11-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-conf.h.in (FFTW_LIBS, LD_CXX, LIBOCT_PATHSEARCH,
-	LIBOCT_READLINE, MKOCTFILE_LFLAGS): Substitute.
-	* toplev.cc (octave_config_info): Add them to the map.
-
-2001-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Don't bother to give OUTPUT
-	matrix a size before calling integration function.
-
-2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	Makefile.in (OCTAVE_LIBS): Add $(LIBOCT_READLINE) and
-	$(LIBOCT_PATHSEARCH) to the list.
-
-2001-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dassl.cc (dassl_user_function): Allow user
-	supplied RES function to return IDID as second value.
-
-2001-07-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Clear help_buf after documenting function.
-
-2001-06-29  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* defun-int.h (DEFINE_FUN_INSTALLER_FUN{2,3}): New macros.
-	(DEFINE_FUN_INSTALLER_FUN): Use.
-	* dynamic-ld.cc ({STRINGIFY, STRINGIFY1}): New macros.
-	(octave_dynamic_loader::mangle_name): Support dynamic linking
-	for GNU v3 and Sun C++ ABI.
-
-2001-06-26  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add GCC3
-	libstdc++-v3 support.
-	* load-save.cc (save_mat5_binary_element): Cast arguments to the
-	correct type.
-	(save_ascii_data): Eliminate compiler warning.
-	* toplev.cc (system): Prefix std::.
-
-2001-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cx-mat.cc: Deleve unnecessary instantiation of assign function.
-	* ov-re-mat.cc: Likewise.
-	* ov-re-nd-array.cc: Likewise.
-	* ov-str-mat.cc: Likewise.
-	* ov-bool-mat.cc: Likewise.
-
-	* load-save.cc (save_ascii_data): When saving string data, get raw
-	string value for matrix row since there may be embedded nuls.
-
-	* pt-mat.cc (Vstring_fill_char): No longer static.
-	* pt-mat.h: Provide declaration.
-
-2001-05-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (initialize_pathsearch): Save initial value of the
-	TEXMFDBS environment variable here.
-	* toplev.cc (restore_texmfdbs_envvar): New function.
-	(Fsystem): Set TEXMFDBS back to original value before running
-	subprocesses.
-
-2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* Makefile.in (octave): Add $(FFTW_LIBS).
-
-2001-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/sort.cc (mx_sort): Check for NaNs in comparisons.
-
-2001-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTAVE_LIBS): Delete $(LIBREADLINE) from the list.
-	(octave): Delete TERMLIBS from link command.
-	* oct-conf.h.in: Delete references to LIBREADLINE, TERMLIBS.
-	* toplev.cc (octave_config_info): Delete entries for LIBREADLINE,
-	TERMLIBS.
-
-2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-lib): Don't use mk-libdir-link.
-	(install-inc): Don't use mk-includedir-link.
-
-2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (fold (tree_binary_expression *)):
-	Set discard_error_messages here instead of buffer_error_messages.
-	Don't add clear_global_error_variable to the unwind_protect stack.
-	(fold (tree_unary_expression *)): Likewise.
-	(finish_colon_expression): Likewise.
-	(finish_matrix): Likewise.
-
-	* error.cc (panic): Set discard_error_messages to false here.
-	(verror): Return immediately if discard_error_messages is true.
-
-	* error.cc (discard_error_messages): New global variable.
-	* error.h: Provide declaration.
-
-2001-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: If unexpected character is EOF, report EOF error instead
-	of invalid character error.
-
-2001-04-18  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* load-save.cc (read_mat5_binary_element): Cast arguments to the
-	correct type when adding stream positions.
-	* DLD-FUNCTIONS/det.cc (det): Explicity create a Complex value to
-	work around a Sun C++ type conversion bug.
-
-2001-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.cc (define_builtin_const): Don't call replace_all_defs
-	here.
-
-	* error.cc (error_message_buffer): Now static.
-	* error.h (error_message_buffer): Delete extern declaration.
-
-2001-03-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/besselj.cc (besselh): Use K arg.
-	From: Thomas Stuart <tstuart@ing.sun.ac.za>.
-
-	* oct-stream.cc (get_size): Don't allow [Inf, N] as a size
-	specification for the read and scanf functions.
-	(get_size): SIZE is now an Array<double> instead of a Matrix object.
-	(read): Likewise.  Change all callers.
-	(scanf): Likewise.  Change all callers.
-
-2001-03-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Only return rcond if nargout > 1.
-	* DLD-FUNCTIONS/inv.cc (Finv): Only return rcond if nargout > 1.
-
-2001-03-26  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* DLD-FUNCTIONS/det.cc (Fdet): Suppress warning, but return rcond.
-	* DLD_FUNCTIONS/inv.cc (Finv): Return rcond if requested.
-
-2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt.h (tree::break_statement): New static member.
-	(tree::break_function): Make const.
-	* pt.cc (tree::break_statement): Initialize here.
-	(tree::break_function): Make const.
-	* pb-bp.h (break_statement): Delete global varaible declaration.
-	* pt-bp.cc (break_statement): Delete global variable definition.
-
-	* pt-bp.h (tree_breakpoint::bp_list): Rename from lst.
-
-	* pt.h: Don't inlcude ov-usr-fcn.h.
-	Provide forward declaration of octave_user_function class.
-
-2001-02-28  Ben Sapp  <bsapp@lanl.gov>
-
-	* debug.cc (get_user_function): Simplify by using curr_function.
-	(Fdbg_where): New function.
-	(Fdbg_list): Now DLD_TEXT instead of DLD_FCN.
-	(Fdbg_set): Likewise.
-	(Fdbg_delete): Likewise.
-
-	* pt-bp.h (break_statement): New global variable.
-	(MAYBE_DO_BREAKPOINT): Check for dbg_next and dbg_step.
-	Print line, column, and current statement.
-	* pt-bp.cc (break_statement): New global variable
-	(tree_breakpoint::visit_do_until_command): Return immediately if
-	we've already found the line.
-	(tree_breakpoint::visit_colon_expression): Set breakpoint info here.
-	(tree_breakpoint::visit_binary_expression): Recurse here when
-	checking for breakpoints.
-
-	* debug.cc: Move here from DLD-FUNCTIONS/debug.cc.
-	* Makefile.in (DIST_SRC): Add it to the list.
-	(DLD_XSRC): Delete it from the list.
-
-	* pt.h (tree::last_line, tree::break_function): New static members.
-	* pt.cc(tree::last_line, tree::break_function): Initialize them.
-
-	* pt-cell.h (tree_cell::tree_cell): Accept line and column info.
-	* pt-mat.h (tree_matrix::tree_matrix): Likewise.
-
-	* ov-usr-fcn.h (octave_user_function::sym_tab): Delete.
-
-	* input.cc (get_user_input): Handle dbg_next.
-	Set tree:break_function and tree::last_line when doing dbg_step.
-
-2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_string): Save line and column information in token.
-	(is_keyword): Save line and column information for plot style and
-	axes tokens.
-
-	* toplev.cc (main_loop): Set retval to non-zero value if error
-	occurs when not interactive.
-
-2001-02-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (gobble_leading_white_space): Handle CRLF here too.
-	* lex.l (check_for_garbage_after_fcn_def): Likewise.
-
-	* lex.l: Add numeric value of character to error message for
-	unrecognized characters.
-
-2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): For empty matrix
-	args, make Octave's min	and max behave like Matlab.
-
-2001-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-s-s.cc (el_or, el_and): Return bool value.
-
-2001-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-binop.cc (tree_boolean_expression::rvalue):
-	Don't cast result to double.
-
-	* OPERATORS/op-b-b.cc: Allow & and | operators to return bool values.
-
-2001-02-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (DATA_REDUCTION): Undo previous change.
-
-2001-02-13  Matthew W. Roberts  <matt@nephi.tamu.edu>
-
-	* load-save.cc (Fload): Accept -4 as an alias for -v4 and -mat4-binary.
-	(Fsave): Likewise.
-
-2001-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (lexical_feedbac::init):
-	Initialize looking_at_matrix_or_assign_lhs too.
-
-2001-02-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (DATA_REDUCTION): Allow FCN(x,0) to be equivalent to FCN(x).
-
-2001-02-06  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* oct-stream.cc (octave_scan): Partially implement and specialize
-	for char*.  Delete the old template instantiations.
-	(BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf.
-	(octave_base_stream::do_scanf): Pass correct parameter to
-	do_scan_conv.
-
-2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
-
-	* pr-output.cc (set_format): Add std:: namespace qualifier as
-	needed.
-
-	* oct-stream.cc (octave_scan): Implement, and specialize for
-	char*. Delete the old template instantiations.
-	(BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf.
-	(octave_base_stream::do_scanf): Pass correct parameter to
-	do_scan_conv.
-
-	* Makefile.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Use to create
-	archive libraries containing templates.
-
-	* c-file-ptr-stream.h: Include <fstream>. Use <cstdio> instead of
-	<stdio.h>
-	(c_file_ptr_buf::int_type): Compat typedef for non-ISO libstdc++.
-	(c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Use.
-	(c_file_ptr_buf::c_file_ptr_buf): Handle various compilers.
-	(c_file_ptr_buf::file_number): New member function.
-	(c_file_ptr_buf::fd): New private data.
-	(i_c_file_ptr_stream::i_c_file_ptr_stream): Initialize stream
-	correctly.
-	(o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise.
-	* c-file-ptr-stream.cc
-	(c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Add
-	ISO-compliant EOF handling.
-	* oct-stream.cc (octave_base_stream::file_number): Use
-	c_file_ptr_buf::file_number to get underlying file descriptor.
-
-	* comment-list.cc: Add missing class qualifier.
-
-	* file-io.cc, load-save.cc, mappers.cc, oct-fstrm.cc, oct-fstrm.h,
-	oct-iostrm.cc, oct-iostrm.h, oct-stdstrm.cc, oct-stdstrm.h,
-	oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h,
-	ov-base-nd-array.cc, ov-base-scalar.h, ov-complex.cc, ov-cx-mat.cc,
-	pager.cc, pr-output.cc, procstream.h, pt-bp.h, utils.cc:
-	Add std:: namespace qualifier as needed, and replace
-	deprecated or invalid libstdc++-v2 names with standard ones
-	where appropriate.
-
-	* DLD-FUNCTIONS/minmax.cc: Fix docstring.
-
-	* oct-fstrm.cc (octave_fstream::octave_fstream): Maintain fix for
-	libstdc++-v2.
-
-	* oct-stdstrm.cc (octave_ostdiostream::create): Remove default
-	parameter value in definition.
-
-	* oct-stream.cc (octave_stream::mode_as_string): Don't assume
-	std::iso::openmode is an integral quantity.
-
-	* pager.cc, procstream.h: Initialize streams correctly.
-
-	* utils.cc: Use CXX_ISO_COMPLIANT_LIBRARY guard.
-
-	* ov-base-nd-array.cc (idx_list_to_idx_array): Inline.
-
-	* ov-base-scalar.h (octave_base_scalar::octave_base_scalar): Use
-	``const ST& s'' instead of ST to workaround gcc3 complex bug.
-
-2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (next_token_is_bin_op): Remove Checks for spacing except
-	for ops that begin with +, - but are not ++, --, +=, or -=.
-
-2001-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (get_user_input): Handle dbg_cont and dbg_step here.
-	* debug.cc (Fdbg_cont): Delete.
-	* pt-bp.h (MAYBE_DO_BREAKPOINT): Check tree::break_next here.
-	* pt.h (tree::break_next): New static member.
-	* pt.cc: Initialize it.
-
-	* parse.h (feval (const octave_value_list&, int)):
-	Set default value for nargout.
-	(feval (const std::string&, const octave_value_list&, int)):
-	Set default values for args and nargout.
-
-2001-02-01  Ben Sapp  <bsapp@lanl.gov>
-
-	* DLD-FUNCTIONS/debug.cc: New file.
-	* pt-bp.h, pt-bp.cc: New files, for breakpoints.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* pt-stmt.cc (tree_statement_list::set_breakpoint,
-	tree_statement_list::delete_breakpoint,
-	tree_statement_list::list_breakpoints): New functions.
-
-	* pt.h (tree::break_point): New data member.
-	(tree::set_breakpoint, tree::delete_breakpoint, tree::is_breakpoint):
-	New virtual functions.
-
-	* pt-mat.cc (tree_matrix::rvalue): Check for breakpoint here.
-	* pt-unop.cc (tree_prefix_expression::rvalue): Likewise.
-	(tree_postfix_expression::rvalue): Likewise.
-	* pt-loop.cc (tree_do_until_command::eval): Likewise.
-	(DO_LOOP): Likewise.
-	(tree_simple_for_command::eval): Likewise.
-	(tree_complex_for_command::eval): Likewise.
-	* pt-assign.cc (tree_simple_assignment::rvalue): Likewise.
-	* pt-binop.cc (tree_binary_expression::rvalue): Likewise.
-	(tree_boolean_expression::rvalue): Likewise.
-	* pt-cell.cc (tree_cell::rvalue): Likewise.
-	* pt-colon.cc (tree_colon_expression::rvalue): Likewise.
-	* pt-except.cc (tree_try_catch_command::eval): Likewise.
-	(tree_unwind_protect_command::eval): Likewise.
-	* pt-id.cc (tree_identifier::rvalue): Likewise.
-	(tree_identifier::lvalue): Likewise.
-	* pt-indir.cc (tree_indirect_ref::rvalue): Likewise.
-	* pt-jump.cc (tree_break_command::eval): Likewise.
-	(tree_continue_command::eval): Likewise.
-	(tree_return_command::eval): Likewise.
-
-2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Map.h, Map.cc (CHMap<C>::operator = (const CHMap&)): New function.
-	(Map<C>::operator = (const Map&)): Likewise.
-	(Map<C> (const Map&)): Likewise.
-
-	* OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-s.cc,
-	OPERATORS/op-m-cs.cc, OPERATORS/op-m-s.cc:
-	Make ldiv operator work for row vector by scalar ops.
-
-	* OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-m.cc,
-	OPERATORS/op-s-cm.cc, OPERATORS/op-s-m.cc:
-	Make div operator work for scalar by column vector ops.
-
-2001-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (safe_fclose): Discard comments at the end of a file.
-
-2001-01-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (pr_where): Call pr_where_1 with two args, not one, to
-	avoid processing format escapes that might appear in formatted code.
-
-2001-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (vwarning): Write to output_buf, then send formatted
-	message to diary and error streams.
-
-2001-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
-	Handle empty matrix dimensions correctly.
-
-2000-12-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.h (octave_pager_buf::diary_skip): New data member.
-	(octave_pager_buf::octave_pager_buf): Initialize it.
-	* pager.cc (octave_pager_buf::set_diary_skip): New function.
-	(octave_pager_stream::set_diary_skip): New function.
-	(octave_pager_buf::sync): Call flush_current_contents_to_diary
-	instead of octave_diary.write.
-	(octave_pager_buf::flush_current_contents_to_diary): Use
-	diary_skip, reset when done.
-	(open_diary_file): Call octave_stdout.set_diary_skip here.
-
-2000-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): New macro.
-	(min, max): Use it.
-
-	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): New macro.  If single arg
-	is empty, return empty matrix result and empty matrix for index.
-	(Fmin, Fmax): Use MINMAX_BODY, so we have consistent definition
-	for min and max functions.
-
-2000-11-30  Joerg Specht  <joerg.specht@ins.uni-stuttgart.de>
-
-	* help.cc (display_help_text): Append new line at end of doc string.
-
-2000-11-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/lsode.cc (LSODE_ABORT1, LSODE_ABORT2): Omit `##'
-	in macro definition since they are not needed to paste strings
-	together and picky compilers choke on them.
-	* DLD-FUNCTIONS/quad.cc (QUAD_ABORT1, QUAD_ABORT2): Likewise.
-	* DLD-FUNCTIONS/fsolve.cc (FSOLVE_ABORT1, FSOLVE_ABORT2): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (DASSL_ABORT1, DASSL_ABORT2): Likewise.
-
-2000-11-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkbuiltins (XDEFUNX_INTERNAL): New macro.
-	* mkgendoc (XDEFUNX_INTERNAL): Likewise.
-	* defun-int.h (DEFUNX_INTERNAL): Use it.
-
-	* defun.h (DEFUNX): New macro.
-	* defun-int.h (DEFUNX_INTERNAL, DECLARE_FUNX): New macro.
-	(DECLARE_FUN): Define in terms of DECLARE_FUNX.
-
-	* mkdefs: Read and print one line at a time, so we can force
-	patterns to match only at the beginning of a line.
-
-	* defun-int.h (UNDERSCORIFY): Omit `##' in macro definition since
-	they are not needed to paste strings together and picky compilers
-	choke on them.
-
-2000-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_ascii_data_for_plotting): New function.
-	* pt-plot.cc (save_in_tmp_file): Use it instead of save_ascii_data.
-
-	* load-save.cc (save_ascii_data): Warn if saving Inf or NaN values.
-	New arg, infnan_warned.  Use it to warn just once per set.
-	Now static.
-	(do_save): New arg, infnan_warned.  Pass to save_ascii_data.
-	(save_vars): Initialize infnan_warned here, pass to do_save.
-
-2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* file-io.cc (Ffprintf): If no file id parameter, don't return
-	count of characters if nargout is 0 (for compatibility with
-	Matlab).
-
-2000-11-16  Ben Sapp  <bsapp@lanl.gov>
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Declare loop counter as
-	volatile int, not just volatile.
-
-2000-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (skip_comments): Allow % as comment character too.
-	(extract_keyword): Likewise.
-
-	* Makefile.in (oct-gperf.h): Remove -a, -g, and -p flags for gperf.
-
-2000-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (do_load): Allow result to be returned instead of
-	inserting variables in the symbol table.  Change patterned after
-	patch by Kian Ming Adam Chai <caijianming@yahoo.co.uk>.
-
-2000-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (ops.cc): Don't substitute BLAS_LIBS and LIBS here.
-
-	* oct-conf.h.in (OCTAVE_CONF_SPECIAL_MATH_LIB): Delete.
-	(OCTAVE_CONF_BLAS_LIBS): Add.
-	* toplev.cc (octave_config_info): Likewise, add BLAS_LIBS and
-	remove SPECIAL_MATH_LIB from the struct.
-
-	* parse.y (feval (const octave_value_list&, int)): Don't panic
-	while processing arg names if arg.length() and arg_names.length()
-	differ.
-
-2000-10-12  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
-
-	* ov-cell.h (octave_cell::is_cell): New function.
-
-	* pt-select.cc (equal): New static function.
-	(tree_switch_case::label_matches): Use it to compare case label
-	against arg.  Handle cell arrays as case labels.
-
-2000-10-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	Change patterned after patch by Cai Jianming
-	<caijianming@yahoo.co.uk> to support for DIM arg in 2.0.x sources.
-
-	* data.cc (DATA_REDUCTION): New macro.  Handle second DIM arg here.
-	(Fcumprod): Replace function body with DATA_REDUCTION.
-	(Fcumsum): Likewise.
-	(Fprod): Likewise.
-	(Fsum): Likewise.
-	(Fsumsq): Likewise.
-
-2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc (pr_where_2): New function.
-	(pr_where_1): Use it instead of error_1 to avoid setting error_state.
-
-2000-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xdiv.cc (xdiv): Warn if execution falls through to lssolve.
-
-2000-09-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (FERRNO): New function (currently commented out).
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::close): Call flush here.
-	(c_file_ptr_buf::~c_file_ptr_buf): Not here.
-	* c-file-ptr-stream.h (c_fie_ptr_buf::close_fcn): New typedef.
-	(c_file_ptr_buf::cf): New data member.  Add default constructor arg.
-	(class c_file_ptr_buf): Derive from filebuf, not streambuf.
-	(i_c_file_ptr_stream, o_c_file_ptr_stream): Handle close function here.
-	* oct-procstrm.cc (octave_iprocstream, octave_oprocstream): Likewise.
-	(octave_iprocstream::do_close, octave_oprocstream::do_close): Delete.
-	* oct-stdstrm.cc (octave_base_stdiostream::~octave_base_stdiostream):
-	Don't do anything.
-	(octave_istdiostream::create): Handle close function here.
-	(octave_istdiostream::octave_istdiostream): Likewise.
-	(octave_ostdiostream::create): Likewise.
-	(octave_ostdiostream::octave_ostdiostream): Likewise.
-	(class octave_base_stdiostream): Don't cache FILE pointer here.
-
-2000-09-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* syscalls.cc (Ffcntl): Don't assume that the file id passed in is
-	the same as the underlying system file id.
-
-2000-08-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Use octave_time, not time.
-
-2000-08-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (printf_value_cache::double_value): Also set
-	curr_stat to conversion_error if there are no values at all.
-
-2000-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Flink, Fsymlink, Freadlink): New functions.
-
-2000-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (Vsave_header_format_string): New variable.
-	(symbols_of_load_save): DEFVAR it.
-	(save_header_format, default_save_header_format): New functions.
-	(write_header): Use Vsave_header_format_string here.
-
-2000-07-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-pr-code.h (tree_print_code::curr_print_indent_level,
-	(tree_print_code::beginning_of_line): No longer static.
-	(tree_print_code::tree_print_code): Initialize them here.
-	* pt-pr-code.cc: Not here.
-
-	* pt-stmt.cc (tree_statement::eval): Set curr_statement here.
-	(tree_statement_list::eval): Not here.
-
-	Debug-on-error stuff based on a patch submitted by Paul Kienzle
-	<pkienzle@kienzle.powernet.co.uk> for 2.0.x.
-
-	* error.cc (Vdebug_on_warning): New static flag variable.
-	(debug_on_warning): New function.
-	(symbols_of_warning): DEFVAR debug_on_warning.
-	(warning): Handle debug_on_warning here.
-
-	* input.cc (do_keyboard): New function.
-	(Fkeyboard): Use it to do the real work.
-	* pt-stmt.cc (curr_statement): New static variable.
-	(tree_statement::eval): Save and restore it here.
-	* error.cc (Vdebug_on_error): New static flag variable.
-	(debug_on_error): New function.
-	(symbols_of_error): DEFVAR debug_on_error.
-	(pr_where, pr_where_1): New functions.
-	(error): Handle debug_on_error here.
-
-2000-07-20  Joao Cardoso  <jcardoso@inescporto.pt>
-
-	* Makefile.in (octave): Link with $(LD_CXX) instead of $(CXX)
-
-2000-07-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::oscanf): Advance to next
-	format element before attempting to pick up any trailing stuff.
-
-2000-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (next_token_is_bin_op): Don't recognize `..' as a binary op.
-
-	* load-save.cc (get_file_format): Call read_mat5_binary_file_header
-	with third arg true instead of false, so we don't barf if the file
-	is not a matlab v5 binary file.
-
-2000-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (octave): Link to ../libcruft/blas-xtra/xerbla.o here.
-
-	* octave.cc (main): Remove kluge to attempt linking our version of
-	xerbla.
-
-2000-07-07  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* load-save.cc (have_h5giterate_bug): New file-scope variable.
-	(hdf5_read_next_data): Only increment current_item if
-	have_h5giterate_bug is true.
-	(read_hdf5_data): Set have_h5giterate_bug here.
-	Only increment hs.current_item if have_h5giterate_bug is true.
-
-2000-07-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::close):
-	Return -1 if file pointer is NULL.
-	Set file pointer to 0 after closing.
-	(c_file_ptr_buf::~c_file_ptr_buf): Call close after flushing.
-
-2000-07-05  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* Makefile.in (BLAS_LIBS): Substitute here.
-	(octave): Use $(BLAS_LIBS) in the final link command.
-
-2000-06-30  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	* Makefile.in (octave): Link $(FLIBS) last.
-	* octave.cc (main): Force our own xerbla to be linked instead of
-	some system version.
-
-2000-06-29  James R. Van Zandt  <jrv@vanzandt.mv.com>
-
-	* load-save.cc (load_save_format): New value, LS_MAT5_BINARY.
-	(arrayclasstype, mat5_data_type): New enums.
-	(read_mat5_binary_data): New function.
-	(read_mat5_tag): New function.
-	(read_mat5_binary_element): New function.
-	(read_mat5_binary_file_header): New function.
-	(get_file_format): Check for mat5 binary format too.
-	(do_load): Handle mat5 binary format.
-	(write_mat5_tag): New function.
-	(write_mat5_array): New function.
-	(class mat5_callback): New class.
-	(save_mat5_binary_element): New functnon.
-	(do_save): Handle mat5 binary format.
-	(write_header): Handle LS_MAT5_BINARY case too.
-	(save_user_variables): Handle LS_MAT5_BINARY case too.
-	(Fsave): Handle LS_MAT5_BINARY case too.
-	(Fload): Handle LS_MAT5_BINARY case too.
-
-2000-06-29  Steven G. Johnson  <stevenj@alum.mit.edu>
-
-	All of the following changes are protected by #ifdef HAVE_HDF5.
-
-	* load-save.cc (load_save_format): New value, LS_HDF5.
-	(make_valid_identifier): New function.
-	(class hdf5_fstreambase, class hdf5_ifstream, class hdf5_ofstream):
-	New classes for reading and writing hdf5 data.
-	(hdf5_types_compatible): New function.
-	(hdf5_import_multidim): New function.
-	(hdf5_check_attr): New function.
-	(hdf5_read_next_data): New function.
-	(hdf5_make_complex_type): New function.
-	(hdf5_make_range_type): New function.
-	(read_hdf5_data): New function.
-	(get_file_format): Handle HDF5 format.
-	(do_load): Handle LS_HDF5 case.
-	(Fload): Handle HDF5 format.
-	(hdf5_add_attr): New function.
-	(save_type_to_hdf5): New function.
-	(add_hdf5_data): New function.
-	(do_save): Handle HDF5 format.
-	(get_default_save_format): Handle LS_HDF5 case.
-	(write_header): Handle LS_HDF5 case.
-	(save_user_variables): Handle HDF5 format.
-	(Fsave): Handle HDF5 format.
-
-2000-06-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (display_help_text): If writing to filter fails, send
-	unformatted text to output stream.
-
-2000-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-bm-bm.cc (eq): Define using mx_el_eq, not operator ==.
-	(ne): Likewise, use mx_el_ne, not operator !=.
-
-	* pr-output.cc (Fdisp): Delete.
-
-2000-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (float_format::float_format): Set default values
-	for width and precision to -1.
-	(operator << (ostream&, pr_formatted_float&): Set width and
-	precision if values are >= 0.
-	(set_real_format, set_real_matrix_format, set_range_format,
-	set_complex_format, set_complex_matrix_format): If we have all
-	integers, infinities, or nans, set precision equal to field width.
-
-	* load-save.cc (read_ascii_data): Allow empty strings and string
-	vectors to be restored.
-
-	* variables.cc (var_matches_any_pattern): New function.
-	(Fclear): Use it to make exclusive clear work correctly.
-
-2000-06-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-range.h (octave_range::is_numeric_type): New function.
-
-	* sysdep.cc (Fkbhit): Also ask for input if forced_interactive.
-
-2000-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (oct-gperf.h): Use $(GPERF) instead of gperf.
-
-2000-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/qz.cc (Fqz): When computing finite generalized
-	eigenvalues, don't write past the end of the array.
-
-2000-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-nd-array.h, ov-base-nd-array.cc, ov-re-nd-array.h,
-	ov-re-nd-array.h: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-	* pt-stmt.h, pt-stmt.cc (class tree_statement):
-	Store comments associated with this parse tree element.
-	* pt-select.h, pt-select.cc (class tree_if_clause,
-	class tree_if_command, class tree_switch_case
-	class tree_switch_command): Likewise.
-	* pt-loop.h, pt-loop.cc (class tree_while_command,
-	class tree_do_until_command, class tree_simple_for_command,
-	class tree_complex_for_command): Likewise.
-	* pt-except.h, pt-except.cc (class tree_try_catch_command,
-	class tree_unwind_protect_command): Likewise.
-	* ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Likewise.
-	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::print_comment_elt,
-	tree_print_code::print_comment_list,
-	tree_print_code::print_indented_comment): New functions.
-	(tree_print_code::visit_simple_for_command,
-	tree_print_code::visit_complex_for_command,
-	tree_print_code::visit_octave_user_function_header,
-	tree_print_code::visit_octave_user_function_trailer,
-	tree_print_code::visit_if_command, tree_print_code::visit_statement,
-	tree_print_code::visit_switch_case,
-	tree_print_code::visit_switch_command,
-	tree_print_code::visit_try_catch_command,
-	tree_print_code::visit_unwind_protect_command
-	tree_print_code::visit_while_command,
-	tree_print_code::visit_do_until_command): Handle comments.
-	* lex.l, parse.y: Handle comments in parse trees.
-	* comment-list.h, comment-list.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-
-2000-04-23  etienne grossmann  <etienne@anonimo.isr.ist.utl.pt>
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error):
-	New args x and y, for dimension mismatch info.
-	Change callers where appropriate.
-	(tm_const::init): Report mismatched column dimensions.
-
-2000-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc (kbhit): Also clear cin if at EOF.
-
-2000-04-11  Joao Cardoso  <jcardoso@inescn.pt>
-
-	* sysdep.cc (kbhit): New arg, wait.
-	(raw_mode): Ditto.
-	(Fkbhit): If given an arg, call kbhit with wait = false.
-
-	* DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Fix doc string.
-
-2000-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load): Undo previous change.
-
-2000-04-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (octave_dynamic_loader::do_load): Also fail with
-	error message if we don't find the mangled function name in the
-	file.
-
-2000-03-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (printf_value_cache::string_value): Return string
-	matrices in a Matlab-compatible way.
-	(printf_value_cache): Redesign the way list_exhausted works.
-
-	* oct-fstrm.cc (octave_fstream::do_close): New function.
-	* oct-stdstrm.cc (octave_istdiostream::do_close): Ditto.
-	(octave_ostdiostream::do_close): Ditto.
-	* c-file-ptr-stream.cc (c_file_ptr_buf::close): Ditto.
-	(i_c_file_ptr_stream::close): Ditto.
-	(o_c_file_ptr_stream::close): Ditto.
-	* oct-prcstrm.cc (octave_iprocstream::do_close): Ditto.
-	(octave_oprocstream::do_close): Ditto.
-	(octave_iprocstram::~octave_iprocstram): Call do_close here.
-	(octave_iprocstram::~octave_oprocstram): Likewise.
-
-	* oct-stream.h (octave_base_stream::do_close): New virtual function.
-	(octave_base_stream::close): If stream is open, call do_close.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::flush): New function.
-	(c_file_ptr_buf::~c_file_ptr_buf): Use it.
-	(c_file_ptr_buf::overflow): Ditto.
-	(c_file_ptr_buf::sync): Ditto.
-
-2000-03-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-procbuf.cc (octave_procbuf::open): Make output streams line
-	buffered.
-
-2000-03-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (my_friendly_exit): Prefix failure messages with
-	panic instead of error.
-
-	* c-file-ptr-stream.cc (c_file_ptr_buf::~c_file_ptr_buf):
-	Avoid dereferencing NULL pointer.
-
-	* oct-stream.cc (printf_format_list::add_elt_to_list,
-	printf_format_list::process_conversion,
-	printf_format_list::finish_conversion): New args, flags, fw, and prec.
-	(printf_format_list::printf_format_list): Save more complete info.
-	(printf_format_list::printme): Print flags, fw, and prec.
-	(octave_base_stream::printf): Simplify.
-	(do_printf_conv): Delete have_arg arg, since it is always true now.
-	(octave_base_stream::do_printf): Handle case of no args and %
-	directly instead of using do_printf_conv.
-	(printf_value_cache::exhausted): Rename from no_more_values.
-	(DO_PCT_CONVERSION): New macro
-	(octave_base_streain::do_scanf, octave_base_streain::do_oscanf):
-	Use it.
-	(scanf_format_list::finish_conversion): `%' counts as a conversion too.
-	Also don't forget to set type for it.
-	(OCTAVE_SCAN_0): Delete.
-	(OCTAVE_SCAN): Rename from OCTAVE_SCAN_1.
-	(octave_base_stream::scanf, octave_base_stream::oscanf): Don't
-	special-case number of conversions here.
-	(octave_base_stream::oscanf, octave_base_stream::do_oscanf): Only
-	cycle through fmt elements if the number of conversions is greater
-	than 0.
-
-	* oct-stream.h (scanf_format_list::next): New arg, `cycle'.
-	(printf_format_list::next): New arg, `cycle'.
-	(printf_format_list::last_elt_p): New function.
-	(printf_format_elt): New fields fw, prec, and flags.
-	Define copy constructor and assignment operator.
-	(scanf_format_elt): Define copy constructor and assignment operator.
-
-2000-03-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (OCTAVE_SCAN_0, OCTAVE_SCAN_1): New macros.
-	(do_scanf_conv, BEGIN_S_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION,
-	do_scanf, scanf, do_oscanf, do_oscanf, oscanf): Use them instead
-	of calling istream::scan directly.
-	(octave_scan): New function.
-	(do_scanf_conv): Second arg is now scanf_format_elt instead of char*.
-	Change all callers.
-
-	* oct-procbuf.h, oct-procbuf.cc (octave_procbuf):
-	Derive from c_file_ptr_buf instead of filebuf.
-
-	* oct-stream.cc (octave_base_stream::printf): Use octave_format
-	instead of ostream::form.  Return number of characters written.
-
-2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (do_printf_conv): Use octave_format instead of
-	ostream::form.  Return number of characters written.
-	(octave_base_stream::do_printf): Return number of characters written.
-
-	* error.cc (verror, vwarning): Use octave_format instead of
-	ostream::vform.
-
-	* utils.cc (octave_format, octave_vformat): New functions.
-	* cutils.c (octave_snprintf, octave_vsnprintf): New functions.
-
-	* oct-lvalue.h (dummy_val): New static variable.
-	(octave_lvalue::octave_lvalue): Use it to initialize val.
-
-	* variables.cc (is_valid_function): Look in the global symbol
-	table for functions.
-
-2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (LIBRARIES): Conditionally define.
-	(libraries): Depend on $(LIBRARIES).
-	(octave): Depend on $(LIBRARIES), not libraries.  Also depend on
-	stamp-prereq and stamp-oct-links.
-	(all): Don't depend on stamp-prereq or stamp-oct-links.
-	(liboctinterp.$(LIBEXT), liboctinterp.$(SHELXT)): Delete target
-	before rebuilding.
-
-2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
-
-	* Makefile.in (libraries): Depend only on library targets, not
-	archive members.
-
-2000-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (objects): New target
-
-	* c_file_ptr_stream.h, c_file_ptr_stream.cc: New files.
-	* oct-stdstrm.h, oct-stdstrm.cc, oct-prcstrm.cc:
-	Use c_file_ptr_buf, i_c_file_ptr_stream, and o_c_fie_ptr_stream
-	instead of stdiobuf, istdiostream, and ostdiostream.
-
-	* pr-output.cc (set_real_format, set_real_matrix_format,
-	set_complex_format, set_complex_matrix_format, set_range_format):
-	Do the right thing again for int, NaN, and Inf values.
-
-2000-03-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (pr_plus_format): Rename from do_plus_format.
-	Change all callers.
-	(pr_float, pr_complex): New arg, scale.  Handle scaling here.
-	(float_format): New class for managing details of formatting
-	floats.  Use it instead of character string formats and the
-	nonstandard form() function from the GNU iostream library.
-
-2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): Also delete gendoc.
-
-2000-02-18  James R. Van Zandt  <jrv@vanzandt.mv.com>
-
-	* load-save.cc (Vcrash_dumps_octave_core): Fix comment for this var.
-
-2000-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_number): Don't transorm `[Dd]' to `e' if reading
-	hex.
-
-2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Install files in
-	$(octincludedir)/octave.
-	(uninstall): Remove them from the correct directory too.
-
-	* defaults.h, defaults.cc (Vlocal_ver_arch_lib_dir): New variable.
-	* defaults.cc (set_default_local_ver_arch_lib_dir): New function.
-	(install_defaults): Call it.
-	(exec_path): Prepend the versioned form of the local arch lib
-	directory to the standard path.
-	* defaults.h.in (OCTAVE_LOCALVERARCHLIBDIR,
-	OCTAVE_LOCALVERFCNFILEDIR, OCTAVE_LOCALVEROCTFILEDIR):
-	Substitute these too.
-	* toplev.cc (Foctave_config_info): Add them to the struct.
-
-2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (Foctave_config_info): Add MKOCTFILE_INCFLAGS to the
-	struct.
-	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_INCFLAGS): Define.
-
-2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/balance.cc (Fbalance): Explicitly request
-	conversion from Matrix to ComplexMatrix.
-	* DLD-FUNCTIONS/qz.cc (Fqz): Likewise.
-
-	* ov-re-mat.h (octave_matrix::complex_matrix_value): Explicitly
-	request conversion from Matrix type.
-
-	* ov-ch-mat.h (octave_char_matrix::matrix_value): Explicitly
-	request conversion from charMatrix type.
-	(octave_char_matrix::complex_matrix_value): Likewise.
-	* ov-bool-mat.h (octave_bool_matrix::matrix_value): Likewise.
-	(octave_bool_matrix::complex_matrix_value): Likewise.
-
-	* ov-range.h (octave_range::complex_matrix_value): Explicitly
-	request conversion from Matrix type.
-
-	* ov-cx-mat.h, ov-re-mat.h: Explicitly request conversions from
-	diagonal matrix types in constructors.
-
-	* mappers.cc (ximag, xreal): Return double, not Complex.
-
-	* error.cc (panic): Turn off buffering of error messages.
-	Don't call flush_octave_stdout here, verror will do it for us.
-	(verror): Don't call flush_octave_stdout if buffering error messages.
-
-	* pt-except.cc (tree_try_catch_command::eval): Only restore
-	buffer_error_message value (by running the unwind_protect element
-	for it) if it has been saved.
-
-	* help.cc (Ftype): Return value if nargout is NOT equal to zero.
-	Delete unnecessary unwind_protect::begin_frame().
-
-	* toplev.cc (octave_config_info): Stuff lots of new config info in
-	the struct.
-
-	* oct-conf.h.in: Delete TARGET_HOST_TYPE.
-
-2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* siglist.c: Include <signal.h>.
-
-	* lex.l (is_plot_keyword): Add minimum match length in call to
-	almost_match.
-
-	* Makefile.in (%.df : %.cc): Don't pass -c to compiler.
-
-2000-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-mat.cc: Include pr-output.h here.
-
-	* DLD-FUNCTIONS/rand.cc (curr_rand_dist): Return const char *
-	instead of char *.
-
-	* oct-fstrm.cc (octave_fstream::seek, octave_fstream::tell):
-	Call pubseekoff instead of seekoff.
-
-	* DLD-FUNCTIONS/dassl.cc (print_dassl_option_list): Use stream
-	manipulators instead of GNU iostream-specific form function.
-	* DLD-FUNCTIONS/fsolve.cc (print_fsolve_option_list): Ditto.
-	* DLD-FUNCTIONS/lsode.cc (print_lsode_option_list): Ditto.
-	* DLD-FUNCTIONS/quad.cc (print_quad_option_list): Ditto.
-	* pr-output.cc (pr_scale_header): Ditto.
-
-	* sighandlers.h: Include signal.h here.
-	* sighandlers.cc: Not here.
-
-	* utils.cc: Include setjmp.h, not csetjmp.
-	* toplev.cc: Ditto.
-
-	* sighandlers.cc: Include signal.h, not csignal.
-
-	* pt-plot.h: Don't include csignal.
-	* toplev.cc: Ditto.
-	* oct-hist.cc: Ditto.
-	* octave.cc: Ditto.
-	* pager.cc: Ditto.
-	* input.cc: Ditto.
-	* help.cc: Ditto.
-
-	* pt-plot.cc (send_to_plot_stream): Use operator== and substr
-	method to do limited-length string comparison.
-	* input.cc (generate_completion): Likewise.
-	* ov-dld-fcn.cc (octave_dld_function::octave_dld_function): Likewise.
-	* ov-usr-fcn.cc (octave_user_function::mark_as_system_fcn_file):
-	Likewise.
-
-	* utils.cc (check_preference): Expect exact string matches.
-	* variables.cc (ignore_function_time_stamp): Likewise.
-	* lex.l (whitespace_in_literal_matrix): Likewise.
-
-	* mappers.cc (xconj, ximag, xreal): New functions.  Use them in
-	DEFUN_MAPPER calls.
-
-	* defun-int.h (DEFUN_MAPPER_INTERNAL): Cast function pointer args
-	to octave_mapper constructor.
-
-2000-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* procstream.cc (procstreambase::procstreambase,
-	procstreambase::open, procstreambase::close):
-	Call std::ios::setstate, not set.
-
-	* lex.l (plot_axes_token): Declare plot_axes as const char *.
-	Declare tmp const char **.
-
-	* oct-procbuf.h: Include fstream, not streambuf.h.
-
-	* load-save.cc (Fsave): Call pubseekoff instead of seekoff.
-	* oct-strstrm.cc (octave_base_strstream::tell): Likewise.
-	(octave_base_strstream::seek): Likewise.
-
-	* oct-stream.cc (octave_base_stream::read): Rename count to char_count.
-	(octave_base_stream::do_gets): Likewise.
-
-	* octave-stream.cc (octave_base_stream::write): Rename flt_fmt to ffmt.
-	(octave_base_stream::read): Likewise.
-
-	* TEMPLATE-INST/SLStack-sym.cc: Delete meaningless `extern
-	template' declarations.
-	* TEMPLATE-INST/Array-tc.cc: Ditto.
-
-	* TEMPLATE-INST/Map-fnc.cc: Don't try to instantiate goodCHptr or
-	CHptr_to_index here.
-	* TEMPLATE-INST/Map-tc.cc: Likewise.
-	* Map.h (CHNode::goodCHptr, CHNode::CHptr_to_index): Now member
-	functions.  Change all callers.
-
-	* load-save.cc (read_binary_file_header): Declare magic_len `const'.
-
-	* token.h (token::token (const token&), token::operator=):
-	Delete unnecessary definitions.
-
-	* oct-stream.cc (octave_stream::mode_as_string): Use
-	std::ios::binary, not std::ios::bin.
-	* load-save.cc (Fsave, Fload, save_user_variables): Likewise.
-
-	* DLD-FUNCTIONS/qz.cc (Fqz): Use Array<int> class instead of
-	trying to create automatic int array with variable size.
-
-	* variables.cc (F__dump_symbol_info__): Fix continuation char.
-	* mappers.cc (Ftoupper): Likewise.
-	* DLD-FUNCTIONS/besselj.cc (Fairy, Fbesselj): Likewise.
-	* DLD-FUNCTIONS/chol.cc (Fchol): Likewise.
-	* DLD-FUNCTIONS/det.cc (Fdet): Likewise.
-	* DLD-FUNCTIONS/eig.cc (Feig): Likewise.
-	* DLD-FUNCTIONS/gammainc.cc (gammainc): Likewise.
-	* DLD-FUNCTIONS/givens.cc (givens): Likewise.
-	* DLD-FUNCTIONS/hess.cc (hess): Likewise.
-	* DLD-FUNCTIONS/inv.cc (inv): Likewise.
-	* DLD-FUNCTIONS/log.cc (logm): Likewise.
-	* DLD-FUNCTIONS/lu.cc (lu): Likewise.
-	* DLD-FUNCTIONS/qr.cc (qr): Likewise.
-	* DLD-FUNCTIONS/schur.cc (schur): Likewise.
-	* DLD-FUNCTIONS/balance.cc (balance): Likewise.
-	* DLD-FUNCTIONS/svd.cc (svd): Likewise.
-	* DLD-FUNCTIONS/syl.cc (syl): Likewise.
-	* DLD-FUNCTIONS/expm.cc (Fexpm): Likewise.
-
-	* token.h (token::token_type, token::end_tok_type,
-	token::plot_tok_type): Delete extraneous comma from enum decls.
-	* load-save.cc (load_save_format): Likewise.
-
-	* pt-idx.cc (tree_index_expression::tree_index_expression):
-	Delete default arg values.
-	* oct-fstrm.cc (octave_fstream::octave_fstream): Likewise.
-	* oct-stream.cc (octave_stream::octave_stream): Likewise.
-
-	* siglist.h, siglist.c: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* siglist.c (sys_siglist): Move definition here from sighandlers.cc.
-	* siglist.h (sys_siglist): Move declaration here from sighandlers.h.
-
-	* ov.h, ov-bool.h, ov-bool-mat.h (bool_matrix_value):
-	Delete unnecessary arg.
-
-	* ov.h (octave_value::do_multi_index_op): Rename from do_index_op.
-
-	* ov-fcn.h (octave_function::is_system_fcn_file): Now const.
-
-	* Map.cc (index_to_CHptr): Now a macro.
-	(CHMap<C>::hash): Now a member function.
-
-	* defun-int.h (UNDERSCORIFY): New macro.
-	(DEFCONST_INTERNAL, DEFCONSTX_INTERNAL): Use it.
-
-	* data.cc (Fis_list): Fix continuation char.
-	* defaults.cc (IMAGEPATH): Likewise.
-
-	* Map.cc (CHptr_to_index, goodCHptr): Delete static decl.
-
-	* ov.h (unary_op, binary_op, assign_op): Prepend `op_' to elts.
-	Change all usses
-
-	* All source files: Sprinkle with std:: qualifier as needed.
-
-2000-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (install_signal_handlers): Add std:: qualifier
-	for set_net_handler.
-
-	* All source files: Include iostream, fstream, strstream,
-	etc. as needed instead of using forward declarations for these
-	classes.
-
-2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (input_event_hook, Finput_event_hook): New functions.
-	(hook_fcn, user_data): New static variables.
-
-2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-except.cc (do_catch_code): Don't do anything special for
-	tree_return_command::returning, or tree_break_command::breaking.
-
-	* error.cc (vwarning): New function.
-	(warning): Use it instead of calling verror.
-
-	* oct-stream.cc (octave_base_stream::oscanf):
-	Result is now always nconv+1 elements.  Return count of successful
-	conversions in last element.
-	* file-io.cc (Ffscanf, Fsscanf, Fscanf): Fix doc string.
-
-	* pt-except.cc (do_catch_code): Unwind-protect buffer_error_messages.
-	Be sure to run all unwind-protects before returning.
-	(tree_try_catch_command::eval): Add do_catch_code cleanup function
-	to unwind-protect stack before resetting buffer_error_messages.
-	Use unwind-protect to save and restore buffer_error_messages.
-	If there is no catch code, discard the cleanup function and run
-	the unwind-protect for buffer_error_messages.
-
-	* error.cc (bind_global_error_variable): Avoid dereferencing
-	error_message_buffer if it is NULL.
-
-	* parse.y (evaluating_function_body): New global flag.
-	* ov-usr-fcn.cc (octave_user_function::do_index_op):
-	Protect and set it here.
-	* parse.y (make_break_command, make_return_command): Check it here.
-
-	* error.cc (warning_state): New global flag.
-	(warning): Set it here.
-	* lex.l (reset_parser): Clear it here.
-	* parse.y (fold): Check it here.
-
-2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-walk.h (tree_walker::visit_do_until_command): New pure virtual.
-	* pt-pr-code.cc (tree_print_code::visit_do_until_command):
-	New function.
-	* pt-loop.h (tree_do_until_command): New class.
-	(tree_while_command::expr, tree_while_command::list):
-	Now protected instead of private.
-	* parse.y (make_do_until_command): New function.
-	(loop_command): Recognize do-until statement.
-	(DO, UNTIL): New tokens.
-
-	* input.cc (match_sans_spaces): Require non-blank part of test
-	string to match standard string exactly.
-
-2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.h (scanf_format_elt::char_class): New struct elt.
-	Add arg to constructor.
-	(scanf_format_elt::special_conversion): New enum.
-	* oct-stream.cc (scanf_format_list::add_elt_to_list): New arg,
-	char_class.  Pass it to scanf_format_elt constructor.
-	(scanf_format_list::scanf_format_list): Create separate list
-	elements for whitespace and literal conversions.
-	(expand_char_class): New function.
-	(scanf_format_list::finish_conversion): Extract character class
-	(not including the delimiting brackets) and expand the list of
-	characters.  Pass the result to add_elt_to_list.
-	(scanf_format_list::all_character_conversions): Also accept '^',
-	scanf_format_elt::literal_conversion, and
-	scanf_format_elt::whitespace_conversion types too.
-	(DO_WHITESPACE_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION,
-	BEGIN_C_CONVERSION, BEGIN_S_CONVERSION, DO_LITERAL_CONVERSION):
-	New macros.
-	(octave_base_stream::do_scanf, octave_base_stream::do_oscanf):
-	Use them to avoid code duplication.
-	Handle whitespace, literal text, and character class conversions.
-	(octave_base_stream::oscanf): Loop over all format list elements,
-	not just the first nconv elements.  Clear status flags on is for
-	all streams.
-
-2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xdiv.cc (result_ok): Just check value of info.
-	(solve_singularity_warning): New function.
-	(xleftdiv, xdiv): Pass pointer to solve_singularity_warning to
-	solve function.
-
-	* lex.l (handle_identifier): Set next_tok_is_eq if we are looking
-	at `=', but not if we are looking at `=='.
-
-	* pt-pr-code.cc (tree_print_code::visit_unwind_protect_command):
-	Print `unwind_protect_cleanup', not `cleanup_code'.
-
-	* pager.cc (octave_pager_buf::flush_current_contents_to_diary):
-	New function.
-	(octave_pager_stream::flush_current_contents_to_diary):
-	Ditto.
-	(close_diary_file): Use the new octave_pager_stream function to
-	try to flush the current buffer to the diary when it is closed.
-
-	* variables.cc (Fexist): Return 6 for built-in constants.
-
-	* pt-plot.cc (Fgshow): Don't append " " after last arg.
-	(Fgset): Likewise.
-
-2000-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base-mat.h (octave_base_matrix::length): Return 0 for empty
-	arrays.
-
-2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/time.cc (Fstrptime): New function.
-
-	* load-save.cc (Fsave): Add missing else.
-
-2000-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/gammainc.cc (Fgammainc): Texinfoize doc string.
-	* ov-typeinfo.cc (Ftypeinfo): Ditto.
-	* parse.y (Vwarn_future_time_stamp): Ditto.
-	* DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Ditto.
-	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Ditto.
-	* defaults.cc (VOCTAVE_HOME, Frehash): Ditto.
-	* toplev.cc (Fwarranty, Fcasesen): Ditto.
-	* utils.cc (Fdo_string_escapes, Ffile_in_loadpath): Ditto.
-	* variables.cc (F__dump_symtab_info__, F__dump_symbol_info__): Ditto.
-	* ov-list.cc (Flist, Fappend, Fnth, Freverse, Fsplice): Ditto.
-	* input.cc (Fread_readline_init_file): Ditto.
-	* file-io.cc (Fis_stream): Ditto.
-	* ov-cell.cc (Fiscell, Fcell): Ditto.
-	* pt-assign.cc (Vprint_rhs_assign_val): Ditto.
-	* pt-decl.cc (Vinitialize_global_variables): Ditto.
-	* symtab.cc (Vvariables_can_hide_functions): Ditto.
-
-	* pt-plot.cc (Fgraw, Fgset, Fgshow, Vgnuplot_command_plot,
-	Vgnuplot_command_replot, Vgnuplot_command_splot,
-	Vgnuplot_command_using, Vgnuplot_command_with,
-	Vgnuplot_command_axes, Vgnuplot_command_title,
-	Vgnuplot_command_end): Texinfoize doc strings.
-
-	* oct-procbuf.cc (__kluge_procbuf_delay__): Rename from
-	kluge_procbuf_delay.  Texinfoize doc string.
-
-2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (gobble_leading_whitespace): Discard first space character
-	after consecutive comment characters.
-	* lex.l (grab_help_text): Ditto.
-
-	* lex.l (Vwhitespace_in_literal_matrix, Vwarn_separator_insert,
-	Vwarn_single_quote_string): Texinfoize doc string.
-
-2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h, ov.cc (octave_value::column_vector_value,
-	octave_value::row_vector_value,
-	octave_value::complex_column_vector_value,
-	octave_value::complex_row_vector_value): New functions.
-	(octave_value::vector_value): Now returns Array<double>.
-	(octave_value::complex_vector_value): Now returns Array<Complex>.
-	Sprinkle conversions where necessary.
-
-	* ov.cc (Vprefer_column_vectors): Now static.
-	* ov.h (octave_value (const ComplexRowVector&),
-	octave_value (const ComplexColumnVector&),
-	octave_value (const RowVector&), octave_value (const ColumnVector&)):
-	Delete second arg.  Change all callers.
-
-	* oct-obj.h (octave_value_list (const RowVector&),
-	octave_value_list (const ColumnVector&),
-	octave_value_list (const ComplexRowVector&),
-	octave_value_list (const ComplexColumnVector&)): Likewise.
-	* ov-cx-mat.h, ov-cx-mat.cc
-	(octave_complex_matrix (const ComplexRowVector&),
-	(octave_complex_matrix (const ComplexColumnVector&)):
-	Delete second arg, simply create object with orientation
-	corresponding to vector arg.  Move constructors to class decl.
-	* ov-re-mat.h, ov-re-mat.cc (octave_matrix (const RowVector&),
-	(octave_matrix (const ColumnVector&)):
-	Delete second arg, simply create object with orientation
-	corresponding to vector arg.  Move constructors to class decl.
-
-2000-01-07  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* mappers.cc (Fconj, Ferf, Ferfc, Fgamma, Fimag, Flgamma, Flog10,
-	Freal, Fround): Add @seealso{...} to doc strings.
-
-2000-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (do_scanf): Do the right thing again for character
-	conversions.
-
-	* help.cc (display_help_text): Also strip out leading spaces
-	before Texinfo @-commands before sending doc string to makeinfo.
-	(display_help_text): Improve format of `See also' string.
-
-2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (display_help_text): Pass a definition for @seealso
-	through the filter.
-
-1999-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (Vwarn_single_quote_string): New variable.
-	(syms_of_lex): DEFVAR it.
-	(warn_single_quote_string): New function.
-	(gripe_single_quote_string): New function.
-	Use new stuff to allow warnings for code that uses single quote
-	characters to introduce string constants.
-
-1999-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkbuiltins: Add #undef quad to generated file.
-
-1999-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (Vwarn_separator_insert): New variable.
-	(syms_of_lex): DEFVAR it.
-	(warn_separator_insert): New function.
-	(maybe_warn_separator_insert): New function.
-	Use new stuff to allow warnings for code that might result in
-	auto-insertion of commas or semicolons, depending on the value of
-	whitespace_in_literal_matrix.
-
-	* parse.y (Fsource): Record function file name here too.
-
-1999-12-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (link_to_global_variable): If the local symbol is
-	not a variable, don't bother to clear it.  Instead, just redefine
-	it by aliasing to the global symbol.
-
-1999-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/balance.cc (Fbalance): Texinfoize doc string.
-	* DLD-FUNCTIONS/det.cc (Fdet): Ditto.
-	* DLD-FUNCTIONS/eig.cc (Feig): Ditto.
-	* DLD-FUNCTIONS/givens.cc (Fgivens): Ditto.
-	* DLD-FUNCTIONS/inv.cc (Finv): Ditto.
-	* DLD-FUNCTIONS/chol.cc (Fchol): Ditto.
-	* DLD-FUNCTIONS/hess.cc (Fhess): Ditto.
-	* DLD-FUNCTIONS/lu.cc (Flu): Ditto.
-	* DLD-FUNCTIONS/qr.cc (Fqr): Ditto.
-	* DLD-FUNCTIONS/schur.cc (Fschur): Ditto.
-	* DLD-FUNCTIONS/svd.cc (Fsvd): Ditto.
-	* DLD-FUNCTIONS/expm.cc (Fexpm): Ditto.
-	* DLD-FUNCTIONS/log.cc (Flogm, Fsqrtm): Ditto.
-	* DLD-FUNCTIONS/syl.cc (Fsyl): Ditto.
-	* DLD-FUNCTIONS/pinv.cc (Fpinv): Ditto.
-	* DLD-FUNCTIONS/qz.cc (Fqz): Ditto.
-	* DLD-FUNCTIONS/dassl.cc (Fdassl, Fdassl_options): Ditto.
-	* DLD-FUNCTIONS/lsode.cc (Flsode, Flsode_options): Ditto.
-	* data.cc (Flength, Fsize, Fisempty): Ditto.
-	* sysdep.cc (Fkbhit): Ditto.
-	* input.cc (Fkeyboard, Finput): Ditto.
-	* variables.cc (ans): Ditto.
-	* pr-output.cc (Fdisp, Fformat): Ditto.
-	* ov.cc (Vprint_answer_id_name): Ditto.
-	* defaults.cc (IMAGEPATH): Ditto.
-	* error.cc (Ferror, Fwarning, Fusage, error_text, beep_on_error):
-	Ditto.
-	* load-save.cc (Fload, Fsave, Vdefault_save_format,
-	Vsave_precision): Ditto.
-	* file-io.cc (Ffflush, Ffopen, Ffclose, Ffputs, Ffgetl, Ffgets,
-	Ffprintf, Fsprintf, Fscanf, Ffscanf, Fsscanf, Ffread, Ffwrite,
-	Ffseek, Fftell, Ffeof, Fferror, Ffreport, Ftmpnam, Vstdin_file,
-	Vstdout_file, Vstderr_file, SEEK_SET, SEEK_CUR, SEEK_END): Ditto.
-	* pager.cc (Vpager_binary, Vpage_output_immediately,
-	Vpage_screen_output, Fmore): Ditto.
-
-1999-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (Vtreat_neg_dim_as_zero): Texinfoize doc string.
-	* DLD-FUNCTIONS/find.cc (Ffind): Ditto.
-	* DLD-FUNCTIONS/rand.cc (Frand, Frandn): Ditto.
-	* DLD-FUNCTIONS/sort.cc (Fsort): Ditto.
-	* mappers.cc (Fisinf, Fisnan, Ffinite): Ditto.
-	* data.cc (Fall, Fany, Fdiag, Fones, Fzeros, Feye, Flinspace): Ditto.
-	* defaults.cc (Vloadpath, Vdefault_loadpath): Ditto.
-	* parse.y (Feval, Ffeval, Vdefault_eval_print_flag,
-	Vwarn_missing_semicolon, Vwarn_function_name_clash, Fsource): Ditto.
-	* ov-usr-fcn.cc (Vmax_recursion_depth, Vdefault_return_value,
-	Vdefine_all_return_values, Vreturn_last_computed_value): Ditto.
-	* ov.cc (Vok_to_lose_imaginary_part, Vdo_fortran_indexing,
-	Vprefer_column_vectors, Vresize_on_range_error,
-	Vwarn_divide_by_zero): Ditto.
-	* pt-stmt.cc (Vsilent_functions): Ditto.
-	* variables.cc (Vignore_function_time_stamp): Ditto.
-	* dynamic-ld.cc (Vwarn_reload_forces_clear): Ditto.
-
-1999-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/fft.cc (Ffft): Texinfoize doc string.
-	* DLD-FUNCTIONS/ifft.cc (Fifft): Ditto.
-	* DLD-FUNCTIONS/fft2.cc (Ffft2): Ditto.
-	* DLD-FUNCTIONS/ifft2.cc (Fifft2): Ditto.
-	* DLD-FUNCTIONS/filter.cc (Ffilter): Ditto.
-	* DLD-FUNCTIONS/quad.cc (Fquad, Fquad_options): Ditto.
-	* DLD-FUNCTIONS/colloc.cc (Fcolloc): Ditto.
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve, Ffsolve_options): Ditto.
-	* defaults.cc (Veditor): Ditto.
-	* pt-plot.cc (Vautomatic_replot, Vgnuplot_binary,
-	Vgnuplot_has_frames, Vgnuplot_has_multiplot, Fclearplot,
-	Fcloseplot, Fpurge_tmp_files, Fishold, Fhold):
-
-	* Makefile.in (parse.cc): Expect 11 shift/reduce conflicts now.
-
-1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (Vwarn_assign_as_truth_value,	Vwarn_variable_switch_label):
-	Texinfoize doc strings.
-
-	* DLD-FUNCTIONS/pinv.cc (Fpinv): Texinfoize doc string.
-
-	* defun-int.h (DEFUN_DLD_INTERNAL): New macro.
-	* defun-dld.h [MAKE_BUILTINS] (DEFUN_DLD): Simply expand to
-	DEFUN_DLD_INTERNAL.
-	* mkbuiltins: Generate code to define DEFUN_DLD_INTERNAL.
-	* mkgendoc: Likewise.
-
-	* Makefile.in (gendoc.o): Don't optimize when creating gendoc.
-	(%.dc : %.cc): Delete rule.
-
-	* pt-decl.cc (Vdefault_global_variable_value): Texinofize doc string.
-	* variables.cc (Fclear, Fdocument, Fexist, Fis_global, Fwho): Ditto.
-	* help.cc (Ftype, Fwhich): Ditto.
-	* ov.cc (Vstruct_levels_to_print, Vimplicit_str_to_num_ok): Ditto.
-	* data.cc (Fis_struct, Fstruct_elements, Fstruct_constains): Ditto.
-	* strfns.cc (Fisstr, Fsetstr): Ditto.
-	* pt-mat.cc: (Fimplicit_num_to_str_ok, Fstring_fill_char): Ditto.
-	* utils.cc (Fundo_string_escapes): Ditto.
-	* mappers.cc: (Fisalnum, Fisalpha, Fisascii, Fiscntrl, Fisdigit,
-	Fisgraph, Fislower, Fisprint, Fispunct, Fisspace, Fisupper,
-	Fisxdigit, Ftoascii, Ftolower, Ftoupper): Ditto.
-
-1999-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* syscalls.cc (symbols_of_syscalls): Use DEFCONSTX to define
-	Octave constants for C macros like O_WRONLY.
-
-	* oct-lvalue.cc (octave_lvalue::set_index): Disallow expressions
-	like x(i)(j) = rhs.
-
-1999-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.cc (symbol_record::type_as_string): New function.
-
-	* symtab.cc (symbol_record::which): New functions.
-	* help.cc (do_which): New functions.
-	(Fwhich): Use them.
-
-	* help.cc (help_from_symbol_table, help_from_file): New functions.
-	(builtin_help): Use them.
-
-	* help.cc (do_type): New function.
-	(symbol_record::type): New function.
-	(Ftype): Use them.
-
-	* help.cc (print_symbol_type): Delete.
-
-	* symtab.cc (symbol_table::name_list): Delete count arg.
-	(symbol_table::symbol_list): Likewise.
-	(symbol_table::glob): Likewise.  Also return Array<symbol_record *>
-	instead of symbol_record **.
-	Change all callers.
-	* help.cc (names, display_symtab_names): Delete count arg.
-
-	* help.cc (print_symbol_type, Ftype): No longer need to look up
-	fcn_file_name in the loadpath.
-
-	* help.cc (print_symbol_type): Handle dld functions.
-	(help_from_symbol_table, help_from_file): New functions.
-	(builtin_help): Use them.
-
-1999-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-cell.cc (Fiscell, Fcell): New Functions.
-	(octave_cell::do_index_op): New function.
-
-	* utils.cc (get_dimensions): Move here from data.cc and make extern.
-	(Vtreat_neg_dim_as_zero, treat_neg_dim_as_zero): Likewise.
-	(symbols_of_utils): New function.
-
-	* data.cc (fill_matrix (const octave_value_list&, double,
-	const char*)): New function.
-	(Fones, Fzeros): Use it to avoid some code duplication.
-
-1999-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-cell.h, pt-cell.cc, ov-cell.h, ov-cell.cc, Cell.h, Cell.cc:
-	New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* pt-walk.h (visit_cell (tree_cell&): New pure virtual.
-	* pt-pr-code.cc (tree_print_code::visit_cell (tree_cell&)): New
-	function.
-	* TEMPLATE-INST/Array-tc.cc: Instantiate 2D arrays of octave_value
-	objects.
-	* pt-all.h: Include pt-cell.h.
-	* ov.h, ov.cc (octave_value::is_cell, octave_value::cell_value):
-	New functions.
-	* ov-base.h, ov-base.cc (octave_value::is_cell,
-	octave_value::cell_value): Provide defaults.
-	* lex.h, lex.l: Handle `{' and `}' tokens (for cell arrays).
-	(bracketflag): Rename from braceflag.
-	(handle_close_bracket): Rename from handle_close_brace.
-	(class bracket_brace_paren_nesting_level): Rename from
-	brace_paren_nesting_level.
-	(bracket_brace_paren_nesting_level::bracket,
-	bracket_brace_paren_nesting_level::is_bracket): New functions to
-	keep count of nesting level for `[' and `]'.
-	(bracket_brace_paren_nesting_level::brace,
-	bracket_brace_paren_nesting_level::is_brace): Now keeps count of
-	nesting level for `{' and `}'.
-	* parse.y (tree_cell_type): New type.
-	Give '{' the same precedence and associativity as '(' and '.'
-	(matrix_rows, matrix_rows1): Rename from rows, rows1.
-	(cell, cell_rows, cell_rows1): New non-terminals.
-	(cell_or_matrix_row): Rename from matrix_row.
-	(primary_expr): Accept cell here.
-	(postfix_expr): Allow indexing using '{' arg_list '}'.
-	(finish_cell): New function.
-
-1999-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (jump_to_top_level): No longer declared extern "C".
-
-	* cutils.c (octave_strcasecmp, octave_strncasecmp): New functions.
-	* utils.cc (almost_match): Call octave_strncasecmp instead of
-	calling strncasecmp directly.
-
-1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Don't define warn_reload_forces_clear here.
-
-	* Makefile.in (DISTFILES): Include DOCSTRINGS.
-
-1999-11-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (install_signal_handlers): Don't install
-	sigwinch_handler.
-
-	* oct-iostrm.h (octave_istream::eof, octave_ostream::eof): Provide
-	implementation for these.
-
-	* oct-stream.cc (octave_base_stream::do_scanf):
-	The stdin stream is only special if we are interactive.
-	(octave_base_stream::scanf): Ditto.
-	(octave_base_stream::do_oscanf): Ditto.
-	(octave_base_stream::oscanf): Ditto.
-
-	* ov.h (octave_value::is_stream): New predicate.
-	* ov-file.h (octave_file::is_stream): Return true.
-	* file-io.cc (Fis_stream): New function.
-
-	* ov-file.h (class octave_file): stream is now an object instead
-	of pointer.
-	* ov-file.cc (octave_file::print_raw): Handle stream as object
-	instead of pointer.  Also print stream status.
-
-	* ov-base.cc (octave_base_value::stream_value): Return object
-	instead of pointer.
-
-	* ov.cc (octave_value::stream_value): Return object instead of pointer.
-	(octave_value::octave_value (const octave_stream&)): Take const
-	reference instead of pointer arg.
-
-	* TEMPLATE-INST/Array-os.cc: Instantiate Arrays of octave_stream
-	objects, not pointers to them.
-
-	* OPERATORS/op-fil-b.cc: Cope with octave_stream class changes.
-	* OPERATORS/op-fil-bm.cc: Likewise.
-	* OPERATORS/op-fil-cm.cc: Likewise.
-	* OPERATORS/op-fil-cs.cc: Likewise.
-	* OPERATORS/op-fil-lis.cc: Likewise.
-	* OPERATORS/op-fil-m.cc: Likewise.
-	* OPERATORS/op-fil-rec.cc: Likewise.
-	* OPERATORS/op-fil-s.cc: Likewise.
-	* OPERATORS/op-fil-str.cc: Likewise.
-	* file-io.cc: Likewise.
-	* syscalls.cc (Fdup): Likewise.
-
-	* oct-fstrm.cc, oct-fstrm.h, oct-iostrm.cc, oct-iostrm.h,
-	oct-prcstrm.cc, oct-prcstrm.h, oct-stdstrm.cc, oct-stdstrm.h,
-	oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h:
-	Rewrite to allow octave_stream objects to be used like values
-	instead of having to use pointers.
-
-1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_scanf): If it looks like
-	we have a matching failure, then reset the failbit in the stream
-	state.
-	(octave_base_stream::do_oscanf): Likewise.
-
-1999-11-02  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* help.cc (Fhelp): Texinfoize doc string.
-	* input.cc (Fecho, Fcompletion_matches): Ditto.
-	* oct-hist.cc (Fedit_history, Fhistory, Frun_history): Ditto.
-	* pager.cc (Fdiary): Ditto.
-	* sysdep.cc (Fclc): Ditto.
-	* toplev.cc (Fquit, Fatexit): Ditto.
-
-1999-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (yywrap): No longer static.
-	(have_continuation): Declare input character as int, not char, so
-	comparison to EOF will work.
-
-1999-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun.cc (print_usage): Use display_help_text instead of sending
-	help message directly to octave_stdout.
-
-1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun-dld.h (INSTALL_DLD_FCNS, INSTALL_DLD_FCN): Delete definitions.
-	* DLD-FUNCTIONS/dassl.cc: Don't use INSTALL_DLD_FCN or
-	INSTALL_DLD_FCNS macros.  They are not necessary with the new code
-	in dynamic-ld.cc.
-	* DLD-FUNCTIONS/lsode.cc: Ditto.
-	* DLD-FUNCTIONS/fsolve.cc: Ditto.
-	* DLD-FUNCTIONS/quad.cc: Ditto.
-	* DLD-FUNCTIONS/time.cc: Ditto.
-	* DLD-FUNCTIONS/besselj.cc: Ditto.
-	* DLD-FUNCTIONS/getgrent.cc: Ditto.
-	* DLD-FUNCTIONS/getpwent.cc: Ditto.
-	* DLD-FUNCTIONS/inv.cc: Ditto.
-	* DLD-FUNCTIONS/log.cc: Ditto.
-	* DLD-FUNCTIONS/minmax.cc: Ditto.
-	* DLD-FUNCTIONS/rand.cc: Ditto.
-
-	* dynamic-ld.cc, dynamic-ld.h: Major rewrite to allow reloading of
-	dynamically linked functions.
-
-	* symtab.cc (symbol_record::replace_all_defs): Don't allow top
-	definition to be NULL.
-	(symbol_table::clear): Allow dynamically linked functions to be
-	cleared.
-
-	* symtab.h (TYPE): New enum value, DLD_FUCTION.
-	(symbol_type): Now 8 bits wide.
-	(SYMTAB_ALL_TYPES): Include DLD_FUNCTION.
-	(symbol_record::symbol_def::is_function): Also recognize dld functions.
-	(symbol_record::symbol_def::is_dld_function): New function.
-	(symbol_record::is_dld_function): Ditto.
-
-	* defun.cc (install_dld_function): New function.
-	* defun-int.h: Provide declaration here.
-	(octave_dld_fcn_installer): New typedef.
-	(DEFINE_FUN_INSTALLER_FUN): Installer function now takes an
-	oct_shlib object as an arg.  Allow installation of a function to
-	happen more than once.
-
-	* octave.cc (initialize_error_handlers): Call
-	set_liboctave_warning_handler here too.
-
-	* ov-builtin.h (is_builtin_function): Return true.
-	Data member is now protected, not private.
-
-	* ov-fcn.h (is_dynamically_loaded_function): New predicate.
-	(unload): New function.
-	Data members are now protected, not private.
-
-	* ov.h (is_builtin_function, is_dld_function): New predicates.
-	* ov-base.h (is_builtin_function, is_dld_function): Ditto.
-
-	* parse.y (Vwarn_reload_forces_clear): New static flag.
-	(warn_reload_forces_clear): New function.
-	(symbols_of_parse): DEFVAR warn_reload_forces_clear.
-
-	* variables.cc (Fclear): Look for dld functions too.
-
-	* ov-dld-fcn.cc, ov-dld-fcn.h: New files.
-	* Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists.
-
-	* Makefile.in (DEFVAR_PATTERN): Also match DEFCONSTX.
-
-1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLList.h, DLList.cc: New files.
-	* Makefile.in (INCLUDES, DIST_SRC): Add them to the lists.
-
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Be sure to call
-	unwind_protect::run_frame before returning.
-	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
-
-	* load-save.cc (read_mat_ascii_data): When reading from
-	tmp_stream, check its state, not the state of is.
-
-	* defun-dld.h (INSTALL_DLD_FCN, INSTALL_DLD_FCNS): New macros.
-	* DLD-FUNCTIONS/dassl.cc: Use them.
-	* DLD-FUNCTIONS/lsode.cc: Ditto.
-	* DLD-FUNCTIONS/fsolve.cc: Ditto.
-	* DLD-FUNCTIONS/quad.cc: Ditto.
-	* DLD-FUNCTIONS/time.cc: Ditto.
-	* DLD-FUNCTIONS/besselj.cc: Ditto.
-	* DLD-FUNCTIONS/getgrent.cc: Ditto.
-	* DLD-FUNCTIONS/getpwent.cc: Ditto.
-	* DLD-FUNCTIONS/inv.cc: Ditto.
-	* DLD-FUNCTIONS/log.cc: Ditto.
-	* DLD-FUNCTIONS/minmax.cc: Ditto.
-	* DLD-FUNCTIONS/rand.cc: Ditto.
-
-	* data.cc (Flinspace): Let linspace functions handle errors.
-
-	* mkgendoc (print_doc_string): Handle quoted names.
-
-	* file-io.cc (symbols_of_file_io): Use DEFCONSTX for SEEK_SET,
-	SEEK_CUR, and SEEK_END.
-
-	* defun.h (DEFCONST): Just pass name, defn, and doc to
-	DEFCONST_INTERNAL.
-	(DEFCONSTX): Likewise, pass name, defn, and doc to DEFCONSTX_INTERNAL.
-	* defun-int.h [MKBUILTINS] (DEFCONST_INTERNAL): Likewise, pass
-	name, defn, and doc to XDEFCONST_INTERNAL.
-	[MKBUILTINS] (DEFCONSTX_INTERNAL): New macro.
-	(INSTALL_CONST): New macro.
-	[! MKBUILTINS] (DEFCONST_INTERNAL): Use it to handle details here.
-	[! MKBUILTINS] (DEFCONSTX_INTERNAL): Ditto.
-	* mkgendoc: Fix definition of XDEFCONST_INTERNAL to match.
-	* mkbuiltins: Ditto.
-
-	* mkdefs: Match spaces before BEGIN_INSTALL_BUILTIN.
-
-	* Makefile.in (DEFUN_PATTERN): Also match DEFUN_MAPPER.
-
-1999-10-26  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* data.cc (VI, VInf, VJ, VNaN, Ve, Veps, Vfalse, Vi, Vinf, Vj,
-	Vnan, Vpi, Vrealmax, Vrealmin): Texinfoize doc strings.
-	* mappers.cc (Fabs, Facos, Facosh, Fangle, Farg, Fasin, Fasinh,
-	Fatan, Fatanh, Fceil, Fconj, Fcos, Fcosh, Ferf, Ferfc, Fexp,
-	Ffinite, Ffix, Ffloor, Fgamma, Fimag, Flgamma, Flog, Flog10,
-	Freal, Fround, Fsign, Fsin, Fsinh, Fsqrt, Ftan, Ftanh): Ditto.
-
-1999-10-23  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* data.cc (Fis_matrix): Texinfoize doc string.
-	* ov.cc	(Vpropagate_empty_matrices): Ditto.
-	* pt-mat.cc: (Vempty_list_elements_ok): Ditto.
-	* pr-output.cc (Vfixed_point_format, Voutput_max_field_width,
-	Voutput_precision, Vprint_empty_dimensions, Vsplit_long_rows):
-	Ditto.
-
-1999-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (octave_user_function::do_index_op): If
-	Vmax_recursion_depth is exceeded, call unwind_protect::run_frame
-	before returning.
-
-1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* cutils.c (do_octave_usleep): Handle useconds > 1e6.
-
-	* variables.h (is_valid_function): Provide default values for the
-	string argument.
-
-	* symtab.cc (variable_reference): Maybe print warning (or error)
-	about variables that hide functions of the same name.
-	(symbol_record::define (const octave_value&, unsigned int)): Ditto.
-	(Vvariables_can_hide_functions): New static variable.
-	(variables_can_hide_functions, symbols_of_symtab): New functions.
-
-	* cutils.c: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-	* utils.h: Declare octave_usleep here.
-	* dirfns.cc (Fls): Simply all octave_usleep.
-	* oct-procbuf.cc (octave_procbuf::open): Ditto.
-	* sysdep.cc (Fusleep): Ditto.
-	* toplev.cc (run_command_and_return_output): Ditto.
-
-1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (make_diag (const octave_value&, const octave_value&)):
-	Delete special cases for scalars and simply attempt conversion of
-	first arg to a matrix value.  If that fails, we will still see an
-	error message.
-
-	* Makefile.in (DISTFILES): Add mkgendoc to the list.
-
-1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stmp-pic): New target.
-	($(PICOBJS)): Depend on stmp-pic, not pic.
-
-	* ov.h (get_rep): New function.
-
-	* help.cc (display_help_text): Pass definitions for VERSION,
-	OCTAVE_HOME, and TARGETHOSTTYPE to makeinfo.
-
-	* DLD-FUNCTIONS/getgrent.cc: Texinfoize all doc strings.
-	* DLD-FUNCTIONS/getpwent.cc: Ditto.
-	* DLD-FUNCTIONS/getrusage.cc: Ditto.
-	* DLD-FUNCTIONS/time.cc: Ditto.
-
-	* defaults.cc (EXEC_PATH, OCTAVE_VERSION): Texinfoize doc strings.
-	* dirfns.cc (Fcd, Fls, Fpwd, Freaddir, Fmkdir, Frmdir, Frename,
-	Fglob, Ffnmatch): Ditto.
-	* file-io.cc (Fpopen, Fpclose, Fumask): Ditto.
-	* sysdep.cc (Fgetenv, Fputenv, Fpause, Fsleep, Fusleep, Fisieee,
-	Ftilde_expand): Ditto.
-	* toplev.cc (Fcomputer, Fsystem, Foctave_config_info): Ditto.
-	* utils.cc (Ffile_in_path): Ditto.
-	* syscalls.cc (Fdup2, Fexec, Ffcntl, Ffork, Fgetpgrp, Fgetpid,
-	Fgetppid, Fgetegid, Fgetgid, Fgeteuid, Fgetuid, Fmkfifo, Fpipe,
-	Fstat, Funlink, Fwaitpid, F): Ditto.
-	(Flstat): Refer to stat for doc.
-
-	* help.cc (looks_like_texinfo): New function.
-	(display_help_text): Use it to see if the doc string looks like
-	Texinfo source.  If so, use makeinfo to format the text before
-	displaying it.
-
-	* mkgendoc: New script.
-	* Makefile.in: Use it to create gendoc.cc, which is compiled and
-	run to create DOCSTRINGS file from sources.
-
-1999-10-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (help_from_info): Print `unable to find info' message if
-	try_info returns 127; otherwise, print `not indexed' message.
-	Don't sleep after printing `not indexed' message.
-
-1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (fold (tree_unary_expression *)): New function.
-	(make_prefix_op, make_postfix_op): Use it.
-
-1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (oct-gperf.h): Ask for ANSI-C output from gperf
-	(requires gperf-2.7 or later).
-
-	* sighandlers.cc (sigwinch_handler): New function.
-	(install_signal_handlers): Install it.
-
-Thu Sep 23 19:49:36 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (Fsystem): For async case, use execl instead of
-	system, avoiding the need to exit after executing the subprocess.
-
-Thu Sep  9 17:09:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (get_size): Allow zero values.
-	(get_size): New arg, one_elt_size_spec.
-	(do_scanf_conv): New arg, `conv_count'.  Change instantiation
-	requests and all callers.
-	(octave_base_stream::do_scanf): Improve scanning of strings.
-	(octave_base_stream::do_oscanf): Remove size limit on %s conversions.
-
-	* oct-stream.cc (scanf_format_list::all_character_conversions):
-	Don't count %p as a character conversion.
-
-Tue Sep  7 08:31:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (set_real_matrix_format, set_complex_matrix_format):
-	Move check for fixed_point_format ahead of check for
-	int_or_inf_or_nan.
-
-Thu Sep  2 11:54:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.cc (make_argv): Correctly handle empty strings as args.
-
-Fri Aug 20 08:17:52 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/quad.cc (quad): Delete unused label.
-
-	* unwind-prot.cc (saved_variable::~saved_variable): Don't try to
-	delete gen_ptr_value here.
-
-Mon Aug 16 21:34:33 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (next_token_is_sep_op): New function.
-	(handle_close_brace, maybe_unput_comma): Use it.
-	(have_continuation): Also handle CRLF here.
-
-Wed Aug 11 16:06:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffopen): Make fopen ("filename") work and imply that
-	MODE = "r".
-
-Wed Jul 21 15:38:52 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (display_names_from_help_list): Sort names before
-	listing them.
-	(print_symbol_type, Ftype): Also handle built-in constants.
-	(LIST_SYMBOLS): Correct call to symbol_table::name_list.
-	(simple_help): List constants here too.  List constants and
-	variables before functions, not after.  Sort names before listing
-	them.
-
-	* variables.cc (do_who): Display built-in constants in a separate
-	section.
-
-	* error.cc (bind_global_error_variable, clear_global_error_variable):
-	Call bind_builtin_constant, not bind_builtin_variable to set
-	__error_text__.
-	* octave.cc (intern_argv): Likewise, for argv and __argv__.
-
-	* defun.cc (install_builtin_constant): Move function guts to
-	bind_builtin_constant in variables.cc.
-	* variables.cc (bind_builtin_constant): New function.
-
-	* symtab.cc (symbol_record::define, symbol_record::variable_reference):
-	Handle constants the same as functions.
-	(symbol_record::link_to_builtin_variable): New function.
-	(symbol_record::define_builtin_const): New function.
-	(symbol_record::define_as_fcn): Delete unused function.
-	(symbol_record::read_only_error):
-	Handle constants the same as variables.
-	* symtab.h (symbol_record::BUILTIN_CONSTANT): New enum value.
-	(symbol_record::symbol_type): Increase width to 7 bits.
-	(symbol_record::symbol_def::is_constant): New function.
-	(symbol_record::symbol_def::is_builtin_constant): New function.
-	(symbol_record::is_constant): New function.
-	(symbol_record::is_builtin_constant): New function.
-	(SYMTAB_ALL_TYPES): Add symbol_record::BUILTIN_CONSTANT.
-	* variables.cc (link_to_builtin_variable): Delete unused function.
-	(link_to_builtin_or_function): Handle built-in constants here too.
-
-	* defun.cc (install_builtin_variable): Delete inst_as_fcn arg.
-	(install_builtin_constant): New function.
-	(install_builtin_variable_as_function): Delete unused function.
-	* defun.h (DEFVAR_INTERNAL): Delete inst_as_fcn arg.
-	(DEFCONST_INTERNAL): New macro.
-	* defun.h (DEFVAR): Delete inst_as_fcn arg.
-	(DEFCONST, DEFCONSTX): Define using DEFCONST_INTERNAL instead of
-	DEFVAR_INTERNAL.
-	* data.cc, defaults.cc, error.cc, help.cc, input.cc, lex.l,
-	load-save.cc, oct-hist.cc, oct-procbuf.cc, ov-fcn.h,
-	ov-usr-fcn.cc, ov.cc, pager.cc, parse.y, pr-output.cc,
-	pt-assign.cc, pt-decl.cc, pt-mat.cc, pt-plot.cc, pt-stmt.cc,
-	toplev.cc, variables.cc:
-	Change all invocations of DEFVAR to match new definition.
-
-	* data.cc (symbols_of_data): Add DEFCONSTs for true and false.
-
-Thu Jul 15 10:59:42 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fis_bool, Fis_complex, Fisempty, Fisnumeric, Fis_list,
-	Fis_map, Fis_struct): Return bool object.
-	(Fisreal): New function.
-
-	* ov-str-mat.h (octave_char_matrix_str): Only return true if
-	Vimplicit_str_to_num_ok is also true.
-
-	* DLD-FUNCTIONS/time.cc (Ftime): Print usage message if	any
-	arguments are supplied.
-
-	* variables.cc (symbol_out_of_date): Call octave_time for time stamps.
-
-	* fn-cache.h (octave_fcn_file_name_cache::timestamp):
-	Now octave_time object.
-
-	* strftime.c: Move to liboctave directory.
-	* Makefile.in (DIST_SRC): Delete from list.
-
-	* ov-usr-fcn.h (octave_user_function::t_parsed,
-	octave_user_function::t_checked): Now octave_time objects.
-	(octave_user_function::time_parsed,
-	(octave_user_function::time_checked):
-	Return value is now octave_time object.
-	(octave_user_function::mark_fcn_file_up_to_date)):
-	Arg is now octave_time object.
-
-	* ov-fcn.h (octave_function::mark_fcn_file_up_to_date)):
-	Arg is now octave_time object.
-	(octave_function::time_parsed, octave_function::time_checked):
-	Return value is now octave_time object.
-
-	* input.cc (Vlast_prompt_time): Now an octave_time object.
-	(octave_gets): Call octave_time::stamp() to set Vlast_prompt_time.
-
-	* DLD-FUNCTIONS/time.cc (mk_tm_map, extract_tm, Ftime, Fgmtime,
-	Flocaltime, Fmktime, Fstrftime): Use new classes defined in
-	liboctave/oct-time.cc instead of accessing C functions directly.
-
-Wed Jul 14 17:38:46 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* systime.h: Move to liboctave directory.
-	* Makefile.in (INCLUDES): Delete it from the list
-
-Tue Jul 13 14:34:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (sigchld_handler): Only wait for processes in
-	octave_child_list.
-	* toplev.cc (cmd_status): Delete unused static variable.
-	(cmd_death_handler): Delete unused function.
-	(run_command_and_return_output): Don't add cmd_death_handler to
-	octave_child_list.  Simply extract command exit status from
-	calling close() on the procstream object.
-
-Mon Jul 12 22:38:50 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun.h (DEFUN_MAPPER): Handle new args, d_b_map and c_b_map.
-	* defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise.
-	* mappers.cc (install_mapper_functions): Supply new args to
-	all uses of DEFUN_MAPPER.
-	* ov-mapper.cc (octave_mapper::apply): Handle mapper functions
-	that return bool objects.
-	* ov-mapper.h (octave_mapper::d_b_mapper, octave_mapper::c_b_mapper):
-	New typedefs.
-	(octave_mapper::octave_mapper): Handle new mapper function types.
-
-	* DLD-FUNCTIONS/minmax.cc: Do a better job of handling NaNs.
-
-Sun Jul 11 13:15:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (do_plus_format (ostream&, double)): New function.
-	(octave_print_internal (ostream&, double, bool)): Use it.
-	(octave_print_internal (ostream&, const Matrix&, bool, int)): Ditto.
-
-	* pr-output.cc (do_plus_format (ostream&, const Complex&)):
-	New function.
-	(octave_print_internal (ostream&, const Complex&, bool)): Use it.
-	(octave_print_internal (ostream&, const ComplexMatrix&, bool, int)):
-	Ditto.
-
-Sun Jun 20 23:04:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc: Include sys/ioctl.h if available.
-
-Sat Jun 19 12:07:16 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (do_who): Make pattern and multiple non-option
-	arguments work.
-
-Mon Jun  7 09:54:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (next_token_is_bin_op, next_token_is_postfix_unary_op,
-	handle_number): Delete yytext arg.  Change all callers.
-	(next_token_is_postfix_unary_op): Check the first character
-	obtained from yyinput before calling it again.
-	(next_token_is_bin_op): Do a more thorough check.
-	(handle_identifier): Also enter token in local symbol table if the
-	following token is a dot and it looks like a binary operator.
-	(whitespace_in_literal_matrix): Now static.
-
-	* lex.l: Always use unput, not yyunput.
-
-Fri May 28 11:02:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/chol.cc (Fchol): If two output arguments, never
-	produce error message.
-
-Thu May 27 18:28:35 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/chol.cc (Fchol): Also return info as second output.
-
-	* DLD-FUNCTIONS/minmax.cc (max (const ComplexMatrix&, const
-	ComplexMatrix&)): Correct test for real columns only.
-	(min (const ComplexMatrix&, const ComplexMatrix&)): Likewise.
-
-Wed Apr 14 12:54:25 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dassl.cc (Fdassl): Prevent recursive calls.
-	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
-	* DLD-FUNCTIONS/lsode.cc (Flsode): Likewise.
-	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
-
-	* file-io.cc (Fsscanf, Ffscanf): Doc fix.
-
-Sat Mar 27 11:07:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::count): New function.
-	* symtab.cc (symbol_record::dump_symbol_info): New function.
-	* symtab.cc (symbol_record::symbol_def::dump_symbol_info): Ditto.
-	* variables.cc (F__dump_symbol_info__): Ditto.
-
-	* pt-misc.cc (tree_parameter_list::clear): New function.
-	* ov-usr-fcn.h (octave_user_function::clear_args_passed): Ditto.
-	* ov-usr-fcn.cc (clear_param_list): New function.
-	(clear_args_passed): New function.
-	(octave_user_function::do_index_op): Use them to decrement
-	reference counts on local variables.
-
-Fri Mar 26 00:51:53 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (libraries): Use the libfoo.a(objects) method of
-	creating static libs.
-
-	* defaults.cc (symbols_of_defaults): Initialize LOADPATH to
-	Vload_path, not ":".
-
-Thu Mar 18 12:09:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fisnumeric): Fix typo.
-
-Thu Mar  4 02:17:04 1999  James Macnicol  <jamesm@evans.ee.adfa.oz.au>
-
-	* file-io.cc (Ffread, Ffwrite): Add uint16 and uint32 data types
-	to doc string.
-
-Wed Mar  3 11:55:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_string): Allow "" to pass through unchanged if
-	working on a gset command.
-
-Tue Mar  2 01:36:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fexist): If a variable isn't defined, only go on
-	to look for a global by the same name if we are at the top level.
-
-Fri Jan 29 02:18:36 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_NAME_AND_VERSION): Say `GNU Octave', not just
-	Octave.
-
-Thu Jan 28 21:29:16 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (Fcomputer): Use CANONICAL_HOST_TYPE, not TARGET_HOST_TYPE.
-	(octave_config_info): Likewise.
-	* version.h: Ditto.
-
-	* sysdep.cc (Fpause): Flush output before getting user input.
-
-Wed Jan 27 14:18:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DEFFUN_PATTERN, DEFVAR_PATTERN): Use egrep again.
-	Make the patterns work with stupid egreps that don't like empty
-	elements in alternation patterns.
-
-Fri Jan 22 04:41:48 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_ascii_data): Check for string type first,
-	then range, then the rest.
-	(save_binary_data): Ditto.
-
-	* pager.cc (more_than_a_screenful): Accept length as second arg.
-	Handle long lines properly, assuming the terminal wraps long lines.
-	(octave_pager_buf::do_sync): Accept length of data as second arg.
-	Use write instead of << to put characters on output stream.
-	(octave_pager_buf::sync): Don't assume data ends at first NUL.
-	(octave_diary_buf::sync): Ditto.
-
-Thu Jan 21 22:15:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_mat_binary_data): Check for string type
-	first, then range, then the rest.
-
-Wed Jan 20 12:01:14 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_scanf): Handle short and
-	long ints correctly.
-
-Fri Jan 15 13:04:58 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (end_error): Handle case of endswitch too.
-
-	* Makefile.in: Use basic regular expressions and grep instead of
-	egrep to find files that contain DEFVAR, DEFCONST, or DEFUN.
-
-Wed Dec  9 14:14:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (octave): Add $(RDYNAMIC_FLAG) to link command.
-
-Fri Dec  4 20:26:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/time.cc (Fstrftime): Make it work even when not
-	using the GNU version of strftime, which allows passing NULL for
-	the buffer to determine the required size of the buffer.
-
-Wed Dec  2 22:38:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (file_in_loadpath): Expect argc == 2, not 3.
-
-Tue Nov 24 23:38:19 1998  Eric Norum  <eric@skatter.USask.Ca>
-
-	* mkbuiltins: Also strip off leading `./' from file names.
-	* mkops: Ditto.
-
-Tue Nov 24 23:24:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strftime.c: Surround everything with #ifdef HAVE_STRFTIME / #endif.
-
-	* lex.h (YY_FATAL_ERROR): Call yy_falta_error after
-	jump_to_top_level to avoid gcc warning.
-
-Fri Nov 20 13:34:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool.h, ov-bool.cc (class octave_bool): Derive from
-	octave_base_scalar and get common functions via derivation.
-	* ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto.
-	* ov-complex.h, ov-complex.cc (class octave_complex): Ditto.
-
-	* ov-base-scalar.h, ov-base-scalar.cc (class octave_base_scalar):
-	New files for new class definition.  Put common scalar data type
-	stuff here.
-	* Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists.
-
-Thu Nov 19 14:30:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (octave_dynamic_loader::mangle_name):
-	Prepend underscore here.
-	(octave_dynamic_loader::load_fcn_from_dot_oct_file): Not here.
-
-	* ov-re-mat.h (octave_matrix_value): Delete experimental code for
-	handling structure references for things like .rows, .cols, etc.
-
-Wed Nov 18 01:18:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (VAR_FILES): Be more careful about matching.
-	(DEF_FILES): Likewise.
-
-	* ov-base-mat.h, ov-base-mat.cc, ov-bool-mat.h, ov-bool-mat.cc,
-	ov-ch-mat.h, ov-ch-mat.cc, ov-cx-mat.h, ov-cx-mat.cc,
-	ov-re-mat.h, ov-re-mat.cc: Move default definition of all, any,
-	is_matrix_type, is_numeric_type, valid_as_zero_index, and
-	do_index_op to base class.
-	Provide definitions that override the defaults where necessary.
-
-	* mappers.cc: Don't include lo-specfun.h.
-
-Tue Nov 17 14:35:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* besselj.cc (Fbesselh, Fairy); New functions.
-	(Fbesselj, Fbessely, Fbesselk, Fbesseli): Update doc strings.
-	(do_bessel): Handle additional args.
-
-Fri Nov 13 14:47:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (NUMBER): Allow hexadecimal constants.
-	(looks_like_hex): New function.
-	(handle_number): Check for hexadecimal constants and convert them
-	to unsigned integer values.
-
-Thu Nov 12 11:13:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (gnu_readline): Check for EOF from command_editor::readline.
-
-	* ov-str-mat.h, ov-str-mat.cc (class octave_char_matrix_str):
-	Get common functions via new derivation scheme.
-
-	* ov-bool-mat.h, ov-bool-mat.cc (class octave_bool_matrix):
-	Derive from octave_base_matrix and get common functions via derivation.
-	* ov-ch-mat.h, ov-ch-mat.cc (class octave_char_matrix): Ditto.
-	* ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto.
-	* ov-re-mat.h, ov-re-mat.cc (class octave_real_matrix): Ditto.
-
-	* ov-base-mat.h, ov-base-mat.cc (class octave_base_matrix): New
-	files  for new class definition.  Put common matrix data type
-	stuff here.
-
-	* ov-list.cc (Fnth): New function.
-
-	* ov-list.cc (octave_list::do_index_op): Allow more complex indexing.
-
-	* oct-obj.cc (octave_value_list::index): New function.
-	(octave_value_list::octve_value_list (Array<octave_value>)):
-	New private constructor.
-
-	* ov-list.cc (Fsplice): Fix docstring to match.
-	* oct-obj.cc (octave_value_list::splice): Allow special case
-	splice (x, length(x)+1, 0, y) to be equivalent to append (x, y).
-
-	* ov-list.cc (Fappend): If an arg is a list, concatenate the lists
-	instead of appending arg as a single element.
-
-Wed Nov 11 14:07:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (get_mat_data_input_line): New function.
-	(get_lines_and_columns): Use it here.
-	(read_mat_ascii_data): And here and do our own reading instead of
-	using Matrix::operator<<.
-
-Tue Nov 10 16:12:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (make_constant): Initialize retval to 0.
-
-	* toplev.h (clean_up_and_exit (void)): Delete declaration.
-	* toplev.cc (do_octave_atexit): Move guts of clean_up_for_exit
-	here, but ensure that the actions are only executed once.
-	* octave.cc (main): Don't register cleanup_tmp_files with atexit.
-
-	* ov.h, ov.cc (class octave_value): Use DECLARE_OCTAVE_ALLOCATOR
-	and DEFINE_OCTAVE_ALLOCATOR for uniform declaration and definition
-	of allocator functions.  Use DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
-	and DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA for uniform declaration
-	and definition of type id functions and data.
-	* ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Ditto.
-	* ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto.
-	* ov-re-mat.h ov-re-mat.cc (class octave_matrix): Ditto.
-	* ov-range.h, ov-range.cc (class octave_range): Ditto.
-	* ov-mapper.h, ov-mapper.cc (class octave_mapper): Ditto.
-	* ov-list.h, ov-list.cc (class octave_list): Ditto.
-	* ov-file.h, ov-file.cc (class octave_file): Ditto.
-	* ov-fcn.h, ov-fcn.cc (class octave_function): Ditto.
-	* ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto.
-	* ov-complex.h, ov-complex.cc (class octave_complex): Ditto.
-	* ov-ch-mat.h, ov-ch-mat.cc (octave_char_matrix): Ditto.
-	* ov-builtin.h, ov-builtin.cc (class octave_builtin): Ditto.
-	* ov-bool.h, ov-bool.cc (class octave_bool): Ditto.
-	* ov-bool-mat.h, ov-bool-mat.cc (octave_bool_matrix): Ditto.
-
-	* ov.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): New macro.
-	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Ditto.
-
-Mon Nov  9 16:12:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (octave_print_internal): Reorder default args for
-	charMatrix version.
-	(octave_print_internal): New function for boolMatrix.
-
-	* version.h (OCTAVE_STARTUP_MESSAGE): Note that this is a
-	development release.
-
-	* toplev.cc (do_octave_atexit): Call flush_octave_stdout here.
-	(clean_up_for_exit): And here.
-
-Mon Nov  9 15:20:53 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (get_user_input): Check retval.length(), not	retval.length.
-
-Sun Nov  8 19:30:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-assign.cc (tree_simple_assignment::rvalue): If etype is
-	asn_eq, don't evaluate ult again because retval is just rhs value.
-	(tree_multi_assignment::rvalue): Likewise.
-
-Fri Nov  6 12:14:29 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-loop.cc (tree_for_command::eval): Move code for string RHS
-	outside if clause for matrix types.
-
-	* pt-idx.cc: Don't forget to define arg_nm.
-	Move contstructor here.
-	* pt-idx.h: From here.
-
-	* data.cc (Fisempty): Also return true for empty strings.
-
-Wed Nov  4 17:21:41 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base.cc (octave_base_value::rows, octave_base_value::columns,
- 	octave_base_value::length): Delete.
-	* ov-base.h (octave_base_value::rows, octave_base_value::columns,
- 	octave_base_value::length): Define here.  All return -1 if not
-	defined in a derived class.
-
-	* data.cc (Fis_matrix): Also return true if the arg is a range.
-
-Tue Nov  3 09:40:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fis_bool): New function.
-	Also add alias for islogical.
-
-	* ov.h (octave_value::is_bool_type): New function.
-	* ov-base.h (octave_base_value::is_bool_type): Likewise.
-	* ov-bool.h (octave_bool::is_bool_type): Likewise.
-	* ov-bool-mat.h (octave_bool_matrix::is_bool_type): Likewise.
-
-Mon Nov  2 13:36:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_close_brace): Also handle case of ']' followed by
-	other assignment ops (+=, -=, ...).
-
-	* pt-assign.cc (tree_simple_assignment::rvalue): Correctly handle
-	return value and printing for operators other than `='.
-	(tree_multi_assignment::rvalue): Likewise.
-
-	* pt-assign.h (tree_multi_assignment::etype): New data member.
-	* pt-assign.cc 	(tree_multi_assignment::rvalue): Use it instead of
-	assuming `='.
-	(tree_multi_assignment::oper): New function.
-	* pt-pr-code.cc (tree_print_code::visit_multi_assignment): Use
-	it instead of always printing `='.
-	* parse.y (make_assign_op): Pass expression type to
-	tree_multi_assignment constructor.
-
-	* Makefile.in (stmp-pic): New target.
-	($(PICOBJ)): Depend on stmp-pic, not pic.
-	(clean): Delete stmp-pic.
-
-Sun Nov  1 23:24:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mappers.cc (install_mapper_functions): Add alias for isfinite.
-
-Sat Oct 31 08:46:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fisnumeric): New function.
-
-Fri Oct 30 08:39:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-lvalue.cc (octave_lvalue::do_unary_op): Make it work for
-	indexed ops too.
-	* ov.cc (octave_value::unary_op_to_assign_op): New function.
-	(octave_value::do_non_const_unary_op): New function for	indexed ops.
-
-	* parse.y (LEFTDIV_EQ, ELEFTDIV_EQ): New tokens.
-	(assign_expr): Add rules for them.
-	(make_assign_op): Handle them here too.
-	* lex.l: Recognize them.
-	* ov.h (octave_value::assign_op): Add ldiv_eq and el_ldiv_eq.
-	* ov.cc (octave_value::assign_op_as_string): Ditto.
-	(octave_value::op_eq_to_binary_op): Ditto.
-	(octave_value::assign): Handle OP= style operators with brute force.
-	(octave_value::simple_assign): New function.
-
-	* parse.y (matrix): Dont' forget to reset
-	lexer_flags.looking_at_matrix_or_assign_lhs.
-
-	* oct-lvalue.cc (octave_lvalue::assign): Don't call change
-	function if error occurs.
-	(octave_lvalue::do_unary_op): If we have an index, fail with message.
-
-Thu Oct 29 09:27:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc (do_binary_op): Protect against invalid type conversions.
-	(try_assignment_with_conversion): Likewise.
-	(do_unary_op): Likewise.
-
-	* ov.h (OV_UNOP_FN, OV_UNOP_OP, OV_UNOP_FN_OP): New macros.
-	Use them to define not, uminus, transpose, hermitian functions
-	and operators ! and -.
-	(OV_BINOP_FN, OV_BINOP_OP, OV_BINOP_FN_OP): New macros.
-	Use them to define add, sub, mul, div, pow, ldiv, lshift, rshift,
-	lt, le, eq, ge, gt, ne, el_mul, el_div, el_pow, el_ldiv, el_and,
-	el_or, struct_ref, functions and operators <, <=, ==, >=, >, !=,
-	+, -, *, and /.
-
-	* ops.h (CONVDECLX): New macro.
-	* ov-base.cc (matrix_conv, complex_matrix_conv, string_conv):
-	Use it to declare these functions.
-
-	* ops.h (CONVDECL, INSTALL_WIDENOP):
-	Prefix function name with `oct_conv_'.
-	(INSTALL_BINOP, BINOPDECL): Prefix function name with `oct_binop_'.
-	(INSTALL_ASSIGNOP, INSTALL_ASSIGNANYOP, ASSIGNOPDECL):
-	Prefix function name with `oct_assignop_'.
-	(UNOPDECL, DEFNCUNOP_METHOD, INSTALL_UNOP, INSTALL_NCUNOP):
-	Prefix function name with `oct_unop_'.
-
-	* ov-str-mat.cc (default_numeric_conversion_function):
-	Return 0 if conversion fails.
-
-	* parse.y (make_prefix_op, make_postfix_op): Use
-	octave_value::unary_op enum.
-
-	* pt-unop.cc (tree_prefix_expression::rvalue): Use new unary_op
-	functions from octave_value and octave_lvalue classes.
-	(tree_prefix_expression::rvalue): Likewise.
-
-	* pt-unop.cc (tree_unary_expression::oper): Move here.
-	(tree_prefix_expression::oper, tree_postfix_expression): From here.
-
-	* pt-unop.h (tree_prefix_expression, tree_postfix_expression):
-	Delete enums.
-	(tree_unary_expression): Use octave_value::unary_op enum.
-	* parse.y (make_prefix_op, make_postfix_op): Likewise.
-
-	* oct-lvalue.h (octave_lvalue::do_unary_op): New function.
-	(octave_lvalue::increment, octave_lvalue::decrement): Delete.
-
-	* ov-typeinfo.h (octave_value_typeinfo::non_const_unary_ops):
-	New data member.
-	* ov-typeinfo.h (octave_value_typeinfo::lookup_non_const_unary_op):
-	New function.
-	* ov-typeinfo.cc (octave_value_typeinfo::register_non_const_unary_op):
-	New function.
-	(octave_value_typeinfo::do_register_non_const_unary_op): Ditto.
-	(octave_value_typeinfo::do_lookup_non_const_unary_op): Ditto.
-
-	* ov.cc (octave_value::do_non_const_unary_op): New function.
-
-	* Makefile.in (OP_XSRC): Add op-chm.cc and op-range.cc to the list.
-
-	* OPERATORS/op-str-str.cc: Define string matrix unary operators here.
-	(install_str_str_ops): Install them here.
-	* ov-bool-mat.h (octave_bool_matrix::transpose,
-	octave_bool_matrix_value::hermitian): Delete.
-
-	* OPERATORS/op-chm.cc: New file.  Define char matrix unary operators.
-	(install_chm_ops): Install them here.
-	* ov-ch-mat.h (octave_char_matrix::transpose,
-	octave_char_matrix_value::hermitian): Delete.
-	* ops.cc (install_ops): Call install_chm_ops.
-
-	* OPERATORS/op-bm-bm.cc: Define bool matrix unary operators here.
-	(install_bm_bm_ops): Install them here.
-	* ov-bool-mat.h (octave_bool_matrix::transpose,
-	octave_bool_matrix_value::hermitian): Delete.
-
-	* ov-bool.h (octave_bool::not, octave_bool::uminus,
-	octave_bool::transpose, octave_bool::hermitian): Delete.
-
-	* OPERATORS/op-cs-cs.cc: Define complex scalar unary operators here.
-	(install_cs_cs_ops): Install them here.
-	* ov-complex.h (octave_complex::not, octave_complex::uminus,
-	octave_complex::transpose, octave_complex::hermitian): Delete.
-
-	* OPERATORS/op-cm-cm.cc: Define complex matrix unary operators here.
-	(install_cm_cm_ops): Install them here.
-	* ov-cx-mat.h (octave_complex_matrix::not,
-	octave_complex_matrix::uminus, octave_complex_matrix::transpose,
- 	octave_complex_matrix::hermitian): Delete.
-
-	* OPERATORS/op-m-m.cc: Define matrix unary operators here.
-	(install_m_m_ops): Install them here.
-	* ov-re-mat.h (octave_matrix::not, octave_matrix::uminus,
-	octave_matrix::transpose, octave_matrix::hermitian): Delete.
-
-	* OPERATORS/op-range.cc: New file.  Define range unary operators.
-	(install_range_ops): Install them here.
-	* ov-range.h (octave_range::not, octave_range::uminus,
-	octave_range::transpose, octave_range::hermitian): Delete.
-	* ops.cc (install_ops): Call install_range_ops.
-
-	* OPERATORS/op-s-s.cc: Define scalar unary operators here.
-	(install_s_s_ops): Install them here.
-	* ov-scalar.h (octave_scalar::not, octave_scalar::uminus,
-	octave_scalar::transpose, octave_scalar::hermitian): Delete.
-
-	* ops.h (INSTALL_UNOP, CAST_UNOP_ARG, UNOPDECL, DEFUNOPX, DEFUNOP,
-	DEFUNOP_OP, DEFUNOP_FN): New macros.
-
-	* ov.h (unary_op_fcn): New typedef.
-	(octave_value::unary_op): New enum.
-	* ov.cc (octave_value::octave_value): New function.
-
-	* ov.h (octave_value::not, octave_value::uminus,
-	octave_value::transpose, octave_value::hermitian,
-	octave_value::increment, octave_value::decrement): Delete.
-
-	* ov-base.cc (octave_base_value::not, octave_base_value::uminus,
-	octave_base_value::transpose, octave_base_value::hermitian,
-	octave_base_value::increment, octave_base_value::decrement): Delete.
-
-	* ov.cc (gripe_unary_op): New function.
-	(do_unary_op): New function.
-	* ov-typeinfo.h (octave_value_typeinfo::unary_ops):
-	New data member.
-	* ov-typeinfo.cc (octave_value_info::register_unary_op,
-	octave_value_info::do_register_unary_op,
-	octave_value_info::lookup_unary_op,
-	octave_value_info::do_lookup_unary_op):
-	New functions.
-
-	* ov-list.cc (Fsplice): Use new octave_value::int_value function here.
-	(octave_list::do_index_op): Likewise.
-	(octave_list::assign): Likewise.
-	* toplev.cc (Fquit): Likewise.
-	* syscalls.cc (Fwaitpid): Likewise.
-	(Ffcntl): Likewise.
-	* file-io.cc (do_fread): Likewise.
-	(do_fwrite): Likewise.
-	* data.cc (make_diag): Likewise.
-	(Fsize): Likewise.
-	(get_dimensions): Likewise.
-	(Flinspace):
-
-	* ov-base.cc (octave_base_value::int_value): New function.
-	(octave_base_value::nint_value): Ditto.
-	* ov.h (octave_value::int_value): Ditto.
-	(octave_value::nint_value): Ditto.
-
-	* ov-list.cc (octave_list::assign): Fix off-by-one error.
-
-Wed Oct 28 11:01:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_mat_ascii_data): Try harder to convert file
-	name to valid variable name.
-
-	* data.cc (Fisempty, Fis_matrix): New functions.
-
-	* ov-str-mat.h (octave_char_matrix_str::is_matrix_type): New function.
-
-	* OPERATORS/op-list.cc: New file.
-	* Makefile.in (OP_XSRC): Add it to the list.
-
-	* ov-list.cc (octave_list::assign): New function.
-
-	* ov-typeinfo.h (octave_value_typeinfo::assignany_ops):
-	New data member.
-	* ov-typeinfo.cc (octave_value_info::register_assignany_op,
-	octave_value_info::do_register_assignany_op,
-	octave_value_info::lookup_assignany_op,
-	octave_value_info::do_lookup_assignany_op):
-	New functions.
-	* ov.cc (octave_value::try_assignment (octave_value::assign_op,
-	const octave_value_list&, const octave_value&)): If no assignment
-	operator for particular RHS type exists, try finding one for
-	generic octave_value as RHS type.
-	* ops.h (DEFASSIGNANYOP_FN): New macro.
-
-	* ov-list.cc (Fsplice): New function.
-	* oct-obj.cc (octave_value_list::splice): New function.
-
-	* ov.cc (Vresize_on_range_error): No longer static.
-	* ov.h (Vresize_on_range_error): Provide extern declaration.
-
-	* oct-procbuf.cc (symbols_of_oct_procbuf): Don't declare static.
-
-	* data.cc (Flength): New function.
-	* ov.h (octave_value::length): New virtual function.
-	* ov-base.cc (octave_base_value::length): New function.
-	(octave_base_value::rows, octave_base_value::columns): Move
-	definitions here, from ov-base.h.  Don't return -1.  Instead,
-	gripe about wrong argument type.
-	* ov-bool-mat.h (octave_bool_matrix::length): New function.
-	* ov-bool.h (octave_bool::length): Ditto.
-	* ov-ch-mat.h (octave_char_matrix::length): Ditto.
-	* ov-complex.h (octave_complex::length): Ditto.
-	* ov-cx-mat.h (octave_complex_matrix::length): Ditto.
-	* ov-list.h (octave_list::length): Ditto.
-	* ov-range.h (octave_range::length): Ditto.
-	* ov-re-mat.h (octave_matrix::length): Ditto.
-	* ov-scalar.h (octave_scalar::length): Ditto.
-
-Tue Oct 27 22:19:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-list.cc (octave_list::print_raw): Handle case of empty list.
-	(octave_list::print_name_tag): Likewise.
-
-	* octave.cc (intern_argv): Built-in variable argv is now a list of
-	strings instead of a string vector.
-	Always bind argv, making it an empty list if there are no args.
-
-Mon Oct 26 08:41:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xdiv.cc (mx_leftdiv_conform): Explicitly declare args to be
-	passed as references to const objects.  Fix explicit instantiation
-	requests to match.
-	(mx_div_conform): Likewise.
-
-	* pt-unop.h (tree_prefix_expression): Reorder constructor args to
-	put those with default values last.
-	(tree_postfix_expression): Likewise.
-	* parse.y: Change all callers.
-
-Fri Oct 23 12:07:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (Ffile_in_loadpath): New function.
-
-	* defaults.cc (Vload_path, Vdefault_load_path): Now static.
-
-	* help.cc (simple_help): Use Vload_path_dir_path here instead of
-	trying to reconstruct it from Vload_path.
-	* fn-cache.cc (octave_fcn_file_name_cache::do_list): Likewise.
-	(octave_fcn_file_name_cache::update): Likewise.
-
-	* defaults.cc (octave_loadpath): Construct Vload_path_dir_path
-	using Vdefault_load_path.
-	(set_default_path): Likewise.
-
-	* defaults.h, defaults.cc (maybe_add_default_load_path): Delete.
-
-	* defaults.cc (Vdefault_load_path): New static variable.
-	(set_default_path): Set it.
-	(maybe_add_default_load_path): Use it.
-	(symbols_of_defaults): Add DEFCONST for DEFAULT_LOADPATH.
-	Thanks to Rafael Laboissiere <rafael@icp.inpg.fr>.
-
-	* defaults.cc (set_default_path): If OCTAVE_PATH is set in the
-	environment, call maybe_add_default_load_path on it.
-
-Tue Oct 20 20:58:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (maybe_add_default_load_path): If LOADPATH contains
-	an embedded "::", insert the default path there too.
-
-Fri Oct 16 00:52:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (in_matrix_or_assign_lhs): New subroutine for lexical
-	feedback.
-	(matrix): Use it.
-	(assign_lhs): Ditto.
-	* lex.h (lexical_feedback::looking_at_matrix_or_assign_lhs): New
-	data member.
-	* lex.l (handle_identifier): Use it to handle keywords like `cd'
-	as variables in contexts like [ab, cd] = foo ().
-
-	* ov-str-mat.h
-	(octave_char_matrix_str::octave_char_matrix_str (char c)):
-	New constructor.
-	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix (char c)):
- 	New constructor.
-	* ov.cc (octave_value::octave_value (char c): New constructor.
-
-	* pt-loop.cc (tree_simple_for_command::eval): Handle case of RHS
-	as string.
-
-Thu Oct 15 00:56:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/rand.cc: Declare Fortran subroutines as returning
-	int, not int*.
-
-Wed Oct 14 23:51:31 1998  Georg Thimm  <thimm@idiap.ch>
-
-	* load-save.cc (Vcrash_dumps_octave_core): New static variable.
-	(save_user_variables): Only save variables if
-	Vcrash_dumps_octave_core is true.
-	(symbols_of_load_save): Add DEFVAR for it here.
-	(crash_dumps_octave_core): New function.
-	* octave.cc (maximum_braindamage): Bind crash_dumps_octave_core to
-	0.0 here.
-
-Tue Oct 13 22:05:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (read_readline_init_file): New function.
-
-Thu Oct  8 13:47:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-procbuf.h (octave_procbuf::wstatus): New data member.
-	Initialize in constructors.
-	(octave_procbuf::wait_status): New member function.
-	* oct-procbuf.cc (octave_procbuf::sys_close): Use class data
-	member wstatus, not local variable.
-	* procstream.cc (procstreambase::close): Don't call sys_close directly.
-	Get subprocess exit status by calling wait_status for our procbuf.
-	* pt-plot.cc (close_plot_stream): Send "quit" command to gnuplot
-	before deleting plot_stream.
-
-Thu Oct  1 22:39:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fis_complex): New function.
-
-Fri Sep 25 11:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (write_header): Rename from write_binary_header.
-	Also write header for Octave ASCII files.
-
-	* load-save.cc (Fsave): Implement -append option.
-
-	* defaults.cc (Frehash): New function.
-
-Fri Sep 25 11:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (help_from_info): Improve error message in case that
-	info doesn't work.
-
-Thu Sep 24 10:48:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DLD_XSRC): Replace qzval.cc with qz.cc
-
-	* DLD-FUNCTIONS/balance.cc: Update from A. S. Hodel
-	<scotte@eng.auburn.edu>.
-
-	* DLD-FUNCTIONS/qz.cc: New file.
-
-	* DLD-FUNCTIONS/qzval.cc: Delete.
-
-	* parse.y (plot_command1): Don't allow it to be empty.
-	(plot_command): Handle simple `PLOT' and `PLOT ranges' as special
-	cases here.
-
-Wed Sep 23 21:10:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: Change <MATRIX>{SNLCMT}*\n{SNLCMT}* pattern
-	to <MATRIX>{S}*{COMMENT}{SNLCMT}* | <MATRIX>{S}*{NL}{SNLCMT}*.
-
-Fri Sep  4 10:50:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffwrite): Fix doc string.
-
-Wed Sep  2 16:22:23 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (match_sans_spaces): Make it work.
-
-	* toplev.cc (quit): Require nargout == 0.
-
-	* input.cc (get_user_input): Only try matching "exit", "quit", and
-	"return" if debugging.
-
-Tue Sep  1 12:50:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc: Use -H as single character equivalent of --no-history.
-
-Sat Aug 29 12:23:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.cc (octave_value_list::make_argv): If some values are
-	string vectors, insert all the elements, not just the first.
-
-Tue Aug 18 16:39:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_gets): Accept last line of
-	file even if it doesn't end in a newline character.
-
-Tue Aug 18 16:25:49 1998  Mumit Khan  <khan@xraylith.wisc.edu>
-
-	* xdiv.cc (mx_leftdiv_conform, mx_div_conform): Instantiate correct
-	templates.
-
-Thu Jul 30 00:37:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-loop.cc (tree_for_command::eval): Check for range first.
-	If error occurs when extracting matrix value, return early.
-	Don't bother to check for string type.
-
-	* ov-ch-mat.h (octave_char_matrix::is_real_matrix): New function.
-
-Tue Jun 23 15:09:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (clear_current_script_file_name): New function.
-	(parse_fcn_file): Bind current_script_file_name while script is
-	executing.  Use unwind_protect to clear it once the script is
-	finished.
-
-	* pt-plot.cc (Fgraw): New function.
-
-Mon Jun 22 22:13:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (is_valid_function): Provide version that takes
-	function name as string.
-
-	* parse.y (binary_expr): Fix thinko that resulted in incorrect
-	evaluation of -x^y.  Thanks to Richard Allan Holcombe
-	<raholcom@unity.ncsu.edu>.
-	(feval): Don't attempt to copy nonexistent arg names.
-
-Mon Jun 22 21:35:50 1998  Richard Allan Holcombe  <raholcom@unity.ncsu.edu>
-
-	* xpow.cc (xpow): Improve efficiency for matrix^(scalar int) case.
-
-Thu Jun  4 12:42:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (octave_user_function::octave_all_va_args):
-	If num_args_passed < num_named_args, create zero length list.
-
-Thu May 14 16:23:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/getrusage.cc: Include sys/types.h too.
-
-Mon May 11 00:38:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.cc (Fdiary): Don't forget to set write_to_diary file if
-	just given a file name.
-
-	* input.cc (octave_gets): Only send new line character to
-	octave_diary if current_input_line is empty or doesn't already end
-	with a new line character..
-	Don't send input from function files or	scripts to octave_diary.
-
-Sun May  3 19:54:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (reset_parser): Also call yyrestart if forced_interactive
-	is true, but not if input_from_startup_file is true.
-
-Tue Apr 28 14:06:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-procbuf.cc (Vkluge_procbuf_delay): New static variable.
-	(kluge_procbuf_delay): New function.
-	(symbols_of_oct_procbuf): New function.
-	(octave_procbuf::open): Delay Vkluge_procbuf_delay microseconds
-	after forking.
-
-Thu Apr 23 15:41:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (Vload_path_dir_path): New variable.
-	* utils.cc (file_in_path): Use it.
-
-	* utils.cc (search_path_for_file): Undo previous change.
-	(file_in_path): Undo previous change.
-	* defaults.cc (loadpath): Undo previous change.  Tilde expansion
-	is once again handled correctly by the code in
-	liboctave/pathsearch.cc.
-
-Mon Apr 20 21:50:34 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (get_dimensions): Allow zeros ([], 3) to work, for
-	compatibility with Matlab.
-
-	* dynamic-ld.cc [WITH_DL && ! HAVE_DLFCN_H]: Add declarations for
-	dlopen, dlerror, dlsym, and dlclose.
-
-	* octave.gperf: Handle __FILE__ and __LINE__.
-	* lex.l (is_keyword): Likewise.
-	* Makefile.in (oct-gperf.h): Pass -D option to gperf.
-	Postprocess output of gperf to convert name of static variable
-	from lookup to gperf_lookup, to avoid conflict with our	function
-	of the same name defined in variables.cc.
-
-Sat Apr 18 20:17:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (USE_GNU_INFO): Delete uses of this macro.
-
-Thu Apr 16 01:00:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc: Only include dlfcn.h if HAVE_DLFCN_H.
-
-Wed Apr 15 01:03:05 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (Vlast_prompt_time): New global variable.
-	(octave_gets): Set it.
-	* ov-fcn.h (octave_function::time_checked): New virtual function
-	(octave_function::mark_fcn_file_up_to_date): Ditto.
-	* ov-usr-fcn.h (octave_user_function::time_checked): New function.
-	(octave_user_function::mark_fcn_file_up_to_date): Ditto.
-	(octave_user_function::t_checked): New data member.
-	* variables.cc (symbol_out_of_date): Only check file time stamp if
-	a prompt has been printed since the last time check.
-
-	* pt-plot.h, pt-plot.cc (subplot_axes): New class.
-	(subplot): Handle axes.
-	(Vgnuplot_command_axes): New static variable.
-	(gnuplot_command_axes): New function.
-	(symbols_of_pt_plot): DEFVAR gnuplot_command_axes.
-	* pt-walk.h (tree_walker::visit_subplot_axes): New virtual function.
-	* parse.y (plot_options): Handle axes.
-	* lex.l (plot_axes_token): New function.
-	(is_keyword): Use it.
-	(is_plot_keyword): Recognize "axes" and "axis".
-	* lex.h (class lexical_feedback): New field, in_plot_axes.
-	(lexical_feedback::init): Reset it.
-
-Tue Apr 14 23:32:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (parse_fcn_file): New arg, force_script.  Change callers.
-
-Fri Apr 10 11:01:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (type): Also print values of variables.
-
-Wed Apr  8 01:00:58 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (set_format): Set scale to 1.0 if all elements are
-	int or inf or nan.
-
-	* parse.y (Vwarn_future_time_stamp): New variable.
-	(symbols_of_parse): Add DEFVAR for it.
-	(warn_future_time_stamp): New function.
-	(frob_function_def): Maybe warn about files with future time stamps.
-
-Thu Apr  2 20:43:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector): In
-	error messages, print element numbers starting with 1, not 0.
-
-Sat Mar 28 15:25:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (clean_up_for_exit): New function.
-	(clean_up_and_exit): Use it.
-	* sighandlers.cc (my_friendly_exit): Call it instead of
-	clean_up_and_exit, then do default action for signal.
-
-	* sighandlers.cc (octave_new_handler): Call my_friendly_exit with
-	signal set to SIGABRT if it is defined, or -1 otherwise.
-
-	* error.cc (verror): Fix thinko in attempt to skip `error: ' tag
-	when buffering error messages.
-	* pt-except.cc (tree_try_catch::eval): Reset buffer_error_messages
-	here if	just discarding unwind_protect frame.
-
-Wed Mar 18 12:35:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xpow.cc (elem_xpow): For real-scalar .^ matrix case, result is
-	complex only if real-scalar is negative and matrix has some
-	non-integer values.
-
-Tue Mar 17 17:47:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (Vgnuplot_command_plot, Vgnuplot_command_replot,
-	Vgnuplot_command_splot, Vgnuplot_command_using,
-	Vgnuplot_command_with, Vgnuplot_command_title,
-	Vgnuplot_command_end): New static variables.
-	(symbols_of_pt_plot): DEFVAR them.
-	(gnuplot_command_plot, gnuplot_command_replot,
-	gnuplot_command_splot, gnuplot_command_using,
-	gnuplot_command_with, gnuplot_command_title,
-	gnuplot_command_end): New functions.
-	(open_plot_stream, send_to_plot_stream, tree_plot_command::eval,
-	subplot_using::print, subplot_style::print, subplot::print,
-	do_external_plotter_cd, Fgset, Fgshow): Use them instead of the
-	GPLOT_CMD_PLOT, GPLOT_CMD_REPLOT, GPLOT_CMD_SPLOT,
-	GPLOT_CMD_USING, GPLOT_CMD_WITH, GPLOT_CMD_TITLE, and
-	GPLOT_CMD_END macros.
-
-Fri Feb 27 12:25:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (additional_help_message): Fix www address.
-
-Tue Feb 24 00:42:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (simple_help): Put additional help message first.
-  	(additional_help_message): Add information about web site and
-	mailing list.
-
-Fri Feb 20 00:41:06 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (GPLOT_CMD_REPLOT): Clear before replot.
-
-	* Makefile.in: Better handling of lib flags for linking.
-
-Thu Feb 19 21:14:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-decl.cc (Vinitialize_global_values): New static variable.
-	(initialize_global_variables): New function.
-	(symbols_of_pt_decl): New function.
-	DEFVAR Vinitialize_global_values and initialize_global_variables.
-	(tree_global_command::do_init): If initialize_global_variables is
-	not true and the variable doesn't have an explicit initializer, don't
-	initialize it.  If we are giving it a default value, use the value
-	of the variable defualt_global_variable_value.
-	* octave.cc (maximum_braindamage): Set default_global_variable_value
-	and initialize_global_variables to Matlab-compatible values.
-
-Wed Feb 18 04:35:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/besselj.cc: Rename from bessel.cc.
-	* Makefile.in (DLD_XSRC): Likewise.
-
-	* syscalls.cc (Fvfork): Delete.
-
-	* oct-procbuf.cc: Just use fork.
-
-	* parse.y (feval): Provide version that takes function name
-	separate from other args.
-	* parse.h: Declare it.
-
-	* oct-procbuf.cc (octave_procbuf::open): Move declaration of
-	child_std_end outside of child scope and declare volatile.
-
-Mon Feb 16 15:04:28 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Include cstdio, for SEEK_SET.
-
-Thu Feb 12 22:07:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* system.c: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-
-Fri Feb  6 01:23:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::file_number): Rename from fileno.
-	Change all uses.
-
-	* fsolve.cc (fsolve_option_table): Add missing & to function names.
-
-Thu Feb  5 02:27:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Fls): If first attempt at reading process output
-	fails, sleep once and try again.
-	* toplev.cc (run_command_and_return_output): Likewise.
-
-	* oct-procbuf.cc (octave_procbuf::open): Use vfork if it is available.
-
-	* syscalls.cc (Fvfork): New function.
-
-	* ov-bool-mat.cc: Only declare assign function if
-	CXX_NEW_FRIEND_TEMPLATE_DECL is not defined.
-
-	* ov-base.h, ov-bool-mat.h, ov-bool.h, ov-ch-mat.h, ov-complex.h,
-	ov-cx-mat.h, ov-range.h, ov-re-mat.h, ov-scalar.h: Handle default
-	args for *_value functions consistently.
-
-	* symtab.cc (maybe_list_cmp_fcn): Declare args as void*, not
-	void**, then use X_CAST.
-
-	* OPERATORS/op-s-cm.cc: Include mx-cm-s.h.
-
-	* defun-int.h: Include ov-builtin.h, ov-mapper.h, and symtab.h.
-	(install_builtin_mapper, install_builtin_function,
-	install_builtin_variable) Use specific types rather than void * in
-	declaration.
-	* defun.cc (install_builtin_mapper, install_builtin_function,
-	install_builtin_variable): Likewise.  Eliminate casts.
-
-	* load-save.cc (read_binary_data, read_mat_file_header,
-	save_binary_data): Use X_CAST, not static_cast.
-	* unwind-prot.h (unwind_protect::save_ptr): Likewise.
-	* Map.cc (goodCHptr, index_to_CHptr, CHptr_to_index): Likewise.
-	* dynamic-ld.cc (octave_dlopen_dynamic_loder::resolve_reference):
-	Likewise.
-
-	* pt-mat.cc (tm_const::operator bool ()):
-	(tm_row_const::operator bool ()): Likewise.
-	* oct-stream.cc (printf_value_cache::operator bool ()): Likewise.
-	(scanf_format_list::operator bool ()): Likewise.
-	(printf_format_list::operator bool ()): Likewise.
-	(octave_stream::operator bool ()): Likewise.
-
-Wed Feb  4 13:08:29 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/minmax.cc: Include cmath, not oct-math.h.
-
-	* syscalls.cc (Fdup2): Convert stream to actual system file id.
-
-	* oct-stream.cc (octave_base_stream::fileno, octave_stream::fileno):
-	New functions.
-
-Tue Feb  3 00:24:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (exec_path): Append Vbin_dir to std_path.
-
-	* octave.cc (initialize_pathsearch): Set TEXMFDBS, not TEXMF.
-	Look for OCTAVE_DB_PATH in environment.
-	Simplify using Vdata_dir and Vlibexec_dir.
-
-	* defaults.h.in (Vdata_dir, Vlibexecdir): Declare new vars.
-	defaults.cc: Define them.
-	(set_default_data_dir, set_default_libexecdir): New functions.
-	(install_defaults): Call them.
-
-	* defaults.h.in (OCTAVE_LIBEXECDIR): Define.
-
-Mon Feb  2 02:43:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
-	Use mk-libdir-link.
-
-	* defaults.h.in (OCTAVE_OCTLIBDIR): Substitute value.
-	(Vlib_dir): Delete declaration.
-	* defaults.cc (Vlib_dir): Delete.
-	(set_default_lib_dir): Delete.
-	(install_defaults): Don't call set_default_lib_dir.
-	(set_default_info_prog): If oct_info_prog is empty, set default to
-	"info" -- we expect it to be somewhere in the user's path.
-
-	* defun.h (DEFCONST, DEFCONSTX): Eliminate inst_as_fcn and chg_fcn
-	args.  Always pass true for inst_as_fcn and 0 for chg_fcn to
-	DEFVAR when creating built-in values like `e' or `stderr' that can
-	be redefined.  Change all uses.
-
-	* help.cc (Ftype): Handle script files too.
-	(Fwhich): Likewise.
-
-Sat Jan 31 00:00:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-ch-mat.cc (octave_char_matrix::is_true): Make it work.
-	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::is_true):
-	Delete.
-
-	* load-save.cc (read_ascii_data): Allow strings of length 0.
-	If we don't find data on the first call, fail with error message.
-	(do_load): Pass count of items read to read_ascii_data.
-	Allow `load foo xyz' to work when foo contains only numbers.
-
-Fri Jan 30 23:46:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-str-mat.h (octave_char_matrix_str::all): Delete.
-	(octave_char_matrix_str::any): Delete.
-	* ov-ch-mat.h (octave_char_matrix::all, octave_char_matrix::any):
-	Call charMatrix::all, charMatrix::any.
-
-Thu Jan 29 16:25:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_mat_binary_data): Handle third digit of MOPT
-	as flag indicating row or column major ordering.
-
-Wed Jan 28 00:18:17 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/dassl.cc (lsode_option_table):
-	Add missing & to function names.
-	* DLD-FUNCTIONS/lsode.cc (lsode_option_table): Likewise.
-	* DLD-FUNCTIONS/quad.cc (quad_option_table): Likewise.
-
-	* Makefile.in (oct-gperf.h): Add -G option to gperf.
-
-	* load-save.cc (get_save_type): Add `UL' and `L' suffixes to large
-	constant values.  For LS_INT, use <= and >= for comparison.
-
-Mon Jan 26 13:17:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-usr-fcn.cc (Vmax_recursion_depth): New static variable.
-	(max_recursion_depth): New fucnction
-	(symbols_of_ov_usr_fcn): DEFVAR max_recursion_depth.
-	(octave_user_function::do_index_op): Check Vmax_recursion_depth.
-
-Thu Jan 22 13:45:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (make_dynamic_loader): Fix typo.
-
-Tue Jan 20 17:02:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fexist): If local symbol is undefined, check
-	global table.
-
-	* pr-output.cc (pr_max_internal): Initial value for result is
-	-DBL_MAX, not DBL_MIN.
-
-Thu Jan  8 11:54:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xpow.cc (elem_xpow): If second arg of pow is complex, make sure
-	first arg is also complex.
-
-	* symtab.cc (symbol_table::rename): Properly insert new item at
-	the front of the list to avoid losing the rest of the items.
-
-Thu Dec 11 23:30:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fclear): Increment index to skip -x arg.
-
-Tue Dec  9 02:45:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Don't forget Pix.h.
-
-	* BaseSLList.cc: Don't include nonstandard libg++ header files.
-
-Sun Nov 30 14:58:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc: Include cmath, not oct-math.
-	* sysdep.cc: Likewise.
-
-	* DLD-FUNCTIONS/bessel.cc: New file.
-	* Makefile.in (DLD_XSRC): Add it to the list.
-
-Thu Nov 27 23:28:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_string): Constructor for string class takes
-	(size_t, char) args, not (char, size_t).
-
-Wed Nov 26 00:39:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTAVE_LIBS): Include $(SPECIAL_MATH_LIB) just
-	ahead of -lcruft.
-
-Thu Nov 20 15:16:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Bind implicit_num_to_str_ok to 1.
-	* pt-mat.cc (Vimplicit_num_to_str_ok): New static variable.
-	(implicit_num_to_str_ok): New function.
-	(symbols_of_pt_mat): DEFVAR implicit_num_to_str_ok.
-	(tm_row_const::some_str): New data member.
-	(tm_row_const::some_strings_p): New function.
-	(tm_row_const::init): Set some_str.
-	(tm_const::some_str): New data member.
-	(tm_const::some_strings_p): New function.
-	(tm_const::init): Set some_str.
-	(tree_matrix::eval): If Vimplicit_num_to_str_ok is true and some
-	of the elements are strings, force a string conversion before
-	returning.
-
-	* parse.y (fold, finish_colon_expression, finish_matrix):
-	If an error occurs, return the original expression.
-	Use unwind_protect to restore error_state.
-
-	* ov-ch-mat.h (octave_char_matrix::convert_to_str): Result is
-	char_matrix_str, not just char_matrix.
-
-Wed Nov 19 02:05:40 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
-
-	* DLD-FUNCTIONS/filter.cc: Don't include extern template decls if
-	CXX_NEW_FRIEND_TEMPLATE_DECL is defined.
-	* ov-cx-mat.cc: Likewise.
-	* ov-re-mat.cc: Likewise.
-	* ov-str-mat.cc: Likewise.
-
-	* ov-cx-mat.h (octave_complex_matrix::decrement,
-	octave_complex_matrix):	Use explicit Complex constructor.
-
-Wed Nov 19 00:08:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-decl.cc (tree_global_command::do_init): Initialize global
-	values to `[]'.  Only perform explicit initialization once.
-
-Tue Nov 18 04:27:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (Vfixed_point_format): New variable.
-	(fixed_point_format): New fucntion.
-	(symbols_of_pr_output): Add DEFVAR for fixed_point_format.
-	(set_real_matrix_format): Handle fixed point format
-	(set_complex_matrix_format): Handle fixed point format
-	(set_format): New arg, scale in Matrix, ComplexMatrix, Range versions.
-	(pr_scale_header): New function.
-	(octave_print_internal): Handle fixed point format in Matrix,
-	ComplexMatrix, and Range versions.
-	* octave.cc (maximum_braindamage): Set fixed_point_format to 1.0.
-
-	* utils.cc (do_string_escapes): Move here, from lex.l.
-	Arg is now const string& instead of char*.
-	Return new string object instead of modifying arg in place.
-	(Fdo_string_escapes): New function.
-	* lex.l (handle_string): Use new version of do_string_escapes.
-
-	* lex.l (Vbackslash_escapes): Delete.
-	(backslash_escapes): Delete.
-	(do_string_escapes): Undo previous change.
-	(eat_whitespace, eat_continuation): Undo previous change.
-	(handle_string): Undo previous change.
-	(symbols_of_lex): Undo previous change.
-	* octave.cc (maximum_braindamage): Undo previous change.
-
-Fri Nov 14 01:53:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (eval_string (const string&, bool, int&, int)): No
-	longer static.
-	* parse.h: Provide declaration.
-	* input.cc (get_user_input (const octave_value_list&, bool, int)):
-	New arg, nargout.  Pass it to eval_string.
-	(keyboard): Pass nargout = 0 to get_user_input.
-	(input): Pass nargout to get_user_input.
-
-	* input.cc (get_user_input (const octave_value_list&, bool)):
-	Return octave_value_list() if user enters `quit', `exit', or `return'.
-	If debugging, let eval_string handle the printing chores and
-	reset error_state before asking for more input.
-
-	* input.cc (Fkeyboard): Unconditionally turn on history here.
-
-	* lex.l (have_continuation, have_ellipsis_continuation): Declare
-	arg as bool, not int.  Change callers.
-
-	* lex.l (Vbackslash_escapes): New static variable.
-	(backslash_escapes): New function.
-	(do_string_escapes): Return immediately if ! Vbackslash_escapes.
-	(eat_whitespace, eat_continuation): Only call have_continuation if
-	Vbackslash_escapes.
-	(handle_string): Backslash is only special if Vbackslash_escapes.
-	(symbols_of_lex): Add DEFVAR for backslash_escapes.
-	* octave.cc (maximum_braindamage): Set backslash_escapes to 0.
-
-Thu Nov 13 16:20:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fexist): Also return 2 if NAME is a regular file
-	somewhere in the LOADPATH.
-
-	* data.cc (sumsq): Fix doc string.
-
-	* parse.y (Fsource): Call parse_fcn_file, not parse_and_execute.
-
-Tue Oct  7 16:51:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun-int.h (DEFINE_FUN_INSTALLER_FUN): Set installed to true
-	after installing the function.
-
-Thu Sep 25 10:17:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/filter.cc (Ffilter): Return second output value
-	even when called with only 3 arguments.
-
-Mon Sep 22 16:44:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/rand.cc (do_rand): Print error if first of two
-	args is a string but doesn't match "seed".
-	(Frand, Frandn): Fix doc string.
-
-Mon Aug 25 10:42:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (get_user_input): Return an empty string if the user
-	just types RET.
-
-Thu Jul 31 22:59:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l <TEXT_FCN>: Ensure that we handle words that begin with
-	single or double quotes as strings.
-
-Thu Jul 17 13:06:48 1997  Klaus Gebhardt  <gebhardt@crunch.ikp.physik.th-darmstadt.de>
-
-	* DLD-FUNCTIONS/rand.cc (Frand): Use F77_XFCN to call getsd,
-	setsd, setall, setcgn, dgenunf, and dgennor since they can call
-	XSTOPX.
-
-Mon Jul 14 12:54:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (octave_dynamic_loader::load_fcn_from_dot_oct_file):
-	If first attempt to load function fails, prepend and underscore
-	and try again.
-
-	* Makefile.in (install-inc): If defaults.h, oct-conf.h, or
-	oct-gperf.h don't exist in the current directory, look in $(srcdir).
-
-Mon Jul  7 21:14:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/qr.cc (Fqr): Correctly handle nargout == 0.
-
-Wed Jul  2 16:47:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* matherr.c: New file.  Move matherr function here.
-	* sysdep.cc: From here.
-	* Makefile.in (DIST_SRC): Add matherr.c to the list.
-
-	* error.cc (handle_message): Avoid bug in g++ snapshot.
-
-Thu Jun 26 22:04:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (file_in_path): Add default load path to PATH arg if
-	it begins or ends with a colon.
-
-Wed Jun 25 13:31:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-lvalue.h (octave_lvalue::struct_elt_ref): Ensure val is unique.
-
-Fri Jun 20 12:33:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (cmd_death_handler): New function.
-	(run_command_and_return_output): Insert pid of command in
-	octave_child_list along with pointer to cmd_death_handler so we
-	can get the exit status without having to block SIGCHLD.
-	(cleanup_iprocstream): Remove pid of command from octave_child_list.
-
-Sun Jun 15 16:11:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* OPERATORS/op-cs-s.cc (ldiv): Doh, v1 is complex, v2 is real.
-
-	* Makefile.in (DISTFILES): Add mkops to the list.
-	(dist): Correctly link files in DLD-FUNCTIONS, OPERATORS, and
-	TEMPLATE-INST subdirectories.
-
-Fri Jun  6 04:30:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/npsol.cc, DLD-FUNCTIONS/qpsol.cc,
-	DLD-FUNCTIONS/fsqp.cc: Delete.
-	* Makefile.in (DLD_XSRC): Remove them from the list.
-
-	* utils.cc (search_path_for_file): New arg, do_tilde_expansion.
-	If TRUE, perform tilde expansion on path before searching.
-	(file_in_path): Call search_path_for_file with do_tilde_expansion
-	set to false, since we've already performed tilde expansion on the
-	load path.
-
-	* defaults.cc (loadpath): Perform tilde expansion here.
-
-Thu Jun  5 01:42:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Make building of static library optional.
-	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
-
-	* dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference):
-	Call shl_findsym with type set to TYPE_UNDEFINED.
-
-	* Makefile.in (stamp-picdir): Delete.
-	(pic): New target.  Don't worry so much about creating pic
-	directory only when it is really needed.
-	(stamp-interp): Delete.
-	(libraries): New target.  Depend on shared library directly.
-
-Wed Jun  4 00:09:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (main): Call dir_path::set_program_name here.
-
-Tue Jun  3 16:47:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (symbol_out_of_date): Make it work again.
-
-	* parse.y (parse_and_execute): Move here from toplev.cc
-	(default_eval_print_flag): Likewise.
-	(safe_fclose): Likewise.
-	(eval_string): Likewise.
-	(Fsource): Likewise.
-	(Ffeval): Likewise.
-	(feval): Likewise.
-	(Feval): Likewise.
-	(symbols_of_parse): Define default_eval_print_flag here instead of
-	in varaibles.cc.
-	(looks_like_octave_copyright): Move here from variables.cc
-	(gobble_leading_whitespace): Likeiwse.
-	(is_function_file): Likewise.
-	(restore_input_stream): Likewise.
-	(parse_fcn_file): Likewise.
-	(load_fcn_from_file): Likewise.
-	(get_help_from_file): Likewise.
-
-	* toplev.cc (syms_of_toplev): Define argv, program_name, and
-	program_invocation_name here instead of in variables.cc.
-
-	* parse.h (line_editing): Move here from toplev.h.  Now bool, not int.
-	(reading_startup_message_printed) Likewise.
-	(input_from_startup_file): Likewise.
-	(input_from_command_line_file): Likewise.
-
-	* load-save.cc: Use bool instead of int where appropriate.
-
-	* input.h (enum echo_state): Move here from variables.h.
-	(Vecho_executing_commands): Likewise.  Now bool, not int.
-	* input.cc (echo_executing_commands): Move here from variables.cc.
-	(symbols_of_input): Define echo_executing_commands here instead of
-	in variables.cc.
-
-	* octave.cc (program_invocation_name): Don't define.
-	(intern_argv): Don't set program_invocation_name here.
-	(main): Call octave_env::set_program_name here, not in intern_argv.
-
-	* toplev.cc (quitting_gracefully): Move here from octave.h and
-	make static bool instead of extern int.
-
-	* error.cc (bind_global_error_variable, clear_global_error_variable):
-	Move here from variables.cc.
-	(symbols_of_error): Define error_text here instead of in variables.cc.
-
-	* pager.cc (write_to_diary_file): Now bool, not int.
-	(really_flush_to_pager): Likewise.
- 	(flushing_to_pager): Likewise.
-	* sighandlers.h (can_interrupt): Likewise.
-	* error.h (buffer_error_messages): Likewise.
-	* oct-hist.h (input_from_tmp_history_file, Vsaving_history): Likewise.
-	* input.h (forced_interactive): Likewise.
-	(get_input_from_eval_string): Likeiwse.
-	(reading_script_file): Likeiwse.
-	(reading_fcn_file): Likeiwse.
-	(interactive): Likewise.
-
-	* unwind-prot.cc (saved_variable::saved_variable (bool *, bool)):
-	Set type_tag to boolean, not int.
-
-Mon Jun  2 00:40:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.h (Octave_builtin_fcn): Delete typedef.
-
-	* help.cc (make_name_list): Move here from variables.cc.
-	(keyword_help, names): Now static.
-	(struct help_list): Move declaration here from help.h.
-
-	* oct-hist.cc (Vhistory_file, Vhistory_size, Vsaving_history):
-	Move here from variables.cc.
-	(symbols_of_oct_hist): New function.
-
-	* version.h: Protect against multiple inclusion.
-
-	* defun.cc (check_version): New function.
-	* defun-int.h (DEFINE_FUN_INSTALLER_FUN): Use it.
-
-	* help.h, help.cc (additional_help_message): Now extern.
-	(operator_help): Now static.
-
-	* defun.cc (print_usage): Move here from help.cc
-	* DLD-FUNCTIONS/*.cc, data.cc, dirfns.cc, file-io.cc, input.cc,
-	load-save.cc, octave.cc, ov-list.cc, ov-typeinfo.cc,
-	ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-plot.cc, strfns.cc,
-	syscalls.cc, sysdep.cc, utils.cc, toplev.cc:
-	Don't include help.h.
-
-	* TEMPLATE-INST/Array-sym.cc: New file.
-
-	* load-save.cc (do_load): Don't use ostream::form.
-	* pr-output.cc: Likewise, at least where it is easy to do so.
-	* oct-stream.cc: Ditto.
-
-	* symtab.h (symbol_record::symbol_def::rows): New function.
-	(symbol_record::symbol_def::columns): Ditto.
-	(symbol_record::symbol_def::type_name): Ditto.
-	(symbol_record::rows): Ditto
-	(symbol_record::columns): Ditto
-	(symbol_record::type_name): Ditto
-
-	* symtab.h, symtab.cc (symbol_record::hides_fcn): New function.
-	(symbol_record::hides_builtin): Ditto.
-	(symbol_record::print_symbol_info_line): Ditto.
-	(symbol_table::long_list): Delete.
-	(symbol_table::symbol_list): New function.
-	(symbol_table::maybe_list): Delete argc arg.
-	(symbol_table::name_list): Rename from symbol_table::list.
-	Change all callers.
-
-	* symtab.h, symtab.cc (class symbol_record_info): Delete.
-
-	* symtab.cc (matches_patterns): Use vector form of glob_match.
-
-Sun Jun  1 14:04:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-check.h, pt-check.cc: New files, for semantic checking of
-	parse trees.
-
-	* symtab.h (class symbol_def): Now nested in symbol_record class.
-	(enum TYPE): Move from symbol_def to symbol record class.  Change
-	all uses.
-
-	* symtab.h, symtab.cc (symbol_table::maybe_list): New function,
-	from variables.cc.  Change all uses.
-
-	* pt-idx.h (tree_identifier::lvalue_ok): New function.
-	* pt-id.h (tree_index_expression::lvalue_ok): Likewise.
-	* pt-indir.h (tree_indirect_ref::lvalue_ok): Likewise.
-
-	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_oct_obj): Delete.
-	* pt-walk.h (tree_walker::visit_oct_obj): Delete declaration.
-
-	* lex.h (class lexical_feedback): Delete maybe_screwed_again.
-	* lex.l (lexical_feedback::init): Don't set it.
-
-Fri May 30 16:07:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mappers.cc: Include <cfloat> here.
-
-Tue May 27 10:08:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (eval_string): Don't index tmp if it is empty.
-
-Sat May 24 00:18:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (valid_identifier): Move here and make static.
-	* symtab.h, symtab.cc (valid_identifier): Delete declaration and
-	definition.
-
-Fri May 23 22:54:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* symtab.h (symbol_def::symbol_def): Use initializer list instead
-	of calling init_state.
-	(symbol_def::init_state): Delete.
-
-	* symtab.cc (symbol_table::print_stats): New function.
-	* variables.cc (F__dump_symtab_info__): New function.
-
-	* symtab.h, symtab.cc (symbol_table::hash): Return masked value.
-	(symbol_table::table_size): New data member.
-	(symbol_table::symbol_table): Set size of table in constructor.
-	(HASH_TABLE_SIZE): Replace uses with table_size.
-	(HASH_MASK): Delete.
-	* variables.cc (initialize_symbol_tables): Set top-level and
-	global symbol table sizes here.
-
-Thu May 22 13:32:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference):
-	Call shl_findsym with type set to TYPE_PROCEDURE.  Pass the
-	address of the pointer we want to define.
-
-Wed May 21 16:30:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/time.cc (extract_tm): Avoid memory leak in dealing
-	with time zone.
-
-	* Makefile.in (install-in): Use new mk-includedir-link macro.
-	(install-lib): Install in $octlibdir.  Use new mk-libdir-link macro.
-
-Tue May 20 01:24:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-list.cc (Flist): Rename from Fmake_list.
-
-Mon May 19 14:45:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (maximum_braindamage): Set default_eval_print_flag to 0.
-
-Sat May 17 16:32:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (set_default_editor): Default is now Emacs, not vi.
-
-Fri May 16 00:07:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-idx.cc (tree_index_expression::name): New function.
-
-	* pt.cc	(tree::str_print_code): New file, new convenience function.
-	* pt-arg-list.cc (tree_argument_list::get_arg_names): Use it.
-	* pt-assign.cc (tree_simple_assignment::rvalue): Likewise.
-	(tree_multi_assignment::rvalue): Likewise.
-
-	* pt-colon.h (tree_colon_expression::save_base): New data memmber.
-	(tree_colon_expression::preserve_base): New function.
-	* parse.y (finish_colon_expression): When converting to a simple
-	expression, be sure to delete the original colon expression but
-	not the base value.
-
-	* pt-mat.cc (tree_matrix::~tree_matrix): Actually do something.
-
-	* pt-all.h: New file.
-	* parse.y, lex.l, pt-pr-code.cc: Use it.
-
-	* pt.h: Rename from pt-base.h.
-
-	* All parse tree classes: Add private copy constructors and
-	assignment operators to prevent copying.
-
-	* pt-base.cc: Delete.
-
-	* unwind-prot.h, unwind-prot.cc: Make a bit more object-oriented.
-	Change all uses of unwind_protect stuff to match.
-
-	* pt-jump.h, pt-jump.cc (breaking, continuing, returning):
-	Make these flags static members of the corresponding class.
-	Change all uses.
-
-	* pt-assign.cc (tree_simple_assignment_expression::eval,
-	tree_multi_assignment_expression::eval): Clear lvalue index here.
-
-	* oct-lvalue.cc (octave_lvalue::assign): Don't clear index here.
-	* oct-lvalue.h (octave_lvalue::clear_index): New function.
-	(octave_lvalue::set_index): Rename from octave_lvalue::index.
-	Change all callers.
-
-Thu May 15 11:48:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-select.h, pt-select.cc (class tree_if_command_list,
-	class tree_if_clause, class tree_switch_case_list,
-	class tree_switch_case): Move here from pt-misc.h, pt-misc.cc.
-	* pt-decl.h, pt-decl.cc (class tree_decl_init_list,
-	class tree_decl_elt): Move here from pt-mist.h, pt-misc.cc
-
-	* pt-arg-list.h, pt-stmt.h: New files, extracted from pt-misc.h.
-	* pt-arg-list.cc, pt-stmt.cc: New files, extracted from pt-misc.cc.
-
-	* pt-decl.h, pt-except.h, pt-jump.h, pt-loop.h, pt-select.h:
-	New files, extraced from pt-cmd.h.
-	* pt-decl.cc, pt-except.cc, pt-jump.cc, pt-loop.cc, pt-select.cc:
-	New files, extraced from pt-cmd.cc.
-
-	* pt-unop.h, pt-binop.h, pt-colon.h, pt-idx.h, pt-assign.h:
-	New files, extracted from pt-exp.h
-	* pt-unop.cc, pt-binop.cc, pt-colon.cc, pt-idx.cc, pt-assign.cc:
-	New files, extracted from pt-exp.cc
-	* pt-exp.h, pt-exp.cc: Rename from pt-exp-base.h, pt-exp-base.cc.
-
-	* oct-lvalue.h: Rename from oct-var-ref.h.  Rename class from
-	octave_variable_reference to octave_lvalue.  Change all uses.
-	* oct-lvalue.cc: Rename from oct-var-ref.cc.
-
-	* variables.cc (bind_ans): Only bind ans and print result if value
-	is defined.
-
-	* defun.cc: New file.  Move functions for installing objects in
-	the symbol table here from variables.cc.
-
-	* oct-obj.h, oct-obj.cc: Add custom allocator, fwiw.
-
-	* toplev.cc (main_loop): Correctly increment command number.
-
-	* TEMPLATE-INST/SLList-tm.cc: Don't instantiate lists of pointers
-	to tree_matrix_row objects.
-	* TEMPLATE-INST/SLList-misc.cc: Do instantiate lists of pointers
-	to tree_argument_list objects.
-
-	* DLD-FUNCTIONS/dassl.cc: Update to use new octave_function
-	interface to user-supplied functions.
-	* DLD-FUNCTIONS/fsolve.cc: Likewise.
-	* DLD-FUNCTIONS/lsode.cc: Likewise.
-	* DLD-FUNCTIONS/npsol.cc: Likewise.
-	* DLD-FUNCTIONS/quad.cc: Likewise.
-
-	* dynamic-ld.h, dynamic-ld.cc (builtin_fcn_installer typedef):
-	Rename from builtin_fcn.
-	(octave_dynamic_loader::load_fcn_from_dot_oct_file):
-	Simplify by using new installer function defined by DEFUN_DLD.
-
-	* defun-dld.h (DEFUN_DLD): Use DEFINE_FUN_INSTALLER_FUN instead of
-	DEFINE_FUN_STRUCT_FUN.
-	* defun.h (DEFUN_MAPPER): Use DEFUN_MAPPER_INTERNAL.
-	* defun-int.h (DEFVAR_INTERNAL): Rename from DEFVAR_INT and move
-	here from defun.h.  Change all uses.
-	(DEFUN_MAPPER_INTERNAL): New macro.
-	(DEFINE_FUN_INSTALLER_FUN): New macro to define function that the
-	dynamic loader calls to do all the work of installing a new function.
-	(DEFINE_FUN_STRUCT_FUN): Delete.
-
-	* parse.y: Rewrite to handle more general expressions.
-	* lex.l: Corresponding changes.
-
-	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc: Cope with new parse tree
-	object structure.
-
-	* pt-misc.cc (class tree_for_command): Split into
-	tree_simple_for_command and tree_complex_for_command classes.
-
-	* pt-misc.h, pt-misc.cc (tree_statement::eval): Handle identifier
-	lookup and printing and binding ans here.
-	(tree_statement_list::eval): Simplify.
-	(tree_argument_list::all_elements_are_constant): New function.
-	(class tree_decl_elt): Now contains id and expr, not an assignment
-	expression.
-
-	* pt-exp-base.h pt-exp.h pt-id.h pt-indir.h pt-mat.h pt-const.h,
-	pt-exp-base.cc pt-exp.cc pt-id.cc pt-indir.cc pt-mat.cc pt-const.cc:
-	Replace eval functions with rvalue and lvalue functions.
-	Change all uses.
-	(lvalue_ok, rvalue_ok): New functions, for future compile-time
-	semantic checks.
-
-	* oct-var-ref.h (is_defined, is_map): New functions.
-
-	* pt-exp.h (class tree_oct_obj): Delete.
-
-	* variables.cc (extract_function, is_valid_function): Return
-	pointer to octave_function, not octave_symbol.
-	(link_to_global_variable): Rewrite.  Handle errors in
-	symbol_record::mark_as_linked_to_global.
-
-	* symtab.h, symtab.cc (class symbol_def, class symbol_record):
-	Symbols are now stored as octave_value objects only.
-
-	* ov.cc (install_types): Register function types here.
-	* ov-fcn.h, ov-fcn.cc, ov-builtin.h, ov-builtin.cc, ov-mapper.h,
-	ov-mapper.cc, ov-usr-fcn.h, ov-usr-fcn.cc: New classes for
-	functions as values.
-	* ov.h (class octave_value): Don't derive from octave_symbol.
-	* oct-fcn.h, oct-fcn.cc, oct-builtin.h, oct-builtin.cc,
-	oct-mapper.h, oct-mapper.cc, oct-usr-fcn.h, oct-usr-fcn.cc,
-	oct-sym.h, oct-sym.cc: Delete.
-
-Sun May 11 17:51:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (Ftype): Make it work again for functions.
-
-	* pt-pr-code.cc (tree_print_code::print_parens): New function.
-	Use it in other tree_print_code functions to handle printing all
-	the parens that we found when parsing the expression, not just one
-	pair.
-	* pt-exp-base.h (tree_expression::paren_count): Rename from
-	is_in_parens.
-	* parse.y (maybe_warn_assign_as_truth_value): Use new name.
-
-	* parse.y (constant): New non-terminal.
-	(simple_expr1): Use it.
-
-	* parse.y (make_unary_op): Delete.
-	(simple_expr1): Where appropriate, use make_prefix_op and
-	make_postfix_op instead of make_unary_op.  Allow increment and
-	decrement ops to work on expressions, not just identifiers.
-	(make_prefix_op, make_postfix_op): Arg is expression, not identifier.
-	Handle old unary_op cases too.
-	(fold (tree_unary_expression *)): Delete.
-	* pt-exp.h, pt-exp.cc (tree_prefix_expression::eval): Handle unary
-	minus and not here.
-	(tree_postfix_expression::eval): Likewise, for transpose and hermitian.
-	(class tree_prefix_expression, class tree_postfix_expression):
-	Derive from tree_unary_expression.  Delete identifier member.
-	Delete ident member function.
-	(tree_unary_expression): Don't handle evaluation here.
-	* pt-exp-base.h (mark_in_parens): No longer virtual. Return this.
-	(reference): New virtual function.
-	(class tree_expression): Don't handle expression type here.
-	* pt-mvr-base.h (tree_multi_val_ret::tree_multi_val_ret): Likewise.
-	* pt-mvr.h, pt-mvr.cc (tree_multi_assignment_expression): Likewise.
-	* pt-walk.h (visit_unary_expression): Delete declaration.
-	* pt-pr-code.h, pt-pr-code.cc (visit_unary_expression): Delete.
-	(visit_prefix_expression): Use operand(), not ident().
-	new, visit_postfix_expression):
-	* pt-id.h, pt-id.cc (increment, decrement): Delete.
-
-	* pt-misc.cc (tree_parameter_list::define_from_arg_vector): Get a
-	reference to each element and use the assignment operator instead
-	of tree_identifier::define.
-	* pt-id.h, pt-id.cc (tree_identifier::define): Delete versions
-	that take octave_value and octave_symbol args.
-
-Sat May 10 23:32:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete.
-
-	* oct-var-ref.cc (octave_variable_ref::assign): Clear idx after
-	assignment.
-
-	* octave_value classes: Add is_constant, is_function, and
-	function_value functions.
-
-	* ov.h, ov.cc (assign): Return void, not reference to octave_value.
-	(do_index_op): Rename, from index.
-	(do_struct_elt_index_op): Rename, from struct_elt_val.
-	Add version that accepts index arg.
-	Change all uses and derived classes to match.
-	* pt-const.h (index): Delete.
-	* oct-var-ref.h, oct-var-ref.cc (value): Handle indexed structure
-	ops here too.
-
-Fri May  9 07:40:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-exp.cc (print_rhs_assign_val, symbols_of_pt_exp): New functions.
-	(Vprint_rhs_assign_val): New static variable.
-	(tree_simple_assignment_expression::eval): Use it to optionally
-	allow the rhs (which is the result) of an assignment to be printed
-	instead of the left.
-
-	* pt-exp.cc (tree_simple_assignment_expression::eval): Use new
-	octave_variabl_reference::index function to handle indexing.
-
-	* oct-var-ref.h, oct-var-ref.cc (idx): New data member.
-	(octave_variable_reference::index): Set it.
-	(octave_variable_reference::assign): Handle indexing here.
-	Delete version of this function htat takes index arg.
-
-	* variables.h (struct builtin_varaible): Delete.
-	* variables.cc (install_builtin_variable): Take all elts of
-	builtin_variable struct directly.
-	* defun.h (DEFVAR_INT): Call install_builtin_variable directly.
-
-	* symtab.h, defun-int.h: Don't include variables.h.
-
-	* symtab.h (symbol_record::sv_function): Move typedef here.
-	* variables.h: From here.
-
-	* oct-var-ref.h, oct-var-ref.cc: New files for
-	octave_variable_reference class, extracted from variables.h and
-	variables.cc
-	* Makefile.in: Add them to the appropriate lists.
-
-	* oct-obj.h (octave_value_list::empty): New function.
-
-	* variables.h (class octave_variable_reference):  Rewrite to work
-	as a proxy class to store a pointer to octave_value and,
-	optionally, the change function to call and the name of the
-	structure element we are referencing.  Handle assignment,
-	increment, decrement, and value operations.
-
-Thu May  8 23:40:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-re-mat.h, ov-re-mat.cc (struct_elt_ref, struct_elt_val,
-	assign_struct_elt): Provide functions for looking up and setting
-	matrix dimensions.
-
-	* symtab.cc (symbol_record::define): Don't call sv_fcn here.
-	Don't save and restore value here.
-	(symbol_record::define_builtin_var): Do call sv_fcn here.
-	(symbol_record::variable_reference): Don't make value unique here.
-	Return pointer to sv_fcn in octave_variable_reference.
-
-	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
-	Simplify.
-
-	* pt-id.h, pt-id.cc (tree_identifier::reference): Return
-	octave_variable_reference, not octave_value&.
-	* symtab.h, symtab.cc (symbol_record::variable_reference): Ditto.
-	* pt-indir.h, pt-indir.cc (tree_indirect_ref::reference): Ditto.
-	Simplify too.
-
-	* pt-const.h (tree_constant::reference, tree_constant::value,
-	tree_constant::assign):  Delete unnecessary functions.
-	* pt-id.h, pt-id.cc (tree_identifier::assign): Ditto.
-
-	* pt-cmd.cc (tree_for_command::do_for_loop_once): Simplify.
-
-	* ov.h, ov.cc, ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc
-	(struct_elt_ref): New arg, octave_value* parent.
-	Allow deferred lookup.  Return octave_variable_reference, not
-	octave_value&.
-
-	* ov.h, ov.cc, ov-re-mat.h, ov-re-mat.cc (assign_struct_elt):
-	New virtual functions.
-
-	* ov.h, ov.cc (Vresize_on_range_error): Now static.
-
-	* pt-mvr.cc (tree_index_expression::eval): Delete redundant check
-	of error_state.
-
-Wed May  7 21:17:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (generate_completion): Rename from command_generator.
-	Use string objects instead of char*.
-	(generate_possible_completions): Let qsort also make matches unique.
-	(initialize_command_input): Register generate_completion with the
-	command_editor class.
-	(completion_matches): Simplify using generate_completion.
-
-	* pt-pr-code.cc (tree_print_code::visit_constant): For val, call
-	print_raw, not print.
-
-	* oct-usr-fcn.h (octave_user_function::argn_sr): New data member.
-	(octave_user_function::install_automatic_vars): Rename from
-	install_nargin_and_nargout.
-	(octave_user_function::bind_automatic_vars): Rename from
-	bind_nargin_and_nargout.
-	* oct-usr-fcn.cc (octave_user_function::eval): Extract arg names
-	from args vector and bind them to argn.
-	* oct-obj.h (octave_value_list::names): New data member.
-	* oct-obj.cc (octave_value_list::stash_name_tags): New function.
-	(octave_value_list::name_tags): Ditto.
-	* pt-const.h, pt-const.cc (tree_constant::print_raw): New function.
-	* pt-misc.h, pt-misc.cc (tree_argument_list::get_arg_names):
-	New function.
-	* pt-mvr.h, pt-mvr.cc (class index_expression): Cache arg names.
-	* toplev.cc (feval): Now static.  Handle arg names.
-
-	* mkops: Cope with moving files defining operators to OPERATORS
-	subdirectory.
-
-Tue May  6 00:48:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* DLD-FUNCTIONS/getgrent.cc: Use new octave_group class.
-	* DLD-FUNCTIONS/getpwent.cc: Use new octave_passwd class.
-
-	* syscalls.cc: Simplify by using new functions defined in
-	liboctave/oct-syscalls.cc.
-
-	* file-io.cc (Ftmpnam): Accept DIR and PREFIX args.
-
-Mon May  5 00:54:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-str-mat.cc (octave_char_matrix_str::print_name_tag): Print
-	empty strings on one line.
-
-	* DLD-FUNCTIONS, OPERATORS, and	TEMPLATE-INST: New subdirectories.
-	Move appropriate files to new directories.
-	* Makefile.in: Add DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST
-	directories to VPATH.  Fix rules to work with new directory
-	structure.
-
-Sun May  4 22:40:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	*  input.cc (initialize_command_input): Rename from
-	initialize_readline.
-	(gnu_readline, octave_gets, get_user_input): Simplify, return
-	string, not char *.
-
-	* Many of other files: Miscellaneous changes to go along with the
-	changes described in the liboctave/ChangeLog for May 4.  More code
-	moved from here to liboctave.
-
-Fri May  2 19:50:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathlen.h: Move to ../liboctave.
-
-Thu May  1 21:50:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (get_struct_elts): New fucntion.
-	(looks_like_struct, generate_struct_completions): Move here from
-	input.cc, rewrite, and make work again.
-
-Wed Apr 30 00:24:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h,
-	ov-ch-mat.cc, ov-ch-mat.h, ov-complex.cc, ov-complex.h,
-	ov-cx-mat.cc, ov-cx-mat.h, ov-file.cc, ov-file.h, ov-list.cc,
-	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc,
-	ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.h (scalar_value):
-	New function.  Same as double_value, but name is consistent with
-	octave_scalar class.
-
-	* op-fil-b.cc, op-fil-cm.cc, op-fil-lis.cc, op-fil-rec.cc,
-	op-fil-str.cc, op-fil-bm.cc, op-fil-cs.cc, op-fil-m.cc,
-	op-fil-s.cc: New files.
-
-	* ops.h (ASSIGNOPDECL, DEFASSIGNOP, DEFASSIGNOP_FN, CONVDECL,
-	DEFCONV, BINOPDECL, DEFBINOPX, DEFBINOP, DEFBINOP_OP, DEFBINOP_FN,
-	BINOP_NONCONFORMANT): New macros.
-	* op-b-b.cc, op-bm-bm.cc, op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc,
-	op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc,
-	op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, op-s-cm.cc,
-	op-s-cs.cc, op-s-m.cc, op-s-s.cc, op-str-str.cc: Use them.
-
-	* Makefile.in (octave): Also depend on ops.o.
-
-	* builtins.h: Delete.
-	* octave.cc: Add extern declaration here.
-
-	* mappers.h: Delete.
-	* Makefile.in (INCLUDES): Delete from list.
-	* mkbuiltins: Add extern declaration in builtins.cc.
-
-	* mkops: New file.
-	* ops.cc: Delete.
-	* Makefile.in (SOURCES): Delete from the list.
-	(ops.cc): New target.
-	(OP_SOURCES): New list.  Move all op-*.cc files here from SOURCES.
-	Add $(OP_SOURCES) to SOURCES list.
-
-	* variables.cc (symbols_of_variables): No longer static.
-	* ov.cc (symbols_of_ov): Rename from symbols_of_value.
-
-	* ov-base.h: Delete declaration for install_base_type_conversions.
-	* op-b-b.h, op-bm-bm.h, op-cm-cm.h, op-cm-cs.h, op-cm-m.h,
-	op-cm-s.h, op-cs-cm.h, op-cs-cs.h, op-cs-m.h, op-cs-s.h,
-	op-m-cm.h, op-m-cs.h, op-m-m.h, op-m-s.h, op-s-cm.h, op-s-cs.h,
-	op-s-m.h, op-s-s.h, op-str-str.h: Delete.
-	* Makefile.in (INCLUDES): Delete them from the list.
-
-Tue Apr 29 22:27:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.h, variables.cc (install_builtin_variables): Delete.
-	* mkbuiltins: Also generate install_builtin_variables function.
-	* Makefile.in: Fix rule to call mkbuiltins with correct args.
-	(clean): Also delete def-files and var-files.
-	* defaults.h.in, dirfns.h, error.h, file-io.h, help.h, input.h,
-	lex.h, load-save.h, oct-usr-fcn.h, pager.h, parse.h, pr-output.cc,
-	pr-output.h, pt-mat.h, pt-misc.h, pt-plot.h, toplev.h:
-	Delete declarations of symbols_of_* functions.
-	* data.h, syscalls.h: Delete.
-
-	* pr-output.cc (octave_print_internal): Leave printing of final
-	new line up to the caller.
-
-	* ov.h, ov.cc (reset_indent_level, increment_indent_level,
-	decrement_indent_level, newline, indent, reset,
-	curr_print_indent_level, beginning_of_line):
-	New functions and static data to manage indent level for printing.
-	(print_as_scalar): Delete.
-	(print, print_with_name): Always require stream arg.
-	Change all callers.
-
-	* oct-stream.h (octave_stream::input_stream): Make publicly available.
-	(octave_stream::output_stream): Likewise.
-
-	* ov-base.h, ov-base.cc, ov.h, ov.cc, ov-file.h ov-base.h
-	(is_file, stream_value, stream_number): New functions.
-	* ov-file.h, ov-file.cc: New files for value class to manage files.
-	* file-io.cc (symbols_of_file_io): Define stdin, stdout, and
-	stderr as octve_file objects, not just integers.
-	(Ffopen, Fpopen): Return octave_file objects, not integer file ids.
-	* syscalls.cc (Fpipe): Likewise.
-	* oct-stream.h, oct-stream.cc (octave_stream_list::insert):
-	Return octave_file object, not integer file id.
-
-	* ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-ch-mat.cc,
-	ov-complex.cc, ov-cx-mat.cc, ov-file.cc, ov-list.cc, ov-range.cc,
-	ov-re-mat.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov.cc
-	(print_name_tag, print_raw): New functions.
-
-	* help.cc (Ftype): Don't cast symbol definition to tree_constant *.
-
-	* variables.cc (link_to_global_variable): Don't try to define
-	symbol with tree_constant objects.
-	(bind_ans): Call symbol_record::define directly and then
-	octave_value::print_with_name instead of creating a temporary
-	assignment expression.
-
-	* pt-pr-code.cc (tree_print_code::indent): Don't use ostream::form.
-
-	* pt-exp-base.h, pt-exp.h, pt-exp.cc (oper): Return string, not
-	char *.  Change all where necessary.
-
-Mon Apr 28 16:33:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value binary_op enum): Add lshift and rshift.
-	(octave_value assign_op enum): Add lshift_eq and rshift_eq.
-	* ov.cc (assign_op_as_string, binary_op_as_string): Include them.
-	* parse.y (LSHIFT_EQ RSHIFT_EQ LSHIFT RSHIFT): New tokens.
-	Add them to the precedence list.
-	(simple_expr): Add new operators.
-	(make_assign_op, make_binary_op): Handle new operators.
-	* lex.l: Recognize new operators.
-
-	* lex.l: Recognize them.
-
-Sun Apr 27 20:17:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-misc.cc (Vsilent_functions, silent_functions):
-	Move here from oct-usr-fcn.cc.
-	(symbols_of_pt_misc): New function.  DEFVAR silent_functions.
-	(tree_statement_list::eval): Handle Vsilent_functions here instead
-	of in octave_user_function::eval.
-	(tree_statement::eval): New functions.
-	(tree_statement_list::eval): Use them.
-	Change print flag arg to silent flag.  Change all callers.
-	* variables.cc (install_builtin_variables): Call symbols_of_pt_misc.
-	* toplev.cc (parse_and_execute): Delete print arg.  Change all callers.
-	(eval_string): Change print flag arg to silent flag.  Change callers.
-
-	* dynamic-ld.h, dynamic-ld.cc: Rewrite to use singleton class.
-	* variables.cc (load_fcn_from_file): Use new dynamic linking class.
-
-	* dynamic-ld.h (Octave_builtin_fcn): Delete typedef.
-	* dynamic-ld.cc: Simplify via the magic of function pointers.
-
-	* pt-fcn.h pt-fcn.cc pt-fvc.h pt-fvc.cc pt-fvc-base.h pt-fvc-base.cc:
-	Delete obsolete files.
-	* Makefile.in: Remove them from various lists.
-
-	* pt-walk.h (visit_octave_user_function): Rename from visit_function.
-	(visit_builtin): Delete.
-	* pt-pr-code.h, pt-pr-code.cc (visit_octave_user_function):
-	Rename from visit_function.
-	(visit_octave_user_function_header): Rename from visit_function_header.
-	(visit_octave_user_function_trailer): Rename from
-	visit_function_trailer.
-
-	* ov.h, ov.cc (eval): New functions.
-
-	* dassl.cc, fsolve.cc, lsode.cc, npsol.cc, qpsol.cc, quad.cc:
-	Declare user-defined functions as a pointer to an octave_symbol
-	object, not as a pointer to a tree_fvc object.
-
-	* symtab.h, symtab.cc: Use new octave_symbol class.
-	* variables.cc (install_builtin_function, install_builtin_mapper,
-	install_builtin_variable, install_builtin_variable_as_function):
-	Make work with new octave_symbol class and symbol table structure.
-
-	* variables.h: Delete declaration of builtin_function struct.
-	* defun-dld.h (DEFUN_DLD): Simplify.
-	* defun-int.h (DEFINE_FUN_STRUCT): Delete.
-	(DEFINE_FUN_STRUCT_FUN): Rewrite to not use static builtin_function
-	object.
-
-	* mappers.h: Delete declaration of builtin_mapper_function struct.
-	* mappers.cc: Declare wrapper functions static.
-	* defun.h (DEFUN_MAPPER): Simplify.
-
-	* oct-sym.h: New file.  Declare base class for Octave symbols.
-	* ov.h: Derive octave_value class from octave_symbol.
-	* oct-fcn.h, oct-fcn.cc: New files to declare and define
-	base class for functions.
-	* oct-builtin.h, oct-builtin.cc: New files to declare and define
-	class for built-in functions.
-	* oct-mapper.h, oct-mapper.cc: New files to declare and define
-	class for mapper functions.
-	* oct-usr-fcn.h, oct-usr-fcn.cc: New files to declare and define
-	base class for user-defined functions.
-	* Makefile.in: Add new files to appropriate lists.
-
-	* pt-id.h, pt-id.cc: Move tree_identifier class here.
-	* pt-fvc.h, pt-fvc.cc: From here.
-
-	* pt-indir.h, pt-indir.cc: Move tree_indirect_ref class here.
-	* pt-fvc.h, pt-fvc.cc: From here.
-
-Thu Apr 24 03:58:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (magic_colon): New nonterminal.
-	(arg_list): Simplify using magic_colon.
-
-	* lex.h (class lexical_feedback): Delete maybe_screwed field.
-	New field, parsed_function name.
-	* lex.l (lexical_feedback::init): Initialize it.
-	(handle_identifier): Don't return SCREW.  Handle switching
-	symbol table context properly for `function f ()' vs `function x ='.
-	(is_keyword): If looking at function keyword, don't set current
-	symbol table to point to the local table.
-	* parse.y (recover_from_parsing_function): New function.
-	(finish_function_def): Use identifier, not token.
-	Simplify parsing of functions.
-
-	* ov-list.h, ov-list.cc: New files to implement generic list type.
-	* ov.cc (list_indent): New global variable.
-	(increment_list_indent, decrement_list_indent): New functions.
-	(install_types): Register octave_list type.
-	* ov-base.cc (octave_base_value::is_list): New function.
-
-	* oct-sym.h: New file.
-	* ov.h (class octave_value): Derive from octave_symbol class.
-
-	* pt-const.h, pt-const.cc: Delete lots of old useless cruft.
-
-	* pt-exp.h, pt-exp.cc (tree_binary_expression): Use type codes for
-	operators from octave_value instead of repeating them here.
-
-	* pt-fvc-base.cc (tree_fvc::increment, tree_fvc::decrement): Delete.
-	* pt-fvc.cc (tree_identifier::increment): Get reference to value
-	and increment that instead of using virutal tree_fvc::increment
-	function.
-
-	* lex.l: Handle +=, -=, *=, /=, .+=, .-=, .*=, ./=, &=, and |= ops.
-	* parse.y (make_assign_op): Rename from make_simple_assignment and
-	handle different op types.
-	(simple_expr1): Do new ops.
-	* pt-misc.cc (initialize_undefined_elements): Pass op to assign.
-	* pt-cmd.cc (tree_for_command::do_for_command_once): Likewise.
-	* pt-fvc.cc (tree_identifier::assign): Pass op.
-	* pt-exp.cc (tree_simple_assignment_expression): Handle new ops.
-	* variables.cc (octave_variable_reference::assign): Likewise.
-	* ov.h (class octave_value): Likewise.
-	* ov.cc (octave_value::assign_op_as_string): New function.
-	(octave_value::assign, octave_value::convert_and_assign,
-	octave_value::try_assignment_with_conversion,
-	octave_value::try_assignment): Pass op.
-	* pt-pr-code.cc (tree_print_code::visit_simple_assignment_expression):
-	Use expr.oper() instead of printing "=".
-	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-m-m.cc,
-	op-m-s.cc, op-str-str.cc: Pass op to INSTALL_ASSIGNOP.
-	* ops.h (INSTALL_ASSIGNOP): Pass op.
-	* ov-typeinfo.cc (do_register_assign_op): Include op type in table.
-	(do_lookup_assign_op): Use op in lookup.
-
-	* ops.h (INSTALL_UNOP): Delete.
-
-	* input.cc (generate_struct_completions, looks_like_struct):
-	Disable, since they don't work now anyway.
-
-	* help.cc (Ftype): Work with octave_value instead of a pointer to
-	tree_constant.
-	* symtab.cc (symbol_record_info::symbol_record_info): Likewise.
-
-Tue Apr 22 22:59:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffprintf): If first arg is a string, assume FID = 1.
-
-Fri Apr 18 20:16:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.h, oct-obj.cc: Implement octave_value_list with
-	Array<octave_value> as a data member, not as a class derived from
-	Array<octave_value>.
-	(octave_value_list::length, octave_value_list::resize,
-	octave_value_list::prepend, octave_value_list::append,
-	octave_value_list::reverse): New functions.
-
-	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
-	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
-	op-s-cm.cc, op-s-m.cc: Use new bool ops from liboctave instead of
-	the macros defined in ops.h.
-
-Thu Apr 17 13:12:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (ABORT_PARSE): Handle forced_interactive the same as
-	interactive.
-
-Mon Apr 14 01:46:50 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (octave_read): Don't forget to free input buffer if it
-	exists and has zero length.
-	(gnu_readline): Free buf if fgets returns 0.
-
-Wed Apr  9 00:03:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time.cc (mk_tm_map): Only set zone field if HAVE_TM_ZONE or
-	HAVE_TZNAME are defined.
-
-Tue Apr  8 12:39:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time.cc (extract_tm): Set tm.tm_zone if HAVE_TM_ZONE is defined,
-	not if HAVE_TMZONE is defined.
-
-	* Makefile.in (%.oct : %.o): Use $(SH_LD), not $(CXX).
-
-Wed Apr  2 21:32:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc, dynamic-ld.h (init_dynamic_linker): Delete
-	function and declaration.
-	* octave.cc (main): Don't call it.
-
-Mon Mar 31 00:37:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-base-exp.h (tree_expression::eval): Give arg a default value.
-	* pt-const.h (tree_constant::eval): Likewise.
-	* pt-exp.h (tree_prefix_expression::eval, tree_colon_expression::eval,
-	tree_postfix_expression::eval, tree_unary_expression::eval,
-	tree_binary_expression::eval, tree_boolean_expression::eval,
-	tree_simple_assignment_expression::eval): Likewise.
-	* pt-fcn.h (tree_function::eval): Likewise.
-	* pt-fvc.h (tree_identifier::eval, tree_indirect_ref::eval,
-	tree_builtin::eval): Likewise.
-	* pt-mat.h (tree_matrix::eval): Likewise.
-	* pt-misc.h (tree_statement_list::eval): Likewise.
-	* pt-mvr-base.h (tree_multi_val_ret::eval): Likewise.
-	* pt-mvr.h (tree_oct_obj::eval, tree_index_expression::eval,
-	tree_multi_assignment_expression::eval): Likewise.
-	* dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, parse.y,
-	pt-cmd.cc, pt-exp-base.cc, pt-exp.cc, pt-fvc.cc, pt-mat.cc,
-	pt-misc.cc, pt-mvr.cc, pt-plot.cc, quad.cc, toplev.cc, variables.cc:
-	Change callers of eval() to use bool instead of int and to make
-	use of default argument value.
-
-	* toplev.h, toplev.cc (parse_and_execute, eval_string): Flag args
-	are now bool instead of int.
-
-	* symtab.h, symtab.cc: Use bool instead of int in more places.
-	* variables.h, variables.cc: Likewise.
-	* lex.h, lex.l: Likewise.
-	* parse.y: Likewise.
-	* help.cc, input.cc, lex.l, load-save.cc, parse.y, pt-fcn.cc:
-	Change callers of symbol_table::lookup to use bool instead of int,
-	and to make use of default arguments.
-
-Fri Mar 28 15:33:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (Vwarn_comma_in_declaration): Delete.
-	(symbols_of_parse): Delete DEFVAR for warn_comma_in_declaration.
-	(decl1): Don't allow commas in declarations.
-
-	* lsode.cc (struct LSODE_OPTIONS): Handle integer options.
-	(print_lsode_option_list, set_lsode_option, show_lsode_option): Ditto.
-	(lsode_option_table): Add element for step limit.
-	(lsode_user_jacobian): New function.
-	(Flsode): Allow function name arg to be a 2-element string array
-	specifying the function and jacobian function.
-
-	* variables.cc (get_global_value, set_global_value): New functions.
-
-Wed Mar 26 17:08:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	Implement static variable declaration:
-
-	* lex.l (is_keyword): Handle static.
-	* octave.gperf: Likewise.
-	* parse.y (Vwarn_comma_in_declaration): Rename from
-	Vwarn_comma_in_global_decl.
-	Handle new static command.
-	* pt-cmd.h, pt-cmd.cc (class tree_decl_command): New base class
-	for static and global declaration commands.
-	(class tree_global_command): Derive from tree_decl_command.
-	(class tree_static_command): New class, derived from tree_decl_command.
-	* pt-fvc.cc, pt-fvc.h (tree_identifier::mark_as_static): New function.
-	* pt-misc.h, pt-misc.h (class tree_decl_elt): Rename from tree_global.
-	(class tree_decl_init_list): Rename from tree_global_init_list.
-	* pt-pr-code.cc, pt-pr-code.h (tree_print_code::visit_decl_command):
-	Rename from visit_global_command.
-	(tree_print_code::visit_decl_elt): Rename from visit_global.
-	(tree_print_code::visit_decl_init_list): Rename from
-	visit_global_init_list.
-	* pt-walk.h (tree_walker::visit_decl_command): Rename from
-	visit_global_command.
-	(tree_walker::visit_decl_elt): Rename from visit_tree_global.
-	(tree_walker::visit_decl_init_list): Rename from
-	visit_global_init_list.
-	* variables.cc (link_to_global_variable): Trying to make a static
-	variable global is an error.
-	* SLList-misc.cc: Instantiate lists of pointers to tree_decl_elt
-	objects, not tree_global objects.
-	* symtab.h, symtab.cc (symbol_record::tagged_static): New field.
-	(symbol_record::mark_as_static, symbol_record::is_static):
-	New functions.
-	* symtab.cc (symbol_record::init_state): Initialize tagged_static.
-	(symbol_record::clear): Don't clear static variables.
-	* symtab.cc (push_context): Don't do anything for static variables.
-
-Tue Mar 25 17:17:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h: New files.
-
-	* defaults.cc (symbols_of_defaults): DEFCONST OCTAVE_HOME.
-
-	* toplev.cc (octave_config_info): Delete use of CXXLIBS.
-	* oct-conf.h.in: Ditto.
-
-	* octave.cc (maximum_braindamage): Don't bind prefer_zero_one_indexing.
-	* ov.h: Don't declare Vprefer_zero_one_indexing.
-	* ov.cc: Don't define Vprefer_zero_one_indexing.
-	(prefer_zero_one_indexing): Delete.
-	(symbols_of_value): Delete DEFVAR for prefer_zero_one_indexing.
-
-	* ov.h, ov.cc, ov-base.h, ov-base.cc: Add constructors and
-	extractors for bool and boolMatrix types.
-
-	* ov.cc (install_types): Register octave_bool and
-	octave_bool_matrix types.
-
-	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
-	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
-	op-s-cm.cc, op-s-m.cc, op-s-s.cc, ov-re-mat.cc:
-	Return boolMatrix instead of Matrix object.
-	* ops.h (BOOL_OP3, MX_MX_BOOL_OP): Likewise.
-
-	* op-b-b.h, op-b-b.cc, op-bm-bm.h, op-bm-bm.cc: New files.
-	* Makefile.in: Add them to the lists.
-	* ops.cc: Include header files here.
-	(install_ops): Call install_b_b_ops() and install_bm_bm_ops() here.
-
-	* variables.cc (symbols_of_variables): Don't rely on default
-	conversion from int to double for value returned from
-	default_history_size().
-
-	* pr-output.cc: Include cstdio.
-
-	* parse.y (param_list_end): Fix typo in last change.
-
-	* quad.cc (quad): Cast integer return values to double.
-	* npsol.cc (show_npsol_option): Likewise.
-	* qpsol.cc (show_qpsol_option): Likewise.
-	* file-io.cc (Fsprintf, Ffwrite): Likewise.
-
-Mon Mar 24 13:11:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-typeinfo.cc (typeinfo): If invoked with an argument, return
-	the type of the argument as a string.  Fix doc string.
-
-Thu Mar 20 14:47:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-oct-links (links_dir): Don't use -h option for grep.  It's
-	not needed since we are working on one file at a time anyway.
-
-Mon Mar 17 10:53:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (handle_identifier): When handling indirect_ref, set
-	lexer_flags.quote_is_transpose to 1 so that a.b' to work as
-	expected.
-
-	* parse.y (param_list_beg, param_list_end): New nonterminals.
-	(param_list, param_list1): Use them.
-
-Wed Mar 12 16:57:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): New target.
-
-Mon Mar 10 22:38:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): Delete .oct files too.
-
-	* toplev.cc (Vdefault_eval_print_flag): New static variable.
-	(eval_string): New arg, print.
-	(Feval): Pass Vdefault_eval_print_flag to eval_string.
-	(default_eval_print_flag): New function.
-	(symbols_of_toplev): New function.
-
-	* variables.cc (install_builtin_variables): Call it.
-
-	* pt-exp.h, pt-exp.cc (class tree_boolean_expression): Rename enum
-	fields `and' and `or' to `bool_and' and `bool_or'.
-	(tree_unary_expression): Rename enum field `not' to `unot'.
-	(class tree_binary_expression): Rename enum fields `and' and `or'
-	to `el_and' and `el_or'.
-	* parse.y: Change all uses.
-
-	* time.cc (extract_tm): Truncate field values instead of rounding.
-	(gmtime, localtime): Likewise, for timeval.
-
-	* ov.h (class octave_value): Delete unused variable freeptr.
-
-	* mappers.cc: Delete functions that are already in
-	liboctave/lo-mappers.cc.
-
-	* oct-strstrm.cc (octave_base_strstream::tell): Use const_cast,
-	not static_cast.
-
-	* help.cc (help_from_list): Add missing const qualifiers.
-	* help.h (struct help_list): Likewise.
-	* lex.l (match_any, plot_style_token): Likewise.
-	* load-save.cc (extract_keyword, ascii_save_type): Likewise.
-	* oct-hist.cc (mk_tmp_hist_file): Likewise.
-	* octave.cc (execute_startup_files): Likewise.
-	* octave.gperf (struct octave_kw): Likewise.
-	* pr-output.cc (pr_any_float): Likewise.
-	* pt-mvr.cc (tree_index_expression::eval_error): Likewise.
-	* pt-exp-base.h, pt-exp.h, pt-exp.cc: Likewise.
-	* parse.y: Likewise.
-
-Sun Mar  9 03:46:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-exp-base.h (tree_expression): Delete extra comma at end of list.
-
-	* dirfns.cc error.cc file-io.cc fsolve.cc input.cc load-save.cc
-	npsol.cc pt-fcn.cc qpsol.cc quad.cc syscalls.cc toplev.cc
-	variables.cc: Eliminate embedded newlines in string constants.
-
-	* Map.cc, data.cc, dirfns.cc, dynamic-ld.cc, file-io.cc,
-	fsolve.cc, getgrent.cc, getpwent.cc, getrusage.cc, help.cc,
-	input.cc, load-save.cc, mappers.cc, minmax.cc, npsol.cc,
-	oct-fstrm.cc, oct-procbuf.h, oct-stdstrm.cc, oct-stdstrm.h,
-	oct-stream.cc, oct-stream.h, oct-strstrm.cc, octave.cc,
-	ov-base.h, ov-range.cc, ov-typeinfo.cc, ov.cc, pr-output.cc,
-	pt-cmd.cc, pt-exp.cc, pt-fcn.cc, pt-fvc.cc, pt-mat.cc,
-	pt-misc.cc, pt-plot.cc, qpsol.cc, quad.cc, sort.cc, strfns.cc,
-	symtab.cc, syscalls.cc, sysdep.cc, time.cc, toplev.cc,
-	unwind-prot.cc, unwind-prot.h, variables.cc, xpow.cc:
-	Use `static_cast<T> (val)' instead of old C-style `(T) val' casts.
-
-Sat Mar  8 02:35:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_ascii_data, save_three_d): Where appropriate,
-	use bool instead of int.
-	(save_binary_data, save_mat_binary_data, save_ascii_data):
-	Print warning instead of error for wrong type arg.
-
-	* gripes.cc (gripe_wrong_type_arg): New arg, is_error.
-
-	* pt-plot.cc (save_in_tmp_file): Call save_ascii_data with bool
-	arg, not int.
-
-Fri Mar  7 00:56:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dassl.cc (show_dassl_option): For values that are determined
-	automatically, return a string instead of a magic value (-1.0).
-	* fsolve.cc (show_fsolve_option): Likewise.
-	* lsode.cc (show_lsode_option): Likewise.
-	* npsol.cc (show_npsol_option): Likewise.
-	* qpsol.cc (show_qpsol_option): Likewise.
-
-	* variables.cc (extract_function): New function.
-	* dassl.cc (Fdassl): Use it instead of is_valid_function.
-	* fsolve.cc (Ffsolve): Likewise.
-	* npsol.cc (Fnpsol): Likewise.
-	* qpsol.cc (Fqpsol): Likewise.
-	* quad.cc (Fquad): Likewise.
-
-Thu Mar  6 20:07:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (my_friendly_exit, octave_new_handler,
-	sigfpe_handler, sigpipe_handler): Don't all error() or warning().
-
-	* pager.cc (pager_death_handler): Don't try to clear pager, just
-	print message to cerr.
-	(do_sync): If the status of the pager is bad or it looks like it
-	is dead, restore the interrupt handler.
-
-	* load-save.cc (extract_keyword (istream&, char*, int&)):
-	Move declaration of buf inside loop, to avoid deleting its guts
-	and then trying to reuse it.
-	(extract_keyword (istream&, char*)): Likewise.
-
-Tue Mar  4 20:36:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-fcn.cc (tree_function::eval): Protect function from being
-	redefined while it is being evaluated.
-	(unprotect_function): New function, for use with unwind_protect stuff.
-	* pt-fcn.h (tree_function::symtab_entry): New data member.
-	(tree_function::init): Initialize it to 0.
-	(tree_function::stash_symtab_ptr): New function.
-	* parse.y (frob_function_def): Stash pointer to function's
-	symbol_record in the function definition.
-
-	* symtab.cc (symbol_record::read_only_error): New argument,
-	action.  Change all callers.
-	(symbol_record::rename): Don't allow read-only symbols to be renamed.
-
-	* variables.cc (Fexist): Don't let files with `.' in their names
-	confuse us.
-
-	* symtab.cc (valid_identifier (const string&)): New function.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Sat Mar  1 01:34:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-oct-links): New target.  Make links in build
-	directory too, so that the tests will work.
-
-	* quad.cc: If quad is defined, undefine it.
-
-	* octave.cc: If WITH_KPATHSEARCH is defined, don't define
-	program_invocation_name or program_invocation_short_name.
-
-	* strftime.c: Update to current version from FSF.
-	* time.cc (Fstrftime): Call strftime with buf = 0 to get buffer
-	size, then call again to actually format the time struct.
-
-Fri Feb 28 01:49:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	Implement switch statement:
-
-	* parse.y (Vwarn_variable_switch_label): New static variable.
-	(warn_variable_switch_label): New function.
-	(symbols_of_parse): Provide warn_variable_switch_label as Octave
-	variable here.
-	(make_switch_case, finish_switch_command): New functions.
-	(maybe_warn_variable_switch_label): New function.
-	(end_error): Handle endswitch.
-	(switch_command, case_list, case_list1, switch_case, default_case):
-	New nonterminals.
-	(command): Add switch_command here.
-	* lex.l	(is_keyword): Handle switch, case, otherwise, and endswitch.
-	* octave_gperf: Recognize switch, case, otherwise, and endswitch.
-	* token.h (end_tok_type): New item, switch_end.
-	* pt-cmd.cc (tree_switch_command): New class.
-	* pt-misc.cc (tree_switch_case, tree_switch_case_list): New classes.
-	* pt-pr-code.cc (tree_print_code::visit_switch_case,
-	tree_print_code::visit_switch_case_list,
-	tree_print_code::visit_switch_command): New functions.
- 	* pt-walk.h (tree_walker::visit_switch_case,
-	tree_walker::visit_switch_case_list,
-	tree_walker::visit_switch_command): New pure virtual declarations.
-	Implement new switch statement.
-	* SLList-misc.cc: Instantiate lists of pointers to
-	tree_switch_case objects too.
-
-	* lex.h, lex.l, parse.y: Delete all references to lexer_flags::iffing.
-
-	* syswait.h: Include sys/wait.h on NeXT systems, but don't use the
-	WIFEXTED, WEXITSTATUS, and WIFSIGNALLED macros defined there.
-	Also define waitpid in terms of wait4.  From Rex A. Dieter
-	<rdieter@math.unl.edu>.
-
-Wed Feb 26 16:43:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_scanf): Don't report an
-	error if a conversion fails or we reach EOF.
-
-Tue Feb 25 22:21:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* time.cc (strftime): increase initial buffer size.
-
-Mon Feb 24 17:49:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-fvc.cc (tree_builtin::eval): Enable checking for max number
-	of arguments.
-
-	* error.cc (handle_message): Don't fail if args is empty.
-
-Sun Feb 23 22:42:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.h (lexical_feedback::looking_at_return_list): New field.
-	(lexical_feedback::looking_at_parameter_list): Ditto.
-	* lex.l (lexical_feedback::init): Initialize them.
-	(handle_identifier): Use them.
-	* parse.y: Likewise.
-
-Fri Feb 21 15:35:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: Require flex 2.5 or later (we really want 2.5.4 or later,
-	but there seems to be no good way to check the patchlevel).
-
-	* oct-stream.cc (octave_base_stream::oscanf): Instead of returning
-	an error, just quit processing after a conversion fails.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (octave_ignore_interrupts,
-	octave_catch_interrupts, octave_set_interrupt_handler):
-	Return old value, not pointer to static data.  Fix all uses.
-
-	* sighandlers.h (octave_interrupt_handler): Move declaration here.
-	* sighandlers.cc: From here.
-
-	* toplev.cc: Undo previous change.
-
-	* lex.l (handle_identifier): Allow commands like ls, save, etc. to
-	also be used as simple variable names.  Also make it possible to
-	use the normal function call syntax to invoke them.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (%.oct:%.o, %.oct:pic/%.o): Use $(SH_LDFLAGS) here.
-
-	* Version 2.0.3 released.
-
-Tue Feb 18 00:27:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (run_command_and_return_output):
-	Block SIGCHLD while running subprocess.
-	(cleanup_iprocstream): Unblock it here.
-
-	* sighandlers.h (BLOCK_SIGNAL, BLOCK_CHILD, UNBLOCK_CHILD): Move here.
-	* sighandlers.cc: From here.
-
-	* toplev.cc (system): Shift then mask exit status.
-
-	* help.cc (try_info): Shift first, then mask exit status.
-
-	* toplev.cc (octave_config_info): Handle option argument.
-
-Fri Feb 14 16:23:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_scanf): Don't forget to
-	check to see if the result matrix needs resizing!
-
-	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
-
-Thu Feb 13 03:02:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (stamp-prereq): Depend on stamp-picdir.
-	(all): Don't depend on stamp-prereq or stamp-picdir.
-	(stamp-tinst, stamp-interp, libtinst.a, liboctinterp.a):
-	Do depend on stamp-prereq.
-	(stamp-picdir): Silence noise about making pic.
-	(stamp-tinst, stamp-interp): Use $(SH_LD) $(SH_LDFLAGS) instead of
-	$(CXX) -shared.
-
-	* oct-conf.h.in: Reinstate RLD_FLAG.
-	* toplev.cc (octave_config_info): Likewise.
-
-	* data.cc (map_d_m, map_m_d, map_m_m): Rename from map.
-	(Fatan2): Use new function names.
-
-	* pt-fvc.cc (apply_mapper_fcn): Use member function map() instead
-	of friend function.
-
-	* gripes.cc (gripe_wrong_type_arg (const char*, const string&)):
-	New function.
-
-Wed Feb 12 17:27:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* syscalls.cc (symbols_of_syscalls): Add O_ASYNC and O_SYNC.
-
-Mon Feb 10 01:22:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Freaddir, Fmkdir, Frmdir, Frename):
-	Also return status and error message.
-
-	* syscalls.cc (Fdup2, Fexec, Ffork, Ffcntl, Funlink, Fmkfifo,
-	Fpipe, Fwaitpid): Also return error message.
-
-Sat Feb  8 17:16:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-exp.cc (tree_simple_assignment_expression::eval): Return
-	value of RHS, but (if printing) print complete value of LHS.
-
-	* pr-output.cc (octave_print_internal): Print a new line for empty
-	string matrices.
-
-Wed Feb  5 14:30:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (scanf_format_list::process_conversion): Accept
-	but don't actually use h, l, and L modifiers.  Always insert l
-	modifier for floating point conversions.
-
-Fri Jan 31 13:55:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.cc (do_sync): Always flush the cout stream after writing.
-
-Wed Jan 29 08:25:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc (exec_path): Don't include bin_dir in std_path.
-
-	* pager.cc (do_sync): Flush the cout stream after writing if
-	running in interactive or forced_interactive mode.
-
-	* mk-oct-links: Rename from mk-oct-links.in.
-	Don't use symbolic links.
-	* Makefile.in: Distribute mk-oct-links, not mk-oct-links.in
-	(mk-oct-links): Delete target.
-	(install-oct, bin-dist): Don't depend on mk-oct-links.
-	Run $(srcdir)/mk-oct-links, not ./mk-oct-links.
-
-	* qr.cc (qr): Doc fix.
-
-Tue Jan 28 10:48:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Create a relative symbolic link.
-	(install-bin): Create a relative symbolic link.
-
-Mon Jan 27 12:12:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-	* Makefile.in (CXXFLAGS_NO_PT_FLAGS): Rename from XALL_CXXFLAGS.
-	Substitute bsd_gcc_kluge_targets_frag.
-
-	* sysdep.cc (Fsleep): New function.
-	(Fusleep): New function.
-
-	* toplev.cc (octave_config_info): Don't include RLD_FLAG.
-	* oct-conf.h.in: Don't define RLD_FLAG
-
-Sun Jan 26 19:41:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (sigchld_handler): Block SIGCHLD while
-	sigchld_hander is running.
-
-Sat Jan 25 22:36:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (bin-dist): Update for 2.x.
-
-Fri Jan 24 10:05:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-oct-links.in: New arg, -p, to just print list of files to link.
-
-	* lex.l (handle_number): Convert `D' or `d' exponents to `e'
-	before scanning.
-
-Thu Jan 23 10:00:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_no_op_command):
-	New function.
-	* pt-cmd.h, pt-cmd.cc (tree_no_op_command): New class.
-	* parse.y (make_break_command, make_continue_command,
-	make_return_command): Where they don't really make sense, turn
-	these commands into no-ops.  Accept return and break if reading a
-	script file.
-	* toplev.cc (parse_and_execute): Handle return and break in script
-	files.  Quit executing commands if an error occurs when reading a
-	script file.  Set global_command to 0 after deleting it.
-	(main_loop): If not interactive or forced_interactive, handle
-	break and return, and quit executing commands if an error occurs.
-	Set global_command to 0 after deleting it.
-	* error.cc (Ferror): Doc fix.
-	* pt-walk.h (tree_walker): Add declaration for visit_no_op_command.
-
-Wed Jan 22 20:54:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (gnu_readline): If not using readline, flush
-	rl_outstream after printing prompt.
-	(octave_gets): Also call flush_octave_stdout() if
-	forced_interactive, not just if interactive.
-	(do_input_echo): If forced_interactive, only echo prompt and
-	command line if also reading a script file.
-
-Tue Jan 21 23:02:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* SLList.h: Include "BaseSLList.h", not <BaseSLList.h>.
-
-Mon Jan 20 11:11:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (token_stack): Don't declare static.
-	* pt-plot.cc (tmp_files): Likewise.
-	* toplev.cc (octave_atexit_functions): Likewise.
-	* unwind-prot.cc (unwind_protect_list): Likewise.
-
-	* ops.h (MX_MX_BOOL_OP): Correctly handle case of one or both
-	arguments being empty.  Change all callers.
-
-	* oct-stream.cc (printf_value_cache::looking_at_string):
-	Handle empty strings correctly now that they are 0x0.
-
-	* file-io.cc: Don't include "syswait.h" here.
-
-Sun Jan 19 22:38:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.h (octave_base_stream::seek): Declare offset arg as
-	streamoff, not streampos.
-	(octave_stream::seek): Likewise.
-	* oct-strstrm.h (octave_base_strstream::seek): Likewise.
-	* oct-stdstrm.h (octave_base_stdiostream::seek): Likewise.
-	* oct-iostrm.h (octave_base_iostream::seek): Likewise.
-	* oct-fstrm.h (octave_fstream::seek): Likewise.
-
-Fri Jan 17 18:13:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffflush): Handle stdout as a special case.
-
-	* oct-stream.cc (octave_stream_list::do_get_file_number):
-	Do the work for octave_stream::get_file_number.
-	(octave_stream_list::get_file_number): Convert to static function.
-
-Wed Jan  8 11:42:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* log.cc (sqrtm): For complex arg case, compute sqrt, not log.
-
-Tue Jan  7 00:16:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Mon Jan  6 00:00:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mat.cc (tm_row_const_rep::all_mt): New variable.
-	(tm_row_const::all_empty): New function.
-	(tm_row_const::tm_row_const_rep::init): Set all_mt here.
-	(tm_const::all_mt): New variable.
-	(tm_const::all_emtpy): New function.
-	(tm_const::init): Set all_mt here.
-	(tree_matrix::eval): Return an empty matrix if the list contains
-	only empty elements.  If it contains only empty strings, return an
-	empty string.
-
-Sun Jan  5 12:50:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ops.h (SC_MX_BOOL_OP, MX_SC_BOOL_OP): New arg, empty_result.
-	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
-	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
-	op-s-cm.cc, op-s-m.cc, op-str-str.cc: Change all uses of
-	SC_MX_BOOL_OP and MX_SC_BOOL_OP macros.  Return correct results
-	for empty matrix cases.
-
-	* pt-fcn.cc (tree_function::eval): If Vdefine_all_return_values is
-	true, initialize return values before evaluating function, for
-	compatibility with Matlab.
-
-	* oct-stream.cc (get_size): Correctly set size when arg is scalar.
-
-Thu Jan  2 12:40:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-oct): Quote $(OCT_FILES) in for loop to
-	avoid syntax error from ksh.
-
-	* pr-output.cc (octave_print_internal): Avoid unused parameter
-	warning from gcc.
-
-Thu Dec 19 12:13:42 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_base_stream::do_scanf):
-	Don't treat %l{e,f,g} differently from %{e,f,g}.
-	(octave_base_stream::do_oscanf): Likewise.
-
-	* sighandlers.cc (sigchld_handler): Fix typos.
-
-Wed Dec 18 20:17:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffgetl, Ffgets): Also return number of characters	read.
-
-	* ov-range.cc (octave_range::not): New function.
-	* ov-range.h (octave_range::uminus): New function.
-
-	* BaseSLList.cc: Include error.h.
-	(BaseSLList::error): Call ::error() to process error message.
-
-Fri Dec 13 02:38:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.cc (octave_value::convert_and_assign): Preserve lhs value if
-	assignment fails.
-
-Wed Dec 11 12:33:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (GPLOT_CMD_END): Don't put semicolons at the end of
-	each plot command; it causes trouble with gnuplot 3.5.
-
-Tue Dec 10 00:31:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-	* pr-output.cc (set_format_style): Don't try to access argv unless
-	argc > 1.
-
-	* SLList-expr.cc SLList-misc.cc SLList-plot.cc SLList-str.cc
-	SLList-tc.cc SLList-tm.cc SLList.h SLStack-i.cc SLStack-pc.cc
-	SLStack-str.cc SLStack-sym.cc SLStack-tok.cc SLStack-ue.cc
-	SLStack-ui.cc, pt-mat.cc: Include Stack.h, Stack.cc, SLStack.cc,
-	and SLList.cc as necessary.
-
-	* Stack.cc, SLStack.cc, SLList.cc: New files.
-	* Makefile.in (SOURCES): Add them to the list.
-
-Mon Dec  9 12:03:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-bin): Use $(EXE) suffix so install will
-	find the right file on cygwin32 systems.
-
-	* ov.h: Declare proper form of do_binary_op as friend to
-	octave_value class.
-
-Sat Dec  7 22:00:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (do_printf_conv, do_scanf_conv,
-	do_oscanf_num_conv, do_oscanf_str_conv): Convert to real
-	functions instead of CPP macros, using templates where necessary.
-	(do_oscanf_num_conv, do_oscanf_str_conv): Correctly handle
-	discarded values.
-
-Fri Dec  6 00:20:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.94.
-
-	* Map-*.cc, SLList-*.cc, SLStack-*.cc: Include config.h.
-
-	* ov.h: Don't include SLList.h.
-
-	* SLStack.cc: Delete.  Move everything to SLStack.h.
-
-	* BaseSLList.h, BaseSLList.cc: New files.  Split out the
-	non-template base class parts of SLList.
-
-	* Makefile.in (TEMPLATE_SRC): Delete.  Move files to SOURCES.
-	* Map.h, Map.cc: Add #pragma interface/implementation.
-	* SLStack.h, SLStack.cc: Add #pragma interface/implementation.
-
-	* SLList.h, SLList.cc: New files, from libg++, but with #pragma
-	interface/implementation.
-	* Makefile.in (SOURCES): Add SLList.cc.
-	(INCLUDES): Add SLList.h.
-
-Thu Dec  5 18:36:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc: Don't include sun-utils.h.
-
-Tue Dec  3 23:47:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* op-str-str.cc (eq, ne): Handle operations with scalars.
-
-Thu Nov 21 12:30:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-str-mat.h (octave_char_matrix_str): Provide transpose and
-	hermitian operators.
-	* ov-ch-mat.h (octave_char_matrix): Likewise.
-
-Wed Nov 20 00:35:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.h (struct octave_interrupt_handler): Provide
-	forward declaration here.
-	* sighandlers.cc (octave_interrupt_handler): New struct.
-	(octave_catch_interrupts): Rename from catch_interrupts.
-	(octave_ignore_interrupts, octave_set_interrupt_handler):
-	New functions.
-	* help.cc, oct-hist.cc, pager.cc, toplev.cc: Use new functions for
-	handling interrupts so that we can hide the details of whether or
-	not we have to deal with SIGBREAK.
-
-	* pt-plot.cc [! HAVE_POSIX_SIGNALS] (open_plot_stream):
-	Simply ignore and restore the interrupt handler here.
-
-	* sighandlers.cc (MAYBE_REINSTALL_SIGHANDLER): New macro.  Use it
-	instead of always checking MUST_REINSTALL_SIGHANDLERS everywhere.
-	(sigchld_handler): If octave_child_list is empty, wait for any
-	child, but don't hang, and don't collect status info.
-	[__EMX__] (sigchld_handler): Save and restore handlers for SIGINT,
-	SIGBREAK, and SIGCHLD.  Ignore them while waiting on children.
-	(install_signal_handlers): If SIGBREAK exists, handle it like SIGINT.
-
-	* toplev.cc [USE_READLINE] (clean_up_and_exit):
-	Call rl_deprep_terminal() to restore terminal settings.
-
-	* sysdep.cc [__EMX__ && OS2] (Fextproc): New command.
-	[__EMX__ && OS2] (FEXTPROC): Alias for Fextproc.
-
-	* Version 1.93.
-
-	* sysdep.cc (octave_chdir): [__EMX__]: Make copy of string before
-	converting to upper case.
-
-	* getgrent.cc (mk_gr_map): Only set the passwd field if
-	HAVE_GR_PASSWD is defined.
-
-Tue Nov 19 12:01:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc (OS2_init): New function.
-	[__EMX__] (sysdep_init): Call it.
-
-	* lex.l (plot_style_token): Add new plot styles for gnuplot 3.6.
-	* pt-plot.cc (subplot_style::columns_ok): Rename from
-	subplot_style::errorbars. Recognize more styles and do a better
-	job of diagnosing column number/style mismatches.
-
-	* sighandlers.cc (my_friendly_exit): If we are called twice, try
-	to remove the signal handler for SIGABRT and the call abort ().
-
-	* help.cc (Ftype): If a function is defined from a file and
-	transformed text has not been requested, just print the contents
-	of the file.
-
-	* parse.y (fold): New functions for constant folding for binary
-	and unary expressions.  Keep track of original text even when
-	transformations occur.
-	(make_binary_op, make_boolean_op, make_unary_op): Use them.
-	(finish_colon_expression, finish_matrix): Keep track of original
-	text even when transformations occur.
-
-	* help.cc (Ftype): Don't mess with Vps4.
-	Handle new option `-transformed'.
-
-	* pt-const.h, pt-const.cc (tree_constant::print):
-	New arg, pr_orig_text.
-
-	* pt-exp.h, pt-exp.cc (tree_colon_expression::is_range_constant):
-	Delete.
-
-	* pt-exp-base.h (tree_expression::original_text): New virtual function.
-	pt-exp-base.cc (tree_expression::original_text): Default version.
-
-	* pt-pr-code.h (tree_print_code::print_original_text,
-	tree_print_code::prefix): New fields.
-	* pt-pr-code.cc (tree_print_code::visit_constant): Pass
-	print_original_text to tree_constant::print().
-	(tree_print_code::indent): Use prefix instead of Vps4.
-	* pt-fcn.cc (tree_function::print_function_header,
-	tree_function::print_function_trailer): Pass Vps4 to
-	tree_print_code_constructor for prefix.
-	* pt-misc.cc (tree_statement::maybe_echo_code): Pass Vps4 to
-	tree_print_code_constructor for prefix.
-
-	* pt-mat.h, pt-mat.cc (tree_matrix::all_elements_are_constant):
-	Rename from is_matrix_constant.
-	(tree_matrix_row::all_elements_are_constant): Likewise.
-	Change all callers.
-
-Mon Nov 18 14:13:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-inc): Try harder to create the link from
-	include/octave to include/octave-VERSION.
-
-Sun Nov 17 14:14:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (parse.cc): Expect 13 shift/reduce conflicts.
-
-	* parse.y (set_stmt_print_flag): New function.
-	(sep_type): New member for bison %union declaration.
-	Simplify rules for statement lists keeping track of the type of
-	the first separator in the values associated with the
-	nonterminals for the separators.
-
-	* lex.l (handle_identifier): Set lexer_flags.doing_set if the
-	token is "gset", not "set".
-
-Sat Nov 16 21:41:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (parse.cc, lex.cc): Add special rules for these files.
-	Delete pattern rules for .y and .l files.
-
-Fri Nov 15 13:48:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc: Put semicolons at the ends of all plot commands.
-
-	* defaults.cc (subst_octave_home): Start subsequent searchs from
-	the end of the replaced text.
-
-	* pr-output.cc (pr_any_float): Kluge for SCO systems.
-
-	* pr-output.cc (pr_any_float, pr_complex): Don't declare inline.
-
-	* mappers.cc: Include lo-ieee.h, for isinf and isnan on SCO
-	systems.
-
-Thu Nov 14 00:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (Fgset, Fgshow): New commands.
-	(Fshow): Print warning and call gshow.
-	(Fset): Print warning and call gset.
-
-	* variables.cc (parse_fcn_file): Add unwind-protect for file
-	pointer, so the file is always closed.
-	(get_help_from_file): Likewise.
-	* toplev.cc (parse_and_execute): Likewise.
-
-	* Makefile.in (install-oct): Depend on mk-oct-links.
-	(mk-oct-links): New target.
-
-	* Version 1.92.
-
-Wed Nov 13 11:13:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sighandlers.cc (sys_siglist): [__EMX__]: Add definitions.
-
-	* octave.cc (execute_startup_files): Allow init file name ot be
-	specified by an environment variable.
-
-	* dirfns.cc (make_absolute): [__EMX__]: Path is already absolute
-	if it begins with any character followed by a colon.
-
-	* load-save.cc (read_mat_ascii_matrix, get_lines_and_columns,
-	get_complete_line): New functions, for reading headless text files.
-	(load_save_format): Add LS_MAT_ASCII, for headless text files.
-	(do_load): Handle LS_MAT_ASCII files.
-	Thanks to Mel Melchner <mjm@research.att.com> for initial version
-	of this code.
-
-	* sysdep.cc: Conditionally include ieeefp.h.
-	(BSD_init, SCO_init): New functions.
-	(sysdep_init): Conditionally call them here.
-
-Tue Nov 12 00:14:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc (open_plot_stream): Don't block SIGCHLD.
-
-	* load-save.cc (read_binary_data): When reading string arrays, be
-	sure to create an octave_char_matrix_str object, not just an
-	octave_char_matrix object.
-	(read_ascii_data): Likewise.
-
-Mon Nov 11 22:52:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_binary_data): Don't forget teminating NUL for
-	string that we plan to insert.
-	(read_ascii_data): Likewise.
-
-Sun Nov 10 16:58:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Ffnmatch): New function.
-
-	* octave.cc (intern_argv): Use new string_vector constructor.
-
-	* ov-str-mat.cc (octave_char_matrix_str::all_strings): Have
-	charMatrix::row_as_string() strip trailing whitespace.
-
-	* dirfns.cc (Fglob): new function.
-
-	* sysdep.cc (oct_tilde_expand): Provide version that works on
-	string vectors too.
-	(Ftilde_expand): Work on string vector args.
-
-	* load-save.cc (save_binary_data): Call char_matrix_value() to
-	extract charMatrix from octave_value object, not all_strings().
-	(save_ascii_data): Likewise.
-	* pt-mat.cc (tree_matrix::eval): Likewise.
-
-	* ov.h (octave_value::all_strings): Return string_vector, not
-	charMatrix.
-	* ov-base.cc (octave_base_value::all_strings): Likewise.
-	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::all_strings):
-	Likewise.
-
-Fri Nov  8 09:54:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defaults.cc, dynamic-ld.cc, fn-cache.cc, help.cc, oct-hist.cc,
-	octave.cc, pager.cc, pt-fcn.cc, toplev.cc, utils.cc, variables.cc,
-	lex.l: Change #include "" to #include <> for defaults.h,
-	oct-conf.h, oct-gperf.h, y.tab.h, and version.h, to avoid getting
-	them from $srcdir when we really want the version from the build
-	directory.  (Maybe this should be done for all the include files,
-	not just those that are auto-generated?  Hmm.)
-
-	* defaults.h.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH):
-	Delete.
-
-	* Makefile.in (install-oct): Use $(INSTALL_PROGRAM) for .oct files.
-
-Thu Nov  7 07:59:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (gobble_leading_white_space): New arg, update_pos.
-	* (is_function_file): Don't update file position information here.
-
-	* Version 1.91.
-
-	* pt-fvc.cc (tree_indirect_ref::reference): If the lhs object is
-	not a map, convert it to one.
-
-	* ov-typeinfo.h (init_tab_sz): New static member.
-
-	* ov-struct.cc, ov-struct.h: Add hooks for custom memory management.
-	* ov-scalar.cc, ov-scalar.h: Likewise.
-	* ov-re-mat.cc, ov-re-mat.h: Likewise.
-	* ov-range.cc, ov-range.h: Likewise.
-	* ov-cx-mat.cc, ov-cx-mat.h: Likewise.
-	* ov-complex.cc, ov-complex.h: Likewise.
-	* ov-ch-mat.cc, ov-ch-mat.h: Likewise.
-
-Wed Nov  6 12:32:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.cc (do_sync): Don't call clear_external_pager() here.
-
-	* pt-const.h (tree_constant::allocator) New static member.
-	(tree_constant::operator new, tree_constant::operator delete):
-	Implement with custom allocator.
-
-	* syscalls.cc (Fgetgid, Fgetegid): New functions.
-
-	* sighandlers.cc (sigchld_handler): If necessary, reinstall
-	handler after call to waitpid().
-
-	* pager.cc (pager_death_handler): Don't use warning() to print
-	message.
-
-	* getgrent.cc: New file.
-	* Makefile.in (DLD_SRC): Add it.
-
-	* ov.cc (octave_value::print_with_name): Call is_map() instead of
-	print_as_structure().
-	* ov-struct.cc (octave_struct::print): Likewise.
-
-	* ov.h, ov.cc, pt-const.h: Delete force_numeric(), make_numeric(),
-	convert_to_matrix_type(), print_as_structure() member functions.
-
-	* variables.cc (is_function_file): Call gobble_leading_whitespace
-	here to strip all leading whitespace and comments.
-	(parse_fcn_file): If reading a function file, call
-	gobble_leading_whitespace again after resetting parser state to
-	grab help text.
-
-Tue Nov  5 13:00:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* syscalls.cc (Fgeteuid, Fgetuid): New functions.
-
-	* getpwent.cc: Use gripe_not_supported from gripes.cc, instead of
-	local gripe_not_implemented function.
-
-	* input.cc, sysdep.cc, variables.cc: Only include readline.h and
-	history.h if USE_READLINE is defined.
-
-	* help.cc: Make it compile without warnings even if USE_GNU_INFO
-	is not defined.
-
-	* sighandlers.h (octave_child_list): Don't define
-	HAVE_POSIX_SIGNALS HERE.
-
-	* sighandlers.cc (SIGHANDLER_RETURN): New macro.
-	(generic_sig_handler, sigchld_handler, sigfpe_handler,
-	sigint_handler, sigpipe_handler):  Use it.
-	(sigchld_handler, sigfpe_handler, sigint_handler, sigpipe_handler):
-	Only reinstall signal handler if MUST_REINSTALL_SIGHANDLER is defined.
-
-Sun Nov  3 00:45:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc (tree_constant::print): Just call val.print().
-	* ov-base.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
-	ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc, ov-scalar.cc,
-	ov-str-mat.cc, ov-struct.cc ov-va-args.cc, ov.cc (print):
-	Handle pr_as_read_syntax arg.
-
-	* defaults.cc (subst_octave_home): Search for prefix repeatedly in
-	retval, not s.
-
-	* gripes.h: Make declaration of gripes_not_supported match
-	definition.
-
-	* mk-oct-links.in: In sed command, match "DEFUN_DLD *( *", not
-	"DEFUN_DLD_BUILTIN *( *".
-
-	* chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, expm.cc, fft.cc,
-	fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, getpwent.cc,
-	getrusage.cc, givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc,
-	log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc,
-	qpsol.cc, qr.cc, quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc,
-	svd.cc, syl.cc, time.cc: Change all uses of DEFUN_DLD_BUILTIN to
-	be just DEFUN_DLD.
-
-	* defun-dld.h: Eliminate DEFUN_DLD_BUILTIN.
-
-	* syswait.h: Use #ifdef HAVE_SYS_WAIT_H, not #if HAVE_SYS_WAIT_H
-	to decide whether to include sys/wait.h.
-
-	* pt-exp-base.h (tree_expression): Declare oper() here as a
-	virtual member function.
-
-	* pt-pr-code.cc (tree_print_code::visit_constant): Check for
-	string before checking for char_matrix.
-
-	* ov-ch-mat.cc (octave_char_matrix::print): Supply correct number
-	of args to octave_print_internal().
-
-Sat Nov  2 20:44:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ftmpnam): Rename from Foctave_temp_file_name.
-
-	* Makefile.in (DLD_SRC): Move time.cc and getrusage.cc here from
-	SOURCES.  Add getpwent.cc.
-
-	* getrusage.cc: Rename from resource.cc.  Make getrusage a
-	loadable function.
-
-	* time.cc: Rename from timefns.cc.  Make time functions loadable.
-
-	* getpwent.cc: New file.
-
-Wed Oct 30 01:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-	* ov-range.cc (octave_range::convert_to_str): New function.
-
-	* ov-str-mat.h (octave_char_matrix_str::char_matrix_value):
-	Delete function.  Already handled by octave_char_matrix class.
-
-	* ov-ch-mat.h (octave_char_matrix::convert_to_str): New function.
-
-	* pager.cc (Fmore): Set page_screen_output to 1.0 or 0.0, not
-	"true" or "false".
-
-	* ov-ch-mat.cc, ov-struct.cc, ov-struct.h, pr-output.cc,
-	pt-cmd.cc, pt-const.cc, pt-const.h, pt-fcn.cc, pt-fvc-base.cc,
-	pt-fvc-base.h, pt-fvc.cc, pt-fvc.h, rand.cc, sighandlers.cc,
-	variables.cc, variables.h: Delete unused code.
-
-	* octave.cc: Only include pwd.h if HAVE_PWD_H.
-
-	* oct-strstrm.h: Include <string>, not <string.h>.
-
-	* defaults.cc, dirfns.cc, file-io.cc, help.cc, input.cc,
- 	oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc, pager.h,
- 	procstream.h, pt-misc.cc, pt-plot.cc, sighandlers.cc, strftime.c,
- 	syscalls.cc, sysdep.cc, syswait.h, toplev.cc, utils.cc,
- 	variables.cc: Only include sys/types.h if HAVE_SYS_TYPES_H.
-
-	* error.h (panic): Use GCC_ATTR_NORETURN macro, not NORETURN.
-	* toplev.h (clean_up_and_exit): Likewise.
-	* utils.h (jump_to_top_level): Likewise.
-
-	* derfaults.h.in, defaults.cc (local_arch_lib_dir): New variable.
-	* defaults.cc (set_default_local_arch_lib_dir): New function.
-	(install_defaults): Call it.
-	(exec_path): Use Vlocal_arch_lib_dir here.
-	* toplev.cc (octave_config_info): Add localarchlibdir to structure.
-
-Tue Oct 29 15:54:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-oct): Don't do anything if $(OCT_FILES) is
-	empty.
-
-	* ov-range.cc (octave_range::index): New Function.
-	(octave_range::all, octave_range::any, octave_range::is_true):
-	Make these functions work.
-
-	* ov.cc (octave_value::try_assignment_with_conversion): Remove
-	left over debugging print statements.
-
-Mon Oct 28 10:49:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* strftime.c: Add missing #endif for previous change.
-
-Sun Oct 27 14:06:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-hist.cc (do_history): Rewite option parsing to avoid
-	(probably bogus) errors from g++ on cygwin32 system.
-
-	* strftime.c: Use autoconf macros TIME_WITH_SYS_TIME and
-	HAVE_SYS_TIME_H to decide which time.h files to include.
-
-	* oct-stream.h, oct-stream.cc (octave_stream::error,
-	octave_base_stream::error): Rename errno => err_num.
-
-Sat Oct 26 10:40:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-hist.cc (do_history): Move declaration of file inside
-	conditional.
-
-	* defun.h (DEFVAR_INT): Set eternal flag with (svc_fcn != 0)
-	instead of (sv_fcn ? 1 : 0)
-
-Fri Oct 25 01:10:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov-ch-mat.h (octave_char_matrix::any): Return 0.0 instead of false.
-	(octave_char_matrix::all): Likewise.
-
-	* input.cc (Fecho): When binding value of echo_executing_commands,
-	cast ECHO_* to double.
-
-	* sighandlers.cc (octave_child_list::do_remove): Delete unused
-	variable `enlarge'.
-
-	* pt-const.h (tree_constant::tree_constant (const tree_constant&)):
-	Don't pass arg to tree_fvc constructor.
-
-	* resource.cc (getrusage): [HAVE_GETRUSAGE && RUSAGE_TIMES_ONLY]:
-	Only fill in time values.
-
-Thu Oct 24 20:37:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y: Comment out the %expect declaration so byacc can
-	compile this file.
-	(if_cmd_list): Add missing semicolon.
-	Include <cstdlib> for getenv if using byacc.
-
-	* ov.h: Move typedefs outside of octave_value class scope to avoid
-	problem with cygwin32 beta16 compiler.
-
-Fri Oct 18 13:44:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::index): Undo previous change.
-	* ov.cc (octave_value constructors): Call maybe_mutate() in most
-	cases.
-
-	* ov-complex.cc (octave_complex::index): Avoid implicit type
-	conversion back to scalar type.
-	* ov-scalar.cc (octave_scalar::index): Likewise.
-
-	* ov.h (octave_value::index): Call maybe_mutate() on retval before
-	returning it.
-
-Wed Oct 16 12:00:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* ov.h (octave_value::struct_elt_val): New optional arg, silent.
-	* ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc: Likewise, but
-	for the derived classes the arg is required.
-
-	* data.cc (Fstruct_contains): Require arguments to be struct and
-	string, respectively.  Call octave_value::struct_elt_val with
-	silent flag set.
-
-	* pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error,
-	tm_row_const::tm_row_const_rep::eval_warning): New functions.
-	(tm_row_const::tm_row_const (const tree_matrix_row&): Use them to
-	give better error messages.
-
-	* pt-fvc.cc (tree_identifier::eval): Avoid dereferencing null
-	object_to_eval.
-
-Tue Oct 15 11:35:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc
-	(complex_matrix_conv): New functions.
-	Install preferred assignment conversion and widening ops.
-
-	* op-s-cm.cc, op-s-cs.cc (complex_matrix_conv): New functions.
-	Install preferred assignment conversion and widening ops.
-
-	* op-s-m.cc, op-s-s.cc (matrix_conv): New functions.
-	Install preferred assignment conversion and widening ops.
-
-	* ov.cc (octave_value::try_assignment_with_conversion,
-	octave_value::convert_and_assign, octave_value::try_assignment):
-	New functions.
-	(octave_value::assign): Use them to implement twisted logic for
-	type conversions in assigments.
-
-	* pt-const.h (tree_constant::maybe_mutate): New function.
-	* ov.h (octave_value::maybe_mutate): New function.
-	(octave_value::try_narrowing_conversion): New function.
-	Use just one typedef for widening_op_fcn and numeric_conv_fcn.
-	Change all uses.
-	* ov-base.h, ov-complex.h, ov-complex.cc, ov-cx-mat.h,
-	ov-cx-mat.cc, ov-range.h, ov-range.cc, ov-re-mat.h, ov-re-mat.cc,
-	Provide derived class versions of try try_narrowing_conversion().
-
-	* pr-output.cc (octave_print_internal): Don't bother handing off
-	to scalar/real versions, even when it would seem appropriate.
-
-	* symtab.cc (symbol_def::define (tree_constant *)): Call
-	maybe_mutate on constants here.
-
-Mon Oct 14 11:05:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-fvc.cc (tree_identifier::eval): If retval is undefined and
-	the object to eval is a constant, print	error message.
-
-	* Makefile (distclean): Remove *.oct too.
-
-	* defun-int.h: Include variables.h here.
-
-Sun Oct 13 10:52:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (print_symbol_info_line): Never print negative
-	diminsions.
-
-	* symtab.h (octave_symbol_record_info): Store const_type as string.
-	(octave_symbol_record_info::init): Delete.  Fix constructors.
-	(octave_symbol_record_info::type_name): Handle const_type as string.
-
-	* octave.cc (maximum_braindamage): Replace "true" with 1.0 and
-	"false" with 0.0 in calls to bind_builtin_variable().
-	Include sun-utils.h here.
-	(intern_argv): Also bind __argv__.
-
-Sat Oct 12 13:40:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean): Also delete mk-oct-links.
-
-Fri Oct 11 13:13:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	Changes for Octave's new type system:
-
-	* arith-ops.cc: Delete.
-	* pt-const.h, pt-const.cc: Massive changes.  Most functionality
-	moved to ov.h, ov.cc, and derived classes.
-
-	* variables.h, variables.cc (octave_variable_reference): New class
-	for getting references to variables and structure elements used in
-	assignments or value contexts.
-
-	* symtab.h, symtab.cc (symbol_record::define (const octave_value&),
-	symbol_record::variable_value, symbol_record::variable_reference):
-	New functions.
-	(symbol_record_info::type_name): Rename from type_as_string.
-
-	* pt-fvc-base.h, pt-fvc-base.cc (tree_fvc::increment,
-	tree_fvc::decrement): New functions to replace
-	tree_fvc::bump_value.
-	#if 0 assign and lookup_map_element functions.
-
-	* pt-mvr.cc (tree_multi_assignment_expression::eval):
-	Generated RHS value is now a tree_constant.
-
-	* pt-exp.h, pt-exp.cc (tree_boolean_expression): New class.
-	(tree_unary_expression, tree_binary_expression,
-	tree_boolean_expression): Move codes here from tree_expression.
-	(tree_simple_assignment_expression): Cope with changes to way of
-	doing assignments.
-
-	* pt-exp-base.h, pt-exp-base.cc (enum type): Delete codes for
-	unary and binary ops.
-	(tree_expression::expression_type): Delete.
-	(tree_expression::is_logically_true): Hand off to
-	octave_value::is_true to do real work.
-
-	* pr-output.h, pr-output.cc (any_element_is_inf_or_nan,
-	all_elements_are_ints): Delete.  Call member new functions for
-	these operations.
-	(free_format, plus_format, bank_format, hex_format,
-	compact_format, print_e, print_big_e): Use bool, not int.
-	(octave_print_internal): Hand off to scalar/real versions when
-	appropriate.
-
-	* octave.cc (main): Call initialize_types() and install_ops().
-	(verbose_usage): Add WWW address to output.
-
-	* parse.y (indirect_ref): Handle by making a tree instead of a
-	list using new version of tree_indirect_ref class.
-
-	* parse.y (make_boolean_op): New function.  Use it instead of
-	make_binary_op to create trees for && and || ops.
-	(make_binary_op): Codes come from tree_binary_expression now,
-	instead of tree_expression.
-	(make_unary_op): Codes come from tree_unary_expression now,
-	instead of tree_expression.
-	(make_boolean_op): Codes come from tree_boolean_expression.
-
-	 *parse.y (tree_constant_type): Change type to tree_constant* from
-	octave_value*, and rename from octave_value_type.  Change uses.
-
-	* defun.h (DEFVAR_INT): Pass octave_value not pointer to
-	octave_value for defn when creating builtin_variable.
-
-	* gripes.h, gripes.cc (gripe_invalid_conversion): Args are
-	strings, not char*.
-	(gripe_implicit_conversion, gripe_divide_by_zero): New extern
-	gripe functions.
-
-	* mkbuiltins: For each file, create a separate static function to
-	install builtins, then create another single extern function to
-	call all of them.
-
-	* pt-fcn.cc (tree_function::bind_nargin_and_nargout):
-	Just pass doubles and let symbol_record::define handle creating
-	new value.
-
-	* pt-pr-code.cc, pt-pr-code.h (visit_constant): Renamed from
-	visit_octave_value.
-	(visit_unary_expression): Use tree_expression::is_prefix_op()
-	instead of switch on op types.
-
-	* pt-walk.h (visit_constant): Renamed from visit_octave_value.
-
-	* pt-misc.cc (initialize_undefined_elements): Get reference to
-	tmp, then assign.
-	* pt-cmd.cc (do_for_loop_once): Likewise, for loop identifier.
-
-	* input.cc (generate_struct_completions, looks_like_struct): Cast
-	tmp_fvc to tree_constant*, not octave_value*.
-	(get_user_input): Call print() on retval, not eval(1).
-
-	* help.cc (Ftype): Cast defn to tree_constant*, not octave_value*.
-
-	* balance.cc: Fix docstring.
-
-	* dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, qpsol.cc,
-	quad.cc:
-	Include pt-fvc.h.
-
-	* data.cc (Fstruct_contains): call octave_value::struct_elt_val,
-	not octave_value::lookup_map_element.
-
-	* dirfns.cc (Fcd): Pass directory name as string directly to
-	bind_builtin_variable instead of creating new octave_value.
-
-	* toplev.cc: Include pt-fvc.h and lo-mappers.h
-
-	* data.cc, error.cc, file-io.cc, load-save.cc, pager.cc,
-	pt-mat.cc, pt-plot.cc, syscalls.cc, toplev.cc:
-	Include variables.h.
-
-	* Array-tc.cc, Map-tc.cc, SLList-misc.cc SLList-tc.cc, data.cc,
-	defaults.cc, dynamic-ld.cc, error.cc, gripes.cc, lex.l, octave.cc,
-	oct-map.h, oct-map.cc, oct-obj.h, pt-cmd.cc, pt-exp.cc, pt-fcn.cc,
-	pt-fvc-base.cc, pt-mat.cc, pt-misc.cc, pt-mvr-base.cc, pt-mvr.h,
-	resource.cc, strfns.cc, sysdep.cc, timefns.cc, toplev.cc:
-	Include ov.h instead of pt-const.h.
-
-	* xpow.cc (any_element_is_negative): Delete.
-	(xpow and elem_xpow functions): Check conformance here.
-
-	* xdiv.cc (mx_leftdiv_conform, mx_div_conform):
-	Now template-based, taking Matrices instead of dimensions as args.
-	Change all callers.
-
-	* op-cm-cm.cc, op-cm-cm.h, op-cm-cs.cc, op-cm-cs.h, op-cm-m.cc,
- 	op-cm-m.h, op-cm-s.cc, op-cm-s.h, op-cs-cm.cc, op-cs-cm.h,
- 	op-cs-cs.cc, op-cs-cs.h, op-cs-m.cc, op-cs-m.h, op-cs-s.cc,
- 	op-cs-s.h, op-m-cm.cc, op-m-cm.h, op-m-cs.cc, op-m-cs.h, op-m-m.cc,
-	op-m-m.h, op-m-s.cc, op-m-s.h, op-s-cm.cc, op-s-cm.h, op-s-cs.cc,
- 	op-s-cs.h, op-s-m.cc, op-s-m.h, op-s-s.cc, op-s-s.h,
- 	op-str-str.cc, op-str-str.h, ops.cc, ops.h, ov-base.cc, ov-base.h,
- 	ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, ov-colon.h, ov-complex.cc,
- 	ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-range.cc, ov-range.h,
- 	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h, ov-str-mat.cc,
-	ov-str-mat.h, ov-struct.cc, ov-struct.h, ov-typeinfo.cc,
- 	ov-typeinfo.h, ov-va-args.cc, ov-va-args.h, ov.cc, ov.h:
- 	New files for Octave's new type system.
-	* Makefile.in: Add them to the appropriate lists.
-
-Sat Sep 14 21:58:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mkbuiltins: Use .df instead of .def.
-	Write one function for each .df file, then call them
-	all in install_builtin_functions().
-	* Makefile.in: Handle .df instead of .def.
-
-	* balance.cc (balance): Fix typo in doc string.
-
-Wed Aug 28 21:01:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (verbose_usage): Include WWW address and bug-octave
-	mailing list address.
-
-Tue Aug 20 17:41:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: Only define pattern rules for making .oct files if
-	OCTAVE_LITE is true.
-	Only add pic/ to $(TI_OBJ) if $(SHARED_LIBS) is true.
-	(stamp-picdir): Only create a pic subdirectory if SHARED_LIBS or
-	OCTAVE_LITE is true AND CPICFLAG or CXXPICFLAG is not empty.
-
-	* minmax.cc (Fmin, Fmax): Deal with changes to Matrix class
-	min/max methods.
-
-Thu Jul 25 01:42:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (generate_possible_completions): Force the names to be
-	unique.
-
-	* load-save.cc (read_mat_binary_data): Expect to read terminating
-	NUL character in the variable name.
-	(save_mat_binary_data): Likewise, save it here.
-
-Wed Jul 24 05:08:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lsode.cc (Flsode): Don't set the return value if an error
-	occurred during integration.
-	* dassl.cc (Fdassl): Likewise.
-
-	* file-io.cc (symbols_of_file_io): Redefine values of SEEK_SET,
-	SEEK_CUR, and SEEK_END for Matlab compatibility.
-	* oct-stream.cc (seek): Check for compatible values of ORIGIN arg.
-	Also handle "bof", "cof", and "eof".
-
-Fri Jul 19 15:24:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc: When creating octave_value_reps from ComplexMatrix
-	values, check to see if all the elements are actually real.
-
-Tue Jul 16 10:53:42 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (decode_prompt_string): Swap meanings of \h and \H.
-
-Mon Jul 15 16:01:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (run_command_and_return_output): Renamed from do_system.
-	(Fsystem): Make `system ("emacs")' work as one would expect.
-
-Sun Jul 14 17:34:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (Ffopen, Ffread, Ffwrite): Update doc strings,
-	correctly handle default architecture and precision args.
-
-	* load-save.cc (mopt_digit_to_float_format): Rename from
-	get_floating_point_format.
-	(float_format_to_mopt_digit): New function.
-
-	* oct-stream.cc (octave_base_stream::read, octave_base_stream::write):
-	Simplify by calling Matrix::read and Matrix::write to do real work
-	of reading, writing, and format conversion.
-
-	* oct-stream.h (octave_base_stream): Move data_type enum to
-	liboctave/data-conv.h.  Use float_format from
-	liboctave/mach-info.h instead of arch_type enum.
-
-	* sysdep.h, sysdep.cc (octave_words_big_endian, ten_little_endians):
- 	Delete.  Now part of oct_mach_info class in liboctave.
-
-Tue Jul  9 11:18:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* arith-ops.cc, balance.cc, dassl.cc, data.cc, filter.cc, find.cc,
-	fsolve.cc, load-save.cc, log.cc, lsode.cc, minmax.cc, npsol.cc,
-	oct-obj.cc, oct-stream.cc, pr-output.cc, pt-cmd.cc, pt-const.cc,
-	pt-fvc.cc, pt-plot.cc, quad.cc, rand.cc, sighandlers.cc, sort.cc,
-	syscalls.cc, unwind-prot.cc, xdiv.cc, xpow.cc:
-	When indexing arrays, use operator() instead of elem() so that
-	bounds checking can be done consistently.
-
-Mon Jun 24 02:13:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-oct): Use INSTALL_PROGRAM, instead of
-	INSTALL_DATA for installing shared libraries.
-
-	* lex.l (grab_help_text): Ignore all initial comment characters,
-	not just the first.
-	* variables.cc (gobble_leading_white_space): Likewise.
-
-Sat Jun 22 22:43:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.h, input.cc (octave_completion_matches_called): New varaible.
-	(Fcompletion_matches): Set it to true on a successful call.
-	* toplev.cc (main_loop): If octave_completion_matches_called is
-	true, don't increment current_command_number.
-
-Thu Jun 13 03:52:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (is_mapper_function_name,
-	is_builtin_function_name): New functions.
-	(Fdocument): Use them.
-	Define as regular function, not a text style function.
-
-Thu Jun  6 00:09:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-plot.cc: Handle new built-in variable `gnuplot_has_frames'.
-
-Wed Jun  5 14:45:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (decode_prompt_string): \h now means the whole host
-	name and \H is the host name up to the first `.'.
-
-Thu May 30 23:41:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* fn-cache.cc (octave_fcn_file_name_cache::do_list): Always
-	recompute the lists of function files instead of trying to cache
-	them.
-
-Tue May 28 12:05:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (warn_old_style_preference): New function.
-	(check_preference): Use it.
-
-	* fn-cache.h: Include <ctime> here.
-
-Fri May 24 00:57:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (completion_matches): Don't return empty string_vectors.
-
-	* octave.cc (long_opts): Add braindead.
-
-Thu May 23 01:49:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (gnu_readline): New optional arg, force_readline.
-	(get_user_input): Use it.
-
-	* pt-const.cc (OCT_VAL_REP::assign): If converting the rhs to a
-	numeric value, convert a copy, not the actual object.
-	(OCT_VAL_REP::do_index): Prevent s([]) from resulting in a string
-	with zero rows.
-
-	* mappers.cc: Handle toascii here.
-	* strfns.cc: Not here.
-
-	* mappers.cc: Handle tolower and toupper here.
-	* mappers.h: Rename can_return_complex_for_real to flag and
-	overload meaning for ch_mapper.
-	* pt-fvc.cc (apply_mapper_fcn): Handle overloaded meaning.
-
-	* syscalls.cc (stat): Return 3 values instead of just 1.
-	(lstat): Likewise.
-
-Wed May 22 02:34:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc (OCT_VAL_REP::make_numeric): For string to number
-	conversions, correctly set type tag before calling force_numeric.
-	(do_binary_op): Force string to number conversion if both args are
-	strings and we are doing some sort of comparison operation.
-
-	* Makefile.in (stamp-tinst, stamp-interp): Use SH_TERMLIBS and
-	SH_LIBS instead of TERMLIBS and LIBS.
-
-	* pt-const.cc (do_unary_op): Add special case to handle
-	transposing strings.
-
-	* pt-mat.cc (Vstring_fill_char): New variable.
-	(symbols_of_pt_mat): DEFVAR it.
-
-	* input.cc (generate_struct_completions,
-	generate_possible_completions):	Return string_vector, not char **.
-	Change all callers.
-
-	* pt-const.cc (lookup_map_element): Use substr() correctly.
-
-Tue May 21 21:37:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-
-	* octave.cc: New args --no-site-file and --no-init-file.  Delete
-	--ignore-init-file.  The flag --norc (-f) implies both
-	--no-site-file and --no-init-file.
-
-Fri May 17 01:54:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (Fcompletion_matches): New function.
-
-	* utils.cc (get_fcn_file_names): Delete.
-	* help.cc (simple_help): Use new file name cache instead of
-	calling get_fcn_file_names.
-	* variables.cc (make_name_list): Likewise.
-
-	* fn-cache.h, fn-cache.cc, Map-fnc.cc: New files.
-	* Makefile.in: Add them to the lists.
-
-	* Makefile.in (uninstall): Install in octincludedir, not includedir.
-
-	* pt-plot.h: Include <csignal> here.
-
-Thu May 16 10:52:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (octave_stream::oscanf, octave_base_stream::oscanf,
- 	octave_base_stream::do_oscanf): New functions for backward
-	compatibility with older versions of Octave.
-	(scanf_format_elt, scanf_format_list): Keep track of width specifier.
-	* file-io.cc (Fscanf): New function.
-	(Fscanf, Ffscanf, Fsscanf): Handle compatibility arg.
-
-Wed May 15 01:00:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-stream.cc (do_scanf): If doing '%c' conversion, unset
-	ios::skipws on input stream.
-
-	* sighandlers.h, sighandlers.cc (octave_child, octave_child_list):
-	New classes for keeping track of the child processes we create.
-	(sigchld_handler): Check in octave_child_list to see if there is
-	anything we can do for the child that died.
-	* pager.cc: Register child pager process.
-	* pt-plot.cc: Likewise, for the plotter.
-	* Array-oc.cc: New file
-	* Makefile.in (TI_SRC): Add it to the list.
-
-	* pager.cc (do_sync): Don't check error_state.
-	(flushing_output_to_pager): New static variable.
-	(flush_octave_stdout): Use it to avoid doing anything if already
-	flushing output.
-
-	* sighandlers.cc (sigchld_handler): Call warning instead of
-	writing directly to cerr.
-	(sigpipe_handler): Call warning instead of message.
-
-	* octave.cc (main): Call install_signal_handlers,
-	initialize_file_io, initialize_symbol_tables, and install_builtins
-	before parsing command line options.
-
-	* user-prefs.h, user-prefs.cc: Delete.
-
-	* utils.cc (check_preference): Move here.
-	* user-prefs.cc: From here.
-
-	* defaults.cc: New file.  Move initialization stuff from
-	variables.cc.  Move DEFVARS for EDITOR, EXEC_PATH, LOADPATH,
-	IMAGEPATH, and OCTAVE_VERSION here.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	INFO_FILE and INFO_PROGRAM.
-	* help.cc: Move all of that here.
-	(symbols_of_help): Add DEFVARS for INFO_FILE and INFO_PROGRAM.
-
-Tue May 14 00:23:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.cc (do_sync): Be more defensive about sending stuff to the
-	external pager.
-	* sighandlers.cc (sigchld_handler): For now, only wait for
-	octave_pager_pid.  Don't call error().  Do set octave_pager_pid to
-	-1 if the pager process no longer exists.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	PWD.
-	* dirfns.cc: Move all of that here.
-	(symbols_of_dirfns): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	default_save_format and save_precision.
-	* load-save.cc: Move all of that here.
-	(symbols_of_load_save): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	warn_divide_by_zero.
-	* arith-ops.cc: Move all of that here.
-	(symbols_of_arith_ops): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* mappers.cc: Add wrappers for ctype is* functions so that they
-	will work on systems that only define them as macros.
-
-Mon May 13 00:27:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	suppress_verbose_help_message.
-	* help.cc: Move all of that here.
-	(symbols_of_help): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	treat_neg_dim_as_zero.
-	* pt-const.cc: Move all of that here.
-
-	* pager.cc (octave_pager_stream::do_sync): Don't return early if
-	not interactive.
-
-	* data.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* data.cc (symbols_of_data): New function.  Move definition of I,
-	Inf, J, NaN, e, eps, i, inf, j, nan, pi, realmin, and realmax here.
-	* variables.cc: From here.
-	(install_builtin_variables): Call symbols_of_data.
-
-	* file-io.cc (symbols_of_file_io): New function.  Move definition
-	of SEEK_CUR, SEEK_END, SEEK_SET, stdin, stdout, stderr here.
-	* variables.cc: From here.
-	(install_builtin_variables): Call symbols_of_file_io.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	do_fortran_indexing, implicit_str_to_num_ok,
-	ok_to_lose_imaginary_part, prefer_column_vectors,
-	prefer_zero_one_indexing, print_answer_id_name,
-	propagate_empty_matrices, resize_on_range_error, and
-	struct_levels_to_print.
-	* pt-const.cc: Move all of that here.
-	(symbols_of_pt_const): New function.
-	* variables.cc (install_builtin_variables): Call it.
-	* pt-fvc.cc (tree_identifier::assign): Use Vresize_on_range_error
-	instead of user_pref.resize_on_range_error here.
-	* load-save.cc (save_mat_binary_data): Use Vimplicit_str_to_num_ok
-	instead of user_pref.implicit_str_to_num_ok here.
-	* utils.cc (empty_arg): Use Vpropagate_empty_matrices instead of
-	user_pref.propagate_empty_matrices here.
-	* pt-exp-base.cc (tree_expression::is_logically_true): Likewise..
-
-	* pt-fcn.cc (symbols_of_pt_fcn): Also move DEFVAR for
-	default_return_value here.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	ps1, ps2, ps4, and completion_append_char.
-	* input.cc: Move all of that here.
-	(symbols_of_input): New function.
-	* variables.cc (install_builtin_variables): Call it.
-	* pt-pr-code.cc (indent): Use Vps4 instead of user_pref.ps4 here.
-	* help.cc (Ftype): Also here.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	automatic_replot, gnuplot_binary, and gnuplot_has_multiplot.
-	* pt-plot.cc: Move all of that here.
-	(symbols_of_pt_plot): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	beep_on_error.
-	* error.cc: Move all of that here.
-	(symbols_of_error): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	empty_list_elements_ok.
-	* pt-mat.cc: Move all of that here.
-	(symbols_of_pt_mat): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	define_all_return_values, return_last_computed_value, and
-	silent_functions.
-	* pt-fcn.cc: Move all of that here.
-	(symbols_of_pt_fcn): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	whitespace_in_literal_matrix.
-	* lex.l: Move all of that here.
-	(symbols_of_lex): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	warn_assign_as_truth_value, warn_comma_in_global_decl,
-	warn_function_name_clash, and warn_missing_semicolon.
-	* parse.y: Move all of that here.
-	(symbols_of_parse): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	output_precision, output_max_field_width, print_empty_dimensions,
-	and split_long_rows.
-	* pr-output.cc: Move all of that here.
-	(symbols_of_pr_output): New function.
-	* variables.cc (install_builtin_variables): Call it.
-
-	* user-prefs.h, user-prefs.cc: Delete all stuff related to
-	page_screen_output, page_output_immediately, and pager_binary.
-	* pager.cc: Move all of that here.
-
-	* user-prefs.h (check_preference): Provide declaration.
-	* user-prefs.cc (check_preference): Make external.
-
-	* toplev.cc (Foctave_config_info): New function.
-
-	* oct-conf.h.in: New file
-	* Makefile.in (oct-conf.h): New target.
-	Add it to the appropriate lists.
-
-	* sighandlers.cc (sigchld_handler): Don't complain about wait
-	returning a negative value.
-
-	* file-io.cc (Fsscanf, Fsprintf): Pass true for second arg of
-	octave_stream constructor.
-
-	* oct-stream.h (octave_stream): New field, preserve.
-	(octave_stream::~octave_stream): If preserve, don't delete rep.
-
-	* pager.cc (symbols_of_pager): Set default for
-	page_output_immediately to 0.
-
-	* toplev.cc (do_system): Correctly handle return_output.
-	Append ends to output_buf before calling str().
-
-	* variables.cc: If M_PI and M_E are available, use them.
-
-	* mk-oct-links.in (links_dir): If old link exists, delete it first.
-
-Sun May 12 01:46:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (DISTFILES): List defaults.h.in and oct-gperf.h here.
-	(INCLUDES): Not here.
-	(install-inc): New target.
-	(uninstall): Also delete libraries and include files.
-	(install-inc): If linkdir is a directory, leave it alone.
-	(TERMLIBS, LIBPLPLOT, LIBDLFCN): Don't substitute here (now in
-	Makeconf).
-
-	* oct-stream.cc (octave_base_stream::do_read): Provide initial
-	value for tmp var.
-
-	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc: New tree-walking classes.
-	* Makefile.in: Add them to the appropriate lists.
-	* pt-fvc-base.h, pt-exp-base.cc, pt-fvc-base.cc, pt-mvr-base.cc,
-	pt-base.cc, pt-mvr.cc, pt-mat.h, pt-mat.cc, pt-fvc.cc,
-	pt-const.cc, pt-cmd.cc, pt-const.h, pt-misc.cc, pt-plot.cc,
-	pt-fcn.cc, pt-plot.h, pt-mvr.h, pt-mvr-base.h, pt-misc.h,
-	pt-fcn.h, pt-exp.h, pt-exp.cc, pt-exp-base.h, pt-fvc.h, pt-cmd.h,
-	pt-base.h:
-	Replace print_code stuff with accept() functions.
-	Add member access functions where necessary.
-	* help.cc (Ftype): Update to use new method of walking trees to
-	print text representation of user-defined functions.
-
-	* file-io.cc (Ffscanf): Update doc string.
-	(Fsscanf): Likewise.
-
-	* oct-stream.cc (octave_base_stream::do_read): Correctly set max_size.
-	Pad mval with zeros on final resize.
-	(octave_base_stream::do_scanf): Likewise.
-	(do_scanf_conv): Correctly resize mval.
-
-Sat May 11 05:14:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pager.cc (octave_pager_buf::sync): Correctly set bypass_pager.
-
-	* lex.l (<MATRIX>{SNLCMT}*\]{S}*): Match SNLCMT, not just SNL.
-
-Fri May  3 11:05:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc (OCT_VAL_REP::set_index): Complain if type can't be
-	indexed.
-
-	* input.cc (get_user_input): Don't increment input line number if
-	input is coming from eval string.
-
-	* user-prefs.cc: Allow empty strings for prompts.
-
-Thu May  2 10:50:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mvr.h (class tree_oct_obj): Declare values data member const.
-
-Sun Apr 28 03:16:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* user-prefs.h (user_preferences): New field,
-	`page_output_immediately'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(page_output_immediately): New function.
-	* pager.cc (syms_of_pager): Add DEFVAR.
-	(really_flush_to_pager): New file-scope variable.
-	(flush_octave_stdout): Set and restore it.
-	(octave_pager_buf::sync): Check it, user_pref.page_screen_output,
-	and user_pref.page_output_immediately to decide when to really
-	flush output.
-	(more_than_a_screenful): New function.  If paging but not
-	immediately, then check this too.
-
-	* pager.cc (default_pager): Move here from variables.cc.  If pager
-	is less and LESS is not in the environment, append useful flags.
-	(symbols_of_pager): New function.
-	* variables.cc (install_builtin_variables): Call it.
-	Delete pager-related DEFVARs.
-
-	* syswait.h (WIFSIGNALLED): Define if sys/wait.h doesn't.
-
-	* sighandlers.cc: Handle SIGCHLD.
-
-	* pager.cc, pager.h: Rewrite.
-	* pt-mvr.cc, pt-misc.cc, pt-fcn.cc, pt-const.cc, oct-hist.cc,
-	file-io.cc, help.cc, variables.cc, qpsol.cc, dassl.cc, quad.cc,
-	npsol.cc, lsode.cc, fsolve.cc, load-save.cc, dirfns.cc, octave.cc,
-	toplev.cc, error.cc, input.cc:
-	Write to octave_stdout and octave_diary instead of calling
-	maybe_page_output() or maybe_write_to_diary_file().
-
-	* oct-procbuf.h, oct-procbuf.cc: New files.
-	* procstream.h (class procstreambase): Use octave_procbuf instead
-	of procbuf from libg++, so we can get pids of subprocesses.
-
-Fri Apr 26 01:21:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc (OCT_VAL_REP::do_index): Call maybe_mutate() before
-	returning.
-
-	* mappers.h (struct Mapper_fcn): Delete.
-	(struct builtin_mapper_function): New field ch_mapper.
-	* pt-fvc.h (tree_builtin): Convert type of mapper_fcn from
-	Mapper_fcn to builtin_mapper_function.
-	* variables.cc (install_builtin_mapper): Likewise, for arg.
-	Simplify, since we don't have to do the copying ourselves now.
-	* pt-fvc.cc (apply_mapper_function): Handle ch_mapper case.
-	* defun.h (DEFUN_MAPPER): Likewise.
-	* mappers.cc (install_builtin_mappers): Likewise.
-	Add ctype is* functions here.
-
-Thu Apr 25 00:57:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* arith-ops.h, defun-int.h, defun.h, dynamic-ld.h, gripes.h,
-	load-save.h, oct-map.h, oct-obj.h, oct-stream.h, pt-cmd.h,
-	pt-const.h, pt-exp-base.h, pt-exp.h, pt-fcn.h, pt-fvc-base.h,
-	pt-fvc.h, pt-mat.h, pt-misc.h, pt-mvr-base.h, pt-mvr.h, pt-plot.h,
-	symtab.h, toplev.h, utils.h, variables.h, xpow.h, Array-tc.cc,
-	Map-i.cc, Map-tc.cc, SLList-tc.cc, arith-ops.cc, balance.cc,
-	bogus.cc, chol.cc, colloc.cc, dassl.cc, data.cc, det.cc,
-	dirfns.cc, eig.cc, error.cc, expm.cc, fft.cc, fft2.cc, file-io.cc,
-	filter.cc, find.cc, fsolve.cc, fsqp.cc, givens.cc, gripes.cc,
-	help.cc, hess.cc, ifft.cc, ifft2.cc, input.cc, inv.cc,
-	load-save.cc, log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc,
-	npsol.cc, oct-hist.cc, oct-obj.cc, oct-stream.cc, pager.cc,
-	pinv.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, pt-exp-base.cc,
-	pt-exp.cc, pt-fcn.cc, pt-fvc-base.cc, pt-fvc.cc, pt-mat.cc,
-	pt-misc.cc, pt-mvr-base.cc, pt-mvr.cc, pt-plot.cc, qpsol.cc,
-	qr.cc, quad.cc, qzval.cc, rand.cc, resource.cc, schur.cc, sort.cc,
-	strfns.cc, svd.cc, syl.cc, symtab.cc, syscalls.cc, sysdep.cc,
-	timefns.cc, toplev.cc, utils.cc, variables.cc, xpow.cc, parse.y:
-	Rename tree_constant -> octave_value.
-	Rename Octave_object -> octave_value_list.
-
-Wed Apr 24 22:15:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (Fsystem): Merge functionality of async_system and
-	sync_system.
-
-	* oct-fstrm.h, oct-iostrm.h, oct-prcstrm.h, oct-stdstrm.h,
-	oct-stream.h, oct-strstrm.h, oct-fstrm.cc, oct-iostrm.cc,
-	oct-prcstrm.cc, oct-stdstrm.cc, oct-stream.cc, oct-strstrm.cc,
-	Array-os.cc: New files.
-	* Makefile.in: Add them to the appropriate lists.
-	* file-io.cc: Rewrite to use new stream classes.
-
-Tue Apr 23 18:59:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* gripes.cc (gripe_not_supported): New function.
-
-	* toplev.cc (do_octave_atexit, Fatexit): New functions.
-	(octave_atexit_functions): New file-scope variable.
-	* octave.cc (main): Register do_octave_atexit with atexit.
-
-	* variables.cc (install_builtin_variables): Call
-	symbols_of_syscalls here.
-
-	* syscalls.h, syscalls.cc: New files.
-
-Mon Apr 22 21:14:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* syscalls.cc: New file.
-	(Flstat, Fmkfifo, Fstat, Funlink, Fwait, Fwaitpid): Move here.
-	* file-io.cc: From here.
-	* Makefile.in (SOURCES): Add syscalls.cc to the list.
-
-Wed Apr 17 18:34:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-info.h, file-info.cc: Delete files.
-	* Makefile.in: Remove from lists.
-
-	* toplev.cc (Fquit): Accept exit status argument.
-	(Fflops): Delete (now a function file).
-
-Thu Apr 11 16:20:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l: Recognize `.'.
-	Update current_input_column even for unrecognized characters.
-	Return LEXICAL_ERROR for unrecognized characters.
-
-Mon Apr  8 19:59:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (install_builtin_variables): Split into several
-	functions to make compiling with g++ go faster and consume less
-	memory.
-
-Sun Apr  7 16:25:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (Fsave): Print usage if i == argc.
-	(Fload): Likewise.
-
-Sat Apr  6 21:26:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (clean): Also delete pic/*.o
-	(maintainer-clean, distclean): Also remove stamp-picdir,
-	stamp-tinst, stamp-interp, and pic directory.
-	(stamp-prereq): New target.
-
-Wed Apr  3 11:19:30 1996  Rick Niles  <niles@axp745.gsfc.nasa.gov>
-
-	* resource.cc: Don't make including sys/resource.h and sys/times.h
-	mutually exclusive.
-
-Fri Mar 29 13:43:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (distclean): Delete so_locations, which is created
-	on DEC Alpha systems.
-
-Thu Mar 28 02:53:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.h (undo_string_escape): Provide extern declaration here.
-
-	* lex.l (NL): Allow \r\n as new line character.
-	(.): Complain if invalid character is found on input
-
-Fri Mar 22 03:47:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* resource.cc (getrusage): If getrusage is missing, try using
-	times to at least fill in the cpu time values.  If neither one is
-	available, return 0 for cpu times instead of NaN.
-
-	* sighandlers.cc (octave_signal_mask): New file-scope variable.
-	(octave_save_signal_mask, octave_restore_signal_mask): New functions.
-	* toplev.cc (main_loop): Use them.
-
-Wed Mar 20 01:21:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (get_fcn_file_names (const string&, int)): Resize
-	retval to value of k, not i.
-	(get_fcn_file_names (int)): In loop for copying names to retval,
-	don't increment j twice.
-
-Mon Mar 18 22:27:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in ($(MAKEDEPS)): Depend on oct-gperf.h.
-
-Fri Mar  1 18:15:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* fsolve.cc (fsolve_options): Delete unused argument nargout.
-
-	* filter.cc: Use MArray instead of Array so that automatic
-	conversions will work again.
-
-Tue Feb 27 04:49:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (looks_like_octave_copyright): Make the strings
-	that we are trying to match both have length 29.
-
-	* Makefile.in (install-bin): Use $(INSTALL_PROGRAM), not $(INSTALL).
-
-	* load-save.cc (read_mat_binary_data): Make sure name is
-	NUL terminated.
-
-Mon Feb 26 18:18:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (whos): Make argv from tmp_args, not args.
-
-	* defun.h (DEFCONSTX): Don't stringify name.
-
-Sat Feb 24 01:12:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-oct): Make mk-oct-links executable.
-	* mk-oct-links.in (links_dir): Update to match new format of
-	DEFUN_DLD_BUILTIN macro.  Use LN_S, not just LN.
-	(links_dir):
-
-	* pr-output.cc (octave_print_internal): New arg, extra_indent, for
-	versions of this function that take matrices and ranges.
-	* pt-const.cc (TC_REP::print (ostream&)): Fix printing of structures.
-	Pass struct_indent to octave_print_internal as appropriate.
-	(print_with_name (ostream&, const string&, bool)): Handle spacing
-	around `=' differently for structures.
-
-Fri Feb 23 04:51:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* token.cc (token (double, const string&, int, int)): Store orig_text.
-
-Tue Feb 20 20:36:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fclear): Fix off-by-one error.
-
-Sat Feb 17 16:54:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-hist.cc (default_history_file): Append "/.octave_hist" to
-	return value, not to home_directory.
-
-Fri Feb 16 18:10:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc: (NINT, D_NINT): Move to liboctave.
-
-	* sysdep.cc (octave_ieee_init): Move to liboctave.
-
-	* procstream.h, procstream.cc: Rewrite.
-
-	* pager.cc (cleanup_oprocstream): New static function.
-	* toplev.cc (cleanup_iprocstream): Likewise.
-	* dirfns.cc (cleanup_iprocstream): Likewise.
-
-	* unwind-prot.cc (matrix_cleanup, complex_matrix_cleanup): Delete.
-
-Thu Feb 15 22:03:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-obj.cc, oct-obj.h: Move most code to the header.
-
-	* oct-obj.cc (make_argv, all_strings): New member functions.
-	* utils.cc: Moved from here.
-
-	* load-save.cc: Move byte swapping stuff to liboctave.
-	Move float format conversion stuff to liboctave.
-	(all_parts_int, too_large_for_float): Move to liboctave.
-
-	* symtab.cc (valid_identifier): Move here.
-	* load-save.cc: From here.
-
-	* sysdep.cc: Move floating-point format stuff to liboctave.
-	* pr-output.cc: Include float-fmt.h here.
-
-Wed Feb 14 01:49:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun.h, defun-dld.h, defun-int.h: Simplify interface for DEFUN,
-	DEFUN_DLD, DEFVAR, and DEFCONST macros.  Change all uses.
-
-	* qzval.cc: Move guts to liboctave.
-
-Tue Feb 13 10:28:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (parse_fcn_file): Also avoid saving history if
-	input is from a script file.
-
-	* help.cc (Ftype): Call unwind_protect_str for user_pref.ps4.
-
-	* npsol.cc (nonlinear_constraints_ok): Now static.
-
-	* npsol.cc (linear_constraints_ok): Now static.
-	* qpsol.cc (linear_constraints_ok): Duplicate here.
-
-	* data.cc (Flinspace): Don't print usage message if nargin == 2.
-
-Sun Feb 11 14:20:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-oct-links.in: Rename from mk-oct-links.
-	(LN_S): Use this variable instead of ln.
-	Set -e option for shell.
-	Exit with status of last command.
-	Print message when making link.
-	* Makefile.in (DISTFILES): Add mk-oct-links.in to the list.
-	(install-oct): Run ./mk-oct-links, not $(srcdir)/mk-oct-links.
-
-	* variables.cc (install_builtin_variables): Restore accidentally
-	deleted DEFVAR for save_precision.
-
-Fri Feb  9 11:24:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Delete statdefs.h from the list (it's
-	now in the liboctave directory).
-
-	* toplev.cc (toplevel): Define here.
-	* octave.cc (toplevel): Not here.
-
-	* toplev.cc (main_loop): New function.
-	* octave.cc (main): Call it here instead of doing main loop
-	actions here.
-
-	* user-prefs.cc (do_fortran_indexing): Also set liboctave_dfi_flag.
-	(prefer_column_vectors): Also set liboctave_pcv_flag.
-	(prefer_zero_one_indexing): Also set liboctave_pzo_flag.
-	(resize_on_range_error): Also set liboctave_rre_flag.
-
-	* variables.cc (restore_command_history): New function.
-	(parse_fcn_file): Use it here in unwind_protect.
-
-	* dynamic-ld.cc (load_octave_oct_file): Reverse sense of test.
-	(load_octave_builtin): Delete.
-	(mangle_octave_oct_file_name): Delete.
-
-	* pt-fvc.cc (tree_builtin::eval): Don't try to dynamically load
-	functions here.
-
-	* pr-output.cc (set_format_style): Decrement argc for first arg too.
-
-	* input.cc (gnu_readline): If readline returns an empty string,
-	convert it to a string containing a single newline character.
-
-	* octave.cc (octave_argv): Now a static string_vector.
-	(intern_argv): Use string_vector ops, not charMatrix ops.
-	* toplev.cc (octave_argv): Delete definition.
-	* toplev.h (octave_argv): Delete declaration.
-
-Thu Feb  8 10:58:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (conf-dist): New target.
-
-Tue Feb  6 10:59:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (Ftype): Correctly handle structure names.
-
-Sun Feb  4 02:02:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* qpsol.cc (Fqpsol): Call set_options(), not copy() to set
-	options for QPSOL objects.
-
-	* npsol.cc (Fnpsol): Call set_options(), not copy() to set
-	options for NPSOL objects.
-
-	* quad.cc (Fquad): Call set_options(), not copy() to set
-	options for Quad objects.
-
-	* dynamic-ld.cc (load_octave_builtin): Don't call destructor on string.
-	(load_octave_oct_file): Likewise.
-	Check oct_file.empty(), not just oct_file.
-
-	* fsolve.cc (Ffsolve): Call set_options(), not copy() to set
-	options for NLEqn object.
-
-	* variables.cc (do_who): Properly set match patterns from argument
-	vector for call to maybe_list.
-
-Sat Feb  3 03:29:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (long_opts): Properly set second field using new enum.
-
-	* lsode.cc: Change ODE to LSODE where appropriate.
-	Use LSODE_options, not ODE_options.
-
-	* dassl.cc: Change DAE to DASSL where appropriate.
-	Use DASSL_options, not ODE_options.
-
-Fri Feb  2 01:41:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc: Include unistd.h.
-
-	* parse.y, lex.l: Handle matrix lists without ml or mlnm stacks.
-	* pt-mat.h, pt-mat.cc (tree_matrix):
-	Rewrite to use SLList instead of home brew list.
-	* SLList-tm.cc: New file
-	* Makefile.in: Add it to the lists.
-	* SLStack-tm.cc: Delete.
-	* Makefile.in: Delete it from the lists.
-
-	* All pt-* files: Use bool instead of int where appropriate.
-
-	* Makefile.in (DEP_SOURCES_3): Add octave.cc.
-
-	* pt-const.h (class tree_constant::tree_constant_rep): Make
-	everything in this class public, then it doesn't need to declare
-	the tree_constant class as a friend.
-
-Thu Feb  1 01:42:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.h, lex.l, parse.h, parse.y (class lexical_feedback): New
-	class for lexer flags.  Replace lots of global vars with members
-	of this class.
-
-	* lex.l (class brace_paren_nesting_level): New class to replace
-	nesting_level stack.  nesting_level is now an instance of this
-	class.
-
-	* lex.l (yum_yum): New typedef.
-	(ATE_NOTHING): New global var.
-	(ATE_SPACE_OR_TAB, ATE_NEWLINE): Don't #define these, declare them
-	as const yum_yum.
-	(eat_whitespace, eat_continuation): Return yum_yum, not int.
-
-	* lex.l (SHORT_CIRCUIT_LOGICALS): Delete.  Always do this for ||
-	and && tokens.
-	(yy_flex_alloc, yy_flex_realloc, yy_flex_free, next_char_is_space):
-	Delete.
-
-	* toplev.cc (verbose_flag): Delete definition.
-	* toplev.h (verbose_flag): And declaration.
-	* octave.cc (verbose_flag): Now static.
-
-	* lex.l (lookup_identifier): Arg is now string, not char*.
-	(handle_identifier, is_plot_keyword, is_keyword): Likewise.
-	(strip_trailing_whitespace): Return value is now string, not char*.
-	(plot_style_token): Likewise, for both arg and return value.
-
-	* input.cc (octave_gets_line): Delete.
-	(gnu_readline, octave_gets, octave_read):
-	Properly handle input when using_readline is either true or false.
-	Don't limit length of input lines to flex buffer size.
-	(get_user_input): New function.
-
-	* octave.cc (main): Handle --no-line-editing.
-	* toplev.h (using_readline): Provide external declaration here.
-	* input.h: Not here.
-	* toplev.cc (using_readline): Define here.
-	* input.cc: Not here.
-
-	* toplev.h (no_line_editing): Delete declaration.
-	* input.cc (no_line_editing): Delete definition.
-
-Wed Jan 31 05:28:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* input.cc (DEFAULT_ARRAY_SIZE, PROMPT_GROWTH): Delete definitions
-	of unused macros.
-	(read_octal): Now static.
-
-	* givens.cc (Fgivens): Use new functions from matrix classes
-	instead of calling Fortran functions directly.
-	* syl.cc (Fsyl): Likewise.
-	* expm.cc (Fexpm): Likewise.
-
-Mon Jan 29 00:00:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc: Use new prog_args class instead of calling getopt
-	directly.
-
-	* getopt.h, getopt.c, getopt1.c: Move to liboctave directory.
-	* Makefile: Remove from lists.
-
-	* utils.cc (strconcat, read_until, discard_until): Delete.
-
-	* pager.cc (terminal_columns, terminal_rows): Move to
-	liboctave/oct-term.cc.
-	* pager.cc, pr-output.cc: Include oct-term.h.
-
-	* utils.cc (list_in_columns): Moved to liboctave/str-vec.cc.
-	Change all callers to use new member function syntax.
-
-	* dirfns.cc (absolute_program): Now static.
-	(absolute_pathname): Delete.
-
-	* pt-plot.cc (save_in_tmp_file): Call oct_tempnam, not
-	octave_tmp_file_name.  Include file-ops.h.
-	* file-io.cc (do_scanf, Foctave_tmp_file_name): Likewise.
-	* oct-hist.cc (mk_tmp_hist_file): Likewise.
-
-	* file-io.cc (Foctave_tmp_file_name): Move here.
-	* utils.cc: From here.
-
-	* utils.cc (octave_tmp_file_name): Move to liboctave/file-ops.cc.
-
-	* tempname.c, tempnam.c: Move to liboctave directory.
-	* Makefile.in: Remove from lists.
-
-Sun Jan 28 19:00:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xdiv.cc (all xdiv functions): Return Matrix or ComplexMatrix,
-	not tree_constant.
-
-	* oct-hist.h, oct-hist.cc, toplev.cc, octave.cc, input.cc,
-	file-io.cc, user-prefs.cc: Rewrite to use new command_history
-	class instead of calling readline history functions directly.
-
-	* utils.cc (get_fcn_file_names): Delete num arg.
-
-Thu Jan 25 20:33:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (matches_patterns): Use new glob_match class
-	instead of calling fnmatch directly.
-	* symtab.cc (matches_patterns, symbol_table::glob): Likewise.
-	* variables.cc (Fclear): Likewise.
-
-Wed Jan 24 02:05:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* fnmatch.h fnmatch.c: Delete.
-	* Makefile.in: Add glob stuff in the appropriate places, remove
-	fnmatch.h and fnmatch.c from lists.
-
-	* octave.cc (program_invocation_name, program_invocation_short_name):
-	Maybe declare.
-	(initialize_globals): Maybe initialize them.
-
-	* octave.cc (initialize_pathsearch): Define here, not in pathsearch.cc.
-	* pathsearch.h, pathsearch.cc: Remove files.
-	* Makefile.in: Remove them from the lists.
-
-	* help.cc (simple_help): Ignore directories that don't have any .m
-	or .oct files.
-
-	* utils.cc (search_path_for_file): Use new dir_path class instead
-	of calling kpathsea routines directly.
-	(get_fcn_file_names): Likewise.
-	* help.cc (simple_help): Likewise.
-
-	* dirfns.cc (make_absolute): Don't convert empty arg to "./".
-
-	* sysdir.h: Move to liboctave directory.
-	* Makefile.in: Remove from lists.
-
-	* dirfns.cc (Freaddir): Use new dir_entry class instead of calling
-	readdir directly.  Include dir-ops.h, not sysdir.h.
-	* utils.cc (get_fcn_file_names): Likewise.  Delete unnecessary
-	first arg, change all callers.
-
-Tue Jan 23 00:43:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h,
-	file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c:
-	Files moved to liboctave directory.
-	* Makefile.in: Remove them from lists.  Move appropriate rules.
-
-	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
-	Files moved to liboctave directory.
-	* Makefile.in: Remove them from lists.
-	* missing-math.h: Deleted.
-	* pr-output.cc, sysdep.cc, minmax.cc, mappers.cc, expm.cc,
-	arith-ops.cc: Include oct-math.h, not cmath or missing-math.h.
-
-Mon Jan 22 19:33:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (Fexist): Use file_stat instead of calling stat
-	directly.  Include file-ops.h, not statdefs.h.
-	* octave.cc (execute_startup_files): Likewise.
-	* file-io.cc (file_io_get_file, fopen_internal, popen_internal, Fstat):
-	Likewise.
-	(mk_stat_map): Likewise, use file_stat object, not struct stat.
-	* oct-hist.cc (do_history): Likewise.
-
-	* file-ops.h, file-stat.cc: New files.
-	* Makefile.in: Include them.
-	* dirfns.cc: Delete is_newer.  Don't include statdefs.h.
-	* toplev.cc: Don't include statdefs.h.
-
-Sun Jan 21 22:48:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-mvr.h, pt-fvc.h, Map.cc, Map.h, dynamic-ld.h,
-	pt-fvc-base.cc, SLList-str.cc, pt-fcn.h, pt-fvc-base.h,
-	SLStack-str.cc, pt-mvr.cc, pt-exp.cc, token.h, token.cc,
-	user-prefs.h, pt-base.cc, user-prefs.cc, dirfns.h, sysdep.h,
-	sysdep.cc, input.h, parse.h, lex.l, parse.y, defun.h, mappers.h,
-	pt-fvc.cc, pt-plot.h, load-save.h, octave.cc, defun-int.h, help.h,
-	variables.h, oct-map.h, oct-obj.h, oct-obj.cc, pt-const.cc,
-	oct-map.cc, input.cc, symtab.h, pt-const.h, pathsearch.cc,
-	pr-output.h, pr-output.cc, toplev.h, timefns.cc, schur.cc,
-	pt-plot.cc, pager.cc, load-save.cc, dynamic-ld.cc, dirfns.cc,
-	data.cc, file-info.h, file-info.cc, colloc.cc, utils.h, qpsol.cc,
-	quad.cc, npsol.cc, lsode.cc, fsolve.cc, dassl.cc, file-io.cc,
-	help.cc, utils.cc, oct-hist.h, oct-hist.cc, symtab.cc, toplev.cc,
-	pt-fcn.cc, unwind-prot.h, unwind-prot.cc, variables.cc:
-	Most functions in these files that deal with character strings
-	have been converted to use the string class insatead of char*.  If
-	you want more detailed information, you'll have to figure it out
-	for yourself.
-
-Sat Jan 20 18:19:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc [WITH_DL]: Define RTLD_LAZY to be 1 if it is not
-	already defined.
-
-Sun Jan 14 07:48:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pt-const.cc (print_as_scalar, print_as_structure):
-	Make these member functions.
-	(tree_constant::print_with_name): New function, moved here from
-	old tree-expr.cc file (where it was called print_constant) and
-	converted to member function.  Change all callers.
-
-Fri Jan 12 01:54:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (initialize_globals): Don't do kpathsearch stuff here.
-	(main): Call initialize_pathsearch() here.
-
-	* pathsearch.cc: New file.
-	* Makefile.in (SOURCES): Add it to the list
-
-	* oct-hist.h: Rename from octave-hist.h.
-	* oct-hist.cc: Rename from octave-hist.cc.
-	* Makefile.in, parse.y, other .cc files: Cope with it.
-
-	* dynamic-ld.cc: Avoid warnings if !WITH_DYNAMIC_LINKING.
-
-	* load-save.cc (save_ascii_data): string::data() returns const char*.
-
-	* utils.h: Don't provide forward declaration for tree_constant.
-
-	* oct-obj.h: Don't include mx-base.h or provide forward
-	declarations for Matrix and Range types.
-
-	* file-info.h: Don't include oct-obj.h.  Do include cstdio.
-
-	* symtab.h: Don't provide forward declaration for ostream.
-
-	* variables.h: Don't provide forward declarations for istream,
-	ostrstream, tree, builtin_function, or builtin_variable objects.
-
-	* balance.cc, chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc,
-	expm.cc, fft.cc, fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc,
-	givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, log.cc, lpsolve.cc,
-	lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, qpsol.cc, qr.cc,
-	quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, svd.cc, syl.cc:
-	Clean up #include statements.
-
-	* pt-const.h: Don't include oct-obj.h or tree-base.h.
-	Provide forward declaration of Octave_object here.
-	* pt-const.cc: Include oct-obj.h here.
-
-	* pt-mat.h, pt-fcn.h, pt-const.h, pt-misc.h, pt-plot.h,
-	pt-exp-base.h, pt-cmd.h, pt-fvc-base.h, pt-mvr-base.h, pt-exp.h,
-	pt-mvr.h, pt-fvc.h: New files, split from tree-expr.h and/or
-	renamed from other tree-*.h files (pt == parse tree).
-	* pt-base.cc, pt-const.cc, pt-exp.cc, pt-fvc-base.cc, pt-mat.cc,
-	pt-mvr-base.cc, pt-plot.cc, pt-cmd.cc, pt-exp-base.cc, pt-fcn.cc,
-	pt-fvc.cc, pt-misc.cc, pt-mvr.cc: Likewse, split from tree-expr.cc
-	and/or other tree-*.cc files.
-	* Makefile.in: Include them in the appropriate lists.
-	* All: Fix #include statements to match.
-
-	* Array-tc.cc: Don't instantiate ArrayRep objects.
-
-Thu Jan 11 02:35:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (tree_constant::eval (int, int, const Octave_object&)):
-	Define here instead of in tree-const.h.
-
-Wed Jan 10 04:34:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.h (tree_constant::tree_constant (const string&):
-	* tree-const.cc (TC_REP::tree_constant_rep (const string&)):
-	New constructor.
-
-Tue Jan  9 04:10:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* rand.cc (do_rand): Use string_value() result directly instead of
-	c_str() conversion.
-	* balance.cc (Fbalance): Likewise.
-
-	* tree-const.cc (TC_REP::string_value()):
-	Handle new definition of charMatrix::row_as_string()
-	* load-save.cc (save_ascii_data): Ditto.
-	(save_binary_data): Ditto.
-	* pr-output.cc (octave_print_internal): Ditto.
-
-	* balance.cc (Fbalance):
-	Handle new definition of TC_REP::string_value()
-	* colloc.cc (Fcolloc): Ditto.
-	* dassl.cc (Fdassl_options): Ditto.
-	* data.cc (Fstruct_contains): Ditto.
-	* dirfns.cc (Fmkdir): Ditto.
-	(Freaddir): Ditto.
-	(Frmdir): Ditto.
-	(Frename): Ditto.
-	* error.cc (handle_message): Ditto.
-	* file-io.cc (process_printf_format): Ditto.
-	(fopen_internal): Ditto.
-	(file_io_get_file): Ditto.
-	(return_valid_file): Ditto.
-	(Flstat): Ditto.
-	(Fstat): Ditto.
-	(unlink_internal): Ditto.
-	(mkfifo_internal): Ditto.
-	(async_system_internal): Ditto.
-	(sync_system_internal): Ditto.
-	(execute_internal): Ditto.
-	(popen_internal): Ditto.
-	(fwrite_internal): Ditto.
-	(fread_internal): Ditto.
-	(do_printf): Ditto.
-	(do_scanf): Ditto.
-	* input.cc (get_user_input): Ditto.
-	* lsode.cc (Flsode_options): Ditto.
-	* npsol.cc (Fnpsol_options):Ditto.
-	* qpsol.cc (Fqpsol_options):Ditto.
-	* quad.cc (Fquad_options): Ditto.
-	* rand.cc (do_rand): Ditto.
-	* schur.cc (Fschur): Ditto.
-	* sysdep.cc (Fputenv): Ditto.
-	(Fgetenv): Ditto.
-	* timefns.cc (extract_tm): Ditto.
-	(Fstrftime): Ditto.
-	* toplev.cc (Fsource): Ditto.
-	(eval_string): Ditto.
-	(Fsystem): Ditto.
-	* tree-plot.cc (subplot::handle_plot_data): Ditto.
-	* variables.cc (is_valid_function): Ditto.
-	(Fis_global): Ditto.
-	(Fexist): Ditto.
-	(builtin_string_variable): Ditto.
-	* utils.cc (make_argv): Ditto.
-	(Fundo_string_escapes): Ditto.
-
-Mon Jan  8 01:54:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-bin): Use $(LN_S), not just ln.
-
-	* variables.cc (octave_fcn_file_dir): New function.
-	* tree-expr.cc (mark_as_system_fcn_file): Use it instead of
-	octave_lib_dir.
-
-	* Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs.
-
-	* pr-output.cc (set_format (const ComplexMatrix&, int&, int&)):
-	Unconditionally call all_elements_are_int_or_inf_or_nan().
-	(set_format (const Matrix&, int&, int&)): Likewise.
-
-Sun Jan  7 19:12:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc (oct_putenv): New function.
-	* sysdep.cc (Fputenv): Use oct_putenv.
-	* octave.cc (initialize_globals): Likewise.
-
-Sat Jan  6 23:22:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc (Fputenv): New function.
-
-	* input.cc (initialize_readline): Call rl_initialize() here.
-
-	* octave.cc: Conditionally define atexit to be on_exit here.
-	* toplev.cc: Not here.
-
-Fri Jan  5 14:01:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc: Don't include <pwd.h> here.
-
-	* octave-hist.cc, tree-plot.cc, utils.cc: Do include "sysdep.h".
-
-	* dirfns.cc, file-io.cc, help.cc, load-save.cc, octave.cc,
-	octave-hist.cc, tree-plot.cc, utils.cc:
-	Don't include <readline/tilde.h>.
-	* sysdep.h: Do include it here.
-
-	* tree-const.cc (TC_REP::assign (tree_constant&, Octave_object&)):
- 	If we have a matrix or range, call maybe_mutate before returning.
-
-Sun Dec 31 15:56:18 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* npsol.cc (Fnpsol): Improve doc string.
-	* qpsol.cc (Fqpsol): Likewise.
-
-Fri Dec 29 21:46:58 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* defun-dld.h: Make work again for OCTAVE_LITE and
-	WITH_DYNAMIC_LINKING.
-
-	* Makefile.in: Handle shared libraries.
-
-Wed Dec 27 17:47:51 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mk-oct-links: New file.
-	* Makefile.in (install-oct): Use it.
-	* f-*.cc: Rename to *.cc.
-
-	* Makefile.in (install-bin, install-lib, install-oct): New targets.
-	(install): Use them.
-
-Tue Dec 26 21:38:22 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* toplev.cc (reading_startup_message_printed): Move initialization
-	here and make extern.
-
-	* dirfns.cc, dynamic-ld.cc, help.cc, input.cc, octave-hist.cc,
-	octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc,
-	utils.cc, variables.cc, parse.y, lex.l: Include toplev.h instead
-	of octave.h.
-	* toplev.h: rename from octave.h.
-
-	* octave.cc (main): Delete unused variable saved_sigint_handler.
-
-Sun Dec 24 00:26:54 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.cc: Massive re-write to handle dlopen/dlsym and
-	shl_load/shl_findsym methods of dynamic linking.
-
-	* utils.cc (get_fcn_file_names): Check for .oct files if
-	WITH_DYNAMIC_LINKING, not WITH_DLD.
-
-	* Makefile.in (LIB, TERMLIBS): Substitute values.
-	(octave): Add $(LIBS) to link command and use $(TERMLIBS) instead
-	of -ltermcap.
-
-Sat Dec 23 21:56:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dynamic-ld.h, dynamic-ld.cc: Remove old unused code.
-
-	* variables.cc (load_fcn_from_file):
-	Always call load_octave_oct_file.
-
-Wed Dec 20 00:56:57 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pr-output.cc (set_real_format, set_real_matrix_format,
-	set_complex_format, set_complex_matrix_format, set_range_format):
-	New functions.  Ensure the count of the digits to the right of the
-	decimal point is positive.
-
-	* xpow.cc (xpow (const Matrix&, double)): Print warning if
-	inverting singular matrix (but return value anyway, in the name of
-	compatibility).
-	xpow (const ComplexMatrix&, double)): Likewise.
-
-	* f-inv.cc (Finv): If matrix is singular, return result anyway, in
-	the name of compatibility.
-
-	* symtab.cc (symbol_record::pop_context):
-	Don't assert (! context.empty ()).
-
-	* tree-const.cc (TC_REP::char_matrix_value): Don't complain about
-	type conversion if object is an empty matrix.f
-	(TC_REP::assign): If rhs is a string, don't convert to numeric
-	type if rhs is empty or "".
-	Only widen if rhs is not empty.
-	Don't return 0x0 char_matrix if it is supposed to be a string.
-
-	* arith-ops.h, mappers.h, pr-output.h, xdiv.h, xpow.h: Include
-	oct-cmplx.h in place of forward declaration for class Complex.
-
-	* pr-output.cc, mappers.cc, arith-ops.cc, xdiv.cc, xpow.cc,
-	utils.cc: Include "oct-cmplx.h" instead of <Complex.h>.
-
-	* octave.cc (initialize_error_handlers): Don't call
-	set_Complex_error_handler().
-	(octave_Complex_error_handler): Delete unused function.
-	Delete declaration for set_Complex_error_handler().
-
-	* sighandlers.cc (catch_interrupts): New function.
-	* octave.cc (main): Call catch_interrupts() instead of calling
-	octave_set_signal_handler() directly.
-
-Tue Dec 19 03:22:37 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (looks_like_octave_copyright): Also recognize the
-	string " This program is free software".
-
-Thu Dec 14 01:54:06 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave-hist.cc (clean_up_history): Only write history file if
-	user_pref.saving_history.
-
-	* octave-hist.cc (initialize_history, clean_up_history,
-	do_history): Perform tilde expansion on history file name.
-
-	* octave.cc (main): Check `defined (HAVE_ON_EXIT)' not just
-	`(HAVE_ON_EXIT)'.
-
-	* user-prefs.h (user_preferences): New fields, `history_file' and
-	`history_size'.
-	* user-prefs.cc (init_user_prefs): Initialize them.
-	(sv_history_file, history_size): New functions.
-	* variables.cc (install_builtin_variables): Initialize user-level
-	variables history_file and history_size.
-	* octave-hist.cc (default_history_size): Now extern.
-	(default_history_file): Likewise.
-	(octave_hist_size, octave_hist_file): Use user preference
-	variables instead.
-	* octave.cc (main): Call initialize_history after
-	execute_startup_files.
-
-Fri Dec  8 15:53:59 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* user-prefs.h (user_preferences): New field, `saving_history'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(saving_history): New function.
-	* variables.cc (install_builtin_variables): Initialize user-level
-	variable saving_history.
-	* octave.cc (parse_and_execute): Don't reset value of
-	saving_history here.
-	(main) Use user_pref.saving_history instead of saving_history.
-	* variables.cc (parse_fcn_file): Likewise.
-	* octave-hist.cc (maybe_save_history): Likewise.
-	Don't save history if input_from_startup_file.
-
-Mon Nov 27 23:05:52 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* resource.cc: Include systime.h before <sys/resource.h>.
-
-Tue Nov 14 14:09:40 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* error.cc: Include cstring.
-
-	* tree-expr.cc (print_code): Decrement indent level after printing
-	function body.
-
-	* Makefile.in: Remove references to oct-str.cc, oct-str.h, and
-	Array-string.cc.
-
-	* tree-const.h: Don't include oct-str.h.
-
-Mon Nov  6 11:16:49 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* parse.y (make_plot_command, finish_colon_expression,
-	make_unwind_protect, make_try_command, make_for_command,
-	make_break_command, make_continue_command, make_return_command,
-	start_if_command, finish_if_command, make_elseif_clause,
-	make_simple_assignment, make_multi_val_ret, start_function_def,
-	frob_function_def, finish_function_def, start_matrix,
-	finish_matrix):  New functions.  Use them in the grammar to clean
-	things up a bit.  Possibly convert matrix lists, colon
-	expressions, binary expressions, and unary expressions to constant
-	values.
-	(tree_matrix_type): Delete.
-	(simple_expr1): Handle all expression stuff here, including
-	assignments.
-	(simple_expr): Just check to see that simple_expr1 produced
-	something useful.
-
-	* tree-plot.cc, tree-plot.h: Move most simple constructors to the
-	header file.
-
-	* tree-expr.h (tree_expression::is_constant): Move virtual
-	function definition here.
-	(tree_fvc::is_constant): From here.
-	(tree_expression::is_matrix_constant): New virtual function.
-	(tree_expression::is_range_constant): New virtual function.
-	* tree-expr.cc (tree_matrix::is_matrix_constant): New function.
-	* tree-expr.cc (tree_colon_expression::is_range_constant): New
-	function.
-
-Fri Nov  3 03:42:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.cc, utils.h (jump_to_top_level): Declare as extern "C".
-
-	* tree-const.h (tree_constant::eval ()): Only mutate if printing.
-
-	* tree-const.cc (TC_REP::tree_constant_rep (const Complex&),
-	TC_REP::tree_constant_rep (const ComplexMatrix&),
-	TC_REP::tree_constant_rep (const ComplexDiagMatrix&),
-	TC_REP::tree_constant_rep (const ComplexRowVector&),
-	TC_REP::tree_constant_rep (const ComplexColumnVector&)):
-	Also check to see if we can convert to scalar_constant, not just
-	complex_scalar_constant.
-
-	* user-prefs.h (user_preferences): New field, `exec_path'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(sv_exec_path): New function.
-	* variables.cc (install_builtin_variables): Add DEFUN for EXEC_PATH.
-	(default_exec_path): New function.
-	* octave.cc (exec_path): New global variable.
-	Don't set and putenv() exec path here.
-	(long_opts): Add --exec-path option.
-	(main): Handle it.
-	(initialize_globals): Set default value here.
-
-	* user-prefs.h (user_preferences): New field, `info_prog'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(sv_info_prog): New function.
-	* variables.cc (install_builtin_variables): Add DEFUN for INFO_PROGRAM.
-	(default_info_prog): New function.
-	* octave.cc (info_prog): New global variable.
-	(initialize_globals): Set default value here.
-	(long_opts): Add --info-prog option.
-	(main): Handle it.
-	* help.cc (try_info): Use user_pref.info_prog here.
-
-	* octave.cc (initialize_globals): Put arch_dir and bin_dir ahead
-	of shell_path when resetting PATH.
-
-Thu Nov  2 04:30:13 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-rand.cc (Frandn): New function.
-	(do_initialization): New function.
-	(do_rand): New function for doing the real work.
-	(Frand): Use it.
-
-	* octave.cc (parse_and_execute): New arg, warn_for.  If given,
-	print message if file cannot be opened.
-	Set curr_fcn_file_full_name here.
-	(Fsource): Pass extra arg to parse_and_execute to get warning message.
-
-	* tree-const.h: Handle line and column info for double, Complex,
-	and char* constants.
-
-	* parse.y (maybe_convert_to_ans_assign): Pass along line and
-	column info from expression.
-
-	* parse.y (make_constant): New function.
-	(simple_expr1, word_list): Use it.
-
-	* input.cc, input.h (curr_fcn_file_full_name): New global.
-	* variables.cc (load_fcn_from_file): Set it here.
-	* parse.y (func_def2, yyerror, maybe_warn_missing_semi): Use it.
-	(func_def2): If !reading_fcn_file, don't call strcmp if
-	curr_fcn_file_name is 0.
-
-	* octave.cc (Fsource): New function.
-	(parse_and_execute): Declare file name const char *.
-	* input.cc (get_input_from_file): Likewise.
-
-Wed Nov  1 13:54:34 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-filter.cc: New file.
-	* Makefile.in (DLD_SRC): Add it to the list.
-
-	* sysdep.h (gethostname): Change declaration to match definition
-	in sysdep.cc.
-
-	* resource.cc: Include sysdep.h here, for octave_NaN.
-
-Tue Oct 31 02:12:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (TC_REP::assign): After converting rhs to a
-	numeric type, use the converted value, not the original.
-
-	* dirfns.cc (Fpwd): If nargout == 0, print the directory name
-	instead of returning it.
-
-	* pager.cc (maybe_page_output): Call maybe_write_to_diary_file here.
-	(flush_output_to_pager): Not here.
-
-Mon Oct 30 23:39:43 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (install_builtin_commands): Add DEFVAR for
-	echo_executing_commands.
-
-	* octave-hist.cc (do_edit_history): Handle new echo stuff.
-	* variables.cc (parse_fcn_file): Likewise.
-	* octave.cc (parse_and_execute): Likewise.
-	(main): Likewise.
-	* input.cc (do_input_echo):
-	(Fecho): New function.
-
-	* tree-expr.cc (tree_function::print_code_function_header,
-	tree_function::print_code_function_trailer): New functions.
-	(tree_function::print_code): Use them.
-	(tree_function::eval): Likewise, if echoing commands.
-	* tree-misc.cc (tree_statement::maybe_echo_code): New function.
-
-	* user-prefs.h (user_preferences): New field, echo_executing_commands.
-	(echo_state): New enum, for various types of echoing we do.
-	* user-prefs.cc (echo_executing_commands): New function.
-
-	* tree-base.cc (print_code_indent): Print PS4 as line prefix.
-	* help.cc (Ftype): Add unwind_protect for ps4 and set it to ""
-	before printing code.
-
-	* tree-misc.h (tree_statement_list): New field, function_body.
-	(tree_statement_list::mark_as_function_body): New function.
-	* parse.y (func_def3): Mark function bodies.
-
-	* pr-output.cc (octave_print_internal): Undo string escapes when
-	printing charMatrix as strings.
-
-Sat Oct 28 17:38:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* utils.h (undo_string_escapes): Add missing const in declaration.
-
-Fri Oct 27 03:49:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (next_available_file_number): New stack for keeping
-	track of next available file number.
-	(get_next_avail_file_num): New function.
-	(fopen_file_for_user, fopen_internal, popen_internal,
-	execute_internal): Use it.
-
-Mon Oct 23 07:00:09 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (TC_REP::convert_to_matrix_type,
-	tree_constant::convert_to_matrix_type): New arg, make_complex.
-	(TC_REP::set_index): New arg, rhs_is_complex.  Pass it to
-	convert_to_matrix_type.
-	(TC_REP::assign): Pass rhs.is_complex_type() to set_index.
-
-Thu Oct 19 00:38:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xpow.cc: Include <climits>.
-
-	* sysdep.cc (Fpause): Do pause even if not interactive.
-
-	* tree-const.cc (TC_REP::assign): Don't make RHS numeric if both
-	RHS and LHS are strings.
-
-Wed Oct 18 22:19:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-expm.cc (Fexpm): Avoid taking log of negative number.  Also,
-	don't unnecessarily divide the input matrix by 1.0.
-
-	* input.cc (decode_prompt_string): Recognize \[ and \] too.
-	(initialize_readline): Bind M-p to history-search-backward and M-n
-	to history-search-forward.
-
-Tue Oct 17 04:31:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* xpow.cc (xpow): Handle integer powers better for complex^double.
-	(elem_xpow): Likewise.
-
-	* lex.l ({CCHAR}): If nesting_level.top() is BRACE, return ';',
-	not '\n'.
-
-Mon Oct 16 19:03:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* help.cc (Fwhich): Fix doc string.
-
-	* variables.cc (Fexist): Update doc string.
-
-Sun Oct 15 22:19:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Another massive set of changes to support character matrices
-	with indexing.  The Octave_str_object class is no longer used.
-	Anything having to do with Octave_str_object in the following
-	files has been changed to use charMatrix instead: octave.h,
-	load-save.cc, octave.cc, strfns.cc, data.cc, pr-output.h,
-	pr-output.cc, tree-const.h, dirfns.cc, tree-const.cc,
-	tree-expr.cc.
-
-Sat Oct 14 22:28:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-sort.cc (mx_sort): Don't attempt to sort vectors that have
-	only one element, or matrices that have only one row.
-
-Thu Oct 12 02:16:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* mappers.cc (install_mapper_functions): Add gammaln as an alias
-	for lgamma.
-
-	* tree-const.h, tree-const.cc: Massive overhaul of indexing and
-	indexed assignment functions.
-	* tc-inlines.h, tc-rep.h: Remove files.
-	* Makefile.in: Remove mention of them here too.
-
-	* Makefile.in: Include $(TI_SRC) in DEP_SOURCES_3, not
-	$(TI_SOURCES).
-	Include $(DLD_SRC) in DEP_SOURCES_3.
-	Include $(TI_SRC) in DEF_FILES_5.
-
-Wed Oct 11 01:26:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (INCLUDES): Remove tc-inlines.h and tc-rep.h from
-	the list.
-
-Mon Oct  9 08:31:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* lex.l (next_token_is_bin_op): Do match `.+', `.*', etc.
-
-Sun Oct  8 18:19:56 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* idx-vector.h, idx-vector.cc: Delete files.
-	* Makefile.in (SOURCES, INCLUDES): Remove them from lists.
-
-Fri Oct  6 00:52:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-svd.cc (Fsvd): If nargout == 0 or nargout == 1, don't ask for
-	U and V.
-
-Wed Oct  4 00:04:57 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-npsol.cc (Fnpsol, Fnpsol_options): Avoid unused variable
-	warnings if NPSOL_MISSING.
-	* f-qpsol.cc (Fqpsol, Fqpsol_options): Likewise for QPSOL_MISSING.
-
-	* Makefile.in (DISTFILES): Add octave.gperf.
-
-	* lex.l (next_token_is_bin_op): Don't ever return true for `.'
-	since that causes problems with things like [ .1 .1 ].
-
-Tue Oct  3 05:30:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (is_valid_function): Avoid setting error_state if
-	argument is not a string.
-
-	* parse.y (maybe_warn_missing_semi): New function.
-	(list1, list): Call it if statement not terminated by semicolon.
-	* tree-misc.h (tree_statement::line, tree_statement::column):
-	New functions.
-	* octave.cc (input_from_command_line_file): New global variable.
-	(main): Set it.
-	(parse_and_execute): Unwind-protect it and set it to zero.
-	(eval_string): Likewise.
-	* variables.cc (parse_fcn_file): Likewise.
-
-	* user-prefs.cc (warn_missing_semicolon): New function.
-	* user-prefs.h (user_preferences): New field, warn_missing_semicolon.
-	* variables.cc (install_builtin_variables): DEFVAR it.
-
-	* tree-expr.cc (tree_expression::is_logically_true): Actually use
-	argument.
-
-Mon Oct  2 19:55:48 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (install_builtin_variables): Reduce the default
-	value of save_precision to 15.
-
-	* variables.cc (builtin_real_scalar_variable): Return 1 for
-	success, 0 for failure.
-
-	* user-prefs.cc (struct_levels_to_print, set_save_precision,
-	set_output_max_field_width, set_output_precision):
-	Change sense of test for builtin_real_scalar_variable return value.
-	(check_preference): Rename from check_str_pref.  Change all callers.
-	Accept value of 0 to be the same as "false" and nonzero to be the
-	same as "true".
-	Delete val to avoid memory leak.
-	* variables.cc (install_builtin_variables): Change initial values
-	from "true" to 1, "false" to 0.
-
-	* variables.cc (install_builtin_variables): Add DEFVAR for
-	gnuplot_has_multiplot.
-
-	* user-prefs.h (user_preferences): New field,
-	`gnuplot_has_multiplot'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(gnuplot_has_multiplot): New function.
-
-Sat Sep 30 16:52:57 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* oct-gperf.h, octave.gperf: Newfiles.
-	* Makefile.in (DISTFILES): Add octave.gperf.
-	(INCLUDES): Add oct-gperf.h.
-	(oct-gperf.h): New rule.
-	(local-dist, dist): Depend on oct-gperf.h.
-	* lex.l (is_keyword): Use perfect hash function to lookup
-	keywords.
-
-Fri Sep 29 04:36:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* version.h (OCTAVE_NAME_AND_VERSION): Add TARGET_HOST_TYPE to this.
-
-Thu Sep 28 00:03:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-expr.cc (tree_expression::is_logically_true): New function.
-	* tree-cmd.cc (tree_while_command::eval): Use it instead of
-	handling the test directly here.
-	* tree-misc.cc (tree_if_clause::eval): Likewise
-
-	* tree-const.cc (TC_REP::force_numeric): Don't try to print value
-	of str_obj with %s.
-
-	* error.cc (buffer_error_messages): Rename from
-	suppress_octave_error_messages.
-	(error_message_buffer): New global variable.
-	(verror): Handle buffering of messages.
-	(handle_message): New function.
-	(Ferror, Fwarning, Fusage): Use it instead of duplicating code.
-
-	* octave.cc (Feval): Buffer error messages instead of supressing them.
-
-	* lex.l (is_keyword): Recognize `try', `catch', and `end_try_catch'.
-	* parse.y (TRY, CATCH): New tokens.
-	(command): Recognize try-catch block.
-	(end_error): Add cases for unwind_protect_end and try_catch_end.
-	* token.h (end_tok_type): New field, try_catch_end.
-	* tree-cmd.h, tree-cmd.cc (tree_try_catch): New class.
-	* variables.cc (bind_global_error_variable): New Function.
-	(clear_global_error_variable): Likewise.
-	(install_builtin_variables): Add DEFCONST for __error_text__.
-	* help.cc (keywords): Add `try', `catch', and `end_try_catch'.
-
-	* tree-cmd.cc (tree_unwind_protect::eval): Undo previous change.
-
-	* dirfns.cc (Freaddir, Fmkdir, Frmdir):
-	Do tilde expansion on the argument.
-
-Tue Sep 26 00:10:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* f-dassl.cc, f-fsolve.cc, f-lsode.cc, f-npsol.cc, f-quad.cc:
-	Don't try to figure out if the user-supplied functions take the
-	correct number of arguments.  Simply let the call fail.
-	* variables.cc (takes_correct_nargs): Delete unused function.
-	* tree-expr.cc (tree_builtin::eval): Don't complain for too many
-	arguments to mapper functions.
-	* tree-expr.h, tree-expr.cc (tree_builtin, tree_function, tree_fvc):
-	Delete unused function max_expected_args.
-
-	* defun.h (DEFUN): Delete unnecessary args nargin_min and nargout_max.
-	New arg unused_arg_flags.
-	(DEFUN_TEXT): Likewise.
-	* defun-dld.h (DEFUN_DLD_BUILTIN): Likewise.
-	* defun-int.h (DEFUN_INTERNAL, DECLARE_FUN, DEFINE_FUN_STRUCT):
-	Do the real work.
-
-	* data.cc, dirfns.cc, dynamic-ld.cc, error.cc, f-balance.cc,
- 	f-chol.cc, f-colloc.cc, f-dassl.cc, f-det.cc, f-eig.cc, f-expm.cc,
- 	f-fft.cc, f-fft2.cc, f-find.cc, f-fsolve.cc, f-fsqp.cc,
- 	f-givens.cc, f-hess.cc, f-ifft.cc, f-ifft2.cc, f-inv.cc, f-log.cc,
- 	f-lpsolve.cc, f-lsode.cc, f-lu.cc, f-minmax.cc, f-npsol.cc,
- 	f-pinv.cc, f-qpsol.cc, f-qr.cc, f-quad.cc, f-qzval.cc, f-rand.cc,
- 	f-schur.cc, f-sort.cc, f-svd.cc, f-syl.cc, file-io.cc, help.cc,
- 	input.cc, lex.l, load-save.cc, mappers.cc, octave-hist.cc,
- 	octave.cc, octave.h, pager.cc, pr-output.cc, resource.cc,
- 	sighandlers.cc, strfns.cc, sysdep.cc, timefns.cc, token.cc,
- 	tree-const.cc, tree-expr.cc, tree-expr.h, tree-plot.cc,
- 	unwind-prot.cc, unwind-prot.h, utils.cc, variables.cc,
- 	variables.h, version.h, xdiv.cc:
-	Avoid unused variable warnings.
-
-	* tree-expr.h (tree_oct_obj::print_value (ostream&)):
-	Delete name of unused arg.
-	(tree_fvc::save (ostream&, int, int): Likewise.
-
-	* tree-const.h (tree_constant::tree_constant (magic_colon)):
-	Delete name of unused arg.
-	(tree_constant::tree_constant (all_va_args)): Likewise
-	(ColumnVector vector_value (int, int)): Likewise.
-	(ComplexColumnVector vector_value (int, int)): Likewise.
-	(Octave_object::eval (int, int, const Octave_object&): Likewise.
-
-	* octave.cc (execute_startup_files): Look for octaverc first in
-	site/m, then in $(version)/m.
-	* variables.cc (get_local_site_defaults): New function.
-	* defaults.h.in (OCTAVE_LOCALFCNFILEDIR, OCTAVE_LOCALSTARTUPFILEDIR):
-	New macros.
-	* Makefile.in (defaults.h): Also substitute ${localfcndir}.
-
-Mon Sep 25 17:01:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* variables.cc (install_builtin_variables): Add DEFCONST for "e".
-
-Fri Sep 22 02:18:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* dirfns.cc (Fls): Delete ls_command after using it, not before.
-
-	* input.h, input.cc (gnu_readline): Don't declare gnu_readline
-	`extern "C"'.
-
-	* sysdep.h: Only declare gethostname if it is missing, then don't
-	declare it `extern "C"'.
-
-	* dirfns.cc: Don't declare strerror().
-
-	* input.cc (command_generator): Use malloc, not xmalloc.  Don't
-	declare xmalloc.
-	(gnu_readline): Don't declare this `extern "C"'.
-
-	* octave-hist.cc: Don't declare history_get().  It is now in
-	readline/history.h.
-
-	* input.cc: Don't declare history_get().  It is now in
-	readline/readline.h.
-
-	* resource.cc: Don't surround include of sys/resource.h in
-	`extern	"C" { }'.
-
-	* fnmatch.h [__cplusplus]: Surround contents in `extern "C" { }'.
-	* load-save.cc, symtab.cc, variables.cc: Don't surround
-	fnmatch.h include in `extern "C" { }'.
-
-	* help.cc: Don't #undef __FUNCTION_DEF before including
-	readline/tilde.h.
-
-	* dirfuns.cc, file-io.cc, help.cc, load-save.cc, octave-hist.cc,
-	sysdep.cc, tree-plot.cc, utils.cc, variables.cc:
-	Don't surround readline includes in `extern "C" { }'.
-
-	* sysdep.cc: Move all include statements to top of file.
-
-Tue Sep 19 01:58:21 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.cc (Fsystem): Use iprocstream *, and unwind_protect it.
-	* pager.cc (flush_output_to_pager): Likewise.
-	* dirfns.cc (Fls): Likewise.
-	* tree-plot.cc (plot_stream): Now a pointer.
-	(open_plot_stream): Deal with it.
-	(send_to_plot_stream, cleanup_tmp_files, do_external_plotter_cd):
-	Likewise.
-
-	* procstream.cc (cleanup_iprocstream, cleanup_oprocstream):
-	New functions.
-
-	* procstream.h, procstream.cc (class iprocstream, class oprocstream):
-	Keep track of pbuf.  Initialize it to 0 in default constructors,
-	delete it in destructor.  Don't call close in destructor.
-
-	* sighandlers.cc (octave_set_signal_handler): New function.
-	Use this name instead of signal everywhere.
-	* help.cc (try_info): Likewise.
-	* pager.cc (flush_output_to_pager): Likewise.
-	* octave.cc (main): Likewise.
-	* octave-hist.cc (do_edit_history): Likewise.
-
-	* input.cc (initialize_readline): Set rl_paren_string_delimiters
-	to avoid treating single quotes as string delimiters when doing
-	paren matching.
-
-	* Makefile.in (SOURCES): Don't list Map.cc or SLStack.cc here.
-
-	* tree-const.cc: Do include utils.h.
-
-	* sysdep.cc: Don't surround terminal includes in extern "C".
-	Include them before readline.h.
-
-	* Map.h: Don't include utils.h.
-	(CHNode::CHNode (const char*, const C&, CHNode *t):
-	Do strsave() inline.
-
-	* input.cc (generate_possible_completions): Generate name list
-	even when text == 0.
-	(operate_and_get_next): Don't declare history_stifled, call
-	history_is_stifled () instead.
-	Don't declare history_length, or max_input_history either.
-	Check (where >= history_length - 1) too, as in recent versions of
-	bash.
-
-	* user-prefs.h (user_prefs): New field, `completion_append_char'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(sv_completion_append_char): New function.
-	* variables.cc (install_builtin_variables): Install
-	completion_append_char.
-	* input.cc (command_generator): Use it.
-
-	* SLList-expr.cc, SLList-misc.cc, SLList-plot.cc, SLList-tc.cc,
-	DLList-fi.cc: Include config.h.
-	* DLList-fi.cc: Include file-info.h, not file-io.h.
-
-Mon Sep 18 11:01:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.h (clean_up_and_exit): Tag with NORETURN instead of using
-	typedef trick.
-	* error.h (panic): Likewise.
-	* utils.h (jump_to_top_level): Likewise.
-
-	* file-io.h: Protect from multiple includes with octave_file_io,
-	not octave_files.
-
-	* file-info.h (class file_info): Convert to using std C++ string
-	class from char *.
-	* file-info.cc: Likewise.  Don't include utils.h.
-	* file-io.cc (return_valid_file, fopen_file_for_user,
-	fflush_internal, do_scanf): Use operator ==, not strcmp.
-	(close_files): Call error with file.name ().data (),
-	not file.name ().
-	(freport_internal): Call form with file.mode ().data () and
-	file.name ().data ().
-
-	* file-io.cc, file-io.h: Extract file_info class.
-	* file-info.cc, file-info.h: New files for file_info class.
-
-	* user-prefs.h (user_prefs): New field, `beep_on_error'.
-	* user-prefs.cc (init_user_prefs): Initialize it.
-	(beep_on_error): New function.
-	* variables.cc (install_builtin_variables): Install beep_on_error.
-	* octave.cc (maximum_braindamage): Set beep_on_error to "true".
-	* error.cc (verror): Conditionally beep.
-	(error): Don't reset error_state until after verror is called.
-
-Sun Sep 17 16:41:25 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (read_mat_binary_data, read_ascii_data,
-	save_ascii_data, read_binary_data, save_binary_data):
-	Handle string arrays.
-
-Fri Sep 15 00:24:19 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* user-prefs.cc (struct_levels_to_print,
-	set_output_max_field_width, set_output_precision,
-	set_save_precision): Eliminate unecessary kludge variable.
-
-	* variables.cc (gobble_leading_white_space): New arg,
-	in_parts.  Change all callers.
-
-	* lex.l (HELP_FCN): Delete start state.  The `help' command is now
-	handled the same as any other text-style function.
-
-	* gripes.cc (gripe_invalid_value_specified): New function
-	* user-prefs.cc: Use it.
-
-	* sysdep.cc (octave_words_big_endian): New global variable.
-	(ten_little_endians): New function.
-	(sysdep_init): Call it.
-	* load-save.cc (words_big_endian): Use this at run-time instead of
-	depending on WORDS_BIGENDIAN at compile-time.
-
-	* symtab.h (SYMTAB_VARIABLES): New macro.
-	* variables.cc (Fclear): Use it instead of just
-	symbol_def::USER_VARIABLE when looking for variables.
-
-	* octave.cc (main): If there is a file to execute, set
-	program_invocation_name and program_name to the name of the file
-	and argv to the remaining args.
-	(intern_argv): Only define argv if there are some remaining
-	arguments.
-
-	* defun.h (DEFVAR_INT): New macro.
-	(DEFVAR): Define in terms of DEFVAR_INT.  Delete args protect and
-	eternal.
-	(DEFCONST): New macro.
-	* variables.cc (install_builtin_variables): Use DEFCONST where
-	appropriate, change uses of DEFVAR to match new definition.
-
-	* variables.cc (bind_builtin_variable): New variant that accepts
-	const tree_constant& value.
-	(install_builtin_variables): Properly alphabetize DEFVAR for this.
-
-	* octave.cc (short_opts): Prefix with `+' to prevent argv
-	permutation.
-	(main): Don't use readline if forced_interactive.
-	(traditional): New file-scope variable.
-	(long_opts, usage_string, verbose_usage): Add `--traditional'.
-	(maximum_braindamage): New function.
-	(main): Call it if --traditional.
-
-	* input.cc (do_input_echo): Print prompt correctly when
-	forced_interactive is either true or false.
-
-Thu Sep 14 00:54:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* data.cc (Fstruct_elements): New function.
-
-	* file-io.cc (Fumask): New function.
-
-	* dirfns.cc (Fmkdir, Frmdir, Frename): New functions.
-
-	* Makefile.in: Add rules and dependencies for building safe-stat.o
-	and safe-lstat.o.
-
-	* mkdir.c, rename.c, rmdir.c: New files.
-	* Makefile.in (SOURCES): Include them in the list.
-
-	* safe-xstat.hin, safe-xstat.cin: New files
-	* Makefile.in (DISTFILES): Include them in the list.
-
-	* sighandlers.cc (octave_new_handler): Try to continue on memory
-	exhausted errors.
-	(sigfpe_handler): Improve error message.
-
-	* Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'.
-
-	* dirfns.cc (Freaddir): New function.
-
-	* f-sort.cc: Complete rewrite.  Now uses stable sort algorithm and
-	correctly handles complex matrices containing columns of all real
-	numbers.
-
-Wed Sep 13 03:16:40 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* arith-ops.cc: Unconditionally #define DIVIDE_BY_ZERO_ERROR.
-
-	* variables.cc (install_builtin_variables): Unconditionally
-	install NaN and nan.
-
-	* mappers.cc (xisinf): Don't do bogus things if isinf, isnan, or
-	finite are missing.
-	(xfinite): Likewise.
-
-	* sysdep.cc (octave_ieee_init): Don't set octave_NaN and
-	octave_Inf if values are not available.
-
-	* resource.cc (mk_ru_map): Don't use ru_ or tv_ as prefixes to
-	Octave names for the structure members.
-
-Tue Sep 12 02:04:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* procstream.h, procstream.cc: Rewrite.
-
-Mon Sep 11 18:42:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* filemode.c: New file, from Emacs.
-	* Makefile.in (SOURCES): Add it to the list.
-
-	* file-io.cc (Fstat, Flstat, mk_stat_map): New functions.
-
-	* timefns.cc (mk_tm_map): Don't use tm_ as prefix to Octave names
-	for these structure members.
-	(extract_tm): Likewise.
-	(Flocaltime): Fix doc string to match.
-
-Thu Sep  7 02:04:27 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* load-save.cc (save_user_variables): New function.
-	* sighandlers.cc (my_friendly_exit): Call it before exiting.
-	(sigfpe_handler): New function.
-	(install_signal_handlers) [__alpha__]: Install it.
-
-Wed Sep  6 14:35:10 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-cmd.cc (tree_unwind_protect::eval): Ignore errors and
-	suppress error messages while executing first block of
-	unwind_protect commands.
-
-	* parse.y (end_error): Add missing case for unwind_protect_end.
-
-	* tree-expr.cc (tree_builtin::eval): Complain if no arguments
-	given for mapper functions.
-	(tree_fvc::lookup_map_element): Print error message for invalid
-	structure reference.
-
-Tue Sep  5 02:04:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc, input.cc, load-save.cc, octave.cc, sysdep.cc,
-	variables.cc, octave-hist.cc, utils.cc, f-schur.cc, f-rand.cc,
-	f-quad.cc, f-qpsol.cc, f-npsol.cc, f-lsode.cc, f-fsolve.cc,
-	f-dassl.cc, f-colloc.cc, f-balance.cc, error.cc, data.cc:
-	Add const qualifiers where appropriate.
-
-	* dirfns.h: Include <ctime>, for time_t.
-
-	* tempname.c, file-io.cc, help.cc, input.cc, octave-hist.cc,
-	octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc,
-	tree-plot.cc, utils.cc, variables.cc, sysdir.h:
-	Move #include <sys/type.h> inside #ifdef HAVE_UNISTD_H.
-
-	* syswait.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* file-io.cc, sighandlers.cc: Use it instead of including
-	sys/wait.h directly.
-
-	* octave.cc: Include statdefs.h, not sys/stat.h.
-
-	* sysdir.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* dirfns.cc, utils.cc: Use it instead of including the headers
-	directly.
-
-	* pathlen.h: New file.
-	* Makefile.in (INCLUDES): Add it to the list.
-	* dirfns.cc, input.cc: Use it instead of including sys/param.h
-	directly.
-	* utils.cc: Don't include sys/param.h
-
-Sun Sep  3 18:52:59 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (TC_REP::string_value): Return const char*, not
-	char *.
-
-	* All .cc, .y, .l, .y files: Include <cctype>, not <ctype.h>, and
-	so on for all new C++ versions of these standard C headers.
-
-Thu Aug 31 17:09:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* pathsearch.h: Also hide `string'.
-
-	* oct-str.cc, oct-str.h: New files.
-	* Makefile.in: Add to the appropriate lists.
-	* tc-rep.h: Change char* to Octave_string* in anonymous union.
-	* tree-expr.cc (tree_matrix::eval): Handle multiple element strings.
-	* strfns.cc (toascii): Likewise.
-	* tree-const.cc (print_as_string): Likewise.
-	(TC_REP::force_numeric, TC_REP::rows, TC_REP::columns,
-	TC_REP::double_value, TC_REP::complex_value, TC_REP::matrix_value,
-	TC_REP::complex_matrix_value, TC_REP::convert_to_str): Likewise.
-	(TC_REP::print): Call octave_print_internal for string case.
-	(all_strings): New function.
-	Fix constructors to use new data structure.
-	* pr-output.cc (octave_print_internal): Add version for strings.
-	* Array-string.cc: New file.
-
-	* octave.cc (octave_argv): New global variable.
-	(intern_argv): New function.
-	(main): Fix argument parsing to do the right thing for arguments
-	to executable scripts.
-	* variables.cc: Add DEFUNs for argv, program_invocation_name, and
-	program_name.
-
-	* defun.h (DEFVAR): Fix comment.
-
-Thu Aug 24 00:02:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* file-io.cc (fgets_internal): Make second arg optional.  Add
-	optional arg `strip_final_newline'.
-	(Ffgets): Change to match new definition of fgets_internal.
-	(Ffgetl): Implement using the new fgets_internal.
-
-	* f-rand.cc (Frand): Update code for sizing return value to match
-	that used by ones, zeros, and eye.
-
-Wed Aug 23 19:52:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (do_vector_assign): Don't crash for
-	A(range) = scalar, or A(matrix) = scalar.
-
-	* f-dassl.cc (set_dassl_option): Rename from do_dassl_option.
-	(show_dassl_option): New function.
-	(Fdassl_options): Handle single arg.
-	* f-fsolve.cc (set_fsolve_option): Rename from do_fsolve_option.
-	(show_fsolve_option): New function.
-	(Ffsolve_options): Handle single arg.
-	* f-fsqp.cc (set_fsqp_option): Rename from do_fsqp_option.
-	(show_fsqp_option): New function.
-	(Ffsqp_options): Handle single arg.
-	* f-lpsolve.cc (set_lpsolve_option): Rename from do_lpsolve_option.
-	(show_lpsolve_option): New function.
-	(Flpsolve_options): Handle single arg.
-	* f-lsode.cc (set_lsode_option): Rename from do_lsode_option.
-	(show_lsode_option): New function.
-	(Flsode_options): Handle single arg.
-	* f-npsol.cc (set_npsol_option): Rename from do_npsol_option.
-	(show_npsol_option): New function.
-	(Fnpsol_options): Handle single arg.
-	* f-qpsol.cc (set_qpsol_option): Rename from do_qpsol_option.
-	(show_qpsol_option): New function.
-	(Fqpsol_options): Handle single arg.
-	* f-quad.cc: (set_quad_option): Rename from do_quad_option.
-	(show_quad_option): New function.
-	(Fquad_options): Handle single arg.
-	(Fquad): Doc fix.
-
-Tue Aug 22 00:38:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-plot.cc (do_external_plotter_cd): New function.
-	* dirfns.cc (octave_change_to_directory): New function.  If cd is
-	successful, also call do_external_plotter_cd().
-	(Fcd): Call octave_change_to_directory(), not change_to_directory().
-
-	* pr-output.cc (pr_any_float): Change declaration of counter to
-	size_t to avoid gcc warnings.
-
-	* idx-vector.cc, octave-hist.cc, tree-const.cc, tree-expr.cc,
-	tree-misc.cc, utils.cc, xpow.cc, Map.cc:
-	Update for change in for loop variable scope for gcc 2.7.0.
-
-Mon Aug 21 19:34:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* tree-const.cc (fortran_style_matrix_assignment): Properly handle
-	case of complex LHS, real RHS.
-
-	* Makefile.in: Only include dependency files if $(omit_deps) is
-	not set.
-
-Wed Jul  5 00:03:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
-
-	* sysdep.cc: Explicitly include string.h.
-
-Sun Jun 25 00:18:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* load-save.cc (too_large_for_float (const Matrix&)):
-	Extract elements as doubles, not Complex.
-
-Sat Jun 24 22:59:15 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* pr-output.cc (any_element_is_inf_or_nan): Declare extern, not static.
-	* f-svd.cc (Fsvd): Call here to avoid trying to take SVD of matrix
-	containing Inf or NaN values.
-
-	* pr-output.cc (bit_format): New file-scope variable.
-	(set_format, pr_any_float): Handle bit_format.
-	(octave_print_internal): Handle bit_format like bank_format.
-	(init_format_state): Initialize bit_format.
-	(set_format_style): Allow `format bit' and `format native-bit'.
-
-Thu Jun  8 15:20:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* mappers.cc (arg, imag, signum): If arg is NaN, return NaN.
-
-Mon May 15 14:47:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* pager.cc (Fdiary): Initialize diary_file here, not in the
-	file-scope declaration.
-
-	* tree-expr.cc (tree_index_expression::eval):
-	Handle nargin == 0 the same as other cases.
-
-Tue May  2 10:02:23 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* load-save.cc (do_double_format_conversion): Add missing breaks.
-	(do_float_format_conversion): Likewise.
-
-Mon May  1 13:50:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (OCTAVE_LIBS): Add @LIBPLPLOT@ to the list.
-
-	* timefns.cc (Ftime): Handle GETTIMEOFDAY_NO_TZ.
-
-	* Makefile.in (SOURCES): Delete tc-rep.cc, tc-rep-ass.cc, and
-	tc-rep-idx.cc from the list.
-
-	* tree-const.h: Add #pragma interface.
-	* tree-const.cc: Add contents of tc-rep.cc, tc-rep-ass.cc, and
-	tc-idx.cc to this file.  Add #pragma implementation.  This makes
-	tree-const.cc large, but makes the final binary smaller.
-
-	*  unwind-prot.h unwind-prot.cc token.cc token.h procstream.cc
-	procstream.h idx-vector.cc idx-vector.h symtab.cc symtab.h
-	oct-map.cc oct-map.h oct-obj.cc oct-obj.h tree-plot.h tree-plot.cc
-	tree-misc.cc tree-misc.h tree-expr.cc tree-expr.h tree-cmd.cc
-	tree-cmd.h tree-base.cc tree-base.h:
-	Add #pragma interface/implementation.
-
-	* Makefile.in (OCTAVE_LIBS): Delete @LIBINFO@ from list.
-	* help.cc: Don't include info headers or extern declarations for
-	functions from info.
-	(try_info): Call info as a subprocess.	Delete second arg.
-	Handle SIGINT here, not in help_from_info().
-	(help_from_info): Complain if info doesn't work.
-
-	* defun-dld.h (DEFUN_DLD_BUILTIN) [OCTAVE_LITE && MAKE_BUILTINS]:
-	If ! WITH_DLD, simply emit a character string constant.
-
-Fri Apr 28 15:23:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* lex.l ({IDENT}{S}*): Don't delete tok.  That's handled by
-	strip_trailing_whitespace() now.
-	(<HELP_FCN>[^ \t\n]*{S}*|<TEXT_FCN>[^ \t\n\;\,]*{S}*): Ditto.
-
-	* pathsearch.h: Include kpathsea/progname.h.
-	* octave.cc (initialize_globals): Call kpse_set_progname().
-
-	* token.h: Declare copy constructor and operator = private.
-	* token.cc: Abort if copy constructor or operator = is used.
-
-Thu Apr 27 13:54:39 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tree-expr.cc (lookup_map_element): Don't list default argument
-	values here too.
-
-	* pr-output.cc (hex_format): New file-scope variable.
-	(set_format, pr_any_float): Handle hex_format.
-	(octave_print_internal): Handle hex_format like bank_format.
-	(init_format_state): Initialize hex_format.
-	(set_format_style): Allow `format hex' and `format native-hex'.
-
-	* variables.cc (bind_ans): Create ans_id each time with new and
-	ask tree_simple_assignment_expression to handle cleaning it up.
-	This apparently plugs a memory leak.
-
-	* help.cc (Ftype): Don't try to print map constants.  Handle
-	references to structure members.
-
-Wed Apr 26 12:40:59 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* input.cc (generate_struct_completions): New function.
-	(generate_possible_completions): Likewise.
-	(looks_like_struct): Likewise.
-	(command_generator): Handle completion of struct variables.
-
-	* tree-expr.h, tree-expr.cc (tree_fvc::lookup_map_element):
-	Add insert and silent args.
-
-	* oct-map.cc: New file.
-	* Makefile.in (SOURCES): Add it to the list.
-
-Mon Apr 24 09:41:02 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* variables.cc (Fexist): Handle structure references too.
-
-	* tree-const.cc (lookup_map_element (const char*, int, int):
-	New function.
-	(lookup_map_element (SLList<char*>&, int, int): New arg, silent.
-	* tc-rep.cc (lookup_map_element): New arg, silent. If nonzero,
-	don't call error().
-
-	* tc-rep.h (is_empty): Define here.
-	* tree-const.h (is_empty): Hand off to TC_REP::is_empty().
-
-	* data.cc (Fstruct_contains): Call lookup_map_element on args(0)
-	instead of extracting the map and calling contains() on it.
-
-	* parse.y (EPLUS, EMINUS): New tokens.
-	(simple_expr): Handle EPLUS, EMINUS the same as `+' and `-'.
-	* lex.l (".+", ".-"): New patterns.  Match these separately to
-	disallow using them as unary operators.
-
-	* lex.l (next_token_is_bin_op): Simplify by noting that spacing
-	only matters for those tokens that can also be unary ops.
-
-Fri Apr 21 14:34:45 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* load-save.cc (read_ascii_data): Allow reading of empty
-	matrices.
-
-	* tc-rep-ass.cc (vector_assignment): Only assert that we are not
-	doing fortran-style indexing and that nr <= 1 || nc <= 1.
-	(do_vector_assign): Handle assignment of [] when one dimension is
-	zero and the other is anything.
-
-Thu Apr 20 13:56:21 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tc-rep-ass.cc (delete_rows, delete_columns): Simply return if
-	num_to_delete is 0.
-
-	* lex.l (handle_identifier): Don't match plot option keywords
-	inside parentheses or braces.
-
-	* variables.cc (parse_fcn_file): Also delete tmp_help_txt if
-	running a script.
-
-	* tree-cmd.h (tree_command): Add destructor.
-
-	* tree-expr.h tree_simple_assignment_expression (lhs_idx_expr):
-	Hang on to idx_expr, not just its parts so it can be deleted.
-	(init): Initialize it.
-	* tree-expr.cc (~tree_simple_assignment_expression): Delete it.
-
-	* tree-expr.h (tree_multi_val_ret, tree_oct_obj, tree_fvc,
-	tree_identifier, tree_builtin, tree_function): Add destructors.
-	* tree-expr.cc (tree_function::~tree_function): Delete some stuff.
-
-	* tree-misc.h (tree_va_return_list): Add destructor.
-
-	* octave.cc (__builtin_new, __builtin_delete): Provide our own,
-	for debugging.
-
-	* utils.cc (strconcat): Don't depend on the return value from
-	strcat.
-	(file_in_path): Simplify logic.
-
-	* parse.y (maybe_convert_to_ans_assign): Create ans_id each time
-	with new and ask tree_simple_assignment_expression to handle
-	cleaning it up.  This apparently plugs a memory leak.
-
-	* lex.l (strip_trailing_whitespace): Declare retval static.
-	Delete it before saving next string.
-
-	* error.cc (Ferror): Do call error() for empty string args.
-	(error_1): Don't print anything if fmt is "" or "\n", but do set
-	the error state appropriately.
-
-	* tree-cmd.cc (tree_unwind_protect::eval): Handle return and break
-	in the `try' part of the statement.
-
-Mon Apr 10 19:29:44 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* f-expm.cc, f-givens.cc, f-qzval.cc, f-syl.cc, f-rand.cc:
-	Where appropriate, declare Fortran functions to take reference
-	instead of pointer args.  Change callers.
-
-	* mappers.cc: Declare Fortran functions to take reference instead
-	of pointer args.  Change callers.
-
-	* gamma.c, lgamma.c, erfc.c, erf.c, atanh.c, asinh.c, acosh.c:
-	Declare Fortran functions to take reference instead of pointer
-	args.
-
-Sun Apr  9 19:38:53 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* file-io.cc (Fpopen, Fpclose, Fexecute, Fsync_system,
-	Fasync_system, Fwaitpid, Fmkfifo, Funlink): New functions.
-
-	* sighandlers.cc (sigchld_handler): New function.
-	(install_signal_handlers): Add call to install
-	sigchld_handler. (This is #if 0'd out, waiting for code to help
-	determine which child exited and what to do about it).
-
-	* tree-expr.h (tree_oct_obj): New class.
-
-	* tree-expr.h (tree_multi_assignment_expression::preserve): New
-	data member.  Add arg with default value to constructors.  Change
-	callers as necessary.
-	* tree-expr.cc (~tree_multi_assignment_expression): Conditionally
-	delete lhs.
-
-	* parse.y (make_multi_val_ret): Pass matrix instead of getting it
-	from the global matrix list.
-	(expression): Extract matrix from matrix list before calling
-	make_multi_val_ret().
-
-	* parse.y (command): Handle new for loop syntax for structures.
-
-	* tree-plot.h (subplot_list): Include tree_print_code() in
-	initializer lists for constructors.
-	* tree-expr.h (tree_statement_list, tree_argument_list,
-	tree_parameter_list, tree_return_list, tree_global_init_list,
-	tree_if_command_list, ): Likewise.
-
-	* tree-cmd.h (tree_for_command::id_list): New data member.
-	(tree_for_command (tree_return_list*, tree_expression*,
-	tree_statement_list*, int, int)): Likewise.
-	* tree-cmd.cc (tree_for_command::eval): Handle for loops with
-	structures.
-	(do_for_loop_once (tree_return_list*, Octave_object&, int&)):
-	New form for handling for loops with structures.
-
-	* sysdep.cc (octave_ieee_init): Determine floating point format
-	here.
-	(native_float_format): New global variable.
-	(Fisieee): Compute return value from native_float_format, not by
-	using preprocessor macros.
-	* sysdep.h (enum floating_point_format): Move declaration here.
-	* load-save.cc: From here.
-	Always define all floating point format conversion routines.
-	(do_double_format_conversion, do_float_format_conversion):
-	Use native_float_format instead of preprocessor macros.
-
-Sat Apr  8 15:41:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile (TEMPLATE_SRC): New variable.
-	(DISTFILES): Add $(TEMPLATE_SRC).
-	(SOURCES): Delete Map.cc and SLStack.cc from here.
-
-	* variables.cc (install_builtin_variables): Use OCTAVE_VERSION
-	instead of version_string to initialize OCTAVE_VERSION.
-	* version.h (version_string): Delete.
-
-	* getopt.c (_getopt_internal): Initialize indfound to avoid warning.
-
-Fri Apr  7 15:29:41 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tc-inlines.h (REP_RHS_MATRIX): Just check to see if tc is real
-	or complex.  If conversion fails, return.
-
-Thu Apr  6 00:10:47 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* data.cc (Fstruct_contains): New function.
-
-	* tc-rep.cc (print_code): Add extra parens around while condition
-	to avoid warning.
-	* utils.cc (undo_string_escapes): Likewise.
-	* input.cc (decode_prompt_string): Likewise.  Also rewrite if
-	statement to avoid warning.
-
-Tue Apr  4 22:54:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tree-expr.cc (tree_multi_assignment_expression::eval,
-	tree_simple_assignment_expression::eval):  Call print_constant
-	even if user_pref.print_answer_id_name is false.
-
-Mon Apr  3 17:57:14 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tc-inlines.h (TC_REP): Avoid redefinition.
-
-	* tree-const.h (do_binary_op, do_unary_op): Declare as friends of
-	tree_constant class too.
-
-	* tree-plot.h (subplot_using::have_values): Delete data member.
-	* tree-plot.cc (subplot_using::eval): Always recompute values.
-
-Fri Mar 31 10:18:32 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tc-rep.cc (print): Print open brace for structures here.
-	* tree-expr.cc (print_constant): Not here.
-
-	* symtab.cc (define): Don't delete arg if sv_fcn fails.
-
-	* tree-const.cc (print): New function.  Create ostrstream buffer
-	and pass it to rep->print().
-	* tree-const.h (eval (int)): Call print(), not rep->print().
-	* tc-rep.cc (structure_indent_level): New file-scope variable.
-	(print): New arg, output_buf, is stream to print to.
-	Print values of structure elements too.
-
-	* user-prefs.h (user_preferences): New field, struct_levels_to_print.
-	* user-prefs.cc (struct_levels_to_print): New function.
-	* variables.cc (install_builtin_variables): Add DEFVAR for new
-	variable struct_levels_to_print.
-
-	* tree-const.cc (print_as_scalar, print_as_structure): Move here
-	from tree-expr.cc and make extern.
-
-	* tree-expr.cc (print_as_structure): New function.
-	(print_constant): Use it.
-
-	* tree-expr.cc (print_constant): New arg, print_padding.
-	(tree_simple_assignment_expression::eval): Use print_constant
-	instead of duplicating code here.
-	(tree_multi_assignment_expression::eval): Likewise.
-
-Thu Mar 30 13:24:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (SOURCES): Add resource.cc.
-	* resource.cc: New file, extracted from timefns.cc.
-	(Fgetrusage): New function.
-	* timefns.cc (cputime): Delete (now implemented in a function file
-	using new getrusage function).
-
-Wed Mar 29 22:52:42 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* Makefile.in (SOURCES): Add strftime.c.
-	* strftime.c: New file, from sh-utils distribution.
-
-	* timefns.cc (mk_tm_map, extract_tm, Ftime, Fgmtime, Flocaltime,
-	Fmktime, Fstrftime): New basic time functions.
-	(Fclock, Fdate): Delete (now implemented in function files using new
-	time functions).
-
-Tue Mar 28 17:51:51 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* file-io.cc (return_valid_file, do_printf, do_scanf,
-	fclose_internal, feof_internal, ferror_internal, fflush_internal,
-	fgets_internal, fopen_internal, fread_internal, freport_internal,
-	frewind_internal, fseek_internal, ftell_internal,
-	fwrite_internal): Declare static.
-	* file-io.h: Delete extern declarations for them.
-
-Fri Mar 24 09:52:50 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* pr-output.cc (pr_col_num_header): New function.
-	(compact_format): New file-scope variable.
-	(set_format_style): Handle loose and compact formats.
-	(octave_print_internal (ostream&, const ComplexMatrix&, int)):
-	Replace duplicate code with call to pr_col_num_header().
-	(octave_print_internal (ostream&, const Matrix&, int): Likewise.
-	(octave_print_internal (ostream&, const Range&, int): Likewise.
-
-Tue Mar 21 08:44:48 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* mappers.cc (xgamma): Always use Slatec library function.
-	* (xlgamma): Likewise.
-	* Makefile.in (SOURCES): Don't include lgamma.c.
-
-Fri Mar 17 22:38:39 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tc-rep.cc (TC_REP::new): Don't try to keep track of newlist_tail.
-	Explicitly initialize newlist to zero.
-	* tree-const.cc (tree_constant::operator new): Likewise.
-
-Fri Mar 10 12:40:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* tree-cmd.cc (quit_loop_now): Declare inline.
-	(tree_for_command::do_for_loop_once): Split into two versions, one
-	for the general case and one for when the loop variable is a
-	simple identifier.
-	(DO_LOOP): New macro.  Move tests outside of loop.
-	(tree_for_command::eval): Speed up by checking to see if loop
-	variable is a simple identifier and by using DO_LOOP.
-
-	* tree-const.h: New union of rep and freeptr.  The freeptr element
-	is used for our custom memory management functions.
-
-	* tc-rep.h: Add freeptr element to anonymous union (for our custom
-	memory management functions).
-
-	* tree-const.cc (newlist, newlist_grow_size, newlist_tail): New
-	static variables.
-	(tree_constant::operator new): Always define to allow more
-	efficient allocation of single tree_constants.
-	(tree_constant::operator delete): Likewise, handle deletion of the
-	memory we allocate.
-
-	* tc-rep.cc (newlist, newlist_grow_size, newlist_tail): New static
-	variables.
-	(tree_constant::operator new): Always define to allow more
-	efficient allocation of single tree_constants.
-	(tree_constant::operator delete): Likewise, handle deletion of the
-	memory we allocate.
-
-Fri Mar  3 14:00:08 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* error.cc (verror): Terminate output_buf with ends.
-
-	* statdefs.h: Use C-style comment in first line instead of
-	C++-style comment.
-
-Mon Feb 27 10:11:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* parse.y (maybe_convert_to_ans_assign): Only lookup ans once.
-	* variables.cc (bind_ans): New function.
-	* tree-expr.cc (tree_identifier::eval (int)): Use it here.
-	(tree_identifier::eval (int, int, const Octave_object&): And here.
-
-	* tree-expr.cc (install_nargin_and_nargout): New function.
-	* tree-expr.h (tree_function::tree_function (tree_statement_list *,
-	symbol_table *, int, int)): Call it.
-
-	* tree-expr.cc (tree_function::bind_nargin_and_nargout): New function.
-	(tree_function::eval): Call it insead of the one from variables.cc.
-
-	* variables.cc (bind_nargin_and_nargout): #if 0 out.
-
-Sun Feb 26 00:17:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* load-save.cc (Fload, Fsave): Free fname returned by tilde_expand().
-	* dirfns.cc (Fls): Likewise.
-
-	* tree-expr.cc (tree_multi_assignment_expression::eval (int, int,
-	const Octave_object&)): Call tree_return_list::operator () (Pix)
-	explicitly.
-
-	* octave.cc (initialize_globals): Put TEXMF in the environment for
-	kpthsea.
-
-	* Makefile.in (OCTAVE_LIBS): Use @LIBINFO@ and @LIBREADLINE@,
-	substituted by configure.  Use kpathsea.a, not libkpathsea, so we
-	don't have to modify the kpathsea Makefile.
-
-Sat Feb 25 18:59:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
-
-	* pathsearch.cc: New file.
-	* pathsearch.h: New file.
-	* Makefile.in (INCLUDES): Include it in the list.
-	* dynamic-ld.cc, help.cc, utils.cc: Use it instead of repeating
-	identical code multiple times.
-
-	* variables.cc (install_builtin_variables): Only DEFVAR
-	suppress_verbose_help_message if USE_GNU_INFO.
-
-	* help.cc (Fhelp): Only handle -i if USE_GNU_INFO.
-	(additional_help_message): Only print message if USE_GNU_INFO.
-	(builtin_help): New function.
-	(help_from_info): New function.  Print warning if not USE_GNU_INFO.
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/OLD-ChangeLogs/test-ChangeLog	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,848 +0,0 @@
-2011-04-03  Rik  <octave@nomad.inbox5.com>
-
-	* test_diag_perm.m: Reverse previous changeset.  Return 3-input form
-	of diag().
-
-2011-04-01  Rik  <octave@nomad.inbox5.com>
-
-	* test_diag_perm.m: Update diag tests to reflect removal of archaic
-	3-input form of diag().
-
-2011-03-18  Rik  <octave@nomad.inbox5.com>
-
-	* test_parser.m: Add operatore precedence tests.
-
-2011-03-01  Rik  <octave@nomad.inbox5.com>
-
-	* test/test_index-wfi-t.m: Use modern warning function
-	rather than deprecated built-in variable to set warning state.
-
-2011-02-22  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Use single quotes around regexp patterns.
-
-2011-02-19  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Use PCRE regular expressions to simplify script.
-
-2011-02-02  Rik  <octave@nomad.inbox5.com>
-
-	* build_sparse_tests.sh: Use testif to only run some sparse tests when
-	necessary libraries are installed.
-
-2011-01-14  John W. Eaton  <jwe@octave.org>
-
-	* Update copyright notices for 2011.
-
-2010-12-13  Rik  <octave@nomad.inbox5.com>
-
-	* test_switch.m : Add test for switch statement with otherwise clause,
-	but no cases.
-
-2010-11-10  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Set warning state off for Octave:deprecated-functions.
-	(run_test_script): Do run tests for deprecated functions.
-
-2010-11-09  John W. Eaton  <jwe@octave.org>
-
-	* test_parser.m: New file.
-	* Makefile.am (FCN_FILES): Add it to the list.
-
-2010-09-29  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Break output text differently for better readability.
-
-2010-09-28  Rik  <octave@nomad.inbox5.com>
-
-	* test/@Gork/set.m, test/fntests.m, test/test_func.m, test/test_io.m:
-	Untabify scripts.
-
-2010-09-27  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Use single quotes for regex when possible.
-
-2010-09-26  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m (has_tests, has_functions): Recode to remove requirement
-	for PCRE.
-
-2010-09-24  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Rephrase output for clarity.
-
-2010-08-17  Rik  <octave@nomad.inbox5.com>
-
-	* fntests.m: Add extra newline for more readable output.
-
-2010-07-30  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: New clean-local target to remove directories
-	created automatically during testing.
-
-2010-04-28  John W. Eaton  <jwe@octave.org>
-
-	* test_struct.m: Update expected error message text.
-
-2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_slice.m: Use ID check rather than message for invalid resizing.
-
-2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_logical-wfi-f.m: Update.
-	* test_logical-wfi-t.m: Update.
-	* test_struct.m Update.
-
-2010-01-29  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (hasfunctions): Only check for DEFUN in .cc files.
-	Return true for all .m files.
-
-2010-01-14  David Grundberg  <davidg@cs.umu.se>
-
-	* fntests.m (run_test_script): Check all *.cc files for tests.
-
-2010-01-13  Rik  <octave@nomad.inbox5.com>
-
-	* build_bc_overload_tests.sh: Correct test syntax (= vs. ==)
-
-2010-01-13  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (test_bc_overloads.m): Accept expected results
-	file as argument.  Style fixes.
-
-2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
-
-	* build_bc_overload_tests.sh: New shell script.
-	* build_bc_overloads_expected.m: New source (not normally used).
-	* bc_overloads_expected: New text file.
-	* Makefile.am: Build test_bc_overloads.m.
-
-2009-12-25  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (hastests): Use regexp instead of findstr and only
-	match tests that appear as the first thing on a line.
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* build_sparse_tests.sh: Use lognrnd instead of deprecated lognormal_rnd
-
-2009-12-19  Rik  <octave@nomad.inbox5.com>
-
-	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
-	variables of top_builddir and top_srcdir.
-
-2009-12-17  Rik  <octdev@nomad.inbox5.com>
-
-	* config/unix.exp: Remove obsolete file from repository
-
-2009-12-17  Rik  <octdev@nomad.inbox5.com>
-
-	* @Blork/module.mk, @Cork/module.mk, @Dork/module.mk,
-	@Gork/module.mk, @Pork/module.mk, @Sneetch/module.mk,
-	@Snork/module.mk, @Spork/module.mk, Makefile.am: Distribute private
-	function directories necessary for OOP tests to work in tarballs
-
-2009-12-03  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.am (CLEANFILES, DISTCLEANFILES): New variables.
-
-2009-11-10  John W. Eaton  <jwe@octave.org>
-
-	* @Blork/module.mk, @Cork/module.mk, @Dork/module.mk,
-	@Gork/module.mk, @Pork/module.mk, @Sneetch/module.mk,
-	@Snork/module.mk, @Spork/module.mk, Makefile.am: New files.
-	* Makefile.in: Delete.
-
-2009-10-19  Rik  <octdev@nomad.inbox5.com>
-
-	* fntests.m: .cc files are now included in the list of files requiring
-	tests only if they define a user function (DEFUN or DEFUN_DLD)
-
-2009-10-19  Rik  <octdev@nomad.inbox5.com>
-
-	* fntests.m: Remove deprecated functions from list of functions
-	requiring new tests to be written.
-
-2009-10-08  Rik  <octdev@nomad.inbox5.com>
-
-	* fntests.m: Fix typo of an extra space in instructions to user.
-
-2009-10-05  Rik  <octdev@nomad.inbox5.com>
-
-	* fntests.m: Fix typo directing users to the wrong log file
-
-2009-06-23  Robert T. Short  <octave@phaselockedsystems.com>
-
-	* @Blork/Blork.m, @Blork/bleek.m, @Blork/display.m, @Blork/get.m,
-	@Blork/set.m, @Cork/Cork.m, @Cork/click.m, @Cork/display.m,
-	@Cork/get.m, @Cork/set.m, @Dork/Dork.m, @Dork/bling.m,
-	@Dork/display.m, @Dork/gack.m, @Dork/get.m, @Dork/getStash.m,
-	@Dork/private/myStash.m, @Dork/set.m, @Gork/Gork.m, @Gork/cork.m,
-	@Gork/display.m, @Gork/gark.m, @Gork/get.m, @Gork/set.m,
-	@Gork/subsasgn.m, @Gork/subsref.m, @Pork/Pork.m, @Pork/bling.m,
-	@Pork/display.m, @Pork/get.m, @Pork/gurk.m,
-	@Pork/private/myStash.m, @Pork/set.m, @Sneetch/Sneetch.m,
-	@Sneetch/display.m, @Snork/Snork.m, @Snork/cack.m,
-	@Snork/display.m, @Snork/end.m, @Snork/get.m, @Snork/getStash.m,
-	@Snork/gick.m, @Snork/loadobj.m, @Snork/private/myStash.m,
-	@Snork/saveobj.m, @Snork/set.m, @Snork/subsasgn.m,
-	@Snork/subsindex.m, @Snork/subsref.m, @Spork/Spork.m,
-	@Spork/cack.m, @Spork/display.m, @Spork/geek.m, @Spork/get.m,
-	@Spork/getStash.m, @Spork/loadobj.m, @Spork/private/myStash.m,
-	@Spork/saveobj.m, @Spork/set.m, test_classes.m: New files.
-
-2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_null_assign.m: Fix test.
-
-2009-04-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* test_struct.m: Add tests to prevent regression of bug with
-	indexed assignment into empty struct array.
-
-2009-04-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* test_struct.m: Add tests for lazy copying in nested assignments
-	of struct elements.
-
-2009-04-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
-
-	* test_contin.m, test_error.m, test_eval-catch.m, test_for.m,
-	test_global.m,  test_if.m, test_index-wfi-f.m,
-	/test_index-wfi-t.m, test_io.m, test_logical-wfi-f.m,
-	test_logical-wfi-t.m, test_prefer.m, test_recursion.m,
-	test_return.m, test_string.m, test_struct.m, test_switch.m,
-	test_system.m, test_transpose.m, test_try.m, test_unwind.m,
-	test_while.m: Remove obsolete comments.
-
-2009-04-07  Carlo de Falco  <kingcrimson@tiscali.it>
-
-	* test_io.m: Add a test for saving and reading a matrix with the
-	"-ascii" format.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* test_diag_perm.m: Add tests for permuting sparse matrices and
-	for the correct types from interactions between
-	pseudo-scalars (1x1 matrices).
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* build_sparse_tests.sh: Add LU tests to the rectangular tests.
-
-2009-03-10  Jason Riedy  <jason@acm.org>
-
-	* test_diag_perm.m: Add a test for conversion to sparse form.
-
-2009-03-09  Jason Riedy  <jason@acm.org>
-
-	* test_diag_perm.m: Add tests for diag + sparse.
-
-2009-03-08  Jason Riedy  <jason@acm.org>
-
-	* test_diag_perm.m: Add tests for inverse scaling and sparse structure.
-
-2009-03-08  Jason Riedy  <jason@acm.org>
-
-	* test_diag_perm.m: Add tests for preserving sparse structure
-	when scaling.
-
-2009-02-25  John W. Eaton  <jwe@octave.org>
-
-	* build_sparse_tests.sh: Note that saving sparse matrices to MAT
-	files fails when using 64-bit indexing.
-
-2009-02-22  John W. Eaton  <jwe@octave.org>
-
-	* build_sparse_tests.sh: Fix diag matrix divide by zero test.
-
-2009-02-18  John W. Eaton  <jwe@octave.org>
-
-	* test_args.m: Don't use assert to test for function handles.
-
-2009-02-15  John W. Eaton  <jwe@octave.org>
-
-	* test_io.m, test_prefer.m: Avoid command-style function call
-	syntax when assigning results.
-
-2009-02-09  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (hastests): Error if fopen fails.
-
-2009-01-29  John W. Eaton  <jwe@octave.org>
-
-	* test_system.m: Use isfield instead of struct_contains.
-
-2009-01-25  Thorsten Meyer  <thorsten@hexe>
-
-	* test_struct.m: Add struct array tests.
-
-2009-01-23  Søren Hauberg  <hauberg@gmail.com>
-
-	* test_prefer.m: Update to match new API of the 'type' function.
-
-2008-12-24  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (hastests): Use fread instead of fscanf to preserve
-	whitespace.
-
-2008-12-02  Jaroslav Hajek  <highegg@gmail.com>
-
-	* build_sparse_tests.sh: Fix test.
-
-2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_logical-wfi-f.m: Fix error messages.
-	* test_logical-wfi-t.m: Fix error messages.
-	* test_slice.m: Fix error messages.
-
-2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_null_assign.m: More test for null assignments.
-
-2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_null_assign.m: New tests.
-
-2008-06-11  John W. Eaton  <jwe@octave.org>
-
-	* test_error.m: Fix tests for usage.
-	* test_eval-catch.m, test_try.m: Fix expected output from lasterr.
-
-2008-06-02  David Bateman  <dbateman@free.fr>
-
-	* test_arith.m: Delete and move tests close to function
-	definitions.
-	* test_func.m: Also test for single precision return values.
-
-	* test_infnan.m, test_linalg.m, test_matrix.m, test_number.m):
-	Delet and move tests close to function definitions.
-	* test_range.m: Also test single precision examples.
-
-2008-05-19  Bill Denney  <bill@denney.ws>
-
-	* test_args.m: Update format to allow running "test test_args"
-	and add default argument tests.
-
-2008-05-09  Rafael Laboissiere  <rafael@debian.org>
-
-	* test_io.m, test_system.m: Use ischar instead of deprecated isstr.
-
-2008-05-06  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Use puts instead of printf where appropriate.
-	Fix missing newline in message.
-
-2008-03-26  David Bateman  <dbateman@free.fr>
-
-	* test_index-wfi-f.m: Split large block of tests.  New tests.
-
-2008-03-26  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (report_files_with_no_tests): New function.
-	Use it to report number of .m and .cc files without tests separately.
-
-2008-03-25  John W. Eaton  <jwe@octave.org>
-
-	* test_index-wfi-f.m: New tests.
-
-2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
-
-	* test_io.m: Add test for save with -struct modifier.
-
-2008-03-20  David Bateman  <dbateman@free.fr>
-
-	* test_func.m: Modify to test for char, cell and structure arrays.
-
-	* test_func.m: New test code that ensures that all operations
-	which work on dimensions alone (squeeze, triu, etc.) work for all
-	objects and preserve type.
-
-2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
-
-	* test_string.m: Fix isprint test under Win32, where
-	isprint(setstr(9)) is true.
-	* test_system.m: Add condition for various syscall tests. Make cd test
-	able to deal with drive-letter-only pathnames (e.g. C:\) under Win32.
-
-2008-03-07  John W. Eaton  <jwe@octave.org>
-
-	* test_logical-wfi-t.m, test_logical-wfi-f.m: Update tests for
-	logical indexing bug fix.
-
-2008-03-06  John W. Eaton  <jwe@octave.org>
-
-	* test_eval.m, test_diffeq.m, test_quad.m, test_signal.m:
-	Delete files with no tests.
-
-2008-02-25  Ben Abbott  <bpabbott@mac.com>
-
-	* test_eval-catch.m, test_io.m, test_try.m: Use cstrcat instead of
-	strcat.
-
-2008-02-22  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Replaced removed sparse functions like
-	spdiag with their generic names. Fix lu tests for modified
-	syntax. Test vector and scaling or LU and chol functions.
-	* test_linalg.m: Change error message of failing chol/lu test.
-
-2008-02-19  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Replaced removed spars functions like
-	spmin, with their  generic names.
-
-2008-01-22  John W. Eaton  <jwe@octave.org>
-
-	* test_poly.m, test_set.m, test_stats.m: Delete files with no tests.
-
-2008-01-22  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* test_linalg.m, test_matrix.m, test_number.m, test_poly.m,
-	test_signal.m, test_stats.m, test_string.m, test_system.m:
-	Move tests to individual source files.
-
-2008-01-15  Thomas Weber  <thomas.weber.mail@gmail.com>
-
-	* test_arith.m: Move tests to source files.
-
-2008-01-15  John W. Eaton  <jwe@octave.org>
-
-	* test_audio.m, test_control.m, test_image.m, test_optim.m,
-	test_plot.m, test_unix.m: Delete files with no tests.
-
-2007-12-21  John W. Eaton  <jwe@octave.org>
-
-	Version 3.0.0 released.
-
-2007-12-18  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Add tests for indexing like a([1,1],:),
-	a(:,[1,1]) and sparse(42)([1,1]).
-
-2007-12-11  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Drop argument to Fsparse to force mutation.
-	* test_range.m: Ditto.
-
-2007-12-10  John W. Eaton  <jwe@octave.org>
-
-	* test_nonlin.m: Delete.
-
-2007-12-03  David Bateman  <dbateman@free.fr>
-
-	* fntests.m: Also count the skipped tests.
-	* build_sparse_tests.sh: As appropriate make tests conditional on
-	HAVE_UMFPACK, HAVE_CHOLMOD and HAVE_CXSPARSE.
-
-2007-11-26  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: More care with sparse return values.
-
-2007-10-30  Kim Hansen  <kimhanse@gmail.com>
-
-	* build_sparse_tests.sh: Fix typo.
-
-2007-10-23  John W. Eaton  <jwe@octave.org>
-
-	* build_sparse_tests.sh (gen_sparsesparse_elementop_tests):
-	Use xtest for "assert(as./bs,sparse(af./bf,true),100*eps);" test.
-
-2007-10-12  John W. Eaton  <jwe@octave.org>
-
-	* Change copyright notices in all files that are part of Octave to
-	GPLv3 or any later version.
-
-2007-10-06  John W. Eaton  <jwe@octave.org>
-
-	* test_poly.m: Move residue test to residue.m.
-
-2007-09-29  Kim Hansen  <kimhanse@gmail.com>
-
-	* test_range.m: Test range data
-
-2007-09-21  John W. Eaton  <jwe@octave.org>
-
-	* test_slice.m: Fix test for x = ones ([0, 2]); x(idx) = N case.
-	See change for liboctave/Array.cc.
-
-2007-06-15  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Also report expected failures in summary.
-	Improved wording from Thomas Weber <thomas.weber.mail@gmail.com>.
-
-2007-06-06  John W. Eaton  <jwe@octave.org>
-
-	* test_signal.m: Rename internal assert function to xassert.
-
-2007-04-26  David Bateman  <dbateman@free.fr>
-
-	* test_for.m: Add tests for multi-dimensional matrices and cell
-	arrays.
-
-2007-04-04  Rafael Laboissiere  <rafael@debian.org>
-
-	* Makefile.in (clean): Also remove a.wav file created by
-	testing wavwrite.m.
-
-2007-04-03  Kim Hansen  <kimhanse@gmail.com>
-
-	* test_slice.m: New file.
-
-2007-03-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (dist): Use ln, not $(LN_S).
-
-2007-02-26  From Michael Goffioul  <michael.goffioul@swing.be>
-
-	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
-
-2007-02-20  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (check): Use --norc instead of --no-site-file.
-	From: Alex Zvoleff  <azvoleff@ucsd.edu>
-
-2007-02-19  John W. Eaton  <jwe@octave.org>
-
-	* test_system.m: Handle confirm_recursive_rmdir as function
-	instead of built-in variable.
-
-2007-02-07  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Add plea for help writing tests.
-
-2007-01-11  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Also handle scripts directory in the build tree.
-
-	* Makefile.in (OCTAVE_SCRIPT_PATH): Delete unused variable.
-
-2006-11-14  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
-
-	* fntests.m: Include liboctave in the list of directories to test.
-
-2006-08-25  John W. Eaton  <jwe@octave.org>
-
-	* test_io.m (testls): Allow for small variance in loaded values
-	for text data formats.  Use persistent local variables instead of
-	resetting rand seed.
-
-2006-08-22  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Don't force conversion to sparse boolean
-	return type for string mapper functions.
-
-2006-08-21  John W. Eaton  <jwe@octave.org>
-
-	* test_io.m: Use isequal (a, b) instead of a != b.  Use isequal
-	for struct and cell tests instead of more complex constructs.
-
-2006-06-27  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (distclean): Also remove test_sparse.m.
-
-2006-06-07  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Keep track of files with tests and report total.
-
-2006-06-01  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m (print_test_file_name, print_pass_fail): New functions.
-	(runtestdir, runtestscript): Use them.  Print info for each file
-	with tests.  Print info about files without tests to log file.
-	(run_test_dir): Rename from runtestdir.  Change all uses.
-	(run_test_script): Rename from runtestscript.  Change all uses.
-	Handle page_screen_output as a function instead of a built-in
-	variable.
-
-2006-05-04  John W. Eaton  <jwe@octave.org>
-
-	* test_prefer.m: Adjust tests for eliminated built-in variables.
-
-2006-04-29  John W. Eaton  <jwe@octave.org>
-
-	* Makefile.in (check): Use run-octave script.
-
-2006-04-28  John W. Eaton  <jwe@octave.org>
-
-	* test_prefer.m: Adjust tests for new way of handling warning state.
-	* build_sparse_tests.sh: Likewise.
-
-2006-04-11  John W. Eaton  <jwe@octave.org>
-
-	* test_system.m, test_struct.m, test_string.m, test_quad.m,
-	test_number.m, test_nonlin.m, test_matrix.m, test_linalg.m,
-	test_io.m, test_diffeq.m, test_arith.m: Update for new usage
-	message format.
-
-2006-04-03  David Bateman  <dbateman@free.fr>
-
-	* test_number.m: Reverse sense of isscalar and isvector tests
-	for recent changes.
-
-2006-03-21  John W. Eaton  <jwe@octave.org>
-
-	* test_system.m: Use cell arrays of character strings in fnmatch
-	tests.
-
-2006-03-16  John W. Eaton  <jwe@octave.org>
-
-	* test_system.m: End all *pwent tests with a call to endpwent.
-	End all *grent tests with a call to endgrent.
-
-2006-03-14  John W. Eaton  <jwe@octave.org>
-
-	* fntests.m: Prettier printing of output.
-	* test_eval.m: Disable chatty tests.
-
-2006-03-08  David Bateman  <dbateman@free.fr>
-
-	* test_system.m: Fix recursive rmdir test for recent change.
-
-2006-02-20  David Bateman  <dbateman@free.fr>
-
-	* build_spase_tests.sh: Add tests for ldiv tests for rectangular
-	diagonal, permuted diagonal, triangular and permuted triangular
-	matrices.
-
-2006-02-09  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: Add tests for sparse QR solvers.
-
-2006-01-21  David Bateman  <dbateman@free.fr>
-
-	* build_sparsetest.sh: Add new un-ordered indexing, assignment and
-	deletion tests.
-
-2006-01-13  Bill Denney  <bill@givebillmoney.com>
-
-	* test_system.m: Use filesep instead of "/" where needed.
-
-2005-12-14  David Bateman  <dbateman@free.fr>
-
-	* build_sparse_tests.sh: New script to build sparse matrix tests.
-	* fntests.m: New script to run the octave test code, with "make check".
-	* Makefile.in (DISTDIRS): Delete.
-	(dist): Simplify.
-	(OCTAVE_SCRIPT_PATH): Include . and $(srcdir).
-	(check): Run tests with fntest.m instead of runtest.
-	(test_sparse.m): New target.
-	(clean): Remove fntests.log instead of octave.log and octave.sum.
-
-	* tests/test_args.m, tests/test_infnan.m, tests/test_set.m,
-	tests/test_arith.m, tests/test_io.m, tests/test_signal.m,
-	tests/test_audio.m, tests/test_linalg.m, tests/test_sparse.m,
-	tests/test_contin.m, tests/test_logical-wfi-f.m, tests/test_stats.m,
-	tests/test_control.m, tests/test_logical-wfi-t.m, tests/test_string.m,
-	tests/test_diffeq.m, tests/test_matrix.m, tests/test_struct.m,
-	tests/test_error.m, tests/test_nonlin.m, tests/test_switch.m,
-	tests/test_eval-catch.m, tests/test_number.m, tests/test_system.m,
-	tests/test_eval.m, tests/test_optim.m, tests/test_transpose.m,
-	tests/test_for.m, tests/test_plot.m, tests/test_try.m,
-	tests/test_global.m, tests/test_poly.m, tests/test_unix.m,
-	tests/test_if.m, tests/test_prefer.m, tests/test_unwind.m,
-	tests/test_image.m, tests/test_quad.m, tests/test_while.m,
-	tests/test_index-wfi-f.m, tests/test_recursion.m,
-	tests/test_index-wfi-t.m, tests/test_return.m: Initial of conversion
-	of DejaGnu tests to test/assert infrastructure.
-
-2005-05-11  John W. Eaton  <jwe@octave.org>
-
-	* config/unix.exp: Start Octave with -H.
-
-2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/arith/prod-4.m, octave.test/arith/sum-4.m:
-	Cover more cases for empty matrices.
-
-2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* Makefile.in: Use @library_path_var@ instead of LD_LIBRARY_PATH.
-
-2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* qr-7.m: Remove randomness from complex matrix generator.
-	Increase tolerance on rosser matrix test.
-
-2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
-
-	* octave.test/linalg/qr-7.m: Replace large random matrix tests
-	of economy QR decomposition with small predictable tests.
-	Include numerically sensitive rosser matrix test.  Don't
-	report the measured norms.
-
-2002-04-24  Bill Lash  <lash@tellabs.com>
-
-	* test/octave.test/signal/signal.exp: Add unwrap test.
-	* test/octave.test/signal/unwrap-1.m: New file.
-
-2002-04-24  David Billinghurst  <David.Billinghurst@riotinto.com.au>
-
-	* octave.test/signal/signal.exp: Add tests for fft, ifft
-	fft2, ifft2 and detrend.
-	* octave.test/signal/detrend-1.m: New test.
-	* octave.test/signal/detrend-2.m: New test.
-	* octave.test/signal/detrend-3.m: New test.
-	* octave.test/signal/fft-1.m: New test.
-	* octave.test/signal/ifft-1.m: New test.
-	* octave.test/signal/fft2-1.m: New test.
-	* octave.test/signal/ifft2-1.m: New test.
-
-2002-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/diffeq/dassl-1.m (tol): Use relative tolerance for test.
-	* octave.test/diffeq/dassl-2.m (tol): Likewise.
-	* octave.test/diffeq/lsode-1.m (tol): Likewise.
-	* octave.test/diffeq/lsode-2.m (tol): Likewise.
-	* octave.test/diffeq/lsode-3.m (tol): Likewise.
-
-2002-04-12  Kienzle  <pkienzle@jazz.ncnr.nist.gov>
-
-	* config/unix.exp: Allow running of individual tests with
-	"runtest *.exp" from any of the directories under test/octave.test.
-
-2002-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/linalg/qr-7.m: New test.
-	From Paul Kienzle <pkienzle@jazz.ncnr.nist.gov>.
-
-2001-04-24  Christoph Spiel  <cspiel@hammersmith-consulting.com>
-
-	* Makefile.in (check): Allow user to specify which .exp file to run.
-	* octave.test/try, octave.test/eval-catch: New directories and tests.
-
-2000-06-07  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
-
-	* octave.test/quad/quad-1.m: Use absolute value of difference
-	from expected value when comparing with sqrt (eps).  Potential
-	problems like this were noticed by Przemek Klosowski
-	<przemek@rrdjazz.nist.gov>.
-	* octave.test/quad/quad-2.m: Likewise.
-	* octave.test/arith/exp-1.m: Likewise.
-	* octave.test/linalg/cond-1.m: Likewise.
-	* octave.test/linalg/eig-1.m: Likewise.
-	* octave.test/linalg/eig-2.m: Likewise.
-	* octave.test/linalg/inv-1.m: Likewise.
-	* octave.test/linalg/lu-2.m: Likewise.
-	* octave.test/linalg/svd-2.m: Likewise.
-	* octave.test/linalg/svd-10.m: Likewise.
-
-1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/system/mktime-1.m (t): Compare whole seconds only.
-
-Fri Dec  4 20:55:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/system/clock-1.m: Use standard format specifiers %d
-	and %H instead of %e and %k.
-
-Fri Oct 23 15:53:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/arith/exp-5.m: New test.
-
-	* octave.test/stats/mean-3.m: New version of mean accepts a second
-	optional arg.
-
-	* octave.test/system/date-1.m: Correct test for new Y2K-compliant
-	date function.
-
-Wed May 27 00:38:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/diffeq/dassl-1.m, octave.test/diffeq/dassl-2.m,
-	octave.test/diffeq/lsode-1.m: New tests, from David Billinghurst
-	<David.Billinghurst@riotinto.com.au>.
-
-	* octave.test/diffeq/lsode-2.m, octave.test/diffeq/lsode-3.m:
- 	New tests, from Peter Hopfgartner <phopfgartner@memc.inet.it>.
-
-Thu Apr 23 01:45:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in: If $(SHARED_LIBS), set LD_LIBRARY_PATH for running
-	Octave before installation is complete.
-
-Wed Apr 15 15:23:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/index/dfi-f/m-2.m, octave.test/index/dfi-f/index.exp:
-	Expect this test to succed now.
-
-Thu Mar  5 20:35:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/system/gmtime-1.m, octave.test/system/localtime-1.m:
-	Not all systems have time zone info in the struct.
-
-Mon Mar  2 14:36:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/io/binary-io-1.m (id): Use binary flag in fopen call.
-
-Wed Apr  2 21:59:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/prefer/prefer.exp: Delete prefer-36 and prefer-37.
-	* octave.test/prefer/prefer-36.m, octave.test/prefer/prefer-37.m:
-	Delete test files.
-
-Wed Mar 12 16:56:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (install-strip): New target.
-
-Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.5 released.
-
-Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.4 released.
-
-Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.3 released.
-
-Mon Jan 27 15:51:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.2 released.
-
-Thu Jan 23 13:48:19 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* octave.test/unwind/unwind-2.m: Scripts now stop executing when
-	errors are encountered.
-
-	* octave.test/return/return.exp: Return at top level is no longer
-	an error.
-
-Tue Jan  7 00:16:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0.1 released.
-
-Tue Dec 10 01:43:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 2.0 released.
-
-Fri Dec  6 15:23:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.94.
-
-Wed Nov 20 01:00:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.93.
-
-Thu Nov 14 00:05:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.92
-
-Thu Nov  7 12:43:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.91.
-
-Wed Oct 30 17:19:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Version 1.90.
-
-	* Makefile.in (DISTFILES): Add ChangeLog.
-
-Fri Feb  9 21:40:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
-
-	* Makefile.in (OCTAVE_SCRIPT_PATH): Add ../src directory (for .oct
-	files) and current directory (why not?).
-
-See ChangeLog.1 in the top level directory for earlier changes.
--- a/PROJECTS	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-Octave PROJECTS
-===============
-
-A list of proposed projects is maintained at: 
-             
-             http://wiki.octave.org/wiki.pl?Projects
-
-If you start working steadily on a project, please let
-maintainers@octave.org know.  We might have information that could help
-you.  You should also read the Contributing Guidelines chapter in the
-Octave manual.
--- a/README	Fri Jun 10 11:26:07 2011 -0400
+++ b/README	Fri Jun 10 14:35:42 2011 -0400
@@ -49,9 +49,9 @@
 features of GNU Make that are not present in other versions of make.
 GNU Make is very portable and easy to install.
 
-See the notes in the files INSTALL and INSTALL.OCTAVE for more
-specific installation instructions, including directions for
-installing Octave from a binary distribution.
+See the notes in the files INSTALL and the system-specific README files
+in the etc directory of the Octave source distribution for more specific
+installation instructions.
 
 Bugs and Patches
 ----------------
@@ -78,4 +78,4 @@
 maintainers mailing lists.
 
 
-Last updated: Sat, 07 Mar 2009 11:18:14 EST
+Last updated: Fri, 10 Jun 2011 14:02:32 EDT
--- a/README.Cygwin	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-Starting with version 3.0.1, Octave is once again part of the normal
-net distribution of Cygwin, available from http://www.cygwin.com.  
-
-It is possible to build Octave from source on Windows systems with Cygwin,
-but with the old gcc-3.4.4-3 compiler there are some performance
-problems related to the way C++ exception handling is implemented.
-This is a known problem with a long history and it is STRONGLY 
-encouraged to use gcc-4.3.2-1 or later.
-
-Current binary versions are built with gcc-4.3.4-3 while 
-binary version 3.0.2-2 was built with gcc-4.3.2-1.
-
-The latest development Octave development sources (octave-3.3.54+)
-are built with:
-
-configure --enable-shared \
-          --enable-float-truncate \
-          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4 
-          lt_cv_deplibs_check_method=pass_all \
-          LDFLAGS=-no-undefined 
-
-"--enable-float-truncate" is needed for the following bug:
-http://thread.gmane.org/gmane.comp.gnu.octave.bugs/12361/focus=12404
-Without it, one of the quadgk test will fail as
-"a=a" could be false due to truncation problems with 
-complex numbers. 
-
-"lt_cv_deplibs_check_method=pass_all"  is needed to bypass
-incorrect libtool detection of system capabilities and
-to allow shared libs building.
-
-
-Octave-3.2.4 was built using:
-
-configure --enable-shared \
-          --without-fltk \
-          --without-framework-opengl \
-          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4
-          CFLAGS="-Dtimezone=_timezone"
-
-
-Current Cygwin package maintainer for Octave:
-
-  Marco Atzeri
-  http://matzeri.altervista.org
-
-Marco Atzeri
-marco_atzeri@yahoo.it
-Italy
-
-Last updated: Mon Jan  3 18:53:41 WEST 2011
--- a/README.Linux	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
-There are binary packages for Debian, Fedora, and other GNU/Linux
-distributions.
-
-Octave should build cleanly from source on most GNU/Linux systems.
-
-
-John W. Eaton
-jwe@octave.org
-
-Last updated: Wed, 31 Oct 2007 16:22:26 EDT
--- a/README.MacOS	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,406 +0,0 @@
-1. Easy to install Binary Releases
-==================================
-
-A MacOS bundle is available from sourceforge.
-
-  http://octave.sourceforge.net/index.html
-
-There are also Octave packages available from both Fink and MacPorts.  Each
-of these package managers handle the details of compiling Octave from source.
-
-  http://www.finkproject.com
-  http://www.macports.org/
-
-
-2. Building from Source
-=======================
-
-Stable releases, development snapshots as well as the current developers
-sources are available. The sources for stable releases are available from
-the links below.
-
-  ftp://ftp.gnu.org/pub/gnu/octave/
-  http://ftp.gnu.org/pub/gnu/octave/
-
-Development snapshots, intended for testing, are available from the link
-below.
-
-  ftp://alpha.gnu.org/gnu/octave
-
-Links to the stable releases, snap shots, and instructions for obtaining
-the current development sources using mercurial can be found on Octave's 
-web-site below.
-
-  http://www.gnu.org/software/octave/download.html
-
-Building on MacOS can vary significantly between versions.  These
-instructions document the procedure for MacOS 10.6.X.
-
-
-2.1 Developer's Tools
----------------------
-
-Apple's Xcode Developer's Tools must be installed to build Octave on MacOS X.
-
-A fortran compiler is also required to build Octave.
-
-AT&T Research provides versions of gfortran which have been patched to work
-with gcc tool set bundled with Xcode.
-
-  http://r.research.att.com/tools/
-
-Alternatively, the Fink and MacPorts package managers provide more recent
-versions of gcc which include gfortan.  Those may be used to build the sources
-as well.  However, care must be taken.
-
-  * The same compiler must be used to build all all of Octave's sources.  This
-    is necessary to avoid conflicts between the compiler libraries such as
-    libstdc++.  For a successful build the first file in LDFLAGS must refer to
-    this library.  For example, if building with gcc-4.5 obtained from MacPorts
-    LDFLAGS would begin as,
-
-      export LDFLAGS="/opt/local/lib/gcc45/libstdc++.6.dylib [...]"
-
-  * As of MacOS 10.6.6, the 64-bit BLAS routines that are part of Apple's vecLib
-    (framework accelerate) are not functioning correctly.  As a work around, an
-    alternative BLAS/LAPACK library, such as ATLAS, must be used.  A bug report 
-    has been filed with Apple.
-
-      http://bugreport.apple.com
-      Title: "64 bit ABI issue with libBLAS.dylib"
-      Problem ID: 7850167
-      Date: April 11, 2010 at 12:04 AM
-
-
-2.2 Manual Package Management
------------------------------
-
-Instructions for building Octave are available on the web at the link below.
-
-    http://wiki.octave.org/wiki.pl?BuildFromSource
-
-In addition, those wishing to build on MacOS X (10.6.x) should read section
-2.1 above.
-
-2.2.1 Critical Dependencies
----------------------------
-
-The minimal dependencies needed to build Octave's snap-shots are listed below.
-
-  * Xcode
-
-  * Xcode-compatible gfortran: Available from http://r.reseach.att.com/tools
-
-  * gnu sed: Available from http://www.gnu.org/software/sed/
-
-      ./configure --prefix=/usr
-      make
-      sudo make install
-
-  * gnu pcre: Available from ftp://ftp.gnu.org/
-      The following build instructions will produce a universal binary,
-      allowing both 32- and 64-bit code to link to pcre.  Whenever replacing
-      libraries which came with the OS, it is necessary to compile them as
-      universal binaries (even if you are only going to use one architecture)
-      to avoid disrupting unrelated code which might also link to the library.
-
-      export CFLAGS="-arch i686 -arch x86_64"
-      export LDFLAGS="-arch i686 -arch x86_64"
-      ./configure --prefix=/usr --disable-dependency-tracking
-      make
-      sudo make install
-
-  * flex: Available from http://flex.sourceforge.net/
-
-      ./configure --prefix=/usr
-      make
-      sudo make install
-
-  * blas/lapack
-
-    - The Apple/Intel-provided BLAS works out of the box in 32-bit as long as
-      the -ff2c flag is used.  Alternatively, a wrapper for Apple's vecLib
-      framework may be used, enabling 64-bit.
-
-      https://mailman.cae.wisc.edu/pipermail/octave-maintainers/2011-January/022541.html
-
-A fully functional Octave requires additional dependencies.  Here is an example
- of how to compile one of them as a universal binary:
-
-  * fftw3: Available from http://www.fftw.org/download.html
-
-      export F77="/usr/bin/gfortran"
-      export CFLAGS="-arch i686 -arch x86_64"
-      export FFLAGS="$CFLAGS"
-      export LDFLAGS="$CFLAGS"
-      ./configure --disable-dependency-tracking
-      make
-      sudo make install
-      make clean
-      ./configure --enable-float --disable-dependency-tracking
-      make
-      sudo make install
-
-See the link below for additional details about optional dependencies.
-
-    http://wiki.octave.org/wiki.pl?BuildFromSource
-
-TODO - Modify the configure script to test for 64 bit vecLib bug.  When the bug
-       is present, apply the wrapper solution.
-
-
-2.2.2 Building Octave as a 32-bit Application
---------------------------------------------
-
-The commands below are sufficient to build a 32-bit Octave.
-
-  export FC="/usr/bin/gfortran"
-  export CFLAGS="-m32"
-  export FFLAGS="$CFLAGS -ff2c"
-  export CPPFLAGS="$CFLAGS -D_REENTRANT -D__LISTS__"
-  export LDFLAGS="$CFLAGS"
-  ./configure --disable-readline --disable-docs
-  make
-
-Octave provides an integrated tests suite.
-
-  make check
-
-Octave may be run without installing the application using the utility below.
-
-  ./run-octave
-
-2.2.3 Building Octave as a 64-bit Application
---------------------------------------------
-
-The commands below are sufficient to build a 64-bit Octave.
-
-  export FC="/usr/bin/gfortran"
-  export CFLAGS="-arch x86_64"
-  export FFLAGS="$CFLAGS"
-  export CPPFLAGS="$CFLAGS -D_REENTRANT -D__LISTS__"
-  export LDFLAGS="$CFLAGS"
-  ./configure --disable-readline --disable-docs
-  make
-
-Octave provides an integrated tests suite.
-
-  make check
-
-Octave may be run without installing the application using the utility below.
-
-  ./run-octave
-
-
-2.3 Building With Dependencies Satisfied by Fink
-------------------------------------------------
-
-To install and setup the Fink package manager see the on line documentation.
-
-  http://www.finkproject.org/
-
-Currently, Fink does not have a package available for Octave versions above
-3.0.x.  These instructions will allow the developers sources to be build and
-run, but will not permit Octave to be installed in the usual Fink way.
-
-TODO - When a Fink package is developed for Octave 3.4.x, modify these 
-       instructions to model the MacPorts section.
-
-
-2.3.1 Dependencies
-------------------
-
-To build Octave's sources the list of Fink packages below need to be installed.
-
-  aquaterm
-  arpack
-  autoconf (>= 2.6.0)
-  automake (>= 1.11)
-  fftw3 (>= 3.1.1)
-  fftw3-shlibs (>= 3.1.1)
-  flex >= 2.5.30
-  fltk-aqua-shlibs 
-  glpk-dev
-  glpk-shlibs
-  gnuplot (>= 4.2.6)
-  graphicsmagick (<= 1.3.7)
-  graphicsmagick-shlibs (<= 1.3.7)
-  hdf5 (>= 1.6.5)
-  hdf5-shlibs (>= 1.6.5)
-  libcurl4
-  libcurl4-shlibs
-  libncurses5
-  libncurses5-shlibs
-  libtool >= 2.2.2 
-  ncurses
-  pcre
-  pcre-shlibs
-  qhull
-  qrupdate [1]
-  readline5
-  readline5-shlibs 
-  sed
-  suitesparse (= 3.1.0-1 )
-
-Some of Octave's dependencies are among the default packages for Fink.  These
-include the list below, and possibly others as well.
-
-  tetex
-  texinfo
-
-For fully functional printing (graphics output), the following packages must
-be installed.
-
-  epstool
-  ghostscript
-  pstoedit
-  transfig [2]
-
-[1] Fink does not yet have a package for qrupdate.  However, one is available
-    in the tracker at the link below.
-
-    http://sourceforge.net/tracker/index.php?func=detail&aid=2861045&group_id=17203&atid=414256
-
-[2] Optionally the "xfig" package may be installed.
-
-
-2.3.2 Building With Dependencies Satisfied by Fink
---------------------------------------------------
-
-After installing each of the dependencies, the sources are compiled by
-setting the proper environment variables and then following the standard build
-sequence.  The following is an example set of variables for a 32-bit build
-using gcc-4.2.  When building from the sources obtained from the mercurial
-archive, ./autogen.sh must be run prior to ./configure.
-
-  export FINK_PREFIX="/sw"
-  export PREFIX="/usr/local/bin"
-
-  export OPTFLAGS="-O2 -g"
-  export LDFLAGS="-L$FINK_PREFIX/lib -L/usr/lib -m32"
-  export CFLAGS="-I$FINK_PREFIX/include $OPTFLAGS -m32"
-  export CXXFLAGS=$CFLAGS
-  export CPPFLAGS="$CXXFLAGS -D__LISTS__"
-  export ACLOCAL_FLAGS="-I$FINK_PREFIX/share/aclocal"
-  export PKG_CONFIG_PATH="$FINK_PREFIX/lib/pkgconfig"
-  export PATH="$FINK_PREFIX/var/lib/fink/path-prefix-10.6/:$PATH"
-  export MACOSX_DEPLOYMENT_TARGET=10.5
-  export PATH="$FINK_PREFIX/lib/flex/bin:$PATH"
-  export CPPFLAGS="-I$FINK_PREFIX/lib/flex/include $CPPFLAGS"
-  export LDFLAGS="-L$FINK_PREFIX/lib/flex/lib $LDFLAGS"
-  export CC="gcc-4.2"
-  export CPP="cpp-4.2"
-  export CXX="g++-4.2"
-  export F77="/usr/bin/gfortran-4.2"
-  export FLIBS="-lgfortran -lgfortranbegin"
-  export FFLAGS="-ff2c $OPTFLAGS -m32"
-  export CPPFLAGS="$CPPFLAGS -I$FINK_PREFIX/include/freetype2 \
-                             -I$FINK_PREFIX/include/qhull \
-                             -I/usr/include"
-  export CXXFLAGS="$CXXFLAGS -D_THREAD_SAFE -D_REENTRANT"
-
-  ./configure --prefix=$PREFIX \
-              --libexecdir='${prefix}/lib' \
-              --with-blas="-Wl,-framework -Wl,vecLib"
-  make
-
-Note: This approach to building Octave does not support "make install".
-
-TODO - Develop a Fink package for Octave 3.4.x.
-
-
-2.4 Building With Dependencies Satisfied by MacPorts
-----------------------------------------------------
-
-To install and setup the MacPorts package manager see the online documentation
-
-    http://guide.macports.org/
-
-Using MacPorts, two approaches are described.  The first describes how to build
-and locally install Octave from a formal snapshot of the developer's sources or
-from the developer's sources themselves.  This is intended to the casual Octave
-developer, or for users who want to live on the bleeding edge.
-
-The second describes an approach for building Octave which is intended for
-active developers.  In this case, MacPorts is used to satisfy Octave's
-dependencies, but MacPorts does not build Octave.  Further a direct install of
-Octave is not possible (i.e., cannot "make install").
-
-
-2.4.1 Building and Installing Octave
-------------------------------------
-
-With MacPorts building the developer's sources is convenient.  MacPorts
-includes a port file for octave-devel.  To build and run the most recent
-development snapshots, enter the commands below.
-
-    sudo port selfupdate
-    sudo port install octave-devel
-
-To build the developers sources in one's own way, or if MacPorts' version is
-outdated, a custom port file can be added.  This requires setting up a local
-port file repository (link below).
-
-    http://guide.macports.org/#development.local-repositories
-
-The octave-devel port file may be used as an initial starting point.  The port
-file is accessible from the web at the link below.
-
-    http://trac.macports.org/browser/trunk/dports/math/octave-devel/Portfile
-
-It is also available locally at the location below.  The parameter ${prefix} is
-corresponds to where MacPorts is install, which by default is "/opt/local".
-
-    ${prefix}/var/macports/sources/rsync.macports.org/release/ports/math/octave-devel/Portfile
-
-The local source tarball must be placed in the location below, where ${name}
-and ${distname} are each specified in the port file.
-
-    ${prefix}/var/macports/distfiles/${name}/${disname}.tar.gz
-
-
-2.4.2 Building for Active Development of Octave
------------------------------------------------
-
-To satisfy Octave's dependencies, first install the octave-devel port.
-
-    sudo port selfupdate
-    sudo port install octave-devel
-
-Next run octave to determine the configure options needed to build Octave
-using MacPorts.  At Octave's prompt type the command below and make note of
-the result, ${config_opts}.
-
-    octave:1> octave_config_info.config_opts
-
-Now uninstall the Octave port.
-
-    sudo port deactivate octave-devel
-
-This will remove Octave and leave its dependencies in place.  Now Octave may
-be built from the local mercurial archive by typing the commands below, where
-the configure options mentioned above are substituted for the parameter
-${config_opts}.  If the sources being built are from the mercurial archive,
-then ./autogen.sh must be run prior to ./configure.
-
-    ./configure ${config_opts}
-    make
-
-Octave's integrated tests may be run.
-
-    make check
-
-However, "make install" should not be run as it may damage or corrupt the
-MacPorts installation.  To run Octave, type the command below from the root of
-the mercurial archive.
-
-    ./run-octave
-
-
-John W. Eaton
-jwe@octave.org
-
-Ben Abbott
-bpabbott@mac.com
-
-Last updated: Sat Feb 19 14:15:04 PST 2011
--- a/README.MinGW	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,108 +0,0 @@
-1. General Users
-================
-
-A MInGW bundle is available from sourceforge.
-
- http://octave.sourceforge.net/index.html
-
-2. Developers
-=============
-
-The process for building Octave from source is as follows.
-
- * Install development tools and compiler
- * Install or compile dependencies of Octave
- * Download Octave source
- * Configure and compile source
-
-We strongly encourage experienced users to build Octave from the
-testing and development snapshots to try the latest features of Octave.
-
-A good tutorial on building Octave for version 3.2 is available from 
-http://octave.svn.sourceforge.net/viewvc/octave/trunk/octave-forge/admin/Windows/mingw32/HOWTO.txt 
-
-Additional information beyond the tutorial is summarized below.
-
- 2.1 Development tools and compiler
- ----------------------
- Msys + MinGW development Tools
-
- The Msys + MinGW development Tools are required to build Octave from source.
-
- The latest version of the Msys system is 1.0.16.  For MinGW, search and use
- the most recent version available.  Note: The Howto.txt file describing
- the development tools is rather old.
-
- The latest GCC (GNU Complier Collection) for MinGW is gcc-4.5.0.  Earlier
- versions are not recommended for building Octave 3.4.xx.
-
- The latest Msys, MinGW, and GCC tools can be downloaded from 
- http://sourceforge.net/projects/mingw/files/ 
-
- (Compiling for 64-bit binaries requires mingw-64 toolkits.  This has not been
-  tested.)
-
- 2.2 Dependencies
- ----------------------
-
- External program dependencies
- 
-  * gnuplot (you can build this with the shell script mentioned in Howto.txt)
-  * MikTeX
-  * ghostscript
-  * pstoedit (required for printing using FLTK (OpenGL) graphics)
-  * fig2dev (Optional; better quality for FLTK printing in some file formats)
-  * sed
-  * less
-
- The tools below are required for building the development sources from
- the Mercurial archive, but not for simply building Octave from a snapshot
- tar.gz file.
-
-  * Mercurial
-  * git
-  * automake
-  * autoconf
-
- Library dependencies
-
-  Please read Howto.txt carefully on how to build them.  The Howto.txt is old
-  so some revisions will be required when using GCC-4.5.0
-
- 2.3 Download Octave source
- ----------------------
-
-  The source for testing snapshots can be downloaded from the official Octave
-  web site.  http://www.gnu.org/software/octave/download.html 
-
-  The very latest development code is also available via anonymous access to a
-  read-only Mercurial archive.  The method of download is described on the web
-  site.  You will also need to install gnulib as another dependency.  Please
-  visit http://www.gnu.org/software/gnulib/ and download sources using git.
-
- 2.4 Configure and compile source
- ----------------------
-
-  Building from source can be carried out using the script described in
-  Howto.txt.  
-  
-  When using GCC-4.5.0, remove flags for shared libstdc++ because a shared
-  build is already the default.
-
-  When running './configure', you must add '--enable-float-truncate' option. 
-  Please see the following thread for more information: 
-  http://thread.gmane.org/gmane.comp.gnu.octave.bugs/12361/focus=12404
-
-  To build development sources from the Mercurial repository you must run
-  'autogen.sh' (bootstrap) before running configure and make.  This requires
-  that automake and autoconf tools be installed.
-
-
-Tatsuro MATSUOKA
-tmacchant@yahoo.co.jp
-
-Benjamin Lindner
-bjmldn@gmail.com 
-
-
-Last updated: Sat Jan 22 17:29:12 PST 2011
--- a/README.Windows	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-See the file README.Cygwin for information about installing the binary
-package of Octave for Cygwin.
-
-See the file README.MinGW for information about Octave on the MinGW platform
-including installation of binaries or compiling Octave from source.
-
-
-John W. Eaton
-jwe@octave.org
-
-Last updated: Sat Jan 22 16:56:05 PST 2011
--- a/README.devel	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-This directory contains development releases of Octave.
-
-If you want a stable, well-tested version of Octave, you should be
-looking at ftp://ftp.gnu.org/gnu/octave.
-
-Development releases are provided for people who want to help test,
-debug, and improve Octave.  Very little testing is done before making
-the development releases and they may even be made when Octave is in
-an inconsistent state.  It is possible that you will encounter a
-very obvious bug, such as a failure to compile on *any* machine.  It is
-likely that such bugs will be fixed by the next development release,
-so it really isn't necessary to report them unless they persist over
-more than one release.
-
-Please DO report other bugs in the development releases as soon as you
-find them.  Bugs should be reported to the bug tracker at
-'http://bugs.octave.org'.  Please read read the bug reporting
-guidelines (http://www.gnu.org/software/octave/bugs.html) before
-submitting an item.
-
-If you have a fix for a bug, or an enhancement to submit, send your
-patch to maintainers@octave.org or submit it to the patch
-tracker at 'http://savannah.gnu.org/patch/?group=octave'. 
-
-By adhering to the following guidelines you can minimize the work that
-Octave maintainers need to do to apply your patch.  Maintaining Octave
-is a lot of work in the best of circumstances, and we can't keep up
-unless you do your best to help.
-
-   * Send an explanation with your changes of what problem they fix or
-     what improvement they bring about.  For a bug fix, just include a
-     copy of the bug report, and explain why the change fixes the bug.
-
-   * Always include a proper bug report for the problem you think you
-     have fixed.  We need to convince ourselves that the change is
-     right before installing it.  Even if it is right, we might have
-     trouble judging it if we don't have a way to reproduce the problem.
-
-   * Include all the comments that are appropriate to help people
-     reading the source in the future understand why this change was
-     needed.
-
-   * Don't mix together changes made for different reasons.  Send them
-     _individually_.
-
-     If you make two changes for separate reasons, then we might not
-     want to install them both.  We might want to install just one.
-
-   * Use `diff -c' to make your diffs.  Diffs without context are hard
-     for us to install reliably.  More than that, they make it hard for
-     us to study the diffs to decide whether we want to install them.
-     Unified diff format is better than contextless diffs, but not as
-     easy to read as `-c' format.
-
-     If you have GNU diff, use `diff -cp', which shows the name of the
-     function that each change occurs in.
-
-   * Write the change log entries for your changes.
-
-     Read the `ChangeLog' file to see what sorts of information to put
-     in, and to learn the style that we use.  The purpose of the
-     change log is to show people where to find what was changed.  So
-     you need to be specific about what functions you changed; in
-     large functions, it's often helpful to indicate where within the
-     function the change was made.
-
-     On the other hand, once you have shown people where to find the
-     change, you need not explain its purpose.  Thus, if you add a new
-     function, all you need to say about it is that it is new.  If you
-     feel that the purpose needs explaining, it probably does--but the
-     explanation will be much more useful if you put it in comments in
-     the code.
-
-     If you would like your name to appear in the header line for who
-     made the change, send us the header line.
-
-If you would like to be on the very sharpest part of the bleeding
-edge, you can now use Mercurial to access Octave's current development
-sources.  Instructions for checking out a copy are available on the
-web at http://www.gnu.org/software/octave/download.html.
-
-Last updated: Sat Jan 22 21:26:18 PST 2011
--- a/README.ftp	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,38 +0,0 @@
-This directory contains the source for Octave, a high-level interactive
-language for solving numerical problems.  See the file README for more general
-information, and the file NEWS for a list of recent changes.
-
-Binary distributions:
---------------------
-
-Octave binaries are not distributed from this site.
-
-Packaged versions of Octave for various GNU/Linux systems are available
-with the major GNU/Linux distributions (Debian, Ubuntu, Red Hat, SUSE, etc.).
-
-Binary distributions of Octave for Mac OS X are available from both Fink
-and MacPorts.
-
-  http://www.finkproject.com
-  http://www.macports.org/
-
-The file README.Windows provides instructions for installing Octave on
-Windows systems.
-
-A note about .gz files:
-----------------------
-
-Files with names ending in `.gz' have been compressed with `gzip'.
-
-Unlike the compress utility, gzip is free of any known software
-patents and tends to compress better anyway.  Gzip can uncompress
-`compress'-compressed files too, so you can install it as "uncompress"
-and use it to handle both types of files.
-
-The gzip program is available in the directory /pub/gnu in shar, tar,
-or gzipped tar format (for those who already have a prior version of
-gzip and want faster data transmission).  It works on virtually every
-unix system, MSDOS, OS/2, and VMS.
-
-
-Last updated: Thu Jan 20 10:14:49 PST 2011
--- a/README.gnuplot	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-Octave works best with gnuplot 4.4 or higher, which is available from
-http://www.gnuplot.info.
-
-In versions prior to 4.2.6 it is not possible to use the mouse to zoom in
-on plots.  This is a limitation of earlier versions of gnuplot, which are
-unable to zoom when the data it plots is not stored in a file. 
-
-
-John W. Eaton
-jwe@octave.org
-
-Last updated: Tue Jan  4 18:55:56 PST 2011
--- a/README.kpathsea	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,171 +0,0 @@
-The code in the files
-
-  liboctave/kpse.cc
-  liboctave/kpse-xfns.h
-  liboctave/kpse-xfns.c
-
-was adapted from the kpathsearch library.  We don't use kpathsearch
-directly now because it has too many TeX-specific things that are not
-necessary for Octave, and it also does not implement all the special
-kinds of file searches that Octave needs (mainly for compatibility
-with Matlab).
-
-Original authors of the kpathsearch library
--------------------------------------------
-
-Karl Berry wrote all files not otherwise marked, with help from Kathryn
-Hargreaves on some of the original versions.
-
-Thomas Esser originated most of the MakeTeX... scripts.
-
-The brace expansion code in expand.c was written by Brian Fox and Chet
-Ramey for Bash, the GNU shell.
-
-The implementation of the link trick in pathsearch.c is taken from GNU
-find, implemented by David MacKenzie from Matthew Farwell's suggestion.
-
-Debugging
----------
-
-  Kpathsea provides a number of runtime debugging options, detailed
-below by their names and corresponding numeric values.  When the files
-you expect aren't being found, the thing to do is enable these options
-and examine the output.
-
-  You can set these with some runtime argument (e.g., `-d') to the
-program; in that case, you should use the numeric values described in
-the program's documentation (which, for Dvipsk and Xdvik, are different
-than those below).  It's best to give the `-d' (or whatever) option
-first, for maximal output.  Dvipsk and Xdvik have additional
-program-specific debugging options as well.
-
-  You can also set the environment variable `KPATHSEA_DEBUG'; in this
-case, you should use the numbers below.  If you run the program under a
-debugger and set the variable `kpathsea_debug', also use the numbers
-below.
-
-  In any case, by far the simplest value to use is `-1', which will
-turn on all debugging output.  This is usually better than guessing
-which particular values will yield the output you need.
-
-  Debugging output always goes to standard error, so you can redirect it
-easily.  For example, in Bourne-compatible shells:
-     dvips -d -1 ... 2>/tmp/debug
-
-  It is sometimes helpful to run the standalone Kpsewhich utility
-(*note Invoking kpsewhich::.), instead of the original program.
-
-  In any case, you can *not* use the *names* below; you must always use
-somebody's numbers.  (Sorry.)  To set more than one option, just sum
-the corresponding numbers.
-
-`KPSE_DEBUG_STAT (1)'
-     Report `stat'(2) calls.  This is useful for verifying that your
-     directory structure is not forcing Kpathsea to do many additional
-     file tests (*note Slow path searching::., and *note Subdirectory
-     expansion::.).  If you are using an up-to-date `ls-R' database
-     (*note Filename database::.), this should produce no output unless
-     a nonexistent file that must exist is searched for.
-
-`KPSE_DEBUG_HASH (2)'
-     Report lookups in all hash tables: `ls-R' and `aliases' (*note
-     Filename database::.); font aliases (*note Fontmap::.); and config
-     file values (*note Config files::.).  Useful when expected values
-     are not being found, e.g.., file searches are looking at the disk
-     instead of using `ls-R'.
-
-`KPSE_DEBUG_FOPEN (4)'
-     Report file openings and closings.  Especially useful when your
-     system's file table is full, for seeing which files have been
-     opened but never closed.  In case you want to set breakpoints in a
-     debugger: this works by redefining `fopen' (`fclose') to be
-     `kpse_fopen_trace' (`kpse_fclose_trace').
-
-`KPSE_DEBUG_PATHS (8)'
-     Report general path information for each file type Kpathsea is
-     asked to search.  This is useful when you are trying to track down
-     how a particular path got defined--from `texmf.cnf', `config.ps',
-     an environment variable, the compile-time default, etc.  This is
-     the contents of the `kpse_format_info_type' structure defined in
-     `tex-file.h'.
-
-`KPSE_DEBUG_EXPAND (16)'
-     Report the directory list corresponding to each path element
-     Kpathsea searches.  This is only relevant when Kpathsea searches
-     the disk, since `ls-R' searches don't look through directory lists
-     in this way.
-
-`KPSE_DEBUG_SEARCH (32)'
-     Report on each file search: the name of the file searched for, the
-     path searched in, whether or not the file must exist (when drivers
-     search for `cmr10.vf', it need not exist), and whether or not we
-     are collecting all occurrences of the file in the path (as with,
-     e.g., `texmf.cnf' and `texfonts.map'), or just the first (as with
-     most lookups).  This can help you correlate what Kpathsea is doing
-     with what is in your input file.
-
-`KPSE_DEBUG_VARS (64)'
-     Report the value of each variable Kpathsea looks up.  This is
-     useful for verifying that variables do indeed obtain their correct
-     values.
-
-`GSFTOPK_DEBUG (128)'
-     Activates debugging printout specific to `gsftopk' program.
-
-`MAKETEX_DEBUG (512)'
-     If you use the optional `mktex' programs instead of the
-     traditional shell scripts, this will report the name of the site
-     file (`mktex.cnf' by default) which is read, directories created by
-     `mktexdir', the full path of the `ls-R' database built by
-     `mktexlsr', font map searches, `MT_FEATURES' in effect, parameters
-     from `mktexnam', filenames added by `mktexupd', and some
-     subsidiary commands run by the programs.
-
-`MAKETEX_FINE_DEBUG (1024)'
-     When the optional `mktex' programs are used, this will print
-     additional debugging info from functions internal to these
-     programs.
-
-  Debugging output from Kpathsea is always written to standard error,
-and begins with the string `kdebug:'.  (Except for hash table buckets,
-which just start with the number, but you can only get that output
-running under a debugger.  See comments at the `hash_summary_only'
-variable in `kpathsea/db.c'.)
-
-Logging
--------
-
-  Kpathsea can record the time and filename found for each successful
-search.  This may be useful in finding good candidates for deletion when
-your filesystem is full, or in discovering usage patterns at your site.
-
-  To do this, define the environment or config file variable
-`TEXMFLOG'.  The value is the name of the file to append the
-information to.  The file is created if it doesn't exist, and appended
-to if it does.
-
-  Each successful search turns into one line in the log file: two words
-separated by a space.  The first word is the time of the search, as the
-integer number of seconds since "the epoch", i.e., UTC midnight 1
-January 1970 (more precisely, the result of the `time' system call).
-The second word is the filename.
-
-  For example, after `setenv TEXMFLOG /tmp/log', running Dvips on
-`story.dvi' appends the following lines:
-
-     774455887 /usr/local/share/texmf/dvips/config.ps
-     774455887 /usr/local/share/texmf/dvips/psfonts.map
-     774455888 /usr/local/share/texmf/dvips/texc.pro
-     774455888 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmbx10.600pk
-     774455889 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmsl10.600pk
-     774455889 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmr10.600pk
-     774455889 /usr/local/share/texmf/dvips/texc.pro
-
-Only filenames that are absolute are recorded, to preserve some
-semblance of privacy.
-
-
-John W. Eaton
-jwe@octave.org
-
-Last updated: Wed, 31 Oct 2007 16:33:13 EDT
--- a/README.mirrors	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,12 +0,0 @@
-If you have trouble transferring Octave from this site, you might try
-one of those listed below.  They mirror the /pub/octave directory on
-ftp.octave.org
-
-FTP:
-
-  site                          directory
-  ----                          ---------
-  ftp.u-aizu.ac.jp              /pub/SciEng/numanal/Octave
-  mirrors.fe.up.pt              /pub/octave
-
-Last updated: Mon Jan 10 21:26:17 PST 2011
--- a/README.snapshots	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-Octave Snapshots -- general info
-
-Snapshots are an "image" of the main Octave development tree, captured
-at a particular random instant in time.  When you use the snapshots,
-you should be able to maintain a local copy of Octave that is
-reasonably close to the official source tree used by the Octave
-maintainers.
-
-The primary purpose of providing snapshots is to widen the group of
-motivated developers that would like to help test, debug, and enhance
-Octave, by providing you with access to the "latest and greatest"
-source.  This has several advantages, and several disadvantages.
-
-    First the advantages:
-
-    o	Once we have a large base of motivated testers using the
-	snapshots, this should provide good coverage across all
-	currently supported Octave hosts and targets.  If a new bug is
-	introduced in Octave due to fixing another bug or ongoing
-	development, it should become obvious much more quickly and
-	get fixed before the next general net release.  This should
-	help to reduce the chances of Octave being released to the
-	general public with a major bug that went unnoticed during the
-	release cycle testing because they are machine dependent.  We
-	hope to greatly improve Octave's stability and reliability by
-	involving more people and more execution environments in the
-	prerelease testing.
-
-    o	With access to the latest source, any diffs that you send to fix
-	bugs or add new features should be much easier for the Octave
-	maintainers to merge into the official source base (after
-	suitable review of course).  This encourages us to merge your
-	changes quicker, while they are still "fresh".
-
-    o	Once your diffs are merged, you can obtain a new copy of Octave
-	containing your changes almost immediately.  Thus you do not
-	have to maintain local copies of your changes for any longer
-	than it takes to get them merged into the official source
-	base.  This encourages you to send in changes quicker.
-
-    And the disadvantages:
-
-    o	The snapshot you get will be largely untested and of unknown
-	quality.  It may fail to configure or compile.  It may have
-	serious bugs.  You should always keep a copy of the last known
-	working version before updating to the current snapshot, or at
-	least be able to regenerate a working version if the latest
-	snapshot is unusable in your environment for some reason.
-
-	If a production version of Octave has a bug and a snapshot has
-	the fix, and you care about stability, you should put only the
-	fix for that particular problem into your production version.
-	Of course, if you are eager to test Octave, you can use the
-	snapshot versions in your daily work, but users who have not
-	been consulted about whether they feel like testing Octave should
-	generally have something which is at least as bug free as the
-	last released version.
-
-    o	Providing timely response to your questions, bug reports, and
-	submitted patches will require the Octave developers to
-	allocate time from an already thin time budget.  Please try to
-	help us make this time as productive as possible.  See the
-	section below about how to submit changes.
-
-
-How to get the snapshots
-------------------------
-
-The current plan is to provide a full snapshot every week or so.  For
-now, diffs from previous versions will not be available.  The files
-will be available via anonymous ftp from ftp.octave.org, in the
-directory /private/octave in the form of a tar files compressed with
-GNU gzip.  You can ftp gzip from ftp.octave.org in the directory
-/pub/gnu.
-
-Even though the snapshots are available in a public place, we ask that
-recipients not widely publicize the availability of the snapshots.
-The motivation for this request is not to hoard them, but to avoid the
-situation where the general Octave user base naively attempts to use
-the snapshots, has trouble with them, complains publicly, and the
-reputation of Octave declines because of a perception of instability
-or lack of quality control.
-
-
-Octave test suite
------------------
-
-A test suite is distributed as an integral part of the snapshots.
-However, to use it you will need to get a copy of the dejagnu testing
-framework.  Snapshots of dejagnu are available alongside the Octave
-snapshots, using the same naming conventions as the Octave snapshots.
-Once you have installed the dejagnu framework, a simple "make check"
-in the Octave directory should be sufficient to run the tests.
-
-Note that the test suite is still quite limited.  The test framework
-itself might not install on your system if you have an environment
-that is not similar to one that the Octave developers already use.
-The tests themselves only cover a small portion of Octave features,
-and what tests do exist for a feature are not exhaustive.  New tests
-are welcomed.
-
-
-Bug reports
------------
-
-Send bug reports to maintainers@octave.org.
-
-Note that since no testing is done on the snapshots, and snapshots may
-even be made when Octave is in an inconsistent state, it may not be
-unusual for an occasional snapshot to have a very obvious bug, such as
-failure to compile on *any* machine.  It is likely that such bugs will
-be fixed by the next snapshot, so it really isn't necessary to report
-them unless they persist over more than one snapshot.
-
-Missing files should always be reported, since they usually mean there
-is a problem with the snapshot-generating process and we won't know
-about them unless someone tells us.
-
-Bugs which are non-obvious, such as failure to compile on only a
-specific machine, a new machine dependent or obscure bug (particularly
-one not detected by the testsuite), etc. should be reported when you
-discover them, or have a suggested patch to fix them.
-
-
-FORMAT FOR PATCHES
-------------------
-
-If you have a fix for a bug, or an enhancement to submit, send your
-patch to maintainers@octave.org.  Here are some simple guidelines for
-submitting patches:
-
-    o	Use "context diffs" for patches.  A typical command for
-	generating context diffs is "diff -rc octave-old octave-new".
-
-    o	Use the "minimalist approach" for patches.  That is, each patch
-	should address only one particular bug, new feature, etc.  Do
-	not save up many unrelated changes and submit them all in one
-	big patch, since in general, the larger the patch the more
-	difficult it is for us to decide if the patch is either
-	correct or desirable.  And if we find something about the
-	patch that needs to be corrected before it can be installed,
-	we would have to reject the entire patch, which might contain
-	changes which otherwise would be accepted if submitted
-	separately.
-
-    o	Submit a sample ChangeLog entry with your patch.  See the
-	existing Octave ChangeLog for examples of what a ChangeLog
-	entry should look like.  The emacs command ^X4A will create a
-	ChangeLog entry header for you.
-
-
-Thanks,
-
-John W. Eaton
-jwe@octave.org
-
-Wed, 31 Oct 2007 16:31:54 EDT
-
-This file was adapted from a similar document written by Fred Fish and
-used by the GDB developers.
-
--- a/acinclude.m4	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1597 +0,0 @@
-dnl aclocal.m4 -- extra macros for configuring Octave
-dnl
-dnl Copyright (C) 1995-2011 John W. Eaton
-dnl 
-dnl This file is part of Octave.
-dnl 
-dnl Octave is free software; you can redistribute it and/or modify it
-dnl under the terms of the GNU General Public License as published by the
-dnl Free Software Foundation; either version 3 of the License, or (at
-dnl your option) any later version.
-dnl 
-dnl Octave is distributed in the hope that it will be useful, but WITHOUT
-dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-dnl FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-dnl for more details.
-dnl 
-dnl You should have received a copy of the GNU General Public License
-dnl along with Octave; see the file COPYING.  If not, see
-dnl <http://www.gnu.org/licenses/>.
-dnl
-dnl
-dnl Copyright (C) 2008 - 2009 Free Software Foundation, Inc.
-dnl
-dnl If needed, define the m4_ifblank and m4_ifnblank macros from autoconf 2.64
-dnl This allows us to run with earlier Autoconfs as well.
-dnl FIXME: these should go away once Autoconf 2.64 is required or ubiquitous.
-dnl
-ifdef([m4_ifblank],[],[
-m4_define([m4_ifblank],
-[m4_if(m4_translit([[$1]],  [ ][	][
-]), [], [$2], [$3])])])
-dnl
-ifdef([m4_ifnblank],[],[
-m4_define([m4_ifnblank],
-[m4_if(m4_translit([[$1]],  [ ][	][
-]), [], [$3], [$2])])])
-dnl
-dnl ----------------------------------------------------------------------
-dnl
-dnl Figure out the hardware-vendor-os info.
-dnl
-dnl OCTAVE_HOST_TYPE
-AC_DEFUN([OCTAVE_HOST_TYPE],
-[AC_CANONICAL_HOST
-if test -z "$host"; then
-  host=unknown
-fi
-canonical_host_type=$host
-if test "$host" = unknown; then
-  AC_MSG_WARN([configuring Octave for unknown system type
-])
-fi
-AC_SUBST(canonical_host_type)])
-dnl
-dnl Set default value for a variable and substitute it.
-dnl
-dnl OCTAVE_SET_DEFAULT
-AC_DEFUN([OCTAVE_SET_DEFAULT],
-[ifelse($#, 2, [: ${$1=$2}
-])dnl
-AC_MSG_RESULT([defining $1 to be $$1])
-AC_SUBST($1)])
-dnl
-dnl Check for ar.
-dnl
-AC_DEFUN([OCTAVE_PROG_AR],
-[if test -z "$AR"; then
-  AR=ar
-fi
-AC_SUBST(AR)
-
-if test -z "$ARFLAGS"; then
-  ARFLAGS="rc"
-fi
-AC_SUBST(ARFLAGS)
-])
-dnl
-dnl See if the compiler supports placement delete
-dnl
-AC_DEFUN([OCTAVE_PLACEMENT_DELETE],
-[AC_CACHE_CHECK([whether <new> defines placement delete operator],
-octave_cv_placement_delete,
-[AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <new>]],
-[[operator delete((void *)0, (void *)0);]])],
-octave_cv_placement_delete=yes, octave_cv_placement_delete=no)])
-if test $octave_cv_placement_delete = yes; then
-AC_DEFINE(HAVE_PLACEMENT_DELETE,1,[Define if C++ supports operator delete(void *, void *)])
-fi
-AC_LANG_POP(C++)
-])
-dnl
-dnl See if the compiler dynamic auto arrays
-dnl
-AC_DEFUN([OCTAVE_DYNAMIC_AUTO_ARRAYS],
-[AC_CACHE_CHECK([whether C++ supports dynamic auto arrays],
-octave_cv_dynamic_auto_arrays,
-[AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],
-[[void test(char *); int length(); char x[length()]; test(x);]])],
-octave_cv_dynamic_auto_arrays=yes, octave_cv_dynamic_auto_arrays=no)])
-if test $octave_cv_dynamic_auto_arrays = yes; then
-AC_DEFINE(HAVE_DYNAMIC_AUTO_ARRAYS,1,[Define if C++ supports dynamic auto arrays])
-fi
-AC_LANG_POP(C++)
-])
-dnl
-dnl See if the C++ library has functions to set real and imaginary
-dnl parts of complex numbers independently.
-dnl
-AC_DEFUN([OCTAVE_CXX_COMPLEX_SETTERS],
-[AC_CACHE_CHECK([whether complex class can set components independently],
-octave_cv_cxx_complex_setters,
-[AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
-[[std::complex<double> x; x.real (1.0); x.imag (2.0);]])],
-octave_cv_cxx_complex_setters=yes, octave_cv_cxx_complex_setters=no)])
-if test $octave_cv_cxx_complex_setters = yes; then
-AC_DEFINE(HAVE_CXX_COMPLEX_SETTERS,1,[Define if C++ complex class has void real (T) and void imag (T) methods])
-fi
-AC_LANG_POP(C++)
-])
-dnl
-dnl See if the C++ library has functions to access real and imaginary
-dnl parts of complex numbers independently via references.
-dnl
-AC_DEFUN([OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS],
-[AC_CACHE_CHECK([whether complex class can reference components independently],
-octave_cv_cxx_complex_reference_accessors,
-[AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
-[[std::complex<double> x; x.real () = 1.0; x.imag () = 1.0;]])],
-octave_cv_cxx_complex_reference_accessors=yes, octave_cv_cxx_complex_reference_accessors=no)])
-if test $octave_cv_cxx_complex_reference_accessors = yes; then
-AC_DEFINE(HAVE_CXX_COMPLEX_REFERENCE_ACCESSORS,1,[Define if C++ complex class has T& real (void) and T& imag (void) methods])
-fi
-AC_LANG_POP(C++)
-])
-dnl
-dnl The following test is from Karl Berry's Kpathseach library.  I'm
-dnl including it here in case we someday want to make the use of
-dnl kpathsea optional.
-dnl
-dnl Some BSD putenv's, e.g., FreeBSD, do malloc/free's on the environment.
-dnl This test program is due to Mike Hibler <mike@cs.utah.edu>.
-dnl We don't actually need to run this if we don't have putenv, but it
-dnl doesn't hurt.
-AC_DEFUN([OCTAVE_SMART_PUTENV],
-[AC_MSG_CHECKING([whether putenv uses malloc])
-AC_CACHE_VAL(octave_cv_func_putenv_malloc,
-[AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#define VAR	"YOW_VAR"
-#define STRING1 "GabbaGabbaHey"
-#define STRING2 "Yow!!"		/* should be shorter than STRING1 */
-extern char *getenv (); /* in case char* and int don't mix gracefully */
-main ()
-{
-  char *str1, *rstr1, *str2, *rstr2;
-  str1 = getenv (VAR);
-  if (str1)
-    exit (1);
-  str1 = malloc (strlen (VAR) + 1 + strlen (STRING1) + 1);
-  if (str1 == 0)
-    exit (2);
-  strcpy (str1, VAR);
-  strcat (str1, "=");
-  strcat (str1, STRING1);
-  if (putenv (str1) < 0)
-    exit (3);
-  rstr1 = getenv (VAR);
-  if (rstr1 == 0)
-    exit (4);
-  rstr1 -= strlen (VAR) + 1;
-  if (strncmp (rstr1, VAR, strlen (VAR)))
-    exit (5);
-  str2 = malloc (strlen (VAR) + 1 + strlen (STRING2) + 1);
-  if (str2 == 0 || str1 == str2)
-    exit (6);
-  strcpy (str2, VAR);
-  strcat (str2, "=");
-  strcat (str2, STRING2);
-  if (putenv (str2) < 0)
-    exit (7);
-  rstr2 = getenv (VAR);
-  if (rstr2 == 0)
-    exit (8);
-  rstr2 -= strlen (VAR) + 1;
-#if 0
-  printf ("rstr1=0x%x, rstr2=0x%x\n", rstr1, rstr2);
-  /*
-   * If string from first call was reused for the second call,
-   * you had better not do a free on the first string!
-   */
-  if (rstr1 == rstr2)
-          printf ("#define SMART_PUTENV\n");
-  else
-          printf ("#undef SMART_PUTENV\n");
-#endif
-  exit (rstr1 == rstr2 ? 0 : 1);
-}]])], octave_cv_func_putenv_malloc=yes, octave_cv_func_putenv_malloc=no,
-    octave_cv_func_putenv_malloc=no)])dnl
-AC_MSG_RESULT([$octave_cv_func_putenv_malloc])
-if test $octave_cv_func_putenv_malloc = yes; then
-  AC_DEFINE(SMART_PUTENV,1,[To quiet autoheader.])
-fi])
-dnl
-dnl Check to see if C++ compiler needs the new friend template declaration 
-dnl syntax. 
-dnl
-dnl OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL
-AC_DEFUN([OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL], [
-  AC_REQUIRE([AC_PROG_CXX])
-  AC_MSG_CHECKING([for C++ support for new friend template declaration])
-  AC_CACHE_VAL(octave_cv_cxx_new_friend_template_decl, [
-    AC_LANG_PUSH(C++)
-    rm -f conftest.h
-    cat > conftest.h <<EOB
-       struct A {
-	 friend int operator== (const A&, const A&);
-	 A (int) { }
-       };
-
-       template <class T> int
-       operator== (const T&, const T&)
-       {
-	 return 0;
-       }
-EOB
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
-      [[A a (1);
-        return a == A(1);]])],
-      [octave_cv_cxx_new_friend_template_decl=no],
-      [octave_cv_cxx_new_friend_template_decl=yes])
-    AC_LANG_POP(C++)
-  ])
-  AC_MSG_RESULT([$octave_cv_cxx_new_friend_template_decl])
-  if test $octave_cv_cxx_new_friend_template_decl = yes; then
-    AC_DEFINE(CXX_NEW_FRIEND_TEMPLATE_DECL,1,[Define if your compiler supports `<>' stuff for template friends.])
-  fi
-])
-dnl
-dnl Check to see if C compiler handles FLAG command line option.  If
-dnl two arguments are specified, execute the second arg as shell
-dnl commands.  Otherwise, add FLAG to CFLAGS if the compiler accepts
-dnl the flag.
-dnl
-dnl OCTAVE_CC_FLAG
-AC_DEFUN([OCTAVE_CC_FLAG], [
-  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
-  AC_MSG_CHECKING([whether ${CC-cc} accepts $1])
-  AC_CACHE_VAL(octave_cv_cc_flag_$ac_safe, [
-    AC_LANG_PUSH(C)
-    XCFLAGS="$CFLAGS"
-    CFLAGS="$CFLAGS $1"
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
-      eval "octave_cv_cc_flag_$ac_safe=yes",
-      eval "octave_cv_cc_flag_$ac_safe=no")
-    CFLAGS="$XCFLAGS"
-    AC_LANG_POP(C)
-  ])
-  if eval "test \"`echo '$octave_cv_cc_flag_'$ac_safe`\" = yes"; then
-    AC_MSG_RESULT(yes)
-    ifelse([$2], , [
-      CFLAGS="$CFLAGS $1"
-      AC_MSG_RESULT([adding $1 to CFLAGS])], [$2])
-  else
-    AC_MSG_RESULT(no)
-    ifelse([$3], , , [$3])
-  fi
-])
-dnl
-dnl Check to see if C++ compiler handles FLAG command line option.  If
-dnl two arguments are specified, execute the second arg as shell
-dnl commands.  Otherwise, add FLAG to CXXFLAGS if the compiler accepts
-dnl the flag.
-dnl
-dnl OCTAVE_CXX_FLAG
-AC_DEFUN([OCTAVE_CXX_FLAG], [
-  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
-  AC_MSG_CHECKING([whether ${CXX-g++} accepts $1])
-  AC_CACHE_VAL(octave_cv_cxx_flag_$ac_safe, [
-    AC_LANG_PUSH(C++)
-    XCXXFLAGS="$CXXFLAGS"
-    CXXFLAGS="$CXXFLAGS $1"
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
-      eval "octave_cv_cxx_flag_$ac_safe=yes",
-      eval "octave_cv_cxx_flag_$ac_safe=no")
-    CXXFLAGS="$XCXXFLAGS"
-    AC_LANG_POP(C++)
-  ])
-  if eval "test \"`echo '$octave_cv_cxx_flag_'$ac_safe`\" = yes"; then
-    AC_MSG_RESULT(yes)
-    ifelse([$2], , [
-      CXXFLAGS="$CXXFLAGS $1"
-      AC_MSG_RESULT([adding $1 to CXXFLAGS])], [$2])
-  else
-    AC_MSG_RESULT(no)
-    ifelse([$3], , , [$3])
-  fi
-])
-dnl
-dnl Check to see if Fortran compiler handles FLAG command line option.  If
-dnl two arguments are specified, execute the second arg as shell
-dnl commands.  Otherwise, add FLAG to FFLAGS if the compiler accepts
-dnl the flag.
-dnl
-dnl OCTAVE_F77_FLAG
-AC_DEFUN([OCTAVE_F77_FLAG], [
-  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
-  AC_MSG_CHECKING([whether ${F77-g77} accepts $1])
-  AC_CACHE_VAL(octave_cv_f77_flag_$ac_safe, [
-    AC_LANG_PUSH(Fortran 77)
-    XFFLAGS="$FFLAGS"
-    FFLAGS="$FFLAGS $1"
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
-      eval "octave_cv_f77_flag_$ac_safe=yes",
-      eval "octave_cv_f77_flag_$ac_safe=no")
-    FFLAGS="$XFFLAGS"
-    AC_LANG_POP(Fortran 77)
-  ])
-  if eval "test \"`echo '$octave_cv_f77_flag_'$ac_safe`\" = yes"; then
-    AC_MSG_RESULT(yes)
-    ifelse([$2], , [
-      FFLAGS="$FFLAGS $1"
-      AC_MSG_RESULT([adding $1 to FFLAGS])], [$2])
-  else
-    AC_MSG_RESULT(no)
-    ifelse([$3], , , [$3])
-  fi
-])
-dnl
-dnl Check to see whether the default Fortran INTEGER is 64 bits wide.
-dnl
-AC_DEFUN([OCTAVE_CHECK_FORTRAN_INTEGER_SIZE], [
-  octave_fintsize_save_FFLAGS="$FFLAGS"
-  FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"
-  AC_LANG_PUSH(Fortran 77)
-  AC_CACHE_CHECK([whether $F77 generates correct size integers],
-                 [octave_cv_fortran_integer_size],
-[AC_COMPILE_IFELSE(
-[      subroutine foo(n, in, out)
-      integer n, in(n), out(n)
-      integer i
-      do 10 i = 1, n
-        out(i) = in(i)
-   10 continue
-      return
-      end],
-[mv conftest.$ac_objext fintsize.$ac_objext
-
-  octave_fintsize_save_LIBS="$LIBS"
-  LIBS="fintsize.$ac_objext $[]_AC_LANG_PREFIX[]LIBS"
-  AC_LANG_PUSH(C)dnl
-  AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <assert.h>]], [[
-#ifdef USE_64_BIT_IDX_T
-#if IDX_TYPE_LONG
-  typedef long octave_idx_type;
-#else
-  typedef int octave_idx_type;
-#endif
-#else
-  typedef int octave_idx_type;
-#endif
-  octave_idx_type n = 2;
-  octave_idx_type in[2];
-  octave_idx_type out[2];
-  in[0] = 13;
-  in[0] = 42;
-  F77_FUNC(foo,FOO) (&n, &in, &out);
-  assert (in[0] == out[0] && in[1] == out[1]);
-]])],
-  [octave_cv_fortran_integer_size=yes],
-  [octave_cv_fortran_integer_size=no])
-  AC_LANG_POP(C)dnl
-  LIBS="$octave_fintsize_save_LIBS"
-rm -f conftest.$ac_objext fintsize.$ac_objext
-], [
-  rm -f conftest.$ac_objext
-  AC_MSG_FAILURE([cannot compile a simple Fortran program])
-  octave_cv_fortran_integer_size=no])])
-  AC_LANG_POP(Fortran 77)
-  FFLAGS="$octave_fintsize_save_FFLAGS"
-])
-dnl
-dnl
-dnl
-dnl OCTAVE_CHECK_LIBRARY(LIBRARY, DOC-NAME, WARN-MSG, HEADER, FUNC,
-dnl                      LANG, DOC-STRING, EXTRA-CHECK)
-AC_DEFUN([OCTAVE_CHECK_LIBRARY], [
-  AC_ARG_WITH([$1-includedir],
-    [AS_HELP_STRING([--with-$1-includedir=DIR],
-      [look for $2 include files in DIR])],
-    [m4_toupper([$1])_CPPFLAGS="-I$withval"])
-  AC_SUBST(m4_toupper([$1])_CPPFLAGS)
-
-  AC_ARG_WITH([$1-libdir],
-    [AS_HELP_STRING([--with-$1-libdir=DIR],
-      [look for $2 libraries in DIR])],
-    [m4_toupper([$1])_LDFLAGS="-L$withval"])
-  AC_SUBST(m4_toupper([$1])_LDFLAGS)
-
-  AC_ARG_WITH([$1],
-    [m4_ifblank([$7],
-      [AS_HELP_STRING([--without-$1], [don't use $2 library])],
-      [AS_HELP_STRING([--without-$1], [$7])])],
-    with_$1=$withval, with_$1=yes)
-
-  m4_toupper([$1])_LIBS=
-  case $with_$1 in
-    no)
-      m4_toupper([$1])_LIBS=
-    ;;
-    yes | "")
-      m4_toupper([$1])_LIBS="-l$1"
-    ;;
-    -* | */* | *.a | *.so | *.so.* | *.o)
-      m4_toupper([$1])_LIBS="$with_$1"
-    ;;
-    *)
-      m4_toupper([$1])_LIBS="-l$with_$1"
-    ;;
-  esac
-
-  [TEXINFO_]m4_toupper([$1])=
-  warn_$1="$3"
-  if test -n "$m4_toupper([$1])_LIBS"; then
-    octave_check_library_save_CPPFLAGS="$CPPFLAGS"
-    CPPFLAGS="$m4_toupper([$1])_CPPFLAGS $CPPFLAGS"
-    m4_ifnblank([$6], [AC_LANG_PUSH($6)])
-    octave_$1_check_for_lib=false
-    m4_ifblank([$4], [octave_$1_check_for_lib=true],
-               [AC_CHECK_HEADERS($4, [octave_$1_check_for_lib=true; break])])
-    if $octave_$1_check_for_lib; then
-      octave_check_library_save_LDFLAGS="$LDFLAGS"
-      LDFLAGS="$m4_toupper([$1])_LDFLAGS $LDFLAGS"
-      octave_check_library_save_LIBS="$LIBS"
-      LIBS="$m4_toupper([$1])_LIBS $LIBS"
-      octave_$1_ok=no
-      AC_MSG_CHECKING([for $5 in $m4_toupper([$1])_LIBS])
-      AC_LINK_IFELSE([AC_LANG_CALL([], [$5])],
-	[octave_$1_ok=yes])
-      AC_MSG_RESULT([$octave_$1_ok])
-      if test $octave_$1_ok = yes; then
-	m4_ifblank([$8], [
-	  warn_$1=
-	  AC_DEFINE([HAVE_]m4_toupper([$1]), 1,
-            [Define if $2 is available.])
-	  [TEXINFO_]m4_toupper([$1])="@set [HAVE_]m4_toupper([$1])"], [$8])
-      fi
-      LIBS="$octave_check_library_save_LIBS"
-      LDFLAGS="$octave_check_library_save_LDFLAGS"
-    fi
-    m4_ifnblank([$6], [AC_LANG_POP($6)])
-    CPPFLAGS="$octave_check_library_save_CPPFLAGS"
-  fi
-  AC_SUBST(m4_toupper([$1])_LIBS)
-  AC_SUBST([TEXINFO_]m4_toupper([$1]))
-  if test -n "$warn_$1"; then
-    AC_MSG_WARN([$warn_$1])
-    m4_toupper([$1])_LIBS=
-  fi
-])
-dnl
-dnl Check for flex
-dnl
-AC_DEFUN([OCTAVE_PROG_FLEX], [
-### For now, don't define LEXLIB to be -lfl -- we don't use anything in
-### it, and it might not be installed.
-###
-### Also make sure that we generate an interactive scanner if we are
-### using flex.
-  AC_PROG_LEX
-  case "$LEX" in
-    flex*)
-      LFLAGS="-I"
-      AC_MSG_RESULT([defining LFLAGS to be $LFLAGS])
-      LEXLIB=
-    ;;
-    *)
-      LEX='$(top_srcdir)/missing flex'
-      warn_flex="I didn't find flex, but it's only a problem if you need to reconstruct lex.cc"
-      AC_MSG_WARN([$warn_flex])
-    ;;
-  esac
-  AC_SUBST(LFLAGS)
-])
-dnl
-dnl Check for bison
-dnl
-AC_DEFUN([OCTAVE_PROG_BISON], [
-  AC_PROG_YACC
-  case "$YACC" in
-    bison*)
-    ;;
-    *)
-      YACC='$(top_srcdir)/missing bison'
-      warn_bison="I didn't find bison, but it's only a problem if you need to reconstruct parse.cc"
-      AC_MSG_WARN([$warn_bison])
-    ;;
-  esac
-])
-dnl
-dnl What pager should we use?
-dnl
-AC_DEFUN([OCTAVE_PROG_PAGER],
-[if test "$cross_compiling" = yes; then
-  DEFAULT_PAGER=less
-  AC_MSG_RESULT([assuming $DEFAULT_PAGER exists on $canonical_host_type host])
-  AC_SUBST(DEFAULT_PAGER)
-else
-  octave_possible_pagers="less more page pg"
-  case "$canonical_host_type" in
-    *-*-cygwin* | *-*-mingw32* | *-*-msdosmsvc)
-      octave_possible_pagers="$octave_possible_pagers more.com"
-    ;;
-  esac
-
-  AC_CHECK_PROGS(DEFAULT_PAGER, $octave_possible_pagers, [])
-  if test -z "$DEFAULT_PAGER"; then
-    warn_less="I couldn't find \`less', \`more', \`page', or \`pg'"
-    AC_MSG_WARN([$warn_less])
-  fi
-fi
-])
-dnl
-dnl Does gnuplot exist?
-dnl
-AC_DEFUN([OCTAVE_PROG_GNUPLOT], [
-gp_names="gnuplot"
-gp_default="gnuplot"
-if test "$cross_compiling" = yes; then
-  GNUPLOT="$gp_default"
-  AC_MSG_RESULT([assuming $GNUPLOT exists on $canonical_host_type host])
-else
-  AC_CHECK_PROGS(GNUPLOT, [$gp_names])
-  if test -z "$GNUPLOT"; then
-    warn_gnuplot=yes
-
-    GNUPLOT="$gp_default"
-
-    AC_MSG_WARN([gnuplot not found.  It isn't necessary to have gnuplot])
-    AC_MSG_WARN([installed, but without native graphics or gnuplot])
-	 AC_MSG_WARN([you won't be able to use any of Octave's plotting commands.])
-  fi
-fi
-AC_SUBST(GNUPLOT)
-])
-dnl
-dnl Is gperf installed?
-dnl
-dnl OCTAVE_PROG_GPERF
-AC_DEFUN([OCTAVE_PROG_GPERF], [
-  AC_CHECK_PROG(GPERF, gperf, gperf, [])
-  if test -z "$GPERF"; then
-    GPERF='$(top_srcdir)/missing gperf'
-    warn_gperf="I didn't find gperf, but it's only a problem if you need to reconstruct oct-gperf.h"
-    AC_MSG_WARN([$warn_gperf])
-  fi
-  AC_SUBST(GPERF)
-])
-dnl
-dnl Is ghostscript installed?
-dnl
-dnl OCTAVE_PROG_GHOSTSCRIPT
-AC_DEFUN([OCTAVE_PROG_GHOSTSCRIPT], [
-  case "$canonical_host_type" in
-    *-*-mingw* | *-*-msdosmsvc)
-      gs_names="gswin32c gs"
-    ;;
-    *)
-      gs_names="gs"
-    ;;
-  esac
-  AC_CHECK_PROGS(GHOSTSCRIPT, [$gs_names])
-  if test -z "$GHOSTSCRIPT"; then
-    GHOSTSCRIPT='$(top_srcdir)/missing gs'
-    warn_ghostscript="I didn't find ghostscript, so reconstructing figures for the manual will fail, and saving graphics in some output formats will fail when using Octave"
-    AC_MSG_WARN([$warn_ghostscript])
-  fi
-  AC_SUBST(GHOSTSCRIPT)
-])
-dnl
-dnl Is texi2dvi installed?
-dnl
-dnl OCTAVE_PROG_TEXI2DVI
-AC_DEFUN([OCTAVE_PROG_TEXI2DVI], [
-  AC_CHECK_PROG(TEXI2DVI, texi2dvi, texi2dvi, [])
-  if test -z "$TEXI2DVI"; then
-    TEXI2DVI='$(top_srcdir)/missing texi2dvi'
-    warn_texi2dvi="I didn't find texi2dvi, but it's only a problem if you need to reconstruct the DVI version of the manual"
-    AC_MSG_WARN([$warn_texi2dvi])
-  fi
-  AC_SUBST(TEXI2DVI)
-])
-dnl
-dnl Is texi2pdf installed?
-dnl
-dnl OCTAVE_PROG_TEXI2PDF
-AC_DEFUN([OCTAVE_PROG_TEXI2PDF], [
-  AC_REQUIRE([OCTAVE_PROG_TEXI2DVI])
-  AC_CHECK_PROG(TEXI2PDF, texi2pdf, texi2pdf, [])
-  if test -z "$TEXI2PDF"; then
-    missing=true;
-    if test -n "$TEXI2DVI"; then
-      TEXI2PDF="$TEXI2DVI --pdf"
-      missing=false;
-    fi
-  else
-    missing=false;
-  fi
-  if $missing; then
-    TEXI2PDF='$(top_srcdir)/missing texi2pdf'
-    warn_texi2pdf="I didn't find texi2pdf, but it's only a problem if you need to reconstruct the PDF version of the manual"
-    AC_MSG_WARN([$warn_texi2pdf])
-  fi
-  AC_SUBST(TEXI2PDF)
-])
-dnl
-dnl See if the C++ library is ISO compliant.
-dnl FIXME: This is obviously very simplistic, and trivially fooled.
-dnl
-dnl OCTAVE_CXX_ISO_COMPLIANT_LIBRARY
-AC_DEFUN([OCTAVE_CXX_ISO_COMPLIANT_LIBRARY], [
-  AC_REQUIRE([AC_PROG_CXX])
-  AC_MSG_CHECKING([if C++ library is ISO compliant])
-  AC_CACHE_VAL(octave_cv_cxx_iso_compliant_library, [
-    AC_LANG_PUSH(C++)
-    rm -f conftest.h
-### Omitting cwctype for now, since it is broken with gcc-3.0.x and
-### possibly other versions...
-    for inc in algorithm bitset cassert cctype cerrno cfloat ciso646 \
-	climits clocale cmath complex csetjmp csignal cstdarg cstddef \
-	cstdio cstdlib cstring ctime cwchar deque exception \
-	fstream functional iomanip ios iosfwd iostream istream iterator \
-	limits list locale map memory new numeric ostream queue set \
-	sstream stack stdexcept streambuf string strstream typeinfo \
-	utility valarray vector; do
-      echo "#include <$inc>" >> conftest.h
-    done
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
-      [[std::bitset<50> flags;
-        flags.set();
-        int digits = std::numeric_limits<unsigned long>::digits;
-        digits = 0;]])],
-      [octave_cv_cxx_iso_compliant_library=yes],
-      [octave_cv_cxx_iso_compliant_library=no])
-    AC_LANG_POP(C++)
-  ])
-  AC_MSG_RESULT([$octave_cv_cxx_iso_compliant_library])
-  if test $octave_cv_cxx_iso_compliant_library = yes; then
-    AC_DEFINE(CXX_ISO_COMPLIANT_LIBRARY, 1, [Define if your C++ runtime library is ISO compliant.])
-  fi
-])
-dnl
-dnl Allow the user disable support for command line editing using GNU
-dnl readline.
-dnl
-dnl OCTAVE_ENABLE_READLINE
-AC_DEFUN([OCTAVE_ENABLE_READLINE], [
-  USE_READLINE=true
-  READLINE_LIBS=
-  AC_ARG_ENABLE(readline,
-    [  --enable-readline       use readline library (default is yes)],
-    [if test "$enableval" = no; then
-       USE_READLINE=false
-       warn_readline="command editing and history features require GNU Readline"
-     fi])
-  if $USE_READLINE; then
-    save_LIBS="$LIBS"
-    LIBS="$TERM_LIBS"
-    AC_CHECK_LIB(readline, rl_set_keyboard_input_timeout, [
-      READLINE_LIBS="-lreadline"
-      AC_DEFINE(USE_READLINE, 1, [Define to use the readline library.])
-    ], [
-      AC_MSG_WARN([I need GNU Readline 4.2 or later])
-      AC_MSG_ERROR([this is fatal unless you specify --disable-readline])
-    ])
-    LIBS="$save_LIBS"
-  fi
-  AC_SUBST(READLINE_LIBS)
-])
-dnl
-dnl Check to see if C++ reintrepret cast works for function pointers.
-dnl
-dnl OCTAVE_CXX_BROKEN_REINTERPRET_CAST
-dnl
-AC_DEFUN([OCTAVE_CXX_BROKEN_REINTERPRET_CAST], [
-  AC_REQUIRE([AC_PROG_CXX])
-  AC_LANG_PUSH(C++)
-  AC_CACHE_CHECK([for broken C++ reinterpret_cast],
-    octave_cv_cxx_broken_reinterpret_cast, [
-    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <cmath>]], [[
-      typedef double (*fptr) (double);
-      fptr psin = sin;
-      void *vptr = reinterpret_cast<void *> (psin);
-      psin = reinterpret_cast<fptr> (vptr);]])],
-      octave_cv_cxx_broken_reinterpret_cast=no,
-      octave_cv_cxx_broken_reinterpret_cast=yes)])
-  if test $octave_cv_cxx_broken_reinterpret_cast = yes ; then
-    AC_DEFINE(CXX_BROKEN_REINTERPRET_CAST, 1, [Define if C++ reinterpret_cast fails for function pointers.])
-fi
-  AC_LANG_POP(C++)])
-dnl
-dnl Find find.
-dnl
-# Prefer GNU find if found.
-AN_MAKEVAR([FIND],  [OCTAVE_PROG_FIND])
-AN_PROGRAM([gfind], [OCTAVE_PROG_FIND])
-AN_PROGRAM([find],  [OCTAVE_PROG_FIND])
-AC_DEFUN([OCTAVE_PROG_FIND],
-[AC_CHECK_PROGS(FIND, gfind find, )])
-dnl
-dnl Find sed.
-dnl
-# Check for a fully-functional sed program, that truncates
-# as few characters as possible and that supports "\(X\|Y\)"
-# style regular expression alternation.  Prefer GNU sed if found.
-AC_DEFUN([OCTAVE_PROG_SED],
-[AC_MSG_CHECKING([for a usable sed])
-if test -z "$SED"; then
-  AC_CACHE_VAL(ac_cv_path_sed, [
-  # Loop through the user's path and test for sed and gsed.
-  # Then use that list of sed's as ones to test for truncation.
-  _AS_PATH_WALK([$PATH],
-    [for ac_prog in sed gsed; do
-      for ac_exec_ext in '' $ac_executable_extensions; do
-	if AS_EXECUTABLE_P(["$as_dir/$ac_prog$ac_exec_ext"]); then
-	  _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
-	fi
-      done
-    done
-    ])
-    AS_TMPDIR(sed)
-    _max=0
-    _count=0
-    # Add /usr/xpg4/bin/sed as it is typically found on Solaris
-    # along with /bin/sed that truncates output.
-    for _sed in $_sed_list /usr/xpg4/bin/sed; do
-      test ! -f ${_sed} && break
-      cat /dev/null > "$tmp/sed.in"
-      _count=0
-      echo $ECHO_N "0123456789$ECHO_C" >"$tmp/sed.in"
-      # Check for GNU sed and select it if it is found.
-      if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
-	octave_cv_path_sed=${_sed}
-	break;
-      fi
-      # Reject if RE alternation is not handled.
-      if test "`echo 'this and that' | ${_sed} -n 's/\(this\|that\).*$/\1/p'`" != "this"; then
-        continue;
-      fi
-      while true; do
-	cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
-	mv "$tmp/sed.tmp" "$tmp/sed.in"
-	cp "$tmp/sed.in" "$tmp/sed.nl"
-	echo >>"$tmp/sed.nl"
-	${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
-	cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
-	# 10000 chars as input seems more than enough
-	test $_count -gt 10 && break
-	_count=`expr $_count + 1`
-	if test $_count -gt $_max; then
-	  _max=$_count
-	  octave_cv_path_sed=$_sed
-	fi
-      done
-    done
-    rm -rf "$tmp"
-  ])
-  SED=$octave_cv_path_sed
-  if test -z "$SED"; then
-    AC_MSG_ERROR([no usable version of sed found])
-  fi
-fi
-AC_SUBST(SED)
-AC_MSG_RESULT([$SED])
-])
-dnl
-dnl Find Perl.
-dnl
-dnl OCTAVE_PROG_PERL
-AC_DEFUN([OCTAVE_PROG_PERL],
-[AC_CHECK_PROG(PERL, perl, perl, [])
-  AC_SUBST(PERL)
-])
-dnl
-dnl Find Python.
-dnl
-dnl OCTAVE_PROG_PYTHON
-AC_DEFUN([OCTAVE_PROG_PYTHON],
-[AC_CHECK_PROG(PYTHON, python, python, [])
-  AC_SUBST(PYTHON)
-])
-dnl
-dnl Find desktop-file-install.
-dnl
-dnl OCTAVE_PROG_DESKTOP_FILE_INSTALL
-AC_DEFUN([OCTAVE_PROG_DESKTOP_FILE_INSTALL],
-[AC_CHECK_PROG(DESKTOP_FILE_INSTALL, desktop-file-install, desktop-file-install, [])
-  AC_SUBST(DESKTOP_FILE_INSTALL)
-])
-dnl
-dnl Check for IEEE 754 data format.
-dnl
-AC_DEFUN([OCTAVE_IEEE754_DATA_FORMAT],
-[AC_MSG_CHECKING([for IEEE 754 data format])
-AC_CACHE_VAL(octave_cv_ieee754_data_format,
-[AC_RUN_IFELSE([AC_LANG_SOURCE([[
-int
-main (void) 
-{
-  typedef union { unsigned char c[8]; double d; } ieeebytes;
-   
-  ieeebytes l = {0x1c, 0xbc, 0x6e, 0xf2, 0x54, 0x8b, 0x11, 0x43};
-  ieeebytes b = {0x43, 0x11, 0x8b, 0x54, 0xf2, 0x6e, 0xbc, 0x1c};
-
-  return l.d != 1234567891234567.0 && b.d != 1234567891234567.0;
-}]])],
-  octave_cv_ieee754_data_format=yes,
-  octave_cv_ieee754_data_format=no,
-  octave_cv_ieee754_data_format=no)])
-if test "$cross_compiling" = yes; then
-  AC_MSG_RESULT([$octave_cv_ieee754_data_format assumed for cross compilation])
-else
-  AC_MSG_RESULT([$octave_cv_ieee754_data_format])
-fi
-if test "$octave_cv_ieee754_data_format" = yes; then
-  AC_DEFINE(HAVE_IEEE754_DATA_FORMAT, 1, [Define if your system uses IEEE 754 data format.])
-else
-  ## If the format is unknown, then you will probably not have a
-  ## useful system, so we will abort here.  Anyone wishing to
-  ## experiment with building Octave on a system without IEEE
-  ## floating point should be capable of removing this check and
-  ## the one in the octave_ieee_init function in liboctave/lo-ieee.cc.
-  AC_MSG_ERROR([IEEE 754 data format required for building Octave])
-fi
-])
-dnl
-dnl Check for UMFPACK seperately split complex matrix and RHS. Note
-dnl that as umfpack.h can be in three different places, rather than
-dnl include it, just declare the functions needed.
-dnl
-dnl Assumes that the check for umfpack has already been performed.
-dnl
-AC_DEFUN([OCTAVE_UMFPACK_SEPERATE_SPLIT],
-[AC_MSG_CHECKING([for UMFPACK seperate complex matrix and rhs split])
-AC_CACHE_VAL(octave_cv_umfpack_seperate_split,
-[AC_RUN_IFELSE([AC_LANG_SOURCE([[
-#include <stdlib.h>
-#if defined (HAVE_UFSPARSE_UMFPACK_h)
-#include <ufsparse/umfpack.h>
-#elif defined (HAVE_UMFPACK_UMFPACK_H)
-#include <umfpack/umfpack.h>
-#elif defined (HAVE_UMFPACK_H)
-#include <umfpack.h>
-#endif
-int n = 5;
-int Ap[] = {0, 2, 5, 9, 10, 12};
-int Ai[]  = {0, 1, 0, 2, 4, 1, 2, 3, 4, 2, 1, 4};
-double Ax[] = {2., 0., 3., 0., 3., 0., -1., 0., 4., 0., 4., 0., 
-	      -3., 0., 1., 0., 2., 0., 2., 0., 6., 0., 1., 0.};
-double br[] = {8., 45., -3., 3., 19.};
-double bi[] = {0., 0., 0., 0., 0.};
-int main (void)
-{
-  double *null = (double *) NULL ;
-  double *x = (double *)malloc (2 * n * sizeof(double));
-  int i ;
-  void *Symbolic, *Numeric ;
-  (void) umfpack_zi_symbolic (n, n, Ap, Ai, Ax, null, &Symbolic, null, null) ;
-  (void) umfpack_zi_numeric (Ap, Ai, Ax, null, Symbolic, &Numeric, null, null) ;
-  umfpack_zi_free_symbolic (&Symbolic) ;
-  (void) umfpack_zi_solve (0, Ap, Ai, Ax, null, x, null, br, bi, 
-		Numeric, null, null) ;
-  umfpack_zi_free_numeric (&Numeric) ;
-  for (i = 0; i < n; i++, x+=2) 
-    if (fabs(*x - i - 1.) > 1.e-13)
-      return (1);
-  return (0) ;
-}
-]])],
-  octave_cv_umfpack_seperate_split=yes,
-  octave_cv_umfpack_seperate_split=no,
-  octave_cv_umfpack_seperate_split=no)])
-if test "$cross_compiling" = yes; then
-  AC_MSG_RESULT([$octave_cv_umfpack_seperate_split assumed for cross compilation])
-else
-  AC_MSG_RESULT([$octave_cv_umfpack_seperate_split])
-fi
-if test "$octave_cv_umfpack_seperate_split" = yes; then
-  AC_DEFINE(UMFPACK_SEPARATE_SPLIT, 1, [Define if the UMFPACK Complex solver allow matrix and RHS to be split independently])
-fi
-])
-dnl
-dnl Check whether using HDF5 DLL under Windows. This is done by
-dnl testing for a data symbol in the HDF5 library, which would
-dnl requires the definition of _HDF5USEDL_ under MSVC compiler.
-dnl
-AC_DEFUN([OCTAVE_HDF5_DLL], [
-  AC_CACHE_CHECK([if _HDF5USEDLL_ needs to be defined],octave_cv_hdf5_dll, [
-    AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
-      octave_cv_hdf5_dll=no, [
-      save_CFLAGS="$CFLAGS"
-      CFLAGS="$CFLAGS -DWIN32 -D_HDF5USEDLL_"
-      save_LIBS="$LIBS"
-      LIBS="$HDF5_LIBS $LIBS"
-      AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
-        octave_cv_hdf5_dll=yes,
-	octave_cv_hdf5_dll=no)
-      CFLAGS="$save_CFLAGS"
-      LIBS="$save_LIBS"])])
-  if test "$octave_cv_hdf5_dll" = yes; then
-    AC_DEFINE(_HDF5USEDLL_, 1, [Define if using HDF5 dll (Win32)])
-  fi])
-dnl
-dnl Check whether HDF5 library has version 1.6 API functions.
-dnl
-AC_DEFUN([OCTAVE_HDF5_HAS_ENFORCED_16_API], [
-  AC_CACHE_CHECK([whether HDF5 library has enforced version 1.6 API],
-    octave_cv_hdf5_has_enforced_16_api, [
-    AC_TRY_LINK([
-#include <hdf5.h>
-], [
-  H5Eset_auto (0, 0);], [
-      octave_cv_hdf5_has_enforced_16_api=yes], [
-      octave_cv_hdf5_has_enforced_16_api=no])])
-  if test "$octave_cv_hdf5_has_enforced_16_api" != "yes"; then
-    AC_DEFINE(HAVE_HDF5_18, 1, [Define if >=HDF5-1.8 is available.])
-  fi
-])
-dnl
-dnl Check for the QHull version.
-dnl
-AC_DEFUN([OCTAVE_CHECK_QHULL_VERSION],
-  [AC_CACHE_CHECK([for qh_version in $QHULL_LIBS],
-    octave_cv_lib_qhull_version,  [
-      AC_LINK_IFELSE([AC_LANG_PROGRAM([[
-#include <qhull/qhull_a.h>
-]], [[
-const char *tmp = qh_version;
-]])], [octave_cv_lib_qhull_version=yes], [octave_cv_lib_qhull_version=no])])
-  if test "$octave_cv_lib_qhull_version" = no; then
-    AC_DEFINE(NEED_QHULL_VERSION, 1,
-      [Define if the QHull library needs a qh_version variable defined.])
-  fi
-])
-dnl
-dnl Check whether QHull works (does not crash)
-dnl
-AC_DEFUN([OCTAVE_CHECK_QHULL_OK],
-  [AC_CACHE_CHECK([whether the qhull library works],
-    octave_cv_lib_qhull_ok, [
-      AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#include <stdio.h>
-#include <qhull/qhull.h>
-#ifdef NEED_QHULL_VERSION
-char *qh_version = "version";
-#endif
-]], [[
-int dim = 2;
-int n = 4;
-coordT points[8] = { -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, 0.5, 0.5 };
-boolT ismalloc = 0;
-return qh_new_qhull (dim, n, points, ismalloc, "qhull ", 0, stderr); 
-]])], [octave_cv_lib_qhull_ok=yes], [octave_cv_lib_qhull_ok=no])])
-  if test "$octave_cv_lib_qhull_ok" = "yes"; then
-    $1
-  else
-    $2
-  fi
-])
-dnl
-dnl Check for OpenGL.  If found, define OPENGL_LIBS
-dnl
-dnl FIXME -- the following tests should probably check for the
-dnl libraries separately.
-dnl
-dnl FIXME -- should we allow a way to specify a directory for OpenGL
-dnl libraries and header files?
-dnl
-AC_DEFUN([OCTAVE_OPENGL], [
-OPENGL_LIBS=
-
-### On MacOSX systems the OpenGL framework can be used
-OCTAVE_HAVE_FRAMEWORK(OpenGL, [
-#include <OpenGL/gl.h>
-#include <OpenGL/glu.h> ], [GLint par; glGetIntegerv (GL_VIEWPORT, &par);],
-  [have_framework_opengl="yes"], [have_framework_opengl="no"])
-
-if test $have_framework_opengl = "yes"; then
-  AC_DEFINE(HAVE_FRAMEWORK_OPENGL, 1, [Define if framework OPENGL is available.])
-  OPENGL_LIBS="-Wl,-framework -Wl,OpenGL"
-  AC_MSG_NOTICE([adding -Wl,-framework -Wl,OpenGL to OPENGL_LIBS])
-  OCTAVE_GLUTESSCALLBACK_THREEDOTS
-else
-  case $canonical_host_type in
-    *-*-mingw32* | *-*-msdosmsvc)
-      AC_CHECK_HEADERS(windows.h)
-    ;;
-  esac
-  have_opengl_incs=no
-  AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h], [
-    AC_CHECK_HEADERS([GL/glu.h OpenGL/glu.h], [
-      have_opengl_incs=yes; break], [], [
-#ifdef HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-    ])
-    break
-    ], [], [
-#ifdef HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-    ])
-
-  if test "$have_opengl_incs" = "yes"; then
-    case $canonical_host_type in
-      *-*-mingw32* | *-*-msdosmsvc)
-        save_LIBS="$LIBS"
-        LIBS="$LIBS -lopengl32"
-        AC_MSG_CHECKING([for glEnable in -lopengl32])
-        AC_TRY_LINK([
-#if HAVE_WINDOWS_H
-#include <windows.h>
-#endif
-#if defined (HAVE_GL_GL_H)
-#include <GL/gl.h>
-#elif defined (HAVE_OPENGL_GL_H)
-#include <OpenGL/gl.h>
-#endif
-], [glEnable(GL_SMOOTH);], OPENGL_LIBS="-lopengl32 -lglu32")
-        LIBS="$save_LIBS"
-        if test "x$OPENGL_LIBS" != "x"; then
-          AC_MSG_RESULT(yes)
-        else
-          AC_MSG_RESULT(no)
-        fi
-        ;;
-      *)
-        AC_CHECK_LIB(GL, glEnable, OPENGL_LIBS="-lGL -lGLU")
-        ;;
-    esac
-  fi
-fi
-AC_SUBST(OPENGL_LIBS)
-])
-dnl
-dnl See if function gluTessCallback is called with "(...)"
-dnl
-dnl OCTAVE_GLUTESSCALLBACK_THREEDOTS
-AC_DEFUN([OCTAVE_GLUTESSCALLBACK_THREEDOTS],
-[AC_CACHE_CHECK([whether gluTessCallback is called with "(...)"],
-octave_cv_glutesscallback_threedots,
-[AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#ifdef HAVE_GL_GLU_H
-#include <GL/glu.h>
-#elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
-#include <OpenGL/glu.h>
-#endif]],
-[[GLvoid (*func)(...); gluTessCallback(0, 0, func);]])],
-octave_cv_glutesscallback_threedots="yes", octave_cv_glutesscallback_threedots="no")])
-AC_LANG_POP(C++)
-if test $octave_cv_glutesscallback_threedots = "yes"; then
-  AC_DEFINE(HAVE_GLUTESSCALLBACK_THREEDOTS, 1, 
-    [Define if gluTessCallback is called with (...)])
-fi
-])
-dnl
-dnl Check for support of OpenMP with a given compiler flag. If
-dnl found define HAVE_OPENMP and add the compile flag to CFLAGS
-dnl and CXXFLAGS.
-dnl
-AC_DEFUN([OCTAVE_CHECK_OPENMP],
-[AC_MSG_CHECKING([for support of OpenMP])
-XCFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $1"
-AC_CACHE_VAL(octave_cv_check_openmp,[
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <omp.h>
-#include <stdio.h>
-]], [[
-int main(int argc, char* argv[])
-{
-  _Pragma("omp parallel")  
-  printf("Hello, world.\n");
-  return 0;
-}
-]])],octave_cv_openmp=yes, octave_cv_openmmp=no, octave_cv_openmp=no)])
-AC_MSG_RESULT($octave_cv_openmp)
-if test "$octave_cv_openmp" = yes; then
-  AC_DEFINE(HAVE_OPENMP,1,[Define if compiler supports OpenMP])
-  CXXFLAGS="$CXXFLAGS $1"
-else
-  CFLAGS="$XCFLAGS"
-fi
-])
-dnl
-dnl Configure paths for FreeType2
-dnl Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
-dnl
-dnl Copyright 2001, 2003 by
-dnl David Turner, Robert Wilhelm, and Werner Lemberg.
-dnl
-dnl This file is part of the FreeType project, and may only be used, modified,
-dnl and distributed under the terms of the FreeType project license,
-dnl LICENSE.TXT.  By continuing to use, modify, or distribute this file you
-dnl indicate that you have read the license and understand and accept it
-dnl fully.
-dnl
-dnl As a special exception to the FreeType project license, this file may be
-dnl distributed as part of a program that contains a configuration script
-dnl generated by Autoconf, under the same distribution terms as the rest of
-dnl that program.
-dnl
-dnl serial 2
-dnl
-dnl AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
-dnl Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
-dnl MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is
-dnl FreeType 2.0.4).
-dnl
-AC_DEFUN([AC_CHECK_FT2],
-  [dnl Get the cflags and libraries from the freetype-config script
-   dnl
-   AC_ARG_WITH([ft-prefix],
-     dnl don't quote AS_HELP_STRING!
-     AS_HELP_STRING([--with-ft-prefix=PREFIX],
-                    [Prefix where FreeType is installed (optional)]),
-     [ft_config_prefix="$withval"],
-     [ft_config_prefix=""])
-  
-   AC_ARG_WITH([ft-exec-prefix],
-     dnl don't quote AS_HELP_STRING!
-     AS_HELP_STRING([--with-ft-exec-prefix=PREFIX],
-                    [Exec prefix where FreeType is installed (optional)]),
-     [ft_config_exec_prefix="$withval"],
-     [ft_config_exec_prefix=""])
-
-   AC_ARG_ENABLE([freetypetest],
-     dnl don't quote AS_HELP_STRING!
-     AS_HELP_STRING([--disable-freetypetest],
-                    [Do not try to compile and run a test FreeType program]),
-     [],
-     [enable_fttest=yes])
-
-   if test x$ft_config_exec_prefix != x ; then
-     ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix"
-     if test x${FT2_CONFIG+set} != xset ; then
-       FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config
-     fi
-   fi
-
-   if test x$ft_config_prefix != x ; then
-     ft_config_args="$ft_config_args --prefix=$ft_config_prefix"
-     if test x${FT2_CONFIG+set} != xset ; then
-       FT2_CONFIG=$ft_config_prefix/bin/freetype-config
-     fi
-   fi
-
-   AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no])
-
-   min_ft_version=m4_if([$1], [], [7.0.1], [$1])
-   AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])
-   no_ft=""
-   if test "$FT2_CONFIG" = "no" ; then
-     no_ft=yes
-   else
-     FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags`
-     FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs`
-     ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
-     ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
-     ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
-     ft_min_major_version=`echo $min_ft_version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
-     ft_min_minor_version=`echo $min_ft_version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
-     ft_min_micro_version=`echo $min_ft_version | \
-       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
-     if test x$enable_fttest = xyes ; then
-       ft_config_is_lt=""
-       if test $ft_config_major_version -lt $ft_min_major_version ; then
-         ft_config_is_lt=yes
-       else
-         if test $ft_config_major_version -eq $ft_min_major_version ; then
-           if test $ft_config_minor_version -lt $ft_min_minor_version ; then
-             ft_config_is_lt=yes
-           else
-            if test $ft_config_minor_version -eq $ft_min_minor_version ; then
-               if test $ft_config_micro_version -lt $ft_min_micro_version ; then
-                 ft_config_is_lt=yes
-               fi
-             fi
-           fi
-         fi
-       fi
-       if test x$ft_config_is_lt = xyes ; then
-         no_ft=yes
-       else
-         ac_save_CFLAGS="$CFLAGS"
-         ac_save_LIBS="$LIBS"
-         CFLAGS="$CFLAGS $FT2_CFLAGS"
-         LIBS="$FT2_LIBS $LIBS"
-
-         dnl
-         dnl Sanity checks for the results of freetype-config to some extent.
-         dnl
-         AC_RUN_IFELSE([
-             AC_LANG_SOURCE([[
-
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include <stdio.h>
-#include <stdlib.h>
-
-int
-main()
-{
-  FT_Library library;
-  FT_Error  error;
-
-  error = FT_Init_FreeType(&library);
-
-  if (error)
-    return 1;
-  else
-  {
-    FT_Done_FreeType(library);
-    return 0;
-  }
-}
-
-             ]])
-           ],
-           [],
-           [no_ft=yes],
-           [echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"])
-
-         CFLAGS="$ac_save_CFLAGS"
-         LIBS="$ac_save_LIBS"
-       fi             dnl test $ft_config_version -lt $ft_min_version
-     fi               dnl test x$enable_fttest = xyes
-   fi                 dnl test "$FT2_CONFIG" = "no"
-
-   if test x$no_ft = x ; then
-     AC_MSG_RESULT([yes])
-     m4_if([$2], [], [:], [$2])
-   else
-     AC_MSG_RESULT([no])
-     if test "$FT2_CONFIG" = "no" ; then
-       AC_MSG_WARN([
-
-  The freetype-config script installed by FreeType 2 could not be found.
-  If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in
-  your path, or set the FT2_CONFIG environment variable to the
-  full path to freetype-config.
-       ])
-     else
-       if test x$ft_config_is_lt = xyes ; then
-         AC_MSG_WARN([
-
-  Your installed version of the FreeType 2 library is too old.
-  If you have different versions of FreeType 2, make sure that
-  correct values for --with-ft-prefix or --with-ft-exec-prefix
-  are used, or set the FT2_CONFIG environment variable to the
-  full path to freetype-config.
-         ])
-       else
-         AC_MSG_WARN([
-
-  The FreeType test program failed to run.  If your system uses
-  shared libraries and they are installed outside the normal
-  system library path, make sure the variable LD_LIBRARY_PATH
-  (or whatever is appropiate for your system) is correctly set.
-         ])
-       fi
-     fi
-
-     FT2_CFLAGS=""
-     FT2_LIBS=""
-     m4_if([$3], [], [:], [$3])
-   fi
-
-   AC_SUBST([FT2_CFLAGS])
-   AC_SUBST([FT2_LIBS])])
-dnl end of freetype2.m4
-
-dnl Check whether a math mapper function is available in <cmath>.
-dnl Will define HAVE_CMATH_FUNC if there is a double variant and
-dnl HAVE_CMATH_FUNCF if there is a float variant.
-dnl Currently capable of checking for functions with single 
-dnl argument and returning bool/int/real.
-AC_DEFUN([OCTAVE_CMATH_FUNC],[
-AC_MSG_CHECKING([for std::$1 in <cmath>])
-AC_LANG_PUSH(C++)
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <cmath>
-void take_func (bool (*func) (double x));
-void take_func (int (*func) (double x));
-void take_func (double (*func) (double x));
-]],
-[[
-take_func(std::$1);
-]])],
-[AC_MSG_RESULT([yes])
- AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1),1,[Define if <cmath> provides $1])],
-[AC_MSG_RESULT([no])])
-AC_MSG_CHECKING([for std::$1 (float variant) in <cmath>])
-AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
-#include <cmath>
-void take_func (bool (*func) (float x));
-void take_func (int (*func) (float x));
-void take_func (float (*func) (float x));
-]],
-[[
-take_func(std::$1);
-]])],
-[AC_MSG_RESULT([yes])
- AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1)F,1,[Define if <cmath> provides float variant of $1])],
-[AC_MSG_RESULT([no])])
-AC_LANG_POP(C++)
-])
-
-dnl Check whether fast signed integer arithmetics using bit tricks
-dnl can be used in oct-inttypes.h. Defines HAVE_FAST_INT_OPS if
-dnl the following conditions hold:
-dnl 1. Signed numbers are represented by twos complement
-dnl    (see <http://en.wikipedia.org/wiki/Two%27s_complement>)
-dnl 2. static_cast to unsigned int counterpart works like interpreting
-dnl    the signed bit pattern as unsigned (and is thus zero-cost).
-dnl 3. Signed addition and subtraction yield the same bit results as unsigned.
-dnl    (We use casts to prevent optimization interference, so there is no
-dnl     need for things like -ftrapv).
-dnl 4. Bit operations on signed integers work like on unsigned integers,
-dnl    except for the shifts. Shifts are arithmetic.
-dnl
-AC_DEFUN([OCTAVE_FAST_INT_OPS],[
-AC_MSG_CHECKING([whether fast integer arithmetics is usable])
-AC_LANG_PUSH(C++)
-AC_RUN_IFELSE([AC_LANG_PROGRAM([[
-#include <limits>
-template<class UT, class ST>
-static bool 
-do_test (UT, ST)
-{
-  volatile ST s = std::numeric_limits<ST>::min () / 3;
-  volatile UT u = static_cast<UT> (s);
-  if (*(reinterpret_cast<volatile ST *> (&u)) != s) return true;
-  
-  u = 0; u = ~u;
-  if (*(reinterpret_cast<volatile ST *> (&u)) != -1) return true;
-  
-  ST sx, sy;
-  sx = std::numeric_limits<ST>::max () / 2 + 1;
-  sy = std::numeric_limits<ST>::max () / 2 + 2;
-  if (static_cast<ST> (static_cast<UT> (sx) + static_cast<UT> (sy))
-      != std::numeric_limits<ST>::min () + 1) return true;
-  if (static_cast<ST> (static_cast<UT> (sx) - static_cast<UT> (sy))
-      != -1) return true;
-  
-  if ((sx & sy) != (static_cast<UT> (sx) & static_cast<UT> (sy)))
-    return true;
-  if ((sx | sy) != (static_cast<UT> (sx) | static_cast<UT> (sy)))
-    return true;
-  if ((sx ^ sy) != (static_cast<UT> (sx) ^ static_cast<UT> (sy)))
-    return true;
-  if ((-1 >> 1) != -1) return true;
-  return false;
-}
-
-#define DO_TEST(T) \
-if (do_test (static_cast<unsigned T> (0), static_cast<signed T> (0))) \
-  return sizeof (T);
-]],[[
-  DO_TEST(char)
-  DO_TEST(short)
-  DO_TEST(int)
-  DO_TEST(long)
-#if (defined(HAVE_LONG_LONG_INT) && defined(HAVE_UNSIGNED_LONG_LONG_INT))
-  DO_TEST(long long)
-#endif
-]])],
-[AC_MSG_RESULT([yes])
- AC_DEFINE(HAVE_FAST_INT_OPS,1,[Define if signed integers use two's complement])],
-[AC_MSG_RESULT([no])])
-AC_LANG_POP(C++)])
-dnl
-dnl Check to see if the compiler and the linker can handle the flags
-dnl "-framework $1" for the given prologue $2 and the given body $3 of
-dnl a source file.  Arguments 2 and 3 optionally can also be empty.
-dnl Add options (lower case letters $1) "--with-framework-$1" and
-dnl "--without-framework-$1". If this test is successful then perform
-dnl $4, otherwise do $5.
-dnl
-dnl OCTAVE_HAVE_FRAMEWORK
-AC_DEFUN([OCTAVE_HAVE_FRAMEWORK], [
-  AC_MSG_CHECKING([whether ${LD-ld} accepts -framework $1])
-  AC_CACHE_VAL(octave_cv_framework_$1, [
-    XLDFLAGS="$LDFLAGS"
-    LDFLAGS="$LDFLAGS -framework $1"
-    AC_LANG_PUSH(C++)
-    AC_LINK_IFELSE([AC_LANG_PROGRAM([$2], [$3])],
-      eval "octave_cv_framework_$1=yes",
-      eval "octave_cv_framework_$1=no")
-    AC_LANG_POP(C++)
-    LDFLAGS="$XLDFLAGS"
-  ])
-  if test "$octave_cv_framework_$1" = "yes"; then
-    AC_MSG_RESULT(yes)
-    AC_ARG_WITH(framework-m4_tolower($1),
-      [AS_HELP_STRING([--without-framework-m4_tolower($1)], 
-        [don't use framework $1])],
-         with_have_framework=$withval, with_have_framework="yes")
-    if test "$with_have_framework" = "yes"; then
-      [$4]
-    else
-      AC_MSG_NOTICE([framework rejected by --without-framework-m4_tolower($1)])
-      [$5]
-    fi
-  else
-    AC_MSG_RESULT(no)
-    [$5]
-  fi
-])
-
-##############################################################################
-##############################################################################
-
-# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
-# 
-# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# PKG_PROG_PKG_CONFIG([MIN-VERSION])
-# ----------------------------------
-AC_DEFUN([PKG_PROG_PKG_CONFIG],
-[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
-AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
-	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
-fi
-if test -n "$PKG_CONFIG"; then
-	_pkg_min_version=m4_default([$1], [0.9.0])
-	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
-	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
-		AC_MSG_RESULT([yes])
-	else
-		AC_MSG_RESULT([no])
-		PKG_CONFIG=""
-	fi
-		
-fi[]dnl
-])# PKG_PROG_PKG_CONFIG
-
-# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
-#
-# Check to see whether a particular set of modules exists.  Similar
-# to PKG_CHECK_MODULES(), but does not set variables or print errors.
-#
-#
-# Similar to PKG_CHECK_MODULES, make sure that the first instance of
-# this or PKG_CHECK_MODULES is called, or make sure to call
-# PKG_CHECK_EXISTS manually
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_EXISTS],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-if test -n "$PKG_CONFIG" && \
-    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
-  m4_ifval([$2], [$2], [:])
-m4_ifvaln([$3], [else
-  $3])dnl
-fi])
-
-
-# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
-# ---------------------------------------------
-m4_define([_PKG_CONFIG],
-[if test -n "$PKG_CONFIG"; then
-    if test -n "$$1"; then
-        pkg_cv_[]$1="$$1"
-    else
-        PKG_CHECK_EXISTS([$3],
-                         [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
-			 [pkg_failed=yes])
-    fi
-else
-	pkg_failed=untried
-fi[]dnl
-])# _PKG_CONFIG
-
-# _PKG_SHORT_ERRORS_SUPPORTED
-# -----------------------------
-AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
-if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
-        _pkg_short_errors_supported=yes
-else
-        _pkg_short_errors_supported=no
-fi[]dnl
-])# _PKG_SHORT_ERRORS_SUPPORTED
-
-
-# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
-# [ACTION-IF-NOT-FOUND])
-#
-#
-# Note that if there is a possibility the first call to
-# PKG_CHECK_MODULES might not happen, you should be sure to include an
-# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
-#
-#
-# --------------------------------------------------------------
-AC_DEFUN([PKG_CHECK_MODULES],
-[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
-AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
-AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
-
-pkg_failed=no
-AC_MSG_CHECKING([for $1])
-
-_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
-_PKG_CONFIG([$1][_LIBS], [libs], [$2])
-
-m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
-and $1[]_LIBS to avoid the need to call pkg-config.
-See the pkg-config man page for more details.])
-
-if test $pkg_failed = yes; then
-        _PKG_SHORT_ERRORS_SUPPORTED
-        if test $_pkg_short_errors_supported = yes; then
-	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
-        else 
-	        $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
-        fi
-	# Put the nasty error message in config.log where it belongs
-	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
-
-	ifelse([$4], , [AC_MSG_ERROR(dnl
-[Package requirements ($2) were not met:
-
-$$1_PKG_ERRORS
-
-Consider adjusting the PKG_CONFIG_PATH environment variable if you
-installed software in a non-standard prefix.
-
-_PKG_TEXT
-])],
-		[AC_MSG_RESULT([no])
-                $4])
-elif test $pkg_failed = untried; then
-	ifelse([$4], , [AC_MSG_FAILURE(dnl
-[The pkg-config script could not be found or is too old.  Make sure it
-is in your PATH or set the PKG_CONFIG environment variable to the full
-path to pkg-config.
-
-_PKG_TEXT
-
-To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
-		[$4])
-else
-	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
-	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
-        AC_MSG_RESULT([yes])
-	ifelse([$3], , :, [$3])
-fi[]dnl
-])# PKG_CHECK_MODULES
-
-dnl
-dnl External macros.
-dnl
-
-m4_include([m4/ax_pthread.m4])
-m4_include([m4/ax_blas.m4])
-m4_include([m4/ax_blas_f77_func.m4])
-m4_include([m4/ax_lapack.m4])
--- a/autogen.sh	Fri Jun 10 11:26:07 2011 -0400
+++ b/autogen.sh	Fri Jun 10 14:35:42 2011 -0400
@@ -36,4 +36,4 @@
 
 echo "bootstrapping..."
 
-./bootstrap "$@"
+build-aux/bootstrap "$@"
--- a/bootstrap	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,946 +0,0 @@
-#! /bin/sh
-# Print a version string.
-scriptversion=2011-01-21.16; # UTC
-
-# Bootstrap this package from checked-out sources.
-
-# Copyright (C) 2003-2011 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# Originally written by Paul Eggert.  The canonical version of this
-# script is maintained as build-aux/bootstrap in gnulib, however, to
-# be useful to your project, you should place a copy of it under
-# version control in the top-level directory of your project.  The
-# intent is that all customization can be done with a bootstrap.conf
-# file also maintained in your version control; gnulib comes with a
-# template build-aux/bootstrap.conf to get you started.
-
-# Please report bugs or propose patches to bug-gnulib@gnu.org.
-
-nl='
-'
-
-# Ensure file names are sorted consistently across platforms.
-LC_ALL=C
-export LC_ALL
-
-local_gl_dir=gl
-
-# Temporary directory names.
-bt='._bootmp'
-bt_regex=`echo "$bt"| sed 's/\./[.]/g'`
-bt2=${bt}2
-me=$0
-
-usage() {
-  cat <<EOF
-Usage: $me [OPTION]...
-Bootstrap this package from the checked-out sources.
-
-Options:
- --gnulib-srcdir=DIRNAME  specify the local directory where gnulib
-                          sources reside.  Use this if you already
-                          have gnulib sources on your machine, and
-                          do not want to waste your bandwidth downloading
-                          them again.  Defaults to \$GNULIB_SRCDIR
- --bootstrap-sync         if this bootstrap script is not identical to
-                          the version in the local gnulib sources,
-                          update this script, and then restart it with
-                          /bin/sh or the shell \$CONFIG_SHELL
- --no-bootstrap-sync      do not check whether bootstrap is out of sync
- --copy                   copy files instead of creating symbolic links
- --force                  attempt to bootstrap even if the sources seem
-                          not to have been checked out
- --no-git                 do not use git to update gnulib.  Requires that
-                          --gnulib-srcdir point to a correct gnulib snapshot
- --skip-po                do not download po files
-
-If the file $me.conf exists in the same directory as this script, its
-contents are read as shell variables to configure the bootstrap.
-
-For build prerequisites, environment variables like \$AUTOCONF and \$AMTAR
-are honored.
-
-Running without arguments will suffice in most cases.
-EOF
-}
-
-# Configuration.
-
-# Name of the Makefile.am
-gnulib_mk=gnulib.mk
-
-# List of gnulib modules needed.
-gnulib_modules=
-
-# Any gnulib files needed that are not in modules.
-gnulib_files=
-
-# A function to be called to edit gnulib.mk right after it's created.
-# Override it via your own definition in bootstrap.conf.
-gnulib_mk_hook() { :; }
-
-# A function to be called after everything else in this script.
-# Override it via your own definition in bootstrap.conf.
-bootstrap_epilogue() { :; }
-
-# The command to download all .po files for a specified domain into
-# a specified directory.  Fill in the first %s is the domain name, and
-# the second with the destination directory.  Use rsync's -L and -r
-# options because the latest/%s directory and the .po files within are
-# all symlinks.
-po_download_command_format=\
-"rsync --delete --exclude '*.s1' -Lrtvz \
- 'translationproject.org::tp/latest/%s/' '%s'"
-
-extract_package_name='
-  /^AC_INIT(/{
-     /.*,.*,.*, */{
-       s///
-       s/[][]//g
-       s/)$//
-       p
-       q
-     }
-     s/AC_INIT(\[*//
-     s/]*,.*//
-     s/^GNU //
-     y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
-     s/[^A-Za-z0-9_]/-/g
-     p
-  }
-'
-package=`sed -n "$extract_package_name" configure.ac` || exit
-gnulib_name=lib$package
-
-build_aux=build-aux
-source_base=lib
-m4_base=m4
-doc_base=doc
-tests_base=tests
-
-# Extra files from gnulib, which override files from other sources.
-gnulib_extra_files="
-        $build_aux/install-sh
-        $build_aux/missing
-        $build_aux/mdate-sh
-        $build_aux/texinfo.tex
-        $build_aux/depcomp
-        $build_aux/config.guess
-        $build_aux/config.sub
-        doc/INSTALL
-"
-
-# Additional gnulib-tool options to use.  Use "\newline" to break lines.
-gnulib_tool_option_extras=
-
-# Other locale categories that need message catalogs.
-EXTRA_LOCALE_CATEGORIES=
-
-# Additional xgettext options to use.  Use "\\\newline" to break lines.
-XGETTEXT_OPTIONS='\\\
- --flag=_:1:pass-c-format\\\
- --flag=N_:1:pass-c-format\\\
- --flag=error:3:c-format --flag=error_at_line:5:c-format\\\
-'
-
-# Package bug report address and copyright holder for gettext files
-COPYRIGHT_HOLDER='Free Software Foundation, Inc.'
-MSGID_BUGS_ADDRESS=bug-$package@gnu.org
-
-# Files we don't want to import.
-excluded_files=
-
-# File that should exist in the top directory of a checked out hierarchy,
-# but not in a distribution tarball.
-checkout_only_file=README-hacking
-
-# Whether to use copies instead of symlinks.
-copy=false
-
-# Set this to '.cvsignore .gitignore' in bootstrap.conf if you want
-# those files to be generated in directories like lib/, m4/, and po/.
-# Or set it to 'auto' to make this script select which to use based
-# on which version control system (if any) is used in the source directory.
-vc_ignore=auto
-
-# Set this to true in bootstrap.conf to enable --bootstrap-sync by
-# default.
-bootstrap_sync=false
-
-# Use git to update gnulib sources
-use_git=true
-
-# find_tool ENVVAR NAMES...
-# -------------------------
-# Search for a required program.  Use the value of ENVVAR, if set,
-# otherwise find the first of the NAMES that can be run (i.e.,
-# supports --version).  If found, set ENVVAR to the program name,
-# die otherwise.
-find_tool ()
-{
-  find_tool_envvar=$1
-  shift
-  find_tool_names=$@
-  eval "find_tool_res=\$$find_tool_envvar"
-  if test x"$find_tool_res" = x; then
-    for i
-    do
-      if ($i --version </dev/null) >/dev/null 2>&1; then
-       find_tool_res=$i
-       break
-      fi
-    done
-  else
-    find_tool_error_prefix="\$$find_tool_envvar: "
-  fi
-  if test x"$find_tool_res" = x; then
-    echo >&2 "$me: one of these is required: $find_tool_names"
-    exit 1
-  fi
-  ($find_tool_res --version </dev/null) >/dev/null 2>&1 || {
-    echo >&2 "$me: ${find_tool_error_prefix}cannot run $find_tool_res --version"
-    exit 1
-  }
-  eval "$find_tool_envvar=\$find_tool_res"
-  eval "export $find_tool_envvar"
-}
-
-# Find sha1sum, named gsha1sum on MacPorts, and shasum on MacOS 10.6.
-find_tool SHA1SUM sha1sum gsha1sum shasum
-
-# Override the default configuration, if necessary.
-# Make sure that bootstrap.conf is sourced from the current directory
-# if we were invoked as "sh bootstrap".
-case "$0" in
-  */*) test -r "$0.conf" && . "$0.conf" ;;
-  *) test -r "$0.conf" && . ./"$0.conf" ;;
-esac
-
-
-if test "$vc_ignore" = auto; then
-  vc_ignore=
-  test -d .git && vc_ignore=.gitignore
-  test -d CVS && vc_ignore="$vc_ignore .cvsignore"
-fi
-
-# Translate configuration into internal form.
-
-# Parse options.
-
-for option
-do
-  case $option in
-  --help)
-    usage
-    exit;;
-  --gnulib-srcdir=*)
-    GNULIB_SRCDIR=`expr "X$option" : 'X--gnulib-srcdir=\(.*\)'`;;
-  --skip-po)
-    SKIP_PO=t;;
-  --force)
-    checkout_only_file=;;
-  --copy)
-    copy=true;;
-  --bootstrap-sync)
-    bootstrap_sync=true;;
-  --no-bootstrap-sync)
-    bootstrap_sync=false;;
-  --no-git)
-    use_git=false;;
-  *)
-    echo >&2 "$0: $option: unknown option"
-    exit 1;;
-  esac
-done
-
-if $use_git || test -d "$GNULIB_SRCDIR"; then
-  :
-else
-  echo "$0: Error: --no-git requires --gnulib-srcdir" >&2
-  exit 1
-fi
-
-if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then
-  echo "$0: Bootstrapping from a non-checked-out distribution is risky." >&2
-  exit 1
-fi
-
-# If $STR is not already on a line by itself in $FILE, insert it,
-# sorting the new contents of the file and replacing $FILE with the result.
-insert_sorted_if_absent() {
-  file=$1
-  str=$2
-  test -f $file || touch $file
-  echo "$str" | sort -u - $file | cmp - $file > /dev/null \
-    || echo "$str" | sort -u - $file -o $file \
-    || exit 1
-}
-
-# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with
-# insert_sorted_if_absent.
-insert_vc_ignore() {
-  vc_ignore_file="$1"
-  pattern="$2"
-  case $vc_ignore_file in
-  *.gitignore)
-    # A .gitignore entry that does not start with `/' applies
-    # recursively to subdirectories, so prepend `/' to every
-    # .gitignore entry.
-    pattern=`echo "$pattern" | sed s,^,/,`;;
-  esac
-  insert_sorted_if_absent "$vc_ignore_file" "$pattern"
-}
-
-# Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac.
-found_aux_dir=no
-grep '^[	 ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'\])' configure.ac \
-    >/dev/null && found_aux_dir=yes
-grep '^[	 ]*AC_CONFIG_AUX_DIR('"$build_aux"')' configure.ac \
-    >/dev/null && found_aux_dir=yes
-if test $found_aux_dir = no; then
-  echo "$0: expected line not found in configure.ac. Add the following:" >&2
-  echo "  AC_CONFIG_AUX_DIR([$build_aux])" >&2
-  exit 1
-fi
-
-# If $build_aux doesn't exist, create it now, otherwise some bits
-# below will malfunction.  If creating it, also mark it as ignored.
-if test ! -d $build_aux; then
-  mkdir $build_aux
-  for dot_ig in x $vc_ignore; do
-    test $dot_ig = x && continue
-    insert_vc_ignore $dot_ig $build_aux
-  done
-fi
-
-# Note this deviates from the version comparison in automake
-# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
-# but this should suffice as we won't be specifying old
-# version formats or redundant trailing .0 in bootstrap.conf.
-# If we did want full compatibility then we should probably
-# use m4_version_compare from autoconf.
-sort_ver() { # sort -V is not generally available
-  ver1="$1"
-  ver2="$2"
-
-  # split on '.' and compare each component
-  i=1
-  while : ; do
-    p1=$(echo "$ver1" | cut -d. -f$i)
-    p2=$(echo "$ver2" | cut -d. -f$i)
-    if [ ! "$p1" ]; then
-      echo "$1 $2"
-      break
-    elif [ ! "$p2" ]; then
-      echo "$2 $1"
-      break
-    elif [ ! "$p1" = "$p2" ]; then
-      if [ "$p1" -gt "$p2" ] 2>/dev/null; then # numeric comparison
-        echo "$2 $1"
-      elif [ "$p2" -gt "$p1" ] 2>/dev/null; then # numeric comparison
-        echo "$1 $2"
-      else # numeric, then lexicographic comparison
-        lp=$(printf "$p1\n$p2\n" | LANG=C sort -n | tail -n1)
-        if [ "$lp" = "$p2" ]; then
-          echo "$1 $2"
-        else
-          echo "$2 $1"
-        fi
-      fi
-      break
-    fi
-    i=$(($i+1))
-  done
-}
-
-get_version() {
-  app=$1
-
-  $app --version >/dev/null 2>&1 || return 1
-
-  $app --version 2>&1 |
-  sed -n '# Move version to start of line.
-          s/.*[v ]\([0-9]\)/\1/
-
-          # Skip lines that do not start with version.
-          /^[0-9]/!d
-
-          # Remove characters after the version.
-          s/[^.a-z0-9-].*//
-
-          # The first component must be digits only.
-          s/^\([0-9]*\)[a-z-].*/\1/
-
-          #the following essentially does s/5.005/5.5/
-          s/\.0*\([1-9]\)/.\1/g
-          p
-          q'
-}
-
-check_versions() {
-  ret=0
-
-  while read app req_ver; do
-    # We only need libtoolize from the libtool package.
-    if test "$app" = libtool; then
-      app=libtoolize
-    fi
-    # Exempt git if --no-git is in effect.
-    if test "$app" = git; then
-      $use_git || continue
-    fi
-    # Honor $APP variables ($TAR, $AUTOCONF, etc.)
-    appvar=`echo $app | tr '[a-z]-' '[A-Z]_'`
-    test "$appvar" = TAR && appvar=AMTAR
-    eval "app=\${$appvar-$app}"
-    inst_ver=$(get_version $app)
-    if [ ! "$inst_ver" ]; then
-      echo "$me: Error: '$app' not found" >&2
-      ret=1
-    elif [ ! "$req_ver" = "-" ]; then
-      latest_ver=$(sort_ver $req_ver $inst_ver | cut -d' ' -f2)
-      if [ ! "$latest_ver" = "$inst_ver" ]; then
-        echo "$me: Error: '$app' version == $inst_ver is too old" >&2
-        echo "       '$app' version >= $req_ver is required" >&2
-        ret=1
-      fi
-    fi
-  done
-
-  return $ret
-}
-
-print_versions() {
-  echo "Program    Min_version"
-  echo "----------------------"
-  printf %s "$buildreq"
-  echo "----------------------"
-  # can't depend on column -t
-}
-
-use_libtool=0
-# We'd like to use grep -E, to see if any of LT_INIT,
-# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
-# but that's not portable enough (e.g., for Solaris).
-grep '^[	 ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \
-  && use_libtool=1
-grep '^[	 ]*LT_INIT' configure.ac >/dev/null \
-  && use_libtool=1
-if test $use_libtool = 1; then
-  find_tool LIBTOOLIZE glibtoolize libtoolize
-fi
-
-if ! printf "$buildreq" | check_versions; then
-  echo >&2
-  if test -f README-prereq; then
-    echo "$0: See README-prereq for how to get the prerequisite programs" >&2
-  else
-    echo "$0: Please install the prerequisite programs" >&2
-  fi
-  exit 1
-fi
-
-echo "$0: Bootstrapping from checked-out $package sources..."
-
-# See if we can use gnulib's git-merge-changelog merge driver.
-if test -d .git && (git --version) >/dev/null 2>/dev/null ; then
-  if git config merge.merge-changelog.driver >/dev/null ; then
-    :
-  elif (git-merge-changelog --version) >/dev/null 2>/dev/null ; then
-    echo "$0: initializing git-merge-changelog driver"
-    git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver'
-    git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B'
-  else
-    echo "$0: consider installing git-merge-changelog from gnulib"
-  fi
-fi
-
-
-cleanup_gnulib() {
-  status=$?
-  rm -fr "$gnulib_path"
-  exit $status
-}
-
-git_modules_config () {
-  test -f .gitmodules && git config --file .gitmodules "$@"
-}
-
-gnulib_path=`git_modules_config submodule.gnulib.path`
-test -z "$gnulib_path" && gnulib_path=gnulib
-
-# Get gnulib files.
-
-case ${GNULIB_SRCDIR--} in
--)
-  if git_modules_config submodule.gnulib.url >/dev/null; then
-    echo "$0: getting gnulib files..."
-    git submodule init || exit $?
-    git submodule update || exit $?
-
-  elif [ ! -d "$gnulib_path" ]; then
-    echo "$0: getting gnulib files..."
-
-    trap cleanup_gnulib 1 2 13 15
-
-    shallow=
-    git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2'
-    git clone $shallow git://git.sv.gnu.org/gnulib "$gnulib_path" ||
-      cleanup_gnulib
-
-    trap - 1 2 13 15
-  fi
-  GNULIB_SRCDIR=$gnulib_path
-  ;;
-*)
-  # Use GNULIB_SRCDIR as a reference.
-  if test -d "$GNULIB_SRCDIR"/.git && \
-        git_modules_config submodule.gnulib.url >/dev/null; then
-    echo "$0: getting gnulib files..."
-    if git submodule -h|grep -- --reference > /dev/null; then
-      # Prefer the one-liner available in git 1.6.4 or newer.
-      git submodule update --init --reference "$GNULIB_SRCDIR" \
-        "$gnulib_path" || exit $?
-    else
-      # This fallback allows at least git 1.5.5.
-      if test -f "$gnulib_path"/gnulib-tool; then
-        # Since file already exists, assume submodule init already complete.
-        git submodule update || exit $?
-      else
-        # Older git can't clone into an empty directory.
-        rmdir "$gnulib_path" 2>/dev/null
-        git clone --reference "$GNULIB_SRCDIR" \
-          "$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \
-          && git submodule init && git submodule update \
-          || exit $?
-      fi
-    fi
-    GNULIB_SRCDIR=$gnulib_path
-  fi
-  ;;
-esac
-
-if $bootstrap_sync; then
-  cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
-    echo "$0: updating bootstrap and restarting..."
-    exec sh -c \
-      'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
-      -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
-      "$0" "$@" --no-bootstrap-sync
-  }
-fi
-
-gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
-<$gnulib_tool || exit
-
-# Get translations.
-
-download_po_files() {
-  subdir=$1
-  domain=$2
-  echo "$me: getting translations into $subdir for $domain..."
-  cmd=`printf "$po_download_command_format" "$domain" "$subdir"`
-  eval "$cmd"
-}
-
-# Mirror .po files to $po_dir/.reference and copy only the new
-# or modified ones into $po_dir.  Also update $po_dir/LINGUAS.
-# Note po files that exist locally only are left in $po_dir but will
-# not be included in LINGUAS and hence will not be distributed.
-update_po_files() {
-  # Directory containing primary .po files.
-  # Overwrite them only when we're sure a .po file is new.
-  po_dir=$1
-  domain=$2
-
-  # Mirror *.po files into this dir.
-  # Usually contains *.s1 checksum files.
-  ref_po_dir="$po_dir/.reference"
-
-  test -d $ref_po_dir || mkdir $ref_po_dir || return
-  download_po_files $ref_po_dir $domain \
-    && ls "$ref_po_dir"/*.po 2>/dev/null |
-      sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" || return
-
-  langs=`cd $ref_po_dir && echo *.po|sed 's/\.po//g'`
-  test "$langs" = '*' && langs=x
-  for po in $langs; do
-    case $po in x) continue;; esac
-    new_po="$ref_po_dir/$po.po"
-    cksum_file="$ref_po_dir/$po.s1"
-    if ! test -f "$cksum_file" ||
-        ! test -f "$po_dir/$po.po" ||
-        ! $SHA1SUM -c --status "$cksum_file" \
-            < "$new_po" > /dev/null; then
-      echo "$me: updated $po_dir/$po.po..."
-      cp "$new_po" "$po_dir/$po.po" \
-          && $SHA1SUM < "$new_po" > "$cksum_file"
-    fi
-  done
-}
-
-case $SKIP_PO in
-'')
-  if test -d po; then
-    update_po_files po $package || exit
-  fi
-
-  if test -d runtime-po; then
-    update_po_files runtime-po $package-runtime || exit
-  fi;;
-esac
-
-symlink_to_dir()
-{
-  src=$1/$2
-  dst=${3-$2}
-
-  test -f "$src" && {
-
-    # If the destination directory doesn't exist, create it.
-    # This is required at least for "lib/uniwidth/cjk.h".
-    dst_dir=`dirname "$dst"`
-    if ! test -d "$dst_dir"; then
-      mkdir -p "$dst_dir"
-
-      # If we've just created a directory like lib/uniwidth,
-      # tell version control system(s) it's ignorable.
-      # FIXME: for now, this does only one level
-      parent=`dirname "$dst_dir"`
-      for dot_ig in x $vc_ignore; do
-        test $dot_ig = x && continue
-        ig=$parent/$dot_ig
-        insert_vc_ignore $ig `echo "$dst_dir"|sed 's,.*/,,'`
-      done
-    fi
-
-    if $copy; then
-      {
-        test ! -h "$dst" || {
-          echo "$me: rm -f $dst" &&
-          rm -f "$dst"
-        }
-      } &&
-      test -f "$dst" &&
-      cmp -s "$src" "$dst" || {
-        echo "$me: cp -fp $src $dst" &&
-        cp -fp "$src" "$dst"
-      }
-    else
-      test -h "$dst" &&
-      src_ls=`ls -diL "$src" 2>/dev/null` && set $src_ls && src_i=$1 &&
-      dst_ls=`ls -diL "$dst" 2>/dev/null` && set $dst_ls && dst_i=$1 &&
-      test "$src_i" = "$dst_i" || {
-        dot_dots=
-        case $src in
-        /*) ;;
-        *)
-          case /$dst/ in
-          *//* | */../* | */./* | /*/*/*/*/*/)
-             echo >&2 "$me: invalid symlink calculation: $src -> $dst"
-             exit 1;;
-          /*/*/*/*/)	dot_dots=../../../;;
-          /*/*/*/)	dot_dots=../../;;
-          /*/*/)	dot_dots=../;;
-          esac;;
-        esac
-
-        echo "$me: ln -fs $dot_dots$src $dst" &&
-        ln -fs "$dot_dots$src" "$dst"
-      }
-    fi
-  }
-}
-
-cp_mark_as_generated()
-{
-  cp_src=$1
-  cp_dst=$2
-
-  if cmp -s "$cp_src" "$GNULIB_SRCDIR/$cp_dst"; then
-    symlink_to_dir "$GNULIB_SRCDIR" "$cp_dst"
-  elif cmp -s "$cp_src" "$local_gl_dir/$cp_dst"; then
-    symlink_to_dir $local_gl_dir "$cp_dst"
-  else
-    case $cp_dst in
-      *.[ch])             c1='/* '; c2=' */';;
-      *.texi)             c1='@c '; c2=     ;;
-      *.m4|*/Make*|Make*) c1='# ' ; c2=     ;;
-      *)                  c1=     ; c2=     ;;
-    esac
-
-    # If the destination directory doesn't exist, create it.
-    # This is required at least for "lib/uniwidth/cjk.h".
-    dst_dir=`dirname "$cp_dst"`
-    test -d "$dst_dir" || mkdir -p "$dst_dir"
-
-    if test -z "$c1"; then
-      cmp -s "$cp_src" "$cp_dst" || {
-        # Copy the file first to get proper permissions if it
-        # doesn't already exist.  Then overwrite the copy.
-        echo "$me: cp -f $cp_src $cp_dst" &&
-        rm -f "$cp_dst" &&
-        cp "$cp_src" "$cp_dst-t" &&
-        sed "s!$bt_regex/!!g" "$cp_src" > "$cp_dst-t" &&
-        mv -f "$cp_dst-t" "$cp_dst"
-      }
-    else
-      # Copy the file first to get proper permissions if it
-      # doesn't already exist.  Then overwrite the copy.
-      cp "$cp_src" "$cp_dst-t" &&
-      (
-        echo "$c1-*- buffer-read-only: t -*- vi: set ro:$c2" &&
-        echo "${c1}DO NOT EDIT! GENERATED AUTOMATICALLY!$c2" &&
-        sed "s!$bt_regex/!!g" "$cp_src"
-      ) > $cp_dst-t &&
-      if cmp -s "$cp_dst-t" "$cp_dst"; then
-        rm -f "$cp_dst-t"
-      else
-        echo "$me: cp $cp_src $cp_dst # with edits" &&
-        mv -f "$cp_dst-t" "$cp_dst"
-      fi
-    fi
-  fi
-}
-
-version_controlled_file() {
-  dir=$1
-  file=$2
-  found=no
-  if test -d CVS; then
-    grep -F "/$file/" $dir/CVS/Entries 2>/dev/null |
-             grep '^/[^/]*/[0-9]' > /dev/null && found=yes
-  elif test -d .git; then
-    git rm -n "$dir/$file" > /dev/null 2>&1 && found=yes
-  elif test -d .svn; then
-    svn log -r HEAD "$dir/$file" > /dev/null 2>&1 && found=yes
-  else
-    echo "$me: no version control for $dir/$file?" >&2
-  fi
-  test $found = yes
-}
-
-slurp() {
-  for dir in . `(cd $1 && find * -type d -print)`; do
-    copied=
-    sep=
-    for file in `ls -a $1/$dir`; do
-      case $file in
-      .|..) continue;;
-      # FIXME: should all file names starting with "." be ignored?
-      .*) continue;;
-      esac
-      test -d $1/$dir/$file && continue
-      for excluded_file in $excluded_files; do
-        test "$dir/$file" = "$excluded_file" && continue 2
-      done
-      if test $file = Makefile.am && test "X$gnulib_mk" != XMakefile.am; then
-        copied=$copied${sep}$gnulib_mk; sep=$nl
-        remove_intl='/^[^#].*\/intl/s/^/#/;'"s!$bt_regex/!!g"
-        sed "$remove_intl" $1/$dir/$file |
-        cmp - $dir/$gnulib_mk > /dev/null || {
-          echo "$me: Copying $1/$dir/$file to $dir/$gnulib_mk ..." &&
-          rm -f $dir/$gnulib_mk &&
-          sed "$remove_intl" $1/$dir/$file >$dir/$gnulib_mk &&
-          gnulib_mk_hook $dir/$gnulib_mk
-        }
-      elif { test "${2+set}" = set && test -r $2/$dir/$file; } ||
-           version_controlled_file $dir $file; then
-        echo "$me: $dir/$file overrides $1/$dir/$file"
-      else
-        copied=$copied$sep$file; sep=$nl
-        if test $file = gettext.m4; then
-          echo "$me: patching m4/gettext.m4 to remove need for intl/* ..."
-          rm -f $dir/$file
-          sed '
-            /^AC_DEFUN(\[AM_INTL_SUBDIR],/,/^]/c\
-              AC_DEFUN([AM_INTL_SUBDIR], [])
-            /^AC_DEFUN(\[gt_INTL_SUBDIR_CORE],/,/^]/c\
-              AC_DEFUN([gt_INTL_SUBDIR_CORE], [])
-            $a\
-              AC_DEFUN([gl_LOCK_EARLY], [])
-          ' $1/$dir/$file >$dir/$file
-        else
-          cp_mark_as_generated $1/$dir/$file $dir/$file
-        fi
-      fi || exit
-    done
-
-    for dot_ig in x $vc_ignore; do
-      test $dot_ig = x && continue
-      ig=$dir/$dot_ig
-      if test -n "$copied"; then
-        insert_vc_ignore $ig "$copied"
-        # If an ignored file name ends with .in.h, then also add
-        # the name with just ".h".  Many gnulib headers are generated,
-        # e.g., stdint.in.h -> stdint.h, dirent.in.h ->..., etc.
-        # Likewise for .gperf -> .h, .y -> .c, and .sin -> .sed
-        f=`echo "$copied" |
-          sed '
-            s/\.in\.h$/.h/
-            s/\.sin$/.sed/
-            s/\.y$/.c/
-            s/\.gperf$/.h/
-          '
-        `
-        insert_vc_ignore $ig "$f"
-
-        # For files like sys_stat.in.h and sys_time.in.h, record as
-        # ignorable the directory we might eventually create: sys/.
-        f=`echo "$copied"|sed 's/sys_.*\.in\.h$/sys/'`
-        insert_vc_ignore $ig "$f"
-      fi
-    done
-  done
-}
-
-
-# Create boot temporary directories to import from gnulib and gettext.
-rm -fr $bt $bt2 &&
-mkdir $bt $bt2 || exit
-
-# Import from gnulib.
-
-gnulib_tool_options="\
- --import\
- --no-changelog\
- --aux-dir $bt/$build_aux\
- --doc-base $bt/$doc_base\
- --lib $gnulib_name\
- --m4-base $bt/$m4_base/\
- --source-base $bt/$source_base/\
- --tests-base $bt/$tests_base\
- --local-dir $local_gl_dir\
- $gnulib_tool_option_extras\
-"
-if test $use_libtool = 1; then
-  case "$gnulib_tool_options " in
-    *' --libtool '*) ;;
-    *) gnulib_tool_options="$gnulib_tool_options --libtool" ;;
-  esac
-fi
-echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
-$gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
-slurp $bt || exit
-
-for file in $gnulib_files; do
-  symlink_to_dir "$GNULIB_SRCDIR" $file || exit
-done
-
-
-# Import from gettext.
-with_gettext=yes
-grep '^[	 ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \
-    with_gettext=no
-
-if test $with_gettext = yes; then
-  echo "$0: (cd $bt2; ${AUTOPOINT-autopoint}) ..."
-  cp configure.ac $bt2 &&
-  (cd $bt2 && ${AUTOPOINT-autopoint} && rm configure.ac) &&
-  slurp $bt2 $bt || exit
-fi
-rm -fr $bt $bt2 || exit
-
-# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some
-# gnulib-populated directories.  Such .m4 files would cause aclocal to fail.
-# The following requires GNU find 4.2.3 or newer.  Considering the usual
-# portability constraints of this script, that may seem a very demanding
-# requirement, but it should be ok.  Ignore any failure, which is fine,
-# since this is only a convenience to help developers avoid the relatively
-# unusual case in which a symlinked-to .m4 file is git-removed from gnulib
-# between successive runs of this script.
-find "$m4_base" "$source_base" \
-  -depth \( -name '*.m4' -o -name '*.[ch]' \) \
-  -type l -xtype l -delete > /dev/null 2>&1
-
-# Reconfigure, getting other files.
-
-# Skip autoheader if it's not needed.
-grep -E '^[	 ]*AC_CONFIG_HEADERS?\>' configure.ac >/dev/null ||
-  AUTOHEADER=true
-
-for command in \
-  libtool \
-  "${ACLOCAL-aclocal} --force -I m4 $ACLOCAL_FLAGS" \
-  "${AUTOCONF-autoconf} --force" \
-  "${AUTOHEADER-autoheader} --force" \
-  "${AUTOMAKE-automake} --add-missing --copy --force-missing"
-do
-  if test "$command" = libtool; then
-    test $use_libtool = 0 \
-      && continue
-    command="${LIBTOOLIZE-libtoolize} -c -f"
-  fi
-  echo "$0: $command ..."
-  $command || exit
-done
-
-
-# Get some extra files from gnulib, overriding existing files.
-for file in $gnulib_extra_files; do
-  case $file in
-  */INSTALL) dst=INSTALL;;
-  build-aux/*) dst=$build_aux/`expr "$file" : 'build-aux/\(.*\)'`;;
-  *) dst=$file;;
-  esac
-  symlink_to_dir "$GNULIB_SRCDIR" $file $dst || exit
-done
-
-if test $with_gettext = yes; then
-  # Create gettext configuration.
-  echo "$0: Creating po/Makevars from po/Makevars.template ..."
-  rm -f po/Makevars
-  sed '
-    /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/
-    /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/
-    /^MSGID_BUGS_ADDRESS *=/s|=.*|= '"$MSGID_BUGS_ADDRESS"'|
-    /^XGETTEXT_OPTIONS *=/{
-      s/$/ \\/
-      a\
-          '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+}
-    }
-  ' po/Makevars.template >po/Makevars || exit 1
-
-  if test -d runtime-po; then
-    # Similarly for runtime-po/Makevars, but not quite the same.
-    rm -f runtime-po/Makevars
-    sed '
-      /^DOMAIN *=.*/s/=.*/= '"$package"'-runtime/
-      /^subdir *=.*/s/=.*/= runtime-po/
-      /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/
-      /^XGETTEXT_OPTIONS *=/{
-        s/$/ \\/
-        a\
-            '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+}
-      }
-    ' po/Makevars.template >runtime-po/Makevars || exit 1
-
-    # Copy identical files from po to runtime-po.
-    (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po)
-  fi
-fi
-
-bootstrap_epilogue
-
-echo "$0: done.  Now you can run './configure'."
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
--- a/bootstrap.conf	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,117 +0,0 @@
-# Bootstrap configuration.
-
-# Copyright (C) 2006-2007, 2009-2011 Free Software Foundation, Inc.
-
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 3 of the License, or
-# (at your option) any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-
-# gnulib modules used by this package.
-gnulib_modules="
-  c-strcase
-  copysign
-  crypto/md5
-  fcntl
-  filemode
-  fnmatch
-  getcwd
-  gethostname
-  getopt-gnu
-  gettimeofday
-  glob
-  link
-  lstat
-  mkdir
-  mkfifo
-  mkstemp
-  mktime
-  nanosleep
-  nproc
-  pathmax
-  progname
-  readlink
-  rename
-  rmdir
-  round
-  roundf
-  sigaction
-  signal
-  sigprocmask
-  sleep
-  sleep
-  stat
-  stdint
-  strftime
-  strptime
-  symlink
-  sys_stat
-  sys_time
-  sys_times
-  time
-  times
-  trunc
-  truncf
-  unistd
-  unlink
-  vsnprintf
-"
-
-# Additional xgettext options to use.  Use "\\\newline" to break lines.
-XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
- --from-code=UTF-8\\\
- --flag=asprintf:2:c-format --flag=vasprintf:2:c-format\\\
- --flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
- --flag=wrapf:1:c-format\\\
-'
-
-# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
-# appears in configure.ac, exclude some unnecessary files.
-# Without grep's -E option (not portable enough, pre-configure),
-# the following test is ugly.  Also, this depends on the existence
-# of configure.ac, not the obsolescent-named configure.in.  But if
-# you're using this infrastructure, you should care about such things.
-
-gettext_external=0
-grep '^[	 ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
-  gettext_external=1
-grep '^[	 ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
-  gettext_external=1
-
-if test $gettext_external = 1; then
-  # Gettext supplies these files, but we don't need them since
-  # we don't have an intl subdirectory.
-  excluded_files='
-      m4/glibc2.m4
-      m4/intdiv0.m4
-      m4/lcmessage.m4
-      m4/lock.m4
-      m4/printf-posix.m4
-      m4/size_max.m4
-      m4/uintmax_t.m4
-      m4/ulonglong.m4
-      m4/visibility.m4
-      m4/xsize.m4
-  '
-fi
-
-# Build prerequisites
-buildreq="\
-autoconf   2.59
-automake   1.9.6
-git        1.5.5
-tar        -
-"
-checkout_only_file=HACKING
-gnulib_tool_option_extras="--libtool"
-gnulib_name="libgnu"
-source_base="libgnu"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/bootstrap	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,946 @@
+#! /bin/sh
+# Print a version string.
+scriptversion=2011-01-21.16; # UTC
+
+# Bootstrap this package from checked-out sources.
+
+# Copyright (C) 2003-2011 Free Software Foundation, Inc.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Originally written by Paul Eggert.  The canonical version of this
+# script is maintained as build-aux/bootstrap in gnulib, however, to
+# be useful to your project, you should place a copy of it under
+# version control in the top-level directory of your project.  The
+# intent is that all customization can be done with a bootstrap.conf
+# file also maintained in your version control; gnulib comes with a
+# template build-aux/bootstrap.conf to get you started.
+
+# Please report bugs or propose patches to bug-gnulib@gnu.org.
+
+nl='
+'
+
+# Ensure file names are sorted consistently across platforms.
+LC_ALL=C
+export LC_ALL
+
+local_gl_dir=gl
+
+# Temporary directory names.
+bt='._bootmp'
+bt_regex=`echo "$bt"| sed 's/\./[.]/g'`
+bt2=${bt}2
+me=$0
+
+usage() {
+  cat <<EOF
+Usage: $me [OPTION]...
+Bootstrap this package from the checked-out sources.
+
+Options:
+ --gnulib-srcdir=DIRNAME  specify the local directory where gnulib
+                          sources reside.  Use this if you already
+                          have gnulib sources on your machine, and
+                          do not want to waste your bandwidth downloading
+                          them again.  Defaults to \$GNULIB_SRCDIR
+ --bootstrap-sync         if this bootstrap script is not identical to
+                          the version in the local gnulib sources,
+                          update this script, and then restart it with
+                          /bin/sh or the shell \$CONFIG_SHELL
+ --no-bootstrap-sync      do not check whether bootstrap is out of sync
+ --copy                   copy files instead of creating symbolic links
+ --force                  attempt to bootstrap even if the sources seem
+                          not to have been checked out
+ --no-git                 do not use git to update gnulib.  Requires that
+                          --gnulib-srcdir point to a correct gnulib snapshot
+ --skip-po                do not download po files
+
+If the file $me.conf exists in the same directory as this script, its
+contents are read as shell variables to configure the bootstrap.
+
+For build prerequisites, environment variables like \$AUTOCONF and \$AMTAR
+are honored.
+
+Running without arguments will suffice in most cases.
+EOF
+}
+
+# Configuration.
+
+# Name of the Makefile.am
+gnulib_mk=gnulib.mk
+
+# List of gnulib modules needed.
+gnulib_modules=
+
+# Any gnulib files needed that are not in modules.
+gnulib_files=
+
+# A function to be called to edit gnulib.mk right after it's created.
+# Override it via your own definition in bootstrap.conf.
+gnulib_mk_hook() { :; }
+
+# A function to be called after everything else in this script.
+# Override it via your own definition in bootstrap.conf.
+bootstrap_epilogue() { :; }
+
+# The command to download all .po files for a specified domain into
+# a specified directory.  Fill in the first %s is the domain name, and
+# the second with the destination directory.  Use rsync's -L and -r
+# options because the latest/%s directory and the .po files within are
+# all symlinks.
+po_download_command_format=\
+"rsync --delete --exclude '*.s1' -Lrtvz \
+ 'translationproject.org::tp/latest/%s/' '%s'"
+
+extract_package_name='
+  /^AC_INIT(/{
+     /.*,.*,.*, */{
+       s///
+       s/[][]//g
+       s/)$//
+       p
+       q
+     }
+     s/AC_INIT(\[*//
+     s/]*,.*//
+     s/^GNU //
+     y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
+     s/[^A-Za-z0-9_]/-/g
+     p
+  }
+'
+package=`sed -n "$extract_package_name" configure.ac` || exit
+gnulib_name=lib$package
+
+build_aux=build-aux
+source_base=lib
+m4_base=m4
+doc_base=doc
+tests_base=tests
+
+# Extra files from gnulib, which override files from other sources.
+gnulib_extra_files="
+        $build_aux/install-sh
+        $build_aux/missing
+        $build_aux/mdate-sh
+        $build_aux/texinfo.tex
+        $build_aux/depcomp
+        $build_aux/config.guess
+        $build_aux/config.sub
+        doc/INSTALL
+"
+
+# Additional gnulib-tool options to use.  Use "\newline" to break lines.
+gnulib_tool_option_extras=
+
+# Other locale categories that need message catalogs.
+EXTRA_LOCALE_CATEGORIES=
+
+# Additional xgettext options to use.  Use "\\\newline" to break lines.
+XGETTEXT_OPTIONS='\\\
+ --flag=_:1:pass-c-format\\\
+ --flag=N_:1:pass-c-format\\\
+ --flag=error:3:c-format --flag=error_at_line:5:c-format\\\
+'
+
+# Package bug report address and copyright holder for gettext files
+COPYRIGHT_HOLDER='Free Software Foundation, Inc.'
+MSGID_BUGS_ADDRESS=bug-$package@gnu.org
+
+# Files we don't want to import.
+excluded_files=
+
+# File that should exist in the top directory of a checked out hierarchy,
+# but not in a distribution tarball.
+checkout_only_file=README-hacking
+
+# Whether to use copies instead of symlinks.
+copy=false
+
+# Set this to '.cvsignore .gitignore' in bootstrap.conf if you want
+# those files to be generated in directories like lib/, m4/, and po/.
+# Or set it to 'auto' to make this script select which to use based
+# on which version control system (if any) is used in the source directory.
+vc_ignore=auto
+
+# Set this to true in bootstrap.conf to enable --bootstrap-sync by
+# default.
+bootstrap_sync=false
+
+# Use git to update gnulib sources
+use_git=true
+
+# find_tool ENVVAR NAMES...
+# -------------------------
+# Search for a required program.  Use the value of ENVVAR, if set,
+# otherwise find the first of the NAMES that can be run (i.e.,
+# supports --version).  If found, set ENVVAR to the program name,
+# die otherwise.
+find_tool ()
+{
+  find_tool_envvar=$1
+  shift
+  find_tool_names=$@
+  eval "find_tool_res=\$$find_tool_envvar"
+  if test x"$find_tool_res" = x; then
+    for i
+    do
+      if ($i --version </dev/null) >/dev/null 2>&1; then
+       find_tool_res=$i
+       break
+      fi
+    done
+  else
+    find_tool_error_prefix="\$$find_tool_envvar: "
+  fi
+  if test x"$find_tool_res" = x; then
+    echo >&2 "$me: one of these is required: $find_tool_names"
+    exit 1
+  fi
+  ($find_tool_res --version </dev/null) >/dev/null 2>&1 || {
+    echo >&2 "$me: ${find_tool_error_prefix}cannot run $find_tool_res --version"
+    exit 1
+  }
+  eval "$find_tool_envvar=\$find_tool_res"
+  eval "export $find_tool_envvar"
+}
+
+# Find sha1sum, named gsha1sum on MacPorts, and shasum on MacOS 10.6.
+find_tool SHA1SUM sha1sum gsha1sum shasum
+
+# Override the default configuration, if necessary.
+# Make sure that bootstrap.conf is sourced from the current directory
+# if we were invoked as "sh bootstrap".
+case "$0" in
+  */*) test -r "$0.conf" && . "$0.conf" ;;
+  *) test -r "$0.conf" && . ./"$0.conf" ;;
+esac
+
+
+if test "$vc_ignore" = auto; then
+  vc_ignore=
+  test -d .git && vc_ignore=.gitignore
+  test -d CVS && vc_ignore="$vc_ignore .cvsignore"
+fi
+
+# Translate configuration into internal form.
+
+# Parse options.
+
+for option
+do
+  case $option in
+  --help)
+    usage
+    exit;;
+  --gnulib-srcdir=*)
+    GNULIB_SRCDIR=`expr "X$option" : 'X--gnulib-srcdir=\(.*\)'`;;
+  --skip-po)
+    SKIP_PO=t;;
+  --force)
+    checkout_only_file=;;
+  --copy)
+    copy=true;;
+  --bootstrap-sync)
+    bootstrap_sync=true;;
+  --no-bootstrap-sync)
+    bootstrap_sync=false;;
+  --no-git)
+    use_git=false;;
+  *)
+    echo >&2 "$0: $option: unknown option"
+    exit 1;;
+  esac
+done
+
+if $use_git || test -d "$GNULIB_SRCDIR"; then
+  :
+else
+  echo "$0: Error: --no-git requires --gnulib-srcdir" >&2
+  exit 1
+fi
+
+if test -n "$checkout_only_file" && test ! -r "$checkout_only_file"; then
+  echo "$0: Bootstrapping from a non-checked-out distribution is risky." >&2
+  exit 1
+fi
+
+# If $STR is not already on a line by itself in $FILE, insert it,
+# sorting the new contents of the file and replacing $FILE with the result.
+insert_sorted_if_absent() {
+  file=$1
+  str=$2
+  test -f $file || touch $file
+  echo "$str" | sort -u - $file | cmp - $file > /dev/null \
+    || echo "$str" | sort -u - $file -o $file \
+    || exit 1
+}
+
+# Adjust $PATTERN for $VC_IGNORE_FILE and insert it with
+# insert_sorted_if_absent.
+insert_vc_ignore() {
+  vc_ignore_file="$1"
+  pattern="$2"
+  case $vc_ignore_file in
+  *.gitignore)
+    # A .gitignore entry that does not start with `/' applies
+    # recursively to subdirectories, so prepend `/' to every
+    # .gitignore entry.
+    pattern=`echo "$pattern" | sed s,^,/,`;;
+  esac
+  insert_sorted_if_absent "$vc_ignore_file" "$pattern"
+}
+
+# Die if there is no AC_CONFIG_AUX_DIR($build_aux) line in configure.ac.
+found_aux_dir=no
+grep '^[	 ]*AC_CONFIG_AUX_DIR(\['"$build_aux"'\])' configure.ac \
+    >/dev/null && found_aux_dir=yes
+grep '^[	 ]*AC_CONFIG_AUX_DIR('"$build_aux"')' configure.ac \
+    >/dev/null && found_aux_dir=yes
+if test $found_aux_dir = no; then
+  echo "$0: expected line not found in configure.ac. Add the following:" >&2
+  echo "  AC_CONFIG_AUX_DIR([$build_aux])" >&2
+  exit 1
+fi
+
+# If $build_aux doesn't exist, create it now, otherwise some bits
+# below will malfunction.  If creating it, also mark it as ignored.
+if test ! -d $build_aux; then
+  mkdir $build_aux
+  for dot_ig in x $vc_ignore; do
+    test $dot_ig = x && continue
+    insert_vc_ignore $dot_ig $build_aux
+  done
+fi
+
+# Note this deviates from the version comparison in automake
+# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
+# but this should suffice as we won't be specifying old
+# version formats or redundant trailing .0 in bootstrap.conf.
+# If we did want full compatibility then we should probably
+# use m4_version_compare from autoconf.
+sort_ver() { # sort -V is not generally available
+  ver1="$1"
+  ver2="$2"
+
+  # split on '.' and compare each component
+  i=1
+  while : ; do
+    p1=$(echo "$ver1" | cut -d. -f$i)
+    p2=$(echo "$ver2" | cut -d. -f$i)
+    if [ ! "$p1" ]; then
+      echo "$1 $2"
+      break
+    elif [ ! "$p2" ]; then
+      echo "$2 $1"
+      break
+    elif [ ! "$p1" = "$p2" ]; then
+      if [ "$p1" -gt "$p2" ] 2>/dev/null; then # numeric comparison
+        echo "$2 $1"
+      elif [ "$p2" -gt "$p1" ] 2>/dev/null; then # numeric comparison
+        echo "$1 $2"
+      else # numeric, then lexicographic comparison
+        lp=$(printf "$p1\n$p2\n" | LANG=C sort -n | tail -n1)
+        if [ "$lp" = "$p2" ]; then
+          echo "$1 $2"
+        else
+          echo "$2 $1"
+        fi
+      fi
+      break
+    fi
+    i=$(($i+1))
+  done
+}
+
+get_version() {
+  app=$1
+
+  $app --version >/dev/null 2>&1 || return 1
+
+  $app --version 2>&1 |
+  sed -n '# Move version to start of line.
+          s/.*[v ]\([0-9]\)/\1/
+
+          # Skip lines that do not start with version.
+          /^[0-9]/!d
+
+          # Remove characters after the version.
+          s/[^.a-z0-9-].*//
+
+          # The first component must be digits only.
+          s/^\([0-9]*\)[a-z-].*/\1/
+
+          #the following essentially does s/5.005/5.5/
+          s/\.0*\([1-9]\)/.\1/g
+          p
+          q'
+}
+
+check_versions() {
+  ret=0
+
+  while read app req_ver; do
+    # We only need libtoolize from the libtool package.
+    if test "$app" = libtool; then
+      app=libtoolize
+    fi
+    # Exempt git if --no-git is in effect.
+    if test "$app" = git; then
+      $use_git || continue
+    fi
+    # Honor $APP variables ($TAR, $AUTOCONF, etc.)
+    appvar=`echo $app | tr '[a-z]-' '[A-Z]_'`
+    test "$appvar" = TAR && appvar=AMTAR
+    eval "app=\${$appvar-$app}"
+    inst_ver=$(get_version $app)
+    if [ ! "$inst_ver" ]; then
+      echo "$me: Error: '$app' not found" >&2
+      ret=1
+    elif [ ! "$req_ver" = "-" ]; then
+      latest_ver=$(sort_ver $req_ver $inst_ver | cut -d' ' -f2)
+      if [ ! "$latest_ver" = "$inst_ver" ]; then
+        echo "$me: Error: '$app' version == $inst_ver is too old" >&2
+        echo "       '$app' version >= $req_ver is required" >&2
+        ret=1
+      fi
+    fi
+  done
+
+  return $ret
+}
+
+print_versions() {
+  echo "Program    Min_version"
+  echo "----------------------"
+  printf %s "$buildreq"
+  echo "----------------------"
+  # can't depend on column -t
+}
+
+use_libtool=0
+# We'd like to use grep -E, to see if any of LT_INIT,
+# AC_PROG_LIBTOOL, AM_PROG_LIBTOOL is used in configure.ac,
+# but that's not portable enough (e.g., for Solaris).
+grep '^[	 ]*A[CM]_PROG_LIBTOOL' configure.ac >/dev/null \
+  && use_libtool=1
+grep '^[	 ]*LT_INIT' configure.ac >/dev/null \
+  && use_libtool=1
+if test $use_libtool = 1; then
+  find_tool LIBTOOLIZE glibtoolize libtoolize
+fi
+
+if ! printf "$buildreq" | check_versions; then
+  echo >&2
+  if test -f README-prereq; then
+    echo "$0: See README-prereq for how to get the prerequisite programs" >&2
+  else
+    echo "$0: Please install the prerequisite programs" >&2
+  fi
+  exit 1
+fi
+
+echo "$0: Bootstrapping from checked-out $package sources..."
+
+# See if we can use gnulib's git-merge-changelog merge driver.
+if test -d .git && (git --version) >/dev/null 2>/dev/null ; then
+  if git config merge.merge-changelog.driver >/dev/null ; then
+    :
+  elif (git-merge-changelog --version) >/dev/null 2>/dev/null ; then
+    echo "$0: initializing git-merge-changelog driver"
+    git config merge.merge-changelog.name 'GNU-style ChangeLog merge driver'
+    git config merge.merge-changelog.driver 'git-merge-changelog %O %A %B'
+  else
+    echo "$0: consider installing git-merge-changelog from gnulib"
+  fi
+fi
+
+
+cleanup_gnulib() {
+  status=$?
+  rm -fr "$gnulib_path"
+  exit $status
+}
+
+git_modules_config () {
+  test -f .gitmodules && git config --file .gitmodules "$@"
+}
+
+gnulib_path=`git_modules_config submodule.gnulib.path`
+test -z "$gnulib_path" && gnulib_path=gnulib
+
+# Get gnulib files.
+
+case ${GNULIB_SRCDIR--} in
+-)
+  if git_modules_config submodule.gnulib.url >/dev/null; then
+    echo "$0: getting gnulib files..."
+    git submodule init || exit $?
+    git submodule update || exit $?
+
+  elif [ ! -d "$gnulib_path" ]; then
+    echo "$0: getting gnulib files..."
+
+    trap cleanup_gnulib 1 2 13 15
+
+    shallow=
+    git clone -h 2>&1 | grep -- --depth > /dev/null && shallow='--depth 2'
+    git clone $shallow git://git.sv.gnu.org/gnulib "$gnulib_path" ||
+      cleanup_gnulib
+
+    trap - 1 2 13 15
+  fi
+  GNULIB_SRCDIR=$gnulib_path
+  ;;
+*)
+  # Use GNULIB_SRCDIR as a reference.
+  if test -d "$GNULIB_SRCDIR"/.git && \
+        git_modules_config submodule.gnulib.url >/dev/null; then
+    echo "$0: getting gnulib files..."
+    if git submodule -h|grep -- --reference > /dev/null; then
+      # Prefer the one-liner available in git 1.6.4 or newer.
+      git submodule update --init --reference "$GNULIB_SRCDIR" \
+        "$gnulib_path" || exit $?
+    else
+      # This fallback allows at least git 1.5.5.
+      if test -f "$gnulib_path"/gnulib-tool; then
+        # Since file already exists, assume submodule init already complete.
+        git submodule update || exit $?
+      else
+        # Older git can't clone into an empty directory.
+        rmdir "$gnulib_path" 2>/dev/null
+        git clone --reference "$GNULIB_SRCDIR" \
+          "$(git_modules_config submodule.gnulib.url)" "$gnulib_path" \
+          && git submodule init && git submodule update \
+          || exit $?
+      fi
+    fi
+    GNULIB_SRCDIR=$gnulib_path
+  fi
+  ;;
+esac
+
+if $bootstrap_sync; then
+  cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
+    echo "$0: updating bootstrap and restarting..."
+    exec sh -c \
+      'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
+      -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
+      "$0" "$@" --no-bootstrap-sync
+  }
+fi
+
+gnulib_tool=$GNULIB_SRCDIR/gnulib-tool
+<$gnulib_tool || exit
+
+# Get translations.
+
+download_po_files() {
+  subdir=$1
+  domain=$2
+  echo "$me: getting translations into $subdir for $domain..."
+  cmd=`printf "$po_download_command_format" "$domain" "$subdir"`
+  eval "$cmd"
+}
+
+# Mirror .po files to $po_dir/.reference and copy only the new
+# or modified ones into $po_dir.  Also update $po_dir/LINGUAS.
+# Note po files that exist locally only are left in $po_dir but will
+# not be included in LINGUAS and hence will not be distributed.
+update_po_files() {
+  # Directory containing primary .po files.
+  # Overwrite them only when we're sure a .po file is new.
+  po_dir=$1
+  domain=$2
+
+  # Mirror *.po files into this dir.
+  # Usually contains *.s1 checksum files.
+  ref_po_dir="$po_dir/.reference"
+
+  test -d $ref_po_dir || mkdir $ref_po_dir || return
+  download_po_files $ref_po_dir $domain \
+    && ls "$ref_po_dir"/*.po 2>/dev/null |
+      sed 's|.*/||; s|\.po$||' > "$po_dir/LINGUAS" || return
+
+  langs=`cd $ref_po_dir && echo *.po|sed 's/\.po//g'`
+  test "$langs" = '*' && langs=x
+  for po in $langs; do
+    case $po in x) continue;; esac
+    new_po="$ref_po_dir/$po.po"
+    cksum_file="$ref_po_dir/$po.s1"
+    if ! test -f "$cksum_file" ||
+        ! test -f "$po_dir/$po.po" ||
+        ! $SHA1SUM -c --status "$cksum_file" \
+            < "$new_po" > /dev/null; then
+      echo "$me: updated $po_dir/$po.po..."
+      cp "$new_po" "$po_dir/$po.po" \
+          && $SHA1SUM < "$new_po" > "$cksum_file"
+    fi
+  done
+}
+
+case $SKIP_PO in
+'')
+  if test -d po; then
+    update_po_files po $package || exit
+  fi
+
+  if test -d runtime-po; then
+    update_po_files runtime-po $package-runtime || exit
+  fi;;
+esac
+
+symlink_to_dir()
+{
+  src=$1/$2
+  dst=${3-$2}
+
+  test -f "$src" && {
+
+    # If the destination directory doesn't exist, create it.
+    # This is required at least for "lib/uniwidth/cjk.h".
+    dst_dir=`dirname "$dst"`
+    if ! test -d "$dst_dir"; then
+      mkdir -p "$dst_dir"
+
+      # If we've just created a directory like lib/uniwidth,
+      # tell version control system(s) it's ignorable.
+      # FIXME: for now, this does only one level
+      parent=`dirname "$dst_dir"`
+      for dot_ig in x $vc_ignore; do
+        test $dot_ig = x && continue
+        ig=$parent/$dot_ig
+        insert_vc_ignore $ig `echo "$dst_dir"|sed 's,.*/,,'`
+      done
+    fi
+
+    if $copy; then
+      {
+        test ! -h "$dst" || {
+          echo "$me: rm -f $dst" &&
+          rm -f "$dst"
+        }
+      } &&
+      test -f "$dst" &&
+      cmp -s "$src" "$dst" || {
+        echo "$me: cp -fp $src $dst" &&
+        cp -fp "$src" "$dst"
+      }
+    else
+      test -h "$dst" &&
+      src_ls=`ls -diL "$src" 2>/dev/null` && set $src_ls && src_i=$1 &&
+      dst_ls=`ls -diL "$dst" 2>/dev/null` && set $dst_ls && dst_i=$1 &&
+      test "$src_i" = "$dst_i" || {
+        dot_dots=
+        case $src in
+        /*) ;;
+        *)
+          case /$dst/ in
+          *//* | */../* | */./* | /*/*/*/*/*/)
+             echo >&2 "$me: invalid symlink calculation: $src -> $dst"
+             exit 1;;
+          /*/*/*/*/)	dot_dots=../../../;;
+          /*/*/*/)	dot_dots=../../;;
+          /*/*/)	dot_dots=../;;
+          esac;;
+        esac
+
+        echo "$me: ln -fs $dot_dots$src $dst" &&
+        ln -fs "$dot_dots$src" "$dst"
+      }
+    fi
+  }
+}
+
+cp_mark_as_generated()
+{
+  cp_src=$1
+  cp_dst=$2
+
+  if cmp -s "$cp_src" "$GNULIB_SRCDIR/$cp_dst"; then
+    symlink_to_dir "$GNULIB_SRCDIR" "$cp_dst"
+  elif cmp -s "$cp_src" "$local_gl_dir/$cp_dst"; then
+    symlink_to_dir $local_gl_dir "$cp_dst"
+  else
+    case $cp_dst in
+      *.[ch])             c1='/* '; c2=' */';;
+      *.texi)             c1='@c '; c2=     ;;
+      *.m4|*/Make*|Make*) c1='# ' ; c2=     ;;
+      *)                  c1=     ; c2=     ;;
+    esac
+
+    # If the destination directory doesn't exist, create it.
+    # This is required at least for "lib/uniwidth/cjk.h".
+    dst_dir=`dirname "$cp_dst"`
+    test -d "$dst_dir" || mkdir -p "$dst_dir"
+
+    if test -z "$c1"; then
+      cmp -s "$cp_src" "$cp_dst" || {
+        # Copy the file first to get proper permissions if it
+        # doesn't already exist.  Then overwrite the copy.
+        echo "$me: cp -f $cp_src $cp_dst" &&
+        rm -f "$cp_dst" &&
+        cp "$cp_src" "$cp_dst-t" &&
+        sed "s!$bt_regex/!!g" "$cp_src" > "$cp_dst-t" &&
+        mv -f "$cp_dst-t" "$cp_dst"
+      }
+    else
+      # Copy the file first to get proper permissions if it
+      # doesn't already exist.  Then overwrite the copy.
+      cp "$cp_src" "$cp_dst-t" &&
+      (
+        echo "$c1-*- buffer-read-only: t -*- vi: set ro:$c2" &&
+        echo "${c1}DO NOT EDIT! GENERATED AUTOMATICALLY!$c2" &&
+        sed "s!$bt_regex/!!g" "$cp_src"
+      ) > $cp_dst-t &&
+      if cmp -s "$cp_dst-t" "$cp_dst"; then
+        rm -f "$cp_dst-t"
+      else
+        echo "$me: cp $cp_src $cp_dst # with edits" &&
+        mv -f "$cp_dst-t" "$cp_dst"
+      fi
+    fi
+  fi
+}
+
+version_controlled_file() {
+  dir=$1
+  file=$2
+  found=no
+  if test -d CVS; then
+    grep -F "/$file/" $dir/CVS/Entries 2>/dev/null |
+             grep '^/[^/]*/[0-9]' > /dev/null && found=yes
+  elif test -d .git; then
+    git rm -n "$dir/$file" > /dev/null 2>&1 && found=yes
+  elif test -d .svn; then
+    svn log -r HEAD "$dir/$file" > /dev/null 2>&1 && found=yes
+  else
+    echo "$me: no version control for $dir/$file?" >&2
+  fi
+  test $found = yes
+}
+
+slurp() {
+  for dir in . `(cd $1 && find * -type d -print)`; do
+    copied=
+    sep=
+    for file in `ls -a $1/$dir`; do
+      case $file in
+      .|..) continue;;
+      # FIXME: should all file names starting with "." be ignored?
+      .*) continue;;
+      esac
+      test -d $1/$dir/$file && continue
+      for excluded_file in $excluded_files; do
+        test "$dir/$file" = "$excluded_file" && continue 2
+      done
+      if test $file = Makefile.am && test "X$gnulib_mk" != XMakefile.am; then
+        copied=$copied${sep}$gnulib_mk; sep=$nl
+        remove_intl='/^[^#].*\/intl/s/^/#/;'"s!$bt_regex/!!g"
+        sed "$remove_intl" $1/$dir/$file |
+        cmp - $dir/$gnulib_mk > /dev/null || {
+          echo "$me: Copying $1/$dir/$file to $dir/$gnulib_mk ..." &&
+          rm -f $dir/$gnulib_mk &&
+          sed "$remove_intl" $1/$dir/$file >$dir/$gnulib_mk &&
+          gnulib_mk_hook $dir/$gnulib_mk
+        }
+      elif { test "${2+set}" = set && test -r $2/$dir/$file; } ||
+           version_controlled_file $dir $file; then
+        echo "$me: $dir/$file overrides $1/$dir/$file"
+      else
+        copied=$copied$sep$file; sep=$nl
+        if test $file = gettext.m4; then
+          echo "$me: patching m4/gettext.m4 to remove need for intl/* ..."
+          rm -f $dir/$file
+          sed '
+            /^AC_DEFUN(\[AM_INTL_SUBDIR],/,/^]/c\
+              AC_DEFUN([AM_INTL_SUBDIR], [])
+            /^AC_DEFUN(\[gt_INTL_SUBDIR_CORE],/,/^]/c\
+              AC_DEFUN([gt_INTL_SUBDIR_CORE], [])
+            $a\
+              AC_DEFUN([gl_LOCK_EARLY], [])
+          ' $1/$dir/$file >$dir/$file
+        else
+          cp_mark_as_generated $1/$dir/$file $dir/$file
+        fi
+      fi || exit
+    done
+
+    for dot_ig in x $vc_ignore; do
+      test $dot_ig = x && continue
+      ig=$dir/$dot_ig
+      if test -n "$copied"; then
+        insert_vc_ignore $ig "$copied"
+        # If an ignored file name ends with .in.h, then also add
+        # the name with just ".h".  Many gnulib headers are generated,
+        # e.g., stdint.in.h -> stdint.h, dirent.in.h ->..., etc.
+        # Likewise for .gperf -> .h, .y -> .c, and .sin -> .sed
+        f=`echo "$copied" |
+          sed '
+            s/\.in\.h$/.h/
+            s/\.sin$/.sed/
+            s/\.y$/.c/
+            s/\.gperf$/.h/
+          '
+        `
+        insert_vc_ignore $ig "$f"
+
+        # For files like sys_stat.in.h and sys_time.in.h, record as
+        # ignorable the directory we might eventually create: sys/.
+        f=`echo "$copied"|sed 's/sys_.*\.in\.h$/sys/'`
+        insert_vc_ignore $ig "$f"
+      fi
+    done
+  done
+}
+
+
+# Create boot temporary directories to import from gnulib and gettext.
+rm -fr $bt $bt2 &&
+mkdir $bt $bt2 || exit
+
+# Import from gnulib.
+
+gnulib_tool_options="\
+ --import\
+ --no-changelog\
+ --aux-dir $bt/$build_aux\
+ --doc-base $bt/$doc_base\
+ --lib $gnulib_name\
+ --m4-base $bt/$m4_base/\
+ --source-base $bt/$source_base/\
+ --tests-base $bt/$tests_base\
+ --local-dir $local_gl_dir\
+ $gnulib_tool_option_extras\
+"
+if test $use_libtool = 1; then
+  case "$gnulib_tool_options " in
+    *' --libtool '*) ;;
+    *) gnulib_tool_options="$gnulib_tool_options --libtool" ;;
+  esac
+fi
+echo "$0: $gnulib_tool $gnulib_tool_options --import ..."
+$gnulib_tool $gnulib_tool_options --import $gnulib_modules &&
+slurp $bt || exit
+
+for file in $gnulib_files; do
+  symlink_to_dir "$GNULIB_SRCDIR" $file || exit
+done
+
+
+# Import from gettext.
+with_gettext=yes
+grep '^[	 ]*AM_GNU_GETTEXT_VERSION(' configure.ac >/dev/null || \
+    with_gettext=no
+
+if test $with_gettext = yes; then
+  echo "$0: (cd $bt2; ${AUTOPOINT-autopoint}) ..."
+  cp configure.ac $bt2 &&
+  (cd $bt2 && ${AUTOPOINT-autopoint} && rm configure.ac) &&
+  slurp $bt2 $bt || exit
+fi
+rm -fr $bt $bt2 || exit
+
+# Remove any dangling symlink matching "*.m4" or "*.[ch]" in some
+# gnulib-populated directories.  Such .m4 files would cause aclocal to fail.
+# The following requires GNU find 4.2.3 or newer.  Considering the usual
+# portability constraints of this script, that may seem a very demanding
+# requirement, but it should be ok.  Ignore any failure, which is fine,
+# since this is only a convenience to help developers avoid the relatively
+# unusual case in which a symlinked-to .m4 file is git-removed from gnulib
+# between successive runs of this script.
+find "$m4_base" "$source_base" \
+  -depth \( -name '*.m4' -o -name '*.[ch]' \) \
+  -type l -xtype l -delete > /dev/null 2>&1
+
+# Reconfigure, getting other files.
+
+# Skip autoheader if it's not needed.
+grep -E '^[	 ]*AC_CONFIG_HEADERS?\>' configure.ac >/dev/null ||
+  AUTOHEADER=true
+
+for command in \
+  libtool \
+  "${ACLOCAL-aclocal} --force -I m4 $ACLOCAL_FLAGS" \
+  "${AUTOCONF-autoconf} --force" \
+  "${AUTOHEADER-autoheader} --force" \
+  "${AUTOMAKE-automake} --add-missing --copy --force-missing"
+do
+  if test "$command" = libtool; then
+    test $use_libtool = 0 \
+      && continue
+    command="${LIBTOOLIZE-libtoolize} -c -f"
+  fi
+  echo "$0: $command ..."
+  $command || exit
+done
+
+
+# Get some extra files from gnulib, overriding existing files.
+for file in $gnulib_extra_files; do
+  case $file in
+  */INSTALL) dst=INSTALL;;
+  build-aux/*) dst=$build_aux/`expr "$file" : 'build-aux/\(.*\)'`;;
+  *) dst=$file;;
+  esac
+  symlink_to_dir "$GNULIB_SRCDIR" $file $dst || exit
+done
+
+if test $with_gettext = yes; then
+  # Create gettext configuration.
+  echo "$0: Creating po/Makevars from po/Makevars.template ..."
+  rm -f po/Makevars
+  sed '
+    /^EXTRA_LOCALE_CATEGORIES *=/s/=.*/= '"$EXTRA_LOCALE_CATEGORIES"'/
+    /^COPYRIGHT_HOLDER *=/s/=.*/= '"$COPYRIGHT_HOLDER"'/
+    /^MSGID_BUGS_ADDRESS *=/s|=.*|= '"$MSGID_BUGS_ADDRESS"'|
+    /^XGETTEXT_OPTIONS *=/{
+      s/$/ \\/
+      a\
+          '"$XGETTEXT_OPTIONS"' $${end_of_xgettext_options+}
+    }
+  ' po/Makevars.template >po/Makevars || exit 1
+
+  if test -d runtime-po; then
+    # Similarly for runtime-po/Makevars, but not quite the same.
+    rm -f runtime-po/Makevars
+    sed '
+      /^DOMAIN *=.*/s/=.*/= '"$package"'-runtime/
+      /^subdir *=.*/s/=.*/= runtime-po/
+      /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/
+      /^XGETTEXT_OPTIONS *=/{
+        s/$/ \\/
+        a\
+            '"$XGETTEXT_OPTIONS_RUNTIME"' $${end_of_xgettext_options+}
+      }
+    ' po/Makevars.template >runtime-po/Makevars || exit 1
+
+    # Copy identical files from po to runtime-po.
+    (cd po && cp -p Makefile.in.in *-quot *.header *.sed *.sin ../runtime-po)
+  fi
+fi
+
+bootstrap_epilogue
+
+echo "$0: done.  Now you can run './configure'."
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/bootstrap.conf	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,117 @@
+# Bootstrap configuration.
+
+# Copyright (C) 2006-2007, 2009-2011 Free Software Foundation, Inc.
+
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+# gnulib modules used by this package.
+gnulib_modules="
+  c-strcase
+  copysign
+  crypto/md5
+  fcntl
+  filemode
+  fnmatch
+  getcwd
+  gethostname
+  getopt-gnu
+  gettimeofday
+  glob
+  link
+  lstat
+  mkdir
+  mkfifo
+  mkstemp
+  mktime
+  nanosleep
+  nproc
+  pathmax
+  progname
+  readlink
+  rename
+  rmdir
+  round
+  roundf
+  sigaction
+  signal
+  sigprocmask
+  sleep
+  sleep
+  stat
+  stdint
+  strftime
+  strptime
+  symlink
+  sys_stat
+  sys_time
+  sys_times
+  time
+  times
+  trunc
+  truncf
+  unistd
+  unlink
+  vsnprintf
+"
+
+# Additional xgettext options to use.  Use "\\\newline" to break lines.
+XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
+ --from-code=UTF-8\\\
+ --flag=asprintf:2:c-format --flag=vasprintf:2:c-format\\\
+ --flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
+ --flag=wrapf:1:c-format\\\
+'
+
+# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
+# appears in configure.ac, exclude some unnecessary files.
+# Without grep's -E option (not portable enough, pre-configure),
+# the following test is ugly.  Also, this depends on the existence
+# of configure.ac, not the obsolescent-named configure.in.  But if
+# you're using this infrastructure, you should care about such things.
+
+gettext_external=0
+grep '^[	 ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
+  gettext_external=1
+grep '^[	 ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
+  gettext_external=1
+
+if test $gettext_external = 1; then
+  # Gettext supplies these files, but we don't need them since
+  # we don't have an intl subdirectory.
+  excluded_files='
+      m4/glibc2.m4
+      m4/intdiv0.m4
+      m4/lcmessage.m4
+      m4/lock.m4
+      m4/printf-posix.m4
+      m4/size_max.m4
+      m4/uintmax_t.m4
+      m4/ulonglong.m4
+      m4/visibility.m4
+      m4/xsize.m4
+  '
+fi
+
+# Build prerequisites
+buildreq="\
+autoconf   2.59
+automake   1.9.6
+git        1.5.5
+tar        -
+"
+checkout_only_file=etc/HACKING
+gnulib_tool_option_extras="--libtool"
+gnulib_name="libgnu"
+source_base="libgnu"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/changelog.tmpl	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,2 @@
+header = '{date|shortdate}  {author|person}  <{author|email}>\n\n'
+changeset = '\t{desc|tabindent|strip}\n\n\tFiles: {files|stringify|fill68|tabindent|strip}\n\n'
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/common.mk	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,668 @@
+AWK = @AWK@
+export AWK
+
+SED = @SED@
+export SED
+
+FIND = @FIND@
+export FIND
+
+PERL = @PERL@
+export PERL
+
+PYTHON = @PYTHON@
+
+GNUPLOT = @GNUPLOT@
+
+DESKTOP_FILE_INSTALL = @DESKTOP_FILE_INSTALL@
+
+OCTAVE_VERSION = @OCTAVE_VERSION@
+OCTAVE_API_VERSION_NUMBER = @OCTAVE_API_VERSION_NUMBER@
+OCTAVE_API_VERSION = @OCTAVE_API_VERSION@
+OCTAVE_RELEASE_DATE = @OCTAVE_RELEASE_DATE@
+OCTAVE_COPYRIGHT = @OCTAVE_COPYRIGHT@
+
+version = $(OCTAVE_VERSION)
+api_version = $(OCTAVE_API_VERSION)
+
+## AM_LIBTOOLFLAGS = --silent
+
+#### Start of system configuration section. ####
+
+EXEEXT = @EXEEXT@
+
+BUILD_EXEEXT = @BUILD_EXEEXT@
+
+LEX = @LEX@
+AM_LFLAGS = @LFLAGS@
+LEXLIB = @LEXLIB@
+
+YACC = @YACC@
+AM_YFLAGS = -dv
+
+GPERF = @GPERF@
+
+AR = @AR@
+ARFLAGS = @ARFLAGS@ 
+
+TEMPLATE_AR = @TEMPLATE_AR@
+TEMPLATE_ARFLAGS = @TEMPLATE_ARFLAGS@
+
+RANLIB = @RANLIB@
+
+LN_S = @LN_S@
+
+MAKEINFO = @MAKEINFO@
+TEXI2DVI = @TEXI2DVI@
+TEXI2PDF = @TEXI2PDF@
+
+GHOSTSCRIPT = @GHOSTSCRIPT@
+
+DEFAULT_PAGER = @DEFAULT_PAGER@
+
+ENABLE_DYNAMIC_LINKING = @ENABLE_DYNAMIC_LINKING@
+
+SHLEXT = @SHLEXT@
+SHLEXT_VER = @SHLEXT_VER@
+SHLLIB = @SHLLIB@
+SHLLIB_VER = @SHLLIB_VER@
+SHLBIN = @SHLBIN@
+SHLBIN_VER = @SHLBIN_VER@
+SHLLINKEXT=
+
+LIBEXT = a
+LIBPRE = @LIBPRE@
+SHLPRE = @SHLPRE@
+SHLLIBPRE = @SHLLIBPRE@
+SHLBINPRE = @SHLBINPRE@
+
+# Fortran compiler flags.
+
+FC = @FC@
+F77 = @F77@
+AM_FFLAGS = @FFLAGS@
+FPICFLAG = @FPICFLAG@
+ALL_FFLAGS = $(FFLAGS)
+F77_FLOAT_STORE_FLAG = @F77_FLOAT_STORE_FLAG@
+F77_INTEGER_8_FLAG = @F77_INTEGER_8_FLAG@
+
+F77_TOLOWER=@F77_TOLOWER@
+F77_APPEND_UNDERSCORE=@F77_TOLOWER@
+F77_APPEND_EXTRA_UNDERSCORE=@F77_TOLOWER@
+
+X11_INCFLAGS = @X11_INCFLAGS@
+X11_LIBS = @X11_LIBS@
+
+CARBON_LIBS = @CARBON_LIBS@
+
+MAGICK_CPPFLAGS = @MAGICK_CPPFLAGS@
+MAGICK_LDFLAGS = @MAGICK_LDFLAGS@
+MAGICK_LIBS = @MAGICK_LIBS@
+
+PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
+PTHREAD_LIBS = @PTHREAD_LIBS@
+
+LIBFLAGS = -L$(top_builddir)
+
+DEFS = @DEFS@
+
+UGLY_DEFS = @UGLY_DEFS@
+
+CC = @CC@
+CC_VERSION = @CC_VERSION@
+CONFIGURE_CFLAGS = @CFLAGS@
+CPICFLAG = @CPICFLAG@
+XTRA_CFLAGS = @XTRA_CFLAGS@
+WARN_CFLAGS = @WARN_CFLAGS@
+AM_CFLAGS = $(CONFIGURE_CFLAGS) \
+  $(INCFLAGS) $(DEFS) $(XTRA_CFLAGS) $(WARN_CFLAGS) $(CFLAGS) $(PTHREAD_CFLAGS)
+BUG_CFLAGS = $(DEFS) $(XTRA_CFLAGS) $(WARN_CFLAGS) $(CFLAGS)
+
+BUILD_CC = @BUILD_CC@
+BUILD_CFLAGS = @BUILD_CFLAGS@
+
+DEPEND_FLAGS = @DEPEND_FLAGS@
+DEPEND_EXTRA_SED_PATTERN = @DEPEND_EXTRA_SED_PATTERN@
+INCLUDE_DEPS = @INCLUDE_DEPS@
+# ifeq ($(INCLUDE_DEPS),false)
+#   omit_deps = true;
+# endif
+
+GRAPHICS_CFLAGS = @GRAPHICS_CFLAGS@
+
+CXX = @CXX@
+CXX_VERSION = @CXX_VERSION@
+CXXCPP = @CXXCPP@
+CONFIGURE_CXXFLAGS = @CXXFLAGS@
+CXXPICFLAG = @CXXPICFLAG@
+XTRA_CXXFLAGS = @XTRA_CXXFLAGS@
+WARN_CXXFLAGS = @WARN_CXXFLAGS@
+AM_CXXFLAGS = $(CONFIGURE_CXXFLAGS) \
+  $(INCFLAGS) $(DEFS) $(XTRA_CXXFLAGS) $(WARN_CXXFLAGS) $(CXXFLAGS) $(PTHREAD_CFLAGS)
+BUG_CXXFLAGS = $(DEFS) $(XTRA_CXXFLAGS) $(WARN_CXXFLAGS) $(CXXFLAGS)
+
+BUILD_CXX = @BUILD_CXX@
+BUILD_CXXFLAGS = @BUILD_CXXFLAGS@
+
+NO_UNDEFINED_LDFLAG = @NO_UNDEFINED_LDFLAG@
+
+LD_CXX = @LD_CXX@
+LD_STATIC_FLAG = @LD_STATIC_FLAG@
+#ALL_LDFLAGS = $(LIBFLAGS) $(LD_STATIC_FLAG) $(CPICFLAG) $(LDFLAGS)
+
+BUILD_LDFLAGS = @BUILD_LDFLAGS@
+
+SH_LD = @SH_LD@
+SH_LDFLAGS = @SH_LDFLAGS@
+
+DL_LD = @DL_LD@
+DL_LDFLAGS = @DL_LDFLAGS@
+
+SONAME_FLAGS = @SONAME_FLAGS@
+
+RDYNAMIC_FLAG = @RDYNAMIC_FLAG@
+
+RLD_FLAG = @RLD_FLAG@
+
+FLIBS = @FLIBS@
+
+LIBOCTINTERP = @LIBOCTINTERP@
+LIBOCTAVE = @LIBOCTAVE@
+LIBCRUFT = @LIBCRUFT@
+
+FT2_CFLAGS = @FT2_CFLAGS@
+FT2_LIBS = @FT2_LIBS@
+
+HDF5_CPPFLAGS = @HDF5_CPPFLAGS@
+HDF5_LDFLAGS = @HDF5_LDFLAGS@
+HDF5_LIBS = @HDF5_LIBS@
+
+Z_CPPFLAGS = @Z_CPPFLAGS@
+Z_LDFLAGS = @Z_LDFLAGS@
+Z_LIBS = @Z_LIBS@
+
+GRAPHICS_LIBS = @GRAPHICS_LIBS@
+
+QHULL_CPPFLAGS = @QHULL_CPPFLAGS@
+QHULL_LDFLAGS = @QHULL_LDFLAGS@
+QHULL_LIBS = @QHULL_LIBS@
+
+REGEX_LIBS = @REGEX_LIBS@
+
+LAPACK_LIBS = @LAPACK_LIBS@
+BLAS_LIBS = @BLAS_LIBS@
+
+FFTW3_CPPFLAGS = @FFTW3_CPPFLAGS@
+FFTW3_LDFLAGS = @FFTW3_LDFLAGS@
+FFTW3_LIBS = @FFTW3_LIBS@
+
+FFTW3F_CPPFLAGS = @FFTW3F_CPPFLAGS@
+FFTW3F_LDFLAGS = @FFTW3F_LDFLAGS@
+FFTW3F_LIBS = @FFTW3F_LIBS@
+
+GLPK_CPPFLAGS = @GLPK_CPPFLAGS@
+GLPK_LDFLAGS = @GLPK_LDFLAGS@
+GLPK_LIBS = @GLPK_LIBS@
+
+CURL_CPPFLAGS = @CURL_CPPFLAGS@
+CURL_LDFLAGS = @CURL_LDFLAGS@
+CURL_LIBS = @CURL_LIBS@
+
+AMD_CPPFLAGS = @AMD_CPPFLAGS@
+AMD_LDFLAGS = @AMD_LDFLAGS@
+AMD_LIBS = @AMD_LIBS@
+
+CAMD_CPPFLAGS = @CAMD_CPPFLAGS@
+CAMD_LDFLAGS = @CAMD_LDFLAGS@
+CAMD_LIBS = @CAMD_LIBS@
+
+COLAMD_CPPFLAGS = @COLAMD_CPPFLAGS@
+COLAMD_LDFLAGS = @COLAMD_LDFLAGS@
+COLAMD_LIBS = @COLAMD_LIBS@
+
+CCOLAMD_CPPFLAGS = @CCOLAMD_CPPFLAGS@
+CCOLAMD_LDFLAGS = @CCOLAMD_LDFLAGS@
+CCOLAMD_LIBS = @CCOLAMD_LIBS@
+
+CHOLMOD_CPPFLAGS = @CHOLMOD_CPPFLAGS@
+CHOLMOD_LDFLAGS = @CHOLMOD_LDFLAGS@
+CHOLMOD_LIBS = @CHOLMOD_LIBS@
+
+CXSPARSE_CPPFLAGS = @CXSPARSE_CPPFLAGS@
+CXSPARSE_LDFLAGS = @CXSPARSE_LDFLAGS@
+CXSPARSE_LIBS = @CXSPARSE_LIBS@
+
+UMFPACK_CPPFLAGS = @UMFPACK_CPPFLAGS@
+UMFPACK_LDFLAGS = @UMFPACK_LDFLAGS@
+UMFPACK_LIBS = @UMFPACK_LIBS@
+
+OPENGL_LIBS = @OPENGL_LIBS@
+
+QRUPDATE_CPPFLAGS = @QRUPDATE_CPPFLAGS@
+QRUPDATE_LDFLAGS = @QRUPDATE_LDFLAGS@
+QRUPDATE_LIBS = @QRUPDATE_LIBS@
+
+READLINE_LIBS = @READLINE_LIBS@
+TERM_LIBS = @TERM_LIBS@
+
+DL_LIBS = @DL_LIBS@
+LIBS = @LIBS@
+
+ALL_CPPFLAGS = $(CPPFLAGS) $(HDF5_CPPFLAGS) $(Z_CPPFLAGS)
+
+SPARSE_XCPPFLAGS = \
+  $(CHOLMOD_CPPFLAGS) $(UMFPACK_CPPFLAGS) \
+  $(AMD_CPPFLAGS) $(CAMD_CPPFLAGS) $(COLAMD_CPPFLAGS) \
+  $(CCOLAMD_CPPFLAGS) $(CXSPARSE_CPPFLAGS)
+
+SPARSE_XLDFLAGS = \
+  $(CHOLMOD_LDFLAGS) $(UMFPACK_LDFLAGS) \
+  $(AMD_LDFLAGS) $(CAMD_LDFLAGS) $(COLAMD_LDFLAGS) \
+  $(CCOLAMD_LDFLAGS) $(CXSPARSE_LDFLAGS)
+
+## Order matters, at least on some systems (Cygwin, for example).
+SPARSE_XLIBS = \
+    $(CHOLMOD_LIBS) $(UMFPACK_LIBS) \
+    $(AMD_LIBS) $(CAMD_LIBS) $(COLAMD_LIBS) \
+    $(CCOLAMD_LIBS) $(CXSPARSE_LIBS)
+
+FFTW_XCPPFLAGS = $(FFTW3_CPPFLAGS) $(FFTW3F_CPPFLAGS)
+
+FFTW_XLDFLAGS = $(FFTW3_LDFLAGS) $(FFTW3F_LDFLAGS)
+
+FFTW_XLIBS = $(FFTW3_LIBS) $(FFTW3F_LIBS)
+
+USE_64_BIT_IDX_T = @USE_64_BIT_IDX_T@
+OCTAVE_IDX_TYPE = @OCTAVE_IDX_TYPE@
+
+TEXINFO_COLAMD = @TEXINFO_COLAMD@
+TEXINFO_CHOLMOD = @TEXINFO_CHOLMOD@
+TEXINFO_UMFPACK = @TEXINFO_UMFPACK@
+TEXINFO_QHULL = @TEXINFO_QHULL@
+
+# The arguments passed to configure.
+config_opts = @config_opts@
+
+CONFIG_SUBDIRS = @subdirs@
+
+# ==================== Where To Install Things ====================
+
+# The default location for installation.  Everything is placed in
+# subdirectories of this directory.  The default values for many of
+# the variables below are expressed in terms of this one, so you may
+# not need to change them.  This defaults to /usr/local.
+prefix = @prefix@
+
+# Like `prefix', but used for architecture-specific files.
+exec_prefix = @exec_prefix@
+
+# Where to install Octave and other binaries that people will want to
+# run directly.
+bindir = @bindir@
+
+# Normally the directory for installing executables that system
+# administrators run.  This is the same as libexecdir on Cygwin systems.
+sbindir = @sbindir@
+
+# The root of the directory tree for read-only
+# architecture-independent data files.
+datarootdir = @datarootdir@
+
+# Where to install architecture-independent data files.  ${fcnfiledir}
+# and ${localfcnfiledir} are subdirectories of this.
+datadir = @datadir@
+
+libdir = @libdir@
+
+# Where to install and expect extra files like NEWS and doc-cache.
+octetcdir = @octetcdir@
+
+# Where to install and expect libraries like libcruft.a, liboctave.a,
+# and other architecture-dependent data.
+octlibdir = @octlibdir@
+
+# Where to install and expect executable programs to be run by Octave
+# rather than directly by users.
+libexecdir = @libexecdir@
+
+# The prefix for Octave's include file directory.  The default is
+# ${prefix}/include
+includedir = @includedir@
+
+# Where to install Octave's man pages, and what extension they should
+# have.  The default is ${prefix}/man/man1
+mandir = @mandir@
+man1dir = @man1dir@
+man1ext = @man1ext@
+
+# The full path to the default doc cache file.
+doc_cache_file = @doc_cache_file@
+
+# Where to install and expect the info files describing Octave..
+infodir = @infodir@
+
+# The full path to the default info file.
+infofile = @infofile@
+
+# ==================== Octave-specific directories ====================
+
+# These variables hold the values specific to Octave.  They are
+# based on the values of the standard Make variables above.
+
+# What is the path separation character
+sepchar = @sepchar@
+
+# Where to install Octave's include files.  The default is
+# ${includedir}/octave-${version}/octave
+octincludedir = @octincludedir@
+
+# Where to install the function file distributed with
+# Octave.  This includes the Octave version, so that the
+# function files for different versions of Octave will install
+# themselves in separate directories.
+fcnfiledir = @fcnfiledir@
+
+# Directories Octave should search for function files specific
+# to this site (i.e. customizations), before consulting
+# ${fcnfiledir}.  This should be a colon-separated list of
+# directories.
+localfcnfiledir = @localfcnfiledir@
+localapifcnfiledir = @localapifcnfiledir@
+localverfcnfiledir = @localverfcnfiledir@
+
+# Where to put executables to be run by Octave rather than
+# the user.  This path usually includes the Octave version
+# and configuration name, so that multiple configurations
+# for multiple versions of Octave may be installed at once.
+archlibdir = @archlibdir@
+
+# Where to put executables to be run by Octave rather than by the
+# user that are specific to this site.
+localarchlibdir = @localarchlibdir@
+localapiarchlibdir = @localapiarchlibdir@
+localverarchlibdir = @localverarchlibdir@
+
+# Where to put object files that will by dynamically loaded.
+# This path usually includes the Octave version and configuration
+# name, so that multiple configurations for multiple versions of
+# Octave may be installed at once. 
+octfiledir = @octfiledir@
+
+# Directories Octave should search for object files that will be
+# dynamically loaded and that are specific to this site
+# (i.e. customizations), before consulting ${octfiledir}.  This should
+# be a colon-separated list of directories.
+localoctfiledir = @localoctfiledir@
+localapioctfiledir = @localapioctfiledir@
+localveroctfiledir = @localveroctfiledir@
+
+# Where Octave will search to find image files.
+imagedir = @imagedir@
+
+# The type of computer we are running on.
+canonical_host_type = @canonical_host_type@
+
+# Where Octave will look for startup files
+startupfiledir = ${fcnfiledir}/startup
+localstartupfiledir = ${localfcnfiledir}/startup
+
+# LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, PATH, ...
+library_path_var = @library_path_var@
+
+# The separator used for elements of the LD_PRELOAD variable (might be
+# a space, so protect with $(null))
+null =
+ldpreloadsep = $(null)@ldpreloadsep@$(null)
+
+NO_OCT_FILE_STRIP = @NO_OCT_FILE_STRIP@
+
+# The following pattern rules and the substitution functions require
+# GNU make.  If you don't have it, get it!
+
+define simple_move_if_change_rule
+if [ -s $@-t ]; then \
+  $(top_srcdir)/build-aux/move-if-change $@-t $@; \
+else \
+  echo "$@-t is empty!" 1>&2; \
+  rm -f $@-t; \
+  exit 1; \
+fi
+endef
+
+define cp_update_rule
+if [ "x$(srcdir)" != "x." ] && [ -f $(srcdir)/$@ ] && [ ! -f $@ ]; then \
+  cp $(srcdir)/$@ $@; \
+  touch -r $(srcdir)/$@ $@; \
+fi
+endef
+
+# Yes, the second sed command near the end is needed, to avoid limits
+# in command lengths for some versions of sed.  UGLY_DEFS is often
+# quite large, so it makes sense to split this command there.
+
+define do_subst_config_vals
+echo "making $@ from $<"
+$(SED) < $< \
+  -e "s|%NO_OCT_FILE_STRIP%|${NO_OCT_FILE_STRIP}|" \
+  -e "s|%OCTAVE_BINDIR%|\"${bindir}\"|" \
+  -e "s|%OCTAVE_CONF_ALL_CFLAGS%|\"${ALL_CFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_ALL_CXXFLAGS%|\"${ALL_CXXFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_ALL_FFLAGS%|\"${ALL_FFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_ALL_LDFLAGS%|\"${ALL_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_AMD_CPPFLAGS%|\"${AMD_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_AMD_LDFLAGS%|\"${AMD_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_AMD_LIBS%|\"${AMD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_AR%|\"${AR}\"|" \
+  -e "s|%OCTAVE_CONF_ARFLAGS%|\"${ARFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_BLAS_LIBS%|\"${BLAS_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CAMD_CPPFLAGS%|\"${CAMD_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CAMD_LDFLAGS%|\"${CAMD_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CAMD_LIBS%|\"${CAMD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CANONICAL_HOST_TYPE%|\"${canonical_host_type}\"|" \
+  -e "s|%OCTAVE_CONF_CARBON_LIBS%|\"${CARBON_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CC%|\"${CC}\"|" \
+  -e "s|%OCTAVE_CONF_CC_VERSION%|\"${CC_VERSION}\"|" \
+  -e "s|%OCTAVE_CONF_CCOLAMD_CPPFLAGS%|\"${CCOLAMD_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CCOLAMD_LDFLAGS%|\"${CCOLAMD_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CCOLAMD_LIBS%|\"${CCOLAMD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CFLAGS%|\"${CFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CHOLMOD_CPPFLAGS%|\"${CHOLMOD_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CHOLMOD_LDFLAGS%|\"${CHOLMOD_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CHOLMOD_LIBS%|\"${CHOLMOD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_COLAMD_CPPFLAGS%|\"${COLAMD_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_COLAMD_LDFLAGS%|\"${COLAMD_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_COLAMD_LIBS%|\"${COLAMD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CPICFLAG%|\"${CPICFLAG}\"|" \
+  -e "s|%OCTAVE_CONF_CPPFLAGS%|\"${CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CURL_CPPFLAGS%|\"${CURL_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CURL_LDFLAGS%|\"${CURL_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CURL_LIBS%|\"${CURL_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CXSPARSE_CPPFLAGS%|\"${CXSPARSE_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CXSPARSE_LDFLAGS%|\"${CXSPARSE_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CXSPARSE_LIBS%|\"${CXSPARSE_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_CXX%|\"${CXX}\"|" \
+  -e "s|%OCTAVE_CONF_CXXCPP%|\"${CXXCPP}\"|" \
+  -e "s|%OCTAVE_CONF_CXXFLAGS%|\"${CXXFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_CXXPICFLAG%|\"${CXXPICFLAG}\"|" \
+  -e "s|%OCTAVE_CONF_CXX_VERSION%|\"${CXX_VERSION}\"|" \
+  -e "s|%OCTAVE_CONF_DEFAULT_PAGER%|\"${DEFAULT_PAGER}\"|" \
+  -e "s|%OCTAVE_CONF_DEPEND_FLAGS%|\"${DEPEND_FLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%|\"${DEPEND_EXTRA_SED_PATTERN}\"|" \
+  -e "s|%OCTAVE_CONF_DL_LD%|\"${DL_LD}\"|" \
+  -e "s|%OCTAVE_CONF_DL_LDFLAGS%|\"${DL_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_DL_LIBS%|\"${DL_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_EXEEXT%|\"${EXEEXT}\"|" \
+  -e "s|%OCTAVE_CONF_F77%|\"${F77}\"|" \
+  -e "s|%OCTAVE_CONF_F77_FLOAT_STORE_FLAG%|\"${F77_FLOAT_STORE_FLAG}\"|" \
+  -e "s|%OCTAVE_CONF_F77_INTEGER_8_FLAG%|\"${F77_INTEGER_8_FLAG}\"|" \
+  -e "s|%OCTAVE_CONF_FC%|\"${FC}\"|" \
+  -e "s|%OCTAVE_CONF_FFLAGS%|\"${FFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3_CPPFLAGS%|\"${FFTW3_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3_LDFLAGS%|\"${FFTW3_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3_LIBS%|\"${FFTW3_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3F_CPPFLAGS%|\"${FFTW3F_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3F_LDFLAGS%|\"${FFTW3F_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_FFTW3F_LIBS%|\"${FFTW3F_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_FLIBS%|\"${FLIBS}\"|" \
+  -e "s|%OCTAVE_CONF_FPICFLAG%|\"${FPICFLAG}\"|" \
+  -e "s|%OCTAVE_CONF_FT2_LIBS%|\"${FT2_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_GLPK_CPPFLAGS%|\"${GLPK_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_GLPK_LDFLAGS%|\"${GLPK_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_GLPK_LIBS%|\"${GLPK_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_GNUPLOT%|\"${GNUPLOT}\"|" \
+  -e "s|%OCTAVE_CONF_GRAPHICS_LIBS%|\"${GRAPHICS_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_HDF5_CPPFLAGS%|\"${HDF5_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_HDF5_LDFLAGS%|\"${HDF5_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_HDF5_LIBS%|\"${HDF5_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_INCFLAGS%|\"${INCFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_INCLUDEDIR%|\"${includedir}\"|" \
+  -e "s|%OCTAVE_CONF_LAPACK_LIBS%|\"${LAPACK_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_LD_CXX%|\"${LD_CXX}\"|" \
+  -e "s|%OCTAVE_CONF_LDFLAGS%|\"${LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_LD_STATIC_FLAG%|\"${LD_STATIC_FLAG}\"|" \
+  -e "s|%OCTAVE_CONF_LEX%|\"${LEX}\"|" \
+  -e "s|%OCTAVE_CONF_LEXLIB%|\"${LEXLIB}\"|" \
+  -e "s|%OCTAVE_CONF_LFLAGS%|\"${LFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_LIBCRUFT%|\"${LIBCRUFT}\"|" \
+  -e "s|%OCTAVE_CONF_LIBDIR%|\"${libdir}\"|" \
+  -e "s|%OCTAVE_CONF_LIBEXT%|\"${LIBEXT}\"|" \
+  -e "s|%OCTAVE_CONF_LIBFLAGS%|\"${LIBFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_LIBOCTAVE%|\"${LIBOCTAVE}\"|" \
+  -e "s|%OCTAVE_CONF_LIBOCTINTERP%|\"${LIBOCTINTERP}\"|" \
+  -e "s|%OCTAVE_CONF_LIBS%|\"${LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_LN_S%|\"${LN_S}\"|" \
+  -e "s|%OCTAVE_CONF_MAGICK_CPPFLAGS%|\"${MAGICK_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_MAGICK_LDFLAGS%|\"${MAGICK_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_MAGICK_LIBS%|\"${MAGICK_LIBS}\"|" \
+  -e 's|%OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%|\"@MKOCTFILE_DL_LDFLAGS@\"|' \
+  -e "s|%OCTAVE_CONF_OCTINCLUDEDIR%|\"${octincludedir}\"|" \
+  -e "s|%OCTAVE_CONF_OCTLIBDIR%|\"${octlibdir}\"|" \
+  -e "s|%OCTAVE_CONF_OPENGL_LIBS%|\"${OPENGL_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_PREFIX%|\"${prefix}\"|" \
+  -e "s|%OCTAVE_CONF_PTHREAD_CFLAGS%|\"${PTHREAD_CFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_PTHREAD_LIBS%|\"${PTHREAD_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_QHULL_CPPFLAGS%|\"${QHULL_CPPFLAGSS}\"|" \
+  -e "s|%OCTAVE_CONF_QHULL_LDFLAGS%|\"${QHULL_LDFLAGSS}\"|" \
+  -e "s|%OCTAVE_CONF_QHULL_LIBS%|\"${QHULL_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_QRUPDATE_CPPFLAGS%|\"${QRUPDATE_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_QRUPDATE_LDFLAGS%|\"${QRUPDATE_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_QRUPDATE_LIBS%|\"${QRUPDATE_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_RANLIB%|\"${RANLIB}\"|" \
+  -e "s|%OCTAVE_CONF_RDYNAMIC_FLAG%|\"${RDYNAMIC_FLAG}\"|" \
+  -e "s|%OCTAVE_CONF_READLINE_LIBS%|\"${READLINE_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_REGEX_LIBS%|\"${REGEX_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_RLD_FLAG%|\"${RLD_FLAG}\"|" \
+  -e "s|%OCTAVE_CONF_SED%|\"${SED}\"|" \
+  -e "s|%OCTAVE_CONF_SHARED_LIBS%|\"${SHARED_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_SHLEXT%|\"${SHLEXT}\"|" \
+  -e "s|%OCTAVE_CONF_SHLLINKEXT%|\"${SHLLINKEXT}\"|" \
+  -e "s|%OCTAVE_CONF_SHLEXT_VER%|\"${SHLEXT_VER}\"|" \
+  -e "s|%OCTAVE_CONF_SH_LD%|\"${SH_LD}\"|" \
+  -e "s|%OCTAVE_CONF_SH_LDFLAGS%|\"${SH_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_SONAME_FLAGS%|\"${SONAME_FLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_STATIC_LIBS%|\"${STATIC_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_TERM_LIBS%|\"${TERM_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_UGLY_DEFS%|\"${UGLY_DEFS}\"|" \
+  -e "s|%OCTAVE_CONF_UMFPACK_CPPFLAGS%|\"${UMFPACK_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_UMFPACK_LDFLAGS%|\"${UMFPACK_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_UMFPACK_LIBS%|\"${UMFPACK_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_USE_64_BIT_IDX_T%|\"${USE_64_BIT_IDX_T}\"|" \
+  -e "s|%OCTAVE_CONF_VERSION%|\"${version}\"|" \
+  -e "s|%OCTAVE_CONF_ENABLE_DYNAMIC_LINKING%|\"${ENABLE_DYNAMIC_LINKING}\"|" \
+  -e "s|%OCTAVE_CONF_X11_INCFLAGS%|\"${X11_INCFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_X11_LIBS%|\"${X11_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_XTRA_CFLAGS%|\"${XTRA_CFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_XTRA_CXXFLAGS%|\"${XTRA_CXXFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_YACC%|\"${YACC}\"|" \
+  -e "s|%OCTAVE_CONF_YFLAGS%|\"${YFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_Z_CPPFLAGS%|\"${Z_CPPFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_Z_LDFLAGS%|\"${Z_LDFLAGS}\"|" \
+  -e "s|%OCTAVE_CONF_Z_LIBS%|\"${Z_LIBS}\"|" \
+  -e "s|%OCTAVE_CONF_config_opts%|\"${config_opts}\"|" | \
+  $(SED)  -e "s|%OCTAVE_CONF_DEFS%|\"${UGLY_DEFS}\"|" > $@-t
+$(simple_move_if_change_rule)
+endef
+
+define do_subst_default_vals
+echo "making $@ from $<"
+$(SED) < $< > $@-t \
+  -e "s|%OCTAVE_ARCHLIBDIR%|\"${archlibdir}\"|" \
+  -e "s|%OCTAVE_BINDIR%|\"${bindir}\"|" \
+  -e "s|%OCTAVE_CANONICAL_HOST_TYPE%|\"${canonical_host_type}\"|" \
+  -e "s|%OCTAVE_DATADIR%|\"${datadir}\"|" \
+  -e "s|%OCTAVE_DATAROOTDIR%|\"${datarootdir}\"|" \
+  -e "s|%OCTAVE_DEFAULT_PAGER%|\"${DEFAULT_PAGER}\"|" \
+  -e "s|%OCTAVE_DOC_CACHE_FILE%|\"${doc_cache_file}\"|" \
+  -e "s|%OCTAVE_EXEC_PREFIX%|\"${exec_prefix}\"|" \
+  -e "s|%OCTAVE_FCNFILEDIR%|\"${fcnfiledir}\"|" \
+  -e "s|%OCTAVE_IMAGEDIR%|\"${imagedir}\"|" \
+  -e "s|%OCTAVE_INCLUDEDIR%|\"${includedir}\"|" \
+  -e "s|%OCTAVE_INFODIR%|\"${infodir}\"|" \
+  -e "s|%OCTAVE_INFOFILE%|\"${infofile}\"|" \
+  -e "s|%OCTAVE_LIBDIR%|\"${libdir}\"|" \
+  -e "s|%OCTAVE_LIBEXECDIR%|\"${libexecdir}\"|" \
+  -e "s|%OCTAVE_LOCALAPIFCNFILEDIR%|\"${localapifcnfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALAPIOCTFILEDIR%|\"${localapioctfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALARCHLIBDIR%|\"${localarchlibdir}\"|" \
+  -e "s|%OCTAVE_LOCALFCNFILEDIR%|\"${localfcnfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALOCTFILEDIR%|\"${localoctfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALSTARTUPFILEDIR%|\"${localstartupfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALAPIARCHLIBDIR%|\"${localapiarchlibdir}\"|" \
+  -e "s|%OCTAVE_LOCALVERARCHLIBDIR%|\"${localverarchlibdir}\"|" \
+  -e "s|%OCTAVE_LOCALVERFCNFILEDIR%|\"${localverfcnfiledir}\"|" \
+  -e "s|%OCTAVE_LOCALVEROCTFILEDIR%|\"${localveroctfiledir}\"|" \
+  -e "s|%OCTAVE_MAN1DIR%|\"${man1dir}\"|" \
+  -e "s|%OCTAVE_MAN1EXT%|\"${man1ext}\"|" \
+  -e "s|%OCTAVE_MANDIR%|\"${mandir}\"|" \
+  -e "s|%OCTAVE_OCTFILEDIR%|\"${octfiledir}\"|" \
+  -e "s|%OCTAVE_OCTETCDIR%|\"${octetcdir}\"|" \
+  -e "s|%OCTAVE_OCTINCLUDEDIR%|\"${octincludedir}\"|" \
+  -e "s|%OCTAVE_OCTLIBDIR%|\"${octlibdir}\"|" \
+  -e "s|%OCTAVE_STARTUPFILEDIR%|\"${startupfiledir}\"|" \
+  -e "s|%OCTAVE_PREFIX%|\"${prefix}\"|" \
+  -e "s|%OCTAVE_API_VERSION%|\"${api_version}\"|" \
+  -e "s|%OCTAVE_RELEASE%|\"${OCTAVE_RELEASE}\"|" \
+  -e "s|%OCTAVE_VERSION%|\"${version}\"|"
+$(simple_move_if_change_rule)
+endef
+
+define do_subst_script_vals
+echo "making $@ from $<"
+$(SED) < $< \
+  -e "s|%AWK%|${AWK}|g" \
+  -e "s|%FIND%|${FIND}|g" \
+  -e "s|%SED%|${SED}|g" \
+  -e "s|%library_path_var%|${library_path_var}|g" \
+  -e "s|%liboctinterp%|${SHLPRE}octinterp.${SHLEXT}|g" \
+  -e "s|%liboctave%|${SHLPRE}octave.${SHLEXT}|g" \
+  -e "s|%libcruft%|${SHLPRE}cruft.${SHLEXT}|g" \
+  -e "s|%ldpreloadsep%|${ldpreloadsep}|g" \
+  -e "s|%srcdir%|${srcdir}|" \
+  -e "s|%top_srcdir%|${top_srcdir}|" \
+  -e "s|%abs_top_srcdir%|${abs_top_srcdir}|" \
+  -e "s|%builddir%|$(shell pwd)|" > $@-t
+$(simple_move_if_change_rule)
+endef
+
+define do_script_install
+$(top_srcdir)/build-aux/mkinstalldirs $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)
+for f in $(FCN_FILES); do \
+  fbase=`basename $$f`; \
+  rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$fbase; \
+  $(INSTALL_DATA) $$f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$fbase; \
+done
+$(top_srcdir)/mkpkgadd $(DESTDIR)$(fcnfiledir)/$(script_sub_dir) > $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t
+if [ -n "`cat $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t`" ]; then \
+  $(INSTALL_DATA) $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD ; \
+else \
+  rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t ; \
+fi
+endef
+
+define do_script_uninstall
+for f in $(FCN_FILES_NO_DIR); \
+  do rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$f; \
+done
+rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD
+-rmdir $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)
+endef
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/diff-template	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,59 @@
+#!/bin/sh
+#
+# To apply this patch, cd to the top level Octave source directory and
+# run this file through /bin/sh.  It will first remove any files that
+# have been deleted from the source distribution since the last
+# release and then update the sources with patch(1).
+#
+# Diffs for updating *.ps, *.dvi, and *.info* files are not included
+# because they can be recreated from the Texinfo files using TeX and
+# makeinfo.
+#
+# Diffs for updating parse.cc and y.tab.h are not included because
+# they can be recreated from the file parse.y using bison.
+#
+# Diffs for updating lex.cc are not included because it can be
+# recreated from lex.l using flex.
+#
+# Diffs for updating the configure script are not included because
+# it can be recreated from configure.in using autoconf.
+#
+# John W. Eaton
+# jwe@octave.org
+
+if test -f src/octave.cc ; then
+  true
+else
+  echo '***********************************************************' 1>&2
+  echo 'You must run this script in the top-level octave directory!' 1>&2
+  echo '***********************************************************' 1>&2
+  exit 1
+fi
+
+echo 'removing the bsd-math directory'
+rm -rf bsd-math
+
+echo 'creating libcruft/slatec-fn directory'
+mkdir libcruft/slatec-fn
+
+echo 'removing old test files'
+rm -f test/octave.test/index.exp
+rm -f test/octave.test/prefer.exp
+rm -f test/octave.test/zero-one.exp
+
+echo 'creating directories for new test files'
+mkdir test/octave.test/index/dfi-f
+mkdir test/octave.test/index/dfi-t
+mkdir test/octave.test/prefer
+mkdir test/octave.test/zero-one/fff
+mkdir test/octave.test/zero-one/fft
+mkdir test/octave.test/zero-one/ftf
+mkdir test/octave.test/zero-one/tff
+mkdir test/octave.test/zero-one/ftt
+mkdir test/octave.test/zero-one/tft
+mkdir test/octave.test/zero-one/ttf
+mkdir test/octave.test/zero-one/ttt
+
+echo 'patching existing files'
+patch -p1 << \PATCH_EOF
+PATCH_EOF
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/mk-opts.pl	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,1076 @@
+#! /usr/bin/perl -w
+#
+# Copyright (C) 2002-2011 John W. Eaton
+#
+# This file is part of Octave.
+#
+# Octave is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 3 of the License, or (at
+# your option) any later version.
+#
+# Octave is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Octave; see the file COPYING.  If not, see
+# <http://www.gnu.org/licenses/>.
+
+# Generate option handling code from a simpler input files for
+# Octave's functions like lsode, dassl, etc.
+
+# FIXME:
+#
+# * Improve default documentation and/or individual documentation
+#   in data files.
+#
+# * Fix print/show code to display/return something more informative
+#   for special values (for example, -1 ==> infinite in some cases).
+#   Probably need more information in the data files for this.
+
+# Input file format:
+#
+# CLASS = string
+# FCN_NAME = string
+# INCLUDE = file
+# DOC_STRING doc END_DOC_STRING
+# OPTION
+#   NAME = string
+#   DOC_ITEM doc END_DOC_ITEM
+#   TYPE = string
+#   SET_ARG_TYPE = string   (optional, defaults to TYPE)
+#   INIT_VALUE = string | INIT_BODY code END_INIT_BODY
+#   SET_EXPR = string | SET_BODY code END_SET_BODY | SET_CODE code END_SET_CODE
+# END_OPTION
+#
+# END_* must appear at beginning of line (whitespace ignored).
+
+################################################################################
+# Load packages to
+# 1) process command line options
+################################################################################
+use Getopt::Long;
+
+################################################################################
+# Extract command line arguments
+&parse_options;
+
+$DEFN_FILE = shift @ARGV;
+open (DEFN_FILE) or die "unable to open input definition file $DEFN_FILE";
+
+################################################################################
+# Initialize variables
+$BLANK_LINE = qr/^\s*$/;
+$COMMENT = qr/^\s*#/;
+
+################################################################################
+# Process file
+$OPT_NUM = 0;
+
+&parse_input;
+
+&process_data;
+
+# Produce desired style of output
+&emit_opt_class_header if $opt_class_header;
+&emit_opt_handler_fcns if $opt_handler_fcns;
+&emit_options_debug if $opt_debug;
+
+# End of main code
+
+################################################################################
+# Subroutines
+################################################################################
+
+sub parse_input
+{
+  LINE: while (<DEFN_FILE>)
+    {
+      next LINE if /$BLANK_LINE/;
+      next LINE if /$COMMENT/;
+
+      if (/^\s*OPTION\s*$/)
+        {
+          &parse_option_block;
+        }
+      elsif (/^\s*CLASS\s*=\s*"(\w+)"\s*$/)
+        {
+          die "duplicate CLASS" if defined $CLASS;
+          $CLASS = $1;
+          $CLASS_NAME = "${CLASS}_options";
+          $STRUCT_NAME = "${CLASS_NAME}_struct";
+          $STATIC_TABLE_NAME = "${CLASS_NAME}_table";
+        }
+      elsif (/^\s*FCN_NAME\s*=\s*"(\w+)"\s*$/)
+        {
+          die "duplicate FCN_NAME" if defined $FCN_NAME;
+          $FCN_NAME = $1;
+        }
+      elsif (/^\s*INCLUDE\s*=\s*"(\S+)"\s*$/)
+        {
+          $INCLUDE .= "#include <$1>\n";
+        }
+      elsif (/^\s*DOC_STRING\s*$/)
+        {
+          die "duplicate DOC_STRING" if defined $DOC_STRING;
+          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_DOC_STRING\s*$/)
+          {
+            $DOC_STRING .= $_;
+          }
+          $DOC_STRING =~ s/\n/\\n\\\n/g;
+        }
+      else
+        {
+          die "mk-opts.pl: unknown command: $_\n"
+        }
+    }
+  $INCLUDE = "" if not defined $INCLUDE;   # Initialize value if required
+}
+
+sub parse_option_block
+{
+  while (<DEFN_FILE>)
+    {
+      next if /$BLANK_LINE/;
+
+      die "missing END_OPTION" if /^\s*OPTION\s*$/;
+
+      last if /^\s*END_OPTION\s*$/;
+
+      if (/^\s*NAME\s*=\s*"(.*)"\s*$/)
+        {
+          die "duplicate NAME" if defined $NAME[$OPT_NUM];
+          $NAME[$OPT_NUM] = $1;
+          ($OPT[$OPT_NUM] = $NAME[$OPT_NUM]) =~ s/\s+/_/g;
+          $OPTVAR[$OPT_NUM] = 'x_' . $OPT[$OPT_NUM];
+          $KW_TOK[$OPT_NUM] = [ split (' ', $NAME[$OPT_NUM]) ];
+          $N_TOKS[$OPT_NUM] = @{$KW_TOK[$OPT_NUM]};
+        }
+      elsif (/^\s*DOC_ITEM\s*$/)
+        {
+          die "duplicate DOC_ITEM" if defined $DOC_ITEM[$OPT_NUM];
+          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_DOC_ITEM\s*$/)
+          {
+            $DOC_ITEM[$OPT_NUM] .= $_;
+          }
+          $DOC_ITEM[$OPT_NUM] =~ s/\n/\\n\\\n/g;
+        }
+      elsif (/^\s*TYPE\s*=\s*"(.*)"\s*$/)
+        {
+          die "duplicate TYPE" if defined $TYPE[$OPT_NUM];
+          $TYPE[$OPT_NUM] = $1;
+        }
+      elsif (/^\s*SET_ARG_TYPE\s*=\s*"(.*)"\s*$/)
+        {
+          die "duplicate SET_ARG_TYPE" if defined $SET_ARG_TYPE[$OPT_NUM];
+          $SET_ARG_TYPE[$OPT_NUM] = $1;
+        }
+      elsif (/^\s*INIT_VALUE\s*=\s*"(.*)"\s*$/)
+        {
+          die "duplicate INIT_VALUE" if defined $INIT_VALUE[$OPT_NUM];
+          $INIT_VALUE[$OPT_NUM] = $1;
+        }
+      elsif (/^\s*SET_EXPR\s*=\s*"(.*)"\s*$/)
+        {
+          die "duplicate SET_EXPR" if defined $SET_EXPR[$OPT_NUM];
+          $SET_EXPR[$OPT_NUM] = $1;
+        }
+      elsif (/^\s*INIT_BODY\s*$/)
+        {
+          die "duplicate INIT_BODY" if defined $INIT_BODY[$OPT_NUM];
+          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_INIT_BODY\s*$/)
+          {
+            $INIT_BODY[$OPT_NUM] .= $_;
+          }
+        }
+      elsif (/^\s*SET_BODY\s*$/)
+        {
+          die "duplicate SET_BODY" if defined $INIT_BODY[$OPT_NUM];
+          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_SET_BODY\s*$/)
+          {
+            $SET_BODY[$OPT_NUM] .= $_;
+          }
+        }
+      elsif (/^\s*SET_CODE\s*$/)
+        {
+          die "duplicate SET_CODE" if defined $SET_CODE[$OPT_NUM];
+          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_SET_CODE\s*$/)
+          {
+            $SET_CODE[$OPT_NUM] .= $_;
+          }
+        }
+    }
+
+  if (not defined $SET_ARG_TYPE[$OPT_NUM])
+    {
+      $SET_ARG_TYPE[$OPT_NUM] = $TYPE[$OPT_NUM];
+    }
+  else
+    {
+      $SET_ARG_TYPE[$OPT_NUM]
+        = substopt ($SET_ARG_TYPE[$OPT_NUM], $OPTVAR[$OPT_NUM],
+                    $OPT[$OPT_NUM], $TYPE[$OPT_NUM]);
+    }
+
+  $OPT_NUM++;
+}
+
+sub process_data
+{
+  $MAX_TOKENS = max (@N_TOKS);
+
+  &get_min_match_len_info;
+
+  $FCN_NAME = lc ($CLASS) if not defined $FCN_NAME;
+
+  $OPT_FCN_NAME = "${FCN_NAME}_options" if not defined $OPT_FCN_NAME;
+
+  $STATIC_OBJECT_NAME = "${FCN_NAME}_opts";
+
+  if (not defined $DOC_STRING)
+    {
+      $DOC_STRING = "Query or set options for the function \@code{$FCN_NAME}.\\n\\
+When called with no arguments, the names of all available options and\\n\\
+their current values are displayed.\\n\\
+Given one argument, return the value of the corresponding option.\\n\\
+When called with two arguments, \@code{$OPT_FCN_NAME} set the option\\n\\
+\@var{opt} to value \@var{val}.";
+    }
+}
+
+#FIXME: What does this routine do?  And can it be simpler to understand?
+sub get_min_match_len_info
+{
+  my ($i, $j, $k);
+
+  for ($i = 0; $i < $OPT_NUM; $i++)
+    {
+      for ($j = 0; $j < $MAX_TOKENS; $j++)
+        {
+          $MIN_TOK_LEN_TO_MATCH[$i][$j] = 0;
+        }
+
+      $MIN_TOKS_TO_MATCH[$i] = 1;
+
+    L1: for ($k = 0; $k < $OPT_NUM; $k++)
+        {
+          my $duplicate = 1;
+
+          if ($i != $k)
+            {
+            L2: for ($j = 0; $j < $MAX_TOKENS; $j++)
+                {
+                  if ($j < $N_TOKS[$i])
+                    {
+                      if ($KW_TOK[$i][$j] eq $KW_TOK[$k][$j])
+                        {
+                          if ($MIN_TOK_LEN_TO_MATCH[$i][$j] == 0)
+                            {
+                              $MIN_TOK_LEN_TO_MATCH[$i][$j] = 1;
+                            }
+
+                          $MIN_TOKS_TO_MATCH[$i]++;
+                        }
+                      else
+                        {
+                          $duplicate = 0;
+
+                          if ($MIN_TOK_LEN_TO_MATCH[$i][$j] == 0)
+                            {
+                              $MIN_TOK_LEN_TO_MATCH[$i][$j] = 1;
+                            }
+
+                          my @s = split (//, $KW_TOK[$i][$j]);
+                          my @t = split (//, $KW_TOK[$k][$j]);
+
+                          my ($n, $ii);
+                          $n = scalar (@s);
+                          $n = scalar (@t) if (@t < $n);
+
+                          for ($ii = 0; $ii < $n; $ii++)
+                            {
+                              if ("$s[$ii]" eq "$t[$ii]")
+                                {
+                                  if ($ii + 2 > $MIN_TOK_LEN_TO_MATCH[$i][$j])
+                                    {
+                                      $MIN_TOK_LEN_TO_MATCH[$i][$j]++;
+                                    }
+                                }
+                              else
+                                {
+                                  last L2;
+                                }
+                            }
+
+                          last L1;
+                        }
+                    }
+                  else
+                    {
+                      die qq|ambiguous options "$NAME[$i]" and "$NAME[$k]"| if $duplicate;
+                    }
+                }
+            }
+        }
+    }
+}  # end of get_min_match_len_info
+
+
+sub emit_copy_body
+{
+  my ($pfx, $var) = @_;
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      print "${pfx}$OPTVAR[$i] = ${var}.$OPTVAR[$i];\n";
+    }
+
+  print "${pfx}reset = ${var}.reset;\n";
+}
+
+## To silence GCC warnings, we create an initialization list even
+## though the init function actually does the work of initialization.
+
+sub emit_default_init_list
+{
+  my ($prefix) = @_;
+
+  print "$OPTVAR[0] (),\n" unless ($OPT_NUM == 0);
+
+  for (my $i = 1; $i < $OPT_NUM; $i++)
+    {
+      print "${prefix}$OPTVAR[$i] (),\n";
+    }
+
+  print "${prefix}reset ()\n";
+}
+
+sub emit_copy_ctor_init_list
+{
+  my ($prefix, $var) = @_;
+
+  print "$OPTVAR[0] ($var.$OPTVAR[0]),\n" unless ($OPT_NUM == 0);
+
+  for (my $i = 1; $i < $OPT_NUM; $i++)
+    {
+      print "${prefix}$OPTVAR[$i] ($var.$OPTVAR[$i]),\n";
+    }
+
+  print "${prefix}reset ($var.reset)\n";
+}
+
+sub emit_opt_class_header
+{
+  my ($i, $s);
+
+  print <<"_END_EMIT_OPT_CLASS_HEADER_";
+// DO NOT EDIT!
+// Generated automatically from $DEFN_FILE.
+
+#if !defined (octave_${CLASS_NAME}_h)
+#define octave_${CLASS_NAME}_h 1
+
+#include <cfloat>
+#include <cmath>
+
+$INCLUDE
+
+class
+$CLASS_NAME
+{
+public:
+
+  $CLASS_NAME (void)
+_END_EMIT_OPT_CLASS_HEADER_
+
+  print '    : ';
+  emit_default_init_list ("      ");
+
+  print "    {
+      init ();
+    }
+
+  $CLASS_NAME (const ${CLASS_NAME}& opt)
+    : ";
+
+  emit_copy_ctor_init_list ("      ", "opt");
+
+  print "    { }
+
+  ${CLASS_NAME}& operator = (const ${CLASS_NAME}& opt)
+    {
+      if (this != &opt)
+        {\n";
+
+  emit_copy_body ('          ', 'opt');
+
+  print "        }
+
+      return *this;
+    }
+
+  ~$CLASS_NAME (void) { }\n";
+
+  print "\n  void init (void)\n    {\n";
+
+  for ($i = 0; $i < $OPT_NUM; $i++)
+    {
+      if ($INIT_VALUE[$i])
+        {
+          print "      $OPTVAR[$i] = $INIT_VALUE[$i];\n";
+        }
+      elsif ($INIT_BODY[$i])
+        {
+          $s = substopt ($INIT_BODY[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
+          chomp ($s);
+          $s =~ s/^\s*/      /g;
+          $s =~ s/\n\s*/\n      /g;
+          print $s,"\n";
+        }
+    }
+
+  print "      reset = true;\n",
+        "    }\n";
+
+  ## For backward compatibility and because set_options is probably
+  ## a better name in some contexts:
+
+  print "\n  void set_options (const ${CLASS_NAME}& opt)\n",
+        "    {\n";
+
+  emit_copy_body ('      ', 'opt');
+
+  print "    }\n\n  void set_default_options (void) { init (); }\n";
+
+  for ($i = 0; $i < $OPT_NUM; $i++)
+    {
+      if ($SET_EXPR[$i])
+        {
+          emit_set_decl ($i);
+
+          print "\n    { $OPTVAR[$i] = $SET_EXPR[$i]; reset = true; }\n";
+        }
+      elsif ($SET_BODY[$i])
+        {
+          emit_set_decl ($i);
+
+          $s = substopt ($SET_BODY[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
+          chomp ($s);
+          $s = '  ' . $s;
+          $s =~ s/\n/\n  /g;
+          print "\n    {\n$s\n      reset = true;\n    }\n";
+        }
+      elsif ($SET_CODE[$i])
+        {
+          $s = substopt ($SET_CODE[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
+          chomp ($s);
+          $s =~ s/^  //g;
+          $s =~ s/\n  /\n/g;
+          print "\n",$s,"\n";
+        }
+    }
+
+  for ($i = 0; $i < $OPT_NUM; $i++)
+    {
+      print "  $TYPE[$i] $OPT[$i] (void) const\n    { return $OPTVAR[$i]; }\n\n";
+    }
+
+  print "private:\n\n";
+
+  for ($i = 0; $i < $OPT_NUM; $i++)
+    {
+      print "  $TYPE[$i] $OPTVAR[$i];\n";
+    }
+
+  print "\nprotected:\n\n  bool reset;\n};\n\n#endif\n";
+}
+
+sub emit_set_decl
+{
+  my ($i) = @_;
+
+  print "\n  void set_$OPT[$i] ($SET_ARG_TYPE[$i] val)";
+}
+
+sub emit_opt_handler_fcns
+{
+  my $header = $DEFN_FILE;
+  $header =~ s/[.]\w*$/.h/;      # replace .in with .h
+  $header =~ s|^.*/([^/]*)$|$1|; # strip directory part
+
+  print <<"_END_EMIT_OPT_HANDLER_FCNS_";
+// DO NOT EDIT!
+// Generated automatically from $DEFN_FILE.
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <iomanip>
+#include <iostream>
+
+#include "$header"
+
+#include "defun-dld.h"
+#include "pr-output.h"
+
+#include "oct-obj.h"
+#include "utils.h"
+#include "pager.h"
+
+static $CLASS_NAME $STATIC_OBJECT_NAME;
+
+_END_EMIT_OPT_HANDLER_FCNS_
+
+  &emit_struct_decl;
+
+  &emit_struct_def;
+
+  &emit_print_function;
+
+  &emit_set_functions;
+
+  &emit_show_function;
+
+  &emit_options_function;
+}
+
+sub emit_struct_decl
+{
+  print <<"_END_PRINT_STRUCT_DECL_";
+#define MAX_TOKENS $MAX_TOKENS
+
+struct $STRUCT_NAME
+{
+  const char *keyword;
+  const char *kw_tok[MAX_TOKENS + 1];
+  int min_len[MAX_TOKENS + 1];
+  int min_toks_to_match;
+};
+
+_END_PRINT_STRUCT_DECL_
+}
+
+sub emit_struct_def
+{
+  my $i;
+
+  print "#define NUM_OPTIONS $OPT_NUM\n\n";
+
+  print "static $STRUCT_NAME $STATIC_TABLE_NAME [] =\n{\n";
+
+  for ($i = 0; $i < ($OPT_NUM - 1); $i++)
+    {
+      emit_option_table_entry ($i, 0);
+      print "\n";
+    }
+  emit_option_table_entry ($i, 0);
+
+  print "};\n\n";
+}
+
+sub emit_option_table_entry
+{
+  my ($i, $empty) = @_;
+
+  my $k;
+
+  if ($empty)
+    {
+      print "  { 0,\n";
+    }
+  else
+    {
+      print "  { \"$NAME[$i]\",\n";
+    }
+
+  my $n = scalar $#{$KW_TOK[$i]};
+  print "    {";
+  for $k (0 .. $MAX_TOKENS)
+    {
+      if ($empty or $k > $n)
+        {
+          print " 0,";
+        }
+      else
+        {
+          print " \"$KW_TOK[$i][$k]\",";
+        }
+    }
+  print " },\n";
+
+  print "    {";
+  for $k (0 .. $MAX_TOKENS)
+    {
+      if ($empty or $k > $n)
+        {
+          print " 0,";
+        }
+      else
+        {
+          print " $MIN_TOK_LEN_TO_MATCH[$i][$k],";
+        }
+    }
+  print " }, $MIN_TOKS_TO_MATCH[$i], ";
+
+  print "},\n";
+}
+
+sub emit_print_function
+{
+  ## FIXME -- determine the width of the table automatically.
+
+  print qq|static void
+print_$CLASS_NAME (std::ostream& os)
+{
+  std::ostringstream buf;
+
+  os << "\\n"
+     << "Options for $CLASS include:\\n\\n"
+     << "  keyword                                             value\\n"
+     << "  -------                                             -----\\n";
+
+  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n|;
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      print qq|  {\n    os << "  "
+        << std::setiosflags (std::ios::left) << std::setw (50)
+        << list[$i].keyword
+        << std::resetiosflags (std::ios::left)
+        << "  ";\n\n|;
+
+      if ($TYPE[$i] eq "double")
+        {
+          print qq|    double val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    os << val << "\\n";\n|;
+        }
+      elsif ($TYPE[$i] eq "float")
+        {
+          print qq|    float val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    os << val << "\\n";\n|;
+        }
+      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
+        {
+          print qq|    int val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    os << val << "\\n";\n|;
+        }
+      elsif ($TYPE[$i] eq "std::string")
+        {
+          print qq|    os << $STATIC_OBJECT_NAME.$OPT[$i] () << "\\n";\n|;
+        }
+      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
+        {
+          my $elt_type;
+          if ($TYPE[$i] eq "Array<int>")
+            {
+              $elt_type = "int";
+            }
+          else
+            {
+              $elt_type = "octave_idx_type";
+            }
+          print qq|    Array<$elt_type> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    if (val.length () == 1)
+      {
+        os << val(0) << "\\n";
+      }
+    else
+      {
+        os << "\\n\\n";
+        octave_idx_type len = val.length ();
+        Matrix tmp (len, 1);
+        for (octave_idx_type i = 0; i < len; i++)
+          tmp(i,0) = val(i);
+        octave_print_internal (os, tmp, false, 2);
+        os << "\\n\\n";
+      }\n|;
+        }
+      elsif ($TYPE[$i] eq "Array<double>")
+        {
+          print qq|    Array<double> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    if (val.length () == 1)
+      {
+        os << val(0) << "\\n";
+      }
+    else
+      {
+        os << "\\n\\n";
+        Matrix tmp = Matrix (ColumnVector (val));
+        octave_print_internal (os, tmp, false, 2);
+        os << "\\n\\n";
+      }\n|;
+        }
+      elsif ($TYPE[$i] eq "Array<float>")
+        {
+          print qq|    Array<float> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
+          print qq|    if (val.length () == 1)
+      {
+        os << val(0) << "\\n";
+      }
+    else
+      {
+        os << "\\n\\n";
+        FloatMatrix tmp = FloatMatrix (FloatColumnVector (val));
+        octave_print_internal (os, tmp, false, 2);
+        os << "\\n\\n";
+      }\n|;
+        }
+      else
+        {
+          die ("unknown type $TYPE[$i]");
+        }
+
+      print "  }\n\n";
+    }
+
+  print qq|  os << "\\n";\n}\n\n|;
+}
+
+sub emit_set_functions
+{
+  print "static void
+set_$CLASS_NAME (const std::string& keyword, const octave_value& val)
+{
+  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n";
+
+  my $iftok = "if";
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      $iftok = "else if" if ($i > 0);
+
+      print "  $iftok (keyword_almost_match (list[$i].kw_tok, list[$i].min_len,
+           keyword, list[$i].min_toks_to_match, MAX_TOKENS))
+    {\n";
+
+      if ($TYPE[$i] eq "double")
+        {
+          print "      double tmp = val.double_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "float")
+        {
+          print "      float tmp = val.float_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
+        {
+          print "      int tmp = val.int_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "std::string")
+        {
+          print "      std::string tmp = val.string_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
+        {
+          print "      Array<int> tmp = val.int_vector_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "Array<double>")
+        {
+          print "      Array<double> tmp = val.vector_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      elsif ($TYPE[$i] eq "Array<float>")
+        {
+          print "      Array<float> tmp = val.float_vector_value ();\n\n";
+          print "      if (! error_state)
+        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
+        }
+      else
+        {
+          die ("unknown type $TYPE[$i]");
+        }
+
+      print "    }\n";
+    }
+
+  print qq|  else
+    {
+      warning ("$OPT_FCN_NAME: no match for `%s'", keyword.c_str ());
+    }
+}\n\n|;
+}
+
+sub emit_show_function
+{
+  print "static octave_value_list
+show_$CLASS_NAME (const std::string& keyword)
+{
+  octave_value retval;
+
+  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n";
+
+  my $iftok = "if";
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      $iftok = "else if" if ($i > 0);
+
+      print "  $iftok (keyword_almost_match (list[$i].kw_tok, list[$i].min_len,
+           keyword, list[$i].min_toks_to_match, MAX_TOKENS))
+    {\n";
+
+      if ($TYPE[$i] eq "double")
+        {
+          print "      double val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      retval = val;\n";
+        }
+      elsif ($TYPE[$i] eq "float")
+        {
+          print "      float val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      retval = val;\n";
+        }
+      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
+        {
+          print "      int val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      retval = static_cast<double> (val);\n";
+        }
+      elsif ($TYPE[$i] eq "std::string")
+        {
+          print "      retval = $STATIC_OBJECT_NAME.$OPT[$i] ();\n";
+        }
+      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
+        {
+          my $elt_type;
+          if ($TYPE[$i] eq "Array<int>")
+            {
+              $elt_type = "int";
+            }
+          else
+            {
+              $elt_type = "octave_idx_type";
+            }
+          print "      Array<$elt_type> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      if (val.length () == 1)
+        {
+          retval = static_cast<double> (val(0));
+        }
+      else
+        {
+          octave_idx_type len = val.length ();
+          ColumnVector tmp (len);
+          for (octave_idx_type i = 0; i < len; i++)
+            tmp(i) = val(i);
+          retval = tmp;
+        }\n";
+        }
+      elsif ($TYPE[$i] eq "Array<double>")
+        {
+          print "      Array<double> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      if (val.length () == 1)
+        {
+          retval = val(0);
+        }
+      else
+        {
+          retval = ColumnVector (val);
+        }\n";
+        }
+      elsif ($TYPE[$i] eq "Array<float>")
+        {
+          print "      Array<float> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
+          print "      if (val.length () == 1)
+        {
+          retval = val(0);
+        }
+      else
+        {
+          retval = FloatColumnVector (val);
+        }\n";
+        }
+      else
+        {
+          die ("unknown type $TYPE[$i]");
+        }
+
+      print "    }\n";
+    }
+
+  print qq|  else
+    {
+      warning ("$OPT_FCN_NAME: no match for `%s'", keyword.c_str ());
+    }
+
+  return retval;\n}\n\n|;
+}
+
+sub emit_options_function
+{
+  print <<"_END_EMIT_OPTIONS_FUNCTION_HDR_";
+DEFUN_DLD ($OPT_FCN_NAME, args, ,
+  "-*- texinfo -*-\\n\\
+\@deftypefn  {Loadable Function} {} $OPT_FCN_NAME ()\\n\\
+\@deftypefnx {Loadable Function} {val =} $OPT_FCN_NAME (\@var{opt})\\n\\
+\@deftypefnx {Loadable Function} {} $OPT_FCN_NAME (\@var{opt}, \@var{val})\\n\\
+$DOC_STRING\\n\\
+\\n\\
+Options include\\n\\
+\\n\\
+\@table \@code\\n\\
+_END_EMIT_OPTIONS_FUNCTION_HDR_
+# FIXME: Add extra newline above
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      print '@item \"', $NAME[$i], '\"\n\\', "\n";
+      print $DOC_ITEM[$i] if $DOC_ITEM[$i];
+    }
+
+  print <<"_END_EMIT_OPTIONS_FUNCTION_BODY_";
+\@end table\\n\\
+\@end deftypefn")
+{
+  octave_value_list retval;
+
+  int nargin = args.length ();
+
+  if (nargin == 0)
+    {
+      print_$CLASS_NAME (octave_stdout);
+    }
+  else if (nargin == 1 || nargin == 2)
+    {
+      std::string keyword = args(0).string_value ();
+
+      if (! error_state)
+        {
+          if (nargin == 1)
+            retval = show_$CLASS_NAME (keyword);
+          else
+            set_$CLASS_NAME (keyword, args(1));
+        }
+      else
+        error ("$OPT_FCN_NAME: expecting keyword as first argument");
+    }
+  else
+    print_usage ();
+
+  return retval;
+}
+_END_EMIT_OPTIONS_FUNCTION_BODY_
+
+}
+
+sub emit_options_debug
+{
+  print qq|CLASS = "$CLASS"\n|;
+
+  for (my $i = 0; $i < $OPT_NUM; $i++)
+    {
+      print "\nOPTION\n";
+      print qq|  NAME = "$NAME[$i]"\n|;
+      print qq|  TYPE = "$TYPE[$i]"\n|;
+      if ($SET_ARG_TYPE[$i])
+        {
+          print eval ("\"  SET_ARG_TYPE = \\\"$SET_ARG_TYPE[$i]\\\"\"") . "\n";
+        }
+      if ($INIT_VALUE[$i])
+        {
+          print qq|  INIT_VALUE = "$INIT_VALUE[$i]"\n|;
+        }
+      if ($INIT_BODY[$i])
+        {
+          print "  INIT_BODY\n";
+          print &substopt ($INIT_BODY[$i]);
+          print "  END_INIT_BODY\n";
+        }
+      if ($SET_EXPR[$i])
+        {
+          print qq|  SET_EXPR = "$SET_EXPR[$i]"\n|;
+        }
+      if ($SET_BODY[$i])
+        {
+          print "  SET_BODY\n";
+          print &substopt ($SET_BODY[$i]);
+          print "  END_SET_BODY\n";
+        }
+      if ($SET_CODE[$i])
+        {
+          print "  SET_CODE\n";
+          print &substopt ($SET_CODE[$i]);
+          print "  END_SET_CODE\n";
+        }
+      print "END_OPTION\n";
+    }
+}
+
+sub substopt
+{
+  my ($string, $optvar, $opt, $type) = @_;
+
+  $string =~ s/\$OPTVAR/$optvar/g;
+  $string =~ s/\$OPT/$opt/g;
+  $string =~ s/\$TYPE/$type/g;
+
+  return $string;
+}
+
+sub max
+{
+  my $max = shift;
+
+  foreach (@_)
+    {
+      $max = $_ if $max < $_;
+    }
+
+  return $max;
+}
+
+################################################################################
+# Subroutine processes any command line arguments
+################################################################################
+sub parse_options
+{
+  my $result;
+
+  $opt_help = 0;
+  $opt_class_header = 0;
+  $opt_handler_fcns = 0;
+  $opt_debug = 0;
+
+  $result = GetOptions ("opt-class-header" => \$opt_class_header,
+                        "opt-handler-fcns" => \$opt_handler_fcns,
+                        "debug" => \$opt_debug,
+                        "help"  => \$opt_help);
+
+  # give user info if options incorrect or -h(elp) given
+  &usage_info if (!$result or (@ARGV != 1) or $opt_help);
+  if ($opt_class_header and $opt_handler_fcns)
+  {
+    die "Only one of [-opt-class-header | -opt-handler-fcns ] may be specified";
+  }
+
+}
+
+################################################################################
+# Subroutine displays usage information
+################################################################################
+sub usage_info
+{
+   warn <<_END_OF_USAGE_;
+//////////////////////////////////////////////////////////////////////////////
+USAGE : mk-opts.pl -opt-class-header|-opt-handler-fcns [-debug] [-help] DEFN_FILE
+//////////////////////////////////////////////////////////////////////////////
+
+Automatically generate C++ code for option handling code (DASSL, DASRT, etc.)
+from definition file.
+
+See the head of mk-opts.pl for a description of the format that is parsed.
+_END_OF_USAGE_
+
+  exit(1);    # exit with error code
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/mkinstalldirs	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,162 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+
+scriptversion=2009-04-28.21; # UTC
+
+# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain.
+#
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+nl='
+'
+IFS=" ""	$nl"
+errstatus=0
+dirmode=
+
+usage="\
+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
+
+Create each directory DIR (with mode MODE, if specified), including all
+leading file name components.
+
+Report bugs to <bug-automake@gnu.org>."
+
+# process command line arguments
+while test $# -gt 0 ; do
+  case $1 in
+    -h | --help | --h*)         # -h for help
+      echo "$usage"
+      exit $?
+      ;;
+    -m)                         # -m PERM arg
+      shift
+      test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
+      dirmode=$1
+      shift
+      ;;
+    --version)
+      echo "$0 $scriptversion"
+      exit $?
+      ;;
+    --)                         # stop option processing
+      shift
+      break
+      ;;
+    -*)                         # unknown option
+      echo "$usage" 1>&2
+      exit 1
+      ;;
+    *)                          # first non-opt arg
+      break
+      ;;
+  esac
+done
+
+for file
+do
+  if test -d "$file"; then
+    shift
+  else
+    break
+  fi
+done
+
+case $# in
+  0) exit 0 ;;
+esac
+
+# Solaris 8's mkdir -p isn't thread-safe.  If you mkdir -p a/b and
+# mkdir -p a/c at the same time, both will detect that a is missing,
+# one will create a, then the other will try to create a and die with
+# a "File exists" error.  This is a problem when calling mkinstalldirs
+# from a parallel make.  We use --version in the probe to restrict
+# ourselves to GNU mkdir, which is thread-safe.
+case $dirmode in
+  '')
+    if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+      echo "mkdir -p -- $*"
+      exec mkdir -p -- "$@"
+    else
+      # On NextStep and OpenStep, the `mkdir' command does not
+      # recognize any option.  It will interpret all options as
+      # directories to create, and then abort because `.' already
+      # exists.
+      test -d ./-p && rmdir ./-p
+      test -d ./--version && rmdir ./--version
+    fi
+    ;;
+  *)
+    if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
+       test ! -d ./--version; then
+      echo "mkdir -m $dirmode -p -- $*"
+      exec mkdir -m "$dirmode" -p -- "$@"
+    else
+      # Clean up after NextStep and OpenStep mkdir.
+      for d in ./-m ./-p ./--version "./$dirmode";
+      do
+        test -d $d && rmdir $d
+      done
+    fi
+    ;;
+esac
+
+for file
+do
+  case $file in
+    /*) pathcomp=/ ;;
+    *)  pathcomp= ;;
+  esac
+  oIFS=$IFS
+  IFS=/
+  set fnord $file
+  shift
+  IFS=$oIFS
+
+  for d
+  do
+    test "x$d" = x && continue
+
+    pathcomp=$pathcomp$d
+    case $pathcomp in
+      -*) pathcomp=./$pathcomp ;;
+    esac
+
+    if test ! -d "$pathcomp"; then
+      echo "mkdir $pathcomp"
+
+      mkdir "$pathcomp" || lasterr=$?
+
+      if test ! -d "$pathcomp"; then
+	errstatus=$lasterr
+      else
+	if test ! -z "$dirmode"; then
+	  echo "chmod $dirmode $pathcomp"
+	  lasterr=
+	  chmod "$dirmode" "$pathcomp" || lasterr=$?
+
+	  if test ! -z "$lasterr"; then
+	    errstatus=$lasterr
+	  fi
+	fi
+      fi
+    fi
+
+    pathcomp=$pathcomp/
+  done
+done
+
+exit $errstatus
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/build-aux/move-if-change	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,15 @@
+#!/bin/sh
+#
+# Like mv $1 $2, but if the files are the same, just delete $1.
+# Status is 0 if $2 is changed, 1 otherwise.
+
+if test -r $2; then
+  if cmp $1 $2 > /dev/null; then
+    echo $2 is unchanged
+    rm -f $1
+  else
+    mv -f $1 $2
+  fi
+else
+  mv -f $1 $2
+fi
--- a/changelog.tmpl	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-header = '{date|shortdate}  {author|person}  <{author|email}>\n\n'
-changeset = '\t{desc|tabindent|strip}\n\n\tFiles: {files|stringify|fill68|tabindent|strip}\n\n'
--- a/common.mk	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,668 +0,0 @@
-AWK = @AWK@
-export AWK
-
-SED = @SED@
-export SED
-
-FIND = @FIND@
-export FIND
-
-PERL = @PERL@
-export PERL
-
-PYTHON = @PYTHON@
-
-GNUPLOT = @GNUPLOT@
-
-DESKTOP_FILE_INSTALL = @DESKTOP_FILE_INSTALL@
-
-OCTAVE_VERSION = @OCTAVE_VERSION@
-OCTAVE_API_VERSION_NUMBER = @OCTAVE_API_VERSION_NUMBER@
-OCTAVE_API_VERSION = @OCTAVE_API_VERSION@
-OCTAVE_RELEASE_DATE = @OCTAVE_RELEASE_DATE@
-OCTAVE_COPYRIGHT = @OCTAVE_COPYRIGHT@
-
-version = $(OCTAVE_VERSION)
-api_version = $(OCTAVE_API_VERSION)
-
-## AM_LIBTOOLFLAGS = --silent
-
-#### Start of system configuration section. ####
-
-EXEEXT = @EXEEXT@
-
-BUILD_EXEEXT = @BUILD_EXEEXT@
-
-LEX = @LEX@
-AM_LFLAGS = @LFLAGS@
-LEXLIB = @LEXLIB@
-
-YACC = @YACC@
-AM_YFLAGS = -dv
-
-GPERF = @GPERF@
-
-AR = @AR@
-ARFLAGS = @ARFLAGS@ 
-
-TEMPLATE_AR = @TEMPLATE_AR@
-TEMPLATE_ARFLAGS = @TEMPLATE_ARFLAGS@
-
-RANLIB = @RANLIB@
-
-LN_S = @LN_S@
-
-MAKEINFO = @MAKEINFO@
-TEXI2DVI = @TEXI2DVI@
-TEXI2PDF = @TEXI2PDF@
-
-GHOSTSCRIPT = @GHOSTSCRIPT@
-
-DEFAULT_PAGER = @DEFAULT_PAGER@
-
-ENABLE_DYNAMIC_LINKING = @ENABLE_DYNAMIC_LINKING@
-
-SHLEXT = @SHLEXT@
-SHLEXT_VER = @SHLEXT_VER@
-SHLLIB = @SHLLIB@
-SHLLIB_VER = @SHLLIB_VER@
-SHLBIN = @SHLBIN@
-SHLBIN_VER = @SHLBIN_VER@
-SHLLINKEXT=
-
-LIBEXT = a
-LIBPRE = @LIBPRE@
-SHLPRE = @SHLPRE@
-SHLLIBPRE = @SHLLIBPRE@
-SHLBINPRE = @SHLBINPRE@
-
-# Fortran compiler flags.
-
-FC = @FC@
-F77 = @F77@
-AM_FFLAGS = @FFLAGS@
-FPICFLAG = @FPICFLAG@
-ALL_FFLAGS = $(FFLAGS)
-F77_FLOAT_STORE_FLAG = @F77_FLOAT_STORE_FLAG@
-F77_INTEGER_8_FLAG = @F77_INTEGER_8_FLAG@
-
-F77_TOLOWER=@F77_TOLOWER@
-F77_APPEND_UNDERSCORE=@F77_TOLOWER@
-F77_APPEND_EXTRA_UNDERSCORE=@F77_TOLOWER@
-
-X11_INCFLAGS = @X11_INCFLAGS@
-X11_LIBS = @X11_LIBS@
-
-CARBON_LIBS = @CARBON_LIBS@
-
-MAGICK_CPPFLAGS = @MAGICK_CPPFLAGS@
-MAGICK_LDFLAGS = @MAGICK_LDFLAGS@
-MAGICK_LIBS = @MAGICK_LIBS@
-
-PTHREAD_CFLAGS = @PTHREAD_CFLAGS@
-PTHREAD_LIBS = @PTHREAD_LIBS@
-
-LIBFLAGS = -L$(top_builddir)
-
-DEFS = @DEFS@
-
-UGLY_DEFS = @UGLY_DEFS@
-
-CC = @CC@
-CC_VERSION = @CC_VERSION@
-CONFIGURE_CFLAGS = @CFLAGS@
-CPICFLAG = @CPICFLAG@
-XTRA_CFLAGS = @XTRA_CFLAGS@
-WARN_CFLAGS = @WARN_CFLAGS@
-AM_CFLAGS = $(CONFIGURE_CFLAGS) \
-  $(INCFLAGS) $(DEFS) $(XTRA_CFLAGS) $(WARN_CFLAGS) $(CFLAGS) $(PTHREAD_CFLAGS)
-BUG_CFLAGS = $(DEFS) $(XTRA_CFLAGS) $(WARN_CFLAGS) $(CFLAGS)
-
-BUILD_CC = @BUILD_CC@
-BUILD_CFLAGS = @BUILD_CFLAGS@
-
-DEPEND_FLAGS = @DEPEND_FLAGS@
-DEPEND_EXTRA_SED_PATTERN = @DEPEND_EXTRA_SED_PATTERN@
-INCLUDE_DEPS = @INCLUDE_DEPS@
-# ifeq ($(INCLUDE_DEPS),false)
-#   omit_deps = true;
-# endif
-
-GRAPHICS_CFLAGS = @GRAPHICS_CFLAGS@
-
-CXX = @CXX@
-CXX_VERSION = @CXX_VERSION@
-CXXCPP = @CXXCPP@
-CONFIGURE_CXXFLAGS = @CXXFLAGS@
-CXXPICFLAG = @CXXPICFLAG@
-XTRA_CXXFLAGS = @XTRA_CXXFLAGS@
-WARN_CXXFLAGS = @WARN_CXXFLAGS@
-AM_CXXFLAGS = $(CONFIGURE_CXXFLAGS) \
-  $(INCFLAGS) $(DEFS) $(XTRA_CXXFLAGS) $(WARN_CXXFLAGS) $(CXXFLAGS) $(PTHREAD_CFLAGS)
-BUG_CXXFLAGS = $(DEFS) $(XTRA_CXXFLAGS) $(WARN_CXXFLAGS) $(CXXFLAGS)
-
-BUILD_CXX = @BUILD_CXX@
-BUILD_CXXFLAGS = @BUILD_CXXFLAGS@
-
-NO_UNDEFINED_LDFLAG = @NO_UNDEFINED_LDFLAG@
-
-LD_CXX = @LD_CXX@
-LD_STATIC_FLAG = @LD_STATIC_FLAG@
-#ALL_LDFLAGS = $(LIBFLAGS) $(LD_STATIC_FLAG) $(CPICFLAG) $(LDFLAGS)
-
-BUILD_LDFLAGS = @BUILD_LDFLAGS@
-
-SH_LD = @SH_LD@
-SH_LDFLAGS = @SH_LDFLAGS@
-
-DL_LD = @DL_LD@
-DL_LDFLAGS = @DL_LDFLAGS@
-
-SONAME_FLAGS = @SONAME_FLAGS@
-
-RDYNAMIC_FLAG = @RDYNAMIC_FLAG@
-
-RLD_FLAG = @RLD_FLAG@
-
-FLIBS = @FLIBS@
-
-LIBOCTINTERP = @LIBOCTINTERP@
-LIBOCTAVE = @LIBOCTAVE@
-LIBCRUFT = @LIBCRUFT@
-
-FT2_CFLAGS = @FT2_CFLAGS@
-FT2_LIBS = @FT2_LIBS@
-
-HDF5_CPPFLAGS = @HDF5_CPPFLAGS@
-HDF5_LDFLAGS = @HDF5_LDFLAGS@
-HDF5_LIBS = @HDF5_LIBS@
-
-Z_CPPFLAGS = @Z_CPPFLAGS@
-Z_LDFLAGS = @Z_LDFLAGS@
-Z_LIBS = @Z_LIBS@
-
-GRAPHICS_LIBS = @GRAPHICS_LIBS@
-
-QHULL_CPPFLAGS = @QHULL_CPPFLAGS@
-QHULL_LDFLAGS = @QHULL_LDFLAGS@
-QHULL_LIBS = @QHULL_LIBS@
-
-REGEX_LIBS = @REGEX_LIBS@
-
-LAPACK_LIBS = @LAPACK_LIBS@
-BLAS_LIBS = @BLAS_LIBS@
-
-FFTW3_CPPFLAGS = @FFTW3_CPPFLAGS@
-FFTW3_LDFLAGS = @FFTW3_LDFLAGS@
-FFTW3_LIBS = @FFTW3_LIBS@
-
-FFTW3F_CPPFLAGS = @FFTW3F_CPPFLAGS@
-FFTW3F_LDFLAGS = @FFTW3F_LDFLAGS@
-FFTW3F_LIBS = @FFTW3F_LIBS@
-
-GLPK_CPPFLAGS = @GLPK_CPPFLAGS@
-GLPK_LDFLAGS = @GLPK_LDFLAGS@
-GLPK_LIBS = @GLPK_LIBS@
-
-CURL_CPPFLAGS = @CURL_CPPFLAGS@
-CURL_LDFLAGS = @CURL_LDFLAGS@
-CURL_LIBS = @CURL_LIBS@
-
-AMD_CPPFLAGS = @AMD_CPPFLAGS@
-AMD_LDFLAGS = @AMD_LDFLAGS@
-AMD_LIBS = @AMD_LIBS@
-
-CAMD_CPPFLAGS = @CAMD_CPPFLAGS@
-CAMD_LDFLAGS = @CAMD_LDFLAGS@
-CAMD_LIBS = @CAMD_LIBS@
-
-COLAMD_CPPFLAGS = @COLAMD_CPPFLAGS@
-COLAMD_LDFLAGS = @COLAMD_LDFLAGS@
-COLAMD_LIBS = @COLAMD_LIBS@
-
-CCOLAMD_CPPFLAGS = @CCOLAMD_CPPFLAGS@
-CCOLAMD_LDFLAGS = @CCOLAMD_LDFLAGS@
-CCOLAMD_LIBS = @CCOLAMD_LIBS@
-
-CHOLMOD_CPPFLAGS = @CHOLMOD_CPPFLAGS@
-CHOLMOD_LDFLAGS = @CHOLMOD_LDFLAGS@
-CHOLMOD_LIBS = @CHOLMOD_LIBS@
-
-CXSPARSE_CPPFLAGS = @CXSPARSE_CPPFLAGS@
-CXSPARSE_LDFLAGS = @CXSPARSE_LDFLAGS@
-CXSPARSE_LIBS = @CXSPARSE_LIBS@
-
-UMFPACK_CPPFLAGS = @UMFPACK_CPPFLAGS@
-UMFPACK_LDFLAGS = @UMFPACK_LDFLAGS@
-UMFPACK_LIBS = @UMFPACK_LIBS@
-
-OPENGL_LIBS = @OPENGL_LIBS@
-
-QRUPDATE_CPPFLAGS = @QRUPDATE_CPPFLAGS@
-QRUPDATE_LDFLAGS = @QRUPDATE_LDFLAGS@
-QRUPDATE_LIBS = @QRUPDATE_LIBS@
-
-READLINE_LIBS = @READLINE_LIBS@
-TERM_LIBS = @TERM_LIBS@
-
-DL_LIBS = @DL_LIBS@
-LIBS = @LIBS@
-
-ALL_CPPFLAGS = $(CPPFLAGS) $(HDF5_CPPFLAGS) $(Z_CPPFLAGS)
-
-SPARSE_XCPPFLAGS = \
-  $(CHOLMOD_CPPFLAGS) $(UMFPACK_CPPFLAGS) \
-  $(AMD_CPPFLAGS) $(CAMD_CPPFLAGS) $(COLAMD_CPPFLAGS) \
-  $(CCOLAMD_CPPFLAGS) $(CXSPARSE_CPPFLAGS)
-
-SPARSE_XLDFLAGS = \
-  $(CHOLMOD_LDFLAGS) $(UMFPACK_LDFLAGS) \
-  $(AMD_LDFLAGS) $(CAMD_LDFLAGS) $(COLAMD_LDFLAGS) \
-  $(CCOLAMD_LDFLAGS) $(CXSPARSE_LDFLAGS)
-
-## Order matters, at least on some systems (Cygwin, for example).
-SPARSE_XLIBS = \
-    $(CHOLMOD_LIBS) $(UMFPACK_LIBS) \
-    $(AMD_LIBS) $(CAMD_LIBS) $(COLAMD_LIBS) \
-    $(CCOLAMD_LIBS) $(CXSPARSE_LIBS)
-
-FFTW_XCPPFLAGS = $(FFTW3_CPPFLAGS) $(FFTW3F_CPPFLAGS)
-
-FFTW_XLDFLAGS = $(FFTW3_LDFLAGS) $(FFTW3F_LDFLAGS)
-
-FFTW_XLIBS = $(FFTW3_LIBS) $(FFTW3F_LIBS)
-
-USE_64_BIT_IDX_T = @USE_64_BIT_IDX_T@
-OCTAVE_IDX_TYPE = @OCTAVE_IDX_TYPE@
-
-TEXINFO_COLAMD = @TEXINFO_COLAMD@
-TEXINFO_CHOLMOD = @TEXINFO_CHOLMOD@
-TEXINFO_UMFPACK = @TEXINFO_UMFPACK@
-TEXINFO_QHULL = @TEXINFO_QHULL@
-
-# The arguments passed to configure.
-config_opts = @config_opts@
-
-CONFIG_SUBDIRS = @subdirs@
-
-# ==================== Where To Install Things ====================
-
-# The default location for installation.  Everything is placed in
-# subdirectories of this directory.  The default values for many of
-# the variables below are expressed in terms of this one, so you may
-# not need to change them.  This defaults to /usr/local.
-prefix = @prefix@
-
-# Like `prefix', but used for architecture-specific files.
-exec_prefix = @exec_prefix@
-
-# Where to install Octave and other binaries that people will want to
-# run directly.
-bindir = @bindir@
-
-# Normally the directory for installing executables that system
-# administrators run.  This is the same as libexecdir on Cygwin systems.
-sbindir = @sbindir@
-
-# The root of the directory tree for read-only
-# architecture-independent data files.
-datarootdir = @datarootdir@
-
-# Where to install architecture-independent data files.  ${fcnfiledir}
-# and ${localfcnfiledir} are subdirectories of this.
-datadir = @datadir@
-
-libdir = @libdir@
-
-# Where to install and expect extra files like NEWS and doc-cache.
-octetcdir = @octetcdir@
-
-# Where to install and expect libraries like libcruft.a, liboctave.a,
-# and other architecture-dependent data.
-octlibdir = @octlibdir@
-
-# Where to install and expect executable programs to be run by Octave
-# rather than directly by users.
-libexecdir = @libexecdir@
-
-# The prefix for Octave's include file directory.  The default is
-# ${prefix}/include
-includedir = @includedir@
-
-# Where to install Octave's man pages, and what extension they should
-# have.  The default is ${prefix}/man/man1
-mandir = @mandir@
-man1dir = @man1dir@
-man1ext = @man1ext@
-
-# The full path to the default doc cache file.
-doc_cache_file = @doc_cache_file@
-
-# Where to install and expect the info files describing Octave..
-infodir = @infodir@
-
-# The full path to the default info file.
-infofile = @infofile@
-
-# ==================== Octave-specific directories ====================
-
-# These variables hold the values specific to Octave.  They are
-# based on the values of the standard Make variables above.
-
-# What is the path separation character
-sepchar = @sepchar@
-
-# Where to install Octave's include files.  The default is
-# ${includedir}/octave-${version}/octave
-octincludedir = @octincludedir@
-
-# Where to install the function file distributed with
-# Octave.  This includes the Octave version, so that the
-# function files for different versions of Octave will install
-# themselves in separate directories.
-fcnfiledir = @fcnfiledir@
-
-# Directories Octave should search for function files specific
-# to this site (i.e. customizations), before consulting
-# ${fcnfiledir}.  This should be a colon-separated list of
-# directories.
-localfcnfiledir = @localfcnfiledir@
-localapifcnfiledir = @localapifcnfiledir@
-localverfcnfiledir = @localverfcnfiledir@
-
-# Where to put executables to be run by Octave rather than
-# the user.  This path usually includes the Octave version
-# and configuration name, so that multiple configurations
-# for multiple versions of Octave may be installed at once.
-archlibdir = @archlibdir@
-
-# Where to put executables to be run by Octave rather than by the
-# user that are specific to this site.
-localarchlibdir = @localarchlibdir@
-localapiarchlibdir = @localapiarchlibdir@
-localverarchlibdir = @localverarchlibdir@
-
-# Where to put object files that will by dynamically loaded.
-# This path usually includes the Octave version and configuration
-# name, so that multiple configurations for multiple versions of
-# Octave may be installed at once. 
-octfiledir = @octfiledir@
-
-# Directories Octave should search for object files that will be
-# dynamically loaded and that are specific to this site
-# (i.e. customizations), before consulting ${octfiledir}.  This should
-# be a colon-separated list of directories.
-localoctfiledir = @localoctfiledir@
-localapioctfiledir = @localapioctfiledir@
-localveroctfiledir = @localveroctfiledir@
-
-# Where Octave will search to find image files.
-imagedir = @imagedir@
-
-# The type of computer we are running on.
-canonical_host_type = @canonical_host_type@
-
-# Where Octave will look for startup files
-startupfiledir = ${fcnfiledir}/startup
-localstartupfiledir = ${localfcnfiledir}/startup
-
-# LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, PATH, ...
-library_path_var = @library_path_var@
-
-# The separator used for elements of the LD_PRELOAD variable (might be
-# a space, so protect with $(null))
-null =
-ldpreloadsep = $(null)@ldpreloadsep@$(null)
-
-NO_OCT_FILE_STRIP = @NO_OCT_FILE_STRIP@
-
-# The following pattern rules and the substitution functions require
-# GNU make.  If you don't have it, get it!
-
-define simple_move_if_change_rule
-if [ -s $@-t ]; then \
-  $(top_srcdir)/move-if-change $@-t $@; \
-else \
-  echo "$@-t is empty!" 1>&2; \
-  rm -f $@-t; \
-  exit 1; \
-fi
-endef
-
-define cp_update_rule
-if [ "x$(srcdir)" != "x." ] && [ -f $(srcdir)/$@ ] && [ ! -f $@ ]; then \
-  cp $(srcdir)/$@ $@; \
-  touch -r $(srcdir)/$@ $@; \
-fi
-endef
-
-# Yes, the second sed command near the end is needed, to avoid limits
-# in command lengths for some versions of sed.  UGLY_DEFS is often
-# quite large, so it makes sense to split this command there.
-
-define do_subst_config_vals
-echo "making $@ from $<"
-$(SED) < $< \
-  -e "s|%NO_OCT_FILE_STRIP%|${NO_OCT_FILE_STRIP}|" \
-  -e "s|%OCTAVE_BINDIR%|\"${bindir}\"|" \
-  -e "s|%OCTAVE_CONF_ALL_CFLAGS%|\"${ALL_CFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_ALL_CXXFLAGS%|\"${ALL_CXXFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_ALL_FFLAGS%|\"${ALL_FFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_ALL_LDFLAGS%|\"${ALL_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_AMD_CPPFLAGS%|\"${AMD_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_AMD_LDFLAGS%|\"${AMD_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_AMD_LIBS%|\"${AMD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_AR%|\"${AR}\"|" \
-  -e "s|%OCTAVE_CONF_ARFLAGS%|\"${ARFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_BLAS_LIBS%|\"${BLAS_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CAMD_CPPFLAGS%|\"${CAMD_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CAMD_LDFLAGS%|\"${CAMD_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CAMD_LIBS%|\"${CAMD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CANONICAL_HOST_TYPE%|\"${canonical_host_type}\"|" \
-  -e "s|%OCTAVE_CONF_CARBON_LIBS%|\"${CARBON_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CC%|\"${CC}\"|" \
-  -e "s|%OCTAVE_CONF_CC_VERSION%|\"${CC_VERSION}\"|" \
-  -e "s|%OCTAVE_CONF_CCOLAMD_CPPFLAGS%|\"${CCOLAMD_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CCOLAMD_LDFLAGS%|\"${CCOLAMD_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CCOLAMD_LIBS%|\"${CCOLAMD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CFLAGS%|\"${CFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CHOLMOD_CPPFLAGS%|\"${CHOLMOD_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CHOLMOD_LDFLAGS%|\"${CHOLMOD_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CHOLMOD_LIBS%|\"${CHOLMOD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_COLAMD_CPPFLAGS%|\"${COLAMD_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_COLAMD_LDFLAGS%|\"${COLAMD_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_COLAMD_LIBS%|\"${COLAMD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CPICFLAG%|\"${CPICFLAG}\"|" \
-  -e "s|%OCTAVE_CONF_CPPFLAGS%|\"${CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CURL_CPPFLAGS%|\"${CURL_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CURL_LDFLAGS%|\"${CURL_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CURL_LIBS%|\"${CURL_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CXSPARSE_CPPFLAGS%|\"${CXSPARSE_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CXSPARSE_LDFLAGS%|\"${CXSPARSE_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CXSPARSE_LIBS%|\"${CXSPARSE_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_CXX%|\"${CXX}\"|" \
-  -e "s|%OCTAVE_CONF_CXXCPP%|\"${CXXCPP}\"|" \
-  -e "s|%OCTAVE_CONF_CXXFLAGS%|\"${CXXFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_CXXPICFLAG%|\"${CXXPICFLAG}\"|" \
-  -e "s|%OCTAVE_CONF_CXX_VERSION%|\"${CXX_VERSION}\"|" \
-  -e "s|%OCTAVE_CONF_DEFAULT_PAGER%|\"${DEFAULT_PAGER}\"|" \
-  -e "s|%OCTAVE_CONF_DEPEND_FLAGS%|\"${DEPEND_FLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%|\"${DEPEND_EXTRA_SED_PATTERN}\"|" \
-  -e "s|%OCTAVE_CONF_DL_LD%|\"${DL_LD}\"|" \
-  -e "s|%OCTAVE_CONF_DL_LDFLAGS%|\"${DL_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_DL_LIBS%|\"${DL_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_EXEEXT%|\"${EXEEXT}\"|" \
-  -e "s|%OCTAVE_CONF_F77%|\"${F77}\"|" \
-  -e "s|%OCTAVE_CONF_F77_FLOAT_STORE_FLAG%|\"${F77_FLOAT_STORE_FLAG}\"|" \
-  -e "s|%OCTAVE_CONF_F77_INTEGER_8_FLAG%|\"${F77_INTEGER_8_FLAG}\"|" \
-  -e "s|%OCTAVE_CONF_FC%|\"${FC}\"|" \
-  -e "s|%OCTAVE_CONF_FFLAGS%|\"${FFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3_CPPFLAGS%|\"${FFTW3_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3_LDFLAGS%|\"${FFTW3_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3_LIBS%|\"${FFTW3_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3F_CPPFLAGS%|\"${FFTW3F_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3F_LDFLAGS%|\"${FFTW3F_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_FFTW3F_LIBS%|\"${FFTW3F_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_FLIBS%|\"${FLIBS}\"|" \
-  -e "s|%OCTAVE_CONF_FPICFLAG%|\"${FPICFLAG}\"|" \
-  -e "s|%OCTAVE_CONF_FT2_LIBS%|\"${FT2_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_GLPK_CPPFLAGS%|\"${GLPK_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_GLPK_LDFLAGS%|\"${GLPK_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_GLPK_LIBS%|\"${GLPK_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_GNUPLOT%|\"${GNUPLOT}\"|" \
-  -e "s|%OCTAVE_CONF_GRAPHICS_LIBS%|\"${GRAPHICS_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_HDF5_CPPFLAGS%|\"${HDF5_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_HDF5_LDFLAGS%|\"${HDF5_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_HDF5_LIBS%|\"${HDF5_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_INCFLAGS%|\"${INCFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_INCLUDEDIR%|\"${includedir}\"|" \
-  -e "s|%OCTAVE_CONF_LAPACK_LIBS%|\"${LAPACK_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_LD_CXX%|\"${LD_CXX}\"|" \
-  -e "s|%OCTAVE_CONF_LDFLAGS%|\"${LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_LD_STATIC_FLAG%|\"${LD_STATIC_FLAG}\"|" \
-  -e "s|%OCTAVE_CONF_LEX%|\"${LEX}\"|" \
-  -e "s|%OCTAVE_CONF_LEXLIB%|\"${LEXLIB}\"|" \
-  -e "s|%OCTAVE_CONF_LFLAGS%|\"${LFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_LIBCRUFT%|\"${LIBCRUFT}\"|" \
-  -e "s|%OCTAVE_CONF_LIBDIR%|\"${libdir}\"|" \
-  -e "s|%OCTAVE_CONF_LIBEXT%|\"${LIBEXT}\"|" \
-  -e "s|%OCTAVE_CONF_LIBFLAGS%|\"${LIBFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_LIBOCTAVE%|\"${LIBOCTAVE}\"|" \
-  -e "s|%OCTAVE_CONF_LIBOCTINTERP%|\"${LIBOCTINTERP}\"|" \
-  -e "s|%OCTAVE_CONF_LIBS%|\"${LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_LN_S%|\"${LN_S}\"|" \
-  -e "s|%OCTAVE_CONF_MAGICK_CPPFLAGS%|\"${MAGICK_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_MAGICK_LDFLAGS%|\"${MAGICK_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_MAGICK_LIBS%|\"${MAGICK_LIBS}\"|" \
-  -e 's|%OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%|\"@MKOCTFILE_DL_LDFLAGS@\"|' \
-  -e "s|%OCTAVE_CONF_OCTINCLUDEDIR%|\"${octincludedir}\"|" \
-  -e "s|%OCTAVE_CONF_OCTLIBDIR%|\"${octlibdir}\"|" \
-  -e "s|%OCTAVE_CONF_OPENGL_LIBS%|\"${OPENGL_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_PREFIX%|\"${prefix}\"|" \
-  -e "s|%OCTAVE_CONF_PTHREAD_CFLAGS%|\"${PTHREAD_CFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_PTHREAD_LIBS%|\"${PTHREAD_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_QHULL_CPPFLAGS%|\"${QHULL_CPPFLAGSS}\"|" \
-  -e "s|%OCTAVE_CONF_QHULL_LDFLAGS%|\"${QHULL_LDFLAGSS}\"|" \
-  -e "s|%OCTAVE_CONF_QHULL_LIBS%|\"${QHULL_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_QRUPDATE_CPPFLAGS%|\"${QRUPDATE_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_QRUPDATE_LDFLAGS%|\"${QRUPDATE_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_QRUPDATE_LIBS%|\"${QRUPDATE_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_RANLIB%|\"${RANLIB}\"|" \
-  -e "s|%OCTAVE_CONF_RDYNAMIC_FLAG%|\"${RDYNAMIC_FLAG}\"|" \
-  -e "s|%OCTAVE_CONF_READLINE_LIBS%|\"${READLINE_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_REGEX_LIBS%|\"${REGEX_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_RLD_FLAG%|\"${RLD_FLAG}\"|" \
-  -e "s|%OCTAVE_CONF_SED%|\"${SED}\"|" \
-  -e "s|%OCTAVE_CONF_SHARED_LIBS%|\"${SHARED_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_SHLEXT%|\"${SHLEXT}\"|" \
-  -e "s|%OCTAVE_CONF_SHLLINKEXT%|\"${SHLLINKEXT}\"|" \
-  -e "s|%OCTAVE_CONF_SHLEXT_VER%|\"${SHLEXT_VER}\"|" \
-  -e "s|%OCTAVE_CONF_SH_LD%|\"${SH_LD}\"|" \
-  -e "s|%OCTAVE_CONF_SH_LDFLAGS%|\"${SH_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_SONAME_FLAGS%|\"${SONAME_FLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_STATIC_LIBS%|\"${STATIC_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_TERM_LIBS%|\"${TERM_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_UGLY_DEFS%|\"${UGLY_DEFS}\"|" \
-  -e "s|%OCTAVE_CONF_UMFPACK_CPPFLAGS%|\"${UMFPACK_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_UMFPACK_LDFLAGS%|\"${UMFPACK_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_UMFPACK_LIBS%|\"${UMFPACK_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_USE_64_BIT_IDX_T%|\"${USE_64_BIT_IDX_T}\"|" \
-  -e "s|%OCTAVE_CONF_VERSION%|\"${version}\"|" \
-  -e "s|%OCTAVE_CONF_ENABLE_DYNAMIC_LINKING%|\"${ENABLE_DYNAMIC_LINKING}\"|" \
-  -e "s|%OCTAVE_CONF_X11_INCFLAGS%|\"${X11_INCFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_X11_LIBS%|\"${X11_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_XTRA_CFLAGS%|\"${XTRA_CFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_XTRA_CXXFLAGS%|\"${XTRA_CXXFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_YACC%|\"${YACC}\"|" \
-  -e "s|%OCTAVE_CONF_YFLAGS%|\"${YFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_Z_CPPFLAGS%|\"${Z_CPPFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_Z_LDFLAGS%|\"${Z_LDFLAGS}\"|" \
-  -e "s|%OCTAVE_CONF_Z_LIBS%|\"${Z_LIBS}\"|" \
-  -e "s|%OCTAVE_CONF_config_opts%|\"${config_opts}\"|" | \
-  $(SED)  -e "s|%OCTAVE_CONF_DEFS%|\"${UGLY_DEFS}\"|" > $@-t
-$(simple_move_if_change_rule)
-endef
-
-define do_subst_default_vals
-echo "making $@ from $<"
-$(SED) < $< > $@-t \
-  -e "s|%OCTAVE_ARCHLIBDIR%|\"${archlibdir}\"|" \
-  -e "s|%OCTAVE_BINDIR%|\"${bindir}\"|" \
-  -e "s|%OCTAVE_CANONICAL_HOST_TYPE%|\"${canonical_host_type}\"|" \
-  -e "s|%OCTAVE_DATADIR%|\"${datadir}\"|" \
-  -e "s|%OCTAVE_DATAROOTDIR%|\"${datarootdir}\"|" \
-  -e "s|%OCTAVE_DEFAULT_PAGER%|\"${DEFAULT_PAGER}\"|" \
-  -e "s|%OCTAVE_DOC_CACHE_FILE%|\"${doc_cache_file}\"|" \
-  -e "s|%OCTAVE_EXEC_PREFIX%|\"${exec_prefix}\"|" \
-  -e "s|%OCTAVE_FCNFILEDIR%|\"${fcnfiledir}\"|" \
-  -e "s|%OCTAVE_IMAGEDIR%|\"${imagedir}\"|" \
-  -e "s|%OCTAVE_INCLUDEDIR%|\"${includedir}\"|" \
-  -e "s|%OCTAVE_INFODIR%|\"${infodir}\"|" \
-  -e "s|%OCTAVE_INFOFILE%|\"${infofile}\"|" \
-  -e "s|%OCTAVE_LIBDIR%|\"${libdir}\"|" \
-  -e "s|%OCTAVE_LIBEXECDIR%|\"${libexecdir}\"|" \
-  -e "s|%OCTAVE_LOCALAPIFCNFILEDIR%|\"${localapifcnfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALAPIOCTFILEDIR%|\"${localapioctfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALARCHLIBDIR%|\"${localarchlibdir}\"|" \
-  -e "s|%OCTAVE_LOCALFCNFILEDIR%|\"${localfcnfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALOCTFILEDIR%|\"${localoctfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALSTARTUPFILEDIR%|\"${localstartupfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALAPIARCHLIBDIR%|\"${localapiarchlibdir}\"|" \
-  -e "s|%OCTAVE_LOCALVERARCHLIBDIR%|\"${localverarchlibdir}\"|" \
-  -e "s|%OCTAVE_LOCALVERFCNFILEDIR%|\"${localverfcnfiledir}\"|" \
-  -e "s|%OCTAVE_LOCALVEROCTFILEDIR%|\"${localveroctfiledir}\"|" \
-  -e "s|%OCTAVE_MAN1DIR%|\"${man1dir}\"|" \
-  -e "s|%OCTAVE_MAN1EXT%|\"${man1ext}\"|" \
-  -e "s|%OCTAVE_MANDIR%|\"${mandir}\"|" \
-  -e "s|%OCTAVE_OCTFILEDIR%|\"${octfiledir}\"|" \
-  -e "s|%OCTAVE_OCTETCDIR%|\"${octetcdir}\"|" \
-  -e "s|%OCTAVE_OCTINCLUDEDIR%|\"${octincludedir}\"|" \
-  -e "s|%OCTAVE_OCTLIBDIR%|\"${octlibdir}\"|" \
-  -e "s|%OCTAVE_STARTUPFILEDIR%|\"${startupfiledir}\"|" \
-  -e "s|%OCTAVE_PREFIX%|\"${prefix}\"|" \
-  -e "s|%OCTAVE_API_VERSION%|\"${api_version}\"|" \
-  -e "s|%OCTAVE_RELEASE%|\"${OCTAVE_RELEASE}\"|" \
-  -e "s|%OCTAVE_VERSION%|\"${version}\"|"
-$(simple_move_if_change_rule)
-endef
-
-define do_subst_script_vals
-echo "making $@ from $<"
-$(SED) < $< \
-  -e "s|%AWK%|${AWK}|g" \
-  -e "s|%FIND%|${FIND}|g" \
-  -e "s|%SED%|${SED}|g" \
-  -e "s|%library_path_var%|${library_path_var}|g" \
-  -e "s|%liboctinterp%|${SHLPRE}octinterp.${SHLEXT}|g" \
-  -e "s|%liboctave%|${SHLPRE}octave.${SHLEXT}|g" \
-  -e "s|%libcruft%|${SHLPRE}cruft.${SHLEXT}|g" \
-  -e "s|%ldpreloadsep%|${ldpreloadsep}|g" \
-  -e "s|%srcdir%|${srcdir}|" \
-  -e "s|%top_srcdir%|${top_srcdir}|" \
-  -e "s|%abs_top_srcdir%|${abs_top_srcdir}|" \
-  -e "s|%builddir%|$(shell pwd)|" > $@-t
-$(simple_move_if_change_rule)
-endef
-
-define do_script_install
-$(top_srcdir)/mkinstalldirs $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)
-for f in $(FCN_FILES); do \
-  fbase=`basename $$f`; \
-  rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$fbase; \
-  $(INSTALL_DATA) $$f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$fbase; \
-done
-$(top_srcdir)/mkpkgadd $(DESTDIR)$(fcnfiledir)/$(script_sub_dir) > $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t
-if [ -n "`cat $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t`" ]; then \
-  $(INSTALL_DATA) $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD ; \
-else \
-  rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD.t ; \
-fi
-endef
-
-define do_script_uninstall
-for f in $(FCN_FILES_NO_DIR); \
-  do rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/$$f; \
-done
-rm -f $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)/PKG_ADD
--rmdir $(DESTDIR)$(fcnfiledir)/$(script_sub_dir)
-endef
--- a/config.guess	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1542 +0,0 @@
-#! /bin/sh
-# Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-#   Free Software Foundation, Inc.
-
-timestamp='2008-11-15'
-
-# This file is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Originally written by Per Bothner <per@bothner.com>.
-# Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# This script attempts to guess a canonical system name similar to
-# config.sub.  If it succeeds, it prints the system name on stdout, and
-# exits with 0.  Otherwise, it exits with 1.
-#
-# The plan is that this can be called by configure scripts if you
-# don't specify an explicit build system type.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION]
-
-Output the configuration name of the system \`$me' is run on.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches@gnu.org>."
-
-version="\
-GNU config.guess ($timestamp)
-
-Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions.  There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help" >&2
-       exit 1 ;;
-    * )
-       break ;;
-  esac
-done
-
-if test $# != 0; then
-  echo "$me: too many arguments$help" >&2
-  exit 1
-fi
-
-trap 'exit 1' 1 2 15
-
-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
-# compiler to aid in system detection is discouraged as it requires
-# temporary files to be created and, as you can see below, it is a
-# headache to deal with in a portable fashion.
-
-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
-# use `HOST_CC' if defined, but it is deprecated.
-
-# Portable tmp directory creation inspired by the Autoconf team.
-
-set_cc_for_build='
-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
-: ${TMPDIR=/tmp} ;
- { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
-dummy=$tmp/dummy ;
-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
-case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
-	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
-	     CC_FOR_BUILD="$c"; break ;
-	  fi ;
-	done ;
-	if test x"$CC_FOR_BUILD" = x ; then
-	  CC_FOR_BUILD=no_compiler_found ;
-	fi
-	;;
- ,,*)   CC_FOR_BUILD=$CC ;;
- ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
-esac ; set_cc_for_build= ;'
-
-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi@noc.rutgers.edu 1994-08-24)
-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
-	PATH=$PATH:/.attbin ; export PATH
-fi
-
-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
-
-# Note: order is significant - the case branches are not exclusive.
-
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
-    *:NetBSD:*:*)
-	# NetBSD (nbsd) targets should (where applicable) match one or
-	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
-	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
-	# switched to ELF, *-*-netbsd* would select the old
-	# object file format.  This provides both forward
-	# compatibility and a consistent mechanism for selecting the
-	# object file format.
-	#
-	# Note: NetBSD doesn't particularly care about the vendor
-	# portion of the name.  We always set it to "unknown".
-	sysctl="sysctl -n hw.machine_arch"
-	UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
-	    armeb) machine=armeb-unknown ;;
-	    arm*) machine=arm-unknown ;;
-	    sh3el) machine=shl-unknown ;;
-	    sh3eb) machine=sh-unknown ;;
-	    sh5el) machine=sh5le-unknown ;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
-	esac
-	# The Operating System including object format, if it has switched
-	# to ELF recently, or will in the future.
-	case "${UNAME_MACHINE_ARCH}" in
-	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
-		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
-			| grep __ELF__ >/dev/null
-		then
-		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
-		    # Return netbsd for either.  FIX?
-		    os=netbsd
-		else
-		    os=netbsdelf
-		fi
-		;;
-	    *)
-	        os=netbsd
-		;;
-	esac
-	# The OS release
-	# Debian GNU/NetBSD machines have a different userland, and
-	# thus, need a distinct triplet. However, they do not need
-	# kernel version information, so it can be replaced with a
-	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
-	    Debian*)
-		release='-gnu'
-		;;
-	    *)
-		release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-		;;
-	esac
-	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
-	# contains redundant information, the shorter form:
-	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}"
-	exit ;;
-    *:OpenBSD:*:*)
-	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
-	exit ;;
-    *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
-	exit ;;
-    *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
-	exit ;;
-    macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
-	exit ;;
-    alpha:OSF1:*:*)
-	case $UNAME_RELEASE in
-	*4.0)
-		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
-		;;
-	*5.*)
-	        UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
-		;;
-	esac
-	# According to Compaq, /usr/sbin/psrinfo has been available on
-	# OSF/1 and Tru64 systems produced since 1995.  I hope that
-	# covers most systems running today.  This code pipes the CPU
-	# types through head -n 1, so we only detect the type of CPU 0.
-	ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^  The alpha \(.*\) processor.*$/\1/p' | head -n 1`
-	case "$ALPHA_CPU_TYPE" in
-	    "EV4 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV4.5 (21064)")
-		UNAME_MACHINE="alpha" ;;
-	    "LCA4 (21066/21068)")
-		UNAME_MACHINE="alpha" ;;
-	    "EV5 (21164)")
-		UNAME_MACHINE="alphaev5" ;;
-	    "EV5.6 (21164A)")
-		UNAME_MACHINE="alphaev56" ;;
-	    "EV5.6 (21164PC)")
-		UNAME_MACHINE="alphapca56" ;;
-	    "EV5.7 (21164PC)")
-		UNAME_MACHINE="alphapca57" ;;
-	    "EV6 (21264)")
-		UNAME_MACHINE="alphaev6" ;;
-	    "EV6.7 (21264A)")
-		UNAME_MACHINE="alphaev67" ;;
-	    "EV6.8CB (21264C)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8AL (21264B)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.8CX (21264D)")
-		UNAME_MACHINE="alphaev68" ;;
-	    "EV6.9A (21264/EV69A)")
-		UNAME_MACHINE="alphaev69" ;;
-	    "EV7 (21364)")
-		UNAME_MACHINE="alphaev7" ;;
-	    "EV7.9 (21364A)")
-		UNAME_MACHINE="alphaev79" ;;
-	esac
-	# A Pn.n version is a patched version.
-	# A Vn.n version is a released version.
-	# A Tn.n version is a released field test version.
-	# A Xn.n version is an unreleased experimental baselevel.
-	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-	exit ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
-    Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-unknown-sysv4
-	exit ;;
-    *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
-	exit ;;
-    *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
-	exit ;;
-    *:OS/390:*:*)
-	echo i370-ibm-openedition
-	exit ;;
-    *:z/VM:*:*)
-	echo s390-ibm-zvmoe
-	exit ;;
-    *:OS400:*:*)
-        echo powerpc-ibm-os400
-	exit ;;
-    arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
-	exit ;;
-    arm:riscos:*:*|arm:RISCOS:*:*)
-	echo arm-unknown-riscos
-	exit ;;
-    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
-	echo hppa1.1-hitachi-hiuxmpp
-	exit ;;
-    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
-	# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
-	if test "`(/bin/universe) 2>/dev/null`" = att ; then
-		echo pyramid-pyramid-sysv3
-	else
-		echo pyramid-pyramid-bsd
-	fi
-	exit ;;
-    NILE*:*:*:dcosx)
-	echo pyramid-pyramid-svr4
-	exit ;;
-    DRS?6000:unix:4.0:6*)
-	echo sparc-icl-nx6
-	exit ;;
-    DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
-	case `/usr/bin/uname -p` in
-	    sparc) echo sparc-icl-nx7; exit ;;
-	esac ;;
-    sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
-	SUN_ARCH="i386"
-	# If there is a compiler, see if it is configured for 64-bit objects.
-	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
-	# This test works for both compilers.
-	if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
-	    if echo '\n#ifdef __amd64\nIS_64BIT_ARCH\n#endif' | \
-		(CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
-		grep IS_64BIT_ARCH >/dev/null
-	    then
-		SUN_ARCH="x86_64"
-	    fi
-	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:6*:*)
-	# According to config.sub, this is the proper way to canonicalize
-	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
-	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    sun4*:SunOS:*:*)
-	case "`/usr/bin/arch -k`" in
-	    Series*|S4*)
-		UNAME_RELEASE=`uname -v`
-		;;
-	esac
-	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
-	exit ;;
-    sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
-	exit ;;
-    sun*:*:4.2BSD:*)
-	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
-	case "`/bin/arch`" in
-	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
-		;;
-	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
-		;;
-	esac
-	exit ;;
-    aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
-	exit ;;
-    # The situation for MiNT is a little confusing.  The machine name
-    # can be virtually everything (everything which is not
-    # "atarist" or "atariste" at least should have a processor
-    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
-    # to the lowercase version "mint" (or "freemint").  Finally
-    # the system name "TOS" denotes a system which is actually not
-    # MiNT.  But MiNT is downward compatible to TOS, so this should
-    # be no problem.
-    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
-        exit ;;
-    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-        echo m68k-atari-mint${UNAME_RELEASE}
-	exit ;;
-    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-        echo m68k-milan-mint${UNAME_RELEASE}
-        exit ;;
-    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-        echo m68k-hades-mint${UNAME_RELEASE}
-        exit ;;
-    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-        echo m68k-unknown-mint${UNAME_RELEASE}
-        exit ;;
-    m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
-	exit ;;
-    powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
-	exit ;;
-    RISC*:Mach:*:*)
-	echo mips-dec-mach_bsd4.3
-	exit ;;
-    RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
-	exit ;;
-    2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
-	exit ;;
-    mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-#ifdef __cplusplus
-#include <stdio.h>  /* for printf() prototype */
-	int main (int argc, char *argv[]) {
-#else
-	int main (argc, argv) int argc; char *argv[]; {
-#endif
-	#if defined (host_mips) && defined (MIPSEB)
-	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
-	#endif
-	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
-	#endif
-	#endif
-	  exit (-1);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
-	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
-	exit ;;
-    Motorola:PowerMAX_OS:*:*)
-	echo powerpc-motorola-powermax
-	exit ;;
-    Motorola:*:4.3:PL8-*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
-	echo powerpc-harris-powermax
-	exit ;;
-    Night_Hawk:Power_UNIX:*:*)
-	echo powerpc-harris-powerunix
-	exit ;;
-    m88k:CX/UX:7*:*)
-	echo m88k-harris-cxux7
-	exit ;;
-    m88k:*:4*:R4*)
-	echo m88k-motorola-sysv4
-	exit ;;
-    m88k:*:3*:R3*)
-	echo m88k-motorola-sysv3
-	exit ;;
-    AViiON:dgux:*:*)
-        # DG/UX returns AViiON for all architectures
-        UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
-	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
-	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
-	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
-	    fi
-	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
-	fi
- 	exit ;;
-    M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
-	echo m88k-dolphin-sysv3
-	exit ;;
-    M88*:*:R3*:*)
-	# Delta 88k system running SVR3
-	echo m88k-motorola-sysv3
-	exit ;;
-    XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
-	echo m88k-tektronix-sysv3
-	exit ;;
-    Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
-	echo m68k-tektronix-bsd
-	exit ;;
-    *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
-	exit ;;
-    ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
-	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
-	exit ;;               # Note that: echo "'`uname -s`'" gives 'AIX '
-    i*86:AIX:*:*)
-	echo i386-ibm-aix
-	exit ;;
-    ia64:AIX:*:*)
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:2:3)
-	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
-		#include <sys/systemcfg.h>
-
-		main()
-			{
-			if (!__power_pc())
-				exit(1);
-			puts("powerpc-ibm-aix3.2.5");
-			exit(0);
-			}
-EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
-		then
-			echo "$SYSTEM_NAME"
-		else
-			echo rs6000-ibm-aix3.2.5
-		fi
-	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
-		echo rs6000-ibm-aix3.2.4
-	else
-		echo rs6000-ibm-aix3.2
-	fi
-	exit ;;
-    *:AIX:*:[456])
-	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
-		IBM_ARCH=rs6000
-	else
-		IBM_ARCH=powerpc
-	fi
-	if [ -x /usr/bin/oslevel ] ; then
-		IBM_REV=`/usr/bin/oslevel`
-	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
-	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
-	exit ;;
-    *:AIX:*:*)
-	echo rs6000-ibm-aix
-	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
-	echo romp-ibm-bsd4.4
-	exit ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
-	exit ;;                             # report: romp-ibm BSD 4.3
-    *:BOSX:*:*)
-	echo rs6000-bull-bosx
-	exit ;;
-    DPX/2?00:B.O.S.:*:*)
-	echo m68k-bull-sysv3
-	exit ;;
-    9000/[34]??:4.3bsd:1.*:*)
-	echo m68k-hp-bsd
-	exit ;;
-    hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
-	echo m68k-hp-bsd4.4
-	exit ;;
-    9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/[678][0-9][0-9])
-		if [ -x /usr/bin/getconf ]; then
-		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
-                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-                    case "${sc_cpu_version}" in
-                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
-                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
-                      532)                      # CPU_PA_RISC2_0
-                        case "${sc_kernel_bits}" in
-                          32) HP_ARCH="hppa2.0n" ;;
-                          64) HP_ARCH="hppa2.0w" ;;
-			  '') HP_ARCH="hppa2.0" ;;   # HP-UX 10.20
-                        esac ;;
-                    esac
-		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^              //' << EOF >$dummy.c
-
-              #define _HPUX_SOURCE
-              #include <stdlib.h>
-              #include <unistd.h>
-
-              int main ()
-              {
-              #if defined(_SC_KERNEL_BITS)
-                  long bits = sysconf(_SC_KERNEL_BITS);
-              #endif
-                  long cpu  = sysconf (_SC_CPU_VERSION);
-
-                  switch (cpu)
-              	{
-              	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
-              	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0:
-              #if defined(_SC_KERNEL_BITS)
-              	    switch (bits)
-              		{
-              		case 64: puts ("hppa2.0w"); break;
-              		case 32: puts ("hppa2.0n"); break;
-              		default: puts ("hppa2.0"); break;
-              		} break;
-              #else  /* !defined(_SC_KERNEL_BITS) */
-              	    puts ("hppa2.0"); break;
-              #endif
-              	default: puts ("hppa1.0"); break;
-              	}
-                  exit (0);
-              }
-EOF
-		    (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
-		    test -z "$HP_ARCH" && HP_ARCH=hppa
-		fi ;;
-	esac
-	if [ ${HP_ARCH} = "hppa2.0w" ]
-	then
-	    eval $set_cc_for_build
-
-	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
-	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
-	    # generating 64-bit code.  GNU and HP use different nomenclature:
-	    #
-	    # $ CC_FOR_BUILD=cc ./config.guess
-	    # => hppa2.0w-hp-hpux11.23
-	    # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
-	    # => hppa64-hp-hpux11.23
-
-	    if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
-		grep __LP64__ >/dev/null
-	    then
-		HP_ARCH="hppa2.0w"
-	    else
-		HP_ARCH="hppa64"
-	    fi
-	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
-	exit ;;
-    ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
-	exit ;;
-    3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <unistd.h>
-	int
-	main ()
-	{
-	  long cpu = sysconf (_SC_CPU_VERSION);
-	  /* The order matters, because CPU_IS_HP_MC68K erroneously returns
-	     true for CPU_PA_RISC1_0.  CPU_IS_PA_RISC returns correct
-	     results, however.  */
-	  if (CPU_IS_PA_RISC (cpu))
-	    {
-	      switch (cpu)
-		{
-		  case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
-		  case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
-		  default: puts ("hppa-hitachi-hiuxwe2"); break;
-		}
-	    }
-	  else if (CPU_IS_HP_MC68K (cpu))
-	    puts ("m68k-hitachi-hiuxwe2");
-	  else puts ("unknown-hitachi-hiuxwe2");
-	  exit (0);
-	}
-EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
-		{ echo "$SYSTEM_NAME"; exit; }
-	echo unknown-hitachi-hiuxwe2
-	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
-	echo hppa1.1-hp-bsd
-	exit ;;
-    9000/8??:4.3bsd:*:*)
-	echo hppa1.0-hp-bsd
-	exit ;;
-    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
-	echo hppa1.0-hp-mpeix
-	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
-	echo hppa1.1-hp-osf
-	exit ;;
-    hp8??:OSF1:*:*)
-	echo hppa1.0-hp-osf
-	exit ;;
-    i*86:OSF1:*:*)
-	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
-	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
-	fi
-	exit ;;
-    parisc*:Lites*:*:*)
-	echo hppa1.1-hp-lites
-	exit ;;
-    C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
-	echo c1-convex-bsd
-        exit ;;
-    C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-        exit ;;
-    C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
-	echo c34-convex-bsd
-        exit ;;
-    C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
-	echo c38-convex-bsd
-        exit ;;
-    C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
-	echo c4-convex-bsd
-        exit ;;
-    CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
-	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
-	      -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
-	exit ;;
-    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
-	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-        exit ;;
-    5000:UNIX_System_V:4.*:*)
-        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
-        FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
-        echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
-	exit ;;
-    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit ;;
-    sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
-	exit ;;
-    *:FreeBSD:*:*)
-	case ${UNAME_MACHINE} in
-	    pc98)
-		echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	esac
-	exit ;;
-    i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
-	exit ;;
-    *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
-	exit ;;
-    i*:windows32*:*)
-    	# uname -m includes "-pc" on this system.
-    	echo ${UNAME_MACHINE}-mingw32
-	exit ;;
-    i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
-	exit ;;
-    *:Interix*:[3456]*)
-    	case ${UNAME_MACHINE} in
-	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
-		exit ;;
-	    EM64T | authenticamd | genuineintel)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
-		exit ;;
-	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
-    i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
-	exit ;;
-    amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
-	echo x86_64-unknown-cygwin
-	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
-    prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
-	exit ;;
-    *:GNU:*:*)
-	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
-	exit ;;
-    *:GNU/*:*:*)
-	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
-	exit ;;
-    i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
-	exit ;;
-    arm*:Linux:*:*)
-	eval $set_cc_for_build
-	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
-	    | grep -q __ARM_EABI__
-	then
-	    echo ${UNAME_MACHINE}-unknown-linux-gnu
-	else
-	    echo ${UNAME_MACHINE}-unknown-linux-gnueabi
-	fi
-	exit ;;
-    avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    cris:Linux:*:*)
-	echo cris-axis-linux-gnu
-	exit ;;
-    crisv32:Linux:*:*)
-	echo crisv32-axis-linux-gnu
-	exit ;;
-    frv:Linux:*:*)
-    	echo frv-unknown-linux-gnu
-	exit ;;
-    ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    mips:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips
-	#undef mipsel
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mipsel
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#undef CPU
-	#undef mips64
-	#undef mips64el
-	#if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
-	CPU=mips64el
-	#else
-	#if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
-	CPU=mips64
-	#else
-	CPU=
-	#endif
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^CPU/{
-		s: ::g
-		p
-	    }'`"
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
-	;;
-    or32:Linux:*:*)
-	echo or32-unknown-linux-gnu
-	exit ;;
-    ppc:Linux:*:*)
-	echo powerpc-unknown-linux-gnu
-	exit ;;
-    ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-gnu
-	exit ;;
-    alpha:Linux:*:*)
-	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
-	  EV5)   UNAME_MACHINE=alphaev5 ;;
-	  EV56)  UNAME_MACHINE=alphaev56 ;;
-	  PCA56) UNAME_MACHINE=alphapca56 ;;
-	  PCA57) UNAME_MACHINE=alphapca56 ;;
-	  EV6)   UNAME_MACHINE=alphaev6 ;;
-	  EV67)  UNAME_MACHINE=alphaev67 ;;
-	  EV68*) UNAME_MACHINE=alphaev68 ;;
-        esac
-	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
-	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
-	exit ;;
-    padre:Linux:*:*)
-	echo sparc-unknown-linux-gnu
-	exit ;;
-    parisc:Linux:*:* | hppa:Linux:*:*)
-	# Look for CPU level
-	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
-	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
-	  *)    echo hppa-unknown-linux-gnu ;;
-	esac
-	exit ;;
-    parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-gnu
-	exit ;;
-    s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux
-	exit ;;
-    sh64*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-gnu
-	exit ;;
-    x86_64:Linux:*:*)
-	echo x86_64-unknown-linux-gnu
-	exit ;;
-    xtensa*:Linux:*:*)
-    	echo ${UNAME_MACHINE}-unknown-linux-gnu
-	exit ;;
-    i*86:Linux:*:*)
-	# The BFD linker knows what the default object file format is, so
-	# first see if it will tell us. cd to the root directory to prevent
-	# problems with other programs or directories called `ld' in the path.
-	# Set LC_ALL=C to ensure ld outputs messages in English.
-	ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
-			 | sed -ne '/supported targets:/!d
-				    s/[ 	][ 	]*/ /g
-				    s/.*supported targets: *//
-				    s/ .*//
-				    p'`
-        case "$ld_supported_targets" in
-	  elf32-i386)
-		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
-		;;
-	  a.out-i386-linux)
-		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
-		exit ;;
-	  "")
-		# Either a pre-BFD a.out linker (linux-gnuoldld) or
-		# one that does not give us useful --help.
-		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
-		exit ;;
-	esac
-	# Determine whether the default compiler is a.out or elf
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
-	#include <features.h>
-	#ifdef __ELF__
-	# ifdef __GLIBC__
-	#  if __GLIBC__ >= 2
-	LIBC=gnu
-	#  else
-	LIBC=gnulibc1
-	#  endif
-	# else
-	LIBC=gnulibc1
-	# endif
-	#else
-	#if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC)
-	LIBC=gnu
-	#else
-	LIBC=gnuaout
-	#endif
-	#endif
-	#ifdef __dietlibc__
-	LIBC=dietlibc
-	#endif
-EOF
-	eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n '
-	    /^LIBC/{
-		s: ::g
-		p
-	    }'`"
-	test x"${LIBC}" != x && {
-		echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
-		exit
-	}
-	test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
-	;;
-    i*86:DYNIX/ptx:4*:*)
-	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
-	# earlier versions are messed up and put the nodename in both
-	# sysname and nodename.
-	echo i386-sequent-sysv4
-	exit ;;
-    i*86:UNIX_SV:4.2MP:2.*)
-        # Unixware is an offshoot of SVR4, but it has its own version
-        # number series starting with 2...
-        # I am not positive that other SVR4 systems won't match this,
-	# I just have to hope.  -- rms.
-        # Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
-	exit ;;
-    i*86:OS/2:*:*)
-	# If we were able to find `uname', then EMX Unix compatibility
-	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
-	exit ;;
-    i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
-	exit ;;
-    i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
-	exit ;;
-    i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
-	exit ;;
-    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
-	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
-	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
-	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
-	fi
-	exit ;;
-    i*86:*:5:[678]*)
-    	# UnixWare 7.x, OpenUNIX and OpenServer 6.
-	case `/bin/uname -X | grep "^Machine"` in
-	    *486*)	     UNAME_MACHINE=i486 ;;
-	    *Pentium)	     UNAME_MACHINE=i586 ;;
-	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
-	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
-	exit ;;
-    i*86:*:3.2:*)
-	if test -f /usr/options/cb.name; then
-		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
-	elif /bin/uname -X 2>/dev/null >/dev/null ; then
-		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
-		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
-		(/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
-			&& UNAME_MACHINE=i586
-		(/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
-			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
-	else
-		echo ${UNAME_MACHINE}-pc-sysv32
-	fi
-	exit ;;
-    pc:*:*:*)
-	# Left here for compatibility:
-        # uname -m prints for DJGPP always 'pc', but it prints nothing about
-        # the processor, so we play safe by assuming i386.
-	echo i386-pc-msdosdjgpp
-        exit ;;
-    Intel:Mach:3*:*)
-	echo i386-pc-mach3
-	exit ;;
-    paragon:*:*:*)
-	echo i860-intel-osf1
-	exit ;;
-    i860:*:4.*:*) # i860-SVR4
-	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
-	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
-	fi
-	exit ;;
-    mini*:CTIX:SYS*5:*)
-	# "miniframe"
-	echo m68010-convergent-sysv
-	exit ;;
-    mc68k:UNIX:SYSTEM5:3.51m)
-	echo m68k-convergent-sysv
-	exit ;;
-    M680?0:D-NIX:5.3:*)
-	echo m68k-diab-dnix
-	exit ;;
-    M68*:*:R3V[5678]*:*)
-	test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
-    3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
-	OS_REL=''
-	test -r /etc/.relid \
-	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
-	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
-	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
-    3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
-        /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-          && { echo i486-ncr-sysv4; exit; } ;;
-    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    mc68030:UNIX_System_V:4.*:*)
-	echo m68k-atari-sysv4
-	exit ;;
-    TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
-	exit ;;
-    SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
-	exit ;;
-    RM*:ReliantUNIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    RM*:SINIX-*:*:*)
-	echo mips-sni-sysv4
-	exit ;;
-    *:SINIX-*:*:*)
-	if uname -p 2>/dev/null >/dev/null ; then
-		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
-	else
-		echo ns32k-sni-sysv
-	fi
-	exit ;;
-    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                      # says <Richard.M.Bartel@ccMail.Census.GOV>
-        echo i586-unisys-sysv4
-        exit ;;
-    *:UNIX_System_V:4*:FTX*)
-	# From Gerald Hewes <hewes@openmarket.com>.
-	# How about differentiating between stratus architectures? -djm
-	echo hppa1.1-stratus-sysv4
-	exit ;;
-    *:*:*:FTX*)
-	# From seanf@swdc.stratus.com.
-	echo i860-stratus-sysv4
-	exit ;;
-    i*86:VOS:*:*)
-	# From Paul.Green@stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
-	exit ;;
-    *:VOS:*:*)
-	# From Paul.Green@stratus.com.
-	echo hppa1.1-stratus-vos
-	exit ;;
-    mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
-	exit ;;
-    news*:NEWS-OS:6*:*)
-	echo mips-sony-newsos6
-	exit ;;
-    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
-	if [ -d /usr/nec ]; then
-	        echo mips-nec-sysv${UNAME_RELEASE}
-	else
-	        echo mips-unknown-sysv${UNAME_RELEASE}
-	fi
-        exit ;;
-    BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
-	echo powerpc-be-beos
-	exit ;;
-    BeMac:BeOS:*:*)	# BeOS running on Mac or Mac clone, PPC only.
-	echo powerpc-apple-beos
-	exit ;;
-    BePC:BeOS:*:*)	# BeOS running on Intel PC compatible.
-	echo i586-pc-beos
-	exit ;;
-    BePC:Haiku:*:*)	# Haiku running on Intel PC compatible.
-	echo i586-pc-haiku
-	exit ;;
-    SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
-	exit ;;
-    SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
-	exit ;;
-    Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
-	exit ;;
-    *:Darwin:*:*)
-	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	case $UNAME_PROCESSOR in
-	    unknown) UNAME_PROCESSOR=powerpc ;;
-	esac
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
-	exit ;;
-    *:procnto*:*:* | *:QNX:[0123456789]*:*)
-	UNAME_PROCESSOR=`uname -p`
-	if test "$UNAME_PROCESSOR" = "x86"; then
-		UNAME_PROCESSOR=i386
-		UNAME_MACHINE=pc
-	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
-	exit ;;
-    *:QNX:*:4*)
-	echo i386-pc-qnx
-	exit ;;
-    NSE-?:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
-	exit ;;
-    *:NonStop-UX:*:*)
-	echo mips-compaq-nonstopux
-	exit ;;
-    BS2000:POSIX*:*:*)
-	echo bs2000-siemens-sysv
-	exit ;;
-    DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
-	exit ;;
-    *:Plan9:*:*)
-	# "uname -m" is not consistent, so use $cputype instead. 386
-	# is converted to i386 for consistency with other x86
-	# operating systems.
-	if test "$cputype" = "386"; then
-	    UNAME_MACHINE=i386
-	else
-	    UNAME_MACHINE="$cputype"
-	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
-	exit ;;
-    *:TOPS-10:*:*)
-	echo pdp10-unknown-tops10
-	exit ;;
-    *:TENEX:*:*)
-	echo pdp10-unknown-tenex
-	exit ;;
-    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
-	echo pdp10-dec-tops20
-	exit ;;
-    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
-	echo pdp10-xkl-tops20
-	exit ;;
-    *:TOPS-20:*:*)
-	echo pdp10-unknown-tops20
-	exit ;;
-    *:ITS:*:*)
-	echo pdp10-unknown-its
-	exit ;;
-    SEI:*:*:SEIUX)
-        echo mips-sei-seiux${UNAME_RELEASE}
-	exit ;;
-    *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
-	exit ;;
-    *:*VMS:*:*)
-    	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
-	    A*) echo alpha-dec-vms ; exit ;;
-	    I*) echo ia64-dec-vms ; exit ;;
-	    V*) echo vax-dec-vms ; exit ;;
-	esac ;;
-    *:XENIX:*:SysV)
-	echo i386-pc-xenix
-	exit ;;
-    i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
-	exit ;;
-    i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
-	exit ;;
-esac
-
-#echo '(No uname command or uname output not recognized.)' 1>&2
-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
-
-eval $set_cc_for_build
-cat >$dummy.c <<EOF
-#ifdef _SEQUENT_
-# include <sys/types.h>
-# include <sys/utsname.h>
-#endif
-main ()
-{
-#if defined (sony)
-#if defined (MIPSEB)
-  /* BFD wants "bsd" instead of "newsos".  Perhaps BFD should be changed,
-     I don't know....  */
-  printf ("mips-sony-bsd\n"); exit (0);
-#else
-#include <sys/param.h>
-  printf ("m68k-sony-newsos%s\n",
-#ifdef NEWSOS4
-          "4"
-#else
-	  ""
-#endif
-         ); exit (0);
-#endif
-#endif
-
-#if defined (__arm) && defined (__acorn) && defined (__unix)
-  printf ("arm-acorn-riscix\n"); exit (0);
-#endif
-
-#if defined (hp300) && !defined (hpux)
-  printf ("m68k-hp-bsd\n"); exit (0);
-#endif
-
-#if defined (NeXT)
-#if !defined (__ARCHITECTURE__)
-#define __ARCHITECTURE__ "m68k"
-#endif
-  int version;
-  version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  if (version < 4)
-    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
-  else
-    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
-  exit (0);
-#endif
-
-#if defined (MULTIMAX) || defined (n16)
-#if defined (UMAXV)
-  printf ("ns32k-encore-sysv\n"); exit (0);
-#else
-#if defined (CMU)
-  printf ("ns32k-encore-mach\n"); exit (0);
-#else
-  printf ("ns32k-encore-bsd\n"); exit (0);
-#endif
-#endif
-#endif
-
-#if defined (__386BSD__)
-  printf ("i386-pc-bsd\n"); exit (0);
-#endif
-
-#if defined (sequent)
-#if defined (i386)
-  printf ("i386-sequent-dynix\n"); exit (0);
-#endif
-#if defined (ns32000)
-  printf ("ns32k-sequent-dynix\n"); exit (0);
-#endif
-#endif
-
-#if defined (_SEQUENT_)
-    struct utsname un;
-
-    uname(&un);
-
-    if (strncmp(un.version, "V2", 2) == 0) {
-	printf ("i386-sequent-ptx2\n"); exit (0);
-    }
-    if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
-	printf ("i386-sequent-ptx1\n"); exit (0);
-    }
-    printf ("i386-sequent-ptx\n"); exit (0);
-
-#endif
-
-#if defined (vax)
-# if !defined (ultrix)
-#  include <sys/param.h>
-#  if defined (BSD)
-#   if BSD == 43
-      printf ("vax-dec-bsd4.3\n"); exit (0);
-#   else
-#    if BSD == 199006
-      printf ("vax-dec-bsd4.3reno\n"); exit (0);
-#    else
-      printf ("vax-dec-bsd\n"); exit (0);
-#    endif
-#   endif
-#  else
-    printf ("vax-dec-bsd\n"); exit (0);
-#  endif
-# else
-    printf ("vax-dec-ultrix\n"); exit (0);
-# endif
-#endif
-
-#if defined (alliant) && defined (i860)
-  printf ("i860-alliant-bsd\n"); exit (0);
-#endif
-
-  exit (1);
-}
-EOF
-
-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
-	{ echo "$SYSTEM_NAME"; exit; }
-
-# Apollos put the system type in the environment.
-
-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
-
-# Convex versions that predate uname can use getsysinfo(1)
-
-if [ -x /usr/convex/getsysinfo ]
-then
-    case `getsysinfo -f cpu_type` in
-    c1*)
-	echo c1-convex-bsd
-	exit ;;
-    c2*)
-	if getsysinfo -f scalar_acc
-	then echo c32-convex-bsd
-	else echo c2-convex-bsd
-	fi
-	exit ;;
-    c34*)
-	echo c34-convex-bsd
-	exit ;;
-    c38*)
-	echo c38-convex-bsd
-	exit ;;
-    c4*)
-	echo c4-convex-bsd
-	exit ;;
-    esac
-fi
-
-cat >&2 <<EOF
-$0: unable to guess system type
-
-This script, last modified $timestamp, has failed to recognize
-the operating system you are using. It is advised that you
-download the most up to date version of the config scripts from
-
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
-and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
-
-If the version you run ($0) is already up to date, please
-send the following data and any information you think might be
-pertinent to <config-patches@gnu.org> in order to provide the needed
-information to handle your system.
-
-config.guess timestamp = $timestamp
-
-uname -m = `(uname -m) 2>/dev/null || echo unknown`
-uname -r = `(uname -r) 2>/dev/null || echo unknown`
-uname -s = `(uname -s) 2>/dev/null || echo unknown`
-uname -v = `(uname -v) 2>/dev/null || echo unknown`
-
-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
-/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
-
-hostinfo               = `(hostinfo) 2>/dev/null`
-/bin/universe          = `(/bin/universe) 2>/dev/null`
-/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
-/bin/arch              = `(/bin/arch) 2>/dev/null`
-/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
-
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
-EOF
-
-exit 1
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
--- a/config.sub	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1685 +0,0 @@
-#! /bin/sh
-# Configuration validation subroutine script.
-#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-#   2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-#   Free Software Foundation, Inc.
-
-timestamp='2009-03-07'
-
-# This file is (in principle) common to ALL GNU software.
-# The presence of a machine in this file suggests that SOME GNU software
-# can handle that machine.  It does not imply ALL GNU software can.
-#
-# This file is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
-# 02110-1301, USA.
-#
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-
-# Please send patches to <config-patches@gnu.org>.  Submit a context
-# diff and a properly formatted ChangeLog entry.
-#
-# Configuration subroutine to validate and canonicalize a configuration type.
-# Supply the specified configuration type as an argument.
-# If it is invalid, we print an error message on stderr and exit with code 1.
-# Otherwise, we print the canonical config type on stdout and succeed.
-
-# This file is supposed to be the same for all GNU packages
-# and recognize all the CPU types, system types and aliases
-# that are meaningful with *any* GNU software.
-# Each package is responsible for reporting which valid configurations
-# it does not support.  The user should be able to distinguish
-# a failure to support a valid configuration from a meaningless
-# configuration.
-
-# The goal of this file is to map all the various variations of a given
-# machine specification into a single specification in the form:
-#	CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
-# or in some cases, the newer four-part form:
-#	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
-# It is wrong to echo any other type of specification.
-
-me=`echo "$0" | sed -e 's,.*/,,'`
-
-usage="\
-Usage: $0 [OPTION] CPU-MFR-OPSYS
-       $0 [OPTION] ALIAS
-
-Canonicalize a configuration name.
-
-Operation modes:
-  -h, --help         print this help, then exit
-  -t, --time-stamp   print date of last modification, then exit
-  -v, --version      print version number, then exit
-
-Report bugs and patches to <config-patches@gnu.org>."
-
-version="\
-GNU config.sub ($timestamp)
-
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
-2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
-
-This is free software; see the source for copying conditions.  There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
-
-help="
-Try \`$me --help' for more information."
-
-# Parse command line
-while test $# -gt 0 ; do
-  case $1 in
-    --time-stamp | --time* | -t )
-       echo "$timestamp" ; exit ;;
-    --version | -v )
-       echo "$version" ; exit ;;
-    --help | --h* | -h )
-       echo "$usage"; exit ;;
-    -- )     # Stop option processing
-       shift; break ;;
-    - )	# Use stdin as input.
-       break ;;
-    -* )
-       echo "$me: invalid option $1$help"
-       exit 1 ;;
-
-    *local*)
-       # First pass through any local machine types.
-       echo $1
-       exit ;;
-
-    * )
-       break ;;
-  esac
-done
-
-case $# in
- 0) echo "$me: missing argument$help" >&2
-    exit 1;;
- 1) ;;
- *) echo "$me: too many arguments$help" >&2
-    exit 1;;
-esac
-
-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
-# Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
-case $maybe_os in
-  nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \
-  uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \
-  kopensolaris*-gnu* | \
-  storm-chaos* | os2-emx* | rtmk-nova*)
-    os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
-    ;;
-  *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
-    else os=; fi
-    ;;
-esac
-
-### Let's recognize common machines as not being operating systems so
-### that things like config.sub decstation-3100 work.  We also
-### recognize some manufacturers as not being operating systems, so we
-### can provide default operating systems below.
-case $os in
-	-sun*os*)
-		# Prevent following clause from handling this invalid input.
-		;;
-	-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-	-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-	-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple | -axis | -knuth | -cray)
-		os=
-		basic_machine=$1
-		;;
-	-sim | -cisco | -oki | -wec | -winbond)
-		os=
-		basic_machine=$1
-		;;
-	-scout)
-		;;
-	-wrs)
-		os=-vxworks
-		basic_machine=$1
-		;;
-	-chorusos*)
-		os=-chorusos
-		basic_machine=$1
-		;;
- 	-chorusrdb)
- 		os=-chorusrdb
-		basic_machine=$1
- 		;;
-	-hiux*)
-		os=-hiuxwe2
-		;;
-	-sco6)
-		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5)
-		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco4)
-		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2.[4-9]*)
-		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco3.2v[4-9]*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco5v6*)
-		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-sco*)
-		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-isc)
-		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-clix*)
-		basic_machine=clipper-intergraph
-		;;
-	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
-		;;
-	-lynx*)
-		os=-lynxos
-		;;
-	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
-		;;
-	-psos*)
-		os=-psos
-		;;
-	-mint | -mint[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-esac
-
-# Decode aliases for certain CPU-COMPANY combinations.
-case $basic_machine in
-	# Recognize the basic CPU types without company name.
-	# Some are omitted here because they have special meanings below.
-	1750a | 580 \
-	| a29k \
-	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
-	| alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
-	| am33_2.0 \
-	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \
-	| bfin \
-	| c4x | clipper \
-	| d10v | d30v | dlx | dsp16xx \
-	| fido | fr30 | frv \
-	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
-	| i370 | i860 | i960 | ia64 \
-	| ip2k | iq2000 \
-	| lm32 \
-	| m32c | m32r | m32rle | m68000 | m68k | m88k \
-	| maxq | mb | microblaze | mcore | mep | metag \
-	| mips | mipsbe | mipseb | mipsel | mipsle \
-	| mips16 \
-	| mips64 | mips64el \
-	| mips64octeon | mips64octeonel \
-	| mips64orion | mips64orionel \
-	| mips64r5900 | mips64r5900el \
-	| mips64vr | mips64vrel \
-	| mips64vr4100 | mips64vr4100el \
-	| mips64vr4300 | mips64vr4300el \
-	| mips64vr5000 | mips64vr5000el \
-	| mips64vr5900 | mips64vr5900el \
-	| mipsisa32 | mipsisa32el \
-	| mipsisa32r2 | mipsisa32r2el \
-	| mipsisa64 | mipsisa64el \
-	| mipsisa64r2 | mipsisa64r2el \
-	| mipsisa64sb1 | mipsisa64sb1el \
-	| mipsisa64sr71k | mipsisa64sr71kel \
-	| mipstx39 | mipstx39el \
-	| mn10200 | mn10300 \
-	| mt \
-	| msp430 \
-	| nios | nios2 \
-	| ns16k | ns32k \
-	| or32 \
-	| pdp10 | pdp11 | pj | pjl \
-	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
-	| pyramid \
-	| score \
-	| sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
-	| sh64 | sh64le \
-	| sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
-	| sparcv8 | sparcv9 | sparcv9b | sparcv9v \
-	| spu | strongarm \
-	| tahoe | thumb | tic4x | tic80 | tron \
-	| v850 | v850e \
-	| we32k \
-	| x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \
-	| z8k | z80)
-		basic_machine=$basic_machine-unknown
-		;;
-	m6811 | m68hc11 | m6812 | m68hc12)
-		# Motorola 68HC11/12.
-		basic_machine=$basic_machine-unknown
-		os=-none
-		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
-		;;
-	ms1)
-		basic_machine=mt-unknown
-		;;
-
-	# We use `pc' rather than `unknown'
-	# because (1) that's what they normally are, and
-	# (2) the word "unknown" tends to confuse beginning users.
-	i*86 | x86_64)
-	  basic_machine=$basic_machine-pc
-	  ;;
-	# Object if more than one company name word.
-	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-	# Recognize the basic CPU types with company name.
-	580-* \
-	| a29k-* \
-	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
-	| alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
-	| alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
-	| arm-*  | armbe-* | armle-* | armeb-* | armv*-* \
-	| avr-* | avr32-* \
-	| bfin-* | bs2000-* \
-	| c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
-	| clipper-* | craynv-* | cydra-* \
-	| d10v-* | d30v-* | dlx-* \
-	| elxsi-* \
-	| f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
-	| h8300-* | h8500-* \
-	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
-	| ip2k-* | iq2000-* \
-	| lm32-* \
-	| m32c-* | m32r-* | m32rle-* \
-	| m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
-	| m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
-	| mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
-	| mips16-* \
-	| mips64-* | mips64el-* \
-	| mips64octeon-* | mips64octeonel-* \
-	| mips64orion-* | mips64orionel-* \
-	| mips64r5900-* | mips64r5900el-* \
-	| mips64vr-* | mips64vrel-* \
-	| mips64vr4100-* | mips64vr4100el-* \
-	| mips64vr4300-* | mips64vr4300el-* \
-	| mips64vr5000-* | mips64vr5000el-* \
-	| mips64vr5900-* | mips64vr5900el-* \
-	| mipsisa32-* | mipsisa32el-* \
-	| mipsisa32r2-* | mipsisa32r2el-* \
-	| mipsisa64-* | mipsisa64el-* \
-	| mipsisa64r2-* | mipsisa64r2el-* \
-	| mipsisa64sb1-* | mipsisa64sb1el-* \
-	| mipsisa64sr71k-* | mipsisa64sr71kel-* \
-	| mipstx39-* | mipstx39el-* \
-	| mmix-* \
-	| mt-* \
-	| msp430-* \
-	| nios-* | nios2-* \
-	| none-* | np1-* | ns16k-* | ns32k-* \
-	| orion-* \
-	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
-	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
-	| pyramid-* \
-	| romp-* | rs6000-* \
-	| sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
-	| shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
-	| sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
-	| sparclite-* \
-	| sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \
-	| tahoe-* | thumb-* \
-	| tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \
-	| tron-* \
-	| v850-* | v850e-* | vax-* \
-	| we32k-* \
-	| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
-	| xstormy16-* | xtensa*-* \
-	| ymp-* \
-	| z8k-* | z80-*)
-		;;
-	# Recognize the basic CPU types without company name, with glob match.
-	xtensa*)
-		basic_machine=$basic_machine-unknown
-		;;
-	# Recognize the various machine names and aliases which stand
-	# for a CPU type and a company and sometimes even an OS.
-	386bsd)
-		basic_machine=i386-unknown
-		os=-bsd
-		;;
-	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
-		basic_machine=m68000-att
-		;;
-	3b*)
-		basic_machine=we32k-att
-		;;
-	a29khif)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-    	abacus)
-		basic_machine=abacus-unknown
-		;;
-	adobe68k)
-		basic_machine=m68010-adobe
-		os=-scout
-		;;
-	alliant | fx80)
-		basic_machine=fx80-alliant
-		;;
-	altos | altos3068)
-		basic_machine=m68k-altos
-		;;
-	am29k)
-		basic_machine=a29k-none
-		os=-bsd
-		;;
-	amd64)
-		basic_machine=x86_64-pc
-		;;
-	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	amdahl)
-		basic_machine=580-amdahl
-		os=-sysv
-		;;
-	amiga | amiga-*)
-		basic_machine=m68k-unknown
-		;;
-	amigaos | amigados)
-		basic_machine=m68k-unknown
-		os=-amigaos
-		;;
-	amigaunix | amix)
-		basic_machine=m68k-unknown
-		os=-sysv4
-		;;
-	apollo68)
-		basic_machine=m68k-apollo
-		os=-sysv
-		;;
-	apollo68bsd)
-		basic_machine=m68k-apollo
-		os=-bsd
-		;;
-	aros)
-		basic_machine=i386-pc
-		os=-aros
-		;;
-	aux)
-		basic_machine=m68k-apple
-		os=-aux
-		;;
-	balance)
-		basic_machine=ns32k-sequent
-		os=-dynix
-		;;
-	blackfin)
-		basic_machine=bfin-unknown
-		os=-linux
-		;;
-	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	c90)
-		basic_machine=c90-cray
-		os=-unicos
-		;;
-        cegcc)
-		basic_machine=arm-unknown
-		os=-cegcc
-		;;
-	convex-c1)
-		basic_machine=c1-convex
-		os=-bsd
-		;;
-	convex-c2)
-		basic_machine=c2-convex
-		os=-bsd
-		;;
-	convex-c32)
-		basic_machine=c32-convex
-		os=-bsd
-		;;
-	convex-c34)
-		basic_machine=c34-convex
-		os=-bsd
-		;;
-	convex-c38)
-		basic_machine=c38-convex
-		os=-bsd
-		;;
-	cray | j90)
-		basic_machine=j90-cray
-		os=-unicos
-		;;
-	craynv)
-		basic_machine=craynv-cray
-		os=-unicosmp
-		;;
-	cr16)
-		basic_machine=cr16-unknown
-		os=-elf
-		;;
-	crds | unos)
-		basic_machine=m68k-crds
-		;;
-	crisv32 | crisv32-* | etraxfs*)
-		basic_machine=crisv32-axis
-		;;
-	cris | cris-* | etrax*)
-		basic_machine=cris-axis
-		;;
-	crx)
-		basic_machine=crx-unknown
-		os=-elf
-		;;
-	da30 | da30-*)
-		basic_machine=m68k-da30
-		;;
-	decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
-		basic_machine=mips-dec
-		;;
-	decsystem10* | dec10*)
-		basic_machine=pdp10-dec
-		os=-tops10
-		;;
-	decsystem20* | dec20*)
-		basic_machine=pdp10-dec
-		os=-tops20
-		;;
-	delta | 3300 | motorola-3300 | motorola-delta \
-	      | 3300-motorola | delta-motorola)
-		basic_machine=m68k-motorola
-		;;
-	delta88)
-		basic_machine=m88k-motorola
-		os=-sysv3
-		;;
-	dicos)
-		basic_machine=i686-pc
-		os=-dicos
-		;;
-	djgpp)
-		basic_machine=i586-pc
-		os=-msdosdjgpp
-		;;
-	dpx20 | dpx20-*)
-		basic_machine=rs6000-bull
-		os=-bosx
-		;;
-	dpx2* | dpx2*-bull)
-		basic_machine=m68k-bull
-		os=-sysv3
-		;;
-	ebmon29k)
-		basic_machine=a29k-amd
-		os=-ebmon
-		;;
-	elxsi)
-		basic_machine=elxsi-elxsi
-		os=-bsd
-		;;
-	encore | umax | mmax)
-		basic_machine=ns32k-encore
-		;;
-	es1800 | OSE68k | ose68k | ose | OSE)
-		basic_machine=m68k-ericsson
-		os=-ose
-		;;
-	fx2800)
-		basic_machine=i860-alliant
-		;;
-	genix)
-		basic_machine=ns32k-ns
-		;;
-	gmicro)
-		basic_machine=tron-gmicro
-		os=-sysv
-		;;
-	go32)
-		basic_machine=i386-pc
-		os=-go32
-		;;
-	h3050r* | hiux*)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	h8300hms)
-		basic_machine=h8300-hitachi
-		os=-hms
-		;;
-	h8300xray)
-		basic_machine=h8300-hitachi
-		os=-xray
-		;;
-	h8500hms)
-		basic_machine=h8500-hitachi
-		os=-hms
-		;;
-	harris)
-		basic_machine=m88k-harris
-		os=-sysv3
-		;;
-	hp300-*)
-		basic_machine=m68k-hp
-		;;
-	hp300bsd)
-		basic_machine=m68k-hp
-		os=-bsd
-		;;
-	hp300hpux)
-		basic_machine=m68k-hp
-		os=-hpux
-		;;
-	hp3k9[0-9][0-9] | hp9[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k2[0-9][0-9] | hp9k31[0-9])
-		basic_machine=m68000-hp
-		;;
-	hp9k3[2-9][0-9])
-		basic_machine=m68k-hp
-		;;
-	hp9k6[0-9][0-9] | hp6[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hp9k7[0-79][0-9] | hp7[0-79][0-9])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k78[0-9] | hp78[0-9])
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
-		# FIXME: really hppa2.0-hp
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][13679] | hp8[0-9][13679])
-		basic_machine=hppa1.1-hp
-		;;
-	hp9k8[0-9][0-9] | hp8[0-9][0-9])
-		basic_machine=hppa1.0-hp
-		;;
-	hppa-next)
-		os=-nextstep3
-		;;
-	hppaosf)
-		basic_machine=hppa1.1-hp
-		os=-osf
-		;;
-	hppro)
-		basic_machine=hppa1.1-hp
-		os=-proelf
-		;;
-	i370-ibm* | ibm*)
-		basic_machine=i370-ibm
-		;;
-# I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv32
-		;;
-	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv4
-		;;
-	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-sysv
-		;;
-	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
-		os=-solaris2
-		;;
-	i386mach)
-		basic_machine=i386-mach
-		os=-mach
-		;;
-	i386-vsta | vsta)
-		basic_machine=i386-unknown
-		os=-vsta
-		;;
-	iris | iris4d)
-		basic_machine=mips-sgi
-		case $os in
-		    -irix*)
-			;;
-		    *)
-			os=-irix4
-			;;
-		esac
-		;;
-	isi68 | isi)
-		basic_machine=m68k-isi
-		os=-sysv
-		;;
-	m68knommu)
-		basic_machine=m68k-unknown
-		os=-linux
-		;;
-	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
-	magnum | m3230)
-		basic_machine=mips-mips
-		os=-sysv
-		;;
-	merlin)
-		basic_machine=ns32k-utek
-		os=-sysv
-		;;
-	mingw32)
-		basic_machine=i386-pc
-		os=-mingw32
-		;;
-	mingw32ce)
-		basic_machine=arm-unknown
-		os=-mingw32ce
-		;;
-	miniframe)
-		basic_machine=m68000-convergent
-		;;
-	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
-		basic_machine=m68k-atari
-		os=-mint
-		;;
-	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
-		;;
-	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
-		;;
-	monitor)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	morphos)
-		basic_machine=powerpc-unknown
-		os=-morphos
-		;;
-	msdos)
-		basic_machine=i386-pc
-		os=-msdos
-		;;
-	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
-		;;
-	mvs)
-		basic_machine=i370-ibm
-		os=-mvs
-		;;
-	ncr3000)
-		basic_machine=i486-ncr
-		os=-sysv4
-		;;
-	netbsd386)
-		basic_machine=i386-unknown
-		os=-netbsd
-		;;
-	netwinder)
-		basic_machine=armv4l-rebel
-		os=-linux
-		;;
-	news | news700 | news800 | news900)
-		basic_machine=m68k-sony
-		os=-newsos
-		;;
-	news1000)
-		basic_machine=m68030-sony
-		os=-newsos
-		;;
-	news-3600 | risc-news)
-		basic_machine=mips-sony
-		os=-newsos
-		;;
-	necv70)
-		basic_machine=v70-nec
-		os=-sysv
-		;;
-	next | m*-next )
-		basic_machine=m68k-next
-		case $os in
-		    -nextstep* )
-			;;
-		    -ns2*)
-		      os=-nextstep2
-			;;
-		    *)
-		      os=-nextstep3
-			;;
-		esac
-		;;
-	nh3000)
-		basic_machine=m68k-harris
-		os=-cxux
-		;;
-	nh[45]000)
-		basic_machine=m88k-harris
-		os=-cxux
-		;;
-	nindy960)
-		basic_machine=i960-intel
-		os=-nindy
-		;;
-	mon960)
-		basic_machine=i960-intel
-		os=-mon960
-		;;
-	nonstopux)
-		basic_machine=mips-compaq
-		os=-nonstopux
-		;;
-	np1)
-		basic_machine=np1-gould
-		;;
-	nsr-tandem)
-		basic_machine=nsr-tandem
-		;;
-	op50n-* | op60c-*)
-		basic_machine=hppa1.1-oki
-		os=-proelf
-		;;
-	openrisc | openrisc-*)
-		basic_machine=or32-unknown
-		;;
-	os400)
-		basic_machine=powerpc-ibm
-		os=-os400
-		;;
-	OSE68000 | ose68000)
-		basic_machine=m68000-ericsson
-		os=-ose
-		;;
-	os68k)
-		basic_machine=m68k-none
-		os=-os68k
-		;;
-	pa-hitachi)
-		basic_machine=hppa1.1-hitachi
-		os=-hiuxwe2
-		;;
-	paragon)
-		basic_machine=i860-intel
-		os=-osf
-		;;
-	parisc)
-		basic_machine=hppa-unknown
-		os=-linux
-		;;
-	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
-		os=-linux
-		;;
-	pbd)
-		basic_machine=sparc-tti
-		;;
-	pbb)
-		basic_machine=m68k-tti
-		;;
-	pc532 | pc532-*)
-		basic_machine=ns32k-pc532
-		;;
-	pc98)
-		basic_machine=i386-pc
-		;;
-	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium | p5 | k5 | k6 | nexgen | viac3)
-		basic_machine=i586-pc
-		;;
-	pentiumpro | p6 | 6x86 | athlon | athlon_*)
-		basic_machine=i686-pc
-		;;
-	pentiumii | pentium2 | pentiumiii | pentium3)
-		basic_machine=i686-pc
-		;;
-	pentium4)
-		basic_machine=i786-pc
-		;;
-	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	pn)
-		basic_machine=pn-gould
-		;;
-	power)	basic_machine=power-ibm
-		;;
-	ppc)	basic_machine=powerpc-unknown
-		;;
-	ppc-*)	basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppcle | powerpclittle | ppc-le | powerpc-little)
-		basic_machine=powerpcle-unknown
-		;;
-	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64)	basic_machine=powerpc64-unknown
-		;;
-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
-		basic_machine=powerpc64le-unknown
-		;;
-	ppc64le-* | powerpc64little-*)
-		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
-		;;
-	ps2)
-		basic_machine=i386-ibm
-		;;
-	pw32)
-		basic_machine=i586-unknown
-		os=-pw32
-		;;
-	rdos)
-		basic_machine=i386-pc
-		os=-rdos
-		;;
-	rom68k)
-		basic_machine=m68k-rom68k
-		os=-coff
-		;;
-	rm[46]00)
-		basic_machine=mips-siemens
-		;;
-	rtpc | rtpc-*)
-		basic_machine=romp-ibm
-		;;
-	s390 | s390-*)
-		basic_machine=s390-ibm
-		;;
-	s390x | s390x-*)
-		basic_machine=s390x-ibm
-		;;
-	sa29200)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	sb1)
-		basic_machine=mipsisa64sb1-unknown
-		;;
-	sb1el)
-		basic_machine=mipsisa64sb1el-unknown
-		;;
-	sde)
-		basic_machine=mipsisa32-sde
-		os=-elf
-		;;
-	sei)
-		basic_machine=mips-sei
-		os=-seiux
-		;;
-	sequent)
-		basic_machine=i386-sequent
-		;;
-	sh)
-		basic_machine=sh-hitachi
-		os=-hms
-		;;
-	sh5el)
-		basic_machine=sh5le-unknown
-		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparclite-wrs | simso-wrs)
-		basic_machine=sparclite-wrs
-		os=-vxworks
-		;;
-	sps7)
-		basic_machine=m68k-bull
-		os=-sysv2
-		;;
-	spur)
-		basic_machine=spur-unknown
-		;;
-	st2000)
-		basic_machine=m68k-tandem
-		;;
-	stratus)
-		basic_machine=i860-stratus
-		os=-sysv4
-		;;
-	sun2)
-		basic_machine=m68000-sun
-		;;
-	sun2os3)
-		basic_machine=m68000-sun
-		os=-sunos3
-		;;
-	sun2os4)
-		basic_machine=m68000-sun
-		os=-sunos4
-		;;
-	sun3os3)
-		basic_machine=m68k-sun
-		os=-sunos3
-		;;
-	sun3os4)
-		basic_machine=m68k-sun
-		os=-sunos4
-		;;
-	sun4os3)
-		basic_machine=sparc-sun
-		os=-sunos3
-		;;
-	sun4os4)
-		basic_machine=sparc-sun
-		os=-sunos4
-		;;
-	sun4sol2)
-		basic_machine=sparc-sun
-		os=-solaris2
-		;;
-	sun3 | sun3-*)
-		basic_machine=m68k-sun
-		;;
-	sun4)
-		basic_machine=sparc-sun
-		;;
-	sun386 | sun386i | roadrunner)
-		basic_machine=i386-sun
-		;;
-	sv1)
-		basic_machine=sv1-cray
-		os=-unicos
-		;;
-	symmetry)
-		basic_machine=i386-sequent
-		os=-dynix
-		;;
-	t3e)
-		basic_machine=alphaev5-cray
-		os=-unicos
-		;;
-	t90)
-		basic_machine=t90-cray
-		os=-unicos
-		;;
-	tic54x | c54x*)
-		basic_machine=tic54x-unknown
-		os=-coff
-		;;
-	tic55x | c55x*)
-		basic_machine=tic55x-unknown
-		os=-coff
-		;;
-	tic6x | c6x*)
-		basic_machine=tic6x-unknown
-		os=-coff
-		;;
-	tile*)
-		basic_machine=tile-unknown
-		os=-linux-gnu
-		;;
-	tx39)
-		basic_machine=mipstx39-unknown
-		;;
-	tx39el)
-		basic_machine=mipstx39el-unknown
-		;;
-	toad1)
-		basic_machine=pdp10-xkl
-		os=-tops20
-		;;
-	tower | tower-32)
-		basic_machine=m68k-ncr
-		;;
-	tpf)
-		basic_machine=s390x-ibm
-		os=-tpf
-		;;
-	udi29k)
-		basic_machine=a29k-amd
-		os=-udi
-		;;
-	ultra3)
-		basic_machine=a29k-nyu
-		os=-sym1
-		;;
-	v810 | necv810)
-		basic_machine=v810-nec
-		os=-none
-		;;
-	vaxv)
-		basic_machine=vax-dec
-		os=-sysv
-		;;
-	vms)
-		basic_machine=vax-dec
-		os=-vms
-		;;
-	vpp*|vx|vx-*)
-		basic_machine=f301-fujitsu
-		;;
-	vxworks960)
-		basic_machine=i960-wrs
-		os=-vxworks
-		;;
-	vxworks68)
-		basic_machine=m68k-wrs
-		os=-vxworks
-		;;
-	vxworks29k)
-		basic_machine=a29k-wrs
-		os=-vxworks
-		;;
-	w65*)
-		basic_machine=w65-wdc
-		os=-none
-		;;
-	w89k-*)
-		basic_machine=hppa1.1-winbond
-		os=-proelf
-		;;
-	xbox)
-		basic_machine=i686-pc
-		os=-mingw32
-		;;
-	xps | xps100)
-		basic_machine=xps100-honeywell
-		;;
-	ymp)
-		basic_machine=ymp-cray
-		os=-unicos
-		;;
-	z8k-*-coff)
-		basic_machine=z8k-unknown
-		os=-sim
-		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
-	none)
-		basic_machine=none-none
-		os=-none
-		;;
-
-# Here we handle the default manufacturer of certain CPU types.  It is in
-# some cases the only manufacturer, in others, it is the most popular.
-	w89k)
-		basic_machine=hppa1.1-winbond
-		;;
-	op50n)
-		basic_machine=hppa1.1-oki
-		;;
-	op60c)
-		basic_machine=hppa1.1-oki
-		;;
-	romp)
-		basic_machine=romp-ibm
-		;;
-	mmix)
-		basic_machine=mmix-knuth
-		;;
-	rs6000)
-		basic_machine=rs6000-ibm
-		;;
-	vax)
-		basic_machine=vax-dec
-		;;
-	pdp10)
-		# there are many clones, so DEC is not a safe bet
-		basic_machine=pdp10-unknown
-		;;
-	pdp11)
-		basic_machine=pdp11-dec
-		;;
-	we32k)
-		basic_machine=we32k-att
-		;;
-	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
-		basic_machine=sh-unknown
-		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-		basic_machine=sparc-sun
-		;;
-	cydra)
-		basic_machine=cydra-cydrome
-		;;
-	orion)
-		basic_machine=orion-highlevel
-		;;
-	orion105)
-		basic_machine=clipper-highlevel
-		;;
-	mac | mpw | mac-mpw)
-		basic_machine=m68k-apple
-		;;
-	pmac | pmac-mpw)
-		basic_machine=powerpc-apple
-		;;
-	*-unknown)
-		# Make sure to match an already-canonicalized machine name.
-		;;
-	*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
-		exit 1
-		;;
-esac
-
-# Here we canonicalize certain aliases for manufacturers.
-case $basic_machine in
-	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
-		;;
-	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
-		;;
-	*)
-		;;
-esac
-
-# Decode manufacturer-specific aliases for certain operating systems.
-
-if [ x"$os" != x"" ]
-then
-case $os in
-        # First match some system type aliases
-        # that might get confused with valid system types.
-	# -solaris* is a basic system type, with this one exception.
-	-solaris1 | -solaris1.*)
-		os=`echo $os | sed -e 's|solaris1|sunos4|'`
-		;;
-	-solaris)
-		os=-solaris2
-		;;
-	-svr4*)
-		os=-sysv4
-		;;
-	-unixware*)
-		os=-sysv4.2uw
-		;;
-	-gnu/linux*)
-		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
-		;;
-	# First accept the basic system types.
-	# The portable systems comes first.
-	# Each alternative MUST END IN A *, to match a version number.
-	# -sysv* is not here because it comes later, after sysvr4.
-	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
-	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
-	      | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
-	      | -kopensolaris* \
-	      | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
-	      | -aos* | -aros* \
-	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
-	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
-	      | -openbsd* | -solidbsd* \
-	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
-	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
-	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
-	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
-	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \
-	      | -uxpv* | -beos* | -mpeix* | -udk* \
-	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
-	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
-	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
-	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
-	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
-	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops*)
-	# Remember, each alternative MUST END IN *, to match a version number.
-		;;
-	-qnx*)
-		case $basic_machine in
-		    x86-* | i*86-*)
-			;;
-		    *)
-			os=-nto$os
-			;;
-		esac
-		;;
-	-nto-qnx*)
-		;;
-	-nto*)
-		os=`echo $os | sed -e 's|nto|nto-qnx|'`
-		;;
-	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
-	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
-		;;
-	-mac*)
-		os=`echo $os | sed -e 's|mac|macos|'`
-		;;
-	-linux-dietlibc)
-		os=-linux-dietlibc
-		;;
-	-linux*)
-		os=`echo $os | sed -e 's|linux|linux-gnu|'`
-		;;
-	-sunos5*)
-		os=`echo $os | sed -e 's|sunos5|solaris2|'`
-		;;
-	-sunos6*)
-		os=`echo $os | sed -e 's|sunos6|solaris3|'`
-		;;
-	-opened*)
-		os=-openedition
-		;;
-        -os400*)
-		os=-os400
-		;;
-	-wince*)
-		os=-wince
-		;;
-	-osfrose*)
-		os=-osfrose
-		;;
-	-osf*)
-		os=-osf
-		;;
-	-utek*)
-		os=-bsd
-		;;
-	-dynix*)
-		os=-bsd
-		;;
-	-acis*)
-		os=-aos
-		;;
-	-atheos*)
-		os=-atheos
-		;;
-	-syllable*)
-		os=-syllable
-		;;
-	-386bsd)
-		os=-bsd
-		;;
-	-ctix* | -uts*)
-		os=-sysv
-		;;
-	-nova*)
-		os=-rtmk-nova
-		;;
-	-ns2 )
-		os=-nextstep2
-		;;
-	-nsk*)
-		os=-nsk
-		;;
-	# Preserve the version number of sinix5.
-	-sinix5.*)
-		os=`echo $os | sed -e 's|sinix|sysv|'`
-		;;
-	-sinix*)
-		os=-sysv4
-		;;
-        -tpf*)
-		os=-tpf
-		;;
-	-triton*)
-		os=-sysv3
-		;;
-	-oss*)
-		os=-sysv3
-		;;
-	-svr4)
-		os=-sysv4
-		;;
-	-svr3)
-		os=-sysv3
-		;;
-	-sysvr4)
-		os=-sysv4
-		;;
-	# This must come after -sysvr4.
-	-sysv*)
-		;;
-	-ose*)
-		os=-ose
-		;;
-	-es1800*)
-		os=-ose
-		;;
-	-xenix)
-		os=-xenix
-		;;
-	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-		os=-mint
-		;;
-	-aros*)
-		os=-aros
-		;;
-	-kaos*)
-		os=-kaos
-		;;
-	-zvmoe)
-		os=-zvmoe
-		;;
-	-dicos*)
-		os=-dicos
-		;;
-	-none)
-		;;
-	*)
-		# Get rid of the `-' at the beginning of $os.
-		os=`echo $os | sed 's/[^-]*-//'`
-		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
-		exit 1
-		;;
-esac
-else
-
-# Here we handle the default operating systems that come with various machines.
-# The value should be what the vendor currently ships out the door with their
-# machine or put another way, the most popular os provided with the machine.
-
-# Note that if you're going to try to match "-MANUFACTURER" here (say,
-# "-sun"), then you have to tell the case statement up towards the top
-# that MANUFACTURER isn't an operating system.  Otherwise, code above
-# will signal an error saying that MANUFACTURER isn't an operating
-# system, and we'll never get to this point.
-
-case $basic_machine in
-        score-*)
-		os=-elf
-		;;
-        spu-*)
-		os=-elf
-		;;
-	*-acorn)
-		os=-riscix1.2
-		;;
-	arm*-rebel)
-		os=-linux
-		;;
-	arm*-semi)
-		os=-aout
-		;;
-        c4x-* | tic4x-*)
-        	os=-coff
-		;;
-	# This must come before the *-dec entry.
-	pdp10-*)
-		os=-tops20
-		;;
-	pdp11-*)
-		os=-none
-		;;
-	*-dec | vax-*)
-		os=-ultrix4.2
-		;;
-	m68*-apollo)
-		os=-domain
-		;;
-	i386-sun)
-		os=-sunos4.0.2
-		;;
-	m68000-sun)
-		os=-sunos3
-		# This also exists in the configure program, but was not the
-		# default.
-		# os=-sunos4
-		;;
-	m68*-cisco)
-		os=-aout
-		;;
-        mep-*)
-		os=-elf
-		;;
-	mips*-cisco)
-		os=-elf
-		;;
-	mips*-*)
-		os=-elf
-		;;
-	or32-*)
-		os=-coff
-		;;
-	*-tti)	# must be before sparc entry or we get the wrong os.
-		os=-sysv3
-		;;
-	sparc-* | *-sun)
-		os=-sunos4.1.1
-		;;
-	*-be)
-		os=-beos
-		;;
-	*-haiku)
-		os=-haiku
-		;;
-	*-ibm)
-		os=-aix
-		;;
-    	*-knuth)
-		os=-mmixware
-		;;
-	*-wec)
-		os=-proelf
-		;;
-	*-winbond)
-		os=-proelf
-		;;
-	*-oki)
-		os=-proelf
-		;;
-	*-hp)
-		os=-hpux
-		;;
-	*-hitachi)
-		os=-hiux
-		;;
-	i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
-		os=-sysv
-		;;
-	*-cbm)
-		os=-amigaos
-		;;
-	*-dg)
-		os=-dgux
-		;;
-	*-dolphin)
-		os=-sysv3
-		;;
-	m68k-ccur)
-		os=-rtu
-		;;
-	m88k-omron*)
-		os=-luna
-		;;
-	*-next )
-		os=-nextstep
-		;;
-	*-sequent)
-		os=-ptx
-		;;
-	*-crds)
-		os=-unos
-		;;
-	*-ns)
-		os=-genix
-		;;
-	i370-*)
-		os=-mvs
-		;;
-	*-next)
-		os=-nextstep3
-		;;
-	*-gould)
-		os=-sysv
-		;;
-	*-highlevel)
-		os=-bsd
-		;;
-	*-encore)
-		os=-bsd
-		;;
-	*-sgi)
-		os=-irix
-		;;
-	*-siemens)
-		os=-sysv4
-		;;
-	*-masscomp)
-		os=-rtu
-		;;
-	f30[01]-fujitsu | f700-fujitsu)
-		os=-uxpv
-		;;
-	*-rom68k)
-		os=-coff
-		;;
-	*-*bug)
-		os=-coff
-		;;
-	*-apple)
-		os=-macos
-		;;
-	*-atari*)
-		os=-mint
-		;;
-	*)
-		os=-none
-		;;
-esac
-fi
-
-# Here we handle the case where we know the os, and the CPU type, but not the
-# manufacturer.  We pick the logical manufacturer.
-vendor=unknown
-case $basic_machine in
-	*-unknown)
-		case $os in
-			-riscix*)
-				vendor=acorn
-				;;
-			-sunos*)
-				vendor=sun
-				;;
-			-aix*)
-				vendor=ibm
-				;;
-			-beos*)
-				vendor=be
-				;;
-			-hpux*)
-				vendor=hp
-				;;
-			-mpeix*)
-				vendor=hp
-				;;
-			-hiux*)
-				vendor=hitachi
-				;;
-			-unos*)
-				vendor=crds
-				;;
-			-dgux*)
-				vendor=dg
-				;;
-			-luna*)
-				vendor=omron
-				;;
-			-genix*)
-				vendor=ns
-				;;
-			-mvs* | -opened*)
-				vendor=ibm
-				;;
-			-os400*)
-				vendor=ibm
-				;;
-			-ptx*)
-				vendor=sequent
-				;;
-			-tpf*)
-				vendor=ibm
-				;;
-			-vxsim* | -vxworks* | -windiss*)
-				vendor=wrs
-				;;
-			-aux*)
-				vendor=apple
-				;;
-			-hms*)
-				vendor=hitachi
-				;;
-			-mpw* | -macos*)
-				vendor=apple
-				;;
-			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
-				vendor=atari
-				;;
-			-vos*)
-				vendor=stratus
-				;;
-		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
-		;;
-esac
-
-echo $basic_machine$os
-exit
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "timestamp='"
-# time-stamp-format: "%:y-%02m-%02d"
-# time-stamp-end: "'"
-# End:
--- a/diff-template	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-#!/bin/sh
-#
-# To apply this patch, cd to the top level Octave source directory and
-# run this file through /bin/sh.  It will first remove any files that
-# have been deleted from the source distribution since the last
-# release and then update the sources with patch(1).
-#
-# Diffs for updating *.ps, *.dvi, and *.info* files are not included
-# because they can be recreated from the Texinfo files using TeX and
-# makeinfo.
-#
-# Diffs for updating parse.cc and y.tab.h are not included because
-# they can be recreated from the file parse.y using bison.
-#
-# Diffs for updating lex.cc are not included because it can be
-# recreated from lex.l using flex.
-#
-# Diffs for updating the configure script are not included because
-# it can be recreated from configure.in using autoconf.
-#
-# John W. Eaton
-# jwe@octave.org
-
-if test -f src/octave.cc ; then
-  true
-else
-  echo '***********************************************************' 1>&2
-  echo 'You must run this script in the top-level octave directory!' 1>&2
-  echo '***********************************************************' 1>&2
-  exit 1
-fi
-
-echo 'removing the bsd-math directory'
-rm -rf bsd-math
-
-echo 'creating libcruft/slatec-fn directory'
-mkdir libcruft/slatec-fn
-
-echo 'removing old test files'
-rm -f test/octave.test/index.exp
-rm -f test/octave.test/prefer.exp
-rm -f test/octave.test/zero-one.exp
-
-echo 'creating directories for new test files'
-mkdir test/octave.test/index/dfi-f
-mkdir test/octave.test/index/dfi-t
-mkdir test/octave.test/prefer
-mkdir test/octave.test/zero-one/fff
-mkdir test/octave.test/zero-one/fft
-mkdir test/octave.test/zero-one/ftf
-mkdir test/octave.test/zero-one/tff
-mkdir test/octave.test/zero-one/ftt
-mkdir test/octave.test/zero-one/tft
-mkdir test/octave.test/zero-one/ttf
-mkdir test/octave.test/zero-one/ttt
-
-echo 'patching existing files'
-patch -p1 << \PATCH_EOF
-PATCH_EOF
--- a/doc/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 ## Avoid making multiple subdirs in parallel which can lead 
 ## to a confusing error message stream
--- a/doc/faq/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/faq/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 ## Automake generated rules for documentation are not parallel-safe.
 ## Restrict current directory to run serially
--- a/doc/icons/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/icons/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 IMAGE_FILES = \
   octave-logo.ico \
--- a/doc/interpreter/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/interpreter/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 ## Automake generated rules for documentation are not parallel-safe.
 ## Restrict current directory to run serially
--- a/doc/interpreter/config-images.sh	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/interpreter/config-images.sh	Fri Jun 10 14:35:42 2011 -0400
@@ -10,8 +10,10 @@
   top_srcdir="../.."
 fi
 
+move_if_change="$top_srcdir/build-aux/move-if-change"
+
 interp_dir=$top_srcdir/doc/interpreter
 
 $AWK -f $interp_dir/images.awk < $interp_dir/images > $interp_dir/images.mk-t
 
-$top_srcdir/move-if-change $interp_dir/images.mk-t $interp_dir/images.mk
+$move_if_change $interp_dir/images.mk-t $interp_dir/images.mk
--- a/doc/liboctave/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/liboctave/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -19,7 +19,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 ## Automake generated rules for documentation are not parallel-safe.
 ## Restrict current directory to run serially
--- a/doc/refcard/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/doc/refcard/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 TEX = \
   refcard.tex \
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/CHECKLIST	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,18 @@
+Things to do before making a release:
+
+  * Ask testers for the type(s) of machines they are using.
+
+  * Update the version number in src/version.h.
+
+  * Update the version number in doc/refcard/refcard.tex.
+
+  * Add a `Version M.N.P released.' line to the ChangeLog.
+
+  * Update the NEWS file.
+
+  * Check the README file.
+
+  * Run autoconf, autoheader, and configure before making tar files.
+
+  * Update the NEWS and README.octave files in the anonymous ftp
+    directory.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/HACKING	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,215 @@
+-*- outline -*-
+
+This file attempts to describe the rules to use when hacking Octave.
+DO NOT put this file into the distribution.
+
+* Working from the repository
+
+These notes are intended to help people working on sources checked-out from
+the savannah source code repository.
+These requirements do not apply when building from a distribution
+tarball.
+
+** Requirements
+
+We've opted to keep only the highest-level sources in the repository.
+This eases our maintenance burden, (fewer merges, etc.), but imposes
+more requirements on anyone wishing to build from the just-checked-out
+sources.  For example, you have to use the latest stable versions of
+the maintainer tools we depend upon, including:
+
+  - Autoconf <http://www.gnu.org/software/autoconf/>
+  - Automake <http://www.gnu.org/software/automake/>
+  - Bison <http://www.gnu.org/software/bison/>
+  - Flex <http://www.gnu.org/software/flex/>
+  - Git <http://git-scm.com/>
+  - Gnulib <http://www.gnu.org/software/gnulib/>
+  - GNU Make <http://www.gnu.org/software/make/>
+  - Gzip <http://www.gnu.org/software/gzip/>
+  - Libtool <http://www.gnu.org/software/libtool/>
+  - Mercurial <http://mercurial.selenic.com/>
+  - Perl <http://www.cpan.org/>
+  - Rsync <http://samba.anu.edu.au/rsync/>
+  - Tar <http://www.gnu.org/software/tar/>
+
+Only building the initial full source tree will be a bit painful.
+Later, after synchronizing from the repository, a plain `make' should
+be sufficient.
+
+** First checkout
+
+Obviously, if you are reading these notes, you did manage to check out
+this package from the repository.  For the record, you will find all the
+relevant information on downloading sources at:
+
+  http://www.gnu.org/software/octave/download.html
+
+After checking out Octave, you will need to run the autogen.sh script:
+
+  $ ./autogen.sh
+
+This script will examine the source tree and generate some Makefile
+fragments and then runs the bootstrap script.  The bootstrap script comes
+from gnulib, but is kept in the Octave source archive.  It should be
+updated from the gnulib sources as necssary.  The bootstrap script takes
+care of checking out a copy of gnulib, running the autotools, and
+generating the configure script.
+
+If you have a copy of gnulib in some directory apart from the Octave
+source tree, then pass the name of the directory containing gnulib-tool
+to the bootstrap script using the option: 
+
+  --gnulib-srcdir=DIRNAME
+
+If you have downloaded gnulib directly, DIRNAME will be the directory where
+gnulib was unpacked.  If you have installed gnulib using a package 
+manager, DIRNAME is likely to be /usr/bin or /usr/local/bin(where the
+gnulib-tool script resides).
+
+By using an external gnulib directory, you can share a single gnulib source
+tree among several projects.  Regardless of the location of the gnulib
+sources, the bootstrap script will try to update them if it appears
+that they are checked out using git.  Otherwise, it is your
+responsibility to keep the gnulib sources up to date.  They change
+frequently, so the best way to stay current is probably to use git to
+do the job.
+
+Additional options besides --gnulib-srcdir can be passed to autogen.sh and
+they will be forwarded without modification to the bootstrap script.
+
+Once the autogen.sh and bootstrap scripts complete successfully, you may
+run
+
+  $ ./configure
+  $ make
+  $ make check
+
+At this point, there should be no difference between your local copy,
+and the master copy:
+
+  $ hg diff
+
+should output no difference.
+
+** Coding style
+
+The most important advice is to follow any conventions you detect in the
+file being edited.  In addition, Octave maintainers have written a lot
+on the subject.  See "Appendix C: Tips and Standards" and
+"Appendix D: Contributing Guidelines" in the PDF documentation.
+
+* Bugs and patches
+
+See the file BUGS in this directory for more guidance on reporting bugs
+and preparing patches.
+
+* Code layout
+
+An overview of the directory layout of Octave's source files:
+
+  doc           -- Texinfo documentation for Octave
+
+  examples      -- some example files
+
+  libcruft      -- various numerical libraries (mostly Fortran)
+    amos           * bessel functions
+    blas-xtra      * wrappers for blas functions used in Octave
+    daspk          * large scale differential algebraic equation solver
+    dasrt          * differential algebraic equation solver with root finding
+    dassl          * differential-algebraic system solver
+    fftpack        * subroutines for fast fourier transforms
+    lapack-xtra    * wrappers for lapack functions used in Octave
+    misc           * miscellaneous utilities
+    odepack        * odinary differential equation solver
+    ordered-qz     * code for ordering eigenvalues for QZ factorization
+    quadpack       * subroutines for numerical integration
+    ranlib         * random number generators
+    slatec-err     * slatec error handling library
+    slatec-fn      * various special function subroutines
+
+  liboctave     -- the C++ interfaces to the numerical libraries and
+                   various OS facilities
+
+  scripts       -- functions written in the Octave language
+    audio          * play and record sound files (system dependent)
+    deprecated     * older deprecated functions
+    elfun          * elementary mathematical functions
+    @ftp           * ftp object class
+    general        * utility functions
+    geometry       * geometry algorithms
+    image          * image processing
+    help           * help subsystem functions
+    io             * input/output functions
+    linear-algebra * linear algebra stuff
+    miscellaneous  * stuff that doesn't fit anywhere else
+    optimization   * zero finders and minimizers
+    path           * functions for path manipulation
+    pkg            * the package manager
+    plot           * plotting functions
+    polynomial     * polynomial manipulation
+    set            * set manipulation
+    signal         * signal processing
+    sparse         * sparse matrix support
+    specfun        * special mathematical functions
+    special-matrix * functions for generating special types of matrices
+    startup        * initialization functions
+    statistics     * statistical functions, distributions, and tests
+    strings        * character string manipulation
+    testfun        * unit testing
+    time           * time and date functions
+
+  src           -- the interpreter itself
+
+  test          -- tests for the interpreter
+    test_*.m       * fixed tests for the interpreter
+    fntests.m      * script to run function tests embedded in C++ and .m files
+
+
+----
+John W. Eaton
+jwe@octave.org
+
+
+Last updated: Sat Jan 22 22:00:25 PST 2011
+
+################################################################################
+
+Copyright (C) 2009,2011 John W. Eaton
+
+This file is part of Octave.
+
+Octave is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 3 of the License, or (at
+your option) any later version.
+
+Octave is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with Octave; see the file COPYING.  If not, see
+<http://www.gnu.org/licenses/>.
+
+
+This file was adapted for Octave from the HACKING file that is part of
+GNU Bison, which contained the following Copyright notice:
+
+  Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008, 2009
+  Free Software Foundation, Inc.
+
+  This file is part of GNU Bison.
+
+  This program is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  This program is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with this program.  If not, see <http://www.gnu.org/licenses/>.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.1	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,1602 @@
+Summary of changes for version 1.1.1:
+------------------------------------
+
+  * New built-in variables, default_return_value and
+    define_all_return_values.
+
+    If define_all_return_values is set to "false", Octave does not do
+    anything special for return values that are left undefined, and
+    you will get an error message if you try to use them.  For
+    example, if the function
+
+      function [x, y] = f ()
+        y = 1;
+      endfunction
+
+    is called as
+
+      octave:13> [a, b] = f ()
+
+    Octave will print an error message for the attempt to assign an
+    undefined value to `a'.
+
+    This is incompatible with Matlab, which will define the return
+    variable `x' to be the empty matrix.  To get the Matlab-like
+    behavior, you can set the variable define_all_return_values to
+    "true" (the default is "false") and default_return_value to `[]'
+    (the default).  Then, any return values that remain undefined when
+    the function returns will be initialized to `[]'.
+
+    If the function is called without explicitly asking for an output,
+    it will succeed.  This behavior is compatible and unchanged from
+    previous versions of Octave.
+
+  * New built-in variable suppress_verbose_help_message.  If set to
+    "true", Octave will not add additional help information to the end
+    of the output from the help command and usage messages for
+    built-in commands.  The default value is "false".
+
+  * New built-in variable PS4 is used as the prefix of echoed input
+    (enabled with the --echo-input (-x) option).
+
+  * The function size() now accepts an optional second argument.
+
+  * Output from `save - ...' now goes through the pager.
+
+  * The break statement may also be used to exit a function, for
+    compatibility with Matlab.
+
+  * The directory tree for installing Octave is now closer to
+    conforming with the current GNU standards.
+
+  * More bug fixes.
+
+Summary of changes for version 1.1.0:
+------------------------------------
+
+  * Octave now requires g++ 2.6.3 or later.  This change is necessary
+    to make template instantiations cleaner, and to avoid having to
+    have special cases in the code for earlier versions of gcc.
+
+  * A new data structure type has been added.  The implementation uses
+    an associative array with indices limited to strings, but the
+    syntax is more like C-style structures.  here are some examples of
+    using it.
+
+    Elements of structures can be of any type, including structures:
+
+      octave:1> x.a = 1;
+      octave:2> x.b = [1, 2; 3, 4];
+      octave:3> x.c = "string";
+      octave:4> x
+      x =
+
+      <structure: a b c>
+
+      octave:5> x.a
+      x.a = 1
+      octave:6> x.b
+      x.b =
+
+        1  2
+        3  4
+
+      octave:7> x.c
+      x.c = string
+      octave:8> x.b.d = 3
+      x.b.d = 3
+      octave:9> x.b
+      x.b =
+
+      <structure: d>
+
+      octave:10> x.b.d
+      x.b.d = 3
+
+    Functions can return structures:
+
+      octave:1> a = rand (3) + rand (3) * I;
+      octave:2> function y = f (x)
+      > y.re = real (x);
+      > y.im = imag (x);
+      > endfunction
+      octave:3> f (a)
+      ans =
+
+      <structure: im re>
+
+      octave:4> ans.im
+      ans.im =
+
+        0.093411  0.229690  0.627585
+        0.415128  0.221706  0.850341
+        0.894990  0.343265  0.384018
+
+      octave:5> ans.re
+      ans.re =
+
+        0.56234  0.14797  0.26416
+        0.72120  0.62691  0.20910
+        0.89211  0.25175  0.21081
+
+    Return lists can include structure elements:
+
+      octave:1> [x.u, x.s, x.v] = svd ([1, 2; 3, 4])
+      x.u =
+
+        -0.40455  -0.91451
+        -0.91451   0.40455
+
+      x.s =
+
+        5.46499  0.00000
+        0.00000  0.36597
+
+      x.v =
+
+        -0.57605   0.81742
+        -0.81742  -0.57605
+
+      octave:8> x
+      x =
+
+      <structure: s u v>
+
+    This feature should be considered experimental, but it seems to
+    work OK.  Suggestions for ways to improve it are welcome.
+
+  * Octave now supports a limited form of exception handling modeled
+    after the unwind-protect form of Lisp:
+
+      unwind_protect
+        BODY
+      unwind_protect_cleanup
+        CLEANUP
+      end_unwind_protect
+
+    Where BODY and CLEANUP are both optional and may contain any
+    Octave expressions or commands.  The statements in CLEANUP are
+    guaranteed to be executed regardless of how control exits BODY.
+
+    This is useful to protect temporary changes to global variables
+    from possible errors.  For example, the following code will always
+    restore the original value of the built-in variable
+    do_fortran_indexing even if an error occurs while performing the
+    indexing operation.
+
+      save_do_fortran_indexing = do_fortran_indexing;
+      unwind_protect
+        do_fortran_indexing = "true";
+        elt = a (idx)
+      unwind_protect_cleanup
+        do_fortran_indexing = save_do_fortran_indexing;
+      end_unwind_protect
+
+    Without unwind_protect, the value of do_fortran_indexing would not
+    be restored if an error occurs while performing the indexing
+    operation because evaluation would stop at the point of the error
+    and the statement to restore the value would not be executed.
+
+  * Recursive directory searching has been implemented using Karl
+    Berry's kpathsea library.  Directories below path elements that
+    end in // are searched recursively for .m files.
+
+  * Octave now waits for additional input when a pair of parentheses
+    is `open' instead of giving an error.  This allows one to write
+    statements like this
+
+      if (big_long_variable_name == other_long_variable_name
+          || not_so_short_variable_name > 4
+          && y > x)
+        some (code, here);
+
+    without having to clutter up the if statement with continuation
+    characters.
+
+  * Continuation lines are now allowed in string constants and are
+    handled correctly inside matrix constants.
+
+  * Both `...{whitespace}\n' and `\{whitespace}\n' can be used to
+    introduce continuation lines, where {whitespace} may include
+    spaces, tabs and comments.
+
+  * The script directory has been split up by topic.
+
+  * Dynamic linking mostly works with dld.  The following limitations
+    are known problems:
+
+    -- Clearing dynamically linked functions doesn't work.
+
+    -- Dynamic linking only works with dld, which has not been ported
+       to very many systems yet.
+
+    -- Configuring with --enable-lite-kernel seems to mostly work to
+       make nonessential built-in functions dynamically loaded, but
+       there also seem to be some problems.  For example, fsolve seems
+       to always return info == 3.  This is difficult to debug since
+       GDB doesn't appear to allow breakpoints to be set inside
+       dynamically loaded functions.
+
+    -- Octave uses a lot of memory if the dynamically linked functions
+       are compiled with -g.  This appears to be a limitation with
+       dld, and can be avoided by not using -g to compile functions
+       that will be linked dynamically.
+
+  * fft2 and ifft2 are now built-in functions.
+
+  * The `&&' and `||' logical operators are now evaluated in a
+    short-circuit fashion and work differently than the element by
+    element operators `&' and `|'.  See the Octave manual for more
+    details.
+
+  * Expressions like 1./m are now parsed as 1 ./ m, not 1. / m.
+
+  * The replot command now takes the same arguments as gplot or
+    gsplot (except ranges, which cannot be respecified with replot
+    (yet)) so you can add additional lines to existing plots.
+
+  * The hold command has been implemented.
+
+  * New function `clearplot' clears the plot window.  The name `clg'
+    is aliased to `clearplot' for compatibility with Matlab.
+
+  * The commands `gplot clear' and `gsplot clear' are equivalent to
+    `clearplot'.  (Previously, `gplot clear' would evaluate `clear' as
+    an ordinary expression and clear all the visible variables.)
+
+  * The Matlab-style plotting commands have been improved.  They now
+    accept line-style arguments, multiple x-y pairs, and other plot
+    option flags.  For example,
+ 
+      plot (x, y, "@12", x, y2, x, y3, "4", x, y4, "+")
+
+    results in a plot with
+
+      y  plotted with points of type 2 ("+") and color 1 (red).
+      y2 plotted with lines.
+      y3 plotted with lines of color 4.
+      y4 plotted with points which are "+"s.
+
+    the help message for `plot' and `plot_opt' provide full
+    descriptions of the options.
+
+  * NaN is now dropped from plot data, and Inf is converted to a
+    very large value before calling gnuplot.
+
+  * Improved load and save commands:
+
+    -- The save and load commands can now read and write a new binary
+       file format.  Conversion to and from IEEE big and little endian
+       formats is handled automatically.  Conversion for other formats
+       has not yet been implemented.
+
+    -- The load command can now read Matlab .mat files, though it is
+       not yet able to read sparse matrices or handle conversion for
+       all data formats.
+
+    -- The save command can write Matlab .mat files.
+
+    -- The load command automatically determines the save format
+       (binary, ascii, or Matlab binary).
+
+    -- The default format for the save command is taken from the
+       built-in variable `default_save_format'.
+
+    -- The save and load commands now both accept a list of globbing
+       patterns so you can easily load a list of variables from a
+       file.
+
+    -- The load command now accepts the option -list, for listing the
+       variable names without actually loading the data.  With
+       -verbose, it prints a long listing.
+
+    -- The load command now accepts the option -float-binary, for
+       saving floating point data in binary files in single precision.
+
+  * who and whos now accept a list of globbing patterns so you can
+    limit the lists of variables and functions to those that match a
+    given set of patterns.
+
+  * New functions for manipulating polynomials
+      
+      compan     -- companion matrix corresponding to polynomial coefficients
+      conv       -- convolve two vectors
+      deconv     -- deconvolve two vectors
+      roots      -- find the roots of a polynomial
+      poly       -- characteristic polynomial of a matrix
+      polyderiv  -- differentiate a polynomial
+      polyinteg  -- integrate a polynomial
+      polyreduce -- reduce a polynomial to minimum number of terms
+      polyval    -- evaluate a polynomial at a point
+      polyvalm   -- evaluate a polynomial in the matrix sense
+      residue    -- partial fraction expansion corresponding to the ratio
+                    of two polynomials
+
+  * New functions for manipulating sets
+
+      create_set   -- create a set of unique values
+      complement   -- find the complement of two sets
+      intersection -- find the intersection of two sets
+      union        -- find the union of two sets
+
+  * New elementary functions:
+
+      acot   acoth   acsc   acsch
+      asec   asech   cot    coth
+      csc    csch    log2   sec
+      sech
+
+  * New special functions:
+
+      beta   -- beta function
+      betai  -- incomplete beta function
+      gammai -- incomplete gamma function
+
+  * New image processing functions:
+
+      colormap  -- set and return current colormap
+      gray      -- set a gray colormap
+      gray2ind  -- image format conversion
+      image     -- display an image
+      imagesc   -- scale and display an image
+      imshow    -- display images
+      ind2gray  -- image format conversion
+      ind2rgb   -- image format conversion
+      loadimage -- load an image from a file
+      ntsc2rgb  -- image format conversion
+      ocean     -- set a color colormap
+      rgb2ind   -- image format conversion
+      rgb2ntsc  -- image format conversion
+      saveimage -- save an image to a file
+
+  * New time and date functions:
+
+      tic          -- set wall-clock timer
+      toc          -- get elapsed wall-clock time, since timer last set
+      etime        -- another way to get elapsed wall-clock time
+      cputime      -- get CPU time used since Octave started
+      is_leap_year -- is the given year a leap year?
+
+  * Other new functions:
+
+      bug_report -- submit a bug report to the bug-octave mailing list
+
+      toascii -- convert a string to a matrix of ASCII character codes
+
+      octave_tmp_file -- generate a unique temporary file name
+
+      undo_string_escapes -- replace special characters in a string by
+                             their backslash forms
+
+      is_struct -- determine whether something is a structure data type
+
+      feof   -- check EOF condition for a specified file
+      ferror -- check error state for a specified file
+      fread  -- read binary data from a file
+      fwrite -- write binary data to a file
+
+      file_in_path -- check to see if named file exists in given path
+
+      kbhit  -- get a single character from the terminal
+
+      axis   -- change plot ranges
+      hist   -- plot histograms
+
+      diary  -- save commands and output to a file
+
+      type   -- show the definition of a function
+      which  -- print the type of an identifier or the location of a
+                function file
+
+      isieee  -- Returns 1 if host uses IEEE floating point
+      realmax -- Returns largest floating point number
+      realmin -- Returns smallest floating point number
+
+      gcd     -- greatest common divisor
+      lcm     -- least common multiple
+
+      null    -- orthonormal basis of the null space of a matrix
+      orth    -- orthonormal basis of the range space of a matrix
+
+      fft2    -- two-dimensional fast fourier transform
+      ifft2   -- two-dimensional inverse fast fourier transform
+      filter  -- digital filter
+      fftfilt -- filter using fft
+      fftconv -- convolve to vectors using fft
+      sinc    -- returns sin(pi*x)/(pi*x)
+      freqz   -- compute the frequency response of a filter
+
+  * The meaning of nargin (== args.length ()) in built-in functions
+    has been changed to match the meaning of nargin in user-defined
+    functions.
+
+  * Variable return lists.  Octave now has a real mechanism for
+    handling functions that return an unspecified number of values,
+    so it is no longer necessary to place an upper bound on the number
+    of outputs that a function can produce.
+
+    Here is an example of a function that uses the new syntax to
+    produce n values:
+
+      function [...] = foo (n)
+        for i = 1:n
+          vr_val (i * x);
+        endfor
+      endfunction
+
+  * New keyword, all_va_args, that allows the entire list of va_args
+    to be passed to another function.  For example, given the functions
+
+      function f (...)
+        while (nargin--)
+          disp (va_arg ())
+        endwhile
+      endfunction
+      function g (...)
+        f ("begin", all_va_args, "end")
+      endfunction
+
+    the statement
+
+      g (1, 2, 3)
+
+    prints
+
+      begin
+      1
+      2
+      3
+      end
+
+    all_va_args may be used more than once, but can only be used
+    within functions that take a variable number of arguments.
+
+  * If given a second argument, svd now returns an economy-sized
+    decomposition, eliminating the unnecessary rows or columns of U or
+    V.
+
+  * The max and min functions correctly handle complex matrices in
+    which some columns contain real values only.
+
+  * The find function now handles 2 and 3 output arguments.
+
+  * The qr function now allows computation of QR with pivoting.
+
+  * hilb() is much faster for large matrices.
+
+  * computer() is now a built-in function.
+
+  * pinv() is now a built-in function.
+
+  * The output from the history command now goes through the pager.
+
+  * If a function is called without assigning the result, nargout is
+    now correctly set to 0.
+
+  * It is now possible to write functions that only set some return
+    values.  For example, calling the function
+
+      function [x, y, z] = f () x = 1; z = 2; endfunction
+
+    as
+
+      [a, b, c] = f ()
+
+    produces:
+
+      a = 1
+
+      b = [](0x0)
+
+      c = 2
+
+  * The shell_cmd function has been renamed to system (the name
+    shell_cmd remains for compatibility).  It now returns [output, status].
+
+  * New built-in variable `OCTAVE_VERSION'.  Also a new function,
+    version, for compatibility with Matlab.
+
+  * New built-in variable `automatic_replot'.  If it is "true", Octave
+    will automatically send a replot command to gnuplot each time the
+    plot changes.  Since this is fairly inefficient, the default value
+    is "false".
+
+  * New built-in variable `whitespace_in_literal_matrix' allows some
+    control over how Octave decides to convert spaces to commas in
+    matrix expressions like `[m (1)]'.
+
+    If the value of `whitespace_in_literal_matrix' is "ignore", Octave
+    will never insert a comma or a semicolon in a literal matrix list.
+    For example, the expression `[1 2]' will result in an error
+    instead of being treated the same as `[1, 2]', and the expression
+
+      [ 1, 2,
+        3, 4 ]
+
+    will result in the vector [1 2 3 4] instead of a matrix.
+
+    If the value of `whitespace_in_literal_matrix' is "traditional",
+    Octave will convert spaces to a comma between identifiers and `('.
+    For example, given the matrix
+
+      m = [3 2]
+
+    the expression
+
+      [m (1)]
+
+    will be parsed as
+
+      [m, (1)]
+
+    and will result in
+
+      [3 2 1]
+
+    and the expression
+
+      [ 1, 2,
+        3, 4 ]
+
+    will result in a matrix because the newline character is converted
+    to a semicolon (row separator) even though there is a comma at the
+    end of the first line (trailing commas or semicolons are ignored).
+    This is apparently how Matlab behaves.
+
+    Any other value for `whitespace_in_literal_matrix' results in
+    behavior that is the same as traditional, except that Octave does
+    not convert spaces to a comma between identifiers and `('.
+    For example, the expression
+
+      [m (1)]
+
+    will produce 3.  This is the way Octave has always behaved.
+
+  * Line numbers in error messages for functions defined in files and
+    for script files now correspond to the file line number, not the
+    number of lines after the function keyword appeared.
+
+  * Octave now extracts help from script files.  The comments must
+    come before any other statements in the file.
+
+  * In function files, the first block of comments in the file will
+    now be interpreted as the help text if it doesn't look like the
+    Octave copyright notice.  Otherwise, Octave extracts the first set
+    of comments after the function keyword.
+
+  * The function clock is more accurate on systems that have the
+    gettimeofday() function.
+
+  * The standard output stream is now automatically flushed before
+    reading from stdin with any of the *scanf() functions.
+
+  * Expanded reference card.
+
+  * The Octave distribution now includes a frequently asked questions
+    file, with answers.  Better answers and more questions (with
+    answers!) are welcome.
+
+  * New option --verbose.  If Octave is invoked with --verbose and not
+    --silent, a message is printed if an octaverc file is read while
+    Octave is starting.
+
+  * An improved configure script generated by Autoconf 2.0.
+
+  * Lots of bug fixes.
+
+Summary of changes for version 1.0:
+----------------------------------
+
+  * C-style I/O functions now handle files referenced by name or by
+    number more consistently.
+
+Summary of changes for version 0.83:
+-----------------------------------
+
+  * Loading global symbols should work now.
+
+  * Clearing the screen doesn't reprint the prompt unnecessarily.
+
+  * The operations <complex scalar> OP <real matrix> for OP == +, -,
+    *, or ./ no longer crash Octave.
+
+  * More portability and configuration fixes.
+
+Summary of changes for version 0.82:
+-----------------------------------
+
+  * Octave now comes with a reference card.
+
+  * The manual has been improved, but more work remains to be done.
+
+  * The atanh function now works for complex arguments.
+
+  * The asin, acos, acosh, and atanh functions now work properly when
+    given real-valued arguments that produce complex results.
+
+  * SEEK_SET, SEEK_CUR, and SEEK_END are now constants.
+
+  * The `using' qualifier now works with gplot and gsplot when the
+    data to plot is coming directly from a file.
+
+  * The strcmp function now works correctly for empty strings.
+
+  * Eliminated bogus parse error for M-files that don't end with `end'
+    or `endfunction'.
+
+  * For empty matrices with one nonzero dimension, the +, -, .*, and
+    ./ operators now correctly preserve the dimension.
+
+  * Octave no longer crashes if you type ^D at the beginning of a line
+    in the middle of defining a loop or if statement.
+
+  * On AIX systems, Back off on indexing DiagArray via Proxy class to
+    avoid gcc (or possibly AIX assembler?) bug. 
+
+  * Various other bug and portability fixes.
+
+Summary of changes for version 0.81:
+-----------------------------------
+
+  * Octave no longer dumps core if you try to define a function in
+    your .octaverc file.
+
+  * Fixed bug in Array class that resulted in bogus off-diagonal
+    elements when computing eigenvalue and singular value
+    decompositions.
+
+  * Fixed bug that prevented lsode from working on the SPARCstation,
+    at least with some versions of Sun's f77.  This bug was introduced
+    in 0.80, when I changed LSODE to allow the user to abort the
+    integration from within the RHS function.
+
+  * Fixed bug that prevented global attribute of variables from being
+    saved with save(), and another that prevented load() from working
+    at all.
+
+Summary of changes for version 0.80:
+-----------------------------------
+
+  * I have started working on a manual for the C++ classes.  At this
+    point, it is little more than a list of function names.  If you
+    would like to volunteer to help work on this, please contact
+    maintainers@octave.org.
+
+  * The patterns accepted by the save and clear commands now work like
+    file name globbing patterns instead of regular expressions.  I
+    apologize for any inconvenience this change may cause, but file
+    name globbing seems like a more reasonable style of pattern
+    matching for this purpose.
+
+  * It is now possible to specify tolerances and other optional inputs
+    for dassl, fsolve, lsode, npsol, qpsol, and quad.  For each of
+    these functions, there is a corresponding function X_options,
+    which takes a keyword and value arguments.  If invoked without any
+    arguments, the X_options functions print a list of possible
+    keywords and current values.  For example,
+
+      npsol_options ()
+
+    prints a list of possible options with values, and
+
+      npsol_options ("major print level", 10)
+
+    sets the major print level to 10.
+
+    The keyword match is not case sensitive, and the keywords may be
+    abbreviated to the shortest unique match.  For example,
+
+      npsol_options ("ma p", 10)
+
+    is equivalent to the statement shown above.
+
+  * The new built-in variable save_precision can be used to set the
+    number of digits preserved by the ASCII save command.
+
+  * Assignment of [] now works in most cases to allow you to delete
+    rows or columns of matrices and vectors.  For example, given a
+    4x5 matrix A, the assignment
+
+      A (3, :) = []
+
+    deletes the third row of A, and the assignment
+
+      A (:, 1:2:5) = []
+
+    deletes the first, third, and fifth columns.
+
+  * Variable argument lists.  Octave now has a real mechanism for
+    handling functions that take an unspecified number of arguments,
+    so it is no longer necessary to place an upper bound on the number
+    of optional arguments that a function can accept.
+
+    Here is an example of a function that uses the new syntax to print
+    a header followed by an unspecified number of values:
+
+      function foo (heading, ...)
+        disp (heading);
+        va_start ();
+        while (--nargin)
+          disp (va_arg ());
+        endwhile
+      endfunction
+
+    Note that the argument list must contain at least one named
+    argument (this restriction may eventually be removed), and the
+    ellipsis must appear as the last element of the argument list.
+
+    Calling va_start() positions an internal pointer to the first
+    unnamed argument and allows you to cycle through the arguments
+    more than once.  It is not necessary to call va_start() if you
+    do not plan to cycle through the arguments more than once.
+
+  * Recursive functions should work now.
+
+  * The environment variable OCTAVE_PATH is now handled in the same
+    way as TeX handles TEXINPUTS.  If the path starts with `:', the
+    standard path is prepended to the value obtained from the
+    environment.  If it ends with `:' the standard path is appended to
+    the value obtained from the environment.
+
+  * New functions, from Kurt Hornik (hornik@neuro.tuwien.ac.at) and
+    the Department of Probability Theory and Statistics TU Wien,
+    Austria:
+
+     corrcoef    -- corrcoef (X, Y) is the correlation between the i-th
+                    variable in X and the j-th variable in Y
+                    corrcoef (X) is corrcoef (X, X)
+     cov         -- cov (X, Y) is the covariance between the i-th
+                    variable in X and the j-th variable in Y
+                    cov (X) is cov (X, X)
+     gls         -- generalized least squares estimation
+     kurtosis    -- kurtosis(x) = N^(-1) std(x)^(-4) SUM_i (x(i)-mean(x))^4 - 3
+                    If x is a matrix, return the row vector containing
+                    the kurtosis of each column
+     mahalanobis -- returns Mahalanobis' D-square distance between the
+                    multivariate samples X and Y, which must have the
+                    same number of components (columns), but may have
+                    a different number of observations (rows)
+     ols         -- ordinary least squares estimation
+     pinv        -- returns the pseudoinverse of X; singular values
+                    less than tol are ignored
+     skewness    -- skewness (x) = N^(-1) std(x)^(-3) SUM_i (x(i)-mean(x))^3
+                    if x is a matrix, return the row vector containing
+                    the skewness of each column
+
+  * Errors in user-supplied functions called from dassl, fsolve,
+    lsode, npsol, and quad are handled more gracefully.
+
+  * Programming errors in the use of the C++ classes within Octave
+    should no longer cause Octave to abort.  Instead, Octave's error
+    handler function is called and execution continues as best as is
+    possible.  This should result in eventually returning control to
+    the top-level Octave prompt.  (It would be nice to have a real
+    exception handling mechanism...)
+
+  * A number of memory leaks have been eliminated.  Thanks to
+    Fong Kin Fui <fui@ee.nus.sg> for reporting them.
+
+  * The C++ matrix classes are now derived from a generic
+    template-based array class.
+
+  * The readline function operate-and-get-next (from bash) is now
+    available and bound to C-O by default.
+
+  * Octave now uses the version of readline currently distributed with
+    bash-1.13.  On some systems, interactive invocations of Octave
+    will now blink the cursor to show matching parens.
+
+  * By default, include files are now installed in
+    $prefix/include/octave instead of $prefix/include.
+
+  * Octave now uses a config.h file instead of putting all defines on
+    the compiler command line.
+
+Summary of changes for version 0.79:
+-----------------------------------
+
+  * New control systems functions:
+
+     dgram -- Returns the discrete controllability and observability gramian.
+     dlqr  -- Discrete linear quadratic regulator design.
+     dlqe  -- Discrete linear quadratic estimator (Kalman Filter) design.
+     c2d   -- Convert continuous system description to discrete time
+              description assuming zero-order hold and given sample time.
+
+  * The max (min) functions can now return the index of the max (min)
+    value as a second return value.
+
+Summary of changes for version 0.78:
+-----------------------------------
+
+  * Octave's handling of global variables has been completely
+    rewritten.  To access global variables inside a function, you must
+    now declare them to be global within the function body.  Likewise,
+    if you do not declare a variable as global at the command line,
+    you will not have access to it within a function, even if it is
+    declared global there.  For example, given the function
+
+      function f ()
+        global x = 1;
+        y = 2;
+      endfunction
+
+    the global variable `x' is not visible at the top level until the
+    command
+
+      octave:13> global x
+
+    has been evaluated, and the variable `y' remains local to the
+    function f() even if it is declared global at the top level.
+
+    Clearing a global variable at the top level will remove its global
+    scope and leave it undefined.  For example,
+
+      octave:1> function f ()   # Define a function that accesses
+      >  global x;              #   the global variable `x'.
+      >  x
+      > endfunction
+      octave:2> global x = 1    # Give the variable `x' a value.
+      octave:3> f ()            # Evaluating the function accesses the
+      x = 1                     #   global `x'.
+      octave:4> clear x         # Remove `x' from global scope, clear value.
+      octave:5> x = 2           # Define new local `x' at the top level
+      x = 2
+      octave:6> f               # The global `x' is no longer defined.
+      error: `x' undefined near line 1 column 25
+      error: evaluating expression near line 1, column 25
+      error: called from `f'
+      octave:7> x               # But the local one is.
+      x = 2
+
+  * The new function, `is_global (string)' returns 1 if the variable
+    named by string is globally visible.  Otherwise, returns 0.
+
+  * The implementation of `who' has changed.  It now accepts the
+    following options:
+
+      -b -builtins   -- display info for built-in variables and functions
+      -f -functions  -- display info for currently compiled functions
+      -v -variables  -- display info for user variables
+      -l -long       -- display long info
+
+    The long output looks like this:
+
+      octave:5> who -l
+
+      *** currently compiled functions:
+
+      prot  type               rows   cols  name
+      ====  ====               ====   ====  ====
+       wd   user function         -      -  f
+
+      *** local user variables:
+
+      prot  type               rows   cols  name
+      ====  ====               ====   ====  ====
+       wd   real scalar           1      1  y
+
+      *** globally visible user variables:
+
+      prot  type               rows   cols  name
+      ====  ====               ====   ====  ====
+       wd   complex matrix       13     13  x
+
+    where the first character of the `protection' field is `w' if the
+    symbol can be redefined, and `-' if it has read-only access.  The
+    second character may be `d' if the symbol can be deleted, or `-'
+    if the symbol cannot be cleared.
+
+  * The new built-in variable ignore_function_time_stamp can be used
+    to prevent Octave from calling stat() each time it looks up
+    functions defined in M-files.  If set to "system", Octave will not
+    automatically recompile M-files in subdirectories of
+    $OCTAVE_HOME/lib/VERSION if they have changed since they were last
+    compiled, but will recompile other M-files in the LOADPATH if they
+    change.  If set to "all", Octave will not recompile any M-files
+    unless their definitions are removed with clear.  For any other
+    value of ignore_function_time_stamp, Octave will always check to
+    see if functions defined in M-files need to recompiled.  The
+    default value of ignore_function_time_stamp is "system".
+
+  * The new built-in variable EDITOR can be used to specify the editor
+    for the edit_history command.  It is set to the value of the
+    environment variable EDITOR, or `vi' if EDITOR is not set, or is
+    empty.
+
+  * There is a new built-in variable, INFO_FILE, which is used as the
+    location of the info file.  Its initial value is
+    $OCTAVE_HOME/info/octave.info, so `help -i' should now work
+    provided that OCTAVE_HOME is set correctly, even if Octave is
+    installed in a directory different from that specified at compile
+    time.
+
+  * There is a new command line option, --info-file FILE, that may be
+    used to set Octave's idea of the location of the info file.  It
+    will override any value of OCTAVE_INFO_FILE found in the
+    environment, but not any INFO_FILE="filename" commands found in
+    the system or user startup files. 
+
+  * Octave's Info reader will now recognize gzipped files that have
+    names ending in `.gz'.
+
+  * The save command now accepts regular expressions as arguments.
+    Note that these patterns are regular expressions, and do not work
+    like filename globbing.  For example, given the variables `a',
+    `aa', and `a1', the command `save a*' saves `a' and `aa' but not
+    `a1'.  To match all variables beginning with `a', you must use an
+    expression like `a.*' (match all sequences beginning with `a'
+    followed by zero or more characters).
+
+  * Line and column information is included in more error messages.
+
+Summary of changes for version 0.77:
+-----------------------------------
+
+  * Improved help.  The command `help -i topic' now uses the GNU Info
+    browser to display help for the given topic directly from the
+    Texinfo documentation.
+
+  * New function: chol -- Cholesky factorization.
+
+Summary of changes for version 0.76:
+-----------------------------------
+
+  * Better run-time error messages.  Many now include line and column
+    information indicating where the error occurred.  Octave will also
+    print a traceback for errors occurring inside functions. If you
+    find error messages that could use improvement, or errors that
+    Octave fails to catch, please send a bug report to
+    bug@octave.org.
+
+  * If gplot (or gsplot) is given a string to plot, and the string
+    does not name a file, Octave will pass the string along to gnuplot
+    directly.  This allows commands like
+
+      gplot "sin (x)" w l, data w p
+
+    to work (assuming that data is a variable containing a matrix of
+    values).
+
+  * Long options (--help, --version, etc.) are supported.
+
+Summary of changes for version 0.75:
+-----------------------------------
+
+  * The documentation is much more complete, but still could use a lot
+    of work.
+
+  * The history function now prints line numbers by default.  The
+    command `history -q' will  omit them.
+
+  * The clear function now accepts regular expressions.
+
+  * If gplot (or gsplot) is given a string to plot, and the string
+    names a file, Octave attempts to plot the contents of the file.
+
+  * New functions:
+
+    history:
+
+      run_history  -- run commands from the history list.
+      edit_history -- edit commands from the history list with your
+                      favorite editor.
+
+    linear algebra:
+
+      balance         -- Balancing for algebraic and generalized
+                         eigenvalue problems.
+      givens          -- Givens rotation.
+      is_square       -- Check to see if a matrix is square.
+      qzhess          -- QZ decomposition of the matrix pencil (a - lambda b).
+      qzval           -- Generalized eigenvalues for real matrices.
+      syl             -- Sylvester equation solver.
+
+    control systems:
+
+      is_symmetric    -- Check to see if a matrix is symmetric.
+      abcddim         -- Check dimensions of linear dynamic system [A,B,C,D].
+      is_controllable -- Check to see if [A,B,C,D] is controllable.
+      is_observable   -- Check to see if [A,B,C,D] is observable.
+      are             -- Solve algebraic Ricatti equation.
+      dare            -- Solve discrete-time algebraic Ricatti equation.
+      lqe             -- Kalman filter design for continuous linear system.
+      lqr             -- Linear Quadratic Regulator design.
+      lyap            -- Solve Lyapunov equation.
+      dlyap           -- Solve discrete Lyapunov equation.
+      tzero           -- Compute the transmission zeros of [A,B,C,D].
+
+Summary of changes for version 0.74:
+-----------------------------------
+
+  * Formal parameters to functions are now always considered to be
+    local variables, so things like
+
+      global x = 0
+      global y = 0
+      function y = f (x) x = 1; y = x; end
+      f (x)
+
+    result in the function returning 1, with the global values of x
+    and y unchanged.
+
+  * Multiple assignment expressions are now allowed to take indices,
+    so things like
+
+      octave:13> [a([1,2],[3,4]), b([5,6],[7,8])] = lu ([1,2;3,4])
+
+    will work correctly.
+
+Summary of changes for version 0.73:
+-----------------------------------
+
+  * Saving and loading global variables works correctly now.
+
+  * The save command no longer saves built-in variables.
+
+  * Global variables are more reliable.
+
+  * Matrices may now have one or both dimensions zero, so that
+    operations on empty matrices are now handled more consistently.
+
+    By default, dimensions of the empty matrix are now printed along
+    with the empty matrix symbol, `[]'.  For example:
+
+      octave:13> zeros (3, 0)
+      ans = 
+
+      [](3x0)
+
+    The new variable `print_empty_dimensions' controls this behavior.
+    
+    See also Carl de Boor, An Empty Exercise, SIGNUM, Volume 25,
+    pages 2--6, 1990, or C. N. Nett and W. M. Haddad, A
+    System-Theoretic Appropriate Realization of the Empty Matrix
+    Concept, IEEE Transactions on Automatic Control, Volume 38,
+    Number 5, May 1993.
+
+  * The right and left division operators `/' and `\' will now find a
+    minimum norm solution if the system is not square, or if the
+    coefficient matrix is singular.
+
+  * New functions:
+
+      hess   -- Hessenberg decomposition
+      schur  -- Ordered Schur factorization
+      perror -- print error messages corresponding to error codes
+                returned from the functions fsolve, npsol, and qpsol
+                (with others to possibly be added later).
+
+  * Octave now prints a warning if it finds anything other than
+    whitespace or comments after the final `end' or `endfunction'
+    statement.
+
+  * The bodies of functions, and the for, while, and if commands are
+    now allowed to be empty.
+
+  * Support for Gill and Murray's QPSOL has been added.  Like NPSOL,
+    QPSOL is not freely redistributable either, so you must obtain
+    your own copy to be able to use this feature.  More information
+    about where to find QPSOL and NPSOL are in the file README.NLP.
+
+Summary of changes for version 0.72:
+-----------------------------------
+
+  * For numeric output, columns are now lined up on the decimal point.
+    (This requires libg++-2.3.1 or later to work correctly).
+
+  * If octave is running interactively and the output intended for the
+    screen is longer than one page and a pager is available, it is
+    sent to the pager through a pipe.  You may specify the program to
+    use as the pager by setting the variable PAGER.  PAGER may also
+    specify a command pipeline.
+
+  * Spaces are not always significant inside square brackets now, so
+    commands like
+
+      [ linspace (1, 2) ]
+
+    will work.  However, some possible sources of confusion remain
+    because Octave tries (possibly too hard) to determine exactly what
+    operation is intended from the context surrounding an operator.
+    For example:
+
+    -- In the command 
+
+         [ 1 - 1 ]
+
+       the `-' is treated as a binary operator and the result is the
+       scalar 0, but in the command
+
+         [ 1 -1 ]
+
+       the `-' is treated as a unary operator and the result is the
+       vector [ 1 -1 ].
+
+    -- In the command
+
+         a = 1; [ 1 a' ]
+
+       the single quote character `'' is treated as a transpose operator
+       and the result is the vector [ 1 1 ], but in the command
+
+         a = 1; [ 1 a ' ]
+
+       an error message indicating an unterminated string constant is
+       printed.
+
+  * Assignments are just expressions now, so they are valid anywhere
+    other expressions are.  This means that things like
+
+      if (a = n < m) ... endif
+
+    are valid.  This is parsed as:  compare `n < m', assign the result
+    to the variable `a', and use it as the test expression in the if
+    statement.
+
+    To help avoid errors where `=' has been used but `==' was
+    intended, Octave issues a warning suggesting parenthesis around
+    assignments used as truth values.  You can suppress this warning
+    by adding parenthesis, or by setting the value of the new built-in
+    variable `warn_assign_as_truth_value' to 'false' (the default
+    value is 'true').
+
+    This is also true for multiple assignments, so expressions like
+
+      [a, b, c] = [u, s, v] = expression
+
+    are now possible.  If the expression is a function, nargout is set
+    to the number of arguments for the right-most assignment.  The
+    other assignments need not contain the same number of elements.
+    Extra left hand side variables in an assignment become undefined.
+
+  * The default line style for plots is now `lines' instead of
+    `points'.  To change it, use the `set data style STYLE' command.
+
+  * New file handling and I/O functions:
+
+      fopen    -- open a file for reading or writing
+      fclose   -- close a file
+      fflush   -- flush output to a file
+      fgets    -- read characters from a file
+      frewind  -- set file position to the beginning of a file
+      fseek    -- set file position
+      ftell    -- tell file position
+      freport  -- print a report for all open files
+      fscanf   -- read from a file
+      sscanf   -- read from a string
+      scanf    -- read from the standard input
+
+  * New built-in variables for file and I/O functions:
+
+      stdin    -- file number corresponding to the standard input stream.
+      stdout   -- file number corresponding to the standard output stream.
+      stderr   -- file number corresponding to the standard error stream.
+
+    The following may be used as the final (optional) argument for
+    fseek: 
+
+      SEEK_SET -- set position relative to the beginning of the file.
+      SEEK_CUR -- set position relative to the current position.
+      SEEK_END -- set position relative to the end of the file.
+
+  * New function: setstr -- convert vectors or scalars to strings
+    (doesn't work for matrices yet).
+
+  * If possible, computer now prints the system type instead of
+    always printing `Hi Dave, I'm a HAL-9000'.
+
+  * Octave now properly saves and restores its internal state
+    correctly in more places.  Interrupting Octave while it is
+    executing a script file no longer causes it to exit.
+
+  * Octave now does tilde expansion on each element of the LOADPATH.
+
+  * A number of memory leaks have been plugged.
+
+  * Dependencies for C++ source files are now generated automatically
+    by g++.
+
+  * There is a new command line option, -p PATH, that may be used to
+    set Octave's loadpath from the command line.  It will override any
+    value of OCTAVE_PATH found in the environment, but not any
+    LOADPATH="path" commands found in the system or user startup files.
+
+  * It is now possible to override Octave's default idea of the
+    location of the system-wide startup file (usually stored in
+    $(prefix)/lib/octave/octaverc) using the environment variable
+    OCTAVE_HOME.  If OCTAVE_HOME has a value, Octave will look for
+    octaverc and its M-files in the directory $OCTAVE_HOME/lib/octave.
+
+    This allows people who are using binary distributions (as is
+    common with systems like Linux) to install the real octave binary
+    in any directory (using a name like octave.bin) and then install
+    a simple script like this
+
+      #!/bin/sh
+      OCTAVE_HOME=/foo/bar/baz
+      export OCTAVE_HOME
+      exec octave.bin
+
+    to be invoked as octave.
+
+
+Summary of changes for version 0.71:
+-----------------------------------
+
+  * Much improved plotting facility.  With this release, Octave does
+    not require a specially modified version of gnuplot, so gnuplot
+    sources are no longer distributed with Octave.  For a more
+    detailed description of the new plotting features, see the file
+    PLOTTING.
+
+  * New plotting commands:
+
+      plot            -- 2D plots
+      semilogx        -- 2D semilog plot with logscale on the x axis
+      semilogy        -- 2D semilog plot with logscale on the y axis
+      loglog          -- 2D log-log plot
+      mesh            -- 3D mesh plot
+      meshdom         -- create matrices for 3D plotting from two vectors
+      contour         -- contour plots of 3D data
+      bar             -- create bar graphs
+      stairs          -- create stairstep plots
+      polar           -- 2D plots from theta-R data
+      grid            -- turn plot grid lines on or off
+      xlabel, ylabel  -- place labels on the x and y axes of 2D plots
+      sombrero        -- demonstrate 3D plotting
+      gplot           -- 2D plot command with gnuplot-like syntax
+      gsplot          -- 3D plot command with gnuplot-like syntax
+      set             -- set plot options with gnuplot syntax
+      show            -- show plot options with gnuplot syntax
+      closeplot       -- close stream to gnuplot process
+      purge_tmp_files -- delete temporary files created by plot command
+
+  * Other new commands:
+
+      ls, dir         -- print a directory listing
+      shell_cmd       -- execute shell commands
+      keyboard        -- get input from keyboard, useful for debugging
+      menu            -- display a menu of options and ask for input
+      fft             -- fast fourier transform
+      ifft            -- inverse fast fourier transform
+
+  * Strings may be enclosed in either single or double quote
+    characters.  Double quote characters are not special within single
+    quote strings, and single quotes are not special within double
+    quote strings.
+
+  * Command name completion now works for M-file names too.
+
+  * Better help and usage messages for many functions.
+
+  * Help is now available for functions defined in M-files.  The first
+    block of comments is taken as the text of the help message.
+
+  * Numerous changes in preparation to support dynamic loading of
+    object files with dld.
+
+  * Bug fixes to make solving DAEs with dassl actually work.
+
+  * The command `save file' now saves all variables in the named file.
+
+  * If do_fortran_indexing is 'true', indexing a scalar with
+    [1,1,1,...] (n times) replicates its value n times.  The
+    orientation of the resulting vector depends on the value of
+    prefer_column_vectors.
+
+  * Things like [[1,2][3,4]] no longer cause core dumps, and invalid
+    input like [1,2;3,4,[5,6]] now produces a diagnostic message.
+
+  * The cd, save, and load commands now do tilde expansion.
+
+  * It's now possible to clear global variables and functions by name.
+
+  * Use of clear inside functions is now a parse error.
+
+Summary of changes for version 0.70:
+-----------------------------------
+
+  * Better parse error diagnostics.  For interactive input, you get
+    messages like
+
+      octave:1> a = 3 + * 4;
+
+      parse error:
+
+          a = 3 + * 4;
+                  ^
+
+    and for script files, the message includes the file name and input
+    line number:
+
+      octave:1> foo
+
+      parse error near line 4 of file foo.m:
+
+          a = 3 + * 4;
+                  ^
+
+  * New built-in variable PS2 which is used as the secondary prompt.
+    The default value is '> '.
+
+  * New file, octave-mode.el, for editing Octave code with GNU Emacs.
+    This is a modified version of Matthew R. Wette's matlab-mode.el.
+
+  * Better support for missing math functions.
+
+  * User preferences are now cached in a global struct so we don't
+    have to do a symbol table lookup each time we need to know what
+    they are.  This should mean slightly improved performance for
+    evaluating expressions.
+
+Summary of changes for version 0.69:
+-----------------------------------
+
+  * Multiple assignments are now possible, so statements like
+
+      a = b = c = 3;
+      a = b = c = [1,2;3,4];
+
+    or
+
+      c = (a = (b = 2) * 3 + 4) * 5
+
+    are legal, as are things that have even more bizarre effects, like
+
+      a(4:6,4:6) = b(2:3,2:3) = [1,2;3,4];
+
+    (try it).
+
+  * Improved parsing of strings (but they still don't work as matrix
+    elements).
+
+  * An M-file may now either define a function or be a list of
+    commands to execute.
+
+  * Better detection and conditional compilation of IEEE functions
+    isinf, finite, and isnan.
+
+  * Replacements for acosh, asinh, atanh, and gamma from the BSD math
+    library for those systems that don't have them.
+
+Summary of changes for version 0.68:
+-----------------------------------
+
+  * New functions:
+
+      eval  -- evaluate a string as a sequence of Octave commands. 
+      input -- print a prompt and get user input.
+
+Summary of changes for version 0.67:
+-----------------------------------
+
+  * New functions:
+
+      find -- return the indices of nonzero elements.
+
+  * Zero-one style indexing now works.  For example,
+
+      a = [1,2,3,4];
+      b = a([1,0,0,1])
+
+    sets b to the first and fourth elements of a.
+
+    Zero-one style indexing also works for indexing the left hand side
+    of an assignment.  For example,
+
+      a = rand (1,2;3,4);
+      a([0,1],:) = [-1,-2]
+
+    sets the second row of a to [-1 -2]
+
+    The behavior for the ambiguous case
+
+      a = [1,2,3,4];
+      b = a([1,1,1,1]);
+
+    is controlled by the new global variable `prefer_zero_one_indexing'.
+    If this variable is equal to 'true', b will be set to [1 2 3 4].
+    If it is false, b will be set to [1 1 1 1].  The default value is
+    'false'.
+
+  * Using the new global variable `propagate_empty_matrices', it is
+    possible to have unary and binary operations on empty matrices
+    return an empty matrix.  The default value of this variable is
+    'warn', so that empty matrices are propagated but you get a
+    warning.  Some functions, like eig and svd have also been changed
+    to handle this.
+
+  * Empty matrices can be used in conditionals, but they always
+    evaluate to `false'.  With propagate_empty_matrices = 'true', both
+    of the following expressions print 0: 
+
+      if  [], 1, else 0, end
+      if ~[], 1, else 0, end
+
+  * Octave no longer converts input like `3.2 i' or `3 I' to complex
+    constants directly because that causes problems inside square
+    brackets, where spaces are important.  This abbreviated notation
+    *does* work if there isn't a space between the number and the i,
+    I, j, or J.
+
+Summary of changes for version 0.66:
+-----------------------------------
+
+  * Logical unary not operator (~ or !) now works for complex.
+
+  * Left division works.
+
+  * Right and left element by element division should work correctly
+    now.
+
+  * Numbers like .3e+2 are no longer errors.
+
+  * Indexing a matrix with a complex value doesn't cause a core dump.
+
+  * The min and max functions should work correctly for two arguments.
+
+  * Improved (I hope!) configuration checks.
+
+  * Octave is now installed as octave-M.N, where M and N are version
+    numbers, and octave is a link to that file.  This makes it
+    possible to have more than one version of the interpreter installed.
+
+Summary of changes for version 0.63:
+-----------------------------------
+
+  * The reshape function works again.
+
+  * Octave now converts input like `3.2i' or `3 I' or `2.3e5 j' to be 
+    complex constants directly, rather than requiring an expression
+    like `3.3 * i' to be evaluated.
+
+Summary of changes for version 0.61:
+-----------------------------------
+
+  * Octave has been successfully compiled using gcc 2.3.3 and libg++ 2.3.
+    on a 486 system running Linux.
+
+  * The win_texas_lotto function is now called texas_lotto (it's a
+    script file, and win_texas_lotto.m is too long for some Linux and
+    System V systems).
+
+Summary of changes for version 0.57:
+------------------------------------
+
+  * The C-like formatted print functions printf, fprintf, and sprintf
+    finally work. 
+
+Summary of changes for version 0.56:
+------------------------------------
+
+  * By default, octave prints a short disclaimer when it starts.
+    (You can suppress it by invoking octave with -q).
+
+  * You can keep octave from reading your ~/.octaverc and .octaverc
+    files by invoking it with -f.
+
+  * When returning two values, eig now returns [v, d] instead of
+    [lambda, v], where d is a diagonal matrix made from lambda.
+
+  * The win_texas_lotto function now produces a sorted list.
+
+  * New functions:
+
+      expm -- matrix exponential.
+      logm -- matrix logarithm.
+
+Summary of changes for version 0.55:
+------------------------------------
+
+  * The following (C-style) backslash escape sequences work in quoted
+    strings (useful(?) with printf()):
+
+      \a  bell         \r  carriage return
+      \b  backspace    \t  horizontal tab
+      \f  formfeed     \v  vertical tab
+      \n  newline      \\  backslash
+
+  * Use of `...' at the end of a line will allow a statement to
+    continue over more than one line.
+
+  * The names `inf' and `nan' are now aliases for `Inf' and `NaN',
+    respectively.
+
+  * New functions:
+
+      casesen -- print a warning if the luser tries to turn off case
+                 sensitivity.
+      median  -- find median value.
+      norm    -- compute the norm of a matrix.
+      sort    -- sort columns.
+
+  * New variable, `silent_functions'.  If silent_functions == 'true',
+    the results of expressions are not printed even if they are not
+    followed by a semicolon.  The disp() and printf() functions still
+    result in output.  The default value for this variable is 'false'.
+
+  * New variable `return_last_value_computed'.  If it is 'true',
+    functions defined in script files return the last value computed
+    if a return value has not been explicitly declared.  The default
+    value for this variable is 'false'.
+
+Summary of changes for version 0.52:
+------------------------------------
+
+  * Name completion works for function and variable names currently in
+    the symbol tables.  Coming soon: completion for names of functions
+    defined in script files but not yet compiled. 
+
+  * The initial value of do_fortran_indexing is now false, and the
+    initial value of prefer_column_vectors is now true.  Swap the
+    values of these variables if you want behavior that is more like
+    Matlab.
+
+  * All script files check the number of input arguments before doing
+    much real work.
+
+  * The identifiers `i' and `j' are now also names for sqrt(-1).
+    These symbols may be used for other purposes, but their original
+    definition will reappear if they are cleared.
+
+  * The symbol tables are now implemented with hash tables for faster
+    searching. 
+
+  * A small amount of help is now available for most built-in
+    operators, keywords and functions.  Coming soon: help for script
+    files.
+
+  * Without any arguments, the help command now lists all known
+    built-in operators, keywords and functions.
+
+  * Generic parse errors are now signalled by `Eh, what's up doc?',
+    which is closer to what Bugs actually says.
+
+  * The who command now only prints variable names by default.
+    Use the -fcn (or -fcns, or -functions) switch to print the names of
+    built-in or currently compiled functions.
+
+Summary of changes for version 0.51:
+------------------------------------
+
+  * Major overhaul of array indexing.
+
+  * The colloc function actually works now.
+
+Summary of changes for version 0.50:
+------------------------------------
+
+  * The lsode and dassl functions now return the states only,
+    instead of the time and the states, so you must keep track of
+    the corresponding times (this is easy though, because you have
+    to specify a vector of desired output times anyway).
+
+  * Solution of NLPs with NPSOL now works on the SPARC.
+
+  * New keywords `endif', `endfor', `endfunction', `endif', and
+    `endwhile', which allow for better diagnostics.  The `end' keyword
+    is still recognized.  All script files have been changed to use
+    these new keywords in place of `end'.
+
+  * It is now possible to uninstall Octave by doing a `make uninstall'
+    in the top level directory.
+
+  * The Makefiles are much closer to conforming with GNU coding standards.
+
+  * New functions:
+
+      win_texas_lotto  -- produce six unique random numbers between 1 and 50.
+      quad             -- numerical integration.
+      lu               -- LU factorization
+      qr               -- QR factorization
+      dassl            -- Solution of DAEs using DASSL.
+
+  * New files:
+
+      THANKS -- A list of people and organizations who have supported
+                the development of Octave.
+
+      NEWS   -- This file, listing recent changes.
+
+  * Help is now available at the gnuplot prompt.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.2	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,1036 @@
+Summary of changes for version 2.1.x:
+------------------------------------
+
+  * Given a matrix, X, and a boolean index, idx, of the same shape as
+    X, X(idx) and X(idx) = RHS now work no matter what the value of
+    do_fortran_indexing is.
+
+  * If you are using GNU Emacs 19.34 or earlier, you will need to add
+    the following code to your ~/.emacs file in order to use Emacs
+    Octave mode:
+
+      ;; Set up the custom library.
+      ;; taken from http://www.dina.kvl.dk/~abraham/custom/
+      (eval-and-compile
+	(condition-case ()
+	    (require 'custom)
+	  (error nil))
+	(if (and (featurep 'custom) (fboundp 'custom-declare-variable))
+	    nil ;; We've got what we needed
+	  ;; We have the old custom-library, hack around it!
+	  (defmacro defgroup (&rest args)
+	    nil)
+	  (defmacro defcustom (var value doc &rest args) 
+	    (` (defvar (, var) (, value) (, doc))))))
+
+  * When `format +' is in effect, Octave uses the following symbols to
+    provide more information about the values in a matrix:
+
+      +      postive real
+      -      negative real
+      i      pure imaginary
+      c      complex
+      blank  zero
+
+  * The ++ and -- operators now work for indexed matrices, and the
+    following operators now work:
+
+      +=, -=, *=, /=, \=, <<=, >>=, .*=, ./=, .\=, &=, |=
+
+    These operators are currently implemented using a relatively
+    inefficient brute-force method but hey, they work.
+
+  * The built-in variable argv is now a list of strings instead of a
+    string vector.
+
+  * The value of LOADPATH set by the environment variable
+    OCTAVE_PATH, the -p or --path command line options, or on the
+    command line is no longer modified to include the default path.
+    Instead it is left as specified.  Its default value is now ":",
+    which tells Octave to search the default path, and the new
+    built-in variable DEFAULT_LOADPATH contains the default list of
+    directories to search.  
+
+  * The function file_in_path no longer does any special processing of
+    its PATH argument.  To search LOADPATH for files, it is now
+    generally better to use the new function file_in_loadpath.
+
+  * If fread is given a skip parameter, the skip is performed after
+    the read instead of before (for compatibility with Matlab).
+
+  * The new built-in variable `crash_dumps_octave_core' controls
+    whether Octave writes user variables to the file `octave-core'
+    when it crashes or is killed by a signal.  The default value is 1
+    (0 if you use --traditional).
+
+  * If LOADPATH contains a doubled colon, the default path is inserted
+    in its place.  This is similar to the substitution that also takes
+    place for leading or trailing colons in the LOADPATH.
+
+  * Loops of the form `for i = STRING ... endfor' are now allowed.
+
+  * It is now possible to set the iteration limit for lsode using
+    lsode_options ("step limit", N).
+
+  * New functions:
+
+      is_complex  -- tell whether a variable is complex
+      rehash      -- re-initialize the cache of directories in LOADPATH
+      graw        -- send a string to the gnuplot subprocess
+
+  * New functions from Kurt Hornik's Octave-ci package:
+
+    In finance (new directory):
+
+      fv    -- future value of an investment
+      fvl   -- future value of an initial lump sum investment
+      irr   -- internal rate of return of an investment
+      nper  -- number of payments needed for amortizing a loan
+      npv   -- net present value of a series of payments
+      pmt   -- amount of periodic payment needed to amortize a loan
+      pv    -- present value of an investment
+      pvl   -- present value of an investment that pays off at the end
+      rate  -- rate of return of an investment
+      vol   -- volatility of financial time series data
+
+    In linear-algebra:
+
+      dmult -- rescale the rows of a matrix
+
+    In signal:
+
+      arch_fit       -- fit an ARCH regression model
+      arch_rnd       -- simulate an ARCH process
+      arch_test      -- test for conditional heteroscedascity
+      arma_rnd       -- simulate an ARMA process
+      autocor        -- compute autocorrelations
+      autocov        -- compute autocovariances
+      autoreg_matrix -- design matrix for autoregressions
+      bartlett       -- coefficients of the Bartlett (triangular) window
+      blackman       -- coefficients of the Blackman window
+      diffpara       -- estimate the fractional differencing parameter
+      durbinlevinson -- perform one step of the Durbin-Levinson algorithm
+      fractdiff      -- compute fractional differences
+      hamming        -- coefficients of the Hamming window
+      hanning        -- coefficients of the Hanning window
+      hurst          -- estimate the Hurst parameter
+      periodogram    -- compute the periodogram
+      rectangle_lw   -- rectangular lag window
+      rectangle_sw   -- rectangular spectral window
+      sinetone       -- compute a sine tone
+      sinewave       -- compute a sine wave
+      spectral_adf   -- spectral density estimation
+      spectral_xdf   -- spectral density estimation
+      spencer        -- apply Spencer's 15-point MA filter
+      stft           -- short-term Fourier transform
+      synthesis      -- recover a signal from its short-term Fourier transform
+      triangle_lw    -- triangular lag window
+      triangle_sw    -- triangular spectral window
+      yulewalker     -- fit AR model by Yule-Walker method
+
+    In statistics/base (new directory):
+
+      center     -- center by subtracting means
+      cloglog    -- complementary log-log function
+      cor        -- compute correlations
+      cov        -- compute covariances
+      cut        -- cut data into intervals
+      iqr        -- interquartile range
+      kendall    -- kendall's rank correlation tau
+      logit      -- logit transformation
+      mean       -- compute arithmetic, geometric, and harmonic mean
+      meansq     -- compute mean square
+      moment     -- compute moments
+      ppplot     -- perform a PP-plot (probability plot)
+      probit     -- probit transformation
+      qqplot     -- perform a QQ-plot (quantile plot)
+      range      -- compute range
+      ranks      -- compute ranks
+      run_count  -- count upward runs
+      spearman   -- spearman's rank correlation rho
+      statistics -- compute basic statistics
+      studentize -- subtract mean and divide by standard deviation
+      table      -- cross tabulation
+      values     -- extract unique elements
+      var        -- compute variance
+
+    In statistics/distributions (new directory):
+
+      beta_cdf           -- CDF of the Beta distribution
+      beta_inv           -- Quantile function of the Beta distribution
+      beta_pdf           -- PDF of the Beta distribution
+      beta_rnd           -- Random deviates from the Beta distribution
+
+      binomial_cdf       -- CDF of the binomial distribution
+      binomial_inv       -- Quantile function of the binomial distribution
+      binomial_pdf       -- PDF of the binomial distribution
+      binomial_rnd       -- Random deviates from the binomial distribution
+
+      cauchy_cdf         -- CDF of the Cauchy distribution
+      cauchy_inv         -- Quantile function of the Cauchy distribution
+      cauchy_pdf         -- PDF of the Cauchy distribution
+      cauchy_rnd         -- Random deviates from the Cauchy distribution
+
+      chisquare_cdf      -- CDF of the chi-square distribution
+      chisquare_inv      -- Quantile function of the chi-square distribution
+      chisquare_pdf      -- PDF of the chi-square distribution
+      chisquare_rnd      -- Random deviates from the chi-square distribution
+
+      discrete_cdf       -- CDF of a discrete distribution
+      discrete_inv       -- Quantile function of a discrete distribution
+      discrete_pdf       -- PDF of a discrete distribution
+      discrete_rnd       -- Random deviates from a discrete distribution
+
+      empirical_cdf      -- CDF of the empirical distribution
+      empirical_inv      -- Quantile function of the empirical distribution
+      empirical_pdf      -- PDF of the empirical distribution
+      empirical_rnd      -- Bootstrap samples from the empirical distribution
+
+      exponential_cdf    -- CDF of the exponential distribution
+      exponential_inv    -- Quantile function of the exponential distribution
+      exponential_pdf    -- PDF of the exponential distribution
+      exponential_rnd    -- Random deviates from the exponential distribution
+
+      f_cdf              -- CDF of the F distribution
+      f_inv              -- Quantile function of the F distribution
+      f_pdf              -- PDF of the F distribution
+      f_rnd              -- Random deviates from the F distribution
+
+      gamma_cdf          -- CDF of the Gamma distribution
+      gamma_inv          -- Quantile function of the Gamma distribution
+      gamma_pdf          -- PDF of the Gamma distribution
+      gamma_rnd          -- Random deviates from the Gamma distribution
+
+      geometric_cdf      -- CDF of the geometric distribution
+      geometric_inv      -- Quantile function of the geometric distribution
+      geometric_pdf      -- PDF of the geometric distribution
+      geometric_rnd      -- Random deviates from the geometric distribution
+
+      hypergeometric_cdf -- CDF of the hypergeometric distribution
+      hypergeometric_inv -- Random deviates from hypergeometric distribution
+      hypergeometric_pdf -- PDF of the hypergeometric distribution
+      hypergeometric_rnd -- Random deviates from hypergeometric distribution
+
+      kolmogorov_smirnov_cdf -- CDF of the Kolmogorov-Smirnov distribution
+
+      laplace_cdf        -- CDF of the Laplace distribution
+      laplace_inv        -- Quantile function of the Laplace distribution
+      laplace_pdf        -- PDF of the Laplace distribution
+      laplace_rnd        -- Random deviates from the Laplace distribution
+
+      logistic_cdf       -- CDF of the logistic distribution
+      logistic_inv       -- Quantile function of the logistic distribution
+      logistic_pdf       -- PDF of the logistic distribution
+      logistic_rnd       -- Random deviates from the logistic distribution
+
+      lognormal_cdf      -- CDF of the log normal distribution
+      lognormal_inv      -- Quantile function of the log normal distribution
+      lognormal_pdf      -- PDF of the log normal distribution
+      lognormal_rnd      -- Random deviates from the log normal distribution
+
+      normal_cdf         -- CDF of the normal distribution
+      normal_inv         -- Quantile function of the normal distribution
+      normal_pdf         -- PDF of the normal distribution
+      normal_rnd         -- Random deviates from the normal distribution
+
+      pascal_cdf         -- CDF of the Pascal (negative binomial) distribution
+      pascal_inv         -- Quantile function of the Pascal distribution
+      pascal_pdf         -- PDF of the Pascal (negative binomial) distribution
+      pascal_rnd         -- Random deviates from the Pascal distribution
+
+      poisson_cdf        -- CDF of the Poisson distribution
+      poisson_inv        -- Quantile function of the Poisson distribution
+      poisson_pdf        -- PDF of the Poisson distribution
+      poisson_rnd        -- Random deviates from the Poisson distribution
+
+      stdnormal_cdf      -- CDF of the standard normal distribution
+      stdnormal_inv      -- Quantile function of standard normal distribution
+      stdnormal_pdf      -- PDF of the standard normal distribution
+      stdnormal_rnd      -- Random deviates from standard normal distribution
+
+      t_cdf              -- CDF of the t distribution
+      t_inv              -- Quantile function of the t distribution
+      t_pdf              -- PDF of the t distribution
+      t_rnd              -- Random deviates from the t distribution
+
+      uniform_cdf        -- CDF of the uniform distribution
+      uniform_inv        -- Quantile function of the uniform distribution
+      uniform_pdf        -- PDF of the uniform distribution
+      uniform_rnd        -- Random deviates from the uniform distribution
+
+      weibull_cdf        -- CDF of the Weibull distribution
+      weibull_inv        -- Quantile function of the Weibull distribution
+      weibull_pdf        -- PDF of the Weibull distribution
+      weibull_rnd        -- Random deviates from the Weibull distribution
+
+      wiener_rnd         -- Simulate a Wiener process
+
+    In statistics/models (new directory):
+
+      logistic_regression             -- ordinal logistic regression
+      logistic_regression_derivatives -- derivates of log-likelihood
+                                         in logistic regression
+      logistic_regression_likelihood  -- likelihood in logistic regression
+
+    In statistics/tests (new directory):
+
+      anova                       -- one-way analysis of variance
+      bartlett_test               -- bartlett test for homogeneity of variances
+      chisquare_test_homogeneity  -- chi-square test for homogeneity
+      chisquare_test_independence -- chi-square test for independence
+      cor_test                    -- test for zero correlation
+      f_test_regression           -- test linear hypotheses in linear
+                                     regression model
+      hotelling_test              -- test for mean of a multivariate normal
+      hotelling_test_2            -- compare means of two multivariate normals
+      kolmogorov_smirnov_test     -- one-sample Kolmogorov-Smirnov test
+      kolmogorov_smirnov_test_2   -- two-sample Kolmogorov-Smirnov test
+      kruskal_wallis_test         -- kruskal-Wallis test
+      manova                      -- one-way multivariate analysis of variance
+      mcnemar_test                -- mcnemar's test for symmetry
+      prop_test_2                 -- compare two proportions
+      run_test                    -- run test for independence
+      sign_test                   -- sign test
+      t_test                      -- student's one-sample t test 
+      t_test_2                    -- student's two-sample t test
+      t_test_regression           -- test one linear hypothesis in linear
+                                     regression model
+      u_test                      -- mann-Whitney U-test
+      var_test                    -- f test to compare two variances
+      welch_test                  -- welch two-sample t test
+      wilcoxon_test               -- wilcoxon signed-rank test
+      z_test                      -- test for mean of a normal sample with
+                                     known variance
+      z_test_2                    -- compare means of two normal samples with
+                                     known variances
+
+  * The save command now accepts the option -append to save the
+    variables at the end of the file, leaving the existing contents.
+
+  * New command-line option --no-history (also available using the
+    single character option -H) inhibits saving command history.
+
+  * The mkoctfile script now accepts -DDEF options and passes them on
+    to the C and C++ compilers.
+
+  * Running `make check' should work now before you run `make install', 
+    even if you build a copy of Octave that depends on shared versions
+    of the Octave libraries.
+
+  * For matrices, x(:) now works and returns a column vector no matter
+    what the value of do_fortran_indexing is.
+
+  * New keywords __FILE__ and __LINE__ expand to the name of the file
+    that is being read and the current input line number, respectively.
+
+  * Octave's expression parser is more general and consistent.  It is
+    now possible to access structure elements and index arbitrary
+    values.  For example, expressions like
+
+      my_home_dir = getpwuid (getuid ()) . dir;
+
+    and
+
+      svd (x) (1:5)
+
+    now work.
+
+  * New built-in variable `print_rhs_assign_val' controls what is
+    printed when an assignment expression is evaluated.  If it is
+    zero, the value of the variable on the left hand side (after the
+    assignment) is printed.  If it is nonzero, the value of the right
+    hand side (i.e., the result of the expression) is printed.  The
+    default value of is zero, so the behavior is the same as in
+    previous versions of Octave.
+
+  * tmpnam now takes two optional arguments, DIR, and PREFIX.  For
+    example, tmpnam ("/foo", "bar-") returns a file name like
+    "/foo/bar-10773baa".  If DIR is omitted or empty, the value of the
+    environment variable TMPDIR, or /tmp is used.  If PREFIX is 
+    omitted, "oct-" is used.
+
+  * The built-in variable `PWD' has been removed.  If you need to get
+    the value of the current working directory, use the pwd() function
+    instead.
+
+  * New operators.  Octave's parser now recognizes the following
+    operators:  << >> += -= *= /= .+= .-= .*= ./= &= |= <<= >>=.  So
+    far, there are only a few operations defined that actually use
+    them (this should change before 2.1 is released).
+
+  * New built-in data types:
+
+    logical:
+
+      A true value is represented by 1, and false value by 0.
+      Comparison operations like <, <=, ==, >, >=, and != now return
+      logical values.  Indexing operations that use zero-one style
+      indexing must now use logical values.  You can use the new
+      function logical() to convert a numeric value to a logical
+      value.  This avoids the need for the built-in variable
+      `prefer_zero_one_indexing', so it has been removed.  Logical
+      values are automatically converted to numeric values where
+      appropriate.
+
+    file:
+
+      A file object represents an open Octave stream object.  The
+      fopen function now returns a file object instead of an integer.
+      File objects can be converted to integers automatically, and the
+      other functions that work with file ids still work with
+      integers, so this change should be backward compatible.
+
+      The binary left-shift operator `<<' has been defined to work as
+      in C++ for file objects and built-in types.  For example,
+
+        my_stream = fopen ("foo", "w");
+        my_stream << "x = " << pi << " marks the spot\n";
+
+      writes `x = 3.1416 marks the spot' in the file foo.
+
+      The built-in variables stdin, stdout, and stderr are now also
+      file objects instead of integers.
+
+    list:
+
+      A list is an array of Octave objects.  It can be indexed using
+      the normal indexing operator.  For example,
+
+        x = list ([1,2;3,4], 1, "foo");
+        stdout << x(2) << "\n"
+        1
+        stdout << x;
+        (
+         [1] =
+        
+           1  2
+           3  4
+        
+          [2] = 1
+          [3] = foo
+        )
+
+      There is currently no special syntax for creating lists; you
+      must use the list function.
+
+  * Commas in global statements are no longer special.  They are now
+    treated as command separators.  This removes a conflict in the
+    grammar and is consistent with the way Matlab behaves.  The
+    variable `warn_comma_in_global_decl' has been eliminated.
+
+  * It is now possible to declare static variables that retain their
+    values across function calls.  For example,
+
+      function ncall = f () static n = 0; ncall = ++n; endfunction
+
+    defines a function that returns the number of times that it has
+    been called.
+
+  * Within user-defined functions, the new automatic variable `argn'
+    contains the names of the arguments that were passed to the
+    function.  For example,
+
+      function f (...)
+        for i = 1:nargin
+          stdout << "argn(" << i << ") = `" << deblank (argn(i,:)) \
+                 << "' and its value is " << va_arg () << "\n";
+        endfor
+      endfunction
+      f (1+2, "foo", sin (pi/2))
+
+    prints
+
+      argn(1) = `1 + 2' and its value is 3
+      argn(2) = `"foo"' and its value is foo
+      argn(3) = `sin (pi)' and its value is 1
+
+    on the standard output stream.  If nargin is zero, argn is not defined.
+  * Functions like quad, fsolve, and lsode can take either a function
+    name or a simple function body as a string.  For example,
+
+      quad ("sqrt (x)", 0, 1)
+
+    is equivalent to
+
+      function y = f (x) y = sqrt (x); endfunction
+      quad ("f", 0, 1)
+
+  * If the argument to eig() is symmetric, Octave uses the specialized
+    Lapack subroutine for symmetric matrices for a significant
+    increase in performance.
+
+  * If the argument to lsode that names the user-supplied function is
+    a 2-element string array, the second element is taken as the name
+    of the Jacobian function.  The named function should have the
+    following form:
+
+      JAC = f (X, T)
+
+    where JAC is the Jacobian matrix of partial derivatives of the
+    right-hand-side functions that define the set of differential
+    equations with respect to the state vector X.
+
+  * Global variables are now initialized to the empty matrix, for
+    compatibility with Matlab.
+
+  * Explicit initialization of global variables only happens once.
+    For example, after the following statements are evaluated, g still
+    has the value 1.
+
+      global g = 1
+      global g = 2
+
+    This is useful for initializing global variables that are used to
+    maintain state information that is shared among several functions.
+
+  * Structure elements completion on the command line actually works
+    now.
+
+  * The new built-in variable `fixed_point_format' controls whether
+    Octave uses a scaled fixed-point format for displaying matrices.
+    The default value is 0 unless you use --traditional.
+
+  * The function sumsq now computes sum (x .* conj (x)) for complex values.
+
+  * The new built-in variable max_recursion_depth allows you to
+    prevent Octave from attempting infinite recursion.  The default
+    value is 256.
+
+  * Octave now uses kpathsea 3.2.
+
+  * New configure option, --enable-readline.
+
+  * New configure option, --enable-static.
+
+Summary of changes for version 2.0.7:
+------------------------------------
+
+  This is a bug-fixing release.  There are no new user-visible features.
+
+Summary of changes for version 2.0.6:
+------------------------------------
+
+  This is primarily a bug-fixing release.  There are only a few new
+  user-visible features.
+
+  * The new built-in variable default_eval_print_flag controls whether
+    Octave prints the results of commands executed by eval() that do
+    not end with semicolons.  The default is 1.
+
+  * The new built-in constant OCTAVE_HOME specifies the top-level
+    directory where Octave is installed.
+
+  * Octave no longer includes functions to work with NPSOL or QPSOL,
+    because they are not free software.
+
+  * The new built-in variable called kluge_procbuf_delay specifies the
+    number of microseconds to delay in the parent process after
+    forking.  By default on gnu-win32 systems, it's set to 500000 (1/2
+    second).  On other systems, the default value is 0.  Delaying for
+    a short time in the parent after forking seems to avoid problems
+    in which communicating with subprocesses via pipes would sometimes
+    cause Octave to hang.  I doubt that the delay is really the right
+    solution.  If anyone has a better idea, I'd love to hear it.
+
+Summary of changes for version 2.0.5:
+------------------------------------
+
+  * A `switch' statement is now available.  See the Statements chapter
+    in the manual for details.
+
+  * Commands like ls, save, and cd may now also be used as formal
+    parameters for functions.
+
+  * More tests.
+
+Summary of changes for version 2.0.4:
+------------------------------------
+
+  * It is now possible to use commands like ls, save, and cd as simple
+    variable names.  They still cannot be used as formal parameters
+    for functions, or as the names of structure variables.  Failed
+    assignments leave them undefined (you can recover the original
+    function definition using clear).
+
+  * Is is now possible to invoke commands like ls, save, and cd as
+    normal functions (for example, load ("foo", "x", "y", "z")).
+
+Summary of changes for version 2.0.3:
+------------------------------------
+
+  * The manual has been completely revised and now corresponds much
+    more closely to the features of the current version.
+
+  * The return value for assignment expressions is now the RHS since
+    that is more consistent with the way other programming languages
+    work.  However, Octave still prints the entire LHS value so that
+
+      x = zeros (1, 2);
+      x(2) = 1
+
+    still prints
+
+      x =
+
+        0  1
+
+    but an assignment like
+
+      z = x(2) = 1
+
+    sets z to 1 (not [ 0, 1 ] as in previous versions of Octave).
+
+  * It is now much easier to make binary distributions.  See the
+    Binary Distributions section of the manual for more details.
+
+Summary of changes for version 2.0.2:
+------------------------------------
+
+  * Octave now stops executing commands from a script file if an error
+    is encountered.
+
+  * The return, and break commands now cause Octave to quit executing
+    commands from script files.  When used in invalid contexts, the
+    break, continue, and return commands are now simply ignored
+    instead of producing parse errors.
+
+  * size ("") is now [0, 0].
+
+  * New functions:
+
+      sleep   -- pause execution for a specified number of seconds
+      usleep  -- pause execution for a specified number of microseconds
+
+Summary of changes for version 2.0:
+----------------------------------
+
+  * The set and show commands for setting and displaying gnuplot
+    parameters have been replaced by gset and gshow.  This change will
+    probably break lots of things, but it is necessary to allow for
+    compatibility with the Matlab graphics and GUI commands in a
+    future version of Octave.  (For now, the old set and show commands
+    do work, but they print an annoying warning message to try to get
+    people to switch to using gset.)
+
+  * Octave has been mostly ported to Windows NT and Windows 95 using
+    the beta 17 release of the Cygnus GNU-WIN32 tools.  Not everything
+    works, but it is usable.  See the file README.WINDOWS for more
+    information.
+
+  * Dynamic linking works on more systems using dlopen() and friends
+    (most modern Unix systems) or shl_load() and friends (HP/UX
+    systems).  A simple example is provided in examples/hello.cc.
+    For this feature to work, you must configure Octave with
+    --enable-shared.  You may also need to have a shared-library
+    version of libg++ and libstdc++.
+
+  * New data types can be added to Octave by writing a C++ class.  On
+    systems that support dynamic linking, new data types can be added
+    to an already running Octave binary.  A simple example appears in
+    the file examples/make_int.cc.  Other examples are the standard
+    Octave data types defined in the files src/ov*.{h,cc} and
+    src/op-*.cc.
+
+  * The configure option --enable-bounds-check turns on bounds
+    checking on element references for Octave's internal array and
+    matrix classes.  It's enabled by default.  To disable this
+    feature, configure Octave with --disable-bounds-check.
+
+  * The C-style I/O functions (fopen, fprintf, etc.) have been
+    rewritten to be more compatible with Matlab.  The fputs function
+    has also been added.  Usage of the *printf functions that was
+    allowed in previous versions of Octave should still work.
+    However, there is no way to make the new versions of the *scanf
+    functions compatible with Matlab *and* previous versions of
+    Octave.  An optional argument to the *scanf functions is now
+    available to make them behave in a way that is compatible with
+    previous versions of Octave.
+
+  * Octave can now read files that contain columns of numbers only,
+    with no header information.  The name of the loaded variable is
+    constructed from the file name.  Each line in the file must have
+    the same number of elements.
+
+  * The interface to the pager has changed.  The new built-in variable
+    `page_output_immediately' controls when Octave sends output to the
+    pager.  If it is nonzero, Octave sends output to the pager as soon
+    as it is available.  Otherwise, Octave buffers its output and
+    waits until just before the prompt is printed to flush it to the
+    pager.
+
+  * Expressions of the form
+
+      A(i,j) = x
+
+    where X is a scalar and the indices i and j define a matrix of
+    elements now work as you would expect rather than giving an error.
+    I am told that this is how Matlab 5.0 will behave when it is
+    released.
+
+  * Indexing of character strings now works.
+
+  * The echo command has been implemented.
+
+  * The document command is now a regular function.
+
+  * New method for handling errors:
+
+      try
+        BODY
+      catch
+        CLEANUP
+      end_try_catch
+
+    Where BODY and CLEANUP are both optional and may contain any
+    Octave expressions or commands.  The statements in CLEANUP are
+    only executed if an error occurs in BODY.
+
+    No warnings or error messages are printed while BODY is
+    executing.  If an error does occur during the execution of BODY,
+    CLEANUP can access the text of the message that would have been
+    printed in the builtin constant __error_text__.  This is the same
+    as eval (TRY, CATCH) (which may now also use __error_text__) but
+    it is more efficient since the commands do not need to be parsed
+    each time the TRY and CATCH statements are evaluated.
+
+  * Octave no longer parses the help command by grabbing everything
+    after the keyword `help' until a newline character is read.  To
+    get help for `;' or `,', now, you need to use the command
+    `help semicolon' or `help comma'.
+
+  * Octave's parser now does some simple constant folding.  This means
+    that expressions like 3*i are now evaluated only once, when a
+    function is compiled, and the right hand side of expressions like
+    a = [1,2;3,4] are treated as true matrix constants rather than
+    lists of elements which must be evaluated each time they are
+    needed.
+
+  * Built-in variables that can take values of "true" and "false" can
+    now also be set to any nonzero scalar value to indicate "true",
+    and 0 to indicate "false".
+
+  * New built-in variables `history_file', `history_size', and
+    `saving_history'.
+
+  * New built-in variable `string_fill_char' specifies the character
+    to fill with when creating arrays of strings.
+
+  * If the new built-in variable `gnuplot_has_frames' is nonzero,
+    Octave assumes that your copy of gnuplot includes support for
+    multiple plot windows when using X11.
+
+    If the new built-in variable `gnuplot_has_multiplot' is nonzero,
+    Octave assumes that your copy of gnuplot has the multiplot support
+    that is included in recent 3.6beta releases.
+
+    The initial values of these variables are determined by configure,
+    but can be changed in your startup script or at the command line
+    in case configure got it wrong, or if you upgrade your gnuplot
+    installation.
+
+  * The new plot function `figure' allows multiple plot windows when
+    using newer versions of gnuplot with X11.
+
+  * Octave now notices when the plotter has exited unexpectedly.
+
+  * New built-in variable `warn_missing_semicolon'.  If nonzero, Octave
+    will warn when statements in function definitions don't end in
+    semicolons.  The default value is 0.
+
+  * Octave now attempts to continue after floating point exceptions
+    or out-of-memory errors.
+
+  * If Octave crashes, it now attempts to save all user-defined
+    variables in a file named `octave-core' in the current directory
+    before exiting.
+
+  * It is now possible to get the values of individual option settings
+    for the dassl, fsolve, lsode, npsol, qpsol, and quad functions
+    using commands like
+
+      dassl_reltol = dassl_options ("relative tolerance");
+
+  * The svd() function no longer computes the left and right singular
+    matrices unnecessarily.  This can significantly improve
+    performance for large matrices if you are just looking for the  
+    singular values.
+
+  * The filter() function is now a built-in function.
+
+  * New function randn() returns a pseudo-random number from a normal
+    distribution.  The rand() and randn() functions have separate
+    seeds and generators.
+
+  * Octave's command-line arguments are now available in the built-in
+    variable `argv'.  The program name is also available in the
+    variables `program_invocation_name' and `program_name'.  If
+    executing a script from the command line (e.g., octave foo.m) or
+    using the `#! /bin/octave' hack, the program name is set to the
+    name of the script.
+
+  * New built-in variable `completion_append_char' used as the
+    character to append to successful command-line completion
+    attempts.  The default is " " (a single space).
+
+  * Octave now uses a modified copy of the readline library from
+    version 1.14.5 of GNU bash.
+
+  * In prompt strings, `\H' expands to the whole host name.
+
+  * New built-in variable `beep_on_error'.  If nonzero, Octave will try
+    to ring your terminal's bell before printing an error message.
+    The default value is 0.
+
+  * For functions defined from files, the type command now prints the
+    text of the file.  You can still get the text reconstructed from
+    the parse tree by using the new option -t (-transformed).
+
+  * New command-line argument --traditional sets the following
+    preference variables for compatibility with Matlab:
+
+      PS1                           = ">> "
+      PS2                           = ""
+      beep_on_error                 = 1
+      default_save_format           = "mat-binary"
+      define_all_return_values      = 1
+      do_fortran_indexing           = 1
+      empty_list_elements_ok        = 1
+      implicit_str_to_num_ok        = 1
+      ok_to_lose_imaginary_part     = 1
+      page_screen_output            = 0
+      prefer_column_vectors         = 0
+      prefer_zero_one_indexing      = 1
+      print_empty_dimensions        = 0
+      treat_neg_dim_as_zero         = 1
+      warn_function_name_clash      = 0
+      whitespace_in_literal_matrix  = "traditional"
+
+  * New functions:
+
+      readdir  -- returns names of files in directory as array of strings
+      mkdir    -- create a directory
+      rmdir    -- remove a directory
+      rename   -- rename a file
+      unlink   -- delete a file
+      umask    -- set permission mask for file creation
+      stat     -- get information about a file
+      lstat    -- get information about a symbolic link
+      glob     -- perform filename globbing
+      fnmatch  -- match strings with filename globbing patterns
+      more     -- turn the pager on or off
+      gammaln  -- alias for lgamma
+
+  * New audio functions from Andreas Weingessel
+    <Andreas.Weingessel@ci.tuwien.ac.at>.
+
+      lin2mu     -- linear to mu-law encoding
+      loadaudio  -- load an audio file to a vector
+      mu2lin     -- mu-law to linear encoding
+      playaudio  -- play an audio file
+      record     -- record sound and store in vector
+      saveaudio  -- save a vector as an audio file
+      setaudio   -- executes mixer shell command
+
+  * New plotting functions from Vinayak Dutt.  Ones dealing with
+    multiple plots on one page require features from gnuplot 3.6beta
+    (or later).
+
+      bottom_title  -- put title at the bottom of the plot
+      mplot         -- multiplot version of plot
+      multiplot     -- switch multiple-plot mode on or off
+      oneplot       -- return to one plot per page
+      plot_border   -- put a border around plots
+      subplot       -- position multiple plots on a single page
+      subwindow     -- set subwindow position for next plot
+      top_title     -- put title at the top of the plot
+      zlabel        -- put a label on the z-axis
+
+  * New string functions
+
+      bin2dec  -- convert a string of ones and zeros to an integer
+      blanks   -- create a string of blanks
+      deblank  -- delete trailing blanks
+      dec2bin  -- convert an integer to a string of ones and zeros
+      dec2hex  -- convert an integer to a hexadecimal string
+      findstr  -- locate occurrences of one string in another
+      hex2dec  -- convert a hexadecimal string to an integer
+      index    -- return position of first occurrence a string in another
+      rindex   -- return position of last occurrence a string in another
+      split    -- divide one string into pieces separated by another
+      str2mat  -- create a string matrix from a list of strings
+      strrep   -- replace substrings in a string
+      substr   -- extract a substring
+
+    The following functions return a matrix of ones and zeros.
+    Elements that are nonzero indicate that the condition was true for
+    the corresponding character in the string array.
+
+      isalnum   -- letter or a digit
+      isalpha   -- letter
+      isascii   -- ascii
+      iscntrl   -- control character
+      isdigit   -- digit
+      isgraph   -- printable (but not space character)
+      islower   -- lower case
+      isprint   -- printable (including space character)
+      ispunct   -- punctuation
+      isspace   -- whitespace
+      isupper   -- upper case
+      isxdigit  -- hexadecimal digit
+
+    These functions return new strings.
+
+      tolower  -- convert to lower case
+      toupper  -- convert to upper case
+
+  * New function, fgetl.  Both fgetl and fgets accept an optional
+    second argument that specifies a maximum number of characters to
+    read, and the function fgets is now compatible with Matlab.
+
+  * Printing in hexadecimal format now works (format hex).  It is also
+    possible to print the internal bit representation of a value
+    (format bit).  Note that these formats are only implemented for
+    numeric values.
+
+  * Additional structure features:
+
+    -- Name completion now works for structures.
+
+    -- Values and names of structure elements are now printed by
+       default.  The new built-in variable `struct_levels_to_print'
+       controls the depth of nested structures to print.  The default
+       value is 2.
+
+    -- New functions:
+
+       struct_contains (S, NAME) -- returns 1 if S is a structure with
+                                    element NAME; otherwise returns 0.
+
+       struct_elements (S)       -- returns the names of all elements
+                                    of structure S in an array of strings. 
+
+  * New io/subprocess functions:
+
+      fputs    -- write a string to a file with no formatting
+      popen2   -- start a subprocess with 2-way communication
+      mkfifo   -- create a FIFO special file
+      popen    -- open a pipe to a subprocess
+      pclose   -- close a pipe from a subprocess
+      waitpid  -- check the status of or wait for subprocesses
+
+  * New time functions:
+
+      asctime    -- format time structure according to local format
+      ctime      -- equivalent to `asctime (localtime (TMSTRUCT))'
+      gmtime     -- return time structure corresponding to UTC
+      localtime  -- return time structure corresponding to local time zone
+      strftime   -- print given time structure using specified format
+      time       -- return current time
+
+    The `clock' and `date' functions are now implemented in M-files
+    using these basic functions.
+
+  * Access to additional Unix system calls:
+
+      dup2     -- duplicate a file descriptor
+      exec     -- replace current process with a new process
+      fcntl    -- control open file descriptors
+      fork     -- create a copy of the current process
+      getpgrp  -- return the process group id of the current process
+      getpid   -- return the process id of the current process
+      getppid  -- return the process id of the parent process
+      getuid   -- return the real user id of the current process
+      getgid   -- return the real group id of the current process
+      geteuid  -- return the effective user id of the current process
+      getegid  -- return the effective group id of the current process
+      pipe     -- create an interprocess channel
+
+  * Other new functions:
+
+      commutation_matrix  -- compute special matrix form
+      duplication_matrix  -- compute special matrix form
+      common_size.m       -- bring arguments to a common size
+      completion_matches  -- perform command completion on string
+      tilde_expand        -- perform tilde expansion on string
+
+      meshgrid  -- compatible with Matlab's meshgrid function
+      tmpnam    -- replaces octave_tmp_file_name
+      atexit    -- register functions to be called when Octave exits
+      putenv    -- define an environment variable
+      bincoeff  -- compute binomial coefficients
+      nextpow2  -- compute the next power of 2 greater than a number
+      detrend   -- remove a best fit polynomial from data
+      erfinv    -- inverse error function
+      shift     -- perform a circular shift on the elements of a matrix
+      pow2      -- compute 2 .^ x
+      log2      -- compute base 2 logarithms
+      diff      -- compute differences of matrix elements
+      vech      -- stack columns of a matrix below the diagonal
+      vec       -- stack columns of a matrix to form a vector
+      xor       -- compute exclusive or
+
+  * Functions for getting info from the password database on Unix systems:
+
+      getpwent  -- read entry from password-file stream, opening if necessary
+      getpwuid  -- search for password entry with matching user ID
+      getpwnam  -- search for password entry with matching username
+      setpwent  -- rewind the password-file stream
+      endpwent  -- close the password-file stream
+
+  * Functions for getting info from the group database on Unix systems:
+
+      getgrent  -- read entry from group-file stream, opening if necessary
+      getgrgid  -- search for group entry with matching group ID
+      getgrnam  -- search for group entry with matching group name
+      setgrent  -- rewind the group-file stream
+      endgrent  -- close the group-file stream
+
+  * The New function octave_config_info returns a structure containing
+    information about how Octave was configured and compiled.
+
+  * New function getrusage returns a structure containing system
+    resource usage statistics.  The `cputime' function is now defined
+    in an M-file using getrusage.
+
+  * The info reader is now a separate binary that runs as a
+    subprocess.  You still need the info reader distributed with
+    Octave though, because there are some new command-line arguments
+    that are not yet available in the public release of Info.
+
+  * There is a new built-in variable, INFO_PROGRAM, which is used as
+    the name of the info program to run.  Its initial value is
+    $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH/info, but that value can
+    be overridden by the environment variable OCTAVE_INFO_PROGRAM, or
+    the command line argument --info-program NAME, or by setting the
+    value of INFO_PROGRAM in a startup script.
+
+  * There is a new built-in variable, EXEC_PATH, which is used as
+    the list of directories to search when executing subprograms.  Its
+    initial value is taken from the environment variable
+    OCTAVE_EXEC_PATH (if it exists) or PATH, but that value can be
+    overridden by the command line argument --exec-path PATH, or
+    by setting the value of EXEC_PATH in a startup script.  If the
+    EXEC_PATH begins (ends) with a colon, the directories
+    $OCTAVE_HOME/lib/octave/VERSION/exec/ARCH and $OCTAVE_HOME/bin are
+    prepended (appended) to EXEC_PATH (if you don't specify a value
+    for EXEC_PATH explicitly, these special directories are prepended
+    to your PATH).
+
+  * If it is present, Octave will now use an `ls-R' database file to
+    speed up recursive path searching.  Octave looks for a file called
+    ls-R in the directory specified by the environment variable
+    OCTAVE_DB_DIR.  If that is not set but the environment variable
+    OCTAVE_HOME is set, Octave looks in $OCTAVE_HOME/lib/octave.
+    Otherwise, Octave looks in the directory $datadir/octave (normally
+    /usr/local/lib/octave).
+
+  * New examples directory.
+
+  * There is a new script, mkoctfile, that can be used to create .oct
+    files suitable for dynamic linking.
+
+  * Many more bug fixes.
+
+  * ChangeLogs are now kept in each subdirectory.
+
+See NEWS.1 for old news.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/NEWS.3	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,200 @@
+Summary of important user-visible changes for version 3.0:
+---------------------------------------------------------
+
+ ** Compatibility with Matlab graphics is much better now.  We now
+    have some graphics features that work like Matlab's Handle
+    Graphics (tm):
+
+    + You can make a subplot and then use the print function to
+      generate a file with the plot.
+
+    + RGB line colors are supported if you use gnuplot 4.2.  Octave
+      can still use gnuplot 4.0, but there is no way to set arbitrary
+      line colors with it when using the Matlab-style plot functions.
+      There never was any way to do this reliably with older versions
+      of gnuplot (whether run from Octave or not) since it only
+      provided a limited set to choose from, and they were terminal
+      dependent, so choosing color 1 with the X11 terminal would be
+      different from color 1 with the PostScript terminal.  Valid RGB
+      colors for gnuplot 4.0 are the eight possible combinations of 0
+      and 1 for the R, G and B values. Invalid values are all mapped
+      to the same color.
+
+      This also affects patch objects used in the bar, countour, meshc
+      and surfc functions, where the bars and contours will be
+      monochrome. A workaround for this is to type "colormap gmap40"
+      that loads a colormap that in many cases will be adequate for
+      simple bar and contour plots.
+
+    + You can control the width of lines using (for example):
+
+	line (x, y, "linewidth", 4, "color", [1, 0, 0.5]);
+
+      (this also shows the color feature).
+
+    + With gnuplot 4.2, image data is plotted with gnuplot and may be
+      combined with other 2-d plot data.
+
+    + Lines for contour plots are generated with an Octave function, so
+      contour plots are now 2-d plots instead of special 3-d plots, and
+      this allows you to plot additional 2-d data on top of a contour
+      plot.
+
+    + With the gnuplot "extended" terminals the TeX interpreter is
+    emulated. However, this means that the TeX interpreter is only
+    supported on the postscript terminals with gnuplot 4.0. Under
+    gnuplot 4.2 the terminals aqua, dumb, png, jpeg, gif, pm, windows,
+    wxt, svg and x11 are supported as well.
+
+    + The following plot commands are now considered obsolete and will
+      be removed from a future version of Octave:
+
+	__gnuplot_set__
+	__gnuplot_show__
+	__gnuplot_plot__
+	__gnuplot_splot__
+	__gnuplot_replot__
+
+      Additionally, these functions no longer have any effect on plots
+      created with the Matlab-style plot commands (plot, line, mesh,
+      semilogx, etc.).
+
+    + Plot property values are not extensively checked.  Specifying
+      invalid property values may produce unpredictable results.
+
+    + Octave now sends data over the same pipe that is used to send
+      commands to gnuplot.  While this avoids the problem of
+      cluttering /tmp with data files, it is no longer possible to use
+      the mouse to zoom in on plots.  This is a limitation of gnuplot,
+      which is unable to zoom when the data it plots is not stored in
+      a file.  Some work has been done to fix this problem in newer
+      versions of gnuplot (> 4.2.2).  See for example, this thread
+
+        http://www.nabble.com/zooming-of-inline-data-tf4357017.html#a12416496
+
+      on the gnuplot development list.
+
+
+ ** The way Octave handles search paths has changed.  Instead of
+    setting the built-in variable LOADPATH, you must use addpath,
+    rmpath, or path to manipulate the function search path.  These
+    functions will maintain "." at the head of the path, for
+    compatibility with Matlab.
+
+    Leading, trailing or doubled colons are no longer special.
+    Now, all elements of the search path are explicitly included in
+    the path when Octave starts.  To display the path, use the path
+    function.
+
+    Path elements that end in // are no longer searched recursively.
+    Instead, you may use addpath and the genpath function to add an
+    entire directory tree to the path.  For example,
+
+      addpath (genpath ("~/octave"));
+
+    will add ~/octave and all directories below it to the head of the
+    path.
+
+
+ ** Previous versions of Octave had a number of built-in variables to
+    control warnings (for example, warn_divide_by_zero).  These
+    variables have been replaced by warning identifiers that are used
+    with the warning function to control the state of warnings.
+
+    For example, instead of writing
+
+      warn_divide_by_zero = false;
+
+    to disable divide-by-zero warnings, you should write
+
+      warning ("off", "Octave:divide-by-zero");
+
+    You may use the same technique in your own code to control
+    warnings.  For example, you can use
+
+      warning ("My-package:phase-of-the-moon",
+               "the phase of the moon could cause trouble today");
+
+    to allow users to control this warning using the
+    "My-package:phase-of-the-moon" warning identifier.
+
+    You may also enable or disable all warnings, or turn them into
+    errors:
+
+      warning ("on", "all");
+      warning ("off", "all");
+      warning ("error", "Octave:divide-by-zero");
+      warning ("error", "all");
+
+    You can query the state of current warnings using
+
+      warning ("query", ID)
+      warning ("query")
+
+    (only those warning IDs which have been explicitly set are
+    returned).
+
+    A partial list and description of warning identifiers is available
+    using
+
+      help warning_ids
+
+
+ ** All built-in variables have been converted to functions.  This
+    change simplifies the interpreter and allows a consistent
+    interface to internal variables for user-defined packages and the
+    core functions distributed with Octave.  In most cases, code that
+    simply accesses internal variables does not need to change.  Code
+    that sets internal variables will change.  For example, instead of
+    writing
+
+      PS1 = ">> ";
+
+    you will need to write
+
+      PS1 (">> ");
+
+    If you need write code that will run in both old and new versions
+    of Octave, you can use something like
+
+      if (exist ("OCTAVE_VERSION") == 5)
+        ## New:
+        PS1 (">> ");
+      else
+        ## Old:
+        PS1 = ">> ";
+      endif
+
+
+ ** For compatibility with Matlab, the output order of Octave's
+    "system" function has changed from
+
+      [output, status] = system (cmd);
+
+    to
+
+      [status, output] = system (cmd);
+
+
+ ** For compatibility with Matlab, the output of Octave's fsolve
+    function has been changed from
+
+      [x, info, msg] = fsolve (...);
+
+    to
+
+      [x, fval, info] = fsolve (...);
+
+
+ ** For compatibility with Matlab, normcdf, norminv, normpdf, and
+    normrnd have been modified to compute distributions using the
+    standard deviation instead of the variance.
+
+
+ ** For compatibility with Matlab, gamcdf, gaminv, gampdf, gamrnd,
+    expcdf, expinv, exppdf and exprnd have been modified to compute 
+    the distributions using the standard scale factor rather than
+    one over the scale factor.
+
+
+See NEWS.2 for old news.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,6999 @@
+2011-04-14  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add colstyle to list of new functions for 3.4
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add perror, strerror to list of functions deprecated in 3.4
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add cquad to list of functions deprecated in 3.4
+
+2011-03-24  Jarno Rajahalme  <jarno.rajahalme@gmail.com>
+
+	* configure.ac: Try again with "-ff2c" if fortran compiler is
+	found incompatible. On OSX, try again with
+	libcruft/misc/blaswrap.c, if "-ff2c" also fails.
+
+2011-03-17  Iain Murray  <iain@iainmurray.net>
+
+	* bootstrap.conf (gnulib_modules): Include nproc in the list.
+
+2011-03-08  Rik  <octave@nomad.inbox5.com>
+
+	* mk-opts.pl: Recode using more modern Perl syntax.
+	Use my, not local, for lexically-scoped variables.
+	Use ALL_CAPITALS for global variable names.
+	Change code to remove any warnings from Perl lint (-w).
+	Inline small subroutines for better readability.
+	Use here documents and qq operator to avoid excessive backlashing of ".
+	Add more informative usage() information.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Deprecate is_duplicate_entry.
+
+2011-03-01  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Add Fink packages needed to support print output.
+
+2011-02-28  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Mention new functions isrow, iscolumn.
+
+2011-02-23  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* .hgignore: Cleanup and more files to be ignore that get added
+	to the source during build time.
+
+2011-02-22  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: New explicit 'make check' target.
+
+2011-02-21  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Note that PCRE is now required to build Octave.
+	* configure.ac: Improve check for PCRE, which is now required.
+	Don't check for -lregex.
+
+2011-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* README.MacOS: Keep line length below 80, use 2 spaces to start
+	sentences.
+
+2011-02-16  Richard Campbell  <rlcamp.pdx@gmail.com>
+
+	* README.MacOS: Updated Readme.MacOS section 2.2.1 with results of test
+	compilation on vanilla machine.
+
+2011-02-15  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.ac: Use AC_COMPILE_IFELSE to check for OpenGL
+	support in FLTK.
+
+2011-02-09  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Update.
+
+2011-02-09  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Spelling corrections.
+
+2011-02-08  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Fix FFTW CCFLAGS.
+
+2011-02-08  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Use indentation of 2 spaces rather than 3 in code examples.
+
+2011-02-08  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Add detail.
+
+2011-02-08  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Add note about subfunctions.
+
+2011-02-06  John W. Eaton  <jwe@octave.org>
+
+	* PROJECTS, README.devel: Use maintainers@octave.org instead of
+	octave-maintainers@octave.org.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* PROJECTS: Point to maintained list on Octave Wiki.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* mkoctfile.in, octave-config.in: Update usage strings.
+
+2011-02-04  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Add new doc/icons/Makefile to list of Makefiles to build
+	* examples/Makefile.am: Move building of .desktop files and distribution
+	of icons to doc/icons directory.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Deprecate glpkmex function.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_PROG_GHOSTSCRIPT): Update warning message.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Remove code to print warning for missing ARPACK.
+	* README.MacOS: Remove arpack from list of prerequisite software.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Deprecate saveimage function.
+
+2011-01-28  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Spelling corrections.
+	* README.MacOS: Additional modifications for building Octave manually.
+	* README.MacOS: Modify instructions for building Octave manually.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for ARPACK.
+	* common.mk (ARPACK_CPPFLAGS, ARPACK_LDFLAGS, ARPACK_LIBS):
+	Delete variables.
+	(do_subst_config_vals): Don't substitute them.
+
+2011-01-27  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Modify instructions for MacPorts to "deactivate"
+	rather than "uninstall" octave.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl, mkoctfile.cc.in, mkoctfile.in: Untabify.
+
+	* mkf77def.in, mk-opts.pl, mkoctfile.cc.in, structdemo.cc,
+	unwinddemo.cc, fortdemo.cc, paramdemo.cc,
+	celldemo.cc,stringdemo.cc, hello.cc, embedded.cc, helloworld.cc:
+	Strip trailing whitespace.
+
+2011-01-26  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS: Modify organization, and update for MacPorts.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap: Update from gnulib sources.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (INSTALL_SCRIPT): Update commend about UGLY_DEFS.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OPENGL_LIBS): Don't add -L/usr/X11R6/LIB to
+	LDFLAGS in test.  Bug #32160.
+
+2011-01-25  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Directly run makefile rules in doc/interpreter directory
+	for AUTHORS, BUGS, INSTALL.OCTAVE files.
+
+2011-01-25  John W. Eaton  <jwe@octave.org>
+
+	* autogen.sh (AUTOMAKE): Add --foreign to the automake command.
+	Check for required GNU files here instead of having automake do it.
+	Export AUTOMAKE so our options are actually used.
+
+2011-01-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (EXTRA_DIST): Remove ROADMAP from the list.
+
+2011-01-24  Rik  <octave@nomad.inbox5.com>
+
+	* AUTHORS: Remove.  File now auto-generated from contributors.texi.
+	* Makefile.am: Add rule for AUTHORS file.
+
+2011-01-24  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Note change in audio/mu2lin.
+
+2011-01-22  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* README.MinGW: Small corrections to documentation.
+
+2011-01-22  Rik  <octave@nomad.inbox5.com>
+
+	* README.devel: Update for 3.4 release.
+
+2011-01-22  Rik  <octave@nomad.inbox5.com>
+
+	* HACKING: Revise and incorporate all of file ROADMAP.
+	* ROADMAP: Deleted.
+
+2011-01-22  Rik  <octave@nomad.inbox5.com>
+
+	* README.Windows: Reference README.MinGW
+	* README.MinGW: Replace placeholder with actual instructions
+
+2011-01-22  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.5.0+.
+	(OCTAVE_API_VERSION_NUMBER): Now 44.
+	(OCTAVE_RELEASE_DATE): Now 2011-01-22.
+	(OCTAVE_COPYRIGHT): Update year.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* README.Cygwin, README.MacOS, README.Windows, README.ftp: Update
+	documentation files for 3.4 release.
+
+	* README.MinGW: Create placeholder for new README file.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap: Update from gnulib sources.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac, NEWS: Update for backend -> graphics_toolkit change.
+
+2011-01-17  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add quadcc to list of new functions added.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.cc.in (main): Add + missing from previous change.
+
+2011-01-15  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.54.
+	(OCTAVE_API_VERSION_NUMBER): Now 42.
+	(OCTAVE_RELEASE_DATE): Now 2010-11-19.
+
+2011-01-15  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Add krylovb to deprecated function list.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add replot to deprecated function list.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include filemode in the list.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap (gnulib_path): Set default gnulib path with ${x:=y},
+	not ${x=y}.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap, bootstrap.conf: Update from gnulib sources.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include mkstemp in the list.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)):
+	Eliminate some code duplication.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)): Check for
+	-Wcast-qual and -Wcast-align and add them to WARN_CFLAGS and
+	WARN_CXXFLAGS.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_ARG_ENABLE(extra-warning-flags)): Check for
+	-Wpointer-arith, -Wmissing-prototypes, -Wstrict-prototypes, and
+	-Wwrite-strings and add them to WARN_CFLAGS.  Check for
+	-Wpointer-arith and add them to WARN_CXXFLAGS.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl: Generate initialization lists and in-line code for
+	copying.
+
+2011-01-11  Rik  <octave@nomad.inbox5.com>
+
+	* ROADMAP: Update guide to Octave directory structure.
+
+2011-01-11  Rik  <octave@nomad.inbox5.com>
+
+	* README.mirrors: Update ftp links.
+
+2011-01-06  Rik  <octave@nomad.inbox5.com>
+
+	* README: Update links and disk space requirements.
+
+2011-01-06  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* run-octave.in: Add a -gud option so that gdb can be called from
+	Emacs's GUD mode and similar.
+
+2011-01-06  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in, mkoctfile.cc.in: Substitute and use LAPACK_LIBS.
+	Bug #32009.
+
+2011-01-04  Rik  <octave@nomad.inbox5.com>
+
+	* README.MacOS: Update CFLAGS recommendation to use -O2.
+
+2011-01-04  Rik  <octave@nomad.inbox5.com>
+
+	* README.gnuplot: Update recommendation to version 4.4.
+
+2011-01-04  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* README.Cygmin: Update build instructions before 3.4 release.
+
+2010-12-31  Kai Habel  <kai.habel@gmx.de>
+
+	* NEWS: Add curl and divergence to new functions list.
+
+2010-12-20  Ben Abbott  <bpabbott@mac.com>
+
+	* README.MacOS, Makefile.am: Update build insructions for MacOS and
+	distribute file in tarball.
+
+2010-12-20  Rik  <octave@nomad.inbox5.com>
+
+	* README.Cray, SENDING-PATCHES, Makefile.am: Remove obsolete files.
+
+2010-12-18  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Deprecate sphcat and spvcat functions.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* README.MacOS: New file documenting build instructions for Mac OSX.
+
+2010-12-09  Kai Habel  <kai.habel@gmx.de>
+
+	* NEWS: Add pie3 to new functions list.
+
+2010-12-09  Marco Atzeri  <marcox_atzeri@yahoo.it>
+
+	* configure.ac: Don't add -lwsock32 to LIBS on cygwin systems.
+
+2010-11-21  Kai Habel  <kai.habel@gmx.de>
+
+	* NEWS: Add uigetdir, uigetfile, uiputfile.
+
+2010-11-19  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (bin_SCRIPTS): Remove run-octave from the list.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.54+.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.54.
+	(OCTAVE_API_VERSION_NUMBER): Now 42.
+	(OCTAVE_RELEASE_DATE): Now 2010-11-19.
+
+2010-11-15  Kai Habel  <kai.habel@gmx.de>
+
+	* NEWS: Add saveas. Fix uimenu.
+
+2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* mkoctfile.cc.in: replace %OCTAVE_CONF_F77_INTEGER8_FLAG% with
+	%OCTAVE_CONF_F77_INTEGER_8_FLAG%.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for nan.h.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AH_BOTTOM): Eliminate special case for __DECCXX: 
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Eliminate special cases for nextstep.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Eliminate special checks for SCO systems.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Update deprecated function list with dispatch.
+
+2010-11-09  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Fix typo where variable name was missing '$'
+
+2010-11-09  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Properly m4 quote AS_HELP_STRING.
+
+2010-11-09  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Remove redundant warning message when '--without-opengl'
+	option used.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for trunc, copysign, or _copysign.
+
+2010-11-08  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (--without-opengl): New configure option.
+
+2010-11-03  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include copysign in the list.
+
+2010-10-28  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Update deprecated function list with autocov and autocor.
+
+2010-10-25  Kai Habel  <kai.habel@gmx.de>
+
+	* NEWS: Add uimenu.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Update deprecated function list for version 3.4.
+
+2010-10-22  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (EXTRA_DIST): Include bootstrap and bootstrap.conf
+	in the list.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.53+.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.53.
+	(OCTAVE_API_VERSION_NUMBER): Now 41.
+	(OCTAVE_RELEASE_DATE): Now 2010-10-19.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* examples/make_int.cc (Fmake_int): Don't pass arg to mlock.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* examples/structdemo.cc (Fstructdemo): Use octave_scalar_map
+	instead of Octave_map.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Style fixes.
+
+2010-09-29  John P. Swensen  <jpswensen@gmail.com>
+
+	* configure.ac: Allow selection of GraphicsMagick or ImageMagick
+	at configure time using "--with-magick=" option.
+
+2010-09-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* m4/ax_blas.m4: Update.
+
+2010-09-23  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in, octave-bug.cc.in: Delete
+	* Makefile.am (EXTRA_DIST): Remove them from the list.
+	(bin_PROGRAMS): Remove octave-bug from the list.
+	(octave_bug_SOURCES, nodist_octave_bug_SOURCES): Delete variables.
+	(BUILT_SOURCES): Remove octave-bug.cc from the list.
+	(bin_SCRIPTS): Remove octave-bug from the list.
+	(octave-bug.cc, octave-bug): Delete rules.
+
+2010-09-20  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include mktime in the list.
+
+2010-09-18  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (BUILT_SOURCES): Include run-octave in the list.
+
+2010-09-16  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (SCRIPTS_EXE_SUFFIX) Delete variable and all uses.
+	(BUILD_COMPILED_AUX_PROGRAMS): New variable.
+	(AMCOND_BUILD_COMPILED_AUX_PROGRAMS): New Automake conditional.
+	* Makefile.am (SCRIPTS_EXE_SUFFIX, BUILT_SHELL_FILES): Delete
+	variables and all uses.
+	(bin_SCRIPTS, bin_PROGRAMS, mkoctfile_SOURCES,
+	nodist_mkoctfile_SOURCES, octave_config_SOURCES,
+	nodist_octave_config_SOURCES, octave_bug_SOURCES,
+	nodist_octave_bug_SOURCES, BUILT_SOURCES): Define conditionally
+	based on AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
+	(noinst_SCRIPTS): New variable.
+	(CLEANFILES): Include $(bin_PROGRAMS) $(bin_SCRIPTS)
+	$(BUILT_SOURCES) in the list.
+	(all-local): Also depend on $(bin_PROGRAMS) and $(noinst_SCRIPTS).
+	(octave-bug.cc, octave-config.cc, mkoctfile.cc, octave-bug)
+	(octave-config, mkoctfile): Make rules conditional on
+	AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
+	(make-version-links, remove-version-links): Define different
+	rules conditional on AMCOND_BUILD_COMPILED_AUX_PROGRAMS.
+
+2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-09-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* m4/ax_blas_f77_func.m4: Update.
+
+2010-09-07  Ben Abbott  <bpabbott@mac.com>
+
+	* acinclude.m4, configure.ac, m4/module.mk: Update acx_*.m4
+	macros to the newer ax_*.m4 versions.
+	* ax_blas.m4, ax_lapack.m4, ax_blas_f77_func.m4,
+	ax_pthread.m4: Add files.
+	* acx_blas.m4, acx_lapack.m4, acx_blas_f77_func.m4,
+	acx_pthread.m4: Remove files.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-08-21  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Add randi to list of new functions
+
+2010-08-09  John Swensen  <jpswensen@gmail.com>
+
+	* mkoctfile.in: Add ability to pass -pthread through to linker.
+
+2010-08-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-08-09  Rik  <octave@nomad.inbox5.com>
+
+	* examples/Makefile.am: Don't echo 'echo' command when building
+	octave.desktop.
+
+2010-08-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-08-05  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Change warning messages about freetype and fontconfig
+	to reflect their requirement for native graphics.  Bug #30594.
+
+2010-08-05  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Remove distribution of emacs directory
+
+	* emacs/info-emacs-info, emacs/info-emacs-octave-help, emacs/module.mk,
+	emacs/NEWS, emacs/octave-hlp.el, emacs/octave-inf.el,
+	emacs/octave-mod.el, emacs/octave-tags, emacs/octave-tags.1,
+	emacs/README, emacs/TODO: Remove from further hg checkouts.
+
+2010-08-05  Rik  <octave@nomad.inbox5.com>
+
+	* ChangeLog: Correct date in version upgrade 3.3.52+ comment.
+
+2010-08-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.52+.
+
+2010-08-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.52.
+	(OCTAVE_API_VERSION_NUMBER): Now 40.
+	(OCTAVE_RELEASE_DATE): Now 2010-08-01.
+
+2010-07-30  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: add .gdbinit to the DISTCLEANFILES list
+
+2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Include list of new functions.
+
+2010-07-08  Rik  <octave@nomad.inbox5.com>
+
+	* NEWS: Update with addition of engineering format.
+
+2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mkoctfile.in: F77_INTEGER_8_FLAG -> OCTAVE_CONF_F77_INTEGER_8_FLAG.
+
+2010-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.ac: Temporarily include F77_INTEGER_8_FLAG in FFLAGS for
+	BLAS checking.
+	* mkoctfile.in: Include F77_INTEGER_8_FLAG in ALL_FFLAGS.
+	* mkoctfile.cc.in: Ditto.
+
+2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-05-11  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Capitalize ARPACK in messages.
+
+2010-05-04  John W. Eaton  <jwe@octave.org>
+
+	* ROADMAP: Delete entry for villad.
+
+2010-04-26  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: fix bug with shell HERE document introduced in
+        previous change.
+
+2010-04-26  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* configure.ac: make all graphics related tests inter-dependent
+
+2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-04-16  David Bateman  <dbateman@free.fr>
+
+	* PROJECTS: Update for new sparse functionality.
+
+2010-04-14  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* NEWS: Update.
+
+2010-04-08  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makefile.am (make-version-links, remove-version-links):
+	Use SCRIPTS_EXE_SUFFIX for scripts, not EXEEXT.
+
+2010-04-07  John W. Eaton  <jwe@octave.org>
+
+	* README.ftp, README.devel:
+	Update from Judd Storrs <jstorrs@gmail.com>.
+
+2010-03-27  David Bateman  <dbateman@free.fr>
+
+	* acinclude.m4 (OCTAVE_CHECK_OPENMP): Macro to check for OpenMP support
+	* configure.ac: Use it here. Disable OpenMP support by default
+
+2010-03-25  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Sort the list.
+
+2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* bootstrap.conf: Include roundf, trunc, truncf.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.51+.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_INIT): Version is now 3.3.51.
+	(OCTAVE_API_VERSION_NUMBER): Now 39.
+	(OCTAVE_RELEASE_DATE): Now 2010-03-24.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Style fixes.
+
+2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-03-15  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AH_BOTTOM): Define GNULIB_NAMESPACE.
+
+2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-03-01  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS,
+	OCTAVE_CXX_COMPLEX_SETTERS): New macros.
+	* configure.ac: Use them.
+
+2010-02-25  John W. Eaton  <jwe@octave.org>
+
+	* gdbinit: New file.
+	* Makefile.am (EXTRA_DIST): Add it to the list.
+	(all-local): Depend on .gdbinit.
+	(.gdbinit): New rule.
+
+2010-02-22  John W. Eaton  <jwe@octave.org>
+
+	* boostrap: Update from gnulib/build-aux/bootstrap.
+
+2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* configure.ac: Define NOMINMAX under MSVC.
+
+	* configure.ac: Add pcre_config --cflags to XTRA_CXXFLAGS instead of
+	CPPFLAGS.
+
+2010-02-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Add $COLAMD_LDFLAGS $COLAMD_LIBS $AMD_LDFLAGS,
+	and $AMD_LIBS to LIBS when checking for cholmod library.
+
+2010-02-17  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_CHECK_FORTRAN_INTEGER_SIZE): Save and
+	restore FFLAGS.  Temporarily add F77_INTEGER_8_FLAG to FFLAGS.
+	* common.mk (F77_INTEGER_8_FLAG): New variable.
+	(do_subst_config_vals): Substitute it.
+	* configeure.ac: Don't add -fdefault-integer-8 to FFLAGS.
+	Substitute F77_INTEGER_8_FLAG.  Improve --enable-64 warning.
+
+2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-02-08  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include progname in the list.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-02-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for gethostname.
+	* bootstrap.conf (gnulib_modules): Include gethostname in the list.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for fcntl.h or fcntl.
+	* bootstrap.conf (gnulib_modules): Include fcntl in the list.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_HAVE_C99_VSNPRINTF): Delete.
+	* configure.ac: Don't call OCTAVE_HAVE_C99_VSNPRINTF.
+	Don't check for snprintf, vfprintf, vsprintf, vsnprintf, or _snprintf.
+	* bootstrap.conf (gnulib_modules): Include vsprintf in the list.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for strerror.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for raise or strdup.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for poll or usleep.
+	* bootstrap.conf (gnulib_modules): Include nanosleep and sleep
+	in the list.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for sigaction, sigpending,
+	sigprocmask, or sigsuspend.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for getcwd.
+	* bootstrap.conf (gnulib_modules): Include getcwd in the list.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Assume signal.h provides sigset_t and sig_atomic_t.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't call OCTAVE_SIGNAL_CHECK,
+	OCTAVE_REINSTALL_SIGHANDLERS, AC_C_CONST, AC_HEADER_STDC, or
+	AC_STRUCT_TM, AC_TYPE_SIGNAL.
+	Don't define RETSIGTYPE_IS_VOID.
+	* acinclude.m4 (OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS):
+	Don't call AC_TYPE_SIGNAL.  Assume sighandler return type is void.
+	(OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS): Delete macros.
+	* bootstrap.conf (gnulib_modules): Include sigaction, signal,
+	and sigprocmask in the list.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for stdint.h.
+	(AH_BOTTOM): Unconditionally include stdint.h.
+	Delete fallback integer type definitions.
+	* bootstrap.conf (gnulib_modules): Include stdint in the list.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for atexit or on_exit.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for bcopy, bzero, or memmove.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include sys_time, sys_times,
+	and time in the list.
+	* configure.ac: Don't check for sys/time.h, sys/times.h,
+	sys/stat.h, sys/utimes, or utimes.h.
+	Don't call AC_HEADER_TIME.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* acinclue.m4 (OCTAVE_STRPTIME_BROKEN): Delete.
+	* configure.ac: Don't call it.
+
+2010-02-01  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_PROG_MAKEINFO): Delete macro.
+	* configure.ac: Don't call it.  Don't issue warning about
+	makeinfo in summary.
+
+2010-01-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for standard C headers (by now, I
+	think we can safely assume they exist).  Don't check for
+	varargs.h.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include sys_stat in the list.
+	* configure.ac: Don't check for sys/types.h or unistd.h.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include unistd in the list.
+	Keep list sorted.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Delete checks for rename, link, readlink, rmdir,
+	strcasecmp, stricmp, strncasecmp, strnicmp, strptime, symlink,
+	and unlink.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include pathmax and readlink
+	in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include symlink in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include link in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include unlink in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include strptime in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include rename in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include rmdir in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include c-strcase in the list.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include getopt-gnu in the list.
+
+2010-01-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* bootstrap.conf: Add round module.
+	* configure.ac: Allow to use MSVC with *mingw* build host. Check for
+	opendir in -ldirent. Add -ladvapi32 to LIBS.
+
+2010-01-15  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Edit.
+
+2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Handle --enable-docs.  Print warning in summary
+	if building documentation is disabled.
+	* Makefile.am (SUBDIRS): Use @DOCDIR@ instead of doc.
+	(dist-hook): New target, conditional on AMCOND_BUILD_DOCS.
+
+2010-01-09  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for nlink_t.
+	(AH_BOTTOM): Don't define nlink_t here.
+
+2010-01-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for times.
+	* bootstrap.conf (gnulib_modules): Include times in the list.
+
+2010-01-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Don't check for gettimeofday, or whether
+	gettimeofday accepts one or two arguments.
+	* bootstrap.conf (gnulib_modules): Include gettimeofday in the list.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include mkfifo in the list.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Remove nonexistent fstat module.
+
+2009-12-22  Rik  <octave@nomad.inbox5.com>
+
+	* WWW/: remove web directory no longer used
+
+2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-12-27  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Use libtool cache variables to simplify checks
+	for dynamic linking api.
+
+2009-12-26  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include fstat, lstat, and
+	stat in the list.
+	* configure.ac: Don't check for fstat, lstat, or stat.
+
+2009-12-25  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include mkdir in the list.
+	* configure.ac: Don't check for mkdir.
+	Don't call OCTAVE_MKDIR_TAKES_ONE_ARG.
+	* acinclude.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): Delete.
+
+2009-12-25  John W. Eaton  <jwe@octave.org>
+
+	* bootstrap.conf (gnulib_modules): Include crypto/md5 in the list.
+
+2009-12-22  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac: Remove second redundant test for nlink_t
+
+2009-12-21  Rik  <octave@nomad.inbox5.com>
+
+	* dlfcn directory: Remove dlfcn directory with leftover code from 1996
+
+2009-12-20  Rik  <octave@nomad.inbox5.com>
+
+	* acinclude.m4: use M4 quoting for arguments to autoconf macros
+
+2009-12-20  Rik  <octave@nomad.inbox5.com>
+
+	* configure.ac, acinclude.m4: Better warnings when gnuplot is not
+	installed but native graphics are available
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* emacs/module.mk, examples/Makefile.am, info-emacs-info,
+	info-emacs-octave-help: Distribute emacs specific files from emacs
+	directory rather than examples directory
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* m4/module.mk, Makefile.am: Redo previous patch with distribution
+	triggered by m4/module.mk.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Distribute m4/gnulib-cache.m4 per recommendation
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am, examples/Makefile.am, common.mk, configure.ac: Eliminate
+	TOPDIR variable in favor of built-in automake variables of top_builddir
+	and top_srcdir.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Use M4 quoting for arguments to autoconf macros containing
+	variables
+
+2009-12-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fsize_equal): Allow calling with zero arguments.
+	variables
+
+2009-12-15  John W. Eaton  <jwe@octave.org>
+
+	* README.MSVC: Delete section about obtaining glob library.
+	* bootstrap.conf (gnulib_modules): Add fnmatch and glob to the list.
+	* common.mk (LIBGLOB): Delete variable.
+	(do_subst_config_vals): Don't substitute it.
+	* octave-bug.in, octave-bug.cc.in: Eliminate LIBGLOB variable.
+	* configure.ac: Don't check for glob.h or the glob and fnmatch
+	functions.  Eliminate LIBGLOB variable.
+
+2009-12-11  Rik  <octave@nomad.inbox5.com>
+
+	* HACKING: Elaborate which DIRNAME to use for --gnulib-srcdir option.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Add $PTHREAD_LIBS to $LIBS and $PTHREAD_CFLAGS
+	to $CFLAGS for subsequent tests.
+
+2009-12-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: remove install-extras target and use automake syntax to
+	distribute NEWS file.
+	* examples/Makefile.am: remove install-images target and use automake
+	syntax to distribute image data.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* .dir-locals.el: Correctly set indent-tabs-mode for ChangeLogs,
+	and Makefiles.
+
+	* common.mk (cp_update_rule): New macro.
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in, mkoctfile.cc.in: If output file is specified and
+	it does not end in output_ext, append output_ext.
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in, mkoctfile.cc.in: When compiling files in
+	subdirectories, place object files in current directory by
+	default.
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.cc.in: Accept long options with single -.
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Accept long options with single -.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* HACKING: Clarify gnulib checkout and use.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Remove URL argument from AC_INIT.
+	Use AC_CONFIG_AUX_DIR.  Move AM_INIT_AUTOMAKE after other
+	AC_CONFIG setup macros.  Use gl_EARLY and gl_INIT for gnulib.
+	Add libgnu/Makefile to the list of AC_CONFIG_FILES.  Eliminate
+	special case check for for strftime.
+	* bootstrap: New file, from gnulib.
+	* bootstrap.conf: New file, from gnulib.  Override bootstrap
+	defaults for checkout_only_file, gnulib_tool_option_extras,
+	gnulib_name, and source_base.
+	(gnulib_modules): Add strftime to the list.
+	* autogen.sh: Simply generate makefile fragments and call
+	bootstrap to do the rest of the initial setup.
+	* Makefile.am (SUBDIRS): Add libgnu to the list.
+	* libgnu/Makefile.am: New directory and file.
+	* INSTALL: Remove our copy so version from gnulib will be
+	distributed.
+	* HACKING: New file.
+
+2009-12-08  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: add BUGS and OCTAVE.INSTALL to DISTCLEANFILES
+
+2009-12-08  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Update gnuplot status message.
+	* acinclude.m4 (OCTAVE_PROG_GNUPLOT): Likewise.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* examples/make_int.cc: Delete Emacs local variables.
+
+	* .dir-locals.el: New file.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* examples/firstmexdemo.c, examples/fortdemo.cc,
+	examples/funcdemo.cc, examples/hello.cc, examples/make_int.cc,
+	examples/mycell.c, examples/myfeval.c, examples/myfunc.c,
+	examples/mypow2.c, examples/mysparse.c, examples/mystring.c,
+	examples/mystruct.c, examples/paramdemo.cc,
+	examples/stringdemo.cc, examples/structdemo.cc,
+	examples/unwinddemo.cc, examples/embedded.cc: Untabify.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (OCTAVE_API_VERSION_NUMBER): New variable.
+	(OCTAVE_API_VERSION): Define using OCTAVE_API_VERSION_NUMBER.
+	* common.mk (OCTAVE_API_VERSION_NUMBER): New variable.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Check $have_x = yes, not just $have_x.
+	From Carmine Paolino <earcar@gmail.com>.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Require auotconf 2.62.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* common.mk (OCTAVE_VERSION, OCTAVE_API_VERSION)
+	(OCTAVE_RELEASE_DATE, OCTAVE_COPYRIGHT, OCTAVE_IDX_TYPE):
+	New substituted variables.
+	(version): Define from $(OCTAVE_VERSION).
+	(api_version): Define from $(OCTAVE_API_VERSION).
+	(do_subst_texinfo_vals): Delete macro.
+
+	* configure.ac (AC_CONFIG_HEADER): Quote arg.
+	(AC_CONFIG_FILES): Remove mxarray.h and version.h from the list.
+
+	* examples/Makefile.am (CLEANFILES): New variable.
+
+2009-11-30  Kacper Kowalik  <xarthisius.kk@gmail.com>
+
+	* acinclude.m4 (OCTAVE_HDF5_HAS_ENFORCED_16_API): New macro that
+	tests whether the HDF5 library has an enforced v1.6 API and detects
+	v1.8 APIs.
+	* configure.m4: Adapt test for HDF5 libraries to support v1.8
+	HDF5 libraries.
+
+2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* configure.ac (HAVE_H5GGET_NUM_OBJS) Remove define.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* NEWS: Document ftp objects.
+	* configure.ac: Document that curl libraries impact ftp objects.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-11-25  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* acinclude.m4 (OCTAVE_PROG_GNUPLOT): Don't check for pgnuplot or
+	pipe-gnuplot on Windows systems.  Set default to gnuplot for all
+	systems.
+	(OCTAVE_PROG_GHOSTSCRIPT): Check for gswin32c first on Windows
+	systems, then gs.
+
+2009-11-25  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am examples/Makefile.am liboctave/Makefile.am
+	scripts/Makefile.am src/Makefile.am test/Makefile.am:
+	Remove unnecessary .PHONY targets for common targets which
+	Automake supplies already.  Examples are local-all, install-local-data
+
+2009-11-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_MSG_NOTICE): Report graphics (fltk) CFLAGS.
+	Report fontconfig CFLAGS and LIBS.
+	Report freetype2 CFLAGS and LIBS.
+
+2009-11-21  John W. Eaton  <jwe@octave.org>
+
+	* common.mk: Substitute FT2_CFLAGS.
+	* configure.ac: Remove spurious lines in check for freetype.  Add
+	$FT2_CFLAGS to $XTRA_CXXFLAGS.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-11-16  John W. Eaton  <jwe@octave.org>
+
+	* common.mk (AM_CXXFLAGS): Don't include DLL_CXXDEFS in the list.
+	(CONFIGURE_CFLAGS): New variable.
+	(AM_CFLAGS): Define similar to AM_CXXFLAGS.
+
+2009-11-12  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac (AC_CONFIG_FILES): Also generate libcruft/mkf77def.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* acinclude.m4 (OCTAVE_IEEE754_DATA_FORMAT): Fail if IEEE 754
+	format is not detected.
+
+2009-11-11  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* configure.ac: Remove tests for ftgl.
+
+2009-11-11  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.ac: Remove -mwindows from FLTK_LDFLAGS.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Fail if LT_INIT it is not defined.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Update.
+
+	* configure.ac: Exit with error if BLAS or LAPACK libraries are
+	not found or if the BLAS library is found to be incompatible with
+	the Fortran compiler.  Eliminate warn_blas_f77_incompatible
+	variable.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Set octincludedir to
+	$(includedir)/octave-$(version)/octave, not
+	$(includedir)/octave-$(version).
+	* mkoctfile.in: Set DEFAULT_INCFLAGS to -I$octincludedir/.. and
+	-I$octincludedir instead of -I$octincludedir and
+	-I$octincludedir/octave.
+
+	* configure.ac: Pass args to AC_INIT.  Invoke AM_INIT_AUTOMAKE and
+	AC_PROG_LIBTOOL.  Don't call AC_PROG_RANLIB.  Set version info here.
+	Call AC_CONFIG_MACRO_DIR.  Give same warning for gcc 1.x and 2.x.
+	Use AM_CONDITIONALS for FFTW, BLAS, and LAPACK.  Don't set
+	variables with calls to ACX_BLAS_WITH_F77_FUNC or ACX_LAPACK.
+	Don't substitute BLAS_DIR or LAPACK_DIR.  Use LT_INIT.  Eliminate
+	--enable-shared and --enable-static options (now provided by
+	LT_INIT).  Set SHARED_LIBS and STATIC_LIBS variables based on
+	LT_INIT variables.  Handle dlopen libraries with info from
+	LT_INIT.  Substitute NO_UNDEFINED_FLAG (only set on Windows
+	sytems).  Include $LAPACK_LIBS in $LIBS when checking for qrupdate
+	and cholmod.  Handle --enable-dl consistently with other --enable
+	options.  Don't copy $srcdir/Makefile in AH_BOTTOM commands.
+	Substitute LEX_OUTPUT_ROOT.  Use AM_CONDITONAL for
+	ENABLE_DYNAMIC_LINKING.  Reindent configure summary.
+	(AC_CONFIG_FILES): Don't list Makefiles in libcruft
+	subdirectories.  Generate Makefile and src/version.h.  Don't
+	generate Makeconf, octMakefile, m4/Makefile, emacs/Makefile,
+	examples/@polynomial/Makefile, or examples/@FIRfilter/Makefile.
+
+	* run-octave.in Call libtool to execute src/octave.
+	(ldpreloadsep, liboctinterp, liboctave, libcruft): Delete variables.
+	(INFOFILE): Find it in $top_srcdir, not $builddir.
+
+	* acinclude.m4: Rename from aclocal.m4.
+	(OCTAVE_PROG_FLEX): Don't include -t in LFLAGS.
+
+	* autogen.sh: Exit immediately on error.  Use libtoolize, aclocal,
+	and automake.  Only run autoconf and autoheader in top-level and
+	scripts directories.
+	Run liboctave/config-ops.sh, doc/interpreter/config-images.sh, and
+	src/DLD-FUNCTIONS/config-module.sh, to generate source lists for
+	subdirectories.
+
+	* AUTHORS, Makefile.am, common.mk, m4/module.mk, emacs/module.mk,
+	examples/@FIRfilter/module.mk, examples/@polynomial/module.mk,
+	examples/Makefile.am: New files.
+	* Makeconf.in, Makefile, octMakefile.in, m4/Makefile.in,
+	emacs/Makefile.in, install-sh, examples/Makefile.in,
+	examples/@FIRfilter/Makefile.in, examples/@polynomial/Makefile.in:
+	Delete.
+
+2009-11-09  David Grundberg  <davidg@cs.umu.se>
+
+	* configure.ac: Use AMD_CPPFLAGS while checking for UMFPACK.
+
+2009-10-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* configure.in: Add support for dlopen on Mac systems.
+
+2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.ac: Define HAVE_QRUPDATE_LUU if qrupdate supports LU updates.
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.ac: Use the LANG argument to OCTAVE_CHECK_LIBRARY to avoid
+	ugly names.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-09-18  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4: Consistently quote first arg to AC_DEFUN.
+
+2009-09-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Also AC_DEFINE OCTAAVE_IDX_TYPE.
+	(AH_BOTTOM): Include contents of libcruft/misc/oct-dlldefs.h and
+	liboctave/oct-types.h here.  Use C-style comments.
+	(AC_CONFIG_FILES): Remove liboctave/oct-types.h from the list.
+
+2009-09-15  John W. Eaton  <jwe@octave.org>
+
+	* configure.ac: Rename from configure.in.
+	(AC_CONFIG_FILES): Add m4/Makefile to the list.
+	* acx_blas.m4, acx_lapack.m4, acx_blas_f77_func.m4,
+	acx_pthread.m4: Move to m4 subdirectory.
+	* m4/Makefile.in: New file.
+	* octMakefile.in (M4_FILES): Adjust for new m4 subdirectory.
+	Rename all instances of configure.in to configure.ac.
+	(CONF_DISTSUBDIRS, DISTSUBDIRS): Add m4 to the lists.
+
+	* configure.in: Substitute ac_config_headers.
+	* octMakefile.in (CONFIG_FILES): Include @ac_config_headers@ in
+	the list.  From Thorsten Meyer <thorsten.meyier@gmx.de>.
+
+2009-09-04  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (SPARSE_CPPFLAGS, SPARSE_LDFLAGS, FFTW_CPPFLAGS,
+	FFTW_LDFLAGS): Don't sort lists.
+
+2009-09-02  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makeconf.in: Order SPARSE_LIBS so linking succeeds on Cygwin.
+
+2009-09-04  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	*  README.Cygwin: Update version info.
+
+2009-09-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (ldpreloadsep): New variable.  Set to ':' for Cygwin.
+	* Makeconf.in (do-subst-script-vals): Substitute it.
+	* run-octave.in: Use it to seprate elements in the LD_PRELOAD variable.
+
+2009-09-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): If HAVE_Z is defined, define HAVE_ZLIB.
+
+2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in (FLOAT_TRUNCATE): New config macro.
+
+2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* acx_blas_f77_func.m4 (ACX_BLAS_F77_FUNC): Check for correct INTEGER
+	size.
+
+2009-09-01  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_REQUIRE_64_BIT_FORTRAN_INTEGERS): New macro.
+	* configure.in: Use it, if building with --enable-64.
+	Move checks for Fortran compiler ahead of checks for libraries.
+
+2009-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-08-27  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Properly save and restore CPPFLAGS and LIBS when
+	checking for GraphicsMagick++.  Don't temporarily change LDFLAGS.
+
+2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (m4_ifblank, m4_ifnblank): State FSF copyright and markup
+	as FIXME.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Restore LIBS after checking for ARPACK.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for UMFPACK.
+	* octave-bug.in, octave-bug.cc.in: Substitute UMFPACK_CPPFLAGS and
+	UMFPACK_LDFLAGS.
+	* Makeconf.in (UMFPACK_CPPFLAGS, UMFPACK_LDFLAGS): New variables.
+	(do-subst-config-vals): Substitute them.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for qrupdate.
+	* octave-bug.in, octave-bug.cc.in: Substitute QRUPDATE_CPPFLAGS and
+	QRUPDATE_LDFLAGS.
+	* Makeconf.in (QRUPDATE_CPPFLAGS, QRUPDATE_LDFLAGS): New variables.
+	(do-subst-config-vals): Substitute them.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in: Correct substitutions.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Allow empty list of header files.
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for arpack.
+	* octave-bug.in, octave-bug.cc.in: Substitute ARPACK_CPPFLAGS and
+	ARPACK_LDFLAGS.
+	* Makeconf.in (ARPACK_CPPFLAGS, ARPACK_LDFLAGS): New variables.
+	(do-subst-config-vals): Substitute them.
+
+2009-08-26  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* mkoctfile.cc.in: Fix typo.
+	* octave-bug.cc.in: Correct substututions.
+
+2009-08-25  David Grundberg  <individ@acc.umu.se>
+
+	* configure.in: Run PKG_PROG_PKG_CONFIG earlier. Use pkg-config
+	instead of GraphicsMagick++-config. Determine only -I, -L and -l
+	flags and put them in MAGICK_CPPFLAGS, MAGICK_LDFLAGS and
+	MAGICK_LIBS respectively. Substitute these variables.
+	Remove variables MAGICK_CONFIG and MAGICK_INCFLAGS.
+	Test linking against GraphicsMagick++.
+	* Makeconf.in: Don't run $(MAGICK_CONFIG) here. Use substituted
+	valued from MAGICK_CPPFLAGS, MAGICK_LDFLAGS and MAGICK_LIBS.
+	Remove variables MAGICK_CONFIG and MAGICK_INCFLAGS.
+
+2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* acx_blas_f77_func.m4: Fix typo.
+
+2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-08-18  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API): If test fails, set
+	octave_hdf5_ok to no instead of setting HAVE_HDF5 to false.
+	* configure.in: Check octave_hdf5_ok instead of HAVE_HDF5.
+	Set TEXINFO_HDF5 if HDF5 library is found.
+
+2009-08-18  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (ALL_CPPFLAGS): Add HDF5_CPPFLAGS to the list.
+	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API):
+	Set HAVE_HDF5 to false, not WITH_HDF5.
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for HDF5
+	library.  Print HDF5_CPPFLAGS and HDF5_LDFLAGS in the summary.
+	* octave-bug.in, octave-bug.cc.in, Makeconf.in: Substitute
+	HDF5_CPPFLAGS and HDF5_LDFLAGS.
+
+2009-08-18  John W. Eaton  <jwe@octave.org>
+
+	* acx_blas_f77_func.m4 (ACX_BLAS_F77_FUNC): Save and restore LIBS.
+
+2009-08-18  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Use variables named
+	octave_check_library_save_XXX instead of save_XXX.
+	* configure.in: Add Z_LDFLAGS and Z_LIBS to LIBS, and Z_CPPFLAGS
+	to CPPFLAGS in checks for curl and glpk libraries.
+
+2009-08-18  David Grundberg  <individ@acc.umu.se>
+
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Clear QHULL_LIBS etc on
+	errors. Interpret --without-qhull etc correctly.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in, mkoctfile.cc.in (FFTW3_LDFLAGS, FFTW3_LIBS,
+	FFTW3F_LDFLAGS, FFTW3F_LIBS): Substitute instead of FFTW_LIBS.
+	(FFTW_LIBS): Define from FFTW3_LDFLAGS, FFTW3_LIBS,
+	FFTW3F_LDFLAGS, and FFTW3F_LIBS variables.
+
+	* octave-bug.cc.in, octave-bug.in (Z_CPPFLAGS, Z_LDFLAGS):
+	Substitute and display them.
+	(Z_LIBS): Rename from ZLIB_LIBS.
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for ZLIB.
+	Print Z_CPPFLAGS and Z_LDFLAGS in the summary.
+	* Makeconf.in (Z_CPPFLAGS, Z_LDFLAGS): New variables.
+	(Z_LIBS): Rename from ZLIB_LIBS.
+	(do-subst-config-vals): Substitute them.
+
+	(ALL_CPPFLAGS): New variable.
+	(%.o : %.c, %.o : %.cc, pic/%.o : %.c, pic/%.o : %.cc):
+	Use $(ALL_CPPFLAGS) instead of $(CPPFLAGS) in command.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in, octave-bug.cc.in: Include AMD_CPPFLAGS,
+	AMD_LDFLAGS, AMD_LIBS, ARPACK_LIBS, BLAS_LIBS, CAMD_CPPFLAGS,
+	CAMD_LDFLAGS, CAMD_LIBS, CARBON_LIBS, CCOLAMD_CPPFLAGS,
+	CCOLAMD_LDFLAGS, CCOLAMD_LIBS, CHOLMOD_CPPFLAGS, CHOLMOD_LDFLAGS,
+	CHOLMOD_LIBS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS, COLAMD_LIBS,
+	CURL_CPPFLAGS, CURL_LDFLAGS, CURL_LIBS, CXSPARSE_CPPFLAGS,
+	CXSPARSE_LDFLAGS, CXSPARSE_LIBS, DL_LIBS, FFTW3_CPPFLAGS,
+	FFTW3_LDFLAGS, FFTW3_LIBS, FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS,
+	FFTW3F_LIBS, GRAPHICS_LIBS, GLPK_CPPFLAGS, GLPK_LDFLAGS,
+	GLPK_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS, PTHREAD_LIBS,
+	QHULL_CPPFLAGS, QHULL_LDFLAGS, QHULL_LIBS, QRUPDATE_LIBS,
+	READLINE_LIBS, REGEX_LIBS, TERM_LIBS, UMFPACK_LIBS, X11_INCFLAGS,
+	X11_LIBS, and ZLIB_LIBS in the summary of varibles.
+
+	* configure.in: Include LEXLIB and LIBGLOB in the summary.
+
+2009-08-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* aclocal.m4 (OCTAVE_HDF5_DLL): Include HDF5_LIBS in LIBS before
+	attempting link.
+
+2009-08-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4: Define the autoconf 2.64+ m4sugar macros `m4_ifblank'
+	and `m4_ifnblank' if on earlier autoconfs.
+
+2009-08-13  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (GLPK_CPPFLAGS, GLPK_LDFLAGS,
+	AMD_CPPFLAGS, AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS,
+	CCOLAMD_CPPFLAGS, CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS,
+	CHOLMOD_LDFLAGS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS,
+	CXSPARSE_CPPFLAGS, CXSPARSE_LDFLAGS): New variables.
+	(do-subst-config-vals): Substitute Them.
+	(SPARSE_CPPFLAGS, SPARSE_LDFLAGS, SPARSE_LIBS, FFTW_CPPFLAGS,
+	FFTW_LDFLAGS, FFTW_LIBS): New variables.
+
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for GLPK, AMD,
+	CAMD, CCOLAMD, CHOLMOD, COLAMD, CXSPARSE, FFTW3, and FFTW3F
+	libraries.  Print GLPK_CPPFLAGS, GLPK_LDFLAGS, AMD_CPPFLAGS,
+	AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS, CCOLAMD_CPPFLAGS,
+	CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS, CHOLMOD_LDFLAGS,
+	COLAMD_CPPFLAGS, COLAMD_LDFLAGS, CXSPARSE_CPPFLAGS,
+	CXSPARSE_LDFLAGS, FFTW3_CPPFLAGS, FFTW3_LDFLAGS, FFTW3_LIBS,
+	FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS, and FFTW3F_LIBS in the summary.
+	(AH_BOTTOM): Define HAVE_FFTW if HAVE_FFTW3 and HAVE_FFTW3F are
+	both defined.
+
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): New optional arguments for
+	language and doc string.
+
+2009-08-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): Prepend to LIBS rather than
+	replacing.
+
+2009-08-13  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (QHULL_CPPFLAGS, QHULL_LDFLAGS, CURL_CPPFLAGS,
+	CURL_LDFLAGS): New variables.
+	(do-subst-config-vals): Substitute QHULL_CPPFLAGS, QHULL_LDFLAGS,
+	CURL_CPPFLAGS, and CURL_LDFLAGS
+	* configure.in: Use OCTAVE_CHECK_LIBRARY to check for qhull and
+	curl libraries.  Print QHULL_CPPFLAGS, QHULL_LDFLAGS,
+	CURL_CPPFLAGS, and CURL_LDFLAGS in the summary.  Print glpk
+	library warning at time of check.  Use AC_MSG_WARN, not
+	AC_MSG_RESULT, to print fftw warning.
+	* aclocal.m4 (OCTAVE_CHECK_LIBRARY): New macro.
+	(AC_CHECK_QHULL_VERSION, AC_CHECK_QHULL_OK):
+	Implement with modern autoconf macros.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Define and substitute TERM_LIBS instead of
+	TERMLIBS.  Don't add TERM_LIBS to LIBS.  Define DL_LIBS instead of
+	adding them to LIBS.  Display TERM_LIBS and DL_LIBS in summary
+	reporrt.
+	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Define and substitute
+	READLINE_LIBS instead of LIBREADLINE.  Don't add readline library
+	to LIBS.  Display READLINE_LIBS in summary report.  Temporarily
+	add TERM_LIBS to LIBS when checking for readline library.
+	* Makeconf.in, mkoctfile.cc.in, mkoctfile.in:
+	Use READLINE_LIBS instead of LIBREADLINE and TERM_LIBS instead of
+	TERMLIBS.  Substitute DL_LIBS.
+	(do-subst-config-vals): Substitute TERM_LIBS and DL_LIBS.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Generate separate variables for HDF5_LIBS and
+	ZLIB_LIBS.  Don't add them to LIBS.  Add separate entries for them
+	in the summary report.
+	* Makeconf.in (HDF5_LIBS, ZLIB_LIBS): New variables.
+	(do-subst-config-vals): Substitute AMD_LIBS, ARPACK_LIBS,
+	CAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS, COLAMD_LIBS, CXSPARSE_LIBS,
+	FT2_LIBS, GRAPHICS_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS,
+	PTHREAD_LIBS, QHULL_LIBS, QRUPDATE_LIBS, REGEX_LIBS, UMFPACK_LIBS,
+	ZLIB_LIBS.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* acx_pthread.m4: New file.
+	* configure.in: Include it and invoke ACX_PTHREAD macro.  Print
+	ptrhead flags and libraries in summary output.
+	* Makeconf.in (PTHREAD_CFLAGS, PTHREAD_LIBS): Substitute values.
+	(ALL_CFLAGS, ALL_CXXFLAGS): Include $(PTHREAD_CFLAGS).
+
+2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-07-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-07-16  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (MAGICK_LIBS): Don't pass --ldflags to $(MAGICK_CONFIG).
+
+2009-07-09  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Don't use system strftime on MinGW systems.
+
+2009-06-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Correct info.
+	* NEWS: Update.
+
+2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* aclocal.m4: Add pkg.m4 macros.
+	* configure.in (HAVE_FREETYPE): New defined variable.
+	* configure.in: Add configure tests for Fontconfig detection.
+
+2009-06-23  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* run-octave.in: Exclude @-files from path.  Remove CVS exclusions.
+
+2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Update.
+
+2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* examples/@polynomial/subsref.m: Handle ':' correctly.
+	* examples/@polynomial/subsasgn.m: Ditto.
+
+2009-06-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* example/@polynomial/numel.m: New method.
+	* example/@polynomial/Makefile.in: Include it.
+
+2009-05-22 Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* mkoctfile.cc.in: mask MSVC specific linker flags for mex output
+
+2009-06-02  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* examples/@polynomial: Fix end method for zero based indexing.
+
+2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* examples/@polynomial/subsref.m: Allow chained subscripts,
+	fix behavior according to docs.
+	* examples/@polynomial/subsasgn.m: Allow chained subscripts,
+	fix behavior according to docs.
+
+2009-06-02  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* examples/@polynomial: Remove tabs from all functions so
+	documentation looks right.  Fix a bunch of methods
+	that didn't work.  Add a method referred to in the docs
+	that didn't exist.
+
+2009-05-26  John W. Eaton  <jwe@octave.org>
+
+	* src/dirfns.cc (Fpathsep): Allow path separator to be set.
+
+2009-03-17  Thomas Weber  <thomas.weber.mail at gmail.com>
+
+	* configure.in: fix typo with regards to termios.h
+
+2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* examples/@FIRfilter/Makefile.in: New file.
+	* examples/Makefile.in: Include it.
+	* configure.in: Ditto.
+
+2009-05-24  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.in: (SCRIPTS_EXE_SUFFIX) Define to ".exe" for
+	mingw32 compilation (similar to msvc)
+
+2009-05-24  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* examples/@FIRfilter: added FIRfilter class example.
+
+2009-05-22  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* src/sysdep.cc: Removed CYGWIN_init
+
+2009-05-21  Marco Atzeri  <marco_atzeri@yahoo.it>
+	* configure.in: Correct my mistake in cygwin SHLBINPRE SHLBIN
+
+2008-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* aclocal.m4 (AC_CHECK_QHULL_OK): Do not use -lm under
+	Windows systems.
+	* configure.in: Add -luser32 to LIBS under Windows.
+
+	* configure.in (SCRIPTS_EXE_SUFFIX): New substituted
+	variable. Define to ".exe" for MSVC compilation.
+	* octMakefile.in (SCRIPTS_EXE_SUFFIX): New variable.
+	(DISTFILES): Add mkoctfile.cc.in, octave-config.cc.in and
+	octave-bug.cc.in.
+	(SHELL_SCRIPTS): Use SCRIPTS_EXE_SUFFIX.
+	(mkoctfile.cc, mkoctfile$(EXEEXT)): New build rules.
+	(octave-config.cc, octave-config$(EXEEXT)): Likewise.
+	(octave-bug.cc, octave-bug$(EXEEXT)): Likewise.
+	(install, install-strip, uninstall): Use SCRIPTS_EXE_SUFFIX.
+	(maintainer-clean, distclean): Remove mkoctfile.[cc|o|exe],
+	octave-config.[cc|o|exe] and octave-bug.[cc|o|exe].
+	(clean): Remove mkoctfile$(EXEEXT), octave-config$(EXEEXT),
+	octave-bug$(EXEEXT) and the corresponding object files.
+
+2009-05-07  Rik  <rdrider0-list@yahoo.com>
+
+	* README.mirrors: Remove invalid mirror sites which no longer exist.
+
+2009-05-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.in, mkoctfile.in, mkoctfile.cc.in, octave-bug.in,
+	octave-bug.cc.in: Eliminate last remnants of f2c goop.
+
+2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* configure.in, Makeconf.in: (SHLPRE): Rename from SHLLIBPRE.
+
+2009-05-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Include the whole 3.x g++ series as problematic.
+	* Makefile: Don't mention that g++-3.x might work.
+
+2009-05-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Put -lftgl ahead of $FT2_LIBS, and $FT2_LIBS ahead
+	of $OPENGL_LIBS.
+
+2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
+
+	* aclocal.m4 (OCTAVE_HAVE_C99_VSNPRINTF): New macro.
+	* configure.in: Use it.
+
+	* configure.in (rs6000-ibm-aix* | powerpc-ibm-aix*): Set
+	library_path_var to LIBPATH.
+	(hppa*-hp-hpux*): Set library_path_var to SHLIB_PATH.
+	(ia64*-hp-hpux*): New case for shared library variables.
+
+	* configure.in: Provide decls for exp2, round, and tgamma if they
+	are missing.
+
+2009-04-11  David Bateman  <dbateman@free.fr>
+
+	* NEWS: Add new graphics functions.
+
+2009-04-05  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Use AC_USE_SYSTEM_EXTENSIONS instead of
+	AC_GNU_SOURCE, AC_AIX, AC_MINIX, and AC_ISC_POSIX.
+	Require Autoconf 2.60.
+
+	* configure.in: Add -Wformat to extra warning flags.  Add
+	-Wconversion to strict warning flags.
+
+2009-04-02  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-script-install): Use $(INSTALL_DATA) instead of
+	mv to install PKG_ADD file.
+
+2009-04-02  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makeconf.in (do-subst-script-vals): Use SHLLIBPRE instead of
+	LIBPRE for names for shared libraries.
+
+2009-03-28  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* configure.in: For cygwin, set LIBPRE=lib and clear CPICFLAG,
+	CXXPICFLAG, and FPICFLAG.
+
+2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (OCTAVE_CMATH_FUNC): Add missing AC_LANG_POP.
+	* configure.in: Enclose string in quotes.
+
+2009-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: More updates.
+
+2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (OCTAVE_CMATH_FUNC): New macro.
+	* configure.in: Use it.
+
+2009-03-09  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Use doc-cache instead of DOC for doc cache file.
+	* configure.in: Likewise.
+
+	* configure.in (--enable-extra-warning-flags): New option to
+	control extra compiler warning flags.
+	(--enable-strict-warning-flags): Rename from --enable-picky-flags.
+	(GXX_STRICT_FLAGS): Remove -Wenum-clash from the list.
+
+2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
+
+	* NEWS: Mention 'histc'.
+
+2009-03-07  John W. Eaton  <jwe@octave.org>
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (doc_cache_file): New default variable
+	* Makeconf.in (@doc_cache_file, do-subst-default-vals): Substitute it.
+
+2009-02-24  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in (DOCFILE): New variable.  Pass --doc-cache-file
+	option to Octave.
+
+	* configure.in: Copy Makefile to build directory if not building
+	in srcdir.
+
+2009-02-24  Thorsten Meyer  <thorsten@hexe>
+
+	* configure.in: AC_SUBST ac_config_files.
+	* Makeconf.in (config_opts): Define CONFIG_SUBDIRS variable.
+	* Makefile: Add make target for configuration files.
+	* octMakefile.in: Add make targets for configuration files,
+	config.status and configure.
+
+	* Makefile.in: Rename to Makefile.
+	* configure.in: Remove Makefile from list of autogenerated
+	configuration files.
+	* octMakefile.in: Remove references to Makefile.in, add Makefile
+	to list of CONF_DISTFILES.
+	* octMakefile.in (maintainer-clean distclean): Don't delete Makefile.
+
+2009-02-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.in: Check for mkstemps on MinGW platform
+	(HAVE_MKSTEMPS): Define if mkstsmps is avilable in libiberty.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Mention cummin and cummax
+
+2009-02-17  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_GPERF): Don't run gperf.
+
+	* Makeconf.in (do-subst-config-vals): Substitute CARBON_LIBS,
+	X11_INCFLAGS, and X11_LIBS.
+
+2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* Makeconf.in: Substitute CARBON_LIBS.
+	* configure.in: Use CARBON_LIBS instead of LIBS for framework Carbon.
+
+	* configure.in: Fix test for X11 if "--without-x" is given.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Yet more updates.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Mention command-style parsing changes.  More updates.
+
+2009-02-13  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: Update for release.
+
+2009-02-11 Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* aclocal.m4 (OCTAVE_GLUTESSCALLBACK_THREEDOTS): New macro.
+	(OCTAVE_OPENGL): Use it in OpenGL check.
+
+2009-02-11 Ben Abbott  <bpabbott@mac.com>
+
+	* configure.in: Include FTGLTextureFont.h when FTGL_UPPER_CASE is
+	not defined.
+
+2009-02-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (octetcdir): New default value.
+	* Makeconf.in (octetcdir): New variable.
+	(do-subst-default-vals): Substitute octetcdir.
+	* octMakefile.in (install, uninstall): Use $(octetcdir) for NEWS.
+	(DIRS_TO_MAKE): Add $(octetcdir) to the list.
+
+2009-02-10  Rafael Laboissiere  <rafael@debian.org>
+
+	* examples/Makefile.in: Run some clean targets on sub-directory
+	@polynomial.
+
+2009-02-09  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (dist): Create subdirs of examples, not scripts.
+
+	* examples/@polynomial/Makefile.in (do-mkpkgadd):
+	Provide special definition for this directory.
+
+	* examples/Makefile.in (EXAMPLE_SOURCES): Delete unused variable.
+	(SUBDIRS, DISTSUBDIRS): Don't reset to empty.
+
+2009-02-08  John W. Eaton  <jwe@octave.org>
+
+	* install-octave.in: Delete.
+	* configure.in: Delete AC_CONFIG_COMMANDS macro that was used to
+	make install-octave executable.
+
+2009-02-07  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (all): Display $(prefix) in summary message.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_HDF5_HAS_REQUIRED_API): New macro.
+	* configure.in: Use it in HDF5 check.
+
+2009-02-04  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* configure.in: Use separate cases for *-*-mingw* and *-*-cygwin*
+	to set variables related to creating shared libraries.
+
+2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (AC_CHECK_QHULL_OK): New macro, based on suggestion by
+	Petr Mikulik <mikulik@physics.muni.cz>.
+	* configure.in: Call it.
+
+2009-02-01  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* autogen.sh: Remove printing of cvs motd.
+
+2009-01-30  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* configure.in (SHLLIBPRE, SHLBINPRE): Fix definitions for Cygwin.
+	(SHLEXT, SHLLIB, SHLBIN, SONAME_FLAGS): Fix definitions for Cygwin
+	and MinGW.
+
+2009-01-30  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.in: Add -lgdi32 to LIBS on *-*-msdosmsvc* and
+	*-*-mingw* systems.
+
+2009-01-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* aclocal.m4 (OCTAVE_HAVE_FRAMEWORK): Add support for
+	--with-framework-<name> and replace "$ac_safe" by "$1".
+	* configure.in: Change "have_carbon" with
+	"have_framework_carbon".
+
+2009-01-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check to see that pcre library has pcre_compile
+	function.
+
+ 	* configure.in (SHLLIBPRE, SHLBINPRE): New variables.  AC_SUBST them.
+ 	(*-*-cygwin*): Set LIBPRE and SHLBINPRE to cyg and SHLLIBPRE to lib.
+	Use SHLLIBPRE and SHLLIB in definition of SONAME_FLAGS.
+	(*-*-msdosmsvc): Make SHLBINPRE and SHLLIBPRE empty.
+ 	Adjust definition of SONAME_FLAGS for SHLLIBPRE.
+
+	* Makeconf.in (SHLLIBPRE, SHLBINPRE): Substitute new variables here.
+	From Marco Atzeri <marco_atzeri@yahoo.it>.
+
+2009-01-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* configure.in: Add of -lregex to REGEX_LIBS.
+
+2009-01-26  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* aclocal.m4 (OCTAVE_HAVE_FRAMEWORK): New macro.
+	* configure.in: Use it.
+
+2009-01-22  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): Define OCTAVE_USE_OS_X_API if
+	__APPLE__ and __MACH__ are defined.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Fix qrupdate warning message.
+
+2009-01-21  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in: Substitute X11_INCFLAGS and X11_LIBS.
+	* configure.in: Use AC_PATH_X to check for X11 header files and
+	libraries.
+
+	* THANKS, Announce: Remove obsolete files.
+	* octMakefile.in (DISTFILES): Remove THANKS from the list.
+
+2009-01-20  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for fstat.
+
+2008-12-23  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Add configuration test for ARPACK.
+	* Makeconf.in (ARPACK_LIBS): Add variable with location of ARPACK
+	library.
+	* NEWS: Document that eigs and svds were moved to Octaave.
+
+2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Remove the OCTAVE_LOCAL_BUFFER stuff (moved to
+	liboctave).
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* NEWS: Document more new features.
+
+2008-12-03  John W. Eaton  <jwe@octave.org>
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2008-11-18  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.cc.in, octave-bug.cc.in: Style fixes.
+
+2008-11-13  Ben Abbott  <bpabbott@mac.com>
+
+	* src/graphics.h.in: Add props screensize & screenpixelsperinch.
+
+2008-11-08  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* Makeconf.in: export PERL variable for use in scripts/mkdoc
+
+2008-10-30  David Bateman  <dbateman@free.fr>
+
+	* NEWS: Minor update to document improved indexing code.
+
+2008-10-23  Jason Riedy  <jason@acm.org>
+
+	* configure.in: Take care to use FT2_CFLAGS when checking
+	for FTGL headers.
+
+2008-10-22  David Bateman  <dbateman@free.fr>
+
+	* examples/@polynomial: Move examples/polynomial here.
+	* examples/@polynomial/Makefile.in: Update for new location.
+	* examples/Makefile.in: Ditto.
+	* configure.in: Change locate of examples/@polynomial makefile
+	in AC_CONFIG_FILES.
+
+2008-10-16  David Bateman  <dbateman@free.fr>
+
+	* NEWS: Minor update.
+
+2008-10-15  David Bateman  <dbateman@free.fr>
+
+	* examples/polynomial/display.m, examples/polynomial/double.m,
+	examples/polynomial/end.m, examples/polynomial/get.m,
+	examples/polynomial/mtimes.m, examples/polynomial/plot.m,
+	examples/polynomial/polynomial.m,
+	examples/polynomial/polynomial_superiorto.m,
+	examples/polynomial/polyval.m, examples/polynomial/set.m,
+	examples/polynomial/subsasgn.m, examples/polynomial/subsref.m:
+	New example files for a sample OOP class.
+	* examples/polynomial/Makefile.in: Add a makefile for this new
+	directory
+	* examples/Makefile.in: Reference the new subdirectory here.
+	* configure.in: Add the new makefile to AC_CONFIG_FILES.
+
+2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Check for sizeof (long double) and randl.
+
+2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* aclocal.m4 (OCTAVE_FAST_INT_OPS): New macro.
+	* configure.in: Call OCTAVE_FAST_INT_OPS
+
+2008-09-08  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.cc.in, octave-bug.cc.in, octave-config.cc.in: Style fixes.
+
+2008-09-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* mkoctfile.cc.in, octave-bug.cc.in, octave-config.cc.in: New files.
+
+2008-08-28  David Bateman  <dbateman@free.fr>
+
+	* NEWS: Update for some of the graphics changes
+
+2008-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* acx_blas_f77_func.m4, acx_lapack.m4: Update macros from
+	<http://autoconf-archive.cryp.to/>.
+
+2008-08-07  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_STRING_NPOS): Delete.
+	* configure.in (OCTAVE_STRING_NPOS): Delete use.
+
+2008-08-04  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-script-vals): Also substitute SED.
+	* run-octave.in: Use sed to append : to path elements
+	instead of using the find expression "-exec echo '{}':".
+	Substitute SED here.
+
+	* aclocal.m4: Fail if no usable version of sed is found.
+
+	* Makefile.in (header-msg): Mention GNU Make requirement.
+	Update GCC version info.
+
+2008-07-31  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (DISTFILES): Add "missing" to the list.
+
+2008-07-30  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (CXX_ABI, OCTAVE_CXX_PREPENDS_UNDERSCORE,
+	OCTAVE_PROG_NM): Delete macros.
+	* configure.in: Delete uses.
+
+2008-07-29  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* aclocal.m4 (OCTAVE_OPENGL): Handle MinGW the same as MSVC.
+
+2008-07-29  David Bateman  <dbateman@free.fr>
+
+	* NEWS.3: Copy from NEWS.
+	* NEWS: Initial update in preparation for a 3.2 release.
+
+2008-07-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: If FTGL.h is found, then also include
+	FTGLTextureFont.h in test code.
+
+2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* configure.in: Remove GRAPHICS_OPENGL variable.
+
+2008-07-21  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_OPENGL): Fix shell syntax problems.
+	Handle HAVE_GL_GL_H and HAVE_OPENGL_GL_H in link test.
+
+	* configure.in: Don't define and substitute FLTK_BACKEND_SRC or
+	GL_RENDER_SRC.
+	(HAVE_FLTK): AC_DEFINE if FLTK is available.
+	(HAVE_OPENGL): AC_DEFINE if OpenGL is available.
+
+2008-07-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Extend FTGL test to test for both ftgl.h and FTGL.h.
+	Use HAVE_FTGL_UPPERCASE to indicate the latter (version <= 2.1.2).
+
+2008-07-19 Rafael Laboissiere  <rafael@debia8n.org>
+
+	* octMakefile.in (CONF_DISTFILES): Include acx_blas_f77_func.m4 in
+	the list.
+
+2008-07-18 Carlo de Falco  <carlo.defalco@gmail.com>
+
+	* aclocal.m4: Search for gl.h and glu.h in OpenGL/ as well as in GL/.
+
+2008-07-18  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Fix FTGL test to handle either FTGL/ftgl.h or ftgl.h.
+	(warn_freetype, warn_ftgl, warn_fltk_config, warn_fltk_opengl):
+	New variables.  Use these instead of overloading warn_graphics.
+
+2008-07-17  David Bateman  <dbateman@free.fr>
+
+	* configure.in (HAVE_MAGICK): New define for presence of
+	GraphicsMagick.
+
+2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* configure.in: Add check for pthread.h.
+
+2008-07-14  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (MAGICK_CONFIG): Substitute here.
+	(MAGICK_INCFLAGS, MAGICK_LIBS): Define using GraphicsMagick++
+	config script.
+	(do-subst-config-vals): Include MAGICK_LIBS and MAGICK_INCFLAGS in
+	list of substitutions.
+	* configure.in: Check for GraphicsMagick++ config script.
+
+2008-07-10  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (DIRS_TO_MAKE): Delete $(localfcnfilepath) and
+	$(localoctfilepath) from the list.  Include $(datadir)
+	$(localfcnfiledir) $(localapifcnfiledir) $(localverfcnfiledir)
+	$(localoctfiledir) $(localapioctfiledir) $(localveroctfiledir)
+	$(imagedir) and $(localapiarchlibdir) in the list.
+
+	* configure.in: Look for FTGL/ftgl.h instead of FTGL/FTGL.h.  Also
+	look for ftgl.h.
+
+2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* configure.in: new substituted variables GL_RENDER_SRC and
+	FLTK_BACKEND_SRC.
+
+2008-06-20  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makeconf.in: Add GRAPHICS_CFLAGS substitution.
+	* configure.in: Add checks for hypotf and _hypotf.
+
+2008-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Move LIBS and CXXFLAGS restoration into
+	the proper block.
+
+2008-06-05  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Add FT2_CFLAGS to XTRA_CXXFLAGS, not CXXFLAGS.
+	Don't add FT2_LIBS to LIBS.
+	Don't generate src/graphics/Makefile, src/graphics/Makerules,
+	src/graphics/opengl/Makefile, or src/graphics/fltk_backend/Makefile.
+
+	* Makeconf.in (FT2_LIBS, GRAPHICS_LIBS): Substitute here.
+
+2008-06-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* configure.in: Use AC_TRY_LINK in FTGL test.
+	Include FT_CFLAGS in CXXFLAGS.
+
+	* aclocal.m4 (OCTAVE_OPENGL): Note FIXME for apple.
+
+	* configure.in: Check for FTGL library.
+
+	* configure.in: Remove check for Fl/glu.h header.
+
+	* aclocal.m4 (AC_CHECK_FT2): New macro to check for freetype2.
+
+	* configure.in: Check for FLTK and corresponding compiler flags.
+
+2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* configure.in: Double-quote warn_graphics variable.
+
+	* aclocal.m4 (OCTAVE_OPENGL): New function to detect OpenGL
+	headers and libraries.
+	* configure.in (OCTAVE_OPENGL): Use it.
+	(OCTGRAPHICS_DLL_DEFS): New define to build
+	graphics-related DLL.
+	(AC_CONFIG_FILES): Generate additional files for graphics
+	related libraries.
+	* Makeconf.in (OPENGL_LIBS): New variable.
+
+	* .hgignore: Also ignore build-.*, configure, and autom4te.cache.
+
+2008-05-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mk-opts.pl (emit_print_function, emit_set_function,
+	emit_show_function): Support float type.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* configure.in (AC_CHECK_FUNCS): Add expm1, lgammaf, lgammaf_r,
+	log1pf and tgammaf. Also check for libfftw3f.
+
+2008-04-09  Rafael Laboissiere  <rafael@debian.org>
+
+	* example/octave.desktop.in: Drop the Encoding key, which is
+	deprecated by the FreeDesktop standard.
+
+2008-04-04  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-check-m-sources): New macro.
+
+2008-04-03  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* README.Cygwin: Update.
+
+2008-04-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* acx_blas_f77_func.m4: New file.
+	* configure.in: Call ACX_BLAS_WITH_F77_FUNC instead of ACX_BLAS.
+	Supply a warning for incompatible Fortran/BLAS configuration.
+
+2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* configure.in: Check for expm1 and log1p functions.
+
+2008-03-25  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for trunc.
+
+2008-03-21  David Bateman  <dbateman@free.fr>
+
+	* configure.in (HAVE_AMD): Complete test for presence of amd.
+
+2008-03-18  David Bateman  <dbateman@free.fr>
+
+	* configure.in (AC_CHECK_FUNCS): Also check lgamma_r.
+
+2008-03-11  David Bateman  <dbateman@free.fr>
+
+	* run-octave.in: Fix typo.
+
+2008-02-21  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (install install-strip): Ignore errors
+	installing octave.desktop file.
+
+2008-02-15  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (*-*-freebsd*, *-*-openbsd*): Don't set SH_LD.
+
+2008-02-14  John W. Eaton  <jwe@octave.org>
+
+	* examples/fortdemo.cc: Don't check f77_exception_encountered.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (octave.desktop):
+	Use mv instead of move-if-change.
+
+2008-02-05  John W. Eaton  <jwe@octave.org>
+
+	* dlfcn/Makefile.in: Unconditionally include $(MAKEDEPS).
+	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
+
+2008-01-12  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4: Call AC_SUBST instead of AC_DEFINE_UNQOTED for
+	GNUPLOT_BINARY.
+	* aclocal.m4, configure.in: Use GNUPLOT instead of GNUPLOT_BINARY
+	as variable name.
+	* Makeconf.in (GNUPLOT): Substitute.
+	(do-subst-config-vals): Substitute GNUPLOT.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-12-13  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (octave-bug, octave-config, mkoctfile):
+	Also depend on $(top_srcdir)/src/version.h.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* acx_blas.m4: Use -lsunperf, not -xlic_lib=sunperf.
+	From Jim Langston <Jim.Langston@Sun.COM>.
+
+2007-12-06  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (*-*-darwin*): Only set CPICFLAG, CXXPICFLAG, and
+	FPICFLAG to "" on powerpc systems.
+
+2007-12-04  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in (LIBDLFCN): Delete variable and all uses.
+	* Makeconf.in (LIBDLFCN, DLFCN_INCFLAGS): Likewise.
+	* configure.in (DLFCN_DIR, LIBDLFCN, DLFCN_INCFLAGS): Likewise.
+	Don't generate dlfcn/Makefile.
+	* octMakefile.in (DISTSUBDIRS): Delete dlfcn from the list.
+	(SUBDIRS): Don't substitute DLFCN_DIR here.
+
+2007-12-03  Moritz Borgmann  <octave@moriborg.de>
+
+	* Makeconf.in, aclocal.m4, configure.in: Check for find program,
+	preferably gfind (on non-GNU systems).  Need a sane find for
+	run-octave script.
+	* run-octave.in: Use FIND and AWK as determined by configure.
+
+2007-12-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: If available, include <sys/types.h> in test for
+	sigset_t and sig_atomic_t.
+
+2007-11-30  Moritz Borgmann  <octave@moriborg.de>
+
+	* configure.in: Also check for sunmath.h.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* PROJECTS: condest now implemented.
+
+	* NEWS: Document the TeX interpreter mode and its limitations with
+	gnuplot 4.0.
+
+	* NEWS: Document the use of "colormap gmap40" to workaround some
+	gnuplot 4.0 colormap issues.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Don't create Makefrag.bsd.
+
+2007-11-14  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* configure.in: Rework pcre.h tests to work with autoconf 2.59,
+	and avoid explicit pcre/pcre.h check by using pcre-config.
+
+2007-11-13  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* octave-bug.in: Try mailx, then Mail, then /usr/ucb/mail, then
+	/bin/mail.
+
+2007-11-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Only define HAVE_PCRE_H if <pcre.h> has the
+	definitions we need.  Likewise for <pcre/pcre.h>.
+
+2007-11-10  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Delete AC_SUBST_FILE(f77_rules_frag).
+
+2007-11-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Also check for pcre/pcre.h.
+
+2007-11-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Delete BLAS library calling convention
+	compatibility check.
+
+2007-10-31  John W. Eaton  <jwe@octave.org>
+
+	* README.binary-dist: Delete.
+
+	* README.MachTen: Delete.
+	* octMakefile.in (DISTFILES): Remove it from the list.
+
+2007-10-30  David Bateman  <dbateman@free.fr>
+
+	* examples/addtwomatrices.cc, examples/celldemo.cc,
+	examples/firstmexdemo.c, examples/fortdemo.cc, examples/fortsub.f,
+	examples/funcdemo.cc, examples/globaldemo.cc,
+	examples/helloworld.cc, examples/mycell.c, examples/myfeval.c,
+	examples/myfunc.c, examples/mypow2.c, examples/mysparse.c,
+	examples/mystring.c, examples/mystruct.c, examples/paramdemo.cc,
+	examples/stringdemo.cc, examples/structdemo.cc,
+	examples/unwinddemo.cc: Doc fixes for small book format.
+
+2007-10-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makeconf.in: Remove UNSETCOMSPEC trick.
+
+2007-10-25  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): Define OCTAVE_EMPTY_CPP_ARG here.
+
+2007-10-24  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (maintainer-clean distclean): No need to delete
+	Makefrag.f77 and Makerules.f77.
+	* Makeconf.in: Include rules for making .o files from .f files
+	instead of substituting @f77_rules_frag@.
+	* configure.in): Delete handling of --with-f2c and --with-f77
+	options.  No need to call OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS.
+	Delete all special cases for f2c.
+	* aclocal.m4 (OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS): Delete macro.
+
+	* FLEX.patch: Delete obsolete file.
+	* octMakefile.in (DISTFILES): Remove it from the list.
+
+	* acx_blas.m4: Use "-Wl,-framework -Wl,vecLib" instead of
+	just "-framework vecLib" in test for Mac OS X test.
+
+	* configure.in, aclocal.m4: Avoid AC_TRY_EVAL.
+
+	* aclocal.m4 (OCTAVE_STRPTIME_BROKEN): New macro.
+	* configure.in: Use it.
+
+2007-10-23  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: When checking for -lf2c, set F2CLIBS instad of
+	FLIBS, then set FLIBS to $F2CLIBS just before printing the summary.
+	Check for BLAS library calling convention compatibility.
+
+2007-10-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Delete checks for METIS.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (parse_input): Allow comment lines beginning with #.
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+	* COPYING: Update to GPLv3.
+
+	* run-octave.in: List args explicitly in exec command.
+
+2007-10-11  John W. Eaton  <jwe@octave.org>
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2007-10-10  Kim Hansen  <kimhanse@gmail.com>
+
+	* run-octave.in: Use $args.  Eliminate "if [ -n "$args" ]" conditional.
+
+2007-10-09  John W. Eaton  <jwe@octave.org>
+
+	* gdbinit.in: Delete.
+	* octMakefile.in (DISTFILES): Remove it from the list.
+	(.gdbinit): Delete rule.
+	(maintainer-clean, distclean): No need to delete .gdbinit.
+
+2007-10-09  Kim Hansen  <kimhanse@gmail.com>
+
+	* run-octave.in: Use gdb with --args, not .gdbinit.
+
+2007-10-08  John W. Eaton  <jwe@octave.org>
+
+	* emacs/octave-hlp.el, emacs/octave-inf.el, emacs/octave-mod.el:
+	Sync with GNU Emacs versions.
+	* emacs/octave-mod.el: Delete last two args from calls to
+	define-abbrev.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for lgamma and tgamma.
+
+2007-10-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (UGLY_DEFS): Delete special case for darwin.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_SED): Also check for \(X\|Y\) style
+	regular expression alternation.
+
+2007-10-01  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_CHECK_STRPTIME): Delete.
+	* configure.in: Don't use OCTAVE_CHECK_STRPTIME, simply check for
+	strptime.
+
+2007-09-18  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* aclocal.m4 (OCTAVE_CHECK_STRPTIME): New macro.
+	* configure.in: Use it.
+
+2007-09-06  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Avoid broken strptime function on Cygwin systems.
+
+2007-09-01  David Bateman  <dbateman@free.fr>
+
+	* configure.in: AC_SUBST and check the variable TEXINFO_QHULL.
+	* Makeconf.in: Use it.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Extra Qhull bits.
+
+2007-08-24  Kim Hansen  <kimhanse@gmail.com>
+
+	* run-octave.in: Use `command` instead of $(command) to accomodate
+	brain-dead shells.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Probe for the use of Qhull.
+	* aclocal.m4 (AC_CHECK_QHULL_VERSION): Macro to check whether
+	Qhull needs a version number.
+	* Makeconf.in: Add QHULL_LIBS.
+
+2007-08-23  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_SED): Don't clobber value from environment.
+	From: Christian Cornelssen <ccorn@cs.tu-berlin.de>.
+
+2007-08-23  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* aclocal.m4 (OCTAVE_PROG_GNUPLOT): Drop check for multiple plot
+	windows.
+
+2007-08-10  S�ren Hauberg  <hauberg@gmail.com>
+
+	* ROADMAP: Update for current sources.
+
+2007-07-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Also look for glpk/glpk.h.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* octMakefile.in, dlfcn/Makefile.in, emacs/Makefile.in,
+	examples/Makefile.in, test/Makefile.in: Adjust DISTFILES to allow
+	out of tree "make dist" to work.
+
+2007-07-24  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (*-*-msdosmsvc): Only add -g to DL_LDFLAGS and
+	SH_LDFLAGS if either CFLAGS or CXXFLAGS contains -g.
+
+2007-07-24  Rafael Laboissiere  <rafael@debian.org>
+
+	* Makeconf.in (RUNTEST): Delete variable substitution.
+	(do-subst-config-vals): Don't substitute %OCTAVE_CONF_RUNTEST%.
+
+2007-07-20  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* mkoctfile.in: Fix typo.
+
+2007-06-25  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (emit_print_function): Make generated function print
+	to ostream (passed as arg) instead of local buffer.  Don't call
+	print_usage in generated function.
+	(emit_options_function): Fix call to print_${class_name} in
+	generated to pass octave_stdout as arg.
+
+2007-06-18  John W. Eaton  <jwe@octave.org>
+
+	* emacs/octave-inf.el (inferior-octave-prompt): Match "octave.bin"
+	and "octave.exe" in addition to "octave".
+
+2007-06-15  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Use simple string concatenation instead of
+	sprintf in AWK program.
+
+2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in: Set NO_OCT_FILE_STRIP=true for msdosmsvc.
+
+	* aclocal.m4 (OCTAVE_HDF5_DLL): Include return statements in
+	function body used for test.
+
+	* configure.in: Check for CXSparse with C++.
+
+	* Makeconf.in (do-subst-config-vals): Also substitute ${libdir} as
+	OCTAVE_CONF_LIBDIR.
+	* mkoctfile.in: Set DEFAULT_LIBDIR and substitute OCTAVE_HOME.
+	Define LIBDIR.  Use LIBDIR to set DEFAULT_LFLAGS.
+
+2007-06-12  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* configure.in: For mingw, add -lws2_32 -lkernel32 to LIBS and set
+	_USE_MATH_DEFINES same as for msvc.
+
+2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in: Check for utime.h and sys/utime.h headers.
+	Check for utime, _chmod, _utime, and _utime32 functions.
+
+2007-06-03  David Bateman  <dbateman@free.fr>
+
+	* configure.in (AC_CONFIG_FILES): Add src/mxarray.h
+	* examples/mycell.c, examples/mypow2.c, examples/mysparse.c,
+	examples/mystring.c, examples/mystruct.c: Use mwSize and mwIndex,
+	rather than int for indexing to conform to new mex API.
+
+2007-06-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (*-*-darwin*): Fix quoting and construction of
+	MKOCTFILE_DL_LDFLAGS.
+	* mkoctfile.in (DEFAULT_BINDIR, EXEEXT): New substitutions.
+	* Makeconf.in (MKOCTFILE_DL_LDFLAGS): Delete.
+	(do-subst-config-vals): Do configure substitution of
+	MKOCTFILE_DL_LDFLAGS directly here instead of using intermediate
+	variable.  Quote this sed substitution with ' instead of ".
+
+2007-05-29  Steven Mestdagh  <steven.mestdagh@esat.kuleuven.be>
+
+	* configure.in: Delete spurious "break" in fftw3 check.
+	Use separate case for SH_LD and SH_LDFLAGS on openbsd.
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-script-uninstall): Also remove directory.
+
+2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* NEWS.2, README.MSVC, WWW/NEWS-2.html: Fix typos.
+
+2007-05-16  David Bateman  <dbateman@free.fr>
+
+	* PROJECTS: Update.
+
+2007-04-27  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (SOURCES): Add all example files to the list.
+
+	* octave-config.in: Don't set PREFIX to OCTAVE_HOME if OCTAVE_HOME
+	is empty.
+
+2007-04-27  David Bateman  <dbateman@free.fr>
+
+	* examples/mycell.c, examples/mypow2.c, examples/mystring.c,
+	examples/myprop.c: New example mex files.
+
+2007-04-26  Alex Zvoleff  <azvoleff@sbcglobal.net>
+
+	* configure.in: Don't report ARPACK libraries in summary.
+
+2007-04-25  David Bateman  <dbateman@free.fr>
+
+	* Makeconf.in (do-subst-texinfo-vals): Also substitute abs_top_srcdir.
+
+	* examples/myfunc.c, exampples/paramdemo.cc: New files
+	* examples/mystruct.c, examples/mysparse.c, fortdemo.cc: Fix a few
+	formatting issues when included in texinfo files.
+
+2007-04-25  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-texinfo-vals): Also substitute top_srcdir.
+
+	* examples/addtwomatrices.cc, examples/celldemo.cc,
+	examples/fortdemo.cc, examples/funcdemo.cc,
+	examples/globaldemo.cc, examples/helloworld.cc,
+	examples/stringdemo.cc, examples/structdemo.cc,
+	examples/unwinddemo.cc, examples/fortsub.f,
+	examples/firstmexdemo.c: New files.
+	* examples/Makefile.in (SOURCES): Add them to the list.
+
+2007-04-20  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Don't check for ARPACK.
+
+2007-03-29  Rafael Laboissiere  <rafael@debian.org>
+
+ 	* emacs/octave-mod.el: Drop LOADPATH, INFO_FILE, and
+ 	INFO_PROGRAM from octave-variables.
+
+	* examples/info-emacs-octave-help, examples/info-emacs-info:
+	Use gnuclient, not gnudoit.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (dist, conf-dist): Use ln, not $(LN_S).
+	* emacs/Makefile.in (dist): Likewise.
+	* examples/Makefile.in (dist): Likewise.
+	* dlfcn/Makefile.in (conf-dist): Likewise.
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2007-03-23  John W. Eaton  <jwe@octave.org>
+
+	* examples/make_int.cc (octave_integer::clone): Return type is
+	pointer to octave_base_value, not octave_value.
+	(Fdoit): Rep is reference to octave_base_value, not octave_value.
+
+2007-03-21  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* octMakefile.in (all): Print message after successful build.
+
+2007-03-05  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (GLPK_PRE_4_14): Rename from GLPK_PRE_4_15.
+
+2007-02-27  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-script-uninstall): Remove PKG_ADD.
+	* examples/Makefile.in (uninstall): Don't remove files listed in
+	$(SCRIPTS) from $(srcdir).
+	Remove www.octave.org-octave.desktop, not octave.desktop.
+
+	* run-octave.in (run-octave.in): Use --no-initial-path.
+	Rename to qargs to args.  Use $args not "$args" when invoking Octave.
+	Try harder to get quoting right when passing args to Octave.
+
+2007-02-26  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (DISTDIRS): Eliminate variable.
+
+2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* octMakefile.in, dlfcn/Makefile.in, emacs/Makefile.in:
+	Use $(LN_S) instead of ln or ln -s.
+
+	* octMakefile.in (dist): Use -9 instead of --best with gzip/bzip2.
+
+2007-02-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Also warn about missing functionality for
+	--without-glpk or --without-curl options.  Print curl library
+	warning in summary.
+
+2007-02-20  Rafael Laboissiere  <rafael@debian.org>
+
+	* configure.in: Check for versions of GLPK prior to 4.15 and set
+	the GLPK_PRE_4_15 macro accordingly.
+
+2007-02-16  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Use OCTAVE_PREFIX, not OCTAVE_CONF_PREFIX, in sed
+	substitutions.
+	* octave-conf.in: Define DATAROOTDIR, not DATADIR, from
+	OCTAVE_DATAROOTDIR.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+2007-02-15  John W. Eaton  <jwe@octave.org>
+
+	* octave-config.in (DATAROOTDIR): Include in list of vars.
+	Substitute OCTAVE_HOME.
+
+	* Makeconf.in (MKOCTFILE_INCFLAGS, MKOCTFILE_LFLAGS): Delete vars.
+	(do-subst-config-vals): Don't substitute them.
+	Also substitute OCTAVE_CONF_INCLUDEDIR, OCTAVE_CONF_OCTINCLUDEDIR,
+	OCTAVE_CONF_OCTLIBDIR, and OCTAVE_CONF_PREFIX here.
+	* mkoctfile.in (OCTAVE_CONF_OCTINCLUDEDIR, OCTAVE_CONF_INCLUDEDIR,
+	OCTAVE_CONF_OCTLIBDIR): Substitute values and perform OCTAVE_HOME
+	substitution here.
+	(DEFAULT_INCFLAGS, DEFAULT_LFLAGS): New variables.  Use them to
+	set default values for INCFLAGS and LFLAGS.
+
+2007-02-09  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Handle .a files.
+
+2007-02-08  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (all): Depend on dist-info-files.
+	(dist): Delete dist-info-files dependency.
+
+	* configure.in: Rewrite if !( X ) ... fi as if X; true; else ... fi.
+	Also check for _glp_lpx_simplex.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-script-install): Use $(FCN_FILES) for list of
+	files instead of $(FCN_FILES_NO_DIR).  Use basename to get
+	filename with no directory part.
+
+2007-02-07  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* aclocal.m4 (OCTAVE_HDF5_DLL): New macro.
+	* configure.in: Use it.
+
+2007-02-05  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for realpath function.
+
+	* demo.m: Delete obsolete file.
+
+2007-01-29  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (*-*-msdosmsvc): Set NO_OCT_FILE_STRIP to true.
+
+2007-01-24  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (install): Install NEWS file.
+	(uninstall): Remove it.
+
+2007-01-08  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Replace sparsesuite with suitesparse to match
+	upstream name.
+
+2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* acx_blas.m4, acx_lapack.m4: Handle f2c calling convention.
+
+2006-12-05  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Don't check for strptime on *-apple-darwin* systems.
+
+2006-11-28  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Construct default output file from basename of
+	input file name.
+
+2006-11-28  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Check for sparse header files in the sparsesuite
+	sub-directory. In the cholmod tests, include the camd libraries, as
+	this might be a dependency for cholmod.
+
+2006-11-15  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Don't forget LD_PRELOAD if there are args.
+
+2006-11-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: If warning message is printed, print additional
+	final note about missing libraries.
+
+2006-11-13  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Substitute liboctinterp, liboctave, and libcruft.
+	Use them to set LD_PRELOAD.
+	* Makeconf.in (do-subst-script-vals): Also substitute
+	liboctinterp, liboctave, and libcruft.
+
+2006-11-13  Rafael Laboissiere  <rafael@debian.org>
+
+	* mkoctfile.in: Add -Wl,... options to ldflags, not pass_on_flags.
+
+2006-11-11  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (octave.desktop):
+	Use $(simple-move-if-change-rule) here.
+
+	* Makeconf.in (simple-move-if-change-rule,
+	(builddir-move-if-change-rule): New macros.
+
+2006-11-11  S�ren Hauberg  <hauberg@gmail.com>
+
+	* examples/Makefile.in (uninstall): Add missing semicolon.
+
+2006-11-09  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (uninstall): New target.
+
+2006-11-09  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (OCTAVE_LOCAL_BUFFER): Don't access first element
+	if size is 0.
+
+2006-11-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (CRUFT_DLL_DEFS, OCTAVE_DLL_DEFS, OCTINTERP_DLL_DEFS):
+	Also rename in AC_SUBST calls.
+	* Makeconf.in (ALL_CFLAGS): Use DLL_CDEFS instead of XTRA_CDEFS.
+	(ALL_CXXFLAGS): Use DLL_CDEFS instead of XTRA_CXXDEFS.
+
+2006-11-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (CRUFT_DLL_DEFS): Rename from XTRA_CRUFT_DEFS.
+	(OCTAVE_DLL_DEFS): Rename from XTRA_OCTAVE_DEFS.
+	(OCTINTERP_DLL_DEFS): Rename from XTRA_OCTINTERP_DEFS.
+	(XTRA_CRUFT_LINK_FLAGS): Rename from XTRA_CRUFT_LINK_DEPS.
+
+2006-11-02  John W. Eaton  <jwe@octave.org>
+
+	* README.Cygwin: Rename from README.Windows.
+	* README.MSVC: New file.
+	* README.Windows: Point to the README.Cygwin and README.MSVC files.
+
+2006-11-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for PCRE macros we use.  Warn if regex
+	library is not found.  Print hdf5, zlib, umfpack, colamd, ccolamd,
+	cholmod, and cxsparse warnings when we detect the problems.
+
+	* run-octave.in: Handle quoted args properly in exec call?
+
+2006-10-29  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Handle spaces in directory names.
+
+2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (AH_BOTTOM): If using MSVC, define __WIN32__ before
+	other #ifdefs that use it.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): Move DLL defs to
+	libcruft/misc/oct-dlldefs.h and include it here.
+
+	* aclocal.m4 (OCTAVE_PROG_TEXI2PDF): Require OCTAVE_PROG_TEXI2DVI.
+	If texi2pdf is not found but texi2dvi is available, set TEXI2PDF
+	to "$TEXI2DVI --pdf".
+	(OCTAVE_PROG_GHOSTSCRIPT): Also check for gswin32 on Windows systems.
+
+	* Makeconf.in (UNSETCOMSPEC): Define if COMSPEC is defined.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (OCTAVE_EXPORT, OCTAVE_IMPORT): New macros
+	(CRUFT_API, OCTAVE_API, OCTINTERP_API): Define using OCTAVE_EXPORT
+	and OCTAVE_IMPORT.
+
+2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in (*-*-msdosmsvc): Set library_path_var.
+	Check for _WIN32_WINNT >= 0x0403.  Define _USE_MATH_DEFINES if it
+	is needed.
+	(XTRA_CRUFT_LINK_DEPS): New variable.  Substitute it.
+
+	* aclocal.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): Perform check with C++
+	compiler.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_PAGER): Also check for more.com for
+	*-*-mingw* and *-*-msdosmsvc systems.
+
+	* configure.in (F77_TOLOWER, F77_APPEND_UNDERSCORE,
+	F77_APPEND_EXTRA_UNDERSCORE): New variables.  Substitute them.
+	* Makeconf.in (F77_TOLOWER, F77_APPEND_UNDERSCORE,
+	F77_APPEND_EXTRA_UNDERSCORE): Substitute here.
+	(do-subst-f77-mangling): New macro.
+
+	* emacs/octave-inf.el (inferior-octave-has-built-in-variables):
+	New defvar.
+	(inferior-octave-resync-dirs): Check to see whether Octave has
+	built-in variables and set inferior-octave-has-built-in-variables.
+	Check inferior-octave-has-built-in-variables to decide whether to
+	send commands that set built-in variables or call functions to
+	change Octave's behavior.
+	Send "disp (pwd ())" to Octave instead of just "pwd".
+	(inferior-octave-startup): Send "more off" to Octave instead of
+	"page_screen_output = 0".
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (RETSIGTYPE_IS_VOID): Define if
+	"$ac_cv_type_signal" = "void".
+
+	* configure.in (*-*-msdosmsvc): Don't check for strftime.
+
+	* configure.in (INCLUDE_DEPS): Set and substitute.
+	(DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): Rearrange way these are set.
+
+	* Makeconf.in (INCLUDE_DEPS): Substitute here, and use to set default
+	value for omit_deps.
+
+2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makeconf.in (ALL_CFLAGS): Include $(XTRA_CDEFS) in the list.
+	(ALL_CXXFLAGS): Include $(XTRA_CXXDEFS) in the list.
+
+	* configure.in (XTRA_CRUFT_DEFS, XTRA_OCTAVE_DEFS,
+	XTRA_OCTINTERP_DEFS): Define and substitute.
+	(AH_BOTTOM) [_MSC_VER]: include definitions for CRUFT_API,
+	OCTAVE_API, and OCTINTERP_API.
+
+	* configure.in (*-*-msdosmsvc): Add "-EHs -MD" to CXXFLAGS.
+	Add "-MD" to CFLAGS.  Add "-MD" to CONFLIB_ARG when checking for
+	libf2c.
+
+	* configure.in (*-*-msdosmsvc): Generate replacement unistd.h.
+	* octMakefile.in (maintainer-clean, distclean): Also remove unistd.h.
+
+	* configure.in (*-*-msdosmsvc): Default sepchar is ';'.
+	Define default LIBS (link against kernel32 and ws2_32).
+	Force having LoadLibrary API.
+
+	* configure.in (AH_BOTTOM) [_MSC_VER]: Define __WIN32__.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in (OCTAVE_VERSION): No need to quote replacement here.
+
+2006-10-24  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Only modify .gdbinit if -g option is given.
+	Use $(/bin/pwd) instead of $(pwd).
+
+2006-10-23  John W. Eaton  <jwe@octave.org>
+
+	* emacs/Makefile.in (SOURCES, DISTFILES, install, install-strip,
+	uninstall): Handle otags name change.
+	* emacs/octave-tags, emacs/octave-tags.1: Rename from otags.
+
+2006-10-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for _isnan, _finite, and _copysign.
+
+2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE, OCTAVE_CXX_ABI): Use
+	$ac_objext instead of assuming .o.
+	(OCTAVE_PROG_GNUPLOT): Handle *-*-msdos the same as *-*-cygwin*
+	and *-*-mingw32*.
+
+2006-10-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for curl_easy_escap instead of
+	curl_global_init.
+
+2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* configure.in [_MSC_VER]: Disable some warnings.
+	(*-*-msdos): New case for shared libraries.
+	(LIBPRE): New variable.
+	* Makeconf.in: Substitute it.
+
+2006-10-12  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): Don't unconditionally #define
+	OCTAVE_HAVE_POSIX_FILESYSTEM followed by a conditional #undef
+	OCTAVE_HAVE_POSIX_FILESYSTEM since autoconf is commenting out the
+	#undef.
+
+2006-10-09  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (CURL_LIBS, do-subst-config-vals):
+	Substitute CURL_LIBS.
+
+	* configure.in: Check for libcurl.
+
+2006-10-04  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (library_path_var): Substitute value from configure.
+	(do-subst-script-vals): Add library_path_var to the list.
+	* run-octave.in: Substitute value here.
+
+2006-10-03  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Warn if PCRE library is not found.
+
+	* configure.in: Include CAMD_LIBS, AMD_LIBS, and REGEX_LIBS in the
+	summary.
+
+2006-10-03  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Check for libcamd.
+	* Makeconf.in (CAMD_LIBS): New variable.
+
+2006-09-27  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in [--mex]: Include -I. in incflags.
+	From S�ren Hauberg <hauberg@gmail.com>.
+
+2006-09-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CONFIG_FILES):
+	Remove doc/interpreter/images/Makefile from the list.
+
+2006-09-16  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in: Delete LIBPLPLOT variables.
+
+2006-09-15  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for locale.h and setlocale.
+
+2006-09-13  Christopher Hulbert  <cchgroupmail@gmail.com>
+
+	* run-octave.in (LD_LIBRARY_PATH): Also append LD_LIBRARY_PATH
+	from environment.
+
+2006-08-25  Alexander Barth  <abarth@marine.usf.edu>
+
+	* mkoctfile.in: Accept .f90 and .F90 as Fortran files.
+	Pass $incflags and $defs to Fortran compiler.
+
+2006-08-18  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-texinfo-vals): Don't substitute
+	%CANONICAL_HOST_TYPE%.
+
+2006-08-17  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_GHOSTSCRIPT, OCTAVE_PROG_MAKEINFO,
+	OCTAVE_PROG_TEXI2DVI, OCTAVE_PROG_TEXI2PDF): New macros.
+	* configure.in: Use them.  Maybe print warnings in summary.
+
+2006-07-27  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (localapiarchlibdir): Substitute it here.
+	(do-subst-default-vals): Include it in the sed command here.
+	* configure.in (localapiarchlibdir): New variable.
+	* octave-config.in: Don't quote %VAR% values.
+	(LOCALAPIARCHLIBDIR): New variable.
+
+2006-07-27  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* octave-config.in (OCTAVE_FCNFILEPATH, OCTAVE_IMAGEPATH,
+	OCTAVE_LOCALFCNFILEPATH, OCTAVE_LOCALOCTFILEPATH): Delete variables.
+
+2006-07-26  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in (Options): Accept -g.
+
+	* configure.in: Check for exp2 and log2.
+
+2006-07-25  David Bateman  <dbateman@free.fr>
+
+	* mysparse.c: New file.
+
+2006-06-27  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (maintainer-clean distclean): Remove
+	$(SHELL_SCRIPTS) instead of naming files individually.
+	Also remove .gdbinit.
+
+2006-06-21  John W. Eaton  <jwe@octave.org>
+
+	* examples/myfeval.c, examples/myfevalf.f, examples/myhello.c,
+	examples/myset.c, examples/mystruct.c: New files.
+
+	* mkoctfile.in: New option, --mex.
+
+2006-06-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (--enable-64): Include "(EXPERIMENTAL)" in help text.
+	Also set warn_64_bit if no suitable type for octave_idx_type is found.
+	If --enable-64 is specified, print warning in summary message.
+
+2006-06-12  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_CXX_BROKEN_REINTERPRET_CAST): New macro.
+	* configure.in: Use it.
+	* AH_BOTTOM: Conditionally define FCN_PTR_CAST here.
+
+2006-06-08  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-default-vals): Also substitute
+	OCTAVE_DATAROOTDIR.
+
+2006-06-06  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (datarootdir): New variable.
+
+	* acx_lapack.m4 (acx_lapack_ok):
+	Use AC_LINK_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_LINK
+
+	* aclocal.m4: Use AC_RUN_IFELSE+AC_LANG_SOURCE instead of AC_TRY_RUN.
+
+	* acx_blas.m4, acx_lapack.m4, configure.in, aclocal.m4:
+	Use AS_HELP_STRING instead of AC_HELP_STRING.
+
+	* configure.in: Outside of other macros, use AC_MSG_NOTICE instad
+	of AC_MSG_RESULT.  Check for sys_siglist using method from
+	autoconf manual.
+
+	* configure.in, Makeconf.in: octMakefile.in: Delete plplot cruft.
+
+	* configure.in, aclocal.m4:
+	Use AC_LINK_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_LINK
+	Use AC_COMPILE_IFELSE+AC_LANG_PROGRAM instead of AC_TRY_COMPILE.
+	Use AS_HELP_STRING consistently with AC_ARG_WITH and AC_ARG_ENABLE.
+
+2006-05-23  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for inttypes.h and stdint.h.
+
+2006-05-19  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (emit_print_function, emit_options_function):
+	Generate print_usage calls with no args.
+
+2006-05-11  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (localfcnfilepath, localoctfilepath, fcnfilepath,
+	imagepath): Delete variables.
+	* Makeconf.in (localfcnfilepath, localoctfilepath, fcnfilepath,
+	imagepath): Likewise.
+	(do-subst-default-vals): Don't substitute them.
+
+	* run-octave.in: Pass --image-path to octave.
+	Use find to recursively add directories to loadpath.
+	Fixup set args command in .gdbinit here.
+
+2006-05-09  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (abs_top_srcdir): Substitute value here.
+
+2006-05-05  David Bateman  <dbateman@free.fr>
+
+	    * Makeconf.in (do-subst-scripts-vals): Also replace
+	    abs_top_srcdir.
+	    * run-octave.in: Define top_srcdir as an absolute path.
+
+2006-05-04  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (SHELL_SCRIPTS): Include run-octave in the list.
+
+2006-05-02  John W. Eaton  <jwe@octave.org>
+
+	* NEWS: New contents for 3.0.
+	* NEWS.2: Move contents of NEWS here.
+
+2006-04-29  John W. Eaton  <jwe@octave.org>
+
+	* run-octave.in: Execute $builddir/src/octave, not src/octave.
+
+2006-04-26  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* configure.in: Fix apiversion vs. api_version typo.
+
+2006-04-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (TARGETS): Include run-octave and .gdbinit in the list.
+	* Makeconf.in (subst-script-vals): New macro.
+	* octMakefile.in (run-octave, .gdbinit): New rules.
+	(DISTFILES): Include run-octave.in and gdbinit.in in the list.
+
+2006-04-17  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (emit_print_function): Emit code that uses
+	std::ostringstream directly.
+
+2006-04-13  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (CONST_CAST, DYNAMIC_CAST, REINTERPRET_CAST,
+	STATIC_CAST): Delete.
+
+2006-04-12  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: If using g++, also add -Wold-style-cast to CXXFLAGS.
+
+2006-03-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Don't check for MPI libraries.
+
+2006-03-27  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Downcase ac_cv_header_mach_o_dyld_h.
+	From Martin Costabel <costabel@wanadoo.fr>.
+
+2006-03-22  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in: (TEXINFO_COLAMD, TEXINFO_CHOLMOD, TEXINFO_UMFPACK):
+	Substitute here.
+	(do-subst-texinfo-vals): New macro definition.
+
+	* configure.in: Don't substitute OCTAVE_VERSION, OCTAVE_HOSTTYPE,
+	or OCTAVE_HOME.
+	(AC_CONFIG_FILES): Remove doc/conf.texi from the list.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Only print warnings for missing functionality in
+	summary message.
+
+2006-03-14  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (emit_print_function): Buffer extra message here and
+	pass to print_usage.
+
+2006-03-09  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-default-vals): Also substitute OCTAVE_RELEASE.
+
+2006-03-08  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Update the test for CXSPARSE for new upstream release.
+	(OCTAVE_VERSION, OCTAVE_HOSTTYPE, OCTAVE_HOME,TEXINFO_UMFPACK,
+	TEXINFO_COLAMD, TEXINFO_CHOLMOD): New variables for texinfo
+	documentation.
+	(AC_CONFIG_FILES): Add doc/interpreter/images/Makefile and
+	doc/conf.texi.
+
+2006-03-02  Kurt Hornik  <Kurt.Hornik@wu-wien.ac.at>
+
+	* emacs/octave-mod.el (octave-indent-for-comment): Make the code
+	match the comments.
+
+2006-03-02  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (ALL_SUBDIRS): Delete.
+	(SUBDIRS): Include src here.
+	(SHELL_SCRIPTS): New variable.
+	(all): Depend on $(SHELL_SCRIPTS) and $(SUBDIRS) with libcruft and
+	liboctave filtered out.
+	(src): Depend on liboctave.
+	(liboctave): Depend on libcruft.
+
+2006-02-09  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Fix for probe of colamd, cccolamd and metis. New test
+	for the presence of cxsparse.
+	Makeconf.in: Include CXSPARSE_LIBS.
+
+2006-01-19  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Use $WITH_PCRE instead of $HAVE_PCRE in shell test.
+
+2006-01-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for mach-o/dyld.h, not Mach-O/dyld.h.
+	From Martin Costabel <costabel@wanadoo.fr>.
+
+2006-01-13  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-mkpkgadd): New macro.
+
+2005-12-14  David Bateman  <dbateman@free.fr>
+
+	* Makeconf.in: Remove OCTAVE_PROG_RUNTEST.
+	* alocal.m4: Remove OCTAVE_PROG_RUNTEST.
+
+	* Makeconf.in: New tests of regex and pcre.
+
+2005-12-13  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (install install-strip): Fix typo.
+	From William Poetra Yoga Hadisoeseno <williampoetra@gmail.com>.
+
+2005-12-05  Kurt Hornik  <Kurt.Hornik@wu-wien.ac.at>
+
+	* emacs/octave-inf.el (inferior-octave-startup):
+	Force a non-empty string for secondary prompt PS2.
+
+2005-12-02  John W. Eaton  <jwe@octave.org>
+
+	* emacs/octave-mod.el (octave-electric-space): Don't indent
+	comments or strings if octave-auto-indent is nil.
+
+2005-11-30  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (install install-strip): Install images and
+	desktop file.
+
+2005-11-29  Rafael Laboissiere  <rafael@debian.org>
+
+	* emacs/octave-mod.el: Ensure that key bindings for
+	octave-mark-defun and backward-kill-word work in both XEmacs and
+	GNU Emacs.
+
+2005-11-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for uname.
+
+2005-11-21  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (DISTFILES): Don't include octave.desktop here.
+	(distclean): Remove octave.desktop here.
+	(maintainer-clean): Not here.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (distclean, maintainer-clean):
+	Also remove octave.desktop.
+	From Quentin Spencer <qspencer@ieee.org>.
+
+2005-11-01  Quentin Spencer  <qspencer@ieee.org>
+
+	* octMakefile.in (CONF_DISTFILES): Delete acx_include_dirs.m4 from
+	the list.
+
+2005-10-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_ARG_WITH(cholmod, ...)): Fix typo.
+	From Quentin Spencer <qspencer@ieee.org> and
+	Andy Adler <adler@site.uOttawa.ca>.
+
+2005-10-26  John W. Eaton  <jwe@octave.org>
+
+	* configure.in, aclocal.m4: Don't quote "yes".
+
+	* configure.in: Print warning messages for umfpack, colamd,
+	ccolamd, and cholmod as we are searching.  Avoid multiple
+	definitions of message strings.
+
+	* aclocal.m4 (OCTAVE_UMFPACK_SEPERATE_SPLIT):
+	Use new method of finding umfpack.h.
+	* configure.in: Use AC_CHECK_HEADERS instead of
+	ACX_CHECK_HEADER_IN_DIRS.
+	(AC_CONFIG_FILES): Delete liboctave/oct-sparse.h from the list.
+
+	* acx_include_dirs.m4: Delete.
+
+2005-10-26  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
+
+	* configure.in [*-*-freebsd*] (SH_LDFLAGS): Properly quote.
+	(RLD_FLAG): Set.
+
+2005-10-23  David Bateman  <dbateman@free.fr>
+
+	* configure.in (OCTAVE_UMFPACK_SEPERATE_SPLIT): Check for metis
+	separately.
+	* PROJECTS: Remove completed sparse matrix tasks.
+
+2005-10-17  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* octave.test/system/system.exp: rmdir no longer prints a
+	message if the directory does not exist.
+
+	* octave.test/system/mk-rm-dir-1.m: mkdir/rmdir return 1
+	on success and 0 on failure.
+
+2005-10-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (F77_FFLOAT_STORE_FLAG):
+	Check for -ffloat-store option for Fortran compiler and set
+	F77_FLOAT_STORE_FLAG if it works.
+	* Makeconf.in: Substitute it here.
+	(do-subst-config-vals): Substitute OCTAVE_CONF_F77_FLOAT_STORE_FLAG.
+
+2005-10-14  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_PYTHON): New macro.
+	* configure.in: Use it.
+	* Makeconf.in (PYTHON): Substitute it.
+
+2005-10-05  David Bateman  <dbateman@free.fr>
+
+	 mkoctfile.in: allow -idirafter argument.
+
+2005-09-23  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (install install-strip):
+	Conditionally install octave.desktop.
+	(IMAGE_FILES, IMAGE_FILES_NO_DIR): New macros.
+	(DISTFILES): Include IMAGE_FILES in list.
+	(install install-strip): Install image file.
+
+	* aclocal.m4 (OCTAVE_PROG_DESKTOP_FILE_INSTALL): New macro
+	* configure.in: Use it.
+	* Makeconf.in: Substitute DESKTOP_FILE_INSTALL.
+
+	* octave.desktop.in: New file.  From S�ren Hauberg <hauberg@gmail.com>.
+	* examples/Makefile.in (SOURCES): Add it to the list.
+	(octave.desktop): New target.
+	(all): Depend on octave.desktop.
+
+2005-09-22  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_PERL): New macro.
+	* configure.in: Use it.
+	* Makeconf.in (PERL): Substitute it.
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2005-09-19  David Bateman  <dbateman@free.fr>
+
+	* octMakefile.in (LN_S): Change to DESTDIR before LN_S to avoid
+	lack of symlinks under mingw.
+
+2005-09-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h.in: Move to liboctave.
+	* octMakefile.in (CONF_DISTFILES): Delete it from the list.
+	(maintainer-clean, distclean, install, install-strip, uninstall):
+	Omit rules for oct-sparse.h.
+	* configure.in: Substitute liboctave/oct-sparse.h, not oct-sparse.h.
+
+2005-09-15  David Bateman  <dbateman@free.fr>
+
+	* acx_include_dirs.m4 (AC_CHECK_HEADER_IN_DIRS): Define new macro.
+	* oct-sparse.h.in: New AC_CONFIG_FILE.
+	* configure.in: (AC_CHECK_HEADER_IN_DIRS): Use macro.
+	(AMD_LIBS, COLAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS): Probe for
+	these sparse library in addition to UMFPACK.
+	(UMFPACK_INCLUDE, AMD_INCLUDE, COLAMD_INCLUDE, CCOLAMD_INCLUDE):
+	AC_SUBST into oct-sparse.h.
+	(LIBGLOB): Probe for external glob/fnmatch, define LIBGLOB.
+	(sepchar): Define path seperation character in system dependent
+	manner. Use it with OCTAVE_SET_DEFAULT.
+	(SEPCHAR, SEPCHAR_STR): Dpend on sepchar.
+	(DL_LDFLAGS): Define for cygwin and mingw.
+	(-lwsock32): Add to LIBS.
+	(loadlibrary_api): Set for mingw/cygwin and autoconf test appears
+	broken.
+	* Makeconf.in: Don't use ";" as sed seperation to avoid confusion
+	with sepchar.
+	(LIBGLOB, AMD_LIBS, COLAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS,
+	sepchar): Substitute.
+	* octMakefile.in: (CONF_DISTFILES): Add acx_include_dirs.m4 and
+	oct-sparse.h.in
+	(oct-sparse.h): Include in install and clean directives
+
+2005-08-31  Pascal A. Dupuis  <Pascal.Dupuis@esat.kuleuven.be>
+
+	* emacs/octave-inf.el (inferior-octave-startup): Call
+	inferior-octave-resync-dirs here.
+
+2005-07-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (SH_LDFLAGS): Add -Wl,--enable-auto-image-base for
+	Cygwin and MinGW.
+
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AH_BOTTOM): Also define GCC_ATTR_DEPRECATED.
+
+2005-06-02  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (do-subst-default-vals): Substitute
+	${localstartupfiledir}, not ${localstartupfile} (which is undefined).
+
+2005-05-16  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Change UMFPACK_LONG_IDX to IDX_TYPE_LONG.
+
+2005-05-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CHECK_LIB($zlib_lib, ...)): Check for
+	gzclearerr instead of deflate.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_ARG_WITH(umfpack)): List -lumfpack ahead of -lamd.
+	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
+
+2005-04-29  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Add UMFPACK_LONG_IDX
+
+2005-04-21  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CONFIG_FILES): Remove install-octave from the list.
+	(AH_BOTTOM): Define SIZEOF_OCTAVE_IDX_TYPE.
+
+2005-04-14  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Only perform link step if we have some object files.
+	If only -v or --version is supplied, print version info and exit.
+
+2005-04-08  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (maintainer-clean distclean):
+	Remove install-octave from the list of files to remove.
+	(install-octave.in): Delete file.
+	(DISTFILES): Remove it from the list.
+
+	* Initial merge of 64-bit changes from Clinton Chee:
+
+	2005-04-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (--enable-64): Make default disabled.
+
+	2005-04-06  John W. Eaton  <jwe@octave.org>
+
+	* mk-opts.pl (emit_show_function, emit_set_functions,
+	emit_print_function): Also accept "octave_idx_type" and
+	"Array<octave_idx_type>".
+
+	2005-04-01  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (USE_64_BIT_IDX_T): Substitute value.
+	(do-subst-config-vals): Add to list of substitutions.
+
+	* configure.in (AC_CONFIG_FILES): Perform substitutions on
+	liboctave/oct-types.h too.
+	Handle --enable-64.
+
+2005-04-06  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Split the HDF5 and zlib detection code, so that zlib
+	can be used for compressed load/save in the absence of HDF5.
+
+	* Makeconf.in: Define UMFPACK_LIBS.
+
+	* Configure.in: Slightly alter the UMFPACK detection code so that it
+	correctly detects cblas bindings or not.
+
+2005-03-22  John W. Eaton  <jwe@octave.org>
+
+	* Makeconf.in (GLPK_LIBS): Substitute value.
+	(do-subst-config-vals): Add to list of substitutions.
+
+	* configure.in: Check for glpk.
+
+	* emacs/octave-mod.el (octave-abbrev-table): Omit fifth and sixth
+	arguments from define-abbrev for compatibility with some older
+	versions of Emacs.
+
+2005-03-21  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in: Try harder to find default pager (use code
+	similar to that used for finding default editor).
+
+2005-03-17  Shan G. Smith  <shan@cybertrails.com>
+
+	* configure.in: Move check for -lumfpack to after check for blas.
+
+2005-03-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: If first check for -lumfpack fails try again with
+	-lcblas as an additional library.
+
+	* configure.in: Change defaults to enable shared libraries and
+	dynamic linking and disable static libraries.
+
+2005-03-15  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (DISTFILES): Remove texi2dvi from the list.
+
+	* emacs/octave-inf.el, emacs/octave-mod.el, emacs/octave-hlp.el:
+	Import changes from Emacs.
+
+2005-03-14  Rafael Laboissiere  <rafael@debian.org>
+
+	* emacs/octave-mod.el (octave-end-keywords): Omit "end" from the list.
+	(octave-reserved-words): Include "end" here.
+	(octve-block-match-alist): Don't include "end" here.
+
+2005-03-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for umfpack/umfpack.h instead of just umfpack.h.
+
+2004-06-22  David Bateman  <dbateman@free.org>
+
+	* configure.in: Check for UMFPACK library and header files.
+
+2005-03-14  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Also print a warning if HDF5 library is not found.
+
+2005-03-10  John W. Eaton  <jwe@octave.org>
+
+	* mkoctfile.in: Accept -R DIR.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* examples/Makefile.in (bin-dist): Delete target.
+	(BINDISTFILES): Delete variable.
+	* emacs/Makefile.in: Likewise.
+
+	* octMakefile.in (VERSION, ARCH, binary-dist): Delete targets.
+	(XBINDISTFILES, BINDISTFILES, BINDISTSUBDIRS): Delete variables.
+
+2005-03-04  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (GXX_PICKY_FLAGS): Don't include
+	-Wmissing-prototypes or -Wstrict-prototypes.
+
+2005-03-02  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG, OCTAVE_F77_FLAG):
+	Use AC_LINK_IFELSE instead of AC_TRY_LINK.
+
+	* configure.in (OCTAVE_LOCAL_BUFFER): Use < T > instead of <T>.
+	From Clinton Chee <chee@parallel.hpc.unsw.edu.au>.
+
+2005-03-01  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CONFIG_FILES): Remove libcruft/odessa/Makefile
+	from the list.
+
+2005-03-01  Todd Neal  <tolchz@gmail.com>
+
+	* examples/make_int.cc: DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA now
+	takes three arguments.
+
+	* octMakefile.in (SUBDIRS, CLEANSUBDIRS):
+	Remove @GLOB_DIR@ from the list.
+
+2005-02-28  John W. Eaton  <jwe@octave.org>
+
+	* octMakefile.in (DISTDIRS): Remove glob from the list.
+	(dist): No need to clean up in glob subdirectory.
+	* glob: Delete directory.
+	* Makeconf.in (GLOB_INCFLAGS, LIBGLOB): Delete.
+	(do-subst-config-vals): Don't substitute them.
+	(INCFLAGS): Remove $(GLOB_INCFLAGS) from the list.
+	* configure.in: Don't test for glob or fnmatch.
+
+2005-02-22  Shan G. Smith  <shan@cybertrails.com>
+
+	* mkoctfile.in: If not linking, then use output file name
+	specified with -o.
+
+2005-02-21  John W. Eaton  <jwe@octave.org>
+
+	* texi2dvi: Delete our private version.
+
+	* Makeconf.in (MAKEINFO): Define.
+	(TEXI2DVI): Define as texi2dvi, not $(top_srcdir)/texi2dvi.
+
+2005-02-09  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for canonicalize_file_name and resolvepath.
+
+2005-02-02  John W. Eaton  <jwe@octave.org>
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2005-01-18  John W. Eaton  <jwe@octave.org>
+
+	* octave-bug.in: Try harder to find default editor (stolen from
+	bashbug).
+
+2004-12-17  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Use AC_GNU_SOURCE.
+
+2004-12-17  Orion Poplawski  <orion@cora.nwra.com>
+
+	* configure.in: Also check for signbit decl.
+
+2004-12-03  John W. Eaton  <jwe@octave.org>
+
+	* aclocal.m4 (OCTAVE_PROG_GPERF): Check with -L C++, not -L ANSI_C.
+	* Makefile.in (header-msg): Change recommended gperf version to
+	3.0.1 or more recent.
+
+2004-11-12  John W. Eaton  <jwe@octave.org>
+
+	* Back off on -ffloat-store until we decide whether it is really
+	necessary.
+
+2004-11-11  John W. Eaton  <jwe@octave.org>
+
+	* (OCTAVE_PROG_GNUPLOT): Don't set GNUPLOT_BINARY before calling
+	AC_CHECK_PROGS(GNUPLOT_BINARY, ...).
+
+	* configure.in: Use it to see if the C, C++, and Fortran compilers
+	accept -ffloat-store.
+	* aclocal.m4 (OCTAVE_F77_FLAG): New macro.
+
+2004-09-08  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (GXX_PICKY_FLAGS): Remove -fno-nonnull-objects.
+	(GCC_PICKY_FLAGS): Remove -Wnested-externs -Wid-clash-31.
+	From Quentin Spencer <qspencer@ieee.org>.
+
+	* configure.in (GCC_PICKY_FLAGS): Remove -Winline.
+
+2004-09-07  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Check for round.
+
+2004-06-22  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Use -Wl,-Bsymbolic for MKOCTFILE_DL_LDFLAGS on
+	GNU/Linux systems but not for SH_LDFLAGS.
+
+2004-04-22  John W. Eaton  <jwe@octave.org>
+
+	* configure.in: Add -Wl,-Bsymbolic to SH_LDFLAGS for GNU/Linux
+	systems.  From Fredrik Lingvall <Fredrik.Lingvall@signal.uu.se>.
+
+	* mkoctfile.in: Allow -Wx,option style options to be passed to the
+	compiler.  From Al Niessner <Al.Niessner@jpl.nasa.gov>.
+
+2004-04-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Delete code for --with-ieee754.
+	Use OCTAVE_IEEE754_DATA_FORMAT.
+
+	* aclocal.m4 (OCTAVE_IEEE754_DATA_FORMAT): New macro, based on
+	configure.in code for HAVE_IEEE754_COMPLIANCE.
+
+2004-04-06  David Bateman  <dbateman@free.fr>
+
+  	* configure.in : add the option --with-ieee754 and use it to define
+	HAVE_IEEE754_COMPLIANCE
+
+2004-04-02  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Warn about g++ 2.9x versions.
+
+2004-04-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (dist): Also make bz2 file and compute md5
+	checksums of both gz and bz2 files.
+
+2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: No longer accept --with-g77 (it is still possible
+	to use --with-f77=g77).
+
+2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for -mieee instead of -mieee-with-inexact.
+
+2004-02-20  Per Persson  <persquare@mac.com>
+
+	* mkoctfile.in (LINK_DEPS): Include $LDFLAGS in the list.
+
+2004-02-18  Per Persson  <persquare@mac.com>
+
+	* configure.in (*-*-darwin*): Define SONAME_FLAGS.
+
+2004-02-16  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Test for the presence of FFTW 3.x and use it in
+	preference to FFTW 2.x.  Define HAVE_FFTW3
+
+2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in (LINK_DEPS): Include $LIBS and $RLD_FLAG.
+	Use $OCTAVE_LIBS instead of listing libs individually.
+
+2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Delete INCLUDE_LINK_DEPS.  Fix help text.
+	Always define LINK_DEPS.
+	(LINK_DEPS): Also include FLIBS in the list.
+
+	* Makeconf.in (INCLUDE_LINK_DEPS): Don't substitute.
+	(do-subst-config-vals): Delete INCLUDE_LINK_DEPS.
+	* configure.in (INCLUDE_LINK_DEPS): Delete.
+
+	* mkoctfile (SH_LD, SH_LDFLAGS): Delete.
+	(DL_LD, DL_LDFLAGS): New variables.  Use them instead of SH_LD and
+	SH_LDFLAGS for creating .oct files.
+	Fix help text.
+
+	* configure.in (MKOCTFILE_SH_LDFLAGS): Delete.
+	(MKOCTFILE_DL_LDFLAGS): New variable, default to DL_LDFLAGS.
+
+	* Makeconf.in (do-subst-config-vals): Add DL_LD, DL_LDFLAGS, and
+	MKOCTFILE_DL_LDFLAGS to the list of substitutions.
+	Delete MKOCTFILE_SH_LDFLAGS.
+
+2004-02-14  Per Persson  <persquare@mac.com>
+
+	* configure.in (DL_LD, DL_LDFLAGS): New variables, default to
+	SH_LD and SH_LDFLAGS, respectively.
+	Define independently for SH_LD and SH_LDFLAGS for *-*-darwin* targets.
+	* Makeconf.in (DL_LD, DL_LDFLAGS): Substitute them here.
+
+2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (header-msg): Required bison version now 1.31 or later.
+
+2004-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el: If line-end-position is not defined,
+	provide it as an alias for point-at-eol.
+
+2004-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el: If line-beginning-position is not defined,
+	provide it as an alias for point-at-bol.
+
+2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM):
+	Define OCTAVE_LOCAL_BUFFER using vector<T> instead of auto_ptr.
+	Suggested by Paul Thomas <Paul.Thomas@jet.efda.org>
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean, distclean):
+	Remove Makefile and autom4te.cache.
+
+2004-01-14  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Test for the presence of the function
+	H5Gget_num_objs	in HDF5 library, and define HAVE_H5GGET_NUM_OBJS.
+
+2004-01-06  Per Persson  <persquare@mac.com>
+
+	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Recognize
+	*-*-darwin*, not *-*-darwin6*.
+
+2003-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* INSTALL: Update to newer version from autoconf.
+
+2003-11-26  Cyril Humbert  <Cyril.Humbert@univ-mlv.fr>
+
+	* octave-config.in (--m-site-dir): Echo $LOCALVERFCNFILEDIR, not
+	$OCTAVE_LOCALVERFCNFILEDIR.
+	(--oct-site-dir): Echo $LOCALVEROCTFILEDIR, not
+	$OCTAVE_LOCALVEROCTFILEDIR.
+
+2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Also maybe add -W to WARN_CFLAGS and WARN_CXXFLAGS.
+
+2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (SHLLIB_VER): Fix typo.
+
+	* Makeconf.in (WARN_CFLAGS, WARN_CXXFLAGS): Substitute them.
+	(ALL_CFLAGS, BUG_CFLAGS): Add $(WARN_CFLAGS).
+	(ALL_CXXFLAGS, BUG_CXXFLAGS): Add $(WARN_CXXFLAGS).
+	(UGLY_ALL_CXXFLAGS): Delete.
+
+	* configure.in: Add -Wall and -Wshadow to WARN_CFLAGS and
+	WARN_CXXFLAGS instead of CFLAGS and CXXFLAGS.
+
+2003-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: If we need alloca, then also include it in LIBGLOB.
+
+2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Preserve CFLAGS and CXXFLAGS before doing anything.
+	Maybe add -Wshadow to CFLAGS and CXXFLAGS.
+
+2003-10-24  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+	* emacs/octave-mod.el (octave-comment-start): Simplify.
+	(octave-point): Remove.
+	(octave-in-comment-p, octave-in-string-p)
+	(octave-not-in-string-or-comment-p, calculate-octave-indent)
+	(octave-blink-matching-block-open, octave-auto-fill):
+	Use line-(beginning|end)-position instead.
+
+2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-inf.el (inferior-octave-prompt): Don't bother
+	matching "octave.bin".
+
+2003-10-29  Lute Kamstra  <lute@gnu.org>
+
+	* emacs/octave-inf.el (inferior-octave-prompt): Recognize
+	version number in prompt.
+
+2003-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-mode-syntax-table): Allow % to be a
+	comment character.
+
+2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (AWK): Substitute and export it.
+	* configure.in: Also check for AWK.
+
+2003-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_PREREQ): Require 2.57.
+
+2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): Don't define HEAVYWEIGHT_INDEXING here.
+
+2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-variables): Delete
+	propagate_empty_matrices from the list.
+
+	* ck-oct-fcns.m: Delete.
+
+2003-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Warn if --enable-dl but not --enable-shared.
+
+2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-variables): Delete
+	default_return_value and define_all_return_values from the list.
+	Add warn_undefined_return_values to the list.
+
+2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-variables):
+	Add warn_empty_list_elements and warn_resize_on_range_error to the
+	list.
+	Delete empty_list_elements_ok and resize_on_range_error from the
+	list.
+
+2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-variables): Add warn_neg_dim_as_zero
+	to the list.
+	Delete treat_neg_dim_as_zero from the list.
+
+2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-variables): Include
+	DEFAULT_EXEC_PATH, DEFAULT_LOAD_PATH, crash_dumps_octave_core,
+	sighup_dumps_octave_core, sigterm_dumps_octave_core,
+	warn_imag_to_real, warn_num_to_str, warn_str_to_num, and
+	warn_fortran_indexing in the list.
+	Delete ok_to_lose_imaginary_part, implicit_num_to_str_ok,
+	implicit_str_to_num_ok, prefer_column_vectors,
+	prefer_zero_one_indexing, and do_fortran_indexing from the list.
+
+2003-07-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-default-vals): Substitute OCTAVE_API_VERSION.
+	* octave-config.in: Handle new variable OCTAVE_API_VERSION.
+
+	* octMakefile.in (DIRS_TO_MAKE): Delete undefined vars
+	$(localfcnfilepathdirs) and $(localoctfilepathdirs) from the list.
+
+	* octave-config.in: Handle new variables OCTAVE_LOCALAPIFCNFILEDIR
+	and OCTAVE_LOCALAPIOCTFILEDIR
+
+	* configure.in (localapifcnfiledir): New variable.
+	(localfcnfilepath): Add it to the list.
+	(localapioctfiledir): New variable.
+	(localoctfilepath): Add it to the list.
+	* Makeconf.in (do-subst-default-vals): Substitute new varibles.
+
+	* Makeconf.in (getapiversion, apiversion): New macros.
+
+	* octMakefile.in (DIRS_TO_MAKE): Include $(localverarchlibdir) in
+	the list.
+
+2003-07-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Set and substitute values for startupfiledir and
+	localstartupfiledir.
+
+	* octave-config.in: Allow other configuration defaults to be
+	accessed using --variable VAR option.
+
+2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (distclean): remove install-octave here.
+
+2003-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: If user doesn't specify --enable-rpath, then
+	default is to enable it.
+
+2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (GNUPLOT_HAS_FRAMES): Eliminate variable.
+
+	* emacs/octave-mod.el (octave-variables): Eliminate
+	gnuplot_has_multiplot.
+
+2003-05-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: In check for f_open in libf2c, only use
+	-L. -lconflib if we have created libconflib.a.
+
+2003-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_GPERF): Provide struct decl so -t option
+	succeeds with gperf 3.0.
+
+	* Makeconf.in (NO_OCT_FILE_STRIP): Use -C arg for make.
+
+	* octMakefile.in (DIRS_TO_MAKE): Use $(shell ...) instead of `...`.
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in, octMakefile.in, emacs/Makefile.in,
+	examples/Makefile.in: Handle DESTDIR.
+
+2003-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (sbindir): New variable substitution.
+
+2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't define WITH_KPATHSEARCH.
+
+2003-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Look for wsock32 library on MinGW systems.
+
+2003-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (OCTAVE_LOCAL_BUFFER): Always allocate temporary
+	buffer using new.
+
+2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in octMakefile.in: Delete kpathsea targets.
+
+	* kpathsea: Delete all files and directory.
+
+	* configure.in: Don't run configure in kpathsea subdirectory.
+
+	* README.kpathsea: New file.
+	* octMakefile.in (DISTFILES): Include it in the list.
+
+	* Makeconf.in (do-subst-config-vals): Don't substitute it.
+
+	* configure.in: Also check for basename.
+	Don't substitute LIBKPATHSEA.
+
+2003-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): Don't assume that __WIN32__ will be
+	defined when __CYGWIN__ is defined.
+
+2003-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Only complain for g++ earlier than 2.95.
+	Try harder to get version number only.
+
+2003-03-05  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* aclocal.m4 (OCTAVE_DYNAMIC_AUTO_ARRAYS): New macro.
+	* configure.in: Use it.
+	(AH_BOTTOM): Check HAVE_DYNAMIC_AUTO_ARRAYS instead of __GNUG__.
+
+2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Undo previous change.
+	* Makeconf.in: Likewise.
+
+2003-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (KPATHSEA_INCFLAGS): New variable.
+	* Makeconf.in (KPATHSEA_INCFLAGS): Substitute it.
+	(do-subst-config-vals): Add it to the list.
+	(INCFLAGS): Add $(KPATHSEA_INCFLAGS).
+
+2003-02-23  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* aclocal.m4 (OCTAVE_PLACEMENT_DELETE): New macro.
+	* configure.in: Use it.
+	(AH_BOTTOM): Don't define HAVE_PLACEMENT_DELETE here.
+
+2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Allow RLD_FLAG to be set using --enable-rpath arg.
+
+	* configure.in: Fix default RLD_FLAG value for *-sgi-*.  From
+	Paul Kienzle <pkienzle@users.sf.net>.
+
+	* configure.in: Check for long long int and unsigned long long int.
+
+	* configure.in (AH_BOTTOM): Define HAVE_PLACEMENT_DELETE for gcc
+	3.2 and later.
+
+	* configure.in: Check for copysign and signbit.
+
+2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/Makefile.in (DISTFILES): Add otags.1 to the list.
+
+2003-02-18  Dirk Eddelbuettel  <edd@debian.org>
+
+	* emacs/otags.1: New file.
+
+2003-02-18  David Bateman  <dbateman@free.fr>
+
+	* configure.in: Eliminate linpack
+
+2003-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for mkstemp too.
+
+2003-02-13  Arno Klaassen  <arno@scito.com>
+
+	* configure.in: Fix SH_LD and SH_LDFLAGS for -*-*-freebsd*.
+
+2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Use '$(CXX)', '$(AR)', not "$CXX" and "$AR" when
+	setting variables for building shared libraries.
+
+2003-02-13  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* examples/make_int.cc: Support for ISO standard compilers.
+
+2003-01-22  Richard Stallman  <rms@gnu.org>
+
+	* emacs/octave-mod.el (octave-mode-map): Avoid binding keys that
+	are reserved for users.
+
+2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Fix typo in previous change.
+
+2003-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (MKOCTFILE_INCFLAGS): Skip -I$(includedir) if
+	$(includedir) is /usr/include.
+
+2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Makeconf.in (SED): Export to subshells.
+
+2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't bother with compiler flags for
+	explicit/no-implicit template instantiation.
+
+2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in, Makeconf.in: Allow setting of BUILD_LDFLAGS.
+
+2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* autogen.sh: Use --force for autoconf and autoheader.
+
+2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (CONF_DISTFILES): Include acx_blas.m4 and
+	acx_lapack.m4.
+
+	* configure.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX,
+	BUILD_CXXFLAGS): Kluge for Sun C/C++.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Default value of BUILD_CXX is $CXX, not g++.
+	(AH_BOTTOM): Define __USE_STD_IOSTREAM if using Compaq C++ compiler.
+	For compiler/linker options, use -Wl,OPT instead of -Xlinker OPT.
+	Check for -ieee option for the C and C++ compilers on alpha systems.
+
+2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fail on all gcc 1.x and 2.x versions.
+
+2002-12-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (OCTAVE_LOCAL_BUFFER): New macro.
+
+2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Include $LIBOCTINTERP in the stand alone link command.
+	Define LIBOCTAVE, LIBOCTINTERP, LIBCRUFT, LIBREADLINE using -lLIB.
+
+2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-script-install, do-script-uninstall):
+	New macros, used in Makefiles in scripts subdirectory.
+	(do-script-install): Use new scripts/mkpkgadd script to construct
+	PKG_ADD files.
+
+2002-12-03  Nix  <nix@esperi.demon.co.uk>
+
+	* configure.in: Use AC_CHECK_DECL in conjunction with
+	AC_DECL_SYS_SIGLIST to ensure signal.h is searched.
+
+2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Dont't set SONAME_FLAGS for alpha alpha*-dec-osf*
+	systems.
+
+2002-11-29  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* mkoctfile.in: Include "$incflags $def" in commands to generate
+	dependecies.
+
+2002-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (do-subst-config-vals): Substitute OCTAVE_BINDIR.
+
+	* configure.in (MKOCTFILE_SH_LDFLAGS): New variable.
+	* Makeconf.in (do-subst-config-vals): Substitute
+	OCTAVE_CONF version of this variable.
+
+	* mkoctfile.in: Set SH_LDFLAGS from MKOCTFILE_SH_LDFLAGS, not
+	SH_LDFLAGS.
+	(VERSION): Substitute value of OCTAVE_CONF_VERSION.
+
+	* configure.in (NO_OCT_FILE_STRIP): New variable.
+	* Makeconf.in (do-subst-config-vals): Substitute it.
+	* mkoctfile.in (no_oct_file_strip_on_this_platform): New variable.
+
+2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION):
+	Delete use.
+
+	* aclocal.m4 (OCTAVE_LANG_PROG_NO_CONFDEFS): Delete.
+	(OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Delete.
+
+2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for dlopen last, to avoid broken
+	compatibility libraries.
+	Default value for SHLLIB is '$(SHLEXT)', not $SHLEXT.
+
+2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (USE_EXCEPTIONS_FOR_INTERRUPTS): No need to define.
+
+2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for sigsetjmp and siglongjmp.
+	(AH_BOTTOM): If both are found, define OCTAVE_HAVE_SIG_JUMP.
+	Also check for sig_atomic_t, typedef it if not available.
+
+2002-11-10  Per Persson  <persquare@mac.com>
+
+	* configure.in: Detect dyld API for dynamic linking on OS X.
+
+2002-11-09  Per Persson  <persquare@mac.com>
+
+	* configure.in: Use $(TOPDIR)/src/octave, not $(bindir)/octave for
+	-bundle-loader argument.
+
+	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Force result for OS X.
+
+2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Set FPICFLAG, Also set CXXPICFLAG, CPICFLAG,
+	FPICFLAG, and INCLUDE_LINK_DEPS for OS X.
+
+	* acx_blas.m4 (LIBS): Also check for Apple vecLib framework.
+
+2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): Define USE_EXCEPTIONS_FOR_INTERRUPTS.
+
+2002-11-04  Joseph P. Skudlarek  <jskud@jskud.com>
+
+	* emacs/otags: handle declarations without arguments and/or return
+	values.
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SHLEXT_VER, SHLLIB_VER, SHLBIN_VER): Use
+	$(version), not $(VERSION).
+
+2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (HAVE_DLOPEN_API, HAVE_SHL_LOAD_API,
+	HAVE_LOADLIBRARY_API): Delete.
+	(do-subst-config-vals): Don't substitute them here.
+
+2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (ENABLE_DYNAMIC_LINKING): Rename from
+	WITH_DYNAMIC_LINKING.
+	* Makeconf.in: Likewise.
+	* examples/hello.cc: Likewise.  Improve comments.
+
+	* configure.in: Revive --enable-dl to set default value for
+	WITH_DYNAMIC_LINKING.
+
+	* configure.in: Also set SHLEXT_VER, SHLLIB_VER, SHLBIN_VER.
+	* Makeconf.in: Substitute them here.
+	Also substitute SHLLINKEXT.
+
+2002-10-25  Per Persson  <persquare@mac.com>
+
+	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Fix
+	first test to properly fail on OS X.  Fix typo in final test to
+	set result.
+
+2002-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-opts.pl (emit_opt_class_header): Make set_options another
+	name for copy.
+
+2002-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Don't substitute
+	OCTAVE_CONF_OCTAVE_LITE.
+	(OCTAVE_LITE): Delete.
+
+	* Makeconf.in: Use HAVE_DLOPEN_API, HAVE_LOADLIBRARY_API, and
+	HAVE_SHL_LOAD_API instead of WITH_DL and WITH_SHL.
+
+	* configure.in: Rewrite the way we handle dynamic linking.
+	If dynamic linking is used always do what was previously only
+	enabled by --enable-lite-kernel.
+
+2002-10-17  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in: Define WITH_DYNAMIC_LINKING based on --enable-shared.
+	Add -lwsock32 to LIBS for MinGW.
+
+2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_LANG_PROG_NO_CONFDEFS): New macro.
+	(OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): Use it along with
+	AC_LINK_IFELSE instead of AC_TRY_LINK.
+	Require both programs to compile for success.
+
+2002-10-16  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* aclocal.m4: Both Cygwin and MinGW don't prepend underscores.
+	* configure.in: MinGW builds shared libraries the same as Cygwin.
+	MinGW must link to winsock explicitly.
+	* install-octave.in: MinGW and Cygwin both need OCTAVE_HOME.
+
+2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in (library_path_var): New variable.
+
+2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SH_LDFLAGS): Additional options for Cygwin:
+	-Wl,--export-all-symbols -Wl,--enable-auto-import.
+
+	* Makeconf.in (TERMLIBS): Substitute here.
+
+	* configure.in: Define OCTAVE_USE_WINDOWS_API if
+	defined (__WIN32__) && ! defined (__CYGWIN__), not if
+	defined (__WIN32__) || ! defined (__CYGWIN__).
+	Also call AC_SUBST for TERMLIBS.
+
+2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in: Use correct SHLEXT and PICFLAG for Cygwin.
+	* configure.in: Cygwin must link against -loctave.dll, etc.
+
+	* configure.in: Define INCLUDE_LINK_DEPS because Cygwin needs DLLs
+	to be linked against their dependencies.
+	* Makeconf.in: Ditto.
+
+	* configure.in: Define SHLLIB and SHLBIN because Cygwin doesn't
+	link against shared libs but instead against -lxxx.dll.  LIB and
+	BIN are the link and load forms respectively of the library.
+	* Makeconf.in: Ditto, and define the corresponding XXX_VER.
+
+	* configure.in: Remove LIBOCT_READLINE and LIBOCT_PATHSEARCH
+	because they are merged into LIBOCTAVE to avoid circular
+	dependencies.
+	* Makeconf.in: Ditto.
+	* mkoctfile.in: Ditto.
+
+	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Define LIBREADLINE because
+	Cygwin requires liboctave to be linked against -lreadline so
+	including it in LIBS isn't sufficient.
+	* mkoctfile.in: Substitute and use LIBREADLINE here.
+
+	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): Force no for cygwin.
+
+2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): Maybe define OCTAVE_USE_WINDOWS_API
+	and OCTAVE_HAVE_WINDOWS_FILESYSTEM.
+
+2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_GNUPLOT): AC_DEFINE GNUPLOT_BINARY
+	Default value on Windows systems is pgnuplot.
+	If not cross compiling and no gnuplot program is found, set
+	default to gnuplot.  Set defaults for multiplot and frames.  Check
+	for pgnpuplot, pipe-gnuplot, and gnuplot on Windows systems.
+
+	* configure.in (BUILD_EXEEXT): New variable.
+	* Makeconf.in (BUILD_EXEEXT): Substitute it here.
+
+	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION):
+	Add second test for OS X.
+
+2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_PRAGMA_INTERFACE_IMPLEMENTATION): New macro.
+	* configure.in: Use it.
+
+	* configure.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX, BUILD_CXXFLAGS):
+	Set default values if cross compiling.
+
+	* aclocal.m4 (OCTAVE_PROG_NM): Do the right thing for cross compiling.
+	(OCTAVE_CXX_PREPENDS_UNDERSCORE): Require OCTAVE_PROG_NM.
+	(OCTAVE_CXX_ABI): Likewise.
+
+	* Makeconf.in (BUILD_CC, BUILD_CFLAGS, BUILD_CXX, BUILD_CXXFLAGS):
+	New variables for cross compiling.
+
+2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in: Check for raise.
+
+2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_SED): New macro, adapted from autoconf
+	patches mailing list archive, written by Robert Boehne
+	<rboehne@ricardo-us.com>.
+	* configure.in: Use it.
+	* Makeconf.in: Substitute SED, use $(SED), not sed.
+	(do-subst-conffig-vals): Substitute it here too.
+	* mkoctfile.in: And here.  Use $SED, not sed.
+	* octave-bug.in: Likewise.
+	* install-octave.in: Likewise.
+
+2002-09-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't define mkdir here.
+
+2002-09-25  Mumit Khan  <khan@nanotech.wisc.edu>
+
+ 	* aclocal.m4 (OCTAVE_MKDIR_TAKES_ONE_ARG): New macro to determine if
+ 	host mkdir accepts only one arg instead of the usual two.
+ 	* configure.in: Use. Check for direct.h.
+ 	(mkdir): Define.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in: Check for conio.h.
+	Check for _kbhit.
+
+2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): Don't define
+	USE_PRAGMA_INTERFACE_IMPLEMENTATION.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* configure.in: Fix syntax errors in !HAVE_XXX_T.
+	Don't require terminal control for build.
+
+2002-09-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fix typedefs used in AH_BOTTOM.
+
+2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AH_BOTTOM): If using g++, define
+	USE_PRAGMA_INTERFACE_IMPLEMENTATION.
+
+2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for sstream.
+
+2002-08-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (%.d : %.cc): Add $*.df to LHS of dependency list.
+
+2002-08-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* mk-opts.pl: Add support for INCLUDE = "...".
+
+2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-opts.pl: Handle Array<int> too.
+
+2002-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-opts.pl (emit_options_function): Emit newline at EOF.
+
+2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Use $@-t instead of $@.tmp or $@.t.
+
+2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-opts.pl: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_CONFIG_FILES): Add libcruft/dasrt/Makefile to
+	the list.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_CONFIG_FILES): Add libcruft/odessa/Makefile to
+	the list.
+
+2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Maybe add -fno-coalesce-templates to XTRA_CXXFLAGS
+	on darwin systems.
+	(SH_LDFLAGS): Set this on darwin systems.
+	(UGLY_DEFS): Cope with broken sed or shell quoting on darwin systems.
+
+2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_ISO_COMPLIANT_LIBRARY): Omit cwctype.
+
+2002-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_AIX): Move before AC_MINIX and AC_ISC_POSIX.
+	(AH_BOTTOM): Move contents of acconfig.h here.
+	* acconfig.h: Delete.
+	* octMakefile.in (CONF_DISTFILES): Delete acconfig.h from the list.
+
+2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_CONFIG_FILES): Add libcruft/daspk/Makefile to
+	the list.
+
+2002-04-24  Kurt Hornik  <hornik@ci.tuwien.ac.at>
+
+	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): Also handle flags
+	that contain : and =.
+
+2002-04-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess, config.sub: Update from FSF sources.
+
+2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Declare F2C and F2CFLAGS with AC_ARG_VAR.
+	Delete AC_SUBST calls for F77, FFLAGS, FLIBS, F2C, F2CFLAGS (no
+	need to do this explicitly now).
+
+2002-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Set and substitute EXEEXT, not EXE.
+
+	* configure.in (EXE): Delete check and substitution.
+	* install-octave.in: Use EXEEXT instead of EXE.
+
+	* configure.in: Use AC_CHECK_MEMBERS, not OCTAVE_STRUCT_GR_PASSWD.
+	Use AC_CHECK_TYPES, not AC_CHECK_TYPE or OCTAVE_CHECK_TYPE.
+	* aclocal.m4 (OCTAVE_STRUCT_GR_PASSWD, OCTAVE_CHECK_TYPE): Delete.
+	* acconfig.h (dev_t, ino_t, nlink_t, sigset_t): Typedef if not found.
+
+2002-04-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4: Replace AC_LANG_SAVE, AC_LANG_C, AC_LANG_CPLUSPLUS,
+	and AC_LANG_RESTORE with AC_LANG_PUSH and AC_LANG_POP.
+	Use AS_MESSAGE_LOG_FD instead of AC_FD_CC.
+	* configure.in: Delete second arg in AC_CHECK_SIZEOF calls.
+
+2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* configure.in: Correct usage of AC_ARG_WITH for --with-fftw.
+
+	* configure.in: Update for autoconf 2.5x.
+	Minor syntax changes to new recommended syntaxes and macros.
+	Apply changes from autoupdate plus eliminate some warning
+	messages, deprecated uses of changequote, etc.
+	Use autoheader templates to generate config.h.in.
+	Replace most of Octave's Fortran support macros with those in the
+	new autoconf.
+	Eliminate most uses of internal (undocumented) autoconf cache vars.
+	Replace BLAS/LAPACK detection new macros ACX_BLAS/ACX_LAPACK from
+	the autoconf macro repository.
+	* acx_blas.m4, acx_lapack.m4: New files.
+	* acconfig.h: Delete lines that can be automatically generated
+	from new info in configure.in and aclocal.m4.
+	If it is not already defined, define F77_FUNC for use with f2c.
+	* aclocal.m4 (OCTAVE_PROG_G77, OCTAVE_FLIBS, OCTAVE_F77_MAIN_FLAG,
+	OCTAVE_F77_UPPERCASE_NAMES, OCTAVE_F77_APPEND_UNDERSCORE,
+	OCTAVE_F2C_F77_COMPAT): Delete definitions.
+	Use autoheader templates to generate config.h.in.
+	* Makeconf.in, mkoctfile.in (FORTRAN_MAIN_FLAG): Delete all uses.
+
+2001-11-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave-bug.in (BLAS_LIBS, FFTW_LIBS, LD_CXX): Substitute and
+	print values.
+	* mkoctfile.in: Accept --compile as an alias for -c.
+	New option, --link-stand-alone.
+	New option, --no-pathsearch.
+	New option, --no-readline.
+	Substitute RLD_FLAG, FLIBS, LIBKPATHSEA, LIBOCTINTERP,
+	LIBOCTAVE, LIBOCT_READLINE, LIBOCT_PATHSEARCH, LIBCRUFT,
+	BLAS_LIBS, FFTW_LIBS, and LIBS.
+	* Makeconf.in (MKOCTFILE_LFLAGS): New variable.
+	(do-subst-config-vals): Substitute FFTW_LIBS, LD_CXX,
+	LIBOCT_PATHSEARCH, LIBOCT_READLINE, MKOCTFILE_LFLAGS.
+
+2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LIBOCT_READLINE, LIBOCT_PATHSEARCH): New variables.
+	* Makeconf.in: Substitute them here.
+
+2001-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (dist): Omit long-gone info subdir.
+	Fix find command for removing Makefile in kpathsea and glob subdirs.
+
+2001-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Substitute F2C and F2CFLAGS. Make it possible to
+	use f2c and a C compile to compiling Fortran source files.  Print
+	warnings and error message on stderr, not stdout.  Issue warnings
+	if it is not possible to comiple Fortran, C, or C++ files.
+
+	* configure.in (%.c : %.f): Don't use cat in F2C rule.
+
+2001-07-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Substitute DEPEND_FLAGS and
+	DEPEND_EXTRA_SED_PATTERN.
+	* mkoctfile.in: Handle --depend.
+
+2001-07-25  Rafael Laboissiere  <rafael@laboissiere.net>
+
+       * octave-config.in: New file.
+       * Makeconf.in (do-subst-default-vals): Substitute OCTAVE_VERSION.
+       * Makefile.in (TARGETS): Add octave-config to list.
+       * octMakefile.in (DISTFILES): Add octave-config.in to list.
+       (BINDISTFILES): Add octave-config to list.
+       (all): Add octave-config dependency.
+       (octave-config): New rule.
+       (install): Install octave-config.
+       (uninstall): Delete octave-config from bindir.
+       (maintainer-clean): Delete octave-config.
+       (binary-dist): Add octave-config dependency.
+
+2001-06-29  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_ABI): Use "sun_v5" instead of "sun".
+
+	* aclocal.m4 (OCTAVE_CXX_ABI): New macro.
+	(OCTAVE_CXX_PREPENDS_UNDERSCORE): Add missing return value.
+	* configure.in: Use.
+	* acconfig.h (CXX_ABI): New macro.
+
+2001-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Quote the call to AC_CHECK_FUNC inside the
+	AC_CHECK_LIB macro when checking for lapack.  For autoconf 2.50
+
+	* aclocal.m4: Changes for autoconf 2.50:
+	Convert dnl comments inside AC_DEFUN to ###.
+	(OCTAVE_FLIBS): Use [] quoting instead of changequote.
+
+2001-05-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in: Remove remaining references to readline.
+	(CONF_DISTFILES): Add autogen.sh to the list.
+
+2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* configure.in: Support for --with-fftw.
+	(FFT_DIR, FFTW_LIBS): New substitutions.
+	* Makeconf.in (FFTW_LIBS): New variable.
+	* acconfig.h (HAVE_FFTW): New macro.
+
+2001-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_ENABLE_READLINE): Require readline unless
+	--disable-readline is specified.
+
+	* configure.in: Don't define TERMLIBS.  Do add terminal lib(s) to LIBS.
+	* octave-bug.in: Delete references to TERMLIBS.
+	* Makeconf.in: Likewise.
+
+	* Makeconf.in (LIBREADLINE): Delete substitution.
+	(do-subst-config-vals): Likewise.
+	* octMakefile.in (SUBDIRS): Delete @READLINE_DIR@ from the list.
+	* configure.in (AC_CONFIG_SUBDIRS): Delete $READLINE_DIR from the list.
+
+	* configure.in (VOID_SIGHANDLER): Don't check or substitute here.
+
+2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (install, install-strip): Don't use mk-includedir-link
+
+	* Makeconf.in (mk-includedir-link, mk-libdir-link): Delete definitions.
+
+2001-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (mk-libdir-link): Undo previous change
+
+2001-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Only check for libz if checking for HDF5 libraries.
+	Allow user to specify HDF5 library name on command line, same as
+	for BLAS libraries.  Include BLAS and HDF5 libs in summary output.
+
+2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (CONF_DISTFILES): Remove config.h.bot from the list.
+
+2001-04-19  David Livings  <david.livings@asa.co.uk>
+
+	* Makeconf.in (mk-libdir-link): Omit check for $(octlibdir)/octave
+	existing as a directory.
+
+2001-02-28  Albert Chin-A-Young  <china@thewrittenword.com>
+
+	* configure.in: Check for getpwnam in libsun only after checking
+	default libraries first.  Check for gethostname in libsocket only
+	after checking default libraries first.
+
+2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Allow for using f2c when setting functions to look
+	for in the BLAS and Lapack libraries.
+	From Kurt Hornik <Kurt.Hornik@ci.tuwien.ac.at>.
+
+2001-02-10  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* test/octave.test/string/dec2hex-1.m: Don't assume hex format
+	produces lower case letters.
+
+2001-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* acconfig.h: Merge contents of config.h.bot.
+	* config.h.bot: Delete.
+
+	* autogen.sh: Allow running of autoconf or autoheader to be skipped.
+
+2001-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* readline: Update to new version (4.2-beta1).
+
+2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* configure.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): New variables.
+	* Makeconf.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Likewise.
+
+	* configure.in (XTRA_CXXFLAGS): Use -fno-implicit templates for
+	pre-gcc3 compilers. Remove -fno-rtti and -fno-exceptions.
+	(DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): New macros.
+	(BLAS_LIBS): Fix test for sunperf library on Sun Solaris.
+	(CPICFLAG, CXXPICFLAG, FPICFLAG, SH_LDFLAGS, RLD_FLAG): Add Sun
+	compiler support.
+	* Makefile.in (DEPEND_FLAGS, DEPEND_EXTRA_SED_PATTERN): New
+	variables.
+	(%.d : %.cc): Use.
+	(%.d : %.c): Likewise.
+	* acconfig.h (CXX_ISO_COMPLIANT_LIBRARY): Add #undef.
+
+2001-01-31  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Makeconf.in (%.d : %.cc): Strip the directory portion of the
+	target.
+	(%.d : %.c): Likewise.
+
+	* aclocal.m4 (OCTAVE_CXX_ISO_COMPLIANT_LIBRARY): New macro.
+	* configure.in: Use it.
+
+2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Substitute
+	OCTAVE_CONF_CANONICAL_HOST_TYPE here too.
+	* octave-bug.in: Substitute OCTAVE_CONF_CANONICAL_HOST_TYPE, not
+	OCTAVE_CANONICAL_HOST_TYPE.
+
+2000-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4: Give gperf a keyword, to avoid complaints from newer
+	versions.
+
+2000-11-27  Marcus.Brinkmann  <Marcus.Brinkmann@ruhr-uni-bochum.de>
+
+	* configure.in: Handle *-*-gnu* the same as *-*-linux* for shared
+	library creation.
+
+2000-11-03  Andy Adler  <en254@freenet.carleton.ca>
+
+	* mkoctfile.in: Handle -c to mean compile only.
+
+2000-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Handle --print.
+
+2000-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_GPERF): Check that gperf supports flags
+	we use.
+
+	* missing: New file, modified from the missing script provided by
+	automake (never create files, just exit with failure status).
+	* aclocal.m4 (OCTAVE_PROG_BISON, OCTAVE_PROG_FLEX, OCTAVE_PROG_GPERF):
+	Use $(top_srcdir)/missing as replacement script.
+
+	* aclocal.m4 (OCTAVE_PROG_FLEX, OCTAVE_PROG_BISON): New macros.
+	* configure.in: Use them.
+
+2000-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* autogen.sh: Don't run configure.
+
+	* configure.in (SPECIAL_MATH_LIB): Delete code related to this var.
+	* Makeconf.in: Ditto.
+	(BLAS_LIBS, LIBS): Substitute here.
+	(do-subst-config-vals): Put BLAS_LIBS in oct-conf.h.
+
+2000-07-20  Joao Cardoso  <jcardoso@inescn.pt>
+
+	* configure.in: (LD_CXX): Define and substitute.
+	For sco3.2v5 systems, set SONAME_FLAGS and RLD_FLAG.
+	* Makeconf.in (LD_CXX): Allow substitution.
+
+2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DISTSUBDIRS): Define in terms of $(ALL_SUBDIRS).
+
+2000-07-17  Joao Cardoso  <jcardoso@inescn.pt>
+
+	* configure.in (LIBGLOB): Set to be the two object files in the
+	glob directory instead of libglob.a.
+
+2000-07-05  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
+
+	* Use BLAS_LIBS to save the names of BLAS libraries instead of
+	adding them to LIBS, then substitute BLAS_LIBS.
+
+2000-06-30  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
+
+	* configure.in: Support for --with-fastblas (ATLAS).
+
+2000-06-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for long long data type.
+
+2000-06-29  Steven G. Johnson  <stevenj@gil-galad.mit.edu>
+
+	* acconfig.h (HAVE_HDF5): Add undef.
+	* configure.in: Handle --with-hdf5.
+
+2000-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave-bug.in: Substitute correct values for config_opts,
+	MACHINE, and CXXFLAGS.
+
+2000-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (GPERF): Allow substitution.
+
+2000-06-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_GPERF): New macro.
+	* configure.in: Use it.  Print warning at end if gperf is missing.
+
+2000-04-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Try moving output file first.  But comment these
+	lines and let people who have trouble enable them.
+
+2000-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Remove output file before linking.
+
+	* octMakefile.in (DIRS_TO_MAKE): Create $(octincludedir)/octave.
+	(install install-strip): Install config.h in $(octincludedir)/octave,
+	not $(octincludedir).
+
+2000-03-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DIRS_TO_MAKE): Double up on $ in awk command to
+	get them past Make.
+
+2000-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (SUBDIRS): Omit src.
+	(ALL_SUBDIRS): New variable.  Include src here.
+	(all): Depend on src instead of $(SUBDIRS).
+	(src): New target.  Depend on $(SUBDIRS).
+
+	* Makefile.in (.NOTPARALLEL): New target, for GNU Make 3.79.
+	* octMakefile.in (.NOTPARALLEL): Likewise.
+
+2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for vsnprintf.
+
+2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (liboctave.$(SHLEXT)): Delete target before rebuilding.
+
+2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
+
+	* Makeconf.in (%.o : %.c): Pass -o to compile command.
+	(%.o : %.cc): Ditto.
+	* configure.in (%.o : %.f): Ditto.
+
+2000-03-08  Stephen Eglen  <stephen@gnu.org>
+
+	* emacs/octave-mod.el (octave-font-lock-keywords): To font-lock
+	the builtin operators, use `font-lock-builtin-face' for Emacs
+	and `font-lock-preprocessor-face' for XEmacs.
+
+2000-03-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: For building shared libaries, handle
+	i386-pc-solaris2* the same as sparc-sun-solaris2*.
+
+2000-02-29  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* examples/make_int.cc (make_int): Handle new operator names.
+
+2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean distclean): Don't delete Makefile.
+	(dist): Delete stamp-auto.
+
+2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (octincludedir): Delete trailing /octave here.
+	* Makeconf.in (mk-includedir-link): Append it here.
+	(MKOCTFILE_INCFLAGS): Use both -I$(octincludedir) and
+	-I$(octincludedir)/octave.
+
+	* configure.in (localveroctfiledir, localverarchlibdir,
+	localverfcnfiledir): New variables.
+	(localfcnfilepath): Prepend localverfcnfiledir.
+	(localoctfilepath): Prepend localveroctfiledir.
+	* Makeconf.in: Substitute them here.
+
+	* Makeconf.in (do-subst-default-vals): Substitute
+	OCTAVE_LOCALVERARCHLIBDIR, OCTAVE_LOCALVERFCNFILEDIR,
+	OCTAVE_LOCALVEROCTFILEDIR.
+
+2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess: Update to latest from subversions.gnu.org.
+	* config.sub: Likewise.  Recognize sv1-cray as a basic_machine.
+
+	* Makeconf.in (MKOCTFILE_INCFLAGS): New macro.
+	(do-subst-conf-vals): Substitute it.
+	* mkoctfile.in: Set INCFLAGS from OCTAVE_CONF_MKOCTFILE_INCFLAGS.
+
+	* mkoctfile.in: Fix names in substititions.
+	* octave-bug.in: Likewise.
+
+2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-default-vals, do-subst-config-vals):
+	Substitute more complete set of values.
+
+2000-02-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (octave_cv_string_npos): Add std:: qualifier.
+
+2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-begin-keywords): Add "do".
+	(octave-end-keywords): Add "until".
+	(octave-abbrev-table): Add "u" as abbrev for "until ()"
+	(octave-block-match-alist): Add do-until.
+
+2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't look for the sunmath library.
+	Don't check for infinity or quiet_nan.
+
+	* emacs/octave-mod.el (octave-mode-syntax-table):
+	Undo previous change, but add a comment explaining why.
+
+	* install-octave.in: Exit on any error instead of continuing.
+	Install Octave binary last.
+
+2000-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-mode-syntax-table):
+	Make `%' a comment start character too.
+
+2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for strptime and localtime_r.
+
+1999-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (XTRA_CXXFLAGS, XTRA_CFLAGS): Use -mminimal-toc on
+	AIX systems.
+
+1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/README: New file.
+	* emacs/Makefile.in (DISTFILES, BINDISTFILES): Add it to the lists.
+
+	* emacs/Makefile.in: Don't distribute .elc files.
+
+1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for select and poll.  Also check for poll.h
+	and sys/poll.h.
+
+1999-10-19  Geoff Jacobsen  <geoffj@casquet.inet.net.nz>
+
+	* autogen.sh: New file.
+
+1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in: Use `$(MAKE) -C dir' instead of `cd dir; $(MAKE)'.
+
+Mon Sep 20 11:02:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-inf.el, emacs/octave-mod.el: Update to match FSF
+	sources plus code that will make it work if Emacs doesn't have the
+	customize code.
+
+Tue Sep 14 07:57:06 1999  Kurt Hornik  <hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-inf.el (inferior-octave-startup): Always pass "-i"
+	and "--no-line-editing" to Octave subprocess.
+ 	(inferior-octave-startup-args): Default to nil.
+
+Mon Sep  6 10:50:10 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-inf.el (inferior-octave-startup-args):
+	Add --no-line-editing to the list.
+
+Fri Jul  9 09:15:24 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Try to handle IEEE FP flags for g77 on Alphas.
+
+Thu Jul  8 19:56:37 1999  Stephen Eglen  <stephen@gnu.org>
+
+	* emacs/octave-inf.el (inferior-octave-directory-tracker):
+	Change regexp so that it doesn't match commands beginning with `cd'.
+
+Wed Jun 23 13:20:11 1999  Mumit Khan  <khan@xraylith.wisc.edu>
+
+	* configure.in (HAVE_TERMIOS_H): Avoid autoheader lossage.
+
+Sun Jun 20 23:05:18 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for sys/ioctl.h.
+
+Mon May 10 09:06:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_G77): Also match "FSF-g77", for egcs.
+
+Thu Apr  8 19:20:09 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* examples/hello.cc (Fhello): octave_value::print now requires a
+	stream arg.
+
+Wed Feb  3 01:02:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Use AC_OUTPUT_COMMANDS to chmod install-octave so
+	that the command will also executed in config.status.
+
+Thu Jan 28 21:05:32 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Do substitution on
+	CANONICAL_HOST_TYPE, not TARGET_HOST_TYPE.
+	(do-subst-default-vals): Likewise.
+
+Wed Jan 20 12:56:02 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't put -O in FFLAGS for powerpc-apple-machten*.
+
+Wed Dec  9 14:02:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (RDYNAMIC_FLAG): Substitute RDYNAMIC_FLAG here.
+	* configure.in: Check for G++ compiler flag -rdynamic if setting
+	up to support dynamic linking, and substitute RDYNAMIC_FLAG if
+	-rdynamic is accepted.
+	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): Clarify usage comment.
+
+Mon Dec  7 19:49:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for -lm just after compiler tests.
+	Remove -lm from other macro calls.  Don't check for -lm on NeXT
+	systems.  Eric Norum <eric@skatter.usask.ca> says /lib/libsys_s.a
+	has all the routines that are traditionally in libc.a and libm.a
+	on *NIX systems.  NeXT also supplies a libm.a, but it seems to be
+	horribly buggy.
+
+Sat Dec  5 10:48:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Correctly handle -?.
+
+Fri Dec  4 18:05:51 1998  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-mod.el (octave-abbrev-start): Use the correct name
+	of the abbrev table, and provide support for XEmacs.
+	(octave-xemacs-p): New variable.
+
+Tue Nov 24 23:31:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for strftime too.
+	Avoid checking for termios.h on NeXT systems.
+
+Thu Nov 19 16:07:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_PREPENDS_UNDERSCORE): New macro.
+	* configure.in: Use it.
+	* acconfig.h: Add #undef for it.
+
+Thu Nov 12 10:42:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/otags: New script from Mario Storti
+	<mstorti@minerva.unl.edu.ar>.
+	* emacs/Makefile.in: Add it to the list of files to distribute and
+	install.
+
+Wed Nov 11 17:26:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Add libcruft/amos/Makefile.
+	Delete libcruft/specfun/Makefile.
+
+Mon Nov  9 08:53:03 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (LIBGLOB): Add a place for substitution to occur.
+	(GLOB_INCFLAGS): Define as @GLOB_INCFLAGS@, not @DLFCN_INCFLAGS@.
+	(do-subst-config-vals): Don't forget LIBGLOB.
+	* octave-bug.in (LIBGLOB): Substitute here too, and add it to the
+	list of configuration items to print.
+
+Mon Nov  2 20:33:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Define __NO_MATH_INLINES.
+	* acconfig.h: Add #undef for it.
+
+	* configure.in (AC_OUTPUT): Escape newlinew in macro call with \.
+
+	* install-octave.in (SHLEXT): Substitute.
+	(SHLEXT_VER): Define.
+	Use them for installing shared libraries.
+	Use subshells to avoid having to cd back to $distdir.
+	(distdir): Delete variable.
+
+Fri Oct  2 14:23:59 1998  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* octave-inf.el (inferior-octave-prompt):  Also match prompts of
+	the form `octave.bin:1>' which come from using precopiled binary
+	versions.
+
+Thu Sep 24 13:51:03 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Add libcruft/ordered-qz to the list.
+	Delete libcruft/balgen and libcruft/eispack from the list.
+
+Mon Aug 31 12:07:02 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.sub: Accept armv4 everywhere arm is allowed.
+
+Tue Aug 18 17:02:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Allow -DDEF on command line.
+
+Thu Jun 18 20:24:40 1998  Roman Hodek  <Roman.Hodek@informatik.uni-erlangen.de>
+
+	* configure.in (RLD_FLAG): Set correctly for Linux on all
+	architectures.  From
+
+Thu May 28 10:17:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: When checking for glob stuff, make sure that the
+	systsem header file has all the definitions that we need.  If not,
+	set up to use our replacement library.
+
+Mon May 18 11:33:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Fix typos in case statement.
+
+Fri May 15 00:34:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Make sure install-octave is executable.
+
+	* install-octave.in (oct_files): Don't cd to src.
+	(have_find): Delete variable (assume all systems have find).
+
+Thu May 14 10:29:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_SET_DEFAULT): Allow values to come from the
+	environment.
+
+	* Makefile.in (binary-dist): Don't set LDFLAGS to -static.
+	Run configure with --enable-shared and --enable-lite-kernel.
+
+	* octMakefile.in (DISTFILES): Include README.MachTen in the list.
+	(XBINDISTFILES): Include README.MachTen in the list.
+	Delete README.NLP from the list
+	* README.MachTen: New file.
+
+	* configure.in: Add -mno-fp-in-toc on ibm-aix4 systems.
+	From Philippe.Defert@cern.ch <Philippe.Defert@cern.ch>.
+
+Tue May  5 14:43:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_PROG_G77): Compile trivial program instead of
+	just running ${f77-f77} -v on nothing.
+	Convert all uses of $F77 to ${F77-f77}.
+
+Mon May  4 12:08:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-mode): Make comment-multi-line local
+	and set to nil.
+
+Tue Apr 28 14:28:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Really do skip -lkernel32.
+
+Thu Apr 23 23:26:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* kpathsea: Update to version 3.2.
+
+Mon Apr 20 21:58:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (dlfcn.h): Add check.
+
+Sat Apr 18 20:15:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (USE_GNU_INFO): Delete everything related to this.
+	* acconfig.h (USE_GNU_INFO): Delete undef.
+
+Tue Apr 14 15:33:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* install-octave.in: Improve error messages if version number or
+	host architecture can't be found.
+
+	* install-octave.in: Don't install info reader.
+
+Fri Mar 27 02:54:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Use a Fortran subroutine
+	instead of a function.
+
+Tue Mar 10 17:28:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (RLD_FLAG): Use $(octlibdir), not $(libdir).
+
+Mon Mar  2 00:02:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* install-octave.in: Explicitly set permissions on ls-R files.
+
+	* configure.in: Don't disable GNU Info on cygwin32 systems.
+
+	* install-octave.in: New file.
+	* configure.in: Create install-octave.
+	* octMakefile.in (distclean, maintainer-clean): Delete install-octave.
+	(DISTFILES): Distribute install-octave.in, not install-octave.
+
+Sun Mar  1 23:15:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fix typo in test for glob and fnmatch headers.
+
+Fri Feb 27 15:43:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fix support for dlopen on SCO systems.
+
+Mon Feb 23 13:06:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (ieee_fp_flag): Use -mieee-with-inexact on Alphas.
+	Use octave_cv_f77_is_g77, not just f77_is_g77.
+
+Fri Feb 20 00:38:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in, Makeconf.in: Try to set things up to use the
+	system glob and fnmatch headers and functions if they exist.
+	Better handling of include and lib flags.
+
+Thu Feb 19 01:21:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't check for gamma or lgamma
+	* acconfig.h: Delete undef for HAVE_GAMMA and HAVE_LGAMMA.
+
+Wed Feb 18 15:05:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't check for vfork.
+
+Wed Feb 11 19:41:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (mk-libdir-link): Don't create link if a directory
+	named $(libdir)/octave already exists.
+
+Mon Feb  9 14:47:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (INSTALL_SUBDIRS): Delete @INFO_DIR@.
+
+Thu Feb  5 03:04:09 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for vfork.
+
+	* config.h.bot (X_CAST): New macro.
+
+Wed Feb  4 01:42:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): If ld_run_path is not absolute, kill it.
+
+Tue Feb  3 00:24:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-vals): Substitute $(libexecdir) too.
+
+Mon Feb  2 22:42:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Define octlibdir.
+	* Makeconf.in: Substitute value.
+	(do-subst-config-vals): Set LIBDIR to $(octlibdir).
+	(do-subst-default-vals): Substitute OCTLIBDIR too.
+
+Sat Jan 31 19:29:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* acconfig.h: Add #undefs for HAVE_GAMMA and HAVE_LGAMMA to avoid
+	bug in autoconf, but #if 0 them out to avoid warning messages
+	about redefining them.
+
+Mon Jan 26 13:26:09 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Substitute XTRA_CFLAGS and
+	XTRA_CXXFLAGS.
+	* mkoctfile.in: Substitute XTRA_CFLAGS and XTRA_CXXFLAGS, not
+	GCC_IEEE_FP_FLAG, HOST_CXXFLAGS, and NO_IMPLICIT_TEMPLATES.
+	(ALL_CFLAGS): Use XTRA_CFLAGS, not GCC_IEEE_FP_FLAG here.
+	(ALL_CXXFLAGS): Use XTRA_CXXFLAGS, not GCC_IEEE_FP_FLAG,
+	HOST_CXXFLAGS, and NO_IMPLICIT_TEMPLATES here.
+
+Sun Jan 25 01:59:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: (GXX_PICKY_FLAGS): Add -Weffc++.
+	Use OCTAVE_CC_FLAG and OCTAVE_CXX_FLAG to add -Wall and for adding
+	picky flags in AC_ARG_ENABLE(picky-flags ...) macro.
+
+	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Require OCTAVE_PROG_G77.
+	Handle cross compiling with g77.
+	(OCTAVE_REINSTALL_SIGHANDLERS): Provide defaults for cross compiling.
+
+	* aclocal.m4 (OCTAVE_PROG_AR, OCTAVE_PROG_G77, OCTAVE_PROG_PAGER,
+	OCTAVE_PROG_GNUPLOT, OCTAVE_PROG_RUNTEST, OCTAVE_F77_MAIN_FLAG):
+	New macros.
+	* configure.in: Use them in place of in-line code.
+
+Sat Jan 24 00:33:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_HOST_TYPE): Don't set target_host_type.
+	* configure.in: Use canonical_host_type in place of target_host_type.
+
+Fri Jan 23 02:47:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Also check for -fno-rtti.
+
+Thu Jan 15 23:12:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess, config.sub: Update to new version from the FSF.
+	* configure.in: Match alpha*-... instead of just alpha-... to cope
+	with new strings like alphaev56-dec-osf4.0b returned from
+	config.guess.
+
+	* aclocal.m4 (OCTAVE_CC_FLAG, OCTAVE_CXX_FLAG): New macros.
+	* configure.in: Use them to find out if the C and C++ compilers
+	support -mieee-fp, -mieee, -fno-implicit-templates, and
+	-fno-exceptions instead of relying on version information.  Add
+	found flags to XTRA_CFLAGS and XTRA_CXXFLAGS instead of using
+	GCC_IEEE_FP_FLAG and NO_IMPLICIT_TEMPLATES.
+	Delete unused variable HOST_CXXFLAGS.
+	* Makeconf.in: Use XTRA_CFLAGS and XTRA_CXXFLAGS instead of
+	GCC_IEEE_FP_FLAG and NO_IMPLICIT_TEMPLATES.
+	Delete unused variable HOST_CXXFLAGS.
+
+Thu Dec 11 09:43:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot: Define CONST_CAST and STATIC_CAST too.
+
+	* configure.in (SH_LD): Set default to $CXX, not $CC.
+
+Mon Dec  1 00:49:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Add libcruft/slatec-err/Makefile.
+
+Sun Nov 30 18:19:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for gamma and lgamma too.
+
+Fri Nov 28 23:21:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Include libcruft/specfun/Makefile.
+
+Fri Nov 28 13:32:26 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* octave-inf.el (inferior-octave-directory-tracker):  Anchor
+	regexp match to beginning of command string.
+
+Wed Nov 26 00:38:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SPECIAL_MATH_LIB): If libdxml exists on DU
+	systems, define SPECIAL_MATH_LIB.
+	* Makeconf.in (SPECIAL_MATH_LIB): Substitute it.
+
+Wed Nov 19 01:54:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL): Don't forget
+	to call AC_LANG_RESTORE.
+
+	* configure.in (CXX_VERSION): Require 2.7.2 or later.
+
+Wed Nov 19 01:38:58 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL): New macro
+	check for new friend template declaration syntax (guiding
+	declarations in DWP).
+	* configure.in: Use it.
+	* config.h.in: Add undef for CXX_NEW_FRIEND_TEMPLATE_DECL.
+
+	* configure.in (CC_VERSION, CXX_VERISON): Check for egcs snapshots.
+
+Mon Oct 20 01:31:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Reprint important warning messages at the end of
+	the run.
+
+Fri Oct 17 04:43:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Include the following change from RMS for octave-mode.el:
+
+	1997-04-22  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
+
+	* octave-mod.el (inferior-octave-output-list): Declare here
+	to avoid compiler warnings.
+	(inferior-octave-output-string): Likewise.
+	(inferior-octave-receive-in-progress): Likewise.
+
+Tue Oct 14 10:48:28 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-mod.el (octave-block-match-alist):  Move
+	`otherwise' to right after `case' to have octave-close-block()
+	correctly close a `switch' block by `endswitch'.
+
+Thu Oct  2 01:37:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Ignore -lc and -lgcc.
+	From "Ram'on Garc'ia Fern'andez" <ramon@juguete.quim.ucm.es>
+
+	* mkoctfile.in: Handle -IDIR option.
+
+Thu Sep 25 11:47:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Really add link options to link command.
+	Also handle -LDIR options.
+
+Fri Sep 19 09:35:59 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* octave-inf.el (inferior-octave-startup-args):  Set to '("-i") to
+	force interactive behavior.
+
+Wed Sep 10 15:31:03 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-mod.el (octave-auto-indent):  New variable.
+	(octave-electric-semi, octave-electric-space):  Use it.
+
+	* emacs/octave-mod.el (octave-maybe-insert-continuation-string):  New
+	function.
+	(octave-auto-fill):  No longer calls do-auto-fill.  Should now
+	avoid breaking lines after comment starts or before code line
+	continuation expressions.
+	(octave-fill-paragraph):  Move forward a line if octave-auto-fill
+	gave up.
+
+	* emacs/octave-mod.el (octave-before-magic-comment-p):  New function.
+	(octave-comment-indent):  Handle magic comments correctly.
+	(calculate-octave-indent):  Handle magic comments correctly.
+
+	* emacs/octave-inf.el (inferior-octave-prompt):  Include the `debug'
+	prompt issued by the Octave `keyboard' command.
+
+	* emacs/octave-mod.el (octave-abbrev-table):  Added abbrevs for switch,
+	case, otherwise, and endswitch.
+	(octave-begin-keywords):  Added switch.
+	(octave-else-keywords):  Added case and otherwise.
+	(octave-end-keywords):  Added endswitch.
+	(octave-block-match-alist):  Added an entry for switch syntax.
+	(calculate-octave-indent):  Added support for switch syntax.
+	(octave-block-end-offset):  New function.
+	(octave-comment-indent):  Fix a typo.
+
+	* emacs/octave-hlp.el:  Provide octave-hlp.
+
+	* emacs/octave-inf.el:  Provide octave-inf.
+
+Sun Sep  7 23:16:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in Don't use OCTAVE_SET_DEFAULT to set values for
+	bindir, datadir, exec_prefix, includedir, infodir, libdir,
+	libexecdir, mandir.
+	Don't use AC_PREFIX_DEFAULT, since we don't want to override the
+	default setting anyway.
+
+Tue Aug 26 13:30:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave-bug.in: CC bug report to user if $USER or $LOGNAME is set.
+
+Mon Aug 25 11:06:54 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave-bug.in: Avoid clobbering existing dead bug report files
+	by numbering them.
+
+Wed Aug 13 20:34:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-before-magic-comment-p): New function.
+	(calculate-octave-indent, octave-comment-indent): Use it.
+
+Sun Aug  3 15:33:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* info: Delete subdirectory.
+	* Makefile.in (TARGETS, help): Delete info.
+	* octMakefile.in (DISTSUBDIRS, BINDISTSUBDIRS): Delete info
+	(binary-dist): Don't strip info/info.
+	* install-octave: Don't install info.
+	* configure.in: Don't run configure in info subdirectory.
+
+Fri Jul 25 14:05:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Avoid adding -lcrt0.o to FLIBS.
+
+Thu Jul 17 13:31:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Only accept an ld_run_path that is
+	absolute.
+
+Wed Jul  9 19:27:38 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Also check for getwd.
+
+Tue Jul  8 17:47:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Avoid grabbing an argument starting
+	with a - as an option for another argument.
+
+Wed Jul  2 21:34:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-auto-indent): New variable.
+	(octave-electric-semi, octave-electric-space): Use it.
+
+Thu Jun 26 22:16:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Only set GCC_IEEE_FP_FLAG to -mieee-fp on Intel
+	systems if it seems to work.
+
+Mon Jun 23 09:16:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (BOUNDS_CHECKING): Fix comment, allow bounds
+	checking to be enabled.
+
+Fri Jun 20 14:26:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Define SH_LD, SH_LDFLAGS, and RLD_FLAG for
+	sparc-sun-sunos4*.
+
+	* mkoctfile.in: Handle --strip.
+
+Sun Jun 15 16:24:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DISTSUBDIRS): Delete readline.
+	(BINDISTSUBDIRS): Delete readline and kpathsea.
+	(DISTDIRS): Add readline.
+
+Wed Jun 11 16:28:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Allow more options, support for C and Fortran
+	source, existing object files, etc.  Based on patch from Guido
+	Dietz <guido@aia009.aia.RWTH-Aachen.De>.
+
+Fri Jun  6 15:20:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Use eval to invoke compilation and linking
+	commands.
+
+	* octMakefile.in (dist, binary-dist): Don't worry about npsol or qpsol.
+	* configure.in: Don't create libcruft/fsqp/Makefile,
+	libcruft/npsol/Makefile, or libcruft/qpsol/Makefile.
+
+	* octMakefile.in (DISTFILES): Don't distribute MAKEINFO.PATCH.
+
+	* octMakefile.in (DISTFILES): Don't distribute README.NLP.
+	* configure.in: Delete checks for FSQP, NPSOL, and QPSOL.
+	* acconfig.h: Delete undefs for FSQP, NPSOL, and QPSOL.
+
+	* readline: Update to new version (2.1).
+
+Thu Jun  5 01:38:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SONAME_FLAGS): Define for some systems.
+	* Makeconf.in: Substitute value here.
+
+	* Makeconf.in (STATIC_LIBS): New variable.
+	* configure.in: Handle --enable-static.
+
+	* Makeconf.in (LIBEXT, SHLEXT_VER): New macros.
+	(octlibdir, mk-libdir-link): Delete.
+
+Wed Jun  4 00:07:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (mk-includedir-link, mk-libdir-link): Make them work.
+
+	* configure.in (OCTAVE_PROGRAM_INVOCATION_NAME): Delete check.
+	* aclocal.m4 (OCTAVE_PROGRAM_INVOCATION_NAME): Delete macro.
+
+Mon Jun  2 13:56:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Move checks for RANLIB, AR, and ARFLAGS before
+	checks for libf2c.
+
+Fri May 30 14:59:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fix typo in check for $with_f77.
+
+Thu May 22 16:48:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Remove duplicate entry for emacs/Makefile.
+
+	* octMakefile.in (INSTALL_SUBDIRS): New macro.
+	(install): Use it.
+
+	* kpathsea: Update to new version (3.0).
+
+	* readline: Update to new version (2.1-beta2).
+
+Wed May 21 16:33:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (install, install-strip): Append version
+	information to octave-bug and mkoctfile.
+	(install, install-strip): Remove octave-bug and mkoctfile first.
+	Ensure link is made in include directory.
+
+	* configure.in (octlibdir): New variable.
+	* Makeconf.in: Substitute it here.
+	(do-subst-config-vals): Add -I${octincludedir} to INCFLAGS.
+	Add -L${octlibdir} to LIBFLAGS.
+
+	* Makeconf.in (mk-includedir-link, mk-libdir-link): New macros.
+
+Mon May  5 00:58:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Make --enable-readline work again.
+	* Makeconf.in: Ditto.
+
+Tue Apr  8 12:38:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in: Do substitute SH_LD and SH_LDFLAGS.  Don't
+	substitute or use LIBFLAGS, RLD_FLAG, OCTAVE_LIBS, FLIBS, LEXLIB,
+	TERMLIBS, LIBS, LDFLAGS, LIBPLPLOT, or LIBDLFCN.  Use $SH_LD and
+	$SH_LDFLAGS, not $CXX -shared.
+
+	* Makeconf.in (do-subst-config-vals): Also substitute SH_LD and
+	SH_LDFLAGS.
+
+Fri Mar 28 16:53:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't add -fpe1 to FFLAGS on Alpha OSF/1 systems
+	unless we are also using a version of gcc that appears to support
+	IEEE floating point.
+
+	* aclocal.m4 (OCTAVE_FLIBS): Require OCTAVE_HOST_TYPE.
+	Skip -lkernel32 on cygwin32 systems.
+
+Wed Mar 26 17:04:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* COPYING: Update to latest version that includes correct address
+	for the FSF.
+
+Tue Mar 25 21:46:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CXXLIBS): Delete macro definition.
+	* configure.in, mkoctfile.in, Makeconf.in, octave-bug.in:
+	Delete use of OCTAVE_CXXIBS.
+
+Thu Mar 13 11:44:46 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Move extra checks for Fortran compiler above
+	checks for dynamic linking and shared library stuff.
+	Handle --with-f77.  Check for Fortran compiler compatibility, even
+	if using g77.  Handle --enable-picky-flags.
+
+	* configure.in: Don't set special PIC options on SGI systems,
+	since PIC is apparently the default.
+
+	* aclocal.m4 (OCTAVE_CHECK_EXCLUSIVE_WITH_OPTIONS,
+	OCTAVE_HOST_TYPE, OCTAVE_SET_DEFAULT): New macros.
+	* configure.in: Use them.
+
+	* octMakefile.in (distclean): Don't remove configure, config.h.in,
+	BUGS, or INSTALL.OCTAVE.
+
+Wed Mar 12 16:56:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): Don't try to set INSTALL_PROGRAM here.
+
+	* emacs/Makefile.in (install-strip): New target.
+	* dlfcn/Makefile.in: Ditto.
+	* examples/Makefile.in: Ditto.
+
+Sun Mar  9 03:44:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot (STATIC_CAST): Delete definition.
+
+Thu Mar  6 03:26:41 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-hlp.el: Provide octave-hlp.
+	* emacs/octave-inf.el: Provide octave-inf.
+
+	* examples/info-emacs-octave-help: Require octave-hlp instead of
+	loading it.
+
+Tue Mar  4 12:19:24 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* emacs/octave-mod.el: Properly indent switch statement.
+
+Mon Mar  3 15:44:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dlfcn/Makefile.in (DISTFILES): Add ftp-site.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Improve checks for gettimeofday.
+
+	* Version 2.0.5 released.
+
+Sat Mar  1 01:34:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (dist): Also delete CVS junk
+
+	* config.h.bot: Unconditionally define WITH_KPATHSEARCH.
+
+Fri Feb 28 01:56:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mod.el (octave-end-keywords): Add endswitch.
+	(octave-end-keywords): Add otherwise and case.
+	(octave-else-keywords): Add switch.
+	(octave-abbrev-table): Add abbrevs for all of them.
+
+	* configure.in (f77_rules_frag): Set default value to /dev/null
+	and redfine as needed.
+	(bsd_gcc_kluge_targets_frag): Likewise.
+
+Wed Feb 26 12:17:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean): Delete some more stuff.
+
+Fri Feb 21 20:38:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Remove extra -L from
+	RLD_FLAG substitution.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+	* configure.in (SH_LDFLAGS): Add -fPIC for HP-UX.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SH_LDFLAGS): Fix typo in last change.
+	(RLD_FLAG): Don't forget to put -shared in SH_LDFLAGS for alpha
+	systems.
+
+	* Version 2.0.3 released.
+
+Tue Feb 18 00:33:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (binary-dist): Strip src/octave and info/info.
+
+	* examples/oregonator.m, examples/oregonator.cc: New files.
+	* examples/Makefile.in (SOURCES): Add them to the list.
+
+Fri Feb 14 14:07:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* install-octave: Don't fail if LIBRARIES file is missing.
+	Don't try to install .oct files if there aren't any.
+
+	* octMakefile.in (bin-dist-type): Delete target.
+	(binary-dist): Don't depend on bin-dist-type.
+	Don't delete config.status or config.h here.
+	(BINDISTFILES): Include config.status and config.h here.
+	(dist): Don't delete Makefile here.
+	(binary-dist): Avoid empty chmod command.
+
+	* Makefile.in (config-check): New target.
+	(all): Depend on config-check.
+	(static-binary-distribution, dynamic-binary-distribution): Delete.
+	(binary-distribution): If in source directory, run configure and
+	make with appropriate args.
+
+	* octMakefile.in (maintainer-clean, distclean): Don't delete Makefile.
+	(CONF_DISTFILES): Distribute Makefile too.
+
+Thu Feb 13 16:25:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (SH_LD, SH_LDFLAGS): New variables.
+	* Makeconf.in: Substitute them.
+
+	* configure.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Delete.
+
+	* Makeconf.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Delete.
+
+	* octave-bug.in: Reinstate RLD_FLAG.
+	* mkoctfile.in: Likewise.
+	* Makeconf.in: Likewise.
+
+	* configure.in: Reinstate RLD_FLAG, but make it optional.
+
+Tue Feb  4 14:10:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (binary-dist): Use find and xargs instead of
+	requiring chmod to support X.
+
+Mon Feb  3 23:51:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* examples/info-emacs-octave-help: Update from Kurt Hornik.
+
+Fri Jan 31 20:41:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dlfcn/Makefile.in (all): Make libdlfcn.a, not dlfcn.a.
+
+Wed Jan 29 00:18:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Use -M instead of -MM to generate dependencies.
+	Don't strip $(srcdir) from output.
+
+	* examples/Makefile.in (install): Install info-emacs-info and
+	info-emacs-octave-help in $(archlibdir).
+
+	* configure.in (INSTALL_SCRIPT): Substitute this in Makefiles.
+	* octMakefile.in (INSTALL_SCRIPT): New macro.
+	(install): Use it.
+	* Makefile.in (install-strip): New target.
+
+Tue Jan 28 09:48:32 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Don't look for values-X*.o.  This is
+	apparently added automatically now by gcc.  Don't put space
+	between -L and directory name.
+
+	* Makefile.in (help): New target.
+	(header-msg): extract from all.
+	(all, help): Depend on header-msg.
+
+	* aclocal.m4 (ld_run_path): Fix typo in last fix.
+
+Mon Jan 27 00:10:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+	* configure.in: Add check for usleep().
+	(bsd_gcc_kluge_targets_frag): New fragment.
+
+	* Makefile.in: Delete `internal' targets.
+	(static-binary-dist, dynamic-binary-dist): Special cases.
+
+	* octMakefile.in (static-binary-dist, dynamic-binary-dist):
+	New targets.
+	(binary-dist, bin-dist): Delete.
+
+Sun Jan 26 19:39:51 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/Makefile.in: New file.
+	* configure.in: create emacs/Makefile.
+	* octMakefile.in: Move/add emacs dir to the appropriate lists.
+
+Sat Jan 25 22:27:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_CHECK_TYPE): New macro, stolen from bash.
+	* configure.in: Use it.
+	* acconfig.h: Add #undef for sigset_t.
+
+	* configure.in (RLD_FLAG): Delete.
+	* mkoctfile.in (RLD_FLAG): Delete.
+	* octave-bug.in (RLD_FLAG): Delete.
+	* Makeconf.in (RLD_FLAG): Delete.
+
+	* Makefile.in (bin-dist): New target.
+
+	* install-octave: Rename from doinstall.sh.  Update for 2.x.
+
+Wed Jan 22 11:14:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (ld_run_path): Anchor search at beginning of line to
+	avoid GNU sed bug on HP-UX systems.  Use just one sed command.
+
+	* emacs/octave-hlp.el, emacs/octave-inf.el, emacs/octave-mod.el:
+	New files from Kurt Hornik.
+	* emacs/octave.el: Delete.
+
+Mon Jan 20 11:16:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkoctfile.in (ALL_CXXFLAGS): Delete reference to -lg++.
+
+	* configure.in (RLD_FLAG): For sparc-sun-sunos4*, remove space
+	between -L and $(libdir).
+	(FPICFLAG): If using g77, set it to -fPIC.
+
+Sun Jan 19 15:57:20 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in, configure.in: Delete FUGLY.
+
+Wed Jan  8 23:12:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (DEFAULT_PAGER): On cygwin32 systems, also look for
+	more.com.
+
+Tue Jan  7 00:16:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Thu Dec 19 16:18:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Only add -Xlinker args if compiler is
+	gcc.
+
+Sat Dec 14 09:46:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* README.Linux: New file.
+	* octMakefile.in: Distribute it.
+
+Fri Dec 13 22:37:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (TERMLIBS): Look for termcap and terminfo after
+	ncurses and curses.
+
+Thu Dec 12 02:27:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (ALL_LDFLAGS): Add CPICFLAG here since gcc needs it
+	on some systems.
+
+	* configure.in (FPICFLAGS): Set to -fPIC if using g77 on HP/UX.
+
+	* Makefile.in, octMakefile.in: Delete all doc-dist, local-dist,
+	and split-dist targets.  Likewise for all other Makefiles in the
+	subdirectories.
+
+	* README.Windows: Renamed from README.WINDOWS.
+
+Tue Dec 10 01:33:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+	* octMakefile.in (binary-dist): Print message instead of making a
+	binary distribution.
+
+Mon Dec  9 11:28:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* README.WINDOWS: New file.
+	* octMakefile.in: Distribute it.
+
+	* configure.in: Substitute EXE.  On cygwin32 systems, set it to .exe.
+	* Makeconf.in (EXE): Add definition.
+
+	* configure.in: On cygwin32 systems, set default to disable GNU info.
+
+	* aclocal.m4 (OCTAVE_STRING_NPOS): New macro.
+	* configure.in: Call it.
+
+	* acconfig.h: Add undef for NPOS.
+	* config.h.bot: Remove kluge for deciding whether to define NPOS.
+
+Thu Dec  5 11:05:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.sub: Update to current version from FSF.
+
+	* Makeconf.in (ALL_LDFLAGS): Add $(FORTRAN_MAIN_FLAG).
+	* configure.in (FORTRAN_MAIN_FLAG): Substitute it.
+
+	* octave-bug.in: Prompt for abort, edit, list, or send.
+	Get subject from message in case it has been edited.
+
+	* configure.in: When looking for libf2c, provide definitions for
+	MAIN_ and MAIN__.
+
+Tue Dec  3 11:35:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess: Delete second copy of script in file.
+
+Sun Nov 24 21:40:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Set GCC_IEEE_FP_FLAG to -mieee-fp on all x86
+	systems, not just those running Linux.
+
+Fri Nov 22 15:10:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave.el: Update from Kurt Hornik to with fixes for
+	fill-paragraph.
+
+Wed Nov 20 00:33:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.93.
+
+	* aclocal.m4 (OCTAVE_STRUCT_GR_PASSWD): New macro.
+	* configure.in: Use it.
+	* acconfig.h (HAVE_GR_PASSWD): Add undef.
+
+Tue Nov 19 23:10:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (INCFLAGS): Add libcruft/misc directory.
+
+Thu Nov 14 00:07:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave.el (octave-text-functions): Change set and show to
+	gset and gshow.
+
+	* Makeconf.in (TEXI2DVI): Define to be our own private version.
+
+	* texi2dvi: New file.
+	* octMakefile.in (DISTFILES): Add it to the list.
+
+	* configure.in: Don't substitute values in src/mk-oct-links.in.
+
+	* emacs/octave.el: Update to version 0.8.6, from Kurt Hornik.
+
+	* configure.in (RLD_FLAG): Surround case pattern in changequote.
+
+	* Version 1.92.
+
+Wed Nov 13 11:04:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't set or substitute LIBINFO.
+	(infofile): Set and substitute a default value.
+
+	* Makeconf.in (do-subst-default-values): Substitute it here.
+
+	* configure.in: If running on an SCO system, define SCO, and force
+	HAVE_ISINF and HAVE_ISNAN to be defined.
+	Also check for ieeefp.h and nan.h.
+	* acconfig.h (HAVE_ISINF, HAVE_ISNAN, SCO): Add undefs.
+
+Tue Nov 12 21:50:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MAKEINFO.PATCH: Update to use patch relative to texinfo-3.9.
+
+	* INFO.PATCH: New file.
+	* octMakefile.in (DISTFILES): Add it.
+
+	* info: Update to current release from texinfo-3.9.
+
+Mon Nov 11 23:56:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot: Only check value of __GNUC__ and __GNUC_MINOR__ if
+	__GNUC__ is defined.
+
+Fri Nov  8 11:15:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (version): Look in $(TOPDIR)/src then
+	$(srcdir)/$(TOPDIR)/src for version.h.
+
+	* configure.in (TERMLIBS): Print warning message if no term
+	library is found.
+	(CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH): Delete.
+	* Makeconf.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH):
+	Delete.
+	(do-subst-default-vals): Delete CXXLIB_LIST, CXXLIB_PATH,
+	FLIB_LIST, and FLIB_PATH from the list.
+
+Thu Nov  7 12:43:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (bin-dist-tar): Delete references to octtopnm.
+
+	* configure.in (RLD_FLAG): Define if x86-linux.
+
+	* Version 1.91.
+
+Wed Nov  6 16:26:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add checks for group stuff.
+
+Tue Nov  5 12:32:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add checks for geteuid, getuid.
+
+	* configure.in: Comment out code to handle --enable-readline since
+	it doesn't work yet.
+
+	* aclocal.m4 (OCTAVE_SIGNAL_CHECK, OCTAVE_REINSTALL_SIGHANDLERS):
+	New checks stolen from bash 2.0 config.
+	* configure.in: Use them.
+
+	* acconfig.h: Add #undefs for HAVE_BSD_SIGNALS, HAVE_POSIX_SIGNALS,
+	HAVE_USG_SIGHOLD, and MUST_REINSTALL_SIGHANDLERS.
+
+Mon Nov  4 11:31:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for gethostname in libsocket.  Apparently
+	needed for some SCO systems.
+
+	* emacs/octave.el: Update to version 0.8.5 from Kurt Hornik.
+
+Fri Nov  1 01:33:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (octave-bug, mkoctfile): After substituting
+	values, chmod a+rx.
+
+Thu Oct 31 13:50:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DISTFILES): Add NEWS.[0-9].
+	* NEWS.1: Old news.
+	* NEWS: Just keep news since last major release.
+
+Wed Oct 30 01:04:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* configure.in: Default is now no internal bounds checking.
+
+	* Makefile.in (all): Fix message to say 2.7.2, not 2.7.0.
+
+	* config.h.bot (GCC_ATTR_NORETURN): Rename from NORETURN.
+	(GCC_ATTR_UNUSED): Rename from GCC_ATTRIBUTE_UNUSED.
+	(NPOS): Define if using gcc 2.8.x or later.
+
+	* octMakefile.in (DIRS_TO_MAKE): Add localarchlibdir to list.
+
+	* configure.in (localarchlibdir): New variable.
+	* Makeconf.in (localarchlibdir): Substitute it.
+	(do-subst-default-vals): Likewise.
+
+Sun Oct 27 14:03:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (do-subst-config-vals): Split into two sed commands
+	to try to avoid fixed limits in some seds and/or systems.
+
+Fri Oct 25 01:13:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot: Add definition for GCC_ATTRIBUTE_UNUSED.
+
+	* configure.in: Define RUSAGE_TIMES_ONLY if cygwin32.
+	* acconfig.h: Add undef.
+
+Thu Oct 24 21:17:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess: Update to version that understands what to do for
+	cygwin32 systems.
+
+Fri Oct 18 12:23:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't comment out substitutions for plplot stuff.
+
+Wed Oct 16 12:01:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* examples/Makefile.in (install): New target.
+
+Tue Oct 15 14:40:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Comment out plplot stuff.
+	In commands to get gxx_version and gcc_version, use simpler sed
+	command to avoid confusing brain-dead vendor-supplied seds.
+
+Mon Oct 14 11:09:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean distclean): Remove mkoctfile too.
+	(kpathsea.info): New target.
+	(dist-info-files): New target.
+	(links-for-dist, links-for-bin-dist, local-dist-tar):
+	Depend on dist-info-files instead of individual files.
+
+Sat Oct 12 00:17:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* examples/Makefile.in (clean, mostlyclean): New targets.
+
+	* octMakefile.in (CLEANSUBDIRS): New macro.
+	Use it for clean targets.
+
+	* config.h.bot (STATIC_CAST, DYNAMIC_CAST, REINTERPRET_CAST):
+	New macros.
+
+Wed Sep 25 12:24:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't look in /usr/ucb/include to find getrusage
+	on Solaris systems since that just seems to cause trouble.
+	* Makeconf.in (UCB_INCFLAGS): Delete.
+
+Fri Aug 30 09:07:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (TERMLIBS): Add check for ncurses.
+
+Tue Aug 20 21:40:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Always set FPICFLAG, CPICFLAG, CXXPICFLAG, SHLEXT,
+	RLD_FLAG, DLFCN_DIR, even if SHARED_LIBS is false.
+
+Thu Aug 15 14:39:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (gxx_version, gcc_version): Strip out cygnus- from
+	the version number.
+
+Tue Jul 30 12:55:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Also check for -bI:FILE arg to ld,
+	for AIX systems.
+
+Thu Jul 25 03:09:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: On AIX systems, add "-ll -lld" to LIBDLFCN.
+
+Fri Jul 19 13:02:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: If using g77 on alpha, don't add -fpe1 to FFLAGS.
+
+Mon Jul 15 14:26:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.sub: Update to new version from FSF (gcc sources).
+
+Thu Jun 13 16:38:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Look for g77 before other fortran compilers.
+
+Thu Jun  6 00:05:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add check for multiple plot windows in gnuplot.
+	* acconfig.h: Add #undef for GNUPLOT_HAS_FRAMES.
+
+Wed May 22 15:05:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (UCB_INCFLAGS): Another kluge to try to find
+	getrusage on Solaris systems.
+	* Makeconf.in Substitute it.
+
+	* configure.in (SH_LIBS, SH_FLIBS, SH_TERMLIBS): Define.
+	* Makeconf.in: Substitute.
+
+Wed May 22 02:42:32 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
+
+	* emacs/octave.el (octave-indent-new-line): Protect
+	octave-indent-line with save-excursion.
+	(octave-calc-indent-this-line): Attempt to handle end tokens that
+	are not on separate lines.
+	(octave-electric-semi): Make `;' self-insert if inside comment.
+	(octave-previous-line): Don't try to go back past the beginning of
+	the buffer.
+
+Tue May 21 23:11:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (F77): Also check for f90.
+
+Mon May 20 12:22:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave.el (octave-indent-new-line): Make it do what the
+	docstring says it does.
+
+	* octave-bug.in: Fix previous change so it also matches things
+	like 1.90, not just 1.1.90.
+
+Fri May 17 09:58:49 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
+
+	* emacs/octave.el (octave-electric-semi): Also call octave-indent-line
+	to indent the current line after inserting a semicolon.
+
+Fri May 17 02:53:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DIRS_TO_MAKE): Add octincludedir.
+	(all): Add mkoctfile.
+
+	* configure.in: Don't set values for exec_prefix, bindir, datadir,
+	libdir, libexecdir, includedir, mandir, or infodir, so that they
+	can be set from the configure command line.
+
+	* configure.in, Makeconf.in: Handle mandir, man1dir and man1ext.
+	Change topincludedir to includedir.  Use octincludedir as the
+	subdirectory of includedir where we really install include files.
+
+	* octave-bug.in (BUGADDR): Also set to octave-maintainers if this
+	looks like a pretest version number.
+
+	* Makeconf.in (do-subst-config-vals): Use $< instead of
+	referencing $(srcdir) directly.
+	(do-subst-default-vals): Likewise.
+
+	* octMakefile.in (octave-bug): Depend on octave-bug.in
+	(mkoctfile): Likewise, depend on mkoctfile.in.
+
+Thu May 16 11:49:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DISTFILES): Add mkoctfile.in.
+	(install): Install mkoctfile too.
+
+	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Fix typo in last change
+
+Mon May 13 04:02:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (UGLY_DEFS): Quote " with more \'s.
+
+	* Makeconf.in (do-subst-config-vals): Quote substitutions here.
+	* octave-bug.in, mkoctfile: Not here.
+
+	* octMakefile.in (octave-bug, mkoctfile): Depend on Makeconf,
+	octMakefile.
+
+	* Makeconf.in (do-subst-default-vals): New definition, from
+	src/Makefile.in.
+
+	* Makeconf.in (do-subst-config-vals): Define here.
+	* octMakefile.in: Not here.
+
+	* octave-bug.in: Handle more configuration stuff.
+
+	* configure.in (config_opts): Set from ac_configure_args and subst.
+	* Makeconf.in: Handle config_opts.
+	* octMakefile.in (do-subst-config-vals): Substitute them.
+
+Sun May 12 03:37:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (TERMLIBS): Substitute here.
+
+	* configure.in (topincludedir): New variable.
+	* Makeconf.in (libexecdir): Substitute it.
+
+	* octMakefile.in (do-subst-config-vals): Define new command.
+	(octave-bug): Use it.
+	(mkoctfile): New target.
+
+	* Makefile.in (TARGETS): Add mkoctfile.
+
+	* examples: New subdirectory.
+	* octMakefile.in: Add it to the appropriate lists.
+	* configure.in: Create examples/Makefile.
+
+	* octMakefile.in (DIRS_TO_MAKE): Add $(libdir) here.
+	(install): Use INSTALL_PROGRAM to install octave-bug script.
+	Also install config.h.
+
+	* aclocal.m4 (OCTAVE_F2C_F77_COMPAT): Provide a definition for
+	MAIN__ on Linux systems.
+
+Tue Apr 30 05:44:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Handle --enable-bounds-check.
+	* acconfig.h: Add undef for BOUNDS_CHECKING
+
+Mon Apr 29 01:42:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_FUNC_SETVBUF_REVERSED): Delete.  Octave doesn't
+	need this check (it was for info, which has its own configure now).
+
+Sun Apr 28 05:41:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (DEFAULT_PAGER): Don't append -e to less here.
+
+Sat Apr 27 22:23:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for pid_t and sys/types.h.
+
+Tue Apr 23 17:44:18 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for fcntl.h, not sys/fcntl.h.
+	Add checks for various system calls.
+
+Sun Apr  7 16:42:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for strdup.
+
+	* Makefile.in (TARGETS): Add dlfcn.
+	* octMakefile.in (DISTSUBDIRS): Add dlfcn.
+	(SUBDIRS): Add @DLFCN_DIR@.
+	* configure.in: On AIX systems: set DLFCN_DIR=dlfcn when doing
+	shared libraries, bypass checks for dlopen, etc., set and
+	substitute LIBDLFCN and DLFCN_INCFLAGS.  Create dlfcn/Makefile.
+
+Sat Apr  6 21:45:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (%.d : %.cc, %.d : %.c): Add dependency for pic/%.o.
+
+Fri Mar 29 13:38:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean distclean): Delete mk-oct-links.
+
+Wed Mar 27 09:05:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_FLIBS): Fix typo in message.
+
+Tue Mar 26 02:41:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (UGLY_DEFS): Undo previous change.
+	When checking for various libraries, don't check for main(), but
+	instead look for functions that are actually supposed to be in
+	those libraries.
+	Require autoconf 2.9.
+	If using solaris2, don't add /usr/ucblib/libucb.a to LIBS until
+	near the very end, then check for for getrusage and times just
+	after that.
+
+	* Makeconf.in (UGLY_DEFS): Ditto.
+
+	* octave-bug.in: Don't send empty bug reports.
+
+Sat Mar 23 04:55:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (DISTDIRS): Omit plplot for now.
+	* Makefile.in (TARGETS): Likewise.
+
+Fri Mar 22 06:15:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add checks for sys/times.h and times().
+	(GCC_IEEE_FP_FLAG): Define this if using gcc 2.8.x or later on
+	Alpha/OSF systems.
+
+Wed Mar 20 02:04:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (octave.info): cd to doc/interpreter, not doc.
+
+Sun Mar  3 10:01:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot: Define HEAVYWEIGHT_INDEXING here.
+
+	* Makefile.in (TARGETS): Remove dld.
+	* octMakefile.in (DISTSUBDIRS): Ditto.
+	* configure.in: Don't create dld/Makefile.
+	Do create doc/fac/Makefile, doc/interpreter/Makefile,
+	doc/liboctave/Makefile, and doc/refcard/Makefile.
+
+Thu Feb 29 08:55:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (%.o : %.c): Use pattern rule instead of suffix rule.
+	(%.o : %.cc): Likewise.
+	(pic/%.o : %.c, pic/%.o : %.cc): Use separate rules instead of
+	expecting one rule to generate two output files.
+	* configure.in (f77_rules_frag): Use separate rules here too.
+
+Mon Feb 26 03:34:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: If --disable-dl or --disable-shl, don't check for
+	dynamic linking functions.
+	(includedir): Append version.
+
+Wed Feb 14 12:20:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (snapshot-version): Don't quote version number.
+
+	* aclocal.m4 (OCTAVE_FLIBS): Avoid setting FLIBS=" ".
+
+Sat Feb 10 12:59:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* glob/Makefile.in (install): New target.
+
+Fri Feb  9 14:00:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Fix help text for --enable-shared option.
+
+Thu Feb  8 10:17:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (CONF_DISTFILES): New variable.
+	(DISTFILES): Use it instead of listing things twice.
+	(CONF_DISTSUBDIRS): New variable.
+	(conf-dist): New target.
+
+	* Makefile.in (TARGETS): Add conf-dist.
+
+	* configure.in (CXX_VERSION, CC_VERSION): Substitute them.
+	* octMakefile.in (octave-bug): Substitute them here too.
+	* octave-bug.in: Put them in the configuration message.
+
+Sat Feb  3 08:53:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: RLD_FLAG should be empty by default, but give it a
+	value for alpha-dec-osf* systems.
+
+Fri Feb  2 23:03:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in: Actually do add substitutions for FPICFLAG,
+	CPICFLAG, and CXXPICFLAG.
+
+Thu Feb  1 14:58:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (%.c : %.f): Fix typo.
+
+Wed Jan 24 14:47:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Also configure in glob subdirectory.
+	Make pattern rule say how to make .o from .f, not .f from .o.  Duh.
+
+	* octMakefile.in: Add glob stuff to the appropriate lists.
+	* Makeconf.in: Likewise.
+
+	* aclocal.m4: Add test for program_invocation_name.
+	* configure.in: Use it here.
+
+	* acconfig.h: Add #undef here.
+
+Mon Jan 22 17:32:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add checks for mode_t, off_t, size_t, uid_t,
+	dev_t, ino_t, and nlink_t typedefs.
+	* acconfig.h: Add undefs for dev_t, ino_t, and nlink_t.
+
+Sat Jan 20 21:05:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: For Fortran rules, use pattern rules instead of
+	suffix rules.
+
+Fri Jan 19 12:38:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: When checking for libf2c.a, add -lm and an extra lib.
+
+Wed Jan 10 16:36:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.i: Add missing colon in .o.f pattern for f2c rules.
+
+Mon Jan  8 23:18:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_PROG_LN_S): New check.
+	* Makeconf.in (LN_S): Substitute it.
+
+	* configure.in (libexecdir): New variable.
+	(archlibdir, octfiledir, localoctfiledir): Use it instead of libdir.
+	(datadir): Default to $(prefix)/share instead of $(prefix)/lib.
+
+	* Makeconf.in (libexecdir): Substitute it.
+
+	* configure.in (localoctfiledir): Use $(libdir), not $(datadir).
+
+Sun Jan  7 18:40:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* aclocal.m4 (OCTAVE_SMART_PUTENV): New macro, extracted from
+	the kpathsearch library.
+	* configure.in: Call it.
+
+Fri Dec 29 22:07:52 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makeconf.in (subdir-for-command): New definition for
+	SUBDIR_FOR_COMMAND using GNU Make `foreach' instead of shell `for'
+	command.
+	* libcruft/Makefile.in, scripts/Makefile.in, octMakefile.in:
+	Invoke new definition with `@'.
+
+Wed Dec 27 14:27:48 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (SUBDIRS): Delete DLD_DIR.
+	(distclean): Delete Makerules.f77.
+
+	* Makeconf.in (WITH_DLD): Delete variable.
+
+	* configure.in: Delete support for dynamic linking with dld.
+
+	* configure.in, Makeconf.in: Use consistent names for WITH_DL,
+	WITH_SHL, OCTAVE_LITE, and SHARED_LIBS
+
+	* config.h.bot: Undo previous change.
+	* acconfig.h: Add #undef for WITH_DYNAMIC_LINKING.
+	* Makeconf.in: Substitute it here too.
+	* configure.in: Set it here.
+
+Tue Dec 26 00:12:14 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_CONFIG_SUBDIRS): Delete libcruft.
+	(AC_OUTPUT): List libcruft files here.
+
+	* configure.in, Makeconf.in: Handle Fortran compilation rules
+	using an included fragment in Makeconf.
+
+Mon Dec 25 22:14:21 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (CPICFLAG, CXXPICFLAG, FPICFLAG): New variables.
+	* Makeconf.in: Substitute them.
+
+	* configure.in: Handle --enable-shared option.
+	Handle Fortran source files differently.
+	* Makeconf.in (SHARED_LIBS): Substitute shared_libs.
+	(SHLEXT, RLD_FLAG, fortran_rules_flag): Substitute these too.
+	(.c.o, .cc.o): Handle creating position independent code for
+	shared libraries.
+
+Sun Dec 24 00:29:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot: Maybe define WITH_DYNAMIC_LINKING.
+
+	* Makeconf.in (WITH_DL, WITH_SHL): Substitute values.
+	* acconfig.h: Add undefs for WITH_DL and WITH_SHL.
+	* configure.in: Handle --enable-dl and --enable-shl.
+	Check for -ldl and dlopen, dlsym, dlclose, and dlerror.
+	Check for -ldld and shl_load, shl_findsym.
+	(have_fortran_compiler): Quit if no suitable Fortran compiler is
+	found.
+
+Fri Nov  3 03:33:42 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* emacs/octave-mode.el: Rename from octave.el.
+
+Wed Oct 11 19:22:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (GNUPLOT_BINARY): When checking for multiplot,
+	issue a `set term unknown' command first.
+
+Wed Oct  4 01:42:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.guess: Add entry for PowerPC Macs running Machten.
+
+	* octMakefile.in (dist-z): Remove old .gz file before creating new one.
+
+Mon Oct  2 19:17:22 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check to see if it looks like gnuplot supports
+	multiplot.
+	* acconfig.h: Add undef for GNUPLOT_HAS_MULTIPLOT.
+
+	* acconfig.h: #undefs for HAVE_FINITE, HAVE_ISNAN, HAVE_ISINF,
+	HAVE_TERMIOS_H, HAVE_TERMIO_H, and HAVE_SGTTY_H removed.  This
+	file should only have things that autoheader can't figure out.
+
+Sun Oct  1 17:08:37 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (clean-tar): Also omit directories called OLD and
+	files beginning with =.
+
+Fri Sep 29 01:04:31 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ROADMAP: New file.
+	* (DISTFILES): Include it.
+
+	* emacs: New subdirectory for Emacs-related stuff.
+	* octMakefile.in (DISTDIRS, BINDISTSUBDIRS): Include emacs.
+	(DISTFILES, BINDISTFILES): Don't include octave-mode.el.
+
+Tue Sep 26 03:56:39 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't add -Wno-unused to CFLAGS or CXXFLAGS.
+	* config.h.bot: Remove definition of UNUSED.
+
+	* config.sub: Replace with current version from FSF.
+	* config.guess: Likewise.
+
+Thu Sep 21 20:29:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AR, ARFLAGS): Set defaults for these, but also
+	allow them to come from the environment.
+	* Makeconf.in (AR, ARFLAGS): New variables to substitute.
+
+Wed Sep 20 00:51:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octMakefile.in (maintainer-clean): Also remove Makeconf,
+	config.cache, config.h, and config.log.
+
+Tue Sep 19 17:20:32 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.h [HAVE_SIGACTION && HAVE_SIGPROCMASK &&
+	HAVE_SIGPENDING && HAVE_SIGSUSPEND]: #define HAVE_POSIX_SIGNALS.
+
+	* configure.in: Check for sigaction(), sigprocmask(),
+	sigpending(), and sigsuspend() functions.
+	Don't do anything special about checking for termios.h, termio.h,
+	and sgtty.h.
+
+Mon Sep 18 22:39:33 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* config.h.bot [__GNUC__]: Define NORETURN.
+
+Fri Sep 15 05:12:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_C_BIGENDIAN): Remove test.
+
+Thu Sep 14 02:07:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (LIBPLPLOT): Disable plplot by default for now.
+	Check for mkdir, rmdir, rename, and umask.
+
+	* All Makefile.in files: Convert from realclean to
+	maintainer-clean, for GNU coding standards.
+
+	* configure.in: Call AC_FUNC_CLOSEDIR_VOID.
+
+Wed Sep 13 03:25:37 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Do check for IEEE functions on the Alpha.
+
+Mon Sep 11 19:08:47 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Call AC_STRUCT_ST_BLKSIZE, AC_STRUCT_ST_BLOCKS,
+	and AC_STRUCT_ST_RDEV.
+
+Tue Sep  5 02:02:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Check for sys/param.h and sys/stat.h
+	Use AC_HEADER_TIME, not AC_TIME_WITH_SYS_TIME.
+	Use AC_HEADER_SYS_WAIT.
+
+Thu Aug 24 15:35:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Don't set or call AC_SUBST for CXXFLAGS or CFLAGS,
+	and don't call AC_SUBST for LDFLAGS -- autoconf takes care of this.
+	If adding -Wall, add -Wno-unused too.
+
+Tue Aug 22 01:37:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (all): Update message.
+
+	* config.h.bot: New file.
+	* octMakefile.in (DISTFILES): Add it to the list.
+
+	* acconfig.h (USE_PLPLOT): Add #undef.
+
+Mon Aug 21 19:33:33 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (NO_DEP_TARGETS): New variable, for targets that can
+	be made without updating dependency files.
+
+Sun Jun 25 18:27:49 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (FFLAGS): Add -fpe1 on alpha-dec-osf1 systems.
+
+Thu May  4 22:26:34 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: export CC, CXX, and F77 before calling
+	AC_CONFIG_SUBDIRS.
+
+Mon May  1 14:17:07 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Handle --with-plplot.
+	(AC_CONFIG_SUBDIRS): Add plplot directory if --with-plplot.
+	* plplot: New subdirectory.
+	* Makefile.in (plplot): New target.
+	* octMakefile.in (SUBDIRS): Add @PLPLOT_DIR@.
+	(DISTDIRS): Add plplot.
+
+	* acconfig.h: Add #undef for GETTIMEOFDAY_NO_TZ.
+
+	* configure.in: Improve check for gettimeofday.
+
+Mon May  1 12:50:03 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
+
+	* acconfig.h (OCTAVE_LITE): Fix comment.
+
+Tue Apr 11 20:31:52 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (INFO_DIR, READLINE_DIR): New variables.
+	If $USE_GNU_INFO, AC_DEFINE it, don't AC_SUBST it.
+	Likewise, for USE_READLINE.
+
+	* octMakefile.in (SUBDIRS): Substitute INFO_DIR and READLINE_DIR.
+
+	* aclocal.m4 (OCTAVE_F77_UPPERCASE_NAMES): New macro.
+	(OCTAVE_F77_APPEND_UNDERSCORES): Require it.
+	* configure.in: Use it.
+	(info_subdir): If $USE_GNU_INFO, then run configure in info
+	subdirectory too.
+	Don't check for sys/ttold.h or sys/ptem.h.
+
+Mon Apr 10 00:17:57 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (UGLY_DEFS): Delete commands to create this.
+	* Makeconf.in (UGLY_DEFS): Delete substitution.
+	* Makeconf.in (UGLY_ALL_CFLAGS): Delete definition.
+
+	* configure.in: Add scripts and libcruft to CONFIG_SUBDIRS.
+	Don't edit scripts or libcruft Makefiles here.
+	Reorganize checking for the Fortran compiler.
+
+	* octMakefile.in (DISTFILES): Delete f2c-compat.sh flibs.sh
+	cxxlibs.sh from list.  Add aclocal.m4.
+	* configure.in: Use new macros defined in aclocal.m4.  Don't use
+	external shell scripts.  Cache values.
+
+	* aclocal.m4: New file.
+
+Sun Apr  9 12:47:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Print status message before exiting.
+	Cache CXXLIBS and FLIBS.
+
+	* acconfig.h: Delete #undefs for floating point format.
+	* octMakefile.in (DISTFILES): Delete float-type.c from list.
+	* configure.in: Don't try to determine floating point format at
+	configuration time.
+
+Mon Apr  3 21:46:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Create scripts/time/Makefile too.
+
+	* configure.in (gxx_version): Handle new gcc version message.
+	(gcc_version): Likewise.
+
+Wed Mar 29 22:59:42 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (AC_STRFTIME): Delete check.
+	(AC_STRUCT_TIMEZONE): New check.
+
+Wed Mar 22 08:31:21 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makeconf.in (ALL_FFLAGS, FUGLY): New variables.
+
+	* configure.in: Use AC_ARG_ENABLE and AC_ARG_WITH consistently.
+	Handle --with-g77.  Substitute new variable FUGLY.  If F77 is g77,
+	set it to -fugly.  Substitute command for making .o from .f.
+
+Tue Mar 21 14:24:32 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* cxxlibs.sh: Extract -R options like -L options.
+	* configure.in (FLIB_PATH, FLIB_LIST): Extract -R options along
+	with -L options.
+
+Tue Mar 21 14:20:55 1995  Paul Eggert  <eggert@twinsun.com>
+
+	* configure.in (CXX): Export; cxxlibs.sh needs this.
+	(FLIB_LIST, CXXLIB_LIST): Extract -R options along with -L options.
+
+	* flibs.sh: Treat `-L foo' like `-Lfoo'.  Extract -R options
+	like -L options.
+
+Tue Mar 21 08:08:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* flibs.sh: Search for values-X*.o, not values-*.o.
+
+Fri Mar 10 10:32:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makeconf.in (SUBDIR_FOR_COMMAND): New command definition.
+	* octMakefile.in: Use it.
+
+	* octMakefile.in (install, uninstall, tags, TAGS, clean,
+	mostlyclean, distclean, realclean): Combine actions.
+
+Tue Feb 28 21:24:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (FC): Set to $F77 and substitute it.
+	* Makeconf.in (FC): Add substitution line.
+
+Sun Feb 26 00:20:19 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* dointsall.sh: Create ls-R database.
+
+	* configure.in: Configure kpathsea using AC_CONFIG_SUBDIRS().
+	Remove check for SMART_PUTENV.
+	Remove kpathsea/c-auto.h from AC_CONFIG_HEADER().
+
+	* make: New directory, for kpathsea configuration.
+	* octMakefile.in (DISTDIRS): Add it
+
+	* kpathsea: Update with 2.6 distribution.
+
+	* Makefile.in (TARGETS): New variable.  Combine all identical targets.
+
+	* configure.in (LIBINFO, LIBREADLINE): New variables to substitute.
+
+Sat Feb 25 18:47:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* acconfig.h (USE_READLINE): Add #undef.
+	* configure.in: Add support for --enable-readline.
+
+	* acconfig.h (USE_GNU_INFO): Add #undef.
+	* configure.in: Add support for --enable-info.
+
+	* acconfig.h (RUN_IN_PLACE): Delete #undef.
+
+See ChangeLog.1 for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/ChangeLog.1	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,10392 @@
+Thu Feb 23 09:32:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Version 1.1.1 released.
+
+	* src/idx-vector.cc (idx_vector (const Range&)): Always initialize
+	data to 0.
+	(idx_vector (const Matrix&, int, const char *, int)): Likewise.
+	(idx_vector (const idx_vector&): Likewise, do it first.
+	* src/idx-vector.h (~idx_vector): Simply delete data.
+
+	* octMakefile.in: Combine libcruft, liboctave,dld, info, readline,
+	kpathsea, src, scripts, and doc targets into just one.
+	(all): Depend on $(SUBDIRS).
+	* libcruft/Makefile.in (make-objects): Change to $(SUBDIRS)
+	target that doesn't use a loop.
+	(all): Depend on $(SUBDIRS).
+
+Wed Feb 22 07:27:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Don't leave @LIBDLD@ on a line by itself.
+
+	* src/tc-rep-idx.cc (fortran_style_matrix_index): Handle zero-one
+	indexing as a separate case.
+	(fortran_style_matrix_index): Check for out-of-bounds index.
+
+	* src/idx-vector.cc (init_state): Don't forget len, num_zeros, and
+	the one_zero flag for vectors of all zero elements.
+	(convert_one_zero_to_idx): Set data to zero after deleting it.
+
+	* src/data.cc (check_dimensions):
+	Handle case of treat_neg_dim_as_zero = "warn".
+
+Tue Feb 21 08:18:19 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-misc.cc (initialize_undefined_elements): Don't declare
+	arg const.
+
+	* src/sysdepl.cc (octave_getcwd): Declare arg as char *, not
+	const char *.
+
+	* src/input.cc (match_sans_spaces): Initialize ep from copy of
+	arg, not arg itself.
+
+	* octMakefile.in (snapshot-version): Look for OCTAVE_VERSION,
+	not just VERSION.  Don't end #define with a semicolon.
+
+Mon Feb 20 15:57:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/image/Makefile.in (clean): Delete octtopnm.o and octtopnm.
+
+Fri Feb 17 08:12:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/variables.cc (maybe_add_default_load_path): New function,
+	extracted from default_path(), which no longer needs it.
+	* src/user-prefs.cc (sv_loadpath): Call it here.
+
+Wed Feb 15 15:13:22 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/octave.cc (verbose_usage): Format help message more like
+	the help messages of other GNU programs.
+
+	* src/variables.cc (install_builtin_variables): New builtin
+	variable, suppress_verbose_help_message.
+	* src/user-prefs.cc (user_prefs): New field,
+	suppress_verbose_help_message.
+	* src/user-prefs.cc (suppress_verbose_help_message): New function.
+	* src/help.cc (additional_help_message): Check
+	user_pref.suppress_verbose_help_message before printing message.
+
+Tue Feb 14 15:36:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/sysdep.cc (octave_chdir): New function.
+	* src/dirfns.cc (change_to_directory): Use it.
+
+	* src/sysdep.cc (octave_getcwd): New function.
+	* src/dirfns.cc (get_working_directory, Fpwd): Use it.
+	* src/input.cc (decode_prompt_string): Likewise.
+
+	* src/version.h (VERSION): New #define.
+	(version_string): Use it.
+	(OCTAVE_COPYRIGHT): New #define.
+	(OCTAVE_NAME_AND_VERSION): New #define.
+	(OCTAVE_NAME_VERSION_AND_COPYRIGHT): New #define.
+	(OCTAVE_STARTUP_MESSAGE): New #define.
+	* src/octave.cc (main): Use new macros from version.h
+	(print_version_and_exit): Likewise.
+	(verbose_usage): Likewise.
+	(Fwarranty): Likewise.
+
+	* Makeconf.in (version): Make work with new version.h.
+	* octMakefile.in (snapshot-version): Likewise.
+
+	* src/variables.cc (default_path): Use SEPCHAR instead of literal ':'.
+	* src/utils.cc (pathstring_to_vector): Likewise.
+	* src/octave.cc (initialize_globals): Likewise, use SEPCHAR_STR to
+	construct format string instead of using literal `:'.
+
+	* configure.in: Call AC_DEFINE for SEPCHAR and SEPCHAR_STR.
+	* acconfig.h: Add #undefs for SEPCHAR and SEPCHAR_STR.
+
+	* src/dynamic-ld.cc: Don't include dld.h unless WITH_DLD.
+
+	* src/octave.cc (parse_and_execute): Close file.
+
+Mon Feb 13 19:39:12 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
+
+	* scripts/general/linspace.m: Delete.
+	* src/data.cc (Flinspace): New function.
+	* liboctave/dRowVector.cc (linspace): New function.
+	* liboctave/CRowVector.cc (linspace): New function.
+
+Sun Feb 12 21:23:54 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/load-save.cc (read_mat_binary_data): Only convert to string
+	if the number of rows is 1.
+
+	* scripts/image/saveimage.m: Force ASCII save.
+
+Thu Feb  9 08:46:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/elfun/sec.m: Returned variable is `w', not `y'.
+	* scripts/elfun/sech.m: Likewise.
+
+Wed Feb  8 10:51:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/f-find.cc (find_nonzero_elem_idx): Increment i, j indices by
+	1 before stashing them.
+
+Fri Feb  3 15:44:03 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-misc.cc
+	(tree_parameter_list::initialize_undefined_elements): New function.
+	* src/tree-expr.cc (tree_function::eval): Use it to define return
+	values.
+	(tree_simple_assignment_expression:eval): Complain if RHS is undefined.
+	(tree_multi_assignment_expression:eval): Complain if any of the
+	RHS values are undefined.
+	* src/user-prefs.h (init_user_prefs): New structure element,
+	define_all_return_values.
+	* src/user-prefs.cc (define_all_return_values): New function.
+	* src/variables.cc (install_builtin_variables): Add DEFVARs for
+	default_return_value and define_all_return_values.
+	(builtin_any_variable): New function.
+
+Wed Feb  1 08:02:28 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/parse.y (parse_error): Call yyerror() here.
+	(input): Not here.
+
+	* src/lex.l (handle_string): Call have_continuation and
+	have_ellipsis_continuation with 0 arg, to disallow comments after
+	continuation characters inside strings.
+	(have_continuation): New arg, trailing_comments_ok with default
+	value of 1.  If !trailing_comments_ok, don't allow comments to
+	follow continuation token.
+	(have_ellipsis_continuation): New arg, trailing_comments_ok, with
+	default value of 1.  Pass it along to have_continuation.
+
+	* src/parse.y (yyerror): Call parse_error with first arg == "%s",
+	since msg might contain format specifiers.
+
+	* src/tree-expr.cc (tree_index_expression::eval (int)): Detect
+	undefined elements in argument list and print error message.
+	(tree_index_expression::eval (int, int, const Octave_object&)):
+	Likewise.
+
+	* configure.in: Only set CFLAGS, CXXFLAGS, LDFLAGS, FFLAGS, and
+	F2CFLAGS if they are not already set in the environment.
+
+	* doinstall.sh: Add -print to find commands.
+
+Tue Jan 31 13:26:53 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (<MATRIX>{S}*\,{S}*): Eat any trailing continuation
+	here.  Use value returned from eat_continuation to decide whether
+	to insert a row separator.
+	(<MATRIX>{S}+): Likewise.
+	(<MATRIX>{SNLCMT}*\n{SNLCMT}*): Eat any trailing whitespace here.
+
+	* lex.l (ATE_SPACE_OR_TAB, ATE_NEWLINE): New macros.
+	(eat_whitespace): Use them to set return value.
+
+Mon Jan 30 14:02:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/user-prefs.cc (set_output_precision): Don't pass NaN to NINT.
+	(set_output_max_field_width): Likewise.
+	(set_save_precision): Likewise.
+	* src/file-io.cc (return_valid_file): Likewise.
+	(fgets_internal): Likewise.
+	(fseek_internal): Likewise.
+	(process_printf_format): Likewise.
+	(fread_internal): Likewise.
+	* src/f-colloc.cc (Fcolloc): Likewise.
+	* src/f-fft.cc (Ffft): Likewise.
+	* src/f-fft2.cc (Ffft2): Likewise.
+	* src/f-ifft.cc (Fifft): Likewise.
+	* src/f-ifft2.cc (Fifft2): Likewise.
+	* src/f-npsol.cc (do_npsol_option): Likewise.
+	* src/f-qpsol.cc (do_qpsol_option): Likewise.
+	* src/f-rand.cc (Frand): Likewise.
+	* src/pr-output.cc (all_elements_are_ints): Likewise.
+	* src/tree-plot.cc (subplot_using::eval): Likewise.
+	(subplot_style::print): Likewise.
+	* src/sysdep.cc (Fpause): Likewise.
+	* src/tc-rep.cc (TC_REP::valid_as_scalar_index): Likewise.
+	(TC_REP::valid_as_zero_index): Likewise.
+	(TC_REP::convert_to_str): Likewise.
+	* src/tc-rep-idx.cc (TC_REP::do_scalar_index): Likewise.
+	(TC_REP::fortran_style_matrix_index): Likewise.
+	* src/tc-rep-ass.cc (TC_REP::fortran_style_matrix_assignment):
+	Likewise.
+
+Sat Jan 28 13:09:44 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/general/tril.m: Allow the k == nc for k > 0 and
+	-k == nr for k < 0.  Make faster by eliminating nested loops.
+	* scripts/general/triu.m: Likewise.
+
+Fri Jan 27 08:32:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* libcruft/lapack: Update with files from LAPACK 2.0.
+
+	* src/lex.l (\[{S}*): Don't call fixup_column_count() here.
+	Don't use TOK_RETURN here, since we call eat_whitespace().
+	(eat_whitespace): Decrement current_input_column when calling
+	yyunput().
+	(<MATRIX>{SNLCMT}*\n{SNLCMT}): Always call fixup_column_count().
+
+	* src/parse.y (rows): Don't accept repeated semicolons.
+	(matrix_row): Likewise, for commas.
+
+	* src/Makefile.in (LIBOBJS): Delete.
+
+	* liboctave/f77-uscore.h: Don't use C++ style comments.
+
+	* octMakefile.in (DISTDIRS): Don't include bsd-math.
+	* src/Makefile.in (VPATH): Don't include bsd-math directory.
+	(SOURCES): Include acosh.c, asinh.c, atanh.c, erf.c erfc.c, and
+	lgamma.c.
+	* configure.in: Create libcruft/slatec-fn/Makefile.
+	Use AC_CHECK_FUNCS to look for acosh, asinh, atanh.
+	Don't do anything special if they are missing.
+	* src/acosh.c, src/asinh.c, src/atanh.c, src/erf.c, src/erfc.c,
+	src/lgamma.c: New files.
+	* acconfig.h: Delete #undefs for ACOSH_MISSING, ASINH_MISSING,
+	and ATANH_MISSING.
+	* libcruft/Makefile.in (CRUFT_DIRS): Add slatec-fn.
+	* libcruft/slatec-fn: New directory.
+
+	* configure.in: Don't try to use IEEE floating point on m68k HP
+	systems.
+
+Thu Jan 26 12:57:05 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (maybe_unput_comma):  New function, extracted from
+	handle_identifier().  Correctly handle the dot in things like
+	`a.b' inside matrix lists.
+	(handle_identifier): Use it.  Don't allow things like [a .1] or
+	[a.b .1] to fool us.
+
+Wed Jan 25 08:04:16 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/Makefile.in (realclean): Don't depend on distclean.  Do
+	delete Makefile here.
+
+	* flibs.sh: Also check for /*values-*.o, for Sun Fortran 2.x.
+	* configure.in (FLIB_LIST, CXXLIB_LIST, FLIB_PATH, CXXLIB_PATH):
+	Delete any .o files found here.
+	When checking for -lm, also append -lc on Linux systems.
+
+	* mkinstalldirs: Create directories with mode 0755, to avoid
+	problems because the installers umask is too restrictive.
+
+	* octave-bug.in: Don't use rmail, it crashes on Ultrix systems if
+	the message file isn't just right.  Use nested if statements
+	instead of ||, for Ultrix /bin/sh.  Avoid Ultrix awk crash.
+
+	* scripts/linear-algebra/trace.m: Handle row and column vectors as
+	a special case.
+	* scripts/linear-algebra/null.m: Likewise.
+	* scripts/linear-algebra/orth.m: Likewise.
+
+Tue Jan 24 08:11:51 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octave-bug.in: Add F2C, F2CFLAGS, FLIBS, and LDFLAGS to report.
+	* Makefile.in (octave-bug): Substitute them.
+
+Mon Jan 23 20:42:55 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-misc.cc (tree_if_clause::is_else_clause): New function.
+	(tree_if_command_list::print_code): Use it to decide whether to
+	print "else" or "elseif" here.
+	(tree_if_clause::print_code): Don't print "else" here.
+
+	* scripts/image/colormap.m: Fix logic for initializing default
+	colormap and handling subsequent calls with no arguments.
+
+	* src/lex.h (TOK_PUSH_AND_RETURN): Correct last change.
+
+Sun Jan 22 18:02:37 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (handle_identifier): Handle incrementing
+	current_input_column here.
+	({IDENT}{S}*): Not here.
+
+	* src/lex.h (TOK_PUSH_AND_RETURN): New macro.
+	* src/lex.l: Use it.
+
+	* src/parse.y (yyerror): If printing input line, always print `^'
+	error marker too.
+
+	* src/parse.y (command [BREAK]): Allow break to occur in function
+	bodies too.
+	* src/tree-expr.cc (tree_function::eval): Also check to see if
+	function exited because of a break statement.
+
+Fri Jan 20 10:48:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* config.guess: Replace with current version from FSF.
+	* config.sub: Likewise.
+
+	* src/tempname.c: Include statdefs.h.
+
+	* src/tree-expr.cc (eval): Improve error messages.
+
+Thu Jan 19 08:33:50 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (handle_string): Properly handle pending escapes.
+	Call error() for unterminated string constants.
+	* src/parse.y (input): For parse errors, call yyerror().
+
+	* test/config/unix-octave.exp (octave_start): Correctly set OSPATH
+	from $OCTAVE_SCRIPT_PATH, not to the string OCTAVE_SCRIPT_PATH.
+
+	* test/Makefile.in (OCTAVE_SCRIPT_PATH): Delete surrounding quotes
+	in definition.
+
+	* doc/texinfo.tex: Move to version 2.140.
+
+	* src/f-rand.cc (Frand): Use different method for generating
+	initial seed so that it varies more each time Octave starts.
+
+	* src/file-io.cc (feof_internal): Use args(0), not args(1).
+
+	* src/Makefile.in (SOURCES): Use tempnam.c, not tmpnam.c.
+	* src/tempnam.c: New file, from the GNU C library.
+
+Wed Jan 18 08:10:31 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/user-prefs.h (user_prefs): New field, read_only_constants.
+	* src/user-prefs.cc (read_only_constants): New function.
+	* src/variables.cc (install_builtin_variables): Add DEFVAR for
+	read_only_constants, but leave it #if 0'd out since we're not
+	really ready for it yet..
+	* src/symtab.cc (symbol_record::read_only_error): Check
+	user_prefs.read_only_constants to see if it is ok to redefine
+	constants that are marked as read-only.
+
+	* src/user-prefs.h (user_prefs): New field, ps4.
+	* src/user-prefs.cc (sv_ps4): New function.
+	* src/variables.cc (install_builtin_variables): Add DEFVAR for PS4.
+	* src/input.cc (do_input_echo): New function.  Use PS4 variable as
+	prefix of echoed input.  Send echoed input through the pager.
+
+	* flibs.sh: Ignore -lang* options.
+
+	* src/load-save.cc (Fsave): Send `save - ...' output through the
+	pager.
+
+	* doc/Makefile.in: Create and distribute refcards of various sizes.
+	Delete rules for making refcard.tex from refcard.tex.in.
+	Don't make or distribute refcard-local.
+	* doc/refcard.tex: Handle setting paper size with \refcardsize.
+	* doc/refcard-a4.tex, doc/refcard-legal.tex, doc/refcard-letter.tex:
+	New files.
+
+Mon Jan 16 13:19:29 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tc-rep-ass.cc (TC_REP::do_scalar_assignment): Handle
+	assignments like a(0) = [].
+	* src/tc-inlines.h (valid_zero_index): New function.
+	* src/tc-rep.cc (valid_as_zero_index): New function.
+	* src/tree-const.h (valid_as_zero_index): New function.
+
+	* src/parse.y (func_def2): Check user_prefs before warning about
+	function name and function file name conflict.
+	* src/user-prefs.h (user_prefs): New field, warn_function_name_clash.
+	* src/user-prefs.cc (warn_function_name_clash): New function.
+	* src/variables.cc (install_builtin_variables): Add DEFVAR for
+	warn_function_name_clash.
+
+	* scripts/image/octtopnm.c: Include stdlib.h instead of malloc.h.
+
+Sun Jan 15 15:08:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* readline/rldefs.h: Use new #defines for directory headers now
+	that we are using autoconf 2.
+
+	* scripts/special-matrix/hankel.m: Use .', instead of '.
+
+	* src/input.cc (match_sans_spaces): Use strcmp, not strncmp.
+
+	* src/tc-rep-ass.cc (TC_REP::fortran_style_matrix_assignment):
+	For scalar index, don't do assignment if RHS and LHS are both empty.
+
+	* src/data.cc (Fsize): Handle optional second arg.
+
+	* src/tree-expr.cc (tree_function::eval (int)): Correctly set
+	nargin and nargout to zero when evaluating function.
+
+	* src/lex.l (handle_string): Correct handling of string escapes.
+
+Thu Jan 12 15:25:34 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Version 1.1.0 released.
+
+	* octMakefile.in (bin-dist-tar): Ignore errors on strip commands.
+
+	* src/tree-expr.cc (tree_builtin::eval (int)): Set nargout to 0
+	when calling function.
+
+	* doc/Makefile.in (FORMATTED): Add refcard.dvi and refcard.ps so
+	that they are distributed along with the other docs.
+	* octMakefile.in (clean-doc-dist-tar): Delete target.
+	(doc-dist): Depend on doc-dist-tar, not	clean-doc-dist-tar.
+
+Tue Jan 10 14:29:43 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/help.cc (print_usage): Print warning if symbol isn't found.
+
+	* src/utils.cc (Fundo_string_escapes): Fix typo in call to
+	print_usage().
+
+	* src/octave.cc (Fsystem): Correctly compute exit code.
+
+	* scripts/miscellaneous/etime.m: Complain if args are not the
+	right length, not if they are.  Reverse sense of test for years.
+	Duh.
+
+	* src/f-find.cc (find_to_fortran_idx): For the case of one output
+	argument, return a row vector if the original argument to find was
+	a row vector.
+
+Mon Jan  9 12:57:27 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (grab_help_text): Always overwrite help_buf.
+	({CCHAR}): Don't call grab_help_text() if there is already
+	something in help_buf.
+
+Sat Jan  7 12:28:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (HOST_CXXFLAGS): New variable to substitute.
+	* Makeconf.in (ALL_CXXFLAGS, UGLY_ALL_CXXFLAGS, BUG_CXXFLAGS):
+	Add $(HOST_CXXFLAGS).
+
+Fri Jan  6 13:07:09 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/special-matrix/toeplitz.m: Use .' instead of '.
+
+Tue Jan  3 18:14:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* test: Rewrite many tests to not run Octave interactively.  This
+	makes the log files much more readable.
+
+	* octMakefile.in (clean-tar): Delete octave-test/npsol directory,
+	not just test/octave.test/npsol.exp.  Likewise, add a command for
+	deleting qpsol tests.
+
+Mon Jan  2 20:02:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/octave.cc (main): Return 0 if error_state is not set.
+
+	* src/error.cc (error_1): New function.
+	(error): Use it.
+	(parse_error): New function.
+	* src/parse.y: Never call error and yyerror; just use yyerror.
+	(yyerror): Improve logic.  Use new parse_error() function so that
+	error_state is always set for a parse error.  Don't use
+	ostream::form().
+	(ABORT_PARSE): Don't call reset parser here.
+	(colon_expr): Don't call yyerror here.  An error message is
+	printed by tree_colon_expression::chain() if it fails.
+
+Mon Dec 26 20:11:01 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-expr.cc (eval): Only call multi-arg form of eval for
+	object_to_eval if necessary.
+
+Fri Dec 23 00:08:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l: Don't increment promptflag anywhere.
+	(eat_continuation): New function.
+	(eat_whitespace): Handle embedded continuations.  Return nonzero
+	if whitespace consumed.
+	(handle_close_brace): Don't pass yytext.  Do pass flag indicating
+	whether whitespace follows brace.
+	(handle_identifier): Check for next token being `=' here.  Pass
+	flag indicating whether whitespace follows identifier.
+	(<MATRIX>{SNLCMT}*;{SNLCMT}*): Call eat_whitespace() here.
+	({IDENT}{S}*): Call eat_continuation() here.
+	(do_comma_insert_check): And here, but put a space back if
+	whitespace is gobbled.
+	(have_continuation, have_ellipsis_continuation): Decrement
+	promptflag here.
+
+Wed Dec 21 09:56:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-plot.cc (Fclearplot): Send "set nolabel" too.
+
+Mon Dec 19 17:50:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-plot.h, src/tree-plot.cc (subplot): Rename using to
+	using_clause to avoid new C++ keyword.  Rename title and style to
+	match.
+
+Fri Dec 16 00:09:01 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Don't check for fpsetmask.
+	* src/sysdep.cc (sysdep_init): Don't check HAVE_FPSETMASK
+
+Thu Dec 15 00:28:52 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/variables.cc (install_builtin_variables) [default_save_format]:
+	Fix doc string.
+
+	* configure.in: Rework DEFAULT_DOT_O_FROM_DOT_F and
+	DEFAULT_DOT_C_FROM_DOT_F to avoid embedded newlines.
+	* Makeconf.in: Likewise.
+
+	* src/pager.cc (flush_output_to_pager): Close stream before
+	resetting signal handler.
+
+	* src/help.cc (Fhelp): Call fcn_file_in_path here.  Delete it too.
+	Print file name before help message.
+	* src/variables.cc (get_help_from_file): Don't call
+	fcn_file_in_path here.
+	(gobble_leading_white_space): Correctly grab only first set of
+	comments.
+
+Wed Dec 14 11:42:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/parse.y (pager_buf): Don't make it a fixed-size array.
+	* src/variables.cc (get_help_from_file): New function.
+	(gobble_leading_white_space): Return first block of comments for
+	later use as help string.
+	(looks_like_octave_copyright): New function.
+	(parse_fcn_file): Stash help from gobble_leading_white_space in
+	global help_buf.
+	* src/lex.l (grab_help_text): Don't overwrite help found by
+	gobble_leading_white_space.
+	(reset_parser): Delete help_buf.
+	* src/help.cc (Fhelp): Only try to get help from symbol records
+	that are defined.  If all else fails, try get_help_from_file.
+
+	* src/pager.cc (flush_output_to_pager): Re-initialize pager_buf
+	immediately after extracting message.  Delete message immediately
+	after sending it to the output stream.  Ignore interrupts while
+	running pager.
+
+	* octMakefile.in (clean-tar): Delete npsol.exp and any .m files
+	that are in the test/octave.test directory.
+	(install): Use $(INSTALL), not just install.
+
+	* src/lex.l (reset_parser): Don't reset input column or line
+	number if reading from a script file or a function file.
+	(is_keyword): Don't set line number to 1 if reading function file
+	or script file.
+	* src/variables.cc (gobble_leading_whitespace): Count lines.
+	* src/octave.cc (main): If reading file, set reading_script_file
+	and curr_fcn_file_name before calling get_input_from_file().
+
+	* src/tc-rep.cc (TC_REP::matrix_value): If implicit_str_to_num_ok,
+	convert empty string to empty matrix.
+
+Tue Dec 13 20:25:34 1994  Frederick (Rick) A Niles <niles@axp745.gsfc.nasa.gov>
+
+	* liboctave/dbleQR.cc, liboctave/dbleQRP.cc, liboctave/CmplxQR.cc,
+	liboctave/CmplxQRP.cc: Get economy-sized dimensions correct.
+
+	* libcruft/misc/i1mach.f, libcruft/misc/gen-d1mach.c,
+	libcruft/ranlib/ignuin.f: Prevent warnings about variable may be
+	used before defined.
+
+Tue Dec 13 11:07:34 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/variables.cc: Change commas_in_literal_matrix to
+	whitespace_in_literal_matrix.
+	* src/user-prefs.h (user_preferences): Likewise.
+	* src/user-prefs.cc (init_user_prefs): Likewise.
+	(whitespace_in_literal_matrix): Likewise, rename function.
+	* src/lex.l: Likewise.
+	(nesting_level): Rename from in_brace_or_paren.
+	(<MATRIX>{SNLCMT}*\n{SNLCMT}*): Make separate case from
+	<MATRIX>{SNLCMT}*;{SNLCMT}.  Check nesting level to decide whether
+	to convert newline to semicolon.
+	({NL}, {CCHAR}): Check nesting level to decide whether to eat
+	or return newline.
+	("("): Decrement promptflag.
+	(")"): Increment promptflag.
+
+Mon Dec 12 00:02:51 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/Makefile.in, scripts/*/Makefile.in (install): Don't
+	depend on all.
+
+	* octMakefile.in: Put doc dir last.
+	* doc/Makefile.in (dir): New file.
+	(DISTFILES): Distribute dir.
+	(install): Install dir if it does not already exist in $(infodir).
+	Otherwise, print message.
+
+	* src/lex.l: Handle {IDENT}{S}*/= with yyinput() instead of
+	trailing context.
+	(handle_close_brace): New function.
+	(handle_number): New function.
+	(have_continuation, handle_ellipsis_continuation, handle_string):
+	New functions for handling strings and continuation lines in
+	string constants.
+	(eat_whitespace): New function eliminates need for NEW_MATRIX
+	start state.
+
+Sun Dec 11 15:53:03 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l: Eliminate special case for eating whitespace when
+	start state is <TEXT_FCN>.
+	Merge three cases for handling `]' for <MATRIX> start state.
+
+Fri Dec  9 12:21:35 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l: Handle `\' as a continuation character too.
+	Allow comments and blanks to follow continuation characters.
+	Improve handling of comments in matrices.  Create a few more
+	definitions for patterns.  Restructure source.
+
+	* configure.in: Check for bcopy too.
+
+	* configure.in (gxx_version): Don't use -fno-implicit-templates on
+	AIX systems with g++ 2.6.x.
+
+	* octave-bug.in: Check for CC: lines too.  Use case-insensitive
+	match for To: and Cc: lines.  Actually send file that has header
+	separator stripped.  Print list of CC: addresses too.
+
+	* src/input.cc (get_user_input): If user enters empty string,
+	return empty matrix or empty string.
+
+	* src/help.cc (Fhelp, Ftype, Fwhich): Don't allow lookup_by_name
+	to execute script files.
+
+Thu Dec  8 23:20:02 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tc-rep.cc (print): Don't check `print', which is not a
+	variable in this context.
+
+Wed Dec  7 10:52:59 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/configure.in: Check for fpsetmask.
+	* src/sysdep.cc (sysdep_init): Check HAVE_FPSETMASK.  Only call it
+	if either __386BSD__ or __FreeBSD__ is defined.
+	Don't check __386BSD__ as a condition for including
+	floatingpoint.h.
+
+Mon Dec  5 12:29:07 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/utils.cc: Update directory header macro names for autoconf 2.
+	* src/dirfns.cc: Likewise.
+
+Sun Dec  4 22:00:40 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octMakefile.in (DISTFILES): Don't distribute GCC.PATCH, since it
+	is not needed with gcc 2.6.3.
+
+	* configure.in: Really do disable IEEE floating point functions on
+	the Alpha.
+
+Wed Nov 30 11:42:44 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* doc/FAQ.texi: New file.
+	* doc/Makefile.in: Create info, dvi, and ps files and distribute
+	them.
+
+	* Makefile.in (all): Expand initial message.
+
+Sat Nov 26 21:47:05 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/octave.cc (Fcomputer): Always append ios::ends to ostrstream
+	before returning.
+
+Mon Nov 21 09:41:34 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l: When start state is TEXT_FCN, gobble blanks with
+	pattern that matches only blanks before other patterns that can
+	also match just blanks.  Always check whether in_brace_or_paren
+	stack is empty before trying to use it.
+
+	* src/parse.y (make_multi_val_ret): Call constructor for
+	tree_simple_assignment_expression with correct number of args.
+
+	* scripts/plot/shg.m: New function.
+
+	* src/f-qpsol.cc (Fqpsol): Correct for changes in meaning of
+	nargin and the way args is loaded.
+	* src/f-npsol.cc (Fnpsol): Likewise.
+
+	* scripts/polynomial/roots.m: Return empty matrix for scalar or
+	empty matrix args.
+
+	* src/tree-plot.cc (gnuplot_terminal_type): New static variable.
+	(Fset): If this is a set term command, set gnuplot_terminal_type.
+	(open_plot_stream): Use gnuplot_terminal_type if it is set.
+
+	* src/idx-vector.cc (idx_vector::init): Don't check max value of
+	index vector against dimension here.  We may need to resize.
+	* src/tc-rep-idx.cc (do_scalar_index): Do check idx-vector max
+	value here.
+
+	* src/lex.l (is_plot_keyword): Don't set past_plot_range here.
+	Don't accept abbreviations for clear.
+	(handle_identifier): Don't call is_plot_keyword unless plotting.
+	Set past_plot_range here, before checking for plot option keywords.
+
+Fri Nov 18 17:25:59 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/data.cc (Fis_struct): New function.
+
+Thu Nov 17 18:13:56 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octMakefile.in (DISTFILES): Distribute GCC.PATCH.  Don't
+	distribute LIBG++.PATCH.
+
+	* src/tree-plot.cc (Fclearplot): Turn off grid and reset
+	plot_line_count to zero.
+
+	* configure.in: Check for sys/resource.h.
+	Create scripts/strings/Makefile too.
+
+	* src/timefns.cc: Surround inclusion of sys/resource.h in extern "C".
+	Only include sys/resource.h if both HAVE_SYS_RESOURCE_H and
+	HAVE_GETRUSAGE are defined.
+
+Wed Nov 16 09:26:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/plot/plot_opt.m: New function.
+	* scripts/plot/semilogx.m, scripts/plot/semilogx.m,
+	scripts/plot/loglog.m, scripts/plot/plot.m: Handle additional
+	args and format strings.
+	* scripts/plot/polar.m: Handle format arg.
+	* scripts/plot/polar_int_1.m, scripts/plot/polar_int_2.m: Extract
+	from polar_int.m.
+	* scripts/plot/plot_int_1.m, scripts/plot/plot_int_2.m: Extract
+	from plot_int.m.
+	* scripts/plot/plot_2_s_s.m, scripts/plot/plot_2_v_v.m,
+	scripts/plot/plot_2_m_m.m, scripts/plot/plot_2_v_m.m,
+	scripts/plot/plot_2_m_v.m: Handle format arg.
+
+	* scripts/strings/strcmp.m: Move here.
+	* scripts/general/strcmp.m: From here.
+
+	* src/xdiv.cc (result_ok): Issue warning instead of error if warn
+	is nonzero.
+
+Tue Nov 15 15:54:19 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-plot.cc (Fcloseplot): Clear title and labels too.
+
+	* src/help.cc (keywords): Add entries for all_va_args,
+	unwind_protect, unwind_protect_cleanup, and end_unwind_protect.
+
+	* liboctave/Makefile.in: Use -include for dependency files.
+	* src/Makefile.in: Likewise.
+
+Mon Nov 14 10:28:23 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-misc.cc (convert_to_const_vector): Resize vector before
+	returning.
+
+	* src/lex.l (plot_style_token): Also allow "steps", "boxes", and
+	"boxerrorbars".
+
+	* src/parse.y (UNWIND): Rename from UNWIND_PROTECT.
+	(CLEANUP): Rename from UNWIND_PROTECT_CLEANUP.
+	(command): Allow optsep after UNWIND and CLEANUP tokens.
+	* src/lex.l (is_keyword): Use new token names
+
+	* src/tree-const.h (tree_constant::all_va_args): New enum.
+	(tree_constant (tree_constant::all_va_args t)): New constructor.
+	(is_all_va_args): New function.
+	(is_empty, is_zero_by_zero, make_numeric_or_magic,
+	make_numeric_or_range_or_magic): Handle	all_va_args type.
+	* src/tc-rep.h (constant_type::all_va_args): New enum element.
+	(is_all_va_args): New function.
+	* src/tc-rep.cc (TC_REP::tree_constant_rep (TC_REP::constant_type),
+	TC_REP::print_code): Handle all_va_args.
+	* src/tree-misc.cc (tree_argument_list::convert_to_const_vector):
+	Handle all_va_args.
+	* src/tree-expr.cc (tree_index_expression::eval): After call to
+	tree_argument_list::convert_to_const_vector (), check error_state.
+	(tree_simple_assignment_expression::eval): Likewise.
+	(tree_function::octave_all_va_args): New function.
+	* src/parse.y (ALL_VA_ARGS): New token.
+	(arg_list): Handle ALL_VA_ARGS.
+	* src/lex.l (is_keyword): Handle all_va_args.
+
+	* src/tree-expr.cc (tree_identifier::bump_value): Check read-only
+	status of sym before altering value.
+	(tree_prefix_expression::eval): Check error_state after call to
+	tree_identifier::bump_value ().
+
+	* src/variables.cc (bind_nargin_and_nargout): Don't make nargin
+	and nargout read only.
+
+	* scripts/strings: New subdirectory for string functions.
+	* scripts/Makefile.in (SUBDIRS): Add strings.
+	* scripts/strings/strcat.m: New function.
+
+Fri Nov 11 14:17:31 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/load-save.cc (extract_keyword): Allow trailing blanks on the
+	input line.
+
+Thu Nov 10 09:53:35 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/general/reshape.m, scripts/image/ind2gray.m,
+	scripts/image/ind2gray.m, scripts/image/ind2rgb.m,
+	scripts/image/rgb2ind.m: unwind_protect do_fortran_indexing.
+	* scripts/general/strcmp.m: unwind_protect implicit_str_to_num_ok.
+	* scripts/miscellaneous/menu.m: unwind_protect page_screen_output.
+
+	* src/parse.y (UNWIND_PROTECT, UNWIND_PROTECT_CLEANUP): New tokens.
+	(command): Handle unwind-protect.
+	* src/lex.l (is_keyword): Handle unwind_protect,
+	unwind_protect_cleanup, and end_unwind_protect.
+	* src/tree-cmd.cc (tree_unwind_protect_command): New class, to
+	handle unwind-protect.
+
+	* src/token.h (end_tok_type): New field, end_unwind_protect.
+
+	* src/error.cc (verror): Flush pending output to pager here.
+	(error): Not here.
+
+	* src/tc-rep.cc (force_numeric): Don't jump to top level on error.
+	* src/tc-rep.cc, src/tc-rep-ass.cc, src/tc-rep-idx.cc: Check
+	error_state after calls to make_numeric* functions.
+
+	* src/f-lpsolve.cc: Define Flp_solve and Flp_solve_options, not
+	Flpsolve or Flpsolve_options.
+
+	* src/utils.cc (Ffile_in_path): Define Ffile_in_path, not
+	Ffile_in_pat.
+
+	* src/f-inv.cc: Add DEFUN for inverse.
+
+Wed Nov  9 09:30:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/load-save.cc (read_mat_file_header): Check for mopt < 0 too.
+	Don't fail if reading mopt fails.
+	(save_mat_binary_data): Handle range data as a special case.
+	(get_default_save_format): Also accept `mat-binary' and
+	`mat_binary'.
+	(Fsave): Add ios::trunc to flags for opening output file.
+
+	* src/parse.y (func_def2): Stash function name before stashing
+	file name.
+
+	* src/utils.cc (fcn_file_in_path): Don't append `.m' if the name
+	already ends in `.m'.
+	(oct_file_in_path): Likewise, for `.oct'.
+
+	* src/error.cc (usage): Set error state to -1, so we get traceback
+	information after a call to usage.
+
+	* src/tree-expr.cc (stash_fcn_file_name): Store full name of the
+	file.
+
+	* scripts/*/*.m: Change messages to say `invalid' instead of
+	`illegal', since no laws are being broken by using these functions
+	incorrectly.
+
+	* src/timefns.cc (Fcputime): New function.
+	* configure.in: Check for getrusage.
+
+	* src/scripts/miscellaneous/tic.m: New function.
+	* src/scripts/miscellaneous/toc.m: New function.
+	* src/scripts/miscellaneous/etime.m: New function.
+	* src/scripts/miscellaneous/is_leap_year.m: New function.
+
+	* src/error.cc (Fwarning, Fusage): New functions.
+	* scripts/*/*.m: Use them instead of printing warning and usage
+	messages directly with disp, printf, or fprintf.
+
+	* src/file-io.cc (close_files): Check Pix before using.
+	(file_count): Delete unnecessary variable.  Instead, use
+	DLList::length to get the number of files in the list.
+
+	* src/sighandlers.cc (install_signal_handlers): Explicitly ignore
+	SIGPOLL and SIGIO.
+
+Tue Nov  8 15:26:50 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/general/logspace.m: Lose fractional part of third arg.
+	Don't round, for compatibility with Matlab.
+	* scripts/general/linspace.m: Likewise.
+
+	* liboctave/CMatrix.cc (row_min, row_max, row_min_loc, row_max_loc):
+	Handle case of row containing only real elements.
+	(column_min, column_max, column_min_loc, column_max_loc):
+	Likewise, for columnwise operations.
+	* src/f-minmax.cc (two-complex-arg min, max): Handle case of both
+	columns containing only real elements.
+
+	* src/variables.cc (Fclear): Pass 0 to symbol_table::list() for
+	pats and npats.
+
+Mon Nov  7 20:22:36 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* liboctave/dColVector.cc (operator +=): Don't return reference to
+	temporary.
+	(operator -=): Likewise.
+	* liboctave/CMatrix.cc (operator +=, operator -=): Likewise.
+
+Sun Nov  6 23:15:24 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octMakefile.in (DISTSUBDIRS): Don't use $(SUBDIRS) here.
+
+	* src/load-save.cc (Fsave): Open output file with mode ==
+	ios::out, not ios::in.
+
+Sat Nov  5 18:18:11 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (HAVE_SYS_SIGLIST): Check for sys_siglist variable,
+	even if it isn't declared in a system header.
+	* acconfig.h (HAVE_SYS_SIGLIST): Add #undef.
+	* src/sighandlers.cc (sys_siglist): Define our own if
+	HAVE_SYS_SIGLIST is not defined, not if SYS_SIGLIST_DECLARED is
+	not defined.
+
+	* src/tree-plot.cc (Fclearplot): New function.
+	(clg): Alias for clearplot.
+
+	* src/parse.y (CLEAR): New token.
+	(statement): Handle PLOT CLEAR as a special case.
+	* src/lex.l (is_plot_keyword): Handle CLEAR here too.
+
+Fri Nov  4 08:44:57 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* All: Remove remaining #pragma interface/implementation statements.
+
+	* src/tree-plot.cc (subplot): Move actual code here from .h file.
+
+	* src/tree-expr.cc (tree_expression): Declare destructor virtual.
+	Delete unnecessary destructors.
+
+	* src/SLStack.h, src/SLStack.cc (operator =): Return reference to
+	SLStack, not void.
+
+	* src/f-qzval.cc (Fqzval): Rename from Fqzvalue.  Change Help
+	and usage messages too.
+
+	* scripts/plot/plot_int.m: Really figure out if there are any
+	imaginary parts.
+
+	* scripts/control/are.m: Fix typo.
+
+Thu Nov  3 18:44:11 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/load-save.cc (save_ascii_data): Handle new arg,
+	strip_nan_and_inf.  Change callers.
+	(strip_infnan): New functions.
+	(save_three_d): Strip inf and nan values here too.
+
+	* src/tree-plot.h (subplot_using): New data have_values and val.
+	* src/tree-plot.cc (subplot_using::eval, subplot_using::values):
+	New functions.
+	(subplot_style::errorbars): New function.
+	(subplot::extract_plot_data, subplot::handle_plot_data): New functions.
+	(subplot::print): Improve handling of data.
+
+Wed Nov  2 08:11:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/file-io.cc (do_scanf): If reading from stdin, flush stdout
+	first.
+
+	* configure.in: Leave some comments in the configure file.
+	Improve checking for termios.h, termio.h, and sgtty.h.
+
+	* src/variables.cc (install_builtin_variables): DEFVAR realmax and
+	realmin here.
+	* src/sysdep.cc: Instead of DEFUNing them here.
+
+	* src/variables.cc (do_who): Accept globbing patterns as args.
+	(maybe_list): Handle them here.
+
+	* src/symtab.cc (matches_patterns): New function.
+	(symbol_table::list, symbol_table::long_list): Accept list of
+	patterns, and use matches_patterns to see if the given string is a
+	match.  Change all callers.
+
+	* src/load-save.cc (read_binary_data): Don't fail if reading
+	name_len fails.
+	(do_load): Quit quietly if nothing is left to read.  Clean up doc
+	and name in all cases.
+
+Tue Nov  1 16:34:20 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/lex.l (")"): Set cant_be_identifier to 1 here too.
+
+	* src/tree-plot.cc: Use abbreviations for gnpulot plot, splot,
+	replot, with, using, and title commands.
+
+Mon Oct 31 14:26:12 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/variables.cc (Fclear): Look in global symbol table for
+	user-defined function names.
+
+	* src/load-save.cc (do_load): New function.
+	(Fload): Use it to avoid assigning streams.
+	(write_binary_header): New function.
+	(save_vars): New function.
+	(Fsave): Use it to avoid assigning streams.
+
+	* libcruft/linpack/zgesl.f (zgesl): Comment out unused varialbes
+	and statement functions.
+
+	* src/sysdep.cc (Fisieee): New function.
+	(Frealmax, Frealmin): Ditto.
+
+	* scripts/miscellaneous/version.m: New file.
+
+Fri Oct 28 14:52:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octMakefile.in (distclean): Also delete config.cache and
+	config.log.
+
+	* Makeconf.in (CPPFLAGS): Allow substitution.
+
+	* configure.in: Use AC_PREFIX_DEFAULT.
+
+	* configure.in: Use AC_CANONICAL_HOST instead of doing this
+	ourselves.
+
+	* install-sh: Rename from install.sh.
+	* octMakefile.in (DISTFILES): Distribute install-sh, not install.sh.
+
+Mon Oct 24 10:04:27 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octave-bug.in: Print message if bug report appears to have been
+	mailed successfully.  Otherwise, exit with error status.
+
+Fri Oct 21 14:05:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tc-rep-ass.cc (TC_REP::do_vector_assign (rhs, idx-vector)):
+	Handle all four cases of row/colum mixing.  Report an error if the
+	RHS is a matrix.
+
+	* src/tc-rep-idx.cc (TC_REP::do_index): Don't barf on indexing an
+	empty matrix with colon(s).
+	(TC_REP::do_scalar_index): Create index vector with  z_len = 1.
+	(TC_REP::do_matrix_index (Range, tree_constant)): Correctly handle
+	case of colon as second arg.
+
+	* octave-bug.in: Put mail commands in subshells so error message
+	really do go away.
+
+Thu Oct 20 11:05:36 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* octave-bug.in: If passing $SUBJECT on the command line to a
+	mailer, quote it.  Don't assume /bin/mail takes any args other
+	than a recipient address.  Do the right thing if the To: line
+	changes.
+
+	* src/tc-rep.cc (TC_REP::rows, TC_REP::columns): Return -1 for
+	anything that doesn't really have rows or columns.
+
+	* src/tc-rep-idx.cc (fortran_style_matrix_index): Check max and
+	min index values.
+
+	* Makefile.in (FORCE): New phony target.  Used instead of .PHONY
+	to be portable.
+
+	* octave-bug.in: Try harder to mail the message.
+
+	* src/dynamic-ld.cc: Undefine true, false, and boolean after
+	including kpathse/pathsearch.h.
+
+	* src/sysdep.cc: Include <float.h>.
+
+Wed Oct 19 10:28:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in (CXXLIB_LIST, FLIB_LIST, CXXLIB_PATH, FLIB_PATH):
+	Be careful not to match -l or -L in the middle of a word.
+
+	* src/f-minmax.cc: Correctly handle mixed scalar/matrix args.
+
+	* octMakefile.in: Rename from Makefile.in.
+	* Makefile.in: New file.  For `all' target, print message and
+	execute make again using octMakefile.  For other targets, just
+	execute make again using octMakefile.
+
+	* configure.in: Check for sys_siglist.
+	* src/sighandlers.h [! HAVE_SYS_SIGLIST]: Provide an external
+	declaration.
+	* src/sighandlers.cc (generic_sig_handler): New function, replaces
+	most individual signal handler functions.
+	(sigint_handler, sigpipe_handler): Restore signal handler before
+	doing anything else.
+	[! HAVE_SYS_SIGLIST] (sys_siglist): Provide our own definition.
+
+	* config.guess: Update from FSF sources.
+
+Tue Oct 18 23:36:24 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* flibs.sh: Don't pass -Y P,path.  Instead, turn it into a series
+	of -L dir args.
+
+	* configure.in: Update for autoconf 2.0.
+	Delete support for --enable-run-in-place (it is too hard to make
+	this work reliably...).
+
+Mon Oct 17 11:40:49 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/user-prefs.cc (init_user_prefs): Declare to return void,
+	not int.
+
+	* configure.in: Change quote characters around tr command.  Some
+	systems actually do need the []'s for ranges...
+
+Sun Oct 16 12:22:14 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tempname.c, src/tmpnam.c: New files.
+	* src/Makefile.in (SOURCES): Add them.
+	* src/dirfns.cc: Delete functions extracted from glibc.
+
+	* configure.in (localfcnfiledir, localoctfiledir, imagedir):
+	New variables.  Use them to define localfcnfilepath,
+	localoctfilepath, and imagepath.
+	* Makeconf.in: Substitute them here.
+
+	* src/utils.cc (get_fcn_file_names) [WITH_DLD]: Also match .oct
+	files.
+
+	* dld/find_exec.c (dld_find_executable): Don't be fooled by
+	directories or other special files in PATH.
+	(ABSOLUTE_FILENAME_P): Also return true if the name includes a
+	`/'.  This isn't necessarily an absolute path, but we will turn it
+	into one later.
+	* src/dynamic-ld.cc (octave_dld_init): Call make_absolute() on
+	value returned from dld_find_executable().
+
+Sat Oct 15 08:35:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* flibs.sh: Undo previous change.  Only substitute spaces for
+	commas if it looks like we have output from xlf.  Handle -Y and
+	LD_RUN_PATH using gcc's -Xlinker option.
+
+	* Makefile.in (snapshot-version): Use move-if-change for version.h.
+
+Fri Oct 14 09:18:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/image/Makefile.in (SOURCES): Don't forget octtopnm.c.
+
+	* Makefile.in (BINDISTFILES): Distribute octave-bug too.
+
+	* configure.in (imagepath): Install at same level as fcnfiledir,
+	not below it.
+
+	* doinstall.sh: Correctly extract version numbers that are not all
+	digits.  Also install images too.  Also install octaverc.  Ask
+	octave for the target host type.  Also create site/m and
+	site/oct directories.  Also install octave-bug.
+
+	* scripts/image/Makefile.in (DISTFILES): Distribute demo image
+	files too.
+
+	* doinstall.sh: Update for new directory organization.
+
+	* src/variables.cc (subst_octave_home): Make it work for multiple
+	substitutions.
+
+	* flibs.sh: Handle -Y P,path:of:lib:dirs output from f77 on Solaris.
+
+	* src/strfns.cc (Ftoascii): New file, new function.
+	(Fisstr, Fsetstr): Move here, fromd ata.cc.
+
+	* src/Makefile.in (SOURCES): Include it.
+
+Thu Oct 13 11:58:03 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/signal/filter.m: Postpad `b' before reshaping.
+
+	* mkinstalldirs: New file.
+	* Makefile.in: Distribute it, don't make mkpath.
+	* All Makefile.in files: Use it instead of mkpath.
+
+	* src/utils.cc (Foctave_tmp_file): New function.
+
+	* src/utils.cc (undo_string_escape): Move here from tc-rep.cc,
+	rename from undo_string_escapes, and make extern.
+	(undo_string_escapes): New function, for undoing a whole string.
+	(Fundo_string_escapes): New function.
+
+	* scripts/miscellaneous/dump_prefs.m,
+	scripts/miscellaneous/dump_1_pref.m: New functions.
+	* scripts/miscellaneous/bug_report.m: Record user preferences in a
+	file and pass the name of the file to octave-bug.  Use
+	octave_tmp_file to generate tmp file name.
+	* octave-bug.in: Accept a final file-name arg as a file that
+	contains a list of user-preferences.
+
+Wed Oct 12 09:09:37 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Redefine archlibdir and octfiledir so that oct
+	and exec directories are at the same level as the m directory.
+	Redefine localoctfilepath so that site/oct is a the same level as
+	site/m.
+
+	* Makeconf.in (F77): Substitute it.
+	(BUG_CFLAGS, BUG_CXXFLAGS): New vars.
+	* configure.in:
+	* scripts/bug_report.m: New file.
+	* octave-bug.in: New file.
+	* Makefile.in (DISTFILES): Distribute octave-bug.in.
+	(dirs_to_make): Add $bindir.
+	(all): Add octave-bug.
+	(octave-bug): New target.
+	(install): Install it.
+	* src/defaults.h.in: Add defines for bindir.
+	* src/Makefile.in (defaults.h): Substitute it.
+	* src/variables.cc (octave_bin_dir): New function.
+	* src/octave.cc (initialize_globals): Also add $bindir to path.
+
+	* configure.in: Check for gettimeofday. Add AC_TIME_WITH_SYS_TIME.
+	* src/systime.h: New file.
+	* src/timefns.h: Use gettimeofday if available.
+	* src/Makefile.in (INCLUDES): Add systime.h.
+
+Mon Oct 10 14:34:56 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/octave.cc (verbose_flag): New global variable.
+	(long_opts): Add "verbose".
+	(usage_string): Update.
+	(main): Set verbose_flag if given --verbose.
+	(execute_startup_files): Don't print messages about reading
+	startup files if verbose_flag is not set.
+
+	* src/tree-expr.cc (apply_mapper_fcn): Handle scalars as a special
+	case, but then just try to convert other arg types to a matrix.
+
+	* src/f-det.cc (Fdet): Check if arg is complex type, but not
+	necessarily a complex matrix.
+	* src/f-schur.cc (Fschur): Likewise, and also for real types.
+	* src/f-lu.cc (Flu): Likewise.
+	* src/f-minmax.cc (Fmin, Fmax): Likewise.
+
+Sun Oct  9 21:04:17 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tc-rep-ass.cc (TC_REP::assign): If LHS is undefined, don't
+	try to force it to be a numeric type.
+
+Fri Oct  7 09:05:10 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: Define LD_STATIC_FLAG for Alpha OSF/1 1.3 systems.
+
+	* src/tc-rep-idx.cc (TC_REP::do_index): Only work for numeric
+	types, but don't panic if conversion doesn't work.
+	* src/tc-rep-ass.cc (TC_REP::assign): Likewise.
+
+	* src/tc-rep.cc (TC_REP::gripe_wrong_type_arg): New function.
+
+	* src/gripes.cc (gripe_wrong_type_arg): Define here.
+	* src/tree-const.cc: Not here.
+
+Wed Oct  5 16:24:38 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/file-io.cc (do_scanf): Don't panic if string is NULL.
+
+	* src/gripes.cc (gripe_unrecognized_float_fmt): New function.
+	(gripe_2_or_3_dim_plot): Ditto.
+	(gripe_unrecognized_data_fmt): Ditto.
+	(gripe_data_conversion): Ditto.  Use it in load-save.cc data
+	conversion routines that aren't implemented yet.
+
+	* src/load-save.cc (do_double_format_conversion): Don't panic on
+	unrecognized floating point formats.
+	(do_float_format_conversion): Likewise.
+	(write_doubles): Don't panic if data format is unrecognized.
+	(do_save): Likewise
+	(install_loaded_variable): Don't panic for unknown symbol types.
+	(read_binary_data): Also check error_state after calls to read_doubles.
+
+	* src/symtab.cc (symbol_table::rename): Don't panic if symbol
+	can't be renamed.
+	* src/parse.y (return_list): Abort parse if renaming results in an
+	error.
+
+	* src/tree-misc.cc (tree_if_command::eval): Don't panic if all
+	(all (cond)) is not a scalar.
+
+	* src/tree-expr.cc (tree_unary_expression::print_code): Don't
+	panic if expression type is unknown.
+
+	* src/tree-plot.cc (tree_plot_command::eval): Don't panic if plot
+	is not 2 or 3 dimensional.
+	(tree_plot_command::print_code, subplot::print, save_in_tmp_file):
+	Likewise.
+
+	* src/variables.cc (alias_builtin): Panic with better message.
+	(subst_octave_home): Don't panic if OCTAVE_HOME doesn't contain
+	OCTAVE_PREFIX.
+
+	* src/tc-inlines.h (REP_RHS_MATRIX): Use panic_impossible()
+	instead of abort().
+	(REP_ELEM_ASSIGN, CRMATRIX): Likewise.
+
+	* src/data.cc (Fdiag, make_diag): Do work here.
+	* src/tc-rep.cc (TC_REP::diag, make_diag): Not here.
+	* src/tc-rep.h (TC_REP::diag): Delete.
+	* src/tree-const.h (tree_constant::diag): Delete.
+
+Tue Oct  4 08:35:37 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/f-fft.cc (Ffft): Correctly set n_points for row vectors if
+	nargin == 1.
+	* src/f-ifft.cc (Fifft): Likewise.
+
+	* src/load-save.cc (Fsave): Declare file and stream static.
+
+Mon Oct  3 10:40:50 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tree-expr.cc (octave_va_arg): Correct arg count and index to
+	match recent change to arg passing/nargin.
+	(define_param_list): Always set num_named_args = param_list->length ().
+
+	* readline/Makefile.in (install): Don't install libreadline.a by
+	default.
+	(uninstall): Now no need to delete it.
+
+	* configure.in (localfcnfilepath, localoctfilepath): Change to
+	match organization of system fcn and oct files, and enable
+	recursive searching in both.  Enable recursive searching in
+	$(octfiledir).
+	(includedir): Change to $(prefix)/include/octave.
+
+Sun Oct  2 10:14:18 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: For now, disable IEEE floating point functions on
+	the Alpha.  This is braindead, but at least prevents divide by
+	zero crashes...
+
+	* src/file-io.cc (fseek_internal): Use values for origin that
+	match what we use to define SEEK_SET, SEEK_CUR, and SEEK_END in
+	variables.cc.
+
+	* dld: Merge various changes for Linux from dld 3.2.4 that is
+	being distributed with jacal.
+
+	* src/file-io.cc (fwrite_internal): Correct indexing of args.
+
+	* src/tree-expr.cc (apply_mapper_fcn): New function.
+	(tree_builtin::eval): Use it instead of tree_constant::mapper().
+	* src/tree-const.h (tree_constant::mapper): Delete.
+	* src/tc-rep.cc, src/tc-rep.h (TC_REP::mapper): Delete.
+
+	* src/data.cc (Fcumprod, Fcumsum, Fprod, Fsum, Fsumsq): Do work here.
+	* src/tc-rep.cc (TC_REP::cumprod, TC_REP::cumsum, TC_REP::prod,
+	TC_REP::sum, TC_REP::sumsq): Not here.  Delete.
+	* src/tc-rep.h (TC_REP::cumprod, TC_REP::cumsum, TC_REP::prod,
+	TC_REP::sum, TC_REP::sumsq): Delete
+	* src/tree-const.h (tree_constant::cumprod, tree_constant::cumsum,
+	tree_constant::prod, tree_constant::sum, tree_constant::sumsq):
+	Delete.
+
+	* tree-const.h: Don't check gcc minor version number.
+	* tc-rep.h: Likewise.
+
+	* src/file-io.h (class file_info): Declare here.
+	* src/file-io.cc: Not here.
+
+	* configure.in (LIBOCTDLD, LIBDLD): Remove ../ prefix.
+	* Makefile.in (distclean, realclean): Don't remove *.a.
+	* src/Makefile.in (OCTAVE_LIBS): Correct directory spec for libs.
+	Build, install, and clean liboctdld.a, not ../liboctdld.a.
+	* dld/Makefile.in: Build, install, and clean libdld.a, not ../libdld.a.
+	* info/Makefile.in: Likewise, for libinfo.a.
+	* kpathsea/Makefile.in: Likewise, for libkpathsea.a.
+	* libcruft/Makefile.in: Likewise, for libcruft.a.
+	* liboctave/Makefile.in: Likewise, for liboctave.a.
+	* readline/Makefile.in: Likewise, for libreadline.a.
+
+	* configure.in (gxx_version): Require 2.6.x or later.  Don't
+	define EXTERNAL_TEMPLATES.  Do define NO_IMPLICIT_TEMPLATES.
+	* liboctave/Array-C.cc, liboctave/Array-d.cc, src/Array-tc.cc,
+	src/DLList-fi.cc src/SLStack-tok.cc, src/SLStack-ue.cc,
+	src/SLStack-tm.cc, src/SLStack-pc.cc, src/SLStack-i.cc,
+	src/SLList-tc.cc, src/SLStack-sym.cc, src/SLStack-ui.cc,
+	src/SLList-misc.cc, src/SLList-expr.cc, src/SLList-plot.cc,
+	src/Map-tc.cc: New files.  Instantiate templates here.
+	* libocave/Array.cc, src/Map.cc, src/Stack.cc, src/SLStack.cc:
+	Not here.  Remove #pragma implementation hack.
+	* liboctave/Array.h, src/Stack.h, src/Map.h, src/SLStack.h: Remove
+	#pragma interface hack.
+	* Makeconf.in: Substitute NO_IMPLICIT_TEMPLATES, not
+	EXTERNAL_TEMPLATES.
+	(ALL_CXX_FLAGS, UGLY_ALL_CXX_FLAGS): Use $(NO_IMPLICIT_TEMPLATES),
+	not $(EXTERNAL_TEMPLATES).
+	* acconfig.h: Remove USE_EXTERNAL_TEMPLATES #undef.
+	* src/Makefile.in (XALL_CXX_FLAGS): Delete -fno-implicit-templates.
+	(TI_SRC, TI_OBJ): New variables.
+	(libtinst.a): New target.
+	* liboctave/Makefile.in (TI_SRC): New variable.
+	(SOURCES): Add it to list.
+
+Fri Sep 30 09:52:15 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/Makefile.in: Automatically generate more lists.
+	Use := in more places.
+	* src/Array-C.cc src/Array-d.cc src/Array-tc.cc src/Map-tc.cc
+	src/Stack-i.cc src/SLStack-pc.cc src/SLStack-sym.cc
+	src/SLStack-tok.cc src/SLStack-tm.cc src/SLStack-ue.cc:
+	New template instantiation files.
+	* configure.in: If using gcc 2.6.x or later, use
+	-fno-implicit-templates instead of -fexternal-templates.
+
+	* src/tc-inlines.h: Rename from tc-inlines.cc.
+
+	* src/parse.y (looking_at_indirect_ref): New global flag, for
+	parser feedback.
+	(tree_indirect_ref_type): New token type.
+	(TEXT_ID): New token.
+	(indirect_ref): New non-terminal.
+	(make_index_expression): New function.
+	(variable): Use it to build variable from indirect_ref, not just
+	identifier.
+
+	* src/lex.l (handle_identifier): Handle identifiers differently if
+	looking at an indirect reference.  Add `.' to list of other ops.
+
+	* src/tree-expr.cc (tree_identifier::do_lookup): Handle new
+	exec_script arg.
+	(tree_identifier::assign): New functions for assignment to a
+	strucutre element.
+	(print_constant): New function.
+	(tree_identifier::eval, tree_indirect_ref::eval): Use it.
+	(
+
+	* src/tree-expr.h (tree_indirect_ref): New class for handling
+	structure references.
+	(tree_expression::is_indirect_ref): New virtual function.
+	(tree_fvc::lookup_map_element): New virtual function.
+	(tree_index_expression, tree_simple_assignment_expression):
+	Add new constructors for handling indirect references.
+
+	* src/oct-map.h: New file, for class managing Octave's
+	structure/map type.
+
+	* src/tree-misc.cc (tree_global::eval): Don't allow individual
+	structure elements to be tagged global.
+
+	* src/tc-rep.h (tree_constant_rep): Add new field, a_map, and a
+	new type_tag, map_constant.
+	* src/tree-const.cc (tree_constant::is_map): New function.
+	* src/tree-const.cc (tree_constant::map_value,
+	tree_constant::assign_map_element, tree_constant::make_unique,
+	tree_constant::lookup_map_element,
+	tree_constant::make_unique_map_element): New functions.
+
+	* src/Map.h (CHNode::CHNode): Copy key.
+	(CHNode::~CHNode): Delete it.
+	(CHMap::contents): Don't declare return value const.
+
+	* src/tc-inlines.cc: Move some macros here from tc-rep.cc so they
+	can appear in one place and be shared by tc-rep-idx.cc,
+	tc-rep-ass.cc, and tc-pre.cc.
+
+	* src/tc-rep-idx.cc, src/tc-rep-ass.cc: New files, extracted from
+	tc-rep.cc to make compilation of tc-rep stuff faster and require
+	less memory.
+
+	* src/variables.cc (Fwhos): Correctly insert "-long" into arg list
+	for Fwho.
+
+Mon Sep 26 12:59:55 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* test/Makefile.in (OCTAVE_SCRIPT_PATH): Append `//' for recursive
+	searching.
+
+Fri Sep 23 07:53:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/plot/bar.m: Don't return values if nargout == 0.
+	* scripts/plot/hist.m: Likewise.
+	* scripts/plot/stairs.m: Likewise.
+
+	* src/tree-plot.cc (Fishold): New function.
+	(plot_line_count, parametric_plot, clear_before_plotting):
+	Declare static.
+
+	* src/f-fft.cc (Ffft): Handle row vector as a special case.
+	* src/f-ifft.cc (Fifft): Ditto.
+
+Thu Sep 22 13:20:53 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/help.cc (print_symbol_type): New function, extracted from Fwhich.
+	(Fwhich): Use it.
+	(Fhelp): Use it to print type info before help message.
+
+	* src/dynamic-ld.cc: Hide all DLD-specific functions behind
+	#ifdef WITH_DLD.
+
+	* scripts/startup: New directory.
+	* scripts/startup/Makefile.in: New file.
+	* scripts/startup/octaverc: New file.  Don't overwrite existing
+	file when nstalling.
+	* configure.in: Generate Makefile in scripts/startup.
+	* scripts/Makefile.in (SUBDIRS): Add startup.
+	* src/defaults.h.in (OCTAVE_STARTUPFILEDIR): New macro.
+	* src/variables.cc (get_site_defaults): Look for octaverc in
+	OCTAVE_STARTUPFILEDIR.
+
+	* configure.in (fcnfiledir): Make it end in `//'.
+
+	* src/error.cc (Ferror): Correct indexing error.
+
+	* src/Map.h, src/Map.cc: New files implementing associative arrays.
+	* src/Makefile.in: Include them in the list of files to distribute
+	and compile.
+
+Wed Sep 21 09:50:19 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (DISTSUBDIRS): Add dld to the list.
+
+	* scripts/plot/hist.m: New function file.
+
+	* src/tc-rep.cc (TC_REP::do_matrix_index (tree_constant,
+	tree_constant): For case of scalar as first arg, move call to
+	index check to the TC_REP::do_matrix_index (int, tree_constant)
+	function.
+	(TC_REP::do_matrix_index (int, tree_constant): Be compatible with
+	Matlab for indexing of the form row_vector (0, :).
+	(TC_REP::do_matrix_index (tree_constant, int): Likewise, for
+	indexing of the form col_vector (:, 0).
+	(TC_REP::do_matrix_assignment): Similar changes for assignment.
+
+Tue Sep 20 17:48:39 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/parse.y (return_list, return_list1): New nonterminals.
+	Rename from func_def1a.  Handle variable number of return values.
+	* src/tree-expr.h (tree_function::vr_list): New field.
+	* src/tree-expr.cc (delete_vr_list): New function.
+	(tree_function::octave_vr_val, tree_function::takes_var_return):
+	New functions, for variable return lists.
+	(tree_function::define_ret_list, tree_function::eval): Handle vr_list.
+	(Fvr_val): New function.
+	* src/tree-misc.h (tree_va_return_list): New list class.
+	* src/tree-misc.cc (tree_parameter_list::convert_to_const_vector):
+	Take pointer to tree_va_return_list as arg, and append the values
+	found there.
+
+	* src/arith-ops.cc (mx_stupid_bool_op): Correctly handle empty
+	matrices for == and != ops.
+
+	* src/variables.cc (Fis_global): Check args(0), not args(1).
+	(Fexist): Likewise.
+	(install_builtin_mapper): Set nargin_max to 1, not 2.
+
+	* src/dynamic-ld.cc (octave_dld_init): Make raw program name
+	absolute before calling dld_find_executable.
+
+	* src/octave.cc (initialize_error_handlers): New function.
+	(main): Call init_user_prefs and initialize_error_handlers.
+	Rearrange order of calls to initialization functions.
+
+	* src/user-prefs.cc (init_user_prefs): New function.
+
+	* src/data.cc (map): Correct condition for assert ().  Correct
+	handling of empty args.
+
+	* src/f-lsode.cc src/f-dassl.cc src/f-quad.cc src/f-npsol.cc
+	src/f-fsolve.cc: Pass correct number of args to
+	takes_correct_nargs ().
+	* src/variables.cc (takes_correct_nargs): Use %s, not %c in format
+	string.
+
+	* src/f-ifft2.cc src/f-expm.cc src/f-det.cc src/f-svd.cc
+	src/f-syl.cc src/f-schur.cc src/f-qzval.cc src/f-qr.cc
+	src/f-pinv.cc src/f-lu.cc src/f-log.cc src/f-inv.cc src/f-hess.cc
+	src/f-eig.cc src/f-chol.cc src/f-balance.cc src/f-lsode.cc
+	src/f-dassl.cc src/f-quad.cc src/f-npsol.cc src/f-fsolve.cc:
+	Correctly handle return value from empty_arg ().
+	* src/utils.cc (empty_arg): Clarify usage, correct return value if
+	arg is empty but no message is printed.
+
+	* src/Makefile.in (dist): Delete builtins.cc too.
+
+	* configure.in (DYNAMIC_LD_OBJ): Delete.
+	* src/Makefile.in (OBJECTS): Don't substitute DYNAMIC_LD_OBJ.
+	Always include dynamic-ld.o.
+
+	* configure.in: Generate Makefile in scripts/elfun and
+	scripts/specfun.
+
+	* Makeconf.in (version): Use `:=' and `$(shell )', not just `='
+	and backticks, so we only extract the version number once.
+
+Mon Sep 19 09:04:30 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/tc-rep.h (represent_strings_with_doubles): New field in
+	tree_constant_rep class.
+
+	* tree-misc.cc (tree_argument_list::convert_to_const_vector):
+	Don't allocate extra arg for function name.
+	* sysdep.cc, pr-output.cc, input.cc, file-io.cc, error.cc,
+	tc-rep.cc, tree-expr.cc, f-svd.cc, f-sort.cc, f-schur.cc,
+	f-rand.cc, f-qzval.cc, f-quad.cc, f-qr.cc, f-qpsol.cc, f-pinv.cc,
+	f-npsol.cc, f-minmax.cc, f-lu.cc, f-lsode.cc, f-log.cc, f-inv.cc,
+	f-ifft2.cc, f-ifft.cc, f-hess.cc, f-givens.cc, f-fsolve.cc,
+	f-fft2.cc, f-fft.cc, f-expm.cc, f-eig.cc, f-det.cc, f-dassl.cc,
+	f-colloc.cc, f-chol.cc, f-balance.cc, f-syl.cc, variables.cc,
+	tree-misc.cc, data.cc, octave.cc, utils.cc, defun-int.h:
+	Change meaning and usage of nargin and args.length() to cope with
+	above change.  This makes nargin mean the same thing in built-in
+	functions as it does in M-files.
+
+Sat Sep 17 09:29:08 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* scripts/general/nargchk.m: New function.
+
+Fri Sep 16 08:48:13 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makeconf.in (FLIB_LIST, FLIB_PATH, CXXLIBS, CXXLIB_LIST,
+	CXXLIB_PATH): Set these.
+
+	* cxxlibs.sh: New file.
+	* configure.in: Use it to determine extra C++ libraries to link
+	to.  Use sed magic to extract list of libraries and directories
+	from FLIBS and CXXLIBS.
+	* Makefile.in: (DISTFILES): Include cxxlibs.sh.
+
+	* configure.in: Change AC_VERBOSE messages to match
+	autoconf-generated messages.
+
+	* src/dynamic-ld.cc (dld_octave_resolve_reference): Search library
+	path for list of files to link.
+
+	* src/utils.cc (pathstring_to_vector): Un-#if 0 it.
+
+	* Makefile.in: Install liboctdld.a if not linking to it.
+	(defaults.h): Substitute FLIB_LIST, FLIB_PATH, CXXLIB_LIST,
+	CXXLIB_PATH.
+
+Thu Sep 15 09:31:29 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makeconf.in (LD_STATIC_FLAG): Actually substitute LD_STATIC_FLAG.
+	(ALL_LDFLAGS): Include it here.
+
+	* configure.in: Check for signgam declaration in math.h
+	* acconfig.h: Add #undef for SIGNGAM_DECLARED.
+	* src/mappers.h: Provide our own declaration of signgam if
+	HAVE_LGAMMA but not SIGNGAM_DECLARED.
+
+Wed Sep 14 11:28:09 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/dynamic-ld.cc (mangled_octave_builtin_name,
+	mangle_octave_oct_file_name, load_octave_builtin,
+	load_octave_oct_file, init_dynamic_linker): New functions.
+	[WITH_DLD] (octave_dld_init, dld_octave_resolve_reference,
+	dld_octave_builtin, dld_octave_oct_file): New functions to handle
+	details of dynamic linking using dld.
+
+	* src/variables.cc (load_fcn_from_file) [WITH_DLD]: Handle looking
+	for .oct file to link at run time.
+
+	* src/tree-expr.cc (tree_builtin::tree_builtin): Always init my_name.
+	(tree_builtin::eval): If no definition, try to load one using
+	load_octave_builtin().
+
+	* src/octave.cc (main): Initialize dynamic linking here.
+
+	* src/defun-int.h (DEFINE_FUN_STRUCT, DEFINE_FUN_STRUCT_FUN):
+	New macros.
+	* src/defun-dld.h (DEFUN_DLD_BUILTIN): Rename from DEFUN_DLD and
+	handle case of WITH_DLD && OCTAVE_LITE && MAKE_BUITLINS.
+	(DEFUN_DLD): Use this for external user-supplied functions that
+	are intended to be dynamically linked.
+
+	* configure.in: Handle --enable-lite-kernel.  Call AC_SUBST for
+	use_dld and lite_kernel.  Define LIBOCTDLD unless doing dynamic
+	linking and small kernel requested.
+	* acconfig.h: Add #undefs for OCTAVE_LITE and SMART_PUTENV.
+	* Makeconf.in: Define WITH_DLD from @use_dld@ and OCTAVE_LITE from
+	@lite_kernel@.
+
+	* src/octave.cc (Fsystem): Rename from shell_cmd.
+	(Fshell_cmd): Define as alias to Fsystem.
+
+Mon Sep 12 20:19:20 1994  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* src/mappers.cc: Include error.h and math.h.
+
+Sat Sep 10 11:49:11 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makefile.in: Clean up rules for making distributions.
+	(DISTDIRS): Distribute kpathsea
+
+Fri Sep  9 08:46:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/dMatrix.cc (pseudo_inverse): New function.
+	* liboctave/CMatrix.cc (pseudo_inverse): New function.
+	* src/f-pinv.cc: New file, for pinv().
+	* src/Makefile.in (DLD_SRC): Add f-pinv.cc.
+	(DLD_OBJ): Add f-pinv.o.
+	* scripts/linear-algebra/pinv.m: Delete.
+
+	* configure.in: Define and substitute $imagepath.
+	* src/Makefile.in: Substitute OCTAVE_IMAGEPATH.
+	* src/defaults.h.in: Add OCTAVE_IMAGEPATH.
+	* src/variables.cc (install_builtin_variables): Define IMAGEPATH.
+	* src/user-prefs.cc (image_path): New function.
+	* Makeconf.in (imagepath): substitute it.
+
+	* src/octave.cc (initialize_globals): Ensure that $archlibdir is
+	in the user's PATH.
+
+	* utils.cc (search_path_for_file, Ffile_in_path): New functions.
+
+	* configure.in: Append `//' to $fcnfiledir, for recursive
+	searching.
+	(AC_OUTPUT): Edit makefiles in script subdirectories too.
+
+	* scripts: Regroup function files in the following directories,
+	each with its own Makefile.in:
+
+	   image           plot        signal          control
+	   linear-algebra  polynomial  special-matrix  general
+	   miscellaneous   set         statistics
+
+	* src/help.cc (simple_help): Use kpathsea functions to find files
+	in path.
+	* src/utils.cc (get_fcn_file_names): Likewise.
+	(pathstring_to_vector): #if 0 out.
+
+Thu Sep  8 16:59:42 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Makefile.in (OCTAVE_LIBS): Include ../libkpathsea.a.
+	* configure.in: Include configure stuff for kpathsea here too.
+	* Makefile.in (kpathsea): New target.
+	* src/utils.cc (file_in_path): Use kpathsea function instead of
+	doing our own searching.
+	* kpathsea/Makefile.in (lib): Define as ../libkpathsea.a, not just
+	kpathsea.a.
+
+Wed Sep  7 09:39:20 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/user-prefs.cc (check_str_pref): Fix comment.
+
+	* src/utils.cc (empty_arg): Check flag == 0, not is_empty > 0.
+
+	* src/f-fft2.cc (Ffft2): New file and function.
+	* src/f-ifft2.cc (Fifft2): Likewise.
+	* src/fft2.m, src/ifft2.m: Delete.
+
+	* src/f-fft.cc (Ffft): Handle second arg.  Depending on value of
+	propagate_empty_matrices, return empty matrix for empty arg.
+	* src/f-ifft.cc (Fifft): Likewise.
+
+	* liboctave/CMatrix.cc (fourier2d, ifourier2d): New functions.
+	* liboctave/dMatrix.cc (fourier2d, ifourier2d): New functions.
+
+	* src/tree-misc.cc (eval (int, int)): New function.
+	* src/octave.cc (eval_string, Feval): Handle multiple output args.
+
+	* src/error.cc (suppress_octave_error_messages): New global.
+	(error): Check it to see if messages should be printed.
+	* src/octave/cc (Feval): Set it if `catch' arg is supplied.
+
+	* src/octave.cc (Feval): Handle second `catch' arg.
+
+	* src/load-save.cc (read_mat_file_header): Init swap to zero.
+
+	* doc/octave.1: New simple man page.
+	* doc/Makefile.in: Distribute and install it.
+
+	* src/variables.cc (Fclear): Handle -x option for exclusive clear.
+
+Tue Sep  6 16:00:34 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/load-save.cc (save_mat_binary_data): New function.
+	(do_save): Handle LS_MAT_BINARY.
+	(Fsave): Handle -mat-binary.
+	(Changes from G. Beyerle <gbeyerle@AWI-Potsdam.DE>.)
+
+	* src/variables.cc (subs_octave_home, octave_arch_lib_dir):
+	New functions.
+	(octave_home, octave_info_dir, octave_lib_dir, default_path):
+	Fix for new directory organization.
+
+	* src/tree-expr.h (tree_multi_val_ret): New class to serve as a
+	base for objects that can produce more than one value when
+	evaluated.
+	(tree_fvc, tree_index_expression, tree_multi_assignment_expression):
+	Use it as a base.
+
+	* src/parse.y (make_multi_val_re): New function.
+	(expression): Use it to construct multiple value assignments.
+
+	* configure.in, Makefile.in, Makeconf.in, src/defaults.h.in:
+	Revamp directory structure used for installed versions of Octave.
+
+	* src/f-schur.cc (Fschur): Correct argument count in error message.
+
+	* src/octave.cc (Fcomputer): New function.
+	* scripts/computer.in: Delete.
+	* scripts/Makefile.in: Don't edit or distribute computer.in.
+
+Thu Sep  1 09:02:06 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/variables.cc (install_builtin_variables): New builtin
+	variable, OCTAVE_VERSION.
+
+Tue Aug 30 17:18:14 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-expr.cc: Include string.h
+	(tree_matrix::eval): Fix handling of strings to work as in 1.0.
+
+Mon Aug 29 14:55:14 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.l: Handle ".+" and ".-" too.
+
+	* src/dirfns.cc (dir_acess, exists, gen_tempname, tempnam): New
+	functions from glibc.
+	* src/utils.cc (octave_tmp_file_name): Use tempnam.
+	(choose_temp_base_try): Delete.
+	* configure.in: Check for tempnam.
+
+	* src/load-save.cc (Fsave): Only write floating point format if
+	doing binary save.
+
+	* liboctave/Array.cc (operator =): Check to see if assignment is
+	to same object.
+
+Sun Aug 28 23:32:59 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/CollocWt.cc (CollocWt::init): Call delete [] on vectors.
+	* liboctave/NPSOL.cc (NPSOL::minimize): Eliminate some memory leaks.
+	* liboctave/QPSOL.cc (QPSOL::minimize): Likewise.
+	* liboctave/NLEqn.cc (NLEqn::solve): Likewise.
+
+Thu Aug 25 09:27:04 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* info/session.c (info_get_input_char): Don't exit immediately if
+	we see EOF on the input stream.
+
+	* scripts/kurtosis.m, scripts/skewness.m: Update from KH.
+
+Wed Aug 24 00:19:49 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* dld/Makefile.in, scripts/Makefile.in, doc/Makefile.in,
+	readline/Makefile.in, info/Makefile.in, libcruft/Makefile.in,
+	liboctave/Makefile.in, src/Makefile.in (INSTALL, INSTALL_PROGRAM,
+	INSTALL_DATA): Define here.
+	* Makeconf.in: Not here.
+
+	* src/tree-plot.cc (send_to_plot_stream): Handle
+	user_pref.automatic_replot.
+	* src/variables.cc (install_builtin_variables):
+	Add DEFVAR for automatic_replot.
+	* src/user-prefs.cc (automatic_replot): New function.
+	* src/user-prefs.h (user_preferences): Add automatic_replot to the
+	list.
+
+	* src/data.cc (Fatan2): Make work for mixed scalar and Matrix args.
+	(map): New functions for two arg mappers (like atan2).
+
+	* src/f-fsqp.cc: Don't surround everything in FSQP_MISSING, so
+	that trying to use fsqp will result in a message about fsqp not
+	being freely redistributable.
+	* src/f-npsol.cc: Likewise, for NPSOL_MISSING.
+	* src/f-qpsol.cc: Likewise, for QPSOL_MISSING.
+
+Tue Aug 23 12:56:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-expr.cc (tree_identifier::eval): Don't call delete for
+	ans_id.  The destructor for tree_simple_assignment_expression does
+	this now.
+
+	* src/Makefile.in (%.def : %.cc): Use sed, not awk.
+	(realclean, distclean, local-dist, dist): Delete .d and .def files.
+
+	* liboctave/Array.h (DiagArray::Proxy): Make compilation
+	conditional on gcc version, not just _AIX.
+
+	* src/utils.cc (octave_tmp_file_name, choose_temp_base_try): New
+	functions, stolen from GCC.  If HAVE_MKTEMP is not defined, just
+	call tmpnam; otherwise, try harder to please.
+	* src/tree-plot.cc (save_in_tmp_file): Use it, instead of calling
+	tmpnam() directly.
+	* src/file-io.cc (do_scanf): Likewise.
+	* src/octave-hist.cc (mk_tmp_hist_file): Likewise.
+	* configure.in: Check for mktemp.
+
+	* src/tree-const.h (is_matrix_type, is_scalar_type): Make private.
+	* src/tc-rep.h (is_matrix_type, is_scalar_type): Likewise.
+
+	* src/tc-rep.h (force_numeric, make_numeric,
+	make_numeric_or_magic, make_numeric_or_range_or_magic): Make
+	private.
+	(make_numeric_or_range): #if 0 out.
+
+	* src/utils.cc (empty_arg): Correctly set return value.
+
+	* src/arith-ops.cc: Don't include setjmp.h.
+	* src/utils.cc: Surround setjmp.h with extern "C".
+	* src/octave.cc: Likewise.
+
+	* src/sighandlers.cc (octave_new_handler): New function.
+	(install_signal_handlers): Call it.
+
+	* src/f-qzval.cc (Fqzvalue): Don't call make_numeric for args.
+	Check error state after attempting to extract values.  Simplify
+	where possible.
+	* src/f-colloc.cc (Fcolloc): Likewise.
+	* src/f-rand.cc (Frand): Likewise.
+	* src/f-sort.cc (Fsort): Likewise.
+	* src/f-find.cc (Ffind): Likewise.
+	* src/f-minmax.cc (Fmin, Fmax): Likewise.
+	* src/f-fft.cc (Ffft): Likewise.
+	* src/f-ifft.cc (Fifft): Likewise.
+	* src/f-svd.cc (Fsvd): Likewise.
+	* src/f-inv.cc (Finv): Likewise.
+	* src/f-det.cc (Fdet): Likewise.
+	* src/f-eig.cc (Feig): Likewise.
+	* src/f-lu.cc (Flu): Likewise.
+	* src/f-hess.cc (Fhess): Likewise.
+	* src/f-qr.cc (Fqr): Likewise.
+	* src/f-givens.cc (Fgivens): Likewise.
+	* src/f-syl.cc (Fsyl): Likewise.
+	* src/f-log.cc (Flog): Likewise.
+	* src/f-expm.cc (Fexpm): Likewise.
+	* src/f-balance.cc (Fbalance): Likewise.
+	* src/f-schur.cc (Fschur): Likewise.
+	* src/f-chol.cc (Fchol): Likewise.
+	* src/f-npsol.cc (Fnpsol, npsol_options): Likewise.
+	* src/f-fsolve.cc (Ffsolve, fsolve_options): Likewise.
+	* src/f-dassl.cc (Fdassl, dassl_options): Likewise.
+	* src/f-lsode.cc (Flsode, lsode_options): Likewise.
+	* src/f-quad.cc (Fquad, quad_options): Likewise.
+	* src/tree-expr.cc (tree_matrix::eval): Likewise, while building
+	matrix.
+	(tree_colon_expression::eval): Likewise, for elements of range.
+	* src/variables.cc (is_valid_function, Fis_global, Fexist):
+	Likewise.
+	* src/sysdep.cc (Fgetenv, Fpause): Likewise.
+	* src/octave.cc (eval_string, Fshell_cmd): Likewise.
+	* src/input.cc (get_user_input): Likewise.
+	* src/file-io.cc (return_valid_file, fopen_file_for_user,
+	fgets_internal, fseek_internal, process_printf_format, do_printf,
+	do_scanf, fread_internal, fwrite_internal, feof_internal):
+	Likewise.
+
+	* src/tc-rep.cc (TC_REP::string_value): Call error() and return 0
+	instead of crashing if not string_constant.
+
+	* src/file-io.cc (fopen_file_for_user): Take string as first arg,
+	not tree_constant.  Change callers.
+	(fgets_internal, fseek_internal): Correct check for int arg.
+	(process_scanf_format): Use isspace instead of checking directly
+	(and incorrectly) for white space characters.
+
+	* src/tree-expr.cc (tree_matrix::eval, tree_unary_expression::eval,
+	tree_binary_expression::eval, tree_colon_expression::eval,
+	tree_simple_assignment_expression::eval ): Eliminate uneccesary
+	conversions to and from Octave_object/tree_constant.
+
+Mon Aug 22 18:35:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/data.cc (Fatan2): New function.
+
+	* src/data.cc (get_dimensions): Don't call make_numeric for args.
+	Check error state after attempting to extract values.
+
+Fri Aug 19 08:28:24 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-misc.h (tree_parameter_list::tree_parameter_list)):
+	Initialize marked_for_varargs to zero.
+
+	* src/load-save.cc: Add float variants of the conversion routines.
+	(LS_DO_READ): Add swap parameter and only swap bytes if it is true.
+	(read_doubles): Pass swap to LS_DO_READ.  Handle float data.
+	(LS_DO_WRITE): Copy data to tmp buffer to avoid destroying data.
+	(do_double_format_conversion): Rename from do_float_format_conversion.
+	(do_float_format_conversion): New function to handle conversion
+	for float data.
+	(read_mat_binary_data): Use read_doules for all cases.  Handle
+	float data.
+	(too_large_for_float): New function.
+	(save_binary_data): Save data format for scalars and ranges too.
+	(read_binary_data): Read data format for scalars and ranges too.
+	(do_save, save_vars): New arg, save_as_floats.
+	(Fsave): New option, -float-binary.
+
+	* src/utils.cc (empty_arg): New function.
+	* src/f-balance.cc (Fbalance): Use it to simplify handling of
+	empty arguments.
+	* src/f-chol.cc (Fchol): Likewise.
+	* src/f-det.cc (Fdet): Likewise.
+	* src/f-eig.cc (Feig): Likewise.
+	* src/f-expm.cc (Fexpm): Likewise.
+	* src/f-fft.cc (Ffft): Likewise.
+	* src/f-hess.cc (Fhess): Likewise.
+	* src/f-ifft.cc (Fifft): Likewise.
+	* src/f-inv.cc (Finv): Likewise.
+	* src/f-log.cc (Flogm, Fsqrtm): Likewise.
+	* src/f-lu.cc (Flu): Likewise.
+	* src/f-qr.cc (Fqr): Likewise.
+	* src/f-schur.cc (Fschur): Likewise.
+	* src/f-svd.cc (Fsvd): Likewise.
+
+	* src/tc-rep.cc (tupe_as_string): Move here.
+	* src/tree-const.cc: From here.
+
+	* src/gripes.cc (gripe_invalid_conversion): New function.
+
+Thu Aug 18 21:02:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/(print_empty_matrix): New function.
+	* src/pr-output.cc (octave_print_internal): Use it to print empty
+	matrices.
+	* src/tc-rep.cc (TC_REP::print_code, TC_REP::print): Rely on
+	octave_print_internal() to handle printing empty matrices.
+
+	* src/pr-output.cc (octave_print_internal (all variants)):
+	New arg, pr_as_read_syntax.  If nonzero, print the value in a form
+	that Octave can parse.	Declare os as ostream&, not ostrstream&.
+	* src/tc-rep.cc (TC_REP::print_code): Handle all types, not just
+	real and imaginary constants.
+	* src/help.cc (Ftype): Also print values of variables.
+
+Wed Aug 17 08:46:44 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/octave.cc (Fshell_cmd): Return output if nargout > 0 or
+	nargin > 2, otherwise, just send output to the pager.
+
+	* src/mappers.cc (xerf, xerfc, xgamma, xlgamma): New functions.
+	Put preprocessor conditionals here.
+	(install_mapper_functions): Not here.
+
+Tue Aug 16 09:55:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check for erf, erfc, and lgamma.
+	* src/mappers.cc (erf, erfc, lgamma): New mappers.
+	* src/mappers.h (Mapper_fcn): Add new field `name'.
+	* src/variables.cc (install_builtin_mapper): Save the name.
+	* src/tc-rep.cc (TC_REP::mapper): Don't crash if a mapper function
+	is missing.
+
+	* src/tc-rep-1.cc (warn_invalid_conversion): New function.
+	* src/gripes.cc (gripe_invalid_conversion): New function.
+
+	* src/parse.y (list1, parse_error): New non-terminals.
+	(list): Use them.
+	* src/lex.l: Return LEXICAL_ERROR instead of calling
+	jump_to_top_level.
+
+	* liboctave/Range.cc (matrix_value): New function.
+	* src/tc-rep.cc (TC_REP::matrix_value): Use it.
+
+	* src/tree-const.h (to_matrix, to_vector, to_scalar): Delete
+	unecessary functions.
+	* src/tc-rep.cc (TC_REP::to_matrix, TC_REP::to_vector,
+	TC_REP::to_scalar): Likewise.  Change all callers to use
+	matrix_value, vector_value, and scalar_value instead.
+
+	* src/tree-const.cc (TC_REP::matrix_value): If at all possible,
+	produce a matrix from the current constant.  Otherwise, print an
+	error message.  Don't abort or jump to the top level.
+	(TC_REP::scalar_value, TC_REP::complex_scalar_value,
+	TC_REP::vector_value, TC_REP::complex_vector_value,
+	TC_REP::complex_matrix_value): Likewise, for appropriate types.
+
+	* src/utils.cc (empty_arg): New function.
+	* src/f-svd.cc (Fsvd): Use it.	Don't call make_numeric; rely on
+	value functions to do conversion.
+
+	* src/load-save.cc (Fload): Handle -list and -verbose.
+
+Mon Aug 15 09:32:57 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-rep.cc (TC_REP): New define, so we don't have to write
+	tree_constant::tree_constant_rep:: everywhere.
+	* src/tree-const.h (class tree_constant): Nest tree_constant_rep
+	class inside tree_constant class by including tc-rep.h here.
+	* src/tc-rep.h: Don't include any other files, delete forward
+	class declarations.
+
+	* src/tc-rep.h (constant_type): Make private.
+
+	* src/parse.y (arg_list): Use tree_constant::magic_colon in
+	constructor call, not tree_constant_rep::magic_colon.
+	* src/tree-const.h (tree_constant::tree_constant
+	(tree_constant::magic_colon)): Convert arg from
+	tree_constant_rep::constant_type.
+
+	* src/f-svd.cc (Fsvd): Simplify.
+
+	* src/tree-expr.cc (any_arg_is_magic_colon): Don't use values from
+	tree_constant_rep::constant_type enum.
+	(tree_matrix::eval): Likewise.
+	* src/tree-misc.cc (tree_parameter_list::define_from_arg_vector,
+	tree_if_clause::eval):	Likewise.
+	* src/tree-cmd.cc (tree_while_command::eval,
+	tree_for_command::eval): Likewise.
+	* src/symtab.cc (symbol_record_info::symbol_record_info): Likewise.
+	* src/f-colloc.cc (Fcolloc): Likewise.
+	* src/f-npsol.cc (npsol_objective_function): Likewise.
+	* src/f-chol.cc (Fchol): Likewise.
+	* src/f-det.cc (Fdet): Likewise.
+	* src/f-eig.cc (Feig): Likewise.
+	* src/f-expm.cc (Fexpm): Likewise.
+	* src/f-fft.cc (Ffft): Likewise.
+	* src/f-find.cc (Ffind): Likewise.
+	* src/f-hess.cc (Fhess): Likewise.
+	* src/f-ifft.cc (Fifft): Likewise.
+	* src/f-inv.cc (Finv): Likewise.
+	* src/f-log.cc (Flog): Likewise.
+	* src/f-lu.cc (Flu): Likewise.
+	* src/f-minmax.cc (Fmin, Fmax): Likewise.
+	* src/f-qr.cc (Fqr): Likewise.
+	* src/f-rand.cc (rand): Likewise.
+	* src/f-schur.cc (schur): Likewise.
+	* src/f-sort.cc (Fsort): Likewise.
+	* src/f-svd.cc (Fsvd): Likewise.
+
+	* src/f-lu.cc (Flu): Handle case of nargout == 0 the same as
+	nargout == 1.
+
+	* src/tree-const.h (force_numeric): Don't return type info.
+	* src/tc-rep.cc (tree_matrix::eval): Ditto.
+	* src/tree-expr.cc (tree_matrix::eval): Don't use return value
+	from tree_constant::force_numeric().
+
+	* src/tree-const.h (is_magic_colon): New function.
+	* src/tc-rep.h (is_magic_colon): New function.
+
+	* src/load-save.cc (ascii_save_type): New function.
+	(save_binary_data, save_ascii_data, save_three_d): Don't use
+	values from tree_constant_rep::constant_type enum. Fail if write
+	is unsuccessful.  Fail but don't panic if type is unrecognized.
+	(save_vars): Check error state after call to do_save().
+
+	* src/tc-rep.cc (isstr): Delete, since we have is_string.
+	* src/tree-const.h (isstr): Ditto.
+	* src/data.cc (Fisstr): Use is_string(), not isstr().
+
+Sun Aug 14 16:12:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/load-save.cc (save_type): Add LS_U_INT, LS_CHAR and LS_FLOAT.
+	(get_save_type): Handle them.
+	(read_doubles, write_doubles): Likewise.
+
+	* src/load-save.cc (get_floating_point_format): New function.
+	(read_mat_binary_data, read_binary_file_header): Use it.
+
+	* src/lex.l: Combine {D}+\.{D}*{EXPON}?{Im} and {D}+{EXPON}?{Im}
+	patterns into the single pattern {D}+\.?{D}*{EXPON}?{Im}
+	Likewise, combine {D}+\.{D}*{EXPON}? and {D}+{EXPON}? into the
+	single pattern {D}+\.?{D}*{EXPON}?
+	({D}+/\.[\*/\\^']): New pattern to force expressions like `1./m'
+	to be parsed the same as `1 ./ m'.
+
+	* src/tree-expr.cc (do_lookup): Correctly set script_file_executed.
+
+	* src/octave.cc (long_opts): Add --silent as an alias for --quiet,
+	and --ignore-init-file as an alias for --norc.
+
+	* src/octave.cc (verbose_usage): Exit successfully to conform to
+	the GNU coding standards.
+
+Sat Aug 13 11:06:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/dirfns.cc (chdir): New alias for cd.
+
+	* src/lex.l (")"): Set convert_spaces_to_comma.
+
+	* src/*.cc: Use tree_constant::is_string(), not
+	tree_constant::is_string_type().
+
+	* src/f-balance.cc (Fbalance): Use is_string() rather than
+	checking const_type() against tree_constant_rep::string_constant.
+
+	* src/tc-rep.h (tree_constant_rep::is_string_type): Delete.
+	* src/tree-const.h (tree_constant::is_string_type): Delete.
+
+	* src/Makefile.in (%.def : %.cc): Complain if generated file is
+	empty.
+
+	* configure.in (gcc_version): Set LDFLAGS to -g, not "-g -O".
+
+	* src/lex.l (looks_like_bin_op): Also return true for things like
+	[ 1+ 2 ].
+
+	* src/data.cc (Feye, Fones): With no args, return 1.0.
+	(Fzeros): With no args, return 0.0.
+
+	* src/Makefile.in (XALL_CXXFLAGS): ALL_CXXFLAGS without
+	-fextternal-templates.
+	(%.def : %.cc): Use it instead of ALL_CXXFLAGS.
+
+	* configure.in: Don't use -O for compiling float-type.c.
+
+	* libcruft/misc/Makefile.in (XCC): Use patsubst to delete any -O#
+	flags, not just -O.
+
+Fri Aug 12 18:20:35 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	Changes for binary load/save, and reading .mat files:
+
+	* src/variables.cc (is_globally_visible): Declare extern, not
+	static.
+
+	* src/user-prefs.cc (sv_default_save_format): New function.
+	* src/user-prefs.h (default_save_format): New field in
+	user_preferences struct.
+	src/variables.cc (install_builtin_variables): Add DEFVAR for
+	default_save_format.
+
+	* src/tc-rep.h (tree_constant_rep::is_unknown,
+	tree_constant_rep::is_scalar, tree_constant_rep::is_matrix,
+	tree_constant_rep::is_complex_scalar,
+	tree_constant_rep::is_complex_matrix,
+	tree_constant_rep::is_string, tree_constant_rep::is_range):
+	New functions.
+
+	* src/tree-const.h (tree_constant::is_unknown,
+	tree_constant::is_scalar, tree_constant::is_matrix,
+	tree_constant::is_complex_scalar, tree_constant::is_complex_matrix,
+	tree_constant::is_string, tree_constant::is_range):
+	New functions.
+
+	* src/tc-rep.cc (tree_constant_rep::save,
+	tree_constant_rep::save_three_d): Move to load-save.cc and convert
+	to nonmember functions.
+
+	* src/tree-const.h (tree_constant::save,
+	tree_constant::save_three_d): Delete functions.
+
+	* src/tree-plot.cc (save_in_tmp_file): Call nonmember functions
+	save_ascii_file and save_three_d instead of tree_constant class
+	member functions.
+
+	* src/symtab.cc (symbol_table::glob): New function.
+	(symbol_table::save, symbol_record::save, symbol_def::save):
+	Delete unneeded functions.
+
+	* src/load-save.cc: New file, for load/save related functions
+	extracted from src/variables.cc and src/tc-rep.cc.
+
+	* src/error.cc (verror): Don't print name if it is null.
+
+Tue Aug  9 14:31:43 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/file-io.cc (process_printf_format): Use
+	tree_constant::is_scalar_type() and is_string_type() functions
+	instead of comparing directly with elements of the
+	tree_constant_rep::constant_type enum.
+	* src/variables.cc (builtin_real_scalar_variable): Likewise.
+	(install_loaded_variable): Likewise.
+
+	* src/tree-plot.cc (open_plot_stream): New function.
+	(send_to_plot_stream): Use it.  Do our own check for replot with
+	nothing to plot.
+	(tree_plot_command::eval): Open plot stream before doing anything.
+
+	* src/data.cc (check_dimensions): When changing negative
+	dimensions to zero, handle nr and nc separately.
+
+Mon Aug  8 20:18:17 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* variables.cc (is_valid_fcn): Use lookup_by_name() instead of
+	looking in the global symbol table directly.
+
+	* variables.cc (load_variable): Move code here.
+	* src/tc-rep.cc (tree_constant_rep::load): From here.
+	* src/tree-const.h (tree_constant::load): Delete.
+
+	* src/tree-plot.cc: Derive classes from tree_print_code and
+	implement print_code() member functions.
+
+	* src/tree-plot.cc (subplot_list::print): New function.
+	(tree_plot_command::print): Use it, and don't crash if plot_list
+	is null.
+
+	* scripts/axis.m: New function file.
+
+Sun Aug  7 17:06:16 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check for size of short, int, and long.
+
+	* float-type.c: New file.
+	* configure.in: Use it to determine the native floating point
+	format.
+	* Makefile.in: Add it to the list of files to distribute.
+	* acconfig.h (IEEE_BIG_ENDIAN, IEEE_LITTLE_ENDIAN, VAX_D_FLOAT,
+	VAX_G_FLOAT): Add #undefs.
+
+Sat Aug  6 18:23:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* config.guess: Update with new copy from gcc 2.6.0.
+
+	* src/*.cc, src/*.h, src/*.l, src/*.y: Eliminate need for tree.h.
+	* src/Makefile.in (INCLUDES): Delete it from the list.
+
+	* src/token.cc (token::token (double)): Handle saving original
+	text of constants for later use by print_code() functions.
+	(token::~token): Delete original text.
+	(token::text_rep): New function.
+	* src/lex.l: Save original text for NUM and IMAG_NUM tokens.
+	* src/parse.y: Likewise.
+
+	* src/parse.y (yyerror): Use the pager.
+
+	* src/tree-base.h (tree_print_code): New base class for trees and
+	lists of trees.
+	(tree): Derive from tree_print_code.
+	* src/tree-base.cc: New file, for tree_print_code functions, and
+	for initializing tree_print_code static members.
+	* src/tree-const.cc, src/tc-rep.cc, src/tree-plot.cc,
+	src/tree-expr.cc, src/tree-cmd.cc (all tree classes):
+	Provide print_code() member function.
+	* src/tree-misc.cc: Also derive list classes from tree-base.h and
+	provide print_code() member functions.
+
+	* src/help.cc (Ftype, Fwhich): New functions.
+
+	* src/octave-hist (do_history): Send history output through the
+	pager.
+
+	* src/variables.cc (do_who, Fwhos): New functions.
+
+	* src/tree-expr.h (tree_expression::in_parens): Declare here.
+	(tree_simple_assignment_expression::in_parens): Not here.
+	* src/parse.y (maybe_warn_assign_as_truth_value): Eliminate cast.
+
+	* src/variables.cc (load_fcn_from_file, lookup, lookup_by_name):
+	New functions, extracted from tree_identifier class.
+	(gobble_leading_whitespace, is_function_file, parse_fcn_file):
+	Move here from tree-expr.cc.
+	* src/help.cc (Fhelp): Use lookup_by_name so that looking up
+	symbols is handled in a consistent way.
+
+	* tree-expr.cc (tree_unary_expression::oper,
+	tree_binary_expression::oper, tree_prefix_expression::oper,
+	tree_postfix_expression::oper): New functions.
+
+	* tc-rep.cc (valid_scalar_indices): Define here.
+	* tc-inlines.cc: Not here.
+
+	* src/tree-const.h (tree_constant::stash_original_text): New
+	function.
+	* src/tc-rep.cc (tree_constant_rep::stash_original_text): Ditto.
+	(undo_string_escapes): Ditto.
+
+	* src/tc-rep (tree_constant_rep::do_matrix_index): Don't just
+	return *this.
+	* src/tree-const.h (tree_constant::tree_constant (tree_constant_re&)):
+	Delete.
+
+	* src/pager.cc (open_diary_file, close_diary_file,
+	maybe_write_to_diary_file, Fdiary): New functions.
+	(flush_output_to_pager): Call maybe_write_to_diary_file before
+	sending output to the screen.
+	* src/input.cc (octave_gets): Call maybe_write_to_diary file to
+	save the prompt and the user input.
+	* src/error.cc (verror): Use C++ streams, not C I/O functions.
+	Call maybe_write_to_diary file to save error messges too.
+	* src/octave.cc (clean_up_and_exit): Close diary file here.
+
+	* src/octave.cc (main): Initialize pager first.
+
+	* src/input.cc (get_user_input): Return empty matrix for no input.
+
+	* src/tree-plot.cc: Include readline/tilde.h instead of declaring
+	tilde_expand() directly.
+	* src/utils.cc: Likewise.
+
+	* src/tree-plot.cc (tree_plot_command::print_code): New function.
+	* src/tree-const.h (tree_constant::print_code): Likewise.
+
+	* src/tree-expr.h (tree_simple_assignment_expression::ans_ass):
+	New data member to flag assignments to ans.
+	* src/tree-expr.cc (tree_identifier::eval): Set it when
+	constructing assignments to ans.
+	* src/parse.y (maybe_convert_to_ans_assign): Likewise.
+
+	* src/tree-expr.h (tree_simple_assignment_expression::preserve):
+	New data member to allow preserving left hand side args that
+	shouldn't be deleted in some cases (ugh).
+	* src/tree-expr.cc (tree_multi_assignment_expression::eval):
+	Create assignment with preserve flag set.
+
+Wed Aug  3 14:27:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	Yet another massive reorganization of sources, once again
+	hopefully for the better.  A fair amount of work is not detailed
+	here, but these are the major points.  The grammar file and the
+	derivation of the tree classes are somewhat cleaner now.
+
+	* src/parse.y: Cope with changes to derivation scheme.
+
+	* src/tree-misc.cc: New file.
+	(tree_statement, tree_global): New classes.
+	(tree_global_init_list): New class, derived from SLList for the
+	list of expressions in a global command.
+	* src/tree-cmd.cc (tree_global_command): Use tree_global_init_list.
+
+	* src/tree-misc.cc (tree_argument_list): Move here from
+	tree-expr.cc, and derive from SLList instead of tree.
+	(tree_parameter_list): Likewise.
+	(tree_return_list): Likewise.
+
+	* src/tree-cmd.cc (tree_command_list): Delete class.
+	* src/tree-misc.cc (tree_statement_list): New class for keeping a
+	list of commands or expressions to evaluate.  Derive from SLList,
+	not tree.
+
+	* src/tree-plot.cc (subplot_list, plot_limits, plot_range,
+	subplot_using, subplot_style): Rename from tree_*, and
+	don't derive from tree class.
+
+	* src/tree-plot.cc: Eliminate eval member function for classes not
+	derived from tree class.
+
+	* src/tree-plot.cc, src/tree-cmd.cc: For classes derived from
+	tree-command, the eval() member function is now void eval (void).
+
+	* src/tree-base.h (tree::tree): New constructor, to initialize the
+	line and column info.  For all classes that are derived from the
+	tree class, use it instead of manipulating the data directly.
+	(line_num, column_num): Make private.
+
+	* src/tree-expr.cc (tree_simple_assignment_expression::preserve):
+	New data member, set in constructors and used by the destructor
+	when the left-hand side of the expression should not be deleted
+	(as for some temporary assignments not constructed in the parser).
+
+	* src/tree-expr.h (tree_expression::type) Rename and move here from
+	tree-base.h.  Change all uses.
+	(tree_matrix::dir): Likewise.  Change all uses.
+
+	* src/utils.cc (make_argv): Stash function name in argv[0].
+
+	* src/octave.cc (global_command): Declare as tree_statement_list,
+	not tree.
+
+	* src/parse.y (make_binary_op, make_unary_op, make_prefix_op,
+	make_postfix_op): New functions.
+
+	* src/parse.y (GLOBAL): Make it a tok_val type.
+	* src/lex.l (is_keyword): Give GLOBAL a value.
+
+Mon Aug  1 22:37:22 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.l (grab_help_text): Unput the last character read.
+
+Sun Jul 31 21:17:07 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/pr-output.cc (set_format (double, int&)): Avoid calling
+	log10 for Inf and NaN.
+
+Fri Jul 29 16:08:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/octave.cc (reading_startup_message_printed): New flag.
+	(parse_and_execute): New arg, verbose.  If true, print name of
+	file as it is read.
+	(execute_startup_files): Don't print message if
+	inhibit_startup_message is true.
+	(main): Move startup message before reading init files.
+
+Thu Jul 28 00:25:42 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Makefile.in (MATRIX_INC): Delete CmplxColVec.h from list.
+
+	* src/symtab.cc (symbol_table::rename): New function.
+	* src/parse.y (func_def2): Use it instead of tree_identifier::rename.
+	* src/tree-expr.cc (tree_identifier::rename): Delete unused function.
+
+	* src/tree-expr.cc (tree_identifier::load_fcn_from_file): New function.
+	(tree_identifier::do_lookup): Use it instead of parse_fcn_file.
+	* src/variables.cc (is_valid_function): Ditto.
+	* src/help.cc (Fhelp): Ditto.
+
+	* src/utils.cc (oct_file_in_path): New function.
+
+Wed Jul 27 08:59:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-expr.cc (tree_identifier::parse_fcn_file): Combine
+	three functions into one.
+
+	* src/utils.cc: Delete uneeded declaration of ioctl().
+	* src/sysdep.cc: Likewise.
+
+	* install.sh: New file, from autoconf distribution.
+	* Makefile.in (DISTFILES): Distribute it.
+
+Tue Jul 26 16:08:58 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/Makefile.in (DISTDIRS): New variable, for directories
+	below scripts to distribute.
+	(dist): Handle distributing whole directories named by $(DISTDIRS).
+	(local-dist): Ditto.
+
+Mon Jul 25 12:57:09 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/CmplxQRP.cc: Provide declaration for zungqr.
+	* liboctave/dbleQRP.cc: Provide declaration for dorgqr.
+
+	* src/Makefile.in (dist): Also remove y.output and defaults.h.
+	(local-dist): Ditto.
+	(realclean): Ditto.
+
+	* src/oct-obj.h (Octave_object::Octave_object (int)): Make
+	private, to avoid problems with different meanings of
+	Octave_object (int) and Octave_object (double) constructors.
+
+	* scripts/amr-image: New files for image processing from Tony
+	Richardson.  These are not in the default octave LOADPATH yet.
+	See the README file in the amr-image directory for more info on
+	how to use them.
+
+	* src/octave.cc (Fshell_cmd): Restore accidentally deleted
+	function.
+
+	* scripts/conv-amr.m, scripts/deconv-amr.m, scripts/roots-amr.m,
+	scripts/poly-amr.m, scripts/roots-tuwien.m, scripts/conv-tuwien.m,
+	scripts/deconv-tuwien.m, scripts/poly-tuwien.m:
+	New files.
+	FIXME -- For each of these functions, either one of the
+	versions will need to be selected, or they will need to be merged
+	before the next release.
+
+	* scripts/null.m, scripts/orth.m, scripts/fft2.m, scripts/ifft2.m,
+	scripts/filter.m, scripts/compan.m, scripts/polyderiv.m,
+	scripts/polyinteg.m, scripts/polyreduce.m, scripts/polyval.m,
+	scripts/polyvalm.m, scripts/postpad.m, scripts/prepad.m,
+	scripts/residue.m, scripts/sinc.m, scripts/freqz.m,
+	scripts/complement.m, scripts/intersection.m,
+	scripts/create_set.m, scripts/union.m:
+	New files.
+
+	* scripts/hilb.m: Eliminate inner loop, for speed.  From
+	romolo@URSAMAJOR.ENG.UNIPR.IT (Romolo Manfredini).
+
+Sun Jul 24 22:08:48 1994  Castor Fu (castor@drizzle.stanford.edu)
+
+	* libcruft/ranlib/genf.f (genf): Use 1.2E-38 instead of 1.0E-38
+	when checking to see if generated numbers will cause overflow.
+	This helps DEC's f77 compiler on the Alpha, which refuses to
+	generate denormalized constants.
+	* libcruft/ranlib/gennf.f (gennf): Likewise.
+
+Fri Jul 22 10:27:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Makefile.in (DEF_FILES): Depend on defun header files too.
+
+Thu Jul 21 14:40:30 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/NLFunc.h (nonlinear_fcn): Declare as pointer to
+	function taking const ColumnVector arg.
+	(jacobian_fcn): Ditto.
+
+	* src/defun-int.h (DEFINE_ARGV): Declare and define save_argc and
+	save_argv for functions that mess with argc and argv directly.
+	(DELETE_ARGV): Use save_argc and save_argv instead of argc and argv.
+
+	* src/f-lsode.cc (ODE_OPTIONS): Add const qualifier for string elts.
+	(print_lsode_option_list): Declare keyword as const char *.
+	* src/f-npsol.cc, src/f-qpsol.cc, src/f-dassl.cc, src/f-quad.cc:
+	Likewise, for corresponding structs and functions.
+
+	* liboctave/dbleSVD.h (SVD::type): New enum, for choosing type of
+	factorization.
+	* liboctave/CmplxSVD.cc (SVD::SVD): Add new optional arg for type.
+	(init): Handle case of type == SVD::economy.
+	* liboctave/dbleSVD.cc: Likewise.
+
+	QR changes from R. Bruce Tenison (btenison@eng.auburn.edu) adapted
+	for new way of defining builtin functions:
+
+	* doc/linalg.texi:  Changed QR description to include QRP
+	factorization
+
+	* src/f-qr.cc (Fqr): Handle permuted and economy QR
+	factorizations.  Handle case of 1 output arg.
+
+	* liboctave/Makefile.in (MATRIX_INC, MATRIX_SRC): Add new QRP files.
+
+	* liboctave/dbleQRP.h, liboctave/dbleQRP.cc, liboctave/CmplxQRP.h,
+	liboctave/CmplxQRP.h: New files, for QR with pivoting.
+
+	* liboctave/dbleQR.h (QR::type): New enum, for choosing type of
+	factorization.
+	* liboctave/CmplxQR.cc (QR): Add new optional arg for type.
+	Handle case of type == SVD::economy and SVD::raw.
+	* liboctave/dbleQR.cc (QR): Likewise.
+
+	* libcruft/lapack/dgeqpf.f: New file.
+	* libcruft/lapack/zgeqpf.f: Ditto.
+
+Wed Jul 20 13:12:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/*.cc, liboctave/*.h: Various cleanups to remove use of
+	NULL.  Only mention default argument values in function
+	declarations, not in their definitions (required for gcc 2.6.x).
+
+	* configure.in: If configuring for alpha-dec-osf, check for sgtty
+	first. If not found, go ahead and check for Posix terminal driver.
+
+Tue Jul 19 09:25:45 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/mx-defs.h (FILE): Don't declare as struct FILE just to
+	avoid including stdio.h.
+	* liboctave/dMatrix.cc: Do include stdio.h here.
+
+	* liboctave matrix classes: Declare operator>> correctly, and
+	return istream object.  Get friend stuff right.
+
+	* liboctave/DAE.cc (DAE::integrate): To see if the user provided a
+	Jacobian function, call DAEFunc::jacobian_function ().
+
+	* liboctave/DAE.cc (user_fun, user_jac): Qualify with class name.
+	* liboctave/ODE.cc (user_fun, user_jac): Ditto.
+
+	* liboctave/DAFunc.h (DAEJac): Declare inside class.
+	(DAERHSFunc, DAEJacFunc): Define types inside class.
+	* liboctave/ODEFunc.h (ODERHSFunc, ODEJacFunc) Likewise.
+
+	Massive reorganization of sources, hopefully for the better.
+	A fair amount of work is not detailed here, but these are the
+	major points...
+
+	* src/symtab.h (symbol_def::TYPE) Add new elements for recording
+	whether a symbol is a text function or mapper function.
+	* src/symtab.cc (symbol_def::is_text_function,
+	symbol_record::is_text_function, symbol_def::is_mapper_function,
+	symbol_record::is_mapper_function): New functions.
+	Modify existing is_* functions to cope with these changes.
+	(symbol_def::symbol_def (tree_builtin*, unsigned)): New 2nd arg.
+	(symbol_def::symbol_def (tree_function*, unsigned)): Ditto
+	(symbol_def::define (tree_builtin*, unsigned)): Ditto.
+	(symbol_def::define (tree_function*, unsigned)): Ditto.
+	* src/variables.cc (is_text_function_name): Use the new symbol
+	table functions, since we can no longer tell by looking in a
+	simple list.
+
+	* tree-expr.cc (class tree_builtin): Text functions are no longer
+	handled as a special case here.
+
+	* src/sysdep.cc (octave_ieee_init): Special case Alpha for
+	initializing Inf and NaN.
+
+	* src/tc-rep.cc: Use const in more places.
+
+	* src/data.cc src/timefns.cc, src/dirfns.cc, src/dirfns.h: New
+	files.
+
+	* src/*.cc, src/*.y, src/*.l, src/*.h: Various cleanups to remove
+	use of NULL.  Only mention default argument values in function
+	declarations, not in their definitions (required for gcc 2.6.x).
+
+	* src/g-builtins.cc, src/g-builtins.h, src/t-builtins.cc
+	src/t-builtins.h: Removed.  Functions moved to various other
+	files, where they more logically belong.
+	* src/utils.cc:  Likewise, various functions moved to other files,
+	where they more logically belong.
+	* src/mappers.cc (install_mapper_functions): Declare all mapper
+	functions here with the new DEFUN_MAPPER() macro.
+	* src/variables.cc (install_builtin_variables): Declare all
+	builtin variables here, with the new DEFVAR() macro.
+
+	* src/f-*.h: Deleted.
+	* src/f-*.cc: Delete #ifdef WITH_DLD code and use DEFUN_DLD()
+	instead to declare builtin functions that will be dynamically
+	loaded.  Give all functions a uniform return type and argument
+	list.
+
+	* src/mkdefs, src/mkbuiltins: New scripts.
+	* src/Makefile.in: Use them to generate builtins.cc automatically
+	from source files that use DEFUN.
+
+	* src/defun.h, src/defun-dld.h, src/defun-int.h: New files, to
+	define DEFUN() and DEFVAR() macros to make it possible to define
+	functions together with their help strings in one place.  The code
+	to install functions in the symbol table is now generated by
+	mkbuiltins.
+
+	* configure.in (LIBOCTDLD): New variable to define.
+	Only call AC_VERBOSE() for DYNAMIC_LD_OBJ, DLD_DIR, LIBDLD,
+	LIBOCTDLD, and LD_STATIC_FLAG if they are set.
+	* move-if-change: Move here, from src/move-if-change.
+	* Makeconf.in (%.d: %.cc): Echo simple message instead of the
+	commands actually executed.
+	(%.d: %.c): Likewise.
+
+	* src/unwind-prot.h: Include stddef.h, for size_t.
+
+Tue Jul 12 12:51:25 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/f-eval.cc, src/f-fill.cc, src/f-find.cc, src/f-input.cc,
+	src/f-minmax.cc, src/f-log.cc, src/f-sort.cc, src/f-eval.h,
+	src/f-fill.h, src/f-find.h, src/f-input.h, src/f-log.h,
+	src/f-minmax.h, src/f-sort.h: New files, for functions extracted
+	from tree-const.cc.
+	* src/Makefile.in: Add them to the list of INCLUDES, SOURCES, and
+	OBJECTS.
+
+	* src/f-*.cc: Clean up things a bit by letting the compiler
+	generate the tree_constant constructor calls.
+
+	* src/unwind-prot.h: Include stddef.h, for size_t.
+
+	* src/oct-obj.h (Octave_object (int, const tree_constant&)):
+	New constructor form.
+	* src/tree-const.cc (find_nonzero_elem_idx): Rewrite to handle 2
+	and 3 return values.
+
+	* src/g-builtins.cc (builtin_find): Check nargout too.
+	* src/builtins.cc (general_functions): Fix help message for find.
+
+Mon Jul 11 13:36:15 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-rep.cc	(tree_constant_rep::convert_to_row_or_column_vector):
+	If already have a row or column vector, return without doing
+	anything.
+
+Sat Jul  9 01:02:51 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/oct-obj.h (Octave_object): Make it a class, not just a
+	typedef.
+
+	* src/tree-expr.h (tree_function::curr_va_arg_number): Rename from
+	curr_arg_number.
+	(tree_function::varargs_ok): Delete unused member variable.
+	* src/tree-expr.cc (tree_function::octave_va_arg): Increment
+	cur_va_arg_number before indexing args_passed.
+	(tree_function::octave_va_start): Set curr_va_arg_number to
+	num_args_passed, not num_args_passed + 1.
+	(tree_function::takes_varargs): Call param_list::takes_varargs,
+	don't just return varargs_ok.
+	(tree_function::define_param_list): If param_list is not NULL, set
+	num_named_args and curr_va_arg_number even if function doesn't
+	take varargs.
+
+	* src/tree-expr.cc (tree_identifier::eval (int)): Only pass empty
+	arg list if evaluating a constant.
+	(tree_function::eval (int)): Always pass least one arg.
+
+	* Makeconf.in (TMP_IF_1): Add `-I../src'.
+	(TMP_IF_2): Add `-I$(TOPDIR)/src' and `-I$(top_srcdir)/src'.
+
+	* src/t-builtins.h, src/variables.h, src/file-io.h, src/f-syl.h,
+	src/f-svd.h, src/f-schur.h, src/f-rand.h, src/f-qzval.h,
+	src/f-quad.h, src/f-qpsol.h, src/f-npsol.h, src/f-lsode.h,
+	src/f-lpsolve.h, src/f-hess.h, src/f-givens.h, src/f-fsqp.h,
+	src/f-fsolve.h, src/f-eig.h, src/f-dassl.h, src/f-colloc.h,
+	src/f-balance.h, src/dynamic-ld.h, src/builtins.cc,
+	src/tree-const.cc, src/file-io.cc, src/f-syl.cc, src/f-svd.cc,
+	src/f-schur.cc, src/f-rand.cc, src/f-qzval.cc, src/f-qr.cc,
+	src/f-qpsol.cc, src/f-lu.cc, src/f-lpsolve.cc, src/f-inv.cc,
+	src/f-ifft.cc, src/f-hess.cc, src/f-givens.cc, src/f-fsqp.cc,
+	src/f-fft.cc, src/f-expm.cc, src/f-eig.cc, src/f-det.cc,
+	src/f-colloc.cc, src/f-chol.cc, src/f-balance.cc,
+	src/dynamic-ld.cc, src/f-dassl.cc, src/f-fsolve.cc,
+	src/f-lsode.cc, src/f-npsol.cc, src/f-quad.cc, src/tree-expr.h,
+	src/tc-rep.cc, src/tc-inlines.cc, src/tc-rep.h, src/tree-const.h,
+	src/g-builtins.cc, src/g-builtins.h, src/tree-expr.cc,
+	src/variables.cc: Delete nargin in favor of using args.length().
+
+	* configure.in: Check for struct exception in math.h.
+	* src/sysdep.cc (matherr): New function.
+
+Fri Jul  8 15:31:53 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-rep.cc: Include arith-ops.h.
+	(tree_constant_rep::do_scalar_index): Use `invalid', not `illegal'
+	in messages.
+
+	* src/oct-obj.h: Protect contents from multiple inclusion.
+
+	* src/tree-const.h, src/tree-expr.h: Don't include Array.h.
+
+	* src/parse.y (param_list): Allow ELLIPSIS by itself.
+	* src/tree-expr.cc (tree_identifier::mark_varargs_only,
+	tree_identifier::vararg_only): New functions.
+	(tree_function::eval): Only call define_from_arg_vector if
+	param_list is non-null and not marked as varargs_only.
+
+	* src/f-balance.h, src/f-chol.h, src/f-colloc.h, src/f-dassl.h,
+	src/f-eig.h, src/f-fsolve.h, src/f-fsqp.h, src/f-givens.h,
+	src/f-hess.h, src/f-lpsolve.h, src/f-lsode.h, src/f-lu.h,
+	src/f-npsol.h, src/f-qpsol.h, src/f-qr.h, src/f-quad.h,
+	src/f-qzval.h, src/f-rand.h, src/f-schur.h, src/f-svd.h,
+	src/f-syl.h: Include oct-obj.h, not tree-const.h to get
+	declaration of Octave_object.
+
+	* src/f-givens.cc (givens): Handle case of nargout == 0.
+	Use `invalid', not `illegal' in messages.
+	* src/f-balance.cc (balance): Likewise.
+
+	* src/f-balance.cc (balance): Print warning about two output
+	arguments for complex-valued case too.
+
+	* src/tc-rep.cc: Include arith-ops.h.
+
+Thu Jul  7 20:54:12 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/parse.y (identifier): Add missing semicolon.
+	(param_list): Ditto.
+
+	* src/f-svd.cc (svd): Handle nargout == 0 the same as nargout == 1.
+	* src/f-schur.cc (schur): Likewise.
+	* src/f-hess.cc (hess): Likewise.
+	* src/f-eig.cc (eig): Likewise.
+	* src/f-syl.cc (syl): Likewise.
+	* src/f-qzval.cc (qzvalue): Likewise.
+	* src/f-npsol.cc (npsol): Likewise.
+	* src/f-qpsol.cc (qpsol): Likewise.
+	* src/f-givens.cc (givens): Likewise.
+	* src/f-fsolve.cc (fsolve): Likewise.
+	* src/f-balance.cc (balance): Likewise.
+	* src/file-io.cc (process_scanf_format): Likewise.
+	* src/g-builtins.cc (builtin_balance, builtin_chol, builtin_dassl,
+	builtin_eig, builtin_fsolve, builtin_fsqp, builtin_lsode,
+	builtin_max, builtin_min, builtin_npsol, builtin_qpsol,
+	builtin_quad, builtin_rand, builtin_size, builtin_sort,
+	builtin_svd, builtin_schur, builtin_syl, builtin_givens,
+	builtin_hess): Likewise.
+	* src/tree-const.cc (vector_of_empties, column_max, column_min):
+	Likewise.
+
+	* src/variables.h, src/symtab.h: Include builtins.h for typedefs.
+
+	* src/tree-expr.cc(tree_multi_assignment_expression::eval): Rework
+	handling of undefined values returned from functions.
+
+	* src/tree-expr.cc (tree_identifier::is_defined): New function.
+	(tree_parameter_list::is_defined): New function.
+	(tree_parameter_list::convert_to_const_vector): Use it to avoid
+	evaluating undefined objects.
+
+	* src/f-balance.cc, src/f-eig.h, src/f-hess.cc, src/f-lu.h,
+	src/f-rand.cc, src/f-balance.h, src/f-expm.cc, src/f-hess.h,
+	src/f-npsol.cc, src/f-rand.h, src/f-chol.cc, src/f-expm.h,
+	src/f-ifft.cc, src/f-npsol.h, src/f-schur.cc, src/f-chol.h,
+	src/f-fft.cc, src/f-ifft.h, src/f-qpsol.cc, src/f-schur.h,
+	src/f-colloc.cc, src/f-fft.h, src/f-inv.cc, src/f-qpsol.h,
+	src/f-svd.cc, src/f-colloc.h, src/f-fsolve.cc, src/f-inv.h,
+	src/f-qr.cc, src/f-svd.h, src/f-dassl.cc, src/f-fsolve.h,
+	src/f-lpsolve.cc, src/f-qr.h, src/f-syl.cc, src/f-dassl.h,
+	src/f-fsqp.cc, src/f-lpsolve.h, src/f-quad.cc, src/f-syl.h,
+	src/f-det.cc, src/f-fsqp.h, src/f-lsode.cc, src/f-quad.h,
+	src/f-det.h, src/f-givens.cc, src/f-lsode.h, src/f-qzval.cc,
+	src/f-eig.cc, src/f-givens.h, src/f-lu.cc, src/f-qzval.h,
+	src/dynamic-ld.cc, src/dynamic-ld.h, src/file-io.cc,
+	src/file-io.h, src/t-biultins.cc, src/t-builtins.h,
+	src/tree-expr.cc, src/tree-expr.h, src/tree-const.cc,
+	src/tree-const.h, src/tc-inlines.cc, src/tc-rep.cc, src/tc-rep.h,
+	src/g-builtins.cc, src/g-builtins.h:
+	Cope with inital round of Octave_object changes.
+
+	* src/oct-obj.h: New file for Octave_object typedef.
+	* src/dynamic-ld.h, src/file-io.h, src/tree-const.h,
+	src/tree-expr.h: Include it.
+	* src/Makefile.in (INCLUDES): Add it to the list.
+
+Wed Jul  6 09:28:28 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libocsrc/tree-const.h:
+
+	* src/parse.y (maybe_convert_to_ans_assign,
+	maybe_warn_assign_as_truth_value): Pass tree_expression*, not tree*.
+	(ans_expression, expression, simple_expr, simple_expr1, title):
+	Declare as tree_expression_type, not tree_type.
+	(opt_list): Add missing semicolon.
+
+	* src/tc-rep.h, src/tc-rep.cc: New files, extracted from
+	tree-const.h and tree-const.cc, for the tree_constant_rep class.
+	Leave most friend functions behind, in tree-const.h.
+	Don't declare do_binary_op or do_unary_op as friends.
+
+	* src/lex.l: Include tree-plot.h and tree-const.h.
+
+	* src/variables.cc (takes_correct_nargs): Pass tree_fvc* not tree*.
+	* src/variables.cc (is_valid_function): Return tree_fvc* not tree*.
+	Change all callers.
+
+	* src/symtab.h, symtab.cc: Change declaration of symbol definition to
+	be tree_fvc* instead of tree*.  Change all callers.
+
+	* src/f-dassl.cc (dassl_fcn): Declare as tree_fvc*, not tree*.
+	* src/f-quad.cc (quad_fcn): Likewise.
+	* src/f-lsode.cc (lsode_fcn): Likewise.
+	* src/f-fsolve.cc (fsolve_fcn): Likewise.
+	* src/f-npsol.cc (npsol_fcn, npsol_constraints): Likewise.
+
+	* src/tree-plot.cc: All operations are now on tree_expression types,
+	not tree types.
+
+	* src/tree-expr.h (tree_matrix): Derive from tree_expression, not tree.
+
+	* src/tree-expr.h (tree_builtin, tree_function, tree_identifier):
+	Derive from tree_fvc, not tree.
+	* src/tree-const.h (class tree_constant): Likewise.
+
+	* src/tree-expr.h (is_identifier, is_index_expression,
+	is_assignment_expression, is_prefix_expression,
+	mark_for_possible_ans_assign, eval (with args)): Declare in
+	tree_expression class, not tree class.
+
+	* src/tree-expr.h (tree_fvc): New class, derived from
+	tree_expression, to provide a connection between functions,
+	variables, and constants.
+	(is_constant, assign, name, bump_value, max_expected_args,
+	fcn_file_name, time_parsed, is_system_fcn_file, save): Declare
+	in tree_fvc class, not in tree class.
+
+	* src/tree.h: Simply include tree-expr.h and tree-cmd.h.
+	* src/tree-expr.h, tree-expr.cc: New files, extracted from tree.h
+	and tree.cc for classes derived from tree_expression, plus some
+	helper classes.
+	* src/tree-cmd.h, tree-cmd.cc: Likewise, for classes derived from
+	tree_command.
+
+	* src/tree.cc (eval (int, int)): Merge with eval (int,
+	tree_constant*, int, int) by rearranging order of args and using
+	default arg values.  Change all callers.
+
+Tue Jul  5 14:33:33 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/Makefile.in (refcard.dvi): Run TeX on $(srcdir)/refcard.tex,
+	not just refcard.tex.
+	(refcard-local.tex): Likewise, for the local version.
+
+	* src/tree-const.cc (tree_constant_rep::do_index): Check for empty
+	matrix here.
+	(tree_constant_rep::do_vector_index) Not here.
+
+Thu Jun 30 09:41:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc (builtin_shell_command): Only take one
+	argument and return [status, output].
+	* src/procstream.cc (procstreambase::close): Return process exit
+	status.
+
+	* src/tree.cc (tree_builtin::eval (int)): Handle new style of
+	calling text functions.
+	(tree_builtin::eval (int, int): Likewise.
+	(tree_builtin::eval (tree_constant*, int, int, int): Likewise.
+	(tree_identifier::eval (tree_constant*, int, int, int)): Don't
+	count the output arguments that we create automatically (ans) when
+	figuring nargout.
+	(tree_identifier::eval (int)): Likewise.
+
+	* src/tree-const.cc: Delete text-style eval() functions.
+	* src/tree.cc: Ditto.
+
+	* src/tree-const.h: Change typedef of Text_fcn to return a pointer
+	to a tree_constant, and to include the number of output arguments
+	in the parameter list.
+	* src/t-builtins.h: Change declarations of all builtin text-style
+	functions to match.
+	* src/t-builtins.cc: Change definitions too.
+
+	* src/parse.y (word_list): Build an argument_list, not a word_list.
+	(word_list_command): Create an index_expression, not a
+	word_list_command.
+	* src/tree.cc (tree_word_list): Delete unneeded class.
+	(tree_word_list_command): Likewise.
+
+	* src/tc-extras.cc (get_dimensions): For one-arg version, expect
+	2-element vector or scalar specifying dimensions.  Don't simply
+	use the dimensions of a matrix arg.
+
+Wed Jun 29 09:52:15 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/f-det.cc (determinant): Return 0 if matrix is singular to
+	machine precision.
+
+	* liboctave/dMatrix.cc (Matrix::inverse): Declare rcond as
+	volatile to prevent optimization of the expression
+	`rcond + 1.0 == 1.0'.
+	(Matrix::determinant): Ditto.
+	(Matrix::solve): Ditto.
+	* liboctave/CMatrix.cc (ComplexMatrix::inverse): Ditto.
+	(ComplexMatrix::determinant): Ditto.
+	(ComplexMatrix::solve): Ditto.
+
+Tue Jun 28 10:53:31 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc (default_info_file): Add directory separator when
+	appending "octave.info".
+
+	* src/tree-plot.cc (plot_line_count): Make global.
+	* src/utils.cc (send_to_plot_stream): If the plot stream is not
+	open, set plot_line_count to zero.
+	(close_plot_stream): Likewise, set it to zero when closing the
+	stream.
+
+	* src/parse.y (plot_command): Allow replot without args.
+
+	* src/tree-plot.cc (clear_before_plotting): New global variable.
+	(tree_plot_command::eval): Use it to handle hold on/off.
+	* src/t-builtins.cc (builtin_hold): New function.
+	* src/builtins.cc (text_functions): Add it to the list.
+
+Fri Jun 24 11:08:36 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/token.h (plot_tok_type): Add new field, replot.
+	* src/lex.l (is_keyword): Handle replot here.
+	* src/parse.y (plot_command): And here.
+	* src/g-builtins.cc (builtin_replot): Not here.
+	* src/builtins.cc (general_functions): Or here.
+
+Tue Jun 21 10:47:08 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc (builtin_kbhit): New function.
+	* src/builtins.cc (general_functions): Add it to the list.
+
+	* src/tree-const.cc (tree_constant_rep::rows (void)): For strings
+	and ranges, only return 1 if the string or range is not empty.
+
+Thu Jun  9 20:42:06 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_builtin::eval (int)): Delete ancient code that
+	eval()'d the return value.
+	(tree_builtin::eval (int, int)): Likewise.
+	(tree_builtin::eval (int, char**, int)): Likewise.
+	(tree_builtin::eval (tree_constant*, int, int, int)): Likewise.
+	(tree_function::eval (tree_constant*, int, int, int)): Likewise.
+	(tree_colon_expression::eval (int)): Likewise.
+	(tree_unary_expression::eval (int)): Likewise.
+	(tree_binary_expression::eval (int)): Likewise.
+
+Mon Jun  6 03:48:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/file-io.cc (fread_internal): Make it work.
+	(fwrite_internal): Likewise.
+	(num_items_remaining): Renamed from get_whats_left().  Don't pass
+	nr/nc as last arg, simply return the number of items of size that
+	are left to read.
+	(get_size_conv): Delete unnecessary function.
+	* liboctave/dMatrix.cc (Matrix::read): Make it work.
+	(Matrix::write): Likewise.
+	* liboctave/dMatrix.h (conversion): Delete unecessary enum.
+
+	* src/sysdep.cc: Include <math.h>.
+	(octave_ieee_init): Cast return value of infinity() and
+	quiet_nan() to double.
+
+Sun Jun  5 14:35:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makeconf.in (getversion): Get everything between the double
+	quotes, not just numbers and periods.
+
+	* src/tree-const.cc (tree_constant_rep::do_scalar_assignment): Correct
+	typo in last change.
+
+	* src/parse.y: Include tree-plot.h and tree-const.h.
+
+	* src/Makefile.in (SOURCES): Delete tc-assign.cc and tc-index.cc
+	(INCLUDES): Add tree-plot.h.
+
+	* src/tree-plot.h: New file.  Declare plotting classes here.
+	* src/tree.h: Not here.
+
+	* src/tc-index.cc, tc-assign.cc: Delete unnecessary files.
+
+	* src/tc-extras.cc: Include EIG.h
+
+	* src/tree-const.cc (tree_constant_rep::tree_constant_rep (RowVector&,
+	int)): Provide default value for int arg.
+	(tree_constant_rep::tree_constant_rep (ColumnwVector&, int)): Ditto
+	(tree_constant_rep::tree_constant_rep (ComplexRowVector&, int)): Ditto
+	(tree_constant_rep::tree_constant_rep (ComplexColumnwVector&, int)):
+	Ditto.
+	(tree_constant_rep::tree_constant_rep (RowVector&)): Delete, now
+	handled by corresponding two arg constructor.
+	(tree_constant_rep::tree_constant_rep (ColumnwVector&)): Likewise.
+	(tree_constant_rep::tree_constant_rep (ComplexRowVector&)): Likewise.
+	(tree_constant_rep::tree_constant_rep (ComplexColumnwVector&)):
+	Likewise.
+
+	* src/tree-const.cc: Add pragma implementation.  Merge in contents of
+	tc-index.cc and tc-assign.cc so that the pragma interface/pragma
+	implementation hack will do some good.
+	* src/tree-const.h: Include mx-base.h, not Matrix.h.  Add pragma
+	interface.  Delete unnecessary constructor declarations.
+
+	* src/unwind-prot.h, src/unwind-prot.cc (unwind_elem_tag): Rename
+	from _tag.
+	(unwind_elem_fptr): Rename from _fptr.
+	(unwind_elem_ptr): Rename from _ptr.
+
+	* NLConst.cc (NLConst::NLConst): Pass vector args by reference.
+
+	* src/procstream.h, src/procstream.cc, src/idx-vector.h,
+	src/idx-vector.cc, src/token.h, src/token.cc, src/unwind-prot.h,
+	src/unwind-prot.cc, src/symtab.h, src/symtab.cc, src/tree.h,
+	src/tree.cc, liboctave/Range.h, liboctave/Range.cc,
+	liboctave/QLD.h, liboctave/QLD.cc, liboctave/ODE.h,
+	liboctave/ODE.cc, liboctave/Quad.h, liboctave/Quad.cc,
+	liboctave/Objective.h, liboctave/Objective.cc, liboctave/NPSOL.h,
+	liboctave/NPSOl.cc, liboctave/NLFunc.h, liboctave/NLFunc.cc,
+	liboctave/Bounds.h, liboctave/Bounds.cc, liboctave/QP.h,
+	liboctave/QP.cc, liboctave/NLConst.cc, liboctave/LinConst.cc,
+	liboctave/LPsolve.cc, liboctave/LP.cc, liboctave/FSQP.cc,
+	liboctave/FEGrid.cc, liboctave/QPSOL.cc, liboctave/CollocWt.cc,
+	liboctave/DAEFunc.cc, liboctave/DAEFunc.h, liboctave/DAE.cc,
+	liboctave/NLEqn.cc, liboctave/ODEFunc.cc, liboctave/QPSOL.h,
+	liboctave/ODEFunc.h, liboctave/NLP.h, liboctave/NLEqn.h,
+	liboctave/NLConst.h, liboctave/LinConst.h, liboctave/LPsolve.h,
+	liboctave/LP.h, liboctave/FSQP.h, liboctave/FEGrid.h,
+	liboctave/DAE.h, liboctave/CollocWt.h:
+	Add pragma interface/implementation.
+
+	* src/f-svd.cc, src/f-schur.cc, src/f-qr.cc, src/f-lu.cc,
+	src/f-hess.cc, src/f-det.cc, src/f-chol.cc, src/f-qzval.cc,
+	src/f-inv.cc, src/f-ifft.cc, src/f-givens.cc, src/f-fft.cc,
+	src/f-balance.cc, src/f-expm.cc, src/f-fsqp.cc, src/f-syl.cc,
+	src/xdiv.cc, src/xpow.cc, src/idx-vector.cc, src/pr-output.cc,
+	src/unwind-prot.cc, src/file-io.cc, liboctave/Bounds.h,
+	liboctave/CollocWt.h, liboctave/DAE.h, liboctave/EIG.h,
+	liboctave/FEGrid.h, liboctave/LP.h, liboctave/LPsolve.cc,
+	liboctave/LinConst.h, liboctave/NLEqn.cc, liboctave/NLEqn.h,
+	liboctave/NLP.h, liboctave/NPSOL.cc, liboctave/NPSOL.h,
+	liboctave/ODE.h, liboctave/Objective.h, liboctave/QLD.cc,
+	liboctave/QP.h, liboctave/QPSOL.h, liboctave/Quad.h:
+	Instead of including Matrix.h, only include the individual
+	matrix/vector/etc. header files that are needed.
+
+	* liboctave/QLD.cc, liboctave/ODE.cc, liboctave/NLFunc.cc,
+	liboctave/DAEFunc.cc, liboctave/DAE.cc, liboctave/NLEqn.cc,
+	liboctave/ODEFunc.cc:
+	Use 0, not NULL.
+
+	* liboctave/mx-inlines.cc: Include Complex.h.
+
+	* liboctave/mx-kludge.h: Don't enclose contents in extern "C++".
+
+	* liboctave/Matrix.h: Simply include mx-base.h and mx-ext.h.
+
+	* liboctave/mx-base.h: New file, includes all basic matrix/vector
+	header files.
+	* liboctave/mx-ext.h: New file, includes all extra matrix/vector
+	related header files.
+	* liboctave/mx-defs.h: New file, for matrix/vector related
+	defines.  Also provides forward declarations for all matrix/vector
+	classes.
+
+	* liboctave/Makefile.in: Cope with new files.
+
+	* liboctave/CmplxAEPBAL.cc, liboctave/CmplxDET.h,
+	liboctave/CmplxQR.cc, liboctave/CmplxSVD.h, liboctave/dbleDET.cc,
+	liboctave/dbleHESS.h, liboctave/dbleSCHUR.cc,
+	liboctave/CmplxAEPBAL.h, liboctave/CmplxHESS.cc,
+	liboctave/CmplxQR.h, liboctave/dbleAEPBAL.cc, liboctave/dbleDET.h,
+	liboctave/dbleLU.cc, liboctave/dbleSCHUR.h,
+	liboctave/CmplxCHOL.cc, liboctave/CmplxHESS.h,
+	liboctave/CmplxSCHUR.cc, liboctave/dbleAEPBAL.h,
+	liboctave/dbleGEPBAL.cc, liboctave/dbleLU.h, liboctave/dbleSVD.cc,
+	liboctave/CmplxCHOL.h, liboctave/CmplxLU.cc,
+	liboctave/CmplxSCHUR.h, liboctave/dbleCHOL.cc
+	liboctave/dbleGEPBAL.h, liboctave/dbleQR.cc, liboctave/dbleSVD.h,
+	liboctave/CmplxDET.cc, liboctave/CmplxLU.h, liboctave/CmplxSVD.cc,
+	liboctave/dbleCHOL.h, liboctave/dbleHESS.cc, liboctave/dbleQR.h,
+	liboctave/EIG.h, liboctave/EIG.cc:
+	New files, extracted from Matrix-ext.cc, in an attempt to allow
+	effective use of pragma interface/implementation and make
+	generated code somewhat smaller.
+	* liboctave/dColVector.cc liboctave/CColVector.cc: Likewise, from
+	ColVector.{cc,h}.
+	* liboctave/dRowVector.cc liboctave/CRowVector.cc: Likewise, from
+	RowVector.{cc,h}.
+	* liboctave/dMatrix.cc liboctave/CMatrix.cc: Likewise, from
+	Matrix.{cc,h}.
+	* liboctave/dDiagMatrix.cc liboctave/CDiagMatrix.cc: Likewise,
+	from DiagMatrix.{cc,h}.
+
+Fri Jun  3 15:32:53 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Array.h: Include assert.h.
+	(DiagArray<T>::operator T ()): [! _AIX] Only call get() if i is
+	also equal to j.
+
+	* scripts/rem.m: Allow mixing of scalar/matrix args, but complain
+	if both args are matrices and the dimensions don't agree.
+
+	* src/lex.l (grab_help_text): Correct previous change.
+
+Thu Jun  2 12:08:18 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.h (conversion): New enum, for binary read/write
+	functions.
+	* Matrix.cc (read, write) New functions.
+	* file-io.cc (feof_internal, ferror_internal, fread_internal,
+	fwrite_internal, get_size_conv, get_whats_left): New functions.
+	* g-builtins.cc (builtin_feof, builtin_ferror, builtin_fread,
+	builtin_fwrite): New functions.
+	* builtins.cc (general_functions): Add them to the list.
+
+	* configure.in: Check for infinity() and quiet_nan().
+	* sysdep.h (octave_Inf, octave_NaN): New global variables.
+	* sysdep.cc (octave_ieee_init): New function.  Initialize
+	octave_Inf and octave_NaN.
+	(sysdep_init): Call it.
+	* builtins.cc (initialize_builtins): Don't compute Inf and NaN
+	values here.
+
+Tue May 31 20:06:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/variables.cc (identifier_exists): Only return 1 for
+	variables if they are also defined.
+
+Sun May 29 20:40:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.l: Don't declare beginning_of_function as static.
+	(COMMENT): Delete unnecessary exclusive start state.
+	(\#, \%): Handle comments directly.  Try to be smart about not
+	returning a newline character when reading a matrix list.
+	(grab_help_text): Don't put a newline back on the input stream.
+	* src/parse.y (list1): Set beginning_of_function to zero here.
+
+Wed May 25 03:34:17 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/error.cc (error): If error_state is -2, don't do anything.
+	If the format string ends in a new line character, strip it, print
+	the error message, and set the error state to -2.
+	* src/tree.cc (tree_function::traceback_error): Don't set the
+	error_state if it is already negative.
+
+	* src/tree-const.cc (convert_to_row_or_column_vector): New function.
+	* src/idx-vector.cc (idx_vector::shorten): New function.
+	* src/tc-assign.cc (fortran_style_matrix_assignment
+	(tree_constant&, tree_constant&)): Handle deleting elements by
+	assignment of `[]'.  Use convert_to_row_or_column_vector to handle
+	conversion to a vector in the case of deleting some elements from
+	a matrix.  Use idx_vector::shorten() to remove unnecessary index
+	vector elements.
+	(do_scalar_assignment (tree_constant&, tree_constant*, int)):
+	Handle assignment of empty matrix.
+	If converting complex to real, delete old complex value.
+	(delete_rows (idx_vector&)): If deleting all rows of a column
+	vector, convert to empty matrix.
+	(delete_rows (Range&)): Ditto.
+	(delete_columns (idx_vector&)): If deleting all columns of a row
+	vector, convert to empty matrix.
+	(delete_columns (Range&)): Ditto.
+
+	* src/tc-extras.cc (column_max (tree_constant*, int, int)):
+	Use MAX, not MIN when trying to find the biggest scalar.
+	Likewise, find the complex scalar with the largest, not the
+	smallest absolute value.
+
+	* src/tc-assign.cc (do_matrix_assignment (tree_constant&,
+	tree_constant_rep::constant_type, tree_constant&): For case of
+	j_arg == matrix constant, don't negate return value of
+	indexed_assign_conforms().
+
+	* src/user-prefs.cc (commas_in_literal_matrix): New function.
+	Put functions in alphabetical order.
+	* src/user-prefs.h (commas_in_literal_matrix): New structure element.
+	Alphabetize structure elements and lists of functions.
+	* src/builtins.cc (string_variables): Add commas_in_literal_matrix
+	to the list.
+	* src/lex.l (<MATRIX>{SN}*\]{S}*): Pay attention to the value of
+	usre_pref.commas_in_literal_matrix when deciding whether to insert
+	a comma after seeing a ']' character.
+	(handle_identifier): Likewise.
+	(<MATRIX>{S}+): If commas are required, just eat the spaces.
+
+Tue May 24 19:49:51 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-assign.cc (tree_constant_rep::do_matrix_assignment
+	  (tree_constant&, tree_constant*, int)): Handle empty arguments
+	for two index values.
+	(tree_constant_rep::do_matrix_assignment
+	  (tree_constant&, tree_constant&)):
+	Likewise, for single index values.
+
+Mon May 23 01:43:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makefile.in (snapshot, snapshot-version): New targets.
+
+	* configure.in: Handle --enable-run-in-place (was easier than
+	doing the work to parse --run-in-place like Emacs uses).
+
+	* acconfig.h: Add #undef for RUN_IN_PLACE.
+
+	* Makeconf.in (OCTAVE_HOME): New macro.
+	* src/Makefile.in (defaults.h): Use it instead of ${prefix}.
+
+	* Makeconf.in (OCTAVE_INFO_DIR, OCTAVE_LIB_DIR): New macros.
+	* src/Makefile.in (defaults.h): Substitute them too.
+
+	* src/defaults.h.in (OCTAVE_INFO_DIR): New macro, used if
+	RUN_IN_PLACE is defined.
+	(OCTAVE_LIB_DIR): Likewise.
+
+	* src/utils.cc (octave_home): Handle RUN_IN_PLACE
+	(octave_info_dir): Ditto.
+	(octave_lib_dir): Ditto.
+
+	* src/tree-const.cc (tree_constant_rep::diag (void)): For empty
+	matrix, return empty matrix.
+	(tree_constant_rep::diag (tree_constant &)): Likewise, regardless
+	of value of arg.
+
+	* scripts/int2str.m: Format as integer, not float.
+	Don't add trailing new line character.
+
+Sun May 22 22:13:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/plot_int.m: When looking for imaginary arguments, check
+	if any element has an imaginary component, not if all elements
+	have imaginary components.
+
+Thu May 19 19:46:23 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/parse.y (EXPR_AND_AND, EXPR_OR_OR): New tokens, for
+	short-circuit logical AND and OR operators.
+	(simple_expression): Handle new tokens.
+	* src/lex.l (&&) [SHORT_CIRCUIT_LOGICALS]: Return EXPR_AND_AND.
+	(||) [SHORT_CIRCUIT_LOGICALS]: Return EXPR_OR_OR.
+	* src/tree.cc (tree_binary_expression::eval): Handle short-circuit
+	boolean operators.
+	(tree_binary_expression::eval_error): Print different messages for
+	or_or/or and and_and/and.
+	* src/tree-base.h (tree_expression_type): Add new structure
+	elements and_and and or_or.
+	* src/tree-const.cc (tree_constant_rep::is_true): New function.
+
+Tue May 17 17:04:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/idx-vector.cc (idx_vector::sort_uniq ()): New function.
+	* src/tc-assign.cc (tree_constant_rep::delete_rows ()): Use it.
+	(tree_constant_rep::delete_columns ()): Likewise.
+
+Mon May 16 13:31:33 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/linspace.m: Replace for loop with range operation.
+	* scripts/logspace.m: Replace for loop with element by element
+	exponentiation.
+
+Sun May  8 00:49:38 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/lqe.m: Correct comment.
+	Transpose k before returning.
+
+Fri May  6 00:47:24 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (quit_loop_now): New function.
+	(tree_while_command::eval): Use it.
+	(tree_for_command::eval): Ditto.
+
+	* src/tree.cc (tree_for_command::do_for_loop_once): New function.
+	(tree_for_command::eval): Use it.
+
+Mon May  2 19:45:39 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_for_command::eval): Handle returning,
+	breaking, and continuing for case of scalar expression in loop
+	control statement.
+
+Wed Apr 20 00:38:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.l (\[{S}*): Don't return ',' for this	match when
+	convert_spaces_to_comma is true, since that can never be the right
+	thing to do.
+
+	* All Makefile.in files: Set top_srcdir here.
+	* Makeconf.in: Not here.
+
+	* Makeconf.in: Use top_srcdir instead of root_srcdir
+
+	* configure.in: Update for autoconf-1.8.  Use AC_VERBOSE for
+	verbose messages.  Use AC_WARN and AC_ERROR instead of echo for
+	warning and error messages.  Organize feature tests a bit better.
+	Use new autoconf macros to check for C++ compiler.  Add copyright
+	notice.  Recognize --enable-dld instead of --with-dld since that
+	seems to be more in line with the intent of the --enable/--with
+	options for configure scripts.  Use new autoconf macros
+	AC_REVISION and AC_PREREQ.  Don't add -Wall to CFLAGS and CXXFLAGS
+	until after all feature tests are done.  Etc.
+
+Fri Apr 15 01:56:20 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* acconfig.h: Add #undefs for HAVE_FINITE, HAVE_ISINF, and
+	HAVE_ISNAN.
+	* configure.in: Check for floatingpoint.h.
+	* src/sysdep.cc (sysdep_init): Disable trapping on common
+	exceptions for 386BSD systems that have floatingpoint.h.
+
+	* src/utils.cc: Don't declare ioctl() with prototype.
+
+Sat Apr  9 17:48:07 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-assign.cc (tree_constant_rep::fortran_style_matrix_assignment
+	  (tree_constant&, tree_constant&)):
+	Handle case of M (X) = scalar, where X is a zero-one vector with
+	only one nonzero element.
+
+	* src/tc-assign.cc (tree_constant_rep::do_vector_assign
+	  (tree_constant&, Range&):
+	Handle case of right hand side being a scalar.
+	(tree_constant_rep::do_vector_assign (tree_constant&, idx_vector&):
+	Ditto.
+
+	* src/tc-assign.cc (tree_constant_rep::do_matrix_assignment
+	  (int,tree_constant_rep::constant_type)):
+	Allow assignment of complex scalar too.
+	(tree_constant_rep::do_matrix_assignment
+	  (tree_constant_rep::constant_type, int)):
+	Ditto.
+
+	* src/tree-const.h (REP_RHS_MATRIX): Initialize nr and nc.
+	Abort if rhs is not a real or complex matrix.
+
+Wed Apr  6 13:59:37 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Range.cc (Range::nelem_internal): Use an integer, not
+	a double, for the number of intervals.	Avoid possible problems
+	with extended precision registers on some systems (e.g. x86/Linux).
+
+Mon Mar 28 17:23:18 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc (raw_mode): For OCRNL, ONOCR, and ONLRET, check to
+	see if they are defined before using them instead of checking to
+	see if NeXT is defined.
+
+	* info/terminal.c (terminal_prep_terminal): Check to see if OCRNL
+	is defined before using it instead of checking to see if NeXT is
+	defined.
+
+Thu Mar 24 03:21:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_parameter_list::define_from_arg_vector):
+	New function.
+	(tree_parameter_list::convert_to_const_vector): Ditto.
+	(tree_function::eval): Use them instead of trying to do this
+	in-line.
+
+	* src/symtab.h (symbol_record::global_link_context): New stack for
+	saving linked_to_global flag.
+	* src/symtab.cc (symbol_record::push_context): Save
+	linked_to_global too.
+	(symbol_record::pop_context): And restore it.
+
+Wed Mar 23 16:18:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/refcard.tex.in: New file.
+	* doc/Makefile.in: Create refcard.* and refcard-local.* from
+	refcard.tex.in.
+
+Tue Mar 22 15:23:55 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.sh: exec $OCTAVE_HOME/bin/octave.bin, not just
+	octave.bin.
+
+Thu Mar 17 01:06:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/arith-ops.cc (do_binary_op (ComplexMatrix&, Matrix& b)):
+	Correctly handle element by element left division.
+
+	* src/g-builtins.cc (builtin_error): Return without calling error
+	(and setting error_state) if the message is empty.
+
+	* src/help.cc (operators): Correct help message for `.^'.
+
+	* src/tc-index.cc (tree_contant_rep::fortran_style_matrix_index):
+	Preserve vector orientation when indexing with a zero-one vector.
+
+	* src/tc-index.cc (tree_constant_rep::do_scalar_index): Handle
+	indexing a scalar with `0'.
+
+	* src/tc-index.cc (tree_constant_rep::do_scalar_index): Handle the
+	index `:' the same as the index `1'.
+
+Tue Mar 15 17:22:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Array.cc: Fix typo in comments about compiler flags.
+
+Wed Mar  9 15:08:21 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 1.0.1.
+
+	* src/*.h: Use the macro octave_FOO_h instead of _FOO_h to protect
+	against multiple inclusion.
+	* liboctave/*.h: Likewise.
+
+	* liboctave/*.h: Surround contents of files in extern "C++" { }.
+
+Tue Mar  8 18:06:54 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-index.cc (tree_constant_rep::do_vector_index (const
+	tree_constant&) const): Don't crash if matrix is empty.
+
+	* scripts/norm.m: Return empty matrix for empty argument.
+
+Mon Mar  7 23:34:44 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doinstall.sh: chmod new directories to 755.
+
+Sat Mar  5 13:15:10 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* bsd-math/log1p.c: Declare finite as returning int, not double.
+	* bsd-math/finite.c (finite): Add return type.
+
+Thu Mar  3 14:42:00 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/DiagMatrix.cc (operator *): Provide definitions for
+	DiagMatrix * DiagMatrix, ComplexDiagMatrix * ComplexDiagMatrix,
+	ComplexDiagMatrix * DiagMatrix, and DiagMatrix * ComplexDiagMatrix.
+
+	* liboctave/ColVector.cc (operator >>): Provide definitions for
+	real and complex column vectors.
+
+	* liboctave/RowVector.cc (operator >>): Provide definitions for
+	real and complex row vectors.
+
+Wed Mar  2 18:00:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Array.h (DiagArray::Proxy::operator & ()): Provide
+	function body.
+
+Tue Mar  1 13:18:35 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-const.cc (tree_constant::load (istream&)): Don't skip
+	past first type keyword if not global.
+	(tree_constant::load (istream&, tree_constant_rep::constant_type)):
+	Allocate storage for reading complex scalar.
+
+Sun Feb 20 14:17:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/menu.m: Don't fail on input that is empty or not a
+	scalar.
+
+	* Makefile.in (DISTFILES): Distribute ChangeLog.[0-9].
+
+	* src/lex.l (reset_parser): Don't resynch line number to command
+	history number if reading a script file.
+
+Thu Feb 17 01:36:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 1.0 released.
+
+	* src/file-io.cc (fopen_file_for_user): Improve error message.
+	(fopen_internal): Likewise.
+
+Wed Feb 16 02:21:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Try harder to find finite, isnan, and isinf.
+	Use m4 `dnl' comments, not shell `#' comments.
+
+	* src/file-io.cc (file_io_get_file): New function.
+	(fgets_internal): Use it instead of trying to do this in line.
+	(frewind_internal, fseek_internal, ftell_internal, do_printf,
+	do_scanf): Likewise.
+	* (do_scanf): Allow file name as string for fscanf.
+	* (procss_scanf_format): Delete unused argument `args'.  Delete
+	unused local variable `arg_type'.  Don't complain if we can't
+	store the result of a requested conversion.  Only return
+	successfully if a conversion actually occurs, even if we are not
+	storing the value.
+
+Sun Feb 13 13:32:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.83 released.
+
+	* Array.h (DiagArray): Move inline definitions of get() and set()
+	before use by other inline functions.
+
+Sat Feb 12 14:15:45 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check for g77 last.  Even if it is ever actually
+	released, it probably won't be stable for quite a while.
+
+	* MAKEINFO.PATCH: New file.
+	* Makefile.in (DISTFILES): Distribute it.
+
+	* liboctave/Matrix.cc (operator + (Complex, const Matrix&)):
+	Make it work.
+	(operator - (Complex, const Matrix&)): Ditto.
+	(operator * (Complex, const Matrix&)): Ditto.
+	(operator / (Complex, const Matrix&)): Ditto.
+
+Fri Feb 11 00:03:39 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check for strerror too.
+
+	* configure.in: When saving CFLAGS as XCFLAGS and then restoring
+	the value, quote the RHS.
+
+	* src/g-builtins.cc (builtin_clc): Do the dirty work to clear the
+	screen here instead of using rl_clear_screen to avoid printing
+	prompt unnecessarily.
+
+Thu Feb 10 00:26:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc: Add all the cruft that the autoconf manual
+	suggests for including dirent.h.
+
+	* info/terminal.c (terminal_prep_terminal): [HAVE_TERMIOS_H &&
+	NeXT]: Don't use OCRNL, as someone says NeXT's termios.h doesn't
+	have it.
+
+	* configure.in (GCC_IEEE_FP_FLAG): Correct check for ix86 Linux.
+	Don't try to check for CC == gcc.
+	Add GCC_IEEE_FP_FLAG to CFLAGS while checking for IEEE FP
+	functions finite, isnan, and isinf.
+
+	* readline/rldefs.h: Make definition of HAVE_POSIX_SIGNALS
+	conditional on definition of _POSIX_VERSION, not HAVE_TERMIOS_H.
+
+Wed Feb  9 02:41:32 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_function::octave_va_start): Rename from
+	va_start to avoid conflict with va_start macro.
+	(tree_function::octave_var_arg): Likewise, rename from va_arg.
+	* src/g-builtins.cc (builtin_va_arg): Call octave_va_arg for the
+	current function instead of va_arg.
+	(builtin_va_start): Likewise, for octave_va_start.
+
+	* Version 0.82.1.
+
+	* doc/Makefile.in (clean): Also remove octave.in, octave.rd,
+	octave.ins, and octave.rds.
+
+	* src/t-builtins.cc (load_variable): Make it work for all
+	combinations of loading global or local variables when the
+	variable to be loaded is already a global variable, local
+	variable, a function, or even undefined.
+
+Tue Feb  8 00:33:09 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.82 released.
+
+	* liboctave/mx-kludge.cc (operator + (KL_MAT_TYPE, KL_MAT_TYPE)):
+	For an empty matrix with one nonzero dimension, be sure to return
+	a result of the same size.
+	(operator - (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
+	(product (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
+	(quotient (KL_MAT_TYPE, KL_MAT_TYPE)): Ditto.
+
+Mon Feb  7 01:30:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Array.h, liboctave/array.cc (DiagArray): Back off on
+	indexing via Proxy class changes for AIX systems to avoid gcc (or
+	possibly AIX assembler?) bug.
+
+	* src/tree-const.cc (tree_constant_rep::maybe_resize (int,
+	force_orient)): Don't abort for a max index of zero.
+
+	* liboctave/Matrix.h (class RowVector, friend double operator *
+	(const RowVector&, const ColumnVector&)): Add missing const in
+	declaration.
+
+	* liboctave/Matrix.cc (Matrix::fill (val, r1, c1, r2, c2)): Set nc
+	to cols(), not rows().
+	(ComplexMatrix::fill (double val, r1, c1, r2, c2)): Likewise.
+	(ComplexMatrix::fill (Complex val, r1, c1, r2, c2)): Likewise.
+
+	* All source files: To match the documenation, refer to function
+	files, not M-files.  Rename functions and variables that refer to
+	_m_file_,  mfile, or mf to refer to _fcn_file, ffile, or ff.
+
+Sun Feb  6 19:08:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/parse.y (yyerror): Don't crash if a parse error happens and
+	the current input line is NULL.
+
+Sat Feb  5 18:53:04 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/file-io.cc (initialize_file_io): Don't use variable names
+	that start with `_'.
+	* src/file-io.cc (class file_info): Likewise.
+
+Fri Feb  4 01:15:59 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/builtins.cc (general_functions): In usage message for fopen,
+	use `Valid' instead of `Legal'.
+
+	* src/file-io.cc (do_printf): Use `invalid' instead of `illegal'
+	in error message.
+	(do_scanf): Likewise.
+
+	* src/mappers.cc (atanh): Use correct formula.
+
+Thu Feb  3 22:08:40 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/refcard.tex: New file.
+	* doc/Makefile.in (all): Make refcard.ps.
+	(DISTFILES): Distribute refcard.tex, refcard.dvi, and refcard.ps.
+
+	* src/tree-const.cc (any_element_is_negative): Delete function.
+	(any_element_less_than): New function.
+	(any_element_greater_than): Ditto.
+	(tree_constant_rep::mapper): Use struct elements lower_limit,
+	upper_limit, and can_return_complex_for_real_arg to properly
+	handle functions like acos, asin, atanh, and acosh.
+
+	* src/builins.h (struct Mapper_fcn): Rename neg_arg_complex to
+	can_return_complex_for_real_arg.  New elements, lower_limit and
+	upper_limit.
+	(struct builtin mappers functions): Rename neg_arg_complex to
+	can_return_complex_for_real_arg.  New elements, lower_limit and
+	upper_limit.  Delete elements nargin_max and nargout_max.
+	* src/variables.cc (install_builtin_mapper_function): Handle new
+	struct elements can_return_complex_for_real_arg, lower_limit, and
+	upper_limit.  Don't use nargin_max and nargout_max -- they are
+	the same for all mapper functions.
+
+Wed Feb  2 05:06:56 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Matrix.h: Don't include values.h.
+	* liboctave/Matrix-ext.cc: Include float.h
+	(DET::value_will_overflow): Use DBL_MAX, not MAXDOUBLE.
+	(ComplexDET::value_will_overflow): Likewise.
+	(DET::value_will_underflow): Use DBL_MIN, not MINDOUBLE.
+	(ComplexDET::value_will_underflow): Likewise.
+	* src/tree.cc: Include limits.h, not values.h.
+	(tree_builtin::max_expected_args): Use INT_MAX, not MAXINT.
+
+	* configure.in: If compiling on an ix86, set GCC_IEEE_FP_FLAG to
+	-mieee-fp.  We should no longer require the modified crt0 code on
+	Linux systems in order to get IEEE functions.
+	* Makeconf.in (GCC_IEEE_FP_FLAG): Substitute value.
+	(ALL_CFLAGS, UGLY_ALL_CFLAGS, ALL_CXX_FLAGS, UGLY_ALL_CXX_FLAGS,
+	ALL_LDFLAGS): Use it.
+
+Tue Feb  1 22:30:46 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/builtins.cc (install_builtins): Make SEEK_SET, SEEK_CUR, and
+	SEEK_END constants.
+
+	* src/tree-plot.cc (tree_subplot_using::print): Only check column
+	number against max if max is greater than 0.
+
+Mon Jan 31 15:59:31 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/strcmp.m: Correctly handle empty strings.
+
+	* src/parse.y (input): Recognize lone simple_list and simple_list
+	followed by error and '\n'.
+
+Fri Jan 28 00:20:30 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.81 released.
+
+	* src/octave.cc (clean_up_and_exit): Call cleanup_tmp_files() here
+	too.
+
+	* configure.in: Check for atexit and on_exit.
+	* src/octave.cc: Use HAVE_ATEXIT and HAVE_ON_EXIT (instead of
+	just checking to see if sun is defined) to decide whether to
+	define atexit as on_exit.
+	(main): Don't try to call atexit if it's missing and we don't have
+	on_exit either.
+
+Thu Jan 27 22:16:48 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check for gethostname and sys/utsname.h.
+	* utils.cc (gethostname): Steal replacement from bash.  Provide
+	definition if it looks like it's missing and we have
+	sys/utsname.h.
+
+	* liboctave/Array.h (DiagArray): Define non-const indexing
+	functions here.
+	* liboctave/Array.cc (DiagArray): Not here.
+
+	* liboctave/Array.h (DiagArray::Proxy): New class to handle
+	non-const reference indexing.  Allows different action if indexing
+	on left side of assignment operator.
+
+	* src/octave.cc (main): Call initialize_pager(),
+	initialize_readline(), and install_signal_handlers() before trying
+	to read startup files.
+
+	* src/octave.cc (input_from_startup_file): New global flag.
+	(execute_startup_files): Set it to 1 before reading startup files.
+	* src/parse.y (func_def_2): If input_from_startup_file, don't try
+	to compare file name and function name.
+
+Wed Jan 26 14:39:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* readline/rldefs.h: Make better use of autoconf defines.
+
+Tue Jan 25 17:19:19 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Matrix.cc (ComplexMatrix (DiagMatrix)): Make sure off
+	diagonal elements are zero.
+	(ComplexMatrix (ComplexDiagMatrix): Likewise.
+	(Matrix (DiagMatrix): Likewise.
+
+Fri Jan 21 17:43:11 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* flibs.sh: Recognize libraries that match `/*.a'.
+
+Thu Jan 20 18:12:01 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.80.1.
+
+Wed Jan 19 14:48:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libcruft/odepack/stode.f: Don't try to `RETURN 0'.  This causes
+	lsode to fail, at least with Sun's f77.
+
+	* src/tree-const.cc (tree_constant_rep::load): Delete string
+	returned from extract_keyword.
+	* src/t-builtins.cc (builtin_load): Likewise.
+	* src/variables.cc (extract_keyword): Return new storage, not
+	static buffer.
+
+	* src/t-builtins.cc (builtin_save): If saving a named list of
+	variables, use is_globally_visible to decide whether to mark
+	variables in the current symbol table as global.
+
+Tue Jan 18 11:57:03 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.80 released.
+
+	* doc/Makefile.in (install): Delete commands for installing
+	liboctave.info instead of trying to comment them out.
+
+	* liboctave/Array.cc: Allow users to compile with
+	-fexternal-stemplates and USE_EXTERNAL_TEMPLATES defined to
+	generate their own .o files with new types.
+
+	* Makeconf.in (includedir): Install include files in
+	$prefix/include/octave by default.
+
+	* liboctave/Makefile.in (TEMPLATE_SRC): New macro.
+	(install): Install files listed in $(TEMPLATE_SRC) too.
+
+	* info/search.h: Conditionally declare stricmp and strnicmp.
+	* info/search.c: Conditionally define stricmp and strnicmp.
+	* config.h.in: Add undefs for HAVE_STRICMP and HAVE_STRNICMP.
+
+	* configure.in: Check for stricmp and strnicmp too.
+
+	* doc/Makefile.in: For now, don't format or try to install the
+	liboctave manual.
+	Don't distribute formatted copies of liboctave manual.
+
+Mon Jan 17 01:10:54 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/Makefile.in (clean): Remove all index files.
+
+	* src/Makefile.in (defaults.h): Depend on Makefile too.
+	* doc/Makefile.in (conf.texi): New rule for making conf.texi from
+	conf.texi.in.
+
+	* doc/conf.texi.in: New file.
+	* doc/octave.texi: Include conf.texi to get VERSION, OCTAVE_HOME,
+	and other variables that need to be set depending on the
+	configuration.
+
+	* Makefile.in (DISTFILES): Don't distribute PLOTTING.  Current
+	plotting info is in the Texinfo docs.
+
+Sat Jan 15 15:43:34 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* config.sub: New file, from libg++-2.5.2.
+	* Makefile.in: Distribute config.sub.
+	* configure.in: Use config.sub to validate system types.  If it
+	fails, continue with target_host_type and canonical_host_type set
+	to unknown.  Leave target_host_type set to any alias given as the
+	TARGET argument to configure.
+
+	* readline/rldefs.h: If ultrix and HAVE_SGTTY_H, avoid Posix
+	terminal driver.
+	* configure.in: If configuring for ultrix, check for sgtty first.
+	If not found, go ahead and check for Posix terminal driver.
+
+	* configure.in: Don't try to do anything special for readline on
+	NeXT systems.
+
+	* Makeconf.in: Define rules for making .d files here.
+	liboctave/Makefile.in: Not here.
+	src/Makefile.in: Or here.
+
+	* liboctave/Matrix.h (all Matrix/Vector operator = functions):
+	Simply call the base class operator =, then return *this.
+	(class ColumnVector): Declare RowVector a friend class, so it can
+	access the private constructor for the transpose operator.
+	(class RowVector): Likewise, for ColumnVector.
+	(class ComplexColumnVector): Likewise, for CommplexRowVector.
+	(class ComplexRowVector): Likewise, for ComplexColumnVector.
+	Numerous formatting cleanups.
+
+Thu Jan 13 13:17:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.79.90.
+
+	* builtins.cc: Include missing-math.h.
+
+	* src/missing-math.h: Provide declarations for acosh, asinh,
+	atanh, and gamma whether they are actually missing or not, because
+	they are not part of the standard math.h, and the g++/libg++
+	installation no longer provides declarations for them.
+
+	* src/sighandlers.h (RETSIGTYPE): Define here.
+	(BADSIG): Likewise.
+	(sig_handler): Likewise.
+
+	* src/g-builtins.cc: Include sighandlers.h
+	Don't define RETSIGTYPE, BADSIG, or sig_handler here.
+	* src/octave.cc: Or here.
+
+Wed Jan 12 16:12:27 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc: Don't check nargin/nargout in *_options
+	functions.
+
+	* src/f-qpsol.cc, src/f-quad.cc, src/f-lsode.cc, src/f-fsolve.cc,
+	src/f-dassl.cc, liboctave/QPSOL.cc, liboctave/Quad.cc,
+	liboctave/ODE.cc, liboctave/NLEqn.cc, liboctave/DAE.cc:
+	Similar changes for these classes/functions as the following
+	changes for src/f-npsol.cc and liboctave/NPSOL.cc:
+
+	* src/f-npsol.cc (npsol_opts): New static variable to hold Octave's
+	current idea of npsol options.
+	(npsol): Call nlp.copy (npsol_opts) after creating NPSOL object.
+	(npsol_option_table): New static list of options for npsol.
+	(print_npsol_option_list): New function.
+	(do_npsol_option): New function.
+	(npsol_options): Make it work.
+
+	* liboctave/NPSOL.cc (NPSOL_options): New class.
+	* (NPSOL): Also derive from NPSOL_options.
+	* (minimize): Call pass_options_to_npsol before calling npsol.
+	* (NPSOL::option): No longer works.  Print error message instead.
+	* (NPSOL::set_default_options): Now a member of NPSOL_options class.
+
+	* src/utils.cc: If missing, declare strcasecmp, strncasecmp.
+	* (almost_match): Add new argument to do case-insensitive matches.
+	* (keyword_almost_match): New function to match a string against a
+	list of keywords.
+
+	* liboctave/NLP.h (NLP): Add destructor and copy constructor.
+
+	* configure.in: Check for strcasecmp and strncasecmp.
+	* config.h.in: Add #undefs for HAVE_STRCASECMP and STRNCASECMP.
+	* src/strcasecmp.c, src/strncase.c: New files, from glibc.
+	* src/Makefile.in (SOURCES, OBJECTS): List them.
+
+	* src/builtins.cc (general_functions): Improve usage message for
+	the *_options functions.
+	(print_usage): New arg, just_usage with default value of 0.
+	If nonzero, don't print info about where to find additional help.
+
+	* src/Makefile.in (INCLUDES): Add error.h.
+	(SOURCES): Add error.h.
+
+	* src/tree.cc (tree_identifier::parse_m_file): call reset_parser
+	before calling yyparse ().
+	* src/tc-extras.cc (eval_string): Likewise.
+	Don't save previous symbol table.  That is handled by the
+	unwind protect.
+
+	* src/lex.l (reset_parser): Don't unconditionally call yyreset.
+	Add a couple of comments.
+	(yywrap): Always return 1, not 0.
+	(yy_flex_alloc, yy_flex_realloc, yy_flex_free): #if 0 out.
+
+	* src/utils.cc (raw_mode): Only complain about stdin not being a
+	tty if we are really interactive.
+
+	* src/octave.cc (main): End startup message with endl to ensure
+	flushing before other output.
+	* Turn of readline's blink_matching_paren feature if not
+	interactive, or if reading from a file specified on the command
+	line.
+
+	* src/octave.cc (main): Set the symbol table context just before
+	calling reset_parser in the main loop.
+	* src/lex.l (reset_parser): Not here.
+
+	* src/input.cc (octave_gets): Declare static.
+	(octave_read): Also handle echoing input if not using readline.
+
+	* Makefile.in (DISTFILES): Add SENDING-PATCHES to the list.
+
+Mon Jan 10 14:30:13 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/corrcoef.m, scripts/fortran_vec.m, scripts/kurtosis.m,
+	scripts/ols.m, scripts/skewness.m, scripts/cov.m, scripts/gls.m,
+	scripts/mahalanobis.m, scripts/pinv.m: New script files from Kurt
+	Hornik (hornik@neuro.tuwien.ac.at) and the Department of
+	Probability Theory and Statistics TU Wien, Austria.
+
+Sun Jan  9 01:11:05 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc (builtin_fsqp_options): If FSQP_MISSING is
+	defined, don't call fsqp_options; just print usage message.
+	(builtin_npsol_options): Likewise, for npsol_options.
+	(builtin_qpsol_options): Likewise, for qpsol_options.
+	* src/builtins.cc (general_functions): Provide different usage
+	message for fsqp_options depending on whether FSQP_MISSING is
+	defined.  Likewise for npsol_options and qpsol_options.
+
+Sat Jan  8 16:45:57 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libcruft/misc/dostop.c: Include config.h.
+
+	* src/variables.cc (extract_keyword): Use ostrstream instead of
+	fixed length buffer.  For keywords with string values, return
+	value in static buffer.
+	* src/t-builtins.cc (builtin_load): Handle new argument list for
+	extract_keyword.  Handle possiblity of load_variable setting
+	error_state.
+	* src/tree-const.cc (tree_constant_rep::load): Handle new argument
+	list for extract_keyword.
+
+Fri Jan  7 13:20:47 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/f-eig.cc (builtin_eig_2): Rename from builtin_eig.
+	* src/f-fsolve.cc (builtin_fsolve_2): Rename from builtin_fsolve.
+	* src/f-inv.cc (builtin_inv_2): Rename from builtin_inv.
+
+Thu Jan  6 12:29:41 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-base.h (tree::save): Add optional argument `precision'.
+	* src/tree-const.cc (tree_constant::save): Ditto.
+	(tree_constant_rep::save): Ditto.
+	* src/symtab.cc (symbol_def::save): Ditto.
+	(symbol_record::save): Ditto.
+	(symbol_table::save): Ditto.
+
+	* src/t-builtins.cc (builtin_save): Pass user_pref.save_precision
+	to symbol table save functions.
+	* src/builtns.cc (string_variables): Add save precision to thelist.
+	(install_builtins): Initialize it.
+	* src/user-prefs.cc (set_save_precision): New function.
+	* src/user-prefs.h (user_pref.save_precision): New data element.
+
+	* liboctave/Matrix-ext.cc: Provide correct prototypes for dgeesx
+	and zgeesx.
+	* (SCHUR::init): Don't declare a dummy_select function pointer,
+	just pass `(void *) 0' instead, since the dummy argument is never
+	supposed to be used anyway.
+
+	* src/input.cc (initialize_readline): Cast command_completer to
+	CPPFunction, not Function, now that readline has more than one
+	function typedef.
+	* Add extern declaration for free_undo_list ().
+
+	* Replace readline source from GDB with readline source from bash.
+	This allows paren matching.
+
+Wed Jan  5 01:20:26 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Also check for sys/select.h.
+
+	* liboctave/RowVector.cc (ComplexRowVector::operator *): Complete
+	function body.  Put code in-line rather than making a call to the
+	BLAS routine zdotu to avoid having to cope with the various ways
+	that Fortran compilers might translate this.
+
+	* src/input.cc (operate_and_get_next): New function, from bash.
+	(initialize_readline): Bind operate_and_get_next to C-O here.
+
+	* src/input.cc (command_completer, command_generator):
+	Declare static here.
+	* srs/input.h (command_completer, command_generator):
+	Not extern here.
+
+	* g-builtins.cc (builtin_warranty): Change copyright info.
+	* octave.cc (verbose_usage): Likewise.
+	(main): Likewise.
+
+Mon Jan  3 15:49:41 1994  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/fnmatch.c, src/fnmatch.h: New files for pattern matching
+	from the GNU C library.
+	* src/Makefile.in: Add them to the appropriate lists.
+	* src/t-builtins.cc (builtin_save): Use fnmatch to do pattern
+	matching instead of using regular expressions.
+	(builtin_clear): Likewise.
+	(glob_pattern_p): New function.
+	(builtin_save): Print error message and return if only given one
+	argument that contains globbing characters.
+
+	* src/symtab.cc (symbol_record::save): Don't attempt to save
+	undefined variables.
+
+Wed Dec 29 02:55:08 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/rank.m: Also need to compute SVD when nargin == 2.
+	Correct usage message.
+
+Wed Dec 15 01:44:18 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/f-lpsolve.cc, src/f-fsqp.cc, src/f-npsol.cc, src/f-qpsol.cc,
+	src/f-lsode.cc, src/f-dassl.cc, src/f-fsolve.cc, src/f-quad.cc:
+	New stub options functions, XXX_options, and XXX_options_2 (for
+	future dld use), where XXX is lpsolve, fsqp, npsol, etc.
+	* src/f-lpsolve.h, src/f-fsqp.h, src/f-npsol.h, src/f-qpsol.h,
+	src/f-lsode.h, src/f-dassl.h, src/f-fsolve.h, src/f-quad.h:
+	Declare XXX_options functions.
+	* src/builtins.cc (builtin_general_functions): Add new XXX_options
+	functions to the list of builtin functions.
+	* src/g-builtins.cc: Define builtin_XXX_options functions.
+	* src/g-builtins.h: Declare them.
+
+	* scripts/tzero.m: Add missing comma in fprintf call.
+
+Tue Dec 14 00:24:35 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libcruft/quadpack/*.f: Modify to handle user-requested
+	termination from inside the user-supplied function.
+	* src/f-quad.cc (quad_user_function): Set quad_integration_error
+	if an error is encountered in the user-supplied function.
+	* liboctave/Quad.h (quad_integration_error): New global variable.
+	* liboctave/Quad.cc (user_function): Handle
+	quad_integration_error, and error flag for modified Quadpack
+	functions.
+
+	* src/tree.cc (tree_simple_assignment_expression::eval): Check
+	error status after calling convert_to_const_vector () on the
+	argument list.
+	(tree_index_expression::eval): Ditto.
+
+	* src/tree.cc (tree_argument_list::convert_to_const_vector):
+	If an error is encountered while evaluating an element of the
+	list, print an error message including the element number.
+
+	* liboctave/ODE.cc (integration_error): New private data member.
+	(ODE constructors): Initialize it to zero.
+	(ODE::integrate (double)): Reset it to zero before each
+	integration step.
+	(lsode_f): Treat empty vector returned from user-supplied function
+	as an error.
+	* src/f-lsode.cc (lsode_user_function): Return empty vector if
+	error is encountered in user-supplied function.  Don't jump to top
+	level on error.
+
+	* libcruft/odepack/lsode.f (lsode): Return with istate = -13 on
+	error from user supplied subroutine.
+	* libcruft/odepack/lsode.f (lsode): Handle extra argument returned
+	from user-supplied function.
+	* libcruft/odepack/stode.f (stode): Likewise.
+	* libcruft/odepack/prepj.f (prepj): Likewise.
+
+Wed Dec  8 01:30:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/DAE.cc (integration_error): New private data member.
+	(DAE constructors): Initialize it to zero.
+	(DAE::integrate (double)): Reset it to zero before each
+	integration step.
+	(dassl_f): Treat empty vector returned from user-supplied function
+	as an error.
+	* src/f-dassl.cc (dassl_user_function): Return empty vector if
+	error is encountered in user-supplied function.  Don't jump to top
+	level on error.
+
+	* liboctave/NPSOL.cc (npsol_objective_error): New global variable.
+	(npsol_objfun): Set to zero before calling user-supplied function.
+	Check after calling user-supplied function.
+	Set mode to -1 on error.
+	(npsol_confun): Set mode to -1 on error.
+	(npsol declaration): Declare args for user-supplied functions.
+	* src/f-npsol.cc (npsol_objective_function): If an error is
+	encountered in the calculation of the objective function, set
+	npsol_objective_error to 1.
+	(npsol_constraint_function): Treat empty vector returned from
+	user-supplied function as an error.
+
+	* liboctave/Array.cc (*::checkelem): Correct bounds checking.  On
+	error, return uninitialized value of type T.  This avoids placing
+	an extra requirement on the class that can be used as an array
+	element.
+	(*::operator ()): Likewise.
+
+Mon Dec  6 07:24:49 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/NLEqn.cc (hybrd1 declaration): Declare args for
+	user-supplied fuction.
+	(hybrj1): Likewise.
+	(hybrd1_fcn): Treat return of empty vector from user supplied
+	function as an error by setting iflag to -1.
+	(hybrj1_fcn): Likewise.
+	(solve): Handle case of info < 0 returned from hybrd1.
+
+	* src/f-fsolve.cc (fsolve_user_function): Don't jump to top level
+	on error in user-supplied function.  Treat empty vector returned
+	from user-supplied function as error.
+	(hybrd_info_to_fsolve_info): Translate -1 (failure in evaluation
+	of user-supplied function) to -2.
+	* scripts/perror.m (fsolve case): Handle -2.
+
+	* info/error.c (program_name): Initialize to info, not NULL.
+
+	* info/session.c (initialize_info_session): Don't exit if term is
+	too dumb or too small to use info.  Return int status instead.
+	* info/info.h (TERM_TOO_SMALL): New macro.
+
+	* src/t-buitlins.cc (try_info): Check return value from
+	initialize_info_session ().
+
+	* liboctave/Array.cc (DiagArray<T>::DiagArray (int n, const T& val)):
+	Set number of rows and columns to n, not 0.
+
+Sat Dec  4 14:01:41 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.h (YY_INPUT): Undefine if defined, then always define
+	the way we want.
+	(YY_FATAL_ERROR): Likewise.
+
+	* src/lex.l (yywrap): Declare static.
+	(yy_flex_alloc): New function, so we don't have to link with
+	libfl.a when using flex 2.4.x.
+	(yy_flex_realloc): Ditto.
+	(yy_flex_free): Ditto.
+
+Thu Dec  2 19:23:43 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/*.m: Add copying notice to script files.
+
+	* src/input.cc (command_generator): Return copy of matching string.
+
+	* src/input.cc (command_generator): Correctly delete array of
+	character strings.
+	* src/symtab.cc (symbol_table::save): Likewise.
+	* src/utils.cc (pathstring_to_vector): Likewise.
+
+	* src/utils.cc (get_m_file_names): When reallocating vector of
+	strings, delete original vector of pointers, but not the strings
+	they point to.
+
+Tue Nov 30 12:36:41 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/RowVector.cc, liboctave/ColVector.cc,
+	liboctave/DiagMatrix.cc, liboctave/Matrix.cc,
+	liboctave/Matrix-ext.cc: Massive rewrite to cope with new
+	derivation scheme.
+
+	* liboctave/Matrix.h: Include Array.h, and derive Matrix,
+	ComplexMatrix, etc. from Array<double>.  Derive Complex
+	versions from Array<Complex>.  Delete declarations of functions
+	now inherited from the Array classes.
+	* Include mx-kludge.h with appropriate #defines in each class that
+	needs it.
+	* liboctave/Matrix.cc: Include mx-kludge.cc with appropriate
+	#defines in each class that needs it.
+
+	* liboctave/Makefile.in (INCLUDES): Add Array.h, MArray.h, and
+	mx-kludge.h.
+	(SOURCES): Add Array.cc.
+	(EXTRAS): Add MArray.cc and mx-kludge.cc.
+
+	* liboctave/mx-kludge.h, liboctave/mx-kludge.cc: New files to
+	implement the MArray functionality with macros until g++ can
+	handle the MArray stuff.
+
+	* liboctave/MArray.h, liboctave/MArray.cc: New files for generic
+	arrays with simple math functions for like-types.  This won't
+	quite work with g++ yet, so it's not used anywhere.
+
+	* liboctave/Array.h, liboctave/Array.cc: New files for generic
+	arrays.
+
+	* liboctave/mx-inlines.cc: Add const for const arguments.
+
+	* src/file-io.cc (file_info): Rename class from File_info.
+	(file_info::operator =): Fix memory leak by deleting old name
+	and mode before saving new.  Don't do copy if source and
+	destination are the same.
+
+	* src/tree.cc (tree_matrix::eval): Plug memory leak.
+
+	* src/tree.cc (tree_builtin::tree_builtin): Check to see that nm,
+	not my_name, is non-NULL before saving it.
+
+	* src/tree.cc (tree_identifier::eval, tree_gobal_command::eval):
+	After performing the assignment, delete the identifier created
+	for temporary asssignment since the destrucotr for
+	tree_simple_assignment_expression doesn't do it for us.
+
+	* src/tree.cc (tree_function::stash_m_file_name): Delete file_name
+	before saving it.
+	(tree_function::stash_function_name): Likewise, for fcn_name.
+
+	* src/lex.l, src/lex.h: Make quote_is_transpose globally visible.
+	* src/parse.y (param_list): Use it, and recognize empty parameter
+	lists here.
+
+	* src/parse.y (simple_expr1): Recognize empty matrices here.
+	(matrix): Not here.
+
+	* src/arith-ops.cc (do_binary_op): The matrix product and quotient
+	functions aren't class member functions now.
+
+	* src/tc-index.cc, src/tc-assign.cc, src/symtab.cc,
+	src/tree-plot.cc, src/idx-vector.cc, src/tree-const.cc:
+	Call ::error, not just error, since g++ now complains about not
+	being able to find a non-hidden member function by that name.
+
+	* src/tree-const.cc: Call ::real and ::imag, not just real and imag,
+	since g++ now complains about not being able to find non-hidden
+	member functions by those names.
+
+	* src/tree-const.cc (tree_constant_rep::force_numeric): Handle case
+	of zero-length strings.
+
+	* src/tree-const.cc (tree_constant_rep::convert_to_str): Null
+	terminate strings created from scalars.
+
+	* src/tc-index.cc (tree_constant_rep::fortran_style_matrix_index): Use
+	data(), not fortran_vec().
+	* src/idx-vector.cc (idx_vector::idx_vector): Likewise.
+
+	* src/SLStack.cc: Move function definitions here.
+	* src/SLStack.h: From here.  Include SLStack.cc if not using
+	external templates.
+
+	* src/unwind-prot.h: Move class declaration here.
+	* src/unwind-prot.cc: From here.
+
+	* src/xdiv.h, src/xpow.h, src/variables.h, src/utils.h,
+	src/user-prefs.h, src/t-builtins.h, src/sighandlers.h,
+	src/pr-output.h, src/pager.h, src/octave-hist.h, src/mappers.h,
+	src/input.h, src/help.h, src/gripes.h, src/g-builtins.h,
+	src/f-syl.h, src/f-svd.h, src/f-schur.h, src/f-rand.h,
+	src/f-qzval.h, src/f-quad.h, src/f-qr.h, src/f-qpsol.h,
+	src/f-npsol.h, src/f-lu.h, src/f-lsode.h, src/f-lpsolve.h,
+	src/f-inv.h, src/f-ifft.h, src/f-hess.h, src/f-givens.h,
+	src/f-fsqp.h, src/f-fsolve.h, src/f-fft.h, src/f-expm.h,
+	src/f-eig.h, src/f-det.h, src/f-dassl.h, src/f-colloc.h,
+	src/f-chol.h, src/f-balance.h, src/error.h, src/dynamic-ld.h,
+	src/builtins.h, src/arith-ops.h, src/tree-const.h, src/tree.h,
+	src/token.h, src/symtab.h, src/procstream.h, src/idx-vector.h,
+	src/file-io.h, src/tree-base.h, src/unwind-prot.h, src/Stack.h,
+	liboctave/LinConst.h, liboctave/FEGrid.h, liboctave/NLEqn.h,
+	liboctave/NLConst.h, liboctave/LPsolve.h, liboctave/LP.h,
+	liboctave/FSQP.h, liboctave/DAEFunc.h, liboctave/DAE.h,
+	liboctave/CollocWt.h, liboctave/Bounds.h, liboctave/Objective.h,
+	liboctave/ODEFunc.h, liboctave/NLFunc.h, liboctave/Range.h,
+	liboctave/Quad.h, liboctave/QP.h, liboctave/QPSOL.h,
+	liboctave/QLD.h, liboctave/NPSOL.h, liboctave/NLP.h,
+	liboctave/f77-uscore.h, liboctave/lo-error.h,
+	liboctave/Matrix.h:
+	Don't use #pragma interface.
+
+	* src/tc-index.cc, src/tc-assign.cc, src/symtab.cc,
+	src/procstream.cc, src/gripes.cc, src/f-syl.cc, src/f-svd.cc,
+	src/f-schur.cc, src/f-rand.cc, src/f-quad.cc, src/f-qr.cc,
+	src/f-qpsol.cc, src/f-npsol.cc, src/f-lu.cc, src/f-lsode.cc,
+	src/f-lpsolve.cc, src/f-inv.cc, src/f-ifft.cc, src/f-hess.cc,
+	src/f-givens.cc, src/f-fsqp.cc, src/f-fsolve.cc, src/f-fft.cc,
+	src/f-eig.cc, src/f-det.cc, src/f-dassl.cc, src/f-colloc.cc,
+	src/f-chol.cc, src/f-balance.cc, src/t-builtins.cc,
+	src/octave-hist.cc, src/input.cc, src/g-builtins.cc,
+	src/xdiv.cc, src/xpow.cc, src/user-prefs.cc, src/unwind-prot.cc,
+	src/tree-plot.cc, src/token.cc, src/tc-extras.cc, src/sysdep.cc,
+	src/sighandlers.cc, src/pr-output.cc, src/pager.cc,
+	src/mappers.cc, src/idx-vector.cc, src/help.cc, src/f-qzval.cc,
+	src/f-expm.cc, src/error.cc, src/dynamic-ld.cc, src/builtins.cc,
+	src/arith-ops.cc, src/variables.cc, src/utils.cc,
+	src/tree-const.cc, src/file-io.cc, src/tree.cc,
+	liboctave/sun-utils.cc, liboctave/mx-inlines.cc,
+	liboctave/RowVector.cc, liboctave/ColVector.cc,
+	liboctave/DiagMatrix.cc, liboctave/Matrix.cc,
+	liboctave/Matrix-ext.cc, liboctave/Quad.cc, liboctave/ODE.cc,
+	liboctave/LPsolve.cc, liboctave/FSQP.cc, liboctave/DAE.cc,
+	liboctave/DAEFunc.cc, liboctave/QP.cc, liboctave/Objective.cc,
+	liboctave/ODEFunc.cc, liboctave/NLFunc.cc, liboctave/NLConst.cc,
+	liboctave/LP.cc, liboctave/lo-error.cc, liboctave/Range.cc,
+	liboctave/QPSOL.cc, liboctave/NPSOL.cc, liboctave/NLEqn.cc,
+	liboctave/Matrix.cc, liboctave/Matrix-ext.cc,
+	liboctave/LinConst.cc, liboctave/FEGrid.cc,
+	liboctave/DiagMatrix.cc, liboctave/CollocWt.cc,
+	liboctave/ColVector.cc, liboctave/Bounds.cc:
+	Don't use #pragma implementation.
+
+	* src/lex.l, src/parse.y, src/procstream.cc, src/gripes.cc,
+	src/f-syl.cc, src/f-svd.cc, src/f-schur.cc, src/f-rand.cc,
+	src/f-quad.cc, src/f-qr.cc, src/f-qpsol.cc, src/f-npsol.cc,
+	src/f-lu.cc, src/f-lsode.cc, src/f-lpsolve.cc, src/f-inv.cc,
+	src/f-ifft.cc, src/f-hess.cc, src/f-givens.cc, src/f-fsqp.cc,
+	src/f-fsolve.cc, src/f-fft.cc, src/f-eig.cc, src/f-det.cc,
+	src/f-dassl.cc, src/f-colloc.cc, src/f-chol.cc,
+	src/f-balance.cc, src/t-builtins.cc, src/octave-hist.cc,
+	src/input.cc, src/g-builtins.cc, src/xdiv.cc, src/xpow.cc,
+	src/user-prefs.cc, src/unwind-prot.cc, src/tree-plot.cc,
+	src/token.cc, src/tc-extras.cc, src/sysdep.cc,
+	src/sighandlers.cc, src/pr-output.cc, src/pager.cc,
+	src/mappers.cc, src/idx-vector.cc, src/help.cc, src/f-qzval.cc,
+	src/f-expm.cc, src/error.cc, src/dynamic-ld.cc, src/builtins.cc,
+	src/arith-ops.cc, src/variables.cc, src/utils.cc,
+	src/tree-const.cc, src/file-io.cc, src/tree.cc: If HAVE_CONFIG_H
+	is defined, include config.h.
+
+	* config.h.in, acconfig.h: New files
+	* Makefile.in (DISTFILES): Add them to the list.
+
+	* Makeconf.in (root_srcdir): Define.
+	(INCFLAGS): Clean up.
+	(UGLY_ALL_CFLAGS): New macro.
+	(UGLY_ALL_CXXFLAGS): Likewise.
+	(UGLY_ALL_LDFLAGS): Likewise.
+
+	* configure.in: Convert to generate config.h.
+	Substitute root_srcdir in Makefiles.
+	Use AC_DEFINE(foo, 1) instead of DEFS="$DEFS -Dfoo=1".
+	If using g++ 2.5 or later, define USE_EXTERNAL_TEMPLATES.
+	Use UGLY_DEFS for what would have been substited in DEFS, for
+	those cases when we need DEFS instead of config.h.
+
+Tue Nov 16 04:59:19 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/f-expm.cc, src/f-givens.cc, src/f-qzval.cc, src/f-syl.cc:
+	Include f77-uscore.h here.
+
+	* liboctave/ColVector.cc, liboctave/Matrix.cc,
+	liboctave/Matrix-ext.cc, liboctave/RowVector.cc: Move declarations
+	for Fortran functions here.
+	* liboctave/Matrix.h: From here. Don't include f77-uscore.h here.
+
+Mon Nov 15 04:03:34 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-extras.cc (min): For two-arg versions, use error(), not
+	FAIL.
+	(max): Likewise.
+	* src/idx-vector.cc (checkelem): Likewise.
+
+	* liboctave/Matrix.h, liboctave/Matrix.cc, liboctave/RowVector.cc,
+	liboctave/ColVector.cc, liboctave/DiagMatrix.cc,
+	liboctave/Matrix-ext.cc, liboctave/Bounds.cc, liboctave/DAE.cc,
+	liboctave/CollocWt.cc, liboctave/FEGrid.cc, liboctave/LinConst.cc,
+	liboctave/ODE.cc, liboctave/NLEqn.cc: Don't abort or exit on
+	errors.  Instead print some message by calling the function
+	pointed to by current_liboctave_error_handler and then return.
+
+	* liboctave/lo-error.cc: New file, for liboctave error handling
+	stuff.
+
+Sun Nov 14 23:28:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc (default_path): Handle OCTAVE_PATH from the
+	environment like TeX handles TEXINPUTS.  If the path starts with
+	`:', prepend the standard path.  If it ends with `:' append the
+	standard path.  If it begins and ends with `:', do both (which is
+	useless, but the luser asked for it...).
+	(octave_lib_dir): Plug memory leak.
+
+Sat Nov 13 02:41:24 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/symtab.h (symbol_record::context): New data member, to allow
+	recursive functions to work.
+	* src/symtab.cc (symbol_record::push_context): New function
+	(symbol_record::pop_context): Ditto.
+	(symbol_table::pop_context): Ditto.
+	(symbol_table::push_context): Ditto.
+
+	* src/tree.cc (tree_function::eval): If call_depth is > 1, push
+	symbol table context and add unwind protect to pop it on exit or
+	error.
+	(pop_symbol_table_context): New function for unwind protect.
+
+	* configure.in: Use AC_HAVE_HEADERS(unistd.h) instead of
+	AC_UNISTD_H.
+
+	* src/lex.l, src/f-quad.cc, src/f-rand.cc, src/f-lpsolve.cc,
+	src/f-fsqp.cc, src/f-fsolve.cc, src/f-det.cc, src/f-dassl.cc,
+	src/f-colloc.cc, src/utils.cc, src/variables.cc, src/tree.cc,
+	src/tree-const.cc, src/tc-extras.cc, src/sysdep.cc, src/symtab.cc,
+	src/octave-hist.cc, src/pr-output.cc, src/input.cc,
+	src/g-builtins.cc, src/f-det.cc, src/f-inv.cc, src/file-io.cc:
+	Convert most calls to message() to calls to warning() or error()
+	instead.
+
+	* src/f-npsol.cc (npsol): Don't try to create the linear
+	constraint object before checking array sizes.
+
+Fri Nov 12 04:36:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tc-inlines.cc (is_one_zero): New function.
+	* src/tc-assign.cc: Everywhere we check for is_zero_one, also
+	check for is_one_zero.  Some people write ranges that go in
+	decreasing order...
+	* src/tc-index.cc: Likewise.
+
+	* src/tc-inlines (index_check (Range&, int&, char*)): Eliminate
+	second arg -- there is no need to return the max value of the
+	range.  Correctly compute and check the minimum value.
+	* src/tc-index.cc: Change all callers, and check the max value
+	there.
+	* src/tc-assign.cc: Likewise.
+
+	* src/tc-assign.cc (do_vector_assign): Handle assignment of empty
+	matrix for int, idx_vector, and Range cases.
+	(do_matrix_assign): Likewise, for cases when one of the indices is
+	a colon and the other is an int, idx_vector, or Range.
+
+	* liboctave/Range.h (Range): Rename private data members rng_foo
+	instead of just _foo.
+	* liboctave/Range.cc: Change names where used.
+
+	* liboctave/Range.cc (max): Return correct value even when the
+	elements in the range don't line up exactly with the limit.
+	(min): Likewise.
+	(sort): New function.
+
+	* src/tc-assign.cc (delete_row (int)): New function.
+	(delete_rows (idx_vector&)): Ditto.
+	(delete_rows (Range&)): Ditto.
+	(delete_column (int)): New function.
+	(delete_columns (idx_vector&)): Ditto.
+	(delete_columns (Range&)): Ditto.
+
+	* src/tree-const.h (is_empty): Don't try checking rows and columns
+	if type is magic_colon or unknown.  Return false instead.
+	(is_zero_by_zero): New function.
+
+	* src/idx-vector.cc (sort): New function.
+	(intcmp): New static function, for sorting.
+
+Thu Nov 11 02:31:13 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/menu.m: Update to use new va_start() and va_arg()
+	functions.
+
+	* src/g-builtins.cc (builtin_va_arg): Rename from
+	builtin_get_next_arg.
+	(builtin_va_start): New function.
+	* src/builtins.cc (builtin_general_functions): Fix up list.
+
+	* src/tree.cc (tree_function::va_arg): Rename from get_next_arg.
+	(tree_function::va_start): New function.
+
+	* src/tree.h (tree_function::num_named_args): New data member.
+	* src/tree.cc (tree_function::define_param_list): Set it.
+	(tree_function::eval): Unwind-protect it.
+
+Wed Nov 10 03:37:44 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_identifier::assign): Also check to make sure
+	that the symbol record is defined since symbol_record::is_variable
+	may return true even if the record is undefined.
+	* src/variables.cc (link_to_global_variable): Don't try to copy a
+	NULL_TREE_CONST.
+
+	* src/tree-const.cc (tree_constant_rep::matrix_value): If the
+	current value is a scalar, return 1x1 matrix.
+	* src/tc-assign.cc (tree_constant_rep::check_vector_assign):
+	Handle case of zero size LHS.
+	Clean up formatting of some error messages.
+
+	* src/lex.l ({EL}): Recognize ... when not at end of line.
+	* src/octave.cc (curr_function): New global variable.
+	* src/g-buitlins.cc (builtin_get_next_arg): New function.
+	* src/builtins.cc (builtin_general_functions): Add it to the list.
+	* src/parse.y (param_list1): Handle ... at end of parameter list.
+	Abort parse on error.
+	(ELLIPSIS): New token, for variable argument lists.
+	* src/tree.h (tree_function): Add varargs_ok, args_passed,
+	num_args_passed, and curr_arg_number data members to handle
+	variable argument lists.
+	(tree_parameter_list::marked_for_varargs): New data member.
+	* src/tree.cc (tree_function::takes_varargs): New function.
+	(tree_function::get_next_arg): New function.
+	(tree_parameter_list::mark_varargs): New function.
+	(tree_parameter_list::takes_varargs): New function.
+	(tree_function::eval): Set curr_function, args_passed, and
+	num_args_passed for use by get_next_arg.
+
+Mon Nov  8 14:22:34 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.79 released.
+
+	* src/builtins.cc (builtin_text_functions):  Correct usage message
+	for who.
+
+	* scripts/dgram.m: New function, from R. Bruce Tenison
+	(btenison@eng.auburn.edu).
+	* scripts/dlqe.m: Ditto.
+	* scripts/dlqr.m: Ditto.
+	* scripts/c2d.m: Ditto.
+
+	* src/tree.cc (tree_identifier::name): Make it const.
+	(tree_builtin::name): Ditto.
+	(tree_parameter_list::name): Ditto.
+	(tree_word_list::name): Ditto.
+
+	* src/symtab.cc (symbol_table::save): Delete list of names after
+	saving.
+
+	* src/symtab.h (symbol_table): Move #defines outside of class
+	declaration.
+
+Sun Nov  7 07:03:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makeconf.in (CXX): Don't set from C++.  Do set from @CXX@, which
+	is determined by configure.  Don't set C++FLAGS.
+
+	* src/tree.cc: (tree_function::eval (int, int)): Simply call
+	eval (tree_constant *, int, int, int) with nargin = 1 and args =
+	NULL_TREE_CONST instead of duplicating most of that function in place.
+
+	* src/parse.y (func_def2): Reset id_name after renaming identifier.
+	Clear id_name from top level symbol table before defining identifier.
+
+Sat Nov  6 04:38:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: When checking for g++, set CXX, not GXX.
+
+	Merge min changes from Bruce Tenison (btenison@eng.auburn.edu) and
+	make the corresponding changes for max.
+
+	* src/tc-extras.cc (min (ComplexMatrix&, ComplexMatrix&)): New
+	function.
+	(max (ComplexMatrix&, ComplexMatrix&)): Ditto.
+	(column_min): Handle complex args and two return values.
+	(column_max): Likewise.
+
+	* liboctave/Matrix.cc (row_min_loc): New function.
+	(row_max_loc): New function.
+	(column_min_loc): Ditto.
+	(column_max_loc): Ditto.
+
+Fri Nov  5 03:12:55 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.78.
+
+	* src/octave.h (clean_up_and_exit): Change form of declaration for
+	GCC 2.5.x and beyond.
+
+	* src/tree.cc (tree_identifier::eval): Correctly handle printing
+	of identifier tags and conversion to assignment to `ans'.
+	* src/parse.y (maybe_convert_to_ans_assign): Simplify.
+	For identifiers, defer decision about making an ans assignment
+	until evaluation time since identifiers can be undefined at parse
+	time, and we can't tell what to do until we know what the def is.
+	* src/tree.cc (tree_identifier::mark_for_possible_ans_assgin): New
+	function.
+	* src/tree.cc (tree_index_expression::mark_for_possible_ans_assign):
+	New function.
+	* src/tree.h (tree_identifier): Add new private data,
+	maybe_do_ans_assign.
+
+	* src/t-builtins.cc (builtin_who): Major overhaul.  Support long
+	listings.
+	(print_symbol_info_line): New function.
+	(print_long_listing): Ditto.
+	(maybe_list): Ditto.
+
+	* src/user-prefs.cc (sv_editor): New function for builtin variable
+	EDITOR.
+	* src/octave-hist.cc (do_edit_history): Use user_pref.editor, not
+	just the EDITOR environment variable.
+
+	* src/user-prefs.cc (ignore_function_time_stamp): New function for
+	new builtin variable ignore_function_time_stamp.
+	* src/variables.cc (symbol_out_of_date): Use value of new
+	user_pref.ignore_function_time_stamp to decide whether to check to
+	see if a file has changed.
+	* src/tree.h (tree_function): Add new private data, system_m_file.
+
+	* src/builtins.cc (string_variables): Add EDITOR and
+	ignore_function_time_stamp EDITOR to the list.
+	(bultin_general_functions): Add is_global to the list.
+
+	* src/t-builtins.cc (builtin_clear): Make it work with new
+	variable scoping rules.
+	(builtin_document): Likewise, using new document_symbol()
+	function.
+	(builtin_save): Likewise.  Allow regular expression arguments.
+	Don't save builtin variables that are read-only.
+
+	* src/utils.cc (octave_home): Don't declare static.
+	(octave_lib_dir): Likewise.
+	(octave_info_dir): Likewise.
+	(default_editor): New function.
+
+	* src/tree.cc (tree_builtin::def): Delete function.
+	(tree_identifier::def): Likewise.
+	(tree_identifier::symrec): Likewise.
+
+	* src/tree.h (tree_builtin): Store name of function, not pointer
+	to symbol record.
+
+	* src/user-prefs.cc (warn_assign_as_truth_value): Lookup
+	"warn_assign_as_truth_value", not "user_pref.warn...".
+
+	* src/tree-base.h (def): Delete unused virtual function.
+	(is_prefix_expression): New virtual function.
+	(mark_for_possible_ans_assign): Likewise.
+	(is_system_m_file): Likewise.
+	(stash_m_file_name): No longer needs to be virtual.
+	(stash_m_file_time): Likewise.
+
+	* src/octave.cc (octave_Complex_error_handler): Define, to keep
+	errors in the Complex class from aborting Octave.  This is only a
+	temporary fix, I hope.
+	(main): Install it.
+	(initialize_globals): Get default editor.
+	(main): Call initialize_symbol_tables to do that instead of
+	creating them directly in main.
+
+	* src/variables.cc (document_symbol): New function.
+	(initialize_symbol_tables): Likewise.
+	(install_builtin_mapper_function): Likewise.
+	(install_builtin_text_function): Likewise.
+	(install_builtin_general_function): Likewise.
+	(install_builtin_variable): Likewise.
+	(install_builtin_variable_as_function): Likewise.
+	(bind_nargin_and_nargout): Likewise.
+	(bind_builtin_variable): Likewise.
+	(link_to_global_variable): Likewise.
+	(link_to_builtin_variable): Likewise.
+	(link_to_builtin_or_function): Likewise.
+	(force_link_to_function): Likewise.
+	(is_globally_visible): Likewise.
+	(is_builtin_variable): Likewise.
+
+	* src/tree.cc (print_as_scalar): Avoid trying to print row vectors
+	on one line.
+
+	* src/builtins.cc (install_buitlins): Simplify installation of
+	builtin functions using new install_builtin_*_function functions.
+	Ditto for using bind_builtin_variable for installing variables.
+
+	* src/tree.h (tree_global_command): New class.
+	* src/tree.cc (tree_global_command::*): Implement new class to
+	make global command executable.
+	* src/parse.y (global_decl): Make global an executable statement.
+
+	* src/parse.y (func_def2): Rework to match new way of handling
+	global variables and function names in the symbol table.
+	Mark functions as `system' or not.
+	Don't use id_to_define.
+	If m-file and function names disagree, rename function to match
+	m-file name.
+	* src/tree.cc (tree_identifier::rename): New function.
+	* src/parse.cc, src/parse.h (id_to_define): Delete unused global
+	variable.
+
+	* src/varables.cc (builtin_string_variable): Fix to match new
+	rules for global and builtin variables.
+	(builtin_real_scalar_variable): Likewise.
+
+	* src/tree.cc (tree_identifier::assign): Make it work with new
+	rules for global variables.
+	(tree_identifier::parse_m_file): Likewise.
+	(tree_identifier::do_lookup): Likewise.
+
+	* src/tree.cc (mark_as_system_m_file): New function.
+	(is_system_m_file): Ditto.
+
+	* src/tree.cc (clear_symbol_table): New function, to be used in an
+	unwined_protect element for clearing function symbol tables on
+	exit or error.
+
+	* src/tree.cc (tree_function::eval): Simplify using
+	bind_nargin_and_nargout.
+	Clear symbol table on exit or error with unwind_protect.
+
+	* src/tree.cc (tree_prefix_expression::is_prefix_expression): New
+	function.
+
+	* src/g-builtins.cc (builtin_is_global): New function.
+
+	* src/lex.l (lookup_identifier): Now that global variable binding
+	has been fixed, only look for symbols in the current symbol table.
+	Really.  I mean it this time.
+
+	* src/symtab.cc: Complete overhaul, to make global variables work
+	a bit more reasonably.
+
+Mon Nov  1 15:03:39 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Matrix.h (DiagMatrix::rows): Return nr, not len.
+	(ComplexDiagMatrix::rows): Ditto.
+	* src/Matrix.h (DiagMatrix::cols): Return nc, not len.
+	(ComplexDiagMatrix::cols): Ditto.
+	(DiagMatrix::columns): Ditto.
+	(ComplexDiagMatrix::columns): Ditto.
+
+	* liboctave/DiagMatrix.cc (DiagMatrix::row): Make it work for
+	square case.
+	(DiagMatrix::column): Likewise.
+	(ComplexDiagMatrix::row): Likewise.
+	(ComplexDiagMatrix::column): Likewise.
+
+	* liboctave/DiagMatrix.cc (DiagMatrix::operator <<): Print spaces
+	between elements.
+	(ComplexDiagMatrix::operator <<): Likewise.
+
+Fri Oct 29 15:32:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.77.1.
+
+	* src/symtab.cc (symbol_record::alias): Don't copy formal_param or
+	forced_global attribute.
+
+	* src/symtabl.cc (symbol_table::bind_globals): Don't bind to
+	global symbol unless it has forced_global attribute set.
+
+	* src/tree.cc (print_as_scalar): New function.
+	(tree_identifier::eval): Use it.
+	(tree_simple_assignment_expression::eval): Likewise.
+	(tree_multi_assignment_expression::eval): Likewise.
+
+	* src/lex.l (is_keyword): Give better error message for attempts
+	to define nested functions.
+
+	* src/parse.y (global_decl): Return a command_list to execute
+	(this makes assignments in global declarations executable).
+
+	* src/tree.cc (tree_for_command): Handle line and column info in
+	constructors and for error messages.
+	(tree_while_command): Ditto.
+	(tree_if_command): Ditto.
+	(tree_break_command): Ditto.
+	(tree_continue_command): Ditto.
+	(tree_return_command): Ditto.
+	(*::eval_error): Only print messages if error_state > 0.
+	(various): Only need to check that error_state is non-zero before
+	calling eval_error().
+
+	* src/parse.y: Handle line and column information for FOR WHILE IF
+	ELSEIF ELSE BREAK CONTINUE and FUNC_RET tokens.
+	* src/lex.l: Likewise.
+
+	* src/octave.cc (parse_and_execute): Reset parser before starting
+	new parse.
+
+	* src/tree-plot.cc (various): Check error_state in many more
+	places, and issue more meaningful error messages.
+
+	* src/tree-const.cc (maybe_resize): Don't call
+	jump_to_top_level() on errors.
+	(tree_constant_rep (Range)): Likewise.
+
+	* src/g-builtins.cc (builtin_error): Use error(), not
+	print_if_string() to print error messages.
+	* src/tree-const.cc (print_if_string): Delete unused function.
+
+	* src/tc-assign.cc (various): Check error_state after calls to
+	maybe_resize().
+
+	* src/tc-index.cc (various): Always check the state of idx_vectors
+	after trying to create them.
+	* src/tc-assign.cc (various): Likewise.
+
+	* src/idx-vector.cc: Use 0, not NULL.
+	Don't include stdlib.h.
+	(initialized): New data member, set nonzero if the idx_vector has
+	been properly initialized.
+	Never call jump_to_top_level () if initialization fails.
+	Add operator void *(), so we can test the state of an idx_vector
+	with `if (vector)'.
+
+	* src/pager.cc: Explicitly initialize pager_buf to NULL.
+
+	* src/tree-base.h: Move includes ahead of other definitions.
+
+	* liboctave/NLEqn.cc (NLEqn::NLEqn (const Vector&, const NLFunc)):
+	Initialize n from xvec, not x.
+
+Mon Oct 25 18:01:12 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/user-prefs.cc (sv_info_file): New function.
+	* src/user-prefs.h (user_pref): Add info_file to the list.
+	* src/t-builtins.cc (try_info): Use it instead of
+	DEFAULT_INFO_FILE.
+
+	* src/utils.cc (default_info_file): New function.
+	(octave_info_dir): Likewise.
+
+	* src/defaults.h.in (DEFAULT_INFO_FILE): Delete unnecessary
+	definition since we figure out what it should be in utils.cc now.
+	* src/Makefile.in (defaults.h): Don't substitute DEFAULT_INFO_FILE.
+	* src/Makeconf.in (DEFAULT_INFO_FILE): Delete definition.
+
+	* src/octave.cc (info_file): New global variable.
+	(initialize_globals): Call default_info_file () to initialize it.
+	(--info-file): New command line option.
+
+	* src/builtins.cc (string_variables): Add INFO_FILE to the list.
+	(install_builtins): Define it.
+
+	* info/filesys.c (compress_suffixes): Choose gunzip for .gz files.
+
+Sat Oct 23 17:46:09 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.77 released.
+
+	* src/Makefile.in (INCFLAGS): Don't include info or dld
+	directories.
+	* dynamic-ld.cc: Include dld/dld.h, not just dld.h.
+	* t-buitlins.cc: Include info/info.h, info/dribble.h, and
+	info/terminal.h, not just info.h, dribble.h, and terminal.h.
+
+	* src/t-builtins.cc (builtin_help): New option, -i, for invoking
+	info browser.  If -i is not given, just do what we used to do, but
+	point to help -i as a way to get additional information.
+
+	* builtins.cc (print_usage): New function.
+
+	* g-builtins.cc (all builtins): Call print_usage to get usage message.
+	* t-builtins.cc (all builtins): Likewise.
+
+Fri Oct 22 15:56:16 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Cholesky changes from R. Bruce Tenison (btenison@eng.auburn.edu):
+
+	* src/f-chol.cc, src/f-chol.h: New files for the Cholesky
+	Factorization.
+	* src/Makefile.in (SOURCES, OBJECTS, DLD_OBJECTS): Add to lists.
+	* src/g-builtins.cc (builtin_chol): New function.
+	* src/g-builtins.h: Declare it.
+
+	* liboctave/Matrix-ext.cc (CHOL, ComplexCHOL): New classes.
+
+	* libcruft/lapack: dpotrf.f, zpotrf.f, dpotf2.f, zpotf2.f: New
+	files.
+
+	* libcruft/blas: dsyrk.f, zherk.f: New files.
+
+Fri Oct 22 14:04:16 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc (builtin_schur): Fourth arg for DLD_BUILTIN is
+	schur, not hess.
+
+	* scripts/dare.m: Correct usage of fprintf.
+
+	* src/utils.cc (raw_mode): Only complain about stdin not a tty if
+	interactive or forced interactive.
+
+Thu Oct 21 17:00:57 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/builtins.cc (install_builtins): Try harder to make
+	initialization of NaN work.  Make note about possible fixes if it
+	still doesn't work.
+
+	* src/utils.cc (raw_mode): [HAVE_TERMIOS_H] and [HAVE_TERMIO_H]
+	Don't set TAB3 since it doesn't seem necessary and some systems
+	don't have it by this name.
+	[HAVE_SGTTY_H] To be consistent, don't set XTABS here either.
+
+	* src/error.c (error): Call flush_output_to_pager before printing
+	error message.
+	(panic): Likewise, before aborting.
+
+	* src/symtab.cc (symbol_record::undefine): Delete unused function.
+	(symbol_table::undefine): Likewise.
+
+	* src/symtab.cc (clear): Never delete symbol records from the
+	table.  Only delete the definitions.  This makes clear and
+	undefine equivalent, so we don't need them
+	* src/tree.cc (tree_function::eval): Call symbol_table::clear, not
+	symbol_table::undefine.
+
+	* src/t-builtins.cc (builtin_clear): Only clear global symbols if
+	we are at the top level.
+	* src/parse.y (CLEAR): Delete token.
+	(word_list_command): Remove code to handle CLEAR as special case.
+	(expect): Only 19 now.
+	* src/lex.l (handle_identifier): Remove special code for clear.
+	It's ok to use it in a function body now.
+
+	* src/t-builtins.cc: Include extern "C" declarations for Info stuff.
+	(builtin_help): If given an argument, try to get help directly
+	from info file first.  If that fails, do as before.
+	(help_syms_list): New function:
+	(simple_help): New function.
+	(try_info): New function.
+	(help_from_list): New function.
+
+	* src/defaults.h.in (DEFAULT_INFO_FILE): Define new macro.
+	* Makeconf.in: Set value of DEFAULT_INFO_FILE.
+	* Makeconf.in (INSTALL_PROGRAM): Add definition.
+	* Makefile.in (SUBDIRS): Add info directory.
+	(info): New target.
+	* configure.in: Add autoconf macros to handle info configuration.
+
+	* info/Makefile.in: Major changes to make it work with Octave's
+	Makeconf file, etc.  The default action is now to build a
+	libinfo.a file.
+
+	* info/error.c: New file.  Move error functions here from info.c.
+
+	* info/signals.c (clear_info_signal_handler): New function, useful
+	if info is used directly in another program.
+
+	* info/termdep.h: Handle termios too.
+	* info/terminal.c (terminal_prep_terminal): Handle termios.
+	* (terminal_unprep_terminal): Likewise
+
+	* info/session.c (initialize_info_session): Add arg to make
+	clearing the screen conditional.  Useful if we want to call
+	index_entry_exists() first before displaying anything.
+	Change all callers.
+
+	* info/session.c (finish_info_session): New function.
+
+	* info/session.c (dispatch_error): Change message to include info
+	about how to get help and how to quit.
+
+	* info/info.c (index_search_p): New flag.
+	(--index-search): New option, like apropos, but search the indices
+	and display the first node found.
+
+	* info/indices.c (do_info_index_search): New function, modified
+	from info_index_search to allow searching the index for a string
+	without prompting for it.
+	(info_index_search): Just call do_info_index_search.
+	(index_entry_exists): New function, to allow us to find out if
+	there is an index entry for a given string without actually
+	displaying anything.
+
+	* info: New directory, containing source for GNU info browser.
+
+Tue Oct 19 00:14:33 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/octave-hist.cc (input_from_tmp_history_file): New global flag.
+	(do_edit_history): Protect and set it.
+	(do_run_history): Likewise.
+	* src/parse.y (func_def2): Use it to see that input is coming from
+	a temporary file.  This means that we shouldn't exit when we're
+	done reading it, and we should treat it just as if the input were
+	coming from the keyboard.
+
+	* variables.cc (force_global): Force aliasing so it will happen
+	even if the symbol record is undefined.
+
+	* src/lex.l (lookup_identifier): Simplify
+
+	* src/lex.l (reset_parser): Reset error_state here.
+	* src/octave.cc (main): Not here.
+
+Mon Oct 18 14:27:02 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-const.cc: Delete constructor for tree_constant from
+	String.
+
+	* In src: tree.h, mappers.h, unwind-prot.h, parse.h, file-io.h,
+	arith-ops.h, tree-base.h, tree-const.h, g-builtins.h,
+	idx-vector.h, builtins.h, dynamic-ld.h, xdiv.h, xpow.h,
+	pr-output.h, input.h, symtab.h, utils.h: Avoid including files
+	unnecessarily.
+
+	* In src: tc-inlines.cc, mappers.cc, variables.cc, arith-ops.cc,
+	tree.cc, tree-const.cc, g-builtins.cc, file-io.cc, idx-vector.cc,
+	tc-assign.cc, tc-index.cc, builtins.cc, dynamic-ld.cc, xdiv.cc,
+	xpow.cc, pr-output.cc, tc-extras.cc, input.cc, symtab.cc,
+	utils.cc: Sprinkle liberally with const.
+
+	* In src: f-syl.cc, f-svd.cc, f-schur.cc, f-rand.cc, f-qzval.cc,
+	f-quad.cc, f-qr.cc, f-qpsol.cc, f-npsol.cc, f-lu.cc,
+	f-lsode.cc, f-lpsolve.cc, f-inv.cc, f-ifft.cc, f-hess.cc,
+	f-givens.cc, f-fsqp.cc, f-fsolve.cc, f-fft.cc, f-expm.cc,
+	f-eig.cc, f-det.cc, f-dassl.cc, f-colloc.cc, f-balance.cc:
+	Add const qualifier to tree-constant arg.
+
+Sat Oct 16 12:22:24 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-const.h, src/tree-const.cc: Add const qualifier to
+	constructor arguments passed by reference.
+	Pass Complex arguments by const reference instead of by value.
+
+	* liboctave/Matrix.h, liboctave/Matrix.cc, liboctave/ColVector.cc,
+	liboctave/RowVector.cc liboctave/DiagMatrix.cc: Pass Complex
+	arguments by const reference instead of by value.
+
+Wed Oct 13 14:13:29 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc (decode_prompt_string): ctime returns time_t, which
+	might not be a long.
+
+	* src/variables.cc (identifier_exists):	Only return non-zero if
+	the name has a definition.
+
+	* src/f-npsol.cc (npsol): Call error(), not message(), to print
+	error messages.
+	(linear_constraints_ok): Likewise.
+	(nonlinear_constraints_ok): Likewise.
+
+	* src/f-qpsol.cc (qpsol): Don't try to create the linear
+	constraint object before checking array sizes.  Wouldn't exception
+	handling be nice?
+	Call error(), not message(), to print error messages.
+	Check to ensure that the bounds on linear constraints are
+	vectors.
+
+	* src/lex.l (lookup_identifier): Don't bind global variables
+	immediately in loops or conditionals, even at the top level.
+
+Sun Oct 10 8:48:00 1993  John Eaton  (jwe@schoch.che.utexas.edu)
+
+	* README.doc: New file.
+	* Makefile.in (doc-dist): New target.
+	* doc/Makefile.in (FORMATTED): New macro.
+	(doc-dist): New target.
+
+	* src/tree.cc (tree_identifier::eval): Don't print anything if an
+	error is encountered.
+	(tree_simple_assignment_expression::eval): Likewise.
+
+	* src/tc-assign.cc (do_matrix_assignment): Handle resizing
+	correctly when indices are (:,range), (:,matrix), (range,:), or
+	(matrix,:) and the lhs is empty or undefined.
+
+Tue Oct  5 04:02:37 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.76 released.
+
+	* src/octave.cc (main):	Print usage message if we are given more
+	than one extra argument on the command line.
+	Delay printing startup message until just before setting the toplevel
+	jump context.
+
+	* src/lex.h (DO_COMMA_INSERT_CHECK): Delete unused macro.
+
+	* src/lex.l (handle_identifier): New function.
+	({IDENT}/{S}*=, {IDENT}{S}*): Use it instead of duplicating code.
+	(do_comma_insert_check): Use yyunput instad of returning original
+	character count.
+	Call directly instead of using DO_COMMA_INSERT_CHECK macro.
+
+Mon Oct  4 08:06:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.75.4.
+
+	* src/tree-const.cc (tree_constant_rep::eval ()): Avoid calling
+	rows() and columns() for things like magic_colon.
+
+Sun Oct  3 19:39:33 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	Changes to add line and column info to run-time error messages:
+
+	* src/tree.cc (tree_identifier, tree_prefix_expression,
+	tree_postfix_expression, tree_simple_assignment_expression,
+	tree_multi_assignment_expression, tree_colon_expression,
+	tree_index_expression): Modify constructors to allow line and
+	column information to be stored.
+	(abort_on_undefined): Delete (now) unnecessary static variable.
+	(all eval() functions): If error_state, return immediately.
+	(tree_matrix::eval ()): Call error and return tree_constant()
+	instead of jumping to top level on error.
+	(tree_identifier::parse_m_file ()): When starting to read an
+	M-file, initialize current_input_column to 1, not 0.
+	(tree_identifier::eval_undefined_error ()): Improve error message
+	with line and column info if it is available.  Don't abort to top
+	level on errors.
+	(tree_function::traceback_error ()): New function.
+	(tree_function::eval ()): Don't jump to top level on errors.
+	Call traceback_error if there is an error evaluating the command
+	list.
+
+	* src/tree.cc (tree_prefix_expression::eval_error ()): New function.
+	(tree_postfix_expression::eval_error ()): Ditto.
+	(tree_unary_expression::eval_error ()): Ditto.
+	(tree_binary_expression::eval_error ()): Ditto.
+	(tree_simple_assignment_expression::eval_error ()): Ditto.
+	(tree_multi_assignment_expression::eval_error ()): Ditto.
+	(tree_colon_expression::eval_error ()): Ditto.
+	(tree_index_expression::eval_error ()): Ditto.
+
+	* src/tree.cc (tree_function::stash_function_name ()): New function.
+	* src/parse.y (FCN): Use it.
+
+	* src/lex.l: Return line and column info for many (but not all)
+	tokens.
+
+	* src/parse.y: Handle token values with the token class defined in
+	token.cc.
+	(check_end ()): New function.
+	(end_error ()): Improve error messages by including line and
+	column info.
+
+	* src/arith-ops.cc (lots of functions): Don't jump to top level on
+	errors.
+	* src/tree.cc (tree_unary_expression::eval ()),
+	tree_binary_expression::eval ()): Handle error condition here.
+
+	* src/gripes.cc (gripe_nonconformant): Add additional form of this
+	function to allow message to include dimensions.  Change most
+	callers to use new form
+
+	* src/octave.cc: Initialize column counter to 1, not 0.
+	(main): Reset error_state before evaluating each top level
+	command.
+
+	* src/tree-plot.cc (tree_plot_command::eval ()): If error_state,
+	return immediately.
+
+	* src/tree-const.cc (do_binary_op ()): Return tree_constant() instead
+	of jumping to top level on errors.
+	(do_unary_op): Likewise.
+	(tree_constant_rep::eval ()): If error_state, return immediately.
+	Convert 1x1 matrices to scalars.
+
+	* src/tc-assign.cc (tree_constant_rep::do_scalar_assignment ()):
+	Don't jump to top level on error.
+	If there is an error while attempting to convert an undefined
+	variable to a matrix, don't suddenly create an empty matrix.
+	(tree_constant_rep::fortran_style_matrix_assignment ()): Check
+	return value of range_max_check() and don't jumpt to top level on
+	errors.
+	(tree_constant_rep::vector_assignment ()): Check return value of
+	index_check and don't jump to top level on errors.
+	(tree_constant_rep::check_vector_assign ()): Don't jump to top
+	level on errors.
+	(tree_constant_rep::do_matrix_assignment ()): Check return value
+	of index_check and don't jump to top level on errors.
+
+	* src/tc-extras.cc (get_dimensions ()): Call error (sets error state)
+	but don't jump to top level on errors.
+	(fill_matrix): Return tree_constant() on error.
+	(identity_matrix): Likewise.
+
+	* src/error.cc (error_state): New global variable, initialize to zero.
+	(error): Set it to one.
+
+	* src/tc-index.cc (tree_constant_rep::valid_as_scalar_index ()):
+	Don't declare unused variable retval.
+	(tree_constant_rep::do_scalar_index ()): Return tree_constant()
+	instead of jumping to top level on error.
+	(tree_constant_rep::fortran_style_matrix_index): Don't jump to top
+	level on indexing or range errors.
+	(tree_constant_rep::do_vector_index ()): Likewise.
+	(tree_constant_rep::do_matrix_index ()): Likewise.
+
+	* src/tc-inlines (range_max_check): Return -1 instead of jumping
+	to top level on error.
+	(index_check): Likewise.
+
+	* src/utils.cc (check_dimensions): Call error, not warning, and
+	don't jump to top level.
+
+	* src/tree-base.h (line_num, column_num): New data members for all
+	tree classes.
+	(line (), column ()): New virtual functions to access line and
+	column info.
+
+	* src/lex.l (enum end_tok_type, enum plot_tok_type): Delete
+	declarations (now in token.h).
+
+	* src/lex.h (YY_INPUT, YY_FATAL_ERROR, DO_COMMA_INSERT_CHECK,
+	TOK_RETURN, BIN_OP_RETURN): Move macro definition here, from
+	lex.l.  Rename RETURN TOK_RETURN.
+
+	* src/token.cc, token.h: New files that define a class for tokens
+	that includes line and column information.
+
+Wed Sep 29 11:15:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/octave.cc: Use GNU getopt to handle option parsing.
+	* src/getopt.h src/getopt.c src/getopt1.c: New files for GNU
+	getopt.
+	* src/Makefile.in: Add them to the appropriate lists.
+
+	* src/utils.cc (raw_mode): Use the termios.h terminal driver
+	interface if it is available.
+	* configure.in: Check for termios.h
+
+	* src/tree-plot.cc (tree_subplot_list::print (int, ostrstream&)):
+	If the data to be plotted is a string but it doesn't name a file,
+	try sending it to gnuplot directly.
+
+Tue Sep 28 16:06:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/QPSOL.cc (QPSOL::minimize (double&, int&, Vector&)):
+	Correct dimensions of work arrays, based on QPSOL source.
+	Pass ncon, which is max (1, nclin), not n, as the row dimension of
+	clin.
+
+	* src/f-npsol.cc (linear_constraints_ok): Improve warning for the
+	case of constraints with zero dimensions.
+	(nonlinear_constraints_ok): Likewise.
+
+Mon Sep 27 01:20:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.75.3.
+
+	* Makefile.in (dist): Make file permissions for distribution rw.
+	(binary-dist): Ditto.
+	(local-dist): Ditto.
+
+Sat Sep 25 15:29:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/pr-output.cc: Include stdio.h, for sprintf.
+
+	* src/input.cc (octave_gets): Set octave_gets_line to NULL after
+	freeing it.
+
+	* Version 0.75.2.
+
+	* liboctave/Matrix.cc (Matrix::operator * (const ColumnVector&):
+	Correct dimension of return value.
+	(ComplexMatrix::operator * (const ComplexColumnVector&)): Ditto.
+
+Tue Sep 21 20:42:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree.cc (tree_identifier::assign (tree_constant&)):
+	Correctly handle case of hiding a function with a variable when
+	the variable has not been flagged as global.
+	tree_identifier::assign (tree_constant&, tree_constant*, int)):
+	Likewise.
+
+	* src/variables.cc (force_global): When a variable is moved to the
+	global symbol table, mark it as global.
+
+	* src/symtab.cc (symbol_record::symbol_record ()): Initialize
+	forced_global.
+	(symbol_record::clear_visible ()): Reset forced_global to zero.
+	(symbol_record::clear_all ()): Ditto.
+	(symbol_record::mark_as_forced_global ()): New function.
+	(symbol_record::is_forced_global ()): New function.
+	(symbol_record::alias ()): Also copy forced_global attribute.
+
+	* src/symtab.h (symbol_record::forced_global): New private data
+	member, used to record when a variable has been explicitly
+	declared global.
+
+	* src/lex.l (lookup_identifier): Look in current scope first.
+
+Mon Sep 20 03:15:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/parse.y, src/tree.cc, src/tree.h: Allow `for' command to
+	assign to an index expression, not just an identifier.
+
+	* src/t-builtins.cc (builtin_clear (int, char **)): Don't delete
+	g_names twice.
+
+	* src/symtab.cc	(symbol_table::list (int&)): Make sure count is
+	initialized to zero.
+	(symbol_table::var_list (int&)): Ditto.
+	(symbol_table::fcn_list (int&)): Ditto.
+
+Sat Sep 18 04:06:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/lex.l, src/parse.y, src/parse.h: Use new global variable
+	past_plot_range to make gplot and gsplot smarter about
+	distinguishing plot ranges and literal matrices.
+
+Fri Sep 17 01:06:30 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.75.1 released.
+
+	* src/f-qzval.cc: Include <float.h> for DBL_EPSILON.
+
+	* src/symtab.cc (symbol_record::save (ostream&, int)): Don't print
+	a warning for ans being undefined.  Call warning to print the
+	message, and change the text to make it clearer.
+	(symbol_table::save (ostream&, int)): Don't crash if there aren't
+	any symbols to save.
+
+Thu Sep 16 00:21:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/t-builtins.cc (builtin_help): When trying harder to find
+	help for M-files, only insert the symbol into the global symbol
+	table if there really is an M-file of the given name in the path.
+
+Wed Sep 15 02:08:27 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.75.
+
+	* src/Makefile.in (INCLUDES): Distribute defaults.h
+	(%.d: %.cc): Don't fail if we can't determine dependencies.
+	(DISTFILES): Include move-if-change.
+
+Tue Sep 14 21:23:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/perror.m: Use err, not info for fsolve section.
+
+Mon Sep 13 19:29:26 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/utils.cc (get_m_file_names): Call closedir(), not free(), to
+	dispose of directory structure.
+
+Sun Sep 12 19:07:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-const.cc (tree_constant_rep::double_value): Rearrange
+	to avoid warning about reaching end of non-void function.
+	(tree_constant_rep::matrix_value): Ditto.
+
+	* src/error.cc (panic): Declare volatile.
+	* src/utils.cc (jump_to_top_level): Declare as `void volatile',
+	not `volatile void'.
+
+	* src/tree-const.cc (tree_constant_rep::complex_matrix_value):
+	Make it work even if the internal representation is really a real
+	or complex scalar or a real matrix.
+	(tree_constant_rep::complex_scalar_value): Make it work even if
+	the internal representation is really a real scalar.
+
+	* src/f-syl.cc (syl): Delete ComplexMatrixLoad().
+	Use complex_matrix_value(), not ComplexMatrixLoad().
+
+	* src/tree-const.cc (vector_of_empties): Renamed from empty_tree,
+	moved from f-syl.cc.
+
+	* src/f-syl.cc (syl): Call vector_of_empties() instead of empty_tree().
+	* src/f-qzval.cc (qzvalue): Ditto.
+
+	* src/tree-const.h (tree_constant::is_empty): New inline function.
+
+	* src/f-syl.cc (syl): Call is_empty instead of empty_arg.
+	* src/f-qzval.cc (qzvalue): Ditto.
+	* src/f-expm.cc (matrix_exp): Ditto.
+
+Thu Sep  9 22:40:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/Matrix.cc (Matrix::transpose): Make it work for empty
+	matrices.
+	(ComplexMatrix::transpose): Ditto.
+
+Mon Sep  6 04:56:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/tree-plot.cc (tree_subplot_list::print): 	If the plot data
+	is a string and it names a file, plot the data in the file.
+
+	* src/octave.cc (execute_startup_files): Try harder to avoid
+	executing $HOME/.octaverc twice.
+
+	* liboctave/DAE.cc (DAE::integrate (Vector&, Matrix&, Vector&)):
+	Add missing parameter in call to integrate() if no critical points
+	are specified.
+
+Sat Sep  4 16:18:49 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
+
+	* src/octave.cc (execute_startup_files): Don't execute
+	$HOME/.octaverc twice.
+
+Mon Aug 30 11:25:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/t-builtins.cc (builtin_clear): Handle regular expressions.
+
+Fri Aug 27 07:25:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/RowVector.cc:
+	(RowVector::operator * (const ColumnVector& a) const): Fix brain-o.
+
+Wed Aug 18 00:29:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* list_primes.m: New M-file.
+
+	* src/tc-index.cc (do_scalar_index): Handle two vector args of all
+	ones.
+
+Tue Aug 17 06:26:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/file-io.cc (process_printf_format): Use NINT for * modifier
+	argument.
+
+Mon Aug 16 19:30:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/mappers.cc: (arg (double)): Return pi for negative real values.
+
+Sun Aug 15 05:08:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/octave-hist.cc (mk_tmp_hist_file): New function, extracted
+	from do_edit_history.
+	(do_edit_history): Simplify using mk_tmp_hist_file.
+	(do_run_history): New function.
+	(edit_history_repl_hist): New function.
+
+	* src/t-builtins.cc (builtin_run_history): New function.
+
+	* src/builtins.cc (text_functions): Add run_history to the list.
+
+Fri Aug 13 16:04:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tzero.m: New M-file.
+	* abcdchk.m: New M-file.
+	* is_symmetric.m: Use tol and norm (A) to decide if A' is close
+	enough to A to be considered the same.
+
+Wed Aug 11 15:50:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.74.1.
+
+	Merge in expm changes from A. S. Hodel <scotte@eng.auburn.edu>:
+
+	* f-expm.{h,cc}: New files.
+	* src/Makefile.in: Include them in the usual places.
+	* src/g-builtins.cc (builtin_expm): The new matrix_exp returns a
+	tree_constant by value.
+	Include f-expm.h
+	* src/tc-extras.cc (matrix_exp): Delete function.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	Merge in qzval changes from A. S. Hodel <scotte@eng.auburn.edu>:
+
+	* f-qzval.{h,cc}: New files.
+	* src/Makefile.in: Include them in the usual places.
+	* src/g-builtins.cc (builtin_qzval): New function.
+	Include f-qzval.h
+	* src/g-builtins.h: Declare builtin_qzval.
+	* src/builtins.cc (general_functions): Add qzval to the list.
+
+	* libcruft/eispack: New directory.
+	* libcruft/Makefile.in (SUBDIRS): Include it.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Add libcruft/balgen/Makefile and
+	libcruft/eispack/Makefile to the list of files to frob.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	Merge in syl changes from A. S. Hodel <scotte@eng.auburn.edu>:
+
+	* lyap.m: New M-file.
+
+	* f-syl.{h,cc}: New files.
+	* src/Makefile.in: Include them in the usual places.
+	* src/g-builtins.cc (builtin_syl): New function.
+	Include f-syl.h
+	* src/g-builtins.h: Declare builtin_syl.
+	* src/builtins.cc (general_functions): Add syl to the list.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/g-builtins.cc (builtin_balance): Fix typo in doc string.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	Merge in givens changes from A. S. Hodel <scotte@eng.auburn.edu>:
+
+	* f-givens.{h,cc}: New files.
+	* src/Makefile.in: Include them in the usual places.
+	* src/g-builtins.cc (builtin_givens): New function.
+	Include f-givens.h
+	* src/g-builtins.h: Declare builtin_givens.
+	* src/builtins.cc (general_functions): Add givens to the list.
+
+	* src/Makefile.in: (defaults.h) Quote substitutions.
+	Use %foo%, not @foo@ to mark substitution.
+	* src/defaults.h.in: Use %foo%, no @foo@ to do mark things to
+	substitute.
+
+	* qzhess.m: New M-file.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	Merge in balance changes from A. S. Hodel <scotte@eng.auburn.edu>:
+
+	* are, is_controllable.m, is_observable.m, is_square.m,
+	is_symmetric.m:  New M-files.
+
+	* Matrix.h (AEPBALANCE): New class.
+	(ComplexAEPBALANCE): New class.
+	(GEPBALANCE): New class.
+	* Matrix-ext.cc: Add init functions for balancing classes.
+
+	* src/f-balance.{h,cc}: New files.
+	* src/Makefile.in: Include them in the usual places.
+	* src/g-builtins.cc (builtin_balance): New function.
+	Include f-givens.h
+	* src/g-builtins.h: Declare builtin_balance.
+	* src/builtins.cc (general_functions): Add balance to the list.
+
+	* libcruft/balgen: New directory.
+	* libcruft/Makefile.in (SUBDIRS): Include it.
+
+Tue Aug 10 20:06:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Use AC_HAVE_LIBRARY to check for -lm.
+
+	* src/Makefile.in (defaults.h): Quote substitutions.
+
+Mon Aug  9 13:30:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* README.NLP: New file.
+	* Makefile.in (DISTFILES): Distribute it.
+
+Sun Aug  8 19:05:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/move-if-change: New file.
+	* src/Makefile.in (DISTFILES): Distribute it.
+	(defaults.h): New rule.
+	(utils.o): Delete rule, since extra defines are no longer needed.
+	(INCLUDES): Distribute defaults.h.in.
+	* src/utils.cc: Include defaults.h to get DEFAULT_PAGER and
+	OCTAVE_HOME instead of depending on having them defined by the
+	compile command.
+
+	* configure.in (DEFAULT_PAGER): Use AC_PROGRAMS_CHECK.
+	If we find less, add `-e' flag, so users won't have to type q to
+	quit paging.
+
+Sat Aug  7 13:34:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* f-*.cc: Renamed from tc-*.cc.  (Use f- as the file prefix
+	because most of these functions are ultimately implemented in
+	Fortran, and, most importantly, it keeps them grouped together.)
+	* f-*.h: New files, for external declarations of visible functions
+	defined in f-*.cc.
+	* g-builtins.cc: Include them all.
+	* tree-const.h: Don't declare these functions as friends.
+	* Makefile.in: Cope with new names.
+
+	* octave.cc (parse_and_execute (char *, int)): Don't declare static.
+	* octave.h: Declare it extern here.
+	* octave-hist.cc (do_edit_history): Use it here.
+
+	* octave-hist.cc (do_edit_history): New function.
+	* t-builtins.cc (builtin_edit_history): Use it.
+
+	* t-builtins.cc, t-builtins.h, builtins.cc: Rename edit to
+	edit_history.
+
+	* octave-hist.cc (do_history): Print line numbers by default.
+	Allow quieter output with -q option.
+
+	* g-builtins.cc (builtin_hess): Use DLD_BUILTIN macro to call hess.
+	* g-builtins.cc (builtin_schur): Likewise
+
+	* tc-hess.cc (builtin_hess_2): Call hess with corrrect args.
+	* tc-schur.cc (builtin_schur_2): Likewise, for schur dude :-).
+
+	* tc-fsqp.cc (builtin_fsqp_2): Fix typo.
+
+Thu Aug  5 23:14:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* input.cc (octave_read): Ensure that the last character in the
+	buffer is a new line.
+
+Wed Aug  4 19:25:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y (func_def2): Also warn if we encounter a function
+	definition with the same name as the script file we are reading.
+
+	* tree.cc (tree_identifier::do_lookup): Always return NULL_TREE if
+	a script file was executed.
+
+Tue Aug  3 23:25:45 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* file-io.cc: Delete useless static keyword from File_info class
+	declaration.
+	* unwind-prot.cc: Likewise, for unwind_elem and saved_variable
+	classes.
+	* tc-rand.cc: Likewise, for enum rand_dist declaration.
+	* arith-ops.cc:  Likewise, for enum Matrix_bool_op declaration.
+	* tree.cc: Likewise, for struct const_matrix_list declaration.
+
+Fri Jul 23 01:40:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* sysdep.cc (malloc_handler): Add missing arg to call to message().
+
+Tue Jul 20 04:09:32 1993  John W. Eaton  (jwe@june.che.utexas.edu)
+
+	* Version 0.74 released.
+
+	* doinstall.sh (version): Run `./octave -v' to get the version
+	number instead of grabbing it from version.h.
+	* Fail if we can't get a version number.
+	* Install ./octave, not src/octave.
+
+	* Makefile.in (binary-dist): Don't depend on all.
+	* Link src/octave to ./octave.  (Now that there's no source in
+	binary distributions, why have a src directory?)
+
+	* file-io.cc (process_scanf_format): Rename local variable `i' to
+	`chars_from_fmt_str'.
+	* (process_printf_format): Likewise.
+
+	* sighandlers.cc (can_interrupt): New global variable.
+	* (sigint_handler): Use it to decide whether to jump to top level.
+	* octave.cc (main): Set it after calling setjmp.
+
+	* octave.cc (main): Declare saved_sigint_handler to be volatile.
+
+	* tree.cc, tree-plot.cc, t-builtins.cc, pager.cc, g-builtins.cc,
+	file-io.cc: Terminate strstream strings with ends instead of just
+	using '\0'.
+
+	* file-io.cc (process_scanf_format): Skip leading white space for
+	%s conversions.
+	* (fopen_file_for_user): Pass tree_constant arg by reference.
+	* (do_scanf): If doing fprintf, don't fail if first arg is a
+	string.
+
+Mon Jul 19 16:00:22 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (pstrcmp): Declare to take char** args, not char*.
+
+Sun Jul 18 13:02:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* file-io.cc (return_valid_file): Pass arg by reference.
+
+	* file-io.cc (fclose_internal, fgets_internal, fseek_internal):
+	Eliminate unnecessary casts to double.
+
+	* file-io.cc (return_valid_file, fgets_internal, fopen_internal,
+	do_printf, do_scanf): Use is_string_type instead of doing the
+	comparison ourselves.
+	* g-builtins.cc (builtin_exist, builtin_getenv,
+	builtin_shell_command): Ditto.
+	* tc-colloc.cc (collocation_weights): Ditto.
+	* tc-extras.cc (eval_string, get_user_input): Ditto.
+	* tc-rand.cc (rand_internal): Ditto.
+	* tree-plot.cc (tree_subplot_list::print): Ditto.
+	* variables.cc (is_valid_function, octave_string_variable): Ditto.
+
+Thu Jul 15 02:29:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/Makefile.in (TEXINFO): Distribute texinfo.tex too.
+
+	* t-builtins.cc (load_variable): Warn if replacing local symbol
+	with global from file.
+	* Warn if variable is not marked as global in a file, but already
+	exists as a global symbol, then go ahead and load it as a global.
+
+Tue Jul 13 01:47:48 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (lookup_identifier): Never alias to global here.
+	* tree.cc (do_lookup): Don't alias formal parameters to global.
+	* variables.cc (force_global): Likewise.
+	* symtab.cc (symbol_table::bind_globals): Likewise.
+
+	* symtab.h (symbol_record::formal_param): New field.
+	* symtab.cc (symbol_record::mark_as_global_parameter): New function.
+	* (symbol_record::is_formal_parameter): Ditto.
+	* tree.cc (tree_identifier::mark_as_formal_parameter): Ditto.
+	* (tree_parameter_list::mark_as_formal_parameters): Ditto.
+	* parse.y (param_list): Use it to tag formal parameters.
+	* (func_def1): Ditto.
+
+	* arith-ops.cc (DIVIDE_BY_ZERO_ERROR): On IEEE machines, allow
+	divide by zero errors to be suppressed.
+	* user-prefs.h (warn_divide_by_zero): New user preference.
+	* user-prefs.cc (warn_divide_by_zero): New function.
+	* builtins.cc (builtin_string_variables): Install it with default
+	value of true.
+
+	* tree.cc (tree_multi_assignemnt_expression): Use tree_return_list
+	instead of tree_param_list.
+	* (tree_multi_assignment_expression:eval): Make it work.
+
+	* tree.cc (tree_return_list): New class.  Allow index expressions
+	and identifiers in return lists.
+	* (tree_matrix::to_return_list): Rename from to_param_list.
+	* parse.y (expression): Use it.
+
+	* parse.y: Increment and decrement maybe_screwed_again instead of
+	just setting it to zero or one.
+
+Mon Jul 12 03:23:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-assign.cc (tree_constant_rep::do_matrix_assignment): Handle
+	case of lhs being of unknown type.
+
+	* lex.l (check_for_garbage_after_fcn_def): Also ignore trailing
+	commas and semicolons.
+
+Sun Jul 11 00:08:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.73.1 released.
+
+	* symtab.cc (symbol_record::alias): Also copy pointer to sv_fcn.
+
+Sat Jul 10 14:34:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_function::eval (int, char **, int): New function.
+
+	* symtab.cc (symbol_table::bind_globals): New function.
+	* tree.cc (tree_function::eval): Use it to associate local symbols
+	with global data.
+
+	* symtab.cc (alias): Add optional parameter `force'.
+
+	* Version 0.73 released.
+
+	* pr-output.cc: Use D_NINT instead of NINT in some cases to avoid
+	overflow problems on systems that don't have IEEE Inf.
+	* mappers.cc (round): Likewise.  Also avoids conversion of Inf to
+	INT_MAX on systems that do have IEEE Inf.
+
+	* builtins.h: Remove definition of NINT.
+	* tree.h: Likewise.
+	* tree-const.h: Likewise.
+
+	* utils.cc (NINT): Move function here and improve handling of
+	extreme values.
+	* (D_NINT): New function.
+
+	* scripts/isempty.m: Don't require the number of rows and columns
+	to both be zero.
+
+Thu Jul  8 16:25:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.72.2.
+
+	* configure.in: Do a better job of grabbing the last argument as
+	the target_host_type and avoiding setting it to things like
+	--prefix=/foo/bar
+
+	* tree-const.cc (tree_constant_rep::save): Add default case for
+	mark_as_global switch to avoid warnings from gcc.
+
+	* variables.cc (force_global): Cope with symbol table changes.
+	* tree.cc: (tree_identifier::do_lookup): Likewise.
+	* lex.l (lookup_identifier): Likewise.
+	* builtins.cc (install_builtins): Likewise.
+
+	* symtab.cc, symtab.h: Massive internal rewrite.
+
+Wed Jul  7 02:18:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-assign.cc (tree_constant_rep::do_scalar_assignment): If rhs
+	is a scalar type, also handle case of lhs being of unknown type.
+	* Be sure to set the new type of the lhs.
+
+	* tree-base.h: Don't include symtab.h.
+	* tree-const.h: Ditto.
+
+Tue Jul  6 22:47:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y (func_def2): Remove the function name from the top-level
+	symbol table if defining on command line (an M-file would never be
+	parsed if there was already an entry with the same name in the top
+	level symbol table).
+
+	* parse.y (word_list_command): Allow clear without any arguments.
+	* tree.cc (word_list_command::eval): Handle word list commands
+	with no arguments.
+
+Mon Jul  5 14:43:30 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.72.1.
+
+	* help.cc (operators): Document the double quote character.
+
+	* lex.l (getting_help): Delete unused variable.
+	* (HELP_FCN): New exclusive start state.
+	* ({IDENT}{S}*): Set start state to HELP_FCN instead of setting
+	getting_help.
+	* ({IDENT}/{S}*=): Likewise.
+
+	* symtab.cc (symbol_table::load): Delete unused function.
+
+	* tree-const.cc (tree_constant::load): Return flag telling whether
+	the constant is global.
+	* t-builtins.cc (builtin_load): Handle global variables.
+	* (builtin_save): Likewise.
+
+	* symtab.cc (symbol_record::save): Don't save builtin variables
+	(variables marked as eternal are assumed to be builtin).
+
+	* symtab.cc (symbol_record::mark_from_global): New function.
+	* (symbol_def::undefine): Add optional argument to prevent
+	deleting symbol's definition.
+	* (symbol_table::undefine): If this variable has been marked as
+	defined from a global, call symbol_def::undefine with arg = 1.
+	* tree.cc (tree_identifier::do_lookup): If a local symbol is
+	defined from a global, mark it as such.
+
+	* symtab.cc (symbol_record::define (symbol_record*)): Delete
+	unused function.
+
+	* tree.cc (tree_identifier::do_lookup (int&)): Use operator=
+	instead of symbol_record::define().
+	* variables.cc (force_global (char*)): Likewise.
+
+Sun Jul  4 01:27:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (symbol_record): Define copy constructor and operator=.
+
+	* builtins.cc (install_builtins): Make `i' and `j' read-only
+	functions.
+
+	* symtab.cc (symbol_record::define): Respect read-only status of
+	variables and functions.
+
+Sat Jul  3 19:11:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* user-prefs.h (print_empty_dimensions): New user preference variable.
+	* user-prefs.cc (print_empty_dimensions): New function.
+	* builtins.cc (print_empty_dimesions): Make default value true.
+	* tree-const.cc (tree_constant_rep::eval): Use value here.
+
+	* cond.m: Handle empty matrices.
+	* tc-det.m (determinant): Likewise.
+	* tc-inv.m (inverse): Likewise.
+
+	* tc-hess.cc (hess): Use gripe_square_matrix_required instead of
+	calling error.
+	* tc-schur.cc (schur): Likewise.
+
+	* builtins.cc (propagate_empty_matrices): Change default value to
+	true.
+
+	* tree-const.cc (tree_constant_rep::eval): If a matrix has zero
+	rows or columns, also print the dimension along with the `[]'
+	symbol.
+
+	* tree-const.cc (do_binary_op): If ok to propagate empty matrices,
+	go ahead and do the binary operation so that the result will have
+	consistent dimensions.
+	* (do_unary_op): Likewyse.
+
+	* tc-extras.cc (get_dimensions): Don't force both nr and nc to
+	zero if one is.
+	* Matrix.cc, DiagMatrix.cc, ColVector.cc, RowVector.cc: Handle
+	matrices with zero dimensions in a more consistent fashion.
+
+Thu Jul  1 00:27:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* perror.m: New M-file.
+
+	* LP.h, LP.cc: New interface for linear programmming.
+	* LPsolve.h LPsolve.cc: New files to implement linear programming
+	using lp_solve.
+
+	* NPSOL.cc (minimize): Also return the vector of Lagrange
+	multipliers.
+	* tc-npsol.cc (npsol): Optionally return them.
+
+	* QPSOL.cc (minimize): Also return the vector of Lagrange
+	multipliers.
+	* tc-qpsol.cc (qpsol): Optionally return them.
+
+	* tc-qpsol.cc (qpsol): Make it work.
+
+Wed Jun 30 02:19:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_lpsolve): New function.
+	* (builtin_qpsol): Ditto.
+	* builtins.cc (general_functions): Add them to the list.
+
+	* tc-lpsolve.cc: New file.
+	* tc-qpsol.cc: Ditto.
+	* src/Makefile.in: Add them to the list of SOURCES and DLD_OBJECTS.
+
+Tue Jun 29 15:02:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/DAE.cc (integrate): If stop_time_set is false, reset
+	default value for info[3].
+	* liboctave/ODE.cc (integrate): Likewise, reset default values of
+	iopt and itask.
+
+	From Thorsten Ohl <ohl@physics.harvard.edu>:
+	* config.guess: Add check for NeXT.
+	* configure.in: Add check for NeXT so that readline is configured
+	properly (really need to improve readline's configuration scheme).
+	* sysdep.cc (malloc_handler): New function for handling malloc
+	errors on NeXT systems.
+
+	* octave.cc (main): Call sysdep_init before anything else.
+
+	* sysdep.cc: New file for system dependent things.
+
+	* octave.cc (initialize_globals): Only pass argv[0] since that's
+	the only thing that's used.
+
+Sat Jun 26 13:00:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_builtin::eval (int, char**, int)): Don't panic if
+	called for something other than a text_fcn.
+
+	* t-builtins.cc (builtin_cd): Rewrite to fix bogus memory
+	problems.
+
+Fri Jun 25 15:23:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.cc (builtin_cd): Don't delete value returned by
+	get_working_directory.
+	* g-builtins.cc (builtin_pwd): Likewise, and simplify.
+
+	* utils.cc (make_absolute): Always create a new copy to return.
+	* utils.cc (change_to_directory): Don't delete pointer returned
+	from get_working_directory().
+	* (file_in_path): Likewise.
+
+Thu Jun 24 16:48:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l ({IDENT}{S}*): Always insert a comma if the next token
+	doesn't look like some sort of operator, not just if
+	convert_spaces_to_comma is also true (it may have been turned off
+	by BIN_OP_RETURN).
+
+	* tree-const.h (matrix_ptr): Delete function.
+	* tc-extras.cc (frobit): Delete function.
+	* (get_dimensions): New function.
+	* (identity_matrix): Completely rewrite.
+	* (fill_matrix): Likewise.
+
+Wed Jun 23 13:50:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix-ext.cc (SCHUR::init): Also allow ord flag to be lowercase.
+	* (ComplexSCHUR::init): Ditto.
+	* tc-schur.cc (schur): Likewise.
+
+	* Matrix-ext.cc (SCHUR::init): Declare sort as char, not char*,
+	and pass its address to Lapack.
+	* (ComplexSCHUR::init): Ditto.
+
+	* Matrix-ext.cc (SCHUR::select_dig): Make static, and move ahead
+	of first reference in file.
+	* (SCHUR::select_ana): Likewise.
+	* (ComplexSCHUR::select_complex_dig): Likewise.
+	* (ComplexSCHUR::select_complex_ana): Likewise.
+
+	* builtins.cc (install_builtins): Add `J' as an alias for `I'.
+
+	* builtins.cc (install_builtins): Always create a new
+	tree_constant for each variable, since the symbol table doesn't
+	know how to share them.
+
+	* tc-schur.cc (schur): Use warning and error functions instead of
+	writing directly to cerr.
+	* tc-hess.cc (hess): Ditto.
+
+	* src/Makefile.in (DLD_OBJECTS): Include tc-schur.o and tc-hess.o.
+	* (SOURCES): Add tc-schur.cc tc-hess.cc.
+
+	* Merge Schur and Hessenberg changes:
+
+	Fri Mar 19 11:01:19 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
+
+	* src/builtins.cc: Changed schur definition to include one more
+	input.  Also changed the help line description
+	* src/g-builtins.cc: Changed builtin_schur to accept two inputs
+	Also changed the information to explain ordered schur operation.
+	* src/tc-schur.cc Added extensions to the SCHUR and ComplexSCHUR
+	calls to pass extra paramater.  Also added check for proper param.
+	* liboctave/Matrix.h: Modified declarations dgeesx and zgeesx to
+	accept address of select function.  Modified class structures for
+	SCHUR and ComplexSCHUR to accept extra ordered schur param.
+	* liboctave/Matrix-ext.cc: Added extensions for the extra ordered
+	schur paramater.
+
+	Wed Mar 17 15:23:14 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
+
+	* liboctave/Matrix-ext.cc (HESS and ComplexHESS): Added the
+	Hessenburg decomposition routines.
+	* liboctave/Matrix.h Added fortran lapack functions definitions
+	used in the Hessenburg procedure.
+	* src/g-builtins.cc (builtin_hess): Hessenburg Decomposition routine
+	added
+	* src/g-builtins.h (builtin_hess): Added extern definition.
+	* liboctave/Matrix.h Added classed HESS and ComplexHESS
+	* src/tree_const.h added defs for hess.
+	* src/tc-hess.cc (hess): New file for hess function.
+
+	Tue Mar 16 10:46:32 1993  R. Bruce Tenison (btenison@eng.auburn.edu)
+
+	* src/g-builtins.cc (builtin_schur): Schur Decomposition routine
+	added.
+	* src/g-builtins.h (builtin_schur): Added extern definition.
+	* liboctave/Matrix.h Added Classes SCHUR and Complex SCHUR, and
+	added defs for zgeesx and dgeesx (lapack schur decomp)
+	* liboctave/Matrix-ext.cc (SCHUR and Complex SCHUR): Ditto.
+	* src/tree-const.h added defs for schur.
+	* src/tc-schur.cc (schur): New file for schur function.
+
+Tue Jun 22 20:18:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (check_for_garbage_after_fcn_def): New function
+	* parse.y (fcn_end_or_eof): If reading from an M-file, use it to
+	print warning about trailing garbage after the end of a function
+	has been found.
+
+Mon Jun 21 20:21:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-assign.cc (tree_constant_rep::assign): Handle case of
+	assignment to unknown constant too.
+	* (tree_constant_rep::do_scalar_assignment): Don't fail for
+	unknown_constant type.
+	* (tree_constant_rep::do_matrix_assignment): Likewise.
+
+	* tree-const.cc (rows): Return 0 for unknown_constant type.
+	* (columns): Likewise.
+
+	* tree.cc (tree_identifier::assign): Defer defining symbol until
+	assignment is successful.
+	* When creating a new dummy tree_constant to assign a value to,
+	leave it an unknown_constant type.
+
+	* tc-assign.cc (do_scalar_assignment): If the right hand side
+	isn't a scalar, maybe try to resize instead.
+	* (do_matrix_assignment): For A(:,int) and A(int,:) cases, also
+	resize if left hand side is a scalar.
+
+	* norm.m: Allow "fro" to work for scalars and vectors too.
+
+Sun Jun 20 01:17:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* NLConst.cc: New file.  Move inline function definitions here
+	from NLConst.h.
+
+	* Objective.cc: New file.  Move inline function definitions here
+	from Objective.h
+
+	* tree.cc (tree_word_list_command::eval): Call strsave for argv[0]
+	too, and delete argv before returning.
+	* (tree_builtin::eval): Likewise, for text functions with no
+	arguments.
+
+Sat Jun 19 01:37:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (parse_and_execute): Delete calls to delete_buffer
+	and switch_to_buffer, since that is taken care of by unwinding the
+	frame.
+
+Fri Jun 18 00:08:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_matrix::eval): Delete useless direct = ptr->direct
+	and ptr = ptr->next statements from size-determining loop.
+
+	* parse.y (opt_list): New rule.  Replace all occurrences of list
+	with opt_list.
+
+	* tree.cc: (tree_index_expression::eval (int, int)): Don't
+	complain if the index expression has an empty argument list.
+
+	* octave.cc (initialize_globals): Check return value of
+	getenv ("HOME") against NULL, not the global variable
+	home_directory that we are trying to initialize.
+
+	* tree.cc (tree_function::eval): Quick return if command list
+	is empty.
+	* parse.y (func_def3): Allow empty function bodies.
+
+Thu Jun 17 02:08:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_while_command): Add constructor for case of
+	expression only.
+	* parse.y (statement): Allow empty command list for while commands.
+
+	* parse.y (list): Allow empty commands in more places.  This ups
+	the shift/reduce error count by 6, to 19.
+
+	* octave.cc (execute_startup_files): Don't delete sd.
+
+	* octave.cc (initialize_globals): Make copies of all strings.
+	* Store more humorous messages if things fail.
+
+Tue Jun 15 11:03:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-extras.cc (get_user_input): Finish incomplete change to get
+	input using readline.
+
+	* tc-extras.cc (match_sans_spaces): New function.
+	* (get_user_input): Use it when checking to see if the user
+	entered a `quit' command.
+
+	* liboctave/Makefile.in: Don't distribute Makedeps.in or include
+	Makedeps since we generate dependencies automatically now.
+	* configure.in: Don't create liboctave/Makedeps.
+
+Sun Jun 13 18:31:17 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/xdiv.cc (xdiv): Solve least-squares problem if system of
+	equations is not square, or if it is singular.
+	* (xleftdiv): Likewise.
+
+	* liboctave/Matrix.h (Matrix::lssolve): New functions for
+	least-squares solutions of linear systems.
+	* (ComplexMatrix::lssove): Ditto.
+
+Sat Jun 12 19:07:07 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libcruft/misc/xstopx.f (xstopx): Call dostop, not do_stop.
+	* libcruft/misc/dostop.c: Rename from do_stop.c
+	* (dostop): Likewise.
+
+	* src/mappers.cc (xisnan (double)): Define even for systems that
+	don't have xisnan by always returning false.
+	* (xisnan (const Complex&)): Likewise.
+
+Fri Jun 11 19:54:58 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/Makefile.in (install): Try harder to install info files.
+
+	* libcruft/Makefile.in (install): Run ranlib on installed library.
+	* liboctave/Makefile.in (install): Ditto.
+	* readline/Makefile.in (install): Ditto.
+
+Thu Jun 10 00:15:41 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.72 released.
+
+	* libcruft/*/*.f: Don't call xstopx with '' since some Fortran
+	compilers object to zero-length strings.
+	* libcruft/misc/xstopx.f (xstopx): Don't print empty strings or
+	single blanks.
+	* libcruft/misc/gen-d1mach.c (main): Likewise, for generated code.
+
+	* test/Makefile.in (check): Set the Tcl variable OCTAVE_PATH.
+	* test/config/unix-octave.exp: Pass OCTAVE_PATH to OCTAVE using
+	the new -p flag.
+
+	* builtins.cc (install_builtins): Use load_path instead of calling
+	default_path().
+
+	* octave.cc (load_path): New global variable.
+	* (initialize_globals): Initialize it here by calling default_path().
+	* (main): Call initialize_globals() before getting command line
+	arguments.
+	* Accept new argument, -p PATH.
+
+	* octave.cc (clean_up_and_exit): Don't print a message when Octave
+	exits.
+
+	* doinstall.sh: Install M-files in $(libsubdir), not $(libdir).
+	* Use mkpath to create directories.
+	* Extract version from version.h.
+
+	* Makeconf.in (version): Compute version just once.
+
+	* (libsubdir): New directory that includes version number, for
+	installing M-files in (old versions of Octave may not be able to
+	understand new M-files).
+
+	* src/Makefile.in, libcruft/Makefile.in, liboctave/Makefile.in,
+	doc/Makefile.in, readline/Makefile.in, scripts/Makefile.in
+	(install): Use mkpath to create directories.
+	* scripts/Makefile.in (install): Install M-files in $(libsubdir),
+	not $(libdir).
+
+	* mkpath.c: New file, from Emacs-19.
+	* Makefile.in (mkpath): New rule.
+	* (all): Depend on mkpath
+	* (binary-dist): Distribute it.
+
+	* config.guess: Update from bothner@cygnus.com.
+
+	* lex.l (<STRING>{QSTR}*[\n\']): Set start state to 0 or MATRIX,
+	depending on value of braceflag.
+	* (<DQSTRING>{DQSTR}*[\n\"]): Ditto.
+
+	* tree.cc (tree_matrix::eval): Make sure that strings are nul
+	terminated.
+
+Tue Jun  8 16:08:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (clean_up_and_exit): Print `bye-bye' here.
+	* g-builtins.cc (builtin_quit): Not here.
+
+	* pager.cc (terminal_columns): If screenwidth <= 0, return a
+	default value of 80 columns.
+	* (terminal_rows): Likewise for screenheight and a default of 24
+	rows.
+
+	* octave.cc (parse_and_execute): Don't fiddle with interactive
+	states since that screws paging output.
+	* tree.cc (parse_m_file): Likewise.
+
+	* parse.y (input): For `simple_list error END_OF_INPUT' and
+	`error END_OF_INPUT' use ABORT_PARSE.
+	* Always accept `simple_list END_OF_INPUT'.
+	* Always abort for `END_OF_INPUT'.
+
+Mon Jun  8 13:55:41 1993  John C. Campbell  (jcc@schoch.che.utexas.edu)
+
+	* file-io.h (fopen_file_for_user): New function declaration.
+
+	* file-io.cc (fopen_file_for_user): New function.
+	* (fgets_internal): If file doesn't exist open it for user,
+	also return (double) -1 on EOF
+	* (fseek_internal), (ftell_internal), (frewind_internal),
+	(do_printf): Ditto.
+	* (fopen_internal): Remove warn_on_not_open flag, limit warns.
+
+Mon Jun  7 00:28:13 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* file-io.cc (do_scanf): Use `type' wherever possible instead of
+	hardcoding name in messages.
+	* (do_printf): Ditto.
+
+	* file-io.cc (fflush_internal): If flushing stdout, flush output
+	to the pager instead of calling fflush on a stream.
+	* (do_printf): Make fprintf (stdout, ...) exactly the same as
+	printf (...).
+	* (do_scanf): Make fscanf (stdin, ...) exactly the same as
+	scanf (...).
+
+	* tc-extras.cc (get_user_input): Flush output to pager before
+	prompting for input.
+
+	* libcruft/Makefile.in (DISTFILES): Distribute STOP.patch to show
+	the changes made to the Fortran sources.
+
+	* libcruft/*/*.f: Replace STOP statements with calls to xstopx, so
+	that Fortran programs won't just quit on us.
+
+	* libcruft/misc/xstopx.f: New file.
+	* libcruft/misc/do_stop.c: New file.
+	* libcruft/misc/Makefile.in (SPECIAL): Add do_stop.c to the list.
+	* (SPECIAL_DEPEND): Likewise, for do_stop.o.
+	* libcruft/Makefile.in (CRUFT_OBJ): Ditto.
+
+	* lex.l (")"): Don't pop the top of the in_brace_or_paren stack if
+	it's empty.
+
+Sun Jun  6 00:41:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* liboctave/CollocWt.cc (init): Always compute Gaussian quadrature
+	weights instead of trying to compute Radau or Lobatto weights if
+	the endpoints are included.
+	* Really do compute roots and derivative weights corresponding to
+	Legendre polynomials if alpha and beta are zero, even if the
+	endpoints are included.
+
+Sat Jun  5 22:19:55 1993  John C. Campbell  (jcc@schoch.che.utexas.edu)
+
+	* builtins.cc (builtin_general_functions): Correct max arg counts
+	for fscanf, scanf, and sscanf.
+
+	* g-builtins.cc (builtin_fscanf): Correct argument checks.
+	* (builtin_sscanf): Likewise.
+
+	* file-io.cc (fopen_internal): Don't warn for opening new file.
+
+	* file-io.cc (process_printf_format): Handle * for field width and
+	precision.
+	* Pass array of arguments and nargin instead of just one arg.
+	* (do_printf): Call process_printf_format() with new args.
+
+	* file-io.cc (process_scanf_format): New function to handle scanf
+	dirty work.
+	* (do_scanf): New function.
+
+Sat Jun  5 14:09:41 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (YY_FATAL_ERROR): Redefine here to keep from exiting on
+	fatal scanner errors.
+
+Fri Jun  4 16:35:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_multi_assignment_expression::eval (int)): Check to
+	see if result is NULL before trying to use it.
+
+	* tc-extras.cc (get_user_input): Call gnu_readline() to get input.
+
+Thu Jun  3 00:30:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/*.m: Convert single-quoted strings to use double quotes
+	since the manual says they are better.
+
+	* Version 0.71.10.
+
+	* doc/Makefile.in (DISTFILES): Distribute octave.info*.
+
+	* Makefile.in (.fname): Delete target and move actions back to the
+	individual dist targets because this always needs to be done.
+	* (binary-dist): Strip src/octave.
+
+	* doinstall.sh: New file, for binary distributions.
+
+Wed Jun  2 15:11:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makefile.in (binary-dist): New target, just like dist, except
+	also distribute libcruft.a, liboctave.a, libreadline.a and
+	src/octave.
+
+	* Makefile.in (.fname): New target.
+	* (links-for-dist): New target.
+	* (local-dist): Depend on .fname.
+	* (dist): Depend on .fname and use links-for-dist.
+
+	* octave.cc: Move code to print startup message to just after
+	option processing so that any messages from startup files will
+	appear after the normal startup message.
+
+	* utils.cc (get_site_defaults): New function.
+	* (OCTAVE_HOME): Provide default definition.
+
+	* (SITE_DEFAULTS): Delete definition.
+	* octave.cc (execute_startup_files): Use get_site_defaults instead.
+
+	* src/Makefile.in (utils.o): Define OCTAVE_HOME to be $(prefix)
+	here.
+
+	* Makeconf.in: Don't define SITE_DEFAULTS or OCTAVE_M_FILE_DIR.
+
+	* lex.l (do_string_escapes): Recognize `\"'.
+
+Tue Jun  1 01:28:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.71.9.
+
+	* parse.y (maybe_convert_to_ans_assign): Greatly simplify.
+
+	* file-io.cc (File_info): Convert from struct to proper class.
+	* (valid_mode): New function.
+
+	* parse.y, parse.h, lex.l, tree-extras.cc (convert_to_ans_assign):
+	Delete unused variable.
+
+	* builtins.cc (SEEK_CUR): Set to 1 to match (normal) system values.
+	* (SEEK_END): Likewise, set to 2.
+
+	* statdefs.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* octave-hist.cc: Include it.
+	* variables.cc (identifier_exists): Likewise.
+	* utils.cc (is_newer): Likewise.
+
+	* builtins.cc (SEEK_SET): New builtin varible.
+	* (SEEK_CUR): Ditto.
+	* (SEEK_END): Ditto.
+	* (stdin): Ditto.
+	* (stdout): Ditto.
+	* (stderr): Ditto.
+
+	* lex.l (strip_trailing_whitespace): New function.
+	* ({IDENT}{S}*): Use it.
+	* (<TEXT_FCN>[^ \t\n\;\,]*): Fix to grab trailing spaces.
+	Use strip_trailing_whitespce() to delete it before returning.
+
+Mon May 31 21:00:00 1993  John C. Campbell  (jcc@june.che.utexas.edu)
+
+	* file-io.cc, file-io.h: New files to implement C-style file
+	handling and I/O functions.
+	* (do_printf): Move here from tc-extras.cc.
+	* (process_printf_format): Likewise.  Also renamed from
+	process_format.
+
+Mon May 31 00:52:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* (tree_function::eval): Now that we can restore values, enable
+	code to give error for attempts to call functions recursively.
+
+	* octave.cc (parse_and_execute): Use unwind-protect functions to
+	save and restore state.
+	* tree.cc (parse_m_file): Likewise.
+	* (tree_function::eval): Likewise.
+	* tc-extras (eval_string): Likewise.
+
+	* unwind-prot.cc (saved_variable): New class to hold values of and
+	pointers to variables we want to restore.
+	* (restore_saved_variable): New function.
+
+	* unwind-prot.cc (unwind_protect_int_internal): New function.
+	* (unwind_protect_ptr_internal): Ditto.
+	* (unwind_protect_var_internal): Ditto.
+
+	* unwind-prot.h (unwind_prot_int): New macro.
+	* unwind-prot.h (unwind_prot_ptr): Ditto.
+	* unwind-prot.h (unwind_prot_var): Ditto.
+
+	* variables.cc (symbol_out_of_date ()): Move here from tree.cc.
+	* (is_valid_function): Fix logic for finding a function
+	definition, including checking to see if the current symbol
+	definition is out of date.
+
+	* tree-const.h (is_numeric_or_range_type): New function.
+	* tree-const.h (is_string_type): New function.
+	* tree.cc (tree_matrix::eval): Use !is_string_type() instead of
+	is_numeric_type() to decide that we've seen something other than
+	a string.
+
+	* parse.y (maybe_warn_assign_as_truth_value ()): New function.
+	* user-prefs.h (warn_assign_as_truth_value): New preference.
+	* user-prefs.cc (warn_assign_as_truth_value ()): New function.
+	* builtins.cc (string_variables): Add it to the list.
+
+	* tree.h (tree_simple_assignment_expression): Rename class from
+	tree_assignment_expression.
+	* (tree_assignment_expression): New class, derived from
+	tree_expression.
+	* (tree_simple_assignment_expression): Derive from new
+	tree_assignment_expression class, not tree_expression class.
+	* (tree_multi_assignment_expression): Ditto.
+
+Sun May 30 22:40:58 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Makefile.in (%.d: %.cc): First remove target file, then
+	redirect into tmp file, and finally move tmp file to target file
+	only if creating tmp file was successful.
+	* liboctave/Makefile.in (%.d: %.cc): Ditto.
+
+Sat May 29 18:18:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_constant *tree_multi_assignment_expression
+	::eval (int print, int nargout)): New function.
+	* (tree_constant tree_multi_assignment_expression::eval (int print)):
+	Use it to do the real work.
+
+	* tree.cc (tree_matrix::to_param_list ()): Also allow index
+	expressions as long as the argument list is missing.
+
+	* parse.y (ans_expression): Now that assignments are just
+	expressions, don't convert expressions to assignemnts to `ans' if
+	they already are assignments.
+	* maybe_convert_to_ans_assign (tree *expr): New function to do the
+	real work.
+
+	* tree.cc (tree_multi_assignment_expression::
+	is_assignement_expression ()): Return 1.
+
+	* tree-base.h (tree::is_index_expression ()): New virtual
+	function, returns 0.
+	* tree.cc (tree_index_expression::is_index_expression ()): Return 1.
+
+	* tree.cc (tree_assignment): Construct from tree_index_expression
+	and a tree.
+	* (tree_index_expression::ident ()): New function.
+	* (tree_index_expression::arg_list ()): New function.
+
+	* parse.y (variable): New rule, returns tree_index_expression.
+
+	* parse.y: Rewrite assignment rules so that they are simply
+	expressions, not special cases.
+	* Rearrange fact and expression rules into expression (assignement
+	or simple expression), simple_expr (binary and postfix expressions
+	or secondary simple expression), and simple_expr1 (constants and
+	prefix expressions) rules.
+	* Delete fact rules.
+
+	* parse.y: Make EXPR_EQ and EXPR_NE have the same precedence as
+	the other relational operators.
+
+Fri May 28 10:14:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* unix-octave.exp: Delete use of OCTAVEFLAGS.
+
+	* test/config: New directory.
+	* test/config/Makefile.in: New file.
+	* test/config/unix-octave.exp: Rename from test/octave-init.exp.
+	* test/Makefile.in (SOURCES): Delete octave-init.exp from list.
+	* configure.in: Add test/config/Makefile to the list of Makefiles
+	to build.
+
+	* utils.cc (send_to_plot_stream): Plot lines by default.
+
+Thu May 27 08:03:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (\]): Don't pop the top of the in_brace_or_paren stack if
+	it's empty.
+
+	* tree.cc (tree_matrix::eval): Make it work for single element
+	strings as well.
+
+	* Version 0.71.8.
+
+	* lex.l (next_token_is_postfix_unary_op): New function.
+	* (<MATRIX>{SN}*\]{S}*): Use it as well, to decide whether to
+	insert a comma.
+	* (<MATRIX>{S}+): Likewise.
+	* ({IDENT}{S}*): Likewise.
+
+Wed May 26 15:37:27 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* pr-otput.cc (pr_any_float): Use form() now that iostream
+	formatting bug has been fixed (libg++-2.3.1).
+
+Mon May 24 15:36:22 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (any_arg_is_magic_colon): New function.
+	* (tree_builtin::eval) Use it to avoid calling builtin functions
+	with `:' arguments.
+
+Sun May 23 14:07:19 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_fprintf): Correct usage message.
+
+Fri May 21 10:35:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.71.7.
+
+	* octave.cc (main): Always reset_parser() before every call to
+	yyparse(), not just on a longjmp return.
+
+	* doc/Makefile.in (install): For now, don't try to install
+	anything.
+
+	* lex.l (<MATRIX>{S}+): Call next_token_is_bin_op() instead of
+	making the check in line.
+	* (<MATRIX>{SN}*\]{S}*): Likewise.
+	* (<MATRIX>{S}+): Likewise.
+
+	* lex.l (looks_like_bin_op): New function.
+	* (next_char_is_space): Ditto.
+	* (next_token_is_bin_op): Ditto.
+
+	* lex.l ({IDENT}{S}*): If we're in a brace context and the next
+	character is an open paren, set convert_spaces_to_comma to 0.
+	* tree-const.cc (convert_to_str): New function.
+	* g-builtins.cc (builtin_setstr): New function.
+	* builtins.cc (builtin_general_functions): Add it to the list.
+
+Thu May 20 17:56:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* doc/Makefile.in (SOURCES): Define to be all .texi files.
+	* (octave.info): Depend on $(SOURCES).
+	* (octave.dvi): New target.
+	* Don't distribute the man page.
+
+	* lex.l (<MATRIX>{S}+): If the next character is a plus or minus
+	followed by a space or tab, don't insert a comma.  This makes
+	input like [1 + 1] == 2 and input like [1 +1] == [1 1].
+	* (<MATRIX>{SN}*\]{S}*): Likewise.
+
+	* lex.l (<MATRIX>{S}+): Use in_brace_or_paren and
+	convert_spaces_to_comma to decide whether to convert spaces to a
+	comma.
+
+	* lex.l ({IDENT}{S}*): If we're in a brace context and the next
+	character is an open paren, set convert_spaces_to_comma to 0.
+
+	* lex.l (<MATRIX>{SN}*\]{S}*): Even if we're still inside some braces,
+	don't always push a comma onto the input.
+
+	* lex.l (<MATRIX>{SN}*\]): Also grab trailing spaces.
+	* ({IDENT}): Ditto.
+
+	* lex.l (in_brace_or_paren): New stack to keep track of whether
+	the closest enclosing scope is a pair of braces or parens.  When
+	we see a `[' or a `(', push a flag on the stack.  When we see a
+	`]' or a `)', pop the top of the stack.
+
+	* lex.l (convert_spaces_to_comma): New flag to control lexer behavior.
+	* (RETURN): Reset it to 1.
+	* (most other returns): Reset it to 1.
+
+	* lex.l (BIN_OP_RETURN): New macro.  Set convert_spaces_to_comma to 0.
+	* (most binary operators): Use it instead of RETURN.
+
+	* lex.l (match_any): New function.
+
+Wed May 19 12:51:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Range.cc (nelem_internal): Don't allow ranges with more than
+	INT_MAX elements.  Return -1 to indicate failure.
+	* tree-const.cc (tree_constant_rep::tree_constant_rep (double,
+	double, double)): Check nelem() to see if the range is valid.
+
+	* pr-output.cc (all_elements_are_ints (Range&)): We only need to
+	check the base and the increment, not the limit too.
+
+	* Range.cc (nelem_internal): Move function definition here from
+	Range.h and do a better job of determining the number of elements
+	in the range.
+
+Tue May 18 09:06:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.71.6.
+
+	* tc-extras.cc (find_nonzero_elem_idx): Declare inner loop
+	iteration variables that are used inside later nested loops
+	in the outer enclosing scope to make this work for old and new
+	language definitions (see the ARM, chapter 19: "ANSI/ISO
+	Resolutions", 6.4/6.5: "The statement or statements immediately
+	controlled by the condition in a selection-statement, or an
+	iteration-statement introduce an implicit local scope".
+	* xpow.cc (elem_xpow (Matrix&, Matrix&)): Likewise.
+
+	* tree.cc (tree_identifier::parse_m_file (char*, int)): Set
+	reading_script_file before calling parse_m_file and restore it
+	afterward.
+
+Mon May 17 20:04:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.h (prog_name): Declare extern.
+	* (raw_prog_name): Ditto.
+
+	* f2c-compat.sh (ctest.c): Also write a dummy MAIN_ since gcc 2.4
+	doesn't seem to create an executable now if there are unresolved
+	externals, and the linker wants to see it on Suns.
+
+Thu May 13 01:06:18 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makefile.in (DISTFILES): Include Makeconf.in.
+
+	* configure.in: Set defaults for CFLAGS, CXXFLAGS, LDFLAGS, and
+	FFLAGS.
+	* Don't substitute CDEBUG, COPTIMIZE, FOPTIMIZE, or CXXOPTIMIZE.
+	* Use AC_PROGRAMS_CHECK instead of our own code for checking for a
+	Fortran compiler.
+	* Add Makeconf to the list of files to create.
+
+	* src/Makefile.in (octave): Use ALL_LDFLAGS instead of LDFLAGS.
+
+	* Makeconf.in (ALL_CFLAGS, ALL_CXXFLAGS, ALL_LDFLAGS): New macros.
+	* Allow the user to set CFLAGS, CXXFLAGS, and FFLAGS without
+	screwing things up.
+	* (CDEBUG, COPTIMIZE, FOPTIMIZE, CXXOPTIMIZE): Delete.
+	* Provide rules for making .o from .cc or .c files that use
+	ALL_CXXFLAGS and ALL_CFLAGS.
+
+	* src/Makefile.in: Generate dependencies automatically using the
+	method described in the GNU make manual.
+	* liboctave/Makefile.in: Likewise.
+
+	* All Makefile.in files: Set TOPDIR and include $(TOPDIR)/Makeconf.
+	* Makeconf.in: New file, for most configuration options.
+
+	* tc-rand.cc (rand_internal): Return an empty matrix for rand (0).
+
+Wed May 12 01:32:36 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (clean_up_and_exit): Call close_plot_stream before
+	quitting.
+
+	* Version 0.71.4.
+
+	* pr-output.cc (octave_print_internal (ostrstream&, Matrix&)):
+	Handle wrapping columns neatly, respecting value of split_long_rows.
+	* (octave_print_internal (ostrstream&, ComplexMatrix&)): Ditto.
+	* (octave_print_internal (ostrstream&, Range&)): Ditto.
+
+	* user-prefs.cc (split_long_rows): New preference variable and
+	function.
+	* builtins.cc (builtin_string_variables): Add to list with default
+	value == true.
+
+Tue May 11 02:20:43 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* pr-output.cc (pr_max_internal): Don't count Inf or NaN when
+	looking for max value.
+	* (pr_min_internal): Likewise, for min values.
+
+	* pr-output.cc (pr_any_float): Merge pr_float and pr_imag_float.
+
+	* pr-output.cc (any_element_is_inf_or_nan (Matrix&)): New function.
+	* (any_element_is_inf_or_nan (ComplexMatrix&)): New function.
+	* (all set_format functions (except Range)): Consider Inf and NaN
+	when computing field width (we'll either print "Inf" (possibly
+	with a sign) or "NaN").
+
+	* pr-output.cc (pr_float): Handle Inf and NaN.
+	* (pr_imag_float): Ditto.
+
+	* pr-output.cc (set_format_style): Make format short set precision
+	to 3 and max field width to 8.
+
+	* pr-output.cc (pr_float): Don't print a sign for -0.0.
+	* (pr_imag_float): Ditto.
+
+	* pr-output.cc (all set_format functions): Return the actual field
+	width computed or 0 if free format.  For complex, return both real
+	and imaginary field widths.
+	* Include pager.h for terminal_rows() and terminal_columns().
+
+	* pr-output.cc (pr_complex): If imaginary part is -0.0, print a
+	minus sign but convert the value to 0.0 before printing.
+
+	* octave.cc (parse_and_execute (FILE *, int)): Don't use readline
+	to read commands from files.
+	* (parse_and_execute (char *, int)): Set reading_script_file
+	before calling get_input_from_file.
+
+	* Version 0.71.3.
+
+	* src/Makefile.in (deps): New target.
+	* Update dependencies using the output from running `make deps'.
+
+	* pr-output.cc (set_output_prec_and_fw): New function.
+	* (set_format_style): Use it.
+	* (set_format functions): Use user_pref variables for precision
+	and field width.
+
+	* variables.cc (octave_real_scalar_variable): New function.
+	* buitlins.cc (builtin_string_varaibles): Add output_precision and
+	max_field_width to the list (really need a separate list for
+	numeric values...).
+	* user-prefs.cc (set_output_max_field_width): New function to be
+	called when output_max_field_width changes.
+	* (output_precision): Likewise, for output_precision.
+
+	* sighandlers.cc (pipe_handler_error_count): New global variable.
+	* (sigpipe_handler): Use it to keep from printing more than one
+	broken pipe message between prompts.
+	* (input.cc): Reset pipe_handler_error_count before printing the
+	prompt.
+
+Mon May 10 13:06:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* sighandlers.cc (sigpipe_handler): Issue warning and return
+	instead of aborting.
+
+	* user-prefs.cc (all sv_* functions): Don't delete previous value
+	of a preference string if the new value is bogus.
+
+	* user-prefs.cc (all sv_* functions and all functions that handle
+	user preferences): Return 0 for success, -1 for failure.
+	* symbtab.cc (symbol_record::define): Check return value of sv_fcn
+	and restore previous value on failure.
+	* symtab.h (sv_Function typedef): Change to return int, not void.
+	* builtins.h (sv_Function typedef): Ditto.
+
+Sun May  9 18:25:00 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* user-prefs.cc (all sv_* functions): Issue a warning if the user
+	gives us something that's not a string.
+
+Sat May  8 23:40:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* ColVector.cc (ColumnVector::min): Upper loop limit is len, not 0.
+	* (ComplexColumnVector::min): Ditto.
+	* RowVector.cc (RowVector::min): Ditto.
+	* (ComplexRowVector::min): Ditto.
+
+Fri May  7 18:41:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* pr-output.cc (set_format_style): New function, extracted from
+	builtin_format().
+	* t-builtins.cc (builtin_format): Call set_format_style to do real
+	work.
+
+	* pr-output.cc: New file for special formatted printing funcions.
+	* tree-const.cc (tree_constant_rep::eval): Use new functions.
+
+	* user-prefs.cc (sv_pager_binary): New function.
+	* user-prefs.h (user_preferences) Add new field, pager_binary.
+	* builtins.cc (builtin_string_variables): Add PAGER to the list.
+	* utils.cc (default_pager): New function.
+	* Makefile.in: Define DEFAULT_PAGER for utils.cc, not pager.cc.
+	* pager.cc (get_pager): Delete function.
+	* Use user_pref.pager_binary instead of calling get_pager().
+
+Thu May  6 11:05:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* pager.cc (pager_buf): Declare as static pointer to ostrstream.
+	* (initialze_pager): Delete old pager_buf and create new one for
+	each batch of output.  This is needed because once str() is called
+	for pager buf, it will no longer grow.
+
+	* pager.cc (maybe_page_output): Take care of deleting buffer after
+	str() is called.
+	* (flush_output_to_pager): Likewise.
+	* t-builtins.cc (builtin_ls): Likewise.
+	* (builtin_set): Likewise.
+	* (builtin_show): Likewise.
+	* tc-extras.cc (process_format): Likewise.
+	* (process_format): Likewise.
+	* tree-plot.cc (tree_plot_command::eval): Likewise.
+
+Wed May  5 10:45:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_shell_command): Buffer characters with an
+	ostrstream and call maybe_page_output instead of writing directly
+	to cout.
+	* (builtin_warranty): Likewise.
+	* tc-extras (do_printf): Likewise.
+	* tree.cc (tree_identifier::eval): Likewise.
+	* (tree_assignment_expression::eval): Likewise.
+	* (tree_multi_assignment_expression::eval): Likewise.
+	* tree-const.cc (tree_constant_rep::eval): Likewise.
+	* t-builtins.cc (builtin_help): Likewise.
+	* (builtin_ls): Likewise.
+	* (builtin_who): Likewise.
+
+	* user-prefs.h user-prefs.cc (page_screen_output): New preference.
+	* builtins.cc (string_variables): Add to list with default value
+	of true.
+
+	* input.cc (octave_gets): If interactive, call flush_to_pager()
+	before prompting.
+
+	* utils.cc (terminal_rows): Move to pager.cc
+	* (terminal_columns): Likewise.
+	* (get_pager): Likewise.
+
+	* pager.h, pager.cc: New file to handle pager stuff.
+	* src/Makefile.in: Fix things to distribute and compile them.
+
+	* libcruft/Makefile.in (CRUFT_OBJ): Strip $(srcdir)/ and convert
+	from .f to .o in two steps since some versions of GNU make strip
+	the leading ./ from the output of $(wildcard), causing my pattern
+	match to fail if compiling in the source tree.
+
+Tue May  4 09:13:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (symbol_record::define (symbol_record *)): Delete old
+	name before saving new name.
+	* (symbol_record::document): Likewise, for var.help and fcn.help.
+
+	* parse.y (ABORT_PARSE): Renamed from DO_ABORT.
+
+Mon May  3 01:00:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc: Define destructors for every class in tree.h.  It
+	appears that it should always be ok to delete everything in a
+	command tree once we're done executing it.  Function definitions
+	are still ok because the parser doesn't set global_command to the
+	tree_function we've built (that's saved somewhere in the symbol
+	table and shouldn't be deleted until we clear or redefine the
+	function).
+
+	* utils.cc (pathstring_to_vector): Do memory management here so
+	callers don't have to.
+	* (default_path): Likewise.
+
+	* utils.cc (make_absolute): Return current_path (not a copy) since
+	it is static.
+	* (get_working_directory): Return the_current_working_directory
+	(not a copy) since it is global.
+
+	* utils.cc (cleanup_tmp_files): Delete filename when done.
+
+	* parse.y: Replace output to cerr with calls to error() or warning().
+	* DO_ABORT: New macro.  Use it instead of YYERROR for errors that
+	we detect, and call yyerror since bison doesn't.
+	* (param_list1): Detect invalid parameter lists.
+	* (yyerror): Don't print pointer if it is past the end of the line.
+
+Sun May  2 13:03:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-extras.cc (process_format): Use ostrstream instead of a
+	fixed-size character string to buffer the format.
+
+	* utils.cc (terminal_rows): Get info from readline variable
+	instead of hardcoded constants.
+	* (terminal_columns): Likewise.
+
+	* utils.cc (maybe_page_output): New function.
+	* t-builtins.cc (builtin_help): Use it.
+	* (builtin_who): Ditto.
+	* Don't include procstream.h anymore since we no longer need it.
+
+	* utils.cc (jump_to_top_level): Call run_all_unwind_protects ()
+	before jumping back to the top level.
+
+Sat May  1 20:59:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* unwind-prot.cc unwind-prot.h: New files to implement memory
+	cleanup stuff.
+	* src/Makefile.in: Distribute them.
+
+	* Version 0.71.2.
+
+	* computer.m: Delete file.
+	* scripts/Makefile.in (computer.m): Add $(srcdir)/ prefix to
+	computer.in.
+
+Fri Apr 30 17:03:04 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.h (<CLASS>::row (int i)): New function for extracting a
+	row of a matrix where CLASS is one of Matrix, DiagMatrix,
+	ComplexMatrix, or ComplexDiagMatrix.
+	* (<CLASS>:: column (int i)): Likewise for columns.
+	* (<CLASS>::row (char *s)): Likewise, but selection is done with a
+	character string.  Currently we accept anything beginning with `F'
+	or `f' to mean the first row and anything beginning with `l' or
+	`L' to mean the last row.
+
+Wed Apr 28 14:23:49 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* scripts/computer.in: New template file for computer.m.
+	* scripts/Makefile.in (computer.m): Generate a custom computer.m
+	file using $target_host_type.
+	* (clean): Delete computer.m.
+
+	* configure.in: If last argument is not empty, use its value as
+	the TARGET.
+	* If we aren't given a TARGET, use config.guess to find one.
+	* Substitute target_host_type.
+
+	* config.guess: New file, taken from gdb distribution.
+	* Makefile.in: Distribute it.
+
+	* tree-const.cc (force_numeric): New parameter, force_str_conv to
+	allow us to ignore user preference on string to numeric
+	conversion.
+	* (make_numeric): Likewise.
+
+	* tree.cc (tree_matrix::eval): Allow range constants in matrix
+	lists by simply converting them to matrices.
+	* Ditto for string constants.
+
+Tue Apr 27 17:21:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* utils.cc (smells_like_X11): Delete unneeded function.
+	* builtins.cc (install_builtins): Don't initialize
+	graphics_terminal since it's no longer needed.
+
+	* utils.cc (pathstring_to_vector): Call tilde_expand on each
+	element of the path.
+
+	* mappers.cc: Include float.h for DBL_MAX.
+
+Wed Apr 21 19:31:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* mappers.cc (xisnan (Complex&)): Rename from isnan.
+	* builtins.cc (mapper_functions): Use xisnan instead of isnan.
+	* (install_builtins): Special case for linux for geenerating
+	infinity and NaN.
+
+Mon Apr 19 14:10:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.71.1 released.
+
+	* symtab.cc (char **sorted_list (int& count)) New function.
+	* (char **sorted_var_list (int& count)): Ditto.
+	* (char **sorted_fcn_list (int& count)): Ditto.
+	* t-builtins.cc (builtin_who): Check symbol count too.
+
+	* utils.cc (send_to_plot_stream): Check is_open(), not just the
+	state of the stream.
+	* (close_plot_stream): Likewise.
+
+	* procstream.cc, procstream.h: Rewrite, taking a hint from the GNU
+	fstream class.
+
+Sun Apr 18 17:40:54 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.cc (builtin_help): Don't call list_in_columns if
+	there isn't anything to list.
+
+Fri Apr 16 20:57:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Makefile.in (DISTDIRS): List dld here.
+	* (DISTSUBDIRS): Not here.
+
+Thu Apr 15 12:17:08 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.71 released.
+
+	* scripts/*.m: Improve help messages for most files.
+
+	* libcruft/Makefile.in: Make libcruft.a here.
+	* libcruft/Makerules.in: Not here.
+
+	* PLOTTING: New file.
+	* Makefile.in: Add it to the list of files we distribute.
+
+	* g-builtins.cc (builtin_shell_command): New function.
+	* builtins.cc (general_functions): Add it to the list.
+
+	* procstream.h, procstream.cc (iprocstream): New class.
+
+	* lex.l (<MATRIX>{SN}*\]): Maybe insert a comma after reading a `]'.
+
+	* t-builtins.cc (builtin_load): Do tilde expansion for the file name.
+	* (builtin_save): Ditto.
+
+Wed Apr 14 10:40:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_function::eval): Until we have a proper call frame
+	unwinding scheme, comment out previous change.
+
+	* tree.cc (tree_matrix::eval): Brain Transplant.
+	* (tree_matrix::length): New function.
+
+	* tree-base.h (matrix_dir): Delete md_none, md_left, and md_up.
+	The only valid values are md_unknown, md_right, and md_down.
+
+Tue Apr 13 20:07:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.h (tree_function::call_depth): New member variable.
+	* tree.cc (tree_function::eval): Check it to make recursive
+	function calls fail (waiting for proper symbol table handling).
+
+	* utils.cc (pathstring_to_vector): Don't prepend `.' here.  We do
+	that already in default_path() if the user hasn't given us a
+	loadpath.
+
+	* t-builtins.cc (builtin_help): Get help for M-files even if they
+	haven't been compiled yet.
+	* List M-files we find in the loadpath.
+
+	* utils.cc (get_m_file_names): Split into two functions, add
+	parameter to specify whether .m suffix is deleted.
+
+	* lex.l (grab_help_text): New function.
+	* (beginning_of_function): New global variable.
+	* (%|#): Call grab_help_text() if at beginning of a function.
+	* tree.cc (tree_identifier::document): New function.
+	* parse.y (func_def2): Use it.
+	* (help_buf): New global buffer for help text.
+
+Mon Apr 12 00:31:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* utils.cc (get_m_file_names): New function.
+	* variables.cc (make_name_list): Use it.
+
+	* t-builtins.cc (list_in_columns): Put output on an strstream
+	instead of in a String.
+	* (builtin_help): Use an strstream instead of a String for buffering.
+	* (builtin_who): Likewise.
+
+	* g-builtins.cc (builtin_keyboard): New function.
+	* builtins.cc (general_functions): Add to list.
+
+	* tc-extras.cc (get_user_input): If the user enters `exit',
+	`quit', or `return', return instead of eval'ing the string.
+	* Don't abort on empty input.
+	* Add additional argument to handle debugging via new `keyboard'
+	function.  If doing debugging, keep reading until we see `exit',
+	`quit', or `return'.
+
+	* menu.m: New M-file.
+
+	* New top level plotting functions:
+
+	    plot.m    semilogx.m  semilogy.m  loglog.m   polar.m
+	    title.m   xlabel.m    ylabel.m    grid.m     bar.m
+	    stairs.m  mesh.m      meshdom.m   contour.m
+
+	* New internal plotting functions:
+
+	    plot_int.m    plot_2_s_s.m  plot_2_v_v.m  plot_2_v_m.m
+	    plot_2_m_v.m  plot_2_m_m.m  polar_int.m
+
+	* New utility functions:
+
+	    is_scalar.m  is_vector.m  is_matrix.m
+
+Sun Apr 11 11:10:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-buitlins.cc (builtin_ls): New function.
+	* builtins.cc (text_functions): Add it to the list under the names
+	`ls' and `dir'.
+
+Sat Apr 10 15:13:05 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* procstream.cc (oprocstream::close): Set badbit for stream after
+	it is closed.
+
+	* utils.cc (close_plot_stream): New function.
+	* g-buitlins.cc (closeplot): New builtin function.
+	* builtins.cc (general_functions): Add to list.
+
+	* lex.l (cant_be_identifier): New cruft to properly handle the
+	plot command's `using', `title', and `with' keywords.
+
+Fri Apr  9 09:38:25 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Warn if it looks like gnuplot isn't installed.
+
+	* utils.cc (send_to_plot_stream): Check the user's preference for
+	the gnuplot binary.
+
+	* user-prefs.cc (sv_graphics_terminal): Delete function.
+	* user-prefs.h (graphics_terminal): Delete variable.
+
+	* tree-plot.cc (tree_subplot_using::print): Add argument to allow
+	checking of columns given in using command and use it.
+	* (tree_plot_command::eval): Change caller.
+
+	* parse.y (title): Allow plot title to be any expression.
+	* tree-plot.cc (subplot_list): Likewise.
+
+	* tree-plot.cc (tree_plot_command::eval): Don't let lusers try to
+	make 2D parametric plots, since that seems to crash gnuplot.
+
+	* tree.cc (tree_identifier::parse_m_file): Don't try to stash
+	m-file name or time parsed if we were actually executing a script
+	file.
+
+	* sombrero.m: New M-file to demonstrate 3D plotting.
+
+	* parse.y (plot_options): Allow them to be specified in any order.
+
+	* g-builtins.cc (builtin_purge_tmp_files): New function.
+	* builtins.cc (general_functions): Add to list.
+
+	* g-builtins.cc, g-builtins.h (builtin_plot): Delete.
+	* builtins.cc (general_functions): Delete entry for builtin_plot.
+
+	* t-builtins.cc (builtin_set): Check to see if the user is setting
+	up parametric plotting.
+	* tree-plot.cc (parametric_plot): New global variable.
+	* tree_const.cc (save_three_d): New function.
+	* tree-plot.cc (tree_subplot_list::print): Handle 3D plots.
+
+	* Makefile.in: Delete everything having to do with distributing or
+	making gnuplot.
+	* configure.in: Likewise.
+
+Thu Apr  8 10:02:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* utils.cc (send_to_plot_stream): New function.  Move declaration
+	of plot_stream to utils.cc and make static.
+
+	* t-builtins.cc (builtin_set): New function.
+	* (builtin_show): Ditto.
+
+	* lex.l: Handle set command.
+	* (doing_set): Yet another global variable to control behavior of
+	the lexer.
+
+	* tree-plot.cc (tree_subplot_using::print): Print warning if scanf
+	format string is given.
+
+	* parse.y (ranges1): Allow lower and upper bounds to be optional.
+	* tree-plot.cc (tree_plot_range::print): Make it work.
+
+	* tree-plot.cc: New file, extracted from tree.cc.
+
+	* sighandlers.cc (install_signals): New function.
+	* (*_handler): New set of functions to handle signals that would
+	otherwise cause us to abort.
+	* (my_friendly_exit): Call exit from most signal_handlers to clean
+	up tmp files, etc.
+
+	* lex.l (do_string_escapes): Correctly handle '' quotes.
+	* Warn about unrecognized escape sequences but convert them to the
+	escaped character anyway.
+	* (EXPON): New definition.  Use it and ? qualifier to shorten the
+	expressions for matching numbers.
+	* (ECHAR): New definition.  Use it to correctly match
+	backslash-escaped characters in strings.
+	* Definitions: Surround multi-character definitions in ()'s to
+	avoid potential problems with things like {DEF}*.
+	* (QQ): Rename from DQ.
+	* (DQSTR): New definition for strings in double quotes.
+	* (DQSTRING): New start state.  Recognizing a naked " puts us here.
+	* ("\n"): Turn off quote_is_transpose at the beginning of each line.
+	* Use error functions instead of writing messages directly.
+	* Don't include iostream.h -- we don't need it now.
+	* Do include error.h.
+
+Wed Apr  7 13:12:17 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* sighandlers.h, sighandlers.cc: New files for signal handling
+	functions.
+	* Makefile.in: Include them in the usual places.
+	* octave.cc (interrupt_handler): Move to sighandlers.cc and rename
+	to sigint_handler.
+
+	* utils.cc (mark_for_deletion): New function.
+	* octave.cc (cleanup_tmp_files): New function.
+	* octave.cc (main): Register cleanup_tmp_files with atexit
+	(on_exit for sun).
+
+	* Stack.h: Template based stack class converted from libg++
+	genclass files.
+	* SLStack.h: Likewise.
+	* (SLStack::pop): Avoid apparent bug in SLList::remove_front.
+
+Tue Apr  6 10:01:52 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (almost_match): New function.
+	* (plot_style_token): New function.
+
+	* t-buitlins.cc: Include procstream.h instead of procbuf.h.
+	* (builtin_help): Simplyfy opening of process output stream.
+	* (builtin_who): Likewise.
+
+Mon Apr  5 13:48:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-extras.cc (tree_constant_to_scalar): Move to tree-const.cc
+	and make it a member function called to_scalar.
+	* (tree_constant_to_vector): Likewise.
+	* (tree_constant_to_matrix): Likewise.
+
+	* procstream.h, procstream.cc: New files/classes that implement
+	an ostream to a process.  Built on top of procbuf from libg++.
+	* src/Makefile.in: Add them to the lists of files/objects.
+
+Sat Apr  3 23:11:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Lots of clean-up changes to parse.y, tree.cc, tree.h, and
+	tree-base.h.  Use more specific types than just <tree *> for
+	nonterminals.  This allows us to have fewer virtual functions in
+	the base class.  Safer.  Cleaner.  Should have always been this
+	way...
+
+Fri Apr  2 10:04:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y, lex.l: Fix grammar to accept plot command very similar
+	to the gnuplot plot command.
+
+Wed Mar 31 13:11:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (eval_undefined_error): Until we can figure out how to
+	clear names without causing problems later on, just remove the
+	symbol name.
+
+	* tree.h (tree_plot_command): New class.
+	* (tree_plot_limits): Ditto.
+	* (tree_plot_range): Ditto.
+	* (tree_subplot_list): Ditto.
+	* (tree_subplot_using): Ditto.
+	* (tree_subplot_style): Ditto.
+
+	* tree-base.h (command_type): Add plot_command to list.
+
+Mon Mar 29 09:53:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* find_exec.c (ABSOLUTE_FILENAME_P): Also return true if the
+	given filename begins with `.'.
+
+	* DAE.cc, DAE.h, DAEFunc.h, tc-dassl.cc: Make sure all calls to
+	dassl and the user-supplied functions have consistent argument
+	lists.
+
+	* octave.cc (raw_program_name): New global variable to hold the
+	unprocessed argv[0].  This is to help dld find the absolute path
+	to the executing program.
+	* (initialize_globals): Pass in argc and argv from main.
+	Initialize raw_prog_name.
+
+	* builtins.cc (general_functions): Correct help message for dassl.
+	* g-builtins.cc (dassl_usage): Likewise.
+
+	* src/Makefile.in: Lots of changes to make things work with or
+	without dld.
+	* Makefile.in: Likewise.
+	* configure.in: Likewise.
+
+	* dld: New directory, containing our copy of the dld sources.
+
+	* dynamic-ld.cc, dynamic-ld.h: New files to implement dynamic
+	loading functions.
+	* src/Makefile.in: Add them to the distribution, compile them if
+	doing dynamic loading.
+
+Sun Mar 28 11:03:15 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: When looking for Fortran compilers, check for fc
+	last to avoid confusion with some vendor's /bin/sh fc builtin.
+	* Handle new argument --with-dld.
+
+	* g-builtins.cc (builtin_warranty): Add 1993 to list of copyright
+	dates.
+
+Sat Mar 27 17:58:23 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-extras.cc: Rename from tree-extras.cc.
+	* tc-colloc.cc, tc-dassl.cc, tc-det.cc tc-eig.cc, tc-fft.cc,
+	tc-fsolve.cc, tc-fsqp.cc, tc-ifft.cc, tc-inv.cc, tc-lsode.cc,
+	tc-lu.cc, tc-npsol.cc, tc-qr.cc, tc-quad.cc, tc-rand.cc,
+	tc-svd.cc: Split individual functions from tree-extras.cc.
+
+	* g-builtins.cc (npsol_usage): Improve message.
+	* (dassl_usage): Likewise.
+	* (builtin_lsode): Likewise.
+	* (builtin_fsolve): Likewise.
+	* (builtin_quad): Likewise.
+	* builtins.cc (general_functions): Improve corresponding messages.
+
+	* libcruft/fftpack: New directory for fftpack functions.
+	* libcrutf/fftpack/*.f: Add implicit double precision (a-h,o-z) at
+	the top of every subroutine.
+
+	* tree-extras.cc (fft): Allow propagation of empty matrices.
+	* (ifft): Ditto.
+
+	* Matrix.cc (Matrix::fourier): New function.
+	* (Matrix::ifourier): Ditto.
+	* mx-inlines (make_complex): New function.
+	* tree-extras.cc (fft): Use Matrix::fourier instead of doing real
+	to complex conversion here and calling ComplexMatrix::fourier.
+	* (ifft): Likewise, for ifourier.
+
+Sat Mar 27 17:56:59 1993  Fook Fah Yap (ffy@eng.cam.ac.uk)
+
+	* Matrix.cc (ComplexMatrix::fourier): New function for fft.
+	* (ComplexMatrix::ifourier): New function for inverse fft.
+
+	* builtins.cc (general_functions): Add fft and ifft to the list of
+	builtin functions.
+
+	* g-builtins.cc (fft): New function.
+	* (ifft): Ditto.
+
+	* tree-extras.cc (fft): New function.
+	* (ifft): Ditto.
+
+Sat Mar 27 13:53:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (usage_string): New file scope constant.
+	* (getopt_option_string): Ditto.
+
+	* error.cc: Declare all arguments const since we don't change them.
+
+	* utils.cc (print_str_or_null): Delete unused function.
+	* utils.h: Delete declaration.
+
+	* tc-assign.cc, tc-index.cc, tc-inlines.cc, tree.cc,
+	tree-const.cc: More error message cleanups.
+
+	* tree-const.cc (print_if_string): Don't write to cerr
+	unconditionally.
+
+Fri Mar 26 22:00:18 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (min): Avoid function calls as arguments for MIN.
+	* (column_min): Ditto.
+	* (max): Likewise, for MAX.
+	* (column_max): Ditto.
+
+	* tree-const.h (NINT): Make it an inline function instead of a
+	macro.
+
+	* tree-extras.cc (fill_matrix (tree_constant&, double, char*)):
+	Convert to scalar type for complex values too.
+
+	* error.h (panic_impossible): New macro to be used in place of
+	assert (0) calls.
+	* All .cc files: Replace calls to assert (0) and abort () with
+	panic_impossible ().
+
+	* Many .cc files:: Replace many instances of `cerr << ...' with
+	calls to gripe() functions.
+
+	* gripes.h, gripes.cc: New functions for reporting common errors.
+	* Makefile.in: Include them in the usual places.
+
+Thu Mar 25 18:42:49 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Many .cc files:: Replace many instances of `cerr << ...' with
+	calls to error() functions.
+
+	* error.h, error.cc: New functions for reporting errors in a
+	consistent way.
+	* Makefile.in: Include them in the usual places.
+
+Wed Mar 17 17:29:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (symbol_table::save): New functions.
+	* t-buitlins.cc (builtin_save): Use new functions for saving
+	symbols.  Handle case of saving all variables.
+
+	* g-builtins.cc (builtin_pause): If one argument is given, pause
+	for that many seconds before continuing.  Otherwise, wait for user
+	input.
+
+	* symtab.cc (clear): Actually delete undefined symbol_records and
+	remove their names from the list.
+
+	* lex.l (lookup_identifier): New function.  Avoid putting global
+	names in the local symbol table.
+	* ({IDENT}): Use it
+	* ({IDENT}/{S}*=): Ditto.
+
+	* tc-index.cc (do_scalar_index (tree_constant*, int)): Make
+	indexing like a([1,1,1,1]) work for scalars.  GAG.
+
+Tue Mar 16 20:08:23 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-buitlins.cc (builtin_cd): Call tilde_expand (from readline) on
+	the argument.
+
+	* lex.l (discard_until): Delete unused function.
+	* When reading numbers, abort if scanf fails to read a number that
+	we think it should.
+	* (IDENT): New macro to match identifiers.
+	* ([_a-zA-Z][_a-zA-Z0-9]*): Use the / operator for trailing
+	context and split into two cases instead of trying to do the
+	lookahead ourselves.
+
+	* lex.l (do_comma_insert_check): Return the value yyleng had
+	before yyinput() is called.
+	* (DO_COMMA_INSERT_CHECK): New macro.  This avoids the use of
+	unput() in do_comma_insert_check() since there seems to be a bug
+	in flex when calling unput() for '\n'.
+
+	Note that this change is necessary if we want to use yyless()
+	since we cant call yyless() from outside of yylex(), because
+	Flex's yyless() is a macro that uses some variables local to
+	yylex().
+
+Mon Mar 15 11:03:43 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_matrix::eval): Undo part of previous change to
+	make a = [1,2;3,4]; [a,a;a,a] work again.
+
+	* parse.y (input): Don't abort for simple_list followed by EOF.
+
+Sun Mar 14 14:38:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* RowVector.cc (RowVector::operator << ()): Insert a space between
+	each element.
+	* (ComplexRowVector::operator << ()): Ditto.
+
+	* g-buitlins.cc (plot): Don't declare plot_prog or plot_term as
+	static, and don't delete them.
+
+	* Matrix.h (all checkelem functions): Don't check for range errors
+	if NO_RANGE_CHECK is defined.
+
+Sat Mar 13 10:18:51 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.cc (ComplexMatrix::prod): Make it work.
+
+Thu Mar 11 00:08:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.h (ellum): Delete function.
+	* Declare and define new const elem, checkelem, and operator()
+	functions.
+
+	* ColVector.cc, DiagMatrix.cc, RowVector.cc, Matrix.cc, ODE.cc,
+	LinConst.cc, FEGrid.cc, DAE.cc, Bounds.cc, FEGrid.h:
+	Change all callers.
+	* tree-const.cc, tree-extras.cc, xdiv.cc, xpow.cc: Ditto.
+
+	* tree.cc (tree_matrix::eval): Improve row and column mismatch
+	checking -- [[1,2];[3,4]] works now, and [1,2;3,4,[5,6]] is
+	rejected.
+	* Reformat error messages to include `error:' prefix.
+
+Wed Mar 10 14:02:09 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (do_comma_insert): New global variable.
+	* (reset_parser): Reset it.
+	* lex.l (do_comma_insert_check): New function.  Call it wherever a
+	token can be directly followed by '['.
+	* (\[{S}*): Check the value of do_comma_insert.
+
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only look for names in the
+	current symbol table.
+
+	* parse.y (word_list_cmd): Special case to disallow use of clear
+	inside a fuction body.
+
+	* parse.y (CLEAR): New %token.
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Return it if token is "clear".
+
+	* t-builtins.cc (builtin_clear): Allow global symbols to be
+	cleared.
+
+	* symtab.cc (symbol_table::undefine): Clarify comment.
+	* (symbol_table::clear): Don't actually remove names from the
+	table, just force them to be undefined.
+
+	* tree.h (tree_function): Delete unused data member `id'.
+	* tree.cc (tree_function constructors): Don't initialize id.
+
+Mon Mar  8 15:50:28 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.70 released.
+
+	* src/Makefile.in: Update dependencies.
+
+	* tree.h: Include stdio.h, for FILE.
+
+	* gnuplot-build: For now, always define -DNOGAMMA.
+	* configure.in: Don't check for gamma().
+
+	* libcruft/Makerules.in: Don't use lib.a(obj.o) style dependencies
+	because it's too slow for large archives.
+	* liboctave/Makefile.in: Ditto.
+
+Sun Mar  7 16:33:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (parse_and_execute): Save and restore current column
+	number.  Set input line and column number to zero.
+	* tree.cc (parse_m_file): Likewise.
+
+	* tree.cc (tree_identifier::parse_m_file (FILE*, int*)): New
+	function.  If a parse error occurs, ensure that the symbol is
+	cleared from the global symbol table.
+	* (tree_identifier::parse_m_file (char*, int): Use it.
+
+	* tree.cc (tree_identifier::do_lookup): New function.
+	* (tree_identifier::eval): Use it.
+
+	* utils.cc (decode_prompt_string): Really do use value of PWD.
+
+	* user_prefs.cc (sv_loadpath, sv_ps1, sv_ps2, sv_pwd,
+	sv_gnuplot_binary, sv_graphics_terminal): New functions.
+	* (sv_graphics_terminal): Warn if terminal isn't valid, but set it
+	anyway (it's too late to do anything by the time the function is
+	called).
+	* In functions that use these variables:  Use the value from the
+	user_pref structure instead of doing a symbol table lookup.
+
+	* builtins.cc (builtin_string_variables): Add functions to call
+	for LOADPATH, PS1, PS2, PWD, gnuplot_binary, and graphics_terminal.
+
+	* builtins.cc (PS2): New builtin_string_variables.  Set default
+	value to "> ".
+	* input.cc (octave_gets): Use it instead of no prompt for
+	continued input.
+
+	* parse.y (yyerror): Use line, column, file name, and text of
+	current input line to print better parse error messages.
+
+	* lex.l (NEW_MATRIX): New exclusive start state.  Need this to be
+	able to match \[{SN}* _and_ get secondary prompting right.
+
+	* input.cc (octave_read): Keep track of current input line.
+	* tree.cc (parse_m_file): Save and restore current line number.
+
+	* lex.l (all patterns): Keep track of current input column.
+	* (fixup_column_count): New function to deal with patterns that
+	match more than one line.
+
+	* input.h, input.cc (current_input_line): Global pointer to
+	the text of the current input line.
+
+	* parse.y, parse.h (input_line_number, current_input_column): New
+	global variables.
+
+	* Almost all source files: Finish (for now, at least) the
+	reorganization we started for global variables.
+
+Wed Mar  3 14:49:59 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tc-assign.cc, tc-index.cc, tc-inlines.cc: New files, split out
+	from tree-const.cc.
+
+	* Almost all source files: reorganize so that all global data is
+	declared in some include file or another.  It probably wouldn't
+	hurt to do some more reorganizing to try to eliminate the amount
+	of global information...
+
+Tue Mar  2 20:49:35 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* variables.h, variables.cc: New files for handling things that
+	need symbol table information.  Lots of files changed to include
+	variables.h, which now includes the extern declarations for the
+	symbol tables.  The declarations of the symbol tables are now in
+	variables.cc, but they are still initialized in octave.cc.
+
+Mon Mar  1 11:35:03 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* builtins.h (builtin_string_variables): New field, sv_function,
+	holds a pointer to the function to call when a variable changes.
+	* builtins.cc (string_variables): Initialize sv_function field.
+	* (install_builtins): While installing builtin string variables,
+	stash sv_function and, if it isn't NULL, call it to initialize
+	global variable user_pref.
+
+	* symtab.h (symbol_record): New field, sv_fcn, holds a pointer to
+	the function to call when a variable changes.
+	* symtab.cc (symbol_record::define): Call sv_fcn if it isn't NULL.
+	* symtab.cc (symbol_record::set_sv_function): New function.
+
+	* utils.cc, parse.y, tree.cc, tree-extras.cc, tree-const.cc,
+	idx-vector.cc, builtins.cc, symtab.cc: Instead of calling
+	functions like do_fortran_indexing(), get the user's preference
+	from the global struct user_pref.
+
+	* utils.h, utils.cc: Delete all functions like do_fortran_indexing()
+	that lookup user variables to find integer values.
+	* user-prefs.h, user-prefs.cc: Move them here, but instead of
+	returning values, set elements of the new global struct user_pref.
+
+	* user-prefs.h, user-prefs.cc: New files for handling global
+	variables for user preferences.
+	* Makefile.in: Add them to the SOURCES and INCLUDES macros.
+
+	* bsd-math/{acosh,asinh,atanh,log1p}.c: Declare all external
+	functions used in each file since they might not be in math.h.
+	* bsd-math/{scalb,copysign,logb,finite,drem,sqrt}.c: New files
+	from BSD's support.c.  Only using scalb, copysign, logb, and
+	finite for now.
+
+	* configure.in: Move tests for f77 closer to the top.
+	* Allow configuration to proceed even if we can't find a Fortran
+	compiler or f2c.
+	* Use `here' documents instead of multiple echos for multi-line
+	messages.
+	* Imrpoved checking for missing math functions.
+
+Sun Feb 28 17:45:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* test/Makefile.in (check): Try to avoid errors from cp.
+
+	* mappers.cc (xfinite): Put test for HAVE_FINITE first.
+
+	* libcruft/Makerules.in (LIBCRUFT_DEPEND): Use `=' in assignment
+	instead of `:='.
+
+	* liboctave/Makefile.in: Make an explicit list of sources instead
+	of using $(wildcard).
+
+Thu Feb 25 20:18:12 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* bsd-math/copysign.c: New file.  HP's don't have this?
+	* configure.in (LIBOBJS): Also check for copysign, log1p, and
+	log__L.  For each missing user-level function, add -DFOO_MISSING=1
+	to DEFS.
+	* src/missing-math.h: For each function we declare, check the
+	corresponding XXX_MISSING macro.  Add declarations for copysign
+	and log1p.
+
+Wed Feb 24 20:39:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (<MATRIX>{SN}*\]/{S}*==): Change scanning pattern to
+	<MATRIX>{SN}*\]{S}*/== in order to keep flex from generating any
+	backtracking code.
+	* (<MATRIX>{SN}*\]/{S}*=): Likewise.
+
+Tue Feb 23 02:45:00 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
+
+	* Version 0.69 released.
+
+	* mappers.cc [_AIX && __GNUG__] : Provide a definition for
+	finite(), since whatever version we get from the system when using
+	g++ doesn't work (note that it does seem to work with gcc, xlc,
+	and xlC).
+
+	* bugs.texi: Note that the math.h file from libg++ declares
+	finite() incorrectly for some systems.
+
+Mon Feb 22 02:04:16 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Look for runtest, but only believe that it exists
+	if we can also find expect.
+	* test/Makefile.in (check): Run tests in build directory, not
+	source directory.
+
+	* tree.cc (reading_script_file): New global variable.
+	* (parse_m_file): Use it, and properly save and restore state so
+	that nested script files will work.
+
+	* octave.cc (parse_and_execute): Properly save and restore state
+	so that nested script files will work.
+	* Don't close input file here.
+
+	* input.cc (get_input_from (FILE*)): Don't declare mf_instream
+	static.  Set mf_instream if reading and M-file or a script file.
+
+	* parse.y: Minor changes to accomodate new lexer.
+
+	* lex.l: Major overhaul in an attempt to do better string
+	handling.  Looks much simpler and even seems to work.
+	* (do_string_escapes): New function.
+
+Sat Feb 20 00:40:32 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_npsol): If npsol is missing, return empty
+	matrices for x and phi, and -1 for inform.
+
+	* num2str.m: Use %g, not %f.
+
+	* tree.cc (parse_m_file): Save and restor curr_sym_tab, because
+	yyparse may mess with it if it encounters a function definition.
+	* tree-extras.cc (eval_string): Ditto
+	* octave.cc (parse_and_execute): Ditto
+
+	* Makefile.in (DISTDIRS): Add bsd-math to list.
+
+	* src/Makefile.in (LIBOBJS): New macro, value set by configure.
+	(vpath): Add @srcdir@/../bsd-math for LIBOBJS.
+	(octave): Add $(LIBOBJS) to deps.
+	* gnuplot-build/Makefile.in: Likewise, for notgnuplot.
+
+	* configure.in: Use AC_REPLACE_FUNCS to Check for acosh, asinh,
+	atanh, and gamma.
+
+	* bsd-math: New directory for functions from the BSD math library
+	to use as replacements for missing functions.
+
+	* parse.y (semi_comma, comma_semi): New rules.
+	(simple_list, simple_list1): Use them to allow empty statements.
+	(list, list1): Likewise.  This allows empty commands as long as
+	the empty command doesn't contain any newlines.
+
+	* parse.y (simple_assign): New rule, allows things like a = b = c.
+	(multi_assign): Extracted from assignment.
+	(assignment): Split into simple_assign and multi_assign.
+	(expression): Allow '(' simple_assign ')' to be an expression.
+
+	* tree-extras.cc (eval_string): Return result of last expression
+	evaluated, to make things like `eval ('1+1;')*2' work.
+
+Fri Feb 19 19:45:21 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_pwd): Use getcwd, which is defined in
+	unistd.h, instead of getwd, which seems to be a BSDISM.
+	* utils.cc (decode_prompt_string): Ditto.
+	* (get_working_directory): Ditto.
+
+	* arith_ops.cc (DIVIDE_BY_ZERO_ERROR):  Don't rely on
+	HAVE_IEEE_MATH, use HAVE_ISINF, HAVE_FINITE, and HAVE_ISNAN
+	instead.
+	* configure.in: Don't define HAVE_IEEE_MATH.
+
+	* tree-extras.cc: Include stdio.h for FILE.
+
+Thu Feb 18 10:17:38 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (gobble_leading_white_space): New function.
+	* (is_function_file): New function.
+
+	* (parse_m_file): Handle case of .m file being just a file of
+	commands to execute.
+	* Add optional argument to specify whether to execute a script
+	file.
+	* Return whether a script file was executed.
+	* (tree.cc, tree-extras.cc): Change callers.
+
+	* octave.cc (parse_and_execute): new functions.
+	* (execute_startup_files): Use them.
+
+	* lex.l (<COMMENT>\n): Don't gobble new line.
+
+	* num2str.m: Don't print '\n'.
+
+Wed Feb 17 21:59:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* mappers.cc: Simplify and correct finite, isinf, isnan functions.
+	* test/octave/t7.oct: New test for finite, isinf, and isnan
+	functions.
+
+	* configure.in: Define HAVE_IEEE_MATH if isnan and either finite
+	or isinf is available.
+
+	* builtins.cc (mapper_functions): Check HAVE_ISNAN instead of
+	HAVE_IEEE_MATH to determine whether or not to define isnan().
+
+	* mappers.cc: Don't check for HAVE_IEEE_MATH.  Just check for
+	individual functions directly.
+
+	* g-builtins.cc (npsol_usage): Correct usage message.
+
+	* g-builtins.cc: Don't include unistd.h unless HAVE_UNISTD_H is
+	defined.
+	* t-builtins.cc: Ditto.
+	* utils.cc: Ditto.
+
+Tue Feb 16 00:35:44 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.68 released.
+
+	* tree.cc (parse_m_file): Set reading_m_file before calling
+	get_input_from_file.
+	* Don't mess with current_infile.
+
+	* input.cc (get_input_from_file): Set mf_instream if we are
+	reading an M-file.  Otherwise, set rl_instream, (even if we aren't
+	really using readline -- this is just the `normal' input stream).
+	* Don't use current_infile.
+	* (octave_read): If not interactive, check reading_m_file to
+	determine where to look for input.
+
+	* octave.cc (main): Don't use readline if we aren't interactive.
+
+	* libcruft/misc/Makefile.in (local-dist): Make sure we don't
+	distribute a bogus d1mach.f.
+	(dist): Ditto.
+
+	* tree-extras.cc (convert_to_ans_assign): New global variable.
+	(eval_string): Conditionally turn off assignment to `ans', for
+	get_user_input ().
+	* parse.y (ans_expression): Use it.
+	* lex.l (reset_parser): Reset it.
+
+	* g-builtins.cc (builtin_input): New function.
+	* builtins.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (get_user_input): Do most of the real work.
+
+Mon Feb 15 01:14:40 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.cc (load_variable): New function.
+	(builtin_load): Use it.
+
+	* Makefile.in (SUBDIRS): Add the test directory.
+	(check): Don't depend on all.
+
+Sat Feb 13 05:17:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (determinant, lu, matrix_exp, matrix_log,
+	matrix_sqrt): Handle empty matrix argument.
+
+	* Matrix.h: Add constructors of the form Matrix (double a) and
+	ColumnVector (double a) to make it even easier to form single
+	element vectors.
+
+Fri Feb 12 03:27:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (main): Add -v option that will print the version
+	string and quit with a successful exit status.
+
+Thu Feb 11 00:46:34 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (eig): If given an empty argument, return enough
+	empty matrices to fill all possible LHS variables.
+	(qr): Likewise.
+	(svd): Likewise.
+
+	* tree-const.cc (fortran_style_matrix_assignment): Do the right
+	thing if LHS is an empty matrix.
+
+	* tree-extras.cc (qr): Handle empty matrix argument.
+
+	* Matrix-ext.cc (QR): Make it work (really!).
+	(ComplexQR): Ditto.
+
+Wed Feb 10 00:56:31 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* xdiv.cc (xdiv (ComplexMatrix& a, ComplexMatrix& b)): Do
+	btmp.solve (atmp), like the other three xdiv's.  Argh!
+
+	* tree-extras.cc (eval_string): New function.  Mostly works but
+	could be very fragile.  We desperately need some sort of
+	`unwind-protect' scheme to avoid disaster when octave is
+	interrupted.
+
+	* g-builtins.cc (builtin_eval): Instead of just aborting, call
+	eval_string if given one argument.
+
+	* input.cc (octave_read): If get_input_from_eval_string is
+	nonzero, stuff current_eval_string into buf for flex to read.
+
+	* tree-extras.cc (char *current_eval_string): New global variable
+	for eval().
+	* (int get_input_from_eval_string): Ditto.
+
+	* Update copyright notices to include 1993 (now that it's
+	February...).
+
+Tue Feb  9 14:35:08 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.67 released.
+
+	* tree-extras.cc, tree-const.cc: Check the value of the variable
+	`propagate_empty_matrices' to decide what to do about empty
+	matrices in binary and unary operations and some function calls.
+
+	* builtins.cc (builtin_string_variables): New global variable
+	`propagate_empty_matrices' with initial value `warn'.
+	* utils.cc (propagate_empty_matrices): New function.
+
+Mon Feb  8 19:46:51 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-const.cc: Finish changes required to make zero-one indexing
+	work for indexing and assignment.
+
+Sat Feb  6 15:54:10 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* builtins.cc (builtin_string_variables): New global variable
+	`prefer_zero_one_indexing' with initial value `false'.
+	* utils.c (prefer_zero_one_indexing): New function.
+
+Fri Feb  5 13:03:14 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* idx-vector.h, idx-vector.cc: Major overhaul to help with
+	zero-one style indexing.
+	* tree-const.cc (matrix_to_index_vector): Delete functions.
+	* (functions that use idx_vectors): Update for new idx-vector
+	stuff.
+
+	* arith-ops.cc: Don't declare matrix_to_fortran_indices.
+
+	* tree-const.cc (matrix_to_index_vector): Add new argument,
+	allow_neg_one, with default value of false.
+	* (matrix_to_fortran_indices): Add new argument, allow_zero, with
+	default value of false.
+
+	* g-builtins.cc (builtin_find): New function.
+	* builtins.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (find_nonzero_elem_idx (tree_constant)): Do
+	most of the real work.
+	* tree-extras.cc (find_nonzero_elem_idx (const Matrix&): Do the rest.
+	* (find_nonzero_elem_idx (const ComplexMatrix&): Ditto, for complex.
+
+Wed Feb  3 00:54:01 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in (DEFAULT_DOT_O_FROM_DOT_F): If using f2c, quote
+	with single quotes instead of double quotes to avoid problems on
+	systems (like the NeXT) that strip \'s from double quoted strings.
+
+	* utils.c (empty_list_elements_ok): New function.
+	* tree.cc (matrix_list::eval): Use it.
+	* builtins.cc (builtin_string_variables): New global variable
+	`empty_list_elements_ok' with initial value `warn'.
+
+	* utils.cc (check_str_pref): New function.
+	* (resize_on_range_error, prefer_column_vectors,
+	warn_comma_in_global_decl, do_fortran_indexing,
+	implicit_str_to_num_ok, treat_neg_dim_as_zero,
+	ok_to_lose_imaginary_part, return_last_computed_value,
+	silent_functions, print_answer_id_name): Use it instead of
+	needlessly duplicating code.
+
+Tue Feb  2 16:58:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l ("'"): If it looks like we're defining a matrix, don't set
+	the start condition to be MAYBE_QSTRING.  GAK.  There has to be a
+	better way...
+
+	* lex.l: Increment and decrement promptflag instead of just
+	setting its value.  This should help get prompting right for
+	things like if [1,2;3,4] NL ...
+	* input.cc (octave_gets): In order to issue a prompt, Require
+	propmtflag to be greater than zero, not just nonzero.
+
+	* tree.cc (tree_if_command): Allow matrices as the expression to
+	test.  Unlike Matlab, a complex value is false only if both the
+	real and imaginary parts are 0.
+	* tree.cc (tree_while_command): Ditto.
+
+	* tree.cc (tree_for_command): Allow matrices and complex values
+	in the expression.  For matrices, assign each column in turn to
+	the dummy variable.
+
+	* Matrix-ext.cc (qr): Make it work.  The LAPACK book gags me again!
+
+	* xdiv.cc: When computing right division with complex matrices,
+	use hermitian() instead of transpose().
+
+	* lex.l: Return IMAG_NUM for a numeric constant followed by
+	[iIjJ], but don't allow spaces between the numeric constant and
+	the letter (it causes problems inside `[]' where spaces matter...
+
+Mon Feb  1 17:15:19 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree_extras.cc (rand_internal): Make the random number generator
+	give us a different sequence every time we start octave unless we
+	specifically set the seed.
+
+Thu Jan 28 00:10:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.66 released.
+
+	* configure.in: Define PLOTLIB in addition to adding -DUNIXPLOT to
+	DEFS if we find -lplot, and call AC_SUBST for PLOTLIB.
+
+	* QP.cc: Define constructors here.
+	* QP.h: Not here.
+
+	* QP.cc (All constructors that are given H): Force H to be
+	symmetric.
+	* (make_h_symmetric): New function.
+
+Wed Jan 27 01:35:53 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* arith-ops.cc (do_unary_op): Do the right thing for complex
+	logical not operator.
+	* Matrix.cc (ComplexMatrix::operator ! (void)): Return Matrix
+	instead of ComplexMatrix.
+	* mx-inlines.cc (not (Complex *d, int len)): For each element of
+	d, return (d[i] == 0.0), not (d[i] != 0.0), and return it as a
+	pointer to double, not Complex.
+
+	* configure.in: Check for libcruft/qpsol/qpsol.f.
+	* Create Makefile in libcruft/qpsol.
+
+	* libcruft/qpsol: New directory.  Copy QPSOL sources here.
+	* libcruft/qpsol/Makefile.in: New file.
+	* libcruft/qpsol/README.MISSING: New file.
+	* libcuft/Makefile.in: Include qpsol in list of directories to
+	make.
+
+	* QPSOL.h, QPSOL.cc: New file for solving QPs with Gill and
+	Murray's QPSOL.
+
+	* QLD.h, QLD.cc: Delete all minimize functions except
+	Vector minimize (double&, int&).
+
+	* QP.h: Declare minimize functions virtual.
+	* (Vector minimize (double&, int&): Declare as a pure virtual
+	function.
+
+	* QP.cc: New file to implement generic minimize functions.
+
+Tue Jan 26 00:27:13 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l: Recognize numbers of the form .{digits}E{digits} and
+	.{digits}E[+-]{digits}
+
+	* lex.l: Recognize .\ as ELEFTDIV.
+	* parse.y: Handle ELEFTDIV.
+	* tree.cc (tree_binary_expression::eval): Handle el_leftdiv.
+
+	* arith-ops.cc (do_binary_op): Handle element by element left
+	division.  Fix some errors in element by element right division.
+
+	* tree-base.h (enum expression_type): Add el_leftdiv.
+
+	* Version 0.65 released.
+
+	* tree-const.cc (tree_constant_rep::eval (tree_constant *args, int
+	nargin, int nargout, int print)): Fix another brain-o in making
+	recursive call.s
+
+	* src/Makefile.in: Complete changes for CXX instead of C++ make
+	variables.
+
+	* tree-const.cc: For assignment and indexing functions, treat
+	complex scalars and matrices in the same branch of the switch as
+	real scalars and matrices -- the double_value() and matrix_value()
+	functions take care of checking to see if it's ok to lose the
+	imaginary part.
+
+	* tree-const.h (tree_constant_rep::is_numeric_type): New function.
+	* tree-const.h (tree_constant::make_numeric functions): Use it.
+
+	* tree-const.h (tree_constant::make_numeric functions): Return
+	*this for complex constants too.
+
+Mon Jan 25 18:31:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (Matrix min (Matrix&, Matrix&)): Loop over nc and
+	nr, not nr and nr.
+	* (Matrix max (Matrix&, Matrix&)): Ditto.
+
+	* tree-const.cc (tree_constant_rep::mapper): Fix brain-o in making
+	recursive call.
+
+Sun Jan 24 20:05:39 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: If using f2c, explicitly check for -lf2c.  If it's
+	not found, look for -lF77 and -lI77.  If a suitable combination
+	isn't found, print a warning.
+
+	* src/Makefile.in liboctave/Makefile.in: GNU Make 3.63 uses CXX
+	and CXXFLAGS instead of C++ and C++FLAGS.  Fix things so that 3.63
+	will work without sacrificing compatibility with earlier versions.
+
+	* tree-const.cc (tree_constant_rep::diag (tree_constant&)): Fix
+	brain-o in forcing argument to be numeric.
+
+Fri Jan 22 15:03:42 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (interrupt_handler): Declare to take int argument.
+
+	* NPSOL.cc (npsol_objfun): Delete leftover debugging message.
+
+Thu Jan 21 14:28:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Check version of gcc and issue a warning if it
+	looks like 1.something.
+	* Check for g++.  Issue a warning if it is missing or if it is
+	there but it looks like verion 1.something.
+
+	* flibs.sh, f2c-compat.sh: Change file permission to 755 to avoid
+	problems if the uid of the installer is different from the uid of
+	the owner of the files.
+
+Wed Jan 20 04:18:49 1993  John W. Eaton  (jwe@june.che.utexas.edu)
+
+	* libcruft/Makerules.in (@DOT_O_DOT_F_C[1234]@): Patterns deleted.
+	* configure.in: Do multiple line sed substitutions the right way.
+
+Tue Jan 19 14:50:50 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Use new AC_WITH to accept --with-f2c instead of
+	--use-f2c.
+	* Use new AC_HAVE_LIBRARY to find -lplot.
+
+	* flibs.sh: Actually avoid including duplicate -lflags.
+	* Use test, not `['.
+
+Sun Jan 17 16:57:02 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.h: Declare operator+ and operator- functions for vectors.
+	* RowVector.cc: Define half of them.
+	* ColVector.cc: Define the other half.
+
+Fri Jan 15 03:00:46 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Makefile.in (install): Include version number in name of
+	installed binary and make a link to $(bindir)/octave.
+
+	* Version 0.64 released.
+
+	* t-builtins.cc (builtin_clear): Don't allow the user to clear
+	global symbols by name.  If he tries, issue a warning.
+
+	* tree.cc (tree_identifier::eval_undefined_error):  Don't clear
+	undefined symbols from the global or local (function) symbol
+	tables.
+
+Thu Jan 14 02:10:20 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_function::eval): Save old and set current symbol
+	table context, so eval_undefined_error() doesn't wipe out top
+	level symbols.
+
+	* Version 0.63 released.
+
+Wed Jan 13 13:16:56 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Nearly every .h and .cc file: Add interface and implementation
+	#pragmas for G++ in hopes of making smaller objects with -g.
+
+	* tree-const: Properly handle assignments like A(:) = RHS when
+	do_fortran_indexing is true.
+
+	* g-builtins.cc (builtin_eig): Correct usage message.
+
+	* tree-const.cc (tree_constant_rep (ComplexDiagMatrix&)): Create
+	and initialize a new complex_scalar.  Don't just try to copy the
+	value...
+
+	* Matrix.h: Declare new fill functions for diagonal matrices.
+	* DiagMatrix.cc: Define them.
+
+	* Matrix.h: Declare map functions for row and column vectors.
+	* RowVector.cc: Define them.
+	* ColumnVector.cc: Likewise.
+
+	* CollocWt.h: Declare data protected instead of private.
+	* CollocWt.cc (CollocWt::CollocWt (const CollocWt&)): Fix brain-o.
+
+	* lex.l: Return IMAG_NUM for a numeric constant followed by
+	[ \t]*[iIjJ].
+
+	* parse.y (IMAG_NUM): New token.
+	* (fact): Recogize IMAG_NUM and convert its value to a complex
+	constant.
+
+	* Version 0.62 released.
+
+	* Makefile.in (local-dist): Include -local in tar.Z filename.
+	* (split-local-dist): New target.
+	* (dist): Don't depend on newversion.
+	* (local-dist): Ditto.
+
+	* tree-extras.cc (npsol): If the first argument isn't a vector,
+	print an error message and return.
+
+	* tree.cc (tree_matrix::eval): Always set prev_row_total and
+	prev_column_total when starting out.
+
+	* octave.cc (main): Don't try to detect signal handler failures,
+	but do call signal() to set up the interrupt handler.
+
+Tue Jan 12 19:59:33 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (npsol): Fix brain-o in checking length of bounds
+	vectors.
+
+Mon Jan 11 20:32:24 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (set_rand_seed): New function.
+	(force_to_fit_range): New function.
+	(current_seed): Really return current seed.
+	(rand_internal): Allow the user to actually set the seed for the
+	random number generator.
+
+Sun Jan 10 16:46:06 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.61 released.
+
+	* builtins.h, builtins.cc: Rename from builtin-fcns.h,
+	builtin-fcns.cc (too long for Linux/SysV).
+
+	* mappers.cc (xisinf): For non-IEEE machines, consider DBL_MAX to
+	be infinite.
+
+Fri Jan  8 09:15:57 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* gnuplot-build/Makefile.in (x11targets): Don't worry about
+	checking HAVE_X11_X_H.
+
+	* configure.in: Check for gamma and lgamma for gnuplot.
+
+	* gnuplot-build/Makefile.in (Makefile.X11): Only move Makefile to
+	../Makefile.X11 if xmkmf succeeds.
+
+	* gnuplot-build/Makefile.in (x11targets): Check to see that XMKMF
+	is set *and* that Makefile.X11 exists.
+	* If making notgnuplot_x11 with Makefile.X11 fails, try again with
+	Makefile.
+
+	* gnuplot-build/Makefile.in: Use @PLOTLIB@ in definintion of LIBS.
+	* Don't define UNIXPLOT in TERMFLAGS.
+	* Don't define LN_S; it isn't used anywhere, and configure doesn't
+	give it a value.
+
+	* configure.in: Check for closepl().  If found, define UNIXPLOT,
+	and substitute -lplot for @PLOTLIB@.
+
+	* arith-ops.cc (DIVIDE_BY_ZERO_ERROR): New macro.  On systems that
+	have IEEE math, give a warning but also go ahead and divide by
+	zero.  On systems that don't have IEEE math, just give an error
+	message and return an undefined tree_constant (it would probably
+	be possible to handle this so that it works the same everywhere,
+	but I'm not sure it's worth the effort...).
+
+	* builtin-fcns.cc (install_builtins): On systems that don't have
+	IEEE_MATH, define Inf to be MAX_DBL, but don't define NaN at all.
+
+	* configure.in: Check for finite, isnan, and isinf.
+	* Set HAVE_IEEE_MATH if we find finite and isnan.
+
+	* builtin-fcns.cc (install_builtins): Use HAVE_IEEE_MATH instead
+	of IEEE_MATH.
+	* mappers.cc: Check HAVE_IEEE_MATH and HAVE_ISINF macros rather
+	than checking system type.
+
+	* graph3d.c (hidden_line_plot): Declare dy and y as double, not
+	float, since VERYLARGE can be DBL_MAX.
+
+	* lsoda.f, lsodar.f, lsodes.f, lsodi.f, lsoibt.f, stoda.f,
+	stodi.f, zrotg.f, sdot.f: Remove unused files.
+
+	* texas_lotto.m: Renamed from win_texas_lotto.m to keep the
+	filename less than 14 characters.
+
+Thu Jan  7 15:45:29 1993  John W. Eaton  (jwe@june.che.utexas.edu)
+
+	* utils.cc: Declare ioctl extern "C".
+
+	* tree.cc: Include stdio.h to be sure FILE is defined (apparently
+	not required by older versions of GNU iostream library).
+	* t-builtins.cc: Likewise.
+	* g-builtins.cc: Likewise, but for tmpnam.
+
+	* tree-const.h (rand_internal): Rename from rand to avoid
+	conflict with standard library rand (a macro in Linux).
+	* tree-extras.cc (rand_internal): Fix function definition.
+	* g-builtins.cc (builtin_rand): Call rand_internal instead of rand.
+
+	* octave.cc (main): Don't try to detect signal handler failures.
+	What's the proper way to do this if RETSIGTYPE is void?
+
+Tue Jan  5 08:14:29 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_matrix::eval): When adding a matrix down or to the
+	right, column or row dimension mismatches are always errors.
+
+Mon Jan  4 04:58:55 1993  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.60 released.
+
+	* xdiv.h, xdiv.cc: New files for Octave-specific matrix division
+	stuff.
+	* src/Makefile.in (INCLUDES, SOURCES, OBJECTS): Add xdiv stuff.
+
+	* arith-ops.cc: Include xdiv.h.
+
+Sun Jan  3 12:24:04 1993  John W. Eaton  (jwe@ward.che.utexas.edu)
+
+	* gnuplot-build/Imakefile.in (notgnuplot_x11): In the compile
+	command, put source file before	libraries.
+
+	* libcruft/misc/Makefile.in: Don't use -O to compile gen-dimach.c.
+
+Thu Dec 31 00:45:50 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (matrix_sqrt): Don't create D until it is really
+	needed.
+	* (matrix_log): Ditto.
+	* (matrix_exp): Ditto.
+	[this should really be just one function instead of three...]
+
+	* g-builtins.cc (builtin_sqrtm): New function.
+	* builtin-fcns.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (matrix_sqrt): Do the real work.
+
+	* Makefile.in: Distribute INSTALL.OCTAVE and configure.in.
+	* (INSTALL.info): Make ../INSTALL.OCTAVE, not ../INSTALL.
+
+	* doc/Makefile.in: Make ../INSTALL.OCTAVE, not ../INSTALL.
+
+	* INSTALL.OCTAVE: Rename from INSTALL.
+	Refer to INSTALL for more info.
+
+	* INSTALL: Copy from autoconf distribution.
+	Refer to INSTALL.OCTAVE for more info.
+
+	* octave.cc (main): Remove leading blank line from startup message.
+	* Don't print it everytime the user types C-c...
+
+	* xpow.cc: Finish off remaining cases.
+
+	* tree-extras.cc (process_format): New function.
+	(do_printf): Use it.
+
+Wed Dec 30 00:43:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.56.
+
+	* g-builtins.cc (builtin_logm): New function.
+	* builtin-fcns.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (matrix_log): Do the real work.
+
+	* g-builtins.cc (builtin_expm): New function.
+	* builtin-fcns.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (matrix_exp): Do the real work.
+
+	* Matrix-ext.cc (LU): Construct LU decomp. here, not in Matrix class.
+	(ComplexLU): Likewise.
+	* Matrix.cc (lu): Deleted.  Use LU constructor instead.
+	Change all uses in octave sources.
+
+	* Matrix-ext.cc (EIG): Construct EIG object here, not in Matrix class.
+	* Matrix.cc (eig): Deleted.  Use EIG constructor instead.
+	Change all uses in octave sources.
+
+	* Matrix-ext.cc (SVD): Construct SVD here, not in Matrix class.
+	(ComplexSVD): Likewise.
+	* Matrix.cc (svd): Deleted.  Use SVD constructor instead.
+	Change all uses in octave sources.
+
+	* Makefile.in: Update for new Matrix file organization.
+	Don't compile mx-inlines separately -- it's included where needed.
+	* Matrix.h: Declare Fortran routines we call here, not in Matrix.cc.
+	Don't declare every class to be a friend of every other class.
+	* mx-inlines.cc: New file, included by all Matrix-related .cc files.
+	* Matrix.cc: Split into several files.
+	* ColVector.cc: New file, from Matrix.cc
+	* RowVector.cc: Ditto.
+	* DiagMatrix.cc: Ditto.
+	* Matrix-ext.cc: Ditto.
+
+	* tree-extras.cc (svd): Take advantage of new constructors and
+	diag functions.
+
+	* Matrix.cc (DiagMatrix::diag) New function.
+	(ComplexDiagMatrix::diag) Ditto.
+
+	* tree-extras.cc (eig): Take advantage of new constructors.
+
+	* tree-const.cc (tree_constant (DiagMatrix)): New constructor.
+	(tree_constant (ComplexDiagMatrix)): Ditto.
+
+	* Matrix.cc (Matrix (const DiagMatrix)): New constructor.
+	(ComplexMatrix (const DiagMatrix)): Ditto.
+	(ComplexMatrix (const ComplexDiagMatrix)): Ditto.
+
+Tue Dec 29 01:14:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (main): Print message at startup by default.
+	Don't print it until just before main loop.
+	* New -q option (inhibit_startup_message) turns it off.
+	* New -f option (read_init_files) inhibits reading of startup files.
+	* Delete -v option.
+	* (verbose_usage): Reflect changes in arguments, document -d.
+
+	* win_texas_lotto.m: Sort picks before returning.
+
+	* tree-extras.cc (eig): Return [v,d], not [l,v], where d is a
+	diagonal matrix made from l.
+
+	* builtin-fcns.cc (mapper_functions): Fix last element of
+	initialization list to have correct number of elements.
+
+	* Version 0.55.
+
+	* Quad.h: Move all inline functions to Quad.cc to avoid apparent
+	g++ bug on the RS/6000.
+
+	* configure.in: If we find flex, don't define LEXLIB.
+
+	* COPYING.LIB: Deleted -- we're not actually distributing anything
+	under these terms.
+	* Makefile.in: Don't distribute COPYING.LIB.
+
+Mon Dec 28 00:46:21 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* xpow.h, xpow.cc: New files for safer pow() interface for octave.
+	* src/Makefile.in (INCLUDES, SOURCES, OBJECTS): Add xpow stuff.
+
+	* arith-ops.cc: Include xpow.h.
+	* Don't declare toplevel jmp_buf.
+
+	* t-builtins.cc (builtin_save): Make file and stream static to
+	avoid dumping core on return (is this a bug in libg++ or g++?).
+	* (builtin_load): Ditto.
+
+	* symtab.cc (load): Make it work again.  Yikes!  This hasn't
+	worked since the big symbol table overhaul...
+
+	* tree-const.cc (tree_constant_rep::save): Handle complex scalars
+	and matrices.
+
+	* (symbol_def::undefine): Delete previous symbol definition before
+	defining.  This should be ok now, after the parse_m_file fix of
+	27 Dec.
+
+	* getting_help: New global flag.
+	* ([_a-zA-Z][_a-zA-Z0-9]*): Set it if looking at "help".
+	* (reset_parser): Clear it.
+	* lex.l (STRING): Use it to determine what to do with ' ; and , .
+
+	* lex.l (QSTRING): Handle the following (C-style) backslash escape
+	sequences correctly(?).
+
+	  \a  bell	   \r  carriage return
+	  \b  backspace    \t  horizontal tab
+	  \f  formfeed     \v  vertical tab
+	  \n  newline	   \\  backslash
+
+	* median.m: New M-file.
+
+	* g-builtins.cc (builtin_sort): New function.
+	* builtin-fcns.cc (general_fucntions): Add it to the list.
+	* tree-extras.cc (sort): Do most of the real work.
+	* tree-extras.cc (mx_sort): Do the rest.
+
+Sun Dec 27 17:40:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.cc (builtin_casesen): New function.
+	* builtin-fcns.cc (text_functions): Add it to the list.
+
+	* strcmp.m: Temporarily allow string to numeric conversions.
+	Maybe strcmp() should be built in to the interpreter?
+
+	* norm.m: New M-file.
+
+	* builtin-fcns.cc (install_builtins): Treat i and j as functions,
+	not variables.
+	* Install inf as an alias for Inf.
+	* Install nan as an alias for NaN.
+
+	* tree.cc (tree_identifier::parse_m_file (char*)): Force new
+	global symbol to be a function, not a variable.
+
+Tue Dec 22 14:15:57 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_function::eval): Check with silent_functions()
+	and return_last_value_computed() to determine proper behavoir.
+
+	* builtin-fcns.cc (silent_functions): New builtin variable.
+	* (return_last_value_computed) Ditto.
+
+	* utils.cc (silent_functions): New function.
+	* (return_last_value_computed) Ditto.
+	[This scheme for determining preferences needs to be reworked...]
+
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only force yytext[len] to be the
+	end of the identifier if we gobbled some whitespace.
+	* Always unput the last character read.
+
+	* tree.cc (tree_function::eval) Always turn on printing for
+	commands inside functions.
+
+Sat Dec 19 14:03:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.54.
+
+Fri Dec 18 16:02:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* (symbol_def::undefine): Undo previous change.  Someone is
+	calling this function when they shouldn't be...
+
+	* tree.cc (parse_m_file): If the script file is successfully
+	parsed, Ensure that the new symbol is defined in the global
+	symbol table.
+
+	* lex.l: Handle continuation lines with the pattern
+	{EL}{S}*\n { promptflag = 0; }  // Line continuation.
+
+Thu Dec 17 01:47:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (symbol_def::define): Delete previous symbol
+	definition before defining.
+	(symbol_def::undefine): Ditto, but new definition is always NULL.
+
+	* readline/Makefile.in:  Don't compile emacs_keymap.c and
+	vi_keymap.c since they are included by keymaps.c.
+
+	* configure.in: If RETSIGTYPE isn't int, then define
+	VOID_SIGHANDLER="-DVOID_SIGHANDLER=1".
+	Substitute VOID_SIGHANDLER.
+
+	* readline/Makefile.in (CFLAGS): Add -DVOID_SIGHANDLER if
+	appropriate.
+
+	* tilde.c: Declare xmalloc, not malloc.
+
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only call unput if we've
+	actually read something.
+
+	* Version 0.53.
+
+Wed Dec 16 01:35:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Look in the global symbol table
+	for names, but ignore functions.
+
+	* tree.cc (tree_identifier::eval): Use symbol_out_of_date() to
+	simplify logic for re-parsing M-files.
+	Always look in global symbol table for functions in case the
+	definition has changed (shouldn't the local symbols be undefined
+	anyway??).
+
+	* tree.cc (symbol_out_of_date): New function.
+
+	* symtab.cc (symbol_table::undefine): Actually do something.
+	* (symbol_table::remove_name): Ditto.
+	* (symbol_table::clear): And so on.
+
+	* Matrix.cc (ComplexMatrix::svd): Use complex conjugate transpose,
+	not simple transpose, for V.
+
+	* Version  0.52.
+
+	* gnuplot-build/Imakefile (notgnuplot_x11): In the compile
+	command, put source file before	libraries.
+
+	* parse.y (assignment): If trying to warn against assignment to a
+	function, check is_function() instead of !is_variable().
+
+	* src/Makefile.in: Distribute input.h.
+
+Tue Dec 15 10:48:22 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (main): Call initialize_readline to set up completion
+	functions.
+
+	* input.cc (make_name_list, command_generator, command_completer,
+	initialize_readline): New functions.
+
+	* input.h: New file.
+	* lex.l: Include it instead of input.cc.
+	* src/Makefile.in: Create input.o rather than including it
+	directly in lex.l.
+
+	* builtin-fcns.cc: do_fortran_indexing is now initially false.
+	prefer_column_vectors is now initially true.
+
+	* builtin-fcns.cc (install_builtins): Install i and j
+	 (== sqrt(-1)) as permanent global variables.
+
+	* g-builtins.cc (MAXPATHLEN) Provide default definition here.
+	* t-builtins.cc: Not here.
+
+	* g-builtins.cc (quitting_gracefully, interactive,
+	clean_up_and_exit, verbatim_pwd, getwd) Declare here.
+	* t-builtins.cc: Not here.
+
+	* g-builtins.cc: Also include readline.h and history.h.
+
+	* g-builtins.cc: Include version.h and sys/param.h here.
+	* t-builtins.cc: Not here.
+
+	* g-builtins.cc: Move builtin_clc, builtin_clock, builtin_date,
+	builtin_pause, builtin_quit, builtin_warranty here from
+	t-builtins.cc.
+
+	* builtin-fcns.cc (general_functions): Move builtin_clc,
+	builtin_clock, builtin_date, builtin_pause, builtin_quit,
+	builtin_warranty here from text_functions to limit the number of
+	reserved words.
+
+	* scripts/*.m: Check for correct number of input arguments before
+	proceeding.
+
+	* configure.in (DEFAULT_PAGER): Look for less, more, page, and pg.
+
+	* t-buitlins.cc (builtin_help): If no arguments are given, list
+	all the known operators, keywords, functions, and variables.
+
+	* t-builtins.cc (builtin_help) Pass the output through PAGER using
+	a libg++ procbuf.
+	(builtin_who): Ditto.
+
+	* utils.cc (get_pager): New function.
+
+	* help.h, help.cc: New files to manage lists of help info for
+	keywords and operators.
+
+	* symtab.cc (symbol_record): Implement the Matlab-style semantics
+	of functions using two symbol_def objects.
+	* (symbol_table): Store identifier names in a hash table instead
+	of a linear list.
+	* symtab.cc (symbol_def): New class.
+
+Sat Dec 12 00:00:00 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y (yyerror): Change error text to be more accurate.
+
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Only look in the current symbol
+	table for names.  Function names and other global symbols are now
+	resolved at execution time.
+
+	* symtab.cc (sorted_var_list): New function.
+	* (sorted_fcn_list): Ditto.
+	* (var_list): Ditto.
+	* (fcn_list): Ditto.
+	These should probably not all be separate functions...
+
+	* t-functions.cc (builtin_who): Call sorted_var_list for each
+	symbol table to print variable names only.
+	* Accept -fcn, -fcns, or -functions to also list function names.
+	* Make -all list function names, but under a separate heading from
+	other symbols.
+
+	* builtin-fcns.cc (is_text_function_name): New function.
+	* lex.l ([_a-zA-Z][_a-zA-Z0-9]*): Use is_text_function_name to
+	find if a name is a text function name instead of relying on the
+	symbol tables.
+
+	* lex.l (is_keyword): New function.
+	([_a-zA-Z][_a-zA-Z0-9]*): Use is_keyword instead of having a
+	special lex pattern for each keyword.
+
+Thu Dec 10 12:25:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.cc: Declare top_level_sym_tab extern.
+
+	* Version 0.51.
+
+Wed Dec  9 02:00:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (all user_functions): If the return value from a
+	user's function is bogus, print an error message and abort to the
+	top level.
+
+	* tree-const.cc (all do_matrix_index functions): Major overhaul to
+	simplify and apply range checking before doing the indexing.
+
+	* tree-const.cc (fortran_row, fortran_column, valid_scalar_indices,
+	matrix_to_fortran_indices): Move here from arith-ops.cc and
+	declare as `static inline'.  Delete declarations from arith-ops.h.
+
+	* arith-ops.cc (gripe_nonconformant_assignment): Delete function.
+
+	* tree-const.h (TREE_TO_MAT_IDX): Delete macro.
+	* tree-const.cc (tree_to_mat_idx): Make it an inline function.
+
+	* tree-const.cc (all do_matrix_assignment functions): Major
+	overhaul to simplify resizing and range checking.
+
+	* tree-const.cc (): Move here from arith-ops.cc.
+	Jump to top level on errors.
+	Return max value.
+	(indexed_assign_conforms) New function.
+	(index_check (int)): New function.
+	(index_check (Range)): New function.
+
+Tue Dec  8 21:07:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-const.cc (tree_constant_rep::tree_constant_rep (Range):
+	Don't create range constants that have less than 2 elements.
+
+	* utils.cc (jump_to_top_level): New function.
+	* All: Replace calls to longjmp with calls to jump_to_top_level().
+	Don't include <setjmp.h>, except in octave.cc, and utils.cc.
+
+Mon Dec  7 01:57:30 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in: Create Imakefile in gnuplot-build directory.
+	Look for xmkmf, then X11/X.h.
+	* gnuplot-build/Makefile.in: Try harder to get notgnuplot_x11 to
+	build correctly.
+	* gnuplot-build/Imakefile.in: New file, for building
+	notgnuplot_x11 if xmkmf is available.
+
+	* Version 0.50.
+
+	* gnuplot-build/Makefile.in (SUBDIRS): Add docs.
+
+	* tree-const.h (make_numeric_or_range_or_magic): New function.
+	* tree-const.cc (do_matrix_index): Use it instead of make_numeric
+	so that we actually take advantage of all the special cases we
+	have for range types as matrix indices.
+
+	* tree-const.cc (tree_constant_rep::do_matrix_index (int, Matrix)):
+	Fix typo.
+
+	* DAE.cc (integrate): If returning a matrix of values, don't mix
+	time with the states.
+	* ODE.cc (integrate): Likewise.
+
+Sun Dec  6 16:58:41 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (dassl): New function.
+	* g-builtins.cc (builtin_dassl): Make it work.
+	* doc/octave.1: Document it.
+
+	* DAEFunc.h, DAEFunc.cc, DAE.h, DAE.cc: New files.
+
+	* tree-extras.cc (lsode): Clean up.  Use available functions
+	instead of doing everything in line.
+
+	* tree.cc (tree_multi_assignment_expression::eval): Don't define
+	constants that are of unknown type.
+	Try to be smarter about padding after last value.
+
+	* tree-extras.cc (lu): Don't bother trying to return the LU
+	factorization in a single matrix since this isn't really useful
+	and isn't compatible with Matlab anyway (they use Linpack, we use
+	Lapack).
+
+	* tree.cc (tree_identifier::assign (rhs, args, nargs)): Only try
+	to do assignment if rhs is defined.
+
+Sat Dec  5 18:23:55 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (qr): New function.
+	* g-builtins.cc (builtin_qr): New function.
+	* builtins.cc: Add builtin_qr to list of builtin functions.
+	* doc/octave.1: Document it.
+
+	* Matrix.cc (Matrix::lu): Use dgesv from Lapack instead of dgefa
+	since it returns L and U, not some factors that need decoding.
+	(ComplexMatrix:lu): Likewise.
+
+Fri Dec  4 01:51:05 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* configure.in (INCDIRS): Don't include /usr/local/include.
+	(LIBDIRS): Don't include /usr/local/lib.
+
+	* tree-extras.cc (lu): New function.
+	* g-builtins.cc (builtin_lu): New function.
+	* builtins.cc: Add builtin_lu to list of builtin functions.
+	* doc/octave.1: Document it.
+
+	* Matrix.cc (Matrix:lu, ComplexMatrix:lu): New functions.
+	* Matrix.h, Matrix.cc (LU, ComplexLU): New classes.
+
+	* tree-extras.cc (do_quad): New function.
+	* g-builtins.cc (builtin_quad): New function.
+	* builtins.cc: Add builtin_quad to list of builtin functions.
+	* doc/octave.1: Document it.
+
+	* doc/Makefile.in (install): Edit the manpage to substitute
+	correct values in the FILES section.
+	(dist) Depend on octave.info.
+	(local-dist): Ditto.
+
+	* Quad.h, Quad.cc: New files to implement quadrature.
+
+	* NPSOL.cc (npsol_objfun): If compiling with GCC on a Sun, assign
+	to objf via assign_double().
+
+	* sun-utils.h, sun-utils.cc: New files.
+	* sun-utils.cc: Move declaration and definition of MAIN_ here from
+	utils.cc.
+	(access_double): New function, from GCC manual.
+	(assign_double): New function, after access_double.
+
+Thu Dec  3 03:16:03 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* NEWS: New file.
+	* Makefile.in: Distribute it.
+
+	* scripts/*.m: Change to use new end feature.
+
+	* lex.l: Recognize `endif', `endfor', `endfunction', `endif', and
+	`endwhile', in addtion to `end'.
+	* parse.y: Check for command/end mismatches.
+	(end_error): New function.
+	* doc/octave.1: Document it.
+
+Wed Dec  2 11:57:18 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* libcruft/villad: New directory.  Move and split villad.f here
+	from libcruft/misc.
+	* configure.in: Create Makefile in libcruft/villad.
+	* libcruft/Makefile.in: Add libcruft/villad to list of dirs to make.
+
+	* All Makefile.in (uninstall): New target.
+	(distclean): Likewise.
+	(check): Ditto.
+	* Try to make clean targets conform with GNU coding standards.
+
+	* utils.cc (smells_like_X11): New function.
+	* builtin-fcns.cc (install_builtins): Don't set graphics terminal
+	to x11 unless it looks like we're running X11.
+
+	* win_texas_lotto.m: New M-file.
+	* octave.1: Document it.
+
+	* arith-ops.h: New file.
+	* src/Makefile.in: Build arith-ops.o, distribute arith-ops.cc,
+	arith-ops.h.  Maybe this will at least speed up recompiles.
+
+	* THANKS: New file
+	* Makefile.in: Distribute it.
+
+	* configure.in: Create Makefile in gnuplot-build/docs.
+	* gnuplot-build/docs/Makefile.in: New file.
+	* Create and install notgnuplot.gih.
+
+Tue Dec  1 00:15:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_identifier::eval (int)): Only pad after if printing.
+	(tree_multi_assignment_expression::eval (int)): Ditto.
+	(tree_assignment_expression::eval (int)): Ditto.
+
+	* hankel.m: Use disp to print message.
+	* toeplitz.m: Ditto.
+
+	* lex.l (<MATRIX>{SN}*\]/{S}*=): Check maybe_screwed_again to
+	decide whether to return SCREW_TWO or ']'.
+
+	* doc/Makefile.in (install): Really install the manpage.
+
+	* Version 0.49.
+
+	* Matrix.cc (ComplexMatrix::operator !): New function.
+	* arith-ops.cc (do_unar_op): Use it.
+
+	* tree-extras.cc (inverse, svd, eig): Don't try to operate on
+	empty matrices.
+
+	* Matrix.h, Matrix.cc: (EIG): New class.
+	(Matrix::eig): New functions.
+	(ComplexMatrix::eig): Ditto.
+	* tree-extras (eig): Use them.
+	* g-builtins.cc (builtin_eig): New function.
+	* builtin-fcns.cc (general_functions): Add eig to list.
+	* dococtave.1: Document it.
+
+	* Matrix.h, Matrix.cc: (ComplexDET): New class.
+	* tree-extras (determinant): Use it.
+
+Mon Nov 30 04:02:29 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.h, Matrix.cc (ComplexSVD): New class.
+	* tree-extras (svd): Use it.
+
+	* Matrix.cc (svd): Use lapack instead of linpack to compute SVD.
+
+	* libcruft/Makefile.in: Replace eispack with lapack in
+	subdirectory list.
+	* libcruft/eispack: Delete directory.
+	* libcruft/lapack/Makefile.in: New file.
+	* configure.in: Create Makefile in libcruft/lapack, not
+	libcruft/eispack.
+
+	* libcruft/lapack: New directory.
+	* Copy files for SVD and Eigenvalue computation here.
+
+	* lex.l (<MATRIX>{SN}*\]/{S}*=): Only return SCREW_TWO if not
+	defining a function.
+
+	* arith-ops.cc (do_binary_op (double, double)): For pow operator,
+	don't create complex value if exponent is really an int.
+
+	* configure.in: Check for f77 last.
+	* Print warnings if bison or lex is not found.
+	* Reformat fatal no f2c/f77 error message.
+
+	* flib.sh: Make it work even if xlf is called f77.
+
+Sun Nov 29 01:55:41 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc: Include f77-uscore.h.
+	* Use F77_FCN macro when declaring or calling Fortran functions.
+
+	* configure.in: After checking to see that it's not garbage, add
+	the output of f2c-compat.sh to DEFS.
+
+	* f2c-compat.sh: Figure out whether or not we need to append an
+	underscore to Fortran function names.
+
+	* flibs.sh: Handle xlf -v output as special case.
+
+	* octave.cc: Only define BADSIG if it isn't already defined.
+	* g-builtins.cc: Ditto.
+
+	* configure.in: Don't create man/Makefile.
+	* man: Directory deleted.
+	* doc/Makefile.in: Distribute and install octave.1.
+	* doc/octave.1: Renamed from man/octave.1.
+
+Sat Nov 28 15:54:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* man/Makefile.in (install): Install manpage.
+	* octave.1: rename from octave.man
+	* octave.1: Document builtin variables and command line editing
+	(stolen from bash man page).
+
+	* tree-const.cc (eval (int print)): Convert complex values to real
+	if imaginary part is zero.
+
+	* octave.cc (log_usage): Deleted.
+	(main): Don't call log_usage.
+
+	* g-builtins.cc (builtin_sqrt): Delete.
+	(builtin_log): Ditto.
+	(builtin_log10): Ditto.
+
+	* tree-const.h, tree-const.cc (sqrt_internal): Delete.
+	(log_internal): Ditto.
+	(log10_internal): Ditto.
+
+	* tree-const.cc (mapper): Handle neg_arg_complex.
+
+	* builtin-fcns.h (Mapper_fcn): New field neg_arg_complex.
+	* builtin-fcns.cc: (mapper_functions[]): Initialize it for list of
+	mapper functions.
+	* builtin-fcns.cc: (mapper_functions[]): Move log, log10, and sqrt
+	back here from general_functions[].
+
+Fri Nov 27 17:05:21 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (tree_constant_to_vector): Handle complex scalars
+	and matrices.
+
+Wed Nov 25 17:32:42 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* man/octave.man: New file, very incomplete.
+	* man/Makefile.in: Include octave.man in list of files to
+	distribute.
+
+	* g-buitlins.cc (builtin_rand): Handle nargin == 1.
+	* tree-extras.cc (rand): Likewise.
+
+	* rem.m: New M-file.  Implemented as M-file because it's much
+	simpler!
+
+	* configure.in (DEFAULT_DOT_C_FROM_DOT_F): Escape % characters in
+	rule to avoid problems with autoconf, which uses % for sed command
+	delimeters.
+	(DEFAULT_DOT_O_FROM_DOT_F): Ditto.
+
+Tue Nov 24 00:21:34 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (fill_matrix): Don't try to create matrices with
+	negative dimensions.
+	(frobit): Likewise.
+
+	* utils.cc (check_dimensions): New function.
+
+	* utils.cc (treat_neg_dim_as_zero): New function.
+	* builtin-fcns.cc (treat_neg_dim_as_zero): New builtin variable,
+	default value is false.
+
+	* tree-const.h (tree_constant::bump_value): Like, assign, check
+	reference count and possibly make a new copy before changing
+	anything.
+
+	* tree-base.h (is_builtin): New virtual function.
+	* tree.cc (tree_builtin::is_builtin): New function.
+
+	* parse.y (ans_expression): Also check to see if the lone
+	expression is a builtin text-style function invoked without any
+	arguments.
+
+	* octave.cc, t-builtins.cc: Print copyright and other normal
+	(non-error) message on cout instead of cerr.
+
+	* t-builtins.cc (builtin_warranty): Don't return message in
+	retval.
+	(builtin_history): Likewise.
+	(builtin_help): Also.
+	(builtin_who): Ditto.
+
+	* Version 0.48.
+
+	* tree-extras.cc: Fix most functions to handle complex arguments.
+	Still need to finish SVD and DET (waiting for these functions in
+	the Matrix class).
+
+	* tree.cc (tree_multi_assignment::eval): Optionally print names
+	for result variables.
+
+	* tree-const.h (tree_constant::eval (int print, int nargout)):
+	New function.  Simply ignore nargout.
+	* tree.cc (tree_matrix::eval (int print, int nargout)): Ditto.
+
+	* tree.cc (tree_parameter_list::name): New function.
+
+	* lex.l (<NEWMAT>): Delete rules, start condition because they are
+	unecessary.
+
+	* lex.l (<MATRIX>{SN}*\]): Split into three rules.  Use trailing
+	context instead of home-brew lookahead.
+
+Mon Nov 23 00:51:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* utils.cc (ok_to_lose_imaginary_part): New function.
+	* builtin-fcns.cc (ok_to_lose_imaginary_part): New builtin
+	variable, default value is warn.
+
+	* tree-const.h (double_value): Maybe return real part if invoked
+	for complex tree_constant.
+	* tree-const.h (matrix_value): Ditto.
+
+	* Version 0.47.  This one wasn't tested, but there have been a lot
+	of significant changes and I wanted a backup.
+
+	* tree-const.cc (sqrt_internal): New function.  Sqrt isn't
+	implemented as a mapper function since negative real arguments
+	give complex results.
+	(log_internal): Ditto.
+	(log10_internal): Ditto.
+	* builtin-fcns.cc: Move sqrt, log, and log10 from mapper struct
+	initializer to general function struct initializer.
+
+	* rot90.m: New M-file.  Still needs rem() to be complete.
+
+	* tree-const.cc (mapper): Handle mapper functions for complex
+	variables.
+
+	* mappers.h, mappers.cc: New file for mapper functions.
+
+	* builtin-fcns.h, builtin-fcns.cc: Rename from builtins.h
+	builtins.cc.
+
+	* flipud.m: Don't do indexing on lhs.
+	* fliplr.m: Likewise.
+
+Sun Nov 22 17:09:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* arith-ops.cc (do_binary_op (double, double)): Handle a^b for
+	a < 0.
+
+	* builtins.cc: Make sqrt a general builtin function instead of a
+	mapper function.
+	* g-builtins.cc (builtin_sqrt): New function.
+	* tree-const.cc (sqrt_internal): New function.
+
+Sat Nov 21 16:41:02 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-const.h, tree-const.cc:  Complete most changes required to
+	handle complex types.  There are lots of details, most will be
+	omitted here.
+
+	* tree-const.h (is_real_type) New function.
+	(is_complex_type): Ditto.
+	(is_scalar_type): Ditto.
+	(is_matrix_type): Ditto.
+
+	* tree-const.h (REP_RHS_MATRIX, REP_ELEM_ASSIGN, CRMATRIX,
+	ASSIGN_CRMATRIX_TO, CRMATRIX_ASSIGN_REP_ELEM,
+	CRMATRIX_ASSIGN_ELEM): New macro for dealing with real and complex
+	matrices in the same tree_constant_rep function.
+
+	* tree-const.cc: Include arith-ops.cc.
+
+	* arith-op.cc: New file for functions that implement unary and
+	binary operations for the tree_constat classes.
+	* Mark all operations that aren't implemented yet with a
+	FIXME comment.  There are about 35-40 things left to fix
+	in this file.
+
+Thu Nov 19 00:25:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.46.
+	[ This one wasn't tested, but there have been a lot of significant
+	changes and I wanted a backup. ]
+
+	* tree-const.cc (tree_constant_rep::do_unary_op): Handle Complex.
+	(do_unary_op (Complex&, tree::expression_type)): New function.
+	(do_unary_op (ComplexMatrix&, tree_expression_type): Ditto.
+
+	* tree-const.cc (tree_constant_rep::assign): Handle Complex
+	(still needs updated support functions in order to work).
+
+	* tree.cc (tree_matrix::eval): Handle Complex.
+	(tree_identifier::eval): Ditto.
+	(tree_for_command::eval): Ditto.
+
+Wed Nov 18 23:33:13 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree_const.cc (tree_constant_rep::rows): Handle Complex.
+	(tree_constant_rep::columns): Ditto.
+	(tree_constant_rep::all): Ditto.
+	(tree_constant_rep::any): Ditto.
+	(tree_constant_rep::cumprod): Ditto.
+	(tree_constant_rep::cumsum): Ditto.
+	(tree_constant_rep::prod): Ditto.
+	(tree_constant_rep::sum): Ditto.
+	(tree_constant_rep::sumsq): Ditto.
+
+	* tree_const.h, tree_const.cc (tree_constant::complex_value): New
+	function.
+	(tree_constant_rep::complex_value): Ditto
+	(tree_constant::complex_matrix_value): New
+	(tree_constant_rep::complex_matrix_value): New
+
+	* tree_const.cc (tree_constant_rep::~tree_constant_rep): Handle
+	complex scalars and matrices.
+	(tree_constant_rep::force_numeric): Ditto.
+	(tree_constant_rep::make_numeric): Ditto.
+	(tree_constant_rep::eval): Ditto.
+	(tree_constant_rep::bump_value): Ditto.  C++, for C == a
+	complex value is C = C + 1.  Should I even do this?  Hmmm.
+
+	* tree-const.h, tree-const.cc: Begin adding support for Compelex.
+	* Add complex_scalar and complex_matrix to value union.
+	* Add complex_scalar_constant and complex_matrix_constant to type
+	tag enum.
+	* New constructors.
+
+	* Matrix.h, Matrix.cc: Major changes to add Complex support.
+
+Tue Nov 17 14:40:45 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Matrix.cc (RowVector::operator (const Matrix&)): New function.
+
+	* Matrix.cc (ColumnVector::transpose): New function.
+	Eliminate friend function that served the same purpose.
+	(RowVector::transpose): Ditto.
+
+Mon Nov 16 09:57:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (QSTRING): Fix to allow '' inside a string to represent a
+	single quote.  Makes computer.m a little funnier.
+
+Fri Nov 13 18:46:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.45.
+
+	* computer.m: New M-file.
+	* tril.m: Ditto.
+	* triu.m: Ditto.
+
+	* doc (*.texi): Can now produce BUGS, INSTALL, and octave.info
+	files without generating errors, though the organization is
+	probably till very wrong.
+
+	* Makefile.in (newversion): Add magic to handle major versions
+	other than 0, and major/minor versions of any length.
+
+Thu Nov 12 01:37:45 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.h, tree-const.h, builtins.cc, g-builtins.cc,
+	tree-extras.cc: Conditionally compile code for NPSOL and FSQP
+	based on FSQP_MISSING and NPSOL_MISSING.
+	* g-builtins.cc (builtin_npsol): If NPSOL is missing, always call
+	npsol_usage() to print out message indicating why NPSOL doesn't
+	work.
+	* g-builtins.cc (builtin_fsqp): Likewise for FSQP.
+
+	* configure.in: Check for srcdir/libcruft/npsol/npsol.f and
+	srcdir/libcruft/fsqp/fsqp.f.  If missing, define NPSOL_MISSING or
+	FSQP_MISSING and add them to DEFS.
+
+	* libcruft/npsol/README.MISSING: New file.
+	* libcruft/fsqp/README.MISSING: Ditto.
+
+	* libcruft/npsol/Makefile.in (dist): Don't distribute sources
+	because of license restriction.  Do distribute Makefile.in and
+	README.MISSING.
+	* libcruft/fsqp/Makefile.in (dist): Ditto.
+
+	* All Makefile.in files (local-dist): New target, usually the same
+	as dist.
+
+	* parse.y (ans_expression): Check to see that the RHS isn't just
+	an identifier.
+	* tree.cc (tree_identifier::eval (int)): Maybe print id name.
+	* tree.cc (tree_assignment::eval (int)): Ditto.
+	* buitlins.cc (print_answer_id_name): New builtin variable.
+	* utils.cc (print_answer_id_name): New function.
+
+Tue Nov 10 10:58:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (log_usage): Surround with #if 0/#endif.
+
+Mon Nov  9 13:42:54 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* symtab.cc (load): Only issue error mesasge if attempt to find
+	_first_ name keyword fails.
+
+	* tree-const.cc (make_numeric_or_magic): New function.  Like
+	make_numeric except also pass magic_colons.
+	* tree-const.cc (all do_matrix_index functions): Matrix ndices can
+	be naked colons, so use make_numeric_or_magic on index arguments
+	instead of make_numeric.
+
+	* liboctave/Makefie.in (install): Install .h files in $(includedir).
+	(includedir): New macro, default value $(prefix)/include.
+
+	* tree.cc (tree_function::eval (int print)): Force arguments to be
+	undefined.
+
+	* tree-const.h (tree_constant::assign (rhs, args, nargs)): Check
+	reference count before assigning.
+	* tree.cc (tree_identifier::assign (rhs, args, nargs)): Don't eval
+	lhs before doing assignment.
+
+	* tree.cc (parse_m_file): Gobble leading white space, including
+	comments.
+
+Fri Nov  6 16:52:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.44.
+
+	* g-builtins.cc (builtin_getenv): New function.
+
+	* isempty.m: New M-file.
+
+	* g-builtins.cc (builtin_exist): New function.
+	* utils.cc (identifier_exists): Handle the dirty details.
+
+	* utils.cc (warn_comma_in_global_decl): New function.
+	* builtins.cc (warn_comma_in_global_decl): New builtin variable.
+	Initial value is true.
+	* parse.y (global_decl): Handle global declarations here,
+	including optional initialization.
+	* t-builtins.cc (builtin_global): Deleted.
+
+Thu Nov  5 23:59:39 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_feval): New function.
+	* tree-extras.cc (feval): Handle the dirty details.
+
+	* g-builtins.cc (builtin_rand): New function.
+	* tree-extras.cc (rand): Handle the dirty details.
+
+Wed Nov  4 14:54:17 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* num2str.m: New M-file.
+	* int2str.m: Ditto.
+
+	* g-builtins.cc (builtin_disp): New function.
+
+	* g-builtins.cc (builtin_fprintf, builtin_printf,
+	builtin_sprintf):  New functions.
+	* tree-extras.cc (do_printf): New function to handle the gory
+	details.
+
+	* g-builtins.cc (builtin_flops): Implement here because we may
+	actually want to count operations at some point.
+
+Tue Nov  3 17:06:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-const.cc (do_binary_op): Detect and give error message for
+	optations on empty matrices.
+	(do_unary_op): Likewise.
+
+	* parse.y (matrix): Convert `[]' and `[;]' to empty matrices
+	instead of (tree_matrix *) NULL.
+
+Mon Nov  2 11:23:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* src/Makefile.in: Update dependencies.
+	* liboctave/Makefile.in: Ditto.
+
+	* tree-const.cc (force_numeric): Consult matlab_strings()
+	before doing string to number conversion.
+	* builtins.cc (matlab_strings): New builtin variable.
+	* utils.cc (matlab_strings): New function.
+
+	* tree-extras.cc (linear_constraints_ok): New function.
+	(linear_constraints_ok): Ditto.
+	(npsol): Use them to avoid creating inconsistent sets of
+	constraints and crashing.  It would really be nice to have
+	exception handling.
+
+	* symtab.cc (load): Issue error mesasges if attempt to find
+	name keyword fails.
+
+	* Version 0.43.
+
+	* tree-extras.cc (npsol): Use new minimize (phi, inform).
+	Handle nargout == 3.
+
+	* g-builtins.cc (builtin_npsol): Allow nargout == 3.
+
+	* NPSOL.cc (set_default_options): New function.
+	(all constructors): Use it.
+	(operator =): Use it and print warning message (setting default
+	options doesn't represent a true copy and it would be somewhat
+	difficult to fix this...).
+
+	* npchkd.f (npchkd): Only write message if msglvl > 0.
+
+Sun Nov  1 00:58:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* gnuplot-build/Makefile.in (LIBDIRS): Set correctly.
+	(notgnuplot): Use it.
+
+	* libcruft/misc/gen-d1mach.c: Generate d1mach.f at build time
+	instead of depending on the installer to get it right.
+	* libcruft/Makefile.in (gen-d1mach): New target.
+
+	* libcruft/Makerules.in (SPECIAL): New macro.
+	(DISTFILES): Include it.
+
+	* libcruft/Makerules.in (SPECIAL_DEPEND): Ditto.
+	(../../libcruft.a): Use it.
+
+Mon Oct 26 02:25:11 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (is_valid_function): Try harder to find M-files
+	that may not have been parsed yet.
+
+	* symtab.cc (define (symbol_record*)): New function.  Make it
+	simple to copy all fields of a symbol_record if we already have
+	one.
+	* utils.cc (force_global): Use it.
+
+	* utils.cc (valid_identifier): Allow underscores in names.
+
+	* tree-extras.cc (npsol): Force column vector to be returned.
+	(fsolve): Ditto.
+
+	* Version 0.42.
+
+	* tree-extras.cc (fsolve): New function for solving nonlinear
+	algebraic equations.  This needs much more work if it is to
+	provide all the functionality of Matlab's fsolve.
+
+	* tree-extras.cc (fsolve_user_function): New function.
+
+	* libcruft/minpack: Import needed functions.
+
+	* tree-extras.cc: (npsol (tree_constant*, int, int): Completely
+	rewrite to handle all of the follwing:
+
+	  1. npsol (x, phi)
+	  2. npsol (x, phi, lb, ub)
+	  3. npsol (x, phi, lb, ub, llb, c, lub)
+	  4. npsol (x, phi, lb, ub, llb, c, lub, nllb, g, nlub)
+	  5. npsol (x, phi, lb, ub,              nllb, g, nlub)
+	  6. npsol (x, phi,         llb, c, lub, nllb, g, nlub)
+	  7. npsol (x, phi,         llb, c, lub)
+	  8. npsol (x, phi,                      nllb, g, nlub)
+
+	* tree-extras.cc (npsol_constraint_function): New function.
+
+	* tree-extras.cc (tree_constant_to_vector): New function.
+	(tree_constant_to_matrix): Ditto.
+	(takes_correct_nargs): Ditto.
+
+Fri Oct 23 10:19:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (is_valid_function): New function.
+	(npsol): Use it.
+
+	* utils.cc (s_plural): New function.
+	(es_plural): Ditto.
+
+	* tree-extras.cc (npsol): Improve checks for valid objective
+	function.
+
+	* tree.cc (tree_function::max_expected_args): New function.
+
+Thu Oct 22 18:42:07 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_lsode): Quick check of arguments, then
+	call lsode (tree_constant *, int, int).
+	* Move rest of code for implementing builtin_lsode to
+	tree-extras.cc.
+
+	* g-builtins.cc (builtin_npsol: Quick check of arguments, then
+	call npsol (tree_constant *, int, int).
+	* Move rest of code for implementing builtin_npsol to
+	tree-extras.cc.
+
+	* tree-const.cc: Simplify functions that require numeric arguments
+	by always calling make_numeric for them instead of doing it
+	conditionally.
+	* tree.cc: Ditto.
+	* tree-extras.cc: Ditto.
+
+	* tree-const.h (tree_constant::make_numeric): Return *this if
+	already a numeric type.
+
+	* NLP.cc: In constructors, don't try to assign NULL to bounds
+	objects.
+
+	* tree-const.cc (tree_constant_rep::valid_as_scalar_index (void)):
+	New function.
+	* tree-const.cc (valid_scalar_indices (tree_constant*, int):
+	New function.
+	* tree-const.cc (tree_constant_rep::do_scalar_index): Simplify by
+	using functions to determine if arguments are valid as indices.
+	(tree_constant_rep::do_scalar_assignment): Likewise.
+
+Wed Oct 21 14:11:58 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-extras.cc (determinant): Make it work again.
+
+	* tree.cc (tree_identifier::eval (tree_constant*, int, int, int):
+	Simplify logic.  Only have one ans->eval() call.
+
+	* tree-const.cc (tree_constant_rep::eval (tree_constant*, int,
+	int, int): Properly handle indexing of range constants.
+
+	* tree-const.cc (stupid_fortran_style_matrix_index): Preserve row
+	or column orientation for vectors.
+
+	* toeplitz.m: New M-file.
+	* invhilb.m: Ditto.
+	* hankel.m: Ditto.
+
+	* tree-extras.cc (max): Handle two arg case.
+	tree-extras.cc (max): Likewise.
+	(min (Matrix&, Matrix&): New function.
+	(max (Matrix&, Matrix&): Ditto.
+
+Tue Oct 20 15:13:57 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.41.
+
+Mon Oct 19 16:46:35 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* rows.m: New M-file.
+	* g-builtins.cc (builtin_rows): Delete function.
+	* g-builtins.h (builtin_rows): Delete declaration.
+	* builtins.cc (general_functions): Delete from initialization list.
+
+	* columns.m: New M-file.
+	* g-builtins.cc (builtin_columns): Delete function.
+	* g-builtins.h (builtin_columns): Delete declaration.
+	* builtins.cc (general_functions): Delete from initialization list.
+
+	* length.m: New M-file.
+	* g-builtins.cc (builtin_length): Delete function.
+	* g-builtins.h (builtin_length): Delete declaration.
+	* builtins.cc (general_functions): Delete from initialization list.
+
+	* g-builtins.cc (builtin_size): If two values are expected to be
+	returned, put nr and nc in separate registers.
+
+Sun Oct 18 13:37:17 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree-base.h: Extract base tree class declarations from tree.h.
+	* tree-const.cc, tree-const.h: Extract tree_constant class from
+	from tree.cc, tree.h.
+	Change all uses of tree.h to use either or both of tree-base.h and
+	tree-const.h.
+
+	* Matrix.cc (solve): Replaces LinEqn class.
+	tree.cc (do_binary_op) Use it.
+
+	* g-builtins.cc (builtin_max): New function.
+	tree.cc (tree_constant::max): New friend.
+
+	* g-builtins.cc (builtin_min): New function.
+	tree.cc (tree_constant::min): New friend.
+
+	* cond.m: New M-file.
+
+	* rank.m: New M-file.
+
+	* g-builtins.cc (builtin_svd): New function.
+	tree.cc (tree_constant::svd): New friend function.
+
+	* g-builtins.cc (builtin_svd): New function.
+	tree.cc (tree_constant::svd): New friend function.
+
+	* t-builtins.cc (builtin_format): New function.  Implement some of
+	the Matlab options (sort of).
+
+	* Major changes to liboctave source.  A new Matrix.cc/Matrix.h
+	completely replaces the old Matrix/Vec/AVec code.  All other
+	classes that use Matrix/Vector objects have been updated (or
+	deleted, if they are no longer needed).  All callers changed in
+	octave sources.
+
+Sun Oct 11 21:22:16 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_function::eval): Don't define more function
+	parameters than are expected.  If fewer arguments than expected
+	are actually supplied, force them to be undefined.
+
+	* parse.y (fact): Give warning and abort for identifiers followed
+	by '['.  This should catch most improper uses of [] instead of ()
+	for indexing operators.
+
+	* tree.cc (do_binary_op (Matrix&, Matrix&, tree::expression_type):
+	Handle element by element exponentiation.
+
+Tue Sep 22 10:09:06 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.40.
+
+Mon Sep 21 13:09:06 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l: Accept ** and .** as well as ^ and .^ as exponentiation
+	operators.
+
+Fri Sep 18 15:19:51 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.h tree.cc utils.cc g-builtins.cc: Elimitate need for
+	overloaded operator-> in the tree_constant class.  Also eliminate
+	uses of ->string, ->scalar, etc.  Instead, always call
+	.string_value(), .double_value(), etc.
+
+	* builtins.cc (install_builtins): Reserve `ans' as an
+	uninitialized global variable (should it really be global?).
+
+	* parse.y (ans_expression): Handle default assignemnt to builtin
+	variable ans.
+	(command): Use it.
+
+Tue Sep 15 14:06:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.39.
+
+	* tree.cc (tree_identifier::bump_value): Don't try to increment
+	undefined symbols or values.
+	(tree_prefix_expression::eval): Don't call bump_value if id is a
+	NULL_TREE.
+	(tree_prefix_expression::eval): Likewise.
+
+	* g-builtins.cc (lsode_builtin): Handle extra arguments.
+	liboctave/ODE.cc (integ): Add template for handling bad returns
+	from lsode.
+
+	* tree.cc (class tree_return_command): Implementation is just like
+	break and continue.  Something seems wrong about this...
+	lex.l (return): Recognize return statement.
+	parse.y (statement): Handle function returns.
+	tree.cc (various eval functions): Check to see if we are returning
+	from a function.
+
+	* tree.cc (tree_for_command::eval): Set abort_on_undefined when
+	evaluating the loop body.
+	(tree_while_command::eval): Ditto.
+
+	* tree.cc (class tree_idenfier): Improve searching/parsing M-files
+	when handling undefined names.
+	tree.cc (tree_identifier::parse_m_file (char*)): New function.
+	(tree_identifier::parse_m_file (void)): Use it.
+
+	* utils.cc (force_global): New function.
+	* symtab.cc (symbol_table::remove_name(char *)): New function.
+
+	* tree.h, tree.cc (class tree_constant): Split into two classes,
+	tree_constant (handle) and tree_constant_rep (body) to enable use
+	of `smart pointers' and reference counted memory management.
+	(Lots of things are different with this change.)
+
+Sat Aug 22 11:58:27 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.38.
+
+	* lex.l (COMMA_KLUDGE): Delete production, all uses.  This doesn't
+	seem to be necessary anymore, and the mystery output lines
+	disappear without it.
+
+	* builtins.cc (make_eternal (char *)): New function.
+	(install_builtins): Make LOADPATH, eps, pi, Inf, and NaN eternal.
+
+	* New M-files: mean.m, std.m, hadamard.m, vander.m, hilb.m,
+	linspace.m, logspace.m.
+
+	* tree.cc (tree_function::eval): Don't check number of arguments
+	supplied against total number possible (previously thought to be
+	`expected') so that user-defined functions can have variable
+	numbers of arguments.
+
+	* tree.cc (tree_identifier::eval_undefined_error): New function.
+	(tree_identifier::eval): Use it.
+
+	* octave.cc (abort_on_undefined): New global symbol to control
+	whether we should jump to top level after an undefined symbol has
+	been encountered.
+	tree.cc (tree_function::eval) Set it before evaluating function
+	body, restore to previous value after successful completion.
+	tree.cc (tree_identifier::eval_undefined_error): Use it
+
+Fri Aug 20 09:31:14 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc:  New mapper functions:
+	isnan: Uses xisnan, which calls IEEE function isnan.
+	isinf: Uses xisinf which calls IEEE functions finite and isnan,
+	or isinf if available.
+	finite: Uses xfinite, which calls IEEE function finite.
+	abs: Uses fabs.
+
+	* g-builtins.cc	(sumsq): New function.
+	(diag): New function.
+
+	* tree.cc (tree_constant::sumsq): New function
+	(tree_constant::diag): New function
+
+	* Matrix.cc (sumsq): New function.
+	(diag): Ditto.
+
+Thu Aug 20 00:36:44 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_error): New function.
+
+	* gnuplot-build/Makefile.in (dist): Actually create `term'
+	subdirectory.
+
+	* Lots of changes to tree.cc tree_assignment_expression::eval and
+	tree_index_expression::eval to make matrix indexing work like
+	Matlab.
+	(do_fortran_indexing): New user-level variable to control this
+	behavior.  If this variable is false, things like
+
+	  a([1,2;3,4], [1,2;3,4]) = b
+
+	become syntax errors.  Otherwise, Matlab braindamage prevails.
+
+Tue Aug 18 13:15:46 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.37.
+
+	* tree.cc (do_matrix_assignment): Conditionally allow single
+	indices for Matrix assignments.
+	(do_matrix_index): Ditto.
+
+	* utils.cc (do_fortran_indexing): New function.
+	utils.h: Declare it.
+	builtins.cc (install_builtins): Default value for new
+	do_fortran_indexing variable.
+
+	* builtins.cc (install_builtins): Bind eps to the value
+	DBL_EPSILON from float.h.  Make it read only (will this cause
+	trouble)?
+	* Bind Inf to 1/0 (will only work for IEEE machines.
+	* Bind NaN to 0/0 (will only work for IEEE machines.
+	* Add round, fix, floor, ceil, and sign to builtin mapper functions.
+	(round): New function.
+	(fix): Ditto.
+	(signum): Ditto.
+	* Add clc (clear screen function).
+	* Add home (clear screen function).  To be just like Matlab, this
+	wouldn't clear the screen.
+
+	* New M-files: fliplr.m, flipud.m, trace.m, reshape.m.
+
+	* utils.cc (bind_variable): Revise bind_string_variable so that it
+	takes a tree_constant as an argument.
+	(bind_protected_variable): Likewise for the function
+	bind_protected_string_variable.
+	(bind_string_variable): Delete.
+	(bind_protected_string_variable): Ditto.
+	utils.h: Fix declarations.
+	builtins.cc t-builtins.cc: Fix callers.
+
+	* builtins.cc (install_builtins): Bind LOADPATH here.
+	octave.cc (initialize_globals): Not here.
+
+	* Makefile.in (SOURCES): Add new scripts directory.
+	(scripts): New target.
+	libcruft/Makefile.in (install): Don't depend on all.
+
+	* utils.cc (m_file_in_path): Get path from LOADPATH variable.
+	tree.cc (tree_identifier::parse_m_file): Modify caller.
+
+	* src/Makefile.in (OCTAVE_M_FILE_DIR): New variable.
+	(utils.o): Use it.
+	utils.cc (default_path): Use it.
+
+	* utils.cc (pathstring_to_vector): New function.
+	(default_path): Return colon separated path instead of vector of
+	paths.
+	* octave.cc (initialize_globals): Use pathstring_to_vector here.
+	Bind output of default_path to LOADPATH variable.
+	Eliminate octave_path global variable.
+
+	* tree.cc (isstr): New function.
+	(all): Ditto.
+	(any): Ditto.
+	(cumprod): Ditto.
+	(cumsum): Ditto.
+	(prod): Ditto.
+	(sum): Ditto.
+
+	* g-builtins.cc (builtin_isstr): New function.
+	(builtin_all): Ditto.
+	(builtin_any): Ditto.
+	(builtin_cumprod): Ditto.
+	(builtin_cumsum): Ditto.
+	(builtin_prod): Ditto.
+	(builtin_sum): Ditto.
+
+	* Matrix.cc (all): New function.
+	(any): Ditto.
+	(cumprod): Ditto.
+	(cumsum): Ditto.
+	(prod): Ditto.
+	(sum): Ditto.
+
+	* scripts: New directory.
+	scripts/strcmp.m: New file (first M-file function in distribution!).
+	scripts/Makefile.in: New file.
+	configure.in: Include scripts/Makefile in list of files to create.
+
+Sat Aug 15 18:32:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.36.
+
+Fri Aug 14 08:44:10 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (id_to_define): New global variable.
+	(curr_m_file_name): Ditto.
+	(current_infile): Ditto.
+
+	* tree.h tree.cc (tree_identifier::parse_m_file): New function.
+	(tree_identifier::eval): Handle M-files.
+
+	* tree.h (stash_m_file_name): New virtual function.
+	(stash_m_file_time): Ditto.
+	(time_parsed): Ditto.
+	(m_file_name): Ditto.
+
+	* tree.h tree.cc (tree_function::stash_m_file_name) New function.
+	(tree_function::stash_m_file_time): Ditto.
+	(tree_function::time_parsed): Ditto.
+	(tree_function::m_file_name): Ditto.
+
+	* lex.l (reading_m_file): New global variable.
+	(delete_buffer): New function.
+	(yywrap): New function.  Always return 0 (is this a smart thing to
+	do?).
+
+	* parse.y (func_def2): Handle input from m-files (sort of).
+
+	* octave.cc (octave_path): New global variable.
+	(using_readline): Ditto.
+	(no_line_editing): Ditto.
+
+	* octave.cc (main): Initialize current_command_number before
+	calling setjmp.
+	* Increment it in main command loop, not in parse.y.
+
+	* utils.h utils.cc (default_path): New function.
+	(m_file_in_path): Ditto.
+	(is_newer): Ditto.
+
+	* octave.cc (main): Execute commands here.
+	* parse.y (input): Not here.
+
+	* octave.cc (tree *global_command): New global variable that
+	points to the current command to be executed.
+
+Thu Aug 13 07:08:11 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y: Make word_list_cmd a fact, not a command, so that
+	things like `y = who -all' can work.  You can't do that in Matlab.
+
+	* t-builtins.cc (builtin_who): Print symbols in columns, sorted.
+	(list_in_columns) New function, mostly stolen from GNU ls.
+
+	* symtab.h symtab.cc (char **list (void)) New function.
+	(char **sorted_list (void) New function.
+
+	* tree.cc (various eval functions): Handle printing results of
+	text and general functions here.  Straighten out other printing
+	stuff, maybe...
+
+	* t-builtins.h t-builtins.cc: Make text functions return
+	tree_constant* instead of int, delete print flag argument.
+
+	* g-builtins.h g-builtins.cc: Delete print flag argument.
+
+	* Version 0.35.
+
+Wed Aug 12 15:12:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_builtin::eval): Call mapper function with
+	print = 0 to avoid getting two answers.
+	(specific do_matrix_assignment functions): Handle resizing
+	correctly for `:' indices.
+	(tree_colon_expression::eval): Don't crash if the evaluation of
+	an operand yields a NULL_TREE_CONST.
+
+Mon Aug 10 07:31:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_identifier::define):  Return NULL_TREE_CONST if
+	symbol_record::define fails.
+	(tree_identifier::assign): Likewise.
+
+	* symtab.h (symbol_lifetime): New attribute for symbol_records.
+	Can be either temporary or eternal.
+	(symbol_class): Delete eternal attribute.
+	* builtins.cc (install_builtins): Mark all builtins as eternal.
+
+	* Version 0.34.
+
+	* tree.h: Delete ttype, enum list of tree types.
+
+	* g-builtins.h g-builtins.cc (builtin_colloc): New function.
+
+	* liboctave (various): Add missing return values, etc. so that
+	liboctave compiles cleanly.
+
+	* tree.h tree.cc (tree_multi_assignment): New class to implement
+	assignments to more than one variable.  Does it work?  Maybe...
+
+	* tree.h (tree_constant **eval (int, int)): New virtual function.
+	(is_identifier): Another one.
+
+	* symtab.h (eternal): New class for symbol_records.
+	* symtab.h symtab.cc (make_eternal): New function.
+	* builtins.cc (install_builtins): Make builtin variables eternal.
+
+	* tree.cc (list_to_vector): Surround by `#if 0/#endif' to avoid
+	compilation warning.
+
+Sun Aug  9 03:18:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* t-builtins.h t-builtins.cc (builtin_cd): New function adapted
+	from bash for changing the current working directory.
+	(builtin_pwd): New function adapted from bash for printing the
+	current working directory.
+
+	* utils.h utils.cc: New functions from bash for changing and
+	printing the current working directory:
+
+	    pathname_backup        make_absolute
+	    get_working_directory  change_to_directory
+
+	* utils.h utils.cc (bind_string_variable): New function.
+	(bind_protected_string_variable): Likewise.
+
+	* octave.cc (initialze_globals): New function.
+
+	* utils.h utils.cc: New functions from bash, mostly for fancy
+	prompting:
+
+	    polite_directory_format  absolute_pathname
+	    absolute_program         base_pathname
+	    read_octal               sub_append_string
+	    decode_prompt_string
+
+Thu Aug  6 02:39:31 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* octave.cc (initialize_history): Fix up to
+	(octave_hist_file) New global variable.
+	(octave_hist_size) Ditto.
+	(history_lines_this_session) Ditto.
+	(history_lines_in_file) Ditto.
+
+	* input.cc (octave_gets): Keep track of number of lines read
+	during the current session.
+
+	* utils.cc (default_history_file): New function.  Look for
+	OCTAVE_HISTFILE environment variable and use its value if
+	possible.
+	(default_history_size): New function.  Look for OCTAVE_HISTSIZE
+	environment variable and use its value if possible.
+
+	* t-builtins.cc (builtin_history): Steal from bash and modify to
+	work with octave.
+
+	* g-builtins.cc (builtin_det): New function.
+
+	* tree.h tree.cc (determinant): New function
+
+	* g-builtins.cc: Rewrite functions that use fill_matrix, inverse,
+	and identity_matrix to use new versions implemented as friends of
+	tree_constant.  This is being done in an attempt to get rid of all
+	calls to tree_constant::const_type() outside of tree.cc.
+
+	* tree.cc (tree_constant): Implement new functions for filling
+	and inverting tree constants as matrices, and for creating an
+	identity matrix from a tree_constant.
+
+	* g-builtins.cc (builtin_inv): New function.
+	builtins.cc: Allow builtin_inv to be called as either inv(A) or
+	inverse(A).
+
+	* tree.cc (do_binary_op (Matrix, Matrix)): Better handling of
+	solution of linear equations for square coefficient matrices.
+
+	* LinEqn.cc (solve): Don't exit on singular matrices.  Implement
+	new variations of these functions that will allow status checking.
+
+	* src/Makefile.in: Define GNUPLOT_BINARY and SITE_DEFAULTS.
+	Specific rules for octave.o and builtins.o to avoid defining
+	GNUPLOT_BINARY and SITE_DEFAULTS for all .cc targets.
+
+	* builtins.cc: Use macro GNUPLOT_BINARY.
+
+	* octave.cc (execute_startup_files): Use macro SITE_DEFAULTS.
+	Execute commands from SITE_DEFAULTS file.
+
+	* t-buitlins.cc (builtin_pause): Make it work.
+
+	* configure.in: Check for termio.h and/or sgtty.h.
+
+	* octave.cc (clean_up): Reset terminal state to cooked mode.
+	(main) Likewise, after return from SIGINT signal handler.
+
+	* utils.h utils.cc (raw_mode): New function (mostly stolen from
+	less(1)) toggle input processing for stdin to raw/cooked modes.
+	(kbhit): New function to read one character from cin in raw mode
+	without echoing it.
+
+	* builtins.cc: Fix expected number of arguments in lists of
+	builtins.
+
+	* tree.h tree.cc (max_args_expected (void)): New virtual function.
+	(tree_builtins::) Provide a definition of it.
+
+	* lex.l (identifier): Before gobbling up text function arguments,
+	check to see that we expect some.
+
+	* symtab.h symtab.cc (max_args_expected): Return max args expected
+	by a symbol (currently only valid for tree_builtins).
+
+Wed Aug  5 05:03:59 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* utils.h utils.cc (resize_on_range_error): Decide what to return
+	based on value of global variable of same name.
+	(prefer_column_vectors): Likewise.
+
+	* Version 0.33.
+
+	* parse.y (func_def2): Call define (tree *, symbol_type), not
+	define (tree *), so that the symbol type is set for user-defined
+	functions.
+	(assignment): Catch assignments to functions here.
+
+	* tree.h tree.cc (tree_identifier::define (tree *, symbol_type):
+	New function (be careful out there...).
+
+	* symtab.h (symbol_type): Add new `user_function' enum value.
+
+	* tree.cc (do_matrix_assignment): Call prefer_column_vectors().
+
+	* tree.h tree.cc (do_matrix_assignment (...)): New functions to
+	implement assignment to indexed matrices.
+	(do_scalar_assignment (...)): New function to implement assignment
+	to an indexed scalar.
+
+	* utils.h utils.cc (resize_on_range_error): New function.  Should
+	eventually decide what to return based on value of global variable
+	of same name.
+	(prefer_column_vectors): New function.
+
+Tue Aug  4 05:37:47 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_constant::save): New function.
+	(tree_constant::load): New function.
+
+	* symtab.cc (symbol_record::save): New function.
+	(symbol_table::load): New function.
+
+	* t-builtins.cc (builtin_load): Start implementation.  Yikes, this
+	is probably going to need a lot of work to be very robust...
+
+	* t-builtins.cc (builtin_save): Implement by asking the
+	symbol_record to save itself.  Maybe this should really be done by
+	asking the symbol table to save a symbol...
+
+	* utils.cc (extract_keyword): New function.
+	(valid_identifier): New function.
+
+Fri Jul 31 04:16:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* parse.y (func_def3): Extra error cases for empty function
+	bodies.
+	(func_def1, func_def1a, func_def1b): Slighly straighten out some
+	truly twisted logic, eliminate func_def1a, rename func_def1b to
+	func_def1a, and make statementss like function [x,y] = foo() end
+	work properly (I think).
+	(func_def*): Put function name in global symbol table, not top
+	level symbold table.  This makes them accessible from other
+	functions, eh?
+
+	* t-builtins.cc (builtin_who): Accept -all, -local, -global, and
+	-top flags.
+
+Thu Jul 30 00:39:40 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* lex.l (current_buffer): New function to return current flex
+	input buffer.  Will need this to be able to switch file contexts.
+
+	* Version 0.32.
+
+	* lex.l (create_buffer, switch_to_buffer): New functions to handle
+	input from various streams.  This should be enough to allow us to
+	implement Matlab-like M-files.
+	octave.cc (main, execute_startup_files): Use them.
+
+	* octave.cc (execute_startup_files): Execute commands from
+	$HOME/.octaverc and ./.octaverc.
+
+	* g-builtins.cc (builtin_plot): Delete temporary files.
+	Ignore SIGINT while gnuplot is executing.
+
+Wed Jul 29 20:16:25 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (all_args_defined): New function to check a
+	tree_constant** vector to see if all elements are non-null.
+	(tree_index_expression::eval (int)): Use it, and abort the
+	evaluation if test fails.
+
+	* terminals.h, terminals.cc: New files for doing things with
+	gnuplot graphics terminal names.
+	src/Makefile.in: Handle new files.
+
+Tue Jul 28 00:25:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* g-builtins.cc (builtin_plot): Make it work, at least halfway.
+
+	* g-builtins.cc (builtin_save): New function.
+
+	* gnuplot-build/Makefile.in: Add -DREADLINE and remove readline.o
+	from list of objects to actually enable the GNU command line
+	editing.
+
+	* configure.in: Use AC_PROG_CHECK macro to search for f2c and f77.
+	Check for several common Un*x Fortran compilers.
+	Add extra messages.
+
+	* g-builtins.cc g-builtins.h: New files for builtin general
+	functions extracted from builtins.cc.
+
+	* t-builtins.cc t-builtins.h: New files for builtin text functions
+	extracted from builtins.cc.
+
+	* Makefile.in (split-dist): New target.
+
+	* Version 0.31.
+
+Mon Jul 27 22:01:58 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_constant::do_matrix_index (tree_constant **, int):
+	Allow single argument to work for matrices that are really row or
+	column vectors.
+
+	* lex.l: Accept `<>' in addition to `!=' and `~=' as `not equal'
+	comparison operators.
+
+	* libcruft/Makerules: Allow for compiling the Fortran routines
+	with the native Fortran compiler instead of translating to C.
+
+	* f2c-compat.sh, flibs.sh: New scripts which try to determine
+	whether it will be possible for us to use the system's Fortran
+	compiler directly, and if so, what libraries to add to the loader
+	command.  These scripts are known to work on SPARCstations running
+	SunOS and DECstations running Ultrix.  Not tested elsewhere...
+	* configure.in: Use them.
+	* Makefile.in: Distribute them.
+
+Wed Jul 22 00:04:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* builtins.cc: Begin implementation of NLP solver using NPSOL.
+
+Tue Jul 21 13:44:13 1992  John W. Eaton  (jwe@june.che.utexas.edu)
+
+	* octave.cc: If printing version information, also print pointer
+	to warranty info.
+
+	* builtins.cc: Implement the Matlab functions ones, zeros, eye,
+	clock, date, size, length, and global.
+	Implement warranty builtin.
+	(builtin_clear): Fix to work with global variables.
+
+	* symtab.cc (clear): Fix to work properly with global variables.
+
+Mon Jul 20 11:58:23 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc (tree_constant::do_matrix_index (tree_constant**, int)):
+	Make string indices work.
+	(tree_constant::force_numeric): Don't special case
+	single-character strings (this uncovers a flaw in the design of
+	the constructor for the magic colon operator...).
+
+Fri Jul 17 16:33:00 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.30.
+
+	* tree.cc: Delete undefined identifiers when trying to eval them.
+
+	* builtins.cc: Add beginnings of builtin who and clear functions.
+
+	* symtab.cc symtab.h (clear): New function.
+
+	* tree.cc, tree.h, parse.y: Implement matrix indexing with colon
+	expressions, implement the magic colon operator for column and row
+	selection.
+
+	* tree.cc tree.h: Completely rework colon expressions.
+
+Thu Jul 16 09:27:48 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* gnuplot-dist: Rename from gnuplot-3.2 so we're not tied to a
+	version number.
+
+Tue Jul 14 11:22:35 1992  John W. Eaton  (jwe@ward.che.utexas.edu)
+
+	* tree.cc builtins.cc: Make argc/nargs/nargin work like C:
+	the argument count is the number of command line arguments plus
+	the function name.  This goes for `argument lists' for matrices as
+	well as functions.  It seems a bit awkward but at it's consistent,
+	and it's like C.  Hmm.  Maybe this is a bad choice...
+
+	* utils.cc utils.h: New files for utility functions.
+
+Mon Jul 13 00:29:50 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.29.
+
+	* tree.cc tree_constant::tree_constant (matrix): Automatically
+	convert 1x1 matrices to scalars.
+
+	* parse.y lex.l: Fix up a bunch of stupid stuff and reduce the
+	number of shift/reduce conflicts to 16 (all but one because of the
+	optional separator garbage).
+
+	* parse.y lex.l: Allow for assignments to lists of identifiers to
+	be partially parsed.  This will still require some error checking
+	in tree.cc to ensure that the list is made up of identifiers only,
+	since that's not enforced by the grammar (I don't see a way to do
+	it, do you?)
+
+Sun Jul 12 11:24:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* tree.cc tree.h parse.y lex.l: Implement logical AND (symbol &),
+	OR (symbol |), and not (symbol ~).  Also provide the C-style
+	operators &&, ||, and !).
+
+	* Matrix.cc Matrix.h: Provide stupid element-wise logical
+	operators for matrices.
+
+	* Version 0.28.
+
+	* parse.y lex.l tree.cc tree.h: Implement C-style prefix and
+	postfix increment and decrement operators (symbols ++ and --
+	respectively).
+
+	* parse.y lex.l tree.cc tree.h: Implement break and continue.
+
+	* tree.cc tree.h: Assignment to matrix elements roughed out.
+
+	* gnuplot/tree.cc: Solution of linear equations via the lift
+	division operator partially implemented.  Singular coefficient
+	matrices aren't handled very well yet...
+
+	* gnuplot-build/Makefile.in: Make this work to build gnuplot for
+	generic X11/unix environments.
+	* Remove -Wall from CFLAGS to avoid loads of warnings.
+	* Use GNU readline instead of the one that comes with gnuplot.
+
+	* gnuplot-build/*.diff: Various patches for various things.
+
+Sat Jul 11 10:14:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.26
+
+	* src/Makefile.in: Distribute lex.cc, parse.cc, y.tab.h.
+	* src/Makefile.in (dist): Depend on lex.cc and parse.cc.
+
+	* gnuplot-build: New directory for patching and building gnuplot.
+	This is apparenty required because the gnuplot license won't allow
+	distrubution of modified versions, but will allow patches to be
+	distributed.
+	* gnuplot-build/Makefile.in: New file.
+
+	* gnuplot-3.2: New directory.
+
+	* readline: New directory from the bash-1.12 distribution, plus
+	tilde.c from bash's lib/glob directory and xmalloc.c from bash's
+	lib/malloc directory.
+	* readline/Makefile.in, readline/doc/Makefile.in,
+	readline/examples/Makefile.in: New files.
+
+	* All Makefie.in files: Allow make to work from any directory, not
+	just the top level one.
+
+Fri Jul 10 22:20:56 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* SERVICE: Remove, since it seems too specific to GNU products.
+
+Thu Jul  9 07:48:33 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.20.
+
+	* Solution of ODEs with LSODE partially implemented.  It's
+	possible to solve some simple equations.
+
+	* tree.cc tree.h (tree_constant): Add string constants and make
+	them work more or less like string constants in Matlab (implicit
+	conversion to ASCII numbers -- gag.  This isn't complete, and it
+	it assumes that ASCII is the character set for the host
+	machine/compiler...).
+
+Tue Jul  7 07:28:35 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.19.
+
+	* User defined function definitions and calls to them mostly work.
+	Still need to implement multiple return values correctly.
+
+Mon Jul  6 04:23:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.18.
+
+	* lex.l parse.y tree.cc tree.h: Begin implementation of
+	user-defined functions.
+
+Sun Jul  5 19:27:08 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.17.
+
+	* lex.l: Replace SAVE_STRING macro with a function.
+
+	* builtins.cc (builtin_document): New builtin function.
+	(builtin_help): Make it work.
+
+	* lex.l: More rules for gathering text.  These are still not quite
+	as they should be, but they will work in most cases.  I think the
+	flex generated scanner is either going to have to be reworked or
+	replaced with a handemade version at some point (probably soon)...
+
+	* tree.cc tree.h: Add tree_word_list and tree_word_list_command
+	classes for text functions.
+
+Fri Jul  3 05:13:15 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.16.
+
+	* builtins.h builtins.cc: New files for builtin functions.
+	Implement a few simple builtin functions.
+
+	* tree.cc tree.h: Add tree_builtin type for builtin functions.
+
+	* tree.cc tree.h: eval (args...) New virtual function.
+
+Thu Jul  2 01:27:38 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.15.
+
+	* symtab.h, symtab.cc: Allow variables and functions to be tagged
+	as read-only or read-write.
+
+Wed Jul  1 15:54:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* input.cc and octave.cc: allow input to come from a file.
+
+	* lex.l: to accept `#' as a comment character (allows one to
+	use the `#!/bin/octave' style script hack).
+
+	* doc: New directory containing skeleton stuff
+	* SERVICE: New file from GCC.
+	* BUGS: New file, now produced from doc/bugs.texi.
+	* INSTALL: New file, now produced from doc/install.texi.
+
+Sat Jun 27 15:52:37 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.14.
+
+	* Fixed parser to eliminate reduce/reduce conflicts.
+
+	* Fixed parser to recognize assignment to multiple identifiers
+	(e.g., [E,V] = eig (A); ).
+
+	* Quickie implementation of indexed array evaluation.  Works for
+	scalar indices, but not range/array indices.
+
+Fri Jun 26 04:23:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.12.
+
+	* Hooks added for indexed array evaluation and assignment.
+	* Colon expression implementation improved.
+	* Implementation of for command eval() improved.
+
+Thu Jun 25 00:28:12 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.11.
+
+	* Colon expressions added.
+	* For command added, but the implementation needs work.
+
+Wed Jun 24 15:09:36 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.10.
+
+	* Cheesy signal handler added to catch interrupts.
+
+	* Matrix input works, even for nested matrices.  Some error
+	checking is done while the matrix is evaluated to ensure that
+	the number of rows and columns match up.
+
+Mon Jun 22 00:21:49 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.9.
+
+	* Command line matrix input partially implemented.  It's not yet
+	possible to enter nested matrices, but it is possible to enter
+	simple matrices (e.g. [1,2;a,b+c], where a, b, and c are scalars.
+
+	* Version 0.8.
+
+	* If commands added.
+
+	* Version 0.7.
+
+	* Command chains added.
+	* Boolean operations added, tested for scalars.
+	* While loop added, tested for simple commands.
+
+Fri Jun 19 05:50:44 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.6.
+
+	At this early stage, while a lot of changes are being made very
+	quickly, ChangeLog entries will probably just list features added.
+
+	* Variable assignment works for scalars.
+	* Simple scalar expressions work.
+
+Thu Jun 18 06:44:24 1992  John W. Eaton  (jwe@schoch.che.utexas.edu)
+
+	* Version 0.5.
+
+	* src/version.h: For all the pre-alpha distributions, count
+	versions as 0.1, etc. instead of 0.01.
+
+	* Makefile: (dist) Automatically update version_string in
+	src/version.h.
+
+	* symtab.h, symbtab.cc: New files for symbol tables.
+
+	* tree.h, tree.cc: New files for parse trees.
+
+	* Lots of work unrecorded here.  Octave is now self-contained, the
+	tree routines are being redesigned, etc.
+
+Fri Mar 20 17:03:16 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
+
+	* Version 0.02.  Octave understands some simple matrix
+	expressions, but it is not yet possible for matrix elements to
+	be constructed from expressions.
+
+Thu Mar 19 06:13:39 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
+
+	* Version 0.01.  Octave understands simple scalar expressions.
+	Hey, Hey!  It is not yet self contained -- I'm still linking to
+	the old libraries in /usr/local/c++-classes, and this isn't likely
+	to change for a while.  (Other things are much more important than
+	making the distribution work on other machines.  Sorry...)
+
+Fri Feb 21 05:06:38 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
+
+	* Version 0.00.  This includes the basic directory structure,
+	makefiles, and a lot of the old Fortran source, including a way to
+	make a libcruft.a.  Octave compiles and accepts input (with
+	history and editing) but doesn't do much else.
+
+Wed Feb 19 06:20:44 1992  John W. Eaton  (jwe@andy.che.utexas.edu)
+
+	* ChangeLog: New file.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/doc-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,3176 @@
+2011-04-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/plot.txi: Add colstyle function to documentation.
+
+2011-04-12  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Correct use of it's -> its in documentation.
+
+2011-04-12  Ben Abbott  <bpabbott@mac.com>
+
+	* interpreter/data.txi: Replace xref{Data Structures} with
+	xref{Structures}.
+
+2011-04-11  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/func.txi: Add discussion of isargout to Ignoring
+	Arguments section of documentation.
+
+2011-04-07  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Add spellcheck target to documentation
+	Makefile.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/numbers.txi, interpreter/strings.txi: Group commonly used
+	isXXX functions together in documentation.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi, interpreter/var.txi: Move pack() function to
+	proper place in documentation.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/diffeq.txi, interpreter/eval.txi, interpreter/plot.txi,
+	interpreter/var.txi: Clean up operator and function indices.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/plot.txi: Add warning about single precision in FLTK.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/aspell-octave.en.pws, interpreter/nonlin.txi, 
+	interpreter/tips.txi: Spellcheck documentation for 3.4.1 release.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/container.txi, interpreter/dynamic.txi,
+	interpreter/install.txi, interpreter/system.txi, interpreter/tips.txi:
+	Grammarcheck files for 3.4.1 release.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/grammar.txi: Remove reference to deprecated function
+	perror().
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/grammar.txi, interpreter/octave.texi: Add new section
+	on parsing to documentation.  Add functions add_input_event_hook,
+	remove_input_event_hook, missing_function_hook to documentation.
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/linalg.txi: Add blkmm function to documentation.
+
+2011-04-02  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/stats.txi: Add quantile, prctile functions to
+	documentation.
+
+2011-04-02  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add isdeployed function to documentation.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/io.txi: Add list_in_columns, terminal_size functions
+	to documentation.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/errors.txi, interpreter/octave.texi: Add onCleanup
+	function to documentation.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/contrib.txi: Add recommended format for commit messages
+	which reference the bug tracker.
+
+2011-03-28  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Eliminate space between variable and
+	parenthesis when using indexing.
+	* interpreter/intro.txi, interpreter/io.txi: Fix typos in docstring.
+	* interpreter/tips.txi: Add new recommendations for double spaces at
+	start of sentences and suggested variable names.
+
+2011-03-28  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi: Add do_braindead_shortcircuit_evaluation to
+	the list of variables set by --traditional option.
+
+2011-03-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Add allow_noninteger_range_as_index to
+	documentation.
+
+2011-03-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Add do_braindead_shortcircuit_evaluation to
+	documentation.
+
+2011-03-26  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Add error_text to list
+	of functions not requiring a docstring.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/container.txi: Add cellindexmat function to documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/oop.txi: Add optimize_subsasgn_calls function to 
+	documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/stats.txi: Add runlength function to documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/plot.txi: Add isocolors, isonormals, isosurface functions
+	to documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi: Add dump_prefs to documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi, interpreter/plot.txi: Add daspect, pbaspect
+	functions to documentation.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi, interpreter/plot.txi: Add getappdata,
+	setappdata, isappdata, rmappdata functions to documentation.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/matrix.txi: Add nth_element function to documentation.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/aspell-octave.en.pws, interpreter/io.txi,
+	interpreter/octave.texi, interpreter/plot.txi: Add uimenu, uigetdir,
+	uigetfile, and uiputfile to documentation.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/nonlin.txi, interpreter/octave.texi: Add fminbnd,
+	fminunc functions to documentation.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi, interpreter/linalg.txi: Add function chop
+	to documentation.  Re-order Utility Functions and move function dot
+	from linear algebra section to be with other utility functions.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi: Add gen_doc_cache, get_help_text, 
+	get_help_text_from_file, get_first_help_sentence to documentation.
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/io.txi: Add fileread to documentation.
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add gethostname to documentation
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Add fmod,
+	octave_tmp_file_name to list of exceptions which are already
+	documented.
+
+2011-03-17  Iain Murray  <iain@iainmurray.net>
+
+	* interpreter/system.txi: Remove nprocs and nprocs_conf functions
+	from documentation and replace with nproc.
+
+2011-03-16  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add nproc and nproc_conf functions to
+	documentation.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/matrix.txi: Deprecate is_duplicate_entry.
+
+2011-03-02  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/stats.txi: Correctly refer to discrete uniform 
+	distribution in documentation. 
+
+2011-03-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* interpreter/dynamic.txi: Make it clear that <octave/oct.h> is
+	a C++ source file and refer to the section where other languages
+	are discussed.
+
+	* faq/OctaveFAQ.texi: Major update to FAQ. Whitespace changes.
+	Update comments to version 3.4 of Octave. Summarise important
+	points of the NEWS file. We no longer have
+	stable/testing/unstable, only stable and development. Mention
+	newer versions of Windows. Update references to Matlab's latest
+	version. Mention that `!' can't be used for shell escapes.
+	Update other numbers like number of pages in manual, version
+	numbers, dates when things happened, file sizes. Clean out dead
+	links. Remove mentions of bugs@octave.org email address. Don't
+	say you can get Octave tapes from the FSF. Mention Ubuntu as
+	another distribution with Octave packages. Change package names
+	in anticipation for the forthcoming 3.4 binary packages. Explain
+	nested functions. Hint that classdef might happen in 3.5.
+	Mention 3D patches in the OpenGL backend. Clarify Matlab-style
+	short-circuiting. Specify that Octave also onCleanup.
+
+2011-02-28  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/numbers.txi: Add isrow, iscolumn functions to manual.
+
+2011-02-25  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* faq/OctaveFAQ.texi: Uniformise all mentions of Matlab to be
+	typeset in the @sc{Matlab} style. Also do some minor
+	proofreading like removing trailing spaces and some minor
+	spellchecking.
+
+2011-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/install.txi: Remove reference to POSIX regex library.
+
+2011-02-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi, interpreter/io.txi, interpreter/oop.txi:
+	Remove functions which have no DOCSTRING entries.
+
+2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* interpreter/linalg.txi: Added gmres to the specialized solvers.
+
+
+2011-02-06  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Fotios Kasolis to the list.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Add dbnext, alias for
+	dbstep, to functions not requiring a docstring.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/aspell-octave.en.pws: Add new spelling
+	exceptions to Octave private dictionary.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi: Update copyright on manual to 2011.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/mkoctfile.1, interpreter/octave-config.1,
+	interpreter/octave.1: Overhaul man pages for release 3.4.
+
+2011-02-04  Rik  <octave@nomad.inbox5.com>
+
+	* icons/octave-logo.ico: Add logo format left out of last changeset.
+
+2011-02-04  Rik  <octave@nomad.inbox5.com>
+
+	* icons/: New directory for icons and .desktop files.
+	* icons/octave-logo.png, icons/octave-logo.svg: Add new Octave O logo
+	to Mercurial.
+	* Makefile.am: New Makefile to build .desktop file and distribute logos.
+	* octave.desktop.in, octave-sombrero.png: Moved from examples directory.
+	* octave_branding_samples.svg: Original logos and branding material for
+	Octave.  This file is not distributed.
+
+	* interpreter/octave.texi: Use new O logo on title page.
+	* interpreter/octave_logo.eps: O logo in eps form for Postscript output.
+	* interpreter/octave_logo.pdf: O logo in pdf form for pdf output.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Use pattern-style rules to make .texi files
+	rather than older suffix-style rules.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi: Add new section
+	"Customizing Toolkit Behavior"
+
+	* interpreter/plot.txi: Add functions gnuplot_binary, mouse_wheel_zoom,
+	and gui_mode to new section.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/optim.txi: Deprecate glpkmex function and remove
+	from documentation.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/install.txi (Compiling Octave with 64-bit	Indexing):
+	Remove info about ARPACK.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi: Add new subsection on FLTK interaction.
+	* interpreter/plot.txi: Add fltk_gui_mode, fltk_mouse_wheel_zoom
+	functions to documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi: Add accumdim function to documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/set.txi: Add powerset function to documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add S_ISSOCK function to documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add S_ISBLK and related functions to
+	documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/optim.txi: Add glpkmex function to documentation.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add compare_versions function to
+	documentation.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/numbers.txi: Add sizemax function to documentation.
+	* interpreter/doccheck/mk_undocumented_list: Add ifelse to functions
+	not requiring documentation.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/image.txi: Add whitebg function to documentation.
+	* interpreter/plot.txi: Add reset function to documentation.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/linalg.txi: Add rsf2csf to documentation.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/geometry.txi: Add trisurf to documentation.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/arith.txi (Rational Approximations): Move here.
+	Update menu.
+	* interpreter/io.txi: From here.
+	Update menu.
+	* interpreter/octave.texi (Top): Update detailed menu.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/mk_doc_cache.m, interpreter/mkoctfile.1,
+	interpreter/munge-texi.cc, interpreter/doccheck/mk_undocumented_list:
+	Strip trailing whitespace.
+
+2011-01-26  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi: Use @code to eliminate extra single quotes
+	in index.
+	* interpreter/container.txi: Add @opindex citations for '.', '{' and
+	'}'.
+
+2011-01-26  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave-bug.1: Delete obsolete man page
+	* interpreter/Makefile.am: Stop distributing octave-bug.1 man page.
+
+2011-01-26  Olaf Till <olaf.till@uni-jena.de>
+
+	* interpreter/package.txi: Document variables MKOCTFILE,
+	OCTAVE_CONFIG, and OCTAVE exported by pkg for configure and make.
+
+2011-01-25  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Remove pass-through rules for AUTHORS, BUGS, and
+	INSTALL.OCTAVE which are no longer required.
+
+2011-01-24  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am, interpreter/Makefile.am: Add rule to build AUTHORS file.
+	* interpreter/preface.txi: Add @ifclear rule to build AUTHORS file.
+
+2011-01-23  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/install.txi: Redo build instructions for release 3.4.
+	* interpreter/doccheck/aspell-octave.en.pws: Add new words to
+	Octave private dictionary from install.txi
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/diagperm.txi, doc/interpreter/linalg.txi,
+	doc/interpreter/sparse.txi: Use non-breaking spaces between certain
+	adjectives and their linked nouns in docstrings.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/doccheck/README: Update documentation for
+	documentation scripts.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/doccheck/aspell-octave.en.pws,
+	doc/interpreter/plot.txi: Use @nospell macro on certain words in
+	docstring.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* faq/OctaveFAQ.texi, interpreter/doccheck/aspell-octave.en.pws,
+	interpreter/octave.texi, interpreter/plot.txi: Update for
+	backend -> graphics_toolkit change.
+
+	* interpreter/interpimages.m, interpreter/geometryimages.m,
+	interpreter/sparseimages.m, interpreter/plotimages.m:
+	Call graphics_toolkit, not backend.
+
+2011-01-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/aspell-octave.en.pws: Add new words to Octave
+	private dictionary.
+
+2011-01-19  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/diagperm.txi, doc/interpreter/dynamic.txi,
+	doc/interpreter/func.txi, doc/interpreter/install.txi,
+	doc/interpreter/intro.txi, doc/interpreter/numbers.txi,
+	doc/interpreter/oop.txi, doc/interpreter/plot.txi,
+	doc/interpreter/sparse.txi, doc/interpreter/stats.txi: Grammarcheck
+	txi files for 3.4 release.
+
+2011-01-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/quad.txi: Add quadcc to documentation.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Add merge/ifelse function to documentation.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/func.txi, interpreter/intro.txi: Eliminate
+	@deffn macros.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Update list of exceptions
+	not requiring documentation.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/stats.txi: Add stdnormal_xxx functions to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/matrix.txi: Add undocumented postpad to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi, interpreter/poly.txi: Add undocumented
+	polyaffine to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/container.txi: Add undocumented nfields to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/poly.txi: Add undocumented ppder, ppint, ppjumps
+	functions to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/system.txi: Add undocumented matlabroot to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/linalg.txi: Add undocumented svd_driver to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi: Add undocumented cbrt to documentation.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi: Add undocumented erfcx to documentation.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2011-01-12  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi: Add <BACKSPACE> to cursor movement section.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/basics.txi (Commands For History):
+	Document history_control.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Konstantinos Poulios to the list.
+
+2011-01-10  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* interpreter/diagperm.txi: Remove Matlab euphemism.
+	* interpreter/dynamic.txi: Ditto. Also use @file macro for a
+	couple of filenames.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/container.txi (Basic Usage and Examples):
+	Document print_struct_array_contents.
+
+2011-01-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi: Put statistics detailmenu in correct order.
+
+2011-01-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/numbers.txi, interpreter/obsolete.txi,
+	interpreter/oop.txi, interpreter/stats.txi: Use @headitem macro to
+	create column heads for @multitable entries.
+
+2011-01-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/grammar.txi: Update list of keywords in grammar.
+
+2011-01-05  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/plot.txi (Introduction to Plotting): Formatting
+	and style fixes.  Eliminate redundant example.
+
+2011-01-03  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi: Add new menu item "Correlation and
+	Regression Analysis"
+	* interpreter/stats.txi: Update documentation chapter on
+	basic statistics.
+
+2010-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi: Add isindex function to documentation
+	* interpreter/func.txi: Add isargout function to documentation
+	* interpreter/matrix.txi: Add isfinite function to documentation
+	* interpreter/numbers.txi: Add ishermitian function to documentation
+
+2010-12-31  Kai Habel  <kai.habel@gmx.de>
+
+	* interpreter/arith.txi: Add curl and divergence function.
+
+2010-12-22  Tatsuro Matsuoka  <tmacchant@yahoo.co.jp>
+
+	* nonlin.txi: Correct docs for using Jacobian with fsolve.
+
+2010-12-22  Judd Storrs <jstorrs@gmail.com>
+
+	* interpreter/expr.txi: Insert operator function docstrings.
+	* interpreter/oop.txi: Remove conflicting anchors for operator
+	functions. Add cindex entries for overloaded operators. Add
+	overloads to opindex.
+	* interpreter/numbers.txi: Fix colon opindex.
+
+2010-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/func.txi, interpreter/sparse.txi: Remove documentation
+	on deprecated function dispatch.
+
+2010-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Update mk_undocumented_list target to use
+	$(srcdir) for portability.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/container.txi, interpreter/func.txi,
+	interpreter/linalg.txi, interpreter/numbers.txi,
+	interpreter/signal.txi, interpreter/sparse.txi, interpreter/stats.txi,
+	interpreter/system.txi: Remove deprecated functions from manual.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Update script to
+	automatically remove functions from the "test/" and "doc/interpreter"
+	directories.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Add undocumented_list target to create list
+	of undocumented functions.
+
+2010-12-17  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/plot.txi (Two-Dimensional Plots): Document comet3.
+
+2010-12-17  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/plot.txi (Introduction to Graphics Structures):
+	Dcoument isprop.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/oop.txi: Redo table rendered incorrectly in Info
+	environment.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/numbers.txi: Remove obsolete documentation about 64-bit
+	integer arithmetic.
+
+2010-12-16  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: Update list of exception
+	functions not requiring documentation.
+
+2010-12-09  Doug Stewart <doug.dastew@gmail.com>
+
+	* interpreter/plot.txi: changed origial to origin in Quiver section
+
+2010-12-09  Kai Habel  <kai.habel@gmx.de>
+
+	* interpreter/plot.txi: Add pie3 function.
+
+2010-11-26  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/install.txi (Compiling Octave with 64-bit
+	Indexing): New section.
+
+2010-11-23  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/install.txi: Delete obsolete statement about
+	needing a patch for makeinfo.
+
+2010-11-18  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Christos Dimitrakakis to the list.
+
+2010-11-18  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Daisuke Takago to the list.
+
+2010-11-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/bugs.txi, interpreter/emacs.txi, interpreter/func.txi,
+	interpreter/geometry.txi, interpreter/linalg.txi,
+	interpreter/octave.texi, interpreter/package.txi, interpreter/plot.txi,
+	interpreter/stmt.txi, interpreter/strings.txi, interpreter/system.txi:
+	Update info-based documentation menus to include new nodes.
+
+2010-11-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/octave.texi, interpreter/plot.txi: Rename subsection
+	"Printing Plots" to "Printing and Saving Plots".  Add reference to
+	new saveas function.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc: Eliminate special case for __DECCXX.
+
+2010-11-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* interpreter/numbers.txi: Explain that ranges in vectors do get
+	expanded.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/mk_undocumented_list: New verification
+	script produces a list of undocumented functions.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/io.txi (Simple File I/O): Document textscan and
+	textread.
+
+2010-10-23  Ben Abbott  <bpabbott@mac.com>
+
+	* interpreter/strings.txi: Add @DOCSTRING(strread).
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/io.txi (Opening and Closing Files):
+	Document is_valid_file_id.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Gunnar Farnebäck to the list.
+
+2010-10-18  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/image.txi (Displaying Images):
+	Delete documentation for image_viewer.
+
+2010-10-17  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/strings.txi: Document untabify.
+
+2010-09-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Jordi Gutiérrez Hermoso to
+	the list.  Fix spelling of Søren Hauberg.
+
+2010-09-28  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/Makefile.am, doc/interpreter/geometryimages.m,
+	doc/interpreter/images.awk, doc/interpreter/interpimages.m,
+	doc/interpreter/plotimages.m, doc/interpreter/sparseimages.m: Use
+	Octave to create pdf versions of plots for documentation rather than
+	Ghostscript via Makefile.
+
+2010-09-28  Rik  <octave@nomad.inbox5.com>
+
+	* doc/interpreter/geometryimages.m, doc/interpreter/interpimages.m,
+	doc/interpreter/plotimages.m, doc/interpreter/sparseimages.m: Untabify
+	scripts.
+
+2010-09-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/mk_doc_cache.m: Use single quotes for regular expression
+	patterns where possible.
+
+2010-09-25  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/mk_doc_cache.m: Remove requirement for PCRE to build
+	doc cache.  Correctly parse first sentence from docstrings with
+	multiple @deftypefn lines.
+
+2010-09-15  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.am (EXTRA_DIST): Add images.awk to the list.
+
+2010-08-15  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/matrix.txi: Add documentation for randi function.
+
+2010-08-13  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Update @EXAMPLEFILE dependencies.
+
+2010-08-10  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Change dependency to $(srcdir)/images.mk.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Add documentation dependency on images.mk.
+	* interpreter/config-images.sh: Create images.mk in passed in srcdir,
+	rather than pwd.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/images.awk: HTML images depend on octave.html/index.html.
+
+2010-08-01  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/basics.txi, interpreter/contrib.txi,
+	interpreter/diagperm.txi, interpreter/dynamic.txi, interpreter/eos.txi,
+	interpreter/expr.txi, interpreter/geometry.txi,
+	interpreter/install.txi, interpreter/matrix.txi,
+	interpreter/numbers.txi, interpreter/oop.txi, interpreter/plot.txi,
+	interpreter/sparse.txi, interpreter/stats.txi, interpreter/testfun.txi,
+	interpreter/tips.txi: Grammarcheck documentation.  Add @noindent lines
+	and ensure line length is less than 80.
+
+2010-07-28  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi, interpreter/audio.txi, interpreter/basics.txi,
+	interpreter/container.txi, interpreter/contrib.txi,
+	interpreter/debug.txi, interpreter/diagperm.txi,
+	interpreter/diffeq.txi, interpreter/dynamic.txi, interpreter/emacs.txi,
+	interpreter/errors.txi, interpreter/eval.txi, interpreter/expr.txi,
+	interpreter/func.txi, interpreter/image.txi, interpreter/install.txi,
+	interpreter/interp.txi, interpreter/intro.txi, interpreter/io.txi,
+	interpreter/linalg.txi, interpreter/matrix.txi, interpreter/nonlin.txi,
+	interpreter/numbers.txi, interpreter/optim.txi,
+	interpreter/package.txi, interpreter/plot.txi, interpreter/poly.txi,
+	interpreter/quad.txi, interpreter/sparse.txi, interpreter/stmt.txi,
+	interpreter/strings.txi, interpreter/testfun.txi, interpreter/tips.txi,
+	interpreter/var.txi: Grammarcheck .txi documentation files.
+
+2010-07-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/tips.txi: Update some tips.
+
+2010-07-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/mk_doc_cache.m: Use regexp rather than fussing with
+	character arrays.
+
+2010-07-19  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/matrix.txi: Add new function repelems to matrix chapter.
+
+2010-07-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/spellcheck,
+	interpreter/doccheck/spellcheck/add_to_aspell_dict:
+	Use case insensitive sort in spellcheck scripts.
+
+2010-07-18  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck/aspell-octave.en.pws: Add Octave-specific words
+	from stats.texi to private Aspell dictionary.
+
+2010-07-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/doccheck: New directory for spelling/grammar scripts.
+	* interpreter/doccheck/README: Instructions for using scripts.
+	* interpreter/doccheck/spellcheck: Script to spellcheck a Texinfo file.
+	* interpreter/doccheck/aspell.conf: GNU Aspell configuration file for
+	Octave documentation.
+	* interpreter/doccheck/aspell-octave.en.pws: Private Aspell dictionary.
+	* interpreter/doccheck/add_to_aspell_dict: Script to add new
+	Octave-specific words to private Aspell dictionary.
+	* interpreter/octave.texi: New @nospell macro which forces Aspell to
+	ignore the word marked by the macro.
+	* interpreter/mk_doc_cache.m: Skip new @nospell macro when
+	building doc_cache.
+	* interpreter/arith.txi, interpreter/audio.txi,
+	interpreter/bugs.txi, interpreter/contrib.txi,
+	interpreter/debug.txi, interpreter/diagperm.txi,
+	interpreter/dynamic.txi, interpreter/geometry.txi,
+	interpreter/matrix.txi, interpreter/numbers.txi,
+	interpreter/oop.txi, interpreter/package.txi,
+	interpreter/sparse.txi, interpreter/tips.txi:
+	Spellcheck documentation.
+
+2010-07-01  Rik  <octave@nomad.inbox5.com>
+
+	* refcard/refcard.tex: Fix italic macro typo for stem.
+
+2010-06-28  Rik  <octave@nomad.inbox5.com>
+
+	* refcard/refcard.tex: Fix typos in refcard (bug #30260).
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* ChangeLog: Correctly break lines > 80 characters.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/intro.txi: Clarify wording.  (bug #30165).
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/set.txi: Remove reference to deprecated function.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/expr.txi, interpreter/func.txi, interpreter/install.txi,
+	interpreter/plot.txi, interpreter/sparse.txi: Periodic grammar check
+	of documentation to ensure a common format.
+
+2010-05-27  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/arith.txi, interpreter/diffeq.txi, interpreter/intro.txi,
+	interpreter/nonlin.txi, interpreter/poly.txi, interpreter/sparse.txi:
+	Replace @ifinfo with @ifnottex.
+
+2010-05-07  John W. Eaton  <jwe@octave.org>
+
+	* basics.txi: Update list of internal variables for --traditional.
+
+2010-05-02  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/contrib.txi, interpreter/install.txi,
+	interpreter/plot.txi, interpreter/sparse.txi,
+	interpreter/octave.texi: Remove tabs causing problems with
+	pdf formatting.
+
+2010-04-14  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* interpreter/plot.txi: Document keypress and mouse callback
+	properties
+
+2010-04-07  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/testfun.txi: Document runtests.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/bugs.txi: Update for bug tracker.
+
+2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/expr.txi: Mention no ternary operator and the ifelse
+	fucntion as a possible replacement.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/tips.txi: More tips.
+
+2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/expr.txi (Assignment): Document return value of
+	multi-assignment with skipped values.
+
+2010-01-29  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/poly.txi (Derivatives and Integrals):
+	Don't include docstring for polyinteg.
+
+	* interpreter/obsolete.txi (Obsolete Functions):
+	Remove weibcdf, weibinv, weibpdf, and weibrnd from the table.
+
+2010-01-28  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/obsolete.txi: New file.
+	* interpreter/Makefile.am (MUNGED_TEXI_SRC): Add it to the list.
+	* interpreter/octave.texi (Obsolete Functions): New menu item.
+	Include obsolete.texi.
+
+2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/expr.txi: Document using dummy outputs.
+	* interpreter/func.txi: Document using dummy inputs.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc: Delete Emacs local-variable settings.
+	Untabify.
+
+2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/container.txi (Creating Cell Arrays): Add
+	docstring for cellslices function.
+
+2010-01-09  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc: Avoid C-style casts.
+	(main): Call usage if fewer than two arguments.
+
+2009-12-20  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/geometryimages.m: Correctly set postscript output when
+	QHULL library does not exist and sombrero image is printed.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am, faq/Makefile.am, interpreter/Makefile.am,
+	liboctave/Makefile.am, refcard/Makefile.am, interpreter/images.awk:
+	Eliminate TOPDIR variable in favor of built-in automake variables of
+	top_builddir and top_srcdir.
+
+2009-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: use automake syntax to build munge-texi.
+
+2009-12-11  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: remove install-local target and use automake
+	syntax to install doc-cache file.
+
+2009-12-10  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Replace distdir-local with dist-hook rule as
+	it is better supported by automake.
+
+2009-12-10  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: new distdir-local rule to check for presence
+	of necessary libraries before packaging distribution
+
+2009-12-08  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Distribute all generated documentation
+	(.pdf, .ps, .html, .dvi) to remove build requirement for TexInfo
+
+2009-12-07  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am, faq/Makefile.am, liboctave/Makefile.am:
+	Document use of NOTPARALLEL directive.
+
+2009-12-07  Rik  <octave@nomad.inbox5.com>
+
+	* refcard/Makefile.am: Add CLEANFILES and MAINTAINERCLEANFILES objects
+	to properly clean directory.
+
+2009-12-05  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Set dependency of *.texi files on
+	munge-texi source code rather than executable.
+
+2009-12-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/images.awk: Revert to using Ghostscript for documentation
+	pdf image creation rather than Octave.
+
+2009-12-04  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am, interpreter/Makefile.am, liboctave/Makefile.am: remove
+	lingering configuration support for conf.texi.
+	* liboctave/Makefile.am: distribute .texi files.
+
+2009-12-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/geometryimages.m, interpreter/interpimages.m,
+	interpreter/sparseimages.m, interpreter/plotimages.m:
+	Switch to color output for PostScript documentation images.
+
+2009-12-04  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/geometryimages.m, interpreter/interpimages.m,
+	interpreter/sparseimages.m, interpreter/plotimages.m:
+	Set default paperorientation to landscape to stop warning message.
+
+2009-12-04  Ben Abbott  <bpabbott@mac.com>
+
+	* interpreter/geometryimages.m, interpreter/interpimages.m,
+	interpreter/sparseimages.m: Set default papersize to the desired
+	imagesize.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images.awk: Emit rules to copy PNG files to
+	octave.html directory once it is created.
+	* interpreter/Makefile.am (all-local): Depend on $(HTMLDIR_IMAGES).
+	(IMAGES): Include $(HTMLDIR_IMAGES) in the list.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/octave.texi: Include version.texi instead of conf.texi.
+	* interpreter/Makefile.am (../conf.texi): Delete rule.
+	(octave_TEXINFOS): Delete ../conf.texi from the list.
+	($(srcdir)/octave.info octave.dvi octave.pdf octave.html):
+	Remove duplicate $(octave_TEXINFOS) dependency.
+	Depend on $(srcdir)/version.texi.
+
+	* liboctave/liboctave.texi: Include version.texi instead of conf.texi.
+	* liboctave/Makefile.am (../conf.texi): Delete rule.
+	(dist_liboctave_TEXINFOS): Delete ../conf.texi from the list.
+	(.NOTPARALLEL): Correct spelling of target.
+	($(srcdir)/liboctave.info liboctave.dvi liboctave.html liboctave.pdf):
+	Depend on $(srcdir)/version.texi
+
+	* conf.texi.in: Delete.
+	* Makefile.am: Delete rules for conf.texi.
+	(.NOTPARALLEL): New target.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* doc/Makefile.am (MUNGED_TEXI_SRC): Define as explicit list.
+	(TXI_SRC): Define using substitution rule.
+
+	* doc/Makefile.am (conf.texi): Only substitute OCTAVE_VERSION.
+	* conf.texi: Likewise.
+
+	* doc/interpreter/find-docstring-files.sh: New file.
+	* doc/interpreter/Makefile.am (DOCSTRING_FILES): Use it.
+	($(TOPDIR)/src/DOCSTRINGS, $(TOPDIR)/scripts/DOCSTRINGS):
+	Delete rules.
+	(.txi.texi): Pass $(top_srcdir) to munge-texi.
+	(octave.info octave.dvi octave.pdf octave.html):
+	Depend on $(octave_TEXINFOS), not $(nodist_octave_TEXINFOS).
+	(nodist_octave_TEXINFOS): Delete variable.
+	(octave_TEXINFOS): Include ../conf.texi in the list.
+	(dist-hook): Delete target.
+	(EXTRA_DIST): Add find-docstring-files.sh to the list.
+
+	* doc/interpreter/basics.texi: Eliminate @value{OCTAVEHOME}
+	* doc/interpreter/dynamic.txi: Delete examplefile and
+	longexamplefile macro definitions.  Replace uses with
+	@EXAMPLEFILE, to be expanded by munge-texi.
+	* doc/interpreter/geometry.txi: Eliminate @ifset HAVE_QHULL.
+	* doc/interpreter/oop.txi: Delete classfile and polynomialfile
+	macro definitions.  Replace uses with @EXAMPLEFILE, to be expanded
+	by munge-texi.
+	* doc/interpreter/sparse.txi: Eliminate @ifset HAVE_CHOLMOD,
+	@ifset HAVE_UMFPACK, and @ifset HAVE_COLAMD.
+
+	* munge-texi.cc (top_srcdir): New global variable.
+	(main): set top_srcdir from first arg.
+	(usage): Include TOP-SRCDIR in the message.
+	(recover_from_macro, process_example_file): New functions.
+	(process_texi_input_file): Handle @EXAMPLEFILE tag.
+
+	* doc/liboctave/Makefile.am (nodist_liboctave_TEXINFOS):
+	Delete variable.
+	(liboctave_TEXINFOS): Include ../conf.texi in the list.
+
+2009-12-02  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am: Correct Makefile.am to allow VPATH builds of
+	documentation
+
+2009-12-01  Rik  <octave@nomad.inbox5.com>
+
+	* faq/Makefile.am, doc/interpreter/bugs.txi,
+	doc/interpreter/install.txi: Eliminate false dependency on conf.texi.
+
+2009-11-30  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am:
+	Overhaul Makefile to correctly generate *.texi files and to stop their
+	distribution when running 'make dist'
+
+2009-11-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc (process_texi_input_file): Double @ in
+	symbol_name used in @anchor.
+	(extract_docstring): Double @ in function name used in @ref.
+
+	* interpreter/mk_doc_cache.m (cmd): Transform @ in class names to
+	@@ when processing DOCSTRINGS files.
+
+2009-11-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.a (nodist_octave_TEXINFOS): Add
+	contributors.texi and $(MUNGED_TEXI_SRC) to the list.
+	(dist_octave_TEXINFOS): Delete.
+	(DISTCLEANFILES, all_octave_TEXINFOS): New variables.
+	($(srcdir)/octave.info, octave.dvi, octave.pdf,	octave.html):
+	Depend on $(all_octave_TEXINFOS), not $(octave_TEXINFOS).
+	(octave.ps): Depend on .dvi file and EPS files, but not .texi
+	source files.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* doc/interpreter/contributors.in: Add Kacper Kowalik.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* interpreter/install.txi: Document that curl libraries impact ftp
+	objects.
+	* interpreter/system.txi: Document the ftp objects
+
+2009-11-25  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am:
+	Simplify doc-cache handling in Makefile.am to use only
+	install-data-local target
+
+2009-11-24  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.am:
+	Correct Makefile so that it halts on error when unable to build
+	doc-cache.
+
+2009-11-23  Rik  <octave@nomad.inbox5.com>
+
+	* faq/Makefile.am, interpreter/Makefile.am, liboctave/Makefile.am:
+	Stop distribution of conf.texi by autotools.  conf.texi must be re-made
+	from conf.texi.in during configure step
+
+2009-11-23  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Add . to SUBDIRS to force automake to compile this
+	directory, and make conf.texi, before recursively compiling SUBDIRS
+	which depend on conf.texi
+
+2009-11-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Add DISTCLEANFILES macro so that generated conf.texi can
+	be cleaned by automake.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am, faq/Makefile.am, interpreter/Makefile.am,
+	liboctave/Makefile.am, refcard/Makefile.am,
+	interpreter/config-images.sh, interpreter/images,
+	interpreter/images.awk: New files.
+	* Makefile.in, faq/Makefile.in, interpreter/Makefile.in,
+	liboctave/Makefile.in, refcard/Makefile.in: Delete.
+	* interpreter/munge-texi.cc (main, usage): Eliminate unnecessary
+	-d option.
+	* liboctave/liboctave.texi: Surround @direntry in appropriate magic.
+	* faq/OctaveFAQ.texi: Rename from faq/Octave-FAQ.texi.
+
+2009-10-23  Rik  <octave@nomad.inbox5.com>
+
+	* various: Periodic grammar check of Octave documentation files to
+	ensure a standardized format.
+
+2009-10-20  Rik  <octave@nomad.inbox5.com>
+
+	* interpreter/Makefile.in: Clean Makefile.in and remove a few
+	non-functional targets
+
+2009-10-13  Rik  <octave@nomad.inbox5.com>
+
+	* various: Fix various incorrect usages of deffn and deftypefn macros
+
+2009-10-12  Rik  <octave@nomad.inbox5.com>
+
+	* liboctave/Makefile.in: Simplify Makefile using GNU Make functions
+	* liboctave/liboctave.texi: Stop header of file, which was meant to be
+	commented, from being transferred into the documentation.
+
+2009-10-12  Rik  <octave@nomad.inbox5.com>
+
+	* faq/Makefile.in: Clean a few non-functional commands from Makefile
+
+2009-10-12  Rik  <octave@nomad.inbox5.com>
+
+	* refcard/Makefile.in: Simplify Makefile using GNU Make functions
+
+2009-10-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.in: Include texmf.cnf in distributed files to fix texinfo
+	runtime error with stack overflow.
+
+2009-10-11  Rik  <octave@nomad.inbox5.com>
+
+	* intepreter/Makefile.in: Fix broken command to create octave.dvi
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* intepreter/linalg.txi: Add reference to luupdate.
+
+2009-10-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/io.txi: Add reference to fskipl.
+
+2009-09-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/data.txi (Built-in Data Types):
+	Document bitpack and bitunpack.
+	* interpreter/plot.txi: Delete spurious {}.  Update menus.  Fix
+	cross-referencing.
+	* interpreter/octave.texi: Update plotting sub-menus in detailed menu.
+
+2009-09-30  Michael D. Godfrey  <godfrey@isl.stanford.edu>
+
+	* interpreter/plot.txi: Document graphics structures.
+
+2009-09-14  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/optim.txi: Document pqpnonneg.
+
+2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/expr.txi: Mention complex comparisons change.
+
+2009-08-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/tips.txi: Update.
+
+2009-07-20  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: Add Aleksej Saushev.
+
+2009-06-24  Rafael Laboissiere  <rafael@debian.org>
+
+	* Makefile.in (dist): Drop conf.texi as prerequisite.
+
+2009-06-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/tips.txi: Update.
+
+2009-06-07  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/plot.txi: Update some of Advanced Plotting documentation.
+	Updated functions delete, allchild, backend, clf, hold, and refreshdata.
+
+2009-06-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/container.txi: Udate documentation of container types
+
+2009-06-03  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/plotimages.m: Correct errorbar plot for docs.  Make hist
+	plot reprodroducible for docs.
+	* interpreter/interpimages.m: Correct typo in legend of interpft plot
+	for docs.
+
+2009-06-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Omit conf.texi in DISTFILES.
+
+2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/oop.txi: Update docs of polynomial class, mention
+	chained indexing.
+
+2009-05-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/errors.txi: fix 'print_usage' output.
+
+2009-05-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/bugs.txi: fix call to 'page_screen_output'.
+
+2009-05-25  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/Makefile.in: Add texmf.cnf to list of distributed files
+	(DIST_FILES) so that pdfs will build.
+
+2009-05-24  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* interpreter/oop.txi: Added inheritance documentatin
+
+2009-05-21  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/Makefile.in, texmf.cnf: Change texi2pdf call to include
+	local TeX configuration file which increases save_history variable.
+
+2009-05-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/tips.txi: Change recommendation to use @tex rather than
+	@iftex construction.
+
+2009-05-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/*.txi: Simplify TeXinfo files by eliminating redundant
+	@iftex followed by @tex construction.  Also, spellchecked all .txi
+	and .texi files.
+
+2009-05-14  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.8 (Mathematical Consants)
+	of arith.txi.
+
+2009-05-01  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.7 (Coordinate
+	Transformations) of arith.txi.
+
+2009-05-01  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Simplify TeXinfo and eliminate use of
+	@iftex in arith.txi.
+
+2009-05-01  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.5 (Utility Functions)
+	of arith.txi.
+
+2009-04-30  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.4 (Sums and Products)
+	of arith.txi.
+
+2009-04-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/numbers.txi: Update info on ranges.
+	* interpreter/expr.txi: Update some info on indexing.
+
+2009-04-26  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.3 (Trigonometry) of
+	arith.txi.
+
+2009-04-24  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.2 (Complex Arithmetic)
+	of arith.txi.  Use Tex in more of the doc strings for pretty
+	printing in pdf format.
+
+2009-04-24  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/octave.pdf: Eliminate most overfull errors when
+	running texi2pdf for generating pdf documentation.  Use
+	@smallexample when necessary to reduce font for long lines.
+	Reword variables or phrases so that Tex can break them at a better
+	spot.
+
+2009-04-21  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/octave.pdf: Eliminate 'unbalanced parentheses in
+	@def...' error during texi2pdf.  Fixed four .m files incorrectly
+	using @deftypefn macro.
+
+2009-04-19  Ansgar Burchardt  <ansgar@43-1.org>
+
+	* interpreter/numbers.txi: Fix small mistake in example.
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/arith.txi: Update section 17.1 (Utility Functions)
+	of arith.txi.  Split section into "Exponents and Logarithms" and
+	"Utility Functions" Use Tex in many more of the doc strings for
+	pretty printing in pdf format.
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/basics.txi: Update help text for sections 2.5, 2.6, 2.7
+	of basics.txi
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/basics.txi: Update help text for sections 2.4 of
+	basics.txi.
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/basics.txi: Update help text for sections 2.2
+	and 2.3 of basics.txi.
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/basics.txi: Update help strings for command line options.
+
+2009-04-11  David Bateman  <dbateman@free.fr>
+
+	* interpreter/contributors.in: Add Martin Helm.
+
+2009-04-06  John W. Eaton  <jwe@octave.org>
+
+	* texinfo.tex: Prefer PDF image files if generating PDF output.
+
+2009-03-27  Rik  <rdrider0-list@yahoo.com>
+
+	* interpreter/intro.txi: Add new sample section on elementary
+	calculations.  Add new example of solving systems of equations
+
+2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/diagperm.txi: Mention mixing with sparse matrices.
+
+2009-03-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc (process_texi_input_file):
+	Copy leading comment with file name info to output.
+
+2009-03-09  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (DISTFILES): Use doc-cache instead of
+	DOC for doc cache file.
+
+2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/stats.txi (Basic Statistical Functions):
+	Add the 'histc' function.
+
+2009-03-07  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/basics.txi (Command Line Options):
+	Document --doc-cache-file command-line option.
+
+2009-03-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/diagperm.txi: Various improvements.
+
+2009-02-27  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/set.txi (Sets): Don't document create_set.
+
+2009-02-26  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/strings.txi (Manipulating Strings):
+	Document strsplit, not split.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (distclean): Remove tags and TAGS here
+	instead of in maintainer-clean target.
+	(maintainer-clean): Depend on distclean, not clean.  Remove DOC.
+	(DISTFILES): Add stmp-html to the list.
+
+	* Makefile.in: Remove conf.texi in maintainer-clean target but not
+	distclean target.
+
+2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/diagperm.txi: Remove redundant url references.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/diagperm.txi: Use TeX alternatives in some
+	formulas, improve examples, delete superfluous defs.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/diagperm.txi: New file.
+	* interpreter/octave.texi: Reference it.
+	* intepreter/Makefile.in: Include it.
+	* interpreter/matrix.txi: Move @DOCSTRING(diag) to diagperm.txi.
+
+2009-02-19  John W. Eaton  <jwe@octave.org>
+
+	* doc/interperter: Include @DOCSTRING commands for the following
+	functions: bicgstab, cgs, choldelete, cholinsert, cholshift,
+	clabel, comet, command_line_path, compass, contour3, ctranspose,
+	cylinder, dellistener, diffuse, edit, ellipsoid, fclear, feather,
+	fill, find_dir_in_path, finite, flag, info, is_absolute_filename,
+	is_rooted_relative_filename, isdebugmode, ishghandle, isnull,
+	issorted, make_absolute_filename, meshz, news,
+	octave_tmp_file_name, optimget, pareto, plotmatrix, plotyy,
+	qrshift, quiver3, re_read_readline_init_file, ribbon, rose,
+	rundemos, scatter, scatter3, slice, specular, sphere, spinmap,
+	stem3, strchr, strtrim, surfl, surfnorm, times, transpose,
+	treelayout, uminus, uplus, warranty, what, xlim, yes_or_no.
+
+2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* interpreter/install.txi: Add documentation for configure options
+	"--without-framework-carbon" and "--without-framework-opengl".
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/arith.txi: Add reference to "cummin" and "cummax".
+
+2009-02-11  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (uninstall): Use $(DESTDIR) here too.
+	Uninstall Info dir file.  Uninstall DOC file.
+	(install): Install DOC file.  Add $(DESTDIR)$(octetcdir) to the
+	list of directories to make.
+
+2009-02-10  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (DOC): New target.
+	(DISTFILES): Add DOC nad mk_doc_cache.m to the list.
+	* mk_doc_cache.m: New file.
+
+2009-02-01  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/nonlin.txi: Remove reference to 'fsolve_options'.
+
+2009-02-01  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/system.txi: Remove reference to 'eomdate'.
+
+2009-01-24  Thorsten Meyer  <thorsten@hexe>
+
+	* interpreter/container.txi (Data Structures): Update examples for
+	structure arrays.
+
+2009-01-22  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/io.txi (Terminal Output): Remove @DOCSTRING(ans).
+
+	* vr-idx.txi: Delete.
+	* interpreter/Makefile.in (SUB_SOURCE): Remove it from the list.
+
+2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/func.txi: Put varargin and varargout in concept index.
+	* interpreter/var.txi: Put ans in concept index.
+	* interpreter/octave.texi: Don't include vr-idx.texi.
+
+	* interpreter/var.txi: Remove sections on built-in variables.
+
+2009-01-20  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/system.txi (Filesystem Utilities): @DOCSTRING for
+	fstat.  Delete @DOCSTRING for lstat.  Add anchor for doc-lstat.
+
+2009-01-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/numbers.txi (Numeric Data Types): Trivial fixes.
+
+2009-01-14  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/matrix.txi: Add anchor for doc-postpad.
+
+2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/strings.txi: Add space to ischar example.
+
+2008-12-26  Francesco Potortì  <pot@gnu.org>
+
+	* interpreter/matrix.txi (Rearranging Matrices): Add reference
+	to resize function.
+
+	* interpreter/plot.txi (Plot Annotations): Add cross reference to
+	Text Properties.
+	(Two-Dimensional Plots): Update introduction to the axis function.
+
+       * interpreter/signal.txi (Signal Processing): Add explanation of
+       what wisdom is.
+
+2008-12-23  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Document the eigs and svds functions.
+
+2008-12-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/container.txi, interpreter/strings.txi:
+	Remove reference to str2mat.m
+
+2008-11-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/strings.txi: Add text around docstrings, change
+	structure of the strings chapter.
+
+2008-10-31  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in ($(TEXINFO)): Depend directly on
+	../../src/DOCSTRINGS and ../../scripts/DOCSTRINGS instead of phony
+	src-DOCSTRINGS and scripts-DOCSTRINGS targets.
+	(src-DOCSTRINGS, scripts-DOCSTRINGS): Delete.
+	(DOCSTRING_FILES): New variable.
+	($(SUB_TEXFINO)): Use it.  Display actual command.
+	($(DOCSTRING_FILES)): New target.
+	(%.spell : %.texi): Use -t suffix instead of .tmp.
+	(constributors.texi, $(SUB_TEXINFO)): Use mv, instead of
+	$(simple-move-if-change-rule).
+
+2008-10-30  David Bateman  <dbateman@free.fr>
+
+	* faq/Octave-FAQ.texi: Document improved indexing and add an faq for
+	the compatibility of mldivide/mrdivide for singualr, under- and
+	over-determined matrices.
+
+	* interpreter/plot.txi: Document contour groups.
+
+2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/system.txi, interpreter/poly.txi,
+	interpreter/arith.txi, interpreter/poly.txi,
+	interpreter/optim.txi, interpreter/diffeq.txi,
+	interpreter/sparse.txi, interpreter/matrix.txi,
+	interpreter/plot.txi, interpreter/io.txi, interpreter/debug.txi,
+	interpreter/var.txi, interpreter/strings.txi:
+	Add missing @DOCSTRING commands.
+
+	* interpreter/munge-texi.cc (extract_docstring): Expand arguments
+	of @seealso{} into Texinfo references.
+
+2008-10-22  David Bateman  <dbateman@free.fr>
+
+	* interprter/plot.txi: Add documentation for error bar series.
+
+	* interprter/plot.txi: Update documentation for line series, Add
+	documetation for scatter groups, stem series and surface groups.
+
+	* texinfo.tex: Import new upstream version.
+	* interpreter/Makefile.in (EXAMPLE_FILES_NODIR): Update for new OOP
+	class example location.
+	* interpreter/oop.txi: Ditto.
+
+2008-10-15  David Bateman  <dbateman@free.fr>
+
+	* interpreter/oop.txi: New file.
+	* interpreter/Makefile.in (SUB_SOURCES): Add it here.
+	(POLYNOMIAL_FILES_NODIR): New varaible for polynomial example class
+	methods.
+	(EXAMPLE_FILES_NODIR): Add POLYNOMIAL_FILES_NODIR here.
+	* interpreter/octave.texi: Reference new OOP chapter here.
+	* interpreter/func.txi: Document private directories and function
+	precedence here.
+
+2008-10-16  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/contrib.txi: added recommendation of limited
+	line width in code examples
+
+2008-10-03  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/contrib.txi: added example for mercurial queues
+
+08-10-03  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* interpreter/contrib.txi: correction of the mercurial example
+	* interpreter/container.txi: minor correction of the text
+
+2008-09-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/image.txi: Update for imread and imwrite instead of
+	loadimge and saveimage.
+
+2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/image.txi: Document imfinfo.
+
+2008-09-23  Francesco Potorti`  <Potorti@isti.cnr.it>.
+
+	* interpreter/container.txi: Fix cross reference in struct docs.
+
+2008-09-23  Brian Gough  <bjg@network-theory.co.uk>
+
+	* interpreter/matrix.txi: Update docs for random number generators.
+
+2008-09-22  David Bateman  <dbateman@free.fr>
+
+	* faq/Octave-FAQ.texi: Update for Octave 3.1.51 and Matlab 2008a.
+
+2008-09-15  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Minor clarificiation
+
+2008-08-28  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/func.txi, interpreter/plot.txi: Doc fixes
+	suggested by Francesco Potorti` <Potorti@isti.cnr.it>.
+
+2008-08-28  David Bateman  <dbateman@free.fr>
+
+	* interpreter/plot.txi: Add description of data sources and line
+	series objects.
+
+2008-08-26  David Bateman  <dbateman@free.fr>
+
+	* interpreter/plot.txi: Document the group objects (bar, stem,
+	stair, quiver and area series), and cllback functions.
+
+2008-08-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* interpreter/contrib.txi: New file.
+	* interpreter/octave.texi: Include it here.
+	* interpreter/Makefile.in (SUB_SOURCE): Add contrib.txi to the list.
+
+2008-08-21  David Bateman  <dbateman@free.fr>
+
+	* interpreter/plot.txi: Document ezplot.
+
+2008-08-19  David Bateman  <dbateman@free.fr>
+
+	* interpreter/numbers.txi: Document intwarning.
+
+2008-08-06  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/basics.txi, interpreter/errors.txi,
+	interpreter/expr.txi, interpreter/func.txi,
+	interpreter/numbers.txi: Update format of error messages in examples.
+
+2008-07-29  David Bateman  <dbateman@free.fr>
+
+	* interpreter/numbers.txi, interpreter/plot.txi,
+	interpreter/quad.txi: Miscellaneous documentation fixes.
+
+	* control.txi, finance.txi, quaternion.txi: Delete.
+	* octave.texi: Remove all references to the above.
+	* Makefile.in: ditto.
+
+2008-07-28  David Bateman  <dbateman@free.fr>
+
+	* interpreter/arith.txi: Document reallog, realpow and realsqrt.
+	* interpreter/dbug.txi: Document the means of setting a breakpoint
+	in a sub-function
+	* interpreter/func.txi: Document nargoutchk and symvar.
+	* interpreter/geometry.txi: Document rectint.
+	* interpreter/image.txi: Document contrast.
+	* interpreter/interp.txi: Document interp1q.
+	* interpreter/linalg.txi: Document planerot, rcond and subspace.
+	* interpreter/numbers.txi: Document data type demotion and single
+	precision data type.
+	* interpreter/plot.txi: Document ginput, gtext,
+	waitforbuttonpress, ezcontour, ezcontourf, ezpolar, ezplot3,
+	ezmesh, ezmeshc, ezsurf, ezsurfc, allchild, findobj and findall
+	functions.
+	* interpreter/quad.txi: Document quadv, quadgk, dblquad and
+	triplequad functions.
+	* interpreter/strings.txi: Document validstring, regexptranslate
+	and isstrprop functions.
+	* interpreter/system.txi: Document addtodate, filemarker and perl
+	functions.
+	* interpreter/var.txi: Document the genvarname and namelengthmax
+	functions.
+	* interpreter/octave.texi: Update table of contents for the above
+	changes.
+
+	* interpreter/plot.txi: Document contourf.
+
+	* interpreter/plot.txi: Clarify the description of OuterPosition
+	axes property.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* interpreter/debug.txi: Uodate documentation for multiline
+	input. Add documentation for dbcont, dbquit, dbstep, dbstqck, dbup
+	and dbdown functions.
+	* interpreter/octave.texi: Upodate index for debugging functions.
+
+2008-05-03  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/expr.txi, interpreter/tips.txi: Use ischar instead of
+	deprecated isstr.
+
+2008-04-02  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Document spaugment.
+
+2008-03-26  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/mkoctfile.1: Remove spurious whitespace before macros
+
+2008-03-25  David Bateman  <dbateman@free.fr>
+
+	* interpreter/strings.txi: Document hex2num, num2hex.
+
+2008-03-21  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Document amd function.
+
+2008-03-19  Michael D. Godfrey  <godfrey@isl.stanford.edu>
+
+	* interpreter/plot.txi: Reorder symbol character table.
+
+2008-03-18  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/octave.1, interpreter/mkoctfile.1:
+	Escape "-" signs that mean the "minus" character.
+
+2008-03-12  David Bateman  <dbateman@free.fr>
+
+	* interpreter/io.txi: Document dlmread, dlmwrite, csvread and
+	csvwrite.
+
+2008-02-25  Ben Abbott  <bpabbott@mac.com>
+
+	* interpreter/geometryimages.m, interpreter/interpimages.m,
+	interpreter/plotimages.m, interpreter/sparseimages.m:
+	Use cstrcat instead of strcat.
+
+2008-02-22  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Remove refernces to spdiag, spcumprod,
+	spcumsum, spprod, spsum, spsumsq, spchol, spchol2inv, spcholinv,
+	spinv and splu.
+
+2008-02-20  David Bateman  <dbateman@free.fr>
+
+ 	* interpreter/sparse.txi: Remove references to spmin, spmax,
+ 	spatan2, spfind, spqr and spdet.
+
+2008-02-19  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* interpreter/package.txi: Improve INDEX file documentation.
+
+2008-01-18  Ben Abbott  <bpabbott@mac.com>
+
+	* interpreter/intro.txi: Replaced reference to deprecated
+	function struct_elements with filenames.
+
+2008-02-08  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/octave.1: Dropped unknow LO macro
+	* interpreter/octave-bug.1: Likewise
+
+2008-02-07  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Remove references to spkron.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (stmp-html, HTML): New targets.
+	($(HTML_IMAGES_PNG)): Also depend on stmp-html.
+	Don't create HTML directory here.
+
+2007-12-28  John W. Eaton  <jwe@octave.org>
+
+	Merge changes from object branch:
+
+	2007-06-20  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/var.txi, interpreter/io.txi:
+	Eliminate print_answer_id_name.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-12-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (conf.texi): Also depend on $(top_srcdir)/src/version.h.
+
+2007-12-05  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/geometryimages.m (image_as_txt): New function.
+	Use it to generate "figures" for Info format.
+	* interpreter/interpimages.m: Likewise.
+	* interpreter/sparseimages.m: Likewise.
+
+2007-12-04  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/sparseimages.m, interpreter/plotimages.m,
+	interpreter/interpimages.m, interpreter/geometryimages.m:
+	Set default text font to "*" for png images.
+
+	* interpreter/Makefile.in (run-octave): Don't sleep.
+
+2007-12-04  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* interpreter/plotimages.m: Generate text plots.
+	* interpreter/sparseimages.m: Add initial blank line to text plots.
+
+	* interpreter/Makefile.in (IMAGES_TXT): Include $(INTERPIMAGES_TXT)
+	$(GEOMETRYIMAGES_TXT) and $(PLOTIMAGES_TXT) in the list.
+	(INTERPIMAGES_TXT, GEOMETRYIMAGES_TXT, PLOTIMAGES_TXT): New variables.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Document condest.
+	* interpreter/plot.txi: Document the new text properties and the
+	TeX interpreter mode of text objects.
+	* interpreter/plotimages.m: Add an example for the TeX
+	interpreter.
+	* interpreter/Makefile.in (PLOTIMAGES): Add the TeX example
+
+	* interpreter/plot.txi: Document caxis.
+	* interpreter/image.txi: Document gmap40.
+
+2007-11-12  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* interpreter/gpl.txi: Move index commands after sectioning commands.
+
+2007-11-09  David Bateman  <dbateman@free.fr>
+
+	* interpreter/plot.txi: Document the new hidden and area functions.
+
+2007-11-07  David Bateman  <dbateman@free.fr>
+
+	* interpreter/plot.txi: Document new functions.
+
+2007-10-30  David Bateman  <dbateman@free.fr>
+
+	* interpreter/dynamic.txi, interpreter/install.txi,
+	interpreter/stats.txi, interpreter/strings.txi,
+	interpreter/testfun.txi, interpreter/tips.txi:
+	Doc fixes for small book format.
+
+2007-10-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* interpreter/Makefile.in, faq/Makefile.in, liboctave/Makefile.in:
+	Use temporary renamed files instead of Don't use --output option
+	argument for texi2[dvi|pdf].  Use $(sepchar) for path element
+	separation when building TEXINPUTS.  Remove use of UNSETCOMSPEC trick.
+
+2007-10-22  Kim Hansen  <kimhanse@gmail.com>
+
+	* interpreter/munge-texi.cc: Include <cstdlib> and <cstring>.
+
+2007-10-19  David Bateman  <dbateman@free.fr>
+
+	* refcard/refcard.tex: Update for 3.0.
+
+2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/preface.txi, interpreter/basics.txi,
+	interpreter/strings.txi, interpreter/container.txi,
+	interpreter/var.txi, interpreter/expr.txi, interpreter/errors.txi,
+	interpreter/io.txi, interpreter/func.txi, interpreter/package.txi:
+	Make text fit on pages when using smallbook.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
+
+	* interpreter/dynamic.txi, interpreter/geometry.txi,
+	interpreter/package.txi, interpreter/sparse.txi,
+	interpreter/system.txi: Spelling fixes.
+
+2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* interpreter/arith.txi, interpreter/basics.txi,
+	interpreter/container.txi, interpreter/dynamic.txi,
+	interpreter/eval.txi, interpreter/expr.txi, interpreter/func.txi,
+	interpreter/geometry.txi, interpreter/intro.txi,
+	interpreter/numbers.txi, interpreter/plot.txi,
+	interpreter/poly.txi, interpreter/set.txi, interpreter/sparse.txi,
+	interpreter/stmt.txi, interpreter/strings.txi,
+	interpreter/testfun.txi, interpreter/tips.txi: Spelling fixes.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/octave.texi: Add David Bateman and S�ren Hauberg as
+	authors.
+
+2006-09-28  Henry Mollet  mollet@pacbell.net
+
+	* interpreter/func.txi: Correct results of a couple of examples.
+
+2007-09-14  John W. Eaton  <jwe@octave.org>
+
+	* faq/Makefile.in: Create single Octave-FAQ.html file instead of a
+	splitting files into HTML directory.
+
+2007-09-05  David Bateman  <dbateman@free.fr>
+
+	* interpreter/system.m: Document gzip.
+	* interpreter/container.txi: Document celldisp.
+	* interpreter/matrix.txi: Document bsxfun.
+	* interpreter/data.txi: Document typecast and swapbytes.
+	* interpreter/container.txi: Document struct2cell.
+	* interpreter/stats.txi: Document mode.
+	* interpreter/eval.txi: Document run.
+
+2007-09-01  David Bateman  <dbateman@free.fr>
+
+	* interpreter/Makefile.in: Remove stray character from
+	INTERIMAGES_PNG target.
+	* conf.texi.in: Substitute for the variable TEXINFO_QHULL
+	* interpreter/geometryimages.m: Check for the HAVE_QHULL build
+	flag before creating certain figures.
+	* interpreter/geometry.txi: Check whether TEXINFO_QHULL is set
+	before including certain figures.
+
+2007-08-31  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/nonlin.txi: Extended the example.
+
+	* interpreter/poly.txi: Sectioning and documentation.
+	* interpreter/octave.texi: Adapt to changes in poly.txi.
+
+2007-08-30  David Bateman  <dbateman@free.fr>
+
+	* interpreter/geometryimages.m: Add inpolygon example
+	* interpreter/Makefile.in (GEOMETRYIMAGES): Add inpolygon example.
+	* interpret/geometry.txi: Document inpolygon.
+
+2007-08-27  David Bateman  <dbateman@free.fr>
+
+	* interpreter/struct.txi: Remove.
+	* interpreter/containers.txi: Combine with this chapter. Add
+	examples, and section on comma separated lists. Document the
+	difference between "c(1,:) = []" and c{1,:} = []" for a cell
+	arrays.
+	* interpreter/octave.texi: Document new indexing of containers
+	section.
+
+2007-08-25  David Bateman  <dbateman@free.fr>
+
+	* interpreter/geometry.txi: Add examples and explanatory text.
+	* interpreter/octave.texi: Update indexing of geometry functions.
+	* interpreter/geometryimage.m: New script to create images for
+	geometry chapter.
+	* interpreter/Makefile.in (SCRIPT_SORCES): add geometryimages.m
+	(GEOMETRYIMAGES*): New variables.
+	(IMAGES_EPS, IMAGES_PDF, IMAGES_PNG): Add the GEOMETRYIMAGES*.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* interpreter/geometry.txi: Document new functions.
+	* interpreter/octave.texi: Update indexing of geometry items.
+
+2007-07-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (run-octave): Don't set DISPLAY.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in, faq/Makefile.in, interpreter/Makwfile.in,
+	liboctave/Makefile.in, refcard/Makefile.in:  Adjust DISTFILES
+	to allow out of tree "make dist" to work.
+
+2007-07-23  David Bateman  <dbateman@free.fr>
+
+	* interpreter/Makefile.in (SUB_SOURCE): remove bit.txi.
+	* interpreter/io.txi: Document rat and rats in new sub-section.
+	* interpreter/plot.txi: New section for test functions. Document
+	peaks and meshc.
+	* interpreter/octave.texi: Add test plotting section.
+	* interpreter/image.txi: Document the functions autumn, bone,
+	cool, copper, hot, hsv, jet, pink, prism, rainbow, spring,
+	summer, white and winter.
+
+2007-07-19  David Bateman  <dbateman@free.fr>
+
+	* interpreter/bit.xi: Remove.
+	* interpreter/numbers.txi: Move here, and add examples.
+	* interpreter/octave.texi: Remove "Bit manipulation" chapter and make
+	it a sub-section of the "Numeric Data Types" chapter.
+
+2007-07-06  David Bateman  <dbateman@free.fr>
+
+	* interpreter/arith.txi: Add accumarray.
+
+2007-06-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/stats.txi: Reorganize sections and add introductory text.
+
+	* interpreter/octave.texi: Update to reflect changes in stats.txi.
+
+2007-06-18  David Bateman  <dbateman@free.fr>
+
+	* interpreter/interpimages.m: Simpler images to demonstrate
+	the continuity of the second derivative of splines.
+	* interpreter/interp.txi: Also change figures here.
+	* interpreter/Makefile.in: and here.
+
+2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/optim.txi: Added some introductory text to each
+	section.
+
+	* interpreter/set.txi: Added some introductory text.
+	* interpreter/octave.texi: Updated to reflect changes in set.txi.
+
+2007-06-15  David Bateman  <dbateman@free.fr>
+
+	* faq/Octave-FAQ.texi: Document the gnuplot 4.2 bug using pipes.
+
+2007-06-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* interpreter/testfun.txi: Provide a clue to using xtest for assert.
+
+2007-06-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* interpreter/testfun.txi: Document xtest block
+
+2007-06-14  David Bateman  <dbateman@free.fr>
+
+	* interpreter/Makefile.in (SCRIPT_SORCES): add interimages.m
+	(INTERPIMAGES*): New variables. Add targets for them
+	(IMAGES_EPS, IMAGES_PDF, IMAGES_PNG): Add the INTERPIMAGES.
+	* interpreter/interpimages.m: New function
+	* interpreter/interp.txi: Add text about second derivation of
+	splines	and add figures.
+
+2007-06-12  David Bateman  <dbateman@free.fr>
+
+	* interpreter/numbers.txi: Document that 64-bit arithmetic is
+	not possible.
+
+2007-06-12  David Bateman  <dbateman@free.fr>
+
+	* interpreter/interp.txi: Split into two section and document
+	interp3 and the differences in the treatement of the dimensions
+	between interpn and interp3.
+	* hashing.txi: Remove.
+	* system.txi: Move it here as a subsection. Include explanation
+	and example.
+	* interpreter/octave.texi: Add sections for the Interpolation
+	chapter. Remove references to Hashing chapter and hashing.texi,
+	and subsections for hashing to system utilities chapter.
+
+2007-06-12  2007-06-10  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/diffeq.txi: Note that x-dot is the derivative of x.
+
+2007-06-03  David Bateman  <dbatemna@free.fr>
+
+	* interpreter/dynamic.txi: Use "mwSize" and "mwIndex" rather than
+	"int" for indexing in mex-files and document them.
+
+2007-05-30  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (TEXI2DVICOMMAND, TEXI2PDFCOMMAND):
+	New macros.
+	(octave-a4.pdf, octave-smallbook.pdf): New targets.
+	(FORMATTED, all): Include octave-a4.pdf in list of dependencies.
+	Delete octave.dvi and octave.ps from list.
+	(FORMATTED, all): Use $(PDF_TARGETS).
+	(maintainer-clean): Depend on clean.
+
+2007-05-30  G. D. McBain  <gdmcbain@freeshell.org>
+
+	* interpreter/expr.txi (Assignment Ops): Doc fix.
+
+2007-05-29  Steven Mestdagh  <steven.mestdagh@esat.kuleuven.be>
+
+	* interpreter/Makefile.in ($(HTML_IMAGES_PNG)): Use cp instead of
+	INSTALL_DATA to copy files to the HTML directory.
+
+2007-05-28  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/errors.txi: Add new sections and some more detailed
+	descriptions on errors and warnings.
+	* interpreter/octave.texi, interpreter/stmt.txi,
+	interpreter/var.txi: Add references to the new sections in
+	errors.txi.
+
+2007-05-28  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/io.txi: Rearrange some sections, and add
+	a few examples.
+
+2007-05-28  G. D. McBain  <geordie_mcbain@yahoo.com.au>
+
+	* interpreter/struct.txi: Doc fix.
+
+2007-05-23  John W. Eaton  <jwe@octave.org>
+
+	* liboctave/Makefile.in (TEXINFO_SOURCE): New variable.
+	(TEXINFO): Define using $(TEXINFO_SOURCE).
+	(DISTFILES): Include $(TEXINFO_SOURCE) in the list, not $(TEXINFO).
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (TEXINFO_SOURCE): New variable.
+	(TEXINFO): Define using $(TEXINFO_SOURCE).
+	(DISTFILES): Include $(TEXINFO_SOURCE) in the list, not $(TEXINFO).
+
+2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* faq/Octave-FAQ.texi, interpreter/basics.txi,
+	refcard/refcard.tex: Fix typos.
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (DISTFILES): Add mkcontrib.awk to the list.
+
+2007-05-21  David Bateman  <dbatemna@free.fr>
+
+	* interpreter/debug.txi, io.txi, octave.txi: Doc fixes.
+
+2007-05-21  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/expr.txi: Describe +=, -=, *=, and /= operators.
+	Add new example.
+
+	* interpreter/eval.txi: Partition the chapter into sections.
+	Describe evalin and assignin functions using text from Paul
+	Kienzle.  Change "See See" to "See".  Use @ref instead of @xref to
+	avoid "See" to be written with a capital letter in the middle of a
+	sentence.
+
+	* interpreter/func.txi: New section describing load path.
+	Improve 'inline' and 'command' sections.
+
+	* interpreter/stmt.txi: Describe cell array cases for the switch
+	statement.  Minor layout changes.
+
+2007-05-19  David Bateman  <dbatemna@free.fr>
+
+	* interpreter/func.txi: Additional documentation for function
+	locking, dispatch and autoloading.
+
+2007-05-16  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/expr.txi: Improve docs.
+
+2007-05-14  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/basics.txi, interpreter/data.txi,
+	interpreter/intro.txi, interpreter/numbers.txi,
+	interpreter/octave.texi, interpreter/preface.txi: Doc fixes.
+
+2007-04-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/package.texi: Document "*" flag for loaded packages.
+
+	* interpreter.var.txi: Improve explanation of clear, exist, and who.
+
+	* interpreter/intro.txi: Change @unnumberedsubsec to @subsection.
+
+	* interpreter/container.txi: Doc fix.
+
+	* interpreter/strings.txi: Improve explanation for creating
+	comparing, and converting strings.
+	* interpreter/octave.texi: Update detailed menu.
+
+2007-05-09  David Bateman  <dbateman@free.fr>
+
+	* faq/Octave-FAQ.texi: Update compatibility section.
+
+2007-04-27  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (EXAMPLE_FILES_NODIR): Add mycell.c, myfeval.c,
+	myfunc.c, mypow2.c, mysparse.c, mystring.c, mystruct.c and
+	paramdemo.cc.
+	* interpreter.txi/dynamic.txi: Complete all but the section on
+	the mex- and oct-file APIs.
+
+2007-04-26  David Bateman  <dbateman@free.fr>
+
+	* interpreter/stmt.txi: Document for loops over matrices, arrays
+	and cell arrays.
+
+2007-04-25  David Bateman  <dbateman@free.fr>
+
+	* interpreter/dynamic.txi: Add additional copyrights. Add sections
+	of input parameter checking, documentation and testing of
+	oct-files. Adds a section on calling other functions from
+	mex-files, expands the basic information on mex-files, and add a
+	few new sections (to be completed) to the section about mex-files
+
+2007-04-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/dynamic.txi: Use abs_top_srcdir to find example files.
+
+2007-04-25  David Bateman  <dbateman@free.fr>
+
+	* conf.texi.in: Also set abs_top_srcdir with substitution.
+	* Makefile.in: Substitute abs_top_srcdir here.
+
+2007-04-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/dynamic.txi: Use @verbatiminclude for example code.
+
+	* interpreter/Makefile.in (EXAMPLE_FILES_NODIR, EXAMPLE_FILES):
+	New variables.
+	(octave.info, octave.dvi, octave.pdf, HTML/index.html):
+	Depend on $(EXAMPLE_FILES).
+
+	* conf.texi.in: Also set top_srcdir with substitution.
+
+	* interpreter/tips.txi: Update with new text and examples.
+	Move documentation section to the end.
+
+2007-04-24  David Bateman  <dbateman@free.fr>
+
+	* interpreter/octave.texi: Include dynamic.texi as appendix and
+	update menus.
+
+	* interpreter/plot.txi: Update menus.
+
+	* interpreter/strings.txi: @result -> @result{}.
+
+	* intrepreter/func.txi, intrepreter/sparse.txi:
+	Delete .oct file section and update menus.
+
+	* interpreter/addtwomatrices.cc, interpreter/celldemo.cc,
+	interpreter/fortdemo.cc, interpreter/funcdemo.cc,
+	interpreter/globaldemo.cc, interpreter/helloworld.cc,
+	interpreter/stringdemo.cc, interpreter/structdemo.cc,
+	interpreter/unwinddemo.cc, interpreter/fortsub.f,
+	interpreter/dynamic.txi: New files.
+
+	* Makefile.in (SUB_SOURCE): Include dynamic.txi in the list.
+
+2007-04-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/package.texi: New file.
+	* octave/texi: @include it, add it to the menus.
+
+2007-04-18  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/contributors.in: New file.
+	* interpreter/Makefile.in (contributors.texi): New target.
+	(clean): Also deleete contributors.texi
+	(TEXINFO): Include contributors.texi in the list.
+	(preface.texi): @include contributors.texi.
+
+2007-04-17  David Bateman  <dbateman@free.fr>
+
+	* interpreter/linalg.txi (Techniques used for Linear Algebra):
+	New node.
+	* interpreter/octave.texi: Include it in menu.
+	* interpreter/sparse.txi: Delete discusion of matrix_type.
+
+2007-04-16  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/stream.txi: Delete.
+	* interpreter/Makefile.in (SUB_SOURCE): Remove it from the list.
+
+2007-04-16  S�ren Hauberg  <hauberg@gmail.com>
+
+	* intrepreter/stmt.txi: Improve documentation of switch statement.
+
+	* interpreter/tips.txi: Update description of how copyright
+	statements are recognized.
+
+	* interpreter/octave.texi: Don't include stream.texi.
+	Remove menu entry for I/O streams.
+
+	* interpreter/image.txi: Update docs.
+
+2007-04-11  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/container.txi: Document indexing with ().
+
+2007-04-11  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/container.txi: Improve cell array documentation.
+
+2007-04-09  S�ren Hauberg  <hauberg@gmail.com>
+
+	* interpreter/func.txi: Document varargin, varargout, and default
+	argument values.
+
+2007-04-03  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/basics.txi: Clarified some limitations of the #!
+	script mechanism, in particular related to the parsing of the
+	arguments.
+
+2007-03-29  Rafael Laboissiere  <rafael@debian.org>
+
+	* faq/Octave-FAQ.texi, interpreter/basics.txi,
+	interpreter/emacs.txi, interpreter/func.tx, interpreter/var.txi:
+	Make it clear that the old built-in LOADPATH is an internal
+	variable, accessible through path ().
+	Drop references to DEFAULT_LOADPATH.
+	Chang references to the old built-in variables INFO_FILE and
+	INFO_PROGRAM to the respective fucntions info_file and
+	info_program.
+	* refcard/refcard.tex: Drop LOADPATH from list of built-in variables.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in, interpreter/Makefile.in, faq/Makefile.in,
+	liboctave/Makefile.in, refcard/Makefile.in (dist):
+	Use ln instead of $(LN_S).
+
+2007-03-21  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* interpreter/sparse.txi: Delete repeated word.
+
+2007-03-20  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* interpreter/sparse.txi: Clarify sparse matrix creation example.
+
+2007-03-14  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* interpreter/sparse.txi: Fix typo.
+
+2007-02-26  From Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in, interpreter/Makefile.in, faq/Makefile.in,
+	liboctave/Makefile.in, refcard/Makefile.in:
+	Use $(LN_S) instead of ln or ln -s.
+
+2007-02-21  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Add functions sprank and normest to
+	documentation.
+
+2007-01-25  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/sparseimages.m: Don't call __gnuplot_x__ functions.
+
+2006-11-17  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/sparseimages.m: Fix call to __plt3__.
+
+2006-11-16  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/sparseimages.m (femimages): Use plot3.
+
+2006-11-11  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (%.texi : %.txi):
+	Use $(simple-move-if-change-rule) here.
+
+2006-10-29  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (run-octave): Call it here.
+	* interpreter/sparseimages.m (sparseimages): Don't call sleep here.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (run-octave):
+	Unset DISPLAY while running Octave.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+	* interpreter/Makefile.in (octave.dvi, octave.pdf):
+	Use $(UNSETCOMSPEC) in command.
+	* faq/Makefile.in (Octave-FAQ.dvi, Octave-FAQ.pdf): Likewise.
+	* liboctave/Makefile.in (liboctave.dvi, liboctave.pdf): Likewise.
+
+2006-10-09  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* interpreter/sparseimages.m: Plot sombrero images if sparse
+	capabilities are missing.
+
+2006-10-04  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (HTML_IMAGES_PNG): New variable.
+	(HTML/index.html): Depend on $(HTML_IMAGES_PNG) instead of html-figs.
+	($(HTML_IMAGES_PNG): HTML/%.png : %.png): New pattern rule.
+	(html-dir): Delete target.
+
+2006-10-03  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/mkoctfile.1: Fix indentation for --mex description.
+
+2006-09-26  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in (stamp-images): Delete.
+	(octave.info): Depend on $(IMAGES_TXT), not stamp-images.
+	(octave.dvi): Depend on $(IMAGES_EPS), not stamp-images.
+	(octave.pdf): Depend on $(IMAGES_PDF), not stamp-images.
+	(html-figs): Depend on $(IMAGES_PNG), not stamp-images.
+	(SCRIPT_SOURCES, SPARSEIMAGES_1, SPARSEIMAGES_EPS,
+	SPARSEIMAGES_PDF, SPARSEIMAGES_PNG, SPARSE_IMAGES_TXT, IMAGES_EPS,
+	IMAGES_PDF, IMAGES_PNG, IMAGES_TXT, and IMAGES): New variables.
+	(SOURCES): Include $(SCRIPT_SOURCES) in the list.
+	(DISTFILES): Include $(IMAGES) in the list.
+	(maintainer-clean): Delete $(IMAGES) here.
+	(DISTSUBDIRS, SUBDIRS): Remove $(IMAGEDIR) from list.
+	(octave.dvi, octave.info, octave.pdf, HTML/index.html):
+	Don't include $(IMAGEDIR) in list of directories to search
+	* sparseimages.m: Move here from images/sparseimages.m.
+	* images/Makefile.in: Delete.
+	* images: Delete directory.
+
+2006-08-24  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images/Makefile.in (SPARSEIMAGES_PDF): New macro.
+	Keep PDF images out of IMAGES list.
+
+2006-08-18  John W. Eaton  <jwe@octave.org>
+
+	* conf.texi.in: Eliminate TARGETHOSTTYPE variable.
+
+2006-08-17  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images/Makefile.in (%.pdf : %eps):
+	Use $(GHOSTSCRIPT) instead of gs.
+
+2006-08-14  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
+
+	* interpreter/images/sparseimages.m: Adapt to new automatic_replot
+	definition.
+
+2006-06-27  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/Makefile.in: Elminate double-colon rules.
+
+2006-05-31  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images/Makefile.in (run-octave):
+	Use $(TOPDIR)/run-octave script to execute Octave.
+	(OCTAVE_BINARY, OCTAVE_SCRIPT_PATH, OCTAVE_LD_LIBRARY_PATH,
+	XLD_LIBRARY_PATH, SET_LD_LIBRARY_PATH): Delete variables.
+
+2006-04-06  Keith Goodman  <kwgoodman@gmail.com>
+
+	* interpreter/mkoctfile.1: Doc string fix.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* interpreter/matrix.txi: Add rande, randp, randg and update
+	for different random generator behavior.
+
+2006-03-28  John W. Eaton  <jwe@octave.org>
+
+	* texinfo.tex: Update FSF address.
+
+2006-03-27  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images/sparseimages.m: Fix missing endif.  Omit
+	unnecessary call to axis.
+
+2006-03-24  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/images/sparseimages.m:
+	Avoid some unnecessary calculations.
+
+2006-03-22  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/sparse.txi: Undo previous change.
+	Always use @image to include image files.
+	* interpreter/Makefile.in: Eliminate stamp files.
+	(clean, mostlyclean, distclean, maintainer-clean): Now
+	double-colon targets.
+	(stamp-images): New target.
+	(octave.info, octave.dvi, octave.pdf, HTML/index.html): Depend on it.
+	* interpreter/images/Makefile.in: Explicitly list images to be
+	created and their dependencies.
+	* interpreter/images/sparseimages.m (sparseimage): Delete dirc arg.
+	Sleep for 1 second before returning.
+	(txtimages): Also create gplot.txt and grid.txt.
+	(sparseimages): Don't redirect output here.
+	New arg, nm.  Only output a single figure at a time.
+	(bury_output): New function.  Use it before plotting commands and
+	after every print function.
+	* Makefile.in (conf.texi): New target.
+	(DISTFILES): Include conf.texi in the list.
+	(all, dist): Depend on conf.texi.
+	* conf.texi.in: Values come from Makeconf, not configure.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* liboctave/Makefile.in (FORMATTED): Omit .html files here.
+	(DISTDIRS): New variable.
+	(dist): Handle $(DISTDIRS) here.
+
+	* faq/Makefile.in (FORMATTED): Omit .html files here.
+	(DISTDIRS): New variable.
+	(dist): Handle $(DISTDIRS) here.
+
+	* interpreter/Makefile.in (FORMATTED): Omit .html files here.
+	(DISTDIRS): New variable.
+	(dist): Handle $(DISTDIRS) here.
+
+	* interpreter/sparse.txi: Temporarily omit figures.
+	* interpreter/Makefile.in: Temporarily omit actions for making figures.
+	(DISTSUBDIRS): New macro.
+	(dist): Recurse into $(DISTSUBDIRS) here.
+
+	* interpreter/Makefile.in (real-pdf): Depend on stamp-eps
+	(stamp-pdf): Depend on real-pdf.  Touch stamp-pdf here.
+	(real-pdf): Not here.
+
+2006-03-16  David Bateman  <dbateman@free.fr>
+
+	* interpreter/images/sparseimages.m: set terminal type to dummy to
+	direct output to terminal rather than X11.
+	* interpreter/sparse.txi: Update docs for new QR solvers.
+
+2006-03-09  David Bateman  <dbateman@free.fr>
+
+	* interpreter/Makefile.in: Change order of commands in HTML/index.html
+	target. Respawn make for stamp-pdf target so that $(wildcard *.eps) is
+	reinterpreted.
+	* interpreter/sparse.txi: Isolate conditionally built targets in
+	"@ifset ... @end ifset".
+
+2006-03-08  David Bateman  <dbateman@free.fr>
+
+	* conf.texi: Remove.
+	* conf.texi.in: New file, for autoconf'ed version of conf.texi.
+	* Makefile.in: replace conf.texi with conf.texi.in in DISTFILES
+	* interpreter/Makefile.in: build in subdir IMAGEDIR, add stamps for
+	image files. Copy png-files to HTML directory. Build pdf files from
+	eps files using epsffit, gs, grep, basename, head and awk.
+	* octave.texi: Update sparse sub-sections.
+	* sparse.txi: Updates for current state of sparse code.
+	* interpreter/images/Makefile.in: New file.
+	* interpreter/images/sparseimages.m: New file to build sparse images.
+
+2006-03-07  David Bateman  <dbateman@free.fr>
+
+	* liboctave/dae.texi, liboctave/factor.texi, liboctave/nleqn.texi,
+	liboctave/quad.texi, liboctave/matvec.texi, liboctave/nlfunc.texi,
+	liboctave/diffeq.texi, liboctave/array.texi, liboctave/range.texi,
+	liboctave/optim.texi: Fix some syntax problems for texinfo.tex 4.8.
+
+2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
+
+	* interpreter/octave.texi (@seealso): Display args instead of
+	discarding them.
+
+2006-03-02  John W. Eaton  <jwe@octave.org>
+
+	* faq/Makefile.in (Octave-FAQ.ps): Depend on Octave-FAQ.dvi, not
+	$(TEXINFO).
+
+	* texinfo.tex: Update to 2004-11-25.16 version from Texinfo 4.8.
+
+2005-12-14  David Bateman  <dbateman@free.fr>
+
+	* interpreter/testfun.txi: New test/demo documentation.
+	* interpreter/strings.txi: Include regexp/regexi docstrings.
+	* interpreter/octave.texi: Include test/demo appendix.
+	* interpreter/Makefile.in (SUB_SOURCE): Include test.txi.
+
+2005-12-13  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Add new gplot, etreeplot and treeplot
+	functions.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* liboctave/Makefile.in (maintainer-clean): Also remove liboctave.pdf
+	* faq/Makefile.in (maintainer-clean): Also remove Octave-FAQ.pdf.
+	From Quentin Spencer <qspencer@ieee.org>.
+
+2005-10-23  David Bateman  <dbateman@free.fr>
+
+	* sparse.txi: Updates for new ufsparse licensing, new functions and
+	various typos.
+
+2005-09-19  Rafael Laboissiere  <rafael@debian.org>
+
+	* interpreter/octave-config.1: Use bold instead of italics to
+	markup command name.
+
+2005-07-29  John W. Eaton  <jwe@octave.org>
+
+	* faq/Makefile.in (HTML/index.html): Pass --ifinfo to makeinfo.
+	* interpreter/Makefile.in (HTML/index.html): Likewise.
+	* liboctave/Makefile.in (HTML/index.html): Likewise.
+
+2005-07-28  John W. Eaton  <jwe@octave.org>
+
+	* faq/Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in:
+	Use makeinfo instead of texi2html to generate HTML.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* interpreter/munge-texi.cc (skip_comments): New function.
+	(process_doc_file): Use it to skip comments at beginning of file.
+
+2005-04-29  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Add matrix_type, spkron, and document
+	changes in solve code.
+
+2005-03-14  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: Add luinc function.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (bin-dist): Delete target.
+	(BINDISTSUBDIRS): Delete variable.
+
+	* refcard/Makefile.in (bin-dist): Delete target.
+	(BINDISTFILES): Delete variable.
+	* liboctave/Makefile.in: Likewise.
+	* interpreter/Makefile.in: Likewise.
+	* faq/Makefile.in: Likewise.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	Sparse merge.
+
+	2005-01-07  David Bateman  <dbateman@free.fr>
+
+	* interpreter/sparse.txi: New file.
+	* interpreter/Makefile.in: Add it to the build.
+	* interpreter/octave.texi: Include it in the contents tables and the
+	top level document.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	* liboctave/Makefile.in (all): Also depend on Octave-FAQ.pdf.
+	Use $(MAKEINFO) instead of makeinfo in rules.
+
+2005-02-25  Rafael Laboissiere  <rafael@debian.org>
+
+	* liboctave/Makefile.in (Octave-FAQ.pdf): New target and rule.
+	(FORMATTED): Add Octave-FAQ.pdf to the list.
+
+2005-02-21  John W. Eaton  <jwe@octave.org>
+
+	* liboctave/Makefile.in (liboctave.pdf): New target and rule.
+	(FORMATTED): Add liboctave.pdf to the list.
+	(all): Also depend on liboctave.pdf.
+	Use $(MAKEINFO) instead of makeinfo in rules.
+
+	* interpreter/Makefile.in (octave.pdf): New target and rule.
+	(FORMATTED): Add octave.pdf to the list.
+	(all): Also depend on octave.pdf.
+	Use $(MAKEINFO) instead of makeinfo in rules.
+
+2005-02-08  Quentin Spencer  <qspencer@ieee.org>
+
+	* interpreter/plot.txi: Emphasize compatible plotting functions
+	over gplot and friends.
+
+2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* liboctave/Makefile.in (FORMATTED): Use liboctave*.html instead
+	of liboctave_*.html.
+
+	* faq/Makefile.in (FORMATTED): Use Octave-FAQ*.html instead of
+	Octave-FAQ_*.html.
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* faq/Makefile.in (maintainer-clean): Remove Octave-FAQ*.html
+	instead of just Octave-FAQ_*.html.
+
+	* liboctave/Makefile.in (maintainer-clean): Remove liboctave*.html
+	instead of just liboctave_*.html.
+
+	* refcard/Makefile.in (maintainer-clean): Remove refcard-*.pdf.
+
+2003-12-09  Eric S. Raymond  <esr@thyrsus.com>
+
+	* interpreter/mkoctfile.1: Use .I instead of .f for markup of ".oct".
+
+2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc (process_texi_input_file):
+	Avoid -Wshadow warnings.
+
+2003-08-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* refcard/Makefile.in (refcard-a4.pdf, refcard-legal.pdf,
+	refcard-letter.pdf): New targets.
+	(FORMATTED): Add them to the list.
+	* refcard/refcard.tex: Optionally set pdf paper size parameters.
+
+2003-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (octave_toc.html): Add "-I ." to texinfo
+	command line args.
+
+2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* faq/Makefile.in (FORMATTED): Include all Octave-FAQ_*.html files
+	here, not just the toc.
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in, liboctave/Makefile.in: Handle DESTDIR.
+
+2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (MAN_BASE): Add octave-config.1 to the list.
+
+2003-02-19  Dirk Eddelbuettel  <edd@debian.org>
+
+	* octave-config.1: New file.
+
+2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* interpreter/Makefile.in (munge-texi$(BUILD_EXEEXT)): Pass
+	$(BUILD_CXXFLAGS) and $(BUILD_LDFLAGS) to compiler.
+	(%.o : %.cc): Delete pattern rule.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc: Define __USE_STD_IOSTREAM if using
+	Compaq C++.
+
+2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (%.o : %.c): No longer need
+	-DNO_PRAGMA_INTERFACE_IMPLEMENTATION=1 compiler option.
+	(munge-texi#(BUILD_EXEEXT)): Likewise.
+	Don't link to Map-s.o.
+
+	* interpreter/Map-s.cc: Delete.
+	* interpreter/Makefile.in (DISTFILES): Delete it from the list.
+	(mostlyclean, clean): Don't delete Map-s.o.
+
+	* interpreter/munge-texi.cc: Require working STL.
+
+2002-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (maintainer-clean): Depend on
+	clean-texi, don't remove $(TEXINFO).
+
+2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc: Use STL map class by default, but
+	make it easy to revert back to libg++-based Map class if that
+	fails to work on some systems.
+
+2002-11-01  Dirk Eddelbuettel  <edd@debian.org>
+
+	* interpreter/Makefile.in (MAN_BASE, MAN_SRC): New variables, use
+	as appropriate.
+
+2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+ 	* interpreter/mkoctfile.1: New file.
+
+2002-10-25  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* interpreter/Makefile.in (octave_toc.html): Use -expandinfo and
+	-split_chapter instead of -expand info and -split chapter.
+	* liboctave/Makefile.in (liboctave_toc.html): Likewisel
+	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
+
+2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (munge-texi$(BUILD_EXEEXT)): Always use
+	-DNO_PRAGMA_INTERFACE_IMPLEMENTATION for compiling and linking.
+
+2002-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (%.texi : %.txi):
+	Use $(top_srcdir)/move-if-change.
+
+2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in: Use $(BUILD_EXEEXT) as appropriate.
+
+2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (munge-texi, %.o : %.cc):
+	Use $(BUILD_CXX), not $(CXX).
+	(src-DOCSTRINGS, scripts-DOCSTRINGS): New targets.
+	($(TEXIFNO)): Depend on them.
+	(DOCSTRINGS): Delete variable.
+
+2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (%.spell): Use $(SED), not sed.
+	* liboctave/Makefile.in (%.spell): Likewise.
+	* faq/Makefile.in (%.spell): Likewise.
+
+2001-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (octave_toc.html): Use -expand info and
+	-split chapter, to be consistent.
+	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
+	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
+
+2001-11-14  Christoph Spiel  <cspiel@hammersmith-consulting.com>
+
+	* faq/Makefile.in (Octave-FAQ_toc.html): Use -expandinfo and
+	-split_chapter, not -expand info and -split chapter.
+	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
+
+2001-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (MAIN_TEXINFO): Look in $(srcdir).
+	(octave_toc.html): Use -expandinfo and -split_chapter, not
+	-expand info and -split chapter.
+
+2001-03-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* liboctave/Makefile.in (liboctave_toc.html): Use -expand info and
+	-split chapter instead of -expandinfo and -split_chapter options
+	for texi2html.
+	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
+	* interpreter/Makefile.in (octave_toc.html): Likewise.
+
+2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* liboctave/Makefile.in (liboctave_toc.html): Add space after -I
+	in texi2html command.
+	* interpreter/Makefile.in (octave_toc.html): Ditto.
+
+2000-03-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/octave-bug.1: New file.
+	* interpreter/Makefile.in (install install-strip): Install it.
+	(DISTFILES, BINDISTFILES): Add it to the
+
+2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (clean): Also delete munge-texi,
+	munge-texi.o, and Map-s.o.
+
+2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc: Sprinkle with std:: qualifier.
+
+2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (clean-texi): Avoid removing octave.texi.
+
+2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in: Don't generate octave.texi from octave.txi.
+	* interpreter/octave.texi: Rename from octave.txi.
+
+	* interpreter/munge-texi.cc (process_texi_input_file): Undo
+	previous change, since % doesn't work as a comment character after
+	texinfo.tex is included.
+
+2000-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* texinfo.tex: Update to version from texinfo-4.0.
+
+	* interpreter/munge-texi.cc (process_texi_input_file): For Texinfo
+	doc strings, automatically insert an @anchor{doc-SYMBOL} command
+	just before the docstring for SYMBOL.
+
+1999-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc (process_texi_input_file): Begin
+	transformed files with `% DO NOT EDIT' instead of `@c DO NOT EDIT'
+	to prevent problems with TeX not knowing the definition of @c
+	before it is used.
+
+1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (%.texi : %.txi): Suppress command echo.
+
+1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (dist): Remove .texi files first, so
+	they will have timestamps newer than the $(DOCSTRINGS) files.
+	(%.texi : %.txi): Use mv instead of move-if-change.
+
+	* interpreter/Map-s.cc: New file.
+	* interpreter/munge-texi.cc: Use old libg++ Map class instead of
+	STL map, for the benefit of systems that have assemblers that
+	can't handle the long symbol names generated by g++ for
+	map<string,string>.
+
+1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/munge-texi.cc: Strip the "-*- texinfo -*-" marker
+	when including help text.
+
+	* interpreter/Makefile.in ($(TEXINFO)): Depend on $(DOCSTRINGS).
+	($(DOCSTRINGS)): New rule.
+
+	* Makefile.in (dist, bin-dist): Use `$(MAKE) -C dir' instead of
+	`cd dir; $(MAKE); cd ..'.
+	(../BUGS, ../INSTALL.OCTAVE, $(SUBDIRS)) Likewise.
+
+	* interpreter/*.txi: Rename from *.txi.
+	* interpreter/munge-texi.cc: New file.
+	* interpreter/Makefile.in: Use it to create .texi files from .txi
+	files and DOCSTRING files.
+
+Fri Jun 18 23:17:02 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (octave_toc.html): Add -expandinfo to
+	tex12html options.
+	* liboctave/Makefile.in (liboctave_toc.html): Likewise.
+	* faq/Makefile.in (Octave-FAQ_toc.html): Likewise.
+
+Fri Oct  9 00:27:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* faq/Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in:
+	New rules for generating HTML files from Texinfo sources.
+
+Thu May 14 21:04:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (../../BUGS, ../../INSTALL): Add
+	--no-validate to makeinfo args.
+
+Wed Jul  2 16:41:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* refcard/Makefile.in: Remove .tex files from binary distributions.
+
+	* interpreter/Makefile.in: Add DVI and Postscript files to binary
+	distributions.
+
+Fri Apr 18 02:51:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* faq/Octave-FAQ.texi: Rename from faq/FAQ.texi.
+	* faq/Makefile.in: Fix names to match.
+
+Wed Mar 12 17:01:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): New target.
+	* faq/Makefile.in: Ditto.
+	* interpreter/Makefile.in: Ditto.
+	* liboctave/Makefile.in: Ditto.
+	* refcard/Makefile.in: Ditto.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Fri Feb 28 20:53:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* texinfo.tex: Update to latest version from Karl Berry, and apply
+	previous patch too.
+
+Thu Feb 27 03:34:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* texinfo.tex (\codeunder): Maybe make it work for @var{} inside
+	@code{}.
+
+Wed Feb 26 12:03:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* refcard/Makefile.in (mostlyclean clean): Delete log files.
+
+	* liboctave/Makefile.in (mostlyclean clean): Delete more stuff.
+
+	* faq/Makefile.in (mostlyclean clean): Delete some stuff.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTFILES): Distribute conf.texi, not conf.texi.in.
+
+	* liboctave/Makefile.in: Don't make or distribute conf.texi.
+	(liboctave.info, liboctave.dvi): Depend on ../conf.texi, not conf.texi.
+
+	* interpreter/Makefile.in: Don't create or distribute conf.texi.
+	(octave.info, octave.dvi): Depend on ../conf.texi, not conf.texi.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.3 released.
+
+Wed Jan 29 11:49:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (../INSTALL.OCTAVE, ../BUGS): Declare these to be
+	.PHONY so that we will always check the interpreter makefile to
+	get the proper dependencies.
+
+Mon Jan 27 15:52:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+Sun Jan 26 22:07:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in: Make BUGS file directly from bugs.texi.
+	* interpreter/bugs.texi: Incorporate bugs1.texi directly.
+	* interpreter/bugs1.texi: Delete.
+
+	* interpreter/Makefile.in: Make INSTALL file directly from
+	install.texi.
+	* interpreter/install.texi: Incorporate install1.texi directly.
+	* interpreter/install1.texi: Delete.
+
+Sat Jan 25 22:32:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, interpreter/Makefile.in, liboctave/Makefile.in,
+	faq/Makefile.in, refcard/Makefile.in (bin-dist): New target.
+
+Tue Jan  7 00:17:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Tue Dec 10 01:43:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+Fri Dec  6 15:23:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.94.
+
+Wed Nov 20 01:00:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.93.
+
+Thu Nov 14 00:07:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* faq/Makefile.in (FAQ.dvi): Use $(TEXI2DVI), not just texi2dvi.
+	* interpreter/Makefile.in (octave.dvi): Likewise.
+	* liboctave/Makefile.in (liboctave.dvi): Likewise.
+
+	* Version 1.92.
+
+Thu Nov  7 12:43:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.91.
+
+	* texinfo.tex: Update to version from texinfo-3.9 distribution.
+
+Wed Oct 30 17:20:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+Sat Oct 12 13:38:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (maintainer-clean): Don't depend on distclean.
+
+Sat Jun 15 23:01:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in (TEXINFO): Add audio.texi and emacs.texi.
+
+Fri May 17 03:02:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* interpreter/Makefile.in: Use man1dir instead of mandir, and
+	man1ext instead of manext.
+
+Sat Mar 23 05:01:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* liboctave/Makefile.in (TEXINFO): Don't list conf.texi and
+	gpl.texi here.
+
+	* liboctave/Makefile.in (dist targets): Fix ln command.
+	* refcard/Makefile.in (dist targets): Likewise.
+	* interpreter/Makefile.in (dist targets): Likewise.
+	* faq/Makefile.in (dist targets): Likewise.
+
+Fri Mar 22 23:57:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* liboctave/Makefile.in (DISTFILES): Add gpl.texi.
+	* interpreter/Makefile.in (DISTFILES): Add gpl.texi.
+	* Makefile.in (DISTFILES): Delete gpl.texi.
+
+Sun Mar  3 11:33:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Split docs into faq, interpreter, liboctave, and refcard
+	subdirectories.
+
+Wed Sep 20 00:47:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkinstalldirs: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+	* Makefile.in (maintainer-clean): Delete .dvi, .ps, and .info
+	files here.
+	(clean): Not here.
+	(mostlyclean): Make this the same as clean.
+
+Tue Sep 19 03:18:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (../BUGS, ../INSTALL.OCTAVE): Specify output file to
+	makeinfo with --output option.
+
+Thu Sep 14 20:31:47 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Don't fail if makeinfo, tex, or dvips fail.
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/libcruft-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,1908 @@
+2011-03-24  Jarno Rajahalme  <jarno.rajahalme@gmail.com>
+
+	* misc/blaswrap.c: New file.
+	* misc/module.mk (EXTRA_DIST): Add it to the list.
+
+2011-01-31  Rik  <octave@nomad.inbox5.com>
+
+	* arpack/src/dseupd.f, arpack/src/sseupd.f: Change GOTO target
+	to eliminate warning about landing on end if.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* arpack/module.mk (EXTRA_DIST): Include arpack/module.mk in the
+	list.  Remove arpack/src/module.mk and arpacck/util/module.mk
+	from the list.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* arpack/LICENSE: Update to current version from
+	http://www.caam.rice.edu/software/ARPACK.
+	* arpack/ARPACK-license-question.email: Delete as it no longer
+	applies to the current license terms.
+	* arpack/RiceBSD.txt: Delete.
+	* arpack/module.mk: Update for license changes.
+	Add arpack/ prefix to doc files in list.
+
+2011-01-28  David Bateman  <dbateman@free.fr>
+
+	* arpack/src/cneupd.f (cneupd): Restore value of nconv if ctrsen
+	returns a smaller value.
+	* arpack/src/dneupd.f (dneupd): Likewise, for dtrsen.
+	* arpack/src/sneupd.f (sneupd): Likewise, for strsen.
+	* arpack/src/zneupd.f (zneupd): Likewise, for ztrsen.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* arpack/util/second.f (ARSCND): Declare ETIME INTRINSIC, not EXTERNAL.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* arpack: New directory.
+	* Makefile.am: Include arpack/module.mk.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* mkf77def.in: Strip trailing whitespace.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* misc/cquit.c, misc/f77-fcn.h, misc/quit.cc: Strip trailing
+	whitespace.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2010-09-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/cconv2.f, blas-xtra/csconv2.f, blas-xtra/dconv2.f,
+	blas-xtra/sconv2.f, blas-xtra/zconv2.f, blas-xtra/zdconv2.f:
+	Fix inner convolution formula.
+
+2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lapack-xtra/zrsf2csf.f, lapack-xtra/crsf2csf.f: New sources.
+	* lapack-xtra/module.mk: Add them.
+
+2010-05-04  John W. Eaton  <jwe@octave.org>
+
+	* villad/dfopr.f, villad/dif.f, villad/intrp.f, villad/jcobi.f,
+	villad/radau.f, villad/vilerr.f, villad/module.mk: Delete.
+	* Makefile.am: Don't include villad/module.mk.
+
+2010-04-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/cmatm3.f, blas-xtra/zmatm3.f,
+	blas-xtra/dmatm3.f, blas-xtra/xsdot.f: Fix typos. Add missing
+	decls.
+
+2010-03-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (libcruft_la_LIBADD): Include ../libgnu/libgnu.la
+	in the list.  From Marco Atzeri <marco_atzeri@yahoo.it>.
+
+2010-03-15  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (libcruft_la_CPPFLAGS): Append $(AM_CPPFLAGS).
+
+2010-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/cconv2.f, blas-xtra/csconv2.f, blas-xtra/dconv2.f,
+	blas-xtra/sconv2.f, blas-xtra/zconv2.f, blas-xtra/zdconv2.f:
+	New sources.
+	* blas-xtra/module.mk: Add them here.
+
+2010-03-02  John W. Eaton  <jwe@octave.org>
+
+	* misc/cquit.c (octave_restore_signal_mask): Assume we have
+	POSIX signal handling.
+
+2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* misc/lo-error.c (liboctave_fatal_with_id,
+	set_liboctave_error_with_id_handler): New functions.
+	(current_liboctave_error_with_id_handler): New variable.
+	* misc/lo-error.h: Declare them.
+	(liboctave_error_with_id_handler): New typedef.
+
+2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* misc/quit.h: Define WIN32_LEAN_AND_MEAN and don't #undef min/max.
+
+	* Makefile.am: Add -bindir option to libcruft_la_LDFLAGS.
+
+2010-02-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (libcruft_la_LIBADD): Include libranlib.la in the list.
+	(noinst_LTLIBRARIES, libranlib_la_SOURCES, libranlib_la_DEPENDENCIES,
+	libcruft_la_FFLAGS): New variables.
+	(ranlib.def): New target.
+	(DISTCLEANFILES): Also remove ranlib.def.
+	* ranlib/module.mk (libranlib_la_SOURCES): Rename from
+	libcruft_la_SOURCES.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* misc/quit.cc: Untabify.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (EXTRA_DIST): Remove STOP.patch from the list.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* misc/quit.h: Define inline-function variant of OCTAVE_QUIT in C++
+	mode.
+
+2009-01-13  Rik  <octave@nomad.inbox5.com>
+
+	* STOP.patch: Remove unmaintained patch for Fortran code
+
+2009-01-13  Rik  <octave@nomad.inbox5.com>
+
+	* ranlib/advnst.f ranlib/genbet.f ranlib/genchi.f ranlib/genexp.f
+	ranlib/genf.f ranlib/gengam.f ranlib/genmul.f ranlib/gennch.f
+	ranlib/gennf.f ranlib/gennor.f ranlib/genunf.f ranlib/getcgn.f
+	ranlib/getsd.f ranlib/ignbin.f ranlib/ignnbn.f ranlib/ignpoi.f
+	ranlib/ignuin.f ranlib/initgn.f ranlib/mltmod.f ranlib/setant.f
+	ranlib/setgmn.f ranlib/setsd.f: call XSTOPX instead of STOP so Octave's
+	error handler can intercept errors in Fortran code
+
+2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* misc/quit.cc (octave_rethrow_exception): Set octave_interrupt_state
+	to -1 when throwing octave_interrupt_exception.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (AM_CPPFLAGS): New variable.
+
+2009-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Reverse using simple_move_if_change_rule for cruft.def
+	which interferes with make timestamp algorithm.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
+	variables of top_builddir and top_srcdir.
+
+2009-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Use simple_move_if_change_rule for cruft.def to eliminate
+	unnecessary compilations.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* misc/f77-fcn.h, misc/lo-error.h, misc/quit.h,
+	misc/f77-extern.cc, misc/quit.cc, misc/cquit.c, misc/f77-fcn.c,
+	misc/lo-error.c: Remove Emacs local variable list.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* misc/cquit.c, misc/f77-fcn.h, misc/quit.h: Untabify.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (DISTCLEANFILES): New variable.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/sdot3.f: Use nested cache-aligned loop for general case.
+	* blas-xtra/ddot3.f: Ditto.
+	* blas-xtra/cdotc3.f: Ditto.
+	* blas-xtra/zdotc3.f: Ditto.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/sdot3.f: New source.
+	* blas-xtra/ddot3.f: New source.
+	* blas-xtra/cdotc3.f: New source.
+	* blas-xtra/zdotc3.f: New source.
+	* blas-xtra/smatm3.f: New source.
+	* blas-xtra/dmatm3.f: New source.
+	* blas-xtra/cmatm3.f: New source.
+	* blas-xtra/zmatm3.f: New source.
+	* blas-xtra/module.mk: Include them.
+
+2009-11-17  John W. Eaton  <jwe@octave.org>
+
+	* mkf77def.in: Only process files with names that match *.f.
+
+2009-11-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am: Restore rules for building cruft.def.
+	(libcruft_la_LDFLAGS): Also append @XTRA_CRUFT_SH_LDFLAGS@.
+	(libcruft_la_DEPENDENCIES): New variable.
+	* mkf77def.in: Use @VAR@ instead of %VAR% substitutions.
+	Process	srcdir plus list of files instead of working as a filter.
+
+2009-11-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (libcruft_la_CPPFLAGS): Define.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* blas, lapack: Remove directories and all files.
+	* Makefile.am: Don't include blas/module.mk or lapack/module.mk.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am, amos/module.mk, blas-xtra/module.mk,
+	blas/module.mk, daspk/module.mk, dasrt/module.mk, dassl/module.mk,
+	fftpack/module.mk, lapack-xtra/module.mk, lapack/module.mk,
+	misc/module.mk, odepack/module.mk, ordered-qz/module.mk,
+	quadpack/module.mk, ranlib/module.mk, slatec-err/module.mk,
+	slatec-fn/module.mk, villad/module.mk: New files.
+
+	* Makefile.in, Makerules.in, amos/Makefile.in,
+	blas-xtra/Makefile.in, blas/Makefile.in, daspk/Makefile.in,
+	dasrt/Makefile.in, dassl/Makefile.in, fftpack/Makefile.in,
+	lapack-xtra/Makefile.in, lapack/Makefile.in, misc/Makefile.in,
+	odepack/Makefile.in, ordered-qz/Makefile.in, quadpack/Makefile.in,
+	ranlib/Makefile.in, slatec-err/Makefile.in, slatec-fn/Makefile.in,
+	villad/Makefile.in: Delete.
+
+2009-09-17  John W. Eaton  <jwe@octave.org>
+
+	* misc/oct-dlldefs.h: Delete.
+	* misc/Makefile.in (INCLUDES): Remove oct-dlldefs.h from the list.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Omit $(FFTW_LIBS) from the list.
+
+2009-06-22  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (MISC_OBJ): Remove misc/machar.o and misc/smachar.o
+	from the list.
+
+	* misc/i1mach.f, misc/r1mach.f, misc/d1mach.f: Rewite in terms of
+	LAPACK functions slamch and dlamch.
+	* misc/machar.c: Delete.
+	* misc/Makefile.in (CSRC): Remove machar.c from the list.
+	(CEXTRA, XCC, XALL_CFLAGS): Delete variables.
+	(machar.o, smachar.o, pic/machar.o, pic/smachar.o): Delete rules.
+
+2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
+
+2009-03-07  John W. Eaton  <jwe@octave.org>
+
+	* misc/quit.h (octave_rethrow_exception):
+	Don't tag with GCC_ATTR_NORETURN.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (maintainer-clean): Also remove libraries.
+
+	* Makerules.in: Make maintainer-clean and distclean the same.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* misc/quit.h (octave_signal_caught): Declare as volatile.
+	* misc/cquit.cc (octave_signal_caught): Likewise.
+
+2009-02-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas/ssymm.f, blas/dsymm.f, blas/chemm.f, blas/zhemm.f: New sources.
+	* blas/Makefile.in: Include them.
+
+2009-01-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LIBRARIES, install, uninstall): use SHLLIBPRE and
+	SHLBINPRE library prefixes.
+	From Marco Atzeri <marco_atzeri@yahoo.it>.
+
+2008-12-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lapack/chegs2.f lapack/chegst.f lapack/chegv.f lapack/dsygs2.f
+	lapack/dsygst.f lapack/dsygv.f lapack/ssygs2.f lapack/ssygst.f
+	lapack/ssygv.f lapack/zhegs2.f lapack/zhegst.f lapack/zhegv.f:
+	New sources.
+	* lapack/Makefile.in: Include them.
+
+2008-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas/zsyrk.f: New source.
+	* lapack/cggbak.f, lapack/cggev.f, lapack/cgghrd.f, lapack/chgeqz.f,
+	lapack/ctgevc.f, lapack/dggev.f, lapack/sggev.f, lapack/zggbak.f,
+	lapack/zggev.f, lapack/zgghrd.f, lapack/zhgeqz.f, lapack/ztgevc.f:
+	New sources.
+	* lapack/Makefile.in: Include them.
+
+2008-08-12  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* blas/icamax.f, blas/isamax.f: New files.
+	* blas/Makefile.in (FSRC): Add them to the list.
+
+	* lapack/icmax1.f: New file.
+	* lapack/Makefile.in (FSRC): Add it to the list.
+
+2008-06-16  David Bateman  <dbateman@free.fr>
+
+	* slatec-fn/xacosh.f, slatec-fn/xasinh.f: Replace xsacosh with
+	xacosh, xdacosh with xacosh and xdasinh with xasinh.
+
+2008-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* misc/Makefile.in (MAKEDEPS): Remove CEXTRA.
+
+2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* misc/oct-dlldefs.h (OCTGRAPHICS_API): New macro for import/export
+	in graphics related libraries.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* slatec/xsgmainc.f: Replace DLGAMS with ALGAMS.
+
+2008-05-30  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* quadpack/qk15i.f: Delete extraneous semicolons.
+
+2008-05-21  David Bateman  <dbateman@free.fr>
+
+	* odepack/slsode.f, odepack/sintdy.f: Replace the use of xerrwv
+	with xerrwd and rumach with d1mach(4).
+
+	* odepack/scfode.f, odepack/sewset.f, odepack/sintdy.f,
+	odepack/slsode.f, odepack/sprepj.f, odepack/ssolsy.f,
+	odepack/sstode.f, odepack/svnorm.f: New files.
+	* odepack/Makefile.in (FSRC): Add them.
+
+	* ordered-qz/sexchqz.f, ordered-qz/ssubsp.f: New files.
+	* ordered-qz/Makefile.in (FSRC): Add them.
+	* quadpack/qagi.f, quadpack/qagie.f, quadpack/qagp.f,
+	quadpack/qagpe.f, quadpack/qelg.f, quadpack/qk15i.f,
+	quadpack/qk21.f, quadpack/qpsrt.f: New files.
+	* quadpack/Makefile.in (FSRC): Add them.
+
+2008-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/cch1dn.f, qrupdate/cchinx.f, qrupdate/cqhqr.f,
+	qrupdate/cqrinc.f, qrupdate/cqrinr.f, qrupdate/cqrqhu.f,
+	qrupdate/cqrqhv.f, qrupdate/sch1dn.f, qrupdate/schinx.f,
+	qrupdate/sqhqr.f, qrupdate/sqrinc.f, qrupdate/sqrinr.f,
+	qrupdate/sqrqhu.f: Convert DOUBLE PRECISION constants to REAL.
+	* qrupdate/cqrinr.f, qrupdate/sqrinr.f: Correct EXTERNAL
+	declarations.
+	* qrupdate/sqrinr.f: Convert DOUBLE PRECISION calls to
+	REAL counterparts.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (MISC_OBJ): Add misc/smachar.o
+	* Makerules.in (CRUFT_CSRC, CRUFT_CPICOBJ): Add CEXTRA, allowing
+	objects files with no corresponding source file in the
+	distribution.
+
+	* amos/cacai.f, amos/cacon.f, amos/cbesh.f, amos/cbesi.f,
+	amos/cbesj.f, amos/cbesk.f, amos/cbesy.f, amos/cbinu.f,
+	amos/cbuni.f, amos/cbunk.f, amos/cunk1.f amos/cunk2.f,
+	amos/crati.f, amos/cshch.f, amos/cuni1.f, amos/cuoik.f,
+	amos/cairy.f, amos/cbiry.f, amos/ckscl.f, amos/cs1s2.f,
+	amos/cuchk.f, amos/cuni2.f, amos/cwrsk.f, amos/casyi.f,
+	amos/cbknu.f, amos/cmlri.f, amos/cseri.f, amos/cunhj.f,
+	amos/cunik.f: New files.
+	* amos/Makefile.in (FSRC): Add them.
+
+	* blas-xtra/xsdot.f, blas-xtra/xsnrm2.f, blas-xtra/xscnrm2.f,
+	blas-xtra/xcdotc.f, blas-xtra/xcdotu.f: New files
+	* blas-xtra/Makefile.in (FSRC): Add them.
+
+	* blas/sasum.f, blas/saxpy.f, blas/scabs1.f, blas/scopy.f,
+	blas/sger.f, blas/smach.f, blas/snrm2.f, blas/srot.f,
+	blas/sswap.f, blas/ssymv.f, blas/ssyr.f, blas/ssyr2.f,
+	blas/ssyr2k.f, blas/stbsv.f, blas/strmm.f, blas/strmv.f,
+	blas/strsv.f, blas/scasum.f, blas/scnrm2.f, blas/caxpy.f,
+	blas/ccopy.f, blas/cdotc.f, blas/cdotu.f, blas/, blas/csrot.f,
+	blas/csscal.f, blas/cgemm.f, blas/cgemv.f, blas/cgerc.f,
+	blas/cgeru.f, blas/chemv.f, blas/cher.f, blas/cher2.f,
+	blas/cher2k.f, blas/cherk.f, blas/cscal.f, blas/cswap.f,
+	blas/ctbsv.f, blas/ctrmm.f, blas/ctrmv.f, blas/, blas/ctrsm.f,
+	blas/ctrsv.f: New files
+	* blas/Makefile.in (FSRC): Add them.
+
+	* fftpack/zfftb.f, zfftb1.f, fftpack/zfftf.f, fftpack/zfftf1.f,
+	fftpack/zffti.f, fftpack/zffti1.f, fftpack/zpassb.f,
+	fftpack/zpassb2.f, fftpack/zpassb3.f, fftpack/zpassb4.f,
+	fftpack/zpassb5.f, fftpack/zpassf.f, fftpack/zpassf2.f,
+	fftpack/zpassf3.f, fftpack/zpassf4.f, fftpack/zpassf5.f: Rename
+	function (c -> z | add z).
+	* fftpack/cfftb.f, cfftb1.f, fftpack/cfftf.f, fftpack/cfftf1.f,
+	fftpack/cffti.f, fftpack/cffti1.f, fftpack/passb.f,
+	fftpack/passb2.f, fftpack/passb3.f, fftpack/passb4.f,
+	fftpack/passb5.f, fftpack/passf.f, fftpack/passf2.f,
+	fftpack/passf3.f, fftpack/passf4.f, fftpack/passf5.f: New files
+	for single precision.
+	* fftpack/Makefile.in (FSRC): Add new files.
+
+	* lapack-xtra/xclange.f, lapack-xtra/xslamch.f,
+	lapack-xtra/xslange.f: New files.
+	* lapack-xtra/Makefile.in (FSRC): Add them.
+
+	* lapack/cbdsqr.f, lapack/csrscl.f, lapack/cgbcon.f,
+	lapack/cgbtf2.f, lapack/cgbtrf.f, lapack/cgbtrs.f,
+	lapack/cgebak.f, lapack/cgebal.f, lapack/cgebd2.f,
+	lapack/cgebrd.f, lapack/cgecon.f, lapack/cgeesx.f, lapack/cgeev.f,
+	lapack/cgehd2.f, lapack/cgehrd.f, lapack/cgelq2.f,
+	lapack/cgelqf.f, lapack/cgelsd.f, lapack/cgelss.f,
+	lapack/cgelsy.f, lapack/cgeqp3.f, lapack/cgeqpf.f,
+	lapack/cgeqr2.f, lapack/cgeqrf.f, lapack/cgesv.f, lapack/cgesvd.f,
+	lapack/cgetf2.f, lapack/cgetrf.f, lapack/cgetri.f,
+	lapack/cgetrs.f, lapack/cggbal.f, lapack/cgtsv.f, lapack/cgttrf.f,
+	lapack/cgttrs.f, lapack/cgtts2.f, lapack/cheev.f, lapack/chetd2.f,
+	lapack/chetrd.f, lapack/chseqr.f, lapack/clabrd.f,
+	lapack/clacgv.f, lapack/clacn2.f, lapack/clacon.f,
+	lapack/clacpy.f, lapack/cladiv.f, lapack/clahqr.f,
+	lapack/clahr2.f, lapack/clahrd.f, lapack/claic1.f,
+	lapack/clals0.f, lapack/clalsa.f, lapack/clalsd.f,
+	lapack/clange.f, lapack/clanhe.f, lapack/clanhs.f,
+	lapack/clantr.f, lapack/claqp2.f, lapack/claqps.f,
+	lapack/claqr0.f, lapack/claqr1.f, lapack/claqr2.f,
+	lapack/claqr3.f, lapack/claqr4.f, lapack/claqr5.f, lapack/clarf.f,
+	lapack/clarfb.f, lapack/clarfg.f, lapack/clarft.f,
+	lapack/clarfx.f, lapack/clartg.f, lapack/clarz.f, lapack/clarzb.f,
+	lapack/clarzt.f, lapack/clascl.f, lapack/claset.f, lapack/clasr.f,
+	lapack/classq.f, lapack/claswp.f, lapack/clatbs.f,
+	lapack/clatrd.f, lapack/clatrs.f, lapack/clatrz.f,
+	lapack/clauu2.f, lapack/clauum.f, lapack/cpbcon.f,
+	lapack/cpbtf2.f, lapack/cpbtrf.f, lapack/cpbtrs.f,
+	lapack/cpocon.f, lapack/cpotf2.f, lapack/cpotrf.f,
+	lapack/cpotri.f, lapack/cpotrs.f, lapack/cptsv.f, lapack/cpttrf.f,
+	lapack/cpttrs.f, lapack/cptts2.f, lapack/crot.f, lapack/csteqr.f,
+	lapack/ctrcon.f, lapack/ctrevc.f, lapack/ctrexc.f,
+	lapack/ctrsen.f, lapack/ctrsyl.f, lapack/ctrti2.f,
+	lapack/ctrtri.f, lapack/ctrtrs.f, lapack/ctzrzf.f,
+	lapack/cung2l.f, lapack/cung2r.f, lapack/cungbr.f,
+	lapack/cunghr.f, lapack/cungl2.f, lapack/cunglq.f,
+	lapack/cungql.f, lapack/cungqr.f, lapack/cungtr.f,
+	lapack/cunm2r.f, lapack/cunmbr.f, lapack/cunml2.f,
+	lapack/cunmlq.f, lapack/cunmqr.f, lapack/cunmr3.f,
+	lapack/cunmrz.f, lapack/sbdsqr.f, lapack/sgbcon.f,
+	lapack/sgbtf2.f, lapack/sgbtrf.f, lapack/sgbtrs.f,
+	lapack/sgebak.f, lapack/sgebal.f, lapack/sgebd2.f,
+	lapack/sgebrd.f, lapack/sgecon.f, lapack/sgeesx.f, lapack/sgeev.f,
+	lapack/sgehd2.f, lapack/sgehrd.f, lapack/sgelq2.f,
+	lapack/sgelqf.f, lapack/sgelsd.f, lapack/sgelss.f,
+	lapack/sgelsy.f, lapack/sgeqp3.f, lapack/sgeqpf.f,
+	lapack/sgeqr2.f, lapack/sgeqrf.f, lapack/sgesv.f, lapack/sgesvd.f,
+	lapack/sgetf2.f, lapack/sgetrf.f, lapack/sgetri.f,
+	lapack/sgetrs.f, lapack/sggbak.f, lapack/sggbal.f,
+	lapack/sgghrd.f, lapack/sgtsv.f, lapack/sgttrf.f, lapack/sgttrs.f,
+	lapack/sgtts2.f, lapack/shgeqz.f, lapack/shseqr.f,
+	lapack/slabad.f, lapack/slabrd.f, lapack/slacn2.f,
+	lapack/slacon.f, lapack/slacpy.f, lapack/sladiv.f, lapack/slae2.f,
+	lapack/slaed6.f, lapack/slaev2.f, lapack/slaexc.f, lapack/slag2.f,
+	lapack/slahqr.f, lapack/slahr2.f, lapack/slahrd.f,
+	lapack/slaic1.f, lapack/slaln2.f, lapack/slals0.f,
+	lapack/slalsa.f, lapack/slalsd.f, lapack/slamc1.f,
+	lapack/slamc2.f, lapack/slamc3.f, lapack/slamc4.f,
+	lapack/slamc5.f, lapack/slamch.f, lapack/slamrg.f,
+	lapack/slange.f, lapack/slanhs.f, lapack/slanst.f,
+	lapack/slansy.f, lapack/slantr.f, lapack/slanv2.f,
+	lapack/slapy2.f, lapack/slapy3.f, lapack/slaqp2.f,
+	lapack/slaqps.f, lapack/slaqr0.f, lapack/slaqr1.f,
+	lapack/slaqr2.f, lapack/slaqr3.f, lapack/slaqr4.f,
+	lapack/slaqr5.f, lapack/slarf.f, lapack/slarfb.f, lapack/slarfg.f,
+	lapack/slarft.f, lapack/slarfx.f, lapack/slartg.f, lapack/slarz.f,
+	lapack/slarzb.f, lapack/slarzt.f, lapack/slas2.f, lapack/slascl.f,
+	lapack/slasd0.f, lapack/slasd1.f, lapack/slasd2.f,
+	lapack/slasd3.f, lapack/slasd4.f, lapack/slasd5.f,
+	lapack/slasd6.f, lapack/slasd7.f, lapack/slasd8.f,
+	lapack/slasda.f, lapack/slasdq.f, lapack/slasdt.f,
+	lapack/slaset.f, lapack/slasq1.f, lapack/slasq2.f,
+	lapack/slasq3.f, lapack/slasq4.f, lapack/slasq5.f,
+	lapack/slasq6.f, lapack/slasr.f, lapack/slasrt.f, lapack/slassq.f,
+	lapack/slasv2.f, lapack/slaswp.f, lapack/slasy2.f,
+	lapack/slatbs.f, lapack/slatrd.f, lapack/slatrs.f,
+	lapack/slatrz.f, lapack/slauu2.f, lapack/slauum.f,
+	lapack/slazq3.f, lapack/slazq4.f, lapack/sorg2l.f,
+	lapack/sorg2r.f, lapack/sorgbr.f, lapack/sorghr.f,
+	lapack/sorgl2.f, lapack/sorglq.f, lapack/sorgql.f,
+	lapack/sorgqr.f, lapack/sorgtr.f, lapack/sorm2r.f,
+	lapack/sormbr.f, lapack/sorml2.f, lapack/sormlq.f,
+	lapack/sormqr.f, lapack/sormr3.f, lapack/sormrz.f,
+	lapack/spbcon.f, lapack/spbtf2.f, lapack/spbtrf.f,
+	lapack/spbtrs.f, lapack/spocon.f, lapack/spotri.f,
+	lapack/spotrs.f, lapack/sptsv.f, lapack/spttrf.f, lapack/spttrs.f,
+	lapack/sptts2.f, lapack/srscl.f, lapack/ssteqr.f, lapack/ssterf.f,
+	lapack/ssyev.f, lapack/ssytd2.f, lapack/ssytrd.f, lapack/stgevc.f,
+	lapack/strcon.f, lapack/strevc.f, lapack/strexc.f,
+	lapack/strsen.f, lapack/strsyl.f, lapack/strti2.f,
+	lapack/strtri.f, lapack/strtrs.f, lapack/stzrzf.f,
+	lapack/scsum1.f: New files
+	* lapack/Makefile.in (FSRC): Add them.
+
+	* misc/r1mach.f: New file
+	* misc/machar.cc: Modify to allow to be build twice, once for
+	double precision and once for single precision.
+	* misc/Makefile.in (FSRC): Add it.
+	(CEXTRA): Add smachar.c, and target for smachar.o
+	(MAKEDEPS): Include CEXTRA.
+
+	* qrupdate/sch1up.f, qrupdate/cch1up.f, qrupdate/sqrinc.f,
+	qrupdate/cqrinc.f, qrupdate/sqrdec.f, qrupdate/cqrdec.f,
+	qrupdate/sqrinr.f, qrupdate/cqrinr.f, qrupdate/sqrder.f,
+	qrupdate/cqrder.f, qrupdate/sqrshc.f, qrupdate/cqrshc.f,
+	qrupdate/sqr1up.f, qrupdate/cqr1up.f, qrupdate/sch1dn.f,
+	qrupdate/cch1dn.f, qrupdate/schinx.f, qrupdate/cchinx.f,
+	qrupdate/schdex.f, qrupdate/cchdex.f, qrupdate/sqrqhu.f,
+	qrupdate/cqrqhu.f, qrupdate/sqrqhv.f, qrupdate/cqrqhv.f,
+	qrupdate/sqhqr.f, qrupdate/cqhqr.f: New files.
+	* qrupdate/Makefile.in (FSRC): Add them.
+
+	* slatec-fn/acosh.f, slatec-fn/albeta.f, slatec-fn/algams.f,
+	slatec-fn/alngam.f, slatec-fn/alnrel.f, slatec-fn/asinh.f,
+	slatec-fn/atanh.f, slatec-fn/betai.f, slatec-fn/csevl.f,
+	slatec-fn/erf.f, slatec-fn/erfc.f, slatec-fn/gami.f,
+	slatec-fn/gamit.f, slatec-fn/gamlim.f, slatec-fn/gamma.f,
+	slatec-fn/gamr.f, slatec-fn/inits.f, slatec-fn/pchim.f,
+	slatec-fn/pchst.f, slatec-fn/r9gmit.f, slatec-fn/r9lgic.f,
+	slatec-fn/r9lgit.f, slatec-fn/r9lgmc.f, slatec-fn/xacosh.f,
+	slatec-fn/xasinh.f, slatec-fn/xatanh.f, slatec-fn/xbetai.f,
+	slatec-fn/xerf.f, slatec-fn/xerfc.f, slatec-fn/xgamma.f,
+	slatec-fn/xsgmainc.f: New files.
+	* slatec-fn/Makefile.in (FSRC): Add them.
+
+2008-04-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/dch1dn.f, qrupdate/dchdex.f, qrupdate/dchinx.f,
+	qrupdate/dqhqr.f, qrupdate/dqrdec.f, qrupdate/dqrinc.f,
+	qrupdate/dqrqhu.f, qrupdate/dqrqhv.f, qrupdate/dqrshc.f,
+	qrupdate/zch1dn.f, qrupdate/zchdex.f, qrupdate/zchinx.f,
+	qrupdate/zqhqr.f, qrupdate/zqrdec.f, qrupdate/zqrder.f,
+	qrupdate/zqrinc.f, qrupdate/zqrinr.f, qrupdate/zqrqhu.f,
+	qrupdate/zqrqhv.f, qrupdate/zqrshc.f:
+	Fix external declarations, XERBLA calls, and docs.
+
+2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/dqrqhu.f, qrupdate/zqrqhu.f,
+	* qrupdate/dqrshc.f, qrupdate/zqrshc.f,
+	* qrupdate/dchinx.f, qrupdate/zchinx.f,
+	* qrupdate/dchdex.f, qrupdate/zchdex.f: New files.
+
+2008-04-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* blas-xtra/xzdotu.f: Turn into simple wrapper for zdotu.
+	* blas-xtra/xzdotc.f: Turn into simple wrapper for zdotc.
+	* qrupdate/zqrqhv.f: Undo previous change.
+
+2008-03-22  David Bateman  <dbateman@free.fr>
+
+	* qrupdate/dch1up.f: Remove unused external reference to dlartv.
+
+2008-03-18  John W. Eaton  <jwe@octave.org>
+
+	* qrupdate/zqrqhv.f (zqrqhv): Call xzdotc instead of zdotc.
+	* blas-xtra/xzdotu.f: Eliminate local zdotu variable.
+	* blas-xtra/xzdotc.f: New file.
+	* blas-xtra/Makefile.in (FSRC): Add it to the list.
+
+2008-03-10  John W. Eaton  <jwe@octave.org>
+
+	* blas/zdrot.f, odepack/dlsode.f, odepack/ewset.f,
+	odepack/intdy.f, fftpack/cffti.f, fftpack/cfftb.f,
+	fftpack/cfftf.f:
+	Use (*) instead of (1) for assumed-size dimensions.
+
+2008-03-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/dqrinc.f: Declare DGEMV external.
+	* qrupdate/zqrinc.f: Declare ZGEMV external.
+	Fix complex constant args in call to ZGEMV.
+
+2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/dch1dn.f, qrupdate/zch1dn.f: add "quick return" checks.
+
+2008-03-04 Jaroslav Hajek  <highegg@gmail.com>
+
+	* qrupdate/dch1dn.f, qrupdate/dch1up.f,
+	qrupdate/zch1dn.f, qrupdate/zch1up.f: New files.
+	* qrupdate/Makefile.in (FSRC): Add them to the list.
+
+	* qrupdate/Makefile.in, qrupdate/dqhqr.f, qrupdate/dqr1up.f,
+	qrupdate/dqrdec.f, qrupdate/dqrder.f, qrupdate/dqrinc.f,
+	qrupdate/dqrinr.f, qrupdate/dqrqhv.f, qrupdate/zqhqr.f,
+	qrupdate/zqr1up.f, qrupdate/zqrdec.f, qrupdate/zqrder.f,
+	qrupdate/zqrinc.f, qrupdate/zqrinr.f, qrupdate/zqrqhv.f:
+	New files.
+	* Makefile.in (CRUFT_DIRS): Add qrupdate to the list.
+
+2008-02-14  John W. Eaton  <jwe@octave.org>
+
+	* misc/f77-fcn.h (F77_XFCN): Call octave_rethrow_exception here
+	instead of checking octave_allocation_error.
+	* misc/quit.cc (octave_execution_exception): New function.
+	(octave_rethrow_exception): New function.
+	(octave_handle_signal): Call octave_rethrow_exception instead of
+	octave_throw_interrupt_exception.
+	* misc/quit.h (octave_execution_error): New variable.
+	(END_INTERRUPT_WITH_EXCEPTIONS): Catch octave_execution_exception.
+	(octave_execution_exception): New class.
+	(octave_exception): New enum.
+	(octave_exception_state): Rename from octave_allocation_error.
+	Change all uses.
+
+2008-02-12  John W. Eaton  <jwe@octave.org>
+
+	* lapack-xtra/xilaenv.f: New wrapper for Fortran function ilaenv.
+	* lapack-xtra/Makefile.in (FSRC): Add it to the list.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* Makerules.in (%.def : %.f): Use mv instead of move-if-change.
+
+2008-02-05  John W. Eaton  <jwe@octave.org>
+
+	* misc/Makefile.in: Unconditionally include $(MAKEDEPS).
+	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-11-01  John W. Eaton  <jwe@octave.org>
+
+	* lapack-xtra/xzlange.f: Include complete implementation of ZLANGE
+	function here.
+
+	* blas-xtra/xzdotu.f: Include complete implementation of ZDOTU
+	function here.
+
+2007-10-26  John W. Eaton  <jwe@octave.org>
+
+	* lapack/dlals0.f: New file.
+	* lapack/Makefile.in (FSRC): Add it to the list.
+
+2007-10-26  David Bateman  <dbateman@free.fr>
+
+	* lapack/dgelsd.f, lapack/dlalsd.f, lapack/dlalsa.f,
+	lapack/dlasda.f, lapack/dlasdt.f, lapack/dlasdq.f
+	lapack/dlamrg.f, lapack/dlasd0.f, lapack/dlasd1.f,
+	lapack/dlasd2.f, lapack/dlasd3.f, lapack/dlasd4.f,
+	lapack/dlasd5.f, lapack/dlasd6.f, lapack/dlasd7.f,
+	lapack/dlasd8.f, lapack/dlaed6.f, lapack/zgelsd.f,
+	lapack/zlalsd.f , lapack/zlalsa.f, lapack/zlals0.f: New files.
+	* lapack/Makefile.in (FSRC): Include them here.
+
+2007-10-23  John W. Eaton  <jwe@octave.org>
+
+	* lapack/dgtts2.f, lapack/zgtts2.f: New files.
+	* lapack/Makefile.in (FSRC): Add them to the list.
+
+2007-10-16  John W. Eaton  <jwe@octave.org>
+
+	* lapack/dlacn2.f, lapack/dlacn2.f, lapack/dlahr2.f,
+	lapack/dlahr2.f, lapack/dlaqr0.f, lapack/dlazq3.f,
+	lapack/dlazq3.f, lapack/dormr3.f, lapack/dormrz.f,
+	lapack/iparmq.f, lapack/iparmq.f, lapack/zlacn2.f,
+	lapack/zlahr2.f, lapack/zlaqr0.f: New files.
+	* lapack/Makefile.in (FSRC): Add them to the list.
+
+	* lapack: Update all files to current versions from Lapack 3.1.1.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* mkf77def.in: Combine sed expressions.
+
+2007-09-26  David Bateman  <dbateman@free.fr>
+
+	* lapack/dgelsy.f,  lapack/dlatrz.f,  lapack/zlarz.f,
+	lapack/dgeqp3.f,  lapack/dtzrzf.f,  lapack/zlarzt.f,
+	lapack/dlaic1.f,  lapack/zgelsy.f,  lapack/zlatrz.f,
+	lapack/dlaqp2.f,  lapack/zgeqp3.f,  lapack/ztzrzf.f,
+	lapack/dlaqps.f,  lapack/zlaic1.f,  lapack/zunmr3.f,
+	lapack/dlarzb.f,  lapack/zlaqp2.f,  lapack/zunmrz.f,
+	lapack/dlarz.f,   lapack/zlaqps.f, lapack/dlarzt.f,
+	lapack/zlarzb.f: New files
+	* lapack/Makefile.in (FSRC): Add the new files.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in, Makerules.in, fftpack/Makefile.in,
+	randlib/Makefile.in: Adjust DISTFILES to allow out of tree "make dist"
+	to work.
+
+2007-04-23  John W. Eaton  <jwe@octave.org>
+
+	* ranlib/phrtsd.f (phrtsd): Store result of call to index
+	instrinsic in an INTEGER variable to ensure that the types of the
+	arguments passed to mod really are the same even on 64-bit systems.
+
+2007-04-18  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* blas-xtra/xdnrm2.f, blas-xtra/xdznrm2.f:
+	Delete spurious semicolons.
+
+2007-04-06  John W. Eaton  <jwe@octave.org>
+
+	* blas-xtra/xdnrm2.f, blas-xtra/xdznrm2.f: New functions.
+	* blas-xtra/Makefile.in (FSRC): Add them to the list.
+
+	* ranlib/phrtsd.f (phrtsd): Ensure that the types of the arguments
+	passed to mod are the same even on 64-bit systems.
+
+2007-04-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefules.in: Handle Fortran, C, and C++ sources with separate
+	variables.
+	* misc/Makefile.in: Use new variables for Fortran, C, and C++ files.
+	* Makefile.in (clean mostlyclean distclean): No need to remove
+	$(CRUFT_OBJ) here.
+
+2007-04-04  Rafael Laboissiere  <rafael@debian.org>
+
+	* Makefile.in (clean): Remove mkf77def.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makerules.in, Makefile.in (dist): Use ln instead of $(LN_S).
+
+2007-02-26  John W. Eaton  <jwe@octave.org>
+
+	* misc/Makefile.in (CPICDEP): Also set if CPICFLAG is not defined.
+	(CXXPICDEP): Also set if CXXPICFLAG is not defined.
+
+2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in, Makerules.in: Use $(LN_S) instead of ln or ln -s.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* Makerules.in: Don't use wildcard function to generate source
+	efile list.
+	* amos/Makefile.in, blas-xtra/Makefile.in, blas/Makefile.in,
+	daspk/Makefile.in, dasrt/Makefile.in, dassl/Makefile.in,
+	fftpack/Makefile.in, lapack-xtra/Makefile.in, lapack/Makefile.in,
+	minpack/Makefile.in, misc/Makefile.in, odepack/Makefile.in,
+	ordered-qz/Makefile.in, quadpack/Makefile.in, ranlib/Makefile.in,
+	slatec-err/Makefile.in, slatec-fn/Makefile.in, villad/Makefile.in:
+	Explicitly list source files.
+
+2007-01-24  Alexander Barth  <abarth@marine.usf.edu>
+
+	* misc/f77-fcn.h (F77_CSTRING): Call OCTAVE_LOCAL_BUFFER with cs,
+	not F77_CHAR_ARG_USE (s).
+
+2006-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Makerules.in (%.def : %.f): Use $(simple-move-if-change-rule) here.
+
+2006-11-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
+	(DLL_CDEFS): Rename from XTRA_CDEFS.
+	Substitute CRUFT_DLL_DEFS, not XTRA_CRUFT_DEFS.
+	(XTRA_CRUFT_SH_LDFLAGS): Rename from XTRA_CRUFT_LINK_DEPS.
+	Add $(XTRA_CRUFT_SH_LDFLAGS) to SH_LDFLAGS instead of to LINK_DEPS.
+
+2006-10-31  John W. Eaton  <jwe@octave.org>
+
+	* misc/Makefile.in (INCLUDES): Add oct-dlldefs.h to the list.
+
+2006-10-29  John W. Eaton  <jwe@octave.org>
+
+	* misc/Makefile.in (SPECIAL_INCLUDE): Add oct-dlldefs.h to the list.
+
+2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* misc/quit.h: Undefine min and max after including windows.h.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* misc/oct-dlldefs.h: New file.
+
+	* mkf77def.in: Downcase all input to simplify matching.
+	Match only lines beginning with whitespace.
+	Match function return types.
+	Use literal TAB characters instead of \t in sed patterns.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in (XTRA_CRUFT_LINK_DEPS): Substitute.
+	(CRUFT_DEFS): New variable.
+	(LINK_DEPS): Include $(XTRA_CRUFT_LINK_DEPS) in the list.
+	(clean, mostlyclean, distclean): Delete cruft.def.
+	(cruft.def): New target.
+	(libraries): Depend on cruft.def.
+
+	* misc/f77-fcn.h (f77_exception_encountered, xstopx):
+	Tag with CRUFT_API.
+	* misc/lo-error.h (current_liboctave_error_handler,
+	current_liboctave_warning_handler,
+	current_liboctave_warning_with_id_handler,
+	set_liboctave_error_handler, set_liboctave_warning_handler,
+	set_liboctave_warning_with_id_handler): Likewise.
+	* misc/quit.h (w32_sigint_init, w32_raise_final,
+	w32_raise, w32_in_main_thread, current_context,
+	octave_save_current_context, octave_restore_current_context,
+	octave_jump_to_enclosing_context, octave_save_signal_mask,
+	octave_restore_signal_mask, octave_interrupt_immediately,
+	octave_interrupt_state, octave_allocation_error,
+	octave_signal_caught, octave_handle_signal,
+	octave_throw_interrupt_exception, octave_throw_bad_alloc,
+	octave_signal_hook, octave_interrupt_hook, octave_bad_alloc_hook):
+	Likewise.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in ($(CRUFT_DEFS)): Depend on $(SUBDIRS).
+	(cruft.def): Depend on $(CRUFT_DEFS).
+	(libraries): Depend on cruft.def only.
+
+	* mk77def.in: New script template
+	* Makefile.in (DISTFILES): Include mk77def.in in the list.
+	($(SUBDIRS)): Depend on mk77def.
+	(mk77def): New target.
+	(CRUFT_DEFS): New variable.
+	* Makerules.in (CRUFT_FSRC, CRUFT_CSRC, CRUFT_CXXSRC): New variables.
+	(CRUFT_SRC): Define using $(CRUFT_FSRC), $(CRUFT_CSRC), and
+	$(CRUFT_CXXSRC).
+	(CRUFT_DEFS): New variable.
+	($(CRUFT_DEFS)): Depend on $(TOPDIR)/libcruft/mkf77def.
+	(%.def : %.f): New pattern rule.  Use mkf77def script to do
+	Fortran name mangling.
+	(clean, mostlyclean, distclean): Delete $(CRUFT_DEFS).
+	(all): Depend on $(CRUFT_DEFS)
+	Partially from Michael Goffioul  <michael.goffioul@swing.be>.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* Makerules.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
+
+2006-10-23  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* misc/f77-fcn.h (F77_CHAR_ARG_DEF, F77_CONST_CHAR_ARG_DEF,
+	F77_CHAR_ARG_LEN_DEF, F77_CHAR_ARG_USE, F77_CHAR_ARG_LEN_USE,
+	F77_CSTRING): New macros to handle passing C character strings to
+	Fortran.
+
+2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* lapack-xtra/xdlamch.f: Begin lines with spaces, not tabs.
+
+	* misc/Makefile.in (machar.o, pic/machar.o): Specify output file
+	name in compile command.
+
+2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Adapt rules to use $(LIBPRE).
+
+2006-09-11  John W. Eaton  <jwe@octave.org>
+
+	* blas-xtra/xddot.f, blas-xtra/xzdotu.f: New files.
+
+2006-06-01  David Bateman  <dbateman@free.fr>
+
+	* slatec-fn/dpchim.f, slatec-fn/dpchst.f: New files.
+
+2006-05-22  John W. Eaton  <jwe@octave.org>
+
+	* lapack/dlantr.f, lapack/zlantr.f: New files.
+
+2006-05-03  David Bateman  <dbateman@free.fr>
+
+	* lapack/dpocon.f, lapack/zpocon.f, lapack/dpotrs.f,
+	lapack/zpotrs.f, lapack/dtrcon.f, lapack/ztrcon.f,
+	lapack/dtrtrs.f, lapack/ztrtrs.f: New files.
+
+2006-04-29  John W. Eaton  <jwe@octave.org>
+
+	* misc/lo-error.c (set_liboctave_warning_with_id_handler,
+	liboctave_warning_with_id): New functions.
+	(current_liboctave_warning_with_id_handler): New variable.
+	* misc/lo-error.h (liboctave_warning_with_id_handler): New typedef.
+	(current_liboctave_warning_with_id_handler, liboctave_warning_with_id
+	set_liboctave_warning_with_id_handler): Provide decls.
+
+2006-04-18  John W. Eaton  <jwe@octave.org>
+
+	* misc/f77-fcn.h (F77_XFCN): Move decls to beginning of blocks for C.
+
+2006-04-13  John W. Eaton  <jwe@octave.org>
+
+	* misc/quit.h BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_1,
+	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE): Omit unnecessary casts.
+	* misc/f77-fcn.h (F77_XFCN, F77_CHAR_ARG_LEN): Likewise.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* ranlib/wrap.f (dgenexp, dgengam, dignpoi): New functions.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* misc/f77-fcn.h (F77_XFCN): Save octave_interrupt_immediately and
+	restore it if an exception occurs that causes a longjmp.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* ranlib/ignbin.f, ranlib/ignpoi.f: Avoid arithmetic IF statements.
+
+2005-10-17  John W. Eaton  <jwe@octave.org>
+
+	* lapack/Makefile.in (dlamc1.o pic/dlamc1.o):
+	Add $(F77_FLOAT_STORE_FLAG) to FFLAGS.
+
+2005-09-23  John W. Eaton  <jwe@octave.org>
+
+	* misc/machar.c: Restore test code.
+
+2005-09-15  John W. Eaton  <jwe@octave.org>
+
+	* misc/quit.h Rename all win32_ symbols to w32.  Change all uses.
+
+2005-09-15  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (LN_S): Change to DESTDIR before LN_S to avoid
+	lack of symlinks under mingw.
+	* misc/cquit.c (w32_thread_setjmp_mutex, win32_signal_context,
+	win32_signal_to_raise, win32_main_thread_id, win32_main_thread,
+	win32_restore_thread): New static variables.
+	(win32_in_main_thread): Returns 1 if in main thread for win32.
+	(win32_reset_context): Reset context (longjmp style) for win32.
+	(win32_raise_in_main): Raise signal in main thread for win32.
+	(win32_raise): Raise signal for win32.
+	(win32_raise_final): Clean up win32 signalling.
+	(win32_sigint_init): Initialize win32 signalling.
+	* quit.h (win32_sigint_init, win32_raise_final, win32_raise,
+	win32_in_main_thread): Declaration.
+
+2005-09-14  Daniel  <durbano@shbano.com>
+
+	* lapack/zbdsqr.f: Fix typo in docs.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-05-06  John W. Eaton  <jwe@octave.org>
+
+	* lapack/dpotri.f, lapack/dlauum.f, lapack/dlauu2.f,
+	lapack/zpotri.f, lapack/zlauum.f, lapack/zlauu2.f: New files.
+
+2005-04-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in, Makerules.in (clean, distclean, maintainer-clean):
+	Avoid duplication in rules.
+
+2005-03-17  Andy Adler  <adler@site.uottawa.ca>
+
+	* Makerules.in (install-strip): Include double-colon target here too.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (bin-dist): Delete target.
+	(BINDISTLIBS, BINDISTFILES): Delete variables.
+
+2005-03-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (CRUFT_DIRS): Remove it from the list.
+	* odessa: Delete directory.
+
+	* misc/machar.c (rmachar): Declare local REAL variables volatile.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	* blas/zher.f: New file.
+
+	Sparse merge.
+
+	2005-01-13 David Bateman  <dbateman@free.fr>
+
+	* lapack/dgttrf.f lapack/dgttrs.f lapacl/zgttrf.f lapack/zgttrs.f:
+	new files
+
+	2005-01-23  David Bateman  <dbateman@free.fr>
+
+	* lapack/dgtsv.f lapack/dpbcon.f lapack/dpbtf2.f lapack/dpbtrf.f
+	lapack/dpbtrs.f lapack/dptsv.f lapack/dpttrf.f lapack/dpttrs.f
+	lapack/dptts2.f lapack/zgtsv.f lapack/zpbcon.f lapack/zpbtf2.f
+	lapack/zpbtrf.f lapack/zpbtrs.f lapack/zptsv.f lapack/zpttrf.f
+	lapack/zpttrs.f lapck/zptts2.f: New files.
+
+	2004-12-29  John W. Eaton  <jwe@octave.org>
+
+	* blas/zbtsv.f: New file.
+	* lapack/dgbcon.f, lapack/dgbtrf.f, lapack/dgbtrs.f,
+	lapack/dlatbs.f, lapack/zgbcon.f, lapack/zgbtf2.f,
+	lapack/zgbtrf.f, lapack/zgbtrs.f, lapack/zlatbs.f: New files.
+
+2005-02-10  John W. Eaton  <jwe@octave.org>
+
+	* misc/cquit.c (octave_signal_caught): New global variable.
+	* misc/quit.cc (occtave_handle_signal): New function.
+	(octave_signal_hook): New global pointer.
+	* misc/quit.h: Provide decls.
+	(OCTAVE_QUIT): Check octave_signal_caught, not
+	octave_interrupt_state, and call octave_handle_signal, not
+	octave_throw_interrupt_exception.
+
+2005-02-08  John W. Eaton  <jwe@octave.org>
+
+	* misc/quit.h: Use C-style comments.
+
+2004-09-08  John W. Eaton  <jwe@octave.org>
+
+	* misc/machar.c (rmachar): Use modern C declaration.
+
+2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/f77-fcn.c: Handle Cray, CVF, and f2c calling conventions.
+
+	* misc/f77-fcn.h (xstopx): Use F77_CHAR_ARG_DECL and
+	F77_CHAR_ARG_LEN_DECL in declaration.
+
+2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.h (OCTAVE_QUIT): Set octave_interrupt_state to -1
+	while we are handling interrupts.
+
+2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LINK_DEPS): Always define.
+
+2003-11-12  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/machar.c (machar) [CRAY]: Kluge to make it work.
+
+2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* odepack/dlsode.f: Rename from odepack/lsode.f.
+	* odepack/dlsode.f (DLSODE): Rename from LSODE to avoid name
+	conflict with LSODE class constructors on systems that upcase
+	Fortran names.
+
+	* odessa/dodessa.f: Rename from odessa/odessa.f.
+	* odessa/dodessa.f (DODESSA): Rename from ODESSA to avoid name
+	conflict with ODESSA class constructors on systems that upcase
+	Fortran names.
+
+2003-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (MISC_OBJ): Add misc/cquit.o to the list.
+
+	* misc/Makefile.in (SPECIAL_SRC): Add cquit.c to the list.
+	* misc/cquit.c: New file.
+	* misc/quit.cc: Move everything except octave_interrupt_hook,
+	octave_bad_alloc_hook, octave_throw_interrupt_exception, and
+	octave_throw_bad_alloc to cquit.c.
+
+2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
+	Move declarations outside of extern "C" block.
+
+2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/f77-fcn.h: Only use inline if this is C++.
+
+	* misc/f77-fcn.c (xstopx): Return type is now F77_RET_T.
+	Use F77_RETURN.
+	* misc/machar.c (machar): Likewise.
+
+	* misc/f77-fcn.h (F77_CHAR_ARG, F77_CONST_CHAR_ARG, F77_CHAR_ARG2,
+	F77_CONST_CHAR_ARG2, F77_CXX_STRING_ARG, F77_CHAR_ARG_LEN,
+	F77_CHAR_ARG_DECL, F77_CONST_CHAR_ARG_DECL, F77_CHAR_ARG_LEN_DECL,
+	F77_RET_T, F77_RETURN): New macros.
+	[F77_USES_CRAY_CALLING_CONVENTION]: New data conversion functions.
+
+	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
+	Move function pointer declarations inside __cplusplus section.
+
+2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Use $(INSTALL), not
+	$(INSTALL_PROGRAM) for $(SHLLIB) files.
+
+2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (CLEAN_SUBDIRS): New variable.
+	(clean mostlyclean distclean maintainer-clean): Use it to ensure
+	cleaning in all subdirs, not just those we build in.
+
+	* Makerules.in (maintainer-clean, distclean): Don't use
+	dependencies on double colon rules.
+	(distclean): Also remove *.d, *.a, *.o, pic/*.o, pic, and stmp-pic.
+	(maintainer-clean): Also remove *.d, *.a, *.o, pic/*.o, pic, and
+	stmp-pic, and Makefile.
+
+	* Makefile.in (maintainer-clean, distclean): Also remove *.$(SHLEXT).
+
+2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dasrt/ddasrt.f (DDASRT): Print correct message for invalid MXSTP.
+
+	* dassl/ddassl.f (DDASSL): Handle MXSTP as in DASRT.
+
+	* dassl/ddajac.f (DDAJAC): LIPVT is now 22.
+	* dassl/ddassl.f (DDASSL): Likewise.
+	* dassl/ddaslv.f (DDASLV): Likewise.
+
+	* misc/quit.h (octave_interrupt_hook, octave_bad_alloc_hook):
+	New function pointers.
+	* misc/quit.cc: Initialize them.
+	(octave_throw_interrupt_exception): If octave_interrupt_hook is
+	set, call it.
+	(octave_throw_bad_alloc): Likewise, for octave_bad_alloc_hook.
+
+	* dasrt/ddasrt.f (DDASRT): Set LMXSTP to 21 and LIPVT to 22 to
+	avoid conflict with LLAST in DRCHECK.  Change docs for INFO(12)
+	and LIW.
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, misc/Makefile.in: Handle DESTDIR.
+
+2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* blas/sgemm.f, blas/strsm.f, blas/ssyrk.f, blas/sscal.f,
+	blas/sgemv.f, blas/sdot.f: New files.
+
+2003-02-20  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* dassl/ddaslv.f: Fortran doesn't use ; in statements.
+
+2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* blas/dtbsv.f: New file.
+	* lapack/dlatrs.f, lapack/dtrti2.f, lapack/dtrtri.f, lapack/ztrti2.f,
+	lapack/ztrtri.f: New files.
+
+2003-02-04  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (CRUFT_DIRS): Remove linpack from list.
+
+	* linpackdgbfa.f, linpackdgbsl.f, linpackdgeco.f, linpackdgedi.f,
+	linpackdgefa.f, linpackdgesl.f, linpackspofa.f, linpackzgeco.f,
+	linpackzgedi.f, linpackzgefa.f, linpackzgesl.f: Delete.
+
+	* dassl/ddajac.f, dassl/ddaslv.f:  Use DGxTRF and
+	DGxTRS instead of DGxFA and DGxSL.
+	* daspk/ddaspk.f, daspk/dmatd.f, daspk/dslvd.f: Likewise.
+	* odepack/lsode.f, odepack/prepj.f, odepack/solsy.f: Likewise.
+	* odessa/odessa.f, odessa/odessa_prepj.f, odessa/odessa_solsy.f:
+	Likewise.
+	* libcrudt/ranlib/setgmn.f: Use SPOTRF instead of SPOFA.
+
+	* lapack/dgbtf2.f, lapack/dgbtrf.f, lapack/dgbtrs.f,
+	lapack/dgecon.f, lapack/dgetri.f, lapack/spotf2.f,
+	lapack/spotrf.f, lapack/zgecon.f, lapack/zgetri.f: New files.
+
+2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.h (BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_1,
+	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_2): New macros.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* odessa/odessa_rscom.f (ODESSA_RSCOM): Fix apparent typo (LODE2
+	should probably be LIODE2).
+
+	* Makerules.in (clean, mostlyclean): Also remove *.d.
+
+	* misc/quit.cc: Add std:: qualifiers to memcpy calls.
+
+2003-01-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* misc/quit.h: Move #include <new> outside extern "C" block.
+	* misc/f77-fcn.h: Move #include "quit.h" outside extern "C" block.
+
+2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.h (BEGIN_INTERRUPT_WITH_EXCEPTIONS,
+	END_INTERRUPT_WITH_EXCEPTIONS): Only define for C++ source.
+	Include <new> for C++ source.
+
+2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.h, misc/quit.cc [! USE_EXCEPTIONS_FOR_INTERRUPTS]):
+	Always use exceptions for handling interrupts.
+	(BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE):
+
+	* misc/quit.h (OCTAVE_TRY_WITH_INTERRUPTS, OCTAVE_THROW_BAD_ALLOC,
+	OCTAVE_CATCH_INTERRUPTS, SAVE_OCTAVE_INTERRUPT_IMMEDIATELY,
+	INCREMENT_OCTAVE_INTERRUPT_IMMEDIATELY, OCTAVE_THROW_TO_TOP_LEVEL,
+	DECREMENT_OCTAVE_INTERRUPT_IMMEDIATELY, OCTAVE_JUMP_TO_TOP_LEVEL,
+	SET_OCTAVE_INTERRUPT_IMMEDIATELY): Replace all uses with
+	definitions, delete macros.
+
+2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/quit.cc (octave_allocation_error): New variable.
+	(octave_throw_bad_alloc): New function.
+	* misc/quit.h: Provide decls.
+	(OCTAVE_THROW_BAD_ALLOC): New macro.
+	(END_INTERRUPT_WITH_EXCEPTIONS): Also catch bad_alloc.
+	* misc/f77-fcn.h (F77_XFCN): Handle allocation errors.
+
+	* misc/quit.h (octave_jmp_buf): New typedef.
+	(current_context): Type is now octave_jmp_buf.
+	(octave_set_current_context): Use sigsetjmp if we have it.
+	(octave_interrupt_immediately, octave_interrupt_state): Type is
+	now sig_atomic_t.
+	(BEGIN_INTERRUPT_WITH_EXCEPTIONS, END_INTERRUPT_WITH_EXCEPTIONS):
+	New macros.
+
+	* misc/quit.cc (octave_jump_to_enclosing_context): Use siglongjmp
+	if we have it.
+	(octave_save_current_context, octave_restore_current_context): Use
+	octave_jmp_buf type here.
+
+2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in: Handle automatic dependency generation for
+	C/C++ source files.
+
+	* misc/quit.h (INCREMENT_OCTAVE_INTERRUPT_IMMEDIATELY,
+	DECREMENT_OCTAVE_INTERRUPT_IMMEDIATELY,
+	SET_OCTAVE_INTERRUPT_IMMEDIATELY): New macros.
+	(BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE,
+	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE): Use them.
+	* f77-fcn.h (F77_XFCN): Likewise.
+
+	* misc/quit.cc: Include <cstring> for memcpy decl.
+
+2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/f77-fcn.h (F77_XFCN): Adapt to new signal/exception
+	handling scheme.
+	(f77_context): Delete decl.
+	(copy_f77_context): Likewise.
+	* misc/f77-fcn.cn (copy_f77_context): Delete.
+	(Fxstopx): Set f77_exception_encountered.
+	Use octave_jump_to_enclosing_context, not longjmp.
+
+	* misc/f77-extern.cc (f77_context): Delete definition.
+
+	* misc/quit.h, misc/quit.cc: New files.
+	* misc/Makefile: Add them to the appropriate lists.
+
+	* Makefile (MISC_OBJ): Add misc/quit.o
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* odessa/odessa.f (ODESSA): Second arg of xerrwd is string length.
+	* odessa/odessa_intdy.f (ODESSA_INTDY): Likewise.
+
+2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dasrt/ddasrt.f (DDASRT): Fix computation of LENRW.
+
+2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install): Don't bother with versions for $(SHLBIN)
+	files.
+
+	* slatec-err/xerrwd.f (XERRWD): Print msg(1:nmes), not just msg.
+
+2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install): No need to use cd to create links.
+
+2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: Use link dependencies for shared libs if
+	INCLUDE_LINK_DEPS.
+	(LIBRARIES): If doing shared libs, include versioned library in	list.
+	(libcruft.$(SHLEXT), libcruft.$(SHLEXT_VER)): Reverse actions --
+	build unversioned library, symbolic link adds version info.
+	(install, uninstall): Handle link and load forms of the library
+	separately.
+
+2002-09-30  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* slatec-fn/xdacosh.f: Mark external functions as external.
+	* slatec-fn/xdasinh.f: Ditto.
+	* slatec-fn/xdatanh.f: Ditto.
+	* slatec-fn/xdbetai.f: Ditto.
+	* slatec-fn/xderf.f: Ditto.
+	* slatec-fn/xderfc.f: Ditto.
+	* slatec-fn/xdgami.f: Ditto.
+	* slatec-fn/xdgamit.f: Ditto.
+	* slatec-fn/xdgamma.f: Ditto.
+	* slatec-fn/xgmainc.f: Ditto.
+
+2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* odessa/odessa.f (ODESSA): Use XERRWD instead of XERR.
+	* odessa/intdy.f (ODESSA_INTDY): Likewise.
+	* odessa_rscom.f (ODESSA_RSCOM): Delete unused common block EH0001.
+	* odessa_svcom.f (ODESSA_SVCOM): Likewise.
+
+	* dasrt/xerrwv.f, odepack/xerrwv.f: Delete.
+	* slatec-err/xerrwd.f (XERRWD): Call XSTOPX instead of using STOP.
+
+	* quadpack/dqagi.f (DQAGI): Replace Hollerith constants with
+	character string constants.
+	* quadpack/dqagp.f (DQAGP): Likewise.
+	* odepack/lsode.f (LSODE): Likewise.
+
+	* odepack/lsode.f (LSODE): Use XERRWD instead of XERRWV.
+	* odepack/intdy.f (INTDY): Likewise.
+	* dasrt/ddasrt.f (DDASRT): Likewise.
+	* quadpack/xerror.f (XERROR): Likewise.
+
+2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/xgmainc.f: New file.
+
+2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dasrt: New subdirectory.
+	* Makefile.in (CRUFT_DIRS): Add it to the list.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* odessa: New subdirectory.
+	* Makefile.in (CRUFT_DIRS): Add it to the list.
+
+2002-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-err/xermsg.f (XERMSG): If MAXMES .LT. 0, messages may be
+	printed an unlimited number of times.
+	* slatec-err/j4save.f (J4SAVE) Default for MAXMES is now -1.
+
+	* misc/f77-fcn.c (xstopx): Pass args in proper order.
+
+2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ordered-qz/dsubsp.f (DSUBSP): Delete decl for unused variable J.
+
+	* misc/f77-fcn.c (xstopx): Return type is void, not volatile void.
+	* misc/f77-fcn.h (xstopx): Provide decl.  Add special gcc noreturn
+	attribute here.
+
+2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/f77-fcn.h: Define F77_FCN for backward compatibility.
+
+2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-err/ixsav.f, slatec-err/xerrwd.f: New files.
+
+	* daspk: New directory.
+	* Makefile.in (CRUFT_DIRS): Add it to the list
+
+2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* misc/machar.c: Use F77_FUNC instead of checking
+	F77_APPEND_UNDERSCORE.
+	* misc/f77-fcn.h: Don't define F77_FCN.
+	(xSTRINGIZE, STRINGIZE): New macros.
+	(F77_XFCN_ERROR): Simplify by using STRINGIZE and F77_FUNC.
+	(F77_XFCN): Use F77_FUNC instead of F77_FCN.
+	* misc/f77-fcn.c: Use F77_FUNC instead of F77_FCN.
+
+2001-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTSUBDIRS): Add fftpack.
+
+2001-08-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lapack/dlasq3.f: Update from netlib.
+	* lapack/dlasq5.f: Ditto.
+
+2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Makefile.in (CRUFT_DIRS): Substitute @FFT_DIR@.
+
+2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install): Don't use mk-libdir-link.
+
+2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (CPICDEP): Remove pic/dostop.o from the list.
+
+2001-03-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/xstopx.f: Delete.
+	* misc/dostop.c: Delete.
+	* misc/Makefile.in (SPECIAL, SPECIAL_DEPEND): Delete dostop.c and
+	dostop.o from lists.
+	* Makefile.in (MISC_OBJ): Delete misc/dostop.o from the list.
+
+	* misc/dostop.c (dostop): Use F77_FCN macro for function definition.
+	Specify length in error format to avoid need for copying string.
+	From Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>.
+
+2000-12-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lapack/dgelss.f (DGELSS): Use correct leading dimension for
+	workspace array passed to dgemm and dlacpy.
+	(ZGELSS): Likewise, for calls to zgemm and zlacpy.
+
+2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTSUBDIRS): New macro.
+	(dist): Use it instead of SUBDIRS.
+
+2000-06-30  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* blas-xtra, lapack-xtra: New directories.
+	* Makefile.in (CRUFT_DIRS): Add them to the list.
+	Substitute @BLAS_DIR@ and @LAPACK_DIR@ here.
+	* blas-xtra/xerbla.f: Move here from blas subdirectory.
+	* blas-xtra/Makefile.in: New file.
+	* lapack-xtra/xdlamch.f, lapack-xtra/xdlange.f,
+	lapack-xtra/xzlange.f: Move here from lapack subdirectory.
+	* lapack-xtra/Makefile.in: New file.
+
+2000-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (install, uninstall): Include files go in
+	$(octincludedir)/octave, not just $(octincludedir).
+
+2000-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LIBRARIES): Conditionally define.
+	(libraries): Depend on $(SUBDIRS) only.
+	Make $(LIBRARIES) using a recursive invocation of make once
+	$(SUBDIRS) are up to date.
+	(.NOTPARALLEL): New target, for GNU Make 3.79.
+
+2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (libcruft.$(LIBEXT)): New target.
+	(all): Depend on `libraries', not `$(SUBDIRS) shared-lib'.
+	Conditionally construct `libraries' target.
+	(libcruft.$(SHLEXT_VER)): Delete target before rebuilding.
+	* Makerules.in (LIBCRUFT): Delete variable.
+	(LIBCRUFT_DEPEND): Conditionally define to $(LIBCRUFT_OBJS) only.
+	(all): Print warning if anything is done.
+	(stmp-pic): New target.
+	($CRUFT_PICOBJ): Depend on stmp-pic.
+	(clean, mostlyclean): Remove pic and stmp-pic.
+
+2000-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lapack/dbdsqr.f, lapack/dgeesv.f, lapack/dgelss.f,
+	lapack/dgesvd.f, lapack/dlasq1.f, lapack/dlasq2.f,
+	lapack/dlasq3.f, lapack/dlasq3.f, lapack/dlasq4.f,
+	lapack/dlasq5.f, lapack/dlasq6.f, lapack/zbdsqr.f,
+	lapack/zgelss.f, lapack/zgesvd.f, lapack/zhetd2.f:
+	Update from netlib.
+
+1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Update to Lapack version 3.0.
+	* lapack/ieeeck.f, lapack/dlasq2.f, lapack/dlasq3.f,
+	lapack/dlasq5.f, lapack/dlasq6.f: New files.
+
+1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/lo-error.cc (current_liboctave_warning_handler): Define	here.
+	(set_liboctave_warning_handler): New function.
+	(liboctave_warning): Ditto.
+	* misc/lo-error.h: Provide declararations for them here.
+
+1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (dist): Use `$(MAKE) -C dir' instead of `cd dir;
+	$(MAKE); cd ..'.
+
+1999-10-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dassl/dpotrf.f, dassl/dpotf2.f: Move to lapack subdirectory.
+
+Fri Mar 26 01:19:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makerules.in (all): Don't try to use a special rule for making
+	the archive.  The default rules may be slower, but they are also
+	correct.
+
+Wed Nov 11 17:27:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (CRUFT_DIRS): Add amos.  Delete specfun.
+	* specfun: Delete directory.
+	* amos: New directory
+
+Thu Oct 15 00:43:13 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ranlib: Update to newer version of randlib.
+	* ranlib/Makefile.in (SPECIAL): Update list.
+
+Thu Sep 24 11:59:02 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* balgen, eispack: Delete directories and unnecesary files.
+	* Makefile.in (CRUFT_DIRS): Delete eispack and balgen from the list.
+
+	* lapack/xdlamch.f: New file.
+
+	* ordered-qz: New directory.
+	* Makefile.in (CRUFT_DIRS): Add it to the list.
+
+	* lapack/dggbak.f, lapack/dtgevc.f, lapack/zggbal.f: New files.
+
+Tue Jun  2 09:57:52 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/rybesl.f (rybesl): Don't access by(2) unless nb .gt. 1.
+
+Mon May 11 12:33:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* fftpack/passb3.f, fftpack/passb5.f, fftpack/passf3.f,
+	fftpack/passf5.f: Use double precision constants in data
+	statements.
+
+Tue Apr 14 14:01:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/xdgamit.f (xdgamit): New file.
+
+Mon Apr  6 00:26:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/xdgami.f (xdgami): Reorder args to match dgami.
+
+Thu Feb 19 21:00:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/ribesl.f, specfun/rjbesl.f: Compute NSIG correctly.
+	Add missing comma in declaration statement.
+
+Sun Feb  1 12:39:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
+	Use $(mk-libdir-link).
+
+	* quadpack/dqagi.f, quadpack/dqagie.f, quadpack/dqagp.f,
+	quadpack/dqagpe.f, quadpack/dqk15i.f, quadpack/dqk21.f:
+	Make user-supplied code a subroutine instead of a function.
+
+Mon Jan 19 23:11:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lapack/xdlange.f, lapack/xzlange.f: New files.
+
+Mon Dec  1 00:51:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dassl/xerhlt.f, dassl/xermsg.f, dassl/xerprn.f, dassl/xgetua.f,
+	dassl/xsetua.f: Delete.
+
+	* slatec-err: New directory.
+	* Makefile.in: Add it to the list.
+
+Sun Nov 30 17:55:20 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/xdgami.f, slatec-fn/xdbetai.f, slatec-fn/xderfc.f,
+	slatec-fn/xderf.f, slatec-fn/xdatanh.f, slatec-fn/xdasinh.f,
+	slatec-fn/xdacosh.f: New files.
+
+Sat Nov 29 13:02:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/ribesl.f (ribesl): Use d1mach to get machine parameters.
+	SAVE static data between calls.  Use PARAMETERS where possible.
+	* specfun/rjbesl.f (rjbesl): Likewise.
+	* specfun/rkbesl.f (rkbesl): Likewise.
+	* specfun/rybesl.f (rybesl): Likewise.
+
+Fri Nov 28 14:05:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun: New subdirectory.
+	* specfun/Makefile.in, specfun/ribesl.f, specfun/rjbesl.f,
+	specfun/rkbesl.f, specfun/rybesl.f: New files.
+	* Makefile.in (CRUFT_DIRS): Add specfun.
+
+Wed Nov 26 01:49:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/d9gmit.f, slatec-fn/d9lgic.f, slatec-fn/d9lgit.f,
+	slatec-fn/dbetai.f, slatec-fn/dgami.f, slatec-fn/dgamit.f,
+	slatec-fn/dgamr.f, slatec-fn/dlbeta.f, slatec-fn/dlnrel.f:
+	New files for incomplete beta and incomplete gamma functions.
+
+Thu Jul 17 13:18:57 1997  Klaus Gebhardt  <gebhardt@crunch.ikp.physik.th-darmstadt.de>
+
+	* blas/xerbla.f (xerbla): Call XSTOPX instead of using STOP.
+
+Fri Jun  6 16:49:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* slatec-fn/xdgamma.f: New file.
+
+	* fsqp, npsol, qpsol: Delete directories.
+	* Makefile.in (CRUFT_DIRS): Delete fsqp, npsol, and qpsol from list.
+
+Thu Jun  5 01:40:36 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, Makerules.in: Make building of static library optional.
+	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
+
+	* Makerules.in (stamp-picdir): Delete.
+	(pic): New target.  Don't worry so much about creating pic
+	directory only when it is really needed.
+
+	* Makefile.in (stamp-shared): Delete.
+	(shared-lib): New target.  Depend on shared libraries directly.
+
+Wed May 21 16:29:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (install): Ensure include directory link is made.
+	(uninstall): Delete all installed files.
+
+Thu Mar 13 22:31:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* blas, lapack: Add new files for symmetric eigenvalue
+	computation.
+
+Wed Mar 12 16:59:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (install-strip): New target.
+
+	* Makefile.in (install-strip): New target.
+
+Mon Mar  3 15:38:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ranlib/Makefile.in (EXTERNAL_DISTFILES): Add Basegen.doc.
+
+	* fftpack/Makefile.in (EXTERNAL_DISTFILES): Add fftpack.doc.
+
+	* Makefile.in (DISTFILES): Add configure.in.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Wed Feb 26 12:08:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (maintainer-clean): Also remove configure.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.3 released.
+
+Fri Feb 14 16:23:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
+
+Thu Feb 13 17:33:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-shared): Use $(SH_LD) $(SH_LDFLAGS) instead
+	of $(CXX) -shared.
+
+	* Makerules.in (stamp-picdir): Silence noise about making pic.
+
+Mon Jan 27 15:52:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+Sat Jan 25 22:34:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, balgen/Makefile.in, blas/Makefile.in,
+	cfsqp/Makefile.in, dassl/Makefile.in, eispack/Makefile.in,
+	fftpack/Makefile.in, fsqp/Makefile.in, lapack/Makefile.in,
+	linpack/Makefile.in, minpack/Makefile.in, misc/Makefile.in,
+	npsol/Makefile.in, odepack/Makefile.in, qpsol/Makefile.in,
+	quadpack/Makefile.in, ranlib/Makefile.in, slatec-fn/Makefile.in,
+	villad/Makefile.in (bin-dist): New target.
+
+Wed Jan 22 15:03:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (pic/machar.o): Add $(CPICFLAG) for this target.
+
+	* misc/d1mach.f (d1mach): Move SAVE statement ahead of DATA statment.
+
+Wed Jan 15 21:04:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* blas/*.f: Update to latest version from Netlib.
+
+Tue Jan  7 00:17:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Tue Dec 17 11:02:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/lo-error.c: Convert C++-style comments to C-style comments.
+
+Wed Dec 11 01:50:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (SPECIAL_DEPEND): Delete d1mach.o from the list.
+
+Tue Dec 10 01:43:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+Fri Dec  6 15:23:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.94.
+
+Wed Nov 20 01:00:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (install): Also install lo-error.h.
+
+	* Makefile.in (MISC_OBJ): Add misc/f77-fcn.o.
+
+	* misc/lo-error.h: New file, moved here from liboctave.
+	* misc/lo-error.c: Rename from lo-error.cc.  Make this a C-file
+	instead of C++.
+
+	* Version 1.93.
+
+Tue Nov 19 23:04:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in: Add variables for installing things.
+
+	* Makerules.in (install, uninstall): Make these double colon rules.
+
+	* f77-fcn.c, f77-fcn.h: New files, from liboctave.
+
+	* misc/Makefile.in (SPECIAL_DEPEND): Add f77-fcn.o.
+	(SPECIAL): Add f77-fcn.c and f77-fcn.h.
+	(CPICDEP): Add pic/f77-fcn.o.
+	(install): Install f77-fcn.h in $(octincludedir).
+	(uninstall): Delete f77-fcn.h from $(octincludedir).
+
+	* Makerules.in (CRUFT_CSRC): Delete unsed variable.
+
+Thu Nov 14 00:07:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.92.
+
+Fri Nov  8 09:55:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (libcruft.a): Delete target.
+	* Makerules.in, Makefile.in: Use real archive rules to build
+	libcruft.a in parts.
+
+	* Makefile.in (install): Use $(INSTALL_PROGRAM) for installing
+	shared library.
+
+Thu Nov  7 12:43:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Add -lm when building shared library.
+
+	* Version 1.91.
+
+Mon Nov  4 10:09:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lapack/dlag2.f, lapack/dggbal.f, lapack/dgghrd.f, lapack/dhgeqz.f:
+	New files.
+
+	* Makefile.in (install): Use INSTALL_PROGRAM for shared version of
+	libcruft.
+
+Sun Nov  3 19:37:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in (distclean): Delete target, since there is
+	nothing special to do.
+
+Wed Oct 30 17:20:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+	* misc/Makefile.in: Make pic/machar.o using special rule.
+	Use CPPFLAGS, not CPP_FLAGS.
+
+Thu Oct 24 20:22:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (CRUFT_OBJ): No special treatment for d1mach.o.
+
+	* misc/machar.c, misc/d1mach.f: New files
+	* misc/Makefile.in: Fix to not generate d1mach.f.
+
+Mon Oct 14 11:07:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean): Remove stamp-shared too.
+
+Sat Oct 12 00:20:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (maintainer-clean): Don't depend on distclean.
+	* Makerules.in (maintainer-clean): Ditto.
+
+Tue Aug 20 22:09:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makerules.in (stamp-picdir): Only create a pic subdirectory if
+	SHARED_LIBS is true AND FPICFLAG is not empty.
+
+Wed May 22 15:07:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-shared): Use CC, not CXX to create shared
+	library.  Also use SHARED_FLIBS here instead of FLIBS.
+
+Sat Apr  6 21:28:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makerules.in (clean, mostlyclean): Also remove pic/*.o.
+	(maintainer-clean, distclean): Also remove stamp-picdir and pic
+	directory.
+
+Wed Apr  3 01:01:31 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/Makefile.in: Set SPECIAL_PICDEPEND after including Makeconf
+	and before including Makerules.
+
+Fri Mar 29 13:45:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean): Delete so_locations, which is created
+	on DEC Alpha systems.
+	(distclean, maintainer-clean): Don't depend on clean.
+
+Wed Mar 27 05:59:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makerules.in: Add rules for making PIC code here.
+	* Makefile.in (libcruft.a): Depend on $(CRUFT_PICOBJ)
+	* misc/Makefile.in: Add rules for making PIC code from C and C++
+	files.
+
+Fri Feb  9 21:04:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/f77-extern.cc, misc/lo-error.cc: New files.
+	* misc/Makefile.in (SPECIAL, SPECIAL_DEPEND): Add them to the lists.
+	* Makefile.in (CRUFT_OBJ): Add it f77-extern.o and lo-error.o here
+	too.
+
+Sat Feb  3 07:57:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/dostop.c (dostop): Call error handler if we have a message.
+	Call longjmp on f77_context, not jump_to_top_level().
+	* misc/xstopx.f (xstopx): Pass non-blank strings on to dostop.
+
+Mon Jan  8 22:55:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): If $(SHARED_LIBS), remove shared libs.
+	(mostlyclean): Ditto.
+
+Fri Dec 29 21:43:24 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, Makerules.in: Handle creating position independent
+	code and shared libraries for Octave.
+
+Tue Dec 26 00:15:31 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makerules.in (stamp-picdir): New target.
+	(all): Depend on it.
+
+	* Makefile.in: Delete references to configure stuff.
+	* configure.in, mkinstalldirs: Delete.
+
+Sun Dec 24 02:42:29 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linpack/spofa.f: New file.
+	* blas/level-1/sdot.f: New file.
+	* blas/level-2/dsyr.f: New file.
+
+Thu Dec 14 02:34:19 1995  Rick Niles  <niles@axp745.gsfc.nasa.gov>
+
+	* fftpack/cfftb1.f, fftpack/cfftf1.f, fftpack/cffti1.f,
+	odepack/prepj.f, odepack/solsy.f, odepack/stode.f:
+	Avoid warnings for nonstandard dimension statements of the form
+	`real foo(1)' by using `real foo(*)' instead.
+
+Mon Nov  6 07:24:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/dostop.c: Only call jump_to_top_level() if OCTAVE_SOURCE.
+
+Fri Nov  3 11:08:31 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* misc/dostop.c: Just call jump_to_top_level() directly here.
+
+Wed Sep 20 00:01:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkinstalldirs: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+	* Makerules.in: Fix cleaning rules.  Use double colon so we can
+	add things in the makefiles in the subdirectories.
+
+	* Makefile.in (DISTFILES): Distribute configure.in and configure.
+	(distclean): Also remove Makerules, config.log, and config.status.
+	(maintainer-clean): Depend on distclean.
+
+Mon Apr 10 09:55:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: New file.
+
+Fri Mar 10 10:38:29 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (install uninstall clean mostlyclean distclean
+	realclean): Use SUBDIR_FOR_COMMAND.  Combine actions.
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/liboctave-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,14984 @@
+2011-04-01  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* MatrixType (MatrixType::operator =): Plug memory leak due to
+	improper handling of perm array (bug #32804).
+
+2011-03-29  Rik  <octave@nomad.inbox5.com>
+
+	* Array.cc (diag): Treat empty vector (1x0 or 0x1) as valid input.
+	Improves Matlab compatibility (bug #32901).
+
+2011-02-13  David Bateman  <dbateman@free.fr>
+
+	* Sparse-perm-op-defs.h (template <typename SM>
+	SM octinternal_do_mul_colpm_sm (const octave_idx_type *,
+	const SM&)): Ensure that the row indices are sorted.
+
+2011-03-14  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* Sparse.cc (Sparse<T>::alloc) Change std::copy_backward to
+	std::copy, since the destination is at the back and not the
+	front. Bug #32747, cf. entry from 2010-11-25
+
+2011-02-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-alloc.h: Include <cstddef>.
+	From Orion Poplawski <orion@cora.nwra.com>.
+
+2011-02-06  John W. Eaton  <jwe@octave.org>
+
+	* PermMatrix.cc (operator*): Fix mixed row/column permutation
+	case.  Bug #32346.
+
+2011-02-04  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Undo accidental checkin
+
+2011-02-03  John W. Eaton  <jwe@octave.org>
+
+	* cmd-hist.cc (gnu_history::do_process_histcontrol):
+	Rename from command_history::do_process_histcontrol.
+	(gnu_history::do_histcontrol): Rename from
+	command_history::do_histcontrol.
+	* cmd-hist.h (command_history::do_histcontrol): Provide dummy version.
+	* cmd-hist.cc (command_history::do_process_histcontrol): Likewise.
+	Bug #32325.
+
+2011-02-02  John W. Eaton  <jwe@octave.org>
+
+	* Range.cc (Range::Range (double, double, octave_idx_type)):
+	Correctly compute limit from base, increment and number of
+	elements.  Bug #32321.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::assign (const idx_vector&, const idx_vector&,
+	const Sparse<T>&)): Handle case of LHS originally empty, and
+	with non-colon indices.  Fix typo in previous change.  Bug #32263.
+
+2011-01-30  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* lo-sysdep.cc (opendir): On error, free allocated DIR object
+	before returning.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* eigs-base.cc: Remove #endif corresponding to "#ifdef HAVE_ARPACK",
+	not the one that matched "#if !defined (CXX_NEW_FRIEND_TEMPLATE_DECL)".
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* eigs-base.cc (EigsRealNonSymmetricFunc,
+	EigsRealNonSymmetricMatrix, EigsRealNonSymmetricMatrixShift):
+	Initialize eig_vec2 to 0 before calling dneupd.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* eigs-base.cc: Assume we have ARPACK.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::assign (const idx_vector&, const idx_vector&,
+	const Sparse<T>&)): Allow 0x0 LHS with colon dimensions to
+	inherit dimensions from RHS.  Fix tests.  Bug #32263.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-refcount.h: Strip trailing whitespace.
+
+2011-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* SparseQR.h (class SparseQR::SparseQR_reps): Disallow copying.
+	* Array.cc (class rec_permute_helper, class rec_index_helper,
+	class  rec_resize_helper): Likewise.
+	* cmd-edit.cc (class default_command_editor): Likewise.
+
+2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-refcount.h: New source.
+	* Makefile.am: Add it here.
+
+	* Array.h: Use octave_refcount for refcounting.
+	* Sparse.h: Ditto.
+	* SparseCmplxQR.h: Ditto.
+	* SparseQR.h: Ditto.
+	* idx-vector.h: Ditto.
+	* oct-shlib.h: Ditto.
+	* sparse-base-chol.h: Ditto.
+
+2011-01-21  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* oct-fftw.h (class octave_fftw_planner): Disallow copying
+	(class octave_float_fftw_planner): Likewise.
+	* oct-sort.h (class octave_sort): Likewise.
+	(struct oct_sort::MergeState): Likewise.
+	* SparseCmplxQR.h (class SparseComplexQR::SparseComplexQR_rep):
+	Likewise.
+	* sparse-base-chol.h (class sparse_base_cho::sparse_base_chol_rep):
+	Likewise.
+
+2011-01-21  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (xgemm): Initialize output matrix for call to ZHERK.
+	* fCMatrix.cc (xgemm): Initialize output matrix for call to CHERK.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Array-b.cc, Array-d.cc, Array-f.cc, Array-util.cc,
+	Array-util.h, Array.cc, Array.h, Array3.h, CColVector.cc,
+	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
+	CMatrix.h, CNDArray.cc, CNDArray.h, CSparse.cc, CSparse.h,
+	CmplxAEPBAL.cc, CmplxAEPBAL.h, CmplxCHOL.cc, CmplxGEPBAL.cc,
+	CmplxGEPBAL.h, CmplxHESS.cc, CmplxLU.h, CmplxQR.cc, CmplxQR.h,
+	CmplxSCHUR.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DASPK.cc,
+	DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h, DET.h,
+	DiagArray2.h, EIG.cc, LSODE.cc, MArray.cc, MArray.h,
+	MDiagArray2.cc, MDiagArray2.h, MSparse.cc, MSparse.h,
+	MatrixType.cc, MatrixType.h, ODESFunc.h, PermMatrix.cc,
+	PermMatrix.h, Quad.cc, Range.cc, Sparse.cc, Sparse.h,
+	SparseCmplxCHOL.cc, SparseCmplxCHOL.h, SparseCmplxLU.cc,
+	SparseCmplxLU.h, SparseCmplxQR.cc, SparseCmplxQR.h, SparseQR.cc,
+	SparseQR.h, SparsedbleCHOL.cc, SparsedbleCHOL.h,
+	SparsedbleLU.cc, SparsedbleLU.h, base-aepbal.h, base-de.h,
+	base-lu.cc, base-lu.h, boolNDArray.cc, boolNDArray.h,
+	boolSparse.cc, boolSparse.h, bsxfun-defs.cc, chMatrix.cc,
+	chNDArray.cc, chNDArray.h, cmd-edit.cc, cmd-edit.h, cmd-hist.cc,
+	dColVector.h, dDiagMatrix.cc, dDiagMatrix.h, dMatrix.cc,
+	dMatrix.h, dNDArray.cc, dNDArray.h, dSparse.cc, dSparse.h,
+	dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleGEPBAL.cc,
+	dbleGEPBAL.h, dbleQR.cc, dbleQR.h, dbleSCHUR.h, dbleSVD.h,
+	dim-vector.cc, dim-vector.h, dir-ops.cc, eigs-base.cc,
+	f2c-main.c, fCColVector.cc, fCColVector.h, fCDiagMatrix.cc,
+	fCDiagMatrix.h, fCMatrix.cc, fCMatrix.h, fCNDArray.cc,
+	fCNDArray.h, fCRowVector.cc, fCRowVector.h, fCmplxAEPBAL.cc,
+	fCmplxAEPBAL.h, fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxGEPBAL.h,
+	fCmplxHESS.cc, fCmplxLU.h, fCmplxQR.cc, fCmplxQR.h,
+	fCmplxQRP.cc, fCmplxSCHUR.cc, fCmplxSVD.h, fColVector.h,
+	fDiagMatrix.cc, fDiagMatrix.h, fEIG.cc, fMatrix.cc, fMatrix.h,
+	fNDArray.cc, fNDArray.h, file-ops.cc, file-stat.cc,
+	floatAEPBAL.cc, floatAEPBAL.h, floatCHOL.cc, floatCHOL.h,
+	floatGEPBAL.cc, floatGEPBAL.h, floatLU.h, floatQR.cc, floatQR.h,
+	floatQRP.cc, floatSCHUR.h, floatSVD.h, idx-vector.cc,
+	idx-vector.h, intNDArray.cc, intNDArray.h, kpse.cc,
+	lo-array-gripes.cc, lo-array-gripes.h, lo-cieee.c, lo-ieee.h,
+	lo-mappers.cc, lo-mappers.h, lo-specfun.cc, mx-defs.h,
+	mx-inlines.cc, oct-binmap.h, oct-convn.cc, oct-env.cc,
+	oct-fftw.cc, oct-fftw.h, oct-glob.cc, oct-group.h,
+	oct-inttypes.cc, oct-inttypes.h, oct-locbuf.cc, oct-locbuf.h,
+	oct-md5.cc, oct-mem.h, oct-norm.cc, oct-norm.h, oct-rand.cc,
+	oct-rand.h, oct-rl-hist.c, oct-shlib.cc, oct-shlib.h,
+	oct-sort.cc, oct-sort.h, oct-spparms.cc, oct-spparms.h,
+	oct-syscalls.cc, oct-time.cc, randgamma.c, randmtzig.c,
+	randmtzig.h, randpoisson.c, regex-match.cc, regex-match.h,
+	sparse-base-chol.cc, sparse-base-chol.h, sparse-base-lu.cc,
+	sparse-base-lu.h, sparse-dmsolve.cc, sparse-sort.cc,
+	sparse-sort.h, sparse-util.h, tempname.c:
+	Strip trailing whitespace.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Array.h, Array.cc
+	(Array<T>::resize2 (octave_idx_type, octave_idx_type, const T&)):
+	New private function.
+	(Array<T>::resize (octave_idx_type, octave_idx_type, const T&)):
+	Deprecate.  Call resize2 to do the work.  Remove all uses from
+	Octave.
+
+	* CMatrix.h (ComplexMatrix::resize (octave_idx_type,
+	octave_idx_type, const Complex&)): New function.
+	* dMatrix.h (Matrix::resize (octave_idx_type,
+	octave_idx_type, double)): New function.
+	* fCMatrix.h (FloatComplexMatrix::resize (octave_idx_type,
+	octave_idx_type, const FloatComplex&)): New function.
+	* fMatrix.h (FloatMatrix::resize (octave_idx_type,
+	octave_idx_type, const float)): New function.
+
+2011-01-20  David Bateman  <dbateman@free.fr>
+
+	* Sparce.cc (template <class T> Sparse<T>::Sparse (const Array<T>&,
+	const idx_vector&, const idx_vector&, octave_idx_type,
+	octave_idx_type, bool, octave_idx_type): Fix off by one error in the
+	construction of sparse column vectors. Fix indexing issue in
+	construction of sparse row vectors.
+	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::any (int) const):
+	Fully initialize cidx for any called on the first dimension.
+
+2011-01-19  John W. Eaton  <jwe@octave.org>
+
+	* Array.h (explicit Array (octave_idx_type, const T&)):
+	Restore constructor, but mark as deprecated.
+	(explicit Array (octave_idx_type, octave_idx_type)): Delete.
+	(Array (const Array<T>&, octave_idx_type, octave_idx_type)): Delete.
+	Fix all uses in Octave.
+	* Array3.h: Deprecate header file.  Remove all uses from Octave.
+
+2011-01-19  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.cc (mode_as_string): Declare buffer as an array of
+	12 characters, not 11.  Don't set buf[10] to '\0'; strmode
+	NUL-terminates the array.
+
+2011-01-14  David Grundberg  <individ@acc.umu.se>
+
+	* SparseQR.cc (SparseQR_rep::SparseQR_rep) [HAVE_CXSPARSE]:
+	Make initialization list depend on macro. Fixes compile error when
+	macro isn't defined.
+	* SparseCmplxQR.cc (SparseComplexQR_rep::SparseComplexQR_rep)
+	[HAVE_CXSPARSE]: Ditto.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (xfloor): Move function body here from
+	lo-mappers.h to avoid exposing gnulib:: in a header file.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.cc (mode_as_string): Call strmode instead of mode_string.
+
+	* filemode.h, filemode.c: Delete.
+	* Makefile.am (INCS): Remove filemode.h from the list.
+	(LIBOCTAVE_C_SOURCES): Remove filemode.c from the list.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* CColVector.cc, CMatrix.cc, CRowVector.cc, CSparse.cc,
+	CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxLU.cc, CmplxQR.cc,
+	CmplxQRP.cc, EIG.cc, Quad.cc, dColVector.cc, dMatrix.cc,
+	dRowVector.cc, dSparse.cc, dbleAEPBAL.cc, dbleCHOL.cc,
+	dbleLU.cc, dbleQR.cc, dbleQRP.cc, eigs-base.cc, fCColVector.cc,
+	fCMatrix.cc, fCNDArray.cc, fCRowVector.cc, fCmplxAEPBAL.cc,
+	fCmplxCHOL.cc, fCmplxLU.cc, fCmplxQR.cc, fCmplxQRP.cc,
+	fCmplxSVD.cc, fColVector.cc, fEIG.cc, fMatrix.cc, fNDArray.cc,
+	fRowVector.cc, floatAEPBAL.cc, floatCHOL.cc, floatLU.cc,
+	floatQR.cc, floatQRP.cc, lo-specfun.cc, oct-convn.cc:
+	Style fixes.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (get_blas_trans_arg): Return char, not char *.
+	Change all uses.
+	* dMatrix.cc (get_blas_trans_arg): Likewise.
+	* fCMatrix.cc (get_blas_trans_arg): Likewise.
+	* fMatrix.cc (get_blas_trans_arg): Likewise.
+	Suggested by Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* filemode.c: Use prototypes for function definitions.  Reorder
+	functions to eliminate need for forward declarations.
+	* filemode.h: New file.
+	* file-stat.cc: Include filemode.h instead of using local extern
+	declarations.
+	* Makefile.am (INCS): Add filemode.h to the list.
+
+	* lo-cutils.h: New file.
+	(octave_qsort, octave_strcasecmp, octave_strncasecmp,
+	octave_w32_library_search, octave_waitpid): Move decls here from
+	lo-utils.h.
+	* Makefile.am (INCS): Add lo-cutils.h to the list.
+	* lo-utils.h: Include cutils.h.
+	* lo-cutils.c: Include cutils.h.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* SparseCmplxQR.cc
+	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
+	Correct order of member initialization.
+	* SparseQR.cc (SparseQR::SparseQR_rep::SparseQR_rep): Likewise.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-fftw.cc (octave_fftw_planner::octave_fftw_planner,
+	octave_float_fftw_planner::octave_float_fftw_planner):
+	Avoid duplicate initializations.  Correctly initialize RN to
+	empty dim_vector.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse::Sparse): Initialize all data members in
+	initialization lists.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (rec_permute_helper::rec_permute_helper,
+	rec_index_helper::rec_index_helper,
+	rec_resize_helper::rec_resize_helper): Initialize all data
+	members in initialization lists.
+
+	* Array.h, Array.cc (Array::Array): Initialize slice_data and
+	slice_len in memeber initialization lists.
+	(Array::~Array): Now virtual.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-locbuf.h (octave_chunk_buffer::~octave_chunk_buffer):
+	Now virtual.
+	(class octave_local_buffer, class octave_chunk_buffer):
+	Don't allow copying or assignment.
+
+	* file-stat.h (base_file_stat::~base_file_stat):
+	Now protected and virtual.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* base-lu.h (base_lu::base_lu): Initialize all data members in
+	initialization lists.
+	* base-qr.h (base_qr::base_qr): Likewise.
+	* DET.h (base_det::base_det): Likewise.
+	* sparse-base-lu.h (sparse_base_lu::sparse_base_lu): Likewise.
+	* sparse-base-chol.h (sparse_base_chol::sparse_base_chol): Likewise.
+
+	* base-lu.h (base_lu::~base_lu): Explicitly define virtual destrutor.
+	* base-qr.h (base_qr::~base_qr): Likewise.
+	* base-aepbal.h (base_aepbal::~base_aepval): Likewise.
+	* sparse-base-lu.h (sparse_base_lu::~sparse_base_lu): Likewise.
+	* sparse-base-chol.h (sparse_base_chol::~sparse_base_chol): Likewise.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* DAE.h (DAE::~DAE): Now virtual.
+	* DAERT.h (DAERT::~DAERT): Likewise.
+	* ODE.h (ODE::~ODE): Likewise.
+	* DAEFunc.h (DAEFunc::~DAEFunc): Likewise.
+	* DAERTFunc.h (DAEFunc::~DAEFunc): Likewise.
+	* ODEFunc.h (ODE::~ODE): Likewise.
+	* ODESFunc.h (ODESFunc::~ODESFunc): Likewise.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.h (idx_vector_rep::idx_vector_rep,
+	idx_vector::idx_mask_rep::idx_mask_rep):
+	Initialize all data members in initialization lists.
+
+	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep):
+	Initialize data in member initialization list.
+	(class idx_base_rep, class idx_colon_rep, class idx_range_rep,
+	class idx_scalar_rep, class idx_vector_rep, class idx_mask_rep):
+	Don't allow assignment.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* LSODE.h (class LSODE): Delete pointer data members.
+	(LSODE::LSODE): Initialize all data members in initialization lists.
+	* LSODE.cc (LSODE::integrate): Extract pointers to data from
+	array data members at each call.
+
+	* DASPK.h (class DASPK): Delete pointer data members.
+	(DASPK::DASPK): Initialize all data members in initialization lists.
+	* DASPK.cc (DASPK::integrate): Extract pointers to data from
+	array data members at each call.
+
+	* DASSL.h (class DASSL): Delete pointer data members.
+	(DASSL::DASSL): Initialize all data members in initialization lists.
+	* DASSL.cc (DASSL::integrate): Extract pointers to data from
+	array data members at each call.
+
+	* DASRT.h (class DASRT): Delete pointer data members.
+	(DASRT::DASRT): Initialize all data members in initialization lists.
+	* DASRT.cc (DASRT::integrate): Extract pointers to data from
+	array data members at each call.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* kpse.cc (struct str_llist_elt, struct cache_entry):
+	Explicitly define constructor and destructor.
+
+	* Quad.h (Quad::Quad, IndefQuad::IndefQuad,
+	FloatIndefQuad::FloatIndefQuad): Initialize all data members in
+	initialization lists.
+	* CollocWt.h (CollocWt::CollocWt): Likewise.
+	* oct-time.h (octave_strptime::octave_strptime): Likewise.
+	* oct-time.cc (octave_time::octave_time): Likewise.
+	* pathsearch.h (dir_path::dir_path): Likewise.
+	* regex-match.h (regex_match::regex_match): Likewise.
+	* oct-sort.h (octave_sort::MergeState::MergeState): Likewise.
+	* oct-shlib.h, oct-shlib.cc (octave_shlib::shlib_rep::shlib_rep,
+	octave_shlib::octave_shlib): Likewise.
+	* oct-mutex.h, oct-mutex.cc (octave_mutex::octave_mutex): Likewise.
+	* MatrixType.cc (MatrixType::MatrixType): Likewise.
+	* oct-fftw.cc (octave_fftw_planner::octave_fftw_planner,
+	octave_float_fftw_planner::octave_float_fftw_planner): Likewise.
+
+	* mach-info.h, mach-info.cc (oct_mach_info::oct_mach_info):
+	Initialize all data members in initialization lists.
+	(ten_little_endians): Rename from oct_mach_info::ten_little_endians.
+	Now static instead of private member function
+	(get_float_format): Rename from oct_mach_info::init_float_format.
+	Now static instead of private member function.
+
+	* dir-ops.h, dir-ops.cc (dir_entry::copy): Delete.
+	(dir_entry::dir_entry): Initialize all data members in
+	initialization lists.
+	(dir_entry::operator =): Copy elements directly here instead of
+	calling copy.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* cmd-hist.h, cmd-hist.cc: Sprinkle with const.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* CmplxCHOL.h (ComplexCHOL::ComplexCHOL): Initialize all data
+	members in constructor initialization lists.
+	* CmplxGEPBAL.h (ComplexGEPBALANCE::ComplexGEPBALANCE): Likewise.
+	* CmplxHESS.h (ComplexHESS::ComplexHESS): Likewise.
+	* CmplxSCHUR.h, CmplxSCHUR.cc (ComplexSCHUR::ComplexSCHUR): Likewise.
+	* CmplxSVD.h (ComplexSVD::ComplexSVD): Likewise.
+	* DET.h (base_det::base_det): Likewise.
+	* EIG.h (EIG::EIG): Likewise.
+	* SparseCmplxQR.cc
+	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
+	Likewise.
+	* SparseQR.cc (SparseQR::SparseQR_rep::SparseQR_rep): Likewise.
+	* dbleCHOL.h (CHOL::CHOL): Likewise.
+	* dbleGEPBAL.h (GEPBALANCE::GEPBALANCE): Likewise.
+	* dbleHESS.h (HESS::HESS): Likewise.
+	* dbleSCHUR.h, dbleSCHUR.cc (SCHUR::SCHUR): Likewise.
+	* dbleSVD.h (SVD::SVD): Likewise.
+	* fCmplxCHOL.h (FloatComplexCHOL::FloatComplexCHOL): Likewise.
+	* fCmplxGEPBAL.h
+	(FloatComplexGEPBALANCE::FloatComplexGEPBALANCE): Likewise.
+	* fCmplxHESS.h (FloatComplexHESS::FloatComplexHESS): Likewise.
+	* fCmplxSCHUR.h, fCmplxSCHUR.cc
+	(FloatComplexSCHUR::FloatComplexSCHUR): Likewise.
+	* fCmplxSVD.h (FloatComplexSVD::FloatComplexSVD):
+	Likewise.
+	* fEIG.h (FloatEIG::FloatEIG): Likewise.
+	* floatCHOL.h (FloatCHOL::FloatCHOL): Likewise.
+	* floatGEPBAL.h (FloatGEPBALANCE::FloatGEPBALANCE): Likewise.
+	* floatHESS.h (FloatHESS::FloatHESS): Likewise.
+	* floatSCHUR.h, floatSCHUR.cc (FloatSCHUR::FloatSCHUR): Likewise.
+	* floatSVD.h (FloatSVD::FloatSVD): Likewise.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* LSODE.cc, DASSL.cc, DASRT.cc, DASPK.cc, CmplxSVD.cc,
+	CmplxSCHUR.cc, CmplxHESS.cc, CmplxGEPBAL.cc, CmplxCHOL.cc,
+	EIG.cc, dbleCHOL.cc, dbleGEPBAL.cc, dbleHESS.cc, dbleSCHUR.cc,
+	dbleSVD.cc, fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxHESS.cc,
+	fCmplxSCHUR.cc, fCmplxSVD.cc, fEIG.cc, floatCHOL.cc,
+	floatGEPBAL.cc, floatHESS.cc, floatSCHUR.cc, floatSVD.cc:
+	Style fixes.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-rl-hist.c (hc_erasedups): Avoid GCC warning.
+
+2011-01-12  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* oct-rl-hist.h: Replace macros with an enum
+
+2011-01-12  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+	    John W. Eaton  <jwe@octave.org>
+
+	* cmd-hist.cc (command_history::process_histcontrol,
+	command_history::hist_control, command_history::process_histcontrol,
+	command_history::hist_control): New functions.
+	(command_history::initialize, command_history::do_initialize):
+	New arg, control_arg.
+	* cmd-hist.cc (gnu_history::do_add): Pass history_control to
+	octave_add_history.
+	* cmd-hist.h (command_history::process_histcontrol,
+	command_history::hist_control, command_history::process_histcontrol,
+	command_history::hist_control): Provide decls.
+	(command_history::history_control): New data member.
+
+	* oct-rl-hist.c (octave_add_history): New arg, history_control.
+	Return int, not void.
+	(check_history_control, hc_erasedups): New static functions
+	borrowed from Bash.
+	* oct-rl-hist.h (octave_add_history): Fix decl.
+	(HC_IGNSPACE, HC_IGNDUPS, HC_ERASEDUPS): New #defined constants.
+
+2011-01-06  John W. Eaton  <jwe@octave.org>
+
+	* oct-md5.cc (oct_md5_file): Tag call to fclose with gnulib::.
+	* Range.cc (tfloor): Tag calls to floor with gnulib::.
+	* lo-mappers.h (xfloor): Tag call to floor with gnulib::
+
+2010-12-20  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.h (xrem, xmod): Declare temporary result from
+	multiplication volatile.
+
+2010-12-15  John W. Eaton  <jwe@octave.org>
+
+	Bug #31883.
+
+	* cmd-hist.cc (command_history::do_clean_up_and_save,
+	command_history::do_truncate_file,
+	command_history::do_append, command_history::do_write,
+	gnu_history::do_clean_up_and_save, gnu_history::do_truncate_file,
+	gnu_history::do_append, gnu_history::do_write,
+	gnu_history::do_read_range):
+	Don't do anything if not initialized.
+
+	* cmd-hist.cc, cmd-hist.h (command_history::initialize,
+	command_history::is_initialized): New static functions.
+	(command_history::do_initialize,
+	command_history::do_is_initialized): New member functions.
+
+	* cmd-hist.h (command_history::initialized): New data member.
+	(comand_history::command_history): Initialize it.
+
+2010-12-14  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.h (xcopysign (double)): Call copysign, not copysignf.
+	(xmod): Call X_NINT, not D_NINT.  Call xfloor, not floor.
+	Bug #31872.
+
+2010-12-13  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (operator * (const Matrix& m, const ComplexMatrix&	a)):
+	Fix cut and paste error.  Bug #31869.
+
+2010-12-09  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* lo-specfun.cc (xgamma): Also handle negative integer values as
+	special cases when using tgamma.  Bug #31772.
+
+2010-11-25  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::assign): Use correct endpoint for
+	destination range when making room for new elements.
+	Bug #31734.
+
+2010-11-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-md5.cc (oct_md5_result_to_str): Avoid buffer overrun in
+	call to sprintf.  Replace loop with a single call to sprintf.
+	Bug #31689.
+
+2010-11-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-md5.cc (oct_md5_file): Close file after reading.
+
+2010-11-22  John W. Eaton  <jwe@octave.org>
+
+	* boolSparse.cc (SparseBoolMatrix::sum, SparseBoolMatrix::any):
+	Cast integer idx_vector argument to octave_idx_type.
+
+2010-11-18  John W. Eaton  <jwe@octave.org>
+
+	* chMatrix.cc (charMatrix::row_as_string): Never strip trailing
+	nul characters.  Bug #31689.
+
+2010-11-12  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (LIBOCTAVE_SOURCES): Delete variable.
+	(liboctave_la_SOURCES): Include $(LIBOCTAVE_CXX_SOURCES) and
+	$(LIBOCTAVE_C_SOURCES) in this list instead of
+	$(LIBOCTAVE_SOURCES).
+	(nodist_liboctave_la_SOURCES): New variable.
+	(octinclude_HEADERS): Don't include $(BUILT_INCS) in the list.
+	(noinst_octinclude_HEADERS): New variable.
+	(PRIVATE_INCS): Delete variable.
+	(INCS): Include oct-glob.h in the list.
+	(liboctave_la_SOURCES): Don't include $(PRIVATE_INCS) in the
+	list.
+	(LIBOCT_PATHSEARCH_CXX_SOURCES, LIBOCT_PATHSEARCH_C_SOURCES,
+	LIBOCT_PATHSEARCH_SOURCES): Delete variables.
+	(LIBOCTAVE_CXX_SOURCES): Include pathsearch.cc in the list.
+
+2010-11-12  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::cat): Simplify previous change.
+
+2010-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::cat): New special case for concatenating
+	empty matrices.  Bug #31615.
+
+2010-11-11  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (xtrunc, xround): Move definitions here from
+	lo-mappers.h.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* kpse-xfns.c: Delete.
+	* kpse-xfns.h: Delete.  Move defintions to kpse.cc.
+	* Makefile.am (INCS): Remove kpse-xfns.h from the list.
+	(LIBOCT_PATHSEARCH_SOURCES): Define to pathsearch.cc.
+	(LIBOCT_PATHSEARCH_CXX_SOURCES,	LIBOCT_PATHSEARCH_C_SOURCES):
+	Delete variables.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* lo-cieee.c Eliminate special cases for SCO.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* lo-ieee.cc (octave_ieee_init): Don't initialize octave_Inf,
+	octave_NaN, and octave_NA to DBL_MAX.  Don't initialize
+	octave_Float_Inf, octave_Float_NaN, and octave_Float_NA to FLT_MAX.
+	(octave_ieee_init): Simplify using std::numeric_limits template.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* syswait.h: Delete special cases for NeXT systems.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* lo-sysdep.cc (octave_chdir): Delete special case for __EMX__.
+	* oct-env.cc (octave_env::do_make_absolute): Likewise.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* lo-ieee.h: Eliminate special cases for SCO.
+	* lo-ieee.cc (octave_ieee_init): Eliminate special cases for SCO.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.h (xmod, xrem): Don't copy sign if result is zero.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc, lo-mappers.h (xisnan, xisinf, xfinite, xmod,
+	xrem, floor, ceil, xround, xroundb, signum): Move definitions
+	from lo-mappers.cc to lo-mappers.h and convert to templates.
+	(xtrunc): Move definitions from lo-mappers.cc to lo-mappers.h.
+	* lo-mappers.cc (fix): Use xtrunc.  Move definitions to
+	lo-mappers.cc from lo-mappers.h.
+	(real, imag, conj) Move definitions to lo-mappers.h and declare inline.
+	(round): Move definitions to lo-mappers.h and declare inline.
+	Use roundf for float version.
+	(arg): Move definitions to lo-mappers.h and declare inline.
+	Use atan2f for float version.
+	* lo-mappers.h (xceil): New functions.
+	(X_NINT): New template function.
+	(D_NINT, F_NINT): Define in terms of X_NINT.
+	* lo-utils.h, lo-utils.cc (D_NINT, F_NINT): Delete.
+	* lo-mappers.h, lo-mappers.cc (NINTbig,	NINT): Move from
+	lo-utils.cc and lo-utils.h.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::sort, Array<T>::is_sorted,
+	Array<T>::is_sorted_rows): Use comparisons to sortmode values
+	instead of testing mode directly.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (xmod, xrem): New functions.
+	(mod): Delete.
+	* lo-mappers.h (xmod, xrem): Provide decls.
+
+2010-10-31  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* dim-vector.h (class dim_vector): tag with OCTAVE_API.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (INCS): Include lo-array-gripes.h in the list.
+	(LIBOCTAVE_CXX_SOURCES): Include lo-array-gripes.cc in the list.
+
+	* lo-array-gripes.h: New file.  Move gripe function decls here
+	from Array-util.h.
+	* lo-array-gripes.c: New file.  Move gripe function definitions
+	here from Array-util.cc.
+
+	* CMatrix.cc (ComplexMatrix::operator !): Gripe if any element is NaN.
+	* CNDArray.cc (ComplexNDArray::operator !): Likewise.
+	* CSparse.cc (SparseComplexMatrix::operator !): Likewise.
+	* dMatrix.cc (Matrix::operator !): Likewise.
+	* dNDArray.cc (NDArray::operator !): Likewise.
+	* dSparse.cc (SparseMatrix::operator !): Likewise.
+	* fCMatrix.cc (FloatComplexMatrix::operator !): Likewise.
+	* fCNDArray.cc (FloatComplexNDArray::operator !): Likewise.
+	* fMatrix.cc (FloatMatrix::operator !): Likewise.
+	* fNDArray.cc (FloatNDArray::operator !): Likewise.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.cc (gripe_nan_to_character_conversion): New function.
+	* Array-util.h: Provide decl.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (INCS): Add caseless-str.h to the list.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* caseless-str.h: New file, extracted from src/graphics.h.in.
+
+2010-09-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-utils.cc (xis_int_or_inf_or_nan): Fix typos.
+
+2010-09-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array::test, Array::test_all, Array::test_any): New
+	overloaded template methods.
+	* lo-mappers.h (xisinteger, xnegative_sign): New bool mappers.
+	* dNDArray.cc (NDArray::any_element_is_negative,
+	NDArray::all_integers): Simplify.
+	* fNDArray.cc (FloatNDArray::any_element_is_negative,
+	FloatNDArray::all_integers): Simplify.
+
+	* lo-utils.cc (xis_int_or_inf_or_nan, xis_one_or_zero,
+	xis_zero, xtoo_large_for_float): New utility functions.
+
+	* dNDArray.cc (NDArray::any_element_is_negative,
+	NDArray::all_integers, NDArray::all_elements_are_zero,
+	NDArray::all_elements_are_int_or_inf_or_nan,
+	NDArray::any_element_not_one_or_zero,
+	NDArray::too_large_for_float): Simplify.
+
+	* fNDArray.cc (FloatNDArray::any_element_is_negative,
+	FloatNDArray::all_integers, FloatNDArray::all_elements_are_zero,
+	FloatNDArray::all_elements_are_int_or_inf_or_nan,
+	FloatNDArray::any_element_not_one_or_zero,
+	FloatNDArray::too_large_for_float): Simplify.
+
+2010-09-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dNDArray.cc (NDArray::any_element_is_negative,
+	NDArray::any_element_is_nan,
+	NDArray::any_element_is_inf_or_nan): Simplify.
+	* fNDArray.cc (FloatNDArray::any_element_is_negative,
+	FloatNDArray::any_element_is_nan,
+	FloatNDArray::any_element_is_inf_or_nan): Simplify.
+	* dMatrix.cc (Matrix::any_element_is_negative,
+	Matrix::any_element_is_nan,
+	Matrix::any_element_is_inf_or_nan): Simplify.
+	* fMatrix.cc (FloatMatrix::any_element_is_negative,
+	FloatMatrix::any_element_is_nan,
+	FloatMatrix::any_element_is_inf_or_nan): Simplify.
+	* CNDArray.cc (ComplexNDArray::any_element_is_negative,
+	ComplexNDArray::any_element_is_nan,
+	ComplexNDArray::any_element_is_inf_or_nan): Simplify.
+	* fCNDArray.cc (FloatComplexNDArray::any_element_is_negative,
+	FloatComplexNDArray::any_element_is_nan,
+	FloatComplexNDArray::any_element_is_inf_or_nan): Simplify.
+	* CMatrix.cc (ComplexMatrix::any_element_is_negative,
+	ComplexMatrix::any_element_is_nan,
+	ComplexMatrix::any_element_is_inf_or_nan): Simplify.
+	* fCMatrix.cc (FloatComplexMatrix::any_element_is_negative,
+	FloatComplexMatrix::any_element_is_nan,
+	FloatComplexMatrix::any_element_is_inf_or_nan): Simplify.
+
+2010-09-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (do_get_host_name): Call gnulib::gethostname
+	instead of octave_gethostname.
+
+	* lo-utils.h, lo-cutils.c (octave_gethostname): Delete.
+
+2010-09-20  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_time::octave_time, octave_strptime::init):
+	Call gnulib::mktime instead of mktime (may fix bug #31079).
+
+2010-09-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dSparse.h (SparseMatrix::SparseMatrix (const Sparse<double>&)):
+	New ctor.
+	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix
+	(const Sparse<Complex>&)): New ctor.
+	* boolSparse.cc (SparseBoolMatrix::sum): New method.
+	* boolSparse.h: Declare it.
+
+2010-09-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* boolSparse.cc (SparseBoolMatrix::any): Optimize.
+
+2010-08-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-ch.cc: Inline basic sorts.
+
+2010-08-21  Rik  <octave@nomad.inbox5.com>
+
+	* CmplxQRP.cc, CmplxQRP.h, dbleQRP.cc, dbleQRP.h, fCmplxQRP.cc,
+	fCmplxQRP.h, floatQRP.cc, floatQRP.h: Declare Pvec as RowVector,
+	not ColumnVector.  Bug #30832.
+
+2010-08-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_all_finite): New check.
+	* Sparse-op-defs.h (SPARSE_SMS_BIN_OP_1, SPARSE_SMS_BIN_OP_2,
+	SPARSE_SSM_BIN_OP_1, SPARSE_SSM_BIN_OP_2): Use unchecked access where
+	appropriate.
+	(SPARSE_SMM_BIN_OP_1, SPARSE_MSM_BIN_OP_1): Simplify.
+	(SPARSE_SMM_BIN_OP_2, SPARSE_MSM_BIN_OP_2): Use optimized code path
+	if all values are finite.
+	(SPARSE_MSM_BIN_OPS): Use SPARSE_MSM_BIN_OP_1 for division.
+
+2010-07-31  Rik  <octave@nomad.inbox5.com>
+
+	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in, LSODE-opts.in,
+	Quad-opts.in: Grammarcheck .cc files
+
+2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.cc (dim_vector::dim_max (void)): Turn it into a function.
+	(dim_vector::safe_numel): Update usage.
+	* dim-vector.h: Update declaration.
+
+2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleSCHUR.cc (SCHUR::SCHUR (const Matrix&, const Matrix&)):
+	New ctor.
+	* dbleSCHUR.h: Declare it.
+	* floatSCHUR.cc (FloatSCHUR::FloatSCHUR (const FloatMatrix&, const
+	FloatMatrix&)): New ctor.
+	* floatSCHUR.h: Declare it.
+	* CmplxSCHUR.cc (ComplexSCHUR::ComplexSCHUR (const ComplexMatrix&,
+	const ComplexMatrix&),
+	ComplexSCHUR::ComplexSCHUR (const SCHUR&)): New ctors.
+	* CmplxSCHUR.h: Declare them.
+	* fCmplxSCHUR.cc (FloatComplexSCHUR::FloatComplexSCHUR
+	(const FloatComplexMatrix&, const FloatComplexMatrix&),
+	FloatComplexSCHUR::FloatComplexSCHUR (const FloatSCHUR&)): New ctors.
+	* fCmplxSCHUR.h: Declare them.
+
+2010-07-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::lssolve): Fix decision test for workaround.
+	* fMatrix.cc (FloatMatrix::lssolve): Ditto.
+	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::lssolve): Ditto.
+
+2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.cc (dim_vector::dim_max): New static const member.
+	* dim-vector.h: Declare it.
+
+2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::extract, Matrix::extract_n): Reimplement using
+	index.
+	* fMatrix.cc (FloatMatrix::extract, FloatMatrix::extract_n): Ditto.
+	* CMatrix.cc (ComplexMatrix::extract, ComplexMatrix::extract_n): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::extract, FloatComplexMatrix::extract_n): Ditto.
+
+2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MSparse.h (MSparse<T>::index): Remove overloads.
+	* dSparse.h (SparseMatrix::index): Likewise.
+	* dSparse.cc (SparseMatrix::index): Likewise.
+	* CSparse.h (SparseComplexMatrix::index): Likewise.
+	* CSparse.cc (SparseComplexMatrix::index): Likewise.
+
+2010-07-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc (ComplexMatrix::lssolve (const ComplexMatrix&)):
+	Undo 10708:2786b7ae3f80, implement proper correction.
+	* fCMatrix.cc (FloatComplexMatrix::lssolve (const FloatComplexMatrix&)):
+	Ditto.
+
+2010-06-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::scalar_1x1): New method.
+	* lo-traits.h (equal_types): Fix.
+
+2010-06-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::cat): Implement the loose horzcat/vertcat rules
+	under dim=-1/-2.
+	* Sparse.cc (Array<T>::cat): Implement the loose horzcat/vertcat rules
+	under dim=-1/-2.
+	* Array.h, Sparse.h: Document it.
+
+2010-06-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.cc (dim_vector::hvcat): New method.
+	* dim-vector.h (dim_vector::hvcat, dim_vector::cat): Update decls.
+	(dim_vector::empty_2d): New method.
+
+2010-06-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MatrixType.cc (matrix_real_probe): Use OCTAVE_LOCAL_BUFFER for
+	temporary array.
+	(matrix_complex_probe): Parametrize by real type. Use
+	OCTAVE_LOCAL_BUFFER for temporary array.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* DASSL-opts.in: Periodic grammar check on documentation.
+
+2010-06-16  David Bateman  <dbateman@free.fr>
+
+	* oct-rand.cc (void octave_rand:do_reset (void),
+	void octave_rand:do_reset (const std::string&)): New functions
+	* oct-rand.h (void octave_rand:do_reset (void),
+	void octave_rand:do_reset (const std::string&)): Declare them
+	(void octave_rand:reset (void),
+	void octave_rand:reset (const std::string&)): New functions.
+
+2010-06-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc (ComplexMatrix::lssolve (const ComplexMatrix&)):
+	Workaround LAPACK bug.
+	* fCMatrix.cc (FloatComplexMatrix::lssolve (const FloatComplexMatrix&)):
+	Ditto.
+
+2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array::sort, Array::nth_element): Fix behavior when
+	trailing singleton dim is specified.
+	* Sparse.cc (Sparse::sort): Ditto.
+
+2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::copy_data): Handle class_mask case.
+	(idx_vector::increment): Fix class_colon and add class_mask.
+
+2010-06-06  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* mx-op-defs.h (MNANCHK): Add matrix element type argument and use it
+	to specify template argument for mx_inline_any_nan.
+	(MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP,
+	NDND_BOOL_OP): Specify new MNANCHK argument.
+
+2010-06-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.cc: New source.
+	* Makefile.am: Add it.
+	* dim-vector.h (dim_vector::chop_all_singletons,
+	dim_vector::str, dim_vector::num_ones, dim_vector::safe_numel,
+	dim_vector::squeeze, dim_vector::concat, dim_vector::redim):
+	Move bodies to dim_vector.cc.
+	(dim_vector::concat): Rewrite.
+	* Array.cc (Array::cat): Fix dim_vector concatenation. Don't use 0x0
+	as neutral element, because it isn't with dim > 1.
+
+2010-06-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::optimize_dimensions): New method.
+	* Array.h: Declare it.
+
+2010-06-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::maybe_delete_dims): Remove method (makes no
+	longer sense).
+	* Array.h: Update decls.
+
+2010-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::compute_index (const octave_idx_type *,
+	int)): New method overload.
+	(dim_vector::compute_index, dim_vector::cum_compute_index,
+	dim_vector::increment_index): Add missing const qualifiers.
+
+	* Array-util.cc (compute_index (..., const dim_vector&)): Rewrite,
+	add new overloads. Move code from Array<T>::checkelem here.
+	* Array-util.h: Update decls.
+	* Array.h (Array<T>::compute_index): Forward to the above.
+	(Array<T>::compute_index_unchecked): New method.
+	(Array<T>::elem, Array<T>::xelem): Call it here.
+
+	* Array.cc (Array<T>::checkelem): Use compute_index where suitable.
+
+2010-05-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_cumcount): Fix 2D version instantiation.
+
+2010-05-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::linearize): Remove.
+	* Array.h (Array<T>::linearize): Remove decl.
+
+2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::lssolve): Remove warnings about rank.
+	* fMatrix.cc (FloatMatrix::lssolve): Ditto.
+	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::lssolve): Ditto.
+
+2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::unmask): Fix off-by-1 bug. Add tests.
+
+2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array::delete_elements (const idx_vector&)): Only call
+	resize1 when deleting the last element of a vector.
+
+2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-norm.h: Fix include guard.
+
+2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleSCHUR.cc (SCHUR::init): Handle empty matrix case.
+	Use clear rather than resize to realloc matrix.
+	* floatSCHUR.cc (FloatSCHUR::init): Ditto.
+	* CmplxSCHUR.cc (ComplexSCHUR::init): Ditto.
+	* fCmplxSCHUR.cc (FloatComplexSCHUR::init): Ditto.
+
+2010-05-04  John W. Eaton  <jwe@octave.org>
+
+	* CollocWt.cc (diff, jcobi, dfopr): New functions, based on
+	Fortran functions in libcruft/villad.
+	(jcobi): Handle iteration failure at large N.
+	(CollocWt::init): Call them instead of Fortran code.
+	* CollocWt.h (CollocWt::initialized): Declare as bool, not int.
+	Change all uses.
+	Addresses bug #29473.
+
+2010-05-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleSVD.h (SVD::driver): New enum.
+	(SVD::SVD, SVD::init): Add driver option.
+	* floatSVD.h (FloatSVD::FloatSVD, FloatSVD::init): Add driver option.
+	* CmplxSVD.h (ComplexSVD::ComplexSVD, ComplexSVD::init):
+	Add driver option.
+	* fCmplxSVD.h (FloatComplexSVD::FloatComplexSVD,
+	FloatComplexSVD::init): Add driver option.
+	* dbleSVD.cc (SVD::init): Optionally use xGESDD driver.
+	* floatSVD.cc (FloatSVD::init): Ditto.
+	* CmplxSVD.cc (ComplexSVD::init): Ditto.
+	* fCmplxSVD.cc (FloatComplexSVD::init): Ditto.
+
+2010-04-28  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h (dim_vector (const octave_idx_type *, size_t)): Delete.
+	* Sparse.cc (Sparse<T>::assign): Cast 0 to octave_idx_type in
+	call to Sparse<T> constructor.
+	Addresses bug #29692.
+
+2010-04-27  John W. Eaton  <jwe@octave.org>
+
+	* intNDArray.cc (intNDArray<T>::abs, intNDArray<T>::signum):
+	Create new vector for return values.  Fixes bug #29685.
+
+2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::assign): Fix typos.
+
+2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.h (::assign, ::assign1): Remove declarations.
+
+2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::cat): Fast return for single array case.
+	* Sparse.cc (Sparse<T>::cat): Ditto.
+
+2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::cat): Miscellaneous fixes.
+	* Sparse.cc (Sparse<T>::cat): Ditto.
+
+2010-04-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::cat): New method.
+	* Array.h: Declare it.
+	* Sparse.cc (Sparse<T>::cat): New method.
+	* Sparse.h: Declare it.
+
+2010-04-16  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (template <class T> Sparse<T>::Sparse (const Array<T>&,
+	const idx_vector&, const idx_vector&, octave_idx_type,
+	octave_idx_type, bool, octave_idx_type)): Add argument defining the
+	minimum storage to allocate for the sparse matrix.
+	* Sparse.h (template <class T> Sparse (const Array<T>&,
+	const idx_vector&, const idx_vector&, octave_idx_type,
+	octave_idx_type, bool, octave_idx_type)): ditto.
+	* MSparse.h : ditto
+	* CSparse.h : ditto
+	* dSparse.h : ditto
+	* boolSparse.h : ditto
+
+2010-04-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc: Update failing tests.
+
+2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::index): If S is a sparse column vector,
+	forward S(I,1) and S(I,:) to 1D indexing. Handle permutation indexing
+	in the 1D case.
+	(Sparse<T>::assign): If S is a sparse column vector,
+	forward S(I,1) = X and S(I,:) =X to 1D indexed assignment.
+	* idx-vector.cc (idx_vector::inverse_permutation): Add missing break.
+
+2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (gripe_invalid_assignment_size,
+	gripe_assignment_dimension_mismatch): Move funcs here from Array.cc
+	* Array-util.h: Declare them.
+	* Array.cc: Remove them.
+
+	* Sparse.cc (Sparse<T>::assign): New overloaded method.
+	(Sparse<T>::operator =): Update.
+	(Sparse<T>::resize1): Rewrite to match sparse assignment specifics.
+	(Sparse<T>::set_index, Sparse<T>::clear_index, Sparse<T>::index_count,
+	Sparse<T>::value): Remove methods.
+	(::assign1, ::assign): Remove funcs.
+
+	(INSTANTIATE_SPARSE): Move here from Sparse.h.
+
+	* Sparse.h (Sparse<T>::idx, Sparse<T>::idx_count): Remove member
+	fields. Remove initializations from all ctors.
+	(Sparse<T>::get_idx): Remove.
+	(Sparse<T>::assign): Add decls.
+	(INSTANTIATE_SPARSE_ASSIGN, INSTANTIATE_SPARSE_AND_ASSIGN): Remove.
+	(INSTANTIATE_SPARSE): Move to Sparse.cc
+
+	* Sparse-C.cc, Sparse-d.cc, Sparse-b.cc: Only call INSTANTIATE_SPARSE.
+
+	* idx-vector.cc (idx_vector::inverse_permutation): New method.
+	* idx-vector.h: Declare it.
+
+2010-04-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&, const idx_vector&,
+	const idx_vector&, ...)): Call maybe_compress after matrix is created.
+
+2010-04-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::diag): Change nzmax to nnz where appropriate.
+	* MatrixType.cc (MatrixType::MatrixType): Ditto.
+	* SparseQR.cc: Ditto.
+	* SparseCmplxQR.cc: Ditto.
+	* boolSparse.cc: Ditto.
+
+2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::resize (octave_idx_type, octave_idx_type)):
+	Rewrite. Be smarter esp. when resizing to more columns.
+
+2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::concat): Ignore zero_by_zero, but not
+	all_zero arrays in concatenation (like Matlab).
+
+2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::index (const idx_vector&, bool)): Use shallow
+	copy when column is indexed by colon.
+
+2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (lblookup): Move in front of Sparse<T>::delete_elements.
+
+2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* str-vec.h (string_vector::string_vector (const Array<std::string>)):
+	New constructor.
+
+2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::complement): Rewrite.
+
+2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::maybe_delete_elements): Rename to
+	delete_elements. Use const reference arguments.
+	(Sparse<T>::delete_elements (const idx_vector&, const idx_vector&)):
+	Rewrite.
+	(Sparse<T>::maybe_delete_elements (int dim, const idx_vector&)): New
+	overload.
+	(Sparse<T>::maybe_delete_elements (Array<idx_vector>&)): Remove
+	overload.
+
+2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc, Array-util.h, Array-util.cc: Reverse effects of
+	4e64fbbd5c58.
+
+2010-04-02  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.cc, idx-vector.cc, idx-vector.h: Style fixes.
+
+2010-04-02  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.cc (idx_vector::idx_vector (const Range&)):
+	Move here from idx-vector.h.  Allow non-integer values in ranges,
+	but warn by default (for Matlab compatibility).
+	* Array-util.h, Array-util.cc (gripe_invalid_index): New arg, ERR.
+	If ERR is false, generate warning instead of error.
+
+2010-04-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::maybe_delete_elements): Rewrite. Optimize for
+	sparse column vectors.
+
+2010-04-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc: Declare all loops as throw (). Ditto for
+	corresponding applier arguments.
+	(do_mx_check): New applier.
+	(logical_value): Do not throw exceptions.
+	* mx-op-defs.h (SNANCHK, MNANCHK): New helper macros.
+	(MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP,
+	NDND_BOOL_OP): Use them here.
+
+2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&,
+	const Array<octave_idx_type>&, ...), Sparse<T>::Sparse (const Array<T>&,
+	const Array<double>&, ...)):
+	Remove old constructors.
+	* Sparse.h: Ditto.
+	* MSparse.h: Ditto.
+	* dSparse.h: Ditto.
+	* CSparse.h: Ditto.
+	* boolSparse.h: Ditto.
+
+2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_range_rep::as_array): Fix typo.
+	(idx_vector::raw): Use unchecked constructor.
+	* Sparse.cc (Sparse<T>::Sparse (const Array<T>&, const idx_vector&,
+	const idx_vector&, ...)): New ctor.
+	* Sparse.h: Declare it.
+
+2010-03-30  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.cc (string_vector::string_vector (const char * const *)):
+	Create empty string_vector object if arg is NULL.
+	Fixes bug #29386.
+
+2010-03-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::raw): New method.
+	* idx-vector.h: Declare it.
+
+2010-03-27  David Bateman  <dbateman@free.fr>
+
+	* oct-openmp.h: New file.
+	* Makefile.am (INCS): Add it here.
+
+2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::index (const idx_vector&, const	idx_vector&,
+	bool)): Specialize for contiguous row range, row permutation,
+	and implement general case through double index-transpose.
+
+2010-03-25  John W. Eaton  <jwe@octave.org>
+
+	* eigs-base.cc (EigsComplexNonSymmetricFunc): Avoid warning
+	about deprecated Array constructor.
+
+2010-03-25  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc, file-ops.cc, lo-math.h, lo-utils.cc, oct-env.cc,
+	dir-ops.cc, file-stat.cc, cmd-hist.cc, oct-time.cc, oct-time.h,
+	oct-uname.cc: Revert changes from 2010-03-24 and 2010-03-25.
+
+2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc	(fix (double)): Forward to gnulib::trunc.
+	(fix (float)): Forward to gnulib::truncf.
+	(xround (double)): Forward to gnulib::round.
+	(xround (float)): Forward to gnulib::roundf.
+	(xtrunc (double)): Forward to gnulib::trunc.
+	(xtrunc (float)): Forward to gnulib::truncf.
+
+2010-03-25  David Grundberg  <davidg@cs.umu.se>
+
+	* oct-time.h (octave_time): Revert ::modf to std::modf again now
+	that cmath is included again.
+
+2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-math.h: Include both "math.h" and "cmath".
+
+2010-03-24  David Grundberg  <davidg@cs.umu.se>
+
+	* cmd-edit.cc: Include gnulib stdlib.h/string.h instead of C++
+	headers.
+	* file-ops.cc: Include gnulib stdlib.h/stdio.h/string.h instead of
+	C++ headers.
+	* lo-math.h: Include gnulib math.h instead of C++ headers.
+	* lo-utils.cc: Include gnulib stdlib.h instead of C++ headers.
+	* oct-env.cc, dir-ops.cc, file-stat.cc, cmd-hist.cc: Include
+	gnulib string.h instead of C++ headers.
+	* oct-time.cc: Include gnulib time.h instead of C++ headers.
+	* oct-time.h (octave_time): Use default namespace ::modf instead
+	of std::modf.
+	* oct-uname.cc: Include gnulib string.h instead of C++ headers.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (lblookup): New helper func.
+	(Sparse<T>::index (const idx_vector&, bool)): Use it here for lookups.
+	(Sparse<T>::index (const idx_vector&, const idx_vector&, bool)):
+	Specialize for scalar row index.
+
+2010-03-23  John W. Eaton  <jwe@octave.org>
+
+	* config-ops.sh: Work properly for "all" cases.
+
+2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int_arith_base::rem, octave_int_base::mod):
+	New methods.
+	(rem, mod): New template functions.
+	* lo-mappers.cc (rem, mod): New overloaded functions.
+	* lo-mappers.h: Declare them.
+
+2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-binmap.h: New source.
+	* Makefile.am: Include it here.
+
+2010-03-22  John W. Eaton  <jwe@octave.org>
+
+	* config-ops.sh: Accept additional arguments.
+	* Makefile.am ($(srcdir)/vx-op-inc.mk, $(srcdir)/mx-op-inc.mk
+	$(srcdir)/smx-op-inc.mk, $(srcdir)/vx-op-src.mk, $(srcdir)/mx-op-src.mk
+	$(srcdir)/smx-op-src.mk): Pass additional arguments to config-ops.sh.
+
+2010-03-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (Sparse<T>::index (const idx_vector&, const idx_vector&,
+	bool)): Handle resize_ok in advance. Optimize colon as the first index.
+	(Sparse<T>::index (const idx_vector&, bool)): Small fixes.
+
+2010-03-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dSparse.cc (SparseMatrix::matrix_value): Simplify.
+	* CSparse.cc (SparseComplexMatrix::matrix_value): Simplify.
+
+2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (gripe_invalid_resize): Move here from Array.cc.
+	* Array-util.h: Declare it.
+	* Array.cc: Use it.
+
+	* idx-vector.cc (idx_vector::idx_mask_rep::unconvert): Fix non-owned
+	case.
+	(idx_vector::idx_mask_rep::as_array): New method.
+	* idx-vector.h: Declare it.
+
+	* Sparse.cc (Sparse<T>::index (const idx_vector&, bool)): Rewrite.
+	(Sparse<T>::array_value): New method.
+	(Sparse<T>::resize1): New method.
+	(Sparse<T>::resize): Move resize_no_fill bodies in here.
+	(Sparse<T>::resize_no_fill): Remove.
+	* Sparse.h: Update decls.
+
+2010-03-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.h (Sparse<T>::index): Use const references. Use bool for
+	resize_ok. Remove Array<idx_vector> overload.
+	* MSparse.h (MSparse<T>::index): Ditto.
+	* dSparse.h, dSparse.cc (SparseMatrix::index): Ditto.
+	* CSparse.h, CSparse.cc (SparseComplexMatrix::index): Ditto.
+	* boolSparse.h, boolSparse.cc (SparseBoolMatrix::index): Ditto.
+	* Sparse.cc (Sparse<T>::index): Ditto. Redim index to 2 dimensions.
+	Don't use non-const methods. Use gripe_index_out_of_range.
+
+2010-03-17  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h (dim_vector): Also use DIM_VECTOR macro for 2 and
+	3 dimensions.
+
+2010-03-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-macros.h: New source.
+	* dim-vector.h: Use the macro magic to define constructors
+	generically.
+
+2010-03-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h: Provide constructors up to order 7.
+
+2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-specfun.cc: Substitute cbrt and cbrtf if needed.
+	* lo-specfun.h: Declare cbrt and cbrtf if needed.
+	* configure.ac: Check for cbrt and cbrtf.
+
+2010-03-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-glob.cc (octave_glob): Tag calls to glob and globfree with
+	gnulib::.
+
+	* kpse.cc (DEBUG_START, DEBUGF, FATAL_PERROR, FATAL, KPSE_DEBUG,
+	log_search, find_first_of): Tag calls to
+	fputs with gnulib::.
+	(DEBUGF1, DEBUGF2, DEBUGF3, DEBUGF4, log_search, find_first_of,
+	kpse_element_dirs): Tag calls to fprintf with gnulib::.
+	(hash_lookup, search, find_first_of, kpse_element_dirs):
+	Tag calls to putc with gnulib::.
+	(do_subdir): Tag call to opendir with gnulib::.
+	(xclosedir): Tag call to closedir with gnulib::.  Assume closedir
+	returns int value.
+
+	* cmd-hist.cc (gnu_history::do_append): Tag calls to open and
+	close with gnulib::.
+	(command_history::error): Tag call to strerror with gnulib::.
+
+	* cmd-edit.cc (gnu_readline::command_generator,
+	gnu_readline::command_quoter, gnu_readline::command_dequoter):
+	Tag call to malloc with gnulib::.
+	(default_command_editor::do_readline): Tag call to fputs with gnulib::.
+	(command_editor::error): Tag call to strerror with gnulib::.
+
+	* sparse-util.cc (SparseCholPrint): Tag call to vfprintf with gnulib::.
+
+	* oct-uname.cc (octave_uname::init): Tag call to strerror with gnulib::.
+
+	* oct-time.cc (octave_time::stamp): Tag call to gettimeofday
+	with gnulib::.
+	(octave_strptime::init): Tag call to strptime with gnulib::.
+
+	* oct-syscalls.cc (octave_syscalls::dup2,
+	octave_syscalls::execvp, octave_syscalls::fork,
+	octave_syscalls::vfork, octave_syscalls::getpgrp,
+	octave_syscalls::pipe, octave_syscalls::waitpid,
+	octave_syscalls::kill, octave_fcntl):
+	Tag call to strerror with gnulib::.
+	(octave_syscalls::dup2): Tag call to dup2 with gnulib::.
+	(octave_syscalls::popen2): Tag calls to close with gnulib::.
+	(octave_fcntl): Tag call to fcntl with gnulib::.
+
+	* oct-env.cc (octave_env::error): Tag call to strerror with gnulib::.
+
+	* lo-utils.cc (octave_putenv): Tag call to malloc with gnulib::.
+	(octave_fgets): Tag calls to malloc and realloc with gnulib::.
+
+	* lo-sysdep.cc (octave_getcwd): Tag call to getcwd with gnulib::.
+
+	* lo-mappers.cc (xround): Tag call to round with gnulib::.
+
+	* file-stat.cc (file_stat::update_internal): Tag calls to lstat
+	and strerror with gnulib::.
+	(file_fstat::update_internal): Tag calls to fstat and strerror
+	with gnulib::.
+
+	* file-ops.cc (octave_mkdir): Tag call to mkdir with gnulib::.
+	(octave_mkfifo): Tag call to mkfifo with gnulib::.
+	(octave_link): Tag call to link with gnulib::.
+	(octave_symlink): Tag call to symlink with gnulib::.
+	(octave_readlink): Tag call to readlink with gnulib::.
+	(octave_rename): Tag call to rename with gnulib::.
+	(octave_rmdir): Tag call to rmdir with gnulib::.
+	(octave_unlink): Tag call to unlink with gnulib::.
+	(octave_canonicalize_file_name): Tag call to
+	canonicalize_file_name with gnulib::.
+	(octave_mkdir, octave_mkfifo, octave_link, octave_symlink,
+	octave_readlink, octave_rename, octave_rmdir, octave_unlink,
+	octave_tempnam, octave_canonicalize_file_name): Tag calls to
+	strerror with gnulib::.
+
+	* dir-ops.cc (dir_entry::close): Tag closedir call with gnulib::.
+	(dir_entry::open): Tag opendir and strerror calls with gnulib::.
+
+2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int_base::ftrunc, octave_int_base::fnon_int,
+	octave_int_base::fnan, octave_int_base::get_trunc_flag,
+	octave_int_base::get_nan_flag,
+	octave_int_base::get_non_int_flag,
+	octave_int_base::get_math_trunc_flag,
+	octave_int_base::clear_conv_flags): Remove.
+	Remove occurences of ftrunc, fnon_int and fnan eveywhere.
+	* oct-inttypes.cc: Ditto last sentence. Remove warning tests.
+
+2010-03-07  Soren Hauberg  <hauberg@gmail.com>
+
+	* dim-vector.h: New constructor accepting a C array of dimensions.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArray.cc (MArray<T>::idx_add_nd): New method.
+	* MArray.h: Declare it.
+
+2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-specfun.cc (erfcx, erfcx_impl): New functions.
+	* lo-specfun.h: Declare erfcx.
+
+2010-03-03  John W. Eaton  <jwe@octave.org>
+
+	* oct-convn.cc (convolve): Cast int constant to octave_idx_type in
+	call to std::max.
+
+2010-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-convn.cc (convolve_2d_axpy_kernel, convolve_2d_axpy): Remove.
+	(convolve_2d): Forward to Fortran implementations, add inner flag.
+	(convolve_nd): Handle inner-convolution case.
+	(convolve): Ditto.
+
+2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-convn.h, oct-convn.cc: New sources.
+	* Makefile.am: Include them.
+
+2010-03-01  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (Sparse<T>::maybe_delete_elements (idxx_vector&)):
+	Special case the deletion of elements in sparse vectors.
+	(Sparse<T>::index (idx_vector&, int) const): Special case indexing
+	of sparse matrices with ranges with a step of 1.
+	* Sparse.h: Include oct-mem.h for the copy_or_memcpy declaration.
+
+2010-02-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am ($(srcdir)/vx-op-inc.mk, $(srcdir)/mx-op-inc.mk,
+	$(srcdir)/smx-op-inc.mk, $(srcdir)/vx-op-src.mk,
+	$(srcdir)/mx-op-src.mk, $(srcdir)/smx-op-src.mk): New targets.
+
+	* config-ops.sh: Accept top_srcdir argument.  Work from build
+	directory too, not just source tree.
+
+2010-02-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array-C.cc (DiagArray2<Complex>::Proxy): Remove explicit
+	instantiation under MSVC.
+	Array-d.cc (DiagArray2<double>::Proxy): Ditto.
+	Array-f.cc (DiagArray2<float>::Proxy): Ditto.
+	Array-fC.cc (DiagArray2<FloatComplex::Proxy): Ditto.
+
+2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (gripe_index_out_of_range): Throw errors with id.
+	(gripe_nonconformant): Likewise.
+	(error_id_index_out_of_bounds, error_id_invalid_index,
+	error_id_nonconformant_args): New variables.
+	(gripe_invalid_index): New function.
+	* Array-util.h: Declare them.
+	* Array.cc (Array<T>::checkelem): Throw invalid-index when negative
+	indices are encountered.
+
+2010-02-27  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::diag): Handle case of diag (szv) when szv
+	is a sparse vector with nnz = 0.
+
+2010-02-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (gripe_index_out_of_range): New function.
+	* Array.cc (Array<T>::range_error): Remove.
+	(Array<T>::checkelem): Rewrite.
+	(Array<T>::index, Array<T>::delete_elements): Simplify.
+	* DiagArray2.cc (DiagArray2::checkelem): Use gripe_index_out_of_range.
+	* Range.cc (Range::checkelem, Range::index): Ditto.
+
+2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_DUP_FCN): Remove.
+	(mx_inline_dup): Remove.
+	(mx_inline_not): Remove.
+	(mx_inline_make_complex): Remove.
+	(mx_inline_change_sign): Remove.
+	(mx_inline_fabs_dup): Remove.
+	(mx_inline_cabs_dup): Remove.
+	(mx_inline_imag_dup): Remove.
+	(mx_inline_real_dup): Remove.
+	(mx_inline_conj_dup): Remove.
+	(mx_inline_change_sign): Remove.
+
+2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::ArrayRep): Simplify copy constructor. Add
+	conversion constructor.
+	(Array<T>): Remove pointer acquiring ctors.
+	(Array<T>::maybe_economize): Update.
+	(Array<T>::make_unique): Update.
+	* Array.cc (Array<T>::fill): Update.
+
+	* MArray.h (MArray<T>::MArray<T> (T *, ...)): Remove.
+	* DiagArray2.h (DiagArray2<T>::DiagArray2<T> (T *, ...)): Remove.
+	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2<T> (T *, ...)): Remove.
+	* Array3.h (Array3<T>::Array3<T> (T *, ...)): Remove.
+
+	* dColVector.h (ColumnVector::ColumnVector (T *, ...)): Remove.
+	* fColVector.h (FloatColumnVector::FloatColumnVector (T *, ...)): Remove.
+	* CColVector.h (ComplexColumnVector::ComplexColumnVector (T *, ...)): Remove.
+	* fCColVector.h (FloatComplexColumnVector::FloatComplexColumnVector (T *, ...)): Remove.
+
+	* dRowVector.h (RowVector::RowVector (T *, ...)): Remove.
+	* fRowVector.h (FloatRowVector::FloatRowVector (T *, ...)): Remove.
+	* CRowVector.h (ComplexRowVector::ComplexRowVector (T *, ...)): Remove.
+	* fCRowVector.h (FloatComplexRowVector::FloatComplexRowVector (T *, ...)): Remove.
+
+	* dMatrix.h (Matrix::Matrix (T *, ...)): Remove.
+	* fMatrix.h (FloatMatrix::FloatMatrix (T *, ...)): Remove.
+	* CMatrix.h (ComplexMatrix::ComplexMatrix (T *, ...)): Remove.
+	* fCMatrix.h (FloatComplexMatrix::FloatComplexMatrix (T *, ...)): Remove.
+	* boolMatrix.h (boolMatrix::boolMatrix (T *, ...)): Remove.
+	* chMatrix.h (charMatrix::charMatrix (T *, ...)): Remove.
+
+	* dNDArray.h (NDArray::NDArray (T *, ...)): Remove.
+	* fNDArray.h (FloatNDArray::FloatNDArray (T *, ...)): Remove.
+	* CNDArray.h (ComplexNDArray::ComplexNDArray (T *, ...)): Remove.
+	* fCNDArray.h (FloatComplexNDArray::FloatComplexNDArray (T *, ...)): Remove.
+	* boolNDArray.h (boolNDArray::boolNDArray (T *, ...)): Remove.
+	* chNDArray.h (charNDArray::charNDArray (T *, ...)): Remove.
+
+2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DiagArray2.h (DiagArray2): Clean up ctors. Remove Proxy class.
+	Remove non-const two-index elem methods.
+	* DiagArray2.cc: Update.
+	* MDiagArray2.h: Update.
+
+	* dDiagArray2.h: Update.
+	* dDiagArray2.cc: Update.
+	* fDiagArray2.h: Update.
+	* fDiagArray2.cc: Update.
+	* CDiagArray2.h: Update.
+	* CDiagArray2.cc: Update.
+	* fCDiagArray2.h: Update.
+	* fCDiagArray2.cc: Update.
+
+	* dMatrix.cc: Update.
+	* fMatrix.cc: Update.
+	* CMatrix.cc: Update.
+	* fCMatrix.cc: Update.
+
+	* dRowVector.cc: Update.
+	* fRowVector.cc: Update.
+	* CRowVector.cc: Update.
+	* fCRowVector.cc: Update.
+
+	* dColVector.cc: Update.
+	* fColVector.cc: Update.
+	* CColVector.cc: Update.
+	* fCColVector.cc: Update.
+
+	* dColVector.cc (ColumnVector::abs): New method.
+	* dColVector.h: Declare it.
+	* fColVector.cc (FloatColumnVector::abs): New method.
+	* fColVector.h: Declare it.
+	* CColVector.cc (ComplexColumnVector::abs): New method.
+	* CColVector.h: Declare it.
+	* fCColVector.cc (FloatComplexColumnVector::abs): New method.
+	* fCColVector.h: Declare it.
+
+2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc: Parameterize all appliers by value types rather than
+	Array types. Return & accept Array instances.
+	* mx-op-defs.h: Update references.
+	* CMatrix.cc: Ditto.
+	* CNDArray.cc: Ditto.
+	* DiagArray2.h: Ditto.
+	* MArray.cc: Ditto.
+	* boolMatrix.cc: Ditto.
+	* boolNDArray.cc: Ditto.
+	* bsxfun-defs.cc: Ditto.
+	* chMatrix.cc: Ditto.
+	* chNDArray.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fNDArray.cc: Ditto.
+	* intNDArray.cc: Ditto.
+	* MDiagArray2.cc: Remove computed assignment operators, adapt
+	operators to new mechanism.
+	* MDiagArray2.h: Declare operators as friends.
+	* MArray-decl.h (MDIAGARRAY2_OPS_FRIEND_DECLS): Don't expand
+	MARRAY_OP_ASSIGN_FRIENDS here.
+
+2010-02-25  John W. Eaton  <jwe@octave.org>
+
+	* eigs-base.cc: Use octave_idx_type for Fortran LOGICAL values
+	in function prototypes.
+	(EigsRealSymmetricMatrix, EigsRealSymmetricMatrixShift,
+	EigsRealSymmetricFunc, EigsRealNonSymmetricMatrix,
+	EigsRealNonSymmetricMatrixShift, EigsRealNonSymmetricFunc,
+	EigsComplexNonSymmetricMatrix, EigsComplexNonSymmetricMatrixShift,
+	EigsComplexNonSymmetricFunc): Declare rvec argument as bool, not int.
+	Fix explicit instantiations to match.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-mem.h (safe_size_comp): New helper func.
+	(no_ctor_new): Call it here.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-mem.h (copy_or_memcpy, fill_or_memset, no_ctor_new): Accept
+	size_t rather than octave_idx_type.
+	* Array.h (Array<T>::byte_size): Correct calculation.
+	* DiagArray2.h (DiagArray2<T>::byte_size): Call inherited byte_size.
+	* PermMatrix.h (PermMatrix::byte_size): Ditto.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* str-vec.h (string_vector::string_vector): Use (n, 1).
+	(string_vector::resize): Ditto.
+	* str-vec.cc (string_vector::string_vector): Ditto.
+
+2010-02-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array::Array (const Array&, octave_idx_type,
+	octave_idx_type): New ctor.
+	(Array::reshape (octave_idx_type, octave_idx_type): New method.
+	* Array.h: Declare them.
+	* Array2.h: Deprecate Array2, make it a #define for Array.
+
+	* Array-C.cc: Remove Array2 instantiation.
+	* Array-b.cc: Ditto.
+	* Array-ch.cc: Ditto.
+	* Array-d.cc: Ditto.
+	* Array-f.cc: Ditto.
+	* Array-fC.cc: Ditto.
+	* Array-i.cc: Ditto.
+	* Array-s.cc: Ditto.
+	* Array-voidp.cc: Ditto.
+
+	* CMatrix.cc: Use Array instead of Array2 everywhere.
+	* CMatrix.h: Ditto.
+	* CNDArray.cc: Ditto.
+	* DiagArray2.cc: Ditto.
+	* DiagArray2.h: Ditto.
+	* MDiagArray2.h: Ditto.
+	* Sparse.cc: Ditto.
+	* Sparse.h: Ditto.
+	* boolMatrix.h: Ditto.
+	* boolNDArray.cc: Ditto.
+	* chMatrix.h: Ditto.
+	* chNDArray.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dMatrix.h: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCMatrix.h: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fMatrix.h: Ditto.
+	* fNDArray.cc: Ditto.
+	* lo-specfun.cc: Ditto.
+	* lo-specfun.h: Ditto.
+
+2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* chMatrix.h (charMatrix): Base on Array<char>.
+	* chMatrix.cc (charMatrix): Update.
+	* boolMatrix.h (boolMatrix): Ditto.
+	* boolMatrix.h (boolMatrix): Update.
+
+2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array): Define 2D constructors. Remove conflicting 1D
+	initialized constructor. Deprecate 1D constructor. Deprecate 1D resize.
+	Add 2D resize, resize1. Remove resize_fill. Make resize_fill_value
+	return a reference. Remove 1D clear.
+
+	* MArray.h (MArray): Merge with MArrayN. Define 2D constructors, sync
+	with Array changes.
+
+	* MArrayN.h, MArray2.h: Deprecate headers, use compatibility #defines.
+	* MArrayN.cc, MArray2.cc: Remove sources.
+	* Makefile.am: Update.
+
+	* fCMatrix.h (FloatComplexMatrix): Rebase on MArray.
+	* fMatrix.h (FloatMatrix): Ditto.
+	* dMatrix.h (Matrix): Ditto.
+	* CMatrix.h (ComplexMatrix): Ditto.
+	* fCNDArray.h (FloatComplexNDArray): Rebase on MArray.
+	* fNDArray.h (FloatNDArray): Ditto.
+	* dNDArray.h (NDArray): Ditto.
+	* CNDArray.h (ComplexNDArray): Ditto.
+
+	* Array-util.cc: Update.
+	* Array.cc: Ditto.
+	* Array2.h: Ditto.
+	* Array3.h: Ditto.
+	* CColVector.cc: Ditto.
+	* CColVector.h: Ditto.
+	* CMatrix.cc: Ditto.
+	* CNDArray.cc: Ditto.
+	* CRowVector.cc: Ditto.
+	* CSparse.cc: Ditto.
+	* ChangeLog: Ditto.
+	* CmplxCHOL.cc: Ditto.
+	* CmplxHESS.cc: Ditto.
+	* CmplxLU.cc: Ditto.
+	* CmplxQRP.cc: Ditto.
+	* CmplxSCHUR.cc: Ditto.
+	* CmplxSVD.cc: Ditto.
+	* CollocWt.cc: Ditto.
+	* DASPK-opts.in: Ditto.
+	* DASPK.cc: Ditto.
+	* DASRT-opts.in: Ditto.
+	* DASRT.cc: Ditto.
+	* DASSL-opts.in: Ditto.
+	* DASSL.cc: Ditto.
+	* DiagArray2.cc: Ditto.
+	* DiagArray2.h: Ditto.
+	* EIG.cc: Ditto.
+	* LSODE-opts.in: Ditto.
+	* LSODE.cc: Ditto.
+	* MArray-C.cc: Ditto.
+	* MArray-d.cc: Ditto.
+	* MArray-defs.h: Ditto.
+	* MArray-f.cc: Ditto.
+	* MArray-fC.cc: Ditto.
+	* MArray-i.cc: Ditto.
+	* MArray-s.cc: Ditto.
+	* MArray.cc: Ditto.
+	* MDiagArray2.h: Ditto.
+	* MSparse-defs.h: Ditto.
+	* MSparse.cc: Ditto.
+	* MSparse.h: Ditto.
+	* Makefile.am: Ditto.
+	* MatrixType.cc: Ditto.
+	* PermMatrix.cc: Ditto.
+	* Quad.cc: Ditto.
+	* SparseCmplxLU.cc: Ditto.
+	* SparseCmplxQR.cc: Ditto.
+	* SparseCmplxQR.h: Ditto.
+	* SparseQR.cc: Ditto.
+	* SparseQR.h: Ditto.
+	* SparsedbleLU.cc: Ditto.
+	* base-lu.cc: Ditto.
+	* dColVector.h: Ditto.
+	* dMatrix.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* dRowVector.h: Ditto.
+	* dSparse.cc: Ditto.
+	* dbleCHOL.cc: Ditto.
+	* dbleHESS.cc: Ditto.
+	* dbleLU.cc: Ditto.
+	* dbleQRP.cc: Ditto.
+	* dbleSCHUR.cc: Ditto.
+	* dbleSVD.cc: Ditto.
+	* dim-vector.h: Ditto.
+	* eigs-base.cc: Ditto.
+	* fCColVector.cc: Ditto.
+	* fCColVector.h: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fCRowVector.cc: Ditto.
+	* fCRowVector.h: Ditto.
+	* fCmplxCHOL.cc: Ditto.
+	* fCmplxHESS.cc: Ditto.
+	* fCmplxLU.cc: Ditto.
+	* fCmplxQRP.cc: Ditto.
+	* fCmplxSCHUR.cc: Ditto.
+	* fCmplxSVD.cc: Ditto.
+	* fColVector.h: Ditto.
+	* fEIG.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fNDArray.cc: Ditto.
+	* fRowVector.h: Ditto.
+	* floatCHOL.cc: Ditto.
+	* floatHESS.cc: Ditto.
+	* floatLU.cc: Ditto.
+	* floatQRP.cc: Ditto.
+	* floatSCHUR.cc: Ditto.
+	* floatSVD.cc: Ditto.
+	* glob-match.h: Ditto.
+	* int16NDArray.h: Ditto.
+	* int32NDArray.h: Ditto.
+	* int64NDArray.h: Ditto.
+	* int8NDArray.h: Ditto.
+	* intNDArray.cc: Ditto.
+	* intNDArray.h: Ditto.
+	* oct-fftw.cc: Ditto.
+	* oct-norm.cc: Ditto.
+	* oct-rand.cc: Ditto.
+	* regex-match.cc: Ditto.
+	* sparse-dmsolve.cc: Ditto.
+	* str-vec.cc: Ditto.
+	* str-vec.h: Ditto.
+	* uint16NDArray.h: Ditto.
+	* uint32NDArray.h: Ditto.
+	* uint64NDArray.h: Ditto.
+	* uint8NDArray.h: Ditto.
+
+2010-02-22  John W. Eaton  <jwe@octave.org>
+
+	* data-conv.cc, data-conv.h (read_floats, read_doubles,
+	do_float_format_conversion, do_double_format_conversion):
+	Declare len arg and loop counter as octave_idx_type, not int.
+	(strip_spaces): Use size_t for string dimension and index, not int.
+	(LS_DO_READ, LS_DO_WRITE): Declare loop counter as
+	octave_idx_type, not int.
+	(write_floats, write_doubles):
+	Declare len arg as octave_idx_type, not int.
+	(IEEE_big_double_to_IEEE_little_double,
+	VAX_D_double_to_IEEE_little_double,
+	VAX_G_double_to_IEEE_little_double,
+	Cray_to_IEEE_little_double,
+	IEEE_big_float_to_IEEE_little_float,
+	VAX_D_float_to_IEEE_little_float,
+	VAX_G_float_to_IEEE_little_float, Cray_to_IEEE_little_float,
+	IEEE_little_double_to_IEEE_big_double,
+	VAX_D_double_to_IEEE_big_double,
+	VAX_G_double_to_IEEE_big_double, Cray_to_IEEE_big_double,
+	IEEE_little_float_to_IEEE_big_float,
+	VAX_D_float_to_IEEE_big_float, VAX_G_float_to_IEEE_big_float,
+	Cray_to_IEEE_big_float, IEEE_little_double_to_VAX_D_double,
+	IEEE_big_double_to_VAX_D_double,
+	VAX_G_double_to_VAX_D_double, Cray_to_VAX_D_double,
+	IEEE_little_float_to_VAX_D_float,
+	IEEE_big_float_to_VAX_D_float, VAX_G_float_to_VAX_D_float,
+	Cray_to_VAX_D_float, IEEE_little_double_to_VAX_G_double,
+	IEEE_big_double_to_VAX_G_double,
+	VAX_D_double_to_VAX_G_double, Cray_to_VAX_G_double,
+	IEEE_little_float_to_VAX_G_float,
+	IEEE_big_float_to_VAX_G_float, VAX_D_float_to_VAX_G_float,
+	Cray_to_VAX_G_float, read_doubles):
+	Declare len arg as octave_idx_type, not int.
+
+2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-sysdep.cc, lo-utils.h, oct-shlib.h: Define WIN32_LEAN_AND_MEAN
+	and don't #undef min/max.
+	* oct-inttypes.h: Don't #undef min/max.
+
+	* oct-glob.cc (octave_glob): Convert backslashes to forward slashes
+	automatically before calling glob, and convert back after the call
+	(implementation from jwe).
+
+	* Makefile.am: Add -bindir flag to liboctave_la_LDFLAGS.
+
+2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::as_array,
+	idx_vector::idx_range_rep::as_array,
+	idx_vector::idx_scalar_rep::as_array,
+	idx_vector::idx_vector_rep::as_array): New methods.
+	* idx-vector.h: Declare them.
+
+2010-02-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-rand.cc: Include <sdint.h>.  Change declarations of ranlib
+	functions to take int32_t instead of octave_idx_type values.
+	Change all uses.
+	(octave_rand::do_seed): Use int32_t in union, not octave_idx_type.
+	(force_to_fit_range): Args are now int32_t, not octave_idx_type.
+	(octave_rand::initialize_ranlib_generators): Use int32_t in seed
+	calculation.
+
+2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-op-defs.h (MINMAX_FCNS): Generalize.
+	* mx-op-decl.h (MINMAX_DECLS): Likewise.
+
+	* int16NDArray.h, int32NDArray.h, int64NDArray.h, int8NDArray.h,
+	uint16NDArray.h, uint32NDArray.h, uint64NDArray.h, uint8NDArray.h:
+	Update.
+	* int16NDArray.cc, int32NDArray.cc, int64NDArray.cc, int8NDArray.cc,
+	uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc:
+	Update.
+
+	* CNDArray.h, dNDArray.h, fCNDArray.h, fNDArray.h: Replace explicit
+	decls.
+
+	* CNDArray.cc, dNDArray.cc, fCNDArray.cc, fNDArray.cc: Replace explicit
+	definitions.
+
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* sparse-mk-ops.awk, mk-ops.awk, filemode.c, lo-cieee.c,
+	oct-rl-hist.c, randgamma.c, randmtzig.c, randpoisson.c,
+	tempnam.c, tempname.c: Untabify.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Array-C.cc, Array-fC.cc, Array-util.cc, Array.cc,
+	CColVector.cc, CDiagMatrix.cc, CMatrix.cc, CNDArray.cc,
+	CRowVector.cc, CSparse.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
+	CmplxGEPBAL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
+	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
+	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc, MSparse.cc, MatrixType.cc,
+	ODES.cc, Quad.cc, Range.cc, Sparse-C.cc, Sparse.cc,
+	SparseCmplxCHOL.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
+	SparseQR.cc, SparsedbleCHOL.cc, SparsedbleLU.cc, boolNDArray.cc,
+	boolSparse.cc, chMatrix.cc, chNDArray.cc, cmd-edit.cc,
+	cmd-hist.cc, dColVector.cc, dDiagMatrix.cc, dMatrix.cc,
+	dNDArray.cc, dRowVector.cc, dSparse.cc, data-conv.cc,
+	dbleAEPBAL.cc, dbleCHOL.cc, dbleGEPBAL.cc, dbleHESS.cc,
+	dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc,
+	dir-ops.cc, eigs-base.cc, fCColVector.cc, fCDiagMatrix.cc,
+	fCMatrix.cc, fCNDArray.cc, fCRowVector.cc, fCmplxAEPBAL.cc,
+	fCmplxCHOL.cc, fCmplxGEPBAL.cc, fCmplxHESS.cc, fCmplxLU.cc,
+	fCmplxQR.cc, fCmplxQRP.cc, fCmplxSCHUR.cc, fCmplxSVD.cc,
+	fColVector.cc, fDiagMatrix.cc, fEIG.cc, fMatrix.cc, fNDArray.cc,
+	fRowVector.cc, file-stat.cc, floatAEPBAL.cc, floatCHOL.cc,
+	floatGEPBAL.cc, floatHESS.cc, floatLU.cc, floatQR.cc,
+	floatQRP.cc, floatSCHUR.cc, floatSVD.cc, idx-vector.cc,
+	intNDArray.cc, kpse.cc, lo-ieee.cc, lo-mappers.cc,
+	lo-specfun.cc, lo-sysdep.cc, lo-utils.cc, mach-info.cc,
+	mx-inlines.cc, oct-alloc.cc, oct-env.cc, oct-fftw.cc,
+	oct-glob.cc, oct-group.cc, oct-inttypes.cc, oct-md5.cc,
+	oct-rand.cc, oct-shlib.cc, oct-sort.cc, oct-spparms.cc,
+	oct-syscalls.cc, oct-time.cc, pathsearch.cc, regex-match.cc,
+	sparse-base-chol.cc, sparse-base-lu.cc, sparse-dmsolve.cc,
+	sparse-sort.cc, sparse-util.cc, str-vec.cc: Untabify.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.h, Array.h, Array2.h, Array3.h, CColVector.h,
+	CMatrix.h, CNDArray.h, CRowVector.h, CSparse.h, CmplxCHOL.h,
+	CmplxGEPBAL.h, CmplxHESS.h, CmplxLU.h, CmplxQRP.h, CmplxSCHUR.h,
+	CmplxSVD.h, CollocWt.h, DAE.h, DAEFunc.h, DAERT.h, DAERTFunc.h,
+	DASPK.h, DASRT.h, DASSL.h, DiagArray2.h, EIG.h, MArrayN.h,
+	MDiagArray2.h, MSparse-defs.h, MSparse.h, MatrixType.h, ODE.h,
+	ODEFunc.h, ODES.h, ODESFunc.h, Quad.h, Range.h,
+	Sparse-diag-op-defs.h, Sparse-op-defs.h, Sparse-perm-op-defs.h,
+	Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h, SparseCmplxQR.h,
+	SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h, base-dae.h,
+	base-de.h, base-lu.h, base-min.h, base-qr.h, boolNDArray.h,
+	boolSparse.h, chNDArray.h, cmd-hist.h, dMatrix.h, dNDArray.h,
+	dSparse.h, data-conv.h, dbleCHOL.h, dbleGEPBAL.h, dbleHESS.h,
+	dbleLU.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h, dir-ops.h,
+	fCColVector.h, fCMatrix.h, fCNDArray.h, fCRowVector.h,
+	fCmplxCHOL.h, fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxLU.h,
+	fCmplxQRP.h, fCmplxSCHUR.h, fCmplxSVD.h, fEIG.h, fMatrix.h,
+	fNDArray.h, file-stat.h, floatCHOL.h, floatGEPBAL.h,
+	floatHESS.h, floatLU.h, floatQRP.h, floatSCHUR.h, floatSVD.h,
+	glob-match.h, idx-vector.h, intNDArray.h, lo-ieee.h,
+	lo-specfun.h, mx-op-decl.h, mx-op-defs.h, oct-env.h, oct-fftw.h,
+	oct-group.h, oct-inttypes.h, oct-mutex.h, oct-passwd.h,
+	oct-rand.h, oct-shlib.h, oct-sort.h, oct-spparms.h, oct-time.h,
+	oct-uname.h, pathsearch.h, sparse-base-chol.h, sparse-base-lu.h,
+	sparse-sort.h, sparse-util.h, statdefs.h, str-vec.h: Untabify.
+
+2010-02-10  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.h (template <class U> Matrix (const Array<U>&)):
+	New constructor.
+	* CMatrix.h (template <class U> ComplexMatrix (const Array<U>&)):
+	New constructor.
+	* fMatrix.h (template <class U> FloatMatrix (const Array<U>&)):
+	New constructor.
+	* fCMatrix.h (template <class U> FloatComplexMatrix (const Array<U>&)):
+	New constructor.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
+	Array<octave_idx_type>&, octave_idx_type, direct)): New constructor.
+	* idx-vector.h: Declare it.
+	(idx_vector::idx_vector (const Array<octave_idx_type>&,
+	octave_idx_type)): New constructor.
+
+2010-02-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc: Include "strftime.h", not <strftime.h>.
+	* file-ops.cc: Include "pathmax.h", not <pathmax.h>.
+
+2010-02-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::prog_invocation_name): Rename from
+	program_invocation_name.  Change all uses.
+	(octave_env::prog_name): Rename from program_name.  Change all uses.
+	(octave_env::do_set_program_name): Call ::set_program_name
+	function from gnulib.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::idx_base_rep::sort_idx): New pure virtual
+	function.
+	(idx_vector::idx_colon_rep::sort_idx,
+	idx_vector::idx_range_rep::sort_idx,
+	idx_vector::idx_scalar_rep::sort_idx,
+	idx_vector::idx_vector_rep::sort_idx,
+	idx_vector::idx_mask_rep::sort_idx): New override decls.
+	idx_vector::sort (Array<octave_idx_type>&): New method.
+	* idx-vector.cc (idx_vector::idx_range_rep::sort_idx,
+	idx_vector::idx_vector_rep::sort_idx): New methods.
+	(idx_vector::idx_vector_rep::sort_uniq_clone): Rewrite
+	to use bucket sort under plausible circumstances.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::permute): Fix result dimensions when inv=true.
+
+2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArrayN.cc (MArrayN::idx_min, MArrayN::idx_max): New methods.
+	* MArrayN.h: Declare them.
+	* lo-mappers.h (xmin, xmax): Define for general arguments.
+
+2010-02-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* chMatrix.h (charMatrix): Rebase directly on Array<char>.
+	* chNDArray.h (charNDArray): Ditto.
+	* chMatrix.cc: Update.
+	* chNDArray.cc: Update.
+	* MArray-ch.cc: Remove.
+	* Makefile.am: Update.
+
+2010-02-04  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (gethostname): Delete function.
+	* lo-sysdep.h (gethostname): Delete declaration.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* oct-syscalls.h, oct-syscalls.cc (octave_fcntl): Assume fcntl exists.
+	Rename from octave_syscalls::fcntl.
+	(octave_syscalls::popen2): Call octave_fcntl, not fcntl.
+	* cmd-hist.cc, lo-sysdep.cc, oct-syscalls.cc:
+	Include <fcntl.h> unconditionally.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* dbleSVD.cc (SVD::init): Ensure args to std::max are the same type.
+	* CmplxSVD.cc (ComplexSVD::init): Likewise.
+	* floatSVD.cc (FloatSVD::init): Likewise.
+	* fCmplxSVD.cc (FloatComplexSVD::init): Likewise.
+	* idx-vector.cc (idx_range_rep): Likewise.
+	* Array.cc (Array<T>::nth_element): Likewise.
+
+	* lo-specfun.cc (null_dims): Delete unused static variable.
+	(betainc): Call dim_vector (0, 0), not dim_vector (0).
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.h (octave_canonicalize_file_name): Rename from
+	file_ops::canonicalize_file_name.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (canonicalize_file_name):
+	Don't pass current directory to octave_env::make_absolute.
+	* cmd-edit.cc (do_decode_prompt_string): Likewise.
+
+	* oct-env.h (octave_env::get_current_directory):
+	Rename from octave_env::getcwd.
+	(octave_env::make_absolute): Provide default value for second arg.
+
+	* lo-sysdep.cc (octave_getcwd): Assume we are using gnulib
+	getcwd module.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.h: Include <ctime>, not "systime.h".
+	* oct-time.cc: Include <strftime.h>, not "strftime.h".
+	Don't include <windows.h>.
+
+	* systime.h: Delete.
+	* Makefile.am (INCS): Remove it from the list.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* lo-utils.h, lo-cutils.c (oct_strptime): Delete.
+	* oct-time.cc (octave_strptime::init): Call strptime, not oct_strptime.
+
+2010-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::determinant): Treat matrices marked as singular
+	normally.
+	* fMatrix.cc (FloatMatrix::determinant): Ditto.
+	* CMatrix.cc (ComplexMatrix::determinant): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::determinant): Ditto.
+
+2010-01-26  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc: Don't tag functions with OCTAVE_API in source file.
+
+2010-01-26  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c, lo-utils.h (octave_link, octave_symlink,
+	octave_readlink, octave_mkdir, octave_mkfifo, octave_rmdir,
+	octave_rename, octave_tempnam, octave_umask, octave_unlink):
+	Delete.
+	* file-io.h, file-io.cc (octave_mkdir,  octave_mkfifo,
+	octave_link, octave_symlink, octave_readlink, octave_rename,
+	octave_rmdir, octave_recursive_rmdir, octave_umask,
+	octave_unlink, octave_tempnam): Rename from file_ops::X to
+	octave_X.  Change all uses.
+	(file_ops::static_members): Incorporate directly into file_ops class.
+
+2010-01-23  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove oct-getopt.c from the list.
+	(LIBOCTAVE_CXX_SOURCES): Remove prog-args.c from the list.
+	(INCS): Remove prog-args.h and oct-getopt.h from the list.
+	* prog-args.cc, prog-args.h, oct-getopt.c, oct-getopt.h: Delete.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* prog-args.h, prog-args.cc (prog_args::get_option,
+	prog_args::option_argument, prog_args::option_index):
+	Don't declare const.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* prog-args.h, prog-args.cc (prog_args::get_option):
+	Rename from getopt. Now const.
+	(prog_args::option_argument): Rename from optarg.  Now const.
+	(prog_args::option_index): Rename from optind.  Now const.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc: Don't include statdefs.h.
+
+2010-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleSVD.cc (SVD::init): Ensure LD* arguments >= 1.
+	* floatSVD.cc (FloatSVD::init): Likewise.
+	* CmplxSVD.cc (ComplexSVD::init): Likewise.
+	* fCmplxSVD.cc (FloatComplexSVD::init): Likewise.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc, fCMatrix.cc, cmd-edit.cc, cmd-hist.cc,
+	file-ops.cc, file-ops.h, file-stat.cc, file-stat.h, filemode.c,
+	kpse.cc, lo-cutils.c, lo-sysdep.cc, lo-utils.cc, oct-env.cc,
+	oct-group.cc, oct-group.h, oct-passwd.cc, oct-passwd.h,
+	oct-time.cc, oct-syscalls.cc, oct-syscalls.h, statdefs.h,
+	sysdir.h, syswait.h, tempname.c, regex-match.h:
+	Assume sys/types.h and unistd.h are present (gnulib provides them).
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.h, file-ops.cc, lo-utils.h, lo-cutils.c: Untabify.
+
+	* file-ops.cc: Don't include unistd.h.
+	(NOT_SUPPORTED): Delete unused macro.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_tempnam): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::tempnam): Call octave_tempnam.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_readlink): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::readlink): Call octave_readlink.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_symlink): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::symlink): Call octave_symlink.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_link): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::link): Call octave_link.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_unlink): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::unlink): Call octave_unlink.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_umask): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::umask): Call octave_umask.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.h (file_ops::mkdir): Move definitions to file-ops.cc.
+	(file_ops::mkfifo): Move definitions to file-ops.cc.
+	(file_ops::mkdir_internal, file_ops::mkfifo_internal): Delete decls.
+	* file-ops.cc (file_ops::mkdir): Call octave_mkdir.
+	(file_ops::mkfifo): Call octave_mkfifo.
+	* lo-cutils.c (octave_mkdir, octave_mkfifo): New functions.
+	* lo-utils.h: Provide decls.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove strptime.c from the list.
+	* strptime.c: Delete.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_rename): New funtion.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::rename): Call octave_rename.
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove rename.c from the list.
+	* rename.c: Delete.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-cutils.c (octave_rmdir): New function.
+	* lo-utils.h: Provide decl.
+	* file-ops.cc (file_ops::rmdir): Call octave_rmdir.
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove rmdir.c from the list.
+	* rmdir.c: Delete.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove strcasecmp.c and
+	strncase.c from the list.
+	* strcasecmp.c, strncase.c: Delete.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (INCS): Remove getopt.h from the list.
+	(LIBOCTAVE_C_SOURCES): Remove getopt.c and getopt1.c from the list.
+	* getopt.c, getopt1.c, getopt.h: Delete.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-f.cc,
+	Array-fC.cc, Array-i.cc, Array-idx-vec.cc, Array-s.cc,
+	Array-str.cc, Array-util.cc, Array-voidp.cc, Array.cc,
+	CColVector.cc, CDiagMatrix.cc, CMatrix.cc, CNDArray.cc,
+	CRowVector.cc, CSparse.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
+	CmplxGEPBAL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
+	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
+	DASRT.cc, DASSL.cc, DiagArray2.cc, EIG.cc, LSODE.cc,
+	MArray-C.cc, MArray-ch.cc, MArray-d.cc, MArray-f.cc,
+	MArray-fC.cc, MArray-i.cc, MArray-s.cc, MArray.cc, MArray2.cc,
+	MArrayN.cc, MDiagArray2.cc, MSparse-C.cc, MSparse-d.cc,
+	MSparse.cc, MatrixType.cc, ODES.cc, Quad.cc, Range.cc,
+	Sparse-C.cc, Sparse-b.cc, Sparse-d.cc, Sparse.cc,
+	SparseCmplxCHOL.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
+	SparseQR.cc, SparsedbleCHOL.cc, SparsedbleLU.cc, base-lu.cc,
+	boolMatrix.cc, boolNDArray.cc, boolSparse.cc, chMatrix.cc,
+	chNDArray.cc, cmd-edit.cc, cmd-hist.cc, dColVector.cc,
+	dDiagMatrix.cc, dMatrix.cc, dNDArray.cc, dRowVector.cc,
+	dSparse.cc, data-conv.cc, dbleAEPBAL.cc, dbleCHOL.cc,
+	dbleGEPBAL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
+	dbleSCHUR.cc, dbleSVD.cc, dir-ops.cc, eigs-base.cc,
+	fCColVector.cc, fCDiagMatrix.cc, fCMatrix.cc, fCNDArray.cc,
+	fCRowVector.cc, fCmplxAEPBAL.cc, fCmplxCHOL.cc, fCmplxGEPBAL.cc,
+	fCmplxHESS.cc, fCmplxLU.cc, fCmplxQR.cc, fCmplxQRP.cc,
+	fCmplxSCHUR.cc, fCmplxSVD.cc, fColVector.cc, fDiagMatrix.cc,
+	fEIG.cc, fMatrix.cc, fNDArray.cc, fRowVector.cc, file-ops.cc,
+	file-stat.cc, floatAEPBAL.cc, floatCHOL.cc, floatGEPBAL.cc,
+	floatHESS.cc, floatLU.cc, floatQR.cc, floatQRP.cc,
+	floatSCHUR.cc, floatSVD.cc, glob-match.cc, idx-vector.cc,
+	int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
+	int8NDArray.cc, intNDArray.cc, kpse.cc, lo-ieee.cc,
+	lo-mappers.cc, lo-specfun.cc, lo-sysdep.cc, lo-utils.cc,
+	mach-info.cc, mx-inlines.cc, oct-alloc.cc, oct-env.cc,
+	oct-fftw.cc, oct-group.cc, oct-inttypes.cc, oct-md5.cc,
+	oct-passwd.cc, oct-rand.cc, oct-shlib.cc, oct-sort.cc,
+	oct-spparms.cc, oct-syscalls.cc, oct-time.cc, oct-uname.cc,
+	pathsearch.cc, prog-args.cc, regex-match.cc,
+	sparse-base-chol.cc, sparse-base-lu.cc, sparse-dmsolve.cc,
+	sparse-sort.cc, sparse-util.cc, str-vec.cc, uint16NDArray.cc,
+	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc,
+	f2c-main.c, lo-cieee.c, lo-cutils.c, oct-getopt.c,
+	oct-rl-edit.c, oct-rl-hist.c, randgamma.c, randmtzig.c,
+	randpoisson.c, Array-util.h, Array.h, Array2.h, Array3.h,
+	ArrayN.h, CColVector.h, CDiagMatrix.h, CMatrix.h, CNDArray.h,
+	CRowVector.h, CSparse.h, CmplxAEPBAL.h, CmplxCHOL.h,
+	CmplxGEPBAL.h, CmplxHESS.h, CmplxLU.h, CmplxQR.h, CmplxQRP.h,
+	CmplxSCHUR.h, CmplxSVD.h, CollocWt.h, DAE.h, DAEFunc.h, DAERT.h,
+	DAERTFunc.h, DASPK.h, DASRT.h, DASSL.h, DiagArray2.h, EIG.h,
+	LSODE.h, MArray.h, MArray2.h, MArrayN.h, MDiagArray2.h,
+	MSparse-defs.h, MSparse.h, Matrix.h, MatrixType.h, ODE.h,
+	ODEFunc.h, ODES.h, ODESFunc.h, Quad.h, Range.h,
+	Sparse-op-defs.h, Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h,
+	SparseCmplxQR.h, SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h,
+	base-dae.h, base-de.h, base-lu.h, base-min.h, boolMatrix.h,
+	boolNDArray.h, boolSparse.h, byte-swap.h, chMatrix.h,
+	chNDArray.h, cmd-edit.h, cmd-hist.h, dColVector.h,
+	dDiagMatrix.h, dMatrix.h, dNDArray.h, dRowVector.h, dSparse.h,
+	data-conv.h, dbleAEPBAL.h, dbleCHOL.h, dbleGEPBAL.h, dbleHESS.h,
+	dbleLU.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h,
+	dir-ops.h, fCColVector.h, fCDiagMatrix.h, fCMatrix.h,
+	fCNDArray.h, fCRowVector.h, fCmplxAEPBAL.h, fCmplxCHOL.h,
+	fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxLU.h, fCmplxQR.h,
+	fCmplxQRP.h, fCmplxSCHUR.h, fCmplxSVD.h, fColVector.h,
+	fDiagMatrix.h, fEIG.h, fMatrix.h, fNDArray.h, fRowVector.h,
+	file-ops.h, file-stat.h, floatAEPBAL.h, floatCHOL.h,
+	floatGEPBAL.h, floatHESS.h, floatLU.h, floatQR.h, floatQRP.h,
+	floatSCHUR.h, floatSVD.h, functor.h, glob-match.h, idx-vector.h,
+	int16NDArray.h, int32NDArray.h, int64NDArray.h, int8NDArray.h,
+	intNDArray.h, kpse-xfns.h, lo-ieee.h, lo-mappers.h, lo-math.h,
+	lo-specfun.h, lo-sysdep.h, lo-traits.h, lo-utils.h, mach-info.h,
+	mx-base.h, mx-defs.h, mx-ext.h, mx-op-defs.h, oct-alloc.h,
+	oct-cmplx.h, oct-env.h, oct-fftw.h, oct-getopt.h, oct-group.h,
+	oct-inttypes.h, oct-md5.h, oct-passwd.h, oct-rand.h,
+	oct-rl-edit.h, oct-rl-hist.h, oct-shlib.h, oct-sort.h,
+	oct-spparms.h, oct-syscalls.h, oct-time.h, oct-uname.h,
+	pathlen.h, pathsearch.h, prog-args.h, randgamma.h, randmtzig.h,
+	randpoisson.h, regex-match.h, sparse-base-chol.h,
+	sparse-base-lu.h, sparse-sort.h, sparse-util.h, statdefs.h,
+	str-vec.h, sun-utils.h, sysdir.h, systime.h, syswait.h,
+	uint16NDArray.h, uint32NDArray.h, uint64NDArray.h,
+	uint8NDArray.h: Remove Emacs local-variables settings.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* boolNDArray.cc (boolNDArray::cumsum): Sum directly in double to
+	avoid a copy.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h: Style fixes.  Remove Emacs local variables block.
+	Untabify.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (PRIVATE_INCS): New variable.  List oct-glob.h
+	here instead of in INCS.
+	(liboctave_la_SOURCES): Include $(PRIVATE_INCS) in the list.
+
+	* glob-match.cc (glob_match::match, glob_match::glob): Now const.
+	Move definitions here from glob-match.h.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_any_r, mx_inline_all_r): New helper
+	reductors.
+	(mx_inline_any, mx_inline_all): Call the here in row-wise reduction
+	with few enough columns.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.h (xmin (double, double), xmax (double, double),
+	xmin (float, float), xmax (float, float)): Inline definitions.
+	* lo-mappers.cc (xmin (double, double), xmax (double, double),
+	xmin (float, float), xmax (float, float)): Remove from here.
+	* mx-inlines.cc (mx_inline_xmin, mx_inline_xmax): Provide
+	specializations for real array-scalar and scalar-array cases.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-norm.cc (norm_accumulator_p::accum, norm_accumulator_mp::accum):
+	Call octave_quit here.
+	(higham_subp): Also here.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-op-defs.h (SND_MINMAX_FCN, NDS_MINMAX_FCN, NDND_MINMAX_FCN):
+	Simplify using mx_inlines machinery.
+	* dNDArray (min, max): Simplify.
+	* fNDArray (min, max): Simplify.
+	* CNDArray (min, max): Simplify.
+	* fCNDArray (min, max): Simplify.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h: Substitute OCTAVE_QUIT -> octave_quit ().
+	* CMatrix.cc: Ditto.
+	* CNDArray.cc: Ditto.
+	* CSparse.cc: Ditto.
+	* CmplxGEPBAL.cc: Ditto.
+	* MArrayN.cc: Ditto.
+	* MSparse.cc: Ditto.
+	* Sparse-diag-op-defs.h: Ditto.
+	* Sparse-op-defs.h: Ditto.
+	* Sparse-perm-op-defs.h: Ditto.
+	* Sparse.cc: Ditto.
+	* Sparse.h: Ditto.
+	* SparseCmplxQR.cc: Ditto.
+	* SparseQR.cc: Ditto.
+	* boolSparse.cc: Ditto.
+	* bsxfun-defs.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* dSparse.cc: Ditto.
+	* dbleGEPBAL.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fCmplxGEPBAL.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fNDArray.cc: Ditto.
+	* file-ops.cc: Ditto.
+	* floatGEPBAL.cc: Ditto.
+	* lo-utils.cc: Ditto.
+	* mx-op-defs.h: Ditto.
+	* oct-fftw.cc: Ditto.
+	* oct-norm.cc: Ditto.
+	* oct-rand.cc: Ditto.
+	* sparse-dmsolve.cc: Ditto.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* bsxfun-defs.cc (BSXFUN_STDOP_DEFS_MXLOOP): Fix reversed min/max
+	defs.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* glob-match.h: Update copyright.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (INCS): Include oct-glob.h in the list.
+	(LIBOCTAVE_CXX_SOURCES): Include oct-glob.cc in the list.
+	* oct-glob.h, oct-glob.cc: New files.
+	* glob-match.cc: (glob_match::match): Move internals to oct-glob.cc.
+	(glob_match::glob_internal): Move internals to oct-glob.cc.
+	(single_match_exists): Move to oct-glob.cc.
+	(glob_match::opts_to_fnmatch_flags): New function.
+	* glob-match.h Include oct-glob.h.
+	(glob_match::glob): Call octave_glob to do the real work.
+	(glob_match::glob_internal): Delete decl.
+	(glob_match::match (const string_vector&)): Move here from
+	glob-match.cc.
+	(glob_match::match (const std::string&)): Call octave_fnmatch to
+	do the real work.
+	(glob_match::fnmatch_flags): Rename from flags.
+	(glob_match::opts_to_fnmatch_flags): New function.
+	(glob_match::glob_match): Use it.
+
+2010-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc (xgemm): Use octave_idx_type rather than int.
+	* fCMatrix.cc (xgemm): Ditto.
+
+2010-01-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-time.cc: Avoid to include nonneeded headers from Win32 API,
+	especially winsock.h. Include <sys/time.h> unconditionally, as it is
+	now provided by gnulib, in order to get gettimeofday defined.
+
+2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::insert): Rewrite using assign.
+	(Array<T>::insert2, Array<T>::insertN): Remove.
+	* Array.h: Update declarations. Add brief documentation.
+
+2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-b.cc: Inline ascending and descending sort.
+	(do_bool_partition): New helper template function.
+	(octave_sort<bool>::sort): Provide specializations.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::insert (const Array<T>&, const
+	Array<octave_idx_type>&): Allow less dimensions than indices.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* chNDArray.h: Declare relational bsxfun ops.
+	* chNDArray.cc: Define them.
+
+2010-01-14  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc: Fix prototype for zherk.
+	* fCMatrix.cc: Fix prototype for cherk.
+
+2010-01-14  John W. Eaton  <jwe@octave.org>
+
+	* oct-rl-edit.c (octave_rl_set_name): Save arg before setting
+	rl_terminal_name.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep (T x)):
+	Initialize dummy variable.
+
+2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::compute_index): Generalize to the case of
+	unequal lengths.
+
+2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::chop_trailing_singletons): Only uniquify
+	if really needed.
+	* Array.h (Array<T>::Array (T*, const dim_vector&)): Call
+	chop_trailing_singletons.
+	(Array<T>::Array (const Array<T>&, const dim_vector&,
+	octave_idx_type...)): Ditto.
+	(Array<T>::Array (const dim_vector&)): Ditto.
+	(Array<T>::Array (const dim_vector&, const T&)): Ditto.
+	(Array<T>::chop_trailing_singletons): Deprecate.
+	* Array.cc (Array::Array(const Array&, const dim_vector&)): Ditto.
+	(Array::index (const Array<idx_vector>&, ...)): Ditto.
+	(Array<T>::permute): Don't call deprecate method here.
+	(Array<T>::assign): Neither here.
+
+2010-01-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Remove unnecessary use of
+	simple_move_if_change_rule to allow Make to update timestamps.
+
+2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::crefT): New helper typedef.
+	(Array<T>::elem const, Array<T>::xelem const,
+	Array<T>::checkelem const, Array<T>::operator () const): Return crefT.
+	(Array<T>::range_error const): Remove overloads.
+	* Array.cc (Array<T>::range_error const): Remove overloads.
+
+2010-01-07  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_time::stamp): Assume gettimeofday is
+	available and that it takes two arguments.
+
+2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-utils.cc (octave_fgets (FILE *, bool&)): Add OCTAVE_QUIT at the
+	end.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (AM_CPPFLAGS): Include @CPPFLAGS@ and -I../libgnu
+	in the list.
+
+2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::maybe_reduce): Implement reduction rule
+	for subsequent ones () indices.
+
+2009-12-28  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (fle_ops::mkdir_internal,
+	file_ops::mkfifo_internal): New private static functions.
+	* file-ops.h (file_ops::mkdir, file_ops::mkdir): Move
+	definitions here from file-ops.cc.  Forward to X_internal functions.
+
+2009-12-26  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.cc (lstat): Delete replacement function.
+	(file_fstat::update_internal): Assume fstat is available.
+
+2009-12-25  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::mkdir): Assume we have an mkdir
+	function that takes two arguments.
+	* mkdir.c: Delete.
+	* Makefile.am (LIBOCTAVE_C_SOURCES): Remove mkdir.c from the list.
+
+2009-12-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-md5.cc (oct_md5_result_to_str): New function.
+	(oct_md5, oct_md5_file): Simplify using gnulib md5 functions and
+	oct_md5_result_to_str.
+
+	* Makefile.am (INCS): Remove md5.h from the list.
+	(LIBOCTAVE_C_SOURCES): Remove md5.c from the list.
+	* md5.c, md5.h: Delete.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Eliminate TOPDIR variable in favor of built-in
+	automake variables of top_builddir and top_srcdir.
+
+2009-12-17  John W. Eaton  <jwe@octave.org>
+
+	* glob-match.h, glob-match.cc (glob_match::glob_internal):
+	Rename from glob_match::glob and make private.
+	* glob-match.h (glob_match::glob): Forward to glob_internal.
+
+2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::index (const idx_vector&)): Fix determining of
+	result dimensions.
+
+2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Range.cc (Range::elem, Range::checkelem, Range::index):
+	New methods.
+	* Range.h: Declare them.
+
+2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::loop, idx_vector::bloop): Fix behavior for
+	masks.
+
+2009-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Use DISTCLEANFILES rather than distclean-local rule.
+	Use PERL variable defined by autoconf rather than direct call.
+	Use simple_move_if_change rule to reduce useless compiles if
+	OPTS_INC have not changed.
+
+2009-12-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-shlib.h: Remove stray declarations.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.cc (octave_dlopen_shlib::octave_dlopen_shlib):
+	Print filename along with message from dlerror.
+	Reverse sense of test.
+
+2009-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-shlib.h (octave_shlib): Rewrite.
+	* oct-shlib.cc (octave_shlib): Rewrite.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_base_tm::strftime): Call nstrftime instead
+	of my_strftime.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc: Include strftime.h.  Don't provide decl for strftime.
+	(octave_base_tm::strftime): Call my_strftime instead of ::strftime.
+	* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libgnu to the list.
+	(LINK_DEPS): Add ../libgnu/libgnu.la to the list.
+	(LIBOCTAVE_C_SOURCES): Remove strftime.c from the list.
+	* strftime.c: Delete.
+
+2009-12-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array-d.cc (Array<double>::is_sorted): Declare as OCTAVE_API.
+	* Array-f.cc (Array<float>::is_sorted): Ditto.
+	* lo-sysdep.cc: Undef min and max after including windows.h
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-d.cc (Array<double>::is_sorted): Optimized specialization.
+	* Array-f.cc (Array<float>::is_sorted): Ditto.
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (lookup_binary): Remove.
+	(octave_sort<T>::lookup (const T*, octave_idx_type, const T&, comp)):
+	Move code here.
+	(octave_sort<T>::lookup (const T*, octave_idx_type, const T*,
+	octave_idx_type, octave_idx_type *, comp)): Remove offset parameter.
+	Use a simple sequence of lookups.
+	(octave_sort<T>::lookup (const T*, octave_idx_type, const T*,
+	octave_idx_type, octave_idx_type *)): Update.
+	(octave_sort<T>::lookupm, octave_sort<T>::lookupb): Remove.
+	(octave_sort<T>::lookup_sorted): New overloaded method.
+
+	* Array.cc (Array<T>::lookup (const Array<T>&, sortmode)): Remove
+	linf & rinf params. Rewrite using is_sorted to check for sortedness,
+	call octave_sort::lookup_sorted to do the sorted merge.
+	(Array<T>::lookupm, Array<T>::lookupb): Remove.
+	(NO_INSTANTIATE_ARRAY_SORT): Update.
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (sortrows_comparator): Rename to safe_comparator.
+	(Array<T>::is_sorted): Use it here.
+	* Array-d.cc: Update.
+	* Array-f.cc: Update.
+	* Array-C.cc: Update.
+	* Array-fC.cc: Update.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (BUILT_NODISTFILES): New variable.
+
+2009-12-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_range_rep::unconvert,
+	idx_vector::idx_scalar_rep::unconvert,
+	idx_vector::idx_vector_rep::unconvert,
+	idx_vector::idx_mask_rep::unconvert): New methods.
+	(idx_vector::unconvert): Use them here. Add mask output.
+	* idx-vector.h: Update decls.
+
+2009-11-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::zero_by_zero): New method.
+	* idx-vector.h (idx_vector::idx_mask_rep::is_colon_equiv): Fix.
+	* Array.cc (Array<T>::assign): Minor tweaks. Optimize
+	A = []; A(1:m,1:n,1:k) = X for all cases. Use a shallow copy
+	for all colon-equivalent indices.
+
+2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::index_class): New member: class_mask.
+	(idx_vector::idx_mask_rep): New class.
+	(idx_vector::idx_vector (bool)): Construct idx_mask_rep.
+	(idx_vector::unmask): New method decl.
+	* idx-vector.cc (idx_vector::idx_vector (const boolNDArray&)):
+	Construct idx_mask_rep conditionally.
+	(idx_vector::unmask): New method.
+	(idx_vector::unconvert): Make non-const. unmask when called on a mask
+	vector.
+	(idx_vector::is_cont_range): Check also for idx_mask_rep.
+
+2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::nnz): New method.
+	* Array.h: Declare it.
+	* MArray.h (MArray<T>::nnz): Remove.
+	* MArrayN.h (MArrayN<T>::nnz): Remove.
+	* boolNDArray.h (boolNDArray::nnz): Remove.
+
+2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleCHOL.cc (CHOL::init): Output LAPACK's info. Resize matrix if
+	nonzero. Use smarter copying.
+	* floatCHOL.cc (FloatCHOL::init): Ditto.
+	* CmplxCHOL.cc (ComplexCHOL::init): Ditto.
+	* fCmplxCHOL.cc (FloatComplexCHOL::init): Ditto.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArrayN.cc (MArrayN::idx_add): New methods.
+	* MArrayN.h: Declare them.
+	* MArray.cc, MArray.h: Remove from here.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::safe_numel): New method.
+	* Array.h (Array<T>::Array (const dim_vector&),
+	Array<T>::Array (const dim_vector&, const T&),
+	Array<T>::Array (T *, const dim_vector&)): Use it here.
+	* Array.cc (Array<T>::clear (const dim_vector&)): Also here.
+	(Array<T>::get_size): Remove.
+	* Array2.h (Array2::get_size): Remove.
+	* Array3.h (Array3::get_size): Remove.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array::clear (const dim_vector&)): Use get_size.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc (do_erfinv): New static function.
+	(erfinv (double), erfinv (float)): New mappers.
+	* lo-mappers.h: Declare them.
+
+2009-11-18  David Grundberg  <davidg@cs.umu.se>
+
+       * str-vec.cc (string_vector::list_in_columns): Avoid crash on
+       empty arguments from list_in_columns.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.h (read_sparse_matrix): Fix order of tests and reads.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_any_negative, mx_inline_pow): New loops.
+	(DEFMXMAPPER2X): New macro.
+	* bsxfun-decl.h (BSXFUN_OP2_DECL): New macro.
+	* bsxfun-defs.cc (BSXFUN_OP2_DEF, BSXFUN_OP2_DEF_MXLOOP): New macros.
+	(do_bsxfun_op): Use OCTAVE_QUIT.
+	* dNDArray.cc (NDArray::all_integers (void)): New method.
+	(NDArray::any_element_is_negative): Use mx_inline_any_negative.
+	(bsxfun_pow (const NDArray&, const NDArray&),
+	bsxfun_pow (const ComplexNDArray&, const NDArray&)): New functions.
+	* dNDArray.h: Update.
+	* fNDArray.cc (FloatNDArray::all_integers (void)): New method.
+	(FloatNDArray::any_element_is_negative): Use mx_inline_any_negative.
+	(bsxfun_pow (const FloatNDArray&, const FloatNDArray&),
+	bsxfun_pow (const FloatComplexNDArray&, const FloatNDArray&)):
+	New functions.
+	* fNDArray.h: Update.
+	* CNDArray.cc (bsxfun_pow (const ComplexNDArray&, const
+	ComplexNDArray&)): New function.
+	* CNDArray.h: Update.
+	* fCNDArray.cc (bsxfun_pow (const FloatComplexNDArray&, const
+	FloatComplexNDArray&)): New function.
+	* fCNDArray.h: Update.
+
+2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CNDArray.cc (ComplexNDArray::all_elements_are_real):
+	Use mx_inline_all_real.
+	* CMatrix.cc (ComplexMatrix::all_elements_are_real): Ditto.
+	* fCNDArray.cc (FloatComplexNDArray::all_elements_are_real):
+	Use mx_inline_all_real.
+	* fCMatrix.cc (FloatComplexMatrix::all_elements_are_real): Ditto.
+	* CDiagMatrix.cc (ComplexDiagMatrix::all_elements_are_real): Ditto.
+	* fCDiagMatrix.cc (FloatComplexDiagMatrix::all_elements_are_real):
+	Ditto.
+	* CSparse.cc (SparseComplexMatrix::all_elements_are_real): Ditto.
+
+2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* base-aepbal.h (permuting_vector): Fix lower part swapping.
+
+2009-11-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (liboctave_la_CPPFLAGS): Add @OCTAVE_DLL_DEFS@ to
+	the list of flags.
+
+2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_any_nan): Rewrite.
+	(mx_inline_all_real): New reduction loop.
+
+2009-11-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc ( rc_acos, rc_acos, rc_acosh, rc_acosh, rc_asin,
+	rc_asin, rc_atanh, rc_atanh, rc_log, rc_log, rc_xlog2, rc_log2,
+	rc_log10, rc_log10, rc_sqrt, rc_sqrt): New mappers.
+	* lo-mappers.h: Declare them.
+
+	* lo-specfun.cc (rc_lgamma, rc_lgamma, rc_log1p, rc_log1p): New
+	mappers.
+	* lo-specfun.h: Declare them.
+	* Array.h (Array<T>::map): Unroll loop to reduce OCTAVE_QUIT checking.
+	Provide function-reference overloads.
+
+	* MArray.h (MArray<T>::map): Provide function-reference overloads.
+	* Array2.h (Array2<T>::map): Ditto.
+	* MArray2.h (MArray2<T>::map): Ditto.
+
+	* Sparse.h (Sparse<T>::map): Ditto.
+	* MSparse.h (MSparse<T>::map): Ditto.
+
+	* dNDArray.h (NDArray::map): Remove.
+	* dNDArray.cc (NDArray::map): Remove.
+	* fNDArray.h (FloatNDArray::map): Remove.
+	* fNDArray.cc (FloatNDArray::map): Remove.
+	* CNDArray.h (ComplexNDArray::map): Remove.
+	* CNDArray.cc (ComplexNDArray::map): Remove.
+	* fCNDArray.h (FloatComplexNDArray::map): Remove.
+	* fCNDArray.cc (FloatComplexNDArray::map): Remove.
+
+	* dMatrix.h (Matrix::map): Remove.
+	* dMatrix.cc (Matrix::map): Remove.
+	* fMatrix.h (FloatMatrix::map): Remove.
+	* fMatrix.cc (FloatMatrix::map): Remove.
+	* CMatrix.h (ComplexMatrix::map): Remove.
+	* CMatrix.cc (ComplexMatrix::map): Remove.
+	* fCMatrix.h (FloatComplexMatrix::map): Remove.
+	* fCMatrix.cc (FloatComplexMatrix::map): Remove.
+
+	* dRowVector.h (RowVector::map): Remove.
+	* dRowVector.cc (RowVector::map): Remove.
+	* fRowVector.h (FloatRowVector::map): Remove.
+	* fRowVector.cc (FloatRowVector::map): Remove.
+	* CRowVector.h (ComplexRowVector::map): Remove.
+	* CRowVector.cc (ComplexRowVector::map): Remove.
+	* fCRowVector.h (FloatComplexRowVector::map): Remove.
+	* fCRowVector.cc (FloatComplexRowVector::map): Remove.
+
+	* dColVector.h (ColumnVector::map): Remove.
+	* dColVector.cc (ColumnVector::map): Remove.
+	* fColVector.h (FloatColumnVector::map): Remove.
+	* fColVector.cc (FloatColumnVector::map): Remove.
+	* CColVector.h (ComplexColumnVector::map): Remove.
+	* CColVector.cc (ComplexColumnVector::map): Remove.
+	* fCColVector.h (FloatComplexColumnVector::map): Remove.
+	* fCColVector.cc (FloatComplexColumnVector::map): Remove.
+
+	* dSparse.h (SparseMatrix::map): Remove.
+	* dSparse.cc (SparseMatrix::map): Remove.
+	* CSparse.h (SparseComplexMatrix::map): Remove.
+	* CSparse.cc (SparseComplexMatrix::map): Remove.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* lo-ieee.cc (octave_ieee_init): Improve comment about systems
+	without IEEE floating point format.
+
+2009-11-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_map): New template loop.
+	(DEFMXMAPPER): New macro.
+	(DEFMXMAPPER2): Rename from DEFMXMAPPER.
+	(do_mx_unary_map): New applier.
+	(mx_inline_real, mx_inline_complex): New loops.
+	* dNDArray.cc (NDArray::abs, NDArray::isnan, NDArray::isinf,
+	NDArray::isfinite, real, imag): Use new constructs.
+	* fNDArray.cc (FloatNDArray::abs, FloatNDArray::isnan,
+	FloatNDArray::isinf, FloatNDArray::isfinite, real, imag): Ditto.
+	* CNDArray.cc (ComplexNDArray::abs, ComplexNDArray::isnan,
+	ComplexNDArray::isinf, ComplexNDArray::isfinite, conj): Use new
+	constructs.
+	* fCNDArray.cc (FloatComplexNDArray::abs, FloatComplexNDArray::isnan,
+	FloatComplexNDArray::isinf, FloatComplexNDArray::isfinite, conj): Use
+	new constructs.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* mx-ops, sparse-mx-ops, vx-ops, vx-ops:
+	Add comment about updating.
+	* Makefile.am, config-ops.sh: New files.
+	* Makefile.in: Delete.
+
+2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dSparse.h (Sparse::max): Use Array<octave_idx_type>.
+	* dSparse.cc: Update.
+	* CSparse.h (Sparse::max): Use Array<octave_idx_type>.
+	* CSparse.cc: Update.
+	* dNDArray.h (NDArray::max, NDArray::min, NDArray::cummax,
+	NDArray::cummin, NDArray::diff): Use dim = -1 as default.
+	* fNDArray.h (FloatNDArray::max, FloatNDArray::min, FloatNDArray::cummax,
+	FloatNDArray::cummin, FloatNDArray::diff): Use dim = -1 as default.
+	* CNDArray.h (ComplexNDArray::max, ComplexNDArray::min,
+	ComplexNDArray::cummax, ComplexNDArray::cummin, ComplexNDArray::diff):
+	Use dim = -1 as default.
+	* fCNDArray.h (FloatComplexNDArray::max, FloatComplexNDArray::min,
+	FloatComplexNDArray::cummax, FloatComplexNDArray::cummin,
+	FloatComplexNDArray::diff): Use dim = -1 as default.
+	* intNDArray.h (intNDArray::max, intNDArray::min, intNDArray::cummax,
+	intNDArray::cummin, intNDArray::diff): Use dim = -1 as default.
+
+2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-mem.h: Rename octave_ucopy -> copy_or_memcpy,
+	octave_fill -> fill_or_memset, octave_new -> no_ctor_new,
+	octave_delete -> no_ctor_delete.
+	* Array.h: Update.
+	* Array.cc: Update.
+	* idx-vector.h: Update.
+	* idx-vector.cc: Update.
+
+2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-mem.h: New source.
+	* Makefile.in: Include it.
+	* Array.h (Array<T>::ArrayRep::ArrayRep (...)): Use octave_new,
+	octave_ucopy and octave_fill.
+	(Array<T>::ArrayRep::~ArrayRep): Use octave_delete.
+	(Array<T>::coerce): Use octave_new.
+	* Array.cc (Array<T>::fill, rec_resize_helper::do_resize_fill,
+	Array<T>::resize_fill, rec_permute_helper::do_permute,
+	Array<T>::delete_elements): Use octave_ucopy and octave_fill.
+	* idx-vector.h (index_vector::index, index_vector::assign): Use
+	octave_ucopy.
+	* idx-vector.cc (index_vector::copy_data): Ditto.
+
+2009-11-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::maybe_reduce): Implement (i:k:end, :)
+	and (i:k:end, p:q) reductions.
+
+2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (twosum_accum): Remove FLOAT_TRUNCATE.
+
+2009-10-28  John W. Eaton  <jwe@octave.org>
+
+	* PermMatrix.cc: Don't include error.h.
+
+2009-10-27  David Bateman  <dbateman@free.fr>
+
+	* SparsedbleLU.cc (SparseLU::SparseLU (const SparseMatrix&,
+	const Matrix&, bool), SparseLU::SparseLU (const SparseMatrix&,
+	const ColumnVector&, const Matrix&, boo, bool, double, bool,
+	bool)): Fix test for valid pivot tolerance.
+	* SparseCmplxLU.cc (SparseComplexLU::SparseComplexLU
+	(const SparseComplexMatrix&, const Matrix&, bool),
+	SparseComplexLU::SparseComplexLU (const SparseComplexMatrix&,
+	const ColumnVector&, const Matrix&, boo, bool, double, bool,
+	bool)): Ditto.
+
+2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_range_rep::idx_range_rep
+	(octave_idx_type, octave_idx_type, octave_idx_type)):
+	Improve checking.
+
+2009-10-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.h 	(octave_time::octave_time (time_t t, int us)):
+	New constructor.
+	(operator + (const octave_time&, const octave_time&)): New function.
+
+	* file-stat.h (base_file_stat::time_resolution): New function.
+
+2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* bsxfun-decl.h, bsxfun-defs.cc: New sources.
+	* Makefile.in: Add them.
+	* dim-vector.h (dim_vector::compute_index,
+	dim_vector::increment_index): Fix.
+	* mx-inlines.cc (DEFMXMAPPER, DEFMXLOCALMAPPER): New macros.
+	(mx_inline_xmin, mx_inline_xmax): New loops.
+	(mx_inline_fun): Remove.
+	* oct-inttypes.h (xmin (const octave_int<T>&, const octave_int<T>&),
+	xmax (const octave_int<T>&, const octave_int<T>&)):
+	New inline functions.
+
+	* CNDArray.cc: Define bsxfun operations.
+	* boolNDArray.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fNDArray.cc: Ditto.
+	* int16NDArray.cc: Ditto.
+	* int32NDArray.cc: Ditto.
+	* int64NDArray.cc: Ditto.
+	* int8NDArray.cc: Ditto.
+	* uint16NDArray.cc: Ditto.
+	* uint32NDArray.cc: Ditto.
+	* uint64NDArray.cc: Ditto.
+	* uint8NDArray.cc: Ditto.
+
+	* CNDArray.h: Declare bsxfun operations.
+	* boolNDArray.h: Ditto.
+	* dNDArray.h: Ditto.
+	* fCNDArray.h: Ditto.
+	* fNDArray.h: Ditto.
+	* int16NDArray.h: Ditto.
+	* int32NDArray.h: Ditto.
+	* int64NDArray.h: Ditto.
+	* int8NDArray.h: Ditto.
+	* uint16NDArray.h: Ditto.
+	* uint32NDArray.h: Ditto.
+	* uint64NDArray.h: Ditto.
+	* uint8NDArray.h: Ditto.
+
+2009-10-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::compute_index,
+	dim_vector::increment_index, dim_vector::cumulative,
+	dim_vector::cum_compute_index): New methods.
+
+2009-10-18  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
+
+	* Makefile.in: Remove ArrayN.cc.
+
+2009-10-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Include base-qr.h and base-qr.cc.
+
+2009-10-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQR.cc: Initialize QR::raw, QR::economy and QR::std.
+
+2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ArrayN.h: Remove everything, just #define ArrayN Array.
+	Warn if under gcc.
+	* ArrayN.cc: Remove.
+	* Array.cc (operator >>): New operator.
+	* Array.h: Declare it.
+
+	* Array-C.cc: Remove traces of ArrayN.
+	* Array-b.cc: Ditto.
+	* Array-ch.cc: Ditto.
+	* Array-d.cc: Ditto.
+	* Array-f.cc: Ditto.
+	* Array-fC.cc: Ditto.
+	* CNDArray.cc: Ditto.
+	* CNDArray.h: Ditto.
+	* MArrayN.h: Ditto.
+	* boolNDArray.cc: Ditto.
+	* boolNDArray.h: Ditto.
+	* chNDArray.h: Ditto.
+	* dNDArray.cc: Ditto.
+	* dNDArray.h: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fCNDArray.h: Ditto.
+	* fNDArray.cc: Ditto.
+	* fNDArray.h: Ditto.
+	* intNDArray.cc: Ditto.
+	* intNDArray.h: Ditto.
+	* lo-specfun.cc: Ditto.
+	* lo-specfun.h: Ditto.
+
+	* mx-op-defs.h (DMS_BIN_OP, SDM_BIN_OP): Rewrite.
+	(DMS_BIN_OPS, SDM_BIN_OPS): Define dm*s and dm/s rather than dm+s and
+	dm-s which are rather useless.
+	* mx-ops: Update.
+
+2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::column, Array<T>::page, Array<T>::linearize,
+	Array<T>::linear_slice): New methods.
+	* Array.h: Declare them
+	* ArrayN.h: Forward them.
+
+2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::nth_element): New overloaded method.
+	* oct-sort.h: Declare it.
+	* Array.cc (Array<T>::nth_element): New method.
+	* Array.h: Declare it.
+	(Array<T>::sort): Use int for dim argument.
+	* ArrayN.h (ArrayN<T>::nth_element): Wrap.
+	(ArrayN<T>::sort): Use int for dim argument.
+
+2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-traits.h (equal_types, is_instance, subst_template_param): New
+	traits classes.
+	* mx-inlines.cc (op_dble_sum, twosum_accum): New helper funcs.
+	(mx_inline_dsum, mx_inline_xsum): New reduction loops.
+	* fNDArray.cc (FloatNDArray::dsum): New method.
+	* fNDArray.h: Declare it.
+	* fCNDArray.cc (FloatComplexNDArray::dsum): New method.
+	* fCNDArray.h: Declare it.
+	* dNDArray.cc (NDArray::xsum): New method.
+	* dNDArray.h: Declare it.
+	* CNDArray.cc (ComplexNDArray::xsum): New method.
+	* CNDArray.h: Declare it.
+	* intNDArray.cc (intNDArray::dsum): New method.
+	* intNDArray.h: Declare it.
+
+2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* base-qr.cc (base_qr::regular): New method.
+	* base-qr.h: Declare it.
+	* base-lu.cc (base_lu::regular): New method.
+	* base-lu.h: Declare it.
+
+2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* base-qr.h: New source.
+	* base-qr.cc: New source.
+	* dbleQR.h (QR): Rebase on base_qr<Matrix>.
+	* dbleQR.cc: Ditto.
+	* floatQR.h (QR): Rebase on base_qr<FloatMatrix>.
+	* floatQR.cc: Ditto.
+	* CmplxQR.h (QR): Rebase on base_qr<ComplexMatrix>.
+	* CmplxQR.cc: Ditto.
+	* fCmplxQR.h (QR): Rebase on base_qr<FloatComplexMatrix>.
+	* fCmplxQR.cc: Ditto.
+	* dbleQRP.h (QR): Update.
+	* dbleQRP.cc: Ditto.
+	* floatQRP.h (QR): Update.
+	* floatQRP.cc: Ditto.
+	* CmplxQRP.h (QR): Update.
+	* CmplxQRP.cc: Ditto.
+	* fCmplxQRP.h (QR): Update.
+	* fCmplxQRP.cc: Ditto.
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* PermMatrix.cc (PermMatrix::eye): New method.
+	* PermMatrix.h: Declare it.
+	* dbleLU.cc (LU::update, LU::update_piv): New overloaded methods.
+	* dbleLU.h: Declare them.
+	* floatLU.cc (FloatLU::update, FloatLU::update_piv): New overloaded
+	methods.
+	* floatLU.h: Declare them.
+	* CmplxLU.cc (ComplexLU::update, ComplexLU::update_piv): New
+	overloaded methods.
+	* CmplxLU.h: Declare them.
+	* fCmplxLU.cc (FloatComplexLU::update, FloatComplexLU::update_piv):
+	New overloaded methods.
+	* fCmplxLU.h: Declare them.
+
+2009-10-07  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (mx_inline_diff): Avoid uninitialized variable warning.
+
+2009-10-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dDiagMatrix.cc (operator *(const DiagMatrix&, const DiagMatrix&)):
+	Rewrite.
+	* fDiagMatrix.cc (operator *(const FloatDiagMatrix&, const FloatDiagMatrix&)):
+	Rewrite.
+	* CDiagMatrix.cc (operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)):
+	Rewrite.
+	* fCDiagMatrix.cc (operator *(const FloatComplexDiagMatrix&, const
+	FloatComplexDiagMatrix&)):
+	Rewrite.
+	* DiagArray2.h (DiagArray2::diag_length): New method.
+	* PermMatrix.h (PermMatrix::length): Make consistent with
+	DiagArray2::length.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* base-lu.cc (base_lu::unpack): Unpack getp as well.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* PermMatrix.cc (PermMatrix::determinant): Implement a (hopefully)
+	working algorithm.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (operator ==): Include fast case.
+	* base-lu.cc (base_lu::packed, base_lu::unpack): New methods.
+	(base_lu::L, base_lu::U, base_lu::Y, base_lu::getp): Distinguish
+	packed vs. unpacked case.
+	* base-lu.h: Update decls.
+	(base_lu::l_fact): New member field.
+
+2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-traits.h (strip_template_param): New trait class.
+
+2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::permute): Fast case identity permutation.
+
+2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-cmplx.h: Fix complex-real orderings.
+
+2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::redim): Rewrite.
+	* Array-util.cc (sub2ind): Allow single index case.
+
+2009-09-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
+	(operator *(const Matrix&, const Matrix&)): Update.
+	* fMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
+	(operator *(const FloatMatrix&, const FloatMatrix&)): Update.
+	* CMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
+	(operator *(const ComplexMatrix&, const ComplexMatrix&)): Update.
+	* fCMatrix.cc (xgemm): Use blas_trans_type to indicate transposes.
+	(operator *(const FloatComplexMatrix&, const FloatComplexMatrix&)): Update.
+	* dMatrix.h: Update decl.
+	* fMatrix.h: Update decl.
+	* CMatrix.h: Update decl.
+	* fCMatrix.h: Update decl.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const Matrix&, const
+	Matrix&)): New constructor.
+	(operator * (Matrix, ComplexMatrix), operator * (ComplexMatrix,
+	Matrix)): Optimize.
+	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix (const FloatMatrix&, const
+	FloatMatrix&)): New constructor.
+	(operator * (FloatMatrix, FloatComplexMatrix), operator * (FloatComplexMatrix,
+	FloatMatrix)): Optimize.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (stack_complex_matrix, unstack_complex_matrix): New
+	static funcs.
+	(Matrix::solve (..., const ComplexMatrix&, ...)): Use the above funcs.
+	Improve forwarding.
+	* fMatrix.cc (stack_complex_matrix, unstack_complex_matrix): New
+	static funcs.
+	(FloatMatrix::solve (..., const FloatComplexMatrix&, ...)): Use the
+	above funcs.  Improve forwarding.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-defs.h (blas_trans_type): New enum.
+	(get_blas_char): New inline func.
+	* dMatrix.cc (Matrix::utsolve, Matrix::ltsolve, Matrix::solve):
+	Support transt parameter.
+	* fMatrix.cc (FloatMatrix::utsolve, FloatMatrix::ltsolve,
+	FloatMatrix::solve): Ditto.
+	* CMatrix.cc (ComplexMatrix::utsolve, ComplexMatrix::ltsolve,
+	ComplexMatrix::solve): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::utsolve,
+	FloatComplexMatrix::ltsolve, FloatComplexMatrix::solve): Ditto.
+	* dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h: Update.
+
+2009-09-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-op-defs.h (VS_BIN_OP, SV_BIN_OP, VV_BIN_OP): Simplify.
+
+2009-09-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dNDArray.h (NDArray::matrix_type): New typedef.
+	* fNDArray.h (FloatNDArray::matrix_type): New typedef.
+	* CNDArray.h (ComplexNDArray::matrix_type): New typedef.
+	* fCNDArray.h (FloatComplexNDArray::matrix_type): New typedef.
+	* boolNDArray.h (boolNDArray::matrix_type): New typedef.
+	* charNDArray.h (charNDArray::matrix_type): New typedef.
+
+	* dMatrix.h (Matrix::column_vector_type,
+	Matrix::row_vector_type): New typedefs.
+	* fMatrix.h (FloatMatrix::column_vector_type,
+	FloatMatrix::row_vector_type): New typedefs.
+	* CMatrix.h (ComplexMatrix::column_vector_type,
+	ComplexMatrix::row_vector_type): New typedefs.
+	* fCMatrix.h (FloatComplexMatrix::column_vector_type,
+	FloatComplexMatrix::row_vector_type): New typedefs.
+
+2009-09-18  John W. Eaton  <jwe@octave.org>
+
+	* mach-info.cc: Don't include oct-types.h.
+
+2009-09-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (NoAlias): New template class.
+	* dRowVector.cc (linspace): Rewrite.
+	* fRowVector.cc (linspace): Rewrite.
+	* CRowVector.cc (linspace): Rewrite.
+	* fCRowVector.cc (linspace): Rewrite.
+	* dMatrix.cc (linspace): New method.
+	* dMatrix.h (linspace): Declare it.
+	* fMatrix.cc (linspace): New method.
+	* fMatrix.h (linspace): Declare it.
+	* CMatrix.cc (linspace): New method.
+	* CMatrix.h (linspace): Declare it.
+	* fCMatrix.cc (linspace): New method.
+	* fCMatrix.h (linspace): Declare it.
+
+2009-09-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-types.h.in: Delete.
+	* Makefile.in (BUILT_INCLUDES, DISTFILES): Remove oct-types.h.in
+	from the list.
+	(distclean, maintainer-clean): Don't remove oct-types.h
+	* DAEFunc.h, MatrixType.h, base-aepbal.h, dim-vector.h,
+	lo-specfun.h, lo-utils.h, mx-op-decl.h, oct-inttypes.h,
+	randgamma.h, randmtzig.h, randpoisson.h:
+	Don't include oct-types.h.
+
+2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-rand.cc (octave_rand::do_matrix, do_nd_array, do_vector):
+	Use Array::clear rather than Array::resize.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dColVector.h (operator *(const Matrix&, const ColumnVector)):
+	Optimize.
+	* fColVector.h (operator *(const FloatMatrix&, const
+	FloatColumnVector)): Optimize.
+	* CColVector.h (operator *(const ComplexMatrix&, const
+	ComplexColumnVector)): Optimize.
+	* fCColVector.h (operator *(const FloatComplexMatrix&, const
+	FloatComplexColumnVector)): Optimize.
+
+2009-09-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::clear (const dim_vector&)): new method.
+	* Array.h: Declare it.
+	(Array<T>::clear (octave_idx_type)): New method.
+	(Array<T>::clear (octave_idx_type, octave_idx_type)): New method.
+
+2009-09-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (DEFMXBOOLOPEQ): New macro.
+	(mx_inline_and2, mx_inline_or2): New loops.
+
+	* MArray.h (MArray<T>::MArray (const dim_vector&)): New constructor.
+	(MArray<T>::MArray (const Array<T>&)): Ensure column vector.
+	(MArray<T>::resize): New method.
+	* DiagArray2.h (DiagArray2<T>::DiagArray2 (const dim_vector&)): New
+	constructor.
+	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2 (const dim_vector&)): New
+	constructor.
+	* dColVector.h (ColumnVector::ColumnVector (const dim_vector&)): New
+	constructor.
+	* fColVector.h (FloatColumnVector::FloatColumnVector (const
+	dim_vector&)): New constructor.
+	* CColVector.h (ComplexColumnVector::ComplexColumnVector (const
+	dim_vector&)): New constructor.
+	* fCColVector.h (FloatComplexColumnVector::FloatComplexColumnVector
+	(const dim_vector&)): New constructor.
+	* dRowVector.h (RowVector::RowVector (const dim_vector&)): New
+	constructor.
+	* fRowVector.h (FloatRowVector::FloatRowVector (const dim_vector&)):
+	New constructor.
+	* CRowVector.h (ComplexRowVector::ComplexRowVector (const
+	dim_vector&)): New constructor.
+	* fCRowVector.h (FloatComplexRowVector::FloatComplexRowVector (const
+	dim_vector&)): New constructor.
+
+	* CNDArray.cc (operator *= (const ComplexNDArray, double)): Simplify.
+	* fCNDArray.cc (operator *= (const FloatComplexNDArray, float)): Simplify.
+
+	* MArray.cc
+	(operator += (MArray<T>&, const T&)): Simplify.
+	(operator -= (MArray<T>&, const T&)): Simplify.
+	(operator *= (MArray<T>&, const T&)): Simplify.
+	(operator /= (MArray<T>&, const T&)): Simplify.
+	(operator += (MArray<T>&, const MArray<T>&)): Simplify.
+	(operator -= (MArray<T>&, const MArray<T>&)): Simplify.
+	(product (MArray<T>&, const MArray<T>&)): Simplify.
+	(quotient (MArray<T>&, const MArray<T>&)): Simplify.
+	(MARRAY_AS_OP): Simplify.
+	(MARRAY_SA_OP): Simplify.
+	(MARRAY_AA_OP): Simplify.
+	(operator - (const MArray<T>&)): Simplify.
+
+	* MArray2.cc
+	(operator += (MArray2<T>&, const T&)): Simplify.
+	(operator -= (MArray2<T>&, const T&)): Simplify.
+	(operator *= (MArray2<T>&, const T&)): Simplify.
+	(operator /= (MArray2<T>&, const T&)): Simplify.
+	(operator += (MArray2<T>&, const MArray<T>&)): Simplify.
+	(operator -= (MArray2<T>&, const MArray<T>&)): Simplify.
+	(product (MArray2<T>&, const MArray<T>&)): Simplify.
+	(quotient (MArray2<T>&, const MArray<T>&)): Simplify.
+	(MARRAY_A2S_OP): Simplify.
+	(MARRAY_SA2_OP): Simplify.
+	(MARRAY_A2A2_OP): Simplify.
+	(operator - (const MArray2<T>&)): Simplify.
+
+	* MArrayN.cc
+	(operator += (MArrayN<T>&, const T&)): Simplify.
+	(operator -= (MArrayN<T>&, const T&)): Simplify.
+	(operator *= (MArrayN<T>&, const T&)): Simplify.
+	(operator /= (MArrayN<T>&, const T&)): Simplify.
+	(operator += (MArrayN<T>&, const MArray<T>&)): Simplify.
+	(operator -= (MArrayN<T>&, const MArray<T>&)): Simplify.
+	(product (MArrayN<T>&, const MArray<T>&)): Simplify.
+	(quotient (MArrayN<T>&, const MArray<T>&)): Simplify.
+	(MARRAY_NDS_OP): Simplify.
+	(MARRAY_SND_OP): Simplify.
+	(MARRAY_NDND_OP): Simplify.
+	(operator - (const MArrayN<T>&)): Simplify.
+
+	* MDiagArray2.cc
+	(operator += (MDiagArray2<T>&, const MDiagArray2<T>&)): Simplify.
+	(operator -= (MDiagArray2<T>&, const MDiagArray2<T>&)): Simplify.
+	(operator *= (MDiagArray2<T>&, T)): Simplify.
+	(operator /= (MDiagArray2<T>&, T)): Simplify.
+	(MARRAY_DAS_OP, MARRAY_SDA_OP, MARRAY_DADA_OP): Simplify.
+	* boolNDArray.cc (mx_el_and_assign, mx_el_or_assign): Simplify.
+
+	* MArray-defs.h (DO_VS_OP, DO_SV_OP, DO_VV_OP,
+	DO_VS_OP2, DO_VV_OP2, NEGV): Remove.
+
+2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (DEFMXUNOPEQ): New macro.
+	(mx_inline_not2, mx_inline_uminus2): New loops.
+	* boolNDArray.cc (boolNDArray::invert): New method.
+	* boolNDArray.h: Declare it.
+	* MArrayN.cc (MArrayN<T>::changesign): New method.
+	* MArrayN.h: Declare it.
+	* dNDArray.cc (NDArray::changesign): New method.
+	* dNDArray.h: Declare it.
+	* fNDArray.cc (FloatNDArray::changesign): New method.
+	* fNDArray.h: Declare it.
+	* CNDArray.cc (ComplexNDArray::changesign): New method.
+	* CNDArray.h: Declare it.
+	* fCNDArray.cc (FloatComplexNDArray::changesign): New method.
+	* fCNDArray.h: Declare it.
+	* intNDArray.cc (intNDArray::changesign): New method.
+	* intNDArray.h: Declare it.
+
+2009-09-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-cmplx.h: Rewrite the comaprison ops. Use FLOAT_TRUNCATE.
+
+2009-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-cmplx.h: Correct strict operators in macros.
+
+2009-08-31  John W. Eaton  <jwe@octave.org>
+
+	* lo-ieee.cc (octave_ieee_init): Abort if floating point format
+	is not recognized as IEEE.
+
+2009-08-27  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.cc, str-vec.h (string_vector::string_vector (const
+	std::set<std::string>&)): New constructor.
+
+2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (DEFCMPLXCMOP): Remove.
+	* oct-cmplx.h (operator <, operator >): Remove definitions.
+	(DEF_COMPLEXR_COMP): New macro. Instantiate for <, >, <=, >=.
+	* mx-op-defs.h (MM_CMP_OP, MS_CMP_OP, SM_CMP_OP,
+	NDND_CMP_OP, NDS_CMP_OP, SND_CMP_OP): Replace by one-liners. Remove
+	unused parameters.
+	(MM_CMP_OPS, MS_CMP_OPS, SM_CMP_OPS, NDND_CMP_OPS, NDS_CMP_OPS,
+	SND_CMP_OPS): Update.
+	(NDS_CMP_OP1, NDS_CMP_OPS1, NDS_CMP_OP2, NDS_CMP_OPS2,
+	SND_CMP_OP1, SND_CMP_OPS1, SND_CMP_OP2, SND_CMP_OPS2): Remove.
+	* mk-ops.awk: Simplify CMP_OPS branch.
+	* Sparse-op-defs.h (SPARSE_SMSM_CMP_OPS, SPARSE_SMS_CMP_OPS,
+	SPARSE_SSM_CMP_OPS, SPARSE_MSM_CMP_OPS, SPARSE_SMM_CMP_OPS):
+	Update.
+
+	* CNDArray.cc: Update syntax.
+	* boolNDArray.cc: Ditto.
+	* chNDArray.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fNDArray.cc: Ditto.
+
+	* int16NDArray.cc: Ditto.
+	* int32NDArray.cc: Ditto.
+	* int64NDArray.cc: Ditto.
+	* int8NDArray.cc: Ditto.
+	* uint16NDArray.cc: Ditto.
+	* uint32NDArray.cc: Ditto.
+	* uint64NDArray.cc: Ditto.
+	* uint8NDArray.cc: Ditto.
+
+	* CMatrix.cc: Ditto.
+	* boolMatrix.cc: Ditto.
+	* chMatrix.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fMatrix.cc: Ditto.
+
+2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArray.cc (MArray<T>::product_eq, MArray<T>::quotient_eq): New
+	methods.
+	* MArray2.cc (MArray2<T>::product_eq, MArray2<T>::quotient_eq): Ditto.
+	* MArrayN.cc (MArrayN<T>::product_eq, MArrayN<T>::quotient_eq): Ditto.
+	* MArray-decl.h (MARRAY_OP_ASSIGN_DECLX): New macro.
+	(MARRAY_OP_ASSIGN_DECLS, MARRAY_OP_ASSIGN_FWD_DEFS): Include
+	product_eq and quotient_eq.
+	(MARRAY_FORWARD_DEFS): Use MARRAY_OP_ASSIGN_FWD_DEFS1.
+	(MDIAGARRAY2_OPS_FORWARD_DECLS): Don't instantiate
+	OP= operators for diag matrices.
+	(MDIAGARRAY2_FORWARD_DEFS): Ditto.
+	* MArray-defs.h (INSTANTIATE_MDIAGARRAY2_FRIENDS): Ditto.
+
+2009-08-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array::make_unique, Array::~Array, Array::operator =):
+	Move here to allow inlining.
+	* Array.cc: Remove from here.
+
+2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (logical_value): New overloaded template.
+	(DEFMXBOOL_OP): Use it in definitions.
+	(mx_inline_not): Also use logical_value.
+	* mx-op-defs.h (ND_LOGICAL_NAN_CHECK, SC_LOGICAL_NAN_CHECK): Remove
+	(also from all macros).
+
+	* CMatrix.cc (operator !): Simply call mx_inline_not.
+	* CNDArray.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fNDArray.cc: Ditto.
+
+2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::operator!): Simplify & check for NaNs.
+	* fMatrix.cc (FloatMatrix::operator!): Ditto.
+	* CMatrix.cc (ComplexMatrix::operator!): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::operator!): Ditto.
+	* dNDArray.cc (NDArray::operator!): Ditto.
+	* fNDArray.cc (FloatNDArray::operator!): Ditto.
+	* CNDArray.cc (ComplexNDArray::operator!): Ditto.
+	* fCNDArray.cc (FloatComplexNDArray::operator!): Ditto.
+
+2009-08-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_add, mx_inline_sub, mx_inline_mul,
+	mx_inline_div, mx_inline_uminus, mx_inline_not, mx_inline_add2,
+	mx_inline_sub2, mx_inline_mul2, mx_inline_div2, mx_inline_iszero,
+	mx_inline_notzero, mx_inline_and, mx_inline_or, mx_inline_not_and,
+	mx_inline_not_or, mx_inline_and_not, mx_inline_or_not,
+	mx_inline_lt, mx_inline_le, mx_inline_gt, mx_inline_ge,
+	mx_inline_eq, mx_inline_ne): New templates.
+	(do_mx_unary_op, do_mm_binary_op, do_sm_binary_op,
+	do_ms_binary_op, do_mm_inplace_op,do_ms_inplace_op):
+	New templates.
+
+	* mx-op-defs.h (ND_LOGICAL_NAN_CHECK, SC_LOGICAL_NAN_CHECK):
+	New macros.
+	(NDND_BIN_OP, NDS_BIN_OP, SND_BIN_OP): Simplify.
+	(MM_BIN_OP, MS_BIN_OP, MM_BIN_OP): Simplify.
+	(NDND_BOOL_OP, NDS_BOOL_OP, SND_BOOL_OP): Simplify.
+	(MM_BOOL_OP, MS_BOOL_OP, MM_BOOL_OP): Simplify.
+	(NDND_BOOL_OPS2, NDS_BOOL_OPS2, SND_BOOL_OPS2,
+	MM_BOOL_OPS2, MS_BOOL_OPS2, SM_BOOL_OPS2): Remove.
+	* mx-op-decl.h (NDND_BOOL_OPX_DECLS, NDS_BOOL_OPX_DECLS,
+	SND_BOOL_OPX_DECLS): New macros.
+	* mk-ops.awk: use _BOOL_OPS rather than _BOOL_OPS2.
+
+	* boolMatrix.cc: Add missing bool op defs.
+	* boolMatrix.h: Add missing bool op decls.
+
+
+	* boolNDArray.cc: Remove unused arg to BOOL_OPS.
+	* CMatrix.cc: Ditto.
+	* CNDArray.cc: Ditto.
+	* ChangeLog: Ditto.
+	* chMatrix.cc: Ditto.
+	* chNDArray.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dNDArray.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCNDArray.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fNDArray.cc: Ditto.
+	* int16NDArray.cc: Ditto.
+	* int32NDArray.cc: Ditto.
+	* int64NDArray.cc: Ditto.
+	* int8NDArray.cc: Ditto.
+	* uint16NDArray.cc: Ditto.
+	* uint32NDArray.cc: Ditto.
+	* uint64NDArray.cc: Ditto.
+	* uint8NDArray.cc: Ditto.
+
+	* CColVector.cc: Update syntax where needed.
+	* CDiagMatrix.cc: Ditto.
+	* CMatrix.cc: Ditto.
+	* CRowVector.cc: Ditto.
+	* chMatrix.cc: Ditto.
+	* dColVector.cc: Ditto.
+	* dDiagMatrix.cc: Ditto.
+	* dMatrix.cc: Ditto.
+	* dRowVector.cc: Ditto.
+	* fCColVector.cc: Ditto.
+	* fCDiagMatrix.cc: Ditto.
+	* fCMatrix.cc: Ditto.
+	* fCRowVector.cc: Ditto.
+	* fColVector.cc: Ditto.
+	* fDiagMatrix.cc: Ditto.
+	* fMatrix.cc: Ditto.
+	* fRowVector.cc: Ditto.
+
+2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (zero_dims_inquire): Add matching ndims case.
+
+2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArrayN.cc (operator+=, operator-=): Test matching dimensions first.
+	* boolNDArray.cc (mx_el_and_assign, mx_el_or_assign): New functions.
+	* boolNDArray.h: Declare them.
+
+2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::clear): New method.
+	* Array.h: Declare it.
+	* MArray-decl.h (MARRAY_OP_ASSIGN_DECLS1, MARRAY_OP_ASSIGN_FWD_DECLS1,
+	MARRAY_OP_ASSIGN_FRIENDS1, MARRAY_OP_ASSIGN_FWD_DEFS1): New macros.
+	(MARRAY_OPS_FORWARD_DECLS, MARRAY_OPS_FRIEND_DECLS): Use them.
+	* MArray-defs.h (MARRAY_OP_ASSIGN_DEFS1): New macro.
+	(INSTANTIATE_MARRAY_FRIENDS): Use it.
+	(INSTANTIATE_MARRAY2_FRIENDS): Use it.
+	(INSTANTIATE_MARRAYN_FRIENDS): Use it.
+	* MArray.cc (operator+=, operator-=):
+	Operate out-of-place when this is shared copy.
+	(operator*=, operator/=): New operator overloads.
+	* MArray2.cc: Ditto.
+	* MArrayN.cc: Ditto.
+	* CNDArray.cc (operator *= (ComplexNDArray&, double),
+	operator /= (ComplexNDArray&, double)): New operators.
+	* CNDArray.h: Declare them.
+	* fCNDArray.cc (operator *= (FloatComplexNDArray&, double),
+	operator /= (FloatComplexNDArray&, double)): New operators.
+	* fCNDArray.h: Declare them.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): List LIBS last.
+
+2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc, fMatrix.cc, CMatrix.cc, fCMatrix.cc: Add more tests.
+	* CMatrix.cc (xgemm): Fix vector * matrix case.
+	* fCMatrix.cc (xgemm): Ditto.
+
+2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* fMatrix.cc, fCMatrix.cc: Make tests use single precision.
+
+2009-08-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc (xgemm): Fix typo. Add test.
+	* fCMatrix.cc (xgemm): Ditto.
+
+2009-08-14  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Include BLAS_LIBS in the list.
+
+2009-08-13  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc, CNDArray.cc, dMatrix.cc, dNDArray.cc, fCMatrix.cc,
+	fCNDArray.cc, fMatrix.cc, fNDARray.cc, oct-fftw.cc, oct-fftw.h:
+	Update for new FFTW defines.
+
+	* Makefile.in: Add library-specific CPPFLAGS and LDFLAGS variables
+	to CPPFLAGS and LDFLAGS for files that use sparse matrices or fftw.
+
+2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Include LDFLAGS when linking shared executable.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* oct-fftw.h, oct-fftw.cc (octave_fftw_planner): Convert to singleton.
+	(octave_float_fft_planner): Likewise.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Use READLINE_LIBS instead of
+	LIBREADLINE.  Also link with TERM_LIBS and DL_LIBS.
+
+2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_diff<T>): New overloaded template
+	function.
+	(get_extent_triplet): Use dim_vector::first_non_singleton.
+	(do_mx_diff_op): New template function.
+	* dNDArray.cc (NDArray::diff): New method.
+	* dNDArray.h: Declare it.
+	* fNDArray.cc (FloatNDArray::diff): New method.
+	* fNDArray.h: Declare it.
+	* CNDArray.cc (ComplexNDArray::diff): New method.
+	* CNDArray.h: Declare it.
+	* fCNDArray.cc (FloatComplexNDArray::diff): New method.
+	* fCNDArray.h: Declare it.
+	* intNDArray.cc (intNDArray<T>::diff): New method.
+	* intNDArray.h: Declare it.
+
+2009-08-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::first_non_singleton): New method.
+
+2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector): Rewrite. Use single-alloc implementation
+	aka GCC's basic_string class.
+	* Array.cc: Use dim_vector::alloc where fitting.
+	* Array-util.cc: Ditto.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.cc (octave_shl_load_shlib::open): Pass BIND_IMMEDIATE,
+	not BIND_DEFERRED to shl_load.
+	(octave_dlopen_shlib::open): Don't pass RTLD_GLOBAL to dlopen.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Omit $(BLAS_LIBS) from the list.
+	Include $(RLD_FLAG) in the list.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Include $(PTHREAD_LIBS) in the list.
+
+2009-08-04  Kristian Rumberg  <kristianrumberg@gmail.com>
+
+	* cmd-edit.cc (gnu_readline::do_get_line_buffer,
+	default_command_editor::do_get_line_buffer): New functions.
+	(command_editor::get_line_buffer): New function.
+	* cmd-edit.h (command_editor::get_line_buffer): Provide decls.
+	(command_editor::do_get_line_buffer): New pure virtual function.
+
+2009-07-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::is_range): New method.
+	(idx_vector::copy_data, idx_vector::unconvert): New method decls.
+	* idx-vector.cc (idx_vector::copy_data, idx_vector::unconvert): New
+	methods.
+	* Array-utils.cc (sub2ind, ind2sub): New functions.
+
+2009-07-29  John W. Eaton  <jwe@octave.org>
+
+	* fMatrix.cc (operator >>): Use template function to read value.
+	* fNDArray.cc (operator >>): Likeise.
+	* fCMatrix.cc (operator >>): Use template function to read value.
+	* fCNDArray.cc (operator >>): Likeise.
+	* dMatrix.cc (operator >>): Use template function to read value.
+	* dNDArray.cc (operator >>): Likeise.
+	* CMatrix.cc (operator >>): Use template function to read value.
+	* CNDArray.cc (operator >>): Likeise.
+
+	* lo-utils.cc, lo-utils.h (octave_read_value): New template
+	(octave_read_value<double>, octave_read_value<Complex>):
+	Provide specializations.
+	(octave_read_double, octave_read_complex, octave_read_float,
+	octave_rread_float_complex): Define in terms of template functions.
+	* Sparse.h (read_sparse_matrix): New template function.
+	* dSparse.cc (operator >>): Call read_sparse_matrix.
+	* CSparse.cc (operator >>): Likewise.
+	* boolSparse.cc (operator >>): Likewise.
+	* sparse-util.cc, sparse-util.h (sparse_indices_ok): New function.
+	* Sparse.cc (Sparse<T>::indices_ok, Sparse<T>::SparseRep::indices_ok):
+	New member functions.
+
+2009-07-20  John W. Eaton  <jwe@octave.org>
+
+	* lo-ieee.cc (octave_ieee_init) [__NetBSD__]: Call nan to
+	initialize Octave_NaN and nanf, to initialize Octave_Float_NaN.
+
+2009-07-11  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::symlink, file_ops::readlink):
+	Don't use incorrectly sized OCTAVE_LOCAL_BUFFER.
+
+2009-07-08  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h (dim_vector::dim_vector_rep::dim_vector_rep
+	(octave_idx_type, const dim_vector_rep *, int)):
+	Enforce 2-d objects here.
+	(dim_vector::dim_vector_rep::dim_vector_rep): Simply copy object.
+	(dim_vector::resize): Allow N < 2.
+
+2009-07-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse-op-defs.h (SPARSE_ALL_OP): Fix typo.
+	* dSparse.cc (SparseMatrix::prod): Ditto.
+	* CSparse.cc (ComplexSparseMatrix::prod): Ditto.
+
+2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse-diag-op-defs.h (inner_do_add_sm_dm): Rewrite to ensure
+	ordering of row indices.
+
+2009-06-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::lookupb<Comp>): Fix typo.
+
+2009-06-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::lookup_merge): Delete.
+	(octave_sort<T>::lookup<Comp>,
+	octave_sort<T>::lookupm<Comp>,
+	octave_sort<T>::lookupb<Comp>): Rewrite.
+
+2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* pathsearch.h (class dir_path::static_members): Decorate with
+	OCTAVE_API.
+
+2009-06-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::lookup_merge<Comp>): Slightly speed-up
+	the merge case.
+
+2009-06-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::lookup_merge<Comp>): Fix lower-part
+	recursion.
+
+2009-06-24  Alexander Barth  <barth.alexander@gmail.com>
+
+	* eigs-base.cc (EigsRealSymmetricMatrix,
+	EigsRealSymmetricMatrixShift, EigsRealSymmetricFunc,
+	EigsRealNonSymmetricMatrix, EigsRealNonSymmetricMatrixShift,
+	EigsRealNonSymmetricFunc, EigsComplexNonSymmetricMatrix,
+	EigsComplexNonSymmetricMatrixShift, EigsComplexNonSymmetricFunc):
+	Use octave_idx_type for parameters of type LOGICAL in ARPACK.
+
+2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* chMatrix.cc (charMatrix::charMatrix (const string_vector&)):
+	Optimize w.r.t. COW of std::string.
+
+2009-06-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (lookup_impl<T, Comp>): New helper inline function.
+	(octave_sort<T>::lookup_merge<Comp>): New private template method.
+	(octave_sort<T>::lookup<Comp>): Rewrite.
+	(octave_sort<T>::lookupm<Comp>): use lookup_impl.
+	(octave_sort<T>::lookupb<Comp>): use lookup_impl.
+	(out_of_range_pred, out_of_range): Remove.
+
+2009-06-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (xgemm): Replace resize() with uninitialized allocations
+	where appropriate.
+	* fMatrix.cc (xgemm): Ditto.
+	* CMatrix.cc (xgemm): Ditto.
+	* fCMatrix.cc (xgemm): Ditto.
+
+2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort::lookupm, octave_sort::lookupb): New
+	overloaded methods.
+	* oct-sort.h: Declare them.
+	* Array.cc (Array<T>::lookupm, Array<T>::lookupb): New methods.
+	* Array.h: Declare them.
+
+2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* cmd-edit.cc (command_editor::force_default_editor): New static
+	method.
+	* cmd-edit.h: Declare it.
+
+2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc (xlog2 (const Complex&, int&), xlog2 (const
+	FloatComplex&, int&)): Use more robust expression.
+
+2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::find): Avoid allocating excessive memory. Fix
+	order for backward searches.
+
+2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-C.cc (class DiagArray2<Complex>::Proxy): Only explicitly
+	instantiate DiagArray2<T>::Proxy on MSVC.
+	* Array-d.cc (class DiagArray2<double>::Proxy): Ditto.
+	* Array-f.cc (class DiagArray2<float>::Proxy): Ditto.
+	* Array-fC.cc (class DiagArray2<FloatComplex>::Proxy): Ditto.
+
+2009-05-26  John W. Eaton  <jwe@octave.org>
+
+	* pathsearch.h (dir_path::path_sep_char (char),
+	dir_path::static_members::path_sep_char (char)): New functions.
+
+2009-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array-C.cc (class DiagArray2<Complex>::Proxy): Tag with OCTAVE_API.
+	* Array-d.cc (class DiagArray2<double>::Proxy): Ditto.
+	* Array-f.cc (class DiagArray2<float>::Proxy): Ditto.
+	* Array-fC.cc (class DiagArray2<FloatComplex>::Proxy): Ditto.
+	* Array.cc (class octave_sort<T>): Ditto.
+	* CColVector.h (conj, operator*, operator>>, operator<<): Ditto.
+	* CDiagMatrix.h (class ComplexDiagMatrix, conj, operator*): Ditto.
+	* CMatrix.h (conj): Ditto.
+	* CNDArray.h (conj): Ditto.
+	* PermMatrix.h (class PermMatrix, operator*): Ditto.
+	* dDiagMatrix.h (class DiagMatrix): Ditto.
+	* fCColVector.h (conj, operator*, operator>>, operator<<): Ditto.
+	* fCDiagMatrix.h (class FloatComplexDiagMatrix, conj, operator*):
+	Ditto.
+	* fCMatrix.h (conj): Ditto.
+	* fCNDArray.h (conj): Ditto.
+	* fDiagMatrix.h (operator*): Ditto.
+	* oct-locbuf.h (octave_chunk_buffer::octave_chunk_buffer,
+	octave_chunk_buffer::~octave_chunk_buffer): Ditto.
+	* oct-inttypes.cc (octave_int_cmp_op::emulate_op): Ditto.
+	* DET.h (class base_det<T>): Remove OCTAVE_API (cannot be applied on
+	templates).
+	* oct-inttypes.cc (octave_int_cmp_op::emulate_op<class xop>): Ditto.
+
+	* CmplxQR.cc (ComplexQR::insert_col, ComplexQR::delete_col): Copy
+	volatile variable to avoid MSVC compilation error (cannot pass
+	volatile variable as const& argument).
+	* dbleQR.cc (QR::insert_col, QR::delete_col): Ditto.
+	* fCmplxQR.cc (FloatComplexQR::insert_col,
+	FloatComplexQR::delete_col): Ditto.
+	* floatQR.cc (FloatQR::insert_col, FloatQR::delete_col): Ditto.
+
+	* oct-mutex.cc: Exclude pthread.h inclusion under Win32.
+
+	* base-aepbal.h (base_aepbal::operator=): Add missing return
+	statement.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* eigs-base.cc (
+	EigsRealSymmetricMatrix,
+	EigsRealSymmetricMatrixShift,
+	EigsRealSymmetricFunc,
+	EigsRealNonSymmetricMatrix,
+	EigsRealNonSymmetricMatrixShift,
+	EigsRealNonSymmetricFunc,
+	EigsComplexNonSymmetricMatrix,
+	EigsComplexNonSymmetricMatrixShift,
+	EigsComplexNonSymmetricFunc): Update tests.
+
+2009-05-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CMatrix.cc
+	(ComplexMatrix::all, ComplexMatrix::any, ComplexMatrix::cumprod,
+	ComplexMatrix::cumsum, ComplexMatrix::prod, ComplexMatrix::sum,
+	ComplexMatrix::sumsq): Use explicit template qualifications
+	to workaround bugs in Intel C++ and MSVC++ compilers.
+	* CNDArray.cc
+	(ComplexNDArray::all, ComplexNDArray::any, ComplexNDArray::cumprod,
+	ComplexNDArray::cumsum, ComplexNDArray::prod, ComplexNDArray::sum,
+	ComplexNDArray::sumsq): Ditto.
+	* boolMatrix.cc
+	(boolMatrix::all, boolMatrix::any): Ditto.
+	* boolNDArray.cc
+	(boolNDArray::all, boolNDArray::any): Ditto.
+	* chMatrix.cc
+	(charMatrix::all, charMatrix::any): Ditto.
+	* chNDArray.cc
+	(charNDArray::all, charNDArray::any): Ditto.
+	* dMatrix.cc
+	(Matrix::all, Matrix::any, Matrix::cumprod,
+	Matrix::cumsum, Matrix::prod, Matrix::sum,
+	Matrix::sumsq): Ditto.
+	* dNDArray.cc
+	(NDArray::all, NDArray::any, NDArray::cumprod,
+	NDArray::cumsum, NDArray::prod, NDArray::sum,
+	NDArray::sumsq): Ditto.
+	* fCMatrix.cc
+	(FloatComplexMatrix::all, FloatComplexMatrix::any, FloatComplexMatrix::cumprod,
+	FloatComplexMatrix::cumsum, FloatComplexMatrix::prod, FloatComplexMatrix::sum,
+	FloatComplexMatrix::sumsq): Ditto.
+	* fCNDArray.cc
+	(FloatComplexNDArray::all, FloatComplexNDArray::any, FloatComplexNDArray::cumprod,
+	FloatComplexNDArray::cumsum, FloatComplexNDArray::prod, FloatComplexNDArray::sum,
+	FloatComplexNDArray::sumsq): Ditto.
+	* fMatrix.cc
+	(FloatMatrix::all, FloatMatrix::any, FloatMatrix::cumprod,
+	FloatMatrix::cumsum, FloatMatrix::prod, FloatMatrix::sum,
+	FloatMatrix::sumsq): Ditto.
+	* fNDArray.cc
+	(FloatNDArray::all, FloatNDArray::any, FloatNDArray::cumprod,
+	FloatNDArray::cumsum, FloatNDArray::prod, FloatNDArray::sum,
+	FloatNDArray::sumsq): Ditto.
+	* intNDArray.cc
+	(intNDArray<T>::all, intNDArray<T>::any,
+	intNDArray<T>::cumsum, intNDArray<T>::sum): Ditto.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Remove reference to ArrayN-idx.h.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-voidp.cc: New source.
+	* Array.cc (NO_INSTANTIATE_ARRAY_SORT): const T& -> T const &
+	* Makefile.in: Include it.
+
+2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::instantiation_guard): New function
+	(INSTANTIATE_ARRAY): Always override it here.
+	* Array.h: Declare it.
+
+2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ArrayN-idx.h: Remove file.
+	* ArrayN.cc: Don't include it.
+	* MArrayN.cc: Dtto.
+
+2009-05-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-util.cc (zero_dims_inquire): Move j++ out of branch.
+
+2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
+
+2009-05-05  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* file-ops.h (file_ops::tail) New function.
+
+2009-05-05  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
+
+	* Quad.cc (user_function): Use access_double and assign_double on
+	SPARC only, not on all Sun systems.
+	* sun-utils.h: Likewise, define these functions on SPARC only.
+
+2009-05-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Sparse.cc (assign1): Fix an old indexing bug.
+
+2009-05-04  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
+
+	* Quad.cc (float_user_function): Remove Sun/GCC special case.
+
+2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_range_rep::idx_range_rep (const
+	Range&)): Check for positive integer indices. Unify gripes.
+
+2009-04-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (rec_permute_helper::blk_trans): Declare as static.
+	(Array<T>::transpose): Reuse it.
+
+2009-04-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::make_unique): Don't economize when unique.
+	(Array<T>::resize_fill (octave_idx_type, const T&)): Optimize push &
+	pop operations.
+	(Array<T>::delete_elements (const idx_vector&)): Do pop operation
+	using resize.
+
+2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::assign): Remove redundant checks after invalid
+	resize.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::find): Reshape result for Matlab compatibility.
+	* Array.h (Array<T>): Add friend template declaration.
+
+2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
+	Array<bool>&): Use more M*b-compatible behaviour.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dim-vector.h (dim_vector::numel): Add optional argument, simplify.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::dims): Return a const reference.
+	(Array<T>::is_vector): New method.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::find): New method.
+	* Array.h: Declare it.
+
+2009-03-25  John W. Eaton  <jwe@octave.org>
+
+	* EIG.cc (EIG::init (const Matrix&, bool),
+	EIG::init (const Matrix&, const Matrix&, bool)):
+	Avoid volatile declaration for tmp variable.
+
+	* Makefile.in (MATRIX_INC): Add Sparse-diag-op-defs.h and
+	Sparse-perm-op-defs.h to the list.
+
+2009-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.cc (INT_DOUBLE_BINOP_DECL (*, uint64),
+	INT_DOUBLE_BINOP_DECL (*, int64)): x -> y where appropriate.
+
+2009-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (rec_permute_helper::use_blk): New field.
+	(rec_permute_helper::blk_trans): New method.
+	(rec_permute_helper::rec_permute_helper): Use smart reductions,
+	detect possibility of using blocked transpose.
+	(rec_permute_helper::do_permute): Use blocked transpose if possible.
+
+2009-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (convert_index(double,...)): Simplify.
+
+2009-03-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-d.cc: lo_ieee_isnan -> xisnan.
+	* Array-f.cc: Ditto.
+	* oct-inttypes.cc: Ditto.
+	* oct-inttypes.h: Ditto.
+	* CDiagMatrix.cc: Add missing include.
+	* fCDiagMatrix.cc: Ditto.
+
+2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CColVector.cc, CMatrix.cc, CNDArray.cc, CRowVector.cc, CSparse.cc,
+	boolSparse.cc, dColVector.cc, dMatrix.cc, dNDArray.cc, dRowVector.cc,
+	dSparse.cc, fCColVector.cc, fCMatrix.cc, fCNDArray.cc, fCRowVector.cc,
+	fColVector.cc, fMatrix.cc, fNDArray.cc, fRowVector.cc, intNDArray.cc:
+	Allow empty arrays in stream input operators.
+
+2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::fastmap): New method.
+	* dNDArray.cc (NDArray::isnan, NDArray::isinf, NDArray::isfinite):
+	New methods.
+	* dNDArray.h: Declare them.
+	* fNDArray.cc (FloatNDArray::isnan, FloatNDArray::isinf,
+	FloatNDArray::isfinite): New methods.
+	* fNDArray.h: Declare them.
+	* CNDArray.cc (ComplexNDArray::isnan, ComplexNDArray::isinf,
+	ComplexNDArray::isfinite): New methods.
+	* CNDArray.h: Declare them.
+	* fCNDArray.cc (FloatComplexNDArray::isnan, FloatComplexNDArray::isinf,
+	FloatComplexNDArray::isfinite): New methods.
+	* fCNDArray.h: Declare them.
+	* lo-mappers.h (xisnan, xisinf, xfinite): If possible, use definitions
+	from <cmath>.
+
+2009-03-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-norm.cc (get_eps): Remove that hack.
+	(higham): Use std::numeric_limits instead.
+	Include OCTAVE_QUIT.
+
+2009-03-16  Jason Riedy  <jason@acm.org>
+
+	* Sparse.cc (transpose): Eliminate the workspace by computing in
+	retval.xcidx.
+	* CSparse.cc (hermitian): Eliminate the workspace by computing in
+	retval.xcidx.
+
+2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-op-decl.h (NDS_BOOL_OP_DECLS, SND_BOOL_OP_DECLS, NDND_BOOL_OP_DECLS): Support compound binary ops.
+	* mx-op-defs.h (NDS_BOOL_OPS, SND_BOOL_OPS, NDND_BOOL_OPS): Ditto. Optimize.
+	* mx-op-defs.h (NDS_CMP_OP, SND_CMP_OP, NDND_CMP_OP): Optimize.
+
+2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* fNDArray.h (FloatMatrix::matrix_value): Fix return type.
+	* dNDArray.cc (Matrix::matrix_value): Simplify.
+	* fNDArray.cc (FloatMatrix::matrix_value): Simplify.
+	* CNDArray.cc (ComplexMatrix::matrix_value): Simplify.
+	* fCNDArray.cc (FloatComplexMatrix::matrix_value): Simplify.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Range.h (Range::Range (double, double, octave_idx_type)): Remove
+	constructor body.
+	* Range.cc: Move it here. Check for invalid range op results.
+	(all operators): Validate cache for invalid range op results.
+	* idx-vector.h (idx_vector::index): Optimize zero-step range case.
+	* idx-vector.cc (idx_vector::maybe_reduce): Always reduce colon in
+	singleton dimension.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* sparse-base-lu.cc (Pr_mat): New member function.  Return the row
+	permutation as a PermMatrix.
+	(Pc_mat): New member function.  Return the col permutation as a
+	PermMatrix.
+
+	* sparse-base-lu.h (sparse_base_lu): Declare Pc_mat and Pr_mat
+	member functions.
+
+2009-03-09  Jason Riedy  <jason@acm.org>
+
+	* Sparse-diag-op-defs.h (octave_impl::inner_do_add_sm_dm): New
+	template function.  Implementation for adding sparse and diagonal
+	matrices.  Takes two functional arguments, opa and opd, to
+	generate both subtraction variants.
+	(octave_impl::do_commutative_add_dm_sm): New template function.
+	Ensure A+D and D+A use the same generated code.
+	(octave_impl::do_add_dm_sm): New template function.  Check
+	arguments for diag + sparse and call inner routine.
+	(octave_impl::do_sub_dm_sm): New template function.  Check
+	arguments for diag - sparse and call inner routine.
+	(octave_impl::do_add_sm_dm): New template function.  Check
+	arguments for sparse + diag and call inner routine.
+	(octave_impl::do_sub_sm_dm): New template function.  Check
+	arguments for sparse - diag and call inner routine.
+
+	* dSparse.h (operator +): Declare overrides for real diag +
+	sparse.
+	(operator -): Declare overrides for real diag - sparse, sparse -
+	diag.
+
+	* dSparse.cc (operator +): Define overrides for real diag +
+	sparse.
+	(operator -): Define overrides for real diag - sparse, sparse -
+	diag.
+
+	* CSparse.h (operator +): Declare overrides for complex and real
+	combinations of diag + sparse.
+	(operator -): Declare overrides for complex and real combinations
+	of diag - sparse, sparse - diag.
+
+	* CSparse.cc (operator +): Define overrides for complex and real
+	combinations of diag + sparse.
+	(operator -): Define overrides for complex and real combinations
+	of diag - sparse, sparse - diag.
+
+2009-03-08  Jason Riedy  <jason@acm.org>
+
+	* Sparse-diag-op-defs.h (octave_impl::do_mul_dm_sm)
+	(octave_impl::do_mul_sm_dm): New template
+	functions. Implementations for sparse * diag and diag * sparse.
+
+	* CSparse.h (operator *, trans_mul, herm_mul): Add overloads for
+	DiagMatrix and ComplexDiagMatrix.
+	* CSparse.cc (operator *, trans_mul, herm_mul): Implement
+	operations by calling approprate functions in
+	Sparse-diag-op-defs.h.
+	* dSparse.h (operator *, trans_mul): Add overloads for DiagMatrix.
+	* dSparse.cc (operator *, trans_mul): Implement operations by
+	calling approprate functions in Sparse-diag-op-defs.h.
+
+2009-03-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (bitshift): Apply mask even if not shifting.
+	From Seb Astien <se6astien2@googlemail.com>.
+
+2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* PermMatrix.cc (PermMatrix::power): New method.
+	* PermMatrix.h: Declare it.
+
+2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dNDArray.cc (NDArray::NDArray (const charNDArray&)): New
+	constructor.
+	* fNDArray.cc (FloatNDArray::FloatNDArray (const charNDArray&)):
+	Ditto.
+	* CNDArray.cc (ComplexNDArray::ComplexNDArray (const charNDArray&)):
+	Ditto.
+	* fCNDArray.cc (FloatComplexNDArray::FloatComplexNDArray
+	(const charNDArray&)): Ditto.
+
+	* dNDArray.h (NDArray::NDArray (const charNDArray&)): Declare.
+	* fNDArray.h (FloatNDArray::FloatNDArray (const charNDArray&)):
+	Ditto.
+	* CNDArray.h (ComplexNDArray::ComplexNDArray (const charNDArray&)):
+	Ditto.
+	* fCNDArray.h (FloatComplexNDArray::FloatComplexNDArray
+	(const charNDArray&)): Ditto.
+
+	* dMatrix.cc (Matrix::Matrix (const charMatrix&)): Cast to unsigned
+	chars.
+	* fMatrix.cc (FloatMatrix::FloatMatrix (const charMatrix&)): Likewise.
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const charMatrix&)):
+	Likewise.
+	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix
+	(const charMatrix&)): Likewise.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* Sparse-perm-op-defs.h (octinternal_do_mul_colpm_sm): New
+	template function.  Logic for the column permutation * sparse
+	matrix operator.
+	(octinternal_do_mul_pm_sm): New template function.  Logic for the
+	permutation matrix * sparse matrix operator.  Note that there is
+	no special row perm * sparse routine; the permutation is inverted
+	and the col perm routine is called.
+	(octinternal_do_mul_sm_rowpm): New template function.  Logic for
+	the sparse matrix * row permutation operator.
+	(octinternal_do_mul_sm_colpm): New template function.  Logic for
+	the sparse matrix * column permutation operator.
+	(octinternal_do_mul_sm_pm): New template function.  Logic for the
+	sparse matrix * permutation matrix operator.
+
+	* dSparse.h (operator *): Declare sparse * permutation and
+	permutation * sparse.
+	* dSparse.cc (operator *): Define sparse * permutation and
+	permutation * sparse.
+
+	* CSparse.h (operator *): Declare sparse * permutation and
+	permutation * sparse.
+	* CSparse.cc (operator *): Define sparse * permutation and
+	permutation * sparse.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* sparse-base-lu.cc (Pc_vec): The column permutation should be
+	Ufact.cols ()-long, not Lfact.rows ()-long.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* dSparse.cc (SparseMatrix::SparseMatrix (const PermMatrix&)):
+	Fix conversion to add values to the matrix as well as getting
+	structure correct.
+
+2009-03-10  John W. Eaton  <jwe@octave.org>
+
+	* Array.h, ArrayN.h, Bounds.h, CmplxAEPBAL.h, CmplxCHOL.h,
+	CmplxGEPBAL.h, CmplxHESS.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h,
+	CmplxSVD.h, CollocWt.h, EIG.h, FEGrid.h, LinConst.h, Range.h,
+	Sparse.h, SparseCmplxQR.h, SparseQR.h, dbleAEPBAL.h, dbleCHOL.h,
+	dbleGEPBAL.h, dbleHESS.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h,
+	dbleSVD.h, dim-vector.h, fCmplxAEPBAL.h, fCmplxCHOL.h,
+	fCmplxGEPBAL.h, fCmplxHESS.h, fCmplxQR.h, fCmplxQRP.h,
+	fCmplxSCHUR.h, fCmplxSVD.h, fEIG.h, floatAEPBAL.h, floatCHOL.h,
+	floatGEPBAL.h, floatHESS.h, floatQR.h, floatQRP.h, floatSCHUR.h,
+	floatSVD.h, idx-vector.h, lo-utils.h, oct-inttypes.h,
+	oct-spparms.h, str-vec.h: Include <iosfwd> instead of <iosstream>.
+
+2009-03-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_CUMMINMAX_FCN2): r -> r0 where appropriate.
+
+2009-03-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::bloop): loop --> bloop.
+	(idx_vector::loop): New method.
+	* MArray.cc (MArray<T>::idx_add (cons idx_vector&, T))
+	(MArray<T>::idx_add (cons idx_vector&, const MArray<T>&)): New methods.
+	* MArray.h: Declare them.
+
+2009-03-05  Jason Riedy  <jason@acm.org>
+
+	* Sparse.h (Sparse<T>::elt_type): Remove typedef, replace with:
+	* Sparse.h (Sparse<T>::element_type): Add typedef to be consistent
+	with Array.h
+	* DiagArray2.h (DiagArray2<T>::elt_type): Likewise, removed.
+	* DiagArray2.h (DiagArray2<T>::element_type): Define by using
+	Array<T>::element_type.
+	* intNDArray.h (intNDArray<T>::element_type): Remove, inherited
+	from MArrayN<T>.
+
+2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dSparse.h (SparseMatrix::SparseMatrix(const PermMatrix&)): New
+	constructor.
+	(SparseMatrix::SparseMatrix(const DiagMatrix&)): Fix implementation.
+	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix(const ComplexDiagMatrix&)):
+	Fix implementation.
+
+2009-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* PermMatrix.h (PermMatrix::elem): Fix comparisons.
+
+2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc (xmin (float, float), xmax (float, float)): Simplify.
+
+2009-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc: Add missing #include.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Make maintainer-clean and distclean the same.
+
+2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.cc (pow (const octave_int<T>&, const octave_int<T>&)):
+	Simplify.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int_cmp_op::mop): Implement as simple
+	forwarders when OCTAVE_INT_USE_LONG_DOUBLE is not defined.
+	(octave_int_cmp_op::emulate_mop): New static overloaded template
+	member function.
+	* oct-inttypes.cc: Turn the octave_int_cmp_op::mop definitions into
+	defs for octave_int_cmp_op::emulate_mop.
+	(INSTANTIATE_INT64_DOUBLE_CMP_OP0): Instantiate
+	octave_int_cmp_op::emulate_op instead.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dDiagMatrix.cc (DiagMatrix::pseudo_inverse): New method.
+	* dDiagMatrix.h: Declare it.
+	* fDiagMatrix.cc (FloatDiagMatrix::pseudo_inverse): New method.
+	* fDiagMatrix.h: Declare it.
+	* CDiagMatrix.cc (ComplexDiagMatrix::pseudo_inverse): New method.
+	* CDiagMatrix.h: Declare it.
+	* fCDiagMatrix.cc (FloatComplexDiagMatrix::pseudo_inverse): New method.
+	* fCDiagMatrix.h: Declare it.
+
+2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.h (octave_sort<T>::MergeState::MergeState): New
+	constructor.
+	(octave_sort<T>::MergeState::~MergeState): New destructor.
+	(octave_sort<T>::MergeState::reset,
+	octave_sort<T>::MergeState::getmem,
+	octave_sort<T>::MergeState::getmemi): New methods.
+	(octave_sort<T>::sort,
+	octave_sort<T>::merge_lo, octave_sort<T>::merge_hi
+	octave_sort<T>::merge_at): Reflect change.
+
+2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-types.h (sortmode): Move enum here.
+	* oct-sort.h (octave_sort<T>::ms): Declare as pointer.
+	(octave_sort<T>::lookup): New overloaded method.
+	* oct-sort.cc: Reflect change to ms.
+	(octave_sort<T>::lookup): New overloaded method.
+	(out_of_range_pred): New helper class.
+	(out_of_range): New helper function.
+	* oct-lookup.h: Remove file.
+	* Array.cc (Array<T>::lookup): New overloaded method.
+	* Array.h: Declare it.
+
+2009-02-18  John W. Eaton  <jwe@octave.org>
+
+	* dbleQR.cc (QR::init, QR::form): Cast int to octave_idx_type in
+	call to std::max.
+	* floatQR.cc (FloatQR::init, FloatQR::form): Ditto.
+	* CmplxQR.cc (ComplexQR::init, ComplexQR::form): Ditto.
+	* fCmplxQR.cc (FloatComplexQR::init, FloatComplexQR::form): Ditto.
+
+	* dbleQRP.cc (QRP::init): Cast int to octave_idx_type in call to
+	std::max and as operand to -= operator.
+	* CmplxQRP.cc (ComplexQRP::init): Ditto.
+	* floatQRP.cc (FloatQRP::init): Ditto.
+	* fCmplxQRP.cc (FloatComplexQRP::init): Ditto.
+
+	* CDiagMatrix.cc, CDiagMatrix.h (ComplexDiagMatrix::inverse):
+	Declare info as octave_idx_type, not int.
+	* dDiagMatrix.cc, dDiagMatrix.h (DiagMatrix::inverse): Ditto.
+	* fDiagMatrix.cc, fCDiagMatrix.h (FloatDiagMatrix::inverse): Ditto.
+	* fCDiagMatrix.cc, fCDiagMatrix.h (FloatComplexDiagMatrix::inverse):
+	Ditto.
+
+	* dMatrix.cc (Matrix::determinant):
+	Declare local variables volatile as needed to avoid "maybe
+	clobbered by vfork" warning from GCC.
+	* fMatrix.cc (FloatMatrix::determinant): Likewise.
+	* CMatrix.cc (ComplexMatrix::determinant): Likewise.
+	* fCMatrix.cc (FloatComplexMatrix::determinant): Likewise.
+	* dbleQR.cc (QR::update, QR::insert_col, QR::delete_col): Likewise.
+	* floatQR.cc (FloatQR::update, FloatQR::insert_col,
+	FloatQR::delete_col): Likewise.
+	* CmplxQR.cc (ComplexQR::update, ComplexQR::insert_col,
+	ComplexQR::delete_col): Likewise.
+	* fCmplxQR.cc (FloatComplexQR::update, FloatComplexQR::insert_col,
+	FloatComplexQR::delete_col): Likewise.
+
+	* dMatrix.cc (padec, solve_singularity_warning): Delete unused
+	static variable and function.
+	* CMatrix.cc (padec, solve_singularity_warning): Ditto.
+	* fMatrix.cc (padec, solve_singularity_warning): Ditto.
+	* fCMatrix.cc (padec, solve_singularity_warning): Ditto.
+
+2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::resize (const dim_vector&)): Check for negative
+	dimensions.
+
+2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.cc (pow (const octave_int<T>&, const octave_int<T>&)):
+	Use octave_int comparisons to avoid warning for unsigned types.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::resize (const dim_vector&)): Remove dead branch.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_CUM_FCN, OP_CUM_FCN2, OP_CUM_FCNN):
+	Add TSRC/TRES parameters.
+	(mx_inline_cumcount): New function.
+	* intNDArray.cc (intNDArray::cumsum): New method.
+	* intNDArray.h: Declare it.
+	* boolNDArray.cc (boolNDArray::cumsum): New method.
+	* boolNDArray.h: Declare it.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_CUMMINMAX_FCN, OP_CUMMINMAX_FCN2,
+	OP_CUMMINMAX_FCNN): New macros.
+	(mx_inline_cummax, mx_inline_cummin, do_mx_cumminmax_op):
+	New overloaded template functions.
+
+	* dNDArray.cc (NDArray::cummin, NDArray::cummax): New methods.
+	* dNDArray.h: Declare them.
+
+	* fNDArray.cc (FloatNDArray::cummin, FloatNDArray::cummax): New
+	methods.
+	* fNDArray.h: Declare them.
+
+	* CNDArray.cc (ComplexNDArray::cummin, ComplexNDArray::cummax): New
+	methods.
+	* CNDArray.h: Declare them.
+
+	* fCNDArray.cc (FloatComplexNDArray::cummin,
+	FloatComplexNDArray::cummax): New methods.
+	* fCNDArray.h: Declare them.
+
+	* intNDArray.cc (intNDArray::cummin, intNDArray::cummax): New methods.
+	* intNDArray.h: Declare them.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_MINMAX_FCN): Correct behaviour with NaNs.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MArray-defs.h: Move declarative part to MArray-decl.h
+	* MArray-decl.h: New source.
+
+	* mx-op-defs.h: Move declarative part to mx-op-decl.h.
+	* mx-op-decl.h: New source.
+
+	* Makefile.in: Include new sources in build.
+	* mk-ops.awk: Include mx-op-decl.h in headers, mx-op-defs in .cc
+	files.
+
+	* CMatrix.cc, CMatrix.h, CNDArray.cc, CNDArray.h, MArray.h, MArray2.h,
+	MArrayN.h, MDiagArray2.h, boolMatrix.cc, boolMatrix.h, boolNDArray.cc,
+	boolNDArray.h, chMatrix.cc, chMatrix.h, chNDArray.cc, chNDArray.h,
+	dMatrix.cc, dMatrix.h, dNDArray.cc, dNDArray.h, fCMatrix.cc,
+	fCMatrix.h, fCNDArray.cc, fCNDArray.h, fMatrix.cc, fMatrix.h,
+	fNDArray.cc, fNDArray.h, int16NDArray.cc, int16NDArray.h,
+	int32NDArray.cc, int32NDArray.h, int64NDArray.cc, int64NDArray.h,
+	int8NDArray.cc, int8NDArray.h, uint16NDArray.cc, uint16NDArray.h,
+	uint32NDArray.cc, uint32NDArray.h, uint64NDArray.cc, uint64NDArray.h,
+	uint8NDArray.cc, uint8NDArray.h: Ditto.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::assign (const idx_vector& i,
+	const idx_vector& j,...)): Fix invalid dimension inquiry.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_ROW_SHORT_CIRCUIT): New macro.
+	(mx_inline_any, mx_inline_all): Override row-reduction case.
+	(MX_CUMULATIVE_OP, MX_BASE_REDUCTION_OP, MX_REDUCTION_OP,
+	MX_ANY_OP, MX_ALL_OP, MX_ND_ANY_ALL, MX_ND_REDUCTION,
+	MX_ND_COMPLEX_OP_REDUCTION, MX_ND_CUMULATIVE_OP,
+	MX_ND_ANY_EVAL, MX_ND_ALL_EVAL, MX_ND_REAL_OP_REDUCTION):
+	Remove unused macros.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_RED_FCNN): Use explicit type qualification.
+	(mx_inline_count): New overloaded template function.
+	* boolNDArray.h (boolNDArray::sum): Return NDArray.
+	* boolNDArray.cc (boolNDArray::sum): Return NDArray, use do_mx-red_op.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-C.cc, Array-fC.cc: Don't redefine complex comparison.
+	* Sparse.cc (Sparse::sort): Don't use vec_index.
+	* Sparse-C.cc, Sparse-d.cc, Sparse-b.cc: Don't reinstantiate
+	octave_sort, reflect changes.
+	* sparse-sort.cc: Explicitly instantiate octave_sort for requested
+	pointer types.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-cmplx.h (operator <, operator >): New operators.
+	* mx-inlines.cc (OP_MINMAX_FCN, OP_MINMAX_FCN2, OP_MINMAX_FCNN):
+	New macros.
+	(mx_inline_min, mx_inline_max, do_mx_minmax_op): New overloaded
+	template functions.
+	* dNDArray (NDArray::min, NDArray::max): Use do_mx_minmax_op.
+	* fNDArray (FloatNDArray::min, FloatNDArray::max): Ditto.
+	* CNDArray (ComplexNDArray::min, ComplexNDArray::max): Ditto.
+	* fCNDArray (FloatComplexNDArray::min, FloatComplexNDArray::max):
+	Ditto.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* chMatrix.cc (charMatrix::all, charMatrix::any): Use do_mx_red_op.
+	* chNDArray.cc (charNDArray::all, charNDArray::any): Ditto.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (default_command_editor::do_readline):
+	Use fputs instead of fprintf.
+
+2009-02-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_RED_FCN, OP_RED_FCN2, OP_RED_FCNN, OP_CUM_FCN,
+	OP_CUM_FCN2, OP_CUM_FCNN): Include TRET parameter.
+	(OP_RED_ANYC, OP_RED_ANYR, OP_RED_ALLC, OP_RED_ALLR): New macros.
+	(is_true, is_false): New template functions.
+	(mx_inline_any, mx_inline_all): New template functions.
+
+	* dMatrix.cc (Matrix::any, Matrix::all): Use do_mx_red_op and
+	do_mx_cum_op.
+	* fMatrix.cc (FloatMatrix::any, FloatMatrix::all): Use do_mx_red_op
+	and do_mx_cum_op.
+	* CMatrix.cc (ComplexMatrix::any, ComplexMatrix::all): Use
+	do_mx_red_op and do_mx_cum_op.
+	* fCMatrix.cc (FloatComplexMatrix::any, FloatComplexMatrix::all): Use
+	do_mx_red_op and do_mx_cum_op.
+
+	* dNDArray.cc (NDArray::any, NDArray::all): Use do_mx_red_op and
+	do_mx_cum_op.
+	* fNDArray.cc (FloatNDArray::any, FloatNDArray::all): Use do_mx_red_op
+	and do_mx_cum_op.
+	* CNDArray.cc (ComplexNDArray::any, ComplexNDArray::all): Use
+	do_mx_red_op and do_mx_cum_op.
+	* fCNDArray.cc (FloatComplexNDArray::any, FloatComplexNDArray::all):
+	Use do_mx_red_op and do_mx_cum_op.
+
+	* intNDArray.cc (intNDArray::any, intNDArray::all): Use do_mx_red_op and
+	do_mx_cum_op.
+
+	* boolNDArray.cc (boolNDArray::any, boolNDArray::all): Use do_mx_red_op and
+	do_mx_cum_op.
+
+	* boolMatrix.cc (boolMatrix::any, boolMatrix::all): Use do_mx_red_op and
+	do_mx_cum_op.
+
+2009-02-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* intNDArray.cc: include mx-inlines.cc.
+	(intNDArray::sum): Use mx_do_red_op (..., mx_inline_sum).
+	* Range.cc (Range::is_sorted): Add missing return statement.
+
+2009-02-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (OP_RED_SUM, OP_RED_PROD, OP_RED_SUMSQ, OP_RED_SUMSQC,
+	OP_RED_FCN, OP_RED_FCN2, OP_RED_FCNN, OP_CUM_FCN, OP_CUM_FCN2,
+	OP_CUM_FCNN): New macros.
+	(mx_inline_sum, mx_inline_prod, mx_inline_sumsq, mx_inline_cumsum,
+	mx_inline_cumprod, get_extent_triplet, do_mx_red_op, do_mx_cum_op):
+	New template functions.
+	* dMatrix.cc (Matrix::cumprod, Matrix::cumsum, Matrix::prod,
+	Matrix::sum, Matrix::sumsq): Use do_mx_red_op and do_mx_cum_op.
+	* fMatrix.cc (FloatMatrix::cumprod, FloatMatrix::cumsum,
+	FloatMatrix::prod, FloatMatrix::sum, FloatMatrix::sumsq): Use
+	do_mx_red_op and do_mx_cum_op.
+	* CMatrix.cc (ComplexMatrix::cumprod, ComplexMatrix::cumsum,
+	ComplexMatrix::prod, ComplexMatrix::sum, ComplexMatrix::sumsq): Use
+	do_mx_red_op and do_mx_cum_op.
+	* fCMatrix.cc (FloatComplexMatrix::cumprod,
+	FloatComplexMatrix::cumsum, FloatComplexMatrix::prod,
+	FloatComplexMatrix::sum, FloatComplexMatrix::sumsq): Use do_mx_red_op
+	and do_mx_cum_op.
+
+2009-02-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (if_else_type): Remove
+	(octave_int_base::truncate_int): Use if_then_else.
+
+2009-02-12  John W. Eaton  <jwe@octave.org>
+
+	* lo-traits.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+	* Array.h (compare_fcn_type): New typedef.
+	* oct-sort.h (compare_fcn_type): Ditto.
+
+	* oct-sort.h, oct-sort.cc (octave_sort<T>::octave_sort,
+	octave_sort<T>::set_compare, octave_sort<T>::compare):
+	Use typedef to simplify decl.
+	(octave_sort<T>::ascending_compare,
+	octave_sort<T>::descending_compare):
+	Use ref_param<T>::type for parameter decl.
+
+	* Array.cc (sort_isnan): Use ref_param<T>::type for parameter decl.
+	(Array<T>::sort): Use explicit template parameter for sort_isnan calls.
+
+	* Array.cc, Array-C.cc, Array-fC.cc, Array-d.cc, Array-f.cc
+	(sortrows_comparator): Rename from _sortrows_comparator.  Change
+	all uses.  Use typedef for return value to simplify decl.
+	(sort_isnan): Rename from _sort_isnan.  Change all uses.
+	(NO_INSTANTIATE_ARRAY_SORT): Use typedef to simplify instantiation
+	of sortrows_comparator.
+
+	* Array-C.cc, Array-fC.cc (sort_isnan, ascending_compare,
+	descending_compare, nan_ascending_compare,
+	nan_descending_compare):
+
+2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::is_sorted, octave_sort<T>::sort_rows,
+	octave_sort<T>::is_sorted_rows): New methods.
+	* oct-sort.h: Declare them.
+
+	* Array.cc (Array<T>::is_sorted): New method.
+	(INSTANTIATE_ARRAY_SORT, NO_INSTANTIATE_ARRAY_SORT,
+	INSTANTIATE_ARRAY_AND_ASSIGN, INSTANTIATE_ARRAY): Move macros here.
+	* Array.h: Reflect changes.
+
+	* dim-vector.h (dim_vector::is_vector): New method.
+	* Array-C.cc, Array-fC.cc: Override _sort_isnan, don't check for
+	NaN in default comparators. Provide NaN-safe comparators, override
+	_sortrows_comparator.
+	* Array-d.cc, Array-f.cc: Provide NaN-safe comparators, override
+	_sortrows_comparator.
+	* Range.cc (Range::is_sorted): New method.
+	* Range.h: Declare it.
+
+2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>): Rewrite for optimizations. Allow
+	inlined comparison functor and by-the-way indexed sorting.
+	* oct-sort.h (octave_sort<T>): Update interface.
+	* Array.cc (Array<T>::sort): Reflect changes. Use copy & partition
+	mechanism.
+	* Array-d.cc, Array-f.cc, Array-C.cc, Array-fC.cc, Array-s.cc,
+	Array-i.cc: Reflect changes.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.cc (base_file_stat::is_sock):
+	Use EXISTS instead of OK in previous change.
+
+	* file-stat.cc (base_file_stat::is_blk, base_file_stat::is_chr,
+	base_file_stat::is_dir, base_file_stat::is_fifo,
+	base_file_stat::is_lnk, base_file_stat::is_reg,
+	base_file_stat::is_sock): Return false if object is not initialized.
+	From Rafael Laboissiere <rafael@debian.org>.
+
+2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::idx_colon_rep,
+	idx_vector::idx_scalar_rep, idx_vector::idx_range_rep,
+	idx_vector::idx_vector_rep): Declare allocators.
+	* idx-vector.cc: Define them.
+
+2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* str-vec.h (string_vector::sort): Remove implementation.
+	* str-vec.cc (string_vector::sort): Move here. Use in-place sorting.
+	* Array-str.cc: Fix order of header files.
+	* oct-sort.cc (octave_sort<T>::merge_hi): std::copy ->
+	std::copy_backward where appropriate.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.cc (zero_dims_inquire): Eliminate unused variable MATCH.
+
+	* Sparse.cc (assign (Sparse<LT>& lhs, const Sparse<RT>& rhs)):
+	Eliminate unused variable N.
+
+	* MArray-f.cc (MArray<float>::norm (float p) const,
+	MArray<FloatComplex>::norm (float p) const): Pass P to xnorm.
+
+	* eigs-base.cc (EigsRealNonSymmetricFunc, EigsRealSymmetricFunc)
+	(EigsComplexNonSymmetricFunc): Avoid unused parameter warning.
+	* idx-vector.cc (idx_vector::freeze): Likewise.
+
+2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-locbuf.h: Specialize OCTAVE_LOCAL_BUFFER to use chunked
+	allocation for pointers and const pointers.
+
+2009-02-03  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* Makefile.in: Add missing library reference.
+
+2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::sort (octave_idx_type, sortmode)):
+	Copy array on-the-fly.
+	(Array<T>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
+	Copy array on-the-fly, use bare pointers rather than vec_index.
+
+	* Array-d.cc (Array<double>::sort (octave_idx_type, sortmode)):
+	Copy array on-the-fly.
+	(Array<double>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
+	Copy array on-the-fly, use bare pointers rather than vec_index.
+
+	* Array-f.cc (Array<float>::sort (octave_idx_type, sortmode)):
+	Copy array on-the-fly.
+	(Array<float>::sort (Array<octave_idx_type> &, octave_idx_type, sortmode)):
+	Copy array on-the-fly, use bare pointers rather than vec_index.
+
+2009-02-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_fabs_dup, mx_inline_cabs_dup): New funcs.
+
+	* dMatrix.cc (real, imag, Matrix::abs): Simplify.
+	* fMatrix.cc (real, imag, FloatMatrix::abs): Simplify.
+	* CMatrix.cc (ComplexMatrix::abs, ComplexMatrix::conj): Simplify.
+	* fCMatrix.cc (FloatComplexMatrix::abs, FloatComplexMatrix::conj): Simplify.
+
+	* CMatrix.h, fCMatrix.h (conj): Add missing decl.
+
+	* dNDArray.cc (real, imag, NDArray::abs): Simplify.
+	* fNDArray.cc (real, imag, FloatNDArray::abs): Simplify.
+	* CNDArray.cc (ComplexNDArray::abs, ComplexNDArray::conj): Simplify.
+	* fCNDArray.cc (FloatComplexNDArray::abs, FloatComplexNDArray::conj): Simplify.
+
+	* CMatrix.h, fCMatrix.h (conj): New decl.
+
+2009-01-29  John W. Eaton  <jwe@octave.org>
+
+	* intNDArray.h (intNDArray<T>:any_element_is_nan): New function.
+	* boolNDArrah.h (boolNDArray::any_element_is_nan): New function.
+	* chNDArray.h (charNDArray::any_element_is_nan): New function.
+
+2009-01-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LIBRARIES, install, uninstall): Use SHLLIBPRE
+	and SHLBINPRE library prefixes.
+	From Marco Atzeri <marco_atzeri@yahoo.it>.
+
+2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::Matrix (const RowVector&)): Use shallow copy.
+	(Matrix::Matrix (const ColumnVector&)): Ditto.
+	(Matrix::row): Ditto.
+	(Matrix::column): Ditto.
+
+	* fMatrix.cc (FloatMatrix::FloatMatrix (const FloatRowVector&)): Use
+	shallow copy.
+	(FloatMatrix::FloatMatrix (const FloatColumnVector&)): Ditto.
+	(FloatMatrix::row): Ditto.
+	(FloatMatrix::column): Ditto.
+
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const ComplexRowVector&)):
+	Use shallow copy.
+	(ComplexMatrix::ComplexMatrix (const ComplexColumnVector&)): Ditto.
+	(ComplexMatrix::row): Ditto.
+	(ComplexMatrix::column): Ditto.
+
+	* fCMatrix.cc (FloatComplexMatrix::FloatComplexMatrix (const FloatComplexRowVector&)):
+	Use shallow copy.
+	(FloatComplexMatrix::FloatComplexMatrix (const FloatComplexColumnVector&)): Ditto.
+	(FloatComplexMatrix::row): Ditto.
+	(FloatComplexMatrix::column): Ditto.
+
+2009-01-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* Makefile.in (LINK_DEPS): Include ARPACK_LIBS and REGEX_LIBS in
+	the list.
+
+2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQR.cc (QR::init): Use form. Use local buffers.
+	Query for optimal block size.
+	(QR::form): New function.
+	* dbleQR.h: Declare it.
+	* dbleQRP.cc (QRP::init):Use form. Use local buffers.
+	Query for optimal block size.
+
+	* floatQR.cc (FloatQR::init): Use form. Use local buffers.
+	Query for optimal block size.
+	(FloatQR::form): New function.
+	* floatQR.h: Declare it.
+	* floatQRP.cc (FloatQRP::init):Use form. Use local buffers.
+	Query for optimal block size.
+
+	* CmplxQR.cc (ComplexQR::init): Use form. Use local buffers.
+	Query for optimal block size.
+	(ComplexQR::form): New function.
+	* CmplxQR.h: Declare it.
+	* CmplxQRP.cc (ComplexQRP::init):Use form. Use local buffers.
+	Query for optimal block size.
+
+	* fCmplxQR.cc (FloatComplexQR::init): Use form. Use local buffers.
+	Query for optimal block size.
+	(FloatComplexQR::form): New function.
+	* fCmplxQR.h: Declare it.
+	* fCmplxQRP.cc (FloatComplexQRP::init):Use form. Use local buffers.
+	Query for optimal block size.
+
+2009-01-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::assign (const idx_vector&, const Array<T>&)):
+	Optimize assignment to an empty array.
+	(Array<T>::assign (const idx_vector&, const idx_vector&, const Array<T>&)):
+	Optimize assignment to an empty array.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array2.h (Array2<T>::index): Declare resize_ok as bool.
+	* ArrayN.h (ArrayN<T>::index): Ditto. Declare index vectors as const
+	refs.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Range.cc (sort_internal): Add missing test.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::index (..., bool resize_ok)):
+	Optimize the all-scalar-indices cases.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQR.h: Optionally declare warn_qrupdate_once.
+	* dbleQR.cc: Define it.
+	* (CmplxQR.h, dbleQR.h, fCmplxQR.h, floatQR.h): Declare replacement
+	methods unconditionally.
+	* (CmplxQR.cc, dbleQR.cc, fCmplxQR.cc, floatQR.cc): Define
+	updating replacement methods.
+	* (CmplxCHOL.h, dbleCHOL.h, fCmplxCHOL.h, floatCHOL.h): Declare
+	replacement methods unconditionally.
+	* (CmplxCHOL.cc, dbleCHOL.cc, fCmplxCHOL.cc, floatCHOL.cc): Define
+	updating replacement methods.
+
+2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Range.cc ( operator + (double x, const Range& r),
+	operator + (const Range& r, double x),
+	operator - (double x, const Range& r),
+	operator - (const Range& r, double x),
+	operator * (double x, const Range& r),
+	operator * (const Range& r, double x)): New operators.
+	* Range.h: Declare them.
+
+2009-01-20  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.h, file-stat.cc (class base_file_stat): New base class.
+	(class file_stat): Derive from base_file_stat.
+	(class file_fstat): New class, derived from base_file_stat.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* floatQR.h (FloatQR::update, FloatQR::insert_col,
+	FloatQR::insert_row, FloatQR::delete_col, FloatQR::delete_row,
+	FloatQR::shift_col): Update interfaces.
+
+	* floatQR.cc: Update external decls for qrupdate routines.
+	(FloatQR::update, FloatQR::insert_col, FloatQR::insert_row,
+	FloatQR::delete_col, FloatQR::delete_row, FloatQR::shift_col): Reflect
+	changes in qrupdate interfaces, implement batch updates.
+
+	* dbleQR.h (QR::update, QR::insert_col, QR::insert_row,
+	QR::delete_col, QR::delete_row, QR::shift_col): Update interfaces.
+
+	* dbleQR.cc: Update external decls for qrupdate routines.
+	(QR::update, QR::insert_col, QR::insert_row, QR::delete_col,
+	QR::delete_row, QR::shift_col): Reflect changes in qrupdate
+	interfaces, implement batch updates.
+
+	* fCmplxQR.h (FloatComplexQR::update, FloatComplexQR::insert_col,
+	FloatComplexQR::insert_row, FloatComplexQR::delete_col,
+	FloatComplexQR::delete_row, FloatComplexQR::shift_col): Update
+	interfaces.
+
+	* fCmplxQR.cc: Update external decls for qrupdate routines.
+	(FloatComplexQR::update, FloatComplexQR::insert_col,
+	FloatComplexQR::insert_row, FloatComplexQR::delete_col,
+	FloatComplexQR::delete_row, FloatComplexQR::shift_col): Reflect
+	changes in qrupdate interfaces,
+	implement batch updates.
+
+	* CmplxQR.h (ComplexQR::update, ComplexQR::insert_col,
+	ComplexQR::insert_row, ComplexQR::delete_col, ComplexQR::delete_row,
+	ComplexQR::shift_col): Update interfaces.
+
+	* CmplxQR.cc: Update external decls for qrupdate routines.
+	(ComplexQR::update, ComplexQR::insert_col,
+	ComplexQR::insert_row, ComplexQR::delete_col, ComplexQR::delete_row,
+	ComplexQR::shift_col): Reflect changes in qrupdate interfaces,
+	implement batch updates.
+
+	* floatCHOL.h (FloatCHOL::update, FloatCHOL::downdate,
+	FloatCHOL::insert_sym): Update interfaces.
+	* floatCHOL.cc: Update external decls for qrupdate routines.
+	(FloatCHOL::update, FloatCHOL::downdate, FloatCHOL::insert_sym,
+	FloatCHOL::delete_sym, FloatCHOL::shift_sym): Reflect changes in
+	qrupdate interfaces,
+
+	* CHOL.h (CHOL::update, CHOL::downdate, CHOL::insert_sym): Update
+	interfaces.
+	* CHOL.cc: Update external decls for qrupdate routines.
+	(CHOL::update, CHOL::downdate, CHOL::insert_sym, CHOL::delete_sym,
+	CHOL::shift_sym): Reflect changes in qrupdate interfaces,
+
+	* fCmplxCHOL.h (FloatComplexCHOL::update, FloatComplexCHOL::downdate,
+	FloatComplexCHOL::insert_sym): Update interfaces.
+	* fCmplxCHOL.cc: Update external decls for qrupdate routines.
+	(FloatComplexCHOL::update, FloatComplexCHOL::downdate,
+	FloatComplexCHOL::insert_sym, FloatComplexCHOL::delete_sym,
+	FloatComplexCHOL::shift_sym): Reflect changes in qrupdate interfaces,
+
+	* CmplxCHOL.h (ComplexCHOL::update, ComplexCHOL::downdate,
+	ComplexCHOL::insert_sym): Update interfaces.
+	* CmplxCHOL.cc: Update external decls for qrupdate routines.
+	(ComplexCHOL::update, ComplexCHOL::downdate, ComplexCHOL::insert_sym,
+	ComplexCHOL::delete_sym, ComplexCHOL::shift_sym): Reflect changes in
+	qrupdate interfaces,
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>): Document internal use of slice_data and
+	slice_len.
+
+2009-01-15  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::reshape): Include mismatched dimensions in
+	error message.
+	* Array.cc (Array<T>::reshape): Likewise.
+	From Robert Millan <rmh@aybabtu.com>.
+
+2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::rep, Array<T>::dimensions): Make protected.
+	* Array.cc (Array<T>::make_unique): Move implementation here.
+	(Array<T>::fill): Ditto.
+	* DiagArray2.h (DiagArray2<T>): Reimplement without abusing
+	Array<T> internals.
+	(DiagArray2<T>::operator Array2<T>): New method.
+	* DiagArray2.cc (DiagArray2<T>): Update methods.
+	* MDiagArray2.h (MDiagArray2<T>::operator Array2<T>): Simplify.
+	* PermMatrix.h (PermMatrix): Reimplement without abusing
+	Array<T> internals.
+	* PermMatrix.cc (PermMatrix): Update methods.
+
+2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc, Array.h (all Array<T> constructors): Handle slice_data and
+	slice_len.
+	(Array<T>::Array<T> (const Array<T>&, const dim_vector&,
+	octave_idx_type, octave_idx_type)): New constructor.
+	(Array<T>::index): Use shallow copy when index reduces to a contiguous
+	range.
+	(Array<T>::make_unique): Rewrite.
+	(Array<T>::ArrayRep): Delete redundant methods.
+	(rec_index_helper::is_cont_range): New method.
+	(Array<T>::maybe_economize): New method.
+	* DiagArray2.cc (DiagArray2<T>::resize): Fix the mess.
+
+2008-01-15  Rafael Laboissiere  <rafael@debian.org>
+
+	* oct-md5.cc: Include <cstdio>.
+
+2009-01-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array::ArrayRep::qsort): Remove.
+	(Array::qsort): Remove.
+	* glob-match.cc (glob_match::glob): qsort -> sort.
+	* str-vec.cc (string_vector::compare): Remove.
+	* str-vec.h (string_vector::compare): Remove decl.
+	(string_vector::qsort): Rename to sort, call Array::sort.
+
+2008-12-23  David Bateman  <dbateman@free.fr>
+
+	* eigs-base.cc: New file with template wrapper for ARPACK.
+	* Makefile.in (TEMPLATE_SRC): Add it here.
+
+2008-12-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (rec_permute_helper): New class.
+	(Array<T>::permute): Rewrite using the recursive algorithm.
+
+2008-12-12  David Bateman  <dbateman@free.fr>
+
+	* sparse-base-chol.cc (inverse): Fix inversion based on cholesky
+	factorization.
+
+2008-12-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-locbuf.cc: New source.
+	* oct-locbuf.h (octave_chunk_buffer): New class.
+	(octave_local_buffer): Subclass from octave_chunk_buffer for selected
+	POD types.
+
+2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-op-defs.h (DMDM_BIN_OP): Fix invalid buffer length.
+
+2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.h, dMatrix.cc (Matrix::expm): Remove.
+	* fMatrix.h, fMatrix.cc (FloatMatrix::expm): Remove.
+	* CMatrix.h, CMatrix.cc (ComplexMatrix::expm): Remove.
+	* fCMatrix.h, fCMatrix.cc (FloatComplexMatrix::expm): Remove.
+
+2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* base-aepbal.h: New source.
+	* dbleAEPBAL.h, dbleAEPBAL.cc: Rebase AEPBAL on base_aepbal.
+	* floatAEPBAL.h, floatAEPBAL.cc: Rebase FloatAEPBAL on base_aepbal.
+	* CmplxAEPBAL.h, CmplxAEPBAL.cc: Rebase ComplexAEPBAL on base_aepbal.
+	* fCmplxAEPBAL.h, fCmplxAEPBAL.cc: Rebase FloatComplexAEPBAL on base_aepbal.
+
+2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
+	Sparse<bool>&)): New constructor.
+	* idx_vector.h: Declare it.
+	(idx_vector::idx_vector (const Sparse<bool>&)): New constructor.
+	* idx-vector.cc (idx_vector::idx_vector_rep::idx_vector_rep (const
+	Array<bool>&)): Fix extent calculation.
+
+2008-12-09  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (INCLUDES): Add oct-locbuf.h
+
+2008-12-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mx-inlines.cc (mx_inline_fill_vs): New template function.
+	* mx-op-defs.h (everywhere): Replace int by octave_idx_type.
+	(MDM_MULTIPLY_OP): Use mx_inline_mul_vs and mx_inline_fill_vs.
+	(DMM_MULTIPLY_OP): Ditto.
+	* fDiagMatrix.cc (operator *): Remove redundant ifs.
+	* fCDiagMatrix.cc (operator *): Remove redundant ifs.
+
+2008-12-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-locbuf.h (OCTAVE_LOCAL_BUFFER_INIT): New macro.
+
+2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-locbuf.h: New header file.
+	* Array-d.cc, Array-f.cc, Array.cc, CMatrix.cc, CNDArray.cc,
+	CSparse.cc, CmplxCHOL.cc, CmplxGEPBAL.cc, MatrixType.cc,
+	Sparse-op-defs.h, Sparse.cc, SparseCmplxLU.cc, SparseCmplxQR.cc,
+	SparseQR.cc, SparsedbleLU.cc, dMatrix.cc, dNDArray.cc, dSparse.cc,
+	data-conv.cc, dbleCHOL.cc, dbleGEPBAL.cc, fCMatrix.cc, fCNDArray.cc,
+	fCmplxCHOL.cc, fCmplxGEPBAL.cc, fMatrix.cc, fNDArray.cc, file-ops.cc,
+	floatCHOL.cc, floatGEPBAL.cc, lo-sysdep.cc, oct-fftw.cc, oct-md5.cc,
+	oct-rand.cc, regex-match.cc, sparse-dmsolve.cc: Include oct-locbuf.h.
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DiagArray2.h (DiagArray2<T>): Inherit Array<T> privately.
+	(DiagArray2<T>::dim1, dim2, rows, columns, cols, length,
+	nelem, numel, byte_size, dims): New methods.
+	(DiagArray2<T>::diag): New method decl.
+	* DiagArray2.cc (DiagArray2<T>::diag): New method.
+	* MDiagArray2.h (MDiagArray2<T>::diag): New method.
+	* dDiagMatrix.cc (DiagMatrix::diag): Remove.
+	* fDiagMatrix.cc (FloatDiagMatrix::diag): Remove.
+	* CDiagMatrix.cc (ComplexDiagMatrix::diag): Remove.
+	* fCDiagMatrix.cc (FloatComplexDiagMatrix::diag): Remove.
+
+	* PermMatrix.h (PermMatrix): Inherit Array<octave_idx_type> privately.
+	(PermMatrix::dim1, dim2, rows, columns, cols, length,
+	nelem, numel, byte_size, dims): New methods.
+
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dDiagMatrix.cc (DiagMatrix::determinant, DiagMatrix::rcond): New
+	method.
+	* dDiagMatrix.h: Declare them.
+	* fDiagMatrix.cc (FloatDiagMatrix::determinant,
+	FloatDiagMatrix::rcond): New methods.
+	* fDiagMatrix.h: Declare them.
+	* CDiagMatrix.cc (ComplexDiagMatrix::determinant,
+	ComplexDiagMatrix::rcond): New methods.
+	* CDiagMatrix.h: Declare them.
+	* fCDiagMatrix.cc (FloatComplexDiagMatrix::determinant,
+	FloatComplexDiagMatrix::rcond): New methods.
+	* fCDiagMatrix.h: Declare them.
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx-vector::complement): Add missing delete.
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQRP.cc (QRP::QRP): Call DGEQP3 rather than DGEQPF.
+	* floatQRP.cc (FloatQRP::FloatQRP): Call SGEQP3 rather than SGEQPF.
+	* CmplxQRP.cc (ComplexQRP::ComplexQRP): Call ZGEQP3 rather than ZGEQPF.
+	* fCmplxQRP.cc (FloatComplexQRP::FloatComplexQRP): Call CGEQP3 rather than CGEQPF.
+
+2008-12-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* PermMatrix.h, PermMatrix.cc: New sources.
+	* MDiagArray2.cc (MDiagArray2<T>::is_multiple_of_identity): New method.
+	* MDiagArray2.h (MDiagArray2<T>::is_multiple_of_identity): Declare it.
+	* idx-vector.cc (idx_vector::is_permutation): New method.
+	* idx-vector.h (idx_vector::is_permutation): Declare it.
+	* base-lu.cc (base_lu::getp): New method.
+	(base_lu::P): Call getp.
+	(base_lu::Pvec): Call getp.
+	* base-lu.h (base_lu): Delcare P as PermMatrix. Remove unused template
+	params.
+	* dbleQRP.cc (dbleQRP::dbleQRP): Construct a permutation matrix.
+	(dbleQRP::Pvec): New method.
+	* dbleQRP.h: Declare new method. Declare P as PermMatrix.
+	* CmplxQRP.cc (ComplexQRP): Likewise.
+	* CmplxQRP.h (ComplexQRP): Likewise.
+	* floatQRP.cc (FloatQRP): Likewise.
+	* floatQRP.h (FloatQRP): Likewise.
+	* fCmplxQRP.cc (FloatComplexQRP): Likewise.
+	* fCmplxQRP.h (FloatComplexQRP): Likewise.
+
+2008-12-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DiagArray2.h (DiagArray2<T>::DiagArray2<T> (const DiagArray2<U>&)): New template
+	constructor.
+	(DiagArray2<T>::elem, xelem, operator ()): Move to header file to
+	enable inlining.
+	* DiagArray2.cc (DiagArray2<T>::elem, xelem, operator ()): Remove
+	implementations.
+	* MDiagArray2.h (MDiagArray2<T>::MDiagArray2<T> (const DiagArray2<U>&)): New template
+	constructor.
+	(MDiagArray2<T>::nnz): New method.
+	* MDiagArray2.cc (MDiagArray2<T>::nnz): Implement it.
+
+	* dDiagMatrix.h (DiagMatrix::DiagMatrix (const DiagArray2<U>&)): New template
+	constructor.
+	(DiagMatrix::abs): New method decl.
+	(real (const ComplexDiagMatrix&), imag (const ComplexDiagMatrix&)):
+	New decls.
+	* dDiagMatrix.cc (DiagMatrix::abs): New method.
+	(operator *(const DiagMatrix&, const DiagMatrix&)): Optimize.
+	(real (const ComplexDiagMatrix&), imag (const ComplexDiagMatrix&)):
+	New functions.
+
+	* fDiagMatrix.h (FloatDiagMatrix::FloatDiagMatrix (const DiagArray2<U>&)): New template
+	constructor.
+	(FloatDiagMatrix::abs): New method decl.
+	(real (const FloatComplexDiagMatrix&), imag (const FloatComplexDiagMatrix&)):
+	New decls.
+	* fDiagMatrix.cc (FloatDiagMatrix::abs): New method.
+	(operator *(const FloatDiagMatrix&, const FloatDiagMatrix&)): Optimize.
+	(real (const FloatComplexDiagMatrix&), imag (const FloatComplexDiagMatrix&)):
+	New functions.
+
+	* CDiagMatrix.h (ComplexDiagMatrix::ComplexDiagMatrix (const DiagArray2<U>&)): New template
+	constructor.
+	(ComplexDiagMatrix::abs): New method decl.
+	(conj (const ComplexDiagMatrix&)): Add missing decl.
+	(ComplexDiagMatrix::all_elements_are_real): New method decl.
+
+	* CDiagMatrix.cc (CDiagMatrix::abs): New method.
+	(operator *(const DiagMatrix&, const ComplexDiagMatrix&)): Optimize.
+	(operator *(const ComplexDiagMatrix&, const DiagMatrix&)): Optimize.
+	(operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)): Optimize.
+	(ComplexDiagMatrix::all_elements_are_real): New method.
+
+	* fCDiagMatrix.h (FloatComplexDiagMatrix::FloatComplexDiagMatrix (const DiagArray2<U>&)): New template
+	constructor.
+	(FloatComplexDiagMatrix::abs): New method decl.
+	(conj (const FloatComplexDiagMatrix&)): Add missing decl.
+	(FloatComplexDiagMatrix::all_elements_are_real): New method decl.
+
+	* fCDiagMatrix.cc (CDiagMatrix::abs): New method.
+	(operator *(const FloatDiagMatrix&, const FloatComplexDiagMatrix&)): Optimize.
+	(operator *(const FloatComplexDiagMatrix&, const FloatDiagMatrix&)): Optimize.
+	(operator *(const ComplexDiagMatrix&, const ComplexDiagMatrix&)): Optimize.
+	(FloatComplexDiagMatrix::all_elements_are_real): New method.
+
+	* dSparse.cc (SparseMatrix::SparseMatrix (const DiagMatrix&)): New
+	constructor.
+	* dSparse.h (SparseMatrix::SparseMatrix (const DiagMatrix&)): Declare
+	it.
+
+	* CSparse.cc (SparseComplexMatrix::SparseComplexMatrix (const ComplexDiagMatrix&)):
+	New constructor.
+	* CSparse.h (SparseComplexMatrix::SparseComplexMatrix (const ComplexDiagMatrix&)):
+	Declare it.
+	* mx-op-defs.h (DMM_MULTIPLY_OP, MDM_MULTIPLY_OP): Optimize.
+
+2008-11-21  Jarkko Kaleva  <d3roga@gmail.com>
+
+	* EIG.h (EIG::EIG (const Matrix& a, const Matrix& b,
+	bool calc_eigenvectors = true)): New constructor.
+	(EIG::EIG (const Matrix& a, const Matrix& b, octave_idx_type& info,
+	bool calc_eigenvectors = true)): New constructor.
+	(EIG::EIG (const ComplexMatrix& a, const ComplexMatrix& b,
+	bool calc_eigenvectors = true)): New constructor.
+	(EIG::EIG (const ComplexMatrix& a, const ComplexMatrix& b,
+	octave_idx_type& info, bool calc_eigenvectors = true)): New
+	constructor.
+	* EIG.cc (EIG::init (const Matrix& a, const Matrix& b,
+	bool calc_eigenvectors)): New function.
+	(EIG::init (const ComplexMatrix& a, const ComplexMatrix& b,
+	bool calc_eigenvectors)): New function.
+	(EIG::symmetric_init (const Matrix& a, const Matrix& b,
+	bool calc_eigenvectors)): New function.
+	(EIG::hermitian_init (const ComplexMatrix& a, const ComplexMatrix& b,
+	bool calc_eigenvectors)): New function.
+	* fEIG.h (fEIG::fEIG (const FloatMatrix& a, const FloatMatrix& b,
+	bool calc_eigenvectors = true)): New constructor.
+	(fEIG::fEIG (const FloatMatrix& a, const FloatMatrix& b,
+	octave_idx_type& info, bool calc_eigenvectors = true)): New
+	constructor.
+	(fEIG::fEIG (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
+	bool calc_eigenvectors = true)): New constructor.
+	(fEIG::fEIG (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
+	octave_idx_type& info, bool calc_eigenvectors = true)): New
+	constructor.
+	(fEIG::init (const FloatMatrix& a, const FloatMatrix& b,
+	bool calc_eigenvectors)): New function.
+	(fEIG::init (const FloatComplexMatrix& a, const FloatComplexMatrix& b,
+	bool calc_eigenvectors)): New function.
+	(fEIG::symmetric_init (const FloatMatrix& a, const FloatMatrix& b,
+	bool calc_eigenvectors)): New function.
+	(fEIG::hermitian_init (const FloatComplexMatrix& a,
+	const FloatComplexMatrix& b, bool calc_eigenvectors)): New function.
+
+2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::determinant),
+	fMatrix.cc (FloatMatrix::determinant),
+	CMatrix.cc (ComplexMatrix::determinant),
+	fCMatrix.cc (FloatComplexMatrix::determinant):
+	Use atmp(i,i) instead of elem(i,i).
+
+2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DET.h (base_det<T>::square): New member function.
+	* dMatrix.cc (Matrix::determinant),
+	fMatrix.cc (FloatMatrix::determinant),
+	CMatrix.cc (ComplexMatrix::determinant),
+	fCMatrix.cc (FloatComplexMatrix::determinant):
+	Allow taking MatrixType argument.
+	* dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h: Update decls.
+
+2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DET.h: New source.
+	* CmplxDET.cc, CmplxDET.h, dbleDET.cc, dbleDET.h, fCmplxDET.cc,
+	fCmplxDET.h, floatDET.cc, floatDET.h: Remove.
+	* Makefile.in: Reflect changes.
+	* mx-defs.h: Remove DET decls.
+	* mx-ext.h, dMatrix.h, fMatrix.h, CMatrix.h, fCMatrix.h,
+	dSparse.h, CSparse.h: Include only DET.h.
+	* dMatrix.cc (Matrix::determinant),
+	fMatrix.cc (FloatMatrix::determinant),
+	CMatrix.cc (ComplexMatrix::determinant),
+	fCMatrix.cc (FloatComplexMatrix::determinant),
+	dSparse.cc (SparseMatrix::determinant),
+	CSparse.cc (SparseComplexMatrix::determinant): Use new class.
+
+2008-11-18  David Bateman  <dbateman@free.fr>
+
+	* file-ops.cc (std::string file_ops::tilde_expand (const
+	std::string&)): Check if the string contains a tilde and fast
+	return if not.
+
+2008-11-17  John W. Eaton  <jwe@octave.org>
+
+	* dir-ops.cc (dir_entry::read): Use std::list<std::string> to
+	cache names before converting to string_vector.
+
+2008-11-14  David Bateman  <dbateman@free.fr>
+
+	* Array2.h (Array2<T> Array2<T>::index): Correct use of
+	resize_fill_value.
+
+2008-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* MArray-C.cc, MArray-d.cc, MArray-f.cc, MArray-fC.cc: Declare
+	MArray<T>::norm specialization before implicit MArray<T> implicit
+	instantiation.
+	* idx-vector.h (class idx_vector::idx_base_rep, class
+	idx_vector::idx_range_rep, class idx_vector::idx_colon_rep, class
+	idx_vector::idx_scalar_rep, class idx_vector::idx_vector_rep): Add
+	OCTAVE_API tag.
+	* idx-vector.cc (idx_vector::idx_scalar_rep::idx_scalar_rep(T),
+	idx_vector::idx_vector_rep::idx_vector_rep(const Array<T>&)): Ditto.
+	* oct-inttypes.cc (octave_int<T>::type_name): Ditto.
+	* oct-inttypes.cc (powf(const octave_int<T>&,const float&)): Cast 'b'
+	to double.
+	* oct-inttypes.h: Undefine min/max.
+	* oct-norm.h (xnorm, xfrobnorm, xcolnorms, xrownorms): Add OCTAVE_API
+	tag.
+	* oct-norm.cc (xnorm, xfrobnorm, xcolnorms, xrownorms): Ditto.
+
+2008-11-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DiagArray2.h (DiagArray2<T>::maybe_delete_elements): Remove
+	declaration.
+
+2008-11-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-norm.cc: Don't include Array.cc.
+	(column_norms (const MArray2<T>&, ...)): Use std::vector instead of Array<T> for
+	accumulator containers. Use empty constructor instead of
+	Array<T>::resize.
+	(row_norms (const MArray2<T>&, ...)): Ditto.
+	(column_norms (const MSparse2<T>&, ...)): Ditto.
+	(row_norms (const MSparse2<T>&, ...)): Ditto.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-norm.h: New header file.
+	* oct-norm.cc: New source.
+	* CSparse.cc (SparseComplexMatrix::row, SparseComplexMatrix::column):
+	New member functions.
+	* CSparse.h (SparseComplexMatrix): Declare them.
+	* dSparse.cc (SparseMatrix::row, SparseMatrix::column):
+	New member functions.
+	* dSparse.h (SparseMatrix): Declare them.
+	* MArray-C.cc (MArray<Complex>::norm),
+	MArray-d.cc (MArray<double>::norm),
+	MArray-fC.cc (MArray<FloatComplex>::norm),
+	MArray-f.cc (MArray<float>::norm): Wrap a call to xnorm.
+
+	* MArray-defs.h (MARRAY_NORM_BODY): Remove.
+
+2008-11-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.cc (idx_vector::is_complement): Set resulting extent
+	correctly.
+	* Array.cc (Array<T>::delete_elements (int, const idx_vector&)):
+	Fix check for invalid dim.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::idx_range_rep::extent): Don't change
+	extent when len is zero.
+	* idx-vector.h (idx_vector::idx_range_rep::idx_range_rep (void)):
+	Create empty range by default.
+
+2008-10-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int_abs): New function.
+	(octave_int_arith_base<T, true>::div): Use octave_int_abs instead of
+	std::abs.
+	* oct-inttypes.cc (octave_int_arith_base<int64_t, true>): Ditto.
+
+2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-C.cc Array-d.cc Array-f.cc Array-fC.cc Array-i.cc Array-s.cc:
+	Don't use semicolon after INSTANTIATE_ARRAY_ASSIGN.
+	* Array-util.h (zero_dims_inquire): New declarations.
+	(is_in, how_many_lgt, short_freeze): Remove declarations.
+	* Array-util.cc (zero_dims_inquire): New functions.
+	(is_in, how_many_lgt, short_freeze): Remove functions.
+	* Array.cc (Array<T>::index, Array<T>::resize_fill, Array<T>::resize,
+	Array<T>::assign, Array<T>::delete_elements):
+	Rewrite.
+	* Array.h (Array<T>::index, Array<T>::resize_fill, Array<T>::resize,
+	Array<T>::assign, Array<T>::delete_elements):
+	Rewrite interfaces.
+	* Array2.h (Array2<T>::resize): Call Array<T>::resize_fill.
+	* Array3.h (Array3<T>::resize): Call Array<T>::resize_fill.
+	* ArrayN.h (ArrayN<T>::resize): Remove declarations.
+	(ArrayN<T>::index): Fix call to resize_fill_value.
+	* Sparse.cc (assign, assign1): Use zero-based indices.
+	* chMatrix.h: Include mx-op-defs.h
+	* dim-vector.h (dim_vector::any_neg, dim_vector::chop_all_singletons,
+	dim_vector::redim): New member functions.
+	* idx-vector.cc: Mostly rewrite.
+	* idx-vector.h: Mostly rewrite.
+
+2008-10-29  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-specfun.cc (cbesj, cbesy, cbesi, cbesk, cbesh1, cbesh2): Do not
+	use std::complex::real() and std::complex::imag() as l-value, this is
+	not supported under MSVC.
+
+2008-10-28  John W. Eaton  <jwe@octave.org>
+
+	* lo-specfun.cc: Fix prototypes for the Fortran subroutines cbesh,
+	cbesi, cbesj, cbesk, and cbesy.
+	(cbesh, cbesi, cbesj, cbesk, cbesy): Fix calls to Fortran
+	subroutines.
+
+2008-10-28  Brian Gough  <bjg@gnu.org>
+
+	* lo-specfun.cc (zbesi): Fix scaling factor for negative alpha.
+	(cbesi): Likewise.
+
+2008-10-23  John Swensen  <jpswensen@comcast.net>
+
+	* oct-shlib.cc (octave_dyld_shlib::open): Call NSLinkEditError to
+	get better diagnostic if NSLinkModule fails.
+
+2008-10-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.cc (octave_dlopen_shlib::open): Use RTLD_NOW instead
+	of RTLD_LAZY.
+
+2008-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CSparse.cc (ComplexMatrix::expm): Improve inverse preconditioning
+	according to Marco Caliari.
+	* dSparse.cc (Matrix::expm): Likewise.
+	* fCSparse.cc (FloatComplexMatrix::expm): Likewise.
+	* fSparse.cc (FloatMatrix::expm): Likewise.
+
+2008-10-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* sparse-util.h (SparseCholPrint): Change char * argument to const
+	char *.
+	* sparse-util.cc (SparseCholPrint): Likewise.
+
+2008-10-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-sort.cc (octave_sort<T>::merge_getmem,
+	octave_sort<T>::merge_freemem): Replace malloc -> new [], free ->
+	delete [].
+	(octave_sort<T>::merge_lo, octave_sort<T>::merge_hi): Replace
+	std::memcpy and std::memmove with std::copy.
+
+2008-10-08  John W. Eaton  <jwe@octave.org>
+
+	* Sparse-op-defs.h (SPARSE_SMSM_BOOL_OPS): Duplicate code for scalar
+	sparse arguments rather than rely on extern function.
+
+2008-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_base_int<T>::compute_threshold): Return
+	exclusive bounds rather than inclusive, be resistant to compiler
+	optimizations.
+	(octave_base_int<T>::convert_real): Use exclusive bounds.
+
+2008-10-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (OCTAVE_INT_DOUBLE_BIN_OP): Change octave_int64 to
+	octave_uint64 where appropriate.
+
+2008-10-06  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SMSM_CMP_OPS): Duplicate code for scalar
+	sparse arguments rather than rely on extern function.
+
+2008-10-06  John W. Eaton  <jwe@octave.org>
+
+	* Spasre-op-defs.h: Undo previous change.
+
+2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int<T>::one, octave_int<T>::zero): Declare
+	constants.
+	* oct-inttypes.cc: Define them.
+	* oct-inttypes.h: Define mixed operations via long double if possible.
+	* oct-inttypes.cc: Define alternative implementations for 64-bit
+	multiplication and mixed operations.
+	* mx-ops: Instantiate all 64-bit integer operations.
+
+2008-10-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-lookup.h: Mark functions inline. Add missing std:: qualifiers.
+
+2008-10-06  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.h (Sparse<T>::elt_type): New typedef.
+	* Sparse-op-defs.h (SPARSE_SMSM_BOOL_OP, SPARSE_MSM_CMP_OP):
+	Use it to call sparse-matrix/scalar operator instead of attempting
+	to instantiate mixed-type sparse-matrix/scalar operators.
+
+2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::maybe_delete_elements): Remove rfv argument from
+	declaration.
+	* Array.cc (Array<T>::maybe_delete_elements): Remove all usages of
+	rfv.
+
+2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (assignN): Do not call maybe_delete_elements when
+	for empty matrix.
+
+2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h: Mostly rewrite.
+	* oct-inttypes.cc: Modstly rewrite.
+
+2008-09-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (Array<T>::maybe_delete_elements_2(idx_vector&)): Return on
+	empty index vector.
+
+2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (assign1, assign2, assignN): Do not call
+	maybe_delete_elements.
+	(maybe_delete_elements (Array<idx_vector>&)): Call the 1D and 2D
+	special handlers if possible.
+	* Sparse.cc (assign1, assign2, assignN): Do not call
+	maybe_delete_elements.
+
+2008-09-22  Brian Gough  <bjg@gnu.org>
+
+	* oct-rand.cc (initialize_mersenne_twister): Use separate
+	initializations for each generator to avoid correlation.
+
+2008-09-12  Jaroslav Hajek  <highegg@gmail.com>
+
+ 	* oct-inttypes.h (pow (const octave_int<T>&, const octave_int<T>&)):
+
+2008-09-19  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign1, assign2, assignN):
+	Clear lhs index before throwing error.
+	(Array<T>::value): Clear index before throwing error.
+
+2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (maybe_delete_elements_2 (idx_vector&)): Fix tests to get
+	better Matlab compatibility.
+	(maybe_delete_elements (idx_vector&, idx_vector&)): Fix tests to get
+	better Matlab compatibility, simplify, gripe on invalid 2-D deletion.
+
+2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.h (Array<T>::coerce): Use octave_idx_type instead of int.
+
+2008-09-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (pow (const octave_int<T>&, const octave_int<T>&)):
+	Handle negative exponent correctly.
+
+2008-08-19  David Bateman  <dbateman@free.fr>
+
+	* oct-inttypes.h (template <class T1, class T2> inline T2
+	octave_int_fit_to_range (const T1&, const T2&, const T2&),
+	template <typename T> inline T octave_int_fit_to_range (const
+	double&, const T&, const T&), template <> inline T2
+	octave_int_fit_to_range<T1, T2> (const T1&, const T2&, const T2&),
+	OCTAVE_S_US_FTR): Check and flag integer trunctation.
+	(OCTAVE_INT_FIT_TO_RANGE, OCTAVE_INT_FIT_TO_RANGE2): Adapt for the
+	above change.
+	(OCTAVE_INT_CONV_FIT_TO_RANGE): New macro for conversion to
+	integer types.
+	(octave_int<T>::conv_error_type): New enum to flag conversion and
+	math warnings.
+	(octave_int<T>::octave_int (U i), octave_int<T>::octave_int
+	(double i), octave_int<>::octave_int (const octave_int<U>& i)):
+	Flag conversion and math errors other than integer truncation.
+	(octave_int<T> octave_int<T>::operator - (void)): Flag truncation
+	error.
+	(static bool get_trunc_flag (void), static bool clear_trunc_flag
+	(void, static bool trunc_flag)): Delete.
+	(static int get_conv_flag (void), static bool get_trunc_flag (void),
+	static bool get_nan_flag (void), static bool get_non_int_flag (void),
+	static bool get_math_trunc_flag (void), static void
+	clear_conv_flag (void)): New functions to query and reset
+	conversion and mathw arning state.
+	(static int cov_flag): New parameter holding current conversion
+	and math warning state. Set it to zero.
+	(template <class T> octave_int<T> powf (float, const
+	octave_int<T>&), template <class T> octave_int<T> powf (const
+	octave_int<T>&, float)): New functions.
+
+2008-08-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-ieee.cc (octave_ieee_init): Try to ensure that octave_NaN is
+	classified as positive by lo_ieee_signbit.
+
+2008-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array.cc (no_op_fcn): New static function.
+	(Array<T>::hermitian): If fcn is null, set to no_op_fcn.
+
+2008-08-07  John W. Eaton  <jwe@octave.org>
+
+	* sprse-base-chol.h, oct-sparse.h: Don't include config.h.
+
+	* cmd-edit.cc, file-ops.h, kpse.cc, oct-env.cc, pathsearch.cc:
+	Replace all uses of NPOS with std::string::npos.
+
+	* fCmplxLU.h, CmplxLU.h: Fix typo in definition of
+	multiple-inclusion guard macro.
+
+2008-08-05  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.h, file-ops.cc (file_ops::static_members):
+	New singleton class for static members of file_ops.
+
+	* pathsearch.h, pathsearch.cc (class dir_path::static_members):
+	New singleton class for static members of dir_path.
+
+	* pathsearch.cc (dir_path::init): Move octave_kpathsea_initialized
+	here from file scope.
+
+2008-08-04  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::do_set_program_name,
+	octave_env::do_base_pathname): Fix usage of
+	file_ops::dir_sep_chars.
+	(octave_env::do_make_absolute): Fix usage of
+	file_ops::dir_sep_chars and file_ops::dir_sep_str.
+	(octave_env::do_get_home_directory): Fix usage of
+	file_ops::dir_sep_str.
+
+	* file-ops.h (file_ops::do_is_dir_sep): New function.
+	(file_ops_::is_dir_sep): Call it.
+	* file-ops.cc (class file_ops): Make it a proper singleton object.
+	(file_ops::file_ops): New constructor.
+	(file_ops::instance_ok): New function.
+	(file_ops::xdir_sep_char): Now private.  No longer static.  Rename
+	from dir_sep_char.
+	(file_ops::xdir_sep_str): Likewise, from dir_sep_str.
+	(file_ops::xdir_sep_chars): Likewise, from dir_sep_chars.
+	(file_ops::dir_sep_char, file_ops::dir_sep_str,
+	file_ops::dir_sep_chars): New functions.
+	(file_ops::recursive_rmdir): Fix usage of file_ops::dir_sep_str.
+	(file_ops::concat): Fix usage of file_ops::dir_sep_char.
+
+	* oct-env.cc (octave_env::instance_ok): Fix typo in error message.
+
+2008-07-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h: Style fixes.
+
+2008-07-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-inttypes.h (octave_int<T>::trunc_flag): New member static field.
+	(octave_int<T>::get_trunc_flag, octave_int<T>::clear_trunc_flag): New
+	member functions.
+	(octave_int<T>::octave_int (const octave_int<U>&)): set trunc_flag
+	on truncation.
+	(SPECIALIZE_WIDENING_CONVERSION): New macro.
+	(DECLARE_OCTAVE_INT_TYPENAME): New macro.
+
+2008-07-29  David Bateman  <dbateman@free.fr>
+
+	* lo-ieee.h (LO_IEEE_NA_HW, LO_IEEE_NA_LW, LO_IEEE_NA_FLOAT):
+	Change definition so cast from single to double and visa versa
+	maintains NA value.
+	(LO_IEEE_NA_HW_OLD, LO_IEEE_NA_LW_OLD): Keep old values.
+	(extern OCTAVE_API int __lo_ieee_is_old_NA (double)): Function to
+	detect old NA value.
+	(extern OCTAVE_API double __lo_ieee_replace_old_NA (double)):
+	Function to replace old NA value with new new.
+	* lo-cieee.c (int __lo_ieee_is_old_NA (double)): Function to
+	detect old NA value.
+	(double __lo_ieee_replace_old_NA (double)): Function to replace
+	old NA value with new new.
+	* data-conv.cc (void read_doubles(std::istream&, double *,
+	save_type, int, bool, octave_mach_info::float_format)): Test if
+	loaded NA values is the old representation and replace it.
+
+2008-07-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-math.h: Ensure log2 is undefined from cmath in C++ mode.
+
+2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-mutex.h (octave_base_mutex::octave_base_mutex): Initialize
+	count to 1, not -1.
+
+	* oct-mutex.cc (octave_base_mutex::lock, octave_base_mutex::unlock):
+	Replace error calls with (*current_liboctave_error_handler).
+
+2008-07-21  John W. Eaton  <jwe@octave.org>
+
+	* regex-match.cc (regex_match::init): Initialize err to 0.
+
+2008-07-19  John W. Eaton  <jwe@octave.org>
+
+	* oct-mutex.h (class octave_base_mutex): New class.
+	(class octave_mutex): Don't use union for rep and count.
+	(octave_mutex::rep): Declare as octave_base_mutex.
+	(octave_mutex::count): Delete.
+	(octave_mutex::lock, octave_mutex::unlock): No longer virtual.
+	(octave_mutex::~octave_mutex): No need to check that rep is
+	valid or set rep to zero after deleting.
+	(octave_mutex::operator =): No need to check that rep is valid.
+	* oct-mutex.cc (octave_w32_mutex, octave_pthread_mutex): Derive
+	from octave_base_mutex, not octave_mutex.
+
+2008-07-18  John W. Eaton  <jwe@octave.org>
+
+	* oct-mutex.h (octave_mutex::octave_mutex (int)): Initialize rep
+	to 0, not count.
+	* oct-mutex.cc (octave_mutex::octave_mutex (void)): Set rep->count
+	to 1 instead of incrementing it.
+
+2008-07-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* dNDArray.cc: Do not include ctor NDArray(Array<octave_idx_type>,
+	bool, bool) into conditional HAVE_FFTW3 preprocessor statement.
+
+2008-07-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-mutex.h (octave_autolock::octave_autolock (void),
+	octave_autolock (const octave_autolock&),
+	octave_autolock::operator = (const octave_autolock&)):
+	Delete definitions.
+
+2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* cmd-edit.cc (event_hook_lock): New static mutex variable.
+	(command_editor::event_handler): Lock and copy event_hook_set before
+	executing handlers.
+	(command_editor::add_event_hook, command_editor::remove_event_hook):
+	Autolock event_hook_lock.
+
+2008-07-15  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-mutex.h, oct-mutex.cc: New files.
+	* Makefile.in: Add them to appropriate lists.
+
+2008-07-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.cc, oct-sort.h (octave_sort<T>::count_run): Declare
+	descending arg as bool&.
+	(octave_sort<T>::sort): Pass bool to count_run for descending arg.
+
+2008-07-11  John W. Eaton  <jwe@octave.org>
+
+	* dDiagMatrix.cc (DiagMatrix::diag): Return empty ColumnVector if
+	number of rows or columns is 0.
+	* fDiagMatrix.cc (FloatDiagMatrix::diag): Likewise.
+
+	* Array-util.cc (is_vector): Avoid GCC warning.
+	* Array-f.cc (Array<float>::sort): Likewise.
+	* Array-d.cc (Array<double>::sort): Likewise.
+	* dbleQR.cc (QR::QR (const Matrix&, const Matrix&)): Likewise.
+	* CmplxQR.cc (ComplexQR::ComplexQR (const ComplexMatrix&, const
+	ComplexMatrix&)): Likewise.
+	* floatQR.cc (FloatQR::FloatQR (const FloatMatrix&, const
+	FloatMatrix&)): Likewise.
+	* fCmplxQR.cc (FloatComplexQR::FloatComplexQR (const
+	FloatComplexMatrix&, const FloatComplexMatrix&)): Likewise.
+	* Quad.cc (IndefQuad::do_integrate (octave_idx_type&,
+	octave_idx_type&, float&), FloatIndefQuad::do_integrate,
+	DefQuad::do_integrate octave_idx_type&, octave_idx_type&, float&,
+	FloatIndefQuad::do_integrate): Likewise.
+
+	* mx-op-defs.h (MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP,
+	SND_BOOL_OP, NDND_BOOL_OP): Detect NaN values.
+	* Array-util.cc (gripe_nan_to_logical_conversion): New function.
+	* Array-util.h: Provide decl.
+	* oct-inttypes.h (xisnan (octave_int<T>)): New function.
+	* lo-mappers.h (xisnan (bool), xisnan (char)): New inline functions.
+
+	* CMatrix.cc, CNDArray.cc, CSparse.cc, dMatrix.cc, dNDArray.cc,
+	dSparse.cc, fCMatrix.cc, fCNDArray.cc, fMatrix.cc, fNDArray.cc:
+	New member function, any_element_is_nan.
+	* CMatrix.h, CNDArray.h, CSparse.h, dMatrix.h, dNDArray.h,
+	dSparse.h, fCMatrix.h, fCNDArray.h, fMatrix.h, fNDArray.h:
+	Provide decl.
+
+2008-07-10  David Bateman  <dbateman@free.fr>
+
+	* dNDArray.cc (NDArray::NDArray (const Array<octave_idx_type>&,
+	bool, bool)): New constructor.
+	* dNDArray.h: Provide decl.
+
+2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-specfun.h: Fix typo in erff/erfcf declaration.
+	* lo-specfun.cc: Ditto. Add atanhf implementation.
+
+2008-06-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* MatrixType.h: Add missing include statement.
+
+2008-06-13  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-mappers.cc (arg): Remove ambiguity about atan2(float,float) usage.
+	* fCmplxDET.cc (FloatComplexDET::initialize10): Likewise, for pow.
+
+2008-06-11  John W. Eaton  <jwe@octave.org>
+
+	* so-array.h, so-array.cc, Array-so.cc: Delete.
+	* Makefile.in: Remove them from the lists.
+
+2008-06-05  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.cc (octave_base_shlib::remove): Only dereference
+	counter if iterator is valid.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* fCmplxDET.cc (FloatComplexDET::value_will_overflow,
+	FloatComplexDET:value_will_underflow): Replace DBL_MIN and DBL_MAX
+	with FLT_MIN and FLT_MAX.
+	* floatDET.cc ((FloatDET::value_will_overflow,
+	FloatDET:value_will_underflow): Ditto.
+	* lo-cieee.c (__lo_ieee_float_is_NA): Check only a sngle word for
+	float NA value.
+	(lo_ieee_float_inf_value): Return correct float Infinity value.
+	(lo_ieee_float_NA_value): Return correct float NA value.
+	(lo_ieee_float_NaN_value): Return correct float NaN value.
+	* lo-ieee.cc (octave_ieee_init): Set float NA value correctly.
+	* lo-ieee.h (lo_ieee_float): value of union is of type float.
+	(LO_IEEE_NA_FLOAT): Make NA value a valid float NaN.
+	(LO_IEEE_NA_FLOAT_LW): Delete.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* fCmplxLU.cc (class FloatComplexLU): Correct error in instantiation.
+	* floatLU.cc (class FloatLU): ditto.
+	* floatLU.h (class FloatLU): ditto.
+
+	* floatAEPBAL.cc (octave_idx_type FloatAEPBALANCE::init (const
+	FloatMatrix&, const std::string&)): Use FloatMatrix to initialize
+	balancing_mat.
+
+	* Makefile.in (MATRIX_INC): Add fCmplxAEPBAL.h and floatAEPBAL.h.
+	(MATRIX_SRC): Add fCmplxAEPBAL.cc and floatAEPBAL.cc.
+
+2008-05-21  David Bateman  <dbateman@free.fr>
+
+	* Quad-opts.in: Handle single precision tolerances.
+	* Quad.cc (float_user_fcn): New static variable.
+	(quad_float_fcn_ptr): New typedef.
+	(qagp, quagi): New QUADPACK decls.
+	(float_user_function): New function.
+	(DefQuad::do_integrate, IndefQuad::do_integrate): Float versions.
+	(FloatDefQuad::do_integrate, FloatIndefQuad::do_integrate):
+	New functions.
+	* Quad.h (class Quad): Handle float type.
+	(class FloatDefQuad, class FloatIndefQuad): New classes.
+
+2008-05-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* fCMatrix.h (xgemm): Provide decl.
+	(xcdotc, csyrk, cherk): New F77 decls.
+	* fMatrix.cc (xgemm): New function.
+	(operator * (const FloatMatrix&, const FloatMatrix&)): Simplify.
+	(get_blas_trans_arg): New function.
+	* fCMatrix.h (xgemm): Provide decl.
+	(ssyrk): New F77 decl.
+	* fCMatrix.cc (xgemm): New function.
+	(operator * (const FloatComplexMatrix&, const
+	FloatComplexMatrix&)): Simplify.
+	(get_blas_trans_arg): New function.
+
+	* dMatrix.cc, CMatrix.cc, Sparse-op-defs.h: Add missing copyright.
+
+	* Sparse-op-defs.h (SPARSE_FULL_MUL): Simplify scalar*matrix case.
+	Correct indenting.
+	(SPARSE_FULL_TRANS_MUL): New macro.
+	(FULL_SPARSE_MUL): Simplify scalar*matrix case. Correct indenting.
+	Move OCTAVE_QUIT one level up.
+	(FULL_SPARSE_MUL_TRANS): New macro.
+	* dSparse.h (mul_trans, trans_mul): Provide decl.
+	* dSparse.cc (mul_trans, trans_mul): New functions.
+	* CSparse.h (mul_trans, trans_mul, mul_herm, herm_mul): Provide decl.
+	* CSparse.cc (mul_trans, trans_mul, mul_herm, herm_mul): New functions.
+
+	* dMatrix.h (xgemm): Provide decl.
+	* dMatrix.cc (xgemm): New function.
+	(operator * (const Matrix&, const Matrix&)): Simplify.
+	(get_blas_trans_arg): New function.
+	* CMatrix.h (xgemm): Provide decl.
+	* CMatrix.cc (xgemm): New function.
+	(operator * (const ComplexMatrix&, const ComplexMatrix&)): Simplify.
+	(get_blas_trans_arg): New function.
+
+	* MatrixType.cc (matrix_real_probe, matrix_complex_probe):
+	New template functions.
+	(MatrixType::MatrixType (const Matrix&),
+	MatrixType::MatrixType (const FloatMatrix&)):
+	just call matrix_real_probe.
+	(MatrixType::MatrixType (const ComplexMatrix&),
+	MatrixType::MatrixType (const FloatComplexMatrix&)):
+	just call matrix_complex_probe.
+
+	* MatrixType.cc (MatrixType::MatrixType (matrix_type, bool)):
+	add missing test for Unknown.
+
+2008-05-21  David Bateman  <dbateman@free.fr>
+
+	* fCMatrix.cc (float rcond): Replace with float rcon everywhere
+	to avoid shadowed variable warning
+	(float ComplexMatrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(float ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
+	* fCMatrix.h (float rcond):  Replace with float rcon everywhere
+	to avoid shadowed variable warning
+	(float ComplexMatrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(float ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
+	* fMatrix.cc (float rcond): Replace with float rcon everywhere
+	to avoid shadowed variable warning
+	(float Matrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(float Matrix::rcond (MatrixType &mattype) const): ditto.
+	* fMatrix.h (float rcond):  Replace with float rcon everywhere
+	to avoid shadowed variable warning
+	(float Matrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(float Matrix::rcond (MatrixType &mattype) const): ditto.
+
+	* Array.cc: Fix transpose tests.
+
+	* CmplxGEBAL.cc (ComplexGEPBALANCE), dbleGEPBAL.cc (GEPBALANCE),
+	fCmplxGEPBAL.cc (FloatComplexGEPBALANCE), floatGEPBAL.cc
+	(FloatGEPBALANCE): New class for generalized eigenvalue balancing.
+	* CmplxGEBAL.h (ComplexGEPBALANCE), dbleGEPBAL.h (GEPBALANCE),
+	fCmplxGEPBAL.h (FloatComplexGEPBALANCE), floatGEPBAL.h
+	(FloatGEPBALANCE): Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatAEPBAL.cc (FloatAEPBALANCE), fCmplxAEPBAL.cc
+	(FloatComplexAEPBALANCE): New classes for single precision
+	Algebraic eignvalue balancing.
+	* floatAEPBAL.h (FloatAEPBALANCE), fCmplxAEPBAL.h
+	(FloatComplexAEPBALANCE): Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatHESS.cc (FloatHESS), fCmplxHESS.cc (FloatComplexHESS):  New
+	classes for single precision Hessenberg decomposition.
+	* floatHESS.h (FloatHESS), fCmplxHESS.h (FloatComplexHESS):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatQR.cc (FloatQR), fCmplxQR.cc (FloatComplexQR):  New
+	classes for single precision QR decomposition.
+	* floatQR.h (FloatQR), fCmplxQR.h (FloatComplexQR):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatQRP.cc (FloatQRP), fCmplxQRP.cc (FloatComplexQRP):  New
+	classes for single precision permuted QR decomposition.
+	* floatQRP.h (FloatQRP), fCmplxQRP.h (FloatComplexQRP):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* mx-defs (FloatAEPBALANCE, FloatComplexAEPBALANCE,
+	ComplexGEPBALANCE, FloatGEPBALANCE,FloatComplexGEPBALANCE,
+	FloatHESS, FloatComplexHESS, FloatQR, FloatComplexQR, QRP,
+	ComplexQRP, FloatQRP, FloatComplexQRP):	Declare classes.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T> Array<T>::transpose () const): Modify for tiled
+	transpose to limit the number of cache misses.
+	(Array<T> Array<T>::hermitian (T (*)(const&)) const): New method
+	for matrix conjugate transpose.
+	* Array.h (Array<T> hermitian (T (*)(const&)) const): Declare it.
+
+	* DiagArray2.cc (DiagArray2<T> DiagArray2<T>::transpose () const):
+	Specialization for diagonal arrays.
+	(DiagArray2<T> DiagArray2<T>::transpose (T (*) (const&)) const):
+	Ditto.
+
+	* MArray.h (MArray<T> hermitian <T (*) (const&)) const): New method.
+	(MArray<T> transpose () const): Ditto.
+	* MArray2.h (MArray2<T> hermitian <T (*) (const&)) const): Ditto.
+	* Array2.h (Array2<T> hermitian <T (*) (const&)) const): Ditto.
+	* ArrayN.h (ArrayN<T> hermitian <T (*) (const&)) const): Ditto.
+	* MDiagArray2.h (MDiagArray2<T> transpose () const): Ditto.
+	(MDiagArray<T> hermitian <T (*) (const&)) const): Ditto.
+
+	* CColVector.cc (transpose, hermitian): Define in terms of base class.
+	* CRowVector.cc (transpose, hermitian): Ditto.
+	* dColVector.cc (transpose): Ditto.
+	* dRowVector.cc (transpose): Ditto.
+	* CDiagMatrix.h (transpose, hermitian): Ditto.
+	* dDiagMatrix.h (transpose): Ditto.
+
+	* fCColVector.cc (transpose, hermitian): Define in terms of base class.
+	* fCRowVector.cc (transpose, hermitian): Ditto.
+	* fColVector.cc (transpose): Ditto.
+	* fRowVector.cc (transpose): Ditto.
+	* fCDiagMatrix.h (transpose, hermitian): Ditto.
+	* fDiagMatrix.h (transpose): Ditto.
+
+	* CDiagMatrix.cc (ComplexDiagMatrix::transpose,
+	ComplexDiagMatrix::hermitian): Delete.
+	* dDiagMatrix.cc (DiagMatrix::transpose): Ditto.
+	* CMatrix.cc (ComplexMatrix::hermitian): Ditto.
+
+	* fCDiagMatrix.cc (FloatComplexDiagMatrix::transpose,
+	FloatComplexDiagMatrix::hermitian): Delete.
+	* fDiagMatrix.cc (FloatDiagMatrix::transpose): Ditto.
+	* fCMatrix.cc (FloatComplexMatrix::hermitian): Ditto.
+
+	* lo-mappers.cc (FloatComplex xlog2(const FloatComplex&), float
+	xlog2 (flot, int&), FloatComplex xlog2(const FloatComplex&, int&)):
+	New mapper functions for single precion values.
+	* lo-mappers.h (FloatComplex xlog2(const FloatComplex&), float
+	xlog2 (flot, int&), FloatComplex xlog2(const FloatComplex&, int&)):
+	Declare them.
+
+	* CmplxGEBAL.cc (ComplexGEPBALANCE), dbleGEPBAL.cc (GEPBALANCE),
+	fCmplxGEPBAL.cc (FloatComplexGEPBALANCE), floatGEPBAL.cc
+	(FloatGEPBALANCE): New class for generalized eigenvalue balancing.
+	* CmplxGEBAL.h (ComplexGEPBALANCE), dbleGEPBAL.h (GEPBALANCE),
+	fCmplxGEPBAL.h (FloatComplexGEPBALANCE), floatGEPBAL.h
+	(FloatGEPBALANCE): Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatAEPBAL.cc (FloatAEPBALANCE), fCmplxAEPBAL.cc
+	(FloatComplexAEPBALANCE): New classes for single precision
+	Algebraic eignvalue balancing.
+	* floatAEPBAL.h (FloatAEPBALANCE), fCmplxAEPBAL.h
+	(FloatComplexAEPBALANCE): Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatHESS.cc (FloatHESS), fCmplxHESS.cc (FloatComplexHESS):  New
+	classes for single precision Hessenberg decomposition.
+	* floatHESS.h (FloatHESS), fCmplxHESS.h (FloatComplexHESS):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatQR.cc (FloatQR), fCmplxQR.cc (FloatComplexQR):  New
+	classes for single precision QR decomposition.
+	* floatQR.h (FloatQR), fCmplxQR.h (FloatComplexQR):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* floatQRP.cc (FloatQRP), fCmplxQRP.cc (FloatComplexQRP):  New
+	classes for single precision permuted QR decomposition.
+	* floatQRP.h (FloatQRP), fCmplxQRP.h (FloatComplexQRP):
+	Declare them.
+	* Makefile.in (MATRIX_INC): Include them here.
+	(MATRIX_SRC): and here.
+
+	* mx-defs (FloatAEPBALANCE, FloatComplexAEPBALANCE,
+	ComplexGEPBALANCE, FloatGEPBALANCE,FloatComplexGEPBALANCE,
+	FloatHESS, FloatComplexHESS, FloatQR, FloatComplexQR, QRP,
+	ComplexQRP, FloatQRP, FloatComplexQRP):	Declare classes.
+
+	* Array-f.cc, Array-fC.cc, MArray-f.cc, MArray-fC.cc,
+	fCColVector.cc, fCColVector.h, fCDiagMatrix.cc, fCDiagMatrix.h,
+	fCMatrix.cc, fCMatrix.h, fCNDArray.cc, fCNDArray.h,
+	fCRowVector.cc, fCRowVector.h, fCmplxCHOL.cc, fCmplxCHOL.h,
+	fCmplxDET.cc, fCmplxDET.h, fCmplxLU.cc, fCmplxLU.h,
+	fCmplxSCHUR.cc, fCmplxSCHUR.h, fCmplxSVD.cc, fCmplxSVD.h,
+	fColVector.cc, fColVector.h, fDiagMatrix.cc, fDiagMatrix.h,
+	fEIG.cc, fEIG.h, fMatrix.cc, fMatrix.h, fNDArray.cc, fNDArray.h,
+	fRowVector.cc, fRowVector.h, floatCHOL.cc, floatCHOL.h,
+	floatDET.cc, floatDET.h, floatLU.cc, floatLU.h, floatSCHUR.cc,
+	floatSCHUR.h, floatSVD.cc, floatSVD.h: New files.
+	* Makefile.in (MATRIC_INC, TI_SRC, MATRIX_SRC): Add them.
+
+	* CMatrix.cc, CMatrix.h, CNDArray.cc, CNDArray.h, CmplxDET.cc,
+	MArray-C.cc, MArray-d.cc, MArray-defs.h, MArray.cc, MArray.h,
+	MatrixType.cc, MatrixType.h, SparseCmplxQR.cc, SparseCmplxQR.h,
+	SparseQR.cc, SparseQR.h, dMatrix.cc, dMatrix.h, dNDArray.cc,
+	dNDArray.h, data-conv.cc, data-conv.h, dbleDET.cc, dbleSVD.cc,
+	lo-cieee.c, lo-ieee.cc, lo-ieee.h, lo-mappers.cc, lo-mappers.h,
+	lo-specfun.cc, lo-specfun.h, lo-utils.cc, lo-utils.h, mx-base.h,
+	mx-defs.h, mx-ext.h, mx-inlines.cc, mx-op-defs.h, mx-ops,
+	oct-cmplx.h, oct-fftw.cc, oct-fftw.h, oct-inttypes.h, vx-ops:
+	Allow single precision types.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* CMatrix.cc (double rcond): Replace with double rcon everywhere
+	to avoid shadowed variable warning
+	(double ComplexMatrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(double ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
+	* CMatrix.h (double rcond):  Replace with double rcon everywhere
+	to avoid shadowed variable warning
+	(double ComplexMatrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(double ComplexMatrix::rcond (MatrixType &mattype) const): ditto.
+	* dMatrix.cc (double rcond): Replace with double rcon everywhere
+	to avoid shadowed variable warning
+	(double Matrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(double Matrix::rcond (MatrixType &mattype) const): ditto.
+	* dMatrix.h (double rcond):  Replace with double rcon everywhere
+	to avoid shadowed variable warning
+	(double Matrix::rcond (void) const): New method for
+	reciprocal condition number calculation.
+	(double Matrix::rcond (MatrixType &mattype) const): ditto.
+
+	* regex-match.cc, regex-match.h: New class for simple regular
+	expression matching
+	* Makefile.in (INCLUDES): Add regex-match.h here, and
+	(LIBOCTAVE_CXX_SOURCES): regex-match.cc here.
+
+2008-05-19  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc: Replace some DGBCON with GPBCON where they are
+	incorrectly used.
+
+2008-05-13  David Bateman  <dbateman@free.fr>
+
+	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
+	If len is zero size the index vector in the same manner as if len
+	is not zero.
+
+2008-05-05  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (command_editor::re_read_init_file,
+	gnu_readline::do_re_read_init_file): New functions.
+	* cmd-edit.h (command_editor::re_read_init_file): Provide decl.
+	(command_editor::do_re_read_init_file): New function.
+	* oct-rl-edit.c (octave_rl_re_read_init_file): New function.
+	* oct-rl-edit.h: Provide decl.
+
+2008-05-05  Rafael Laboissiere  <rafael@debian.org>
+
+	* oct-rl-edit.c (octave_read_init_file): Simply call rl_read_init_file.
+
+2008-05-01  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.h (octave_shlib::number_of_functions_loaded):
+	Return size_t instead of int value.
+	* oct-shlib.cc (octave_base_shlib::number_of_functions_loaded):
+	Likewise.
+	(octave_base_shlib::fcn_names): Now a std::map object.
+	Adjust all uses.
+	(octave_base_shlib::fcn_names_iterator,
+	octave_base_shlib::fcn_names_const_iterator): New typedefs.
+	(octave_base_shlib::add_to_fcn_names, octave_base_shlib::remove):
+	Perform reference counting for functions accessed.
+
+2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-mappers.cc (xlog2 (double)): Compute log (2), not log2 (2).
+	(xlog2 (Complex), xlog2 (double, int&), xlog2 (Complex, int&)):
+	New functions.
+	* lo-mappers.h: Provide decls.
+
+2008-04-25  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-lookup.h (seq_lookup): Do not use output value of fill_n (MSVC
+	does not support it).
+
+2008-04-24  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-sysdep.cc (octave_popen2): Don't set PIPE_NOWAIT for parentWrite.
+
+2008-04-21  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
+	Fix for-loop condition.
+
+2008-04-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* CmplxCHOL.cc, CmplxQR.cc, dbleCHOL.cc, dbleQR.cc: Fix calls to error()
+
+2008-04-16  David Bateman  <dbateman@free.fr>
+
+	* Sparse.h (Sparse<T>& operator = (Sparse<T>&)): Move definition
+	of the operator for here
+	* Sparse.cc (Sparse<T>& Sparse<T>::operator = (Sparse<T>&)): To
+	here. Also delete idx.
+	* Array.h (Array<T>& operator = (Array<T>&)): Move definition
+	of the operator for here
+	* Array.cc (Array<T>& Array<T>::operator = (Array<T>&)): To
+	here. Also delete idx.
+
+2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* lo-mappers.cc (xround): Avoid floating-point overflow when input
+	value is equal to bitmax implementation taken from gnulib).
+
+	* file-stat.cc (file_stat::update_internal): Do not strip trailing
+	file separator when path length is equal to 1 (handle case '\') under
+	__WIN32__ platforms.
+
+2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQR.h, dbleQR.cc (QR::shift_cols): New method.
+	* CmplxQR.h, CmplxQR.cc (ComplexQR::shift_cols): New method.
+	* dbleCHOL.h, dbleCHOL.cc (CHOL::insert_sym, CHOL::delete_sym,
+	CHOL::shift_sym): New methods.
+	* CmplxCHOL.h, CmplxCHOL.cc (ComplexCHOL::insert_sym,
+	ComplexCHOL::delete_sym, ComplexCHOL::shift_sym): New methods.
+
+2008-04-03  John W. Eaton  <jwe@octave.org>
+
+	* lo-sysdep.cc [__WIN32__ && ! __CYGWIN__]: Include windows.h.
+
+2008-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-lookup.h: New file.
+
+2008-03-26  David Bateman  <dbateman@feee.fr>
+
+	* Array.cc (assignN): Additional fix for vector assignments.
+
+2008-03-25  David Bateman  <dbateman@feee.fr>
+
+	* Array.cc (assignN): refactor calculation of new dimensions when
+	original matrix is empty.
+	* Array-util.cc (bool is_vector (const dim_vector&)): New
+	function.
+	* Array-util.h (bool is_vector (const dim_vector&)): declare it.
+
+2008-03-25  David Bateman  <dbateman@free.fr>
+
+	* sparse-base-chol.h (sparse_base_chol_rep::~sparse_base_chol_rep
+	(void)): Only free the factorization if it was created
+	* spase-base-chol.cc (sparse_base_chol_rep::init): Don't attempt
+	to factorize a matrix that has been flagged as not being positive
+	definite.
+
+2008-03-25  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (xtrunc): New function.
+	* lo-mappers.h: Provide decl.
+
+2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* lo-specfun.cc (expm1, log1p): New functions.
+	* lo-specfun.h: Provide decls.
+
+	* lo-mappers.cc (xroundb): New function.
+	* lo-mappers.h: Provide decl.
+
+2008-03-23  David Bateman  <dbateman@free.fr>
+
+	* mx-ops: Definite binary operators for mixed integer array +
+	array case, except for 64bit cases.
+
+2008-03-21  David Bateman  <dbateman@free.fr>
+
+	* oct-sparse.h: Add headers for amd.h.
+
+2008-03-20  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T> Array<T>::diag (octave_idx_type) const): New
+	method for diag function.
+	* Array.h  (Array<T> diag (octave_idx_type) const): Declare it.
+	* Array2.h (Array2<T> diag (octave_idx_type) const): New method.
+	* MArray2.h (MArray2<T> diag (octave_idx_type) const): ditto.
+	* ArrayN.h (ArrayN<T> diag (octave_idx_type) const): ditto.
+	* MArrayN.h (MArrayN<T> diag (octave_idx_type) const): ditto.
+
+	* Sparse.cc (Sparse<T> Sparse<T>::diag (octave_idx_type) const):
+	New method for the diag function.
+	* Sparse.h  (Sparse<T> diag (octave_idx_type) const): Declare it.
+	* MSparse.h (MSparse<T> diag (octave_idx_type) const): New method.
+
+	* Range.cc (Matrix Range::diag (octave_idx_type) const):
+	New method for the diag function.
+	* Range.h  (Matrix diag (octave_idx_type) const): Declare it.
+
+	* CDiagMatrix.cc (ComplexColumnVector ComplexDiagMatrix::diag
+	(void) const): delete.
+	* dDiagMatrix.cc (ColumnVector DiagMatrix::diag (void) const): delete.
+	* dDiagMatrix.h (ColumnVector diag (void) const): ditto.
+	* CMatrix.cc (ComplexColumnVector ComplexMatrix::diag (void) const):
+	delete.
+	* CMatrix.h (ComplexColumnVector diag (void) const): ditto.
+	* dMatrix.cc (ColumnVector Matrix::diag (void) const): ditto.
+	* dMatrix.h (ColumnVector diag (void) const): ditto.
+	* boolMatrix.cc (boolMatrix boolMatrix::diag (void) const): ditto.
+	* boolMatrix.h (boolMatrix diag (void) const): ditto.
+	* chMatrix.cc (charMatrix charMatrix::diag (void) const): ditto.
+	* chMatrix.h (charMatrix diag (void) const): ditto.
+	* intNDArray.cc (intNDArray<T> intNDArray<T>::diag (void) const): ditto.
+	* intNDArray.h (intNDArray<T> diag (void) const): ditto.
+
+	* CMatrix.cc (ComplexMatrix ComplexMatrix::diag (octave_idx_type)
+	const): Rewrite in terms of template classes function.
+	* CMatrix.h (ComplexMatrix diag (octave_idx_type)const ): Change
+	return type.
+	* dMatrix.cc (Matrix Matrix::diag (octave_idx_type) const): Rewrite in
+	terms of template classes function.
+	* dMatrix.h (Matrix diag (octave_idx_type) const): Change return type.
+	* boolMatrix.cc (boolMatrix boolMatrix::diag (octave_idx_type) const):
+	Rewrite in terms of template classes function.
+	* boolMatrix.h (boolMatrix diag (octave_idx_type) const): Change
+	return type.
+	* chMatrix.cc (charMatrix charMatrix::diag (octave_idx_type)
+	const): Rewrite in terms of template classes function.
+
+	* dSparse.cc (SparseMatrix SparseMatrix::diag (octave_idx_type) const):
+	Rewrite in terms of template classes function.
+	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::diag
+	(octave_idx_type) const): ditto.
+	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::diag
+	(octave_idx_type) const): ditto.
+	* intNDArray.cc (intNDArray<T> intNDArray<T>::diag
+	(octave_idx_type) const): ditto.
+
+	* CNDArray.cc (ComplexNDArray ComplexNDArray::diag
+	(octave_idx_type) const): New method.
+	* CNDArray.h (ComplexNDArray diag (octave_idx_type) const):
+	Declare it.
+	* dNDArray.cc (NDArray NDArray::diag (octave_idx_type) const): New
+	method.
+	* dNDArray.h (NDArray diag (octave_idx_type) const): Declare it.
+	* chNDArray.cc (charNDArray charNDArray::diag
+	(octave_idx_type) const): New method.
+	* chNDArray.h (charNDArray diag (octave_idx_type) const):
+	Declare it.
+
+
+2008-03-19  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::do_base_pathname): Also handle rooted
+	relative filenames.
+
+2008-03-19  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (assignN): If orig_empty allow assignment like
+	a(1:10,1)=1:10
+
+	* Sparse.h (template <class U, class F> Sparse<U> map (F fcn)
+	const): New template function.
+	* MSparse.h (template <class U, class F> MSparse<U> map (F fcn)
+	const): ditto.
+	* dSparse.cc (SparseMatrix SparseMatrix::map (dmapper) const,
+	SparseComplexMatrix SparseMatrix::map (cmapper) const,
+	SparseBoolMatrix SparseMatrix::map (bmapper) const): Rewrite in
+	terms of the new template functor.
+	* CSparse.cc (SparseMatrix SparseComplexMatrix::map (dmapper) const,
+	SparseComplexMatrix SparseComplexMatrix::map (cmapper) const,
+	SparseBoolMatrix SparseComplexMatrix::map (bmapper) const): ditto.
+
+2008-03-18  David Bateman  <dbateman@free.fr>
+
+	* lo-specfun.cc (Complex xlgamma (const Complex&)): New function.
+	* lo-specfun.h (Complex xlgamma (const Complex&)): Declare it.
+	* randpoison.c (xlgamma): Use lgamma if HAVE_LGAMMA is defined.
+
+	* dNDArray.cc (NDArray::min, NDArraymax): chop trailing singletons.
+	* CNDarray.cc (ComplexNDArray::min, CompelxNDArray::max): ditto.
+	* intNDarray.cc (intNDArray<T>::min, intNDArray<T>::max): ditto.
+
+	* Array.cc (Array<T>::index): Don't short_freeze on index with
+	fewer dimensions than the array only if the last dimension is empty.
+
+2008-03-18  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int_fit_to_range):
+	Use partial specialization for double values.
+
+2008-03-08  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::index, assign): Likewise.
+	* Array.cc (Array<T>::index1, Array<T>::index2, Array<T>::indexN,
+	assign2): Eliminate use of idx_vector::is_one_zero method.
+	* idx-vector.cc, idx-vector.h
+	(idx_vector::maybe_convert_one_zero_to_idx,
+	IDX_VEC_REP::maybe_convert_one_zero_to_idx): Delete unused function.
+	(IDX_VEC_REP::one_zero): Delete data member.
+	(IDX_VEC_REP::is_colon_equiv): Delete one_zero check.
+	(idx_vector::is_one_zero, IDX_VEC_REP::is_one_zero): Delete function.
+
+2008-03-07  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep (bool),
+	IDX_VEC_REP::idx_vector_rep (const boolNDArray&)):
+	Simply perform the equivalent of "find" on the bool argument here,
+	set one_zero to 0 and orig_dims to size of resulting index vector.
+	(IDX_VEC_REP::freeze): Don't call maybe_convert_one_zero_to_idx here.
+
+2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleQR.cc (QR::insert_col, QR::insert_row,
+	QR::delete_col, QR::delete_row): Use 0-based indexing.
+	* CmplxQR.cc (ComplexQR::insert_col, ComplexQR::insert_row,
+	ComplexQR::delete_col, ComplexQR::delete_row): Likewise.
+
+	* dbleCHOL.cc: Small doc and declaration fixes.
+	* CmplxHOL.cc: Small doc and declaration fixes.
+	* CmplxQR.cc (ComplexQR::ComplexQR): Adjust code to match dbleQR.cc.
+	* dbleQR.cc (QR::delete_row): Fix incorrect test.
+	* CmplxQR.cc (ComplexQR::delete_row): Fix incorrect test.
+
+2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dbleCHOL.cc (CHOL::set, CHOL::update, CHOL::downdate):
+	New functions.
+	* dbleCHOL.h: Provide decls.
+	* CmplxCHOL.cc (ComplexCHOL::set, ComplexCHOL::update,
+	ComplexCHOL::downdate): New functions.
+	* CmplxCHOL.h: Provide decls.
+
+	* dbleQR.cc (QR::update, QR::insert_col, QR::delete_col,
+	QR::insert_row, QR::delete_row): New methods.
+	(QR::QR (const Matrix&, const MAtrix&)): New constructor.
+	* dbleQR.h: Provide decls.
+	* CmplxQR.cc (ComplexQR::update, ComplexQR::insert_col,
+	ComplexQR::delete_col, ComplexQR::insert_row,
+	ComplexQR::delete_row): New methods.
+	(ComplexQR::ComplexQR (const ComplexMatrix&, const ComplexMAtrix&)):
+	New constructor.
+	* CmplxQR.h: Provide decls.
+
+2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Array-C.cc, Sparse-C.cc: Include oct-sort.cc after definitions
+	of < and > operators.
+
+2008-03-03  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (assign1, assign1): Take care of repeated index
+	values. Adapt the test code to check for these cases.
+
+2008-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dMatrix.cc (Matrix::lssolve): Also avoid dgelsd lwork query bug
+	in lssolve method that accepts column vector argument.  Correct
+	calculation of nlvl.
+	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for zgelsd.
+
+2008-02-27  John W. Eaton  <jwe@octave.org>
+
+	* oct-rand.cc (class octave_rand): Make it a proper singleton class.
+
+2008-02-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-rand.cc (get_dist_id): Fix typo.
+	(get_dist_id, octave_rand::distribution, octave_rand::scalar,
+	fill_rand): Improve error messages.
+
+	* oct-rand.cc (unknown_dist): New dist type.
+	(uniform_dist, normal_dist, expon_dist, poisson_dist, gamma_dist):
+	Use static const int instead of #define.
+	(get_dist_id): Default retval is unknown_dist.
+
+	* oct-rand.cc (rand_states): New static variable.
+	(initialize_rand_states, get_dist_id, get_internal_state,
+	set_internal_state, switch_to_generator, save_state): New functions.
+	(octave_rand::state): New arg to specify distribution.
+	Save state in rand_states instead of setting internal state.
+	Return named state.  Use set_internal_state to generate proper
+	state vector from user supplied state.  Save and restore current
+	state if specified and current distributions are different.
+	(octave_rand::distribution (void)): Use switch rather than if/else.
+	(octave_rand::distribution (const std::string&)): Likewise.
+	(octave_rand::uniform_distribution,
+	octave_rand::normal_distribution,
+	octave_rand::exponential_distribution,
+	octave_rand::poisson_distribution,
+	octave_rand::gamma_distribution): Call switch_to_generator.
+	(octave_rand::state, maybe_initialize): For new_generators, just
+	call initialize_rand_states if not already initialized.
+	(octave_rand::scalar, fill_rand): Save state after generating value.
+
+	* dMatrix.cc (Matrix::lssolve): Avoid another dgelsd lwork query bug.
+	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for zgelsd
+
+2008-02-24  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int_helper): New class.  Provide
+	specializations for signed and unsigned types.
+	(octave_int<T>::operator >>=, octave_int<T>::abs,
+	octave_int<T>::signum): Use static functions from
+	octave_int_helper class.
+
+	* oct-inttypes.h, oct-inttypes.cc (OCTAVE_US_TYPE1_CMP_OP,
+	OCTAVE_US_TYPE2_CMP_OP): Tag function declarations and definitions
+	with "template <>".
+
+2008-02-22  John W. Eaton  <jwe@octave.org>
+
+	* CSparse.cc, SparseCmplxLU.cc, SparsedbleLU.cc, dSparse.cc,
+	file-ops.cc, oct-group.cc, oct-shlib.cc, sparse-base-chol.h,
+	sparse-dmsolve.cc: Use 0 instead of NULL.
+
+2008-02-22  David Bateman  <dbateman@free.fr>
+
+	* boolSparse.cc (SparseBoolMatrix SparseBoolMatrix::diag
+	(octave_idx_type) const): New method.
+	* boolSparse.h (SparseBoolMatrix SparseBoolMatrix::diag
+	(octave_idx_type) const): Declare it.
+
+	* base-lu.h (lu_type Y (void) const): New method to return
+	factorization of xGETRF directly.
+	* sparse-base-lu.cc (template <class lu_type, class lu_elt_type,
+	class p_type, class p_elt_type> lu_type sparse_base_lu <lu_type,
+	lu_elt_type, p_type, p_elt_type> :: Y (void) const): New method
+	to simulate the retirn of xGETRF.
+	* sparse-base-lu.h (template <class lu_type, class lu_elt_type,
+	class p_type, class p_elt_type> lu_type sparse_base_lu <lu_type,
+	lu_elt_type, p_type, p_elt_type> :: Y (void) const): Declare it
+	(SparseMatrix R (void) const): Method to return scaling factors.
+	* SparsedbleLU.cc: Allow two element pivot thresholding and
+	scaling.
+	* SparseCmplxLU.cc: ditto.
+	* SparsedbleLU.h: Modify constructors to allow passing of two
+	element pivoting thresholds and flag for scaling
+	* SparseCmplxLU.h: ditto.
+
+	* base-lu.cc (ColumnVector P_vec (void) const): New method to
+	return permutations as a vector.
+	* base-lu.h (ColumnVector P_vec (void) const): Declare it.
+	* sparse-base-lu.cc (ColumnVector Pr_vec (void) const): New method
+	return row permutations as a vector.
+	(ColumnVector Pc_vec (void) const): New method return column
+	permutations as a vector.
+	* sparse-base-lu.h (ColumnVector Pr_vec (void) const): Declare it.
+	(ColumnVector Pc_vec (void) const): Declare it.
+
+	* oct-spparms.cc: Add sym_tol field.
+
+2008-02-20  David Bateman  <dbateman@free.fr>
+
+	* SparseComplexQR.cc (ComplexMatrix
+	SparseComplexQR::SparseComplexQR_rep::Q
+	(void) const): New method.
+	* SparseComplexQR.h (ComplexMatrix
+	SparseComplexQR::SparseComplexQR_rep::Q
+	(void) const): Declare it.
+	* SparseQR.cc (Matrix SparseQR::SparseQR_rep::Q	(void) const): ditto.
+	* SparseQR.h (Matrix SparseQR::SparseQR_rep::Q	(void) const): ditto.
+
+2008-02-20  John W. Eaton  <jwe@octave.org>
+
+	* boolNDArray.h (boolNDArray (const Array2<bool>&)): Delete.
+
+	* Marray2.h (MArray2 (const Array2<U>&),
+	MArray2 (const MArray2<U>&)): New templated constructors.
+
+	* Array2.h (Array2 (const Array<U>&),
+	Array2 (const Array<U>&, const dim_vector&)):
+	New templated constructors.
+
+	* CColVector.cc (ComplexColumnVector::map): Forward to MArray::map.
+	* dColVector.cc (ColumnVector::map): ditto.
+	* CRowVector.cc (ComplexRowVector::map): ditto.
+	* dRowVector.cc (RowVector::map): ditto.
+	* CMatrix.cc (ComplexMatrix::map): Forward to MArray2::map.
+	* dMatrix.cc (Matrix::map): ditto.
+
+	* dNDArray.cc (NDArray::map): New functions.
+	* dNDArray.h: Provide decls.
+
+	* CNDArray.cc (ComplexNDArray::map): New functions.
+	* CNDArray.h: Provide decls.
+
+	* MArray2.h (MArray2<T>::map): New function.
+	* Array2.h (Array2<T>::map): New function.
+	* MArrayN.h (MArrayN<T>::map): New function.
+	* ArrayN.h (ArrayN<T>::map): New function.
+	* Array.h (Array<T>::map): New function.
+
+	* functor.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+2008-02-20  David Bateman  <dbateman@free.fr>
+
+	* CColVector.h, CColVector.cc (ComplexColumnVector::apply): Remove.
+	* dColVector.h, dColVector.cc (ColumnVector::apply): ditto.
+	* CRowVector.h, CRowVector.cc (ComplexRowVector::apply): ditto.
+	* dRowVector.h, dRowVector.cc (RowVector::apply): ditto.
+	* CMatrix.h, CMatrix.cc (ComplexMatrix::apply): ditto.
+	* dMatrix.h, dMatrix.cc (Matrix::apply): ditto.
+
+	* CSparse.cc (apply): Remove.
+	(map): Replace old mapper code with code taken from ov-mapepr.cc
+	* CSparse.h (map): Reeclare them.
+	(dmapper, cmapper, bmapper): typedefs for mapper functions.
+	* dSparse.cc (apply): Remove.
+	(map): Replace old mapper code with code taken from ov-mapepr.cc
+	* dSparse.h (map): Reeclare them.
+	(dmapper, cmapper, bmapper): typedefs for mapper functions.
+
+	* intNDArray.cc (abs, signum): Two new mapper functions.
+	* intNDArray.h (abs, signum): Declare them.
+	* oct-inttypes.h (abs, signum): Mapper functions on scalar integer
+	base type.
+
+2008-02-15  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (Matrix::lssolve): Check n > mnthr, not n > m when
+	deciding whether to calculate workspace size, with mnthr from ILAENV.
+	* CMatrix.cc (ComplexMatrix::lssolve): Likewise.
+
+2008-02-14  John W. Eaton  <jwe@octave.org>
+
+	* CColVector.cc, CMatrix.cc, CRowVector.cc, CSparse.cc,
+	CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc,
+	CmplxQR.cc, CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, DASPK.cc,
+	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc, NLEqn.cc, Quad.cc,
+	dColVector.cc, dMatrix.cc, dRowVector.cc, dSparse.cc,
+	dbleAEPBAL.cc, dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc,
+	dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc:
+	Don't check f77_exception_encountered.
+
+2008-02-12  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc: Declare xilaenv instead of ilaenv.
+	(ComplexMatrix::lssolve): Call xilaenv instead of ilaenv.
+
+2008-02-12  Jason Riedy  <ejr@cs.berkeley.edu>
+
+	* Array.cc (ascending_compare, descending_compare): Remove
+	non-standard extern in the instantiations.
+
+	* oct-sort.cc: Include <cstring> and sprinkle with std:: as needed.
+
+	* dMatrix.cc (ILAENV): Declare LAPACK Fortran function.
+	(Matrix::lssolve): Use ILAENV to query smlsiz.  And add an ugly
+	workaround for DGELSD's broken lwork query.  The formula is from
+	LAPACK's dgelsd.f source and allocates enough workspace to use an
+	efficient algorithm in the short-and-fat case (n > m).
+	* CMatrix.cc (ILAENV): Declare LAPACK Fortran function.
+	(ComplexMatrix::lssolve): Use ILAENV to query smlsiz.  And add an
+	ugly workaround for DGELSD's broken lwork query, as with double.
+
+2008-02-12  John W. Eaton  <jwe@octave.org>
+
+	* sparse-sort.cc: Don't explicitly instantiate
+	class octave_sort<octave_idx_vector_sort *>,
+	class octave_sort<octave_idx_type>, or
+	class octave_sort<octave_sparse_sort_idxl *>.
+
+	* Sparse.h (INSTANTIATE_SPARSE_SORT): Delete macro.
+	* Sparse-C.cc, Sparse-b.cc, Sparse-d.cc: Don't use it.
+
+	* Range.cc (Range::sort_internal): Avoid shadow warning from gcc.
+
+2008-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in ($(MAKEDEPS)): Skip dependencies if omit_deps is defined.
+
+2008-02-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.h (enum sortmode): Eliminate UNDEFINED.  Change all
+	uses of UNDEFINED to ASCENDING.
+
+2008-02-07  John W. Eaton  <jwe@octave.org>
+
+	* Range.cc (Range::sort_internal): Rename from sort.  New arg,
+	ASCENDING, with default value of true.
+	(Range::sort_internal (Array<octave_idx_type>&, bool)): New function.
+	(Range::sort (octave_idx_type, sortmode) const): New function.
+	(Range::sort (Array<octave_idx_type>&, octave_idx_type, sortmode)
+	const): New function.
+	* Range.h: Fix/provide decls.
+
+	* intNDArray.cc (intNDArray<T>::any (int)): Use != for comparison.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in ($(OPTS_INC)): Use mv instead of move-if-change.
+	(stamp-prereq): Eliminate.
+	(clean): Don't remove stamp-prereq.
+	(libraries): Don't depend on stamp-prereq.
+	(PREREQ): New macro.
+	($(MAKEDEPS)): Depend on $(PREREQ), not stamp-prereq.
+	(distclean): Simplify with $(PREREQ).
+	(OPT_BASE): New macro.
+	(OPT_IN): Rename from OPTS_INC_DATA.  Define in terms of OPT_BASE.
+	(OPT_INC): Rename from OPTS_INC.  Define in terms of OPT_BASE.
+
+2008-02-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Unconditionally include $(MAKEDEPS).
+	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
+
+2008-02-03  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array.cc (ascending_compare, descending_compare,
+	Array<T>::sort): Declare explicit specialization for T=double to
+	avoid symbol duplication error at link time.
+	* Array-d.cc (ascending_compare, descending_compare): Declare and
+	define as nonmember functions, not member functions of Array<T>.
+
+2008-02-03  John W. Eaton  <jwe@octave.org>
+
+	* Array-i.cc: Also instantiate Arrays for long long type if it exists.
+
+2008-02-03  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array.cc: Don't include Range.h.
+
+2008-01-31  David Bateman  <dbateman@free.fr>
+
+	* oct-sort.cc: conversion of int to octave_idx_type where needed
+	for 64-bit builds.
+	(IFLT): Allow IFLT macro to be overridden.
+	* oct-sort.h: conversion of int to octave_idx_type where needed
+	for 64-bit builds.
+	(enum sortmode): Type of sort to perform.
+	(vec_index): Simple class to aid in indexed sorts.
+
+	* Array.h ( Array<T> sort (octave_idx_type, sortmode) const,
+	Array<T> sort (Array<octave_idx_type> &, octave_idx_type,
+	sortmode) const): Array sorting methods.
+	(INSTANTIATE_ARRAY_SORT, NO_INSTANTIATE_ARRAY_SORT): Macros to
+	instantiate the array sorting methods.
+	* Array.cc (ascending_compare, descending_compare): New template
+	functions for generic sort comparison.
+  	( Array<T> Array<T>::sort (octave_idx_type, sortmode) const,
+	Array<T> Array<T>::sort (Array<octave_idx_type> &, octave_idx_type,
+	sortmode) const): Array sorting functions based of octave_sort
+	class.
+	* Array-C.cc: Instantiate the complex array sort methods.
+	(IFLT): New macro to override the one in the
+	octave_sort class to avoid need for Complex < and > operators.
+	(static double xabs (const Complex&)): Complex abs function
+	avoiding std::abs(Inf) returning NaN with some compilers.
+	(ascending_compare, descending compare): override template
+	functions for complex comparison.
+	* Array-d.cc: Instantiate the double array sort methods.
+	(Array<double> Array<double>::sort (octave_idx_type,
+	sortmode) const, Array<double> Array<double>::sort
+	(Array<octave_idx_type> &, octave_idx_type, sortmode) const):
+	Array sorting functions based of octave_sort using uint64 sorting
+	on IEE754 doubles, for speed and correct sorting of Inf and NaN.
+	(ascending_compare, descending compare): override template
+	functions for double and uint64 comparison.
+	* Array-b.cc, Array-ch.cc, Array-i.cc, Array-s.cc, Array-str.cc:
+	Instantiate the array sort methods.
+	* Array-idx-vec.cc: Null instantiation of array sort methods.
+	* Array2.h, Array3.h, ArrayN.h (sort): 2, 3 and N-dimensional
+	versions of the sort methods based on Array<T>::sort.
+
+	* CSparse.cc, dSparse.cc: Remove inclusion of octa-sort.h.
+	* Sparse.h ( Sparse<T> sort (octave_idx_type, sortmode) const,
+	Sparse<T> sort (Array<octave_idx_type> &, octave_idx_type,
+	sortmode) const): Sparse sorting methods.
+	(INSTANTIATE_ARRAY_SORT): Macro to instantiate the sparse sorting
+	methods.
+	* Sparse.cc: replace sort with lsort throughout to avoid shadowing
+	of new sort method.
+	(sparse_ascending_compare, sparse_descending_compare): New template
+	functions for generic sort comparison.
+  	( Sparse<T> Sparse<T>::sort (octave_idx_type, sortmode) const,
+	Sparse<T> Sparse<T>::sort (Sparse<octave_idx_type> &, octave_idx_type,
+	sortmode) const): Sparse sorting functions based of octave_sort
+	class.
+	* Sparse-C.cc: Instantiate the complex sparse sort methods.
+	(IFLT): New macro to override the one in the
+	octave_sort class to avoid need for Complex < and > operators.
+	(static double xabs (const Complex&)): Complex abs function
+	avoiding std::abs(Inf) returning NaN with some compilers.
+	(sparse_ascending_compare, sparse_descending compare): override
+	template functions for complex comparison.
+	* Sparse-d.cc: Instantiate the cdouble sparse sort methods.
+	(sparse_ascending_compare, sparse_descending compare): override
+	template functions for double comparison.
+	* Array-b.cc: Instantiate the sparse sort methods.
+
+2008-01-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* idx-vector.h (idx_vector::idx_vector_rep::range_base,
+	idx_vector::idx_vector_rep::range_step,
+	idx_vector::idx_vector_rep::range_step): New data members.
+	(idx_vector::idx_vector_rep::idx_vector_rep): Initialize them.
+	* idx-vector.cc (IDX_VEC_REP::sort, IDX_VEC_REP::is_colon_equiv,
+	IDX_VEC_REP::init_state, IDX_VEC_REP::operator =,
+	IDX_VECTOR_REP::idx_vector_rep): Handle range.
+
+2008-01-18  Marco Caliari  <marco.caliari@univr.it>
+
+	* dMatrix.cc (Matrix::expm): Correctly perform reverse permutation.
+	* CMatrix.cc (ComplexMatrix::expm): Likewise.
+
+2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-time.cc (octave_base_tim::init): Validate pointer argument;
+	this fixes the "localtime(-1)" crash under Windows.
+
+2008-01-18  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (solve_singularity_warning): New function.
+	(Matrix::expm): Pass pointer to solve_singularity_warning to
+	Matrix::solve method.  Exit early if Matrix::solve fails.
+	Limit sqpow value to avoid overflowing scale factor.
+	* CMatrix.cc (solve_singularity_warning): New function.
+	(ComplexMatrix::expm): Pass pointer to solve_singularity_warning to
+	ComplexMatrix::solve method.  Exit early if ComplexMatrix::solve fails.
+	Limit sqpow value to avoid overflowing scale factor.
+	From Marco Caliari <marco.caliari@univr.it>.
+
+2008-01-10  Kim Hansen  <kimhanse@gmail.com>
+
+	* Sparse.cc: New tests for slicing of sparse matrices.
+
+2008-01-07  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_ANY_ALL_OP_ROW_CODE): Don't break from
+	loop if this test succeeds.
+
+2008-01-03  David Bateman  <dbateman@free.fr>
+
+	* MSparse.cc (SPARSE_A2A2_OP): If first arg is scalar zero, then
+	need unary operator on remaining argument
+	* Sparse-op-defs.h (SPARSE_SMSM_BIN_OP_1): ditto.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-12-18  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (template <class T> Sparse<T> Sparse<T>::index
+	(idx_vector&, int) const): Fix case indexing of non zero scalar
+	stored as a sparse matrix.
+	(template <class T> Sparse<T> Sparse<T>::index (idx_vector&,
+	idx_vector&, int) const): For the non permutated indexing case,
+	fix link list calculation and use.
+
+2007-12-17  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::indexN): Correctly handle scalar indexed by
+	N-d array.
+
+2007-12-17  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_ANY_ALL_OP_ROW_CODE): Use ridx for row
+	index.
+
+2007-12-11  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::index (idx_vector&, int) const):
+	If indexing scalar with empty matrix, return empty array with same
+	size as index.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* NLEqn.h (NLEqn::fval): New data member.  Adjust constructors
+	and assignment operator.
+	(NLEqn::function_value): New function.
+	* NLEqn.cc (NLEqn::solve): If solution is successful, compute
+	function value.
+
+	* file-ops.cc (file_ops::concat): New function.
+	* file-ops.h: Provide decl.
+
+2007-12-07  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_base_tm::init): Only assign t->tm_zone if it
+	is not 0.
+
+2007-12-07  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SMS_CMP_OP, SPARSE_SMS_BOOL_OP,
+	SPARSE_SSM_CMP_OP, SPARSE_SSM_BOOL_OP, SPARSE_SMSM_CMP_OP,
+	SPARSE_SMSM_BOOL_OP, SPARSE_BASE_REDUCTION_OP): Use sparse
+	indexing where possible rather than the elem method.
+	(SPARSE_REDUCTION_OP_ROW_EXPR, SPARSE_REDUCTION_OP_COL_EXPR,
+	SPARSE_ANY_ALL_OP_ROW_CODE, SPARSE_ANY_ALL_OP_COL_CODE):
+	Replace for new version of SPARSE_BASE_REDUCTION_OP.
+	(SPARSE_ALL_OP): Specialize the initial value, and only treat dim
+	= 0 directly.
+	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::sumsq (int)
+	const): Replace ROW_EXPR and COL_EXPR functions for new version of
+	SPARSE_BASE_REDUCTION_OP.
+	(SparseComplexMatrix SparseComplexMatrix::prod (int) const):
+	Specialize the initial value, and only treat dim = 0 directly.
+	* dSparse.cc (SparseMatrix SparseMatrix::sumsq (int) const):
+	ditto.
+	(SparseMatrix SparseMatrix::prod (int) const): ditto.
+
+2007-12-06  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (ComplexMatrix::expm): Update pointers to internal
+	data for npp and dpp after assignments.
+	* dMatrix.cc (Matrix::expm): Use same method as ComplexMatrix::expm.
+
+2007-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (assign (Sparse<LT>&,  const Sparse<RT>&)):
+	Do nothing if one index is empty.
+
+2007-12-04  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (assign (Sparse<LT>&,  const Sparse<RT>&)):
+	Resize matrix as well if one dimension of lhs is zero and the rhs
+	index exceeds the lhs index.
+	* Sparse.cc (assign1 (Sparse<LT>&,  const Sparse<RT>&)):
+	Don't resize to a smaller matrix for empty matrices with a max rhs
+	index smaller than the non zero lhs index.
+
+2007-12-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Array-util.h: Tag permute_vector_compare with OCTAVE_API.
+
+2007-12-03  Moritz Borgmann  <octave@moriborg.de>
+
+	* Array-util.cc (permute_vector_compare): Move here from Array.cc.
+	* Array-util.h (permute_vector, permute_vector_compare): Provide decls.
+	* Array.cc (permute_vector, permute_vector_compare): Delete.
+
+2007-12-03  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (template <class LT, class RT> int assign
+	(Sparse<LT>&,  const Sparse<RT>&)): Only set return matrix size to
+	rhs values if both no. rows and columns are zero.
+
+2007-11-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.cc, oct-sort.h: Style fixes.
+
+	* lo-math.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* Array2.h, ArrayN.h, CmplxDET.cc, DASPK.cc, DASPK.h, DASRT.cc,
+	DASRT.h, DASSL.cc, DASSL.h, LSODE.cc, LSODE.h, NLEqn.h, Quad.h,
+	Range.cc, dbleDET.cc, lo-cieee.c, lo-ieee.cc, lo-mappers.cc,
+	oct-time.cc, oct-time.h, randgamma.c, randmtzig.c,
+	randpoisson.c: Include lo-math.h instead of cmath or math.h.
+	* lo-mappers.h: Don't include sunmath.h here.
+
+2007-11-26  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.h (idx_vector::idx_vector_rep (const intNDArray<U>&)):
+	Eliminate unnecessary second arg from call to tree_to_mat_idx.
+
+	* oct-inttypes.h (operator bool, operator char): Delete.
+	(bool_value, char_value, double_value, float_value): New functions.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* intNDArray.cc (template <class T> intNDArray<T>
+	intNDArray<T>::max (int) const, template <class T> intNDArray<T>
+	intNDArray<T>::max (ArrayN<octave_idx_type>&, int) const,
+	template <class T> intNDArray<T> intNDArray<T>::min (int) const,
+	template <class T> intNDArray<T> intNDArray<T>::min
+	(ArrayN<octave_idx_type>&, int) const): New methods for integer
+	classes.
+	* intNDArray.h (class intNDArray): Add min/max methods
+	* mx-op-defs.h (MIXMAX_DECLS, MINMAX_FCNS, SND_MINMAX_FCN,
+	NDS_MINMAX_FCN, NDND_MINMAX_FCN): New macro for instantiation of
+	min/max functions.
+	* int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
+	uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
+	(MINMAX_DECLS(T)): Declare the min/max functions for integer
+	types.
+	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
+	uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
+	(MINMAX_FCNS(T)): Instantiate the min/max functions for integer
+	types.
+
+	* Arrayc.cc (Array<T>::index (idx_vector&, idx_vector&, int,
+	const T& rfv) const): If ndims != 2 call ND version of index.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (opeator T (void) const): New conversion operator.
+
+	* lo-specfun.cc (zbesi): When alpha is negative, don't limit
+	correction to half-integer values.  From Eric Chassande-Mottin
+	<echassandemottin@gmail.com>.
+
+2007-11-07  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* dMatrix.cc, CMatrix.cc: Help MSVC compiler to resolve
+	ambiguities related to math functions (in C++ mode).
+
+2007-11-06  David Bateman  <dbateman@free.fr>
+
+	* intNDArray.cc (intNDArray<T> intNDArray<T>::sum (int) const):
+	New method.
+	* intNDarray.h (intNDArray sum (int) const): Declare it.
+	* boolNDArray.cc (boolNDArray boolNDArray::sum (int) const):
+	New method.
+	* boolNDarray.cc (boolNDArray sum (int) const): Declare it.
+	* MArray-def.h (MARRAY_NORM_BODY): Scale frobenius norm by infinity
+	norm to avoid issues of over- and underflow.  From Rolf Fabian
+	<Rolf.Fabian@gmx.de>.
+
+2007-10-30  David Bateman  <dbateman@free.fr>
+
+	* DASRT-opts.in, LSODE-opts.in: Doc fixes for small book format.
+
+2007-10-30  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (lssolve): Compute size of rwork and iwork arrays.
+	* dMatrix.cc (lssolve): Compute size of iwork array.
+
+2007-10-29  David Bateman  <dbateman@free.fr>
+
+	* CMatrix.h (lssolve (const Matrix&, octave_idx_type&,
+	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
+	octave_idx_type&, octave_idx_type&, double&) const, lssolve
+	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
+	double& rcond) const, lssolve (const ComplexColumnVector&,
+	octave_idx_type&, octave_idx_type&, double& rcond) const): New
+	declarations.
+	* CMatrix.cc (lssolve (const Matrix&, octave_idx_type&,
+	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
+	octave_idx_type&, octave_idx_type&, double&) const, lssolve
+	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
+	double& rcond) const, lssolve (const ComplexColumnVector&,
+	octave_idx_type&, octave_idx_type&, double& rcond) const): New
+	methods.
+	(lssolve (const Matrix&, octave_idx_type&, octave_idx_type&,
+	double&) const, lssolve (const ComplexMatrix&, octave_idx_type&,
+	octave_idx_type&, double&) const): Also return rcond from the
+	singular values returned by XGELSD.
+	* dMatrix.h (lssolve (const Matrix&, octave_idx_type&,
+	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
+	octave_idx_type&, octave_idx_type&, double&) const, lssolve
+	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
+	double& rcond) const, lssolve (const ComplexColumnVector&,
+	octave_idx_type&, octave_idx_type&, double& rcond) const): New
+	declarations.
+	* dMatrix.cc (lssolve (const Matrix&, octave_idx_type&,
+	octave_idx_type&, double&) const, lssolve (const ComplexMatrix&,
+	octave_idx_type&, octave_idx_type&, double&) const, lssolve
+	(const ColumnVector&, octave_idx_type&, octave_idx_type&,
+	double& rcond) const, lssolve (const ComplexColumnVector&,
+	octave_idx_type&, octave_idx_type&, double& rcond) const): New
+	methods.
+	(lssolve (const Matrix&, octave_idx_type&, octave_idx_type&,
+	double&) const, lssolve (const ComplexMatrix&, octave_idx_type&,
+	octave_idx_type&, double&) const): Also return rcond from the
+	singular values returned by XGELSD.
+
+2007-10-26  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (Matrix::lssolve): Use xGELSD for rank deficient
+	matrices to avoid reliability issues with xGELSY.
+	* CMatrix.cc (ComplexMatrix::lssolve): Likewise.
+
+2007-10-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_gmtime::init, octave_localtime::init):
+	Call unix_time on arg instead of relying on conversion operator.
+
+	* oct-time.h (octave_time::double_value): New function.
+	(octave_time::operator double () const): Delete.
+	(octave_time::operator time_t () const): Delete.
+
+2007-10-24  John W. Eaton  <jwe@octave.org>
+
+	* strptime.c: Also compile if OCTAVE_HAVE_BROKEN_STRPTIME is defined.
+
+2007-10-23  John W. Eaton  <jwe@octave.org>
+
+	* CRowVector.cc (operator * const ComplexRowVector&, const
+	ComplexColumnVector&)): Delete spurious code left from patch.
+
+2007-10-22  Kim Hansen  <kimhanse@gmail.com>
+
+	* chMatrix.cc, lo-utils.cc, oct-env.cc, oct-uname.cc,
+	sparse-sort.cc: Include <cstring>.
+
+2007-10-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h: Don't include metis.h.
+
+	* dSparse.cc (SparseMatrix::fsolve): Delete special code for METIS.
+	* CSparse.cc (SparseComplexMatrix::fsolve): Likewise.
+	* sparse-base-chol.cc (sparse_base_chol<chol_type, chol_elt,
+	p_type>::sparse_base_chol_rep::init): Likewise.
+
+2007-10-16  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (Matrix::inverse): Only check rcond == 0 if the
+	matrix is hermitian or calc_cond is true.
+	* CMatrix.cc (ComplexMatrix::inverse): Likewise.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
+
+	* DASSL-opts.in, LSODE-opts.in: Spelling fixes.
+
+2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in: Spelling fixes.
+
+2007-10-10  John W. Eaton  <jwe@octave.org>
+
+	* LPsolve.h, LPsolve.cc: Delete.
+	* Makefile.in: Remove them from the INCLUDES and
+	LIBOCTAVE_CXX_SOURCES lists.
+
+2007-10-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_strptime::init): Initialize t.tm_mon to -1
+	and t.tm_year to INT_MIN before call to oct_strptime.  Adjust
+	values to zero after call if they remain unchanged.
+
+	* dSparse.cc (SparseMatrix::all_elements_are_zero): New function.
+	* dNDArray.cc (NDArray::all_elements_are_zero): New function.
+
+2007-10-09  David Bateman  <dbateman@free.fr>
+
+	* oct-time.cc (octave_strptime::init): Only call mktime if mday is
+	valud and mon and year are also filled in.
+
+	* Array2.h (Array2<T>::Array2(const dim_vector&),
+	Array2<T>::Array(const dim_vector&, const T&)): Check that
+	dim_vector is 2 dimensional.
+
+	* Sparse.cc (Sparse<T> Sparse<T>::index (idx_vector&, idx_vector&,
+	int)): Remove a for loop in the random indexing case at the
+	expense of maintaining a set of linked lists of indices that point
+	to the same column in the original matrix.
+	(int assign (Sparse<LT>&, Sparse<RT>)): Take a const copy of lhs
+	and use it on the RHS of expressions to avoid unnecessary calls to
+	make_unique.
+
+2007-10-08  David Bateman  <dbateman@free.fr>
+
+	* oct-rl-edit. (typedef rl_quoting_fcn_ptr, rl_dequoting_fcn_ptr,
+	rl_char_is_quoted_fcn_ptr, rl_command_fcn_ptr): New  typedefs
+	for readline compatible functions.
+	(octave_rl_redisplay): Redisplay the current line of text.
+	(octave_rl_newline):  Change interface to the same
+	as used by the equivalent readline function itself.
+	(octave_rl_filename_quoting_desired,
+	octave_rl_set_filename_quote_characters,
+	octave_rl_set_completer_quote_characters,
+	octave_rl_qet_quoting_function, octave_rl_qet_dequoting_function,
+	octave_rl_set_char_is_quoted_function): New functions to control
+	readline filename quoting and line acceptace.
+	* oct-rl-edit.c (octave_rl_newline): Change interface to the same
+	as used by the equivalent readline function itself.
+	(octave_rl_redisplay): Redisplay the current line of text.
+	(octave_rl_filename_quoting_desired,
+	octave_rl_set_filename_quote_characters,
+	octave_rl_set_completer_quote_characters,
+	octave_rl_qet_quoting_function, octave_rl_qet_dequoting_function,
+	octave_rl_set_char_is_quoted_function): New functions to control
+	readline filename quoting and line acceptace.
+	* cmd-edit.h (typedef quoting_fcn, typedef dequoting_fcn,
+	typedef char_is_quoted_fcn, user_accept_line_fcn): New typedefs
+	to map C++ function to readline compatible functions.
+	(set_filename_quote_characters): New function to set the
+	characters to if they appear in a filename that force the filename
+	to be quoted.
+	(set_completer_quote_characters): The characters that the readline
+	completion function considers as quotation characters.
+	(set_quoting_function, set_dequoting_function,
+	set_char_is_quoted_function, set_user_accept_line_function):
+	Functions to set the Octave functions to perform quoting and the
+	acceptance of a line of text by readline.
+	(get_quoting_function, get_dequoting_function,
+	get_char_is_quoted_function, get_user_accept_line_function):
+	Functions to get the above functions.
+	(accept_line): New method for the command_editor to accept a line
+	of text.
+	(file_quoting_desired): Function to set whether readline should
+	attempt to quote filenames.
+	(do_set_filename_quoting_characters,
+	do_set_completer_quote_characters, do_set_quoting_function,
+	do_set_dequoting_function, do_set_char_is_quoted_function,
+	do_set_user_accept_line_function, do_get_quoting_function,
+	do_get_dequoting_function, do_get_char_is_quoted_function,
+	do_get_user_accept_line_function, do_filename_quoting_desired):
+	Virtual functions to control the behavior of readline quoting and
+	acceptance of lines.
+	(do_accept_line): Virtual function for the accept line function.
+	* cmd-edit.cc (class gnu_readline do_set_filename_quote_characters,
+	do_completer_quote_characters, do_set_quoting_function,
+	do_set_dequoting_function, do_set_char_is_quoted_function,
+	do_set_user_accept_line_function, do_get_quoting_function,
+	do_get_dequoting_function, do_get_user_accept_line_function,
+	do_accept_line, do_filename_quoting_desired, command_quoter,
+	command_dequoter, command_char_is_quoted, command_accept_line):
+	New functions in gnu_readline class to control filename quoting
+	and line acceptance.
+	(quoting_function, dequoting_function, char_is_quoted_function,
+	user_accept_line_function): private variable to store functions
+	supplied for readline quoting and line acceptance.
+	(gnu_readline::gnu_readline): Also set the new function pointers
+	to zero.
+	(gnu_readline::do_newline): Adapt to new octave_rl_newline
+	interface.
+	(gnu_readeline::operate_and_get_next): Use new accept_line
+	function rather than newline.
+	(default_ommand_editor::do_accept_line): New method.
+	(class command_editor set_filename_quote_characters,
+	set_completer_quote_characters, set_quoting_function,
+	set_dequoting_function, set_char_is_quoted_function,
+	set_user_accept_line_function, get_quoting_function,
+	get_dequoting_function, get_user_accept_line_function,
+	accept_line, filename_quoting_desired): New functions checking
+	instance before calling virtual function.
+
+	* CMatrix.h, dMatrix.h, boolMatrix.h, chMatrix.h, MArray2.h,
+	Array2.h: Add dim_vector constructors.
+	* charNDArray.h (charNDArray (const dim_vector&)): Add missing
+	const to dim_vector constructors.
+	* boolMatrix.cc, chMatrix.cc, intNDArray.cc (diag (void), diag
+	(octave_idx_type)): New methods to constructor diagonal matrices.
+	* boolMatrix.h, chMatrix.h, intNDArray.h (diag (void), diag
+	(octave_idx_type)): Declare them.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* lo-specfun.cc: (zlgamma): Delete.
+	(xgamma): Use C library gamma function if available.
+	(xlgamma): Use C library lgamma function if available.
+	(xlgamma) [! HAVE_LGAMMA]: Allow calculation for any value of X
+	other than NaN or Inf.
+
+2007-10-05  John W. Eaton  <jwe@octave.org>
+
+	* lo-specfun.cc (zlgamma): New function.
+
+2007-10-04  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.cc (octave_sort<T>::binarysort): Remove register
+	qualifiers on local variables.
+
+2007-10-04  Marco Caliari  <mcaliari@math.unipd.it>
+
+	* CMatrix.cc (ComplexMatrix::expm): Limit shift to values less
+	than log(realmax) to avoid issues with NaN.
+
+2007-10-01  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc (octave_strptime::init): Call mktime to propertly
+	initialize wday and yday.
+	From Matthias Drochner <m.drochner@fz-juelich.de>.
+
+	* cmd-edit.cc (command_editor::do_decode_prompt_string): Don't
+	insert extra '\001' when decoding \[ and \].
+
+2007-09-26  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (lssolve): Replace the use of xGELSS with xGELSY with
+	is much faster and no less accurate.
+	* CMatrix.cc (lssolve): ditto.
+
+2007-09-25  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (utsolve, ltsolve, fsolve, lssolve): Allow
+	zero dimensioned matrices.
+	* CMatrix.cc (utsolve, ltsolve, fsolve, lssolve): ditto.
+	* dSparse.cc (dsolve, utsolve, ltsolve, bsolve, trisolve, fsolve):
+	ditto.
+	* CSparse.cc (dsolve, utsolve, ltsolve, bsolve, trisolve, fsolve):
+	ditto.
+	* SparseQR.cc (SparseQR::SparseQR_rep::C, qrsolve): ditto.
+	* SparseCmplxQR.cc (SparseComplexQR::SparseComplexQR_rep::C,
+	qrsolve): ditto.
+	* sparse-dmsolve.cc (dmsolve): ditto.
+
+2007-09-21  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign1 (Array<LT>&, const Array<RT>&, const LT&)):
+	Also allow resizing empty LHS if it is 1x0 or 0xN.
+
+2007-09-19  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (command_editor::remove_startup_hook):
+	Fix cut-and-paste error.
+	(gnu_readline::set_startup_hook): Only set hook function if new
+	function is different from the current one.
+
+2007-09-18  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.h, cmd-edit.cc (command_editor::startup_hook_set,
+	command_editor::event_hook_set): New static data.
+	(default_command_editor::set_startup_hook,
+	gnu_readline::set_startup_hook,
+	default_command_editor::restore_startup_hook,
+	gnu_readline_restore_event_hook):
+	Rename from do_set_startup_hook and do_set_event_hook.
+	(gnu_readline::operate_and_get_next): Call
+	command_editor::add_startup_hook, not
+	command_editor::set_startup_hook.
+	(command_editor::startup_handler, command_editor::event_handler):
+	New functions.
+	(command_editor::add_startup_hook, command_editor::add_event_hook,
+	command_editor::remove_startup_hook,
+	command_editor::remove_event_hook): Rename from set_startup_hook
+	and restore_startup_hook.  Handle hook sets here.
+	* cmd-edit.cc (gnu_history::do_goto_mark):
+	Call remove_startup_hook instead of restore_startup_hook.
+
+2007-09-17  John W. Eaton  <jwe@octave.org>
+
+	* lo-utils.cc (octave_read_complex, octave_read_double): Skip
+	leading whitespace.
+
+2007-09-13  John W. Eaton  <jwe@octave.org>
+
+	* lo-utils.cc (read_inf_nan_na, octave_read_double,
+	octave_read_complex): Use istream::get instead of >> to read
+	individual characters.
+
+2007-09-10  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign1): Don't call make_unique for invalid assignment.
+
+2007-09-10  David Bateman  <dbateman@free.fr>
+
+	* Array.h (Array<T>::make_unique): Make public so that the
+	::assign functions can access it directly.
+	* Array.cc (Array<T>::maybe_delete_elements_1(idx_vector&),
+	Array<T>::maybe_delete_elements_1(idx_vector&),
+	Array<T>::maybe_delete_elements(idx_vector&, idx_vector&),
+	Array<T>::maybe_delete_elements(Array<idx_vector>&, const T&)):
+	Use xelem for non const RHS to avoid call to make_unique.
+	(int assign1 (Array<LT>&, const Array<RT>&, const LT&)): Use
+	xelem for LHS and call lhs.make_unique() only once. Special case
+	the is_colon index case and use Array<T>::xelem(octave_idx_type)
+	rather than Array<T>::xelem(octave_idx_type,octave_idx_type) and
+	bring the additional multiplication out of the inner loop.
+	(int assign2 (Array<LT>&, const Array<RT>&, const LT&)): ditto.
+	(int assignN (Array<LT>&, const Array<RT>&, const LT&)): ditto.
+	* idx-vector.h (idx_vector::idx_vector_rep::idx_vector_rep
+	(const Range& r)): Don't use init_state() method but special case
+	as with a Range can avoid exhaustive search.
+
+2007-09-07  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::fortran_vec): Call make_unique instead of
+	manipulating rep directly.
+
+	* Array.h (idx, idx_count): Declare mutable.
+	(Array<T>::set_index, Array<T>::clear_index, Array<T>::value):
+	Now const.
+
+2007-09-06  David Bateman  <dbateman@free.fr>
+
+	* Array-util.cc (increment_index): dimensions can have singleton
+	trailing dimensions.
+	* Array.h (range_error, xelem, checkelem, elem, operator ()):
+	Modify use of Array<int> to Array<octave_idx_type> and adjust
+	where necessary.
+	* Array.cc (range_error): ditto.
+	* MArrayN.h (permute, ipermute): ditto.
+	* ArrayN.h (permute, ipermute): ditto.
+	* so-array.cc (streamoff_array::compute_index): ditto.
+	* so-array.h (compute_index): ditto.
+	* CMattrix.cc (ComplexMatrix::exmpm): ditto.
+
+2007-08-29  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (SparseMatrix SparseMatrix::inverse (MatrixType &,
+	octave_idx_type&, double&, int, int)): Calculate with LU even for
+	matrices marked as singular.
+	* CSparse.cc (SparseComplexMatrix SparseComplexMatrix::inverse (
+	MatrixType &, octave_idx_type&, double&, int, int)): ditto.
+	* dMatrix.cc (Matrix Matrix::inverse (MatrixType &, octave_idx_type&,
+	double&, int, int)): ditto. If rcond==0 force matrix of infinities.
+	* dMatrix.cc (ComplexMatrix ComplexMatrix::inverse (MatrixType &,
+	octave_idx_type&, double&, int, int)): ditto.
+
+2007-08-27  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::rooted_relative_pathname,
+	octave_env::do_rooted_relative_pathname): New functions.
+	* oct-env.h: Provide decls.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* MSparse.h (MSparse<T>& insert (const Sparse<T>&,
+	const Array<octave_idx_type>&)): New method.
+	(MSparse (const dim_vector&, octave_idx_type)): Ditto.
+	* dSparse.h (SparseMatrix& SparseMatrix::insert (const
+	SparseMatrix&, const Array<octave_idx_type>&)): ditto.
+	(SparseMatrix (const dim_vector&, octave_idx_type)): ditto.
+	* dSparse.cc (SparseMatrix& SparseMatrix::insert (const
+	SparseMatrix&, const Array<octave_idx_type>&)): ditto.
+	* boolSparse.h (SparseBoolMatrix& SparseBoolMatrix::insert (const
+	SparseBoolMatrix&, const Array<octave_idx_type>&)): ditto.
+	* boolSparse.cc (SparseBoolMatrix& SparseBoolMatrix::insert (const
+	SparseBoolMatrix&, const Array<octave_idx_type>&)): ditto.
+	* CSparse.h (SparseComplexMatrix& SparseComplexMatrix::insert (const
+	SparseMatrix&, const Array<octave_idx_type>&),
+	SparseComplexMatrix& SparseComplexMatrix::insert (const
+	SparseComplexMatrix&, const Array<octave_idx_type>&)): ditto.
+	(SparseComplexMatrix (const dim_vector&, octave_idx_type)): ditto.
+	* CSparse.cc (SparseComplexMatrix& SparseComplexMatrix::insert (const
+	SparseMatrix&, const Array<octave_idx_type>&),
+	SparseComplexMatrix& SparseComplexMatrix::insert (const
+	SparseComplexMatrix&, const Array<octave_idx_type>&)): ditto.
+
+2007-08-19  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (Sparse<T>::permute): Avoid shadowing warning.
+
+2007-08-14  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (Sparse<T>::permute): permutation vector is zero based.
+	Simplify.
+	(Sparse<T>::reshape): Warn about reshaping to N-d array.
+
+2007-08-10  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* file-stat.cc (file_stat::update_internal) [__WIN32__]:
+	Remove trailing dir separator when stat'ing directory except for
+	root directory.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: 	Adjust DISTFILES to allow out of tree "make dist"
+	to work.
+
+2007-06-04  David Bateman  <dbateman@free.fr>
+
+	* oct-inttypes.h (octave_int<T>& operator <<= (const T2&),
+	octave_int<T>& operator >>= (const T2&)): Make shift operators
+	perform a twos complement arithmetic shift for both signed and
+	unsigned integers regardless of compiler implementations.
+
+2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* SparseCmplxQR.cc (OCTAVE_C99_ZERO): For CXSparse 2.2 and greater
+	use cs_complex_t(0,0) for the complex zero.
+
+	* MArray-ch.cc, MArray-d.cc, MArray-i.cc, MArray-s.cc:
+	Sprinkle class instantiations with OCTAVE_API as needed.
+
+	* Array.h (INSTANTIATE_ARRAY_ASSIGN, INSTANTIATE_ARRAY,
+	INSTANTIATE_ARRAY_AND_ASSIGN): New arg, API. Change all uses.
+	* MArray-defs.h (MARRAY_OP_ASSIGN_DECL, MARRAY_OP_ASSIGN_DECLS,
+	MARRAY_OP_ASSIGN_FWD_DECLS, MARRAY_OP_ASSIGN_FRIENDS,
+	MARRAY_OP_ASSIGN_DEFS, MARRAY_UNOP, MARRAY_UNOP_DECLS,
+	MARRAY_UNOP_FWD_DECLS, MARRAY_UNOP_FRIENDS, MARRAY_UNOP_DEFS,
+	MARRAY_BINOP_DECL, MARRAY_BINOP_DECLS, MARRAY_AA_BINOP_DECLS,
+	MDIAGARRAY2_DAS_BINOP_DECLS, MDIAGARRAY2_SDA_BINOP_DECLS,
+	MDIAGARRAY2_DADA_BINOP_DECLS, MARRAY_BINOP_FWD_DECLS,
+	MDIAGARRAY2_BINOP_FWD_DECLS, MARRAY_BINOP_FRIENDS,
+	MDIAGARRAY2_BINOP_FRIENDS, MARRAY_BINOP_DEFS,
+	MDIAGARRAY2_BINOP_DEFS, MARRAY_OPS_FORWARD_DECLS,
+	MDIAGARRAY2_OPS_FORWARD_DECLS, MARRAY_OPS_FRIEND_DECLS,
+	MDIAGARRAY2_OPS_FRIEND_DECLS, INSTANTIATE_MARRAY_FRIENDS,
+	INSTANTIATE_MARRAY2_FRIENDS, INSTANTIATE_MARRAYN_FRIENDS,
+	INSTANTIATE_MDIAGARRAY2_FRIENDS): Ditto.
+	* MSparse-defs.h (SPARSE_OP_ASSIGN_DECL, SPARSE_OP_ASSIGN_DECLS,
+	SPARSE_OP_ASSIGN_FWD_DECLS, SPARSE_OP_ASSIGN_FRIENDS,
+	SPARSE_OP_ASSIGN_DEFS, SPARSE_UNOP, SPARSE_UNOP_DECLS,
+	SPARSE_UNOP_FWD_DECLS, SPARSE_UNOP_FRIENDS, SPARSE_UNOP_DEFS,
+	SPARSE_BINOP_DECL, SPARSE_BINOP_DECLS, SPARSE_AA_BINOP_DECLS,
+	SPARSE_BINOP_FWD_DECLS, SPARSE_BINOP_FRIENDS, SPARSE_BINOP_DEFS,
+	SPARSE_OPS_FORWARD_DECLS, SPARSE_OPS_FRIEND_DECLS,
+	INSTANTIATE_SPARSE_FRIENDS): Ditto.
+	* Sparse-op-defs.h (SPARSE_BIN_OP_DECL, SPARSE_CMP_OP_DECL,
+	SPARSE_BOOL_OP_DECL, SPARSE_SMS_BIN_OP_DECLS,
+	SPARSE_SMS_CMP_OP_DECLS, SPARSE_SMS_EQNE_OP_DECLS,
+	SPARSE_SMS_BOOL_OP_DECLS, SPARSE_SSM_BIN_OP_DECLS,
+	SPARSE_SMS_OP_DECLS, SPARSE_SSM_BIN_OP_DECLS,
+	SPARSE_SSM_CMP_OP_DECLS, SPARSE_SSM_EQNE_OP_DECLS,
+	SPARSE_SSM_BOOL_OP_DECLS, SPARSE_SSM_OP_DECLS,
+	SPARSE_SMSM_BIN_OP_DECLS, SPARSE_SMSM_CMP_OP_DECLS,
+	SPARSE_SMSM_EQNE_OP_DECLS, SPARSE_SMSM_BOOL_OP_DECLS,
+	SPARSE_SMSM_OP_DECLS, SPARSE_MSM_BIN_OP_DECLS,
+	SPARSE_MSM_CMP_OP_DECLS, SPARSE_MSM_EQNE_OP_DECLS,
+	SPARSE_MSM_BOOL_OP_DECLS, SPARSE_MSM_OP_DECLS,
+	SPARSE_SMM_BIN_OP_DECLS, SPARSE_SMM_CMP_OP_DECLS,
+	SPARSE_SMM_EQNE_OP_DECLS, SPARSE_SMM_BOOL_OP_DECLS,
+	SPARSE_SMM_OP_DECLS): Ditto.
+	* Sparse.h (INSTANTIATE_SPARSE_ASSIGN, INSTANTIATE_SPARSE,
+	INSTANTIATE_SPARSE_AND_ASSIGN): Ditto.
+	* mx-op-defs.h (BIN_OP_DECL, CMP_OP_DECL, NDCMP_OP_DECL,
+	BOOL_OP_DECL, NDBOOL_OP_DECL, VS_BIN_OP_DECLS, VS_OP_DECLS,
+	SV_BIN_OP_DECLS, SV_OP_DECLS, VV_BIN_OP_DECLS, VV_OP_DECLS,
+	MS_BIN_OP_DECLS, MS_CMP_OP_DECLS, MS_BOOL_OP_DECLS, MS_OP_DECLS,
+	SM_BIN_OP_DECLS, SM_CMP_OP_DECLS, SM_BOOL_OP_DECLS, SM_OP_DECLS,
+	MM_BIN_OP_DECLS, MM_CMP_OP_DECLS, MM_BOOL_OP_DECLS, MM_OP_DECLS,
+	NDS_BIN_OP_DECLS, NDS_CMP_OP_DECLS, NDS_BOOL_OP_DECLS,
+	NDS_OP_DECLS, SND_BIN_OP_DECLS, SND_CMP_OP_DECLS,
+	SND_BOOL_OP_DECLS, SND_OP_DECLS, NDND_BIN_OP_DECLS,
+	NDND_CMP_OP_DECLS, NDND_BOOL_OP_DECLS, NDND_OP_DECLS,
+	SDM_BIN_OP_DECLS, SDM_OP_DECLS, DMS_BIN_OP_DECLS, DMS_OP_DECLS,
+	MDM_BIN_OP_DECLS, MDM_OP_DECLS, DMM_BIN_OP_DECLS, DMM_OP_DECLS,
+	DMDM_BIN_OP_DECLS, DMDM_OP_DECLS): Ditto.
+
+2007-06-12  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (Matrix::expm): Special case for scalar arg.
+	* CMatrix.cc (ComplexMatrix::expm): Likewise.
+
+2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* file-ops.cc (tilde_find_suffix, isolate_tilde_prefix,
+	tilde_expand_word): Use file_ops::is_dir_sep instead of comparing
+	with file_ops::dir_sep_char.
+
+	* MArray-C.cc: Sprinkle with OCTINTERP_API as needed.
+
+2007-06-04  David Bateman  <dbateman@free.fr>
+
+	* file-ops.cc: Typo.
+
+	* Sparse.cc (Sparse<T> Sparse<T>::reshape): If length of new
+	dimensions is greater than 2, collapse to 2-D.
+
+2007-06-02  David Bateman  <dbateman@free.fr>
+
+	* SparseCmplxQR.cc: Changes to support CXSparse 2.2.0.
+
+2007-05-31  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array::get_size): Throw std::bad_alloc exception if
+	the computed size is too large for the size of Octave's index type.
+
+2007-05-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h: Don't surround included files with extern "C" { ... }.
+
+2007-05-16  David Bateman  <dbateman@free.fr>
+
+	* dRowVector.cc (linspace): Return second argument if fewer than
+	two values are requested.
+	* CRowVector.cc (linspace): Likewise.
+
+2007-04-27  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (signum (const Complex&)): Special case for (0, 0).
+
+2007-04-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-fftw.h (octave_fftw): Tag with OCTAVE_API.
+
+2007-04-20  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign1): For x(:) = RHS, require rhs_len == lhs_len,
+	not rhs_len == 1.
+
+2007-04-18  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-md5.h (oct_md5, oct_md5_file): Tag decls with OCTAVE_API.
+
+2007-04-13  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::maybe_delete_elements_2): Don't return early
+	for empty matrix.  Only check for colon index equivalence if not empty.
+
+2007-04-10  John W. Eaton  <jwe@octave.org>
+
+	* SparseCmplxQR.cc
+	(SparseComplexQR::SparseComplexQR_rep::SparseComplexQR_rep):
+	Move GCC_ATTR_UNUSED before the parameter decl.
+	From Luis Ortiz  <lortiz@interactivesupercomputing.com>.
+
+2007-04-06  John W. Eaton  <jwe@octave.org>
+
+	* MArray-defs.h (MARRAY_NORM_BODY): New macro.
+	* MArray.h (MArray<T>::norm): New function.
+	* MArray.cc: Provide decl.
+	* MArray-d.cc (MArray<double>::norm): Define double specialization.
+	* MArray-C.cc (MArray<Complex>::norm): Define Complex specialization.
+
+2007-04-04  John W. Eaton  <jwe@octave.org>
+
+	* Range.cc (Range::nelem_internal): Likewise.
+	* lo-utils.cc (NINT): Use numeric_limits<int> instead of INT_MAX.
+	(NINTbig): Use numeric_limits<octave_idx_type> instead of INT_MAX.
+	From Scott Pakin <pakin@lanl.gov>.
+
+2007-04-04  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (Matrix::inverse): If calc_cond is true, calculate
+	the condition number for positive definite matrices.
+	* CMatrix.cc (ComplexMatrix::inverse): Ditto.
+	* dbleChol.h (CHOL(const Matrix&, bool)): New arg, calc_cond.
+	(CHOL(const Matrix&, octave_idx_type&, bool): Ditto.
+	(octave_idx_type init (const Matrix&, bool)): Ditto.
+	(CHOL(const CHOL&)): Copy xrcond.
+	(CHOL& operator = (const CHOL&)): Copy xrcond.
+	(xrcond): New private data member.
+	* CmplxCHOL.h (ComplexCHOL(const ComplexMatrix&, bool)): New arg,
+	calc_cond.
+	(ComplexCHOL(const ComplexMatrix&, octave_idx_type&, bool): Ditto
+	(octave_idx_type init (const ComplexMatrix&, bool)): Ditto.
+	(ComplexCHOL(const ComplexCHOL&)): Copy xrcond.
+	(ComplexCHOL& operator = (const ComplexCHOL&)): Copy xrcond.
+	(xrcond): New private data member.
+	* dbleCHOL.cc (CHOL::init(const Matrix&, bool)): If calc_cond is
+	true, calculate the condition number with dpocon.
+	* CmplxCHOL.cc (ComplexCHOL::init(const ComplexMatrix&, bool)): If
+	calc_cond is true, calculate the condition number with zpocon.
+
+2007-04-03  John W. Eaton  <jwe@octave.org>
+
+	* intNDArray.cc (intNDArray): Delete spurious semicolon.
+
+	* CMatrix.cc (ComplexMatrix::tinverse): Use Array<T> and
+	fortran_vec method instead of OCTAVE_LOCAL_BUFFER to avoid
+	"maybe clobbered by vfork" warning.
+
+	* Sparse-op-defs.h (SPARSE_CUMSUM): Add braces to avoid ambiguous
+	if/else.
+
+	* oct-spparms.h (octave_sparse_params): Define copy constructor
+	and destructor.
+
+	* Array.cc (assignN): Don't resize dimension if corresponding
+	index is empty.
+
+2007-04-02  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.h (Matrix::inverse): Reinstate versions without
+	MatrixType argument.
+	* CMatrix.h (ComplexMatrix::inverse): Likewise.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DISTDIRS): Delete variable.
+	(dist): Delete action for DISTDIRS.  Use ln instead of $(LN_S).
+
+2007-03-26  David Bateman  <dbateman@free.fr>
+
+	* MatrixType.cc: Replace all uses of the method
+	octave_sparse_params::get_key ("bandden") with
+	octave_sparse_params::get_bandden (void).
+	(MatrixType::MatrixType (void)): Undo previous change but use
+	octave_sparse_params::get_bandden (void).
+	* oct-spparms.cc (get_bandden(void), do_get_bandden(void)): New
+	methods.
+	* oct-spparms.h (get_bandden(void), do_get_bandden(void)):
+	Declare them.
+
+2007-03-26  Luis Ortiz  <lortiz@interactivesupercomputing.com>
+	    David Bateman  <dbateman@free.fr>
+
+	* idx-vector.h.cc (IDX_VEC_REP::idx_vector_rep (const Range&)):
+	Check that all elements are ints before doing anything.  Simplify
+	calculation of index values.
+
+2007-03-26  David Bateman  <dbateman@free.fr>
+
+	* Range.cc (Range::all_elements_are_ints): Improve check.
+
+2007-03-26  John W. Eaton  <jwe@octave.org>
+
+	* chNDArray.cc, chMatrix.cc: Also generate comparison and bool ops.
+	* chNDArray.h, chMatrix.h: Provide decls.
+
+2007-03-24  Luis Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* MatrixType.cc (MatrixType::MatrixType (void)): Initialize
+	sp_bandden to zero for performance reasons as it's not used.
+
+2007-03-23  David Bateman  <dbateman@free.fr>
+
+	* oct-rand.cc (octave_rand::seed): Seed differently for big and
+	little endian.
+
+2007-03-15  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (acos): Use formula similar to what we use for asin.
+	From Alexander Barth <abarth@marine.usf.edu>.
+
+2007-03-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int::octave_int (double)):
+	New Specialization.  Round arg.
+	(operator / (const octave_int<T1>&, const octave_int<T2>&)):
+	Round result before converting type.
+
+2007-03-07  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign1): Avoid resizing if there is an error.
+
+	* dMatrix.cc, CMatrix.cc (operator *): Only check
+	f77_exception_encountered immediately after calls that use F77_XFCN.
+
+	* Array.cc (assign1 (Array<LT>&, const Array<RT>&, const LT&)):
+	Only allow resizing empty LHS if it is 0x0.
+
+	* Array.cc (Array<T>::maybe_delete_elements (Array<idx_vector>&,
+	const T&)): Handle case of more indices than dimensions.
+	(assign (Array<LT>&, const Array<RT>&, const LT&)): Allow more
+	cases to be handled by assignN.
+	(assignN (Array<LT>&, const Array<RT>&, const LT&)):
+	Special cases for 2-d array assignments for speed.
+	Improve handling of scalar RHS and empty indices.
+
+2007-03-05  David Bateman  <dbateman@free.fr>
+
+	* oct-md5.c (oct_md5_file (const std::string&)): New function.
+	* oct-md5.h (oct_md5_file (const std::string&)): Declare it.
+
+2007-03-02  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.h (string_vector::empty): Return bool, not int.
+
+2007-03-01  David Bateman  <dbateman@free.fr>
+
+	* md5.h, md5.c: New files from libmd5-rfc sourceforge project for
+	an independent implementation of RFC1321.
+	* oct-md5.h, oct-md5: New files for treating std::string class
+	with MD5.
+	* Makefile.in (INCLUDES): Add md5.h and oct-md5.h
+	(LIBOCTAVE_CXX_SOURCES): Add oct-md5.cc
+	(LIBOCTAVE_C_SOURCES): Add md5.c
+
+2007-02-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (uninstall): Delete files listed in
+	$(INCLUDES_FOR_INSTALL), instead of $(INCLUDES).
+	From Thomas Treichl <Thomas.Treichl@gmx.net>.
+
+2007-02-27  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* file-ops.cc (file_ops::recursive_rmdir):
+	Close dir_entry object before calling rmdir.
+
+2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
+
+	* sparse-util.h (SparseCholPrint, SparseCholError):
+	Tag with OCTAVE_API.
+
+2007-02-18  David Bateman  <dbateman@free.fr>
+
+	* oct-rand.cc (do_old_initialization()): call setcgn(1) prior to
+	calling setall and reset to the current generator after.
+
+2007-02-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.h (octave_shlib::relative): New data member.
+	(octave_shlib::mark_relative, octave_shlib::is_relative):
+	New functions.
+
+2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* lo-sysdep.cc (octave_popen2): New function to simulate popen2 on
+	windows platform.
+	* lo-sysdep.h (octave_popen2): Declare it.
+	* oct-syscalls.cc (octave_syscalls::popen2): New function.
+	* oct-syscalls.h (octave_syscalls::popen2): Declare it.
+
+2007-02-14  John W. Eaton  <jwe@octave.org>
+
+	* kpse.cc (expand_elt): Omit special treatment for //.
+
+2007-02-06  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::canonicalize_file_name) [HAVE_REALPATH]:
+	Don't delete value returned from realpath.
+
+2007-02-05  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* file-ops.cc (file_ops::canonicalize_file_name):
+	Provide implementation if realpath function is available.
+
+2007-01-29  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-fftw.h: Sprinkle with OCTAVE_API as needed.
+
+2007-01-17  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* lo-sysdep.cc (octave_chdir): Handle directory names like "C:" on
+	Windows systems.
+
+2007-01-16  John W. Eaton  <jwe@octave.org>
+
+	* dSparse.cc: Fix dgbtrf decl for --enable-64.
+	(SparseMatrix::bsolve): Fix call to dgbtrf for --enable-64
+
+	* oct-fftw.h (fftw_planner): Provide decl.
+
+2007-01-11  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in (LINK_DEPS): Include $(CAMD_LIBS) in the list.
+
+2007-01-10  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h: Use HAVE_CHOLMOD_CHOLMOD_H, not
+	HAVE_UMFPACK_CHOLMOD_H for case of "cholmod/cholmod.h".
+
+2007-01-08  David Bateman  <dbateman@free.fr>
+
+	* oct-sparse.h: Replace sparsesuite with suitesparse and
+	SPARSESUITE with SUITESPARSE to match upstream name.
+
+2007-01-05  David Bateman  <dbateman@free.fr>
+
+	* oct-fftw.cc: (octave_fftw_planner::method (void),
+	octave_fftw_planner (FftwMethod)): New methods to interrogate and
+	set the FFTW wisdom method used.
+	(octave_fftw_planner::create_plan) Modify to allow different
+	methods to be used.
+	(octave_fftw_planner): Move class definition from here.
+	* oct-fftw.h (octave_fftw_planner): To here. Add method methods
+	and FftwMethod enum.
+
+2007-01-03  David Bateman  <dbateman@free.fr>
+
+	* MSparse.cc (SPARSE_A2A2_OP, SPARSE_A2A2_FCN_1,
+	SPARSE_A2A2_FCN_1): Modify macros so that scalars stored as
+	sparse matrices are special cased.
+
+	* Sparse-op-defs.h: Include mx-ops.h to have access to mixed
+	matrix, sparse matrix operations.
+	(SPARSE_SMSM_BIN_OP_1, SPARSE_SMSM_BIN_OP_2, SPARSE_SMSM_BIN_OP_3,
+	SPARSE_SMSM_CMP_OP, SPARSE_SMSM_BOOL_OP, SPARSE_MSM_BIN_OP_1,
+	SPARSE_MSM_BIN_OP_2, SPARSE_MSM_CMP_OP, SPARSE_MSM_BOOL_OP,
+	SPARSE_SMM_BIN_OP_1, SPARSE_SMM_BIN_OP_2, SPARSE_SMM_CMP_OP,
+	SPARSE_SMM_BOOL_OP, SPARSE_SPARSE_MUL, SPARSE_FULL_MUL,
+	FULL_SPARSE_MUL): Modify macros so that scalars stored as
+	sparse matrices are special cased.
+
+2006-12-22  David Bateman  <dbateman@free.fr>
+
+	* boolSparse.cc (SparseBoolMatrix::operator !): Fix off-by-one error.
+
+2006-12-22  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h (dim_vector::dim_vector): Always start with at
+	least 2 dimensions.
+	(dim_vector::resize): Don't allow resizing to fewer than 2 dimensions.
+
+2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* lo-sysdep.cc (opendir): Avoid passing \\* to FindFirstFile.
+
+	* file-ops.cc (ops::canonicalize_file_name): Provide partial
+	implementation for Windows.
+
+2006-12-06  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (SparseMatrix::is_symmetric): Faster implementation.
+	* CSparse.cc (SparseComplexMatrix::is_symmetric): Ditto.
+
+	* dMatrrix.cc (finverse): Old inverse method renamed inverse.
+	(tinverse): New method for triangular matrices.
+	(inverse): New function with matrix type probing.
+	* dMatrix.h (finverse, tinverse, inverse): New and modified
+	declarations.
+	* CMatrix.cc: Ditto.
+	* CMatrix.h: Ditto.
+
+2006-12-06  John W. Eaton  <jwe@octave.org>
+
+	* strptime.c (day_of_the_week): Use code from current glibc sources.
+
+2006-12-05  John W. Eaton  <jwe@octave.org>
+
+	* lo-utils.cc (octave_read_double): If we see '+' or '-' but not
+	followed by 'I' or 'i', try reading number after putting
+	characters back on input stream.
+
+2006-12-05  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* randpoisson.c (oct_fill_randp): For lambda > 1e8, upper limit of
+	loop is n, not L.
+
+2006-11-30  John W. Eaton  <jwe@octave.org>
+
+	* lo-utils.cc (octave_read_double, read_inf_nan_na):
+	Also recognize [+-][Ii]nf.
+
+2006-11-28  David Bateman  <dbateman@free.fr>
+
+	* oct-sparse.h: Allow sparse headers to also be in a sparsesuite
+	sub-directory.
+
+	* dSparse.cc (SparseMatrix::inverse): Transpose the matrix type as
+	well when calling tinverse for lower triangular matrices.
+	* CSparse.cc (SparseComplexMatrix::inverse):
+	Ditto.
+
+2006-11-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (do_absolute_pathname): Undo previous change.
+
+2006-11-20  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::do_absolute_pathname): Also return true
+	for ".", and names beginning with "./" or "../".
+
+2006-11-14  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* CMatrix.cc, dMatrix.cc: New tests.
+
+2006-11-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Array-d.cc, dDiagMatrix.h: Sprinkle with OCTAVE_API as needed.
+
+2006-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in ($(OPTS_INC), mx-ops.h):
+	Use $(simple-move-if-change-rule) here.
+
+2006-11-09  David Bateman  <dbateman@free.fr>
+
+	* sparse-base-chol.cc (sparse_base_chol_rep::Q): Cast perms(i) to
+	octave_idx_type, not int.
+
+2006-11-08  John W. Eaton  <jwe@octave.org>
+
+	* dir-ops.cc (dir_entry::read): Avoid rewinddir.
+
+2006-11-06  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Exit early if invalid indices are found.
+
+2006-11-03  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* strftime.c [HAVE_TZNAME]: Tag tzname with OCTAVE_IMPORT.
+
+2006-11-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
+	(DLL_CDEFS): Rename from XTRA_CDEFS.
+	Substitute OCTAVE_DLL_DEFS, not XTRA_OCTAVE_DEFS.
+
+2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-shlib.cc: Undefine min and max after including windows.h.
+	* oct-syscalls.cc (syscalls::pipe (int *)): Avoid infinite recursion.
+	* lo-sysdep.h: Move opendir, readdir, etc. decls here from
+	lo-sysdep.cc.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* oct-time.cc [! HAVE_STRFTIME]: Declare strftime.
+
+2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* mx-op-defs.h (NDS_CMP_OP1, NDS_CMP_OPS1, NDS_CMP_OP2,
+	NDS_CMP_OPS2): New macros.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* mx-ops (core-type): New field for integer types.
+	* mk-ops.awk: Handle core-type for integer comparison ops.
+
+	* lo-cutils.c (octave_strcasecmp, octave-strncasecmp):
+	Move here from src/cutils.c.
+	* lo-utils.h: Provide decls.
+	* strcasecmp.c: Move here from src/strcasecmp.c.
+	* strncase.c: Move here from src/strncase.c.
+	* Makefile.in (LIBOCTAVE_C_SOURCES): Add them to the list.
+
+2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* kpse.cc [! MSVC]: Don't include win32lib.h.
+
+	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-i.cc, Array-util.h,
+	Array.h, CColVector.h, CMatrix.h, CNDArray.h, CRowVector.h,
+	CSparse.h, CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h, CmplxHESS.h,
+	CmplxLU.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h, CmplxSVD.h,
+	CollocWt.h, DAE.h, DASPK.h, DASRT.h, DASSL.h, EIG.h, LSODE.h,
+	MArray-C.cc, MArray-defs.h, MSparse-C.cc, MSparse-d.cc,
+	MSparse-defs.h, MatrixType.h, NLEqn.h, Quad.h, Range.h,
+	Sparse-op-defs.h, Sparse.h, SparseCmplxCHOL.h, SparseCmplxLU.h,
+	SparseCmplxQR.h, SparseQR.h, SparsedbleCHOL.h, SparsedbleLU.h,
+	boolMatrix.h, boolNDArray.h, boolSparse.h, chMatrix.h,
+	chNDArray.h, cmd-edit.h, cmd-hist.h, dColVector.h, dDiagMatrix.h,
+	dMatrix.h, dNDArray.h, dRowVector.h, dSparse.h, data-conv.h,
+	dbleAEPBAL.h, dbleCHOL.h, dbleDET.h, dbleHESS.h, dbleLU.h,
+	dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h, dir-ops.h,
+	file-ops.h, file-stat.h, glob-match.h, idx-vector.h,
+	int16NDArray.cc, int32NDArray.cc, int64NDArray.cc, int8NDArray.cc,
+	lo-cutils.c, lo-ieee.h, lo-mappers.h, lo-specfun.h, lo-utils.h,
+	mach-info.h, mx-op-defs.h, oct-alloc.h, oct-env.h, oct-group.h,
+	oct-inttypes.cc, oct-inttypes.h, oct-passwd.h, oct-rand.h,
+	oct-shlib.h, oct-spparms.h, oct-syscalls.h, oct-time.h,
+	oct-uname.h, pathsearch.h, prog-args.h, so-array.h, str-vec.h,
+	uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc,
+	uint8NDArray.cc: Sprinkle with OCTAVE_API as needed.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.cc (INSTANTIATE_INTTYPE_BIN_OP): Provide explicit
+	type qualification for OP.
+
+2006-10-26  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (Sparse<T>::resize_no_fill (octave_idx_type,
+	octave_idx_type)): Be more careful with the size of the input
+	matrix, and therefore don't create or read non existent data.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (assign): Clear lhs index after error.
+
+2006-10-25  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
+	Fix previous patch so it works.
+
+2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* glob-match.h (glob_match::glob_match (const std::string&,
+	unsigned int)): Delete initializer for first arg.
+
+	* lo-sysdep.cc (opendir, readdir, rewinddir, closedir):
+	New functions.
+
+	* Makefile.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
+
+	* oct-env.cc (octave_env::do_get_home_directory) [_MSC_VER]: Use
+	same code as __MINGW32__.
+	* syswait.h [_MSC_VER]: Define HAVE_WAITPID, WAITPID, and WNOHANG
+	the same as for __MINGW32__.
+
+	* randpoisson.c: Undefine INFINITE before redefining.
+
+2006-10-24  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)): Resize the
+	lhs at the point we know the assignment can succeed if the lhs is
+	empty.
+
+2006-10-23  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign2): Don't require vector assignments to be oriented.
+
+2006-10-17  John W. Eaton  <jwe@octave.org>
+
+	* lo-cieee.c: If isnan is not available but _isnan is, then define
+	isnan to be _isnan, and define HAVE_ISNAN.  Likewise for _finite
+	and _copysign.
+
+2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-syscalls.cc (syscalls::waitpid): Always declare and define retval.
+
+	* CMatrix.cc (ComplexMatrix::solve): Avoid infinite recursion.
+	* CSparse.cc (SparseComplexMatrix::insert): Likewise.
+
+	* oct-types.h.in: Include limits.h, for CHAR_BIT.
+
+2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Adapt rules to use $(LIBPRE).
+
+2006-10-03  David Bateman  <dbateman@free.fr>
+
+	* MatrixType.cc (MatrixType::MatrixType): Avoid crash if np == 0
+	or p == 0.
+
+2006-10-02  John W. Eaton  <jwe@octave.org>
+
+	* dbleDET.cc (DET::initialize2): Ensure arg to log10 is double.
+	* CmplxDET.cc (ComplexDET::initialize2): Likewise.
+
+2006-09-22  David Bateman  <dbateman@free.fr>
+
+	* MatrixType.h (MatrixType::MatrixType(const SparseComplexMatrix&)):
+	Remove spurious warning.
+
+2006-09-15  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&) const):
+	Handle resizing.
+
+	* intNDArray.h (intNDArray<T>:elt_type): New typedef.
+
+2006-09-11  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (operator * (const Matrix&, const Matrix&))):
+	Handle M*v and rv*cv special cases.
+	* CMatrix.cc (operator * (const ComplexMatrix&, const
+	ComplexMatrix&))): Likewise.
+	From Luis F. Ortiz <lortiz@interactivesupercomputing.com>.
+
+	* dRowVector.cc (operator * (const RowVector&, const
+	ColumnVector&)): Call xddot here instead of using a Fortran
+	function directly.
+	* CRowVector.cc (operator * (const ComplexRowVector&, const
+	ComplexColumnVector&)): Call xzdotu here.
+
+2006-09-05  John W. Eaton  <jwe@octave.org>
+
+	* chNDArray.cc (charNDArray::any, charNDArray::all): Compare
+	elements to '\0', not ' '.
+
+2006-08-25  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Special case for 0x0 arrays.
+
+2006-08-23  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc, dMatrix.h (Matrix::save_ascii): Delete function and decl.
+	* CMatrix.cc, CMatrix.h (ComplexMatrix::save_ascii): Likewise.
+
+2006-08-22  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (ComplexMatrix::save_ascii): New function.
+	* dMatrix.cc (Matrix::save_ascii): New function.
+
+	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Correctly detect empty arrays.
+	If array is empty, return value is same size as array.
+	(MX_ND_REDUCTION): Correctly detect empty arrays.
+	If array is empty, produce correctly sized return value.
+
+2006-08-18  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (Matrix::any_element_not_one_or_zero): New function.
+	* dMatrix.h: Provide decl.
+	* dNDArray.cc (NDArray::any_element_not_one_or_zero): New function.
+	* dNDArray.h: Provide decl.
+	* intNDArray.cc (intNDArray<T>::any_element_not_one_or_zero):
+	New function.
+	* intNDArray.h: Provide decl.
+
+	* Array.cc (Array<T>::permute): Only rearrange values if array is
+	not empty.
+
+2006-07-26  John W. Eaton  <jwe@octave.org>
+
+	* dbleDET.cc (DET::initialize10, DET::value_will_underflow,
+	DET::value_will_overflow): Use xlog2 instead of log2.
+	(DET::initialize2, DET::initialize10): Use xround instead of round.
+	(DET::initialize2, DET::value): Use xexp2 instead of exp2.
+	* CmplxDET.cc (ComplexDET::initialize10,
+	ComplexDET::value_will_underflow,
+	ComplexDET::value_will_overflow): Use xlog2 instead of log2.
+	(ComplexDET::initialize2, ComplexDET::initialize10):
+	Use xround instead of round.
+	(ComplexDET::initialize2, ComplexDET::value):
+	Use xexp2 instead of exp2.
+
+	* lo-mappers.cc (M_LOG10E): Delete unused macro.
+	(xlog2, xexp2): New functions.
+	* lo-mappers.h: Provide decls.
+
+2006-07-22  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.h (Sparse<T>::mex_get_data, Sparse<T>::mex_get_ir,
+	Sparse<T>::mex_get_jc): New functions.
+
+2006-07-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int<T>::mex_get_data): New function.
+	* Array.h (Array<T>::mex_get_data): New function.
+
+2006-07-19  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int::operator bool (void)): New function.
+
+2006-07-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-spparms.h, oct-spparms.cc (class octave_sparse_params):
+	Rename from SparseParams.  Use same implementation method as other
+	singleton classes in Octave.  Change all uses of
+	Voctave_sparse_controls to use static functions from
+	octave_sparse_params class instead.
+
+	* oct-spparms.h, oct-spparms.cc (SparseParams::set_key,
+	SparseParams::get_key): Pass std::string arg by const reference,
+	not const value.
+
+2006-07-15  John W. Eaton  <jwe@octave.org>
+
+	* data-conv.cc: Instantiante swap_bytes templates here.
+
+	* MatrixType.cc (MatrixType::MatrixType):
+	Use complete initializer lists in constructors.
+
+2006-07-06  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.cc (string_vector::string_vector (std::list<std::string>&)):
+	New constructor.
+	* str-vec.h: Provide decl.
+
+2006-07-01  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (tinverse): Check for rows with no elements and zero
+	elements on the diagonal. Allow both Upper and Lower triangular
+	matrices to be treated.
+	* CSparse.cc (tinverse): ditto.
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Take into account 64-bit
+	constant assignment.
+
+2006-06-30  John W. Eaton  <jwe@octave.org>
+
+	* lo-sysdep.cc (octave_chdir): Perform tilde expansion here.
+	* cmd-edit.cc (editor::read_init_file): Ditto.
+	* dir-ops.cc (dir_entry::open): Ditto.
+	* file-stat.cc (stat::update_internal): Ditto.
+	* cmd-hist.cc (command_history::set_file): Ditto.
+
+	* data-conv.cc (data_conv::string_to_data_type):
+	Correctly handle leading "*".
+
+2006-06-29  Atsushi Kajita  <a-kajita@mizar.freemail.ne.jp>
+
+	* Sparse.cc (Sparse<T>::SparseRep::elem): Avoid out of bounds
+	array access.
+
+2006-06-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Finish renaming of OBJECTS -> LIBOCTAVE_OBJECTS.
+
+2006-06-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.cc (octave_dlopen_shlib::close,
+	octave_shl_load_shlib::close, octave_w32_shlib::close):
+	Skip do_close_hook if cl_hook is 0.
+
+2006-06-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.h: Don't include config.h, lo-mappers.h, or quit.h.
+	* randmtzig.h: Don't inlcude config.h.
+
+2006-05-31  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (assignN): Maybe reshape LHS before doing assignment.
+
+2006-05-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-types.h.in: Include stdint.h or inttypes.h for integer
+	typedefs, or define them if those files are not available.
+	* oct-inttypes.h (octave_int8_t, octave_int16_t, octave_int32_t,
+	octave_int64_t, octave_uint8_t, octave_uint16_t, octave_uint32_t,
+	octave_uint64_t): Delete typedefs.  Replace all uses of these
+	types with int8_t, int16_t, etc.
+	* data-conv.h (TWO_BYTE_INT, FOUR_BYTE_INT, EIGHT_BYTE_INT):
+	Delete definitions.  Replace all uses of these macros with int8_t,
+	int16_t, etc.
+	* randmtzig.h: Delete integer typedefs.
+
+2006-05-18  John W. Eaton  <jwe@octave.org>
+
+	* EIG.cc (EIG::init): Trap Inf and NaN values here.
+	From Keith Goodman <kwgoodman@gmail.com>.
+
+2006-05-08  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): fix bug in previous
+	modification.
+
+2006-05-09  David Bateman  <dbateman@free.fr>
+
+	* sparse-dmsolve.cc: Remove reference to ov-re-sparse.h,
+	ov-cx-sparse. and error_state.
+	* SparseQR.cc, SparseCmplxQR.cc (qrsolve): Return info = -1 on error.
+
+2006-05-08  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Set column pointers in
+	first pass and use to determine which algorithm to use on a
+	column-by-column basis.
+
+2006-05-04  David Bateman  <dbateman@free.fr>
+
+	* SparseQR.cc, SparseQR.h, SparseCmplxQR.cc, SparseCmplxQR.h,
+	sparse-dmsolve.cc : Allow compilation with versions v2.0.0 of
+	CXSparse or later
+
+2006-05-03  David Bateman  <dbateman@free.fr>
+
+	* CMatrix.cc (zpotrf, zpocon, zpotrs, ztrcon, ztrtrs):
+	External declaration of lapack triangular and Cholesky codes.
+	(ComplexMatrix::utsolve, ComplexMatrix::ltsolve,
+	ComplexMatrix::fsolve): New private solver codes for
+	upper, lower and LU/Cholesky solvers.
+	(ComplexMatrix::solve): New versions for cached matrix
+	type. Adapt old versions to call new versions
+	* CMatrix.h (utsolve, ltsolve, fsolve): Declaration of
+	new solvers.
+	(solve): New versions for cached matrix type.
+	* dMatrix.cc (dpotrf, dpocon, dpotrs, dtrcon, dtrtrs):
+	External declaration of lapack triangular and Cholesky codes.
+	(Matrix::utsolve, Matrix::ltsolve,
+	Matrix::fsolve): New private solver codes for
+	upper, lower and LU/Cholesky solvers.
+	(Matrix::solve): New versions for cached matrix
+	type. Adapt old versions to call new versions
+	* dMatrix.h (utsolve, ltsolve, fsolve): Declaration of
+	new solvers.
+	(solve): New versions for cached matrix type.
+	* CSparse.cc: Replace all uses of SparseType with MatrixType.
+	* CSparse.h: ditto.
+	* dSparse.cc: ditto.
+	* dSparse.h: ditto.
+	* SparseCmplxCHOL.cc: ditto.
+	* SparsedbleCHOL.cc: ditto.
+	* sparse-dmsolve.cc: ditto.
+	* SparseType.cc, SparseType.h: delete.
+	* MatrixType.cc: New file for class to cache matrix type, based on
+	old SparseType class but caching matrix and sparse types.
+	* MatrixType.h: ditto.
+	* Makefile.in (MATRIX_INC, MATRIX_SRC): Add MatrixType.h and
+	MatrixType.cc respectively. Delete SparseType.h and SparseType.cc
+	respectively.
+	* mx-base.h: Include MatrixTye.h as header file.
+
+2006-05-01  John W. Eaton  <jwe@octave.org>
+
+	* oct-shlib.h (octave_shlib::octave_shlib, octave_shlib::open):
+	Delete WARN_FUTURE arg.  Change all uses.
+	* oct-shlib.cc (octave_base_shlib::stamp_time): Delete arg.
+	Change all uses.  Use current_liboctave_warning_with_id_handler.
+	(octave_base_shlib::open): Delete arg.  Change all derived classes
+	and uses.
+
+2006-04-29  John W. Eaton  <jwe@octave.org>
+
+	* Array-flags.cc, Array-flags.h: Delete.
+	* Makefile.in (MATRIX_SRC): Remove Array-flags.cc from the list.
+	(MATRIX_INC): Remove Array-flags.h from the list.
+
+	* idx-vector.cc (IDX_VEC_REP::freeze): Delete warn_resize arg.
+	Use current_liboctave_warning_with_id_handler
+	with warning ID Octave:resize-on-range-error.
+	* idx-vector.h: Fix decl.
+	* Array.cc, Sparse.cc: Change all callers.
+
+	* Array.cc (Array<T>::maybe_delete_elements, Array<T>::index2,
+	assign2, assignN): Use current_liboctave_warning_with_id_handler
+	with warning ID Octave:fortran-indexing instead of
+	liboctave_wfi_flag.
+	* Sparse.cc (assign, Sparse<T>::index): Likewise.
+
+2006-04-26  John W. Eaton  <jwe@octave.org>
+
+	* pathsearch.cc (dir_path::path_sep_char, dir_path::path_sep_str):
+	New static data.
+	* pathsearch.h: Provide decls.
+	(dir_path::is_path_sep): New function.
+
+2006-04-18  John W. Eaton  <jwe@octave.org>
+
+	* randmtzig.c (randmt, randi53, randi54, randi64, randu32, randu53):
+	Omit inline from decl.
+
+	* Sparse.cc (Sparse<T>::index): Use std::vector<bool> to avoid
+	local array with variable dimension.
+
+2006-04-16  John W. Eaton  <jwe@octave.org>
+
+	* lo-sstream.h: Delete.
+	* Makefile.in (INCLUDES): Remove it from the list.
+
+	* dim-vector.h (dim_vector::str): Use std::ostringstream directly.
+	* Sparse.cc (Sparse::range_error): Likewise.
+	* DASSL.cc (DASSL::error_message): Likewise.
+	* LSODE.cc (LSODE::error_message): Likewise.
+	* DASRT.cc (DASRT::error_message): Likewise.
+	* DASPK.cc (DASPK::error_message): Likewise.
+	* Array.cc (Array::range_error): Likewise.
+
+	* kpse.cc (kpse_hash): Rename from hash.
+	(hash_lookup): Call kpse_hash instead of hash.
+
+	* SparseType.cc (SparseType::SparseType): Use std::vector<bool>
+	to avoid local array with variable dimension.
+
+2006-04-13  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
+	Optimize assignment.
+
+2006-04-13  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.cc (assign (Sparse<LT>&, const Sparse<RT>&)):
+	Eliminate unnecessary casts.
+	* SparsedbleLU.cc (SparseLU::SparseLU): Likewise.
+
+	* kpse.cc (fopen): Use reinterpret_cast instead of C-style cast.
+	(log_search, dir_links): Use static_cast instead of C-style cast.
+
+	* prog-args.cc (args::getopt): Use reinterpret_cast instead of X_CAST.
+	* oct-alloc.cc (allocator::grow): Likewise.
+	* CSparse.cc (SparseComplexMatrix::determinant,
+	SparseComplexMatrix::factorize, SparseComplexMatrix::fsolve):
+	Likewise.
+	* SparseCmplxLU.cc (SparseComplexLU::SparseComplexLU): Likewise.
+
+	* oct-sort.cc (roundupsize, octave_sort<T>::merge_getmem):
+	Use static_cast instead of C-style cast.
+	* CSparse.cc (SparseComplexMatrix::fsolve): Likewise.
+	* dSparse.cc (SparseMatrix::fsolve): Likewise.
+
+	* data-conv.cc (LS_DO_WRITE): Use static_cast for value conversion.
+	Use OCTAVE_LOCAL_BUFFER instead of new/delete.
+	(LS_DO_READ): Allocate local buffer to avoid pointer tricks.
+	(write_doubles, read_doubles, LS_DO_WRITE, LS_DO_READ):
+	Use reinterpret_cast instead of X_CAST.
+
+	* DiagArray2.h (DiagArray2::Proxy::operator&): No need to cast
+	return value here.
+
+2006-04-12  Rafael Laboissiere  <rafael@debian.org>
+
+	* ArrayN.h (ArrayN::ArrayN): Qualify fill with Array<T> base class.
+	* DiagArray2.h (DiagArray2::DiagArray2): Likewise.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* Sparse.cc (Sparse<T>::resize): Use xcidx rather than cdix, etc
+	to avoid copy of original matrix.
+
+	* Makefile.in (INCLUDES): Add randgamma.h, randpoisson.h and
+	randmtzig.h to the list.
+	(LIBOCTAVE_C_SOURCES): Add randgamma.c, randpoisson.c and
+	randmtzig.c to the list.
+	* oct-rand.cc (do_old_initialization): Rename from do_initialization.
+	(use_old_generators): New variable.
+	(old_initialized): Rename from initialized.
+	(new_initialized): New variable.
+	(oct_init_by_entropy): New function.
+	(maybe_initialize): Initialize new or old generator depending on
+	value of use_old_generators.
+	(octave_rand::state): New functions.
+	(octave_rand::distribution): Add gamma, exponential and poisson
+	distributions.
+	(octave_rand::exponential_distribution,
+	octave_rand::poisson_distribution,
+	octave_rand::gamma_distribution): New methods to select
+	exponential, poisson or gamma distribution.
+	(octave_rand::scalar, octave_rand::matrix, octave_rand::nd_array,
+	octave_rand::vector): Add new distributions.
+	* oct-rand.h: Provide decls for new functions.
+	(octave_rand::matrix, octave_rand::scalar, octave_rand::
+	(octave_rand::scalar, octave_rand::matrix, octave_rand::nd_array,
+	octave_rand::vector): New arg A, for gamma and poisson distributions.
+	* randpoisson.c, randpoisson.h, randgamma.c, randmtzig.c,
+	randmtzig.h: New files.
+
+2006-03-24  John W. Eaton  <jwe@octave.org>
+
+	* dSparse.cc (SparseMatrix::bsolve): Integer work vector is
+	Array<octave_idx_type>, so fortran_vec returns pointer to
+	octave_idx_type, not pointer to int.
+
+	* CMatrix.cc, CMatrix.h (ComplexMatrix::row (char*),
+	ComplexMatrix::column (char*)): Delete.
+	* dMatrix.cc, dMatrix.h (Matrix::row (char*),
+	Matrix::column (char*)): Delete.
+
+2006-03-21  David Bateman  <dbateman@free.fr>
+
+	* SparseQR.h: Publish externally used friends.
+	* SparseCmplxQR.h: ditto.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* lo-specfun.cc (betainc): Use F77_XFCN instead of F77_FUNC for
+	call to xdbetai.
+
+2006-03-21  David Bateman  <dbateman@free.fr>
+
+	* lo-specfun.cc (xlgamma, xgamma): Trap special values.
+	(xlgamma): Use F77_XFCN instead of F77_FUNC for call to dlgams.
+
+	* dSparse.cc (solve): Add argument singular_fallback, to allow
+	fallback to QR solvers to be optional.
+	* CSparse.cc (solve): Ditto.
+	* dSparse.h (solve): update declaration for new argument.
+	* CSparse.h (solve): Ditto.
+	* sparse-dmsolve.cc (dmsolve): Use singular_fallback argument
+	to bypass QR solvers when solving the well determined part of
+	the problem.
+
+2006-03-17  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.cc (vector::list_in_columns): New optional arg, width.
+
+2006-03-16  David Bateman  <dbateman@free.fr>
+
+	* CSparse.cc: Change use of nzmax to nnz to allow automatic
+	reduction of matrix size, except for a couple of cases where nzmax
+	is needed.
+	(zpbcon): Correct declaration of lapack zpbcon function.
+	(dsolve, utsolve, ltsolve, trisolve, bsolve, factorize, fsolve): Add
+	an argument to allow the calculation of condition number to be
+	optional.
+	(bsolve): Add code for the calculation of the condition number
+	using zpbcon and zgbcon.
+	(dsolve): Bug fix for rectangular matrices with sparse RHS.
+	(utsolve, ltsolve, trisolve, bsolve, fsolve): Mark matrix type as
+	singular if singularity is detected.
+	(solve): Use optional argument to disable calculation of
+	condition number for all but fsolve, for speed. Add code to
+	allow rectnagular matrices or matrices identified as singular
+	to be treated.
+	(lssolve): delete.
+	(operator *): Don't recast real matrices as complex, but
+	rather use the macro directly on the real data.
+	* dSparse.cc: ditto.
+	* CSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve,
+	fsolve, factorize): Update declaration for new argument to
+	calculate the condition number.
+	(lssolve): delete.
+	* dSparse.h: ditto.
+	* Msparse.h: Change use of nxmax to nnz to allow automatic
+	reduction of matrix size, except for a couple of cases where
+	nzmax is needed.
+	* Sparse.cc: Change use of nxmax to nnz to allow automatic
+	reduction of matrix size, except for a couple of cases where
+	nzmax is needed.
+	(Sparse<T>::index (idx_vector&, idx_vector&, int) const):
+	Special case strict permutations for speed.
+	* Sparse-op-defs.h: Change use of nxmax to nnz to allow automatic
+	reduction of matrix size, except for a couple of cases where
+	nzmax is needed.
+	(SPARSE_SPARSE_MUL, SPARSE_FULL_MUL, FULL_SPARSE_MUL): Update
+	macros to allow mixed complex/real arguments.
+	* SparseCmplxQR.cc (OCTAVE_C99_ZERO): New macro for C99 zero
+	value.
+	(qrsolve): Use it to zero temporary buffers used bt CXSPARSE.
+	* SparseType.cc (SparseType::SparseType ()): Correct detection
+	of permutated triangular matrices to avoid seg-faults. Disable
+	detection of underdetermined lower and over-determined upper
+	matrix due to problems with non minimum norm solutions.
+	* sparse-dmsolve.cc: New file for Dulmage-Mendelsohn solver.
+	* Makefile.in: add sparse-dmsolve.cc to targets.
+
+2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* oct-time.cc (octave_strptime::init): Return useful character count.
+
+2006-03-08  David Bateman  <dbateman@free.fr>
+
+	* SparseCmplxQR.cc: Updates for new upstream CXSPARSE release. Fix for
+	g++ 4.x stl_vector.h issue with C99 double _Complex type.
+	* SparseCmplxQR.h:  Updates for new upstream CXSPARSE release.
+	* SparseQR.cc: ditto.
+	* SparseQR.h: ditto.
+	* oct-sparse.h: ditto.
+	* sparse-base-chol.cc (sparse_base_chol<>::sparse_base_chol_rep::init):
+	Declare info variable as volatile.
+
+	* Sparse.cc (Sparse<T>::transpose (void) const): Accelerate algorithm.
+	* CSparse.cc (SparseComplexMatrix::transpose (void) const): ditto.
+
+2006-03-01  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc (ComplexMatrix::determinant):
+	Scale result by factors of 2, not 10.
+	* dMatrix.cc (Matrix::determinant): Likewise.
+
+	* dbleDET.h (DET::DET): Use initializer list.
+	(DET::coefficient2, DET::coefficient10, DET::exponent2,
+	DET::exponent10): New functions.
+	(DET::det): Delete.
+	(DET::c2, DET::c10, DET::e2, DET::e10, DET::base2): New data members.
+	Store value internally with double and int instead of 2-element
+	double vector.
+	(DET::initialize2, DET::initialize10): Provide decls.
+	* dbleDET.cc (DET::value_will_overflow,	DET::value_will_underflow):
+	Return bool value, not int.
+	(DET::initialize2, DET::initialize10): New functions.
+
+	* CmplxDET.h (ComplexDET::ComplexDET): Use initializer list.
+	(ComplexDET::coefficient2, ComplexDET::coefficient10,
+	ComplexDET::exponent2, ComplexDET::exponent10): New functions.
+	(ComplexDET::det): Delete.
+	(ComplexDET::c2, ComplexDET::c10, ComplexDET::e2, ComplexDET::e10,
+	ComplexDET::base2): New data members.
+	Store value internally with Complex and int instead of 2-element
+	Complex vector.
+	(ComplexDET::initialize2, ComplexDET::initialize10): Provide decls.
+	* dbleComplexDET.cc (ComplexDET::value_will_overflow,
+	ComplexDET::value_will_underflow): Return bool value, not int.
+	(ComplexDET::initialize2, ComplexDET::initialize10): New functions.
+
+2006-02-24  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Clear index before reshaping.
+
+	* Array.h (Array<T>::operator =): Don't set idx to 0 if copying self.
+
+2006-02-20  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (dsolve, utsolve, ltsolve): Remove restriction that
+	matrix must be square in diagonal, permuted diagonal, triangular
+	and permuted triangular back/forward substitution code. Change
+	ambiguous use of no. rows and columns.
+	* CSParse.cc (dsolve, utsolve, ltsolve): ditto.
+	* SparseType.cc (SparseType::SparseType(const SparseMatrix&),
+	SparseType::SparseType(const SparseComplexMatrix&)): Recognize
+	rectangular diagonal, permuted diagonal, triangular and permuted
+	triangular matrices.
+	* Sparse.cc (Sparse<T>::Sparse (octave_idx_type, octave_idx_type, T)):
+	Treat case where third argument is zero.
+
+2006-02-15  John W. Eaton  <jwe@octave.org>
+
+	* kpse.cc: Do define ST_NLINK_TRICK for Cygwin systems.
+	(do_subdir) [ST_NLINK_TRICK]: Check links != 2 instead of links > 2.
+
+	* getopt.c: Use __CYGWIN__ instead of __CYGWIN32__.
+
+2006-02-13  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (LINK_DEPS): Add missing dependencies on colamd,
+	ccolamd and cxsparse
+
+2006-02-13  John W. Eaton  <jwe@octave.org>
+
+	* kpse.cc (kpse_path_iterator::next): Reverse order of tests in
+	while loop condition.
+	(kpse_path_iterator::operator =): Declare as private function but
+	don't define to prevent attempts to use assignment operator.
+	Don't define ST_NLINK_TRICK for Cygwin systems.
+
+2006-02-10  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Store in cummulative
+	product of all dimensions in CP_SZ.
+
+2006-02-09  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Store in cummulative
+	product of all dimensions in CP_SZ.
+
+2006-02-09  David Bateman  <dbateman@free.fr>
+
+	* SparseQR.cc: new file for real sparse QR class.
+	* SparseQR.h: declaration.
+	* SparseCmplxQR.cc: new file for complex sparse QR class.
+	* SparseCmplxQR.h: declaration.
+	* dSparse.cc (dinverse,tinverse,inverse): Remove unused input args.
+	(factorize, fsolve): Enable code code lssolve.
+	(lssolve): disable unused args, write based in above sparse QR class.
+	* CSparse.cc (dinverse,tinverse,inverse): Remove unused input args.
+	(factorize, fsolve): Enable code code lssolve.
+	(lssolve): disable unused args, write based in above sparse QR class.
+	* oct-sparse.h: fix location of colamd, ccolamd and metis headers.
+	Include CXSparse headers.
+	* Makefile.in (MATRIX_INC): Include SparseQR.h and SparseCmplxQR.h.
+	(MATRIX_SRC): Include SparseQR.cc and SparseCmplxQR.cc.
+
+2006-02-08  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.h (calc_permutated_idx): Delete.
+	* Array.cc (permute_vector): New data structure.
+	(permute_vector_compare): New function.
+	(Array<T>::permute): Rewrite to avoid calc_permutated_index for
+	improved performance.
+
+2006-02-04  David Bateman  <dbateman@free.fr>
+
+	* COLAMD: Remove all files, as now unused.
+
+2006-01-31  John W. Eaton  <jwe@octave.org>
+
+	* Sparse.h (Sparse<T>::nzmax): New function.
+	(Sparse<T>::nnz): Rename from nonzero.
+	Change all uses of old nnz function to be nzmax.  Change all uses
+	of nonzero to be nnz.
+	(Sparse<T>::nzmx): Rename from nnz (data member).  Change all uses.
+
+2006-01-21  David Bateman  <dbateman@free.fr>
+
+	* sparse-sort.cc (bool octave_sparse_sidxl_comp): 64-bit fix.
+	(bool octave_idx_vector_comp): New function.
+	(template class octave_sort<octave_idx_vector_sort *>): Instantiate
+	indexed idx_vector sorting function.
+	* sparse-sort.h (class octave_sparse_sort_idxl): 64-bit fix.
+	(class octave_idx_vector_sort): New class for indexed idx_vector
+	sorting.
+	(bool octave_idx_vector_comp): Declaration.
+	* Sparse.cc (int assign1(Sparse<LT>&, Sparse<RT>&)): Treat cases of
+	unordered LHS indexes in assignment using new octave_idx_vector_sort
+	class.
+	(int assign(Sparse<LT>&, Sparse<RT>&)): ditto.
+
+2006-01-30  John W. Eaton  <jwe@octave.org>
+
+	* so-array.h (streamoff_array::nnz): New funtion.
+	* boolNDArray.h (boolNDArray::nnz): New function.
+	* MArrayN.h (MArrayN<T>::nnz): New function.
+	* MArray.h (MArray<T>::nnz): New function.
+
+2006-01-04  David Bateman  <dbateman@free.fr>
+
+	* Spars-op-defs.h (SPARSE_SPARSE_MUL): Previous change resulted in
+	elements not being sorted in return matrix. Sort them, and make
+	solver select between two algorithms to further improve the
+	performance.
+	* dSparse.cc: include oct-sort.h.
+	* CSparse.cc: ditto.
+	* sparse-sort.cc: Instantiate octave_sort<octave_idx_type>.
+
+2005-12-28  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Improved algorithm that is
+	faster in all cases, and significantly so for low density or small
+	order problems.
+
+2005-11-30  John W. Eaton  <jwe@octave.org>
+
+	* LSODE.cc (LSODE::do_integrate (double)): Resize iwork and rwork
+	before setting any values in either array.
+
+2005-11-29  John W. Eaton  <jwe@octave.org>
+
+	* oct-uname.h, oct-uname.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2005-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::indexN): Simplify.
+
+2005-11-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int::operator char (void) const):
+	New conversion op.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (distclean): Also remove oct-types.h.
+	From Quentin Spencer <qspencer@ieee.org>.
+
+2005-10-31  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc, CSparse.cc: Use C++ true/false instead of
+	preprocessor defined TRUE/FALSE.
+
+2005-10-30  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Iterate in direction of DIM.
+	(MX_ND_CUMULATIVE_OP): Likewise.
+
+2005-10-29  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Avoid increment_index to speed
+	things up.  Simplify.
+
+	* Array.cc (Array<T>::indexN): Simplify.  Delete separate special
+	case for "vector_equivalent".
+
+	* Array-util.cc (vector_equivalent): Arg is now dim_vector.
+
+2005-10-28  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h: Fix typo in HAVE_UFSPARSE_UMFPACK_H.
+	From Quentin Spencer <qspencer@ieee.org>.
+
+	* sparse-base-chol.cc: Use C++ true/false instead of
+	preprocessor defined TRUE/FALSE.  Use 0 instead of NULL.
+
+2005-10-27  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Reshape to final size instead of resizing.
+
+2005-10-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-sparse.h: New file.
+	* oct-sparse.h.in: Delete.
+
+2005-10-26  David Bateman  <dbateman@free.fr>
+
+	* sparse-base-chol.h: Include cholmod specific code in HAVE_CHOLMOD
+	* sparse-base-chol.cc: ditto.
+
+2005-10-26  John W. Eaton  <jwe@octave.org>
+
+	Changes for GCC 4.1, tip from Arno J. Klaassen
+	<arno@heho.snv.jussieu.fr>:
+
+	* dSparse.h (real (const SparseComplexMatrix&)):
+	Publish externally used friend function.
+	(imag (const SparseComplexMatrix&)): Likewise.
+
+	* dColVector.h (real (const ComplexColumnVector&)):
+	Publish externally used friend function.
+	(imag (const ComplexColumnVector&)): Likewise.
+
+	* dNDArray.h (real (const ComplexNDArray&)):
+	Publish externally used friend function.
+	(imag (const ComplexNDArray&)): Likewise.
+
+	* dMatrix.h (operator * (const ComplexMatrix&)):
+	Move decl outside class.  No need to be friend.
+	(real (const ComplexMatrix&)): Publish externally used friend function.
+	(imag (const ComplexMatrix&)): Likewise.
+
+	* CMatrix.h: (operator * (const ColumnVector&, const
+	ComplexRowVector&)): Move decl outside class.  No need to be friend.
+	(operator * (const ComplexColumnVector&, const RowVector&)): Likewise.
+	(operator * (const ComplexColumnVector&, const ComplexRowVector& b)):
+	Likewise.
+
+2005-10-23  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Check whether trailing zero
+	elements need to be removed.
+
+	* oct-sparse.h.in: Include metis headers and some macros for long/int
+	versions of cholmod.
+
+	* CSparse.cc (tinverse): New private function for the inversion of
+	an upper triangular matrix.
+	(dinverse): ditto for diagonal matrices.
+	(inverse): Add SparseType as an argument. Implement matrix inverse
+	using tinverse and dinverse.
+	(fsolve): Use cholmod to implement Cholesky solver.
+	* CSparse.h (tinverse, dinverse): Declarations
+	(inverse): Alter declaration to include SparseType.
+
+	* dSparse.cc (tinverse, dinverse, inverse, fsolve): ditto.
+	* dSparse.h (tinverse, dinverse, inverse): ditto.
+
+	* SparseType.cc: Fix complex constructor for hermitian matrices.
+
+	* sparse-util.cc: New file for sparse utility functions.
+	* sparse-util.h: New file with declarations of sparse utility
+	functions.
+
+	* sparse-base-chol.cc: New file with sparse cholesky class based
+	on cholmod.
+	* sparse-base-chol.h: New file with declaration of sparse cholesky
+	class based on cholmod.
+
+	* SparseCmplxCHOL.cc: Instantiate sparse cholesky class for Complex.
+	* SparseCmplxCHOL.h: Declaration of sparse cholesky class.
+
+	* SparsedbleCHOL.cc: ditto.
+	* SparsedbleCHOL.h: ditto.
+
+	* Makefile.in (MATRIX_INC): Include sparse-base-chol.h.
+	(INCLUDES): Include sparse-util.h
+	(TEMPLATE_SRC): Include sparse-base-chol.cc
+	(MATRIX_SRC): Include SparseCmplxCHOL.cc and SparsedbleCHOL.cc
+
+2005-10-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-env.cc (octave_env::have_x11_display): New function.
+	* oct-env.h: Provide decl.
+
+2005-09-29  John W. Eaton  <jwe@octave.org>
+
+	* file-stat.h (file_stat::mode): New function.
+
+	* file-stat.cc (file_stat::is_blk, file_stat::is_chr,
+	file_stat::is_dir, file_stat::is_fifo, file_stat::is_lnk,
+	file_stat::is_reg, file_stat::is_sock): New static functions.
+	* file-stat.h: Provide decls.
+
+2005-09-28  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::recursive_rmdir): New function.
+	* file-ops.h: Provide decl.
+
+2005-09-19  David Bateman  <dbateman@free.fr>
+
+	* oct-env.cc (octave_env::do_get_home_directory):
+	Also check HOMEDRIVE under mingw.
+
+	* Makefile.in (LINK_DEPS): Include UFsparse libraries.
+
+2005-09-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-syscalls.cc: Include lo-utils.h here.
+	(octave_syscalls::waitpid): Call octave_waitpid here.
+
+	* lo-cutils.c (octave_waitpid): New function.
+	* lo-utils.h: Provide decl.  Include syswait.h here, not in
+	oct-syscalls.cc
+
+
+	* syswait.h [__MINGW32__]: Define WAITPID here instead of defining
+	waitpid in src/sysdep.h.  Make this header C-compatible.
+
+	* oct-syscalls.cc (octave_syscalls::waitpid): New arg, status.
+	Change all uses.
+
+2005-09-15  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (MAKEDEPS_2): Omit unnecessary variable.
+
+	* oct-sparse.h.in: New file.
+	* Makefile.in (DISTFILES): Include it in the list.
+	(INCLUDES): Add oct-sparse.h to the list.
+
+2005-09-15  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc : Include oct-sparse.h for probed umfpack, colamd etc
+	headers. Remove include of umfpack.h.
+	* CSparse.cc : ditto.
+	* SparsedbleLU.cc : ditto.
+	* SparseCmplxLU.cc : ditto.
+
+	* COLAMD : Remove colamd files from octave.
+	* COLAMD.files : delete.
+	* COLAMD.README : delete.
+	* Makefile.in: Remove COLAMD. Add LIBGLOB.
+	(LN_S): Change to DESTDIR before LN_S to avoid lack of symlinks
+	under mingw.
+
+	* kpse.cc (ENV_SEP, ENV_SEP_STRING): Use SEPCHAR and SEPCHAR_STR
+	in definition.
+	* lo-cutils.c (octave_w32_library_search): Call GetProcAddress with
+	change of cast not allowed under g++ 3.x.
+	* lo-utils.h (octave_w32_library_search): Declaration.
+	* oct-env.cc (do_get_home_directory): Also check HOMEPATH under mingw.
+	* oct-shlib.cc (octave_w32_shlib::search): Use octave_w32_library_search.
+
+2005-09-07  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (command_editor::do_decode_prompt_string):  Update
+	based on current code in Bash.  Handle a few more escape
+	sequences.  Do a better job of decoding \W.
+
+2005-09-04  David Bateman  <dbateman@free.fr>
+
+	* COLAMD: Update version of colamd to v2.4.
+	* COLAMD.files: Add colamd_global.c to COLAMD_SRC and second build of
+	colamd.c for long version.
+
+2005-08-25  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (FULL_SPARSE_MUL, SPARSE_FULL_MUL): Macro for
+	mixed sparse/full multiply.
+	* dSparse.cc (operator *), CSparse.cc (operator *): New operators for
+	mixed sparse/full multiply.
+	* dSparse.h (operator *), CSparse.h (operator *): Declaration of
+	mixed sparse/full multiply operators.
+
+2005-07-25   Erik de Castro Lopo  <erikd@zip.com.au>
+
+	* oct-inttypes.h (OCTAVE_S_US_FTR): Compare <= 0 instead of < 0 to
+	avoid warnings for unsigned types.
+
+2005-07-07  John W. Eaton  <jwe@octave.org>
+
+	* dSparse.cc (SparseMatrix::factorize): Initialize Numeric to 0.
+	* CSparse.cc (SparseComplexMatrix::factorize:) Likewise.
+
+2005-06-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-rl-edit.c (flush_stdout): Rename from no_redisplay.
+	Flush stdout here.
+	(octave_rl_clear_screen): Set rl_redisplay_function to flush_stdout.
+
+	* Array.h (Array::resize): Change int args to octave_idx_type.
+
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+	* CMatrix.cc, CNDArray.cc, CSparse.cc, dMatrix.cc, dNDArray.cc,
+	dSparse.cc, lo-cieee.c, lo-mappers.cc: Change all uses of
+	octave_is_NaN_or_NA to xisnan.
+
+	* lo-mappers.h (octave_is_NaN_or_NA): Mark with GCC_ATTR_DEPRECATED.
+	* lo-ieee.h (lo_ieee_is_NaN_or_NA): Likewise.
+
+	* lo-cieee.c (lo_ieee_is_NaN_or_NA): Now just a wrapper for
+	lo_ieee_isnan.
+
+	* dMatrix.cc (Matrix::too_large_for_float): Only check if abs
+	value is greater than FLT_MAX.
+	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
+	* dNDArray.cc (NDArray::too_large_for_float): Ditto.
+	* CNDArray.cc (ComplexNDArray::too_large_for_float): Ditto.
+
+	* dMatrix.cc (Matrix::too_large_for_float): Special case Inf
+	values too.
+	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
+
+	* dNDArray.cc (NDArray::too_large_for_float): Likewise for NaN,
+	NA, Inf values.
+	* CNDArray.cc (ComplexNDArray::too_large_for_float): Ditto.
+
+2005-06-14  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (Matrix::too_large_for_float): Special case NaN and
+	NA values.
+	* CMatrix.cc (ComplexMatrix::too_large_for_float): Ditto.
+
+2005-06-02  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Try harder to correctly resize previously
+	empty LHS.
+
+2005-05-16  David Bateman  <dbateman@free.fr>
+
+	* dSparse.h: Change UMFPACK_LONG_IDX to IDX_TYPE_LONG.
+	* CSparse.h: ditto.
+
+2005-05-10  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (determinant): Free numeric factorization after
+	sucessful calculation.
+	* CSparse.cc (determinant): ditto.
+
+2005-05-06  John W. Eaton  <jwe@octave.org>
+
+	* dbleCHOL.cc (CHOL::init): Use xelem instead of elem for indexing
+	chol_mat.
+	(chol2mat_internal, chol2mat, CHOL::inverse): New functions.
+	* dbleCHOL.h (chol2mat_internal, chol2mat, CHOL::inverse):
+	Provide decls.
+
+	* CmplxChol.cc (ComplexCHOL::init): Use xelem instead of elem for
+	indexing chol_mat.
+	(chol2mat_internal, chol2mat, ComplexCHOL::inverse): New functions.
+	* CmplxCHOL.h (chol2mat_internal, chol2mat, CmplxCHOL::inverse):
+	Provide decls.
+
+2005-05-05  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::permute): Call chop_trailing_singletons on
+	retval before return.
+
+2005-05-04  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (gnu_readline::do_readline): Extract const char*
+	from prompt outside of INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE block.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): List $(UMFPACK_LIBS) ahead of $(BLAS_LIBS).
+	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
+
+2005-04-29  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (trisolve): Diagonal passed to lapack zptsv is type
+	double.  Correct indexing for upper diagonal elements for sparse
+	tridiagonal.
+	* CSparse.cc (trisolve): ditto.
+
+	* CSparse.h (UMFPACK_ZNAME): Define macro to pick version of
+	UMFPACK for 64-bit.
+	* CSparse.cc (UMFPACK_ZNAME): Replace all umfpack_zi_* with
+	UMFPACK_ZNAME(*).
+	* SparseCmplxLU.cc (UMFPACK_ZNAME): ditto
+
+	* dSparse.h (UMFPACK_DNAME): Define macro to pick version of
+	UMFPACK for 64-bit.
+	* dSparse.cc (UMFPACK_DNAME): Replace all umfpack_di_* with
+	UMFPACK_DNAME(*).
+	* SparsedbleLU.cc (UMFPACK_DNAME): ditto
+
+	* dSparse.cc (ltsolve, utsolve): Correct permuted upper/lower
+	triangular back/forward substitution code.
+	* CSparse.cc (ltsolve, utsolve): ditto.
+
+	* dSparse.cc (solve): Use mattype.type (false) to force messaging
+	from spparms("spumoni",1).
+	* CSparse.cc (solve): ditto
+
+	* SparseType.cc (SparseType(void)): Print info for
+	spparms("spumoni",1).
+	(SparseType(const matrix_type), SparseType(const matrix_type, const
+	octave_idx_type, const octave_idx_type*), SparseType(const matrix_type,
+	const octave_idx_type, const octave_idx_type)): New constructors.
+	(SparseType (const SparseMatrix&), SparseType (SparseComplexMatrix&)):
+	Detect row permuted lower triangular and column permuted upper
+	triangular matrices. Remove one of the permutation vectors..
+
+	* SparseType.h: Simplify the permutation code.
+	(SparseType(const matrix_type), SparseType
+	(const matrix_type, const octave_idx_type, const octave_idx_type*),
+	SparseType(const matrix_type, const octave_idx_type,
+	const octave_idx_type)): Declarations.
+
+2005-04-25  John W. Eaton  <jwe@octave.org>
+
+	* str-vec.cc (string_vector::delete_c_str_vec): Correctly free
+	array and its contents.
+
+2005-04-22  John W. Eaton  <jwe@octave.org>
+
+	* oct-rl-edit.c (octave_rl_set_terminal_name): Don't cast away
+	const here now that rl_terminal_name is declared const char*.
+
+2005-04-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DISTFILES): Include oct-types.h.in in the list.
+
+2005-04-19  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Don't crash if the index list is empty.
+
+2005-04-14  David Bateman  <dbateman@free.fr>
+
+	* SparseCmplxLU.cc: Add flags for incomplete factorization.
+	* SparsedbleLU.cc: Ditto.
+	* SparseCmplxLU.h: Definition.
+	* SparsedbleLU.h: ditto.
+
+	* SparseType.cc (transpose): New function.
+	* SparseType.h (transpose): Definition.
+
+2005-04-11  John W. Eaton  <jwe@octave.org>
+
+	* lo-specfun.cc: Use F77_XFCN instead of F77_FUNC for calls to
+	fortran code that could end up calling XSTOPX.
+
+2005-04-10  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: include oct-types in INCLUDES so that it is
+	installed
+
+2005-04-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (clean): Use exact filenames instead of *.xxx.
+
+	* Initial merge of 64-bit changes from Clinton Chee:
+
+	2005-04-07  John W. Eaton  <jwe@octave.org>
+
+	* MArray-i.cc, Array-i.cc: Instantiate Array<long> and MArray<long>.
+
+	* CSparse.cc, CSparse.h, MSparse.cc, MSparse.h, Sparse-op-defs.h,
+	Sparse.cc, Sparse.h, SparseCmplxLU.cc, SparseType.cc,
+	SparseType.h, SparsedbleLU.cc, boolSparse.cc, boolSparse.h,
+	dSparse.cc, dSparse.h, sparse-base-lu.cc:
+	Use octave_idx_type instead of int where needed.
+
+	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
+
+	* Array-util.cc, Array-util.h, Array.cc,Array.h, Array2.h,
+	Array3.h, ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
+	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
+	CMatrix.h, CNDArray.cc, CNDArray.h, CRowVector.cc, CRowVector.h,
+	CmplxAEPBAL.cc, CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h,
+	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc,
+	CmplxSCHUR.cc, CmplxSCHUR.h, CmplxSVD.cc, CmplxSVD.h, CollocWt.cc,
+	CollocWt.h, DAEFunc.h, DASPK-opts.in,DASPK.cc,DASPK.h,
+	DASRT-opts.in, DASRT.cc, DASRT.h, DASSL-opts.in, DASSL.cc,
+	DASSL.h, DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc,
+	FEGrid.h, LPsolve.cc, LPsolve.h, LSODE-opts.in, LSODE.cc, LSODE.h,
+	MArray-defs.h, MArray.cc, MArray.h, MArray2.cc, MArray2.h,
+	MArrayN.cc, MDiagArray2.cc, MDiagArray2.h, NLConst.h, NLEqn.cc,
+	NLEqn.h, Quad.cc, Quad.h, Range.cc,Range.cc, Range.h, base-de.h,
+	base-lu.cc, base-lu.h, base-min.h, boolMatrix.cc, boolMatrix.h,
+	boolNDArray.cc, boolNDArray.h, chMatrix.cc, chMatrix.h,
+	chNDArray.cc, chNDArray.h, dColVector.cc, dColVector.h,
+	dDiagMatrix.cc, dDiagMatrix.h, dMatrix.cc, dMatrix.h,
+	dNDArray.cc,dNDArray.cc, dNDArray.h, dRowVector.cc, dRowVector.h,
+	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleHESS.cc,
+	dbleHESS.h, dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc,
+	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, dim-vector.h, idx-vector.cc,
+	idx-vector.h, intNDArray.cc, intNDArray.h, lo-specfun.cc,
+	lo-specfun.h, mach-info.cc, mx-inlines.cc, oct-fftw.cc,
+	oct-fftw.h, oct-rand.cc, oct-rand.h, so-array.cc, so-array.h,
+	str-vec.cc, str-vec.h:
+	Use octave_idx_type instead of int where needed.
+
+	2005-04-01  John W. Eaton  <jwe@octave.org>
+
+	* dim-vector.h, lo-utils.h: Include oct-types.h.
+
+	* oct-types.h.in: New file.
+
+	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
+
+	* lo-utils.cc (NINTbig): New function.
+	* lo-utils.h: Provide decl.
+
+2005-04-06  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: Link to UMFPACK_LIBS.
+
+2005-04-05  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Avoid shadowed declaration in previous change.
+
+2005-04-01  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): For A(IDX-LIST) = RHS with A previously
+	undefined, correctly match colons in IDX-LIST with RHS dimensions
+	when resizing A.  When performing the assignment, just check that
+	the number of elements in RHS matches the number of elements
+	indexed by IDX-LIST.
+
+2005-03-30  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (log10, tan, tanh): Delete functions.
+	* lo-mappers.h (log10, tan, tanh): Delete decls.
+
+	* CColVector.cc, CNDArray.cc, CRowVector.cc, CSparse.cc,
+	dSparse.cc: Use std:: for Complex functions instead of relying on
+	wrappers from oct-cmplx.h.
+
+	* oct-cmplx.h: Provide typedef only.
+
+	* DiagArray2.cc (xelem): Don't use initializer for static data.
+	* DiagArray2.h (DiagArray<T>::Proxy::operator T ()):
+	Likewise.
+
+2005-03-26  John W. Eaton  <jwe@octave.org>
+
+	* cmd-edit.cc (do_readline): Wrap call to ::octave_rl_readline
+	with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
+
+2005-03-15  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (MATRIX_INC): Remove oct-spparms.h from the list.
+
+2005-03-14  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DISTFILES): Don't include $(UMFPACK_EXTRAS).
+	(DISTDIRS): Don't include UMFPACK.
+	(LIBOCTAVE_OBJECTS): Don't include $(UMFPACK_OBJ).
+	(UMFPACK_SPECIAL_1, UMFPACK_SPECIAL): No need for special include
+	flags for these files.
+	Don't include include $(srcdir)/UMFPACK.files.
+	Don't include include $(srcdir)/UMFPACK.rules.
+
+	* UMFPACK.README, UMFPACK.files, UMFPACK.patch, UMFPACK.rules:
+	Delete files.
+	* UMFPACK: Delete directory tree.
+
+	* dSparse.cc: Include <umfpack/umfpack.h> instead of just "umfpack.h".
+	* CSparse.cc: Likewise.
+	* SparsedbleLU.cc: Likewise.
+	* SparseCmplxLU.cc: Likewise.
+
+2005-03-14  David Bateman  <dbateman@free.org>
+
+	* CSParse.cc, SparseCmplxLU.cc, SparsedbleLU.cc, dSparse.cc:
+	Allow compilation to succeed if UMFPACK is not available.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (bin-dist): Delete target.
+	(BINDISTLIBS, BINDISTFILES): Delete variables.
+
+2005-03-01  John W. Eaton  <jwe@octave.org>
+
+	* ODESSA.h, ODESSA.cc, ODESSA-opts.in: Delete.
+	* Makefile.in: Remove them from the lists.
+
+2005-02-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (LINK_DEPS): Remove -lglob from the list.
+
+2005-02-27  David Bateman  <dbateman@free.org>
+
+	* Sparse.cc (Sparse<T>::reshape): Set cidx for the N last elements
+	in the sparse matrix.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	Sparse merge.
+
+	2005-02-13  David Bateman  <dbateman@free.fr>
+
+	* CSparse.cc (SparseComplexMatrix:dsolve, SparseComplexMatrix:utsolve,
+	SparseComplexMatrix::ltsolve, SparseComplexMatrix::trisolve,
+	SparseComplexMatrix::bsolve, SparseComplexMatrix:fsolve): Split sparse
+	solver into separate functions for the diagonal, upper, lower
+	triangular, tridiagonal, banded and full cases.
+	(SparseComplexMatrix::solve): rewrite to call the above function. One
+	version that probes the matrix type and another that assumes the type
+	is passed.
+
+	* dSparse.cc (SparseMatrix:dsolve, SparseMatrix:utsolve,
+	SparseMatrix::ltsolve, SparseMatrix::trisolve,
+	SparseMatrix::bsolve, SparseMatrix:fsolve): Likewise
+	(SparseMatrix::solve): Likewise
+
+	* CSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve, fsolve):
+	Declaration of new functions
+	* dSparse.h (dsolve, utsolve, ltsolve, trisolve, bsolve, fsolve):
+	Likewise
+
+	* CSparse.cc (operator !): Reverse the sense of the test.
+	* dSpase.cc (operator !): Likewise
+
+	* dSparse.h (type, band_size, is_dense, triangular_row_perm,
+	triangular_col_perm, sparse_info): Remove matrix type code
+	* CSparse.h (type, band_size, is_dense, triangular_row_perm,
+	triangular_col_perm, sparse_info): Likewise
+	* boolSparse.h (type, band_size, is_dense, triangular_row_perm,
+	triangular_col_perm, sparse_info): Likewise
+	* MSparse.h (type, band_size, is_dense, triangular_row_perm,
+	triangular_col_perm, sparse_info): Likewise
+	* Sparse.h (type, band_size, is_dense, triangular_row_perm,
+	triangular_col_perm, sparse_info, matrix_type): Likewise
+
+	* Sparse.cc (type, sparse_info, band_size): Remove type code
+
+	* SparseType.h: New class for the matrix type used in solvers
+	* SparseType.cc: methods of sparse matrix type class
+
+	* Makefile.in: Add SparseType.cc
+
+	2005-02-01  David Bateman  <dbateman@free.fr>
+
+	* UMFPACK: Update to version 4.4
+	* UMFPACK.patch: Version 4.4 contains most of the previous patch. Only
+	keep octave specific test files
+
+	2005-01-23  David Bateman  <dbateman@free.fr>
+
+	* dSparse.cc (SparseMatrix::solve): Include tridiagonal, cholesky
+	tridiagonal and banded cholesky solvers. Remove calculation of
+	condition number for banded solvers.
+	* CSparse.cc (SparseComplexMatrix::solve): ditto.
+
+	* Sparse.h (int type (int) const, bool is_dense (void) const):
+	new functions.
+	* MSparse.h (int type (int) const, bool is_dense (void) const): ditto
+	* dSparse.h (int type (int) const, bool is_dense (void) const): ditto
+	* CSparse.h (int type (int) const, bool is_dense (void) const): ditto
+	* boolSparse.h (int type (int) const, bool is_dense (void) const):
+	ditto
+
+	* Sparse.cc (int Sparse<T>::type (int) const,
+	bool Sparse<T>::is_dense (void) const): New functions definition
+
+	* Sparse.h (matrix_type typ): Move caching of matrix type to SparseRep,
+	so it actually is cached, but disable
+
+	* oct-spparms.cc (SparseParams::init_keys): Change spmoni to spumoni
+	for compatiability
+
+	2005-01-18  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T>::insert (const Array<T>&, const Array<int>&)):
+	Modify calculation of number elements to skip between copied blocks.
+
+	2005-01-07  David Bateman  <dbateman@free.fr>
+
+	* Sparse.h : Reverse definitions of numel and nelem.
+	* Sparse.cc (assign1): Use numel and not nelem
+	* Sparse-op-def.h: Replace all uses of nelem with numel
+
+	2005-01-07  David Bateman  <dbateman@free.fr>
+
+	* dbleDET.h: Make SparseMatrix a friend of the class DET
+	* CmplexDET.h: Make SparseComplexMatrix a friend of the class
+	ComplexDET
+	* dSparse.cc (SparseMatrix::determinant): Replace use of SparseDET
+	by DET
+	* dSparse.h (determinant): ditto
+	* CSparse.cc (SparseComplexMatrix::determinant): Replace use of
+	SparseComplexDET by ComplexDET
+	* CSparse.h (determinant): ditto
+	* SparsedbleDET.h, SparsedbleDET.cc, SparseCmplxDET.h,
+	SparseCmplxDET.cc: delete files
+	* Makefile.in: Delete reference to SparsedbleDET.h, SparsedbleDET.cc,
+	SparseCmplxDET.h andSparseCmplxDET.cc.
+
+	* CSparse.cc (SparseComplexMatrix::solve): Store matrix type in
+	local variable to avoid variable shadowing.
+	* dSparse.cc (SparseMatrix::solve): ditto.
+
+	* boolSparse.cc boolSparse.h CSparse.cc CSparse.h dSparse.cc
+	dSparse.h MSparse.cc MSparse-C.cc MSparse-d.cc MSparse-defs.h
+   	MSparse.h oct-spparms.cc oct-spparms.h Sparse-b.cc Sparse.cc
+	Sparse-C.cc SparseCmplxLU.cc SparseCmplxLU.h SparsedbleLU.cc
+	SparsedbleLU.h Sparse-d.cc Sparse.h Sparse-op-defs.h sparse-sort.cc
+	sparse-sort.h: Remove additional licensing clause with authors
+	permission.
+
+	2004-12-30  John W. Eaton  <jwe@octave.org>
+
+	* MSparse.cc (SPARSE_A2S_OP_2, SPARSE_SA2_OP_2):
+	Loop counter is int, not size_t.
+
+	* oct-spparms.cc (SparseParams::operator =): Return *this.
+
+	* Sparse-op-defs.h (SPARSE_SPARSE_MUL): Delete unused variable tmpval.
+
+	* dSparse.cc (operator << (ostream&, const SparseMatrix&), atan2):
+	Delete unused variables.
+	(SparseMatrix::solve): Avoid warnings about uninitialized
+	variables and variables that might be clobbered by longjmp.
+
+	* CSparse.cc (operator << (ostream&, const SparseComplexMatrix&),
+	min, max): Delete unused variables.
+	(SparseComplexMatrix::solve): Avoid warnings about uninitialized
+	variables and variables that might be clobbered by longjmp.
+
+	* Makefile.in (UMFPACK_SPECIAL): Include .d files in the list.
+
+	* Sparse-op-defs.h (SPARSE_SMS_BIN_OP_2, SPARSE_SSM_BIN_OP_2):
+	Loop counter is int, not size_t.
+
+	* CSparse.cc (SparseComplexMatrix::hermitian): Avoid shadow warnings.
+	* Sparse.cc (Sparse<T>::Sparse, Sparse<T>::type, assign): Likewise.
+
+	* Sparse.h (Sparse::SparseRep): Order data members and initializer
+	lists consistently.
+
+	* mx-base.h: Include boolSparse.h, dSparse.h, and CSparse.h.
+
+	2004-12-29  John W. Eaton  <jwe@octave.org>
+
+	* COLAMD.files (COLAMD_EXTRAS): New variable.
+	* UMFPACK.files (UMFPACK_EXTRAS): New variable.
+	* Makefile.in (DISTFILES): Add $(COLAMD_EXTRAS) and
+	$(UMFPACK_EXTRAS) to the list.
+	(DISTDIRS): New variable.
+	(dist): Handle $(DISTDIRS).
+
+	Merge of sparse code from David Bateman <dbateman@free.fr> and
+	Andy Adler <adler@site.uottawa.ca>.
+
+	* Makefile.in (VPATH): ADD @srcdir@/COLAMD to the list.
+
+	* Makefile.in (MAKEDEPS): Include $(COLAMD_SRC) and $(UMFPACK_SRC)
+	without directory prefix.
+
+	* Makefile.in (LIBOCTAVE_OBJECTS): Add $(COLAMD_OBJ) and
+	$(UMFPACK_OBJ) to the list.
+
+	* COLAMD: New directory.
+	* COLAMD.files: New file.
+	* Makefile.in: Include COLAMD.files.
+	(SOURCES): Add $(COLAMD_SOURCES) to the list.
+	(LIBOCTAVE_OBJECTS): Add $(COLAMD_OBJECTS) to the list.
+	(INCLUDES): Add $(COLAMD_INCLUDES) to the list.
+
+	* UMFPACK: New directory.
+	* UMFPACK.patch, UMFPACK.README, UMFPACK.files, UMFPACK.rules:
+	New files.
+	* Makefile.in: Include UMFPACK.files and UMFPACK.rules.
+	(SOURCES): Add $(UMFPACK_SOURCES) to the list.
+	(LIBOCTAVE_OBJECTS): Add $(UMFPACK_OBJECTS) to the list.
+	(INCLUDES): Add $(UMFPACK_INCLUDES) to the list.
+
+	* Makefile.in (SPARSE_MX_OP_INC): New variable.
+	(INCLUDES): Add it to the list.
+	(SPARSE_MX_OP_SRC): New variable.
+	(LIBOCTAVE_CXX_SOURCES): Add it to the list.
+	(distclean): Remove $(SPARSE_MX_OP_INC) and $(SPARSE_MX_OP_SRC).
+	(stamp-prereq): Depend on $(SPARSE_MX_OP_INC) and $(SPARSE_MX_OP_SRC).
+
+	* sparse-mk-ops.awk, sparse-mx-ops: New files.
+	* Makefile.in (DISTFILES): Add them to the lists.
+
+	* oct-spparms.h, sparse-sort.h: New files.
+	* Makefile.in (INCLUDES): Add them to the list.
+
+	* oct-spparms.cc, sparse-sort.cc: New files.
+	* Makefile.in (LIBOCTAVE_CXX_SOURCES): Add them to the list.
+
+	* sparse-base-lu.cc: New file.
+	* Makefile.in (TEMPLATE_SRC): Add it to the list.
+
+	* boolSparse.cc, CSparse.cc, dSparse.cc, MSparse.cc, Sparse.cc,
+	SparseCmplxDET.cc, SparseCmplxLU.cc, SparsedbleDET.cc,
+	SparsedbleLU.cc: New files.
+	* Makefile.in (MATRIX_SRC): Add them to the list.
+
+	* boolSparse.h, CSparse.h, dSparse.h, MSparse-defs.h, MSparse.h,
+	Sparse.h, oct-spparms.h, sparse-base-lu.h, SparseCmplxDET.h,
+	SparseCmplxLU.h, SparsedbleDET.h, SparsedbleLU.h,
+	Sparse-op-defs.h: New files.
+	* Makefile.in (MATRIX_INC): Add them to the appropriate lists.
+
+	* MSparse-d.cc, MSparse-C.cc, Sparse-b.cc, Sparse-d.cc,
+	Sparse-C.cc: New files.
+	* Makefile.in (TI_SRC): Add them to the list.
+
+2005-02-18  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::canonicalize_file_name) [HAVE_RESOLVEPATH]:
+	Pass current directory to octave_env::make_absolute.
+	Save value returned from octave_env::make_absolute in local var.
+	Pass const char*, not std::string as first arg of resolvepath.
+	Provide decl for resolved_len.
+
+2005-02-18  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::permute): Allow permutation vector longer
+	than number of dimenensions of permuted matrix.
+
+	* Array.cc (Array<T>::permute): Use zero-based indexing for perm_vec.
+	* Array-util.cc (calc_permutated_idx): Likewise.
+
+2005-02-10  David Bateman  <dbateman@free.fr>
+
+	* CNDArray.cc (ComplexNDarray::operator !): Change sense of test.
+	* CMatrix.cc (ComplexMatrix::operator !): Likewise.
+
+2005-02-09  John W. Eaton  <jwe@octave.org>
+
+	* file-ops.cc (file_ops::canonicalize_file_name): New functions.
+	* file-ops.h: Provide decls.
+
+	* kpse.cc (kpse_tilde_expand): Simply return NAME if it is empty.
+
+2005-02-08  John W. Eaton  <jwe@octave.org>
+
+	* Array-util.cc (freeze): Improve error message.
+
+2005-01-26  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T>::insert): Handle generic case, not just
+	special case for fast concatenation.
+
+2005-01-18  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Delete RET_ELT_TYPE arg.
+	Change all uses.  Use VAL instead of RET_ELT_TYPE when resizing.
+
+	* dNDArray.cc (NDArray::any): NaN does not count as a nonzero value.
+	* CNDArray.cc (ComplexNDArray::any): Likewise.
+
+2005-01-18  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T>::insert (const Array<T>&, const Array<int>&)):
+	Modify calculation of number elements to skip between copied blocks.
+
+2005-01-18  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.cc (IDX_VEC_REP::freeze): Call warning handler, not
+	error handler, to warn about resizing.
+
+2004-12-27  Martin Dalecki  <martin@dalecki.de>
+
+	* Array.cc, ArrayN.cc, base-lu.cc, boolMatrix.cc, boolNDArray.cc,
+	Bounds.cc, CColVector.cc, CDiagMatrix.cc, chMatrix.cc,
+	chNDArray.cc, CMatrix.cc, CmplxAEPBAL.cc, CmplxCHOL.cc,
+	CmplxDET.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc,
+	CmplxSCHUR.cc, CmplxSVD.cc, CNDArray.cc, CollocWt.cc,
+	CRowVector.cc, DASPK.cc, DASRT.cc, DASSL.cc, dbleAEPBAL.cc,
+	dbleCHOL.cc, dbleDET.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc,
+	dbleQRP.cc, dbleSCHUR.cc, dbleSVD.cc, dColVector.cc,
+	dDiagMatrix.cc, DiagArray2.cc, dMatrix.cc, dNDArray.cc,
+	dRowVector.cc, EIG.cc, FEGrid.cc, idx-vector.cc, int16NDArray.cc,
+	int32NDArray.cc, int64NDArray.cc, int8NDArray.cc, intNDArray.cc,
+	LinConst.cc, LPsolve.cc, LSODE.cc, MArray2.cc, MArray.cc,
+	MArrayN.cc, MDiagArray2.cc, NLEqn.cc, oct-alloc.cc, ODES.cc,
+	ODESSA.cc, Quad.cc, Range.cc, so-array.cc, uint16NDArray.cc,
+	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc:
+	Delete #pragma implementation.
+
+	* Array2.h, Array3.h, Array.h, ArrayN.h, base-lu.h, boolMatrix.h,
+	boolNDArray.h, Bounds.h, CColVector.h, CDiagMatrix.h, chMatrix.h,
+	chNDArray.h, CMatrix.h, CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h,
+	CmplxHESS.h, CmplxLU.h, CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h,
+	CmplxSVD.h, CNDArray.h, CollocWt.h, CRowVector.h, DASPK.h,
+	DASRT.h, DASSL.h, dbleAEPBAL.h, dbleCHOL.h, dbleDET.h, dbleHESS.h,
+	dbleLU.h, dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h,
+	dColVector.h, dDiagMatrix.h, DiagArray2.h, dim-vector.h,
+	dMatrix.h, dNDArray.h, dRowVector.h, EIG.h, FEGrid.h,
+	idx-vector.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
+	int8NDArray.h, intNDArray.h, LinConst.h, LPsolve.h, LSODE.h,
+	MArray2.h, MArray.h, MArrayN.h, MDiagArray2.h, NLConst.h, NLEqn.h,
+	ODES.h, ODESSA.h, Quad.h, Range.h, so-array.h, uint16NDArray.h,
+	uint32NDArray.h, uint64NDArray.h, uint8NDArray.h:
+	Delete #pragma interface.
+
+2004-12-17  John W. Eaton  <jwe@octave.org>
+
+	* lo-cieee.c (lo_ieee_signbit): New function.
+	* lo-ieee.h: Provide decl.
+	Don't define lo_ieee_signbit as a macro here.
+	From Orion Poplawski <orion@cora.nwra.com>.
+
+2004-11-18  John W. Eaton  <jwe@octave.org>
+
+	* int32NDArray.cc (pow): Delete instantiation.
+	* int16NDArray.cc (pow): Likewise.
+	* int8NDArray.cc (pow): Likewise.
+	* uint32NDArray.cc (pow): Likewise.
+	* uint16NDArray.cc (pow): Likewise.
+	* uint8NDArray.cc (pow): Likewise.
+
+2004-11-17  John W. Eaton  <jwe@octave.org>
+
+	* kpse.cc (str_llist_float, str_llist_add, kpse_var_expand):
+	Now static.
+	(DB_ENVS, DB_HASH_SIZE, DB_NAME, ALIAS_NAME, ALIAS_HASH_SIZE,
+	DEFAULT_TEXMFDBS): Delete unused macros.
+
+	* Array.cc (Array<T>::index): Call generic N-d indexing function
+	if idx_arg is N-d.
+
+2004-11-09  David Bateman  <dbateman@free.fr>
+
+	* dNDArray.cc (concat): Delete.
+	(NDArray::concat): New methods.
+	* dNDArray.h: Provide decls.
+
+	* CNDArray.cc (concat): Delete.
+	(ComplexNDArray::concat): New methods.
+	* CNDArray.h: Provide decls.
+
+	* boolNDArray.cc (concat): Delete.
+	(boolNDArray::concat): New methods.
+	* boolNDArray.h: Provide decls.
+
+	* chNDArray.cc (concat): Delete.
+	(charNDArray::concat): New methods.
+	* chNDArray.h: Provide decls.
+
+	* oct-inttypes.h (OCTAVE_INT_CONCAT_FN, OCTAVE_INT_CONCAT_DECL):
+	Delete macros.
+
+	* int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
+	uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
+	(OCTAVE_INT_CONCAT_DECL): Delete use of macro.
+
+	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc,
+	uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
+	(OCTAVE_INT_CONCAT_FN): Delete use of macro.
+
+	* intNDArray.cc (intNDArray<T>::concat): New method.
+	* intNDArray.h: Provide decl.
+
+2004-11-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.cc: New file.
+	* Makefile.in (TI_SRC): Add it to the list.
+	* oct-inttypes.h (OCTAVE_US_TYPE1_CMP_OP, OCTAVE_US_TYPE1_CMP_OPS,
+	OCTAVE_SU_TYPE1_CMP_OP, OCTAVE_SU_TYPE1_CMP_OPS,
+	OCTAVE_TYPE1_CMP_OPS, OCTAVE_US_TYPE2_CMP_OP,
+	OCTAVE_US_TYPE2_CMP_OPS, OCTAVE_SU_TYPE2_CMP_OP,
+	OCTAVE_SU_TYPE2_CMP_OPS, OCTAVE_TYPE2_CMP_OPS):
+	New macros for comparison operations.  Avoid potential
+	problems with default conversions when comparing signed and
+	unsigned values.
+
+2004-11-03  John W. Eaton  <jwe@octave.org>
+
+	* dMatrix.cc (Matrix::inverse): Return info == -1 for any failure.
+	* CMatrix.cc (ComplexMatrix::inverse): Likewise.
+
+2004-10-19  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assignN): Avoid resizing if assignment will fail.
+
+2004-10-18  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign2): Save result of squeeze operation.
+	Squeeze if ndims is > 2, not if length of RHS vector is > 2.
+
+2004-10-11  David Bateman  <dbateman@free.fr>
+
+	* oct-fftw.cc (class octave_fftw_planner): Add inplace[2] to
+	flag whether transform in- or out-of-place.
+	(octave_fftw_planner::octave_fftw_planner): Initialize it.
+	(octave_fftw_planner::create_plan): Use it.
+
+2004-09-24  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (assign2, assignN): If index is empty, allow RHS to be
+	any empty matrix, not just [].
+
+2004-09-23  John W. Eaton  <jwe@octave.org>
+
+	* mx-ops: Include scalar zero value in type definitions.
+	Delete zero information from ops section.
+	* mk-ops.awk: Use type-specific zero info.
+
+	* mx-op-defs.h (MS_BOOL_OP, SM_BOOL_OP, MM_BOOL_OP, NDS_BOOL_OP,
+	SND_BOOL_OP, NDND_BOOL_OP): Args now include zero values for both
+	LHS and RHS.
+	(MS_BOOL_OPS2, SM_BOOL_OPS2, MM_BOOL_OPS2, NDS_BOOL_OPS2,
+	SND_BOOL_OPS2, NDND_BOOL_OPS2): New macros.
+	(MS_BOOL_OPS, SM_BOOL_OPS, MM_BOOL_OPS, NDS_BOOL_OPS,
+	SND_BOOL_OPS, NDND_BOOL_OPS): Define in terms of 2-zero versions.
+
+	* idx-vector.h (idx_vector::idx_vector_rep::idx_vector_rep (const
+	intNDArray<U>&)): Use explicit as_double () conversion in call to
+	tree_to_mat_idx.
+
+	* oct-inttypes.h (octave_int<T>::operator float): New conversion.
+	(pow): Instead of "if (b_val)", use "if (b_val != zero)".
+	Likewise for the "if (b_val & one)" test.
+	(operator <<, operator >>): Type of retval is octave_int<T1>, not T1.
+
+2004-09-23  David Bateman  <dbateman@free.fr>
+
+	* oct-inttypes.h (OCTAVE_INT_DOUBLE_CMP_OP, OCTAVE_DOUBLE_INT_CMP_OP):
+	New macros.  Use them to define mixed intX-double and double-intX ops.
+
+2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
+
+	* DASPK-opts.in, DASRT-opts.in, ODESSA-opts.in:
+	Fix doc string layout to avoid overfull hbox in printed output.
+
+2004-09-21  John W. Eaton  <jwe@octave.org>
+
+	* mach-info.h (octave_mach_info::flt_fmt_native): Delete.
+	* mach-info.cc (octave_mach_info::string_to_float_format):
+	For "native", set actual native format.
+	(octave_mach_info::float_format_as_string): Delete flt_fmt_native case.
+
+2004-09-17  David Bateman  <dbateman@free.fr>
+
+	* CmplxSCHUR.cc (CmplxSCHUR::init): New arg, calc_unitary to make the
+	calculation of the unitary matrix optional.
+	* dbleSCHUR.cc (SCHUR::init): Ditto.
+	* CmplxSCHUR.h, dbleSCHUR.h: Update decls.
+
+2004-09-15  David Bateman  <dbateman@free.fr>
+
+	* oct-sort.h (octave_sort<T>::set_compare (bool (*comp) (T, T))):
+	New function to set the comparison function for the sort.
+
+2004-09-10  John W. Eaton  <jwe@octave.org>
+
+	* lo-mappers.cc (xround): Fix typo.
+
+2004-09-08  John W. Eaton  <jwe@octave.org>
+
+	* Array.h (Array::~Array): Declare virtual.
+
+	* idx-vector.h (idx_vector::idx_vector): Initialize rep in member
+	initializaion list.  Don't set rep->count since the rep
+	constructor does that.
+
+2004-09-07  John W. Eaton  <jwe@octave.org>
+
+	* data-conv.cc (oct_data_conv::string_to_data_type): Handle dt_logical.
+	(oct_data_conv::data_type_as_string): Likewise.
+
+	* data-conv.h (oct_data_conv::data_type): Add dt_logical to list.
+
+	* Range.cc (round): Delete unused function.
+
+	* lo-mappers.cc (xround): Rename from round.  Change all uses.
+	If HAVE_ROUND, call round, otherwise fake with floor and ceil.
+
+	* oct-inttypes.h: Include <cmath> here.
+
+2004-09-03  David Bateman  <dbateman@free.fr>
+
+	* boolNDArray.cc (boolNDArray::concat, boolNDArray::insert):
+	New functions for boolean matrix concatenation.
+	* boolNDArray.h: Provide decls.
+
+2004-09-03  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttpes.h (OCTAVE_INT_CMP_OP): Convert operarands to double
+	to avoid signed/unsigned int comparison problems.
+
+	* mx-ops: Generate CMP and BOOL ops for mixed integer types and
+	for mixed integer and double types.
+
+	* mk-ops.awk: Output BIN_OP_DECLS, CMP_OP_DECLS, and BOOL_OP_DECLS
+	separately, and only if needed.
+
+	* oct-inttypes.h (octave_fit_to_range): Use constructor instead of
+	static_cast for type conversion.
+
+2004-09-01  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (pow, operator +, operator -, operator *,
+	operator /): Handle mixed integer/double ops.  If op generates a
+	NaN, set result to 0.
+	(octave_int::operator - (void)): Convert to double, then negate,
+	then fit to range.
+
+	* mx-ops: Define integer types.  Include declarations for mixed
+	integer/double ops.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (pow): Args now const reference.
+	(octave_int<T>::operator *=, octave_int<T>::operator /=,
+	octave_int<T>::operator <<=, octave_int<T>::operator >>=):
+	New member functions.
+	(OCTAVE_INT_BITSHIFT_OP): Delete macro.
+	(operator >> (const octave_int<T1>& x, const T2& y)):
+	Define in terms of >>=.
+	(operator << (const octave_int<T1>& x, const T2& y)):
+	Define in terms of <<=.
+	(bitshift): Operate on octave_int<T> objects, not the values, so
+	we get proper saturation properties.
+
+2004-08-31  David Bateman  <dbateman@free.fr>
+
+	* oct-inttypes.h (pow (constT, T)): New template.
+
+	* int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, uint8NDArray.cc,
+	uint16NDArray.cc, uint32NDArray.cc: Instantiate power function.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int::byte_size): New function.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (EXTRAS): Add intNDArray.cc to the list.
+
+	* data-conv.h (oct_data_conv::data_type): Include sized types.
+	Explicitly number enum elements.
+
+	* data-conv.cc (oct_data_conv::string_to_data_type (const
+	std::string&, int&, oct_data_conv::data_type&,
+	oct_data_conv::data_type&)): New function.
+	(oct_data_conv::string_to_data_type (const std::string&, int&,
+	oct_data_conv::data_type&)): New function.
+	(oct_data_conv::data_type_as_string): New function.
+
+	* dMatrix.cc (read_int, do_read, Matrix::read): Delete.
+	(write_int, do_write, Matrix::write): Delete.
+	* dMatrix.h (Matrix::read, Matrix::write): Delete decls.
+
+	* byte-swap.h: Use template functions and specialization.
+	Change all uses.
+	(swap_2_bytes, swap_4_bytes, swap_8_bytes): Delete.
+
+2004-08-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int_fit_to_range): Use template
+	specializations to avoid warnings about signed/unsigned comparisons.
+
+2004-08-28  John W. Eaton  <jwe@octave.org>
+
+	* data-conv.cc (do_float_format_conversion (unsigned char *,
+	size_t, int, oct_mach_info::float_format)): New function.
+	(GET_SIZED_INT_TYPE): New macro.
+	(string_to_data_type): Use it to return sized types corresponding
+	to Octave array data types.
+	(strip_spaces): New function.
+	(do_double_format_conversion, do_float_format_conversion): Pass
+	from_fmt and to_fmt.  Don't always assume the to_fmt is the native
+	float format.
+	(do_double_format_conversion,
+	IEEE_big_double_to_IEEE_little_double,
+	VAX_D_double_to_IEEE_little_double,
+	VAX_G_double_to_IEEE_little_double, Cray_to_IEEE_little_double,
+	IEEE_little_double_to_IEEE_big_double,
+	VAX_D_double_to_IEEE_big_double, VAX_G_double_to_IEEE_big_double,
+	Cray_to_IEEE_big_double, IEEE_little_double_to_VAX_D_double,
+	IEEE_big_double_to_VAX_D_double, VAX_G_double_to_VAX_D_double,
+	Cray_to_VAX_D_double, IEEE_little_double_to_VAX_G_double,
+	IEEE_big_double_to_VAX_G_double, VAX_D_double_to_VAX_G_double,
+	Cray_to_VAX_G_double):
+	Pass data as void*, not double*.
+	(do_float_format_conversion, IEEE_big_float_to_IEEE_little_float,
+	VAX_D_float_to_IEEE_little_float,
+	VAX_G_float_to_IEEE_little_float, Cray_to_IEEE_little_float,
+	IEEE_little_float_to_IEEE_big_float,
+	VAX_D_float_to_IEEE_big_float, VAX_G_float_to_IEEE_big_float,
+	Cray_to_IEEE_big_float, IEEE_little_float_to_VAX_D_float,
+	IEEE_big_float_to_VAX_D_float, VAX_G_float_to_VAX_D_float,
+	Cray_to_VAX_D_float, IEEE_little_float_to_VAX_G_float,
+	IEEE_big_float_to_VAX_G_float, VAX_D_float_to_VAX_G_float,
+	Cray_to_VAX_G_float):
+	Pass data as void*, not float*.
+
+2004-08-27  John W. Eaton  <jwe@octave.org>
+
+	* byte-swap.h (swap_bytes): New template versions, with
+	specializations.
+	(swap_2_bytes, swap_4_bytes, swap_8_bytes): Delete.
+	Change all uses.
+
+2004-08-24  David Bateman  <dbateman@free.fr>
+
+	* chNDArray.cc (concat): Check whether matrix to be inserted is
+	empty instead of checking final matrix.
+	* dNDArray.cc (concat): Likewise.
+	* CNDArray.cc (concat): Likewise.
+
+2004-08-23  David Bateman  <dbateman@free.fr>
+
+	* dim-vector.h (dim_vector::concat): Correct incrementation for
+	non-existent dimensions.
+
+2004-08-09  John W. Eaton  <jwe@octave.org>
+
+	* idx-vector.h (idx_vector::idx_vector_rep::tree_to_mat_idx
+	(const octave_int<U>&)): New member function.
+	(idx_vector::idx_vector_rep::tree_to_mat_idx (double, bool&),
+	idx_vector::idx_vector_rep::tree_to_mat_idx (int)):
+	Now member functions instead of static in idx-vector.cc.
+	(idx_vector::idx_vector_rep::idx_vector_rep (const octave_int<U>&),
+	idx_vector::idx_vector_rep::idx_vector_rep (const intNDArray<U>&)):
+	New template constructors.
+
+2004-08-05  John W. Eaton  <jwe@octave.org>
+
+	* EIG.cc (EIG::init): Add volatile qualifier to nvr decl.
+
+	* intNDArray.cc (intNDArray<T>::operator !, intNDArray<T>::all,
+	intNDArray<T>::any): Sprinkle with this-> as needed.
+	* mx-inlines.cc (MX_ND_REDUCTION, MX_ND_CUMULATIVE_OP): Likewise.
+
+2004-08-03  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::squeeze): Do nothing for 2-d arrays.  For
+	arrays with more than two dimensions and only one non-singleton
+	dimension, return a column vector.
+
+2004-07-28  John W. Eaton  <jwe@octave.org>
+
+	* oct-cmplx.h (pow (const Complex&, const double&):
+	Convert second arg to complex to avoid libstdc++ bug.
+
+2004-07-27  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (bitshift): New arg, MASK.
+	(OCTAVE_INT_BITSHIFT_OP): Bitshift does not saturate.
+
+2004-07-23  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc (Array<T>::reshape): Return *this if no change in size.
+
+2004-07-23  David Bateman  <dbateman@free.fr>
+
+	* Array.cc, Array.h (cat_ra): Delete.
+	* Array.h, Array-C.cc, Array-d.cc, Array-ch.cc, Array-i.cc
+	(INSTANTIATE_ARRAY_CAT): Delete.
+
+	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
+	chNDArray.h, intNDArray.cc, intNDArray.h (cat): Delete.
+
+	* Array.cc (Array<T>::insert): Copy data in NDArray version.
+
+	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
+	chNDArray.h (concat): New function used for concatenation that does
+	an indexed copy of one array into another.
+
+	* dim-vector.h (concat): New function to concatenate dim_vectors.
+
+	* dNDArray.cc, dNDArray.h, CNDArray.cc, CNDArray.h, chNDArray.cc,
+	chNDArray.h, intNDArray.cc, intNDArray.h (insert): New function for
+	insertion of one NDArray into another.
+
+	* oct-inttype.cc (OCTAVE_INT_CONCAT_FN, OCTAVE_INT_CONCAT_DECL): New
+	macros to define the int/uint concatenation functions.
+
+	* uint8NDArray.cc, uint16NDArray.cc, uint32NDArray.cc, uint64NDArray.cc
+	int8NDArray.cc, int16NDArray.cc, int32NDArray.cc, int64NDArray.cc
+	(OCTAVE_INT_CONCAT_FN): Instantiate the concatenation function .
+
+	* uint8NDArray.h, uint16NDArray.h, uint32NDArray.h, uint64NDArray.h
+	int8NDArray.h, int16NDArray.h, int32NDArray.h, int64NDArray.h
+	(OCTAVE_INT_CONCAT_DECL): Declare the int/uint concatentaion
+	functions.
+
+2004-07-22  David Bateman  <dbateman@free.fr>
+
+	* oct-sort.h: Don't include oct-obj.h.
+
+	* lo-specfun.cc (is_integer_value): New function.
+	(zbesj, zbesi, zbesy): Special case negative integer or half
+	integer orders that cause overflow for small arguments.
+
+2004-07-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-inttypes.h (octave_int<T>::nbits): New function.
+	(bitshift (const octave_int<T>&, int)): New function.
+
+2004-06-14  John W. Eaton  <jwe@octave.org>
+
+	* mx-base.h: Include headers for new int types.
+
+	* dNDArray.h, dNDArray.cc (NDArray::NDArray (const boolNDArray&),
+	NDArray::NDArray (const charNDArray&)): Delete.
+	(template <class U> explicit NDArray (const intNDArray<U>&)): New
+	constructor.
+	(NDArray::squeze): Call MArrayN::squeeze, not ArrayN::squeeze.
+
+	* chMatrix.h (CharMatrix::transpose): New forwarding functions for
+	return type conversion.
+
+	* ComplexNDArray.h, ComplexNDArray.cc
+	(ComplexNDArray::ComplexNDArray (const ArrayN<Complex>&),
+	(ComplexNDArray::ComplexNDArray (const NDArray&),
+	(ComplexNDArray::ComplexNDArray (const boolNDArray&),
+	(ComplexNDArray::ComplexNDArray (const charNDArray&)): Delete.
+
+	(ComplexNDArray::squeze): Call MArrayN::squeeze, not ArrayN::squeeze.
+
+	* MArrayN.h:
+	(template <class U> explicit MArrayN<T>::MArrayN (const Array2<U>&),
+	(template <class U> MArrayN<T>::MArrayN (const ArrayN<U>&),
+	(template <class U> explicit MArrayN<T>::MArrayN (const MArray<U>&)):
+	New constructors.
+	(ArrayN<T>::reshape, ArrayN<T>::permute, ArrayN<T>::ipermute,
+	ArrayN<T>::squeeze):
+	New forwarding functions for return type conversion.
+
+	* ArrayN.h:
+	(template <class U> explicit ArrayN<T>::ArrayN (const Array2<U>&),
+	(template <class U> explicit ArrayN<T>::ArrayN (const ArrayN<U>&),
+	(template <class U> explicit ArrayN<T>::ArrayN (const Array<U>&),
+	(template <class U> explicit ArrayN<T>::ArrayN (const Array<U>&,
+	const dim_vector&)): New constructors.
+	(ArrayN<T>::reshape, ArrayN<T>::permute, ArrayN<T>::ipermute,
+	ArrayN<T>::transpose):
+	New forwarding functions for return type conversion.
+
+	* Array.h (template <class U> Array<T>::Array (const Array<U>&)):
+	New constructor.
+	(Array<T>::coerce, Array<T>::byte_size): New functions.
+
+	* Array-i.cc, MArray-i.cc: Instantiate new integer types.
+
+	* oct-inttypes.h, int16NDArray.h, int32NDArray.h, int64NDArray.h,
+	int8NDArray.h , intNDArray.h, uint16NDArray.h, uint32NDArray.h,
+	uint64NDArray.h, uint8NDArray.h, int16NDArray.cc, int32NDArray.cc,
+	int64NDArray.cc, int8NDArray.cc, intNDArray.cc, uint16NDArray.cc,
+	uint32NDArray.cc, uint64NDArray.cc, uint8NDArray.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2004-06-04  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): New arg, RET_ELT_TYPE.  Use
+	"RET_ELT_TYPE ()" rather than "false" as fill value for retval
+	resize op.  Change all uses.
+
+2004-06-03  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (assignN): Allow magic colon for dimensions lvalue
+	greater than the existing number of dimensions in lvalue.
+
+2004-04-30  David Bateman  <dbateman@free.fr>
+
+	* dim_vector.h (dim_vector::dim_vector_rep::dim_vector_rep):
+	New arg, fill_value.
+	(dim_vector::resize): Allow optional fill_value argument.
+
+	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&)):
+	Don't chop trailing dimensions of Array<idx_vector> if there is
+	more than one element in idx_vector.  Resize the return value to
+	the size of Array<idx_vector>.
+
+	* Array-util.cc (short_freeze): Better freeze of last dimension of
+	idx_vector that is shorter than a dim_vector.
+
+2004-04-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-sort.cc: Don't include oct-obj.h.
+
+2004-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::index2, Array<T>::indexN):
+	Don't set invalid dimensions on return value.
+
+2004-04-21  John W. Eaton  <jwe@octave.org>
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Chop trailing singletons.
+
+2004-04-06  David Bateman  <dbateman@free.fr>
+
+	* Array.cc (Array<T>::resize_no_fill (const dim_vector& dv),
+	Array<T>::resize_and_fill (const dim_vector& dv, const T& val)):
+	Make their behavior equivalent except for filling vs. not filling.
+
+  	* oct-sort.cc: New template class for arbitrary sorting.
+  	* oct-sort.h: Declaration of sort class.
+  	* Makefile: Add them to the appropriate lists.
+
+2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): Fix off-by-one error.
+
+2004-04-02  David Bateman  <dbateman@free.fr>
+
+	* lo-specfun.cc (besselj, bessely, besseli, besselk, besselh1,
+	besselh2, airy, biry, betainc, gammainc, do_bessel):
+	New N-d array versions.
+	(SN_BESSEL, NS_BESSEL, NN_BESSEL): New macros.
+	* lo-specfun.h (besselj, bessely, besseli, besselk, besselh1,
+	besselh2, airy, biry, betainc, gammainc): Provide decls.
+
+	* dNDArray.cc (NDArray::min, NDArray::max, min, max):
+	New functions.
+	* dNDArray.h (NDArray::min, NDArray::max, min, max): Provide decls.
+
+	* CNDArray.cc (ComplexNDArray::min, ComplexNDArray::max, min, max):
+	New functions.
+	* CNDArray.h (ComplexNDArray::min, ComplexNDArray::max, min, max):
+	Provide decls.
+
+2004-03-17  David Hoover  <jazzdaq@yahoo.com>
+
+	* DASPK.cc (DASPK::do_integrate): Always add n*n elements to the
+	work vector, not just when using a numerical Jacobian.
+
+2004-03-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* so-array.cc (SND_CMP_OP, NDS_CMP_OP, NDND_CMP_OP):
+	Omit empty result args.
+
+	* Array.cc (Array<T>::Array (const Array<T>&, const dim_vector&)):
+	Move here from Array.h, check that size of array arg is not
+	smaller than the size defined by the new dimensions.
+
+2004-03-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::index2): Allow result to be N-d if indexing
+	a scalar or vector with an N-d array.
+
+2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::index2): If scalar or vector is indexed by
+	matrix, return object that is the same size as the index.
+
+	* mx-op-defs.h (NDND_CMP_OP, MM_CMP_OP): Require dimensions to agree.
+	Eliminate MT_RESULT args.  Return value is always size of args.
+	(MS_CMP_OP, SM_CMP_OP, NDS_CMP_OP, SND_CMP_OP):
+	Eliminate EMPTY_RESULT arg.
+	Return value is always size of matrix or N-d array arg.
+	(TBM, FBM, NBM): Delete unused macros.
+
+2004-03-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::maybe_delete_elements): Return immediately
+	if all LHS dimensions are zero.  For one index case, freeze and
+	sort idx_vec before checking length, and do nothing if
+	num_to_delete is zero.
+	(Array<T>::maybe_delete_elements_2): Omit Fortran-indexing warning.
+
+2004-03-04  David Bateman  <dbateman@free.fr>
+
+	* dNDArray.cc (NDArray::ifourier): Arg is int, not const int.
+	* CNDArray.cc (ComplexNDArray::ifourier): Likewise.
+
+2004-03-03  Hans Ekkehard Plesser  <hans.ekkehard.plesser@nlh.no>
+
+	* base-lu.cc (base_lu<>::L): Check bounds before setting diagonal
+	element.
+
+2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.h (Range::Range): Add cache to member initialization list.
+	(Range::clear_cache): New private function.
+
+	* Range.h (Range::set_base, Range::set_limit, Range::set_inc):
+	Use clear cache.  Don't do anything if range does not change.
+	* Range.cc (Range::sort): Likewise.
+
+2004-03-02  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Range.cc (Range::matrix_value): Cache result.
+	(Range::sort): Clear cache.
+	* Range.h (Range::cache): New data member.
+	(Range::set_base, Range::set_limit, Range::set_inc): Clear cache.
+	(Range::print_range): Delete.
+
+2004-03-02  David Bateman  <dbateman@free.fr>
+
+	* oct-fftw.cc: Only two versions of plan, and avoid endless
+	changes between them.  Faster for small fft's.
+	(octave_fftw_planner::simd_align, octave_fftw_planner::rsimd_align):
+	New member variables.
+	(octave_fftw_planner::ialign, octave_fftw_planner::oalign,
+	octave_fftw_planner::rialign, octave_fftw_planner::roalign): Delete.
+	Change all uses.
+	(CHECK_SIMD_ALIGNMENT): New macro.
+	(octave_fftw_planner::create_plan): Use it.
+
+2004-03-01  Petter Risholm  <risholm@idi.ntnu.no>
+
+	* Array.cc (Array<T>::insertN): Eliminate N-d indexing.
+
+	* mx-inlines.cc (MX_ND_CAT): Delete macro.
+
+	* dNDArray.h, chNDArray.h, CNDArray.h (cat): Change declaration.
+	* dNDArray.cc (NDArray<T>::cat): Call new form of cat function.
+	* chNDArray.cc (charNDArray<T>::cat): Ditto.
+	* CNDArray.cc (ComplexNDArray<T>::cat): Ditto.
+
+	* Array.h (cat_ra): Return int.  Accept idx and move args, not add_dim.
+	* Array.cc (cat_ra): Speed up implementation by avoiding N-d indexing.
+
+2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c (octave_rl_set_startup_hook,
+	octave_rl_get_startup_hook, octave_rl_set_event_hook,
+	octave_rl_get_event_hook): Omit casts.
+	* oct-rl-edit.h (rl_startup_hook_fcn_ptr, rl_event_hook_fcn_ptr):
+	Return value for function pointer typedef is now int.
+	* cmd-edit.h (command_editor::startup_hook_fcn,
+	command_editor::event_hook_fcn): Likewise.
+	* cmd-hist.cc, cmd-hist.h (command_history::goto_mark,
+	command_history::do_goto_mark, gnu_history::do_goto_mark):
+	Return type is now int.  Return 0.
+
+	* EIG.cc (EIG::init, EIG::symmetric_init):
+	Query Lapack for workspace size.
+
+2004-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::resize_and_fill (const dim_vector&, const T&)):
+	Fix thinko in extending dimensions.
+
+2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (Range::matrix_value, Range::min, Range::max):
+	Don't compute values beyond the limits of the range.
+	(operator << (std::ostream&, const Range&)): Likewise.
+
+2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-fftw.cc (octave_fftw_planner::create_plan):
+	Cast IN and OUT	args to ptrdiff_t instead of long before masking.
+	From Paul Kienzle <pkienzle@users.sf.net>.
+
+	* Array.cc (Array<T>::insertN (const Array<T>&, int, int)):
+	Rename from Array<T>::insert.
+	(Array<T>::insert2 (const Array<T>&, int, int)):
+	Reinstate old Array<T>::insert function under this name.
+	(Array<T>::insert (const Array<T>&, int, int)):
+	New function.  Dispatch to insert2 or insertN as appropriate.
+
+2004-02-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-fftw.cc (convert_packcomplex_1d, convert_packcomplex_Nd):
+	Sprinkle with OCTAVE_QUIT.
+
+2004-02-16  David Bateman  <dbateman@free.fr>
+
+	* oct-fftw.cc (octave_fftw_planner::create_plan, octave_fftw::fftNd):
+	Add support for FFTW 3.x. Include the ability to
+	use the real to complex transform for fft's of real matrices
+	(octave_fftw_planner::create_plan2d): Delete.
+	(octave_fftw::fft2d): Delete.
+	(convert_packcomplex_1d, convert_packcomplex_Nd):
+	New static functions.
+	* oct-fftw.h: Update decls.
+
+	* dMatrix.cc (Matrix::fourier, Matrix::ifourier,
+	Matrix::fourier2d, Matrix::ifourier2d): FFT's use real to complex
+	transforms.  1D FFT of a matrix done as single call rather than
+	loop.  Update for FFTW 3.x
+	* CMatrix.cc (ComplexMatrix::fourier, ComplexMatrix::ifourier,
+	ComplexMatrix::fourier2d, ComplexMatrix::ifourier2d): 1D fft of a
+	matrix done as single call rather than loop.  Update for FFTW 3.x.
+
+	* dNDArray.cc (NDArray::fourier, NDArray::ifourier,
+	NDArray::fourierNd, NDArray::ifouriourNd): New fourier transform
+	functions for Nd arrays.
+	* dNArray.h Provide decls.
+	* CNDArray.cc (ComplexNDArray::fourier, ComplexNDArray::ifourier,
+	ComplexNDArray::fourierNd, ComplexNDArray::ifouriourNd): New
+	fourier transform functions for complex Nd arrays.
+	* CNArray.h: Provide decls.
+
+2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::insert (const Array<T>&, int, int)):
+	Make it work for N-d arrays.
+
+	* ArrayN.h (ArrayN<T>::insert (const ArrayN<T>& a, int, int)):
+	New function.
+
+	* CNDArray.cc (ComplexNDArray::insert (const NDArray&, int, int),
+	ComplexNDArray::insert (const ComplexNDArray&, int, int)):
+	New functions.
+	* CNDArray.h: Provide decls.
+
+2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LINK_DEPS): Always define.
+
+	* Array.cc (Array<T>::squeeze): Always return an array with at
+	least two dimensions.
+
+2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* mx-inlines.cc (MX_ND_CAT): New macro.
+	* dNDArray.cc (NDArray::cat): New function.
+	* dNDArray.h: Provide decls.
+	* CNDArray.cc (complexNDArray::cat): New function.
+	* CNDArray.h: Provide decls.
+	* chNDArray.cc (charNDArray::cat): New function.
+	* chNDArray.h: Provide decls.
+
+2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (maybe_delete_elements_2): Allow X(n) = [] for 2-d X.
+	(Array<T>assign2): Also call maybe_delete_elements for single
+	index when rows and columns or LHS are both greater than 1.
+
+2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::maybe_delete_elements):
+	Check for index out of bounds.	Handle one index.
+
+	* Array.cc (Array<T>::indexN): Use dim_vector (0, 0) instead of
+	dim_vector (0) to create empty return vector.
+
+2004-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::assignN): Don't crash if trying to resize a
+	non-empty LHS when the number of lhs dimensions is less than the
+	number of indices.  Detect error if attempting to resize non-empty
+	LHS with colon indices.
+
+2004-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::resize_and_fill): Don't bother to assign any
+	values unless the length of the new array is greater than 0.
+	(Array<T>::resize_no_fill): Likewise.
+
+	* Array-util.cc (index_in_bounds): Also return false if ra_idx(i)
+	is equal to dimensions(i).
+
+	* Array-util.h, Array-util.cc (equal_arrays, any_zero_len,
+	get_zero_len_size, number_of_elements):
+	Delete unused functions.
+
+	* Array-util.cc (get_ra_idx): Use dim_vector::numel instead of
+	number_of_elements function.
+	* Array.cc (Array<T>::indexN): Likewise.
+
+	* Array.cc (Array<T>::indexN): Use dim_vector::operator == instead
+	of equal_arrays function.
+	(Array<T>::index, Array<T>::indexN, Array<T>::assignN) Use
+	dim_vector::any_zero instead of any_zero_len function.
+
+	* Array.cc (Array<T>::assignN): Eliminate special case for empty index.
+	Don't skip reshaping and resizing if RHS is empty.
+
+	* Array.cc (Array<T>::assignN): Simplify loop for array	assignment.
+	Move body of MAYBE_RESIZE_ND_DIMS here since it is only used once.
+	Delete unused variables is_colon and is_colon_equiv.
+	Correctly resize for expressions like x(:,:,2) = ones(3,3) when
+	LHS is not yet defined.
+	Error for resizing if number of indices is less than number of LHS
+	dimensions.
+
+	* Array.cc (Array<T>::maybe_delete_elements): Maybe warn about
+	Fortran-style indexing.
+
+2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::assignN): Simplify.
+	Allow assignments to succeed if number if indices is less than the
+	number of RHS dimensions.
+
+2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::maybe_delete_elements): Reshape LHS
+	when number of indices is less than number of dimensions.
+
+	* Array.cc (Array<T>::assignN, Array<T>::maybe_delete_elements):
+	Remove unsued variable lhs_inc.
+
+	* Array.cc (Array<T>::maybe_delete_elements): Declare idx_is_colon
+	and idx_is_colon_equiv Array<int> instead of dim_vector.
+
+	* Array.cc (Array<T>::assignN): Compute new dims in a cleaner way.
+
+	* Array.cc (Array<T>::index): Check for frozen_lengths.length ()
+	== n_dims before checking to see if all indices are colon_equiv.
+
+2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::assignN): Require RHS == 0x0 matrix for
+	deleting elements.
+	(Array<T>::index): Remove trailing singletons in ra_idx, but leave
+	at least ndims elements.
+
+2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::assignN): Accept assignment of a vector
+	oriented differently from the index.
+
+	* dim-vector.h (dim_vector::squeeze): Return value always has at
+	least two dimensions.
+
+2004-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dim-vector.h (dim_vector::squeeze): New function.
+	(Array<T>::assignN): Use it instead of chop_trailing_singltons for
+	deciding whether the assignment conforms.
+
+	* Array.cc (Array<T>::assignN): Simplify dimension check by
+	comparing rhs_dims and frozen_len sans trailing singletons.
+
+2004-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (tree_to_mat_idx): New arg, conversion_error.
+	Call error handler and return conversion_error == true if arg is
+	not integer.
+	(IDX_VEC_REP::idx_vector_rep): Exit early if conversion_error.
+
+2004-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* boolNDArray.h (boolNDArray::boolNDArray): Declare dim_vector
+	reference arg const.
+
+2004-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-flags.cc: Include Array-flags.h, not Array.h.  Doh.
+
+2004-01-30  Jakub Bogusz  <qboosh@pld-linux.org>
+
+	* Array-flags.h (liboctave_wfi_flag, liboctave_wrore_flag):
+	Now bool, to match definition in Array-flags.cc.
+
+2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc: Include <vector> instead of <memory> for new
+	definition of OCTAVE_LOCAL_BUFFER.
+
+	* EIG.cc, EIG.h (EIG::init, EIG::symmetric_init, EIG::hermitian_init):
+	New arg, calc_eigenvectors.
+	* EIG.h (EIG:EIG): New optional arg, calc_eigenvectors.
+	Based on patch from David Bateman <dbateman@free.fr>.
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::assign2, Array<T>::assignN):
+	For X(I) = RHS, don't restrict I to fewer elements than X.
+
+	* Array.cc (Array<T>::assign2): Simplify indexing for X(I) = RHS case.
+
+2004-01-22  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* mx-inlines.cc	(MX_ND_REDUCTION, MX_ND_CUMULATIVE_OP):
+	Simplify calculation of number of elements in retval.
+
+	* Array.cc (Array<T>::assignN): Eliminate unnecessray code for
+	filling when RHS is scalar and dimension lengths agree.
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean): Remove mx-ops.h, $(MX_OP_INC),
+	$(VX_OP_INC), $(MX_OP_SRC), $(VX_OP_SRC), and $(OPTS_INC).
+
+2004-01-22  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::resize_and_fill): Correctly copy old elements.
+	(Array<T>::assign2): Check for RHS dimensions larger than 2.
+
+2004-01-21  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.h (Array<T>::chop_trailing_singletons): New function.
+	* Array.cc (Array<T>::assignN): Use it on LHS.
+
+	* Array.cc (Array<T>::assignN): Fix incorrectly nested if statement.
+	Retrieve scalar element by passin 0 instead of an index array.
+	Check for singleton dimensions where RHS is matrix or higher dimension.
+	Make sure index is in bounds.
+
+2004-01-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): Ensure that octave_Inf,
+	octave_NaN, and octav_NA values are always initialized.  Check
+	floating point format, not HAVE_ISINF, HAVE_FINITE, or HAVE_ISNAN
+	to decide whether to do IEEE initialization.
+
+2004-01-06  David Bateman  <dbateman@free.fr>
+
+ 	* CNDArray.cc (ComplexNDArray::any_element_is_inf_or_nan,
+ 	ComplexNDArray::all_elements_are_real, ComplexNDArray::all_integers,
+ 	ComplexNDArray::too_large_for_float): New functions
+
+ 	* CNDArray.cc (operator <<, operator >>): New IO operators.
+ 	* CNDArray.h: Provide decls.
+ 	* dNDArray.cc (operator <<, operator >>): New IO operators.
+ 	* dNDArray.h: Provide decls.
+
+2003-12-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-ops: Delete bnda x bnda, b x bnda, and bnda x b ops since
+	they are already defined in boolNDArray.cc.
+
+	* Array-util.cc (get_zero_len_size): Delete.
+	* Array.cc (Array<T>::index (Array<idx_vector>&, int, const T&)):
+	Handle zero-length result dimensions the same as empty original
+	indices.
+
+2003-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dim-vector.h (dim_vector::chop_trailing_singleton_dims,
+	dim_vector::dim_vector_rep::chop_trailing_singleton_dims):
+	New functions.
+	* Array.cc (ArrayN<T>::indexN): Use it.
+	(ArrayN<T>::index (Array<idx_vector>&, int, const T&)): Likewise.
+
+2003-11-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* boolNDArray.cc: Define BOOL ops.  Define mixed CMP ops.
+	* boolNDArray.h: Declare BOOL ops.  Declare mixed CMP ops.
+
+2003-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-ops.awk: Also emit #include "Array-util.h".
+
+	* mx-ops: Add bool, boolMatrix, and boolNDarray types.
+	Add bnda x bnda, b x bnda, and bnda x b ops.
+
+	* MArray-misc.cc: Delete.
+	* Makefile.in (MATRIX_SRC): Remove it from the list.
+
+	* Array-util.h, Array-util.cc (gripe_nonconformant): Move here from
+	MArray.h, MArray2.h, MArrayN.h, and MArray-misc.cc.
+
+2003-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleQR.cc (QR::init): Use separate pwork pointers.
+	* CmplxQR.cc (ComplexQR::init): Likewise.
+
+	* oct-group.cc (octave_group::getgrnam): Pass correct args to
+	two-arg getgrnam version.
+
+	* Array.cc (assignN): Allow single indexing to work.
+	(Array<T>::range_error (const char*, const Array<int>&)):
+	Report index values.
+
+	* Array.cc (Array<T>::index): Delete unused arg names.
+	* ODESSA.cc (odessa_j): Likewise.
+	* DASRT.cc (ddasrt_f, ddasrt_g): Likewise.
+	* DASPK.cc (ddaspk_psol): Likewise.
+	* lo-mappers.cc (imag): Likewise.
+	* Array-util.cc (get_zero_len_size): Likewise.
+	* kpse.cc (path_search, path_find_first_of): Likewise.
+	* cmd-edit.cc (do_generate_filename_completions): Likewise.
+
+	* dim-vector.h (dim_vector::all_ones): New function.
+
+2003-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.h (idx_vector::orig_empty): Check orig_dims for
+	zeros, not orig_rows or orig_columns.
+	(idx_vector::idx_vector_rep::orig_rows): Define using orig_dims.
+	(idx_vector::idx_vector_rep::orig_columns): Likewise.
+
+	* idx-vector.cc (idx_vector::idx_vector_rep::orig_nr,
+	(idx_vector::idx_vector_rep::orig_nc): Delete.
+
+	* idx-vector.cc (idx_vector::idx_vector_rep):
+	Use initialization lists for constructors.
+
+	* Array.cc (Array<T>::indexN): Correctly handle single colon index.
+	Omit special case for ra_idx.capacity () == 1.
+	Always allow single index for matrix args with optional warning.
+
+	* idx-vector.h, idx-vector.cc: Convert boolMatrix functions to use
+	boolNDArray.  Likewise, convert Matrix functions to use	NDArray.
+
+	* Array-so.cc: New file.  Move instantiations here from so-array.h.
+	* Makefile.in (TI_SRC): Add it to the list.
+
+	* MArray-defs.h (DO_VS_OP2, DO_VV_OP2): Accept args for element
+	type and the names of the left and right operands.  Change all uses.
+
+	* so-array.cc, so-array.h: New files.  Move streamoff_array here
+	from src/ov-streamoff.h and src/ov-streamoff.cc.
+
+2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArrayN.cc (operator -=, operator +=): Check dimensions, not
+	just length.
+
+	* Array2.h, Array3.h, DiagArray2.h, DiagArray2.cc, MDiagArray2.h,
+	ArrayN.h:  Add this-> or Base:: qualifiers for references to
+	non-dependent member functions and data as needed.
+
+	* DiagArray2.h, DiagArray2.cc: Delete unused code.
+
+	* Array2.h (Array2<T>::operator =): Don't copy dimensions here.
+	* Array3.h (Array3<T>::operator =): Likewise.
+	* DiagArray2.h (DiagArray2<T>::operator =): Likewise.
+	Include Array.h, not Array2.h.
+
+2003-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* str-vec.cc (list_in_columns): Fix previous change.
+
+	* dim-vector.h (dim_vector::num_ones): New function.
+	* Array.cc (maybe_delete_elements): Use it instead of
+	num_ones (const Array<int>&).
+
+	* Array.cc (assignN): Omit dubious check of singleton dimensions.
+
+	* dNDArray.cc (NDArray::all_elements_are_int_or_inf_or_nan,
+	NDArray::any_element_is_inf_or_nan, NDArray::too_large_for_float):
+	New functions.
+	* dNDArray.h: Provide decls.
+
+	* dMatrix.h (Matrix::any_element_is_negative,
+	Matrix::any_element_is_inf_or_nan, Matrix::too_large_for_float,
+	Matrix::all_elements_are_int_or_inf_or_nan, Matrix::all_integers):
+	Simplify.
+
+	* dNDArray.cc (NDArray::abs): Make it work for N-d arrays.
+	* CNDArray.cc (ComplexNDArray::abs): Likewise.
+
+	* dNDArray.cc (real, imag): New functions.
+	* dNDArray.h: Provide decls.
+
+2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (TEMPLATE_SRC): Move MArrayN.cc here from MATRIX_SRC.
+
+2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (Array<T>::resize (int, const T&)): Reinstate.
+	* MArray.h (resize): Delete.
+	* MArray2.h (resize): Delete.
+	* DASRT.cc (DASRT::integrate): Use resize, not resize_and_fill.
+	* ODESSA (ODESSA::integrate): Likewise.
+
+2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (dist): Depend on stamp-prereq.
+
+2003-11-12  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mach-info.c (oct_mach_info::init_float_format) [CRAY]:
+	Kluge to make it work.
+
+	* lo-ieee.cc (octave_ieee_init): Set octave_Inf, octave_NaN, and
+	octave_NA to DBL_MAX if native float format is vaxd, vaxg, or cray.
+
+	* cmd-edit.cc (gnu_readline::do_generate_filename_completions,
+	default_command_editor::do_generate_filename_completions,
+	command_editor::generate_filename_completions): New functions.
+	* cmd-edit.h: Provide decls.
+	* oct-rl-edit.c (octave_rl_filename_completion_function): New
+	function.
+	* oct-rl-edit.h: Provide decl.
+
+2003-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (INSTANTIATE_ARRAY_ASSIGN, INSTANTIATE_ARRAY_AND_ASSIGN,
+	INSTANTIATE_ARRAY): New macros.
+	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-i.cc,
+	Array-idx-vec.cc, Array-s.cc, Array-str.cc, ODESSA.cc: Use them.
+
+	* Array.h (Array<T>::ipermute): New function.
+
+2003-11-11  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (Array<T>::permute): New function.
+	* Array.h: Provide decl.
+
+	* Array-util.cc (calc_permutated_idx): New function.
+	* Array-util.h: Provide decl.
+
+2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::index2): Return value has orientation of
+	indexed value if indexing a vector with a bool matrix.
+
+	* ArrayN.h (ArrayN<T>::get_size): Delete.
+
+	* Array.cc, ArrayN.cc, dNDArray.cc, CNDArray.cc, boolNDArray.cc,
+	chNDArray.cc: Include Array-util.h instead of ArrayN-inline.h.
+
+	* ArrayN-inline.h: Delete.
+	* Array-util.h, Array-util.cc: New files, from ArrayN-inline.h.
+	* Makefile.in: Fix the appropriate lists.
+
+	* Array.cc, Array.h, ArrayN.h, CMatrix.cc, CNDArray.h,
+	CRowVector.cc, CmplxQR.cc, CollocWt.h, DASPK.h, DASRT.h, DASSL.h,
+	FEGrid.cc, LP.h, LSODE.h, MArrayN.h, ODE.h, ODES.h, ODESSA.cc,
+	boolNDArray.h, chNDArray.h, dMatrix.cc, dNDArray.h, dRowVector.cc,
+	dbleQR.cc, kpse.cc, oct-rl-hist.c, str-vec.cc, str-vec.h:
+	Avoid -Wshadow warnings.
+
+2003-11-08  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (Array<T>::nil_rep): Qualify return type with typename.
+
+	* mk-ops.awk: Delete elements of bool_headers array individually.
+
+2003-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (maybe_delete_elements): Rename arg idx to ra_idx.
+
+2003-10-31  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* mx-inlines.cc (MX_ND_CUMULATIVE_OP): New macro.
+
+	* CNDArray.cc, CNDArray.h (ComplexNDArray::cumsum,
+	ComplexNDArray::cumprod): Return ComplexNDArray.  Handle N-d arrays.
+	* dNDArray.cc, dNDArray.h (NDArray::cumsum, NDArray::cumprod):
+	Return NDArray.  Handle N-d arrays.
+
+2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (LSODE::do_integrate): Avoid name conflict on systems
+	that upcase Fortran names by calling dlsode instead of lsode.
+
+	* ODESSA.cc (ODESSA::do_integrate): Avoid name conflict on systems
+	that upcase Fortran names by calling dodessa instead of odessa.
+
+	* file-ops.cc (file_ops::symlink): Cope with systems that expect
+	non-const args for symlink system call.
+	(file_ops::readlink): Likewise, for readlink.
+
+	* DASRT.cc (DASRT::integrate): Fix typo in Fortran function name.
+
+2003-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mach-info.h (oct_mach_info): Prefix enum elements with flt_fmt_.
+	Change all uses.
+
+2003-10-29  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* dNDArray.cc (NDArray::cumprod, NDArray::cumsum, NDArray::prod,
+	NDArray::sum, NDArray::sumsq, NDArray::abs): New functions.
+	* dNDArray.h: Provide decls.
+	* CNDArray.cc (ComplexNDArray::cumprod, ComplexNDArray::cumsum,
+	ComplexNDArray::prod, ComplexNDArray::sum, ComplexNDArray::sumsq,
+	ComplexNDArray::abs): New functions.
+	* CNDArray.h: Provide decls.
+
+	* mx-inlines.cc (MX_ND_REDUCTION): Rename from MX_ND_ANY_ALL.
+	Generalize to handle other reduction operations.
+	(MX_ND_REAL_OP_REDUCTION, MX_ND_COMPLEX_OP_REDUCTION,
+	MX_ND_ALL_ANY_REDUCTION): New macros.
+
+2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::reshape): New function.
+	* Array.h: Provide decl.
+
+	* dim-vector.h (dim_vector::numel): New function.
+
+	* dim-vector.h (dim_vector_rep::dim_vector_rep (int, const
+	dim_vector&)): Correctly handle case of n < dv->ndims.
+
+2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dim-vector.h (dim_vector::any_zero): New function.
+	(dim_vector::str): New default arg, sep.
+
+	* Array.h (Array<T>::numel): New function.
+
+2003-10-27  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* mx-inlines.cc (MX_ND_ALL_EXPR, MX_ND_ANY_EXPR,
+	MX_ND_ALL_EVAL, MX_ND_ANY_EVAL, MX_ND_ALL_ANY): New macros.
+	* dNDArray.h (NDArray::all, NDArray::any): Return type now boolNDArray.
+	* CNDArray.h (ComplexNDArray::all, ComplexNDArray::any): Likewise.
+	* boolNDArray.h (boolNDArray::all, boolNDArray::any): Likewise.
+	* chNDArray.h (charNDArray::all, charNDArray::any): Likewise.
+	* dNDArray.cc (NDArray::all, NDArray::any): Make them work.
+	* CNDArray.cc (ComplexNDArray::all, ComplexNDArray::any): Likewise.
+	* boolNDArray.cc (boolNDArray::all, boolNDArray::any): Likewise.
+	* chNDArray.cc (charNDArray::all, charNDArray::any): Likewise.
+
+2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::resize_and_fill): Allow number of dimensions
+	to change.  From Petter Risholm  <risholm@stud.ntnu.no>.
+
+	* oct-rand.cc, CColVector.cc, CMatrix.cc, CRowVector.cc,
+	CmplxAEPBAL.cc CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
+	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, CollocWt.cc, DASPK.cc,
+	DASRT.cc, DASSL.cc, EIG.cc, LSODE.cc,  NLEqn.cc, ODESSA.cc,
+	Quad.cc, dColVector.cc, dMatrix.cc, dRowVector.cc, dbleAEPBAL.cc,
+	dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
+	dbleSCHUR.cc, dbleSVD.cc, lo-specfun.cc:
+	Use new F77 arg macros in declarations of external Fortran
+	subroutines and for calling them.
+
+2003-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::resize_no_fill (const dim_vector&)):
+	Allow number of dimensions to change.
+	(Array<T>::resize_no_fill (int, int)): Require ndims to be 0 or 2.
+	(Array<T>::resize_and_fill (int, int, const T&)): Likewise.
+	(Array<T>::resize_no_fill (int, int, int)): Require ndims to be 0 or 3.
+	(Array<T>::resize_and_fill (int, int, int, const T&)): Likewise.
+	(Array<T>::transpose): Require ndims to be 2.
+	(Array<T>::index2): Likewise.
+	(Array<T>::index (idx_vector&, idx_vector&, int, const T&)): Likewise.
+	(Array<T>::maybe_delete_elements_2): Likewise.
+	(Array<T>::maybe_delete_elements (idx_vector&, idx_vector&)): Likewise.
+	(Array<T>::index1): Use resize_and_fill.
+	(MAYBE_RESIZE_ND_DIMS): Likewise.
+
+	* ODESSA.cc (ODESSA::integrate): Use resize_and_fill for x_s_out.
+
+	* MArray2.h (MArray2<T>::resize (int, int)): New function.
+	(MArray2<T>::resize (int, int, const T&)): New function.
+
+	* MArray.h (MArray<T>::resize (int)): New function.
+	(MArray<T>::resize (int, const T&)): New function.
+
+	* DASRT.cc (DASRT::integrate): Use resize_and_fill for jroot.
+
+	* DASPK-opts.in: Use single-arg resize for initial condition
+	heuristics.
+
+	* dim-vector.h (class dim_vector): Now reference counted.
+	(dim_vector_rep::elem): Use assert to check that index is in bounds.
+
+2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::squeeze): Delete redundant retval decl.
+
+	* mx-cdm-cm.cc, mx-cdm-cm.h, mx-cdm-cs.cc, mx-cdm-cs.h,
+	mx-cdm-dm.cc, mx-cdm-dm.h, mx-cdm-m.cc, mx-cdm-m.h, mx-cdm-s.cc,
+	mx-cdm-s.h, mx-cm-cdm.cc, mx-cm-cdm.h, mx-cm-dm.cc, mx-cm-dm.h,
+	mx-cm-m.cc, mx-cm-m.h, mx-cm-s.cc, mx-cm-s.h, mx-cs-cdm.cc,
+	mx-cs-cdm.h, mx-cs-dm.cc, mx-cs-dm.h, mx-cs-m.cc, mx-cs-m.h,
+	mx-dm-cdm.cc, mx-dm-cdm.h, mx-dm-cm.cc, mx-dm-cm.h, mx-dm-cs.cc,
+	mx-dm-cs.h, mx-dm-m.cc, mx-dm-m.h, mx-dm-s.cc, mx-dm-s.h,
+	mx-m-cdm.cc, mx-m-cdm.h, mx-m-cm.cc, mx-m-cm.h, mx-m-cs.cc,
+	mx-m-cs.h, mx-m-dm.cc, mx-m-dm.h, mx-ops.h, mx-s-cdm.cc,
+	mx-s-cdm.h, mx-s-cm.cc, mx-s-cm.h, mx-s-dm.cc, mx-s-dm.h,
+	vx-ccv-cv.cc, vx-ccv-cv.h, vx-ccv-s.cc, vx-ccv-s.h, vx-crv-rv.cc,
+	vx-crv-rv.h, vx-crv-s.cc, vx-crv-s.h, vx-cs-cv.cc, vx-cs-cv.h,
+	vx-cs-rv.cc, vx-cs-rv.h, vx-cv-ccv.cc, vx-cv-ccv.h, vx-cv-cs.cc,
+	vx-cv-cs.h, vx-rv-crv.cc, vx-rv-crv.h, vx-rv-cs.cc, vx-rv-cs.h,
+	vx-s-ccv.cc, vx-s-ccv.h, vx-s-crv.cc, vx-s-crv.h: Delete.  These
+	files are now automatically generated.
+
+	* Makefile.in ($(VX_OP_INC), $(VX_OP_SRC), $(MX_OP_INC),
+	$(MX_OP_SRC)): Generate lists with new mk-ops.awk script.
+	Add rules to generate these files and mx-ops.h.
+	(stamp-prereq): Depend on these files.
+
+	* mx-ops, vx-ops, mk-ops.awk: New files.
+	* Makefile.in (DISTFILES): Add them to the list.
+
+2003-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* NDArray.cc (NDArray::NDArray (const boolNDArray),
+	NDArray::NDArray (const charNDArray)): New constructors.
+	(NDArray::operator !): New function.
+	Provide NDS_CMP_OPS, NDS_BOOL_OPS, SND_CMP_OPS, SND_BOOL_OPS,
+	NDND_CMP_OPS, NDND_BOOL_OPS.
+
+	* CNDArray.cc (ComplexNDArray::ComplexNDArray (const NDArray&),
+	ComplexNDArray::ComplexNDArray (const boolNDArray&),
+	ComplexNDArray::ComplexNDArray (const charNDArray&)):
+	New constructors.
+	(ComplexNDArray::operator !): New function.
+	Provide NDS_CMP_OPS, NDS_BOOL_OPS, SND_CMP_OPS, SND_BOOL_OPS,
+	NDND_CMP_OPS, NDND_BOOL_OPS.
+
+	* ArrayN.h (resize (const dim_vector&)): Fix typo.
+
+	* boolNDArray.cc (boolNDArray::operator !): New function.
+	Provide NDND_CMP_OPS.
+
+	* MArrayN.cc (operator +=, operator -=): New functions.
+	Provide product and quotient functions.
+
+	* MArray-misc.cc (gripe_nonconformant (const char *, dim_vector&,
+	dim_vector&)): New function.
+
+	* dim-vector.h (dim_vector::str, dim_vector::all_zero,
+	operator ==, operator !=): New functions.
+	* ArrayN.cc (operator <<): Use dim_vector::str here.
+
+	* Array.cc (Array<T>::resize_no_fill, Array<T>::resize_and_fill):
+	No need to save old dimensions.
+
+	* oct-rand.cc (MAKE_RAND_ND_ARRAY): New macro.
+	(octave_rand::nd_array): New function.
+	* oct-rand.h (octave_rand::nd_array): Provide decl.
+
+	* mx-op-defs.h (NDCMP_OP_DECL, NDBOOL_OP_DECL, NDS_BIN_OP_DECLS,
+	NDS_BIN_OP, NDS_BIN_OPS, NDS_CMP_OP_DECLS, NDS_CMP_OP,
+	NDS_CMP_OPS, NDS_BOOL_OP_DECLS, NDS_BOOL_OP, NDS_BOOL_OPS,
+	NDS_OP_DECLS, SND_BIN_OP_DECLS, SND_BIN_OP, SND_BIN_OPS,
+	SND_CMP_OP_DECLS, SND_CMP_OP, SND_CMP_OPS, SND_BOOL_OP_DECLS,
+	SND_BOOL_OP, SND_BOOL_OPS, SND_OP_DECLS, NDND_BIN_OP_DECLS,
+	NDND_BIN_OP, NDND_BIN_OPS, NDND_CMP_OP_DECLS, NDND_CMP_OP,
+	NDND_CMP_OPS, NDND_BOOL_OP_DECLS, NDND_BOOL_OP, NDND_BOOL_OPS,
+	NDND_OP_DECLS): New macros.
+	* mx-cm-m.h, mx-cm-s.h, mx-cs-m.h, mx-m-cm.h, mx-m-cs.h,
+	mx-s-cm.h, mx-cm-m.cc, mx-cm-s.cc, mx-cs-m.cc, mx-m-cm.cc,
+	mx-m-cs.cc, mx-s-cm.cc: Use them.
+
+	* mx-defs.h (class NDArray, class ComplexNDArray, class
+	boolNDArray, class charNDArray): New forward decls.
+
+2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (assign2): No error (but don't do anything either) for
+	expressions like x([],j) = scalar.
+
+2003-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (assignN): Allow lhs(:) = scalar.
+
+	* CNDArray.cc (ComplexNDArray::increment_index): New function.
+	* dNDArray.cc (NDArray::increment_index): Likewise.
+	* boolNDArray.cc (boolNDArray::increment_index): Likewise.
+	* chNDArray.cc (charNDArray::increment_index): Likewise.
+
+	* dim-vector.h (rows, cols): Delete unused data members.
+
+	* Array.cc (Array<T>::get_size): Fix thinko.
+
+2003-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::squeeze): New function.
+	* CNDArray.h (ComplexNDArray::squeeze): Likewise.
+	* dNDArray.h (NDArray::squeeze): Likewise.
+	* boolNDArray.h (boolNDArray::squeeze): Likewise.
+	* chNDArray.h (charNDArray::squeeze): Likewise.
+
+2003-10-06  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* Array.cc (ArrayN<T>::indexN): New definition.
+	* Array.h (Array<T>::indexN): Provide decl.
+	* Array.cc (ArrayN<T>::index (idx_vector&, int, const T&):
+	Call indexN if more than 2 indices.
+	(ArrayN<T>::index (Array<idx_vector>&, int, const T&)):
+	Make it (mostly) work.
+	* ArrayN-inline.h (number_of_elements, get_ra_idx, short_freeze):
+	New functions.
+
+2003-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (do_readline): Pass eof to octave_fgetl.
+	* lo-utils.cc (octave_fgets, octave_fgetl): New overloaded
+	versions with eof arg.
+
+2003-09-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (dimensions): Now public.
+	template <class LT, class RT>
+	(assign (Array<LT>&, const Array<RT>&, const LT&),
+	assign1 (Array<LT>&, const Array<RT>&, const LT&),
+	assign2 (Array<LT>&, const Array<RT>&, const LT&),
+	assignN (Array<LT>&, const Array<RT>&, const LT&),
+	resize_no_fill (int),
+	resize_no_fill (int, int),
+	resize_no_fill (int, int, int),
+	resize_no_fill (const dim_vector&),
+	resize_and_fill (int, const T&),
+	resize_and_fill (int, int, const T&),
+	resize_and_fill (int, int, int, const T&),
+	resize_and_fill (const dim_vector&, const T&)): Now public.
+
+	* Array.cc: Include <climits>.
+
+2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc: Merge Array-idx.h.
+	* Array-idx.h: Delete.
+
+	* chNDArray.h, chNDArray.cc, boolNDArray.h, boolNDArray.cc: New files.
+
+	* Array.h, Array-idx.h, Array.cc: Fold all N-d functionality here.
+	Turn inheritance hierarchy upside down (2-d and 3-d arrays are now
+	just special cases of the general purpose N-d Array object).
+
+	* dim-vector.h: New file.  Use dim_vector objects instead of
+	ints or Array<int> objects to represent the size of Array
+	objects.
+
+	* MArray-defs.h (INSTANTIATE_MARRAYN_FRIENDS): New macro.
+
+	* Array2-idx.h, Array3-idx.h, Array2.cc, Array3.cc: Delete.
+
+	* mx-base.h: Include NDArray header files.
+
+	* MArray-C.cc, MArray-d.cc: Also instantiate ArrayN objects.
+
+	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-d.cc, Array-i.cc,
+	Array-s.cc: Also instantiate ArrayN objects.
+	Don't instantiate assign funcitons for Array2 objects.
+
+	* CDiagMatrix.cc (ComplexDiagMatrix::diag): Signal error with
+	liboctave_error_handler, not cerr.
+	* CMatrix.cc (ComplexMatrix::diag): Likewise.
+	* dDiagMatrix.cc (DiagMatrix::diag): Likewise.
+	* dMatrix.cc (Matrix::diag): Likewise.
+
+	* Array-flags.cc, Array.cc, Array.h, Array2.h, Array3.h, ArrayN.h:
+	Omit checks for HEAVYWEIGHT_INDEXING.
+
+2003-09-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-base.h: Include CNDarray.h.  Include dNDArray.h, not NDArray.h.
+
+	* CNDARray.h, CNDArray.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* dNDArray.h: Rename from NDArray.h.
+	* dNDArray.cc: Rename from NDArray.cc.
+	* Makefile.in: Rename them here too.
+
+2003-09-10  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* mx-base.h: Include NDArray.h, not ArrayN.h.
+
+	* MArrayN.cc, MArrayN.h, NDArray.h, NDArray.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2003-09-09  David Bateman  <dbateman@free.fr>
+
+	* lo-specfun.cc (zbesj, zbesy, zbesi, zbesk, zbesh1, zbesh2, airy,
+	biry): Always request scaled results from AMOS functions and
+	perform reverse scaling on results if scaled result not requested
+	by user.
+
+2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+ 	* lo-specfun.cc (xlgamma): Require nonnegative argument.
+
+2003-09-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-d.cc: Instantiate assign functions.
+
+2003-09-09  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ArrayN-idx.h (vector_equivalent, equal_arrays): New functions.
+	(get_elt_idx): Index ra_idx correctly.
+
+	* ArrayN-inline.h (index_in_bounds): Index is also condidered in
+	bounds if it is exactly on the bound.
+
+	* ArrayN.cc (ArrayN<T>::maybe_delete_dims): New function.
+	* ArrayN.h: Provide decl.
+
+	* ArrayN.h (ArrayN<T>::ArrayN<T> (const Matrix&)): New constructor.
+
+	* idx-vector.h (idx_vector::orig_dims): New member variable.
+	(idx_vector::idx_vector_rep::orig_dimensions): New function.
+	(idx_vector::orig_dimensions): New function.
+
+2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (xlgamma): Require nonnegative argument.
+
+2003-09-04  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ArrayN-idx.h (maybe_delete_elements): Implement function.
+	(is_in, how_many_lgt, all_ones): New functions.
+
+2003-09-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (MATRIX_INC): Add ArrayN-inlines.h to the list.
+
+2003-09-03  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ArrayN-inline.h: New file.
+	(index_in_bounds, increment_index): Move here.
+	* ArrayN.cc: From here.
+
+	* ArrayN.h (maybe_delete_elements): New arg, resize_fill_value.
+	* ArrayN-idx.h (assign): New function.
+
+2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (zbesj, zbesy, zbesi, zbesk, airy, biry):
+	Also zero imaginary part of result if real part of input value is
+	zero.
+
+2003-07-30  Heine Kolltveit  <kolltvei@idi.ntnu.no>
+
+	* mx-base.h: Include ArrayN.h.
+
+2003-30-07  Heine Kolltveit  <kolltvei@idi.ntnu.no>
+
+	* ArrayN.cc (operator <<): Corrected output.
+
+2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ArrayN.cc (increment_index): New arg, start_dimension.
+
+2003-07-29  Heine Kolltveit  <kolltvei@idi.ntnu.no>
+
+	* ArrayN.cc (operator <<): Improve output readability.
+
+2003-07-29  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ArrayN.cc (ArrayN<T>::resize (const Array<int>&, const T&)):
+	* ArrayN.cc (ArrayN<T>::resize (const Array<int>&)):
+	Initialize old_len before changing size.
+
+2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Use $(INSTALL), not
+	$(INSTALL_PROGRAM) for $(SHLLIB) files.
+
+2003-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xmin, xmax): Handle NaN in a Matlab-compatible
+	way.  Handle NA in an R-compatible way.
+
+	* lo-cieee.c (lo_ieee_is_NaN_or_NA): Also check for lo_ieee_is_NA.
+	(lo_ieee_is_NA): Don't call isnan unless HAVE_ISNAN is defined.
+
+	* lo-mappers.h (octave_is_NA (const Complex&)): Provide decl.
+	(octave_is_NaN_or_NA (const Complex&)): Likewise.
+
+	* dMatrix.cc (Matrix::row_min, Matrix::row_max,
+	Matrix::column_min, Matrix::column_max): Ignore NaNs.
+	* CMatrix.cc (ComplexMatrix::row_min, ComplexMatrix::row_max,
+	ComplexMatrix::column_min, ComplexMatrix::column_max): Likewise.
+
+2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign (Array2<LT>&, const Array2<RT>&, const LT&)):
+	Pass true for resize_ok arg to freeze.
+	* Array-idx.h (assign (Array<LT>&, const Array<RT>&, const LT&)):
+	Likewise.
+
+	* idx-vector.cc (IDX_VEC_REP::freeze): New arg, warn_resize;
+	resize_ok arg is now bool.
+	* idx-vector.h (idx_vector::freeze): Likewise.
+
+	* Array-flags.cc, Array-flags.h (liboctave_wrore_flag):
+	Rename from liboctave_rre_flag.  Now bool.
+	(liboctave_wfi_flag): Now bool.
+
+	* Array2-idx.h (MAYBE_RESIZE_LHS): Don't check liboctave_rre_flag.
+
+2003-07-11  Russell Standish  <R.Standish@unsw.edu.au>
+
+	* Array.h (resize_fill_value): Now a top-level template function.
+	Accept object as argument.  Change all uses.
+
+2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-flags.cc, Array-flags.h (liboctave_pcv_flag): Delete.
+
+	* Array2-idx.h (Array2<T>::index): Use liboctave_wfi_flag, not
+	liboctave_dfi_flag.
+	(assign): Likewise.  For indexed assignments like X(I) = RHS with
+	X undefined or empty, always create a row vector.
+
+	* Array-flags.cc (liboctave_wfi_flag): Rename from liboctave_dfi_flag.
+	* Array-flags.h (liboctave_wfi_flag): Ditto.
+
+2003-06-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&, int, const T&)):
+	Magic colon indexing always produces an object with one column.
+
+2003-06-21  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* kpse-xfns.h (NAME_BEGINS_WITH_DEVICE): Arg is std::string, not char*.
+
+	* lo-ieee.h (signbit): Eliminate redundant extern "C" decl.
+
+2003-06-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (any_element_is_negative): If new optional arg
+	neg_zero is true, also return true for negative zero.
+
+2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.cc (DASSL::do_integrate): Set liw to 21 + n, not 20 + n.
+	Handle step limit.
+	* DASSL-opts.in: New option for step limit.
+
+2003-06-16  Per Persson  <persquare@mac.com>
+
+	* oct-shlib.cc: Include mach-o/dyld.h, not Mach-O/dyld.h.
+
+2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASRT.cc (DASRT::integrate): Set liw to 21 + n, not 20 + n.
+	Store step limit in iwork(20), not iwork(18).
+
+2003-05-16  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* oct-rand.cc: Use liboctave's clock layer instead of the system clock.
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Handle DESTDIR.
+
+	* kpse.cc (kpse_path_iterator::next): Skip consecutive colons here.
+	(kpse_path_iterator::set_end): Don't miss last element when not
+	followed by a colon.
+
+2003-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (Array<T>::index): Fix off-by-one error.
+
+2003-05-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* kpse.cc (kpse_absolute_p): Fix typo in translation.
+	(find_first_of): Also do an absolute search on each
+	name before looking in the path.
+
+2003-05-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* kpse.cc (dir_list_add): Ensure that directory ends with a
+	directory separator.
+
+2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.cc: Include kpse.cc here.
+
+	* kpse.cc: All functions are now static.  Massive surgery to
+	condense kpathsearch library to a single file of just the
+	essentials for Octave and convert to using C++ strings (no more
+	calls to malloc, very few calls to new, so there should be much
+	less potential for introducing memory leaks now).
+
+	* Makefile.in (EXTRAS): Move kpse.cc here from
+	LIBOCT_PATHSEARCH_CXX_SOURCES.
+
+	* kpse.h, kpse-config.h: Delete.
+	* Makefile.in (INCLUDES): Delete them from the list.
+
+2003-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* str-vec.cc (string_vector::append (const std::string&),
+	string_vector::append (const string_vector&)): New methods.
+
+2003-04-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* kpse.cc, kpse.h: Replace fn_type with std::string.
+
+	* lo-ieee.h (lo_ieee_signbit): Provide signbit decl for MinGW systems.
+
+	* kpse.cc (xclosedir): Don't define or declare for Windows.
+	(READABLE): Now a static function to avoid warnings from MinGW
+	compiler.
+
+2003-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* kpse.cc: Move most functions from kpse-xfns.c here and make
+	static.  Include most of kpse-xfns.h directly, removing
+	unnecessary bits.
+
+	* dMatrix.cc (Matrix::pseudo_inverse): Now const.
+	* CMatrix.cc (ComplexMatrix::pseudo_inverse): Likewise.
+
+2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* getopt.c, getopt1.c, getopt.h: Move here from kpathsea.
+	* Makefile.in: Add them to the appropriates lists.
+
+	* oct-getopt.c: Include "getopt.h", not <kpathsea/getopt.h>.
+
+	* Makefile.in (liboctave.$(LIBEXT), liboctave.$(SHLEXT)): Adjust
+	for new locations of kpathsea objects.
+	Delete kpathsea targets.
+
+	* pathsearch.cc (dir_path::set_program_name): Delete.
+
+	* kpse.cc: New file.
+	* Makefile.in (LIBOCT_PATHSEARCH_CXX_SOURCES): Add it to the list.
+
+	* kpse.c: New file.
+	* Makefile.in (LIBOCT_PATHSEARCH_C_SOURCES): Add it to the list.
+
+	* kpse.h, kpse-config.h, kpse-xfns.h: New files.
+	* Makefile.in (INCLUDES): Add them to the list.
+
+	* oct-kpse.h: Delete.
+	* Makefile.in (INCLUDES): Delete it from the list.
+
+2003-04-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleSVD.h (SVD::SVD, SVD::operator =): Also copy type_computed.
+	* CmplxSVD.h (ComplexSVD::ComplexSVD, ComplexSVD::operator =):
+	Likewise.
+	From Quentin H. Spencer <qspencer@ieee.org>.
+
+2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-getopt.c: Include <kpathsea/getopt.h>, not "getopt.h".
+
+2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Handle systems with or
+	without placement delete.
+
+	* CMatrix.cc (ComplexMatrix::all_elements_are_real): Don't lose -0
+	imaginary parts.
+
+	* lo-ieee.h (lo_ieee_signbit): New macro.
+
+2003-02-18  David Bateman  <dbateman@free.fr>
+
+	* dMatrix.cc (Matrix::inverse, Matrix::determinant, Matrix::solve):
+	Use Lapack instead of Linpack.
+	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::determinant,
+	ComplexMatrix::solve): Likewise.
+
+	* dMatrix.cc (Matrix::determinant, Matrix::inverse): New arg,
+	calc_cond.  If 0, skip condition number calculation.
+	* CMatrix.cc (ComplexMatrix::determinant, ComplexMatrix::inverse):
+	Likewise.
+
+	* CmplxLU.cc (ComplexLU::ComplexLU): Allow non-square matrices.
+	* dbleLU.cc (LU::LU): Likewise.
+	* base-lu.cc (base_lu::L), base_lu::U, base_lu::P): Likewise.
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+  	* octave.test/arith/prod-4.m, octave.test/arith/sum-4.m:
+
+2003-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index): Fix thinko.
+	Additional compatibility fix.
+
+2003-02-13  Arno Klaassen  <arno@scito.com>
+
+	* Array2-idx.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
+	ArrayN.cc, ArrayN.h, DiagArray2.cc, DiagArray2.h, MDiagArray2.h:
+	Sprinkle with Array<T>:: as necessary for gcc 3.4.
+
+2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&, int, const T&)):
+	Compatibility fix.
+
+2003-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CColVector.cc (ComplexColumnVector::extract_n): New function.
+	* CRowVector.cc (ComplexRowVector::extract_n): Likewise.
+	* CMatrix.cc (ComplexMatrix::extract_n): Likewise.
+	* dColVector.cc (ColumnVector::extract_n): Likewise.
+	* dRowVector.cc (RowVector::extract_n): Likewise.
+	* dMatrix.cc (Matrix::extract_n): Likewise.
+
+	* CColVector.cc (ComplexColumnVector::insert): Improve efficiency
+	with make_unique and xelem.
+	* CRowVector.cc (ComplexRowVector::insert): Likewise.
+	* CMatrix.cc (ComplexMatrix::insert, ComplexMatrix::fill,
+	ComplexMatrix::extract, ComplexMatrix::row,
+	ComplexMatrix::column): Likewise.
+	* dColVector.cc (ColumnVector::insert): Likewise.
+	* dRowVector.cc (RowVector::insert): Likewise.
+	* dMatrix.cc (Matrix::insert, Matrix::fill, Matrix::extract,
+	Matrix::row, Matrix::column): Likewise.
+
+2003-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (imag (double)): Return 0.0 for all args, even NaN.
+
+2003-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc, dMatrix.cc: Move min and max functions here, from
+	src/DLD-FUNCTIONS/minmax.cc, and make them extern.
+	* CMatrix.h, dMatrix.h: Provide decls.
+
+2003-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rand.h, oct-rand.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index): Fix off-by-one error.
+
+2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* oct-syscalls.cc: Include signal.h.
+
+2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-syscalls.cc (octave_syscalls::kill): New function.
+	* oct-syscalls.h: Provide decl.
+
+
+2003-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::read): Set size and return immediately if
+	there is nothing to read.
+
+2003-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cutils.c: Define _XOPEN_SOURCE.
+
+2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* getopt.h: Update to version from kpathsearch, so we will install
+	the version that we are using.
+
+	* getopt.c, getopt1.c: Delete.
+	(INCLUDES): Delete them from the list.  We'll get these files from
+	kpathsearch.
+
+	* Makefile.in (liboctave.$(LIBEXT)): Link directly to
+	../kpathsea/STATIC/*.o.
+	(liboctave.$(SHLEXT)): Link directly to	../kpathsea/SHARED/*.o.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (read_int, write_int): Avoid warnings about
+	unreachable code.
+
+	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Define operator delete
+	to correspond to placement new operator.
+
+	* dbleDET.cc (DET::value_will_overflow): We want det[1], not det[2].
+	(DET::value_will_underflow): Likewise.
+	* CmplxDET.cc (ComplexDET::value_will_overflow): Likewise.
+	(ComplexDET::value_will_underflow): Likewise.
+
+	* Makefile.in (distclean): Also remove stamp-prereq.
+
+	* Array2-idx.h (Array2<T>::assign): If assignment conforms but the
+	RHS and index are empty matrices, don't do anything.
+
+2002-12-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.cc (make_retval, free_c_array, make_c_names,
+	delete_c_names): New helper functions.
+	(dir_path::find_first_of): New function.
+	(dir_path::find_all_first_of): Likewise.
+	* pathsearch.h: Provide decls.
+
+	* oct-kpse.c (octave_kpse_path_find_first_of): New function.
+	(octave_kpse_all_path_find_first_of): Likewise.
+	* oct-kpse.h: Provide decls.
+
+2002-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ODESSA.cc (ODESSA::integrate): Handle maxord.
+	* ODESSA-opts.in: Likewise.
+
+	* LSODE.cc (ODESSA::integrate): Handle maxord.
+	* LSODE-opts.in: Likewise.
+
+2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ODESSA.cc (ODESSA::ODESSA): Initialize "initialized" data member
+	in all constructors.
+
+	* Makefile.in (liboctave.$(SHLEXT)): Include $(LIBKPATHSEA) here.
+	(LINK_DEPS): Not here.
+
+2002-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* str-vec.cc (string_vector::compare): New static member function.
+	* str-vec.h: Provide decl.
+	(string_vector::sort): Use it.
+	(str_vec_compare): Delete static function.
+
+	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): Also declare and define
+	a placement operator new.
+
+2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Matrix.h: Include mx-ops.h too.
+	* mx-ops.h: New file.
+
+2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASRT.cc, DASRT.h, Array.cc, ArrayN.h, Array.h, Array2.cc,
+	Array2.h, Array3.cc, Array3.h, Bounds.cc, Bounds.h, CRowVector.h,
+	CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc, CMatrix.h,
+	CRowVector.cc, CColVector.h, ChangeLog, CmplxAEPBAL.cc,
+	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
+	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
+	CmplxQR.h, CmplxQRP.cc, ArrayN.cc, CmplxQRP.h, CmplxSCHUR.cc,
+	CmplxSCHUR.h, CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, dMatrix.cc,
+	CollocWt.h, EIG.h, DASSL.cc, FEGrid.h, DASSL.h, DiagArray2.cc,
+	DiagArray2.h, EIG.cc, FEGrid.cc, LSODE.cc, LPsolve.cc, LPsolve.h,
+	LSODE.h, LinConst.cc, LinConst.h, MArray.h, MArray.cc, MArray2.cc,
+	MArray2.h, MDiagArray2.cc, MDiagArray2.h, Range.cc, NLConst.h,
+	NLEqn.cc, Range.h, NLEqn.h, Quad.cc, dbleQR.h, Quad.h, base-lu.cc,
+	base-lu.h, boolMatrix.cc, boolMatrix.h, dColVector.cc,
+	dColVector.h, dDiagMatrix.cc, dDiagMatrix.h, dMatrix.h,
+	dRowVector.cc, dRowVector.h, dbleAEPBAL.cc, dbleAEPBAL.h,
+	dbleCHOL.cc, dbleCHOL.h, dbleDET.cc, dbleDET.h, dbleHESS.cc,
+	dbleHESS.h, dbleLU.cc, dbleLU.h, dbleQR.cc, dbleQRP.cc, dbleQRP.h,
+	dbleSCHUR.cc, dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc,
+	idx-vector.h, oct-alloc.cc, CColVector.cc, DASPK.h, DASPK.cc,
+	ODESSA.h, ODES.h, ODESSA.cc, ODES.cc, chMatrix.h, chMatrix.cc:
+	Use "defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)" instead of
+	"! defined (NO_PRAGMA_INTERFACE_IMPLEMENTATION)".
+
+2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-shlib.cc (octave_dlopen_shlib::open): Use RTLD_GLOBAL too.
+	From Remy Bruno <remy.bruno@libertysurf.fr>
+
+2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc: Use F77_FUNC instead of F77_XFCN for calls to
+	fortran code that should run fast enough that it is not worth all
+	the setup costs of F77_XFCN.
+
+	* Quad.cc (user_function): Surround body of function with
+	BEGIN_INTERRUPT_WITH_EXCEPTIONS, END_INTERRUPT_WITH_EXCEPTIONS.
+	* ODESSA.cc (odessa_f, odessa_j, odessa_b): Likewise.
+	* NLEqn.cc (hybrd1_fcn, hybrj1_fcn): Likewise.
+	* LSODE.cc (lsode_f, lsode_j): Likewise.
+	* DASSL.cc (ddassl_f, ddassl_j): Likewise.
+	* DASRT.cc (ddasrt_f, ddasrt_j, ddasrt_g): Likewise.
+	* DASPK.cc (ddaspk_f, ddaspk_psol, ddaspk_j): Likewise.
+
+2002-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): Check defined (__osf__) instead
+	of ! defined (linux).
+
+2002-11-09  Per Persson  <persquare@mac.com>
+
+	* oct-shlib.cc (octave_dyld_shlib): New class.
+	(make_shlib): Instantiate octave_dyld_shlib.
+
+2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc, dMatrix.cc: Sprinkle with OCTAVE_QUIT.
+
+	* ODESSA.cc (odessa_f, odessa_j, odessa_b): Abort on error.
+
+	* Array.h: Include <cstddef> here.
+
+2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASPK.cc (DASPK::do_integrate): Resize rwork and iwork before
+	using them.  Accept inequality contraint option of 0.  Assign
+	pabs_tol and prel_tol before calling DASPK.  Don't redeclare
+	abs_tol and rel_tol.
+
+	* cmd-edit.h (command_editor::filename_completion_desired): New
+	static function.
+	(command_editor::do_filename_completion_desired): New virtual function.
+	* oct-rl-edit.c (octave_rl_filename_completion_desired): New function.
+	* oct-rl-edit.h: Provide decl.
+
+	* Array2.cc (Array2<T>::get_size): #define MALLOC_OVERHEAD to
+	avoid OS X linker bug.
+	* ArrayN.cc (ArrayN<T>::get_size): Likewise.
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ODESFunc.h (ODESFunc::ODES_fsub, ODESFunc::ODES_bsub,
+	ODESFunc::ODES_jsub): Reorder args for consistency with other
+	solvers.
+	* ODESSA.cc: Fix all callers.
+
+	* mx-inlines.cc (MX_BASE_REDUCTION_OP): Also return scalar
+	MT_RESULT if nr == 1 && nc == 0 && dim == -1 (i.e.,
+	sum(zeros(1,0)) returns 0, not [](1x0)).
+
+2002-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LINK_DEPS): Include $(FLIBS) here too.
+
+2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASRT.cc (DASRT::integrate): Fix computation of lrw
+	(ddasrt_f): Combine loops.
+
+	* NLEqn.cc (NLEqn::solve): Return current estimate of solution
+	instead of empty vector if user termninates iteration.
+
+2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-utils.cc (read_inf_nan_na, octave_read_double,
+	octave_read_complex, octave_write_double, octave_write_complex):
+	New functions.
+	* CMatrix.cc (operator << (std::ostream&, const ComplexMatrix&)):
+	Use octave_write_complex.
+	(operator >> (std::istream&, const ComplexMatrix&)):
+	Use octave_read_complex.
+	* dMatrix.cc (operator << (std::ostream&, double)):
+	Use octave_write_double.
+	(operator >> (std::istream&, double)): Use octave_read_double.
+
+2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-kpse.c (octave_kpse_clear_dir_cache): Delete.
+	* oct-kpse.h: Delete decl.
+	* pathsearch.cc (dir_path::init): Delete unnecessary call to
+	::octave_kpse_clear_dir_cache.
+
+2002-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-sstream.h: Undef HAVE_SSTREAM if using a version of g++
+	earlier than 3.0.
+
+	* Makefile.in (LINK_DEPS): Include $(LIBKPATHSEA) here.
+	(liboctave.$(SHLEXT)): Not here.
+
+2002-10-17  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* oct-shlib.cc (octave_w32_shlib): New class to support Windows.
+
+2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Don't bother with versions for
+	$(SHLBIN) files.
+
+2002-10-16  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in (LIB_DEPS): Include $(LIBS).
+
+2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cieee.c: Move everything but lo_ieee_init here.
+	(lo_ieee_Inf_value, lo_ieee_NA_value, lo_ieee_NaN_value):
+	New functions.
+
+	* Makefile.in (install): No need to use cd to create links.
+	(LINK_DEPS): Include $(LIBOCTAVE_LFLAGS) before list of libraries.
+
+2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: Merge liboctave with liboct-readline and
+	liboct-pathsearch.
+	Use link dependencies for shared libs if INCLUDE_LINK_DEPS.
+	(libraries): Depend on versioned library.
+	(liboctave.$(SHLEXT), liboctave.$(SHLEXT_VER)): Reverse actions --
+	build unversioned library, symbolic link adds version info.
+	(install, uninstall): Handle link and load forms of the library
+	separately.
+
+2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc: Use OCTAVE_USE_WINDOWS_API instead of __WIN32__ and
+	__CYGWIN__.
+
+	* file-ops.cc (file_ops::dir_sep_char, file_ops::dir_sep_str,
+	file_ops::dir_sep_chars): New static functions to replace
+	OCTAVE_DIR_SEP_CHAR, OCTAVE_DIR_SEP_STR, OCTAVE_DIR_SEP_CHARS.
+
+	* oct-env.cc (octave_env::do_set_program_name):
+	Use file_ops::dir_sep_chars instead of OCTAVE_DIR_SEP_CHARS.
+	(octave_env::do_base_pathname): Likewise.
+	(octave_env::do_make_absolute): Likewise.
+
+	* oct-env.cc (octave_env::do_make_absolute):
+	Use file_ops::dir_sep_str instead of OCTAVE_DIR_SEP_STR.
+	(octave_env::do_get_home_directory): Likewise.
+
+	* file-ops.cc (is_dir_sep): Use dir_sep_chars instead of embedding
+	that information here too.
+	(tilde_find_suffix, isolate_tilde_prefix, tilde_expand_word):
+	Use file_ops::dir_sep_char instead of OCTAVE_DIR_SEP_CHAR.
+
+	* file-ops.h: Use OCTAVE_HAVE_WINDOWS_FILESYSTEM and
+	OCTAVE_HAVE_POSIX_FILESYSTEM instead of __WIN32__ and __CYGWIN__.
+
+2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-env.h (octave_env::current_directory): Now mutable.
+	(octave_env:do_getcwd): Now const.
+
+	* file-ops.h, file-ops.cc (file_ops::is_dir_sep): New function.
+	(OCTAVE_DIR_SEP_CHAR, OCTAVE_DIR_SEP_STR, OCTAVE_DIR_SEP_CHARS,
+	OCTAVE_CURRENT_DIR_STR): New macros.
+	* oct-env.cc (is_dir_sep): Delete.
+	(octave_env::do_base_pathname): Look for OCTAVE_DIR_SEP_CHARS, not '/'.
+	(octave_env::do_set_program_name): Likewise.
+	(octave_env::do_polite_directory_format): Use file_ops::is_dir_sep
+	instead of checking for '/'.
+	(octave_env::pathname_backup): Likewise.
+	(octave_env::do_absolute_pathname): Likewise.
+	(octave_env::do_make_absolute): Likewise.
+	If dot_path is empty, use getcwd to set current_dir.
+	(octave_env::do_get_home_directory): Use OCTAVE_DIR_SEP_STR
+	instead of "/".
+
+2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* lo-cutils.c: On non-Posix Windows systems, include winsock.h.
+
+2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* oct-env.cc (octave_env::do_absolute_pathname): Recognize
+	absolute path names under MinGW as well.
+
+2002-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-env.cc: Include <cctype> too.
+
+2002-10-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-env.cc (octave_env::do_absolute_pathname): Handle Windows
+	filenames.
+	(octave_env::do_make_absolute): Check for absolute name with
+	do_absolute_path.
+	(octave_env::do_chdir): Likewise.
+	(is_dir_sep): New function.
+
+2002-10-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* oct-time.cc (octave_time::stamp): Better resolution for Windows
+	systems.
+
+2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::read): Clean up error handling logic.
+
+2002-09-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (file_ops::mkdir): Handle one-arg mkdir here.
+
+	* lo-specfun.cc (acosh): Call xdacosh, not dacosh.
+
+2002-09-27  Per Persson  <persquare@mac.com>
+
+	* oct-group.cc (octave_group::octave_group): Dont' forget to set
+	gr_gid too.
+
+2002-09-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xisnan, xfinite, xisinf): Simply forward to
+	lo_ieee_* functions.
+	* Makefile.in (LIBOCTAVE_C_SOURCES): Add lo-cieee.c to the list.
+	* lo-ieee.cc (lo_ieee_double): Rename from ieee_double.
+	(LO_IEEE_NA_HW, LO_IEEE_NA_LW): Rename from NA_HW and NA_LW.
+	* lo-cieee.c: New file.
+	[SCO] (isinf, isnan): Move here from lo-ieee.cc.
+	* lo-ieee.h: Now all extern "C".
+	(lo_ieee_isnan, lo_ieee_finite, lo_ieee_isinf): Move here from
+	lo-mappers.cc and rename from xisnan, xfinite, xisinf.
+
+	* lo-ieee.cc (lo_ieee_hw, lo_ieee_low): Rename from hw and lw.
+	Now extern.
+
+2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc, Array.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
+	ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
+	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
+	CMatrix.h, CRowVector.cc, CRowVector.h, CmplxAEPBAL.cc,
+	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
+	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
+	CmplxQR.h, CmplxQRP.cc, CmplxQRP.h, CmplxSCHUR.cc, CmplxSCHUR.h,
+	CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DAE.cc,
+	DASPK.cc, DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h,
+	DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc, FEGrid.h,
+	LPsolve.cc, LPsolve.h, LSODE.cc, LSODE.h, LinConst.cc, LinConst.h,
+	MArray.cc, MArray.h, MArray2.cc, MArray2.h, MDiagArray2.cc,
+	MDiagArray2.h, NLConst.h, NLEqn.cc, NLEqn.h, ODES.cc, ODES.h,
+	ODESSA.cc, ODESSA.h, Quad.cc, Quad.h, Range.cc, Range.h,
+	base-lu.cc, base-lu.h, boolMatrix.cc, boolMatrix.h, chMatrix.cc,
+	chMatrix.h, dColVector.cc, dColVector.h, dDiagMatrix.cc,
+	dDiagMatrix.h, dMatrix.cc, dMatrix.h, dRowVector.cc, dRowVector.h,
+	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleDET.cc,
+	dbleDET.h, dbleHESS.cc, dbleHESS.h, dbleLU.cc, dbleLU.h,
+	dbleQR.cc, dbleQR.h, dbleQRP.cc, dbleQRP.h, dbleSCHUR.cc,
+	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc, idx-vector.h,
+	oct-alloc.cc:
+	If __GNUG__, use pragma interface/implementation.  Allow this to
+	be turned off by defining NO_PRAGMA_INTERFACE_IMPLEMENTATION.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* file-ops.cc (file_ops::readlink): Don't declare buffer if
+	system readlink function is not available.
+
+	* lo-mappers.cc (xerf, xerfc): Delete.
+	* lo-mappers.h (xerf, xerfc): Delete decls.
+
+	* lo-mappers.cc: Remove unused #define M_PI.
+	* lo-specfun.cc: Add #define M_PI if needed.
+
+2002-09-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (do_decode_prompt_string): Cope with possibility
+	that geteuid doesn't exist.
+
+	* LP.h: Rename LP class to octave_LP.
+	LPsolve.h: Change all uses.
+
+	* file-ops.cc, oct-passwd.cc oct-syscalls.cc oct-group.cc: Remove
+	incorrect token-pasting op.
+
+	* statdefs.h [! S_ISLNK]: undef HAVE_LSTAT instead of trying to
+	define lstat.
+
+2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc, Array.h, Array2.cc, Array2.h, Array3.cc, Array3.h,
+	ArrayN.cc, ArrayN.h, Bounds.cc, Bounds.h, CColVector.cc,
+	CColVector.h, CDiagMatrix.cc, CDiagMatrix.h, CMatrix.cc,
+	CMatrix.h, CRowVector.cc, CRowVector.h, CmplxAEPBAL.cc,
+	CmplxAEPBAL.h, CmplxCHOL.cc, CmplxCHOL.h, CmplxDET.cc, CmplxDET.h,
+	CmplxHESS.cc, CmplxHESS.h, CmplxLU.cc, CmplxLU.h, CmplxQR.cc,
+	CmplxQR.h, CmplxQRP.cc, CmplxQRP.h, CmplxSCHUR.cc, CmplxSCHUR.h,
+	CmplxSVD.cc, CmplxSVD.h, CollocWt.cc, CollocWt.h, DAE.cc,
+	DASPK.cc, DASPK.h, DASRT.cc, DASRT.h, DASSL.cc, DASSL.h,
+	DiagArray2.cc, DiagArray2.h, EIG.cc, EIG.h, FEGrid.cc, FEGrid.h,
+	LPsolve.cc, LPsolve.h, LSODE.cc, LSODE.h, LinConst.cc, LinConst.h,
+	MArray.cc, MArray.h, MArray2.cc, MArray2.h, MDiagArray2.cc,
+	MDiagArray2.h, NLConst.h, NLEqn.cc, NLEqn.h, ODES.cc, ODES.h,
+	ODESSA.cc, ODESSA.h, Quad.cc, Quad.h, Range.cc, Range.h,
+	base-lu.cc, base-lu.h, boolMatrix.cc, boolMatrix.h, chMatrix.cc,
+	chMatrix.h, dColVector.cc, dColVector.h, dDiagMatrix.cc,
+	dDiagMatrix.h, dMatrix.cc, dMatrix.h, dRowVector.cc, dRowVector.h,
+	dbleAEPBAL.cc, dbleAEPBAL.h, dbleCHOL.cc, dbleCHOL.h, dbleDET.cc,
+	dbleDET.h, dbleHESS.cc, dbleHESS.h, dbleLU.cc, dbleLU.h,
+	dbleQR.cc, dbleQR.h, dbleQRP.cc, dbleQRP.h, dbleSCHUR.cc,
+	dbleSCHUR.h, dbleSVD.cc, dbleSVD.h, idx-vector.cc, idx-vector.h,
+	oct-alloc.cc:
+	Use USE_PRAGMA_INTERFACE_IMPLEMENTATION instead of __GNUG__
+	to decide whether to use the interface/implementation pragmas.
+
+2002-09-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Add lo-sstream.h to the list.
+
+2002-08-17  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* CmplxCHOL.h, CollocWt.h, cmd-edit.h, oct-shlib.h: Don't use
+	qualified names.
+
+2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h, Array2-idx.h, DiagArray2.cc, Array2.cc, Array3.cc,
+	ArrayN.cc: Add typename where needed.
+
+	* DASPK.cc: Include lo-sstream.h and use macros instead of using
+	strstream classes directly.
+	* DASRT.cc: Likewise.
+	* DASSL.cc: Likewise.
+	* LSODE.cc: Likewise.
+	* ODESSA.cc: Likewise.
+
+	* cmd-hist.cc: Don't include <strstream>.
+	* oct-shlib.cc: Likewise.
+
+	* lo-sstream.h: New file.
+
+2002-08-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.h (rel_tol, abs_tol, px, pabs_tol, piwork, prwork, itol):
+	New data members.
+	(LSODE::sanity_checked): Delete unused data member.
+
+	* DASPKL.h (initialized, abs_tol, rel_tol, px, pxdot, pabs_tol,
+	prel_tol, pinfo, piwork, prwork): New data members.
+	* DASSL.h (DASSL): Likewise.
+
+	* DASRT.h (DASRT::sanity_checked): Delete unused data member.
+
+	* DASRT.cc (DASRT::integrate (double)): Better handling of
+	initialization, changes in options, etc.
+	* DASPK.cc (DASPK::do_integrate): Likewise.
+	* DASSL.cc (DASSL::do_integrate): Likewise.
+	* LSODE.cc (LSODE::do_integrate): Likewise.
+
+2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DAEFunc.h (DAEFunc::reset): New data member.
+	* DAERTFunc.h (DAERTFunc::reset): Likewise.
+
+	* base-de.h (base_diff_eqn::set_stop_time): Force restart here.
+	(base_diff_eqn::clear_stop_time): Likewise.
+
+	* DASSL.cc (DASSL::do_integrate (double)): Handle more optoins.
+	* DASPK.cc (DASPK::do_integrate (double)): Likewise.
+
+2002-08-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* DASPK-opts.in, DASPK.h: Move include to .in file.
+	* DASRT-opts.in, DASRT.h: Likewise.
+	* DASSL-opts.in, DASSL.h: Likewise.
+	* LSODE-opts.in, LSODE.h: Likewise.
+	* NLEqn-opts.in, NLEqn.h: Likewise.
+	* ODESSA-opts.in, ODESSA.h: Likewise.
+
+2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (LSODE::error_message): Also return current T on
+	failures when that makes sense.
+	* DASSL.cc (DASSL::error_message): Likewise.
+	* DASRT.cc (DASRT::error_message): Likewise.
+	* DASPK.cc (DASPK::error_message): Likewise.
+	* ODESSA.cc (ODESSA:error_message): Likewise.
+
+	* Makefile.in (liboct-pathsearch.$(SHLEXT_VER)): Link to
+	$(LIBKPATHSEA) here.
+
+2002-08-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (lo_ieee_is_NA): New function.
+	(lo_ieee_is_NaN_or_NA): New function.
+	(octave_NA): New global value.
+	(octave_ieee_init): Initialize it.
+	* lo-mappers.cc (octave_is_NA): New function.
+	(octave_is_NaN_or_NA): New function.
+	(xisnan): Return false if NaN looks like a missing value.
+	(xisnan (const Complex&)): Use xisnan here.
+
+2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.h (ComplexMatrix::all, ComplexMatrix::any,
+	ComplexMatrix::cumprod, ComplexMatrix::cumsum,
+	ComplexMatrix::prod, ComplexMatrix::sum, ComplexMatrix::sumsq):
+	Default value for dim is -1, not 0.
+	* dMatrix.h (Matrix::all, Matrix::any, Matrix::cumprod,
+	Matrix::cumsum, Matrix::prod, Matrix::sum, Matrix::sumsq): Likewise.
+	* boolMatrix.h (boolMatrix:all, boolMatrix::any): Likewise.
+	* chMatrix.h (charMatrix::all, charMatrix::any): Likewise.
+
+	* mx-inlines.cc (MX_ANY_ALL_OP_ROW_CODE, MX_ANY_ALL_OP_COL_CODE):
+	New macros.
+	(MX_ANY_ALL_OP): Define MX_ANY_ALL_OP using them and
+	MX_BASE_REDUCTION_OP.
+	(MX_CUMULATIVE_OP): Fix spelling.  Change all uses.
+
+2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.h, chMatrix.cc (charMatrix::any, charMatrix::all):
+	Return boolMatrix, not Matrix.
+
+	* mx-inlines.cc (MX_ANY_ALL_OP, MX_ALL_OP, MX_ANY_OP): New macros.
+	* dMatrix.cc (Matrix::any): Replace guts with MX_ANY_OP.
+	(Matrix::all): Replace guts with MX_ALL_OP.
+	* CMatrix.cc (ComplexMatrix::any): Replace guts with MX_ANY_OP.
+	(ComplexMatrix::all): Replace guts with MX_ALL_OP.
+	* boolMatrix.cc (boolMatrix::any): Replace guts with MX_ANY_OP.
+	(boolMatrix::all): Replace guts with MX_ALL_OP.
+	* chMatrix.cc (charMatrix::any): Replace guts with MX_ANY_OP.
+	(charMatrix::all): Replace guts with MX_ALL_OP.
+
+	* dMatrix.h (Matrix::any): New arg, dim.
+	(Matrix::all): Likewise.
+	* CMatrix.h (ComplexMatrix::any): Likewise.
+	(ComplexMatrix::all): Likewise.
+	* boolMatrix.h (boolMatrix::any): Likewise.
+	(boolMatrix::all): Likewise.
+	* chMatrix.h (charMatrix::any): Likewise.
+	(charMatrix::all): Likewise.
+
+	* Makefile.in: Use $@-t instead of $@.t.
+
+2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (gammainc): New arg, err, for scalar version.
+	Use it in matrix versions to avoid spewing multiple errors.
+	Call xgammainc instead of dgamit.
+
+2002-07-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const boolMatrix&)):
+	Get rows and columns right in loop.
+	(ComplexMatrix::ComplexMatrix (const charMatrix&)): Likewise.
+
+2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASPK.cc (DASPK::do_integrate): Allow array tolerances.
+	* DASRT.cc (DASRT::integrate): Likewise.
+	* DASSL.cc (DASSL::do_integrate): Likewise.
+
+	* Quad.cc: Don't pass tolerances in constructors.
+
+	* DASPK-opts.in, DASRT-opts.in, DASSL-opts.in, LSODE-opts.in,
+	NLeqn-opts.in, ODESSA-opts.in, Quad-opts.in: New files.
+	* DASPK-opts.h, DASRT-opts.h, DASSL-opts.h, LSODE-opts.h,
+	NLeqn-opts.h, ODESSA-opts.h, Quad-opts.h: Generate automatically
+	from corresponding .in files.
+	* LSODE.h, Quad.h: Replace options class definitions with included
+	file.
+	* Makefile.in (OPTS_INC_SRC, OPTS_INC): New variables, new rule to
+	create OPTS_INC files from OPTS_INC_SRC files.
+	(stamp-prereq): New target.
+	(libraries): Depend on stamp-prereq.
+	Include stamp-prereq along with $(MAKEDEPS).
+
+2002-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* base-de.h (base_diff_eqn::istate): New data member.
+	(base_diff_eqn::integration_state): New member function.
+	* LSODE.h, LSODE.cc, ODESSA.h, ODESSA.cc: Delete corresponding
+	data members and functions.
+	* DASPK.h, DASRT.h, DASSL.h: Delete idid data member.
+	* DASPK.cc, DASRT.cc, DASSL.cc: Use istate instead of idid.
+
+2002-07-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* base-de.h (base_diff_eqn::stop_time,
+	base_diff_eqn::stop_time_set, base_diff_eqn::restart,
+	base_diff_eqn::integration_error): New data members.
+	(base_diff_eqn::set_stop_time, base_diff_eqn::clear_stop_time,
+	base_diff_eqn::force_restart, base_diff_eqn::integration_ok,
+	base_diff_eqn::error_message): New member functions.
+	* LSODE.h, LSODE.cc, DASSL.h, DASSL.cc, DASPK.h, DASPK.cc,
+	DASRT.h, DASRT.cc, ODESSA.h, ODESSA.cc: Delete corresponding data
+	members and functions.
+
+	* DASRT.h (DASRT::set_ng, DASRT::get_ng): Delete
+	* DASRT.cc (DASRT::DASRT): Set ng here.
+	(DASRT::integrate): Don't forget to set nn.
+
+	* DAEFunc.h (DAEFunc): Jacobian function now follows format of DASSL.
+	* DASSL.cc (ddassl_j): Make it work.
+	* DASPK.cc (ddaspk_j): Likewise.
+
+	* DAE.cc: Delete.
+
+	* DAERT.h, DAERTFunc.h, DASRT.h, DASRT.cc: New files for DAE
+	solving with root finding.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* base-dae.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* DAE.h (DAE): Derive from base_diff_alg_eqn, not base_diff_eqn.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ODE.h: Move integrate and do_integrate method declarations and
+	definitions here.
+	* base-de.h: From here.
+
+	* ODES.h, ODES.cc, ODESFunc.h, ODESSA.h, ODESSA.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	(LIBOCTAVE_CXX_SOURCES):
+
+2002-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* NLEqn.cc (NLEqn::error_message): New function.
+	* NLEqn.h (NLEqn::solution_state, NLEqn::solution_ok): New functions.
+
+2002-07-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-utils.cc (octave_fgetl): New function.
+	* cmd-edit.cc (do_readline): Use it instead of octave_fgets.
+
+2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (LSODE::error_message): New function.
+	* LSODE.h: Provide decl.
+	(LSODE::integration_state): New function.
+	(LSODE::integration_ok): New function.
+
+2002-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (LSODE_options::x_integration_method): New data member.
+	(LSODE_options::set_integration_method,
+	LSODE_options::integration_method): New functions.
+
+	* LSODE.h (LSODE_options::x_absolute_tolerance): Now Array<double>.
+	Change all uses.
+	(LSODE_OPTIONS::absolute_tolerance): Return Array<double>, not double.
+	(LSODE_OPTIONS::set_absolute_tolerance (const Array<double>&)):
+	New function.
+
+	* Array.h (Array::fortran_vec): New const version.
+
+2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (gnu_readline::history_search_backward): New function.
+	(gnu_readline::history_search_forward): Likewise.
+	(gnu_readline::gnu_readline): Use them instead of passing pointers
+	to extern "C" functions to octave_rl_ad_defun.
+
+2002-05-22  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* DASPK.cc (ddaspk_psol): Return value.
+	* oct-rl-edit.c: Use /* ... */ to comment.
+
+2002-05-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.h (DASSL_options::init): Undo previous change.
+	(DASSL_options::set_absolute_tolerance): Likewise.
+	* LSODE.h (LSODE_options::init): Likewise.
+	(LSODE_options::set_absolute_tolerance): Likewise.
+
+	* DASPK.h (DASPK_options::init): Use default absolute tolerance of
+	sqrt(eps), not eps^2.
+	DASPK_options::set_absolute_tolerance): Likewise.
+
+2002-05-17  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Array.h (Array<T>::resize_fill_value): Return default initialized
+	object.
+
+2002-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c (OCTAVE_RL_SAVE_STRING): New macro.
+	(octave_rl_set_name, octave_rl_set_basic_quote_characters): Use it.
+	(octave_rl_set_basic_word_break_characters,
+	octave_rl_set_completer_word_break_characters): New functions.
+	* oct-rl-edit.h: Provide decls.
+	* cmd-edit.cc (gnu_readline::do_set_basic_word_break_characters,
+	gnu_readline::do_set_completer_word_break_characters): New functions.
+	(command_editor::set_basic_quote_characters,
+	command_editor::set_completion_append_character): New static functions.
+	* cmd-edit.h: Provide decls.
+	(command_editor::do_set_basic_word_break_characters,
+	command_editor::do_set_completer_word_break_characters):
+	New virtual functions.
+
+	* CMatrix.h, boolMatrix.h, chMatrix.h, dMatrix.h
+	(resize_fill_value): New static function.
+
+	* Array-idx.h (Array<T>::index): New args, resize_ok and
+	resize_fill_value.
+	* Array2-idx.h (Array2<T>::index): Likewise.
+	* ArrayN-idx.h (ArrayN<T>::index): Likewise.
+
+	* Array2.cc (Array<T>::print_info): New function.
+	* Array2.h: Provide decl.
+
+	* Array.cc (Array<T>::print_info): New function.
+	* Array.h: Provide decl.
+
+2002-05-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.h (idx_vector::idx_vector (int)): New function.
+	(idx_vector_rep::idx_vector_rep (int)): New decl.
+	* idx-vector.cc (idx_vector_rep::idx_vector_rep (int)): New function.
+
+	* Array.h (Array<T>::resize_fill_value (void)): New static function.
+	(assign (Array<LT>&, const Array<RT>&)): Use it.
+	* Array2.h (assign (Array2<LT>&, const Array2<RT>&)): Use it.
+	* ArrayN.h (assign (ArrayN<LT>&, const ArrayN<RT>&)): Use it.
+
+2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
+
+	* Array3.h (Array3<T>::checkelem): Improve error message.
+	* ArrayN.h (ArrayN<T>::range_error): Likewise.
+	* DiagArray2.cc (DiagArray2<T>::checkelem): Likewise.
+	* DiagArray2.cc (DiagArray2<T>::operator ()): Likewise.
+
+2002-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.h (DASSL_options::init): Undo previous change.
+	(DASSL_options::set_absolute_tolerance): Likewise.
+
+2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASPK.h, DASPK.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2002-04-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&) const):
+	Simplify indexing when one or both of the indices are empty.
+
+2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.h (DASSL_options::init): Set absolute tolerance to eps ^ 2.
+	(DASSL_options::set_absolute_tolerance): Likewise.
+	* LSODE.h (LSODE_options::init): Likewise.
+	(LSODE_options::set_absolute_tolerance): Likewise.
+
+2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* f2c-main.c (MAIN_, MAIN__): Delete.  Use F77_DUMMY_MAIN instead.
+	* file-stat.cc (file_stat::update_internal, file_stat::copy):
+	Use HAVE_STRUCT_STAT_ST_RDEV instead of HAVE_ST_RDEV.
+	Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of HAVE_ST_BLKSIZE.
+	Use HAVE_STRUCT_STAT_ST_BLOCKS instead of HAVE_ST_BLOCKS.
+	* file-stat.h: Likewise.
+	* oct-time.cc (octave_time::octave_time, octave_base_tm::strftime,
+	octave_base_tm::init, octave_strptime::init): Use HAVE_TM_ZONE
+	instead of HAVE_STRUCT_TM_TM_ZONE.
+	* strftime.c: Likewise.
+	* lo-specfun.cc, mach-info.cc, CColVector.cc, CMatrix.cc,
+	CRowVector.cc, CmplxAEPBAL.cc, CmplxCHOL.cc, CmplxHESS.cc,
+	CmplxLU.cc, CmplxQR.cc, CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc,
+	CollocWt.cc, DASSL.cc, EIG.cc, LSODE.cc, NLEqn.cc, Quad.cc,
+	dColVector.cc, dMatrix.cc, dRowVector.cc, dbleAEPBAL.cc,
+	dbleCHOL.cc, dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc,
+	dbleSCHUR.cc, dbleSVD.cc: Use F77_FUNC instead of F77_FCN.
+
+2002-04-02  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* CmplxQR.cc (ComplexQR::init): Use economy QR decomposition
+	internally when the user requests it.
+	* CmplxQRP.cc (ComplexQRP::init): Ditto.
+	* dbleQR.cc (QR::init): Ditto.
+	* dbleQRP.cc (QRP::init): Ditto.
+
+2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-fftw.cc (octave_fftw::fft2d): Avoid having to find a
+	definition for NULL by passing 0 as the last arg to fftwnd_one.
+	(octave_fftw::ifft2d): Likewise.
+
+2002-02-22  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
+
+	* lo-mappers.cc (arg): Simply call atan2 (0.0, x).
+
+2001-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data-conv.cc (LS_DO_READ): Don't do anything unless len > 0.
+	(LS_DO_WRITE): Likewise.
+
+2001-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-inlines.cc (MX_CUMMULATIVE_OP): New macro.
+	* CMatrix.cc (ComplexMatrix::cumprod, ComplexMatrix::cumsum): Use it.
+	* dMatrix.cc (Matrix::cumprod, Matrix::cumsum): Likewise.
+
+	* mx-inlines.cc (MX_REDUCTION_OP, MX_REDUCTION_OP_COL_EXPR,
+	MX_REDUCTION_OP_ROW_EXPR): New macros.
+	* dMatrix.cc (Matrix::prod, Matrix::sum): Use MX_REDUCTION_OP.
+	* CMatrix.cc (ComplexMatrix::prod, ComplexMatrix::sum): Likewise.
+
+	* mx-inlines.cc (MX_BASE_REDUCTION_OP): New macro.
+	DIM == -1 now means no orientation for vector sums.
+	* dMatrix.cc (ComplexMatrix::sumsq): Use it.
+	* CMatrix.cc (ComplexMatrix::sumsq): Likewise.
+
+2001-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (Range::nelem_internal): Special case ranges that must
+	have zero elements.
+
+2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Split out readline and pathsearch functionality
+	into separate liboct-readline and liboct-pathsearch libraries.
+
+	* oct-rl-edit.c (octave_rl_clear_screen): Call rl_clear_screen,
+	not _rl_clear_screen.  Temporarily redefine rl_redisplay_function
+	to do nothing for this call to rl_clear_screen.
+
+2001-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.cc (ddassl_f): Handle IRES returned from user supplied
+	function.
+	* DAEFunc.h (DAERHSFunc): Add IRES to prototype.
+
+2001-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::inverse, Matrix::solve, Matrix::determinant,
+	Matrix::inverse): Handle the case of rcond being a NaN the same as
+	a signular matrix.  From "Jianming" <caijianming@yahoo.co.uk>.
+	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::solve,
+	ComplexMatrix::determinant, ComplexMatrix::inverse): Likewise.
+
+2001-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::row_as_string): New parameter, raw.
+
+	* Array-i.cc, Array-s.cc, Array-d.cc, Array-ch.cc, Array-C.cc,
+	Array-b.cc: Instantiate three arg assign functions.
+
+	* ArrayN.cc (assign (ArrayN<LT>&, const ArrayN<RT>&, const LT&)):
+	New arg, resize_fill_value.
+	* ArrayN.h: Provide declaration.
+	(assign (ArrayN<LT>&, const ArrayN<RT>&): Define here by calling
+	three arg version.
+
+	* Array3.cc (assign (Array3<LT>&, const Array3<RT>&, const LT&)):
+	New arg, resize_fill_value.
+	* Array3.h: Provide declaration.
+	(assign (Array3<LT>&, const Array3<RT>&): Define here by calling
+	three arg version.
+
+	* Array2.cc (assign (Array2<LT>&, const Array2<RT>&, const LT&)):
+	New arg, resize_fill_value.
+	* Array2.h: Provide declaration.
+	(assign (Array2<LT>&, const Array2<RT>&): Define here by calling
+	three arg version.
+
+	* Array.cc (assign (Array<LT>&, const Array<RT>&, const LT&)):
+	New arg, resize_fill_value.
+	* Array.h: Provide declaration.
+	(assign (Array<LT>&, const Array<RT>&): Define here by calling
+	three arg version.
+
+2001-05-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.cc (dir_path::set_program_name): Set the environment
+	variables SELFAUTOLOC, SELFAUTODIR, SELFAUTOPARENT, and TEXMFDBS
+	to the empty string.
+
+2001-05-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.h (Array2<T>::operator = (const Array2<T>&)):
+	Don't check for rep != a.rep.
+
+2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* oct-fftw.h, oct-fftw.cc: New files.
+	* Makefile.in (INCLUDES, SOURCES): Add new files.
+	* CMatrix.cc (ComplexMatrix::{fourier, ifourier, fourier2d,
+	ifourier2d}): Use fftw if available.
+	* dMatrix.cc (Matrix::{fourier, ifourier, fourier2d, ifourier2d}):
+	Likewise.
+
+2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Don't use mk-libdir-link.
+	(install-inc): Don't use mk-includedir-link.
+
+2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cutils.c (octave_gethostname): New function.
+	* lo-utils.h: Provide declaration.
+	* oct-env.cc (octave_env::do_get_host_name):
+	Call octave_gethostname, instead of gethostname.
+
+	* lo-cutils.c (gethostname): Define here.
+	* lo-sysdep.cc: Not here.
+
+2001-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cutils.c: Don't declare strptime.
+	(oct_strptime): Cast return type of strptime to char*.
+
+2001-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c (octave_rl_newline): Call rl_newline with two args.
+	(octave_rl_set_name): call rl_re_read_init_file with two args.
+	(octave_rl_read_init_file): Ditto.
+	(octave_rl_clear_undo_list): Call rl_free_undo_list, not
+	free_undo_list.
+	(octave_rl_completion_matches): Call rl_completion_matches, not
+	completion_matches.
+	(octave_rl_enable_paren_matching): New function.
+	(octave_rl_set_blink_matching_paren_flag): Delete.
+	(octave_rl_get_blink_matching_paren_flag): Delete.
+
+	* lo-mappers.h, lo-mappers.cc (log10 (const Complex&),
+	tanh (const Complex&)): Declare and define if not
+	CXX_ISO_COMPLIANT_LIBRARY.
+
+2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.h (tanh (const Complex&)): Only declare if not
+	CXX_ISO_COMPLIANT_LIBRARY.
+
+2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* lo-mappers.cc (tanh (const Complex&)): Only define if not
+	CXX_ISO_COMPLIANT_LIBRARY.
+
+	* Makefile.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Use to create
+	archive libraries containing templates.
+
+	* ArrayN-idx.h (freeze, all_ok, any_orig_empty, any_zero_len,
+	get_zero_len_size, all_colon_equiv): Inline.
+	(ArrayN<T>::index): Rename idx to arr_idx.
+	* ArrayN.cc (ArrayN<T>::index, ArrayN<T>::compute_index,
+	ArrayN<T>::get_size, ArrayN<T>::range_error, ArrayN<T>::range_error,
+	increment_index, ArrayN<T>::resize, ArrayN<T>::insert): Likewise.
+
+2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.h, lo-mappers.cc (tan (const Complex&),
+	log10 (const Complex&)): Delete.
+
+	* oct-cmplx.h: Define forwarding functions for real, imag, abs,
+	arg, norm, conj, polar, cos, cosh, exp, log, log10, pow, sin,
+	sinh, sqrt, tan, and tanh.
+
+2001-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc, help.cc, load-save.cc, pr-output.cc, utils.cc:
+	Add std:: namespace qualifier as needed.
+
+	* mx-inlines.cc: Rename all functions with mx_inline_ prefix.
+	Change all uses to match.
+
+2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cutils.c: Don't delcare strptime.
+
+2001-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (operator * (const ComplexMatrix&, const ComplexMatrix&):
+	Return correct size result for empty matrix case.
+
+2000-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xmin (const Complex&, const Complex& y):
+	If args are equal in magnitude, return first arg instead of
+	second.
+
+2000-12-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (Range::nelem_internal): Call tfloor, not round, but
+	then try harder to compute correct number of elements.
+
+	* dMatrix.cc (Matrix::lssolve): Ask DGELSS for size of work vector.
+	* CMatrix.cc (ComplexMatrix::lssolve): Likewise, for ZGELSS.
+
+2000-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (Range::nelem_internal): Call round here, not tfloor.
+	Rename n_intervals to be n_elt.
+
+	* strptime.c: Surround everything after including config.h in
+	#ifndef HAVE_STRPTIME ... #endif.
+
+2000-11-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (assign): When resizing, cast fill value to LT.
+	* Array2-idx.h (MAYBE_RESIZE_LHS): Likewise.
+
+2000-11-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray-defs.h: Protect against multiple inclusion.
+
+2000-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data-conv.h (enum save_type): Move LS_U_LONG and LS_LONG to the
+	end of the list, to be compatible with previous versions of Octave.
+
+2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* oct-time.cc (DEFINE_SET_INT_FIELD_FCN): Don't check limits here,
+	since mktime is supposed to `normalize' the results for us.
+
+2000-10-31  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* Array2.cc (Array2<T>::transpose): Avoid copy for empty matrices
+	and vectors.  Use xelem for faster access to elements when copying.
+
+2000-10-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (ComplexMatrix::cumsum, ComplexMatrix::cumprod):
+	Correct indexing for operation across rows.
+	* dMatrix.cc (Matrix::cumsum, Matrix::cumprod): Likewise.
+
+2000-10-12  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&)): Avoid copying
+	elements if arg is a colon.
+
+2000-10-12  Cai Jianming  <caijianming@yahoo.co.uk>
+
+	* dMatrix.cc (Matrix::cumprod (int) const): New arg, DIM.
+	(Matrix::cumsum (int) const): Likewise.
+	(Matrix::prod (int) const): Likewise.
+	(Matrix::sum (int) const): Likewise.
+	(Matrix::sumsq (int) const): Likewise.
+	* CMatrix.cc (ComplexMatrix::cumprod (int dim) const): Likewise.
+	(ComplexMatrix::cumsum (int) const): Likewise.
+	(ComplexMatrix::prod (int) const): Likewise.
+	(ComplexMatrix::sum (int) const): Likewise.
+	(ComplexMatrix::sumsq (int) const): Likewise.
+
+2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&)): Correctly set
+	size if Array<T>::index returns an empty array.
+
+2000-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (file_ops::link, file_ops::symlink,
+	file_ops::readlink): New functions.
+
+2000-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&)): If a scalar is
+	indexed, always return an object the same size as the index arg.
+
+	* oct-time.cc (octave_base_tm::strftime): Return empty string for
+	empty format.
+
+2000-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-cutils.c (oct_strptime): New function.
+	* oct-time.cc (octave_strptime::init): Call it instead of strptime.
+	Don't declare strptime.  Don't define _XOPEN_SOURCE or _BSD_SOURCE.
+
+2000-07-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc: Comment out _BSD_SOURCE and _XOPEN_SOURCE definitions.
+
+	* Makefile.in (MATRIX_INC): Add ArrayN-idx.h to the list.
+
+2000-06-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.h (read_int): Provide declaration.
+
+2000-06-29  James R. Van Zandt  <jrv@vanzandt.mv.com>
+
+	* data-conv.cc (read_doubles): Handle EIGHT_BYTE_INT cases.
+	(write_doubles): Ditto.
+	* data-conv.h: Ditto.
+	(enum save_type): New values, LS_U_LONG and LS_LONG.
+
+2000-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* boolMatrix.h: Declare MM_CMP_OPS here.
+	* boolMatrix.cc: Define them here.
+
+2000-06-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign): Allow x(bool) = RHS to succeed if x is
+	previously undefined and set size of x to size of bool index.
+	* idx-vector.cc (IDX_VEC_REP::maybe_convert_one_zero_to_idx):
+	Allow z_len to be zero.
+	(IDX_VEC_REP::freeze): If z_len is zero, set frozen_at_z_len to len.
+	If frozen, don't assert that frozen_at_z_len == z_len.
+
+2000-05-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c (octave_rl_clear_screen): Call _rl_clear_screen
+	instead of rl_clear_screen.
+
+2000-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-d.cc: Instantiate ArrayN<double> here too.
+	* Array-idx-vec.cc, ArrayN-idx.h, ArrayN.cc, ArrayN.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2000-04-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array<T>::operator =): Don't set max_indices to 1 here.
+
+2000-03-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-sysdep.h: octave_chdir returns int, not bool.
+
+2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (liboctave.$(SHLEXT)): Delete target
+	before rebuilding.
+
+2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
+
+	* Makefile.in (liboctave.$(LIBEXT)): New target.
+	(libraries): Depend only on library targets, not archive members.
+
+2000-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: (objects): New target.
+
+	* lo-cutils.c: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+	* lo-utils.h: Declare octave_qsort here.
+	* Array.h (Array::qsort): Use it here.
+
+2000-03-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc: Include <sys/types.h> and <unistd.h>, if available.
+
+2000-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-hist.c (octave_history_list): Do something when not
+	printing line numbers.  Fix reallocation of retval.
+
+2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Install files in
+	$(octincludedir)/octave.
+	(uninstall): Remove them from the correct directory too.
+
+	* oct-time.cc: Temporarily define _BSD_SOURCE and _XOPEN_SOURCE if
+	they are not already defined.
+
+2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CRowVector.cc, CRowVector.h, CColVector.cc, CColVector.h:
+	Delete declarations and definitions of mixed-type vector-vector ops.
+
+2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.h, CMatrix.cc: Add lssolve methods for real-valued RHS
+	matrix and vector objects.
+
+	* mx-op-defs.h (DMM_BIN_OP): Explicitly request conversion to
+	return type from second arg type.
+	(MDM_BIN_OP): Likewise, for first arg type.
+
+	* dMatrix.cc (Matrix::fourier, Matrix::ifourier,
+	Matrix::fourier2d, Matrix::ifourier2d): Likewise.
+
+	* EIG.cc (EIG::symmetric_init, EIG::hermitian_init): Explicitly
+	request ColumnVector to ComplexColumnVector, and Matrix to
+	ComplexMatrix conversions.
+
+	* CmplxAEPBAL.cc (ComplexAEPBALANCE::init): Give balancing_mat its
+	initial value using ComplexMatrix constructor.
+
+	* CColVector.cc (product, quotient,
+	operator * (const DiagMatrix&, const ComplexColumnVetor&)):
+	Fix type of returned value.
+	* CDiagMatrix.cc (ComplexDiagMatrix::row,
+	ComplexDiagMatrix::column, ComplexDiagMatrix::inverse): Likewise.
+
+	* Array.h, CColVector.h, CDiagMatrix.h, CMatrix.h, CRowVector.h,
+	MArray.h, MDiagArray2.h, dColVector.h, dDiagMatrix.h, dMatrix.h,
+	dRowVector.h: Declare some constructors explicit, to disallow
+	potentially problematic automatic type conversions.
+
+2000-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* vx-rv-crv.h, vx-cv-ccv.h, vx-crv-rv.h, vx-ccv-cv.h,
+	vx-rv-crv.cc, vx-cv-ccv.cc, vx-crv-rv.cc, vx-ccv-cv.cc:
+	More new files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* vx-ccv-s.h, vx-crv-s.h, vx-cs-cv.h, vx-cs-rv.h, vx-cv-cs.h,
+	vx-rv-cs.h, vx-s-ccv.h, vx-s-crv.h, vx-ccv-s.cc, vx-crv-s.cc,
+	vx-cs-cv.cc, vx-cs-rv.cc, vx-cv-cs.cc, vx-rv-cs.cc, vx-s-ccv.cc,
+	vx-s-crv.cc:, New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* CRowVector.h, CRowVector.cc, CColVector.h, CColVector.cc:
+	Delete scalar by vector and vector by scalar binary ops.
+
+	* MArray-defs.h: More new macros to handle MDiagArray operators.
+	* dDiagMatrix.h, CDiagMatrix.h: Use the op-forwarding macros.
+
+2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c (octave_rl_set_event_hook): Take address of
+	rl_event_hook before casting to void **.
+	(octave_rl_set_startup_hook): Likewise, for rl_startup_hook.
+
+	* MArray-defs.h: Many new macros to make declaration and
+	definition of operators more consistent.
+
+	* MArray.h, MArray2.h, dColVector.h, dRowVector.h, CColVector.h,
+	CRowVector.h, dMatrix.h, CMatrix.h: Use them.
+
+2000-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::ifourier): Cast divisor to double.
+	(Matrix::ifourier2d): Likewise.
+	* CMatrix.cc (ComplexMatrix::ifourier): Likewise.
+	(ComplexMatrix::ifourier2d): Likewise.
+
+	* Array.h (Array::ArrayRep::qsort): Cast len to size_t.
+
+2000-02-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-rl-edit.c, oct-rl-edit.h: New files for interface to GNU
+	readline library.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* oct-rl-hist.c, oct-rl-hist.h: New files for interface to GNU
+	readline history library.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* data-conv.cc (LS_DO_WRITE): Cast arg to ostream::write to char*.
+	(LS_DO_READ): Likewise, for istream::read.
+	(write_doubles): Likewise.
+	(read_doubles): Likewise.
+
+	* oct-env.cc (octave_env::do_polite_directory_format):
+	Use operator== and substr method to do limited-length string
+	comparison.
+
+	* Array2-idx.h, Array-idx.h: Avoid shadowing warnings for idx.
+
+	* Quad.h: Use do_integrate as name of pure virtual function.
+
+	* base-de.h: Use tt instead of t as arg names.
+	Add method with tcrit arg.
+
+	* DAE.h, DAE.cc: Likewise, also xx for x.
+
+	* DASSL.cc (dassl_fcn_ptr, dassl_jac_ptr): New typedefs.
+	* LSODE.cc: lsode_fcn_ptr, lsode_jac_ptr): Ditto.
+	* Quad.cc (quad_fcn_ptr): Ditto.
+	* NLEqn.cc (hybrd1_fcn_ptr, hybrj1_fcn_ptr): Ditto.
+
+	* oct-getopt.h, oct-getopt.c: New files for interface to getopt.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* oct-kpse.h, oct-kpse.c: New files for interface to kpathsearch.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* dMatrix.cc (write_int, read_int): No longer declared static.
+
+	* CDiagMatrix.h: Delete decls for friend operators that are
+	handled by MDiagArray2 class.  Move others outside class decl and
+	strip friend status.
+	* dDiagMatrix.h: Likewise.
+
+	* MArray.h: Delete decls for friend operators inside class decl.
+	* MArray2.h: Ditto.
+	* MDiagArray2.h: Ditto.
+
+	* MArray-defs.h (DO_VS_OP,, DO_SV_OP, DO_VV_OP, NEGV): Pass all
+	necessary parameters.  Don't allocate memory in the macro.  Change
+	all uses.
+
+	* dMatrix.h (class Matrix): Delete `friend class' decls.
+	* CMatrix.h (class ComplexMatrix): Ditto.
+
+	* mx-op-defs (MS_BOOL_OP, MS_BOOL_OPS, SM_BOOL_OP, SM_BOOL_OPS,
+	MM_BOOL_OP, MM_BOOL_OPS, MDM_MULTIPLY_OP, MDM_BIN_OPS,
+	DMM_MULTIPLY_OP, DMM_BIN_OPS): Pass zero constant as final arg, to
+	avoid type conflicts.  Change all uses.
+
+	* strptime.c (__mon_yday): Fix size of array decl.
+
+	* mx-inlines.cc: Use `xnot' instead of `not' for function name.
+
+	* chMatrix.cc (charMatrix::row_as_string): Delete extraneous
+	default value for second arg.
+
+	* Array2.cc (Array2<T>::resize): Add Array<T>:: qulaifier to
+	references to ArrayRep.
+
+2000-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (Array::ArrayRep): Now protected, not private.
+
+	* All source files: Include iostream, fstream, strstream,
+	etc. as needed instead of using forward declarations for these
+	classes.  Add std:: qualifier as needed.
+
+2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc: Declare strptime extern "C".
+
+2000-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc [! HAVE_STRPTIME]: Provide declaration.
+
+2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.h (Array2<T>::get_size): Now protected instead of private.
+	* Array3.h, Array3.cc: Use it in constructors and resize methods
+	to get total size to be allocated.
+
+	* DASSL.cc (DASSL::integrate): Declare do_restart and save_output
+	as bool, not int.
+
+2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
+	Allow A(idx) = RHS if idx is a boolean index with the same shape
+	as A, even when do_fortran_indexing is not enabled.
+	(Array2<T>::index (idx_vector& idx) const): Likewise, for A(idx).
+
+2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::solve (...)): Add new variant with
+	function pointer as final arg.  Passed function (if any) will be
+	called for singularity errors.
+	* CMatrix.cc (ComplexMatrix::solve (...)): Likewise.
+
+	* dMatrix.cc (Matrix::pseudo_inverse): Use economy SVD.
+	* CMatrix.cc (ComplexMatrix::pseudo_inverse): Likewise.
+
+	* lo-ieee.cc (octave_ieee_init): Don't include sunmath.h.
+	No longer bother with infinity or quiet_nan.
+
+	* Array2.cc (Array2<T>::get_size): New function.
+	(Array2<T>::Array2, Array2<T>::resize): Use it.
+
+2000-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::maybe_delete_elements (idx_vector&)):
+	New function.
+	(assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
+	Use it when indexing with one arg instead of faking a second one.
+	(Array2<T>::maybe_delete_elements (idx_vector&, idx_vector&)):
+	Return empty matrices with the correct dimensions for A(:,:) = []
+	and also A(:,idx) = [], and A(idx,:) = [] when idx enumerates all
+	rows or columns.
+
+	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Recognize a bool
+	vector that is all true values with a length equal to n as colon
+	equivalent.
+
+2000-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strptime.c: Only include langinfo.h if _LIBC is defined.
+
+2000-01-21  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* CMatrix.cc (ComplexMatrix::expm): Apply permutation and scaling
+	operations directly in step 2 and reverse step 2.
+	* dMatrix.cc (Matrix::expm): Apply permutation and scaling
+	operations directly in step 2 and reverse step 2.
+
+2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.h, oct-time.cc (octave_strptime): New class.
+
+	* strptime.c: New file, from glibc 2.1.2.
+	* Makefile.in (SOURCES): Add strptime.c to the list.
+
+2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray.h (MArray <const Array<T>&)): New constructor.
+
+2000-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.cc (dir_path::all_directories): Avoid dereferencing
+	NULL directory list returned from kpse_element_dirs
+
+1999-12-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleLU.cc (LU::LU): Call DGETRF directly instead of calling DGESV.
+	* CmplxLU.cc (ComplexLU::ComplexLU): Likewise, call ZGETRF
+	directly, instead of calling ZGESV.
+
+1999-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data-conv.cc (init_sized_type_lookup_table): New function.
+	(string_to_data_type): Use it to improve lookup of data types.
+
+1999-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (is_symmetric): Move here from Array2.cc.
+	* Array2.h (is_symmetric): Delete declaration.
+
+1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-env.cc (do_get_user_name): Reverse sense of test.
+
+1999-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc (Fstrftime): Undo previous change.
+	(octave_time::octave_time (const octave_base_tm&)): Likewise.
+
+1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleSVD.cc (SVD::init): Let DGESVD determine work space requirement.
+	* CmplxSVD.cc (ComplexSVD::init): Likewise, for complex version.
+
+	* dbleSCHUR.cc (SCHUR::init): IWORK is always referenced by dgeesx.
+	Don't forget to pass length of third string argument to dgeesx.
+
+	* CmplxSCHUR.cc (ComplexSCHUR::init): Don't forget to pass length
+	of third string argument to zgeesx.
+
+1999-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DiagArray2.cc (DiagArray2<T>::operator () (int, int)):
+	On errors, simply return `T ()'.
+	(DiagArray2<T>::checkelem (int, int)): Likewise.
+
+1999-11-02  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* dMatrix.cc (Matrix::expm): Do balancing here instead of using
+	AEPBALANCE class.
+	* CMatrix.cc (ComplexMatrix::expm): Likewise.
+
+1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-shlib.cc, oct-shlib.h: New files.
+	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
+
+1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CRowVector.cc (linspace): Allow npoints == 1 if x1 == x2.
+	* dRowVector.cc (linspace): Ditto.
+
+	* oct-time.cc (Fstrftime): Don't save or delete tm_zone.
+	(octave_time::octave_time (const octave_base_tm&)): Likewise.
+
+1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.cc (DASSL::do_integrate (double)): If we have a function
+	to evaluate the Jacobian, set info(4), not iwork(4).
+	Set rwork(1) to the maximum step size, not rwork(2).
+
+1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.cc: Include <climits>.
+
+1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.h (command_editor::do_resize_terminal): New function.
+	* cmd-edit.cc (command_editor::resize_terminal): New function.
+	(gnu_readline::do_resize_terminal): New function.
+
+Fri Sep  3 12:39:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc: Include ieeefp.h and sunmath.h if we have them.
+	* lo-ieee.c: Likewise.
+	Delete extern "C" declarations for infinity and quiet_nan.
+
+Fri Aug 20 07:58:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-inlines.cc (VS_OP, SV_OP, VV_OP): Delete `extern template' decls.
+	(VS_OP_FCN, SV_OP_FCN, VV_OP_FCN): Declare template functions
+	`inline', not `static inline'.
+
+	* idx-vector.cc (intcmp): Declare args as const void *, not int *,
+	then cast to const int * to compare.
+
+Fri Jul 16 11:23:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DAEFunc.h: Remove useless preprocessor conditional.
+
+Thu Jul 15 14:10:33 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (command_editor::do_decode_prompt_string):
+	Use octave_time object instead of time_t.
+
+	* file-stat.h (file_stat::fs_atime, file_stat::fs_mtime,
+	file_stat::fs_ctime): Now octave_time objects.
+	(file_stat::atime, file_stat::mtime, file_stat::ctime):
+	Return octave_time objects.
+	(file_stat::is_newer): Args are now octave_time objects instead of
+	time_t.
+
+	* oct-time.h (octave_time::as_double): Delete.
+	(octave_time::operator double ()): New function.
+	(octave_time::operator time_t ()): New function.
+	(octave_time::ctime): New function.
+	(octave_base_tm::strftime): Renamed from format_as_string.
+	(octave_base_tm::asctime): New function.
+	(operator == (const octave_time&, const octave_time&),
+	operator != (const octave_time&, const octave_time&),
+	operator < (const octave_time&, const octave_time&),
+	operator <= (const octave_time&, const octave_time&),
+	operator > (const octave_time&, const octave_time&),
+	operator >= (const octave_time&, const octave_time&)):
+	New comparison functions.
+
+	* strftime.c: Move here from src directory.
+	* Makefile.in (SOURCES): Add it to the list.
+
+	* oct-time.h (octave_time::octave_time (time_t)): New constructor.
+
+Wed Jul 14 17:38:07 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-time.h, oct-time.cc: New files.
+	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
+
+	* systime.h: Move here from src directory.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+Mon Jul 12 22:34:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-defs.h (b_d_Mapper, b_c_Mapper): New typedefs.
+	* dMatrix.cc (Matrix::map (b_d_Mapper)): New function.
+	* CMatrix.cc (ComplexMatrix::map (b_c_Mapper)): New function.
+	* lo-mappers.cc (xisinf, xisnan, xfinite): Return bool, not double.
+
+	* lo-mappers.cc (xmin, xmax): New functions to correctly handle NaNs.
+
+Mon May 10 07:45:11 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray-defs.h (DO_VV_OP2): Fix macro definition to use arg.
+
+Wed May  5 20:06:10 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>index (idx_vector& idx)): Always return a
+	column vector for A(:), for compatibility with Matlab.
+
+Fri Apr 23 11:52:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (LSODE::do_integrate (double)): Don't forget to set
+	iopt when there are optional inputs in rwork or iwork.
+
+Fri Mar 26 11:26:32 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (libraries): Use the libfoo.a(objects) method of
+	creating static libs.
+
+Thu Mar  4 02:17:04 1999  James Macnicol  <jamesm@evans.ee.adfa.oz.au>
+
+	* data-conv.cc (oct_data_conv::string_to_data_type): Handle uint16
+	and uint32 data types.
+
+Thu Mar  4 01:51:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): Don't use __alpha__-specific code
+	for Linux.  Remove old Linux-specific code.
+
+Tue Jan 19 09:34:55 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (operator * (const ColumnVector& v, const RowVector& a)):
+	Don't require lengths to be equal.
+	* CMatrix.cc (operator * (const ComplexColumnVector& v, const
+	ComplexRowVector& a)): Likewise
+
+Tue Nov 24 23:38:19 1998  Eric Norum  <eric@skatter.USask.Ca>
+
+	* statdefs.h: Only define mode_t if not already defined.
+
+Tue Nov 24 17:24:52 1998  john  <john@arrows.demon.co.uk>
+
+	* lo-specfun.cc (airy, biry): Set imaginary part of result to zero
+	when appropriate.
+
+Mon Nov 23 09:57:05 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (gnu_readline::gnu_readline): Set terminal name
+	before calling rl_initialize.
+
+Tue Nov 17 23:47:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (besselh, airy, biry): New functions.
+	Update Bessel function support to use library by D. E. Amos.
+
+Thu Nov 12 17:44:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.h (command_editor::readline): Add new variation that
+	allows EOF information to be passed back to caller.
+
+	* dMatrix.cc (Matrix::read): Do the right thing for EOF when
+	amount of data to read is unspecified.
+
+Tue Nov 10 07:53:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-alloc.h (DECLARE_OCTAVE_ALLOCATOR): New macro.
+	(DEFINE_OCTAVE_ALLOCATOR): Ditto.
+
+	* byte-swap.h (swap_bytes, swap_2_bytes, swap_4_bytes, swap_8_bytes):
+	Add volatile qualifier to void* arg.
+	Cast volatile void* arg to volatile char*.
+
+Mon Nov  9 08:28:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.h (command_editor::do_set_event_hook): New function.
+	(command_editor::do_restore_event_hook): Ditto.
+	* cmd-edit.cc (command_editor::set_event_hook): Ditto.
+	(command_editor::restore_event_hook): Ditto.
+	(gnu_readline::do_set_event_hook): Ditto.
+	(gnu_readline::do_restore_event_hook): Ditto.
+	(gnu_readline::previous_event_hook): New data member.
+	(gnu_readline::gnu_readline): Initialize previous_event_hook.
+
+Mon Nov  2 13:36:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (BINDISTLIBS): Don't include .$(SHLEXT_VER) in name.
+
+	* Makefile.in (stmp-pic): New target.
+	($(PICOBJ)): Depend on stmp-pic, not pic.
+	(clean): Remove stmp-pic
+
+	* Makefile.in: Undo previous change to avoid optmization when
+	compiling lo-ieee.cc.
+
+Sun Nov  1 10:10:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xfinite): Define in terms of xfinite for real and
+	imaginary parts.
+	(xisinf): Define in terms of xisinf for real and imaginary parts.
+
+Thu Oct 29 18:57:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* boolMatrix.cc (boolMatrix::operator !): New function.
+
+Fri Oct 23 21:46:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.h (dir_path::default_path): New data member.
+	* pathsearch.cc (dir_path::init): Use it.
+
+	* Makefile.in: Avoid optmization when compiling lo-ieee.cc.
+
+Fri Oct 16 01:08:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::extract): New function.
+	(charMatrix::charMatrix (char c)): New constructor.
+
+Tue Oct 13 22:11:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.h: (command_editor::do_read_init_file): New function.
+	* cmd-edit.cc (command_editor::read_init_file): New function.
+	(gnu_readline::do_read_init_file): Likewise.
+
+Fri Sep 25 14:26:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-env.cc (octave_env::do_get_home_directory):
+ 	If HOME can't be found, set it to "/".
+	(octave_env::do_get_user_name)
+	If user name can't be found, set it to "unknown".
+	(octave_env::do_get_host_name)
+	If host name can't be found, set it to "unknown".
+
+	* pathsearch.h (dir_path::rehash): New function.
+	* pathsearch.cc (dir_path::init): Clear kpathsea's internal
+	diretcory cache before doing initialization.
+
+Thu Sep 24 13:23:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Qzval): Delete.
+	(qzhes, qzit, qzval): Delete F77_FCN declarations.
+	* dMatrix.h (Qzval): Delete declaration.
+
+	* dbleGEPBAL.h, dbleGEPBAL.cc: Delete.
+	* Makefile.in (MATRIX_INC, MATRIX_SRC): Delete them from the lists.
+	* mx-ext.h: Don't include dbleGEPBAL.
+
+	* lo-ieee.cc (octave_ieee_init): For now, use X_CAST instead of
+	static_cast.
+
+Fri Sep  4 10:58:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::read): Skip after reading, not before.
+	From: Dr.-Ing. Torsten Finke <fi@igh-essen.com>.
+
+Wed Sep  2 09:50:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): For Linux on arm, don't rely on
+	HUGE_VAL and NAN.
+
+Wed Aug 26 15:04:57 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign (Array2<LT>& lhs, const Array2<RT>& rhs)):
+	Handle x(i) = scalar for do_fortran_indexing == 1.
+
+Thu Jul 30 00:34:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const charMatrix&)):
+	Alloctate space before attempting to use it.
+	(ComplexMatrix::ComplexMatrix (const boolMatrix&)): Likewise.
+
+Mon Jun 22 17:04:27 1998  Tomislav Goles  <tom@ait-tech.com>
+
+	* EIG.cc (EIG::init): Move invariant code outside loop.
+
+Thu Jun 18 11:08:23 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray2.cc (MARRAY_A2A2_OP): If operands are empty, make result
+	have the same size as the operands.
+
+Thu May 28 10:41:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DASSL.cc (DASSL::do_integrate): If an exception occurs in the
+	call to ddassl, set integration_error to 1 before calling the
+	error handler and returning.
+	* LSODE.cc (LSODE::do_integrate): Likewise.
+
+Wed May 27 13:46:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign): Allow A([],[]) = scalar and, if
+	do_fortran_indexing is set, A([]) = scalar.
+	* Array-idx.h (assign): Allow A([]) = scalar.
+
+Thu May 14 11:50:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mx-op-defs.h (MDM_MULTIPLY_OP): Compute result if dm_nc > 0, not
+	if dm_nc == 0.
+
+Thu Apr 23 16:15:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.h (dir_path::p_orig): New field.
+	* pathsearch.cc (dir_path::init): Perform variable and tilde
+	expansion on the original path here.
+	(dir_path::find_all): Don't do anything if not initialized.
+
+Tue Apr 14 14:41:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (index): Allow x(:) even when do_fortran_indexing
+	is not set.
+	(index): Allow x = zeros (2, 0); x(1,:) to work.
+
+	* lo-specfun.cc (gammainc): Use dgamit to compute
+	(\int_0^x exp(-t) t^(a-1) dt)/gamma(a), not just
+	\int_0^x exp(-t) t^(a-1) dt.
+
+Wed Apr  8 22:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-C.cc, Array-b.cc, Array-ch.cc, Array-i.cc, Array-d.cc,
+	Array-s.cc: Change return types of all `assign' explicit
+	instantiations to be int, not void, to match the template decl in
+	Array.h.
+
+Mon Apr  6 00:27:06 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (gammainc): Reorder args in call to xdgami.
+
+Thu Feb 19 01:16:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-specfun.cc (xgamma, xlgamma): Define here.
+	* lo-mappers.cc: Not here.
+
+	* lo-specfun.h: Declare xgamma and xlgamma here.
+	* lo-mappers.h: Not here.
+
+	* lo-specfun.h: Never declare gamma or lgamma.
+
+Tue Feb 10 16:14:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (assign): Allow A([]) = X to succeed if X is an
+	empty matrix of any dimension.
+
+Thu Feb  5 02:12:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-syscalls.cc (octave_syscalls::vfork): New function.
+
+	* lo-specfun.cc: Don't include dbleBessel.h.
+
+	* Makefile.in (INCLUDES): Delete oct-math.h from the list.
+
+	* dir-ops.h (dir_entry::operator bool ()): Return bool, not void*.
+	* file-stat.h (file_stat::operator bool ()): Likewise.
+	* idx-vector.h (idx_vector::operator bool ()): Likewise.
+	* oct-group.h (octave_group::operator bool ()): Likewise.
+	* oct-passwd.h (octave_passwd::operator bool ()): Likewise.
+
+	* data-conv.cc (IEEE_little_double_to_IEEE_big_double):
+	Don't cast arg in call to swap_8_bytes.
+	(IEEE_big_double_to_IEEE_little_double): Ditto
+	(IEEE_big_float_to_IEEE_little_float): Don't cast arg in call to
+	swap_4_bytes.
+	(IEEE_little_float_to_IEEE_big_float): Ditto
+
+	* oct-alloc.cc (grow): Use X_CAST, not static_cast.
+	* prog-args.cc (prog_args::getopt): Likewise.
+	* dMatrix.cc (read_int, do_read, write_int, do_write): Likewise.
+	* cmd-edit.cc (gnu_readline::do_set_completion_function): Likewise.
+	* data-conv.cc (LS_DO_READ, LS_DO_WRITE, read_doubles, write_doubles):
+	Likewise.
+
+	* byte-swap.h (swap_bytes, swap_2_bytes, swap_4_bytes,
+	swap_8_bytes): Declare ptr arg as void*, then use cast.
+
+Mon Feb  2 01:42:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
+	Use $(mk-libdir-link).
+
+	* file-stat.cc (file_stat::update_internal): Use stat and lstat,
+	not SAFE_STAT and SAFE_LSTAT.
+	(lstat): New function, defined if HAVE_LSTAT is not defined.
+	* safe-xstat.hin, safe-xstat.cin: Delete.
+	* Makefile.in: Delete rules for safe-stat.h, safe-stat.c,
+	safe-lstat.h, and safe-lstat.cc.
+
+Fri Jan 30 23:48:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::all, charMatrix::any): New functions.
+
+Tue Jan 20 16:30:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::expm): Skip trace normalization step if the
+	trace is negative.
+	* CMatrix.cc (ComplexMatrix::expm): Skip trace normalization if
+	the real part of the trace is negative.
+
+Mon Jan 19 16:01:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::expm): Call xdlange instead of dlange.
+	* CMatrix.cc (ComplexMatrix::expm): Call xzlange instead of zlange.
+
+	* Array2-idx.h (assign): Allow operations like a = 1; a(2:3) = [1;2]
+	to succeed.
+
+Thu Dec 18 14:53:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (IDX_VEC_REP::sort): Don't do anything unless len > 1.
+	(make_uniq): Likewise.
+
+Fri Dec 12 10:58:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): Check for linux before __alpha__.
+
+Sun Nov 30 14:59:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc: Include cmath and lo-specfun.h, not oct-math.h.
+
+	* lo-specfun.h, lo-specfun.cc: New files.
+	* Makefile.in (INCLUDES, SOURCES): Add them to the lists.
+
+	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c,
+	oct-math.h: Delete.
+	* Makefile.in (SOURCES): Delete them from the list.
+
+Wed Nov 26 20:02:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-sysdep.cc (octave_getcwd): Prefer getcwd over getwd.
+
+Wed Nov 19 02:30:04 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
+
+	Changes to make support egcs snapshots that implement explicit
+	specification of template functions according to CD2.
+
+	* MArray.h: If NEED_TEMPLATE_FCN_SPECS is defined, add explicit
+	template function specs for template friends.
+	* MArray2.h: Likewise.
+	* MDiagArray2.h: Likewise.
+
+Thu Nov 13 21:57:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (sumsq): Compute equivalent of sum (x .* conj (x))
+
+Thu Oct  2 17:13:02 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
+
+	* CRowVector.cc (linspace): Removed attempt for implicit conversion
+	to complex<double>(int) instead of complex<double>(double).
+
+	* lo-mappers.cc (atanh): Ditto.
+
+Thu Jul 31 22:13:54 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (IDX_VEC_REP::sort): New function.
+	* idx-vector.h (idx_vector::sort): Ditto.
+	* Array2-idx.h (Array2<T>::maybe_delete_elements): Use it before
+	trying to delete elements specified by the index vectors.
+
+Fri Jul 25 17:31:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::lssolve): Increase lwork by factor of 16.
+	* CMatrix.cc (ComplexMatrix::lssolve): Ditto.
+
+Thu Jul 24 14:32:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (tilde_expand_word): Fix off-by-one error.
+
+Wed Jul  9 19:40:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-sysdep.cc (octave_getcwd): If getwd is available, use it.
+	Call error handler if we can't find the current directory.
+
+Mon Jul  7 21:14:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xisnan (double)): Return only 1 or 0.
+	(xfinite (double)): Ditto.
+
+	* dbleQR.cc (QR::init): Don't forget to initialize Q when type is raw.
+	* CmplxQR.cc (ComplexQR::init): Ditto.
+
+Sun Jun 15 21:06:37 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (acos (const Complex&)): Select branch that is
+	compatible with Matlab.
+
+Tue Jun 10 10:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h: Correctly handle empty matrices indexed by a
+	single colon.
+
+Fri Jun  6 04:27:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (xlgamma): Use F77_XFCN function to call dlgams.
+	(xgamma): Likewise, for calling xdgamma.
+
+	* FSQP.h, NPSOL.h, QPSOL.h, FSQP.cc, NPSOL.cc, QPSOL.cc: Delete
+	* Makefile.in (INCLUDES, SOURCES): Remove them from the lists.
+
+	* file-ops.cc (file_ops::tilde_expand): Steal more code from bash
+	to do better job expanding tildes.
+
+	* str-vec.cc (string_vector::string_vector (const char * const *):
+	Use temporary variable to compute length.
+
+Thu Jun  5 01:44:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Make building of static library optional.
+	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
+
+	* Makefile.in (stamp-picdir): Delete.
+	(pic): New target.  Don't worry so much about creating pic
+	directory only when it is really needed.
+	(stamp-interp): Delete.
+	(libraries): New target.  Depend on shared library directly.
+
+Wed Jun  4 00:08:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.h, pathsearch.cc (dir_pat::set_program_name):
+	New static function.
+
+Mon Jun  2 12:44:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-mappers.cc (fix): Use floor and ceil instead of casting to int.
+
+Thu May 22 16:20:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.h, cmd-edit.cc: Rename set_paren_string_delimiters to
+	set_basic_quote_characters, to match new version of readline.
+
+	* cmd-edit.cc (do_restore_terminal_state): Call readline function
+	for restoring terminal state through rl_deprep_term_function, now
+	declared in readline.h
+	(rl_deprep_terminal): Delete declaration.
+
+Wed May 21 16:30:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-in): Use new mk-includedir-link macro.
+	(install-lib): Install in $octlibdir.  Use new mk-libdir-link macro.
+
+Thu May 15 11:46:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-edit.cc (command_editor::increment_current_command_number):
+	New static function.
+
+Mon May 12 02:14:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Make it work when
+	the vector is not sorted.
+
+	* CMatrix.cc (ComplexMatrix::operator !): Return boolMatrix.
+	* dMatrix.cc (Matrix::operator !): Likewise
+
+Wed May  7 21:14:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-syscalls.h, oct-syscalls.cc: New files.
+
+	* cmd-edit.h, cmd-edit.cc: Handle completion function.
+
+	* str-vec.h, str-vec.cc (string_vector::uniq): New function.
+
+Tue May  6 00:52:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES_FOR_INSTALL): New variable.
+	(install-inc): Use it.
+
+	* file-ops.h, file-ops.cc (tempnam): Add DIR and PREFIX args.
+	Handle errors and missing functions consistently.
+
+	* oct-group.h, oct-group.cc: New files.
+
+	* oct-passwd.cc: Handle errors and missing functions consistently.
+
+	* str-vec.h, str-vec.cc (c_str_vec, delete_c_str_vec): New functions.
+
+Mon May  5 17:53:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc: (file_ops::tilde_expand): Use new octave_passwd class.
+	* oct-env.cc (octave_env::do_get_user_name): Likewise.
+
+	* oct-passwd.h, oct-passwd.cc: New files.
+
+Sun May  4 22:17:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statdefs.h: Only include sys/types.h if HAVE_SYS_STAT_H is defined.
+
+	* mach-info.h, mach-info.cc: Add missing const qualifiers.
+	(instance_ok ()): New function.
+
+	* glob-match.h, glob-match.cc: Rename from oct-glob.h, oct-glob.cc.
+
+	* cmd-hist.h, cmd-hist.cc: Make it work without GNU readline.
+
+	* lo-utils.h, lo-utils.cc (strsave, octave_putenv): Move here from
+	src/utils.h and src/utils.cc.
+	(octave_fgets): New function, extracted from src/input.cc.
+
+	* cmd-edit.h, cmd-edit.cc: New files.  Provide wrapper class for
+	GNU readline, and allow Octave to work without GNU readline.
+
+	* lo-sysdep.h, lo-sysdep.cc: New files for miscellaneous
+	system-dependent functions.
+
+	* oct-env.h, oct-env.cc: New files for process environment stuff.
+
+	* file-stat.h, file-stat.cc: New files.  Extract file_stat class
+	from file-ops.h and file-ops.cc and move here.
+
+	* file-ops.h, file-ops.cc: Wrap functions in struct.  Move
+	tilde_expand functions here from src/dirfns.cc.
+
+Fri May  2 19:50:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathlen.h: New file, from ../src.
+
+Tue Apr 29 04:39:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::maybe_delete_elements): Prevent
+	out-of-bounds indexing of the index array.
+	* Array-idx.h (Array<T>::maybe_delete_elements): Likewise.
+
+Fri Mar 28 15:37:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.h (x_step_limit): New field.
+	(LSODE_options::init): Initialize it.
+	(LSODE_options::copy): Copy it.
+	(LSODE_options::set_step_limit, LSODE_options::step_limit):
+	New functions.
+	(LSODE::working_too_hard): Delete.
+	* LSODE.cc (LSODE::do_integrate): Handle step limit.
+
+Wed Mar 26 15:31:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray-b.cc: Delete.
+	* Makefile.in: Delete it from the lists.
+
+	* boolMatrix.h (class bboolMatrix): Derive from Array2, not
+	MArray2, since most of the numeric ops don't really make sense.
+
+Tue Mar 25 17:37:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* boolMatrix.cc (boolMatrix::all, boolMatrix::any): New functions.
+
+	* dMatrix.cc (Matrix::all, Matrix::any): Return boolMatrix.
+	* CMatrix.cc (ComplexMatrix::all, ComplexMatrix::any): Likewise.
+
+	* idx-vector.h (idx_vector::idx_vector_rep::freeze,
+	idx_vector::freeze): Delete prefer_zero_one arg.
+	* Array-idx.h, Array2-idx.h: Change all callers.
+
+	* Array-flags.h, Array-flags.cc (liboctave_pzo_flag): Delete.
+
+	* mx-op-defs.h: New file for operator definitions.
+	* mx-cdm-cm.h, mx-cdm-cs.h, mx-cdm-dm.h, mx-cdm-m.h, mx-cdm-s.h,
+	mx-cm-cdm.h, mx-cm-dm.h, mx-cm-m.h, mx-cm-s.h, mx-cs-cdm.h,
+	mx-cs-dm.h, mx-cs-m.h, mx-dm-cdm.h, mx-dm-cm.h, mx-dm-cs.h,
+	mx-dm-m.h, mx-dm-s.h, mx-m-cdm.h, mx-m-cm.h, mx-m-cs.h, mx-m-dm.h,
+	mx-s-cdm.h, mx-s-cm.h, mx-s-dm.h, mx-cdm-cm.cc, mx-cdm-cs.cc,
+	mx-cdm-dm.cc, mx-cdm-m.cc, mx-cdm-s.cc, mx-cm-cdm.cc, mx-cm-dm.cc,
+	mx-cm-m.cc, mx-cm-s.cc, mx-cs-cdm.cc, mx-cs-dm.cc, mx-cs-m.cc,
+	mx-dm-cdm.cc, mx-dm-cm.cc, mx-dm-cs.cc, mx-dm-m.cc, mx-dm-s.cc,
+	mx-m-cdm.cc, mx-m-cm.cc, mx-m-cs.cc, mx-m-dm.cc, mx-s-cdm.cc,
+	mx-s-cm.cc, mx-s-dm.cc:
+	New files for mixed-type operations.
+	* Makefiles.in: Add them to the appropriate lists.
+
+	* mx-inlines.cc: Add bool by bool EQ ops.
+
+	* idx-vector.h, idx-vector.cc: Add constructors for bool and
+	boolMatrix types.
+	(idx_vector::maybe_convert_one_zero_to_idx,
+	idx_vector::idx_vector_rep::maybe_convert_one_zero_to_idx):
+	Delete second arg, prefer_zero_one.  Change all callers.
+
+	* boolMatrix.h, boolMatrix.cc: New files.
+	* mx-base.h: Include boolMatrix.h here.
+	* mx-defs.h: Provide forward declaration for boolMatrix here.
+
+	* chMatrix.h, chMatrix.cc: Delete unused junk.
+
+	* dMatrix.h, CMatrix.h: Delete friend declarations for operator+,
+	operator-, operator*, product, and quotient functions.
+	Add constructor for boolMatrix type.
+	* dMatrix.cc, CMatrix.cc: Delete operator+, operator-, operator*,
+	product, and quotient functions.
+
+	* CDiagMatrix.h: Delete friend declarations for operator+,
+	operator-, and product functions.
+	* CDiagMatrix.h: Delete operator+, operator-, and product functions.
+
+	* Array-b.cc: Also instantiate 2d and 2d diagonal arrays.
+
+Fri Mar 14 00:29:46 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* EIG.cc (EIG::hermitian_init (const ComplexMatrix&)): New function.
+	(EIG::init (const ComplexMatrix&)): Call it if arg is hermitian.
+	(EIG::symmetric_init (const Matrix&)): New function.
+	(EIG::init (const Matrix&)): Call it if arg is symmetric.
+
+	* CMatrix.cc (ComplexMatrix::is_hermitian): New function.
+
+Thu Mar 13 17:04:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.cc (is_symmetric): New function.
+	* Array2.h (is_square): New function.
+
+Wed Mar 12 16:59:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): New target.
+
+Mon Mar 10 22:34:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CmplxCHOL.cc, CmplxHESS.cc, CmplxLU.cc, CmplxQR.cc,
+	CmplxQRP.cc, CmplxSCHUR.cc, CmplxSVD.cc, EIG.cc, dbleCHOL.cc,
+	dbleHESS.cc, dbleLU.cc, dbleQR.cc, dbleQRP.cc, dbleSCHUR.cc,
+	dbleSVD.cc: Don't include mx-inlines.cc.
+
+	* mx-inlines.cc: Abuse the preprocessor to eliminate lots of
+	duplicate code.
+
+Sun Mar  9 03:44:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleQR.h (QR): Delete extra comma at end of list.
+
+	* prog-args.cc (prog_args::getopt): Add missing const in cast.
+
+	* dbleSVD.h (SVD::type): Delete extra comma at end of list.
+
+	* idx-vector.h (idx_vector): Delete unnecessary idx_vector:: and
+	idx_vecotr_rep:: qualifiers.
+
+	* Array.h (class Array): Delete unnecessary Array<T>:: qualifiers.
+
+	* data-conv.h (save_type): Delete extra comma at end of list.
+
+	* CMatrix.cc, FEGrid.cc, Range.cc, dMatrix.cc, data-conv.cc,
+	dir-ops.cc, file-ops.h, idx-vector.cc, idx-vector.h, lo-ieee.cc,
+	lo-mappers.cc, oct-alloc.cc: Use `static_cast<T> (val)' instead of
+	old C-style `(T) val' casts.
+
+Thu Mar  6 20:20:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (operator >>): Return if an error occurs instead of
+	just breaking out of the innermost loop.
+	* CMatrix.cc (operator >>): Likewise.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Fri Feb 28 20:11:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CmplxQR.cc (ComplexQR::init): New function.
+	(ComplexQR::ComplexQR): Use it.  Use initializer list too.
+	* CmplxQRP.cc (ComplexQRP::init): New function.
+	Get sizes right in all cases.
+	(ComplexQR::ComplexQRP): Use it.  Use initializer list too.
+
+	* dbleQR.cc (QR::init): New function.
+	(QR::QR): Use it.  Use initializer list too.
+	* dbleQRP.cc (QRP::init): New function.
+	Get sizes right in all cases.
+	(QR::QRP): Use it.  Use initializer list too.
+
+Wed Feb 26 15:46:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mach-info.cc (oct_mach_info::string_to_float_format):
+	Recognize "vaxg", not "vax_g".
+
+Fri Feb 21 16:07:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (Array2<T>::maybe_delete_elements): Use correct
+	dimension in check for colon equivalent index.
+	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): A single-element
+	index whose value is 0 is also colon eqivalent for n == 1.
+
+	* lo-ieee.cc (octave_ieee_init): Reorder #ifdef stuff to put
+	system-specific tests first.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Wed Feb 19 09:42:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc: D'oh, it's `extern "C"', not `#extern "C"'.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.3 released.
+
+Fri Feb 14 16:23:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
+
+Thu Feb 13 14:35:19 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-prereq): Depend on stamp-picdir.
+	(all): Don't depend on stamp-prereq or stamp-picdir.
+	(liboctave.a, stamp-shared): Do depend on stamp-prereq.
+	(stamp-picdir): Silence noise about making pic.
+	(stamp-shared): Use $(SH_LD) $(SH_LDFLAGS) instead of $(CXX) -shared.
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&)):
+	Fix typo in last change.
+
+	* CColVector.cc (ComplexColumnVector::map (d_c_mapper)):
+	Convert from friend (moved from dColVector.cc).
+	* CMatrix.cc (ComplexMatrix::map (d_c_mapper)):
+	Likewise (moved	from dMatrix.cc).
+	* CRowVector.cc (ComplexRowVector::map (d_c_mapper)):
+	Likewise (moved	from dRowVector.cc).
+
+	* dColVector.cc (ColumnVector::map (d_d_mapper)): Convert from friend.
+	* dMatrix.cc (Matrix::map (d_d_mapper)): Likewise.
+	* dRowVector.cc (RowVector::map (d_d_mapper)): Likewise.
+	* CColVector.cc (ComplexColumnVector::map (c_c_mapper)): Likewise.
+	* CMatrix.cc (ComplexMatrix::map (c_c_mapper)): Likewise.
+	* CRowVector.cc (ComplexRowVector::map (c_c_mapper)): Likewise.
+
+	* dColVector.cc (ColumnVector::apply): Rename from map, return *this.
+	* dMatrix.cc (Matrix::apply): Likewise.
+	* dRowVector.cc (RowVector::apply): Likewise.
+	* CColVector.cc (ComplexColumnVector::apply): Likewise.
+	* CMatrix.cc (ComplexMatrix::apply): Likewise.
+	* CRowVector.cc (ComplexRowVector::apply): Likewise.
+
+Tue Feb 11 19:44:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc: Declare quiet_nan() and infinity().
+
+Mon Feb 10 01:17:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (oct_unlink (const string&, string&)):
+	New two-arg version.
+	(oct_rmdir (const string&, string&)): New two-arg version.
+	(oct_mkdir (const string&, mode_t, string&)): New three-arg version.
+	(oct_mkfifo (const string&, mode_t, string&)): New three-arg version.
+	(oct_rename (const string&, const string&, string&)):
+	New three-arg version.
+
+Fri Feb  7 13:15:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.h (idx_vector::orig_empty): New function.
+
+	* Array2-idx.h (Array2<T>::index (idx_vector&, idx_vector&)):
+	Don't always resize to [](0x0) if one of the indices is empty or
+	zero.
+
+Sun Feb  2 22:33:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-hist.cc (command_history::read): New arg, must_exist.
+	Set line_in_file here too.
+	(command_history::read_range): New arg, must_exist.
+
+Fri Jan 31 09:21:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f2c-main.c: Change C++-style comments to C-style comments.
+
+Tue Jan 28 10:46:02 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Create a relative symbolic link.
+
+Mon Jan 27 15:52:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+Sat Jan 25 22:36:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (bin-dist): New target.
+
+Wed Jan 22 16:18:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleSVD.cc (SVD::init): Work around apparent dgesvd() bug.
+	* CmplxSVD.cc (ComplexSVD::init): Work around apparent zgesvd() bug.
+
+Mon Jan 20 18:44:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::charMatrix (const string&)):
+	If the number of columns is zero, also set the number of rows to zero.
+	(charMatrix::charMatrix (const char *)): Likewise.
+
+Tue Jan  7 00:16:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Sun Jan  5 12:07:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::read): Correctly compute the number of
+	columns for resizing when the number of rows is specified but the
+	number of columns is not.
+
+Wed Dec 18 16:18:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (operator -): New function.
+
+	* lo-ieee.cc: Include <nan.h> on all systems that have it.
+
+Fri Dec 13 02:01:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign): Delay resizing left hand side until we
+	know if the assignment conforms.
+
+Tue Dec 10 01:43:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+Fri Dec  6 14:41:15 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign): If index is a colon, set number of
+	elements to the lhs dimension if the lhs dimension is greater than
+	zero.  Otherwise, set it to the rhs dimension.
+
+	* Version 1.94.
+
+	* Array2-idx.h (assign): Test for rhs scalar case first.
+	If index is colon, set number of elements to lhs dimension, not
+	rhs dimension.
+
+Thu Dec  5 13:05:18 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sun-utils.h: Don't declare MAIN_ or MAIN__ here.
+	* sun-utils.cc: Delete.
+	* f2c-main.c: New file
+
+	* Makefile.in: Fix file name lists.
+
+	* CMatrix.cc (lssolve): Don't redeclare retval, resize it.
+
+Wed Dec  4 12:24:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Qzval): Don't try to use same memory three times.
+	Create result using Complex constructor, not multiplication.
+	Order elements as they are returned from Eispack.
+
+Mon Dec  2 00:26:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc (octave_ieee_init): Kluge for octave_Inf on SCO.
+	Only include nan.h if SCO is defined.  Define _IEEE before
+	including it and undefine it afterward.
+	[SCO] (isnan): Don't mistake Inf as NaN.
+
+	* Array-idx.h (assign): Only resize if assignment conforms.
+
+Wed Nov 20 01:00:40 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Delete lo-error.h.
+	* lo-error.h: Delete (moved to libcruft/misc).
+
+	* Version 1.93.
+
+Tue Nov 19 23:07:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-glob.cc (glob_match::match): Don't expect our flag values to
+	be the same as they are in fnmatch.h.
+
+	* f77-fcn.c, f77-fcn.h: Move to libcruft/misc directory.
+
+	* Makefile.in (INCLUDES): Delete f77-fcn.h.
+	(SOURCES): Delete f77-fcn.c.
+
+Fri Nov 15 13:47:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.h: [SCO]: Declare isinf and isnan.
+
+Thu Nov 14 00:06:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.92.
+
+Wed Nov 13 11:19:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-hist.cc (command_history::add): Ignore empty input lines, or
+	lines that have only carriage return or newline.
+
+	* lo-ieee.cc (isnan, isinf): Provide functions for SCO.
+
+Tue Nov 12 11:11:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (idx_is_inf_or_nan): New function.
+	(IDX_VEC_REP::idx_vector_rep): Use it.
+
+Sun Nov 10 17:09:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* str-vec.h, str-vec.cc: Add constructors to make string vectors
+	from vectors of C strings.
+
+	* oct-glob.h, oct-glob.cc (glob_match): Allow pat to be a string
+	vector.
+	(glob_match::match): Allow match string to be a string vector.
+	(glob_match::glob): New function.
+
+	* chMatrix.cc (charMatrix::row_as_string): New arg, strip_ws.
+
+	* Array-b.cc: New file.
+	* Makefile.in (TI_SRC): Add it to the list.
+
+Fri Nov  8 18:09:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc: Change #include "" to #include <> for safe-lstat.h
+	and safe-stat.h, to avoid getting them from $srcdir when we really
+	want the version from the build directory.  (Maybe this should be
+	done for all the include files, not just those that are
+	auto-generated?  Hmm.)
+
+Thu Nov  7 10:45:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.91.
+
+	* Array3.cc (Array3<T>::resize): Make it work.
+
+Wed Nov  6 22:44:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-alloc.h, oct-alloc.cc: New files.
+	* Makefile.in: Add them to the lists.
+
+Mon Nov  4 21:49:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleQRP.cc (QRP::QRP): Don't pass tmp data to unsafe constructor.
+	* CmplxQRP.cc (ComplexQRP::ComplexQRP): Ditto.
+
+Sun Nov  3 15:45:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (file_stat::is_blk, file_stat::is_chr,
+	file_stat::is_dir, file_stat::is_fifo, file_stat::is_lnk,
+	file_stat::is_reg, file_stat::is_sock): Just return false if the
+	underlying macro is not defined.
+
+	* oct-math.h (lgamma, gamma): Delete declarations.
+	(asinh, acosh, atanh, erf, erfc): Declare arg types too.
+	Protect declarations with #ifdef HAVE_*.
+
+Wed Oct 30 11:42:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+	* cmd-hist.cc: Only include fcntl.h if HAVE_FCNTL_H.
+
+	* Matrix-ext.cc: Include <cfloat>, not <float.h>.
+
+	* CMatrix.cc, cmd-hist.cc, file-ops.cc, file-ops.h, filemode.c,
+	mkdir.c, rename.c, rmdir.c, safe-xstat.cin, statdefs.h, sysdir.h,
+	tempname.c, utils.cc: Only include sys/types.h if HAVE_SYS_TYPES_H.
+
+	* Array3.h (T Array3<T>::checkelem): Return T() for bogus value,
+	since that is now accepatble syntax, even for built-in types.
+	* Array2.h (T Array2<T>::checkelem): Likewise
+
+Sat Oct 26 23:37:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.cc (mkfifo) [! HAVE_MKFIFO]: Just print an error
+	message and return -1.
+
+Fri Oct 25 01:24:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* str-vec.h (str_vec_compare): Declare args as const void *, then
+	cast them to const string * in the body of the function.
+
+	* file-ops.cc (file_stat::mode_as_string): Explicitly construct
+	string from buf.
+
+	* Array3.h (Array3::checkelem): Tag bogus return value with
+	GCC_ATTRIBUTE_UNUSED.
+	* Array2.h (Array2::checkelem): Likewise.
+
+Thu Oct 24 19:40:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Quad.h (Quad): Define virtual destructor.
+
+Tue Oct 15 11:34:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (ComplexMatrix::all_elements_are_real): new function.
+
+Sun Oct 13 11:19:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sun-utils.h: Conditionally declare MAIN__ too.  Declare MAIN_
+	and MAIN__ extern "C".
+	* sun-utils.cc: Include sun-utils.h here.  Delete extern "C" stuff.
+
+Sat Oct 12 12:40:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* MArray-misc.cc: New file.
+	* Makefile.in (MATRIX_SRC): Add it to the list.
+
+	* mx-inlines.cc (equal): Return bool, not int.
+
+	* idx-vector.h (idx_vector (double)): New constructor.
+
+	* chMatrix.h, chMatrix.cc, CMatrix.h, CMatrix.cc, dMatrix.h,
+	dMatrix.cc, dDiagMatrix.h, dDiagMatrix.cc, dRowVector.h,
+	dRowVector.cc, dColVector.h, dColVector.cc, CColVector.h,
+	CColVector.cc, CDiagMatrix.h, CDiagMatrix.cc, CRowVector.h,
+	CRowVector.cc: Logical operators return bool, not int.
+
+	* CMatrix.h, CMatrix.cc (ComplexMatrix::any_element_is_inf_or_nan):
+	New function.
+
+	* dMatrix.h, dMatrix.cc (Matrix::any_element_is_negative,
+	Matrix::any_element_is_inf_or_nan, Matrix::abs,
+	Matrix::all_elements_are_inf_or_nan): New functions.
+
+	* Range.h, Range.cc (Range::all_elements_are_ints): New function.
+
+	* MArray.cc, MArray2.cc, MDiagArray2.cc: Call gripe_nonconformant
+	for errors.  Simplify macros by converting FCN to string for error
+	messages.
+
+	* Array-idx.h (Array<T>::index): New function.  Don't call
+	clear_index() here.
+	(Array<T>::value): Call it, do call clear_index() here.
+	* Array2-idx.h (Array<T>::value, Array<T>::index): Likewise, for
+	one and two arg index functions.
+
+Tue Sep 17 21:21:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DAEFunc.h: Delete #pragma interface since there is no longer a
+	separate implementation file.
+
+Tue Aug 20 17:38:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-picdir): Only create a pic subdirectory if
+	SHARED_LIBS is true AND CPICFLAG or CXXPICFLAG is not empty.
+
+	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Rename arg sort to
+	sort_uniq.  If sort_uniq is nonzero, sort the elements and make
+	them uniq.
+
+	* CMatrix.cc (ComplexMatrix::row_max, ComplexMatrix::row_min,
+	ComplexMatrix::column_max, ComplexMatrix::column_min):
+	Rewrite.  Also return index as a reference arg.
+	(ComplexMatrix::row_max_loc, ComplexMatrix::row_min_loc,
+	ComplexMatrix::column_max_loc, ComplexMatrix::column_min_loc):
+	Delete.
+
+	* dMatrix.cc (Matrix::row_max, Matrix::row_min,
+	Matrix::column_max, Matrix::column_min):
+	Rewrite.  Also return index as a reference arg.
+	(Matrix::row_max_loc, Matrix::row_min_loc,
+	Matrix::column_max_loc, Matrix::column_min_loc): Delete.
+
+Fri Aug  9 05:01:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::row_min, Matrix::row_min_loc,
+	Matrix::row_max, Matrix::row_max_loc, Matrix::column_min,
+	Matrix::column_min_loc, Matrix::column_max,
+	Matrix::column_max_loc): Ignore leading NaNs.
+	* CMatrix.cc (ComplexMatrix::row_min, ComplexMatrix::row_min_loc,
+	ComplexMatrix::row_max, ComplexMatrix::row_max_loc,
+	ComplexMatrix::column_min, ComplexMatrix::column_min_loc,
+	ComplexMatrix::column_max, ComplexMatrix::column_max_loc): Ignore
+	leading NaNs.
+
+Thu Aug  8 16:04:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* QPSOL.cc (QPSOL::do_minimize): Insert linear constraint bounds
+	starting at n, not 0.
+
+Sat Jul 27 02:54:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::Matrix (const RowVector&),
+	Matrix::Matrix (const ColumnVector&)): New constructors.
+
+	* CMatrix.cc (ComplexMatrix::ComplexMatrix (const RowVector&),
+	ComplexMatrix::ComplexMatrix (const ColumnVector&),
+	ComplexMatrix::ComplexMatrix (const ComplexRowVector&),
+	ComplexMatrix::ComplexMatrix (const ComplexColumnVector&)):
+	New constructors.
+
+	* chMatrix.cc (charMatrix::charMatrix (const string_vector&)):
+	New constructor.
+
+Wed Jul 24 16:39:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* LSODE.cc (do_integrate): Check to make sure that the state and
+	derivative vectors are the same size.
+	* DASSL.cc (do_integrate): Likewise.
+
+Sun Jul 14 17:30:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::read, Matrix::write): Convert to use
+	iostreams and handler data format conversions.  Delete old methods
+	that used stdio.
+
+	* data-conv.h, data-conv.cc (oct_data_conv): New class.
+
+Fri Jul 12 13:52:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mach-info.h: Rename from float-fmt.h.
+	* mach-info.cc: Rename from float-fmt.cc.
+	Handle machine information using a singlton class.
+	* Makefile.in: Update appropriate lists.
+
+Tue Jul  9 11:49:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-flags.cc: Provide definitions for the flags even if
+	OCTAVE_SOURCE is not defined.
+
+	* Array.h, Array2.h, Array3.h: BOUNDS_CHECKING now affects
+	operator(), not elem().
+	* Array3.h: Move indexing methods here from Array3.cc.
+
+Mon Jun 24 02:30:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array3.cc (checkelem): Fix typo in call to Array2<T>::elem().
+
+	* Makefile.in (install-lib): Use INSTALL_PROGRAM instead of
+	INSTALL_DATA for shared libs.
+
+Thu Jun  6 09:59:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Quad.cc: Include lo-error.h here too.
+
+Mon May 27 12:41:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-ops.h: Include sys/types.h here.
+
+Wed May 22 00:20:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::transpose): Provide definition.
+
+	* Array-idx.h (maybe_delete_elements): Correctly compute number of
+	elements in result.
+	* Array2-idx.h (maybe_delete_elements): Likewise for number of
+	rows and columns in result.
+
+Tue May 21 23:46:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleQR.cc (QR::QR): Don't create result from to-be-deleted data.
+	* CmplxQR.cc (ComplexQR::ComplexQR): Likewise.
+
+Fri May 17 03:06:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Install in octincludedir, not includedir.
+
+Sun May 12 03:40:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (uninstall): Also delete shared library.
+	Split install into install-libs and install-includes.
+	(install-inc): If linkdir is a directory, leave it alone.
+
+	* sun-utils.cc (MAIN__): Define for Linux/ELF systems.
+
+Thu May  2 20:19:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (assign): Handle A(:) = X for A undefined or empty.
+	* Array2-idx.h (assign): Likewise.
+
+Tue Apr 30 05:43:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.cc (Array2<T>::range_error): New functions.
+
+	* Array.h (class Array<T>): elem() and operator() are now
+	equivalent, and do bounds checking by default.
+	* Array2.cc (class Array2<T>): Likewise.
+
+Sat Apr  6 21:26:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (maintainer-clean, distclean): Also delete
+	stamp-picdir, stamp-shared, and pic directory.
+	(stamp-prereq): New target.
+
+Fri Mar 29 13:44:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* NPSOL.h (NPSOL_options::set_option (const char *, int)):
+	New function.
+
+	* Array.h, Array.cc (Array<T>::range_error ()): New functions.
+	* Array.h (Array<T>::checkelem): Use them.
+
+	* base-lu.h, base-lu.cc: Parameterize based on types of matrix
+	elements too.
+	* dbleLU.h, dbleLU.cc, CmplxLU.h, CmplxLU.cc: Change to match.
+
+	* MDiagArray2.h (MDiagArray2 (const MArray<T>& a)): Delete.
+
+	* Makefile.in (distclean): Delete so_locations, which is created
+	on DEC Alpha systems.
+
+Sat Mar 23 04:02:53 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (HEAVYWEIGHT_INDEXING): Do define this here if it is not
+	already defined.
+
+Fri Mar 22 23:53:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.cc: Include config.h.
+
+Wed Mar 20 04:54:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2-idx.h (assign (Array2<LT>&, const Array2<RT>&)): Don't
+	allow M(I, J) = scalar if I or J is empty.
+
+	* Array-idx.h: Delete Array2 and Array3 code (now in Array2-idx.h
+	and Array3-idx.h).
+
+Thu Mar  7 10:20:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-error.h: Make comments C friendly.
+
+Sun Mar  3 14:04:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.h (make_unique): Move all indexing functions here.
+	* Array2.cc: From here.
+
+	* Array.h, Array2.h (NO_BOUNDS_CHECKING): New macro to control
+	whether operator() calls elem or checkelem.
+
+	* Array.h (make_unique): New private function.
+	Move all indexing functions here.
+	* Array.cc: From here.
+
+	* pathsearch.cc (dir_path::find_all): Index tmp, don't dereference
+	it too.
+
+	* Array-d.cc, Array-ch.cc, Array-C.cc, Array-s.cc, Array-str.cc,
+	Array-i.cc, MArray-i.cc, MArray-s.cc, MArray-d.cc, MArray-ch.cc,
+	MArray-C.cc: Include config.h.
+
+	* Array.h, Array2.h, DiagArray2.h, Array3.h:
+	Don't define HEAVYWEIGHT_INDEXING here.
+
+Sat Mar  2 18:39:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* base-lu.h, base-lu.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* dbleLU.h, dbleLU.cc, CmplxLU.h, Cmplx.cc: Derive from base_lu.
+
+Fri Mar  1 08:30:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array2.h, Array3.h, DiagArray2.h: New files, extracted from Array.h
+	* Array2-idx.h, Array3-idx.h: New files, extracted from Array-idx.h
+ 	* Array2.cc, Array3.cc, DiagArray2.cc: New files, from Array.cc.
+	* MArray2.h, MDiagArray2.h: New files, extracted from MArray.h.
+	* MArray2.cc, MDiagArray2.cc, MArray-defs.h: New files, from MArray.cc.
+
+	* MArray.h (INSTANTIATE_MARRAY_FRIENDS): New macro.
+	(INSTANTIATE_MARRAY2_FRIENDS): Likewise.
+	(INSTANTIATE_MDIAGARRAY_FRIENDS): Likewise.
+	* MArray-C.cc, MArray-ch.cc, MArray-c.cc, MArray-i.cc, MArray-s.cc:
+	Simplify using new macros.
+
+Mon Feb 26 03:04:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install): If $(includedir) ends in version string,
+	make link to name that does not include version info.
+
+	* lo-ieee.cc: Include <cmath> here.
+
+Fri Feb 16 20:52:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-ieee.cc, lo-ieee.h: New files.
+	* lo-mappers.cc, lo-mappers.h: New files.
+	* lo-utils.cc, lo-utils.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+Thu Feb 15 22:02:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (all_integers, too_large_for_float): New functions.
+	* CMatrix.cc (all_integers, too_large_for_float): New functions.
+
+	* byte-swap.h, data-conv.h, data-conv.cc, float-fmt.h,
+	float-fmt.cc: New files.
+	* Makefile.in: Include them in the appropriate lists.
+
+Wed Feb 14 01:49:47 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Qzval): New function.
+
+Tue Feb 13 12:41:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* NPSOL.cc (NPSOL_options::set_option): Arg key is now string, not
+	char*.
+
+	* DASSL.h, DASSL.cc: Do better management of temporary workspace.
+	Use F77_XFCN to call Fortran subroutine.
+	* dColVector.cc, CColVector.cc: Likewise.
+	* dRowVector.cc, CRowVector.cc: Likewise.
+	* NPSOL.h, NPSOL.cc: Likewise.
+	* CmplxCHOL.cc: Likewise.
+	* dbleCHOL.cc: Likewise.
+	* CMatrix.cc: Likewise.
+	* dMatrix.cc: Likewise.
+	* QPSOL.cc: Likewise.
+	* LSODE.cc: Likewise.
+
+Sun Feb 11 14:14:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleHESS.cc (HESS::init): Dimension of tau is n-1, not n+1.
+
+	* dbleSCHUR.h, dbleSCHUR.cc: Do better management of temporary
+	workspace.  Use F77_XFCN to call Fortran subroutine.
+	* CmplxAEPBAL.h, CmplxAEPBAL.cc: Likewise.
+	* CmplxSCHUR.h, CmplxSCHUR.cc: Likewise.
+	* dbleGEPBAL.h, dbleGEPBAL.cc: Likewise.
+	* dbleAEPBAL.h, dbleAEPBAL.cc: Likewise.
+	* CmplxHESS.h, CmplxHESS.cc: Likewise.
+	* CmplxSVD.h, CmplxSVD.cc: Likewise.
+	* dbleHESS.h, dbleHESS.cc: Likewise.
+	* dbleSVD.h, dbleSVD.cc: Likewise.
+	* EIG.h, EIG.cc; Likewise.
+	* CollocWt.cc: Likewise.
+	* NLEqn.cc: Likewise.
+	* Quad.cc: Likewise.
+
+Sat Feb 10 12:14:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleLU.h, dbleLU.cc: Do better management of temporary workspace.
+	Use F77_XFCN to call Fortran subroutine.
+	* CmplxLU.h, CmplxLU.cc: Ditto.
+	* dbleQR.h, dbleQR.cc: Ditto.
+	* CmplxQR.h, CmplxQR.cc: Ditto.
+	* dbleQRP.h, dbleQRP.cc: Ditto.
+	* CmplxQRP.h, CmplxQRP.cc: Ditto.
+
+	* dir-ops.h (dir_entry::dir): Declare as void*, not DIR*.
+	(struct DIR): delete forward declaration.
+	(dir_entry::operator = (const dir_entry$)): Protect against
+	copying same object.
+	* dir-ops.cc: Cast dir appropriately.
+
+Fri Feb  9 16:12:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lo-error.cc: Moved to libcruft/misc.
+	* Makefile.in: Delete it from the list.
+
+	* f77-fcn.c (f77_context, f77_exception_encountered): Delete
+	definitions (they have been moved to libcruft/misc/f77-extern.cc).
+
+	* Array-flags.h: New file.
+	* Array-idx.h: Include it here.
+	* Makefile.in (MATRIX_INC): Add it to the list.
+
+	* Array-flags.cc: Renamed from Array-ext.cc.
+	(liboctave_dfi_flag): Renamed from dfi_flag.
+	(liboctave_pcv_flag): Renamed from pcv_flag.
+	(liboctave_pzo_flag): Renamed from pzo_flag.
+	(liboctave_rre_flag): Renamed from rre_flag.
+	* Array-idx.h: Change all uses of dfi_flag, etc.
+	* Makefile.in (MATRIX_SRC): Change file name here too.
+
+	* Makefile.in (LIBOCTAVE_LFLAGS, LIBOCTAVE_LIBS): New variables.
+	(stamp-shared): Use them here.
+
+Tue Feb  6 09:53:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-hist.cc (command_history::ignore_entries): Delete default
+	argument value.
+
+Mon Feb  5 12:07:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CmplxAEPBAL.h, CmplxCHOL.h, CmplxDET.h, CmplxHESS.h, CmplxLU.h,
+	CmplxQR.h, CmplxQRP.h, CmplxSCHUR.h, CmplxSVD.h, dbleAEPBAL.h,
+	dbleCHOL.h, dbleDET.h, dbleGEPBAL.h, dbleHESS.h, dbleLU.h,
+	dbleQR.h, dbleQRP.h, dbleSCHUR.h, dbleSVD.h:
+	Clean up constructors, assigment operator.
+
+Sun Feb  4 03:12:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* NPSOL.cc (do_minimize): Use F77_XFCN to call npsol.
+	Check f77_exception_encountered on return.
+
+	* f77-fcn.c (f77_exception_encountered): New variable.
+	(F77_XFCN): Set it.
+	* f77-fcn.h: Provide declaration.
+
+	* QPSOL.h (QPSOL_options::set_options): Renamed from copy().
+
+	* NPSOL.h (NPSOL_options::set_options): Renamed from copy().
+
+	* NLEqn.h (NLEqn_options::set_options): New function.
+	* Quad.h (Quad_options::set_options): Likewise.
+
+	* LP.h (class LP): Add accessors for LP data.
+
+	* NLEqn.h (NLEqn::n): Delete.
+
+	* NLEqn.h (class NLEqn::n): Likewise.
+
+	* NLP.h (class NLP): Add accessors for NLP data.
+
+	* NPSOL.h (class NPSOL_options): Move constructors, set, and
+	access functions here.
+	* NPSOL.cc.cc: From here.
+
+	* QLD.h (class QLD): Add destructor definition.
+	* Objective.h (class Objective): Likewise.
+	* ODEFunc.h (class ODEFunc): Likewise.
+	* NLFunc.h (class NLFunc): Likewise.
+	* NLEqn.h (class NLEqn): Likewise.
+	* NLConst.h (class NLConst): Likewise.
+	* LinConst.h (class LinConst): Likewise.
+	* LSODE.h (class LSODE_options): Likewise.
+	* CollocWt.h (class CollocWt): Likewise.
+	* Bounds.h (class Bounds): Likewise.
+
+	* QLD.cc (QLD::set_default_options): Delete.
+
+	* QP.h (QP): Add accessors for QP data.
+	Add copy constructor, operator =, and destructor definitions.
+
+	* Range.h, Quad.h, QP.h, QLD.h, Objective.h, NLP.h, NLFunc.h,
+	NLConst.h, LinConst.h, LSODE.h, LP.h, FEGrid.h, EIG.h, DASSL.h,
+	DAEFunc.h, CollocWt.h, Bounds.h:
+	Clean up constructors, assigment operator.
+
+	* dRowVector.cc (RowVector::transpose): Use magic of reference
+	counting to avoid duplicating the data immediately.
+	* dColVector.cc (ColumnVector::transpose): Likewise.
+	* CRowVector.cc (ComplexrowVector::transpose): Likewise.
+	* CColVector.cc (ComplexColumnVector::transpose): Likewise.
+
+Sat Feb  3 01:02:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* prog-args.h (prog_args::option_argument): New enum.
+
+	* f77-fcn.h: Rename from f77-uscore.h.
+	(F77_XFCN_ERROR, F77_XFCN): New macros.
+	* f77-fcn.c: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+
+	* ODEFunc.h: Clean up.
+
+	* DASSL.cc, DASSL.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* LSODE.cc, LSODE.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* ODE.cc: Delete.
+	* Makefile.in (SOURCES): Remove from list.
+
+	* base-de.h, DAE.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* ODE.h: Only define interface for ODE classes.
+	* DAE.h: Only define interface for ODE classes.
+
+	* LPsolve.cc (do_minimize): Print sorry not implemented message.
+	(LPsolve::set_default_options)): Delete
+	* LPsolve.h (class LPsolve): Add operator =, copy constructor, and
+	destructor.
+
+	* LP.h (class LP): Add operator =, copy constructor, and destructor.
+
+	* QPSOL.h (QPSOL::QPSOL (const QPSOL&)): New constructor.
+	(QPSOL::operator =): Call base class operator = instead of assuming
+	we know what to copy.
+
+	* base-min.h (size): New function.
+
+	* NLP.h (NLP::size): Delete.
+	(NLP::NLP (const NLP&)): New constructor.
+	(NLP::operator =): Call base class operator = instead of assuming
+	we know what to copy.
+
+	* NPSOL.h, NPSOL.cc (NPSOL::option): Delete.
+	(class NPSOL): Add operator = and destructor.
+
+	* NPSOL.h: Add NPSOL_options() to list of constructor initalizers.
+
+Fri Feb  2 22:52:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (liboctave.a): Depend on $(PICOBJ).
+
+Wed Jan 31 05:29:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Givens, Sylvester, Matrix::expm): New functions.
+	* CMatrix.cc (Givens, Sylvester, ComplexMatrix::expm): Ditto.
+
+Mon Jan 29 00:00:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* prog-args.h, prog-args.cc: New files.
+	* Makefile.in: Add them to lists.
+
+	* getopt.h, getopt.c, getopt1.c: New files.
+	* Makefile.in: Add them to the lists.
+
+	* oct-term.h, oct-term.cc: New files.
+	* Makefile.in: Add them to the lists.
+
+	* str-vec.cc: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+
+	* file-ops.cc (oct_tmpnam): Move here from src/utils.cc.
+
+	* tempname.c, tempnam.c: Move here from src directory.
+	* Makefile.in: Add to lists.
+
+Sun Jan 28 23:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cmd-hist.h, cmd-hist.cc: New files.
+	* Makefile.in: Add them to lists.
+
+Thu Jan 25 20:36:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-glob.h, oct-glob.cc: New files.
+	* Makefile.in: Add them to lists.
+
+Wed Jan 24 01:55:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.h, pathsearch.cc: New files.
+	* Makefile.in: Add them to lists.
+
+	* dir-ops.h, dir-ops.cc: New files.
+	* sysdir.h: Move here from src directory.
+	* Makefile.in: Add them to lists.
+
+	* Array.h (Array::qsort): Return *this, not void.
+	* str-vec.h (string_vector::qsort): Likewise.
+
+	* chMatrix.cc (row_as_string): Resize result to eliminate
+	unnecessary NULs.
+
+Tue Jan 23 00:40:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h,
+	file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c:
+	Files moved here from src directory.
+	* Makefile.in: Add them to lists.  Include appropriate rules.
+
+	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
+	Use pointers, not references (this is C code!).
+
+	* oct-math.h: New file.
+	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
+	Files moved here from src directory.
+	* Makefile.in: Add them to lists.
+
+Sun Jan 21 22:53:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (make_uniq): Fix major brain-o.
+
+	* CmplxSCHUR.h, CmplxSCHUR.cc, dbleSCHUR.h, dbleSCHUR.cc:
+	Convert	to use string class instead of char*.
+
+	* str-vec.h, Array-str.cc: New files.
+
+	* Array.h (Array::qsort): New function.
+
+Fri Jan 12 01:45:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h: Nest ArrayRep class inside Array class.
+	Refer to ArrayRep, not ArrayRep<T>.
+	Move all ArrayRep functions inline.
+	Don't declare other Array classes as friends of ArrayRep.
+	* Array.cc: Delete ArrayRep functions.
+	* Array-idx.h: Refer to ArrayRep, not ArrayRep<T>.
+
+	* Array-C.cc, Array-ch.cc, Array-d.cc, Array-i.cc, Array-s.cc:
+	Don't instantiate ArrayRep objects.
+
+Wed Jan 10 04:40:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (charMatrix::charMatrix (const string&)):
+	New constructor.
+
+Tue Jan  9 04:44:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleGEPBAL.cc (GEPBALANCE::init): Use string instead of char*
+	for balance_job arg.
+	* dbleAEPBAL.cc (AEPBALANCE::init): Likewise.
+	* CmplxAEPBAL.cc (ComplexAEPBALANCE::init): Likewise.
+
+	* chMatrix.cc (row_as_string): Return string, not const char*.
+
+Mon Jan  8 03:20:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs.
+
+	* chMatrix.cc (row_as_string): Undo previous change.
+
+Sun Jan  7 19:50:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* chMatrix.cc (row_as_string): Do memory management here.  Caller
+	is expected to save string if necessary.
+
+Sat Jan  6 19:28:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h (class DiagArray): Enable nested Proxy class for all
+	platforms.
+
+	* Array.cc (Array<T>::operator = (const Array<T>&)): If rep ==
+	a.rep, don't mess with count.
+	* Array.h (Array2<T>& operator = (const Array2<T>&)): Likewise,
+	don't do anything if reps are the same.
+	(Array3<T>& operator = (const Array3<T>&)
+
+	* Array.h (ArrayRep<T>::operator = (const ArrayRep<T>&)):
+	Declare private with no definition to prevent misuse.
+
+	* Array.cc (Array2<T>::insert (const Array2<T>&, int, int)):
+	Get range check right.
+	* dMatrix.cc (Matrix::insert (const RowVector&, int, int)): Ditto.
+	(Matrix::insert (const ColumnVector&, int, int)): Ditto.
+	(Matrix::insert (const DiagMatrix&, int, int)): Ditto.
+	* CMatrix.cc (ComplexMatrix::insert (const Matrix&, int, int)): Ditto.
+	(ComplexMatrix::insert (const RowVector&, int, int)): Ditto.
+	(ComplexMatrix::insert (const ColumnVector&, int, int)): Ditto.
+	(ComplexMatrix::insert (const DiagMatrix&, int, int)): Ditto.
+	(ComplexMatrix::insert (const ComplexRowVector&, int, int)): Ditto.
+	(ComplexMatrix::insert (const ComplexColumnVector&, int, int)): Ditto.
+	(ComplexMatrix::insert (const ComplexDiagMatrix&, int, int)): Ditto.
+	* dRowVector.cc (RowVector::insert (const RowVector&, int)): Ditto.
+	* dColVector.cc
+	(ColumnVector::insert (const ColumnVector&, int)): Ditto.
+	* CRowVector.cc
+	(ComplexRowVector::insert (const RowVector&, int)): Ditto.
+	(ComplexRowVector::insert (const ComplexRowVector&, int)): Ditto.
+	* CColVector.cc
+	(ComplexColumnVector::insert (const ColumnVector&, int)): Ditto.
+	(ComplexColumnVector::insert (const ComplexColumnVector&, int)): Ditto.
+
+	* dMatrix.cc (Matrix::insert (const DiagMatrix&, int, int)):
+	Also fill in zeros, not just the diagonal.
+
+	* CDiagMatrix.cc (ComplexDiagMatrix::fill (double, int, int)):
+	Use END parameter properly.
+	(ComplexDiagMatrix::fill (const Complex&, int, int)): Ditto.
+	* dDiagMatrix.cc (DiagMatrix::fill (double, int, int)): Ditto.
+
+	* Array.h (ArrayRep<T>::ArrayRep (void)): Set count to 1 here.
+	(ArrayRep<T>::ArrayRep (T *, int)): Likewise.
+	* Array.cc (ArrayRep<T>::ArrayRep (const ArrayRep<T>&)):
+	Don't copy count.  Set it to 1.
+	(ArrayRep<T>::ArrayRep (int)): Set count to 1 here.
+
+	* Array.h (Array<T>::Array (T *, int)): After constructing rep,
+	don't set rep->count to 1 here (now handled by ArrayRep
+	constructors).
+	(Array<T>::Array (void)): Ditto.
+	(Array<T>::Array (int)): Ditto.
+	(Array<T>::T& elem (int)): Ditto.
+	* Array-idx.h (Array<T>::maybe_delete_elements (idx_vector&)): Ditto.
+	(Array2<T>::maybe_delete_elements (idx_vector&, idx_vector&)): Ditto.
+	* Array.cc: (Array<T>::Array (int, const T&)): Ditto.
+	(Array<T>::resize (int)): Ditto.
+	(Array<T>::resize (int, const T&)) :Ditto.
+	(Array<T>::fortran_vec (void)): Ditto.
+	(Array2<T>::resize (int, int)): Ditto.
+	(Array2<T>::resize (int, int, const T&)): Ditto.
+	(DiagArray<T>::resize (int, int)): Ditto.
+	(DiagArray<T>::resize (int, int, const T&)): Ditto.
+
+Sun Dec 31 21:23:26 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-ch.cc: Rename from Array-c.cc.
+	* MArray-ch.cc: Rename from MArray-c.cc.
+	* chMatrix.cc: Rename from cMatrix.cc.
+	* chMatrix.h: Rename from cMatrix.h.
+	* Makefile.in (TI_SRC): Use new names here.
+	* mx-base.h: Likewise.
+
+Fri Dec 29 21:45:00 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Handle shared libraries.
+
+Thu Dec 28 14:18:34 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CRowVector.cc (operator * (ComplexRowVector, ComplexMatrix)):
+	Correctly compute length of return value.  Correct rows and
+	columns in zgemv call.
+	* dRowVector.cc (operator * (RowVector, Matrix)): Likewise.
+
+Tue Dec 26 00:37:57 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-picdir): New target.
+	(all): Depend on it.
+
+Sun Dec 24 03:10:41 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Remove QLD.h.
+	(SOURCES): Remove QLD.cc.
+
+Wed Dec 20 00:43:46 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc (Matrix::inverse): New arg, force.
+ 	If force is nonzero, invert even if matrix is singular.
+	(ComplexMatrix::inverse): Likewise.
+
+	* dRowVector.cc, mx-inlines.cc, dMatrix.cc, dDiagMatrix.cc,
+	dColVector.cc,MArray-C.cc, CmplxDET.cc, CRowVector.cc, CMatrix.cc,
+	CDiagMatrix.cc, CColVector.cc, Array-C.cc, CmplxDET.h, CMatrix.h:
+	Include "oct-cmplx.h" instead of <Complex.h>.
+
+	* mx-defs.h: Include oct-cmplx.h in place of forward declaration
+	for class Complex.
+
+	* oct-cmplx.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+	* idx-vector.cc (IDX_VEC_REP::idx_vector_rep): Don't redeclare len.
+	(IDX_VEC_REP::maybe_convert_one_zero_to_idx): Don't redeclare count.
+	(IDX_VEC_REP::freeze): Don't redeclare max_val and min_val.
+	(intcmp, sort_data, make_uniq, copy_data, IDX_VEC_REP::print):
+	Avoid g++ bugs.
+
+Tue Nov 14 14:24:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (maybe_delete_elements): Give useful error message.
+
+	* dbleSCHUR.cc, dbleSVD.cc: Include iostream.h.
+
+Mon Nov 13 08:35:07 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CDiagMatrix.cc (inverse): Return retval, not *this.
+	* dDiagMatrix.cc (inverse): Use same method as for Complex case.
+
+Sat Nov  4 05:06:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.h, Array.cc, Array-idx.h [HEAVYWEIGHT_INDEXING]: Keep
+	index vector object with Array, not ArrayRep.
+
+Fri Nov  3 06:52:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-idx.h (assign (Array2<T>&, const Array2<T>&): Don't fail
+	if index is a colon and resizing is maybe needed.
+
+Tue Oct 31 17:40:01 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.cc (IDX_VEC_REP::is_colon_equiv): Don't return true
+	if we have a vector of 1's.
+
+	* Array-idx.h (assign (Array2<LT>&, Array2<RT>&): If lhs has no
+	current orientation, require index and rhs to conform unless
+	do_fortran_indexing flag is set.
+
+Sun Oct 15 23:32:08 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array-d.cc, Array-C.cc, mx-base.h, mx-inlines.cc, dDiagMatrix.h,
+	CDiagMatrix.h, CMatrix.cc, CMatrix.h, dMatrix.h, mx-defs.h,
+	cMatrix.h, MArray.cc, MArray.h, MArray-i.cc, MArray-c.cc,
+	MArray-s.cc, Array.h, Array.cc, Array-c.cc, Array-i.cc,
+	Array-s.cc, cMatrix.cc, Array-idx.h, dMatrix.cc:
+	Massive changes to support additional data types.  Only charMatrix
+	is currently used in Octave.
+
+Thu Oct 12 02:22:36 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Array.cc (Array2<T>::insert (Array2<T>&, int, int): New function.
+	* CMatrix.cc (ComplexMatrix::insert (ComplexMatrix&, int, int):
+	Simply call Array2<Complex> version.
+	* dMatrix.cc (Matrix::insert (Matrix&, int, int): Similarly, just
+	call Array2<double> version.
+
+	* Array-C.cc, Array-d.cc: Instantiate new assign functions too.
+
+	* Array.h, Array.cc: Massive overhaul to support new way of
+	handling indexing.
+	* idx-vector.h, idx-vector.cc: Likewise.
+	* Array-ext.cc, Array-idx.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+Wed Oct 11 00:49:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (nelem_internal): Use tfloor here, not round.
+
+Sun Oct  8 18:21:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.h, idx-vector.cc: New files, moved from ../src.
+	* Makefile.in (SOURCES, INCLUDES): Include them in the lists.
+
+Sat Oct  7 19:07:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* CMatrix.cc (pseudo_inverse): Avoid bogus g++ warning.
+
+	* Array.h: Move simple member functions here.
+	* Array.cc: From here.
+
+Fri Oct  6 00:36:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Range.cc (tfloor, tceil, round): New static functions.
+	(Range::nelem_internal): Rewrite to use better method.
+
+	* dbleSVD.h (SVD::type): New item, sigma_only.
+	(type_computed): New var.
+	* dbleSVD.cc (left_singular_matrix, right_singular_matrix):
+	Handle possible error condition.
+	(init): Allow for SVD::sigma_only, save type computed.
+	* CmplxSVD.cc (left_singular_matrix, right_singular_matrix):
+	Handle possible error condition.
+	(init): Allow for SVD::sigma_only, save type computed.
+
+Wed Oct  4 15:33:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Nearly all non-matrix .h and .cc files:
+	Move short function bodies into class declarations for inlining.
+	Generally clean up.
+
+	* base-min.h: New file.
+	* LP.h (class LP): Derive from base_minimizer.
+	* QLP.h (class QLP): Derive from base_minimizer.
+	* NLP.h (class NLP): Derive from base_minimizer.
+	* Makefile.in (INCLUDES): Add base-min.h to the list.
+
+	* Makefile.in (SOURCES): Delete DAEFunc.cc, LP.cc, NLConst.cc,
+	NLFunc.cc, Objective.cc and QP.cc from list.
+
+Tue Sep 26 04:14:23 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dbleSCHUR.cc (select_ana): Remove name of unused parameter.
+	(SCHUR::SCHUR): Delete unused parameter ord.
+	* CmplxSCHUR.h (ComplexSCHUR::CmplxSCHUR): Likewise.
+
+	* CRowVector.cc
+ 	(ComplexRowVector::operator+ (const Complex&, const RowVector&),
+	(ComplexRowVector::operator- (const Complex&, const RowVector&),
+	(ComplexRowVector::operator* (const Complex&, const RowVector&),
+	(ComplexRowVector::operator/ (const Complex&, const RowVector&)):
+	Actually do something.
+
+	* dMatrix.cc (Matrix::lssolve (ComplexMatrix&)): Use dummy vars.
+	(Matrix::lssolve (ComplexMatrix&, int&)): Likewise.
+	(Matrix::lssolve (ComplexMatrix&, int&, int&)): Likewise.
+
+	* Quad.cc (Quad_options::Quad_options (double, double)): New function.
+	* (Quad::Quad (integrand_fcn, double, double): Properly initialize
+	tolerances.
+
+	* DAE.cc (ddassl_f, ddassl_j): Remove names of unused parameters.
+	* LPsolve.cc (LPsolve::minimize): Likewise.
+	* NPSOL.cc (NPSOL::option, npsol_confun, npsol_objfun): Likewise.
+	* ODE.cc (lsode_f, lsode_j): Likewise.
+	* QPSOL.cc (qphess): Likewise.
+
+Fri Sep 22 04:14:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dMatrix.cc: Include <cstring>.
+
+	* Array.cc: Try harder to avoid warnings from gcc in functions
+	that return bogus values after calling the error handler.
+
+Thu Sep 14 00:56:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'.
+
+	* Makefile.in (TEMPLATE_SRC): Add Array-i.cc to the list.
+
+Tue Aug 22 00:41:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DAE.cc (dassl_f): Add UNUSED attribute for unused parameters.
+	(dassl_j): Likewise.
+
+	* DAE.cc, NLEqn.cc, NPSOL.cc, ODE.cc, CColVector.cc, CMatrix.cc,
+	dColVector.cc, dMatrix.cc, CmplxLU.cc, dbleLU.cc, QPSOL.cc,
+	Array.cc, CollocWt.cc, FEGrid.h, LinConst.h:
+	Update for change in for loop variable scope for gcc 2.7.0.
+
+Mon Aug 21 19:34:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Only include dependency files if $(omit_deps) is
+	not set.
+
+Mon May  1 13:26:00 1995  John Eaton  (jwe@bullwinkle.che.utexas.edu)
+
+	* dbleSCHUR.h dbleSVD.h dbleQRP.h dbleQR.h dbleHESS.h dbleLU.h
+	dbleCHOL.h dbleGEPBAL.h dbleAEPBAL.h dbleDET.h dDiagMatrix.h
+	dColVector.h dMatrix.h dRowVector.h Quad.h Range.h QPSOL.h QLD.h
+	ODEFunc.h QP.h Objective.h NPSOL.h ODE.h NLEqn.h NLFunc.h
+	NLConst.h LinConst.h LPsolve.h LP.h FSQP.h FEGrid.h EIG.h
+	DAEFunc.h CollocWt.h DAE.h CmplxSVD.h CmplxQRP.h CmplxSCHUR.h
+	CmplxHESS.h CmplxDET.h CmplxLU.h CmplxQR.h CmplxCHOL.h
+	CmplxAEPBAL.h CRowVector.h CDiagMatrix.h Bounds.h CColVector.h
+	CMatrix.h dbleSCHUR.cc dbleSVD.cc dbleQRP.cc dbleQR.cc
+	dbleGEPBAL.cc dbleLU.cc dbleHESS.cc dbleDET.cc dbleCHOL.cc
+	dbleAEPBAL.cc dColVector.cc dRowVector.cc dMatrix.cc
+	dDiagMatrix.cc QPSOL.cc Range.cc Quad.cc QP.cc ODEFunc.cc QLD.cc
+	Objective.cc NLEqn.cc ODE.cc NPSOL.cc NLFunc.cc LPsolve.cc
+	NLConst.cc LinConst.cc FSQP.cc FEGrid.cc LP.cc DAE.cc EIG.cc
+	CollocWt.cc DAEFunc.cc CmplxSVD.cc CmplxSCHUR.cc CmplxQRP.cc
+	CmplxLU.cc CmplxQR.cc CmplxHESS.cc CmplxDET.cc CmplxCHOL.cc
+	CmplxAEPBAL.cc CRowVector.cc CColVector.cc CMatrix.cc
+	CDiagMatrix.cc Bounds.cc MArray.h MArray.cc Array.cc Array.h
+	NLP.h: Use pragma interface/implementation. Don't surround
+	contents in extern "C++".
+	* lo-error.h sun-utils.h: Don't surround contents in extern "C++".
+
+Tue Apr 11 10:59:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* f77-uscore.h (F77_FCN): Allow for possibility of uppercase
+	identifiers.
+	* utils.cc dbleSVD.cc dbleSCHUR.cc dbleQRP.cc dbleQR.cc dbleLU.cc
+	dbleHESS.cc dbleGEPBAL.cc dbleAEPBAL.cc dRowVector.cc
+	dColVector.cc QLD.cc CmplxSVD.cc CmplxCHOL.cc CmplxHESS.cc
+	CmplxQR.cc CmplxQRP.cc QPSOL.cc CmplxAEPBAL.cc CmplxLU.cc
+	CmplxSCHUR.cc dMatrix.cc CColVector.cc CRowVector.cc dbleCHOL.cc
+	CollocWt.cc NLEqn.cc EIG.cc DAE.cc ODE.cc CMatrix.cc NPSOL.cc
+	Quad.cc: Change usage of F77_FCN to match new definition
+
+	* utils.cc dbleSVD.cc dbleSCHUR.cc dbleQRP.cc dbleQR.cc dbleLU.cc
+	dbleHESS.cc dbleGEPBAL.cc dbleAEPBAL.cc dRowVector.cc
+	dColVector.cc QLD.cc CmplxSVD.cc CmplxCHOL.cc CmplxHESS.cc
+	CmplxQR.cc CmplxQRP.cc QPSOL.cc CmplxAEPBAL.cc CmplxLU.cc
+	CmplxSCHUR.cc dMatrix.cc CColVector.cc CRowVector.cc dbleCHOL.cc
+	CollocWt.cc NLEqn.cc EIG.cc DAE.cc ODE.cc CMatrix.cc NPSOL.cc
+	Quad.cc: Where appropriate, declare Fortran subroutines to take
+	args by reference instead of pointer.  Change all callers.
+
+Sun Apr  9 20:11:56 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* MArray.h (MArray2::~MArray2, MDiagArray::~MDiagArray): New
+	functions.  Make += and -= operators friend functions.
+
+	* Array.h (Array2::~Array2, Array3::~Array3,
+	DiagArray::~DiagArray): New functions.
+
+Wed Apr  5 21:21:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (EXTRAS): Don't distribute mx-kludge.cc.
+	(MATRIX_INC): Don't distribute mx-kludge.h.
+
+	* CColVector.h CColVector.cc CDiagMatrix.h CDiagMatrix.cc
+	CMatrix.h CMatrix.cc CRowVector.h CRowVector.cc dColVector.h
+	dColVector.cc dDiagMatrix.h dDiagMatrix.cc dMatrix.h dMatrix.cc
+	dRowVector.h dRowVector.cc:
+	Derive classes from MArray, MArray2, and MDiagArray, not Array,
+	Array2, and DiagArray2.
+	Don't use functions defined in mx-kludge.cc for arithmetic
+	like-type operations on arrays.
+
+	* MArray.cc: Use the classes defined here like-type mathematical
+	operations on Array objects.  Abuse CPP more.
+	* Makefile.in (TEMPLATE_SRC): Add it to the list.
+	(EXTRAS): Delete it from this list.
+
+	* MArray-C.cc, MArray-d.cc: New files.
+	* Makefile.in (TI_SRC): Add them to the list.
+
+Tue Apr  4 14:13:46 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* mx-kludge.cc: Abuse CPP even more.
+
+Mon Apr  3 21:05:30 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Objective.h (objective_function): Add missing const.
+	(gradient_function): Likewise.
+
+	* CColVector.h CColVector.cc CDiagMatrix.h CDiagMatrix.cc
+	CMatrix.h CMatrix.cc CRowVector.h CRowVector.cc dColVector.h
+	dColVector.cc dDiagMatrix.h dDiagMatrix.cc dMatrix.h dMatrix.cc
+	dRowVector.h dRowVector.cc:
+	Reorganize to declare and define friends where they should be,
+	based on the use of private constructors.
+
+Fri Mar 31 10:09:40 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* CRowVector.h (linspace): Add declaration.
+	* dRowVector.h (linspace): Likewise.
+
+	* dMatrix.cc (Matrix::inverse, Matrix::determinant, Matrix::solve):
+	Force result of rcond + 1.0 to be stored.
+	* CMatrix.cc (ComplexMatrix::inverse, ComplexMatrix::determinant,
+	ComplexMatrix::solve): Likewise.
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/scripts-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,17465 @@
+2011-04-13  David Bateman  <dbateman@free.fr>
+
+	* plot/colstyle.m : New function.
+	* plot/module.mk plot_FCN_FILES) : Add it here.
+
+2011-04-12  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/getappdata.m: If no property name is provided, return
+	a structure representing the appdata.
+
+2011-04-12  Marco Caliari  <marco.caliari@univr.it>
+
+	* general/quadgk.m: Fix problem with -Inf bound on integral (bug
+	#33055). 
+
+2011-04-11  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/getappdata.m: If appdata propery does not exist, return
+	an empty matrix.
+
+2011-04-08  Rik  <octave@nomad.inbox5.com>
+
+	* linear-algebra/cond.m, linear-algebra/expm.m, linear-algebra/logm.m,
+	linear-algebra/null.m, linear-algebra/orth.m, linear-algebra/rank.m,
+	linear-algebra/rref.m: Improve docstrings.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/pack.m: Improve docstring.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* signal/module.mk: Make spectral density helper functions private.
+	(rectangle_sw, rectangle_lw, triangle_sw, triangle_lw)
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/fminunc.m, plot/isocolors.m, plot/isonormals.m:
+	Clean up operator and function indices.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/symvar.m, miscellaneous/warning_ids.m,
+	optimization/fminunc.m: Spellcheck documentation for 3.4.1 release.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* @ftp/mget.m, audio/loadaudio.m, audio/playaudio.m, audio/record.m,
+	audio/saveaudio.m, general/circshift.m, general/cumtrapz.m,
+	general/dblquad.m, general/quadgk.m, general/quadl.m,
+	general/shiftdim.m, general/triplequad.m, geometry/convhull.m,
+	geometry/delaunay3.m, geometry/dsearch.m, geometry/dsearchn.m,
+	geometry/tsearchn.m, geometry/voronoi.m, image/brighten.m,
+	io/textscan.m, miscellaneous/getappdata.m,
+	miscellaneous/namelengthmax.m, miscellaneous/rmappdata.m,
+	miscellaneous/setappdata.m, miscellaneous/swapbytes.m,
+	miscellaneous/symvar.m, miscellaneous/warning_ids.m,
+	pkg/private/get_forge_pkg.m, plot/clabel.m, plot/colorbar.m,
+	plot/cylinder.m, plot/daspect.m, plot/linkprop.m, plot/pbaspect.m,
+	plot/plotyy.m, plot/private/__add_default_menu__.m, plot/sphere.m,
+	plot/subplot.m, plot/view.m, polynomial/polyreduce.m,
+	polynomial/ppder.m, polynomial/ppint.m, signal/periodogram.m,
+	sparse/colperm.m, sparse/nonzeros.m, sparse/spaugment.m,
+	sparse/speye.m, sparse/treelayout.m, sparse/treeplot.m,
+	statistics/base/kurtosis.m, statistics/base/mean.m,
+	statistics/base/meansq.m, statistics/base/median.m,
+	statistics/base/mode.m, statistics/base/moment.m,
+	statistics/base/ranks.m, statistics/base/skewness.m,
+	statistics/base/statistics.m, statistics/base/var.m, time/datenum.m,
+	time/datetick.m, time/now.m: Grammarcheck m-files for 3.4.1 release.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, general/module.mk: Deprecate perror, strerror
+	functions.
+
+2011-04-02  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/prctile.m, statistics/base/quantile.m: Improve 
+	docstrings.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* pkg/module.mk, pkg/pkg.m, pkg/private/get_forge_pkg.m: Add
+	documentation for '-forge' option (bug #32464).  Make get_forge_pkg
+	a private function.
+
+2011-03-31  Marco Caliari  <marco.caliari@univr.it>
+
+	* sparse/spdiags.m: Treat empty vector (1x0 or 0x1) the same as diag().
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/cor.m: Increase tolerance of %!tests using random
+	data to guarantee passage.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, deprecated/cquad.m: Add deprecated entry for
+	cquad() pointing to quadcc().
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/cor.m: Fix operation with only single input
+	(bug #32961)
+
+2011-03-29  John W. Eaton  <jwe@octave.org>
+
+	* special-matrix/wilkinson.m: Update test for 'wilkinson(1)' to reflect
+	changes to diag().
+
+2011-03-29  Michael Creel  <michael.creel@uab.es>
+
+	* statistics/base/ols.m: Fix erroneous degrees of freedom when
+	computing the covariance estimator (closes: bug #32892).
+
+2011-03-28  Rik  <octave@nomad.inbox5.com>
+
+	* linear-algebra/cross.m, plot/ishold.m, signal/fftfilt.m: Improve
+	docstrings.
+
+2011-03-26  Robert T. Short  <octave@phaselockedsystems.com.com>
+
+	* signal/ifftshift.m: Add tests.
+
+2011-03-26  Robert T. Short  <octave@phaselockedsystems.com.com>
+
+	* signal/fftshift.m: Add tests.
+
+2011-03-21  Rik  <octave@nomad.inbox5.com>
+
+	* signal/ifftshift.m: Fix bug #32873, ifftshift fails.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* general/module.mk, statistics/base/module.mk: Move runlength.m
+	to statistics/base directory.
+	* statistics/base/runlength.m: Add input validation and tests.
+	Improve docstring.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/models/logistic_regression.m: Do not split function
+	declaration with line continuation.
+	* statistics/models/private/logistic_regression_likelihood.m,
+	statistics/models/private/logistic_regression_derivatives.m: Make
+	helper functions private.
+	* statistics/models/module.mk: Make helper functions private.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* plot/isocolors.m, plot/isonormals.m, plot/isosurface.m: Improve
+	docstrings.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/dump_prefs.m: Close @deftypefn macro left open.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/dump_prefs.m: Improve docstring.
+
+2011-03-19  Rik  <octave@nomad.inbox5.com>
+
+	* plot/daspect.m, plot/pbaspect.m: Use newline between @deftypefnx
+	macros to get correct appearance.
+
+2011-03-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/patch.m: Add demo.
+	* geometry/trisurf.m: Set default edgecolor as Matlab does. Add demos.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* plot/uigetdir.m, plot/uigetfile.m, plot/uimenu.m, plot/uiputfile.m:
+	Improve docstrings.  Check for error conditions (missing FLTK, wrong
+	number of arguments) at top of code.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* general/curl.m, general/divergence.m, linear-algebra/cross.m:
+	Update seealso cross references.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* help/get_first_help_sentence.m: Improve docstring.  Add tests.
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/sparse/svds.m: Fix bug #32818, nonconformant arguments
+	in svds.
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* io/fileread.m: Add seealso reference to sscanf.
+
+2011-03-05  Ben Abbott <bpabbott@mac.com>
+
+	* plot/colorbar.m: Allow location to be specified as a property.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/bunzip2.m, miscellaneous/bzip2.m,
+	miscellaneous/gunzip.m, miscellaneous/gzip.m, miscellaneous/unpack.m,
+	miscellaneous/untar.m, miscellaneous/unzip.m: Improve docstrings
+
+	* miscellaneous/tar.m, miscellaneous/zip.m: Check for invalid arguments
+	at the top, rather than bottom, of code.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/gzip.m: Use same functional form as bzip, zip, etc.
+	* miscellaneous/private/__xzip__.m: Allow use of character arrays of
+	filenames.
+	* miscellaneous/unpack.m: Allow use of character arrays of filenames.
+	Add capability for gunzip to work recursively on a directory.
+	Fix bug where unzip returned the archive name in addition to the list
+	of files unzipped.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, general/module.mk: Deprecate is_duplicate_entry.
+
+2011-03-03  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/movefile.m: Fix copy&paste bug affecting Windows
+	platform.  (bug #32443)
+
+2011-03-02  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/distributions/unidcdf.m,
+	statistics/distributions/unidinv.m, statistics/distributions/unidpdf.m,
+	statistics/distributions/unidrnd.m: Correctly refer to distribution as
+	discrete uniform in docstring.
+
+2011-03-02  Konstantinos Poulios  <logari81@gmail.com>
+
+	* plot/subplot.m: Remove redundant calls.
+	For gnuplot set "activepositionproperty" to "position" always.
+
+2011-03-01  Rik  <octave@nomad.inbox5.com>
+
+	* general/isscalar.m, general/isvector.m: Use modern warning function
+	rather than deprecated built-in variable to set warning state.
+
+2011-02-28  Rik  <octave@nomad.inbox5.com>
+
+	* general/iscolumn.m, general/isrow.m: Add 2 new utility functions
+	to check for row or column vector.
+
+2011-02-28  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/treeplot.m: Use 'o' plot style as default for nodes
+
+2011-02-27  Rik  <octave@nomad.inbox5.com>
+
+	* special-matrix/pascal.m: Fix incorrect statement in documentation
+	for pascal.m.  Bug #32523.
+
+2011-02-26  Andy Buckle  <andybuckle@gmail.com>
+
+	* testfun/demo.m, testfun/example.m: Allow command forms of example
+	and demo.
+
+2011-02-26  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* polynomial/polyval.m: Compute offset/normalization only when needed.
+
+2011-02-26  Robert T. Short <octave@phaselockedsystems.com>
+
+	* polynomial/polyval.m: Minor simplification in polynomial evaluation.
+
+2011-02-22  Rik  <octave@nomad.inbox5.com>
+
+	* general/bitcmp.m, general/bitget.m, general/bitset.m,
+	miscellaneous/license.m, special-matrix/pascal.m,
+	statistics/base/quantile.m, statistics/tests/cor_test.m,
+	strings/substr.m: Uppercase variables in error strings.
+
+2011-02-25  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* miscellaneous/warnings_ids.m: Add a warning description for
+	Matlab-style short-circuiting
+
+2011-02-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/subplot.m: Document using INDEX as a vector.
+
+2011-02-24  Robert T. Short  <rtshort@ieee.org> 
+
+	* polynomial/polyval.m: Properly evaluate constant polynomials.
+
+2011-02-24  John W. Eaton  <jwe@octave.org>
+
+	* strings/strchr.m: Avoid implicit string to number conversion.
+	Bug #32546.  From Kim Hansen <kim@i9.dk>.
+
+2011-02-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/subplot.m: Use new looseinset property introduced by changeset
+	12467. Decrease spacing between subplots rows / columns. Clean up and
+	add comments.
+
+2011-02-22  Rik  <octave@nomad.inbox5.com>
+
+	* io/strread.m, plot/whitebg.m, strings/regexptranslate.m,
+	testfun/runtests.m: Use single quotes around regexp patterns.
+
+2011-02-20  Karsten Trulsen  <karstent@math.uio.no>
+
+	* signal/fftshift.m: Fix broken function.  Bug 32442.
+
+2011-02-21  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* pkg/get_forge_pkg.m: Fix typo in new PCRE style regular expression.
+
+2011-02-20  Thomas Weber <tweber@debian.org>
+
+	* miscellaneous/warning_ids.m: Document
+	Octave::autoload-relative-file-name warning.
+
+2011-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* io/dlmwrite.m, pkg/get_forge_pkg.m, plot/__gnuplot_ginput__.m,
+	plot/__go_draw_axes__.m, testfun/runtests.m: Use PCRE regular
+	expressions to simplify scripts.
+
+2011-02-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m, plot/private/__ghostscript__.m: Improve
+	warnings when shell utilties are missing.
+
+2011-02-19  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/interp1.m: Fix tests according to spline update of
+	changeset 07e102029d2a (see bug 31780)
+
+2011-02-17  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/private/__add_default_menu__.m: Rename fltk_gui_mode here
+	as well.
+
+2011-02-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/subplot.m: Decrease spacing between subplots rows / columns.
+	Clean up and add comments.
+
+2011-02-16  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* statistics/base/mean.m: Fix tests according to changeset 0f21f258aa17.
+
+2011-02-15  Konstantinos Poulios  <logari81@gmail.com>
+
+	* plot/__fltk_print__.m: Forward pipeline to drawnow instead of
+	invoking a process here.  Bug #32319.
+
+2011-02-14  Rik  <octave@nomad.inbox5.com>
+
+	* plot/semilogxerr.m, plot/semilogyerr.m, special-matrix/pascal.m,
+	special-matrix/rosser.m, special-matrix/wilkinson.m: Add missing
+	commas in @seealso macro.
+
+2011-02-14  David Bateman  <dbateman@free.fr>
+
+	* testfun/test.m: More explicit error message when source of a
+	dynamically linked function is not found.  Bug #30341.
+
+2011-02-14  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__scatter__.m: Correctly set the facevertexcdata and
+	faces properties in the patch objects.  Bug #31801.
+
+2011-02-14  Marco Caliari <marco.caliari@univr.it>
+
+	* polynomial/spline.m: Allow length(x) == 2 and unsorted x values.
+
+2011-02-13  Konstantinos Poulios  <logari81@gmail.com>
+
+	* plot/legend.m: Ignore outerposition.
+
+2011-02-10  Ben Abbott <bpabbott@mac.com>
+
+	* plot/legend.m, plot/plotyy.m, plot/sombrero.m, plot/shading.m,
+	plot/text.m: Modify demo scripts to allow conventient conversion
+	to Matlab compatible syntax.
+
+2011-02-10  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/mean.m: Also accept logical values.
+
+2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* linear-algebra/gmres.m: New file implementing the GMRES
+	iterative method for solving linear systems.
+
+2011-02-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Properly set fontspec for legends.
+
+2011-02-05  David Bateman  <dbateman@free.fr>
+
+	* plot/legend.m: Allow the location and orientation to be set
+	without modifiying the legend keys.
+	* plot/legend.m: Add padding to legend positions. Fix for
+	outerposition for southeastoutside and southwestoutside.
+	Bug #32374.
+
+2011-02-06  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Align legends to plot box, add demo. Bug 32373.
+	* plot/legend.m: "legend off" should delete the legend object.
+
+2011-02-06  David Bateman  <dbateman@free.fr>
+
+	* plot/legend.m : Delete old legend before probing the position and
+	outerposition. Reshape lpos correct if the legend locqtion is
+	"southeast".  Bug #32343.
+
+2011-02-06  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Add demo for replacing existing legend.
+
+2011-02-06  John W. Eaton  <jwe@octave.org>
+
+	* general/circshift.m: New tests.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/version.m, path/matlabroot.m: Correct spelling.
+
+2011-02-05  Rik  <octave@nomad.inbox5.com>
+
+	* help/help.m, linear-algebra/onenormest.m, plot/graphics_toolkit.m,
+	plot/pie3.m, plot/view.m, signal/periodogram.m: Grammarcheck docstrings.
+
+2011-02-05  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Add demo for inline keys created by two plot commands.
+
+2011-02-05  David Bateman  <dbateman@free.fr>
+
+	Bug #32022 and #32343.
+
+	* plot/legend.m (updatelegend): Don't flip plots when resetting the
+	legend. Use unwind_protect to ensure that the resursive flag is reset
+	in case of an error.
+	(getlegenddata): Remove this function and replace its use with the
+	function __getlegenddata__.
+	* plot/privata/__getlegenddata__.m: New function
+	* plot/module.mk (plot_PRIVATE_FCN_FILES): Add it here.
+	* plot/private/__plt__.m: Set initial values of hlgnd and tlgnd
+	if a legend exists already.
+
+2011-02-02  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/svds.m: Use testif to only run some sparse tests when
+	necessary libraries are installed.
+
+2011-02-01  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_has_feature__.m: Don't throw an error if gnuplot
+	isn't installed.
+
+2011-02-01  John W. Eaton  <jwe@octave.org>
+
+	* plot/scatter3.m: Pass h to set, not ax.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__axis_label__.m: Don't call __fltk_redraw__.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* plot/__fltk_ginput__.m: Remove line that should have been
+	removed in previous change.
+
+2011-01-31  Rik  <octave@nomad.inbox5.com>
+
+	* plot/private/__gnuplot_has_terminal__.m: Simplify regular expression
+	to eliminate word-boundary assertion.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, optimization/module.mk: Deprecate glpkmex
+	function.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* plot/__gnuplot_drawnow__.m: Rename from gnuplot_drawnow.m
+	Update doc string and error message with new name.
+	* plot/module.mk (plot_FCN_FILES): Update list.
+
+2011-01-30  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/__fltk_ginput__.m (ginput_aggregator): New arg, button.
+	Change all uses.
+	(ginput_keypressfcn): Save keypress info.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* plot/gnuplot_binary.in: Improve docstring
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* general/accumarray.m: Add seealso reference to accumdim.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* set/powerset.m: Improve docstring.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m,
+	miscellaneous/tempname.m: Improve docstrings
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, image/module.mk: Deprecate saveimage.m.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/glpkmex.m: Add seealso reference to glpk.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/compare_versions.m: Allow only "==" equality operator.
+	Add input validation tests.  Improve docstring.
+
+	* miscellaneous/ver.m, miscellaneous/version.m, path/matlabroot.m:
+	Improve docstring.
+
+2011-01-29  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/edit.m: As most editors open their own window, change
+	mode to "async".
+
+2011-01-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__fltk_print__.m, plot/print.m: Fix {eps,ps,pdf}latexstandalone
+	printing for fltk, bug 32262.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* sparse/svds.m: Use "test" instead of "testif HAVE_ARPACK".
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* plot/whitebg.m: Improve docstring.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* geometry/trimesh.m, geometry/triplot.m, geometry/trisurf.m: Add
+	undocumented function trisurf to documentation.  Update seealso
+	strings.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* general/rat.m: Move @seealso inside @deftypefn in docstring.
+
+2011-01-27  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/uigetfile.m, plot/uiputfile.m, plot/uigetdir.m: Check
+	for __fltk_uigetfile__.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (check-missing-semicolon): New rule.
+
+2011-01-26  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/general/interp1.m, scripts/general/interp2.m,
+	scripts/general/interp3.m, scripts/general/interpn.m: Use em-dash
+	rather than en-dash.
+	* scripts/miscellaneous/mkoctfile.m: Use @code to prevent option
+	turning to en-dash.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Untabify.
+
+	* mkdoc, gethelp.cc: Strip trailing whitespace.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* general/curl.m: Simplify processing of outptut values.
+
+2011-01-26  Olaf Till  <olaf.till@uni-jena.de>
+
+	* pkg/pkg.m: Export environment variables MKOCTFILE and
+	OCTAVE_CONFIG for configure and make, to configure also OCTAVE.
+
+2011-01-24  John W. Eaton  <jwe@octave.org>
+
+	* audio/lin2mu: Doc fix.
+
+	* audio/mu2lin.m: Doc fix.
+	For compatibility with Matlab, change default for N to be 8.
+
+2011-01-22  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/info.m: Use reference to bug tracker rather than
+	octave-dev mailing list.
+
+2011-01-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/meshc.m: Add note: gnuplot does not support filled 3D patches,
+	or mixing non-filled contours with filled surfaces.
+	* plot/subplot.m: Set "box" to "on" by default (same as Matlab).
+	* plot/cylinder.m: Remove console output from demo.
+
+2011-01-22  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/plotyy.m: Set box property to off to allow both y-axes colors
+	to be visible for OpenGL backends.
+
+2011-01-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__scatter__.m: Don't accept "filled" as a color.
+	* plot/scatter.m: Doc fix.
+	Bug #32204.
+
+2011-01-21  Konstantinos Poulios  <logari81@gmail.com>
+
+	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Setting axis label
+	color from axis color.
+
+2011-01-20  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* image/imshow.m: Fix handling of clim and display_range so that
+	images are more faithfully reproduced.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/image/imshow.m, scripts/image/saveimage.m,
+	scripts/io/dlmwrite.m, scripts/io/strread.m,
+	scripts/miscellaneous/license.m, scripts/optimization/glpk.m,
+	scripts/plot/refreshdata.m, scripts/plot/shading.m,
+	scripts/plot/slice.m, scripts/plot/surfl.m, scripts/plot/uimenu.m,
+	scripts/statistics/base/mean.m, scripts/statistics/base/moment.m,
+	scripts/strings/isstrprop.m: Prevent doubled quotes around @table
+	items in Info.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* mkdoc: Mark all scripts as coming from 'scripts/' directory
+	in Texinfo '@c func location' comments.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/linear-algebra/condest.m,
+	scripts/linear-algebra/onenormest.m, scripts/linear-algebra/qzhess.m,
+	scripts/polynomial/polyfit.m, scripts/special-matrix/pascal.m: Use
+	non-breaking spaces between certain adjectives and their linked nouns
+	in docstrings
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* image/imread.m, image/imwrite.m, signal/periodogram.m,
+	strings/isstrprop.m: Use @nospell macro on certain words in docstring.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* @ftp/loadobj.m, @ftp/saveobj.m, audio/record.m,
+	general/accumarray.m, general/accumdim.m, general/arrayfun.m,
+	general/bicubic.m, general/curl.m, general/divergence.m,
+	general/gradient.m, general/interp2.m, general/rat.m,
+	image/imagesc.m, io/strread.m, io/textscan.m,
+	linear-algebra/krylov.m, miscellaneous/getappdata.m,
+	miscellaneous/isappdata.m, miscellaneous/rmappdata.m,
+	miscellaneous/setappdata.m, miscellaneous/what.m,
+	optimization/qp.m, path/savepath.m, pkg/pkg.m,
+	plot/__fltk_print__.m, plot/__gnuplot_print__.m,
+	plot/__go_draw_axes__.m, plot/__print_parse_opts__.m,
+	plot/axis.m, plot/caxis.m, plot/cla.m, plot/clabel.m,
+	plot/clf.m, plot/colorbar.m, plot/cylinder.m, plot/daspect.m,
+	plot/gnuplot_drawnow.m, plot/meshc.m, plot/newplot.m,
+	plot/orient.m, plot/pbaspect.m, plot/plotyy.m, plot/print.m,
+	plot/private/__actual_axis_position__.m,
+	plot/private/__axis_label__.m, plot/private/__bar__.m,
+	plot/private/__clabel__.m, plot/private/__errplot__.m,
+	plot/private/__ezplot__.m, plot/private/__ghostscript__.m,
+	plot/private/__patch__.m, plot/private/__pie__.m,
+	plot/private/__quiver__.m, plot/private/__scatter__.m,
+	plot/private/__stem__.m, plot/private/__tight_eps_bbox__.m,
+	plot/refresh.m, plot/spinmap.m, plot/subplot.m, plot/surfc.m,
+	plot/uigetfile.m, polynomial/polyout.m, sparse/spaugment.m,
+	sparse/svds.m, sparse/treeplot.m, statistics/base/histc.m,
+	statistics/distributions/hygecdf.m,
+	statistics/distributions/hygeinv.m, statistics/tests/manova.m,
+	strings/deblank.m, testfun/runtests.m: Add missing semicolons.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/cellidx.m, deprecated/dmult.m,
+	deprecated/intwarning.m, deprecated/str2mat.m, general/curl.m,
+	general/divergence.m, general/gradient.m, geometry/griddata.m,
+	help/gen_doc_cache.m, io/dlmwrite.m, miscellaneous/getappdata.m,
+	miscellaneous/isappdata.m, miscellaneous/rmappdata.m,
+	miscellaneous/setappdata.m, miscellaneous/unpack.m,
+	optimization/lsqnonneg.m, optimization/pqpnonneg.m,
+	pkg/get_forge_pkg.m, pkg/pkg.m, plot/__fltk_print__.m,
+	plot/__gnuplot_get_var__.m, plot/__gnuplot_open_stream__.m,
+	plot/__gnuplot_print__.m, plot/daspect.m,
+	plot/gnuplot_drawnow.m, plot/pbaspect.m,
+	plot/private/__errplot__.m, plot/private/__fltk_file_filter__.m,
+	plot/private/__ghostscript__.m, plot/uigetfile.m,
+	plot/uiputfile.m, polynomial/polyaffine.m, sparse/pcg.m:
+	Style fixes for error and warning messages.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* @ftp/dir.m, @ftp/mget.m, @ftp/mput.m, ChangeLog,
+	audio/lin2mu.m, audio/setaudio.m, audio/wavread.m,
+	audio/wavwrite.m, deprecated/autocor.m, deprecated/autocov.m,
+	deprecated/betai.m, deprecated/create_set.m,
+	deprecated/dispatch.m, deprecated/gammai.m,
+	deprecated/intwarning.m, deprecated/replot.m, elfun/cosd.m,
+	elfun/sind.m, elfun/tand.m, general/accumarray.m,
+	general/accumdim.m, general/arrayfun.m, general/bicubic.m,
+	general/bitcmp.m, general/bitget.m, general/bitset.m,
+	general/cart2pol.m, general/cart2sph.m, general/cell2mat.m,
+	general/celldisp.m, general/circshift.m, general/cplxpair.m,
+	general/cumtrapz.m, general/curl.m, general/dblquad.m,
+	general/deal.m, general/del2.m, general/divergence.m,
+	general/flipud.m, general/gradient.m, general/idivide.m,
+	general/int2str.m, general/interp1.m, general/interp2.m,
+	general/interp3.m, general/interpft.m, general/interpn.m,
+	general/isdir.m, general/loadobj.m, general/logspace.m,
+	general/num2str.m, general/pol2cart.m, general/polyarea.m,
+	general/quadgk.m, general/quadl.m, general/quadv.m,
+	general/randi.m, general/rat.m, general/repmat.m,
+	general/rot90.m, general/rotdim.m, general/saveobj.m,
+	general/shift.m, general/sortrows.m, general/sph2cart.m,
+	general/structfun.m, general/subsindex.m, general/trapz.m,
+	general/triplequad.m, geometry/convhull.m, geometry/delaunay.m,
+	geometry/delaunay3.m, geometry/delaunayn.m, geometry/dsearch.m,
+	geometry/dsearchn.m, geometry/griddata3.m, geometry/griddatan.m,
+	geometry/inpolygon.m, geometry/rectint.m, geometry/trimesh.m,
+	geometry/trisurf.m, geometry/tsearchn.m, geometry/voronoi.m,
+	help/__makeinfo__.m, help/__strip_html_tags__.m, help/doc.m,
+	help/gen_doc_cache.m, help/get_first_help_sentence.m,
+	help/help.m, help/lookfor.m, help/print_usage.m, help/type.m,
+	image/autumn.m, image/bone.m, image/brighten.m, image/cool.m,
+	image/copper.m, image/flag.m, image/gmap40.m, image/gray.m,
+	image/hot.m, image/hsv.m, image/hsv2rgb.m, image/image.m,
+	image/imread.m, image/imshow.m, image/imwrite.m,
+	image/ind2rgb.m, image/jet.m, image/ntsc2rgb.m, image/ocean.m,
+	image/pink.m, image/prism.m, image/rainbow.m, image/rgb2hsv.m,
+	image/rgb2ind.m, image/rgb2ntsc.m, image/spring.m,
+	image/summer.m, image/winter.m, io/dlmwrite.m, io/fileread.m,
+	io/strread.m, io/textread.m, linear-algebra/cond.m,
+	linear-algebra/condest.m, linear-algebra/cross.m,
+	linear-algebra/expm.m, linear-algebra/isdefinite.m,
+	linear-algebra/krylov.m, linear-algebra/logm.m,
+	linear-algebra/normest.m, linear-algebra/onenormest.m,
+	linear-algebra/rref.m, linear-algebra/subspace.m,
+	miscellaneous/ans.m, miscellaneous/bincoeff.m,
+	miscellaneous/bunzip2.m, miscellaneous/bzip2.m,
+	miscellaneous/computer.m, miscellaneous/copyfile.m,
+	miscellaneous/debug.m, miscellaneous/edit.m,
+	miscellaneous/getappdata.m, miscellaneous/getfield.m,
+	miscellaneous/gunzip.m, miscellaneous/gzip.m,
+	miscellaneous/isappdata.m, miscellaneous/ls.m,
+	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
+	miscellaneous/namelengthmax.m, miscellaneous/orderfields.m,
+	miscellaneous/private/__xzip__.m, miscellaneous/rmappdata.m,
+	miscellaneous/setappdata.m, miscellaneous/substruct.m,
+	miscellaneous/swapbytes.m, miscellaneous/tar.m,
+	miscellaneous/unimplemented.m, miscellaneous/unpack.m,
+	miscellaneous/untar.m, miscellaneous/unzip.m,
+	miscellaneous/ver.m, miscellaneous/warning_ids.m,
+	miscellaneous/what.m, miscellaneous/zip.m,
+	optimization/__all_opts__.m, optimization/fminbnd.m,
+	optimization/fminunc.m, optimization/fsolve.m,
+	optimization/fzero.m, optimization/glpk.m,
+	optimization/lsqnonneg.m, optimization/optimget.m,
+	optimization/pqpnonneg.m, optimization/qp.m, optimization/sqp.m,
+	path/pathdef.m, path/savepath.m, pkg/pkg.m,
+	plot/__fltk_ginput__.m, plot/__gnuplot_ginput__.m,
+	plot/__gnuplot_has_feature__.m, plot/__gnuplot_open_stream__.m,
+	plot/__gnuplot_print__.m, plot/__go_draw_axes__.m,
+	plot/__go_draw_figure__.m, plot/__marching_cube__.m,
+	plot/__next_line_color__.m, plot/__next_line_style__.m,
+	plot/__plt_get_axis_arg__.m, plot/__print_parse_opts__.m,
+	plot/area.m, plot/axis.m, plot/bar.m, plot/barh.m, plot/caxis.m,
+	plot/cla.m, plot/clabel.m, plot/colorbar.m, plot/comet.m,
+	plot/comet3.m, plot/compass.m, plot/contour.m, plot/contour3.m,
+	plot/contourc.m, plot/cylinder.m, plot/daspect.m,
+	plot/diffuse.m, plot/ellipsoid.m, plot/errorbar.m,
+	plot/ezcontour.m, plot/ezcontourf.m, plot/ezmesh.m,
+	plot/ezmeshc.m, plot/ezplot.m, plot/ezplot3.m, plot/ezpolar.m,
+	plot/ezsurf.m, plot/ezsurfc.m, plot/feather.m, plot/findobj.m,
+	plot/fplot.m, plot/gnuplot_drawnow.m, plot/gtext.m, plot/hist.m,
+	plot/hold.m, plot/ishghandle.m, plot/isocolors.m,
+	plot/isonormals.m, plot/isosurface.m, plot/isprop.m,
+	plot/legend.m, plot/loglog.m, plot/loglogerr.m, plot/meshc.m,
+	plot/meshz.m, plot/ndgrid.m, plot/orient.m, plot/pareto.m,
+	plot/patch.m, plot/pbaspect.m, plot/pcolor.m, plot/peaks.m,
+	plot/pie.m, plot/pie3.m, plot/plot.m, plot/plot3.m,
+	plot/plotmatrix.m, plot/plotyy.m, plot/polar.m, plot/print.m,
+	plot/private/__actual_axis_position__.m,
+	plot/private/__axis_label__.m, plot/private/__bar__.m,
+	plot/private/__clabel__.m, plot/private/__contour__.m,
+	plot/private/__errplot__.m, plot/private/__ezplot__.m,
+	plot/private/__fltk_file_filter__.m,
+	plot/private/__ghostscript__.m,
+	plot/private/__gnuplot_has_terminal__.m,
+	plot/private/__patch__.m, plot/private/__pie__.m,
+	plot/private/__pltopt__.m, plot/private/__quiver__.m,
+	plot/private/__scatter__.m, plot/private/__stem__.m,
+	plot/private/__tight_eps_bbox__.m, plot/quiver.m,
+	plot/quiver3.m, plot/refreshdata.m, plot/rose.m, plot/saveas.m,
+	plot/scatter.m, plot/scatter3.m, plot/semilogx.m,
+	plot/semilogxerr.m, plot/semilogy.m, plot/semilogyerr.m,
+	plot/shading.m, plot/slice.m, plot/specular.m, plot/sphere.m,
+	plot/stairs.m, plot/stem.m, plot/stem3.m, plot/subplot.m,
+	plot/surface.m, plot/surfc.m, plot/surfl.m, plot/surfnorm.m,
+	plot/uigetdir.m, plot/uigetfile.m, plot/uimenu.m,
+	plot/uiputfile.m, plot/view.m, plot/waitforbuttonpress.m,
+	plot/whitebg.m, plot/xlim.m, plot/ylim.m, plot/zlim.m,
+	polynomial/mkpp.m, polynomial/mpoles.m, polynomial/pchip.m,
+	polynomial/poly.m, polynomial/polyaffine.m,
+	polynomial/polyderiv.m, polynomial/polyfit.m,
+	polynomial/polyreduce.m, polynomial/polyval.m,
+	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
+	polynomial/ppval.m, polynomial/residue.m, polynomial/roots.m,
+	polynomial/spline.m, polynomial/unmkpp.m, set/ismember.m,
+	set/private/validargs.m, set/setdiff.m, set/setxor.m,
+	set/union.m, set/unique.m, signal/arma_rnd.m, signal/fftconv.m,
+	signal/fftshift.m, signal/filter2.m, signal/freqz.m,
+	signal/ifftshift.m, signal/unwrap.m, sparse/bicgstab.m,
+	sparse/cgs.m, sparse/gplot.m, sparse/pcg.m, sparse/pcr.m,
+	sparse/spaugment.m, sparse/spdiags.m, sparse/speye.m,
+	sparse/spfun.m, sparse/sprand.m, sparse/sprandn.m,
+	sparse/sprandsym.m, sparse/spstats.m, sparse/spy.m,
+	sparse/svds.m, sparse/treelayout.m, sparse/treeplot.m,
+	specfun/bessel.m, specfun/betaln.m, specfun/factor.m,
+	specfun/legendre.m, specfun/nchoosek.m, specfun/nthroot.m,
+	specfun/primes.m, specfun/reallog.m, specfun/realpow.m,
+	specfun/realsqrt.m, special-matrix/hadamard.m,
+	special-matrix/invhilb.m, special-matrix/magic.m,
+	special-matrix/pascal.m, special-matrix/toeplitz.m,
+	startup/__finish__.m, statistics/base/cov.m,
+	statistics/base/histc.m, statistics/base/iqr.m,
+	statistics/base/kendall.m, statistics/base/kurtosis.m,
+	statistics/base/mean.m, statistics/base/meansq.m,
+	statistics/base/median.m, statistics/base/mode.m,
+	statistics/base/moment.m, statistics/base/ols.m,
+	statistics/base/prctile.m, statistics/base/qqplot.m,
+	statistics/base/quantile.m, statistics/base/ranks.m,
+	statistics/base/run_count.m, statistics/base/skewness.m,
+	statistics/base/statistics.m, statistics/base/std.m,
+	statistics/base/studentize.m, statistics/base/var.m,
+	statistics/distributions/betainv.m,
+	statistics/distributions/betapdf.m,
+	statistics/distributions/betarnd.m,
+	statistics/distributions/binoinv.m,
+	statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_cdf.m,
+	statistics/distributions/cauchy_inv.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/fcdf.m,
+	statistics/distributions/frnd.m,
+	statistics/distributions/gamrnd.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/nbincdf.m,
+	statistics/distributions/nbininv.m,
+	statistics/distributions/nbinpdf.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/normrnd.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/tpdf.m,
+	statistics/distributions/trnd.m,
+	statistics/distributions/unifcdf.m,
+	statistics/distributions/unifrnd.m,
+	statistics/distributions/wblrnd.m,
+	statistics/tests/bartlett_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m,
+	statistics/tests/kruskal_wallis_test.m,
+	statistics/tests/t_test_regression.m, strings/blanks.m,
+	strings/dec2base.m, strings/dec2hex.m, strings/findstr.m,
+	strings/index.m, strings/isstrprop.m, strings/mat2str.m,
+	strings/regexptranslate.m, strings/str2num.m, strings/strchr.m,
+	strings/strjust.m, strings/strmatch.m, strings/strsplit.m,
+	strings/strtok.m, strings/untabify.m, testfun/assert.m,
+	testfun/demo.m, testfun/example.m, testfun/fail.m,
+	testfun/speed.m, testfun/test.m, time/datenum.m, time/datestr.m,
+	time/datetick.m, time/datevec.m, time/etime.m:
+	Strip trailing whitespace.
+
+	* statistics/distributions/betapdf.m: Untabify.
+
+2011-01-20  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/uigetdir.m: Use correct variable name for argument check.
+	Remove unneeded white spaces.
+	* plot/uigetfile.m, plot/uiputfile.m: Remove unneeded white spaces.
+	Bug #32190.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* plot/ginput.m, plot/gnuplot_drawnow.m, plot/uiputfile.m,
+	plot/subplot.m, plot/axis.m, plot/colorbar.m,
+	plot/__print_parse_opts__.m, plot/uigetdir.m,
+	plot/__fltk_print__.m, plot/print.m, plot/__gnuplot_print__.m,
+	plot/uigetfile.m, plot/private/__actual_axis_position__.m:
+	Update for backend -> graphics_toolkit change.
+
+	* plot/graphics_toolkit.m: Rename from backend.m.
+	* plot/module.mk (plot_FCN_FILES): Update list.
+
+2011-01-19  Rik  <octave@nomad.inbox5.com>
+
+	* general/curl.m, general/divergence.m, io/strread.m,
+	miscellaneous/mkoctfile.m, plot/bar.m, plot/errorbar.m, plot/hist.m,
+	plot/mesh.m, plot/surf.m, polynomial/polyaffine.m: Correct spelling
+	in docstrings.
+
+2011-01-19  John W. Eaton  <jwe@octave.org>
+
+	* help/help.m: New option --list.  Bug #31905.
+
+2011-01-19  John W. Eaton  <jwe@octave.org>
+
+	* io/strread.m: Avoid PCRE-ism in regexp.  Bug #32066.
+
+2011-01-17  Rik  <octave@nomad.inbox5.com>
+
+	* audio/wavread.m, deprecated/spqr.m, elfun/lcm.m, general/bitget.m,
+	general/curl.m, general/divergence.m, general/interp3.m,
+	general/quadv.m, geometry/delaunayn.m, geometry/griddata.m,
+	help/help.m, io/textread.m, io/textscan.m, linear-algebra/cond.m,
+	miscellaneous/mkoctfile.m, miscellaneous/orderfields.m,
+	miscellaneous/run.m, miscellaneous/setappdata.m, plot/axis.m,
+	plot/caxis.m, plot/daspect.m, plot/ellipsoid.m, plot/errorbar.m,
+	plot/gnuplot_binary.in, plot/hist.m, plot/hold.m, plot/ishold.m,
+	plot/legend.m, plot/mesh.m, plot/pbaspect.m, plot/pie3.m, plot/print.m,
+	plot/private/__add_default_menu__.m, plot/scatter.m, plot/scatter3.m,
+	plot/shg.m, plot/slice.m, plot/surf.m, plot/surfl.m, plot/uigetdir.m,
+	plot/uigetfile.m, plot/uimenu.m, plot/uiputfile.m, plot/view.m,
+	set/unique.m, signal/periodogram.m, sparse/pcg.m, sparse/pcr.m,
+	sparse/spfun.m, specfun/legendre.m,
+	statistics/distributions/poisspdf.m, statistics/distributions/wblpdf.m,
+	strings/strjust.m, strings/untabify.m, testfun/assert.m,
+	testfun/demo.m, testfun/example.m, testfun/fail.m, testfun/test.m:
+	Grammarcheck m-files for 3.4 release.
+
+2011-01-17  Rik  <octave@nomad.inbox5.com>
+
+	* general/dblquad.m, general/quadgk.m, general/quadl.m,
+	general/quadv.m, general/triplequad.m: Improve docstring with seealso
+	links to quadcc.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/isdeployed.m: New function.
+	* miscellaneous/module.mk (miscellaneous_FCN_FILES): Add it to
+	the list.  Bug #32151.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/inputname.m: Use __varval__ to lookup ".argn."
+	instead of "argn".
+
+2011-01-16  Ben Abbott <bpabbott@mac.com>
+
+	* plot/print.m: For DOS, connect the pipe to ghostscript (bug 31967),
+	and redirect to NUL instead of /dev/null.
+
+2011-01-16  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc (main): Write function name along with file name in
+	comment.
+
+2011-01-16  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Use "{}" as the default font.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/help/doc.m, scripts/help/which.m,
+	scripts/miscellaneous/comma.m, scripts/miscellaneous/ls.m,
+	scripts/miscellaneous/paren.m, scripts/miscellaneous/semicolon.m,
+	scripts/pkg/pkg.m: Eliminate @deffn macros.
+
+2011-01-15  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/krylovb: Move here from linear-algebra.
+	* deprecated/module.mk (deprecated_FCN_FILES):
+	Include krylovb.m in the list.
+	* linear-algebra/module.mk (linear_algebra_FCN_FILES):
+	Remove krylovb.m from the list.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* general/postpad.m, general/prepad.m: Improve docstring.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* ploynomial/polyaffine.m: Improve docstring.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* general/interp1.m, general/interp2.m, polynomial/mkpp.m,
+	polynomial/pchip.m, polynomial/ppder.m, polynomial/ppint.m,
+	polynomial/ppjumps.m, polynomial/ppval.m, polynomial/spline.m,
+	polynomial/unmkpp.m: Improve docstrings
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/flops.m: Delete function which was unimplemented
+	in Octave and has been removed from Matlab since version 5.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* specfun/nthroot.m: Add Seealso references to docstring.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/module.mk: Remove texas_lotto.m from build system.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/texas_lotto.m: Remove Easter Egg function.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2011-01-13  Michael Godfrey  <godfrey@isl.stanford.edu>
+
+	* plot/contourc.m: Correct one argument case.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* strings/mat2str.m: Handle logical arguments.  New tests.
+	Bug #32102.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/expm.m: Validate nargin.  New tests.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/logm.m: Handle scalar and diagonal matrix
+	arguments specially.  Call logm_pade_pf only if m > 1.  New tests.
+	Special case suggested by Marco Caliari <marco.caliari@univr.it>.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* general/private/__isequal__.m: Use builtin ("struct", ...) to
+	convert objects to a structs to avoid possible overloading of
+	the struct function.  Bug #32071.
+
+2011-01-09  Rik  <octave@nomad.inbox5.com>
+
+	* plot/orient.m, statistics/tests/kolmogorov_smirnov_test.m,
+	strings/strtrunc.m: Correct failing tests due to change in
+	capitalization of error strings from previous changeset.
+
+2011-01-09  Rik  <octave@nomad.inbox5.com>
+
+	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m, audio/saveaudio.m,
+	audio/wavwrite.m, deprecated/split.m, deprecated/values.m,
+	general/accumarray.m, general/bitcmp.m, general/cell2mat.m,
+	general/circshift.m, general/curl.m, general/divergence.m,
+	general/genvarname.m, general/interpft.m, general/interpn.m,
+	general/nextpow2.m, general/polyarea.m, general/repmat.m,
+	general/rot90.m, general/rotdim.m, general/shiftdim.m,
+	general/strerror.m, general/trapz.m, geometry/griddata.m,
+	geometry/griddata3.m, geometry/griddatan.m, geometry/rectint.m,
+	image/brighten.m, image/colormap.m, image/contrast.m, image/imagesc.m,
+	image/imfinfo.m, image/imread.m, linear-algebra/commutation_matrix.m,
+	linear-algebra/condest.m, linear-algebra/cross.m,
+	linear-algebra/duplication_matrix.m, linear-algebra/isdefinite.m,
+	linear-algebra/vech.m, miscellaneous/bincoeff.m, miscellaneous/cast.m,
+	miscellaneous/compare_versions.m, miscellaneous/fileparts.m,
+	miscellaneous/license.m, miscellaneous/private/__xzip__.m,
+	miscellaneous/substruct.m, miscellaneous/unpack.m, miscellaneous/xor.m,
+	optimization/sqp.m, pkg/get_forge_pkg.m, plot/backend.m,
+	plot/contourc.m, plot/cylinder.m, plot/hidden.m, plot/hold.m,
+	plot/orient.m, plot/private/__interp_cube__.m, plot/refreshdata.m,
+	plot/subplot.m, plot/surface.m, plot/surfnorm.m, plot/text.m,
+	plot/uimenu.m, polynomial/mkpp.m, polynomial/pchip.m,
+	polynomial/polyfit.m, polynomial/ppval.m, signal/arch_fit.m,
+	signal/arch_rnd.m, signal/arch_test.m, signal/arma_rnd.m,
+	signal/autoreg_matrix.m, signal/bartlett.m, signal/blackman.m,
+	signal/diffpara.m, signal/durbinlevinson.m, signal/fftfilt.m,
+	signal/fractdiff.m, signal/hamming.m, signal/hanning.m, signal/hurst.m,
+	signal/sinetone.m, signal/synthesis.m, signal/unwrap.m,
+	sparse/spaugment.m, specfun/factor.m, specfun/factorial.m,
+	specfun/legendre.m, specfun/nthroot.m, specfun/primes.m,
+	special-matrix/hadamard.m, special-matrix/magic.m,
+	statistics/distributions/betacdf.m, statistics/distributions/betainv.m,
+	statistics/distributions/betapdf.m, statistics/distributions/betarnd.m,
+	statistics/distributions/binocdf.m, statistics/distributions/binoinv.m,
+	statistics/distributions/binopdf.m, statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_cdf.m,
+	statistics/distributions/cauchy_inv.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2cdf.m, statistics/distributions/chi2inv.m,
+	statistics/distributions/chi2pdf.m, statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_cdf.m,
+	statistics/distributions/discrete_inv.m,
+	statistics/distributions/discrete_pdf.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/empirical_cdf.m,
+	statistics/distributions/empirical_inv.m,
+	statistics/distributions/empirical_pdf.m,
+	statistics/distributions/empirical_rnd.m,
+	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
+	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m,
+	statistics/distributions/fcdf.m, statistics/distributions/finv.m,
+	statistics/distributions/fpdf.m, statistics/distributions/frnd.m,
+	statistics/distributions/gamcdf.m, statistics/distributions/gaminv.m,
+	statistics/distributions/gampdf.m, statistics/distributions/gamrnd.m,
+	statistics/distributions/geocdf.m, statistics/distributions/geoinv.m,
+	statistics/distributions/geopdf.m, statistics/distributions/geornd.m,
+	statistics/distributions/hygecdf.m, statistics/distributions/hygeinv.m,
+	statistics/distributions/hygepdf.m, statistics/distributions/hygernd.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/laplace_rnd.m,
+	statistics/distributions/logistic_rnd.m,
+	statistics/distributions/logncdf.m, statistics/distributions/logninv.m,
+	statistics/distributions/lognpdf.m, statistics/distributions/lognrnd.m,
+	statistics/distributions/nbincdf.m, statistics/distributions/nbininv.m,
+	statistics/distributions/nbinpdf.m, statistics/distributions/nbinrnd.m,
+	statistics/distributions/normcdf.m, statistics/distributions/norminv.m,
+	statistics/distributions/normpdf.m, statistics/distributions/normrnd.m,
+	statistics/distributions/poisscdf.m,
+	statistics/distributions/poissinv.m,
+	statistics/distributions/poisspdf.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/stdnormal_cdf.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/tcdf.m, statistics/distributions/tinv.m,
+	statistics/distributions/tpdf.m, statistics/distributions/trnd.m,
+	statistics/distributions/unidrnd.m, statistics/distributions/unifcdf.m,
+	statistics/distributions/unifinv.m, statistics/distributions/unifpdf.m,
+	statistics/distributions/unifrnd.m, statistics/distributions/wblcdf.m,
+	statistics/distributions/wblinv.m, statistics/distributions/wblpdf.m,
+	statistics/distributions/wblrnd.m, statistics/distributions/wienrnd.m,
+	statistics/models/logistic_regression.m, statistics/tests/anova.m,
+	statistics/tests/chisquare_test_homogeneity.m,
+	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
+	statistics/tests/hotelling_test.m, statistics/tests/hotelling_test_2.m,
+	statistics/tests/kolmogorov_smirnov_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m,
+	statistics/tests/manova.m, statistics/tests/mcnemar_test.m,
+	statistics/tests/prop_test_2.m, statistics/tests/sign_test.m,
+	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
+	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
+	statistics/tests/var_test.m, statistics/tests/welch_test.m,
+	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
+	statistics/tests/z_test_2.m, strings/blanks.m, strings/index.m,
+	strings/strtrunc.m, strings/validatestring.m, time/addtodate.m,
+	time/datenum.m, time/datetick.m, time/datevec.m: Use uppercase for
+	variable names in error() strings to match Info documentation.
+
+	* general/interp2.m, image/imshow.m, image/ind2rgb.m,
+	image/saveimage.m, io/dlmwrite.m, io/strread.m, io/textscan.m,
+	linear-algebra/expm.m, linear-algebra/krylov.m, linear-algebra/logm.m,
+	miscellaneous/delete.m, miscellaneous/run.m, plot/__marching_cube__.m,
+	sparse/bicgstab.m, sparse/cgs.m, strings/strmatch.m,
+	testfun/rundemos.m, testfun/runtests.m: Rewrite error string
+
+	* @ftp/ftp.m, help/gen_doc_cache.m, miscellaneous/unix.m,
+	plot/__gnuplot_open_stream__.m, plot/private/__add_default_menu__.m,
+	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
+	signal/periodogram.m: Correct use of @deftypefn macro
+
+	* miscellaneous/paren.m: Space @deffnx macro for readability
+
+2011-01-09  Rik  <octave@nomad.inbox5.com>
+
+	* general/arrayfun.m, general/blkdiag.m, general/structfun.m,
+	image/imagesc.m, linear-algebra/cond.m, linear-algebra/condest.m,
+	linear-algebra/expm.m, linear-algebra/logm.m,
+	linear-algebra/onenormest.m, linear-algebra/qzhess.m,
+	optimization/glpk.m, optimization/glpkmex.m, polynomial/poly.m,
+	sparse/gplot.m, sparse/pcg.m, sparse/pcr.m, sparse/spaugment.m,
+	sparse/spdiags.m, sparse/svds.m: Use uppercase 'A' to refer to matrix
+	argument.
+
+	* io/dlmwrite.m: Use uppercase 'M' to refer to matrix argument.
+
+	* io/textscan.m: Use uppercase 'C' to refer to Cell Array output.
+	Improve docstring.
+
+	* signal/unwrap.m: Use 'x' instead of 'a' for vector input argument.
+
+2011-01-09  Rik  <octave@nomad.inbox5.com>
+
+	* general/bicubic.m, general/nargchk.m, general/nargoutchk.m,
+	linear-algebra/krylov.m, linear-algebra/krylovb.m,
+	linear-algebra/normest.m, linear-algebra/null.m, linear-algebra/orth.m,
+	linear-algebra/rank.m: Use common names for variables in documentation
+	and code.
+
+2011-01-09  Rik  <octave@nomad.inbox5.com>
+
+	* audio/loadaudio.m, audio/mu2lin.m, audio/saveaudio.m,
+	general/accumdim.m, general/bitget.m, general/bitset.m, general/del2.m,
+	general/isequal.m, general/isequalwithequalnans.m, general/logspace.m,
+	general/repmat.m, general/strerror.m, general/structfun.m,
+	geometry/delaunayn.m, geometry/dsearchn.m, image/ind2gray.m,
+	image/ind2rgb.m, image/rgb2ind.m, io/csvread.m, io/csvwrite.m,
+	linear-algebra/rref.m, linear-algebra/subspace.m,
+	linear-algebra/trace.m, miscellaneous/dir.m, miscellaneous/dos.m,
+	miscellaneous/menu.m, miscellaneous/perl.m, miscellaneous/unix.m,
+	path/savepath.m, plot/allchild.m, plot/diffuse.m, plot/fplot.m,
+	plot/refreshdata.m, plot/specular.m, plot/subplot.m,
+	polynomial/polyreduce.m, set/ismember.m, signal/arch_fit.m,
+	signal/arch_rnd.m, signal/arch_test.m, signal/diffpara.m,
+	signal/fftfilt.m, signal/filter2.m, signal/sinetone.m,
+	signal/spectral_xdf.m, signal/stft.m, signal/synthesis.m,
+	sparse/spfun.m, sparse/spones.m, sparse/spstats.m, sparse/treelayout.m,
+	sparse/treeplot.m, specfun/isprime.m,
+	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
+	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m,
+	statistics/distributions/poisscdf.m,
+	statistics/distributions/poissinv.m,
+	statistics/distributions/poisspdf.m,
+	statistics/distributions/poissrnd.m,
+	statistics/tests/chisquare_test_independence.m,
+	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
+	statistics/tests/t_test_regression.m, strings/base2dec.m,
+	strings/dec2base.m, strings/regexptranslate.m, strings/strjust.m,
+	strings/strmatch.m, time/asctime.m, time/datenum.m:
+	Use common names for variables in documentation and code.
+
+	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m, @ftp/delete.m,
+	@ftp/dir.m, @ftp/ftp.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/mput.m,
+	@ftp/rename.m, @ftp/rmdir.m, general/chop.m, geometry/dsearch.m,
+	signal/spencer.m, specfun/primes.m, time/etime.m: Use common names for
+	variables in documentation and code.  Improve docstring
+
+	* elfun/acot.m, elfun/acoth.m, elfun/acsc.m, elfun/acsch.m,
+	elfun/asec.m, elfun/asech.m, elfun/cot.m, elfun/coth.m, elfun/csc.m,
+	elfun/csch.m, elfun/sec.m, elfun/sech.m: Use common names for variables
+	in documentation and code.  Change output variable to 'y' rather than
+	'w'.
+
+	* miscellaneous/bunzip2.m, miscellaneous/gunzip.m,
+	miscellaneous/unpack.m, miscellaneous/untar.m, miscellaneous/unzip.m:
+	Use common names for variables in documentation and code.  Use default
+	on input argument to simplify input validation.
+
+	* general/accumarray.m: Use common names for variables in
+	documentation, code and tests.
+
+	* geometry/inpolygon.m: Use common names for variables in
+	documentation, code and tests.  Improve docstring.
+
+	* general/bitcmp.m: Use common names for variables in documentation and
+	code.  Switch tests to %!test blocks rather than %!shared variables and
+	%!asserts for clarity.
+
+	* general/int2str.m: Switch to input variable name 'n' rather than 'x'.
+
+	* general/isdir.m: Switch to input variable name 'f' rather than 'x'.
+	Switch output variable to 'retval' rather than 'y'.
+
+	* general/perror.m: Switch to input variable name 'funcname' rather
+	than 'name'.  Use common names for variables in documentation and
+	code.
+
+	* general/rot90.m: Switch to input variable name 'A' rather than 'x'.
+	Break very long %!assert line into multiple asserts for readability.
+
+	* general/sortrows.m: Use common names for variables in documentation
+	and code.  Break very long %!assert line into multiple asserts for
+	readability.
+
+	* geometry/voronoin.m: Switch to input variable name 'options' rather
+	than 'opt'.
+
+	* help/lookfor.m: Switch to input variable name 'arg2' rather than
+	'extra'.
+
+	* image/brighten.m: Switch to input variable name 'arg1' rather than
+	'm'.  Eliminate CamelCase in output variable 'Rmap'.
+
+	* image/rgb2hsv.m: Switch to variable name 'hsv_map' rather than
+	'hsval'.
+
+	* image/saveimage.m: Switch to input variable name 'fname', rather than
+	'file'.  Use common names for variables in documentation and code.
+
+	* io/strread.m, io/textread.m, io/textscan.m: Switch to input variable
+	name 'format' rather than 'formatstr'
+
+	* miscellaneous/run.m: Switch to input variable 'script' rather than
+	's'.
+
+	* miscellaneous/ver.m: Switch to input variable 'package' rather than
+	'pack'.  Use default on input argument to simplify input validation.
+
+	* plot/saveas.m: Switch to input variable 'fmt' rather than 'ext'.
+	Improve docstring.
+
+	* plot/title.m: : Switch to input variable 'string' rather than 'title'.
+
+	* plot/uigetdir.m: Improve docstring.  Re-order input validation.
+	Eliminate unnecessary use of cellfun to compare strings.
+
+	* polynomial/polyder.m, polynomial/polyderiv.m: Switch ouput variable
+	name 'r' to 'd'.  Improve docstring.
+
+	* polynomial/polyint.m: Switch input variable name 'c' to 'p'.
+
+	* signal/fftconv.m: Switch input variable names to 'x','y' instead of
+	'a','b' for vectors.
+
+	* signal/fftshift.m, signal/ifftshift.m: Switch input variable name to
+	'x' instead of 'v'.
+
+	* sparse/etreeplot.m: Switch input variable name to 'A' rather than
+	'tree' for matrix.
+
+	* specfun/factor.m: Use common names for variables in documentation and
+	code.  Uncomment and re-instate test code.
+
+	* statistics/distributions/cauchy_cdf.m,
+	statistics/distributions/cauchy_inv.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m: Switch to input variables
+	'location','scale' rather than 'lambda','sigma'.
+
+	* statistics/tests/manova.m: Switch to input variable 'x' rather than
+	'y'.
+
+	* strings/untabify.m: Switch to input variable 'dblank' rather than
+	'db'.
+
+	* time/datestr.m: Improve docstring
+
+	* time/weekday.m: Switch to input variable name 'format' rather than
+	'form'.  Improve docstring.
+
+2011-01-08  John Hunt  <huntj@gawab.com>
+
+	* plot/legend.m, plot/private/__plt__.m: legend with more than two
+	inline keys (bug 31991). Add/modifyy demos.
+
+2011-01-07  John W. Eaton  <jwe@octave.org>
+
+	* general/private/__isequal__.m: Compare objects as if they are
+	structures.  Bug #32071.
+
+2011-01-07  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/logm.m: Style fixes.
+
+2011-01-06  John W. Eaton  <jwe@octave.org>
+
+	* optimization/optimset.m: Remove "i" option from call to
+	lookup.  Bug #31392.
+
+2011-01-05  Rik  <octave@nomad.inbox5.com>
+
+	* general/isa.m: Add tests against logical values.
+
+2011-01-04  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/demo.m: Add newline to error output for better formatting.
+
+2011-01-03  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/center.m, statistics/base/corrcoef.m,
+	statistics/base/kendall.m, statistics/base/mean.m,
+	statistics/base/meansq.m, statistics/base/skewness.m,
+	statistics/base/studentize.m, statistics/base/var.m,
+	statistics/base/run_count.m, statistics/base/ranks.m: Improve input
+	validation.  Add function tests.  Improve docstring.
+
+	* statistics/base/moment.m, statistics/base/prctile.m,
+	statistics/base/spearman.m, statistics/base/std.m : Improve input
+	validation.  Add input validation tests.  Improve docstring.
+
+	* statistics/base/cloglog.m: Add function tests.
+
+	* statistics/base/cor.m: Replace with call to corrcoef, now only an
+	alias.
+
+	* statistics/base/cov.m: Add normalization option.  Improve input
+	validation.  Add function tests.  Improve docstring.
+
+	* statistics/base/cut.m: Use lowercase variable names.  Improve
+	docstring.
+
+	* statistics/base/histc.m, statistics/base/median.m: Use same variable
+	name in documentation and in function.  Add input validation tests.
+	Improve docstring.
+
+	* statistics/base/iqr.m, statistics/base/mode.m: Add input validation
+	tests.  Improve docstring.
+
+	* statistics/base/kurtosis.m: Return same class as input variable.  Add
+	input validation tests.  Improve docstring.
+
+
+	* statistics/base/logit.m, statistics/base/range.m: Add function tests.
+	Improve docstring.
+
+	* statistics/base/mahalanobis.m: Use lower case variable names.
+	Improve input validation.  Add input validation tests.
+
+	* statistics/base/ols.m, statistics/base/gls.m: Use isargout to only
+	calculate necessary outputs.  Use lowercase variable names.  Add
+	functional tests.  Improve docstring.
+
+	* statistics/base/ppplot.m: Add input validation tests.
+
+	* statistics/base/qqplot.m: Add ability to call "XXXinv" or "XXX_inv"
+	functions.  Improve input validation.  Improve docstring.
+
+	* statistics/base/quantile.m: Use defaults for input arguments to
+	simplify code.  Improve input validation.  Add input validation tests.
+	Improve docstring.
+
+	* statistics/base/statistics.m: Use lowercase variable names.  Improve
+	input validation.  Add input validation tests.  Improve docstring.
+
+	* statistics/base/table.m: Switch from deprecated function 'values' to
+	'unique'.  Add input validation tests.  Improve docstring.
+
+2011-01-02  Ben Abbott <bpabbott@mac.com>
+
+	* plot/legend.m: Only one legend per axes (bug 32022). Add / modify
+	demos to test addional features.
+
+2010-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* general/is_duplicate_entry.m , general/isdir.m, general/isscalar.m,
+	general/issquare.m, general/isvector.m, linear-algebra/isdefinite.m,
+	linear-algebra/ishermitian.m, linear-algebra/issymmetric.m,
+	miscellaneous/isappdata.m, miscellaneous/ismac.m, miscellaneous/ispc.m,
+	miscellaneous/isunix.m, plot/isfigure.m, plot/ishold.m, plot/isprop.m,
+	set/ismember.m, specfun/isprime.m, strings/isletter.m,
+	time/is_leap_year.m : Improve docstring
+	* general/isa.m: Improve docstring.  Change function variable name to
+	match documentation variable name.
+	* strings/isstrprop.m: Improve docstring.  Change function variable
+	name to match documentation variable name.  Add new test cases.
+
+2010-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* plot/module.mk: Add isprop.m to list of function files for Automake.
+
+2010-12-31  Kai Habel  <kai.habel@gmx.de>
+
+	* general/curl.m, general/divergence.m: New functions.
+	* general/module.mk: Add new file to list.
+	* miscellaneous/unimplemented.m: Remove curl and divergence from list.
+
+2010-12-31  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/scatter3.m: Grid on by default for 3D plots.
+
+2010-12-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/contour3.m, plot/mesh.m, plot/meshc.m, plot/surfc.m: Grid on
+	by default for 3D plots.
+	* plot/surfc.m, plot/meshc.m: Place contour for meshc/surfc at
+	zlim(1).
+	* plot/__go_draw_axes__.m: Tweak vertical alignment of text objects
+	for gnuplot to favor eps/ps output.
+
+2010-12-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/text.m: New demo for 3D plot and text with verticalalignment.
+	* plot/__go_draw_axes__.m: Enable vertical alignment of text objects
+	for gnuplot.
+
+2010-12-28  Ben Abbott <bpabbott@mac.com>
+
+	* plot/private/__plt__.m: Fix to allow inline legend keys. Bug 31991.
+
+2010-12-28  Rik  <octave@nomad.inbox5.com>
+
+	* image/autumn.m, image/bone.m, image/cool.m, image/copper.m,
+	image/flag.m, image/gray.m, image/hot.m, image/hsv.m, image/jet.m,
+	image/ocean.m, image/pink.m, image/prism.m, image/rainbow.m,
+	image/spring.m, image/summer.m, image/white.m, image/winter.m: Use
+	same variable name for documentation and function call.  Change demo
+	code to explicitly use colormap size.  Update docstring.
+
+	* image/gmap40.m: Use same variable name for documentation and function
+	call.  Change demo code to use colormap size of 6 rather than 64.
+	Update docstring.
+
+2010-12-28  Ben Abbott <bpabbott@mac.com>
+
+	* plot/legend.m: Add demo to legend for inline key.
+
+2010-12-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/text.m: Add demo for text rotation and alignment.
+
+2010-12-26  Michael Godfrey <godfrey@isl.stanford.edu>
+
+	* specfun/legendre.m: Add @tex blocks to docstring.
+
+2010-12-24  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/test.m: Use 'Command' for deftype in docstring.
+
+2010-12-24  Rik  <octave@nomad.inbox5.com>
+
+	* audio/setaudio.m: Re-write docstring.
+
+2010-12-23  Soren Hauberg  <hauberg@gmail.com>
+
+	* signal/detrend.m: Also accept polynomial order as a string
+	("constant" or "linear") for compatibility with Matlab.
+
+2010-12-22  Konstantinos Poulios  <logari81@gmail.com>
+
+	* plot/private/__axis_label__.m: Trigger fltk graphics redraw
+	immediately after setting an axis label.
+
+2010-12-22  John W. Eaton  <jwe@octave.org>
+
+	* optimization/optimset.m, optimization/optimget.m,
+	optimization/__all_opts__.m: Consistently use lower case for
+	storing and searching option names.
+
+2010-12-22  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/skewness.m: Make returned value have the same
+	class as the input.
+
+2010-12-21  John W. Eaton  <jwe@octave.org>
+
+	* time/datevec.m: Style fixes.
+
+2010-12-20  Ben Abbott <bpabbott@mac.com>
+
+	* plot/__fltk_print__.m: Update figure for FLTK printing.  Bug #31884.
+
+2010-12-19  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/run.m: Use source to execute script.
+
+2010-12-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/view.m: Return azimuth and elevation for nargin == 0.
+
+2010-10-28  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, sparse/module.mk, deprecated/sphcat.m,
+	deprecated/spvcat.m: Deprecate sphcat and spvcat functions.
+
+2010-12-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/comet3.m: New function.
+	* plot/module.mk: Add comet3.m to the list
+	* miscellaneous/unimplemented.m: Remove comet3 from the list.
+
+2010-12-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/comet.m: Use __plt_get_axis_arg__ to extract axis
+	argument.  Only switch to specified axis temporarily.
+
+2010-12-16  Ben Abbott <bpabbott@mac.com>
+
+	* miscellaneous/unimplemented.m: Remove isprop() from list of
+	unimplemented functions.
+	* plot/isprop.m: New function.
+
+2010-12-16  Olaf Till <olaf.till@uni-jena.de>
+
+	* optimization/sqp.m: Fix indexing error in sqp bounds selection.
+
+2010-12-14  Doug Stewart <doug.dastew@gmail.com>
+
+	* plot/bar.m: Improve the docstring.
+
+2010-12-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__quiver__.m: Use high contrast color black for arrows
+	in quiver3 plots.  Bug #31802.
+
+2010-12-14  Rik  <octave@nomad.inbox5.com>
+
+	* plot/compass.m, plot/errorbar.m, plot/legend.m, plot/rose.m,
+	plot/scatter.m, plot/scatter3.m, plot/stairs.m: Assign data used in
+	demo plots for reproducibility between runs.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/median.m: Add NaN test case from bug #29930.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* general/isequalwithequalnans.m: Add test case from bug #31239.
+
+2010-12-13  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Fix indexing bug for varargin.
+	Bug #31862.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/distributions/betapdf.m: Add test for large values of
+	alpha and beta.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* strings/strmatch.m: Add test with null search pattern.
+
+2010-12-13 Doug Stewart  <doug.dastew@gmail.com>
+
+	* plot/hist.m: Improved the help section.
+
+2010-12-13  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/private/__add_default_menu__.m: New function.
+	* plot/figure.m: Call __add_default_menu__ function.
+	* plot/module.mk: Add new file to list.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/sqp.m: Change docstring to refer to x0 as the initial
+	seed vector.
+
+2010-12-13  Olaf Till <olaf.till@uni-jena.de>
+
+	* optimization/sqp.m: Remove never violated Inf bounds from
+	computation in function for inequality constraints (bug
+	#31742).  Remove non-functional check for inequality constraints
+	being +Inf in each iteration.
+
+2010-12-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/optimget.m: Use explicit toupper conversion rather than
+	lookup(..., "i").
+	* optimization/optimset.m: Ditto.
+	* miscellaneous/parseparams.m: Ditto.
+
+2010-12-12  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/view.m: Fix bugs with respect to number if inputs and argument
+	handling.
+
+2010-12-12  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/view.m: Make view more compatible. Allow cartesian
+	coordinates and axes handle arguments.
+
+2010-12-10  Ben Abbott  <bpabbott@mac.com>
+
+	* io/strread.m: Don't require space between format specifiers.
+
+2010-12-10  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/speed.m: Eliminate line continuation in function definition.
+
+2010-12-10  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/private/__pie__.m: Add missing slice option to pie and
+	pie3 function.
+	* plot/pie.m, plot/pie3.m: Add new demo.
+
+2010-12-10  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* statistics/tests/kolmogorov_smirnov_test.m: Add tests.
+
+2010-12-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__pie__.m: Provide diagnositc for invalid
+	optional arguments.  Use caller name instead of __pie__ in error
+	messages.
+
+2010-12-09  John W. Eaton  <jwe@octave.org>
+
+	* statistics/tests/kolmogorov_smirnov_test.m: Try both DIST_cdf
+	and DISTcdf functions.  Always use feval to call CDF function.
+	Bug #31838.
+
+2010-12-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Set major and grid linewidths from
+	axis linewidth property.  Bug #31755.
+
+2010-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* plot/__print_parse_opts__.m: Convert print resolution from char to
+	double.  Fixes Bug #31834.
+
+2010-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* plot/private/__pie__.m: Allow logical indices for 'explode' variable.
+
+2010-12-09  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/pie3.m, plot/private/__pie__.m: New functions.
+	* plot/pie.m: Move __pie__ function to plot/private, in order to
+	be used by pie and pie3.
+	* miscellaneous/unimplemented.m: Remove pie3.m from list of
+	unimplemented functions.
+
+2010-12-09  John W. Eaton  <jwe@octave.org>
+
+	* time/datestr.m: Don't call localtime (mktime (tm)) to fill in
+	missing elements of time strcture.  Bug #31079.
+
+2010-12-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/fill.m: Fix bug that implies nextplot = "add".
+	* image/imshow.m: Flip y-axis.
+
+2010-12-08  John W. Eaton  <jwe@octave.org>
+
+	* strings/strmatch.m: Avoid passing length of zero to strncmp.
+	Bug #31774.
+
+2010-12-07  John W. Eaton  <jwe@octave.org>
+
+	* general/repmat.m: Handle special case of replicating scalar
+	using an index vector containing zeros.  Bug #31775.
+
+2010-12-06  Rik  <octave@nomad.inbox5.com>
+
+	* plot/plot.m: Eliminate present tense in first sentence of docstring.
+
+2010-12-06  Rik  <octave@nomad.inbox5.com>
+
+	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Add additional calling
+	form to docstring which returns handle (h)
+
+2010-12-06  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/testfun/speed.m: Overhaul documentation string.
+
+2010-12-03  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__stem__.m: Create a baseline for each stem hggroup.
+	* plot/__go_draw_axes__.m: If not set, then unset the gnuplot
+	{tblr}margins. Needed when using subplots with differing
+	activepositionproperty.
+
+2010-12-03  Konstantinos Poulios <logari81@gmail.com>
+
+	* plot/pbaspect.m, plot/daspect.m: Fix handling of input array of
+	length 2.
+
+2010-12-02  Ben Abbott  <bpabbott@mac.com>
+
+	* image/image.m: Only flip y-axis if nextplot property equal
+	"replace". Fixes bug 31745.
+	* plot/contour3.m: Modify demo to avoid clipping mesh. Fixes bug
+	31744.
+	* plot/fill.m: Allow multiple filled polygons. Fixes bug 31750.
+	* plot/subplot.m: Add suppport for "align" and "replace" options.
+	Partial fix for bug 31610.
+
+2010-11-26  John W. Eaton  <jwe@octave.org>
+
+	* pkg/pkg.m: Append directories to EXEC_PATH instead of
+	prepending them.  Use pathsep instead of ":".
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m,
+	miscellaneous/ls_command.m, plot/__print_parse_opts__.m:
+	Search PATH for programs, not EXEC_PATH.
+
+	* plot/print.m: Refer to PATH, not EXEC_PATH in error messages.
+	* plot/__print_parse_opts__.m: Likewise.
+
+2010-11-25  Kai Habel  <kai.habel@gmx.de>
+
+	* (plot/uimenu.m): Simplify code, add further check.
+	* (plot/uigetdir.m, plot/uigetfile.m, plot/uiputfile.m):
+	Fix error messages.
+
+2010-11-25  John W. Eaton  <jwe@octave.org>
+
+	* time/datetick.m: Add missing semicolon.
+
+2010-11-21  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/sqp.m: Use correct stopping tolerance in documentation.
+
+2010-11-21  Kai Habel  <kai.habel@gmx.de>
+
+	* (plot/uigetdir.m, plot/private/__fltk_file_filter__.m:): Check if
+	file argument is a valid path, don't use fileparts in this case.
+
+2010-11-21  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix plot titles so they are visible for
+	gnuplot 4.4.x (31711).
+	* general/cell2mat.m: Return empty matrix for empty cell.
+
+2010-11-21  Kai Habel  <kai.habel@gmx.de>
+
+	* (plot/uigetfile.m, plot/uiputfile.m): Set default directory to pwd.
+
+2010-11-21  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/uigetdir.m, plot/uigetfile.m, plot/uiputfile.m,
+	plot/private/__fltk_file_filter__.m: New files.
+	* plot/module.mk: Add new files.
+	* miscellaneous/unimplemented.m: Remove uigetdir.m, uigetfile.m,
+	and uiputfile.m from list of unimplemented functions.
+
+2010-11-20  Rik  <octave@nomad.inbox5.com>
+
+	* plot/gnuplot_drawnow.m: Remove spurious line causing 'ans=1' to be
+	returned when printing plots.
+
+2010-11-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_has_feature__.m: Since there is not gnuplot 4.3.x
+	release, replace reference to version 4.3 with 4.4.
+
+2010-11-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/text.m: Ensure text position property is set after units
+	property.
+	* plot/__go_draw_axes__.m: Fix bug setting zscale to yscale (31693).
+
+2010-11-18  Christos Dimitrakakis  <christos.dimitrakakis@gmail.com>
+
+	* statistics/distributions/betapdf.m: Use lgamma to compute
+	normalising constant in log space in order to handle large
+	parameters a and b.  Ensure correct values at x == 0 or x == 1.
+
+2010-11-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: For tests, allow __print_parse_opts__
+	to run with no inputs.
+
+2010-11-17  Ben Abbott  <bpabbott@mac.com>
+
+	* general/subsindex.m: Fix typo in doc-string.
+
+2010-11-17  John W. Eaton  <jwe@octave.org>
+
+	* strings/strchr.m: Style fixes.
+
+2010-11-17  Kim Hansen  <kim@ange.dk>
+
+	* strings/strchr.m: New tests.
+
+2010-11-16  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/unimplemented.m: Update unimplemented functions list.
+
+2010-11-15  Rik  <octave@nomad.inbox5.com>
+
+	* plot/saveas.m: Add function name to error messages.  Use semicolons
+	to prevent unnecessary output.  Use common terms 'ext' for extension
+	and 'filename' for filename in docstring.
+
+2010-11-15  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/saveas.m: New file.
+	* plot/module.mk: Add saveas.m
+	* plot/__print_parse_opts__.m: Parse arguments correctly when first
+	argument is a figure handle.
+	* plot/print.m: Add saveas to seealso entry.
+
+2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/print.m: Use "del" instead of "delete" in DOS shell, and
+	replace	forward slashes with backslashes.
+	* plot/__gnuplot_print__.m: Likewise.
+
+2010-11-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__all_opts__.m: Ensure that the array is always
+	case-insensitively sorted.
+
+2010-11-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/gnuplot_drawnow.m (have_non_legend_axes): New function.
+	Use it to avoid errors if there are no axes.
+	* plot/legend.m: Avoid indexing beyond end of varargin array.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc: Eliminate special case for __DECCXX.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* scripts/deprecated/dispatch.m: Don't set warning state in tests.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/dispatch.m: Deprecate dispatch function.
+	* deprecated/module.mk (deprecated_FCN_FILES): Add it to the list.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* help/help.m: Call missing_function_hook with output argument
+	and print message here.
+	* miscellaneous/unimplemented.m: Return message if nargout > 0.
+	Fixes bug #31597.
+
+2010-11-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Check for z/y/zdata before converting
+	negative values to NaNs. Bug fix for changeset 11201.
+	* plot/daspect.m: Fix demo using both daspect and pbaspect.
+
+2010-11-08  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Remove foreground color earlier.
+	* plot/__go_draw_figure__.m: Don't set the foreground color here.
+
+2010-11-08  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/sprand.m: Add input validation to function.
+
+2010-11-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__bar__.m: Permit bar() to be called with scalar inputs.
+	* plot/__go_draw_axes__.m, plot/axis.m: Set proper tight axis limits
+	for log scale.
+
+2010-11-07  David Bateman  <dbateman@free.fr>
+
+	* plot/legend.m: Remove call to drawnow.
+
+	* plot/__go_draw_axes__.m: Pass the legend axes as a structure.
+	Test whether the legend axis has any children before using it.
+	* plot/__go_draw_figure.m: Setup a fake axis to handle multi-parent
+	legend axes and delete this fake axiss when we're done with it.
+	* plot/gnuplot_drawnow.m: Don't cound legend axes when decidong if
+	multiplot should be used or not.
+	* plot/legend.m: Handle correctly plotyy as a multi-parented axis.
+	Reuse existing legend axis if possible. Setup listeners to propagate
+	changes in the lines to the legend. Setup listeners that handle the
+	properties that need to legend to be recreated.
+	* plot/plotyy.m: Cross-references the axes of the plotyy in the userdata
+	of the axes.
+
+2010-11-07  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/colorbar.m: Make colorbar function aware of dataaspect settings.
+
+2010-11-06  Marco Caliari <marco.caliari@univr.it>
+
+	* polynomial/spline.m: Fit a parabola for input with 3
+	elements (bug #31098).
+
+2010-11-04  Rik  <octave@nomad.inbox5.com>
+
+	* plot/__fltk_ginput__.m: Use semicolons to prevent internal
+	function evaluations being output to screen.
+
+2010-11-04  Rik  <octave@nomad.inbox5.com>
+
+	* plot/module.mk: Add __fltk_ginput__.m to list of scripts
+
+2010-11-04  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Update check-m-sources target to include generated
+	function files.
+
+2010-11-04  Rik  <octave@nomad.inbox5.com>
+
+	* general/accumarray.m, general/accumdim.m, general/blkdiag.m,
+	general/cell2mat.m, general/common_size.m,
+	general/private/__isequal__.m, general/private/__splinen__.m,
+	geometry/voronoi.m, io/textscan.m, miscellaneous/private/__xzip__.m,
+	pkg/pkg.m, plot/axis.m, plot/pareto.m, plot/private/__patch__.m,
+	statistics/base/mode.m, strings/deblank.m, strings/strcat.m,
+	strings/strmatch.m, strings/strtrim.m, strings/untabify.m:
+	Reverse previous changeset.  Use all lower case for "uniformoutput"
+	option.
+
+2010-11-03  Rik  <octave@nomad.inbox5.com>
+
+	* general/accumdim.m, general/cell2mat.m, general/common_size.m,
+	general/structfun.m, pkg/pkg.m, strings/untabify.m: Use CamelCase
+	for 'UniformOutput' option to cellfun.
+
+2010-11-03  Rik  <octave@nomad.inbox5.com>
+
+	* scripts/plot/plotyy.m, scripts/plot/xlim.m, scripts/plot/ylim.m,
+	scripts/plot/zlim.m: Fix typos in docstring and demo string.
+
+2010-11-03  Rik  <octave@nomad.inbox5.com>
+
+	* general/common_size.m, miscellaneous/private/__xzip__.m,
+	miscellaneous/what.m, plot/pareto.m, plot/private/__patch__.m:
+	Use function handle as input to cellfun rather than quoted function
+	name or anonymous function wrapper.
+
+2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/axis.m: Making 'axis equal' equivalent to 'daspect([1,1,1])'.
+
+2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/private/__actual_axis_position__.m: Remove temporary
+	calculation of plotboxratio for the gnuplot backend when
+	dataaspectratiomode, xlimmode and ylimmode are all set to manual.
+	Now this case is handled in src/graphics.cc .
+
+2010-11-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/axis.m: Leave zlim unchanged during "axis tight" on 2D plots
+
+2010-11-03  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__patch__.m: Don't index an empty array; bug introduced
+	by changeset 11175.
+
+2010-11-03  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/getappdata.m, miscellaneous/isappdata.m,
+	miscellaneous/rmappdata.m, miscellaneous/setappdata.m:
+	Add new appdata function.
+
+2010-11-01  David Bateman  <dbateman@free.fr>
+
+	* plot/__private__/__contour__.m: Use __go_patch__ rather than patch
+	to avoid the cost of the patch callback functions. Ensure that the
+	properties that are normally set by patch are correctly set in the
+	call to __go_patch__.
+
+2010-11-01  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/axis.m: Exclude hggroup {x,y,z}data properties when determing
+	tight axis limits.
+
+2010-10-31  Rik  <octave@nomad.inbox5.com>
+
+	* strings/base2dec.m, strings/bin2dec.m, strings/dec2base.m,
+	  strings/dec2bin.m, strings/dec2hex.m, strings/hex2dec.m:
+	  Improve docstrings, use more descriptive variable names,
+	  add more tests for functions used to convert between bases.
+
+2010-10-31  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* plot/__go_draw_axes__.m: Removing deprecated code handling the case
+        of both plotboxaspectratiomode and dataaspectratiomode set to manual
+        for the gnuplot backend. Now this case is handled already in
+        src/graphics.cc where xlim, ylim, zlim are recalculated if necessary.
+
+2010-10-30  Gunnar Farnebäck <gunnar@lysator.liu.se>
+
+	* strings/dec2base.m: Update algorithm to handle numbers up to 2^64-1.
+
+2010-10-28  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/module.mk, signal/module.mk, deprecated/autocov.m,
+	deprecated/autocor.m: Deprecate autocov and autocor functions.
+
+2010-10-27  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Don't attempt to plot patch outlines if
+	the marker property is set to none.
+
+2010-10-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/daspect.m, plot/pbaspect.m: Add demos setting both data and
+	plotbox aspect ratios.
+
+2010-10-27  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__patch__.m (setdata, setvertexdata): If argments are
+	repeated, take the last argument only into account. Set cdata and
+	facevertexcdata properties always.
+
+2010-10-26  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/uimenu.m: Add simple demo
+
+2010-10-25  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/discrete_pdf.m: Sort values before calling
+	the lookup function.
+
+2010-10-25  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/uimenu.m: New function
+	* plot/__go_draw_figure__.m: Ignore uimenu objects for gnuplot
+	backend
+	* plot/module.mk (plot_FCN_FILES): Add it to the list.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/compare_versions.m, plot/ylabel.m, plot/ylim.m,
+	plot/zlabel.m, plot/zlim.m: Docstring improvements.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* specfun/module.mk, deprecated/module.mk, deprecated/betai.m,
+	deprecated/gammai.m, deprecated/is_global.m: Deprecate betai,
+	gammai, and is_global functions.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* strings/untabify.m, strings/strjust.m, io/strread.m:
+	Docstring fixes.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/nbinrnd.m: Use | instead of || in
+	argument to find.
+
+	* deprecated/intwarning.m, general/bicubic.m, general/postpad.m,
+	general/prepad.m, general/private/__splinen__.m,
+	general/shift.m, miscellaneous/swapbytes.m, pkg/pkg.m,
+	plot/clabel.m, plot/colorbar.m, plot/fill.m, plot/legend.m,
+	plot/plotmatrix.m, plot/plotyy.m, plot/private/__clabel__.m,
+	plot/private/__ezplot__.m, plot/private/__quiver__.m,
+	plot/subplot.m, signal/unwrap.m, statistics/base/histc.m,
+	statistics/base/iqr.m, statistics/base/kurtosis.m,
+	statistics/base/mode.m, statistics/base/ranks.m,
+	statistics/base/run_count.m, statistics/base/skewness.m,
+	statistics/base/statistics.m, statistics/base/studentize.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/frnd.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/trnd.m,
+	statistics/distributions/wblrnd.m, strings/strcat.m,
+	time/datestr.m, time/datetick.m: Break lines before && and ||,
+	not before.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* io/strread.m: Docstring fixes.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* io/is_valid_file_id.m: Ensure that FID is a scalar before
+	calling fopen to get info.  New tests.
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* io/is_valid_file_id.m: New function.
+	* io/module.mk (io_FCN_FILES): Add it to the list.
+
+2010-10-23  Ben Abbott  <bpabbott@mac.com>
+
+	* io/textscan.m, miscellaneous/unimplemented.m, io/module.mk:
+	New function.
+
+2010-10-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Trivial fix to allow legend handle to be returned.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/quantile.m: Fix typo in previous change.
+
+2010-10-21  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/distributions/wblcdf.m, statistics/distributions/wblinv.m,
+	statistics/distributions/wblpdf.m, statistics/distributions/wblrnd.m:
+	Fix reversed documentation for shape and scale parameters.
+
+2010-10-21  Ben Abbott  <bpabbott@mac.com>
+
+	* io/strread.m: Improve compatibility with Matlab.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* general/private/__isequal__.m: Style fixes.
+
+2010-10-20  Iain Murray  <murray@cs.toronto.edu>
+
+	* general/private/__isequal__.m: Fix bug #31239 where
+	isequalwithequalnans is incorrect.
+
+2010-10-20  Rik  <octave@nomad.inbox5.com>
+
+	* polynomial/conv.m: Remove redundant test.
+	* signal/fftconv.m: Add tests used by conv.m code.
+
+2010-10-20  Olaf Till  <olaf.till@uni-jena.de>
+
+	* optimization/optimset.m: Use cell2struct instead of struct to
+	handle cell arrays as options.
+
+2010-10-20  John W. Eaton  <jwe@octave.org>
+
+	* io/strread.m, optimization/sqp.m, plot/daspect.m,
+	plot/pbaspect.m, plot/gnuplot_drawnow.m, plot/isocolors.m,
+	plot/isonormals.m, plot/legend.m, plot/print.m,
+	plot/private/__interp_cube__.m, plot/__fltk_print__.m,
+	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
+	statistics/base/quantile.m: Style fixes.
+
+2010-10-19  John W. Eaton  <jwe@octave.org>
+
+	* strings/module.mk (strings_FCN_FILES): Include
+	strings/untabify.m in the list.
+	* strings/untabify.m: Escape { and } characters in docstring.
+
+2010-10-19  Ben Abbott  <bpabbott@mac.com>
+
+	* strings/strjust.m: Add "untabify" and "strrep" to @seealso{} in the
+	doc-string.
+
+2010-10-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/gradient.m, linear-algebra/normest.m,
+	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
+	plot/daspect.m, plot/gnuplot_drawnow.m, plot/pbaspect.m,
+	plot/print.m, signal/periodogram.m:
+	Style fix, replace end by endfor.
+
+2010-10-18  Marco Caliari  <marco.caliari@univr.it>
+
+	* polynomial/polyval.m: Use Horner's method.
+
+2010-10-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Always use gnuplot to display images.
+	* image/image.m: Delete references to image_viewer.
+	* image/image_viewer.m: Delete obsolete function.
+	* image/module.mk (image_FCN_FILES): Remove image/image_viewer.m
+	from the list.
+
+2010-10-18  Gunnar Farneback  <gunnar@lysator.liu.se>
+
+	* general/interp2.m: Fix input checks for cubic
+	interpolation (bug #31352, part 1).
+
+2010-10-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Add examples to the docstring.
+
+2010-10-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__errplot__.m: Remove debugging statement from
+	previous change.
+
+2010-10-17  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/edit.m: Use version 3 in GPL notice.
+
+	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m,
+	@ftp/delete.m, @ftp/dir.m, @ftp/display.m, @ftp/ftp.m,
+	@ftp/loadobj.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/mput.m,
+	@ftp/rename.m, @ftp/rmdir.m, @ftp/saveobj.m,
+	help/__makeinfo__.m, help/__strip_html_tags__.m,
+	help/gen_doc_cache.m, help/get_first_help_sentence.m,
+	help/help.m, help/lookfor.m, help/print_usage.m,
+	help/private/__additional_help_message__.m, help/type.m,
+	help/which.m, io/fileread.m, io/strread.m, io/textread.m,
+	pkg/get_forge_pkg.m, plot/__gnuplot_has_feature__.m,
+	plot/__gnuplot_open_stream__.m, plot/__marching_cube__.m,
+	plot/cla.m, plot/comet.m, plot/daspect.m, plot/isocolors.m,
+	plot/isonormals.m, plot/isosurface.m, plot/pbaspect.m,
+	plot/private/__interp_cube__.m, plot/private/__ghostscript__.m,
+	plot/private/__tight_eps_bbox__.m,
+	plot/private/__gnuplot_has_terminal__.m,
+	polynomial/polyaffine.m, sparse/svds.m, strings/strsplit.m:
+	Use Octave copyright notice instead of generic "This program is
+	free software" notice.
+
+2010-10-18  Ben Abbott  <bpabbott@mac.com>
+
+	* strings/untabify.m: New function to untabify text.
+
+2010-10-17  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/mesh.m, plot/surf.m: Include the 4th input (color) in the
+	docstring.
+
+2010-10-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__errplot__.m, plot/errorbar.m: Allow line and marker
+	types to be set.
+
+2010-10-14  John W. Eaton  <jwe@octave.org>
+
+	* special-matrix/rosser.m: New tests.
+	* special-matrix/wilkinson.m: Fix error message.  New tests.
+	* special-matrix/pascal.m: Error if T is out of range.
+	New tests.
+
+2010-10-14  John W. Eaton  <jwe@octave.org>
+
+	* set/unique.m: Remove check for issparse existence since it is
+	now a built-in function.
+
+2010-10-14  Ben Abbott  <bpabbott@mac.com>
+
+	* strings/strjust.m: Clarify that justification  applies to spaces and
+	null characters.
+
+2010-10-09  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Enable linetypes for gnuplot.
+
+2010-10-09  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/geornd.m,
+	* statistics/distributions/hygecdf.m,
+	* statistics/distributions/hygeinv.m,
+	* statistics/distributions/poissrnd.m,
+	* statistics/distributions/wblrnd.m:
+	Use || instead of | and && instead of & in IF conditions
+	involving scalars.
+
+2010-10-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/__fltk_ginput__.m: Use || instead of | in IF condition.
+
+2010-10-08  Ben Abbott  <bpabbott@mac.com>
+
+	* image/image.m, plot/__go_draw_axes__.m: Do not store flipped image
+	property values when x/ydata descends.
+
+2010-10-07  John W. Eaton  <jwe@octave.org>
+
+	* signal/periodogram.m: Fix parse errors.
+
+2010-10-07  John W. Eaton  <jwe@octave.org>
+
+	* time/datevec.m: Use endfunction to mark end of primary
+	function and subfunctions.
+
+2010-10-07  Rik  <octave@nomad.inbox5.com>
+
+	* polynomial/conv.m: Improve docstring.
+	* signal/fftconv.m: Improve docstring and error messages.
+
+2010-10-07  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/conv.m: Handle optional third argument.  New
+	tests.  Update doc string.
+
+2010-10-06  Ben Abbott  <bpabbott@mac.com>
+
+	* image/image.m: Allow x/ydata to imply a flip of the image.
+	Modify demos.
+
+2010-10-05  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* general/quadv.m: Fix help string and add a test for vector
+	valued functions.
+
+2010-10-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* image/image.m (__img__): Use __image_pixel_size__ to calculate
+	limits
+
+2010-09-28  John P. Swensen  <jpswensen@gmail.com>
+
+	* image/imwrite.m: Call __magick_format_list__ to get list of
+	accepted formats.
+
+2010-09-28  Rik  <octave@nomad.inbox5.com>
+
+	* linear-algebra/logm.m, plot/legend.m, signal/periodogram.m:
+	Untabify scripts.
+
+2010-09-27  Rik  <octave@nomad.inbox5.com>
+
+	* io/dlmwrite.m: Replace non-POSIX '\d' regex pattern.
+
+	* miscellaneous/edit.m, path/savepath.m,
+	plot/__gnuplot_get_var__.m,
+	plot/private/__gnuplot_has_terminal__.m, plot/refreshdata.m,
+	plot/whitebg.m, testfun/runtests.m, time/datestr.m:
+	Use single quotes for regular expression patterns when possible.
+
+	* miscellaneous/ls.m, plot/__gnuplot_ginput__.m,
+	plot/__go_draw_axes__.m, plot/private/__ezplot__.m,
+	testfun/test.m: Remove uses of shorthand character classes
+	within list operators which is unsupported by POSIX regex.
+
+	* pkg/get_forge_pkg.m: Select desired output from regexp
+	rather than ignoring most outputs.
+
+2010-09-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Fix test.
+
+2010-09-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* elfun/lcm.m: Simplify.
+
+2010-09-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Properly crop eps image and fix tests.
+
+	* plot/__go_draw_axes__.m, plot/private/__ezplot__.m,
+	testfun/test.m: Remove uses of shorthand character classes
+	within list operators which is unsupported by POSIX regex.
+
+	* pkg/get_forge_pkg.m: Select desired output from regexp
+	rather than ignoring most outputs.
+
+2010-09-26  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/runtests.m (has_tests): Recode to remove requirement for PCRE.
+	Bug #31025.
+
+2010-09-25  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Recongize gs devices {eps/pdf/ps}write.
+
+2010-09-23  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/bug_report.m: Display information about how to
+	submit bug reports instead of creating and mailing a bug report.
+
+2010-09-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__ghostscript__.m, plot/print.m: When appending, delete
+	temporay files at the end of the ghostscript pipeline.
+
+2010-09-21  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__fltk_print__.m, plot/private/__ghostscript__.m,
+	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
+	plot/print.m: Print via a pipeline.
+
+2010-09-20  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Index location cellstr to obtain a string.
+
+2010-09-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m, plot/axis.m,
+	plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
+	Special treatment activepositionproperty = outerposition for the
+	gnuplot backend. This allows the gnuplot key to be placed outside
+	the plotbox.
+	* plot/private/__plt__.m: Trivial fix for recent legend changeset.
+	* plot/legend.m: Treat line, patch, and surface objects differetly.
+	* plot/__go_draw_axes__.m: Remove left over debug code.
+	* miscellaneous/mkoctfile.m: Change help text to be consistent with
+	the shell version.
+
+2010-09-18  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Modify legend code to use data from legend
+	axes.
+	* plot/__go_draw_figure__.m: Draw draw figure axes, but pass their
+	data to the axis they are associated with.
+	* plot/__get_plt_axes_arg__.m: Ignores axes tagged with "legend".
+	* plot/legend.m: Rewrite to use line and text primitives in a seperate
+	axis.
+	* plot/plot3.m: Support old legend format (eg "-;title'") with new
+	legend code.
+	* plot/private/__plt__.m: Ditto.
+
+2010-09-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Ensure text objects have units of "data".
+
+2010-09-16  John Swensen  <jpswensen@gmail.com>
+
+	* imwrite.m: Accept more image formats.
+
+2010-09-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* signal/periodogram.m: Support additional inputs:
+	win, nfft, Fs, range. Thanks to Alois Schlögl.
+
+2010-09-13  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Use new function __gnuplot_has_terminal__().
+	* plot/private/__gnuplot_has_terminal__.m: New function.
+
+2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/common_size.m: Partially rewrite using cellindexmat.
+
+2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Use @vec instead of @(x) x(:) for faster call.
+
+2010-09-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/get_forge_pkg.m: Allow underscores in pkg names.
+
+2010-09-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__fltk_print__.m, plot/private/__ghostscript__.m,
+	plot/__gnuplot_print__.m, plot/__print_parse_opts__.m,
+	plot/print.m: Consolidate gs code into print.m.
+	* plot/colorbar.m, plot/axis.m,
+	plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
+	Revert treatment of activepositionproperty from the gnuplot backend.
+	* image/image.m: Fix axis limits for single dimension images, add
+	demo.
+
+2010-09-07  David Bateman  <dbateman@free.fr>
+
+	* plot/plotyy.m: Don't add the __plotyy_axes__ property to the
+	axes handles if iit already exists.
+
+2010-09-06  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* geometry/griddata.m: Allow x, y to be vectors, and z a matrix.
+
+2010-09-03  David Bateman  <dbateman@free.fr>
+
+	* geometry/delaunay.m: Allow the delaunay function to treat
+	matrices of the same size for compatibility.
+
+2010-09-03  Ben Abbott  <bpabbott@mac.com>
+
+	* image/image.m: Matlab compatible axis limits, add demo.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/dlmwrite.m: Don't fclose if file ID is supplied.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/dlmwrite.m: Support file IDs.
+
+2010-07-07  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/what.m: Off by one error.
+
+	* plot/__go_draw_axes__.m: Improve matlab compatibility for "."
+	marker.
+
+2010-08-31  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m,
+	plot/axis.m, plot/colorbar.m, plot/daspect.m, plot/plotyy.m,
+	plot/subplot.m: Treatment of activepositionproperty for gnuplot.
+	* plot/__go_draw_axes__.m: Missing part of last changeset.
+	* plot/__go_draw_axes__.m: Fix specification of pointtype for patches
+	(bug introduced in rev 2f9de135e7f9).
+
+2010-08-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Use gnuplot's pentagon for marker == 'p'.
+
+2010-08-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m, * plot/__go_draw_axes__.m,
+	plot/private/__actual_axis_position__.m: Don't pass figure handle to
+	__calc_dimensions__.
+	* plot/private/__ghostscript__.m: Don't set anti-aliasing options for
+	vector formats.
+	* plot/__print_parse_opts__.m: Fix tests.
+
+2010-08-27  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* plot/__go_draw_axes__.m (__calc_dimensions__): Delete.
+	* plot/__actual_axis_position__.m (__calc_dimensions__): Delete.
+
+2010-08-27  Pascal A. Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* plot/hold.m: If arg is axis handle, get corresponding figure
+	handle from axis parent property.
+
+2010-08-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_print__.m: Properly restore fontsize after eps output.
+	* plot/plotyy.m: Modified demo for changeset 10912 9abc67b4bd4f.
+	* plot/__fltk_print__.m, plot/__go_draw_axes__.m,
+	plot/__go_draw_figure__.m, plot/__gnuplot_print__.m,
+	plot/gnuplot_drawnow.m, plot/print.m, plot/private/__ghostscript__.m,
+	plot/private/__tight_eps_bbox__.m: Unify gnuplot printing with the
+	the fltk backend. Turn figure background color off when printing.
+	Improve the axes font spacing for most gnuplot terminals.
+
+2010-08-26  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: For yaxislocation == 'right' associate text
+	position with 'second' coordinate system.
+
+2010-08-25  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Revert erroneous portion of changeset
+	10910 40cf7cc4ea62.
+
+2010-08-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__actual_axis_position__.m, plot/__go_draw_axes__.m:
+	Properly interpret plotboxaspectratio when 3D objects are viewed as 2D.
+	* plot/colorbar.m: Add demo.
+
+2010-08-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp2.m: Don't use bicubic for consistency (can't handle
+	non-grid interpolation).
+
+2010-08-17  Rik  <octave@nomad.inbox5.com>
+
+	* general/randi.m: Add IMAX check for class "single" numbers.
+
+2010-08-15  Rik  <octave@nomad.inbox5.com>
+
+	* general/randi.m: Add new script for random integers.
+	* general/module.mk: Add randi to build file list.
+	* miscellaneous/unimplemented.m: Remove randi from unimplemented list.
+
+2010-08-15  Rik  <octave@nomad.inbox5.com>
+
+	* image/imwrite.m: Allow writing of 1-bit (B&W) images.
+	Improve documentation string.  Add input validation tests.
+
+2010-08-13  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Double quote paths with spaces.
+
+2010-08-11  Rik  <octave@nomad.inbox5.com>
+
+	* set/unique.m: Handle corner case where sparse matrix is actually full.
+
+2010-08-10  Rik  <octave@nomad.inbox5.com>
+
+	* set/unique.m: Check whether outputs are used before calculating.
+
+2010-08-10  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/module.mk, deprecated/module.mk,
+	statistics/base/values.m, deprecated/values.m: Deprecate values.m
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* miscellaneous/unimplemented.m: Add newlines to format output for
+	easier reading.  Format all lines < 80 characters.  Remove
+	'whitebg' function from unimplemented list.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* @ftp/PKG_ADD: Remove temporary build file from hg version control.
+
+2010-08-09  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m: Default pstex suffix should be '.ps'.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Create .DOCSTRINGS quietly and avoid screen clutter
+	during build.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Run do_subst macro quietly without cluttering screen
+	during build.
+
+2010-08-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Include 'colormap' when converting RGB to mono.
+
+2010-08-07  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__fltk_print__.m: When running pstoedit, crop eps file after it
+	is created. Correctly check error status.
+
+2010-08-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/cell2mat.m: Allow cells of struct arrays.
+
+2010-08-05  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__print_parse_opts__.m, plot/__fltk_print__.m: Don't warn on
+	absence of fig2dev or pstoedit until they are needed.
+	* plot/__print_parse_opts__.m, plot/__fltk_print__.m: Add epslatex,
+	pslatex, and pdflatex output for fltk backend. Use the gs png16m device
+	instead of png256.
+	* plot/print.m: Modify texinfo. Add unwind_protect block.
+
+2010-08-01 Marco Caliari  <marco.caliari@univr.it>
+
+	* general/bicubic.m: Fix bug #30400 when bicubic called with small
+	numbers of arguments.
+
+2010-08-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/sortrows.m: Don't actually permute the rows if not
+	requested.
+
+2010-08-04  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m, plot/__print_parse_opts__.m, plot/__gnuplot_print__.m,
+	plot/private/__ghostscript__.m: plot/__fltk_print__.m: Add ps and pdf
+	output for fltk backend, improved use of ghostscript, and minor
+	improvements.
+
+2010-08-01  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/intwarning.m, general/arrayfun.m, general/cplxpair.m,
+	general/interp1.m, general/interpn.m, general/quadgk.m,
+	general/structfun.m, image/image_viewer.m, io/strread.m,
+	miscellaneous/warning_ids.m, optimization/lsqnonneg.m, pkg/pkg.m,
+	plot/__marching_cube__.m, plot/bar.m, plot/contourc.m, plot/errorbar.m,
+	plot/ezplot.m, plot/isocolors.m, plot/isonormals.m, plot/isosurface.m,
+	plot/stem.m, plot/stem3.m, polynomial/compan.m, polynomial/ppval.m,
+	signal/arch_rnd.m, sparse/pcg.m, sparse/svds.m,
+	special-matrix/invhilb.m, statistics/distributions/wblcdf.m,
+	testfun/assert.m, testfun/demo.m, testfun/speed.m:
+	Grammarcheck documentation.  Add @noindent lines and ensure line
+	length is less than 80.
+
+2010-08-01  Martin Helm  <martin@mhelm.de>
+
+	* plot/isosurface.m: Swap rows and columns of matrix in call to
+	meshgrid.
+
+2010-08-01  Rik  <octave@nomad.inbox5.com>
+
+	* plot/print.m: Update documentation string.  Change to active voice.
+
+2010-07-30  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: add .DOCSTRINGS to the DISTCLEANFILES list
+
+2010-07-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m, plot/__print_parse_opts__.m, plot/__fltk_print__.m,
+	plot/__gnuplot_print__.m: Improved printing for the fltk backend.
+	* plot/private/__ghostscript__.m, plot/private/__tight_eps_bbox__.m:
+	New files to support printing.
+
+2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/expm.m: Special-case scalars and diagonal matrices.
+	Suggested by M. Caliari.
+
+2010-07-26  Rik  <octave@nomad.inbox5.com>
+
+	* linear-algebra/logm.m: Improve documentation string.  Add GPL header.
+	Add additional test block.
+
+2010-07-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/logm.m: Rewrite. Thanks to M. Caliari and R. T. Guy.
+
+2010-07-26  Rik  <octave@nomad.inbox5.com>
+
+	* deprecated/complement.m, deprecated/intwarning.m, general/arrayfun.m,
+	general/circshift.m, general/colon.m, general/common_size.m,
+	general/del2.m, general/flipdim.m, general/fliplr.m, general/flipud.m,
+	general/idivide.m, general/interp1.m, general/interp2.m,
+	general/interp3.m, general/interpn.m, general/loadobj.m,
+	general/quadgk.m, general/rat.m, general/saveobj.m, general/shiftdim.m,
+	geometry/delaunayn.m, image/image_viewer.m, image/imfinfo.m,
+	io/csvread.m, io/csvwrite.m, io/strread.m, linear-algebra/condest.m,
+	linear-algebra/housh.m, linear-algebra/onenormest.m,
+	linear-algebra/qzhess.m, miscellaneous/bincoeff.m,
+	miscellaneous/compare_versions.m, miscellaneous/computer.m,
+	miscellaneous/edit.m, miscellaneous/fileattrib.m,
+	miscellaneous/getfield.m, miscellaneous/license.m, miscellaneous/ls.m,
+	miscellaneous/parseparams.m, miscellaneous/swapbytes.m,
+	miscellaneous/ver.m, miscellaneous/warning_ids.m,
+	optimization/fminbnd.m, optimization/fminunc.m, optimization/fsolve.m,
+	optimization/fzero.m, optimization/glpk.m, optimization/lsqnonneg.m,
+	optimization/pqpnonneg.m, optimization/qp.m, optimization/sqp.m,
+	path/pathdef.m, pkg/pkg.m, plot/__marching_cube__.m, plot/axis.m,
+	plot/colorbar.m, plot/contourc.m, plot/contourf.m, plot/cylinder.m,
+	plot/ezplot.m, plot/isocolors.m, plot/isonormals.m, plot/legend.m,
+	plot/print.m, plot/refreshdata.m, plot/slice.m, plot/subplot.m,
+	plot/surfl.m, polynomial/compan.m, polynomial/mpoles.m,
+	polynomial/poly.m, polynomial/polyaffine.m, polynomial/polyfit.m,
+	polynomial/polygcd.m, polynomial/polyout.m, polynomial/residue.m,
+	polynomial/roots.m, polynomial/unmkpp.m, set/union.m, signal/filter2.m,
+	signal/stft.m, sparse/spdiags.m, specfun/bessel.m, specfun/beta.m,
+	specfun/betaln.m, specfun/nchoosek.m, specfun/nthroot.m,
+	specfun/perms.m, special-matrix/hadamard.m, special-matrix/hankel.m,
+	special-matrix/hilb.m, special-matrix/invhilb.m,
+	special-matrix/toeplitz.m, special-matrix/vander.m,
+	statistics/base/cloglog.m, statistics/base/cor.m,
+	statistics/base/corrcoef.m, statistics/base/kendall.m,
+	statistics/base/kurtosis.m, statistics/base/logit.m,
+	statistics/base/mean.m, statistics/base/median.m,
+	statistics/base/quantile.m, statistics/base/skewness.m,
+	statistics/base/std.m, statistics/base/var.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/wblcdf.m, statistics/tests/cor_test.m,
+	statistics/tests/hotelling_test_2.m, strings/bin2dec.m,
+	strings/cstrcat.m, strings/dec2bin.m, strings/dec2hex.m,
+	strings/findstr.m, strings/hex2dec.m, strings/index.m,
+	strings/isstrprop.m, strings/regexptranslate.m, strings/rindex.m,
+	strings/strcat.m, strings/substr.m, testfun/demo.m, time/asctime.m,
+	time/clock.m, time/ctime.m, time/date.m, time/datenum.m,
+	time/is_leap_year.m: Grammarcheck documentation of m-files.
+	Add newlines between @items for readability.
+
+2010-07-26  Ben Abbott  <bpabbott@mac.com>
+
+	* general/interp1.m: When absent set X equal to the inices of Y.
+	* general/interpn.m: Convert interpolation vectors of non-equal
+	length to nd-arrays.
+
+2010-07-26  Soren Hauberg  <hauberg@gmail.com>
+
+	* image/image.m: Replace parenthesis with curly bracket in Texinfo.
+
+2010-07-25  Rik  <octave@nomad.inbox5.com>
+
+	* image/image.m: Always reverse 'ydir' property when displaying images.
+
+2010-07-19  Rik  <octave@nomad.inbox5.com>
+
+	* help/__makeinfo__.m: Add support to process @nopsell macro.
+	Fix bug when more than one @seealso block exists.
+
+2010-07-19  Rik  <octave@nomad.inbox5.com>
+
+	* general/repmat.m: Add seealso to new repelems function.
+
+2010-07-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/nchoosek.m: Optimize.
+
+2010-07-18  Rik  <octave@nomad.inbox5.com>
+
+	* @ftp/ftp.m, @ftp/mget.m, audio/lin2mu.m, audio/loadaudio.m,
+	audio/mu2lin.m, audio/playaudio.m, audio/saveaudio.m,
+	audio/wavwrite.m, deprecated/create_set.m,
+	deprecated/intwarning.m, deprecated/lchol.m,
+	deprecated/spchol.m, deprecated/spdiag.m, deprecated/spfind.m,
+	deprecated/splchol.m, deprecated/splu.m, deprecated/spmax.m,
+	deprecated/spmin.m, deprecated/spqr.m, deprecated/weibcdf.m,
+	deprecated/weibrnd.m, general/accumarray.m, general/bitset.m,
+	general/colon.m, general/deal.m, general/del2.m,
+	general/genvarname.m, general/gradient.m, general/interp1.m,
+	general/interp2.m, general/interp3.m, general/interpft.m,
+	general/interpn.m, general/nargchk.m, general/nargoutchk.m,
+	general/nextpow2.m, general/num2str.m, general/pol2cart.m,
+	general/polyarea.m, general/prepad.m, general/quadgk.m,
+	general/quadl.m, general/quadv.m, general/rat.m,
+	general/repmat.m, general/shiftdim.m, general/structfun.m,
+	general/trapz.m, geometry/convhull.m, geometry/delaunay.m,
+	geometry/delaunay3.m, geometry/delaunayn.m, geometry/dsearch.m,
+	geometry/dsearchn.m, geometry/griddata.m, geometry/trimesh.m,
+	geometry/triplot.m, geometry/trisurf.m, geometry/voronoi.m,
+	geometry/voronoin.m, help/__makeinfo__.m, help/gen_doc_cache.m,
+	help/get_first_help_sentence.m, help/print_usage.m, help/type.m,
+	image/brighten.m, image/colormap.m, image/image.m,
+	image/imagesc.m, image/imfinfo.m, image/imshow.m,
+	image/imwrite.m, image/ind2rgb.m, io/dlmwrite.m, io/fileread.m,
+	io/strread.m, io/textread.m, linear-algebra/cond.m,
+	linear-algebra/condest.m, linear-algebra/ishermitian.m,
+	linear-algebra/onenormest.m, miscellaneous/bzip2.m,
+	miscellaneous/dir.m, miscellaneous/dos.m, miscellaneous/edit.m,
+	miscellaneous/gzip.m, miscellaneous/mkoctfile.m,
+	miscellaneous/orderfields.m, miscellaneous/parseparams.m,
+	miscellaneous/perl.m, miscellaneous/unix.m,
+	miscellaneous/unpack.m, miscellaneous/version.m,
+	miscellaneous/zip.m, optimization/fminbnd.m,
+	optimization/fminunc.m, optimization/fsolve.m,
+	optimization/glpk.m, optimization/glpkmex.m,
+	optimization/lsqnonneg.m, optimization/optimget.m,
+	optimization/optimset.m, optimization/pqpnonneg.m,
+	optimization/private/__fdjac__.m, optimization/qp.m,
+	pkg/get_forge_pkg.m, pkg/pkg.m, plot/__fltk_print__.m,
+	plot/__gnuplot_print__.m, plot/ancestor.m, plot/area.m,
+	plot/axes.m, plot/axis.m, plot/bar.m, plot/barh.m, plot/box.m,
+	plot/caxis.m, plot/cla.m, plot/clabel.m, plot/close.m,
+	plot/colorbar.m, plot/comet.m, plot/compass.m, plot/contour.m,
+	plot/contour3.m, plot/contourc.m, plot/contourf.m,
+	plot/cylinder.m, plot/ellipsoid.m, plot/ezcontour.m,
+	plot/ezcontourf.m, plot/ezmesh.m, plot/ezmeshc.m, plot/ezplot.m,
+	plot/ezplot3.m, plot/ezpolar.m, plot/ezsurf.m, plot/ezsurfc.m,
+	plot/feather.m, plot/figure.m, plot/fill.m, plot/findall.m,
+	plot/findobj.m, plot/fplot.m, plot/gcbo.m, plot/grid.m,
+	plot/hggroup.m, plot/hidden.m, plot/line.m, plot/meshgrid.m,
+	plot/ndgrid.m, plot/pareto.m, plot/patch.m, plot/pcolor.m,
+	plot/peaks.m, plot/pie.m, plot/plotmatrix.m, plot/plotyy.m,
+	plot/print.m, plot/private/__actual_axis_position__.m,
+	plot/quiver.m, plot/quiver3.m, plot/refresh.m, plot/rose.m,
+	plot/scatter.m, plot/scatter3.m, plot/shading.m, plot/slice.m,
+	plot/specular.m, plot/sphere.m, plot/subplot.m, plot/surfl.m,
+	plot/surfnorm.m, plot/text.m, plot/title.m, plot/view.m,
+	plot/whitebg.m, plot/xlabel.m, plot/xlim.m, plot/ylabel.m,
+	plot/ylim.m, plot/zlabel.m, plot/zlim.m, polynomial/compan.m,
+	polynomial/mkpp.m, polynomial/mpoles.m, polynomial/pchip.m,
+	polynomial/ppder.m, polynomial/ppint.m, polynomial/ppjumps.m,
+	polynomial/ppval.m, polynomial/spline.m, set/intersect.m,
+	set/powerset.m, set/setdiff.m, set/setxor.m, set/union.m,
+	set/unique.m, signal/fftshift.m, signal/filter2.m,
+	signal/ifftshift.m, sparse/bicgstab.m, sparse/cgs.m,
+	sparse/etreeplot.m, sparse/gplot.m, sparse/pcg.m, sparse/pcr.m,
+	sparse/spdiags.m, sparse/speye.m, sparse/sprand.m,
+	sparse/sprandn.m, sparse/sprandsym.m, sparse/spstats.m,
+	sparse/spy.m, sparse/treelayout.m, sparse/treeplot.m,
+	specfun/bessel.m, specfun/legendre.m, specfun/pow2.m,
+	statistics/base/center.m, statistics/base/histc.m,
+	statistics/base/kendall.m, statistics/base/meansq.m,
+	statistics/base/prctile.m, statistics/base/quantile.m,
+	statistics/base/range.m, statistics/base/std.m,
+	statistics/base/table.m, statistics/distributions/betacdf.m,
+	statistics/distributions/betarnd.m,
+	statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/empirical_rnd.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/fcdf.m,
+	statistics/distributions/frnd.m,
+	statistics/distributions/gamrnd.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/hygernd.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/laplace_rnd.m,
+	statistics/distributions/logistic_rnd.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/normrnd.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/tcdf.m,
+	statistics/distributions/trnd.m,
+	statistics/distributions/unidrnd.m,
+	statistics/distributions/unifcdf.m,
+	statistics/distributions/unifrnd.m,
+	statistics/distributions/wblcdf.m,
+	statistics/distributions/wblrnd.m,
+	statistics/tests/kolmogorov_smirnov_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m,
+	statistics/tests/wilcoxon_test.m, strings/base2dec.m,
+	strings/index.m, strings/mat2str.m, strings/strchr.m,
+	strings/substr.m, strings/validatestring.m, testfun/assert.m,
+	testfun/example.m, testfun/fail.m, testfun/speed.m,
+	testfun/test.m, time/calendar.m, time/date.m, time/datenum.m,
+	time/datetick.m, time/datevec.m:
+	Grammarcheck documentation of m-files.
+
+2010-07-17  Rik  <octave@nomad.inbox5.com>
+
+	* audio/lin2mu.m, general/common_size.m, general/interp1.m,
+	general/interp2.m, general/interpn.m, general/quadl.m,
+	geometry/dsearchn.m, geometry/voronoi.m, geometry/voronoin.m,
+	image/hsv2rgb.m, image/imread.m, image/rgb2hsv.m,
+	linear-algebra/commutation_matrix.m, linear-algebra/condest.m,
+	linear-algebra/expm.m, linear-algebra/krylov.m,
+	linear-algebra/onenormest.m, miscellaneous/perl.m,
+	plot/linkprop.m, plot/plot.m, plot/print.m, plot/stem3.m,
+	signal/diffpara.m, signal/stft.m, sparse/pcg.m, sparse/pcr.m,
+	specfun/primes.m, special-matrix/hadamard.m, special-matrix/hankel.m,
+	special-matrix/invhilb.m, special-matrix/pascal.m,
+	special-matrix/rosser.m, special-matrix/toeplitz.m,
+	special-matrix/vander.m, special-matrix/wilkinson.m,
+	testfun/speed.m: Spellcheck documentation.
+
+2010-07-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/flipdim.m: Suuport flipping about trailing singleton
+	dimension.
+
+2010-07-14  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_print__.m: Fix broken options "-orientation",
+	"-special_flag", "-debug_file", "-tight_flag", and "-printer".
+
+2010-07-14  Rik  <octave@nomad.inbox5.com>
+
+       * linear-algebra/normest.m: Improve documentation.  Add better input
+       validation.  Use same variable names in code as in documentation.
+
+2010-07-14  Marco Caliari  <marco.caliari@univr.it>
+
+       * linear-algebra/normest.m: Set the "state" of the random number
+       generator to trace(A).
+
+2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/cell2mat.m: Optimize so as to minimize the number of
+	concats.
+
+2010-07-12  John W. Eaton  <jwe@octave.org>
+
+	* general/display.m: Print usage message if nargin != 1.
+	Bug #30421.
+
+2010-07-09  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/interp2.m: improve input argument handling and
+	allow not equally spaced griddata (bug #29601)
+
+2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Fix incorrect handling of nondefault fill
+	values in min/max reductions of integers.
+
+2010-07-07  David Bateman  <dbateman@free.fr>
+
+	* __next_line_color__.m: Allow conditional initialisation of the
+	color_rotation variable.
+	* __next_line_style__.m: Allow conditional initialisation of the
+	style_rotation variable.
+	* hold.m: Support "hold all".
+	* newplot.m: Conditionally initialisation the line style and color
+	based on the __hold_all__ axes property.
+
+2010-07-04  Soren Hauberg  <hauberg@gmail.com>
+
+	* polynomial/deconv.m: ensure that the orientation of the third
+	input to 'filter' matches the orientation of 'y'.
+
+2010-07-02  Rik  <octave@nomad.inbox5.com>
+
+	* audio/wavread.m: Correctly handle non-word aligned data chunks.
+	(bug #30309).
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* plot/stairs.m: Add additional calling forms to documentation.
+
+2010-06-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__plt__.m: Replace usage message with error.
+	* plot/loglog.m, plot/plot.m, plot/polar.m, plot/semilogx.m,
+	plot/semilogy.m: Call print_usage if no args are supplied.
+	Add additional calling forms to documentation.
+
+2010-06-24  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* plot/print.m: convert to wrapper for backend specific print functions
+	* plot/__gnuplot_print__.m: New gnuplot specific print function,
+	largely based on the former print.m
+	* plot/__fltk_print__.m: New fltk specific print function
+	* plot/__print_parse_opts__.m: New option parser for print
+	functions, largely based on the former print.m
+	* plot/module.mk: Add new m-files here
+
+2010-06-23  David Bateman  <dbateman@free.fr>
+
+	* whitebg.m: New function.
+	* module.mk (plot_FCN_FILES): Add it here.
+	* __go_draw_figure__.m: Set the border color to the inverse of the
+	background color.
+
+2010-06-17  Brad Froehle  <brad.froehle@gmail.com>
+
+	* sparse/spy.m: Fix typo.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* set/union.m: Remove seealso reference to deprecated function.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* @ftp/dir.m, @ftp/ftp.m, @ftp/mget.m, @ftp/mput.m, @ftp/rename.m,
+	deprecated/fstat.m, general/accumdim.m, general/interp1.m,
+	linear-algebra/ishermitian.m, linear-algebra/issymmetric.m,
+	miscellaneous/substruct.m, optimization/fminbnd.m,
+	optimization/fsolve.m, plot/bar.m, plot/daspect.m, plot/pbaspect.m,
+	plot/print.m, polynomial/mkpp.m, polynomial/ppval.m, set/union.m,
+	signal/unwrap.m, specfun/nthroot.m: Periodic grammar check of
+	documentation to ensure a common format.
+
+2010-06-14  Rik  <octave@nomad.inbox5.com>
+
+	* plot/image.m: Flip data, rather than y-axis, for images.  (bug #30033)
+
+2010-06-12  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/scatter.m: New demo.
+	* plot/private/__scatter__.m: Properly set default value markersize
+	and marker type.
+
+2010-06-12  Rik  <octave@nomad.inbox5.com>
+
+	* plot/scatter.m: Add new calling forms of function to documentation.
+
+2010-06-10  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__scatter__.m, plot/scatter.m: Honor Matlab color
+	settings.
+	* general/prepad.m: Fix typo 'dimm' -> 'dim'.
+
+2010-06-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/vec.m: Remove (make built-in).
+	* linear-algebra/module.mk: Update.
+
+2010-06-09  Rik  <octave@nomad.inbox5.com>
+
+	* general/flipdim.m, general/accumdim.m: Use > 1 test to find
+	first non-singleton dimension rather than != 1.
+
+2010-06-08  Rik  <octave@nomad.inbox5.com>
+
+	* general/cumtrapz.m, general/postpad.m, general/prepad.m,
+	general/shift.m, general/trapz.m, signal/unwrap.m: Use common
+	method to find first non-singleton dimension.
+
+2010-06-08  Rik  <octave@nomad.inbox5.com>
+
+	* general/rotdim.m: Modify function to use same variable names
+	as documentation.
+
+2010-06-08  Rik  <octave@nomad.inbox5.com>
+
+	* general/cart2pol.m, general/cart2sph.m, general/pol2cart.m,
+	general/sph2cart.m: Add option to operate on column matrix of
+	coordinates.
+
+2010-06-08  Rik  <octave@nomad.inbox5.com>
+
+	* general/arrayfun.m, general/cart2pol.m, general/cart2sph.m,
+	general/idivide.m, general/logspace.m, general/sph2cart.m,
+	general/structfun.m, image/imagesc.m, io/csvread.m, io/csvwrite.m,
+	linear-algebra/cond.m, linear-algebra/condest.m,
+	linear-algebra/isdefinite.m, linear-algebra/null.m,
+	linear-algebra/orth.m, miscellaneous/list_primes.m,
+	optimization/fminunc.m, optimization/fzero.m, path/matlabroot.m,
+	plot/axis.m, plot/plot.m, plot/semilogx.m, plot/semilogxerr.m,
+	plot/semilogy.m, plot/semilogyerr.m, plot/stem.m, polynomial/poly.m,
+	polynomial/polyder.m, polynomial/polyderiv.m, polynomial/polyfit.m,
+	polynomial/polyout.m, polynomial/polyval.m, set/ismember.m,
+	sparse/spfun.m, specfun/betaln.m, statistics/base/mean.m,
+	statistics/base/median.m, statistics/base/mode.m, statistics/base/ols.m,
+	statistics/base/ranks.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/wblpdf.m: Improve documentation strings
+
+2010-06-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/pkg.m: Support pkg list -forge.
+
+2010-06-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/get_forge_pkg.m: New function.
+	* pkg/module.mk: Add it here.
+	* pkg/pkg.m: Support -forge switch for auto-downloading OctaveForge
+	packages.
+
+2010-06-03  Alois Schlögl
+
+	* signal/arch_test.m, statistics/tests/bartlett_test.m,
+	statistics/tests/chisquare_test_homogeneity.m,
+	statistics/tests/chisquare_test_independence.m,
+	statistics/tests/manova.m, statistics/tests/mcnemar_test.m,
+	statistics/tests/run_test.m, statistics/distributions/chi2pdf.m:
+	Replace calls to obsolete chisquare_cdf with chi2cdf.
+
+2010-06-03  Rik  <octave@nomad.inbox5.com>
+
+	* plot/private/__plt__.m: Add newline to usage message.
+
+2010-06-02  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/sqp.m: Overhaul sqp code.
+	Guarantee equivalent results if sqp called with or wihout bounds
+	(bug #29989).  Simplify input option handling and add %tests
+	to check validation code.  Rewrite documentation string.
+
+2010-06-01  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/fminbnd.m: Remove unused persistent variable.
+
+2010-06-01  Rik  <octave@nomad.inbox5.com>
+
+	* plot/private/__contour__.m: Correctly size X and Y when only Z
+	specified (bug #30002).
+
+2010-05-31  Rik  <octave@nomad.inbox5.com>
+
+	* specfun/legendre.m: Orient row vector correctly (bug #29997).
+	Add input validation for negative values and %tests to check
+	validation routines.
+
+2010-05-30  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/svds.m: Overhaul code.
+	Return smallest singular values if sigma == 0 (Bug #29721).
+	Avoid calculating U and V matrices unless requested.
+	Correctly handle zero matrix input.
+	Improve documentation string.
+
+2010-05-26  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/base/histc.m, statistics/base/iqr.m,
+	statistics/base/kurtosis.m, statistics/base/mode.m,
+	statistics/base/ranks.m, statistics/base/run_count.m,
+	statistics/base/skewness.m, statistics/base/statistics.m,
+	statistics/base/studentize.m: Improve validation of input arguments.
+
+2010-05-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/isprime.m: Fix and further optimize.
+
+2010-05-26  Rik  <octave@nomad.inbox5.com>
+
+	* plot/legend.m: Improve documentation string.
+
+2010-05-26  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/svds.m: Check struct input arguments.  Overhaul documentation.
+
+2010-05-26  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Key labels for specified objects.
+	* plot/ancestor.m: Support vectors of handles.
+
+2010-05-26  Rik  <octave@nomad.inbox5.com>
+
+	* sparse/svds.m: Initialize ARPACK starting vector in svds test code.
+	Bug #29721.
+
+2010-05-25  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/spline.m: Ignore NaNs within input vectors.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/primes.m: Use logical masks rather than numeric.
+	* specfun/isprime.m: Rewrite using isprime.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/unimplemented.m: Don't mention onCleanup (supported).
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/median.m: Ensure NaNs where needed. Simplify first
+	non-singleton dimension computation.
+
+2010-05-24  Rik  <octave@nomad.inbox5.com>
+
+	* general/private/__isequal__.m, image/image.m,
+	statistics/base/ranks.m: Replace calls to deprecated functions.
+
+2010-05-23  Rik  <octave@nomad.inbox5.com>
+
+	* image/imshow.m: Scale image point color according to colormap.
+	Bug #29926.
+
+2010-05-16  Rik  <octave@nomad.inbox5.com>
+
+	* plot/semilogx.m, plot/semilogy.m: Plot minor ticks for semilog plots.
+
+2010-05-16  Rik  <octave@nomad.inbox5.com>
+
+	* audio/loadaudio.m, audio/playaudio.m, audio/saveaudio.m,
+	audio/wavread.m, general/bicubic.m, general/bitcmp.m, general/bitget.m,
+	general/bitset.m, general/cplxpair.m, general/del2.m,
+	general/gradient.m, general/interp2.m, general/interp3.m,
+	general/interpn.m, general/postpad.m, general/prepad.m,
+	general/private/__splinen__.m, image/image_viewer.m, image/imagesc.m,
+	image/saveimage.m, linear-algebra/expm.m, linear-algebra/krylov.m,
+	miscellaneous/edit.m, miscellaneous/private/__xzip__.m,
+	miscellaneous/what.m, optimization/glpk.m, optimization/optimset.m,
+	optimization/pqpnonneg.m, path/pathdef.m, plot/__go_draw_axes__.m,
+	plot/__marching_cube__.m, plot/gnuplot_drawnow.m, plot/ishold.m,
+	plot/isocolors.m, plot/isonormals.m, plot/print.m,
+	plot/private/__add_datasource__.m, plot/private/__color_str_rgb__.m,
+	plot/private/__errplot__.m, plot/private/__interp_cube__.m,
+	plot/shading.m, plot/specular.m, polynomial/deconv.m,
+	polynomial/polyint.m, polynomial/ppint.m, set/powerset.m,
+	signal/arch_fit.m, signal/arch_test.m, signal/durbinlevinson.m,
+	special-matrix/hadamard.m, statistics/distributions/unidrnd.m,
+	statistics/distributions/unifinv.m,
+	statistics/models/logistic_regression.m, strings/strjust.m,
+	testfun/rundemos.m, testfun/runtests.m, testfun/test.m, time/datenum.m:
+	Print name of function in error() string messages.
+
+2010-05-16  Rik  <octave@nomad.inbox5.com>
+
+	* plot/contourc.m, plot/private/__contour__.m,
+	plot/surface.m, plot/surfnorm.m: Check input
+	arguments for size and type (bug #29861).
+
+2010-05-13  John W. Eaton  <jwe@octave.org>
+
+	* help/help.m: Avoid unnecessary use of varargout.
+
+2010-05-13   Qianqian Fang  <fangq>
+
+	* miscellaneous/tempdir.m: Add filesep to end of tempdir (bug #29864).
+
+2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/textread.m: Fix typo.
+
+2010-05-08  David Gesswein  <djg@pdp8online.com>
+
+	* io/dlmwrite.m: Correctly set output precision (#29870).
+
+2010-05-12  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* help/help.m: Allow docstring to be returned as output, and
+	correct docstring.
+
+2010-05-08  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/test.m: Don't abort testing when skipping a testif block
+
+2010-05-05  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/tests/cor_test.m, statistics/tests/t_test.m,
+	statistics/tests/t_test_2.m, statistics/tests/t_test_regression.m,
+	statistics/tests/welch_test.m: Replace deprecated function calls.
+	Patch provided by Alois Schlögl.
+
+2010-05-02  Rik  <octave@nomad.inbox5.com>
+
+	* linear-algebra/cond.m: Add TeX equation to documentation
+
+2010-05-02  Peter van den Biggelaar  <peter@biglr.net>
+
+	* plot/close.m: No error on "close([])".
+
+2010-05-01  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Remove gnuplot errorbar code.
+
+2010-04-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/loglogerr.m, plot/semilogxerr.m, plot/semilogyerr.m:
+	Add demos.
+	* plot/private/__errplot__.m: Fix bug parsing errorbar style.
+	* plot/private/__errplot__.m: Implement errorbars in the Matlab style.
+
+2010-04-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/errorbar.m: Modify demo.
+	* plot/private/__errplot__.m: Fix bug for boxxy errorbar.
+	* plot/errorbar.m: Add demos.
+
+2010-04-27  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__errplot__.m: Update the marker in a seperate
+	listener function.
+
+2010-04-27  Rik  <octave@nomad.inbox5.com>
+
+	* plot/private/__go_draw_axes__.m: Use "." for marker when plotting
+	with errorbars.  (bug #29057)
+
+2010-04-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__errplot__.m: Add missing semicolon line terminations.
+
+2010-04-27  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__default_plot_options_.m: New option errorstyle.
+	* plot/private/__pltopt__.m: Use errorstyle here seperately from
+	the linestyle so that both can be set.
+	* plot/private/__errcomm__.m: Allow for the fact that matrices
+	to __errplot__ with return a vector of handles.
+	* plot/private/__errplot__.m: Allow for default linestyles.
+
+	* plot/private/__errplot__.m: Set the errorbar marker to "none".
+
+2010-04-26  David Bateman  <dbateman@free.fr>
+
+	* plot/bar.m: Document the use of the colormap for the color of
+	the bars.
+
+	* plot/private/__errplot__.m: Allow x, box and xy errorbars with
+	different syntax.
+
+	* plot/private/__errplot__.m: Allow matlab style linestyles, and
+	support setting the markers.
+
+2010-04-24  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__patch__.m: Correct order of calling setdata and
+	setvertexdata.
+
+2010-04-25  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/__go_draw_figure__.m: Hidden axes may have visible children.
+
+2010-04-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Set figure color property to 'none' when printing.
+
+2010-04-24  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Correct fill of diamond markers
+
+2010-04-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Consistent placement of axes for ps vs
+	other gnuplot terminals.
+
+2010-04-23  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m: Fix colorbar() bugs for manual plotboxaspectratio.
+	* plot/axis.m: For 'axis normal' restore plotboxaspectratio.
+
+2010-04-23  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc (extract_help_text): Use C++ static_cast instead of
+	C-style cast.
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* audio/loadaudio.m, audio/mu2lin.m, audio/playaudio.m,
+	audio/saveaudio.m, audio/wavread.m, audio/wavwrite.m,
+	deprecated/cellidx.m, deprecated/intwarning.m,
+	deprecated/lchol.m, deprecated/spatan2.m, deprecated/spchol.m,
+	deprecated/spchol2inv.m, deprecated/spcholinv.m,
+	deprecated/spcumprod.m, deprecated/spcumsum.m,
+	deprecated/spdet.m, deprecated/spdiag.m, deprecated/spfind.m,
+	deprecated/spinv.m, deprecated/spkron.m, deprecated/splchol.m,
+	deprecated/split.m, deprecated/splu.m, deprecated/spmax.m,
+	deprecated/spmin.m, deprecated/spprod.m, deprecated/spqr.m,
+	deprecated/spsum.m, deprecated/spsumsq.m, elfun/lcm.m,
+	general/bicubic.m, general/cell2mat.m, general/circshift.m,
+	general/cplxpair.m, general/cumtrapz.m, general/dblquad.m,
+	general/del2.m, general/gradient.m, general/idivide.m,
+	general/int2str.m, general/interp1.m, general/interp2.m,
+	general/interp3.m, general/interpn.m, general/isa.m,
+	general/num2str.m, general/postpad.m, general/prepad.m,
+	general/private/__isequal__.m, general/quadgk.m,
+	general/quadl.m, general/quadv.m, general/rat.m,
+	general/rotdim.m, general/shift.m, general/sortrows.m,
+	general/structfun.m, general/trapz.m, geometry/griddata.m,
+	geometry/griddata3.m, geometry/inpolygon.m, geometry/rectint.m,
+	geometry/trimesh.m, geometry/triplot.m, geometry/trisurf.m,
+	geometry/voronoi.m, help/doc.m, help/help.m, help/which.m,
+	io/dlmwrite.m, io/strread.m, linear-algebra/condest.m,
+	linear-algebra/cross.m, linear-algebra/krylov.m,
+	linear-algebra/null.m, linear-algebra/onenormest.m,
+	linear-algebra/orth.m, linear-algebra/rank.m,
+	linear-algebra/rref.m, miscellaneous/bincoeff.m,
+	miscellaneous/cast.m, miscellaneous/compare_versions.m,
+	miscellaneous/copyfile.m, miscellaneous/dir.m,
+	miscellaneous/dump_prefs.m, miscellaneous/edit.m,
+	miscellaneous/fileattrib.m, miscellaneous/fileparts.m,
+	miscellaneous/fullfile.m, miscellaneous/license.m,
+	miscellaneous/ls.m, miscellaneous/ls_command.m,
+	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
+	miscellaneous/orderfields.m, miscellaneous/perl.m,
+	miscellaneous/run.m, miscellaneous/substruct.m,
+	miscellaneous/swapbytes.m, miscellaneous/tar.m,
+	miscellaneous/unpack.m, miscellaneous/what.m,
+	miscellaneous/zip.m, optimization/fminunc.m,
+	optimization/fsolve.m, optimization/glpk.m, optimization/qp.m,
+	optimization/sqp.m, path/pathdef.m, path/savepath.m, pkg/pkg.m,
+	plot/__gnuplot_get_var__.m, plot/__gnuplot_ginput__.m,
+	plot/__go_draw_axes__.m, plot/__next_line_color__.m,
+	plot/__next_line_style__.m, plot/__plt_get_axis_arg__.m,
+	plot/ancestor.m, plot/area.m, plot/axes.m, plot/axis.m,
+	plot/box.m, plot/cla.m, plot/clabel.m, plot/clf.m, plot/close.m,
+	plot/colorbar.m, plot/comet.m, plot/compass.m, plot/contourf.m,
+	plot/cylinder.m, plot/ellipsoid.m, plot/feather.m, plot/fill.m,
+	plot/findobj.m, plot/fplot.m, plot/gnuplot_drawnow.m,
+	plot/grid.m, plot/gtext.m, plot/hidden.m, plot/hist.m,
+	plot/hold.m, plot/ishold.m, plot/isonormals.m,
+	plot/isosurface.m, plot/legend.m, plot/linkprop.m, plot/meshz.m,
+	plot/newplot.m, plot/pareto.m, plot/pie.m, plot/plot3.m,
+	plot/plotmatrix.m, plot/plotyy.m, plot/polar.m,
+	plot/private/__actual_axis_position__.m,
+	plot/private/__add_datasource__.m,
+	plot/private/__axes_limits__.m, plot/private/__axis_label__.m,
+	plot/private/__bar__.m, plot/private/__clabel__.m,
+	plot/private/__contour__.m, plot/private/__errcomm__.m,
+	plot/private/__errplot__.m, plot/private/__ezplot__.m,
+	plot/private/__patch__.m, plot/private/__plt__.m,
+	plot/private/__pltopt__.m, plot/private/__quiver__.m,
+	plot/private/__scatter__.m, plot/private/__stem__.m,
+	plot/refreshdata.m, plot/ribbon.m, plot/rose.m, plot/slice.m,
+	plot/sombrero.m, plot/sphere.m, plot/stairs.m, plot/subplot.m,
+	plot/surf.m, plot/surface.m, plot/surfl.m, plot/surfnorm.m,
+	plot/text.m, plot/view.m, polynomial/polyderiv.m,
+	polynomial/polygcd.m, polynomial/polyout.m, polynomial/spline.m,
+	set/intersect.m, set/setdiff.m, set/setxor.m, signal/unwrap.m,
+	sparse/pcg.m, sparse/pcr.m, sparse/spaugment.m,
+	sparse/spconvert.m, sparse/sprand.m, sparse/sprandsym.m,
+	sparse/svds.m, sparse/treelayout.m, sparse/treeplot.m,
+	specfun/nchoosek.m, specfun/primes.m, special-matrix/toeplitz.m,
+	statistics/base/iqr.m, statistics/base/kurtosis.m,
+	statistics/base/qqplot.m, statistics/base/quantile.m,
+	statistics/base/ranks.m, statistics/base/run_count.m,
+	statistics/base/skewness.m, statistics/base/statistics.m,
+	statistics/base/studentize.m, statistics/base/var.m,
+	statistics/distributions/betapdf.m,
+	statistics/distributions/betarnd.m,
+	statistics/distributions/binocdf.m,
+	statistics/distributions/binoinv.m,
+	statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/fcdf.m,
+	statistics/distributions/finv.m,
+	statistics/distributions/fpdf.m,
+	statistics/distributions/frnd.m,
+	statistics/distributions/gampdf.m,
+	statistics/distributions/gamrnd.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/hygepdf.m,
+	statistics/distributions/laplace_inv.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/nbincdf.m,
+	statistics/distributions/nbininv.m,
+	statistics/distributions/nbinpdf.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/normrnd.m,
+	statistics/distributions/poissinv.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/tinv.m,
+	statistics/distributions/tpdf.m,
+	statistics/distributions/trnd.m,
+	statistics/distributions/unidrnd.m,
+	statistics/distributions/unifrnd.m,
+	statistics/distributions/wblpdf.m,
+	statistics/distributions/wblrnd.m, strings/cstrcat.m,
+	strings/deblank.m, strings/findstr.m, strings/isstrprop.m,
+	strings/regexptranslate.m, strings/strtok.m, testfun/assert.m,
+	testfun/example.m, testfun/fail.m, testfun/rundemos.m,
+	testfun/runtests.m, testfun/speed.m, testfun/test.m,
+	time/datestr.m, time/weekday.m: Untabify.
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* geometry/griddata.m, geometry/griddatan.m, geometry/tsearchn.m:
+	Replace nan with NaN for nice visual cue.
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/gplot.m: Eliminate parsing error for NaN inside
+	of matrix declaration.
+
+2010-04-22  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/sqp.m: Return correct value (101) on succes.
+	Fixes bug #29577.
+
+2010-04-22  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/glpk.m: Eliminate repmat (Inf, x , y) and just
+	use Inf (x,y).
+
+2010-04-22  Rik  <octave@nomad.inbox5.com>
+
+	* general/rat.m, sparse/gplot.m, strings/base2dec.m,
+	geometry/triplot.m, optimization/sqp.m, optimization/qp.m,
+	statistics/base/run_count.m, statistics/base/ranks.m:
+	Eliminate NaN*ones and Inf*ones constructs and just use Nan()
+	and Inf().
+
+2010-04-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m: Allow 'peer' option to be specified.
+	* plot/colorbar.m: Consistent treatment of plotboxaspectratio, and
+	add listener for plotboxaspectratiomode.
+	* plot/axis.m: Consistent treatment of plotboxaspectratio.
+	* plot/__go_draw_axes__.m: Consistently determine axes position.
+
+2010-04-17  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/private/__actual_axis_position__.m: Fix bug when restoring
+	figure position property to its original value.
+
+2010-04-16  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_figure__.m: Pass bg_is_set to __go_draw_axes__. Don't
+	unset the background figure color.
+	* plot/__go_draw_axes__.m: Unset the background figure color here.
+
+	* statistics/distributions/*: Replace constructs like "NaN * one()"
+	with "NaN()" and  "Inf * ones ()" with "Inf()".
+
+2010-04-15  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/discrete_pdf.m: Reimplement using lookup.
+	* statistics/distributions/discrete_inv.m: Reimplement using lookup.
+	* statistics/distributions/discrete_cdf.m: typo in last patch.
+
+2010-04-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/distributions/stdnormal_cdf.m: Calculate using erfc.
+
+2010-04-13  David Bateman  <dbateman@free.fr>
+
+	* statistics/discrete_cdf.m: Reimplement using lookup.
+
+2010-04-13  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* plot/__fltk_ginput__.m: New functions, implement ginput for
+	fltk backend.
+
+2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* sparse/spalloc.m: Remove.
+	* sparse/module.mk: Update.
+
+2010-04-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/plotyy.m: Add listener for dataaspectratiomode.
+
+2010-04-12  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/loglog.m: Minor ticks on by default for loglog plots.
+	* plot/__plt_get_axis_arg__.m, plot/newplot.m: Respect the nextplot
+	property value of 'new' for axes and 'replacechildren' for axes and
+	figures.
+
+2010-04-10  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/__go_draw_figure__.m: Don't set background for non-visible axes.
+
+2010-04-07  John W. Eaton  <jwe@octave.org>
+
+	* testfun/runtests.m: New function.
+	* testfun/module.mk (testfun_FCN_FILES): Add it to the list.
+
+2010-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* statistics/cut.m: Modify cut to use the same decision criteria
+	as histc when deciding whether a data point is inside or outside
+	interval.
+
+2010-04-02  Marc Vinyals  <mrc_timer@users.sourceforge.net>
+
+	* signal/arma_rnd.m: fix typo in test.
+
+2010-04-02  Marc Vinyals  <mrc_timer@users.sourceforge.net>
+
+	* signal/arma_rnd.m: fix typo in test.
+
+2010-03-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/factor.m: Use rem to check divisibility.
+
+2010-03-27  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/__go_draw_figure__.m: Untabify.
+	* plot/print.m: Provide default suffixes & validate hardcopy format.
+
+2010-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: Handle the breakdown if initial bracketing
+	contains an exact root. Improve docstring.
+
+2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/module.mk: Add unimplemented.m here.
+
+2010-03-25  Ben Abbott  <bpabbot@mac.com>
+
+	* general/cell2mat.m: Add test for cells of cells.
+
+2010-03-24  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/__go_draw_axes__.m: Unset logscale also for unused gnuplot
+	axis locations.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help/help.m: Maybe warn about unimplemented Matlab functions.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/unimplemented.m: New function.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/cell2mat.m: Support cells of cells.
+
+2010-03-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/refreshdata.m: Don't use cell2mat on cell array of cell arrays.
+
+2010-03-22  Soren Hauberg  <hauberg@gmail.com>
+
+	* image/gmap40.m, image/hot.m, image/hsv2rgb.m, image/image.m,
+	image/image_viewer.m, image/imfinfo.m, image/imread.m, image/imshow.m,
+	image/saveimage: Detabify.
+
+2010-03-21  Soren Hauberg  <hauberg@gmail.com>
+
+	* general/quadv.m: Replace 'quadl' with 'quadv' in help text.
+
+2010-03-20  Soren Hauberg  <hauberg@gmail.com>
+
+	* general/interp2.m: For nearest neighbour interpolation ceil
+	(instead of floor) at the center of the data intervals to be
+	compatible with Matlab.  Add test.
+	* general/interpn.m: Ditto.
+
+2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strmatch.m (strtrimr): Rewrite for correct behavior.
+	Add test.
+
+2010-03-18  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/print.m: Add '-append' option.
+
+2010-03-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: print.m: Detabify.
+
+2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/nthroot.m: Remove.
+	* general/module.mk: Update.
+	* specfun/nthroot.m: New source.
+	* specfun/module.mk: Update.
+
+2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/intwarning.m: Deprecate.
+
+2010-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/index.m: Make it a wrapper for strfind.
+
+2010-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strchr.m: Optimize.
+
+2010-03-05  Soren Hauberg  <hauberg@gmail.com>
+
+	* pkg/pkg.m (write_index): include classes in autogenerated
+	INDEX files.
+
+2010-03-05  Soren Hauberg  <hauberg@gmail.com>
+
+	* plot/fplot.m: Ensure that 'limits' is a 2 or 4 vector, and
+	that 'fn' is a function.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* testfun/test.m: Support catching warnings and errors by IDs.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumdim.m: Optimize the summation case.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumdim.m: New function.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: Avoid division by zero.
+
+2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminbnd.m: Fix tests.
+
+2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminbnd.m: Fix termination tolerances.
+
+2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/convn.m: Remove.
+	* polynomial/module.mk: Update.
+
+2010-02-28  John W. Eaton  <jwe@octave.org>
+
+	* set/unique.m: If the argument is sparse and we are not
+	operating on rows and we don't need indices, convert nonzero
+	elements to a full matrix and work on that instead, converting
+	back to sparse when done.
+
+2010-02-28  John W. Eaton  <jwe@octave.org>
+
+	* set/unique.m: Return 0x1 arrays for empty arrays with some
+	nonzero dimensions.  Return object with the same class as the
+	argument.  New tests.
+
+2010-02-27  Liam Groener  <liamg@mac.com>
+
+	* time/datetick.m: Fix 'keepticks' bug, and untabify.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/str2double.m: Remove.
+
+2010-02-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/private/__contour__.m (get_lvl_eps): New function.
+	Handle case of single level value.  Use sqrt (eps) instead of 1e-6.
+	(update_text, add_patch_children): Use it.
+
+2010-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* optimization/fzero.m: Add test for discontinuity at the end.
+
+2010-02-18  John W. Eaton  <jwe@octave.org>
+
+	* image/imfinfo.m: Don't handle file time stamp here.
+
+2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/center.m: Convert integer inputs to doubles.
+
+2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp2: Slightly optimize linear interpolation.
+
+2010-02-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp2: Remove debug stub.
+
+2010-02-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/optimget.m: Simplify.
+
+2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/parseparams.m: Extend to allow direct parsing of
+	options.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminbnd.m: Undocument impossible info values.
+	* optimization/fzero.m: Ditto.
+
+	* optimization/fzero.m: Make default TolX consistent with fminbnd.
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminbnd.m: New function.
+	* optimization/module.mk: Add it here.
+	* optimization/fzero.m: Make default TolX consistent with fminbnd.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/private/__isequal__.m: Remove list-related stub.
+
+2010-02-09  John W. Eaton  <jwe@octave.org>
+
+	* image/imshow.m: Allow logical values for images.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Use != instead of diff to compare indices in
+	dense case. Set explicit mode in sparse case to aid optimization.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/menu.m: Use sscanf rather than eval.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/substruct.m: Vectorize.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Document complexity.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Add new test that also forces index cache
+	generation for faster sorting.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: 1 more small fix.
+
+2010-02-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Small fixes.
+
+2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Rewrite. Split sparse and dense case. Treat
+	cell-valued subs efficiently. Optimize dense case for @sum, @max and
+	@min. Optimize the @(x){x} reduction. Add tests.
+
+2010-02-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/dir.m: Fix month passed to datenum.
+
+2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/private/__isequal__.m: Handle function handles.
+
+2010-02-01  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m (get_old_gnuplot_color): Remove as
+	no longer used (for gnuplot 4.0).
+
+	* plot/private/__scatter__.m: Treat "flat" colored patches as
+	a single patch.
+	* plot/__go_draw_axes__.m: If a patch object is flat, treat its
+	outline with the gnuplot "palette".
+
+2010-01-30  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* statistics/tests/kruskal_wallis_test.m: Replace chisquare_cdf
+	by chi2cdf.
+
+2010-01-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/axis.m, plot/__go_draw_axes__.m, plot/colorbar.m,
+	plot/isocolors.m, plot/isonormals.m, plot/isosurface.m,
+	plot/plotyy.m, plot/polar.m, plot/surfl.m,
+	plot/private/__actual_axis_position.m:
+	Replace dataaspectratio and dataaspectratiomode properties with
+	plotboxaspectratio and plotboxaspectratio properties.
+
+2010-01-29  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/compan.m, polynomial/conv.m, polynomial/deconv.m,
+	polynomial/mpoles.m, polynomial/polyderiv.m,
+	polynomial/polygcd.m, polynomial/polyout.m,
+	polynomial/polyreduce.m, polynomial/polyval.m,
+	polynomial/polyvalm.m, polynomial/residue.m:
+	Point to polyint in @seealso, not polyinteg.
+
+	* deprecated/module.mk (deprecated_FCN_FILES):
+	Remove delete files from the list.
+
+	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
+	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
+	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
+	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
+	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
+	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
+	deprecated/clearplot.m, deprecated/com2str.m,
+	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
+	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
+	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
+	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
+	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
+	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
+	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
+	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
+	deprecated/hypergeometric_inv.m,
+	deprecated/hypergeometric_pdf.m,
+	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
+	deprecated/is_bool.m, deprecated/is_complex.m,
+	deprecated/is_list.m, deprecated/is_matrix.m,
+	deprecated/is_scalar.m, deprecated/is_square.m,
+	deprecated/is_stream.m, deprecated/is_struct.m,
+	deprecated/is_symmetric.m, deprecated/is_vector.m,
+	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
+	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
+	deprecated/meshdom.m, deprecated/normal_cdf.m,
+	deprecated/normal_inv.m, deprecated/normal_pdf.m,
+	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
+	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
+	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
+	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
+	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
+	deprecated/struct_contains.m, deprecated/struct_elements.m,
+	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
+	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
+	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
+	deprecated/uniform_rnd.m, deprecated/weibull_cdf.m,
+	deprecated/weibull_inv.m, deprecated/weibull_pdf.m,
+	deprecated/weibull_rnd.m, deprecated/wiener_rnd.m:
+	Delete functions deprecated in version 3.0.0.
+
+	* deprecated/weibcdf.m, deprecated/weibinv.m,
+	deprecated/weibpdf.m, deprecated/weibrnd.m:
+	Note that Matlab still has these functions, so they probabl
+	should not be removed with other functions deprecated in 3.0.0.
+
+2010-01-28  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/daspect.m, plot/pbaspect.m: New functions.
+
+2010-01-28  John W. Eaton  <jwe@octave.org>
+
+	* general/Makefile.am (general_FCN_FILES): Add chop.m to the list.
+
+2010-01-28  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/isstr.m, deprecated/clg.m, deprecated/setstr.m:
+	Note that Matlab still has these functions, so they probabl
+	should not be removed with other functions deprecated in 3.0.0.
+
+2010-01-27  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* plot/gnuplot_drawnow.m: Add "emf" to the list of enhanced
+	terminals for the gnuplot backend.
+
+2010-01-26  John W. Eaton  <jwe@octave.org>
+
+	* general/chop.m: New function.
+
+2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Support TypicalX, autoscale only if
+	AutoScaling is on, off by default. Fix default tolerances.
+	* optimization/fminunc.m: Support TypicalX, autoscale only if
+	AutoScaling is on, off by default Fix default tolerances..
+	* optimization/private/__fdjac__.m: Accept typicalx as a parameter.
+
+2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/pqpnonneg.m: If Cholesky update failed, switch off
+	updating but continue.
+
+2010-01-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/pkg.m: More complement -> setdiff changes.
+
+2010-01-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/pkg.m: Use setdiff rather than complement.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc: Untabfy.
+
+2010-01-20  Ben Abbott  <bpabbot@mac.com>
+
+	* plot/__go_draw_figure__.m: Reverse order axes are drawn.
+
+2010-01-20  David Bateman  <dbateman@free.fr>
+
+	* plot/private/__contour__.m: Set default linestyle if pltopt returns
+	an empty style.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* time/datetick.m: Make form arg optional.
+	From Philip Nienhuis  <pr.nienhuis@hccnet.nl>.
+
+2010-01-20  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Correct an error in drawing of patch
+	objects where unrequested markers were drawn.
+
+	* plot/__go_draw_figure__.m: Also plot white foreground and
+	background colors.
+	* plot/plotyy.m: Set axes colors to "none".
+
+	* plot/__go_draw_axes__.m (next_marker):  Remove and all uses of
+	this function.
+	Partially respect the markeredgecolor and markerfacecolor properties.
+	* plot/private/__color__str_rgb__.m: New function
+	* plot/module.mk: Add it here.
+	* plot/__next_line_style__.m: New function selected next line style
+	using the axes linestyleorder property.
+	* plot/__next_line_color.m: Increment next line style here.
+	* plot/newplot.m: Reset next line style here.
+	* plot/module.mk: Add __next_line_style__.m here.
+	* plot/plot3.m: Use __next_line_style__ here.
+	* plot/private/plt.m: And here.
+	* plot/private/stem.m: And here.
+	* plot/private/scatter.m: And here. Correctly handle nargin == 3. Use
+	matlab compatible edgecolor, markeredgecolor and markerfacecolor
+	property values.
+	* plot/private/pltopt.m: Remove "@" marker as an option.
+	* plot/private/__default_plot_options__.m: Default plot options
+	are empty signalling that __next_line_color__ and
+	__next_line_style should be used.
+
+2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/structfun.m: Error when invalid options are specified.
+
+2010-01-19  Jaroslav Hajek  <highegg@gmail.com>, Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/structfun.m: Correctly support multiple arguments with
+	non-uniform output. Correct test for non-uniform output.
+
+2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help/print_usage.m: Try determining whether called from top level.
+	If not, don't print additional help and enable backtrace instead.
+
+2010-01-18  John W. Eaton  <jwe@octave.org>
+
+	* testfun/test.m: Undo previous change.
+
+2010-01-18  David Grundberg  <davidg@cs.umu.se>
+
+	* testfun/test.m: Append endfunction to function test blocks.
+
+2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/celldisp.m: Add example, add demo.
+
+	* general/structfun.m, miscellaneous/getfield.m,
+	miscellaneous/orderfields.m, miscellaneous/setfield.m,
+	miscellaneous/substruct.m: Update documentation string.
+
+2010-01-16  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m (next_marker):  New function to find a
+	new marker. Use it to support the "@" marker.
+	* plot/private/__pltopt__.m: Don't convert "@" marker ro "+";
+
+2010-01-15  David Bateman  <dbateman@free.fr>
+
+	plot/__go_draw_figure__.m: Respect the figure and axes color
+	properties.
+
+2010-01-14  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m:  Fix for markerfacecolor and
+	markeredgecolor for unfillable points like '+'.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/fileread.m: Add missing semicolon.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strcmpi.m: Remove.
+	* strings/strncmpi.m: Remove.
+	* strings/module.mk: Update.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/inputname.m: Use isvarname instead of regexp.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/inputname.m: Return "" if argument name is not a
+	valid identifier.  Update docstring.
+
+2010-01-12  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes_.m:  Allow patch markerfacecolor and
+	markeredgecolor properties to be used and set the marker colors
+	appropriately.
+
+2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
+	    Ben Barrowes  <benjamin.e.barrowes@usace.army.mil>
+
+	* set/private/validargs.m: New function.
+	* set/module.mk: Add it here.
+	* set/ismember.m: Use it here.
+	* set/intersect.m: Ditto.
+	* set/union.m: Ditto.
+	* set/setdiff.m: Ditto.
+	* set/setxor.m: Ditto.
+
+2010-01-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Update DOCSTRINGS rules to avoid
+	simple_move_if_change_rule and allow Make to update timestamps.
+
+2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/private/__scatter__.m: Use patch objects instead of lines,
+	switch at 100 points.
+
+2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/private/__scatter__.m: Fix typos.
+
+2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/fileread.m: New source.
+
+2010-01-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/private/__scatter__.m: Use alternative strategy for larger
+	point sets.
+
+2010-01-06  Ben Abbott  <bpabbott@mac.com>
+
+	* optimization/qp.m: Add missing semicolon.
+
+2010-01-11  Ben Barrowes  <benjamin.e.barrowes@usace.army.mil>
+
+	* set/: allow set scripts to handle cell inputs
+
+2010-01-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/qp.m: Supply default values on request and register
+	options.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* qp.m: Allow linear term and constraint arguments to be
+	optional.
+
+2010-01-05  Joshua Redstone  <redstone@gmail.com>
+
+	* qp.m: Handle optimset options struct argument.
+
+2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strmatch.m: Optimize.
+
+2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strrep.m: Remove.
+	* strings/module.mk: Update.
+
+2010-01-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Support old style jacobian passing.
+
+2010-01-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/powerset.m: New function.
+	* set/module.mk: Include it.
+
+2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/common_size.m: Use named function rather than a handle.
+
+2009-12-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/complement.m: Deprecate.
+
+2009-12-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strcat.m: Further simplify.
+
+2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/common_size.m: Optimize.
+
+2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strcat.m: Vectorize.
+
+2009-12-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/xor.m: Optimize.
+
+2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/issquare.m: Do not check type.
+	* linear-algebra/issymmetric.m: Strengthen test.
+	* linear-algebra/ishermitian.m: Strengthen test.
+
+2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strfind.m: Remove.
+	* strings/module.mk: Update.
+
+2009-12-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strjust.m: Rewrite.
+
+2009-12-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strjust.m: Special-case string and empty argument.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
+	variables of top_builddir and top_srcdir.
+
+2009-12-18  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Use Automake syntax to build helper program gethelp
+
+2009-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* testfun/test.m: Add newline to message output.
+
+2009-12-14  John W. Eaton  <jwe@octave.org>
+
+	* specfun/isprime.m: Produce logical result.  Error if nargin > 1.
+	New tests.
+
+2009-12-14  John W. Eaton  <jwe@octave.org>
+
+	* help/__makeinfo__.m: Use fullfile to concatenate file name
+	components.  Use hyphens instead of underscores in tmp file name.
+
+2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help/__makeinfo__.m: Use P_tmpdir to create temporary file.
+
+2009-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* polynomial/module.mk: Correct typo and distribute newly
+	created ppder.m.
+
+2009-12-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ppder.m: New function.
+	* ppint.m: New function.
+	* ppjumps.m: New function.
+
+2009-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: remove install-images target and use automake
+	syntax to distribute image data.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (DOCSTRINGS): Use $(cp_update_rule) instead of
+	cp -a --update.
+
+2009-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Copy DOCSTRINGS from srcdir to builddir if it does not
+	exist.  Enables VPATH builds.
+
+2009-12-08  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/gnuplot_drawnow.m: Prune prompt lines from dumb terminal output.
+	* plot/__go_draw_figure__.m: Add missing 'unset multiplot' to restore
+	hotkey and mouse functionality for 2D plots.
+
+2009-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Distribute DOCSTRINGS in tar.gz file.
+	* mkdoc: Pass current directory, "./", when running mkdoc on
+	local files.
+
+2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp1q.m: Use more optimal code.
+
+2009-12-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (DOCSTRINGS): Depend on $(GEN_FCN_FILES) instead
+	of $(FCN_FILES_IN).  Pass $(GEN_FCN_FILES) to mkdoc instead of
+	$(FCN_FILES_IN).  Use mv instead of $(simple_move_if_change_rule).
+	(EXTRA_DIST): Include  $(GEN_FCN_FILES) in the list.
+
+2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp1.m: Allow discontinuities (jumps) for the
+	"nearest" and "linear" methods.  Document the feature and add a
+	few tests.
+
+2009-12-06  Rik  <rik@nomad.inbox5.com>
+
+	* Makefile.am: Distribute DOCSTRINGS so that documentation will
+	not require rebuild after merely untarring a distribution.
+	* mkdoc: Change output to refer to mfiles as "scripts/..." rather than
+	"$srcdir/...".  Otherwise, distributed DOCSTRINGS file will not match
+	DOCSTRINGS created under a VPATH build and documentation will be
+	unnecessarily rebuilt.
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/ismember.m: Simplify.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* audio/wavwrite.m: Delete generated a.wav file after each test.
+
+	* Makefile.am (DIRSTAMP_FILES, DISTCLEANFILES): New variables.
+	(DOCSTRINGS): Also depend on $(FCN_FILES_IN).  Pass
+	$(FCN_FILES_IN) to mkdoc instead of $(GEN_FCN_FILES).  Tell mkdoc
+	to look for $(FCN_FILES_IN) files in $(srcdir), not build
+	directory.
+	(DISTCLEANFILES): New variable.
+	Don't silence dirstamp, DOCSTRINGS, $(GEN_FCN_FILES), and PKG_ADD
+	rules.
+
+	* audio/module.mk, deprecated/module.mk, elfun/module.mk,
+	help/module.mk, general/module.mk, geometry/module.mk,
+	image/module.mk, io/module.mk, linear-algebra/module.mk,
+	miscellaneous/module.mk, @ftp/module.mk, optimization/module.mk,
+	path/module.mk, pkg/module.mk, plot/module.mk,
+	polynomial/module.mk, set/module.mk, signal/module.mk,
+	sparse/module.mk, specfun/module.mk, special-matrix/module.mk,
+	startup/module.mk, statistics/base/module.mk,
+	statistics/distributions/module.mk, statistics/models/module.mk,
+	statistics/tests/module.mk, strings/module.mk, testfun/module.mk,
+	time/module.mk: Append to DIRSTAMP_FILES.
+
+2009-12-02  Rik  <rik@nomad.inbox5.com>
+
+	* image/imread.m: Run test case only if underlying GraphicMagick
+	library exists.
+
+2009-12-02  John W. Eaton  <jwe@octave.org>
+
+	* help/module.mk: Fix typo in previous change.
+
+2009-12-01  John W. Eaton  <jwe@octave.org>
+
+	* help/module.mk (help_PRIVATE_FCN_FILES): New list.
+	(help_FCN_FILES): Remove new private functions from the list.
+	Include $(help_PRIVATE_FCN_FILES) in the list.
+	* help/private/__additional_help_message__.m: Rename from
+	help/__additional_help_message__.m.
+
+	* statistics/base/module.mk (statistics_base_FCN_FILES):
+	Remove statistics/base/__quantile__.m from the list.
+	* statistics/base/__quantile__.m: Now a subfunction of
+	statistics/base/quantile.m.
+	* statistics/base/quantile.m: Remove redundant tests.
+
+	* miscellaneous/__xzip__.m: Comment out tests until we have a way
+	to test private functions directly.
+
+	* general/isequal.m, general/isequalwithequalnans.m:
+	Convert tests from __isequal__.
+
+	* optimization/module.mk (optimization_PRIVATE_FCN_FILES): New list.
+	(optimization_FCN_FILES): Remove new private functions and new
+	subfunctions from the list.  Include
+	$(optimization_PRIVATE_FCN_FILES) in the list.
+
+	* optimization/private/__fdjac__.m: Rename from
+	optimization/__fdjac__.m.
+
+	* optimization/__dogleg__.m: Now a subfunction of path/fsolve.m.
+	* optimization/__doglegm__.m: Now a subfunction of path/fminunc.m.
+
+	* general/module.mk (general_PRIVATE_FCN_FILES): New list.
+	(general_FCN_FILES): Remove new private functions from the list.
+	Include $(general_PRIVATE_FCN_FILES) in the list.
+
+	* general/private/__isequal__.m: Rename from general/__isequal__.m.
+	* general/private/__splinen__.m: Rename from general/__splinen__.m.
+
+	* image/module.mk (image_FCN_FILES): Remove image/__img__.m and
+	image/__img_via_file__.m from the list.
+
+	* image/__img__.m: Now a subfunction of image/image.m.
+	* image/__img_via_file__.m: Now a subfunction of image_viewer.m.
+
+	* path/module.mk (path_FCN_FILES): Remove path/__extractpath__.m
+	from the list.
+
+	* path/__extractpath__.m: Now a subfunction of path/pathdef.m.
+
+	* miscellaneous/module.mk (miscellaneous_PRIVATE_FCN_FILES): New list.
+	(miscellaneous_FCN_FILES): Remove __xzip__.m from the list.
+	Include $(miscellaneous_PRIVATE_FCN_FILES) in the list.
+
+	* miscellaneous/private/__xzip__.m: Rename from
+	miscellaneous/__xzip__.m.
+
+2009-12-01  David Bateman  <dbateman@free.fr>
+
+	* @ftp/ftp.m: Treat empty constructor and construction from
+	another FTP object.
+	* @ftp/loadobj.m: Allow and remove the matlab specific fields
+	of FTP objects allowing matlab FTP objects to be loaded in Octave.
+	* @ftp/display.m: user -> username.
+
+2009-12-01  John W. Eaton  <jwe@octave.org>
+
+	* plot/module.mk (plot_PRIVATE_FCN_FILES): New list.
+	(plot_FCN_FILES): Include $(plot_PRIVATE_FCN_FILES) in the list.
+	Remove new private functions and new subfunctions from the list.
+
+	* plot/private/__actual_axis_position__.m: Rename from
+	plot/__actual_axis_position__.m.
+	* plot/private/__add_datasource__.m: Rename from
+	plot/__add_datasource__.m.
+	* plot/private/__axes_limits__.m: Rename from plot/__axes_limits__.m.
+	* plot/private/__axis_label__.m: Rename from plot/__axis_label__.m.
+	* plot/private/__bar__.m: Rename from plot/__bar__.m.
+	* plot/private/__clabel__.m: Rename from plot/__clabel__.m.
+	* plot/private/__contour__.m: Rename from plot/__contour__.m.
+	* plot/private/__default_plot_options__.m: Rename from
+	plot/__default_plot_options__.m.
+	* plot/private/__errcomm__.m: Rename from plot/__errcomm__.m.
+	* plot/private/__errplot__.m: Rename from plot/__errplot__.m.
+	* plot/private/__ezplot__.m: Rename from plot/__ezplot__.m.
+	* plot/private/__interp_cube__.m: Rename from plot/__interp_cube__.m.
+	* plot/private/__line__.m: Rename from plot/__line__.m.
+	* plot/private/__patch__.m: Rename from plot/__patch__.m.
+	* plot/private/__plt__.m: Rename from plot/__plt__.m.
+	* plot/private/__pltopt__.m: Rename from plot/__pltopt__.m.
+	* plot/private/__quiver__.m: Rename from plot/__quiver__.m
+	* plot/private/__scatter__.m: Rename from plot/__scatter__.m.
+	* plot/private/__stem__.m: Rename from plot/__stem__.m.
+
+	* plot/__pltopt1__.m: Now a subfunction of plot/__pltopt__.m.
+
+	* plot/__bars__.m: Now a subfunction of plot/__bar__.m.
+	* plot/__bar__.m (bars): Rename from __bars__.
+	(__bar__): Call bars insteaad of __bars__.
+
+	* plot/__area__.m: Now a subfunction of plot/area.m.
+
+	* plot/__plr1__.m, plot/__plr2__.m: Now subfunctions of polar.m.
+
+	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
+	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2sv__.m,
+	plot/__plt2vm__.m, plot/__plt2vs__.m, plot/__plt2vv__.m:
+	Now subfunctions of __plt__.m.
+
+2009-11-30  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Handle classes in function names.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* @ftp/ascii.m, @ftp/binary.m, @ftp/cd.m, @ftp/close.m,
+	@ftp/delete.m, @ftp/dir.m, @ftp/display.m, @ftp/ftp.m,
+	@ftp/loadobj.m, @ftp/mget.m, @ftp/mkdir.m, @ftp/module.mk,
+	@ftp/mput.m, @ftp/rename.m, @ftp/rmdir.m, @ftp/saveobj.m: New files
+	* Makefile.am: Add the @ftp to the build.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/cross.m: Avoid doing indexing twice.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/normest.m: Randomize initial vector.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/dot.m: Remove.
+	* linear-algebra/module.mk: Update.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/qp.m: Fix matrix tests.
+	* optimization/condest.m: Ditto.
+	* optimization/krylov.m: Ditto.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* sparse/normest.m: Move to linear-algebra.
+	* linear-algebra/normest.m: Simplify. Don't form A'*A explicitly.
+
+2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/isdefinite.m: Use Cholesky factorization.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/issymmetric.m: Move to linear-algebra.
+	* general/isdefinite.m: Ditto.
+	* linear-algebra/issymmetric.m: Use 0 as default tolerance. Optimize
+	this case. Check for symmetry, not hermitianness.
+	* linear-algebra/ishermitian.m: New function.
+	* linear-algebra/isdefinite.m: Use ishermitian instead of issymmetric.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/cellidx.m: Deprecate.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/issquare.m: Change to return consistent result for empty
+	matrices.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/cell2mat.m: Check type of all elements. Slightly optimize.
+	Add tests.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Use num2cell instead of mat2cell. Use repmat.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* script/miscellaneous/getfield: Deblank field names, gripe on invalid
+	index.
+	* script/miscellaneous/setfield: Rewrite using subsasgn.
+
+2009-11-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/print.m: Properly set the default ghostscript_binary
+	under Windows. Modify the search for the ghostscript binary
+	so that it works for Win32, mingw, Cygwin, and Unix systems.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/dec2base.m: Fix division.
+
+2009-11-20  Lukas Reichlin  <lukas.reichlin@swissonline.ch>
+
+	* linear-algebra/krylov.m: Add missing swap routine.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/__isequal__.m: Check for isnumeric|islogical.
+	* testfun/assert.m: Ditto.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/perms.m: Avoid recursion. Simplify assignments. Allow empty
+	vectors.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/erfinv.m: Remove.
+	* specfun/module.mk: Update.
+
+2009-11-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/orient.m: Flip papersize and paperposition when orientation
+	changes. Add support for 'tall' option. Add tests.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* io/textread.m: strncmp->strcmpi.
+
+2009-11-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/expm.m: Fix typo.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/intwarning.m: Doc fix.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/stairs.m (__stairs__): Correct nargin check.  New demos.
+	From Jakub Kasse  <jakub.kasse@tul.cz>.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* help/help.m (help): Return immediately after calling do_contents.
+	(do_contents): Find all matching directories, not just the first.
+	Call get_help_text_from_file to avoid looking in path.
+	Handle printing here.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am, audio/module.mk, deprecated/module.mk,
+	elfun/module.mk, general/module.mk, geometry/module.mk,
+	help/module.mk, image/module.mk, io/module.mk,
+	linear-algebra/module.mk, miscellaneous/module.mk,
+	optimization/module.mk, path/module.mk, pkg/module.mk,
+	plot/module.mk, polynomial/module.mk, set/module.mk,
+	signal/module.mk, sparse/Makefile.in, specfun/Makefile.in,
+	special-matrix/Makefile.in, startup/Makefile.in,
+	statistics/Makefile.in, statistics/base/module.mk,
+	statistics/distributions/module.mk, statistics/models/module.mk,
+	statistics/tests/module.mk, strings/module.mk, testfun/module.mk,
+	time/module.mk: New files.
+	* Makefile.in, move-if-change, configure.ac, audio/Makefile.in,
+	deprecated/Makefile.in, elfun/Makefile.in, general/Makefile.in,
+	geometry/Makefile.in, help/Makefile.in, image/Makefile.in,
+	io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, optimization/Makefile.in,
+	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, set/Makefile.in, signal/Makefile.in,
+	skip-autoheader, sparse/module.mk, specfun/module.mk,
+	special-matrix/module.mk, startup/module.mk,
+	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
+	Delete.
+	* mk-pkg-add: Rename from mkpkgadd.
+	* mkdoc, mk-pkg-addd: Operate on explicit lists of files instead
+	of directory names.
+	* mkdoc: Skip files not ending in .m.
+
+2009-11-10  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: No 'with linestyle' when linestyle == 'none'.
+
+2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/arrayfun.m: Fix nargout=0 case.
+
+2009-11-08  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/gnuplot_drawnow.m: Support gnuplot's dumb terminal.
+
+2009-11-02  Stefan Hepp  <stefan@stefant.org>
+
+	* plot/gnuplot_drawnow.m (gnuplot_default_term): Don't set term to
+	x11 unless DISPLAY is set.
+
+2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp1.m: Simplify.
+
+2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/mkpp.m: Improve Matlab compatibility.
+	* polynomial/ppval.m: Ditto.
+	* polynomial/unmkpp: Update.
+	* polynomial/pchip.m: Update and optimize.
+	* polynomial/spline.m: Update.
+	* general/__splinen__.m: Update.
+
+2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/tril.m, general/triu.m: Remove sources.
+	* general/Makefile.in: Update.
+
+2009-10-20  Soren Hauberg  <hauberg@gmail.com>
+
+	* general/interp2.m: improved error checking and support for bicubic
+	interpolation when X and Y are meshgrid format.
+
+2009-10-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp1.m: Perform optimizations, improve code (use switch
+	instead of multiple ifs).
+	* polynomial/pchip.m: Employ more optimized formulas (from SLATEC).
+
+2009-10-22  Soren Hauberg  <hauberg@gmail.com>
+
+	* image/autumn.m, image/bone.m, image/cool.m, image/copper.m,
+	image/flag.m, image/gmap40.m, image/gray.m, image/hot.m,
+	image/hsv.m, image/jet.m, image/ocean.m, image/pink.m,
+	image/prism.m, image/rainbow.m, image/spring.m, image/summer.m,
+	image/white.m, image/winter.m: Add demos.
+
+2009-10-20  Soren Hauberg  <hauberg@gmail.com>
+
+ 	* general/interp2.m: improved error checking and support for bicubic
+
+2009-10-19  Soren Hauberg  <hauberg@gmail.com>
+
+	* io/strread.m, io/textread.m: New functions.
+
+2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/center.m: Rewrite using bsxfun.
+
+2009-10-15  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Allow line and surface markerfacecolor
+	and markeredgecolor properties to be used and set the marker colors
+	appropriately.
+
+2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/median.m: Rewrite using nth_element.
+
+2009-10-01  John W. Eaton  <jwe@octave.org>
+
+	* image/__img__.m: Adjust xlim and ylim correctly.
+
+2009-10-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (plot/gnuplot_binary.m): New rule.
+	(DOCSTRINGS): Depend on plot/gnuplot_binary.m.
+	(ALL_M_FILES): Define with =, not :=.
+
+2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* geometry/griddata.m: Fix handling vector xi, yi.
+
+2009-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/arrayfun.m: Simplify.
+
+2009-09-30  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Work on list of file names instead of a directory.
+	* Makefile.in (ALL_M_FILES): Don't strip directories.
+	Also search build directory if it is different from $(srcdir).
+	Pass $(ALL_M_FILES) to mkdoc.
+
+2009-09-30  Michael D. Godfrey  <godfrey@isl.stanford.edu>
+
+	* plot/clabel.m: Spelling fix.
+	* plot/newplot.m: Update docstring.
+
+2009-09-28  John W. Eaton  <jwe@octave.org>
+
+	* general/sortrows.m: Also use old algorithm for sparse matrices.
+
+2009-09-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/union.m: Fix docstring.
+	* set/setxor.m: Fix docstring.
+
+2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/randperm.m: Remove.
+	* general/Makefile.in: Update.
+
+2009-09-15  John W. Eaton  <jwe@octave.org>
+
+	* confiugre.ac: Rename from configure.in
+	* Makefile.in: Rename all instances of configure.in to
+	configure.ac.
+
+2009-09-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/Makefile.in: Include __doglegm__.m.
+
+2009-09-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminunc.m: Simplify damped BFGS calculation.
+
+2009-09-09  Tatsuro Matsuoka  <tmacchant@yahoo.co.jp>
+
+	* plot/gnuplot_drawnow.m: Avoid flickering windows by avoding
+	'set multiplot' / 'unset multiplot' for gnuplot's windows and
+	wxt terminals.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__dogleg__.m: Revert to revision 22c8272af34b.
+	* optimization/__doglegm__.m: New source.
+	* optimization/fminunc.m: Use it.
+
+2009-09-08  John W. Eaton  <jwe@octave.org>
+
+	* io/dlmwrite.m: Fix typo.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Change initial TR step strategy.
+	* optimization/fminunc.m: Change initial TR step strategy.
+
+2009-09-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminunc.m: Correct extra output params handling.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Update initial factor.
+	* optimization/fminunc.m: Update initial factor.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/arrayfun.m: Fix test.
+
+2009-09-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/hold.m: Correctly toggle hold state.  Set both figure and
+	axes "nextplot" property when turning hold state on.
+	* plot/ishold.m: Check figure and axes nextplot properties.
+	Accept axes or figure handle argument.
+
+2009-09-01  Christophe Tournery  <christophe.tournery@illusonic.com>
+
+	* audio/wavread.m: Rename data_size from obsolete ck_size.
+
+2009-08-31  David Bateman  <dbateman@free.fr>
+
+	* general/quadgk.m: More care with the interval length and
+	convergence of contour integrals.
+
+2009-08-29  John W. Eaton  <jwe@octave.org>
+
+	* time/datestr.m: Add missing semicolon.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/int2str.m: Convert to double before calling log10.
+
+2009-08-26  E. Joshua Rigler  <relgire@gmail.com>
+
+	* time/datestr.m: Set tm.isdst to -1 before calling mktime.
+
+2009-08-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/__gnuplot_open_stream__.m: Save pid in __plot_stream__ property.
+	* plot/gnuplot_drawnow.m: Wait for gnuplot subprocess when printing.
+	From Ben Abbott <bpabbott@mac.com>, Rob Mahurin <rob@utk.edu>, and
+	Dmitri Sergatskov <dasergatskov@gmail.com>.
+
+2009-08-22  David Bateman  <dbateman@free.fr>
+
+	* plot/__add_datasource__.m: Correct test for "datasource" argument
+	* plot/__countour__.m: Add edgecolor properties and make it an alias
+	for linecolor with the value "auto" being "flat" for the edgecolor.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* help/print_usage.m: Make it work again if an argument is given.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help/print_usage: Allow calling from methods.
+
+2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/diff.m: Remove.
+	* general/Makefile.in: Update.
+
+2009-08-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/flipdim.m: Fix omitted check.
+
+2009-08-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/flipdim.m: Simplify.
+
+2009-08-07  Olli Saarela  <olli.saarela@gmail.com>
+
+	* plot/__gnuplot_ginput__.m: If read fails to return data, sleep
+	before trying again.
+
+2009-08-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/compass.m, plot/feather.m: Simplify argument processing.
+
+2009-08-06  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/std.m: Correctly work along singleton dimension.
+	From Christoph Ellenberger <C.Ellenberger@gmx.net>.
+
+2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* geometry/griddata.m: Optimize.
+
+2009-08-06  Olaf Till  <olaf.till@uni-jena.de>
+
+	* geometry/griddata.m: Linearize arrays.
+
+2009-08-04  Pieter Eendebak  <pieter.eendebak@gmail.com>
+
+	* set/setxor.m: Added test for cell arrays of strings.
+
+2009-08-05  Olli Saarela  <olli.saarela@gmail.com>
+
+	* plot/__gnuplot_get_var__.m: If read fails to return data, sleep
+	before trying again.
+
+2009-08-04  Pieter Eendebak  <pieter.eendebak@gmail.com>
+
+	* set/setxor.m: Support cell arrays of strings.
+
+2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/sub2ind.m: Remove source.
+	* general/ind2sub.m: Remove source.
+	* general/Makefile.in: Update.
+
+2009-08-02  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Avoid the flickering x11 window seen with
+	rapid replots by avoidng setting multiplot mode. This fix only
+	functions for a single axes with no image objects.
+	* plot/__go_draw_figure__.m: Move 'set multiplot' to gnuplot_drawnow.
+
+2009-07-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/common_size: Optimize.
+
+2009-07-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix ticklabels specified as 2D character
+	array.
+	* plot/__go_draw_axes__.m: Ignore fontnames for the Lua-TikZ terminal.
+	* plot/gnuplot_drawnow.m: Support the gnuplot terminal Lua-TikZ.
+	* plot/print.m: Support the gnuplot terminal Lua-TikZ.
+
+2009-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/gnuplot_binary.m: Fix typo.
+
+2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: Use "global" parameter in str2func.
+	* optimization/fsolve.m: Ditto.
+	* optimization/fminunc.m: Ditto.
+
+2009-07-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/gnuplot_binary.in: Accept arguments in addition to program name.
+	* plot/__gnuplot_open_stream__.m: Pass additional args to gnuplot.
+
+2009-07-23  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Add an hggroup demo using bar(). Include clf()
+	in each demo.
+
+2009-07-23  John W. Eaton  <jwe@octave.org>
+
+	* image/imread.m: Fix test.
+
+	* plot/legend.m: Process arguments in order, child objects in
+	reverse.  Remove special case for single label.  New demos.
+
+2009-07-23  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* testfun/assert.m: Fix string comparison bug.
+
+2009-07-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* testfun/assert.m: Use less strict checking for exact matches.
+
+2009-07-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Use "layer" property to decide whether
+	to send "set border front" or "set border layerdefault" to plot
+	stream.  Don't send "set border front" to plot stream for image data.
+
+2009-07-15  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* polynomial/conv.m: Fix Matlab incompatibility.  New tests.
+
+2009-07-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/axis.m: Return 4-element vector for 2-d view.
+	From David Woodburn <david.woodburn@gmail.com>.
+
+	* sparse/nonzeros.m: Always return a column vector.  New tests.
+
+2009-06-25  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Apply feature 'wxt_has_size'.
+	* plot/__gnuplot_has_feature__.m: Add feature 'wxt_has_size' for
+	gnuplot >= 4.3.0.
+
+2009-06-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_figure__.m: Modify the implicit margin when gnuplot's
+	output is landscape.
+	* plot/gnuplot_drawnow.m: Simplify handling of the figure's paper
+	properties, and rely upon listeners for units conversion. Minor code
+	improvements.
+	* plot/print.m: Reimplement -landscape and -portrait to modify the
+	properties papersize and paperposition. Produce compatible results
+	when paperpositionmode=='auto'. Simplfy units conversion and
+	restoration of initial figure properties.
+
+2009-06-24  Marco Caliari  <marco.caliari@univr.it>
+
+	* general/repmat.m: Call kron, not spkron.
+
+2009-06-24  Alexander Mamonov  <mamonov@gmail.com>
+
+	* plot/plot3.m: Correctly compute offsets for property/value pairs.
+
+2009-06-23  Alexander Mamonov  <mamonov@gmail.com>
+
+	* image/imread.m: New test.
+
+2009-06-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/grid.m: Add missing semi-colon. Allow grid to be toggled
+	on/off for each axis independently. Gnuplot requires that minor
+	ticks accompany minor ticks. Add demo.
+	* plot/__go_draw_axes__.m: For {x,y,z}scale == 'log' use 10 minor
+	ticks.
+
+2009-06-22  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/var.m: Return zero for scalar case.  Handle
+	empty arguments in a Matlab compatible way.  New tests.
+
+2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/ismember.m: Properly handle NaNs. Fix test.
+
+2009-06-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Change the default x11 fontspec from '*,0'
+	to ',0' to avoid delays searching the fontpath for a font named '*'.
+
+2009-06-18  Daniel Gualberto  <daniel@alacer.com.br>
+
+	* polynomial/mpoles.m: Fix infinite loop for a multiplicity of
+	poles at zero. Test added.
+
+2009-06-17  Bertrand Roessli  <bertrand.roessli@psi.ch>
+
+	* plot/axis.m: Fix bug for 'axis tight' with multiple surface plots,
+	add demo.
+
+2009-06-15  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/quiver.m: Add 'clf' to demos.
+	* plot/plotyy.m: Consider dataaspectratiomode before changing
+	dataaspectratio.
+
+2009-06-14  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/plotyy.m: Fix compatibility with subplot, add listeners for
+	dataaspectratio, and add a demo.
+
+2009-06-14  Eric Chassande-Mottin  <echassandemottin@gmail.com>
+
+	* plot/plotyy.m: Correct behavior when there is no currentfigure.
+
+2009-06-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/ismember.m: Reimplement using lookup & unique.
+
+2009-06-11  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Fix logic associated with 'have_ghostscript'.
+	* plot/gnuplot_drawnow.m: Add support for pdfcairo and pngcairo
+	terminals. Minor code improvements.
+	* plot/print.m: Associate '-mono' with devices ps, ps2, eps, & eps2.
+	Have '-mono' render all objects in monochrome.
+	For pdf or png output, favor gnuplot's cairo terminals.
+
+2009-06-10  Marco Caliari  <marco.caliari@univr.it>
+
+	* plot/hold.m: Add demo including a hggroup.
+	* plot/__go_draw_axes__.m: Fix order when pushing group children onto
+	the axes kid list.
+	* general/quadgk.m: Better waypoint transform.
+
+2009-06-09  David Bateman  <dbateman@free.fr>
+
+	* general/quadgk.m: Add test case and fixed doubly infinite
+	waypoint transform for x = 0 case.
+
+2009-06-09  Marco Caliari  <marco.caliari@univr.it>
+
+	* general/quadgk.m: Fix doubly infinite transformation to the finite
+	interval.
+
+2009-06-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/axis.m: Fix bug for 'axis tight' with multiple lines, modify
+	demo.
+
+2009-06-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* testfun/assert.m: Fix texinfo bug.
+
+2009-06-04  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Change strncmpi(scale,'lo') to
+	strcmp(scale,'log').
+	* plot/__go_draw_axes__.m: For log-scale axes use format '10^{%T}'.
+
+2009-06-03  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m: Colorbar 'handlevisibility' should be 'on'.
+	Add additional demos which illustrate problems with the present
+	implementation.
+	* plot/__gnuplot_has_feature__.m: Change version for
+	"x11_figure_position" from ">=4.3.0" to ">=4.2.5".
+	* plot/__scatter__.m: If the color spec is empty, set using
+	__next_line_color__.
+	* plot/scatter3.m: Add demos.
+
+2009-06-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/polyfit.m: Fix test.
+
+2009-06-02  Rafael Laboissiere  <rafael@debian.org>
+
+	* help/doc.m: In test, look also for the gzipped version of the
+	info_file
+
+2009-05-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/__gnuplot_get_var__.m: Insert missing semicolon.
+
+2009-05-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Set x2range when xaxislocation=='top'
+	and set y2range when yaxislocation=='right'. Simplify support
+	for ticklabel separator '|'.
+	* plot/__go_draw_figure__.m: Change 'autoscale fix' to
+	'autoscale keepfix'.
+	* plot/colorbar.m: Add demos.
+
+2009-05-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Add support for ticklabel separator '|'.
+
+2009-05-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* sparse/bicgstab.m: Improve preconditioning; avoid explicit inverse.
+	* sparse/cgs.m: Improve preconditioning; avoid explicit inverse.
+
+2009-05-28  Radek Salac  <salac.r@gmail.com>
+
+	* sparse/bicgstab.m: New output when calling without arguments.
+	Time optimization - remove certain checks linked to
+	preconditioner which are unacceptably slow.
+	* sparse/cgs.m: New output when calling without arguments.
+	Time optimization - remove certain checks linked to
+	preconditioner which are unacceptably slow.  Rename internal
+	variable to match bicgstab.
+
+2009-05-27  Rik Wehbring  <rdrider0-list@yahoo.com>
+
+	* plot/axis.m: Update documentation to reflect addition of
+	"tight" option.
+
+2009-05-27  Rik Wehbring  <rdrider0-list@yahoo.com>
+
+	* ismember.m: Update examples to remove incorrect reference to
+	residue function.
+
+2009-05-27  John W. Eaton  <jwe@octave.org>
+
+	* image/imwrite.m: Convert indexed images to RGB before calling
+	__magick_write__.
+
+	* image/imshow.m: In demo, convert image to rgb before scaling
+	components.  Use imread instead of loadimage.
+
+2009-05-26  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix rendering of overlaping images and
+	line objects.  Add demos as well.
+
+2009-05-27 S�ren Hauberg  <hauberg@gmail.com>
+
+	* geometry/delaunay.m: Support cellstr's as options.
+
+2009-05-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/imshow.m: Fix handling of indexed images.
+
+2009-05-26 S�ren Hauberg  <hauberg@gmail.com>
+
+	* help/__makeinfo__.m: Support several @seealso's in one text.
+
+2009-05-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/colorbar.m: Downcase location argument.
+
+2009-05-26 Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* pkg/pkg.m: Add "version" field to the structure returned by "pkg
+	describe".
+
+2009-05-25  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Properly render TeX symbols for x11, when
+	using the anonymous fontname="*".
+
+2009-05-24 Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* plot/gnuplot_drawnow.m: single-quote output name to allow backslash
+	characters as filesep under windows
+	* plot/print.m: Support ps->pdf using ghostscript under windows, check
+	for %GSC% environment variable.
+
+2009-05-24 Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* plot/__gnuplot_version__.m: quote gnuplot_binary to allow spaces
+	in file name
+
+2009-05-22  John W. Eaton  <jwe@octave.org>
+
+	* general/interp3.m: Don't require interpolation grid to have same
+	size as data.  From Kris Thielemans <kris.thielemans@imperial.ac.uk>.
+
+2009-05-19 Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* pkg/pkg.m: Fix a bug when quering only one non installed package
+	with "pkg describe".
+
+2009-05-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__fdjac__.m: Support central differences.
+	* optimization/fsolve.m: Support central differences. Add FinDiffType
+	option.
+	* optimization/fminunc.m: Ditto.
+
+2009-05-17  Rik Wehbring  <rdrider0-list@yahoo.com>
+
+	* *.m: Simplify Texinfo documentation in .m scripts by removing
+	redundant @iftex calls
+
+2009-05-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminunc.m: Improve TR updating strategy.
+	* optimization/fsolve.m: Ditto.
+
+2009-05-15  John W. Eaton  <jwe@octave.org>
+
+v	* general/nargchk.m: Don't generate error if output is struct.
+	Uncomment some additional tests.
+	From Alois Schloegl <alois.schloegl@tugraz.at>
+
+2009-05-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminunc.m: Import the step adaptation strategy
+	improvements from fsolve.
+
+2009-05-08  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_has_feature__.m: Add feature "key_has_font_properties".
+	* plot/__go_draw_axes__.m: Have legend inherit the axis font-name/size.
+
+2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
+
+	* miscellaneous/tar.m, miscellaneous/unpack.m:
+	Pass "xvf" to tar instead of "-x -v -f".
+
+2009-04-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_has_feature__.m: Change version for
+	"x11_figure_position", >4.2.4 to >=4.3.0.
+
+2009-04-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: For figure position, treat 'wxt' as 'x11'.
+
+2009-04-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/range.m: Fix behavior when dim is specified.
+
+2009-04-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Fix typo: 'gswin23c' -> 'gswin32c'. Suppress stderr
+	when printing. New sub-function: fix_eps_bbox(). Add option, "-tight",
+	to replace the gnuplot bbox with a tight bbox for eps-files.
+
+2009-04-23  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Use Ghostscript rather than ImageMagick's 'convert'.
+	Support printing to non-postscript printers. Do not change the output
+	filename when using Ghostscript. When using lpr to print the output,
+	send it without filtering (unix), or as if it were binary (pc).
+
+2009-04-22  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* general/isa.m: Correctly report multiple layers of class hierarchy.
+
+2009-04-20  John W. Eaton  <jwe@octave.org>
+
+	* special-matrix/vander.m: Update tests.
+
+2009-04-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* special-matrix/vander.m: Allow second argument.
+	* special-matrix/polyfit.m: Simplify.
+
+2009-04-17  Rik  <rdrider0-list@yahoo.com>
+
+	* plot/__marching_cube__.m: Correct help Texinfo so manual will compile
+
+2009-04-16  Marco Caliari  <marco.caliari@univr.it>
+
+	* toeplitz.m: Treat separately the sparse case.
+
+2009-04-14  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* plot/__marching_cube__.m: Add help text.
+	* plot/isonormals.m: Add help text and tests.
+
+2009-04-14  David Bateman  <dbateman@free.fr>
+
+	* plot/__patch__.m: Set default facecolor to [0,1,0].
+
+2009-04-12  Aravindh Krishnamoorthy  <aravindh.k.dev@gmail.com>
+
+	* special-matrix/hadamard.m: Fix a documentation mistake.
+
+2009-04-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/polyaffine.m: New function.
+	* polynomial/polyscale.m: Remove.
+	* polynomial/polytrans.m: Remove.
+
+2009-04-12  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_open_stream__.m: New function.
+	* plot/__gnuplot_get_var__.m: If not open, open the gnuplot plot stream.
+	* plot/gnuplot_drawnow.m: Replace internal function open_gnuplot_stream
+	with new __gnuplot_open_stream__.
+
+2009-04-11  David Bateman  <dbateman@free.fr>
+
+	* geometry/trisurf.m: New file.
+	* geometry/Makefile.in (SOURCES): Add it here.
+	* geometry/trimesh.m: Convert to using 3D patches.
+	* plot/__go_draw_axes__.m: Allow 3D filled triangular patches.
+	* plot/__patch__.m: Rewrite to allow update of dependent variables
+	with listener functions amongst themselves.
+	* plot/patch.m: Add 3D demo. Update the documentation.
+
+2009-04-11  Martin Helm  <martinh@sirius.mhelm.de>
+
+	* plot/__interp_cube__.m, plot/__marching_cube__.m, isocolors.m,
+	isonnormals.m, isosurface.m: New files.
+	* plot/Makefile.in (SOURCES): Add them here.
+
+2009-04-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/intersect.m: Add missing branch.
+
+2009-04-10  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: If no pdf support in gnuplot, then "convert" from
+	postscript to pdf. For gnuplot 4.2.x use "convert", if it is present,
+	to produce pdf output. Only render a full page for ps/pdf output.
+	Rename variable, "size" to "canvas_size". Reformat help text to
+	eliminate unintended spaces. Minor improvements to the code.
+	* plot/gnuplot_drawnow.m: Place canvas size at the end of the terminal
+	spec, and remove trailing semicolon. Minor improvments to the code.
+	* plot/__gnuplot_get_var__.m: If fifo fails to open, try 2nd time.
+
+2009-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* special-matrix/vander.m: Optimize.
+
+2009-04-07  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/Makefile.in: Remove __gnuplot_default_font__.m from SOURCES.
+
+2009-04-06  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_get_var__.m: Correct misleading error messages, and
+	remove dangling/commented code.
+	* plot/__gnuplot_default_font__.m: Remove file from archive.
+	* plot/__go_draw_axes__.m, plot/__go_draw_figure__.m: Allow
+	fontsize to be specified for all terminals with fontname == "*".
+
+2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/polyscale.m: New function.
+	* polynomial/polytrans.m: New function.
+
+2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* special-matrix/pascal.m: Fix, optimize & extend.
+
+2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/vech.m: Optimize.
+
+2009-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* special-matrix/toeplitz.m: Optimize.
+
+2008-04-03  David Bateman  <dbateman@free.fr>
+
+	* plot/__scatter__.m: correct indexing of cdata.x
+
+2009-04-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fminunc.m: New function.
+	* optimization/Makefile.in: Update.
+	* optimization/__dogleg__: Allow general quadratics.
+
+2009-04-02  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Include gnuplot command termination when
+	plotting image.
+
+2009-04-02  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix title placement for gnuplot 4.2.x.
+
+2009-04-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Fix test.
+
+2009-03-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: New subfunction create_fontspec(). Allow
+	fontsize to be specified when the fontname is anonymous.
+
+2009-03-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__gnuplot_default_font__.m: New function: determine gnuplot's
+	terminal dependent default font.
+	* plot/__go_draw_figure__.m: Substitute gnuplot default font when
+	"fontname" = "*".
+
+2009-03-29  John W. Eaton  <jwe@octave.org>
+
+	* testfun/Makefile.in (SOURCES): Add rundemos.m to the list.
+
+2009-03-29  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: For eps output the bounding box should represent the
+	figure's position.
+
+2009-03-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Always set figure property "__plot_stream__"
+	to the active gnuplot steam. Permits __gnuplot_get_var__ to return to
+	proper result for all gnuplot streams.
+
+2009-03-27  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Properly position the title for 3D plots
+	when using the gnuplot (v4.3+) backend.
+
+2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/expm.m: Fix order of outputs from balance.
+
+2009-03-25  Kai Habel  <kai.habel@gmx.de>
+
+	* general/gradient.m: Fix calculation for more than two
+	dimensions.  Change interpretation of vector arguments from
+	spacing to coordinates.  New tests.
+
+2009-03-25  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Pass full file name to gethelp.
+	* gethelp.cc (main): Handle second argument.  Write comment with
+	full file name to output.
+
+2009-03-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: When printing, pass scalar plot_stream
+	to __gnuplot_draw_figure__, and close all plot streams when done.
+
+2009-03-24  John W. Eaton  <jwe@octave.org>
+
+	* general/isa.m: Handle parent classes.
+
+2009-03-23  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Check that gnuplot has internal variable
+	"GPVAL_TERMINALS".
+	* plot/__gnuplot_has_feature__.m: Add "variable_GPVAL_TERMINALS".
+
+2009-03-21  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
+	* plot/__gnuplot_get_var__.m: Add function to get gnuplot variables.
+	* plot/print.m: Restore the behavior for option -S<num>,<num>.
+
+2009-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m (guarded_eval): Simplify & fix missing
+	semicolon.
+
+2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__fdjac__.m: Pass in fvec to save one evaluation.
+	* optimization/fsolve.m: Avoid redundant reevaluation when using
+	FD jacobians. Document how it can be done with user jacobians.  Make
+	first iteration special and call outputfcn after it. Skip updates
+	unless two successful iterations have occured.
+	* optimization/__dogleg__.m: Add missing alpha in the zero-gradient
+	case.
+	* optimization/fsolve.m: Remove autodg (not used), simplify.
+
+2009-03-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/var.m: a -> x.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/mean.m: Simplify.
+	* statistics/base/meansq.m: Optimize.
+	* statistics/base/center.m: Fix behvaior with vectors, simplify.
+	* statistics/base/std.m: Simplify using `center'.
+	* statistics/base/var.m: Ditto.
+	* statistics/base/cov.m: Ditto.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/repmat.m: Use subscript pairs rather than forming Kronecker
+	products.
+
+2009-03-11  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Unset the {x,y,z}ticks when initializing
+	each axis. Set ticklabels when the ticklabels are empty and when
+	ticklabelmode=="manual".
+
+2009-03-11  Marco Caliari  <marco.caliari@univr.it>
+
+	* plot/axis.m: Implement "square" and "equal" options, conditional
+	on how octave positions gnuplot axes. Place the "title()" and
+	"axis()" commands after "plot()" in the demos.
+
+2009-03-09  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m (do_tics): Fix typo (xaxislocation ->
+	yaxislocation).
+
+2009-03-09  John W. Eaton  <jwe@octave.org>
+
+	* help/lookfor.m (search_cache): Also match function names.
+
+	* pkg/pkg.m, help/gen_doc_cache.m, help/lookfor.m:
+	Use doc-cache instead of DOC for doc cache file.
+
+2009-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/accumarray.m: Reorder tests. Call either "sparse" or
+	__accumarray_sum__ for the default summation case.
+	* statistics/base/histc.m: Reimplement using lookup & accumarray.
+
+2009-03-08  S�ren Hauberg  <hauberg@gmail.com>
+
+	* statistics/base/histc.m: New function.
+
+2009-03-06  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Preserve the order of axes' children
+	when pruning the handles for the {x,y,z}labels and title.
+	* plot/legend.m: Change demo to add colors to lines. This change
+	reveals the problem (above) with the ordering of the axes' children.
+
+2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/condest.m: Use lu rather than splu. Use relative tols
+	for tests.
+
+2009-03-05  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/spdiag.m: Ensure sparse result.
+
+2009-03-05  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Preserve column vector orientation for
+	the axes children while removing the axis label & title handles.
+
+2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* polynomial/polyval.m: Implement using Horner scheme.
+
+2009-03-03  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Fix unintended shift of plot image for
+	the gnuplot postscript+eps terminal.
+
+2009-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/pkg.m (fix_depends): Fix & simplify splitting the string.
+
+2009-03-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* set/complement.m, set/union.m: Remove reference to deprecated
+	function create_set.
+
+2009-03-01  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Do not render axis labels twice when
+	their handles are visible, but do render objects with hidden
+	handles.
+
+2009-03-01  Ben Abbott  <bpabbott@mac.com>
+
+	* general/num2str.m: Trivial bug fix. Recent switch from split()
+	to strsplit() produced cells rather than character data.
+
+2009-03-01  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/colorbar.m: Bug fix. Allow hidden colorbars to be deleted,
+	and replace existing colorbar when a new one is created. Additional
+	demos are included to verify these behaviors.
+
+2009-02-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__actual_axis_position__.m: Include file missed in prior
+	changeset.
+
+2009-02-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m, plot/gnuplot_drawnow.m: Add compatible support for
+	specificying resolution of bitmap terminals, "-r<num>".
+
+	* plot/gnuplot_drawnow.m: Check that canvas size is only specified
+	one time.
+
+	* plot/gnuplot_drawnow.m, plot/__go_draw_figure__.m: Support papersize,
+	paperposition properties. Accommodate gnuplot's implicit margins for
+	postscript terminals. Remove internal function get_canvassize().
+
+	* plot/gnuplot_drawnow.m:
+	Terminate gnuplot "set term ..." with semicolon.
+	Specify vector terminals sizes in floating point.
+	Rename internal function isbackend() to output_to_screen().
+	Rename internal function gnuplot_term() to gnuplot_default_term().
+	Rename internal function isbitmap() to term_units_are_pixels().
+	Minor changes for coding conventions.
+
+	* plot/__actual_axis_position__.m, Makefile.in: New function to
+	determine position of rendered axes, including the effect of the
+	aspect ratio.
+	* plot/__gnuplot_has_feature__.m: Add new feature
+	"screen_coordinates_for_{lrtb}margin".
+	* plot/__go_draw_axes__.m, plot/colorbar.m: Enable axes to be
+	positioned using {lrtb}margins.
+	* plot/colorbar.m: Add to, and modify, demos.
+
+	* plot/print.m: Remove non-functional/commented code.
+	* plot/__go_draw_figure__.m: Remove non-functional code.
+	* plot/__gnuplot_has_feature__.m: Remove non-functional code.
+
+	* plot/quiver3.m: Add "clf" and "colormap(jet(64))" to demo.
+
+2009-02-27  John W. Eaton  <jwe@octave.org>
+
+	* set/complement.m: Call unique, not create_set.
+	* set/unique.m: Style fix for docstring.
+	* deprecated/create_set.m: Move here from set/create_set.m.
+	Always return a row vector, as documented.
+
+	* set/Makefile.in (SOURCES): Remove create_set.m from the list.
+	* deprecated/Makefile.in (SOURCES): Add create_set.m to the list.
+
+	* general/num2str.m: Call strsplit instead of split.
+
+	* strings/strsplit.m: Style fixes.
+
+2009-02-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strsplit.m: Check also nargin.
+
+2009-02-26  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/split.m: Add warning, not about version.
+
+2009-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strsplit.m: New function.
+	* strings/split.m: Move to deprecated/.
+	* strings/Makefile.in: Update.
+	* deprecated/Makefile.in: Update.
+
+	* general/int2str.m: Use strsplit instead of split.
+	* general/num2str.m: Ditto.
+	* help/__makeinfo__.m: Ditto.
+	* help/lookfor.m: Ditto.
+	* miscellaneous/compare_versions.m: Ditto.
+	* miscellaneous/tar.m: Ditto.
+	* miscellaneous/unpack.m: Ditto.
+	* miscellaneous/what.m: Ditto.
+	* miscellaneous/zip.m: Ditto.
+	* pkg/pkg.m: Ditto.
+	* strings/strtok.m: Ditto.
+	* testfun/rundemos.m: Ditto.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (distclean maintainer-clean): Remove tags and TAGS
+	in distclean target.
+
+2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help/lookfor.m: Vectorize the path splitting using mat2cell.
+	Extract new path elements using setdiff.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/pie.m: Use numel to check sizes of X and LABELS instead of
+	using size_equal.  From Andy Buckle <andybuckle@gmail.com>.
+
+	* help/lookfor.m: Split original path into cell array and compare
+	elements with strcmp.  Suppress warnings and errors when getting
+	help text from function files.
+
+2009-02-24  John W. Eaton  <jwe@octave.org>
+
+	* help/gen_doc_cache.m: Don't compress output file.  By default,
+	write to DOC, not DOC.gz.  Don't save empty cache.
+
+	* help/lookfor.m: Use doc_cache_file to get location of DOC file.
+
+2009-02-24  Jason Riedy  <jason@acm.org>
+
+	* pkg/pkg.m (generate_lookfor_cache): Generate a DOC file for each
+	directory.
+
+	* help/gen_doc_cache.m: Call __makeinfo__, not makeinfo.
+
+2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Update niter after each iteration, not just
+	a succesful one.
+
+2009-02-08  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* configure.in: AC_SUBST ac_config_files
+
+	* Makefile.in:  Add make targets for configuration files
+	and config.status.
+
+2009-02-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/fplot.m: Fix nargin check.
+	From Joel Parker <Joel.Parker@radiancetech.com>.
+
+2009-02-20  Steffen Groot  <steffen.groot@technolution.eu>
+
+	* plot/__patch__.m: Correct indexing of varargin.
+
+2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/dmult.m: Remove.
+	* linear-algebra/Makefile.in: Update.
+	* deprecated/dmult.m: Move here; revert to the 3.0.x version.
+	* deprecated/Makefile.in: Update.
+	* statistics/models/logistic_regression_derivatives.m: Replace dmult
+	by diagonal matrices.
+
+2009-02-19  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Only send figure position info to gnuplot
+	when the plot stream is first opened. Revert usage of hidden axes
+	to store prior figure "position" property.
+
+2009-02-19  John W. Eaton  <jwe@octave.org>
+
+	* general/__isequal__.m, general/__splinen__.m, image/__img__.m,
+	image/__img_via_file__.m, miscellaneous/__xzip__.m,
+	optimization/__all_opts__.m, optimization/__dogleg__.m,
+	optimization/__fdjac__.m, path/__extractpath__.m,
+	plot/__add_datasource__.m, plot/__area__.m,
+	plot/__axes_limits__.m, plot/__axis_label__.m, plot/__bar__.m,
+	plot/__bars__.m, plot/__clabel__.m, plot/__contour__.m,
+	plot/__default_plot_options__.m, plot/__errcomm__.m,
+	plot/__errplot__.m, plot/__ezplot__.m,
+	plot/__gnuplot_has_feature__.m, plot/__gnuplot_version__.m,
+	plot/__go_close_all__.m, plot/__go_draw_axes__.m,
+	plot/__go_draw_figure__.m, plot/__line__.m,
+	plot/__next_line_color__.m, plot/__patch__.m, plot/__plr1__.m,
+	plot/__plr2__.m, plot/__plt1__.m, plot/__plt2__.m,
+	plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
+	plot/__plt2vv__.m, plot/__plt__.m, plot/__plt_get_axis_arg__.m,
+	plot/__pltopt1__.m, plot/__pltopt__.m, plot/__quiver__.m,
+	plot/__scatter__.m, plot/__stem__.m, startup/__finish__.m,
+	statistics/base/__quantile__.m: Consistent doc strings for
+	internal fucntions.
+
+2009-02-18  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/subplot.m: Fix unintended deletion of axes.
+
+2009-02-18  Frederick Umminger  <Frederick_Umminger@playstation.sony.com>
+
+	* audio/wavread.m: Improve search for data chunks.
+
+2009-02-18  Ivan Sutoris  <ivan.sutoris@gmail.com>
+
+	* miscellaneous/edit.m: Expand documentation about editor mode.
+
+2009-02-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/__gnuplot_version__.m: Don't use regexp to extract version
+	number.
+
+2009-02-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/gnuplot_drawnow.m (gnuplot_set_term):
+	Adjust nargin checks for new signature.
+
+2009-02-17  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/contourc.m: Convert demo to test.
+	* plot/surfnorm.m: Add another demo.
+	* plot/surfnorm.m, plot/pareto.m: Add "colormap(jet)" to 1st demo.
+	* plot/plotyy.m, plot/patch.m, plot/pareto.m, plot/legend.m,
+	plot/fill.m, plot/comet.m, plot/colorbar.m, plot/clabel.m:
+	Replace "close all" with "clf" in demo.
+
+2009-02-17  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Only close the gnuplot window and send
+	position/size info when the figure's position property has changed.
+	(gnuplot_set_term): New arg, NEW_STREAM.  Change all uses.
+	(open_gnuplot_stream): Delete unused output ENHANCED.
+
+2009-02-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/plotyy.m: Handle case of existing figure with no axes.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* help/__makeinfo__.m: Rename from help/makeinfo.m.  Delete tmp file.
+	* help/Makefile.in (SOURCES): Add __makeinfo__.m, delete makeinfo.m.
+	* help/get_first_help_sentence.m, help/help.m, help/lookfor.m,
+	help/print_usage.m: Call __makeinfo__ instead of makeinfo.
+	* help/__strip_html_tags__.m, help/__additional_help_message__.m:
+	Doc fix.
+
+2009-02-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/shading.m: No new figure windows for the demos.
+	* plot/surfl.m: Clear figure before running demos.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/expm.m: Fix invalid unscaling.
+	* help/which.m: Do not add "function" here.
+	* optimization/fsolve.m: Update comments.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* help/help.m: Shorten default help text.
+
+2009-02-15  John W. Eaton  <jwe@octave.org>
+
+	* help/doc.m, help/help.m, help/lookfor.m, help/type.m,
+	help/which.m, image/colormap.m, miscellaneous/delete.m,
+	miscellaneous/dir.m, miscellaneous/edit.m,
+	miscellaneous/intwarning.m, miscellaneous/ls.m,
+	miscellaneous/mex.m, miscellaneous/mkoctfile.m,
+	miscellaneous/run.m, miscellaneous/what.m, path/savepath.m,
+	pkg/pkg.m, plot/axis.m, plot/box.m, plot/caxis.m, plot/cla.m,
+	plot/close.m, plot/colorbar.m, plot/grid.m, plot/hidden.m,
+	plot/hold.m, plot/legend.m, plot/orient.m, plot/print.m,
+	plot/shading.m, plot/title.m, plot/xlabel.m, plot/ylabel.m,
+	plot/zlabel.m, testfun/demo.m, testfun/example.m, testfun/fail.m,
+	testfun/rundemos.m, testfun/test.m:
+	Delete "PKG_ADD: mark_as_command" directive.
+
+	* edit.m: Avoid command-style function call syntax when
+	assigning results in tests.
+
+	* deprecated/mark_as_rawcommand.m, deprecated/unmark_rawcommand.m,
+	deprecated/israwcommand.m, deprecated/mark_as_command.m,
+	deprecated/unmark_command.m, deprecated/iscommand.m:
+	New functions.
+	* deprecated/Makefile.in (SOURCES): Add them to the list.
+
+2009-02-15  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/subplot.m: Compatible placement of subplots.
+
+2009-02-13 Ben Abbott  <bpabott@mac.com>
+
+	* plot/__go_draw_axes__.m: Respect axes ticklength property.
+
+2009-02-12  John W. Eaton  <jwe@octave.org>
+
+	* general/sortrows.m: Call __sort_rows_idx__, not __sortrows_idx__.
+
+2009-02-12  Soren Hauberg  <hauberg@gmail.com>
+
+	* help/gen_doc_cache.m: Change API so we only handle one directory per
+	call to this function.
+
+2009-02-12  Soren Hauberg  <hauberg@gmail.com>
+
+	* help/lookfor.m: Adapt to new cache scheme.
+
+2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/sortrows.m: Employ __sortrows_idx__ when applicable,
+	gripe for sparse matrices.
+
+2009-02-11  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/news.m: Look in octetcdir for NEWS file.
+
+2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/interp2.m: Added support for pchip bicubic interpolation.
+	Also simplified code and added support for natural extrapolation via
+	"extrap".
+
+2009-02-09  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/Makefile.in (SOURCES): Include __xzip__.m in the list.
+
+	* testfun/rundemos.m: Error if fopen fails.
+
+2009-02-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (install install-strip): Don't install ls-R file.
+	(uninstall): Don't uninstall ls-R file.
+
+2009-02-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Document support for complex holomorphic
+	systems. Improve guarded evaluation.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/news.m: Use puts instead of printf.
+
+2009-02-05  Thomas D. Dean  <tomdean@speakeasy.org>
+
+	* polynomial/polyout.m: Replace com2str with num2str, and minor
+	style changes.
+
+2009-02-04  John W. Eaton  <jwe@octave.org>
+
+	* help/which.m: Still print something sensible if type is empty.
+
+2009-02-04  Soren Hauberg  <hauberg@gmail.com>
+	    Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* miscellaneous/Makefile.in (SOURCES): Add bzip2.m to the list.
+
+2009-02-04  Frederick Umminger  <Frederick_Umminger@playstation.sony.com>
+
+	* signal/freqz.m: Ensure causal phase response.
+	Handle long input correctly.
+
+2009-02-04  Petr Mikulik  <mikulik@physics.muni.cz>
+
+	* plot/__go_draw_axes__.m: Pass "interpolate 0, 0" to gnuplot
+	instead of "interpolate 4, 4".
+
+2009-02-04  John W. Eaton  <jwe@octave.org>
+
+	* audio/wavwrite.m, deprecated/splu.m, general/bitcmp.m,
+	general/fliplr.m, general/flipud.m, general/genvarname.m,
+	general/nargchk.m, general/nargoutchk.m, general/quadgk.m,
+	general/rot90.m, geometry/griddata.m, geometry/rectint.m,
+	geometry/voronoi.m, geometry/voronoin.m,
+	help/__strip_html_tags__.m, image/brighten.m, image/imfinfo.m,
+	image/imread.m, linear-algebra/cond.m, linear-algebra/condest.m,
+	linear-algebra/dmult.m, linear-algebra/dot.m,
+	linear-algebra/expm.m, linear-algebra/housh.m,
+	linear-algebra/onenormest.m, linear-algebra/subspace.m,
+	miscellaneous/compare_versions.m, optimization/__all_opts__.m,
+	optimization/optimget.m, pkg/pkg.m, plot/__bar__.m,
+	plot/__plr2__.m, plot/ribbon.m, plot/slice.m, polynomial/pchip.m,
+	polynomial/roots.m, set/unique.m, signal/fractdiff.m,
+	signal/hurst.m, specfun/beta.m, specfun/legendre.m,
+	statistics/base/__quantile__.m, statistics/base/quantile.m,
+	statistics/tests/cor_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m, strings/base2dec.m,
+	strings/dec2base.m, strings/strcat.m, strings/validatestring.m,
+	time/addtodate.m: Style fixes.
+
+2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: remove redundant line.
+
+2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/Makefile.in: Add missing source.
+
+2009-02-02  Rob Mahurin  <rob@utk.edu>
+
+	* general/interpft.m: Increase tolerance in tests, for FFTPACK.
+
+2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__all_opts__.m: Yield empty list in recursive calls.
+	mlock to avoid unloading.
+
+2009-01-30  John W. Eaton  <jwe@octave.org>
+
+	* optimization/PKG_ADD: Delete.
+	* optimization/fsolve.m, optimization/fzero.m,
+	optimization/lsqnonneg.m: Use PKG_ADD: comment to call __all_opts__.
+
+2009-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__all_opts__.m: New source.
+	* optimization/optimset.m: Implement checking for registered options.
+	* optimization/optimget.m: Ditto.
+	* optimization/fsolve.m: Fix misspelled option.
+	* optimization/PKG_ADD: New startup file.
+
+2009-01-30  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Add support for transparent surfaces.
+	* plot/__gnuplot_has_feature__.m: Add feature 'transparent_surface',
+	Require gnuplot 4.3 for transparent patches and surfaces.
+
+2009-01-30  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* time/datestr.m: Convert YYYY to %Y instead of %C%y.
+	Convert [Dd][Dd] to %d instead of %e.
+
+2009-01-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/print.m: Use __gnuplot_has_feature__ instead of
+	compare_versions.
+
+	* plot/gnuplot_drawnow.m: Respect x11 figure position property.
+
+2009-01-29  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/fileparts.m: Match all possible file separators.
+
+2009-01-29  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Add support for transparent patches.
+
+2009-01-29  S�ren Hauberg  <hauberg@gmail.com>
+
+	* help/help.m, help/print_usage.m, help/get_first_help_sentence.m:
+	print sensible error message when function is found but not documented.
+
+	* help/help.m: Allow displaying 'Contents.m' files.
+
+2009-01-29  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/Makefile.in (SOURCES): Include diffuse.m, specular.m, and
+	surfl.m in the list.
+
+2009-01-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Style fixes.
+
+	* plot/__gnuplot_has_feature__.m: New file, checks for supported
+	feature.
+
+2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Don't use pivoting at all (for the time
+	being).
+
+2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Use more adaptive rescaling.
+	Put back the default tolerances based on machine eps respecting
+	the used precision. Partially reflect this in the default optimset
+	values.
+
+2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/ordefields.m: Use indexed assignment instead of a
+	loop. Fix for multidimensional cases.
+
+2009-01-27  John W. Eaton  <jwe@octave.org>
+
+	* general/arrayfun.m, image/imwrite.m, plot/axis.m, plot/clf.m,
+	plot/ribbon.m, plot/gnuplot_drawnow.m, plot/cla.m, set/unique.m:
+	Use endif or endfor instead of "end".
+
+	* path/savepath.m: Call command_line_path instead of commandlinepath.
+
+2009-01-27  Jason Riedy  <jason@acm.org>
+
+	* miscellaneous/orderfields.m: Really fix the indexing for struct
+	arrays.
+
+2009-01-27  Carlo de Falco  <kingcrimson@tsicali.it>
+
+	* polynomial/spline.m: Doc fix.
+
+2009-01-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* general/gradient.m: Handle computing the gradient of a function
+	handle.
+
+2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/lsqnonneg.m: Reimplement using QR updating for
+	square and overdetermined systems.
+
+2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Provide default values on request.
+	Adjust some defaults.
+	* optimization/fzero.m: Ditto.
+	* optimization/optimset.m: Query optimal values via the M*b way.
+
+2009-01-26  Jason Riedy  <jason@acm.org>
+
+	* miscellaneous/orderfields.m: Also avoid loop for non-empty structs.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Disable Broyden updates for sparse jacobians.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__fsolve_defopts__.m: Remove.
+	* optimization/Makefile.in: Reflect change.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__fdjac__.m: Fix setting up h.
+	* optimization/fsolve.m: Allow underdetermined systems. Use QR for
+	large enough square and overdetermined systems, with pivoting in the
+	first step. Simplify options. Adjust defaults - make TR radius
+	tolerance less stringent. Support DisplayFcn.
+
+2008-12-24 Ben Abbott  <bpabbott@mac.com>
+
+	* path/savepath.m: Respect cmd-line and env paths.
+
+2009-01-24 Ben Abbott  <bpabbott@mac.com>
+
+	* sparse/svds.m: svds.m: skip tests if ARPACK is missing.
+
+2009-01-23  S�ren Hauberg  <hauberg@gmail.com>
+
+	* help/type.m: Make 'type X' work, when X is the name of a variable.
+
+2009-01-22  John W. Eaton  <jwe@octave.org>
+
+	* help/which.m: New function.
+	* help/Makefile.in (SOURCES): Add it to the list.
+
+	* help/help.m: Also display location of the file before the help text.
+	* help/print_usage: Also display additional help text.
+	* help/__additional_help_message__.m: Return message instead of
+	displaying it.
+
+2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
+
+	* help: New directory.
+	* configure.in (AC_CONFIG_FILES): Add help/Makefile to the list.
+	* Makefile.in (SUBDIRS): Add it to the list.
+	* help/__additional_help_message__.m, help/__strip_html_tags__.m,
+	help/gen_doc_cache.m, help/get_first_help_sentence.m, help/help.m,
+	help/lookfor.m, help/makeinfo.m, help/print_usage.m, help/type.m:
+	New functions.
+	* help/Makefile.in (SOURCES): Add them to the list.
+	* help/doc.m: Move here from miscellaneous/doc.m.
+	* miscellaneous/Makefile.in (SOURCES): Remove doc.m from the list.
+	* miscellaneous/pkg.m: Generate documentation cache during install.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Undo the last change.
+
+2009-01-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* miscellaneous/doc.m: Add test for existence of info file.
+
+2009-01-21  John W. Eaton  <jwe@octave.org>
+
+	* plot/__axis_label__.m: Set properties in existing axis label
+	object instead of creating a new text object.
+	* plot/ylabel.m: Don't set rotation property here.
+	* plot/title.m: Don't set horizontalalignment property here.
+
+	* plot/ylabel.m: Insert rotation property in varargin before
+	passing it on to __axis_label__.
+	* plot/__axis_label__.m: Don't set rotation for ylabel here.
+
+	* plot/title.m: Insert horizontalalignment property in varargin
+	before passing it on to __axis_label__.
+
+2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strchr.m: New function.
+	* strings/Makefile.in: Add it.
+
+2009-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Only use qrupdate if available.
+
+2009-01-20  John W. Eaton  <jwe@octave.org>
+
+	* general/postpad.m: Doc fix.
+	* general/prepad.m: Doc fix.
+	* image/pink.m: Spelling fix.
+	* image/hsv.m: Doc fix.
+	From Francesco Potorti` <Potorti@isti.cnr.it>.
+
+	* testfun/assert.m: Use isfield instead of struct_contains.
+
+2009-01-17 Ben Abbott  <bpabbott@mac.com>
+
+	* general/cart2sph.m, cart2pol.m, sph2cart.m pol2cart.m:
+	Permit scalars when transforming coordinates.
+
+2009-01-17  Steven Verstoep  <isgoed@hotmail.com>
+
+	* plot/__quiver__.m: __quiver__.m: Fix auto-size of (x,y) coord.
+
+2009-01-16  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/gnuplot_drawnow.m: Fix for handling options.
+
+2009-01-16  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/legend.m: Fix legend order for both horizontal and
+	vertical string cell.
+
+2008-01-15  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/grid.m: Document handle argument.
+
+2009-01-15  Peter L. S�ndergaard  <peter@sonderport.dk>
+
+	* general/nargoutchk.m: Doc fix.
+	* general/nargchk.m: Improve compatibility.  New tests.
+
+2008-01-15  Rafael Laboissiere  <rafael@debian.org>
+
+	* gethelp.cc: Include <cstdio>.
+
+2009-01-14  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m (ticklabel_to_cell): New function.
+	Use it to handle non-cell ticklabels.
+
+2009-01-14  S�ren Hauberg  <hauberg@gmail.com>
+
+	* general/diff.m, general/logspace.m, general/nextpow2.m,
+	linear-algebra/commutation_matrix.m,
+	linear-algebra/duplication_matrix.m, linear-algebra/expm.m,
+	miscellaneous/bincoeff.m, miscellaneous/list_primes.m,
+	optimization/fsolve.m, plot/subplot.m, polynomial/pchip.m,
+	polynomial/polyout.m, polynomial/residue.m, polynomial/spline.m,
+	signal/freqz.m, signal/sinc.m, specfun/beta.m, specfun/betaln.m,
+	specfun/nchoosek.m, specfun/pow2.m, special-matrix/hankel.m,
+	special-matrix/hilb.m, special-matrix/invhilb.m
+	special-matrix/sylvester_matrix.m, special-matrix/toeplitz.m,
+	special-matrix/vander.m, statistics/base/gls.m,
+	statistics/base/kendall.m, statistics/base/kurtosis.m,
+	statistics/base/mean.m, statistics/base/median.m,
+	statistics/base/ols.m, statistics/base/skewness.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m:
+	Use ifnottex instead of ifinfo.
+
+2009-01-14  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/expm.m:
+
+	* optimization/fsolve.m: Doc fix.
+
+	* plot/__go_draw_axes__.m: Scale markersize by 1/3, not 1/6.
+
+	* io/dlmwrite.m: Use '%c' format for character data.
+
+2009-01-13  John W. Eaton  <jwe@octave.org>
+
+	* general/repmat.m: Handle negative row or column dimension.
+
+	* elfun/lcm.m, general/accumarray.m, general/bicubic.m,
+	general/cellidx.m, general/cplxpair.m, general/dblquad.m,
+	general/gradient.m, general/interp1.m , general/pol2cart.m,
+	general/quadgk.m, general/quadv.m, general/repmat.m,
+	general/structfun.m, geometry/griddata.m, geometry/inpolygon.m,
+	image/brighten.m, image/hsv2rgb.m, image/imread.m,
+	image/imwrite.m, linear-algebra/dmult.m,
+	linear-algebra/onenormest.m, miscellaneous/getfield.m,
+	miscellaneous/setfield.m, miscellaneous/what.m,
+	optimization/fsolve.m, optimization/fzero.m,
+	optimization/lsqnonneg.m, optimization/qp.m, pkg/pkg.m,
+	plot/__area__.m, plot/__clabel__.m, plot/__stem__.m, plot/axis.m,
+	plot/colorbar.m, plot/contour3.m, plot/findall.m, plot/findobj.m,
+	plot/fplot.m, plot/grid.m, plot/hist.m, polynomial/convn.m,
+	polynomial/polyreduce.m, set/intersect.m, set/setxor.m,
+	set/union.m, signal/arch_fit.m, signal/durbinlevinson.m,
+	signal/fftshift.m, signal/freqz_plot.m, signal/ifftshift.m,
+	signal/spectral_adf.m, sparse/bicgstab.m, sparse/cgs.m,
+	sparse/gplot.m, sparse/normest.m, sparse/pcg.m, sparse/pcr.m,
+	sparse/spy.m, sparse/svds.m, sparse/treelayout.m,
+	sparse/treeplot.m, specfun/primes.m, special-matrix/hadamard.m,
+	statistics/base/center.m, statistics/base/quantile.m,
+	statistics/base/ranks.m, statistics/base/std.m,
+	statistics/distributions/hygepdf.m,
+	statistics/tests/kruskal_wallis_test.m, strings/index.m,
+	strings/mat2str.m, strings/str2double.m, strings/strrep.m,
+	testfun/assert.m, testfun/example.m, testfun/fail.m,
+	testfun/speed.m, testfun/test.m: Style fixes.
+
+	* audio/wavread.m, general/__splinen__.m, general/bicubic.m,
+	general/rat.m, linear-algebra/expm.m, linear-algebra/krylov.m,
+	linear-algebra/onenormest.m, miscellaneous/edit.m,
+	optimization/__dogleg__.m, pkg/pkg.m, plot/__errplot__.m,
+	plot/__go_draw_axes__.m, plot/__stem__.m, plot/findobj.m,
+	set/ismember.m, signal/arma_rnd.m, signal/freqz.m, signal/stft.m,
+	sparse/pcg.m, sparse/sprandsym.m, sparse/treelayout.m,
+	specfun/factor.m, specfun/nchoosek.m, specfun/primes.m,
+	statistics/base/quantile.m, statistics/base/values.m,
+	strings/findstr.m, strings/str2double.m, strings/strrep.m,
+	testfun/assert.m, testfun/fail.m, testfun/speed.m, testfun/test.m,
+	time/datestr.m, time/datevec.m: Comment style fixes.
+
+2009-01-13  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* set/unique.m: Fix for vertical array inputs.
+
+2009-01-12  John W. Eaton  <jwe@octave.org>
+
+	* optimization/fzero.m, optimization/fsolve.m: Style fixes.
+	Use strcmpi to compare options.
+
+2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strings/strvcat.m: Remove.
+	* strings/Makefile.in (SOURCES): Remove strvcat.m.
+
+2009-01-12  John W. Eaton  <jwe@octave.org>
+
+	* plot/diffuse.m, plot/surfl.m, plot/specular.m: Style fixes.
+
+2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/sortrows.m: Fix invalid `{x:y} = z' assignment.
+	* miscellaneous/orderfields.m: Ditto.
+	* miscellaneous/what.m: Ditto.
+	* pkg/pkg.m: Ditto.
+	* plot/ndgrid.m: Ditto.
+	* strings/strcat.m: Ditto.
+
+2009-01-09  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/surfl.m: New function
+	* plot/diffuse.m: Ditto.
+	* plot/specular.m: Ditto.
+
+2009-01-05  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Set defaults for FIND and PERL.  Check usage.
+
+2009-01-01  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* miscellaneous/__xzip__.m: Fix error messages, add tests.
+
+2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* general/int2str.m, general/num2str.m, strings/base2dec.m,
+	strings/blanks.m, strings/cstrcat.m, strings/findstr.m,
+	strings/isstrprop.m, strings/mat2str.m, strings/regexptranslate.m,
+	strings/split.m, strings/str2double.m, strings/str2num.m,
+	strings/strcat.m, strings/strcmpi.m, strings/strfind.m,
+	strings/strjust.m, strings/strmatch.m, strings/strncmpi.m,
+	strings/strrep.m, strings/strtok.m, strings/strtrim.m,
+	strings/strtrunc.m, strings/strvcat.m, strings/substr.m:
+	Fix documentation strings, add examples, references and tests.
+	* general/int2str.m: Add missing semicolon.
+	* strings/regexptranslate.m: add nargin check.
+	* strings/str2double.m: fix nargin check.
+
+2008-12-29  David Bateman  <dbateman@free.fr>
+
+	* goemetry/voronoi.m: Speed up and handle dense grids.
+
+2008-12-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* miscellaneous/delete.m: Allow filename globs. Display warnings if
+	operation fails.
+
+2008-12-26  Francesco Potortì  <pot@gnu.org>
+
+	* general/prepad.m: Add reference to postpad.
+
+	* miscellaneous/bincoeff.m: Make reference to nchoosek.
+
+	* general/postpad.m: Use @seealso.  Add reference to resize.
+
+	* statistics/base/statistics.m: Correct help string.
+
+	* plot/hist.m: Doc string now mentions matrix input argument.
+	Correct error message.
+
+2008-12-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__contour__.m: __contour__.m: correct order of patches
+
+2008-12-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__contour__.m: __contour__.m: correct order of patches
+
+2008-12-24  Doug Stewart  <dastew@sympatico.ca>
+
+	* plot/grid.m: Handle "minor" option.
+
+2008-12-24  John W. Eaton  <jwe@octave.org>
+
+	* testfun/test.m: Print "has no tests" message if there are demos
+	but no tests instead of printing PASSES 0 out of 0 tests.
+
+2008-12-23  David Bateman  <dbateman@free.fr>
+
+	* sparse/svds.m: New function.
+	* sparse/Makefile.in (SOURCES): Add it here.
+
+2008-11-21  Radek Salac  <salac.r@gmail.com>
+
+	* sparse/bicgstab.m: New function.
+	* sparse/Makefile.in (SOURCES): Add it here.
+
+2008-12-18  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* time/datevec.m (__date_vfmt2sfmt__): New helper function.
+	(datevec): Avoid repeated parsing of the format string.
+	* set/unique.m: Only check for options if nargin > 1.
+
+2008-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/lsqnonneg.m: Preprocess using QR for over-determined
+	systems. Simplify & fix indexing. Use left division for step problem.
+	Fix output args.
+
+2008-12-13  Francesco Potort�  <pot@gnu.org>
+
+	* specfun/nchoosek.m: Check for input arguments, signal loss of
+	precision, correctly handle k==0 and k==n cases, add proper tests.
+
+2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fsolve.m: Optionally allow pivoted qr factorization.
+
+2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/expm.m: New source.
+
+2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/nchoosek.m: Use a recursionless approach.
+
+2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/repmat.m: Optimize & simplify the scalar & 2d matrix case.
+
+2008-12-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strings/lower.m: Remove.
+	* strings/upper.m: Remove.
+	* strings/Makefile.in: Remove lower.m, upper.m.
+
+2008-12-02  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strings/str2mat.m: Make it a simple wrapper around
+	char() and move it to deprecated/str2mat.m, remove
+	obsolete tests, move remaining test to src/strfns.cc (Fchar).
+	* strings/Makefile.in: Remove str2mat.m.
+	* deprecated/Makefile.in: Add str2mat.m.
+	* strings/strvcat.m: Remove reference to str2mat.
+
+2008-11-28  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Set two point clipping mode to be on.
+
+2008-11-26  Francesco Potortì  <pot@gnu.org>
+
+	* specfun/nchoosek.m: Set max_recursion_depth and use a subfunction.
+
+2008-11-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* miscellaneous/gzip.m: Remove @seealso reference to __xzip__,
+	improve tests.
+	* miscellaneous/bzip2.m: Remove @seealso reference to __xzip__,
+	fix handling of output argument, add test.
+	* miscellaneous/__xzip__.m: Improve error messages, fix cleanup
+	of temporary directories, remove tab characters
+
+2008-11-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/legend.m: Correct ording of legend labels.
+
+2008-11-24  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Correct order for rendering children.
+
+2008-11-21  Radek Salac  <salac.r@gmail.com>
+
+	* sparse/cgs.m, sparse/treelayout.m: New functions.
+	* sparse/Makefile.in (SOURCES): Add them here.
+
+2008-11-14  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m (do_tics_1): Support the minorick properties
+	of the axis object.
+
+2008-11-14  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/gnuplot_drawnow.m: Add support of properites to gp backend.
+
+2008-11-13  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/chi2rnd.m: Fix another missing semicolon.
+	From sven.mattisson@insatnet.nu.
+
+2008-11-12  David Bateman  <dbateman@free.fr>
+
+	* plot/__quiver__.m: Only autoscale if more than one element to
+	plot. Modify callbacks for change in order of children.
+	* plot/__stem__.m: Modify callbacks for change in order of children.
+
+2008-11-10  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/spline.m: Delete debugging statements.  From
+	Sebastian Sch�ps <sebastian@schoeps.org>.
+
+2008-11-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* mkdoc: do not remove white space before @ within @example
+	environment
+
+2008-11-05  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* plot/subplot.m: fix texi bug
+
+2008-11-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* miscellaneous/unpack.m: return directly after recursive handling
+	of cell-strings
+
+2008-11-03  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: xticklabel should accept a numeric vector.
+
+2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/__fdjac__.m: New function file.
+	* optimization/__dogleg__.m: New function file.
+	* optimization/fsolve.m: New function file.
+	* optimization/Makefile.in: Include the new sources.
+
+2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: Replace tabs by spaces.
+
+2008-09-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: Simplify exception handling.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/fzero.m: New function file.
+	* optimization/Makefile.in: Add it.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/optimset.m: Don't include empty options in option
+	structure.
+	* optimization/optimget.m: New function file.
+	* optimization/Makefile.in: Add it.
+	* optimization/lsqnonneg.m: Query options using optimget.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/__norm__.m: Remove.
+
+2008-10-25  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* miscellaneous/bzip2.m, miscellaneous/__xzip__.m: new commands.
+	* miscellaneous/gzip.m: change to use __xzip__ for actual compression,
+	add tests.
+
+2008-10-31  David Bateman  <dbateman@free.fr>
+
+	* plot/__contour__.m: Exclude infinite values when calculating contour
+	levels.
+	* plot/clabel.m: Close previous plots in demos to avoid pollution
+	between other plot demos.
+	* plot/plotyy.m: Ditto.
+
+2008-10-30  David Bateman  <dbateman@free.fr>
+
+	* plot/legend.m: Add support for the "left" and "right" options.
+	* plot/__go_draw_axes__.m: If the axes property keyreverse is set,
+	reverse the key and labelling text.
+
+	* plot/__clabel__.m, plot/clabel.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them here.
+	* plot/__contour__.m: Rewrite to use contour groups.
+	* plot/contourf.m: Call __contour__ instead of using specific code.
+	* plot/contour.m, plot/contour3.m: Minor modification to allow for
+	new interface to __contour__.
+
+2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* set/create_set.m, set/ismember.m, set/union.m, set/complement.m:
+	Fix @seealso references to deprecated function intersection.
+	* polynomial/polyvalm.m, polynomial/polyout.m,
+	polynomial/polyint.m, polynomial/polygcd.m,
+	deprecated/polyinteg.m: Remove "and" from @seealso string.
+	* specfun/betaln.m: Change @seealso reference from deprecated
+	betai to betainc.
+	* plot/plot.m, plot/xlabel.m, plot/ylabel.m, plot/zlabel.m,
+	plot/plot3.m: Fix @seealso references to ylabel and zlabel.
+	* general/issymmetric.m, image/imagesc.m, specfun/realpow.m,
+	polynomial/polyfit.m, time/eomday.m: Remove @seealso references to
+	non-existent functions.
+
+2008-10-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/cla.m: In test, set visible off when creating figure.
+
+2008-10-28  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* optimization/qp.m: Convert bounds of the form b <= x <= b and
+	constraints of the form b <= A*x <= b to equality constraints.
+
+2008-10-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* plot/ellipsoid.m: Check nargin == 6, not nargin == 5.
+
+2008-10-22  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/cla.m: Fix error when no children to clear.
+
+	* plot/findobj.m: Allow handle to be empty.
+
+2008-10-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/allchild.m: Move call to get showhiddenhandles outside of
+	unwind_protect block.
+
+2008-10-22  David Bateman  <dbateman@free.fr>
+
+	* plot/refreshdata.m: Modify demo so that "y" is evaluated in the
+	"caller" workspace.
+
+	* plot/__errplot__.m: Add errorbar series objects.
+	* plot/errbar.m: Add some demos.
+
+	* plot/__add_line_series__.m: Remove
+	* plot/Makefile.in (SOURCES): Remove it here too.
+	* plot/__add_datasource__.m: Allow for more than one character in
+	source name.
+	* plot/refreshdata.m: Ditto.
+	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vv__.m,
+	plot/__plt2vs__.m, plot3.m: Remove previous line series changes.
+	* plot/__scatter__.m: Add scatter series objects and data sources.
+	* plot/legend.m: Update type in loop and remove debugging messages.
+
+2008-10-21  Ben Abbott  <bpabbott@mac.com>
+
+	* specfun/legendre.m: Warn once on under/overflow.
+
+	* plot/clf.m: Improve Matlab compatibility.
+
+2008-10-21  John W. Eaton  <jwe@octave.org>
+
+	* plot/quiver3.m: Turn hold off after demo.
+
+	* plot/newplot.m: Delete stray debugging code.
+
+	* plot/gnuplot_drawnow.m: Pass handle to __go_draw_figure__, not
+	struct.  Use get instead of examining struct fields directly.
+	* plot/__go_draw_figure__.m: First arg is now handle, not figure
+	object struct.  Use get instead of examining struct elements
+	directly.  Use allhild instead of looking at children field of
+	figure object struct.
+
+2008-10-20  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/orient.m: Fix syntax error.
+
+2008-10-20  David Bateman  <dbateman@free.fr>
+
+	* testfun/rundemos.m: Pause between files, as demo itself doesn't.
+
+	* plot/fill.m, plot/quiver.m: Quiet the demos.
+	* plot/stair.m: Treat a line style argument correctly.
+
+2008-10-20  John W. Eaton  <jwe@octave.org>
+
+	* plot/surfnorm.m: Save and restore hold state.
+	From Daniel J. Sebald <daniel.sebald@ieee.org> and
+	Ben Abbott <bpabbott@mac.com>.
+
+2008-10-20  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/closereq.m: Respect property tag.
+
+	* plot/__stem__.m: Respect new ordering of children when setting
+	baseline.
+
+	* plot/orient.m, plot/print.m: Properly validate figure handle.
+
+	* plot/hold.m, plot/comet.m: Properly validate axes handle.
+
+	* plot/__go_draw_axes__.m: Fix for binary xfer of suface plots.
+
+2008-10-20  David Bateman  <dbateman@free.fr>
+
+	* plot/plotyy.m: Test that an axes handle actually is one before
+	setting it.
+
+2008-10-17  David Bateman  <dbateman@free.fr>
+
+	* plot/__plt_get_axis_arg__.m: Exclude non-numeric and root figure
+	from potential axis handles.
+	* plot/colorbar.m: Remove debug output.
+	* plot/comet.m: Close plot before demo
+	* plot/contourc.m: No output if nargout == 0.
+
+2008-10-16  David Bateman  <dbateman@free.fr>
+
+	* plot/subplot.m: Allow for column vector of children for figure.
+
+2008-10-16  John W. Eaton  <jwe@octave.org>
+
+	* testfun/rundemos.m: New function.
+
+2008-10-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/contourf.m: Correct order of patch object handles.
+
+2008-10-16  David Bateman  <dbateman@free.fr>
+
+	* plot/colorbar.m (colorbar:resetaxis): Uncomment the reseting of
+	the axes.
+
+	* plot/newplot.m: Don't preserve axes properties here, but rather
+	do it in the graphics handle code so that the preservation can be
+	done after callbacks are executed.
+
+	* plot/__go_draw_axes__.m: If current plot is an image, don't flag
+	the plot as binary, as the binary specification is already in the
+	"usingclause".
+
+	* plot/__go_draw_figure__.m: Always use multiplot and create an
+	enclosing axis to ensure bounding box of postscript is correct.
+
+2008-10-16  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m (do_tics_1): New arg, interpreter.
+	(do_tics): Pass interpreter to do_tics_1.
+
+2008-10-15  David Bateman  <dbateman@free.fr>
+
+	* general/colon.m: Small typo.
+	* general/loadobj.m: Ditto.
+
+2008-10-14  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m (do_tics_1): New args, fontname and fontsize.
+	Pass fontspec for tic marks to gnuplot.
+	(do_tics): Pass axes fontname and fontsize to do_tics_1.
+
+	* plot/newplot.m: Perserve fontangle, fontname, fontsize,
+	fontunits, fontweight, position, outerposition, and
+	activepositionproperty axes properties when replacing plot.
+
+2008-10-15  Daniel J. Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__go_draw_axes__.m: Make previous change work for surface
+	plots.
+
+2008-10-14  Daniel J. Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__go_draw_axes__.m: Send binary data to gnuplot.
+
+2008-10-13  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix concatenation of handles.
+
+2008-10-12  David Bateman  <dbateman@free.fr>
+
+	* general/colon..m: New function.
+	* general/Makefile.in (SOURCES): Add it here.
+
+2008-10-10  David Bateman  <dbateman@free.fr>
+
+	* image/__img__.m: Manually set the limits of th eimage
+	* plot/__go_draw_axes__.m: Base window position in the axis
+	position property and not the outerposition property. Remove
+	colorbar code based on the gnuplot colorbox. Allow images to be a
+	vector to support image based colorbars. Also check labelmode for
+	manual tics.
+	* plot/__go_draw_figure__.m: Remove gnuplot colorbox based
+	colorbar code.
+	* plot/colorbar.m: Rewrite to use an image and callbacks to link
+	it to the principal axis.
+	* plot/legend.m: Support an axis handle as the first
+	argument. Support hggroups.
+	* plot/pareto.m: Don't support an axis handle as the first
+	argument as the plotyy command in fact needs two axis handles.
+	* plot/plotyy.m: Rewrite to use listeners and callbacks to
+	synchronize the two axes.
+	* plot/subplot.m: Also skip axes that are tagged as being a
+	colorbar. Don't break in search of overlapping axes to delete. Set
+	both the position and the outerposition.
+
+2008-10-09  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__axis_label__.m: Inherit font properties from axes.
+
+2008-10-09  David Bateman  <dbateman@free.fr>
+
+	* general/loadobj.m, general/saveobj.m, general/display: New functions
+	* general/Makefile.in (SOURCES): Add then here.
+
+2008-10-08  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/fileparts.m: Handle "/file" properly.
+	Improve compatibility.
+
+2008-10-07  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/cla.m: New function.
+	* plot/Makefile.in (SOURCES): Add it to the list.
+
+2008-10-07  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/delete.m: Pass array of handles to __go_delete__.
+
+2008-10-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/__add_datasource__.m, plot/__axes_limits__.m,
+	plot/__bar__.m, plot/__bars__.m, plot/__contour__.m,
+	plot/__go_draw_axes__.m, plot/__go_draw_figure__.m,
+	plot/__patch__.m, plot/__quiver__.m, plot/__scatter__.m,
+	plot/__stem__.m, plot/ancestor.m, plot/axis.m, plot/box.m,
+	plot/caxis.m, plot/close.m, plot/colorbar.m, plot/fill.m,
+	plot/findobj.m, plot/grid.m, plot/hidden.m, plot/hold.m,
+	plot/ishold.m, plot/legend.m, plot/linkprop.m, plot/orient.m,
+	plot/plotmatrix.m, plot/shading.m: Use case-insensitive comparison
+	for properties.  Misc style fixes.
+
+2008-10-06  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/orient.m: Figure handle must be scalar.
+	* plot/hold.m: Axis handle must be scalar.
+	* plot/axes.m: Axis handle must be scalar.
+	* plot/__plt_get_axis_arg__.m: Handle must be scalar.
+
+	* miscellaneous/delete.m: Permit a vector of handles to be deleted.
+
+2008-10-02  John W. Eaton  <jwe@octave.org>
+
+	* pkg/pkg.m (configure_make): Handle filenames with spaces.
+
+2008-10-02  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* pkg.m (configure_make): Enclose building directory in quotes.
+
+2008-10-02  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Remove depdenence on gnuplot version.
+
+2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* string/split.m: New tests.
+
+2008-09-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/__go_draw_axes__.m: Fix interpolation of facecolors.
+
+	* plot/shading.m: New demo.
+
+2008-09-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Eliminate have_newer_gnuplot variable.
+
+	* plot/__gnuplot_version__.m: Also include patchlevel.
+
+2008-09-29  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/deconv.m: Fix row/col orientation & length of output.
+
+	* polynomial/conv.m: Correct row/col orientation of output.
+
+2008-09-27  Ivan Sutoris  <ivan.sutoris@gmail.com>
+
+	* optimization/sqp.m: Document additional parameters.
+
+2008-09-26  David Bateman  <dbateman@free.fr>
+
+	* general/subsindex.m: Dummy subsindex function for help string
+	and to throw error for use outside of a class
+	* general/Makefile.in (SOURCES): Include it here.
+
+2008-09-26  John W. Eaton  <jwe@octave.org>
+
+	* image/imfinfo.m: Delete temporary file.
+
+2008-09-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imread.m, image/imwrite.m: Doc fix.
+
+2008-09-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/fplot.m: Call axis after calling plot.
+
+2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imfinfo.m: New function.
+	* image/Makefile.in (SOURCES): Add it to the list.
+
+2008-09-24  Ben Abbott  <bpabbott@mac.com>
+
+	* strings/strcat.m: Improve Matlab compatibility for non-character
+	data.
+
+2008-09-24  John W. Eaton  <jwe@octave.org>
+
+	* general/interpft.m: Increase tolerance in tests.
+
+2008-09-23  Francesco Potorti`  <Potorti@isti.cnr.it>
+
+	* plot/pcolor.m: Improve doc string.
+
+2008-09-22 Ben Abbott  <bpabbott@mac.com>
+
+	* plot/comet.m: New file.
+	* plot/Makefile.in (SOURCES): Add it here.
+
+2008-09-22  David Bateman  <dbateman@free.fr>
+
+	* plot/plotmatrix.m: New function.
+	* plot/Makefile.in (SOURCES): Add it here.
+
+	* general/quadgk.m: No function count in quadgk and so don't try and
+	print it when given trace argument.
+
+2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/blkdiag.m: Skip assignment if rhs is empty.
+
+2008-09-18  Kris Thielemans  <kris.thielemans@csc.mrc.ac.uk>
+
+	* image/imshow.m: Fix for display_range.
+
+	* general/interpn.m: Fixe for extrapval and documentation of
+	extrapval.
+
+2008-09-17  David Bateman  <dbateman@free.fr>
+
+	* time/datetick.m: New function.
+	* time/Makefile.in (SOURCES): Add it here.
+	* time/datestr.m: More careful check for datevec format with 6
+	column arguments.
+	* plot/__go_draw_axes__ (do_tics_1): Use %.15g format rather than
+	%g format. Also use manual mode if xlabelmode is manual.
+
+	* general/cell2mat.m: Backout previous change. Special case 2D
+	case for speed.
+
+2008-09-11  David Bateman  <dbateman@free.fr>
+
+	* general/cell2mat.m: Improve the speed.
+
+2008-09-09  John W. Eaton  <jwe@octave.org>
+
+	* time/datestr.m: Convert format and use strftime to do most of
+	the actual conversion.
+
+2008-09-08  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* plot/plot.m: Doc fix.
+
+2008-09-08  Mark van Rossum  <mvanross@inf.ed.ac.uk>
+
+	* statistics/distributions/binornd.m: Handle zero values of n
+	correctly.
+
+2008-09-08  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/contourf.m: Fix case for equal-sized matrices
+	of X and Y.
+
+2008-09-02  David Bateman  <dbateman@free.fr>
+
+	* plot/__add_datasource__.m: Fix indexing of varargin.
+
+	* plot/__line__.m: Remove empty clause fof if/then/else test
+	* plot/plot3.m: Correctly plot matrices.
+
+2008-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
+	plot/__plt2vv__.m: Do not call "set" with empty arguments.
+
+2008-08-29  David Bateman  <dbateman@free.fr>
+
+	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
+	plot/__plt2vv__.m, plot/plot3.m, plot/__area__.m, plot/__bars__.m,
+	plot/__quiver__.m, plot/__stem__.m, plot/stairs.m :
+	Pass additional prop/val pairs to hggroup rather than underlying
+	objects. If a baseline existings specifically associate it with
+	the parent of the created hggroup to allow things like "stem(...,
+	'parent', hg)" to work correctly.
+	* plot/hold.m: If currentaxes if figure doesn't exist, create it.
+
+	* plot/plot3.m: Pass hline to __add_line_series__.
+	* plot/__add_datasource__.m: Fix off by one error.
+
+2008-08-28  David Bateman  <dbateman@free.fr>
+
+	* plot/__add_line_series__.m, plot/ishghandle.m, plot/linkprop.m,
+	plot/refresh.m, plot/refreshdata.m: New functions
+	* Makefile.in (SOURCES): Add them here.
+
+	* plot/__area__.m, plot/__bars__.m, plot/__quiver__.m,
+	plot/__stem__.m, plot/stairs.m, plot/stem.m: Add data sources.
+
+	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2sv__.m, plot/__plt2vm__.m, plot/__plt2vs__.m,
+	plot/__plt2vv__.m, plot/plot3.m: Add line series and data sources.
+
+2008-08-28  Martin Weiser  <weiser2@natur.cuni.cz>
+
+	* plot/scatter3.m: Doc fix.
+
+2008-08-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/hold.m: If hold is applied to a figure, set state for all
+	child axes objects.
+
+2008-08-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/backend.m: New function to handle backend switch.
+	* plot/Makefile.in: Add it.
+
+2008-08-26  David Bateman  <dbateman@free.fr>
+
+	* plot/__area__.m: Use __next_line_color__ rather than fixed set
+	of colors. Convert to use area series objects.
+	* plot/area.m: Update documentation to correspond to
+	the area series usage.
+	* plot/__bar.m: Pass the original rather than scaled width to
+	__bars__.
+	* plot/__bars__.m: Convert to use bar series objects.
+	* plot/bar.m, plor/barh.m:  Update documentation to correspond to
+	the bar series usage.
+	* plot/__quiver__.m: Convert to use quiver series objects. Change
+	the default scaling and arrowsize for compatibility.
+	* plot/quiver.m:  Update documentation to correspond to
+	the quiver series usage.
+	* plot/stairs.m: Convert to use stair series objects.
+	* plot/stem.m: Don't include baseline in xlim calculation. Correct
+	test of whether baseline xdata needs updating in the update_xlim
+	callback.
+
+2008-08-25  Thomas L. Scofield  <scofield@calvin.edu>
+
+	* image/imwrite.m: Add ras and tiff to the list of accepted formats.
+	Handle parameter-value options.  Untabify.
+
+2008-08-25  David Bateman  <dbateman@free.fr>
+
+	* plot/__stem__.m: Use property inheritance and don't explicitly
+	call drawnow.
+
+	* plot/__go_draw_axes__.m: Respect the "visible" property of object and
+	don't draw them if the object is not visible.
+
+	* plot/__stem__.m: Convert to use stem series object.
+	* plot/stem.m, plot/stem3.m: Update documentation to correspond to
+	the stem series usage.
+
+2008-08-22  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/chi2rnd.m: Fix missing semicolon.
+
+2008-08-21  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Fix test for have_data.
+	(__gnuplot_write_data__): Write "Inf Inf\n" if all data pairs
+	contain NaN values.
+
+2008-08-21  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* optimization/sqp.m: Increase test script tolerance.
+
+2008-08-21  David Bateman  <dbateman@free.fr>
+
+	* plot/ezplot.m : New function.
+	* plot/Makefile.in (SOURCES): Add ezplot.m to the list.
+	* plot/__ezplot__.m: Adapt to allow for use with the ezplot function.
+
+2008-08-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pkg/pkg.m (configure_make): Pass handle to is_architecture_dependent
+	directly.
+
+2008-08-20  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Don't set pm3d implicit if the plot
+	contains a surface. Fixes things like meshc(peaks()).
+
+2008-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* optimization/glpk.m: Fix invalid call to zeros.
+
+2008-08-19  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/intwarning.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it here.
+
+	* statistics/base/ranks.m: Doc fix.
+
+2008-08-08  John W. Eaton  <jwe@octave.org>
+
+	* general/Makefile.in (SOURCES): Add cellidx.m to the list.
+
+2008-08-07  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc: Delete definition of NPOS.
+
+2008-08-04  John W. Eaton  <jwe@octave.org>
+
+	* strings/strtok.m: Include TAB, LF, VT, FF, and CR in default
+	list of delim characters.  Update tests.
+
+2008-07-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* general/arrayfun.m: Minor bug fixes, update help text and tests
+
+2008-07-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/axis.m (__get_tight_lims__): Use strcat instead of [].
+	Don't fail if data is not a vector.
+
+2008-07-29  David Bateman  <dbateman@free.fr>
+
+	* general/cellidx.m: reinclude from control toolbox, as used by
+	print command. Replace is_signal_list with iscellstr.
+	* general/quadqk.m, linear-algebra/planeror.m,
+	miscellaneous/namelengthmax.m, specfun/realpow.m: Miscellaneous
+	documentation fixes.
+
+	* control, finance, quaternion: Remove directories and all of the
+	files they contain.
+	* Makefile.in: Remove all references to the above directories.
+	* configure.in: ditto.
+
+2008-07-28  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/hold.m: Clarify help text.
+
+	* specfun/reallog.m: Fix help string.
+
+2008-07-28  David Bateman  <dbateman@free.fr>
+
+	* strings/regexptranslate.m: Add real documentation.
+
+	* plot/contourf.m: Allow X,Y to be unequal vectors.
+
+	* plot/shading.m: Clarify help string.
+
+	* general/genvarname.m: Trivial documentation fix.
+
+2008-07-28  John W. Eaton  <jwe@octave.org>
+
+	* image/imwrite.m: New function.
+	* image/Makefile.in (SOURCES): Add it to the list.
+
+2008-07-24  Ben Abbott  <bpabbott@mac.com>
+
+	* time/datestr.m: New xtest.
+
+2008-07-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/closereq.m: Use first gcbf to get the handle of the figure to
+	be closed.
+	* plot/close.m: Call __go_execute_callback__.
+
+2008-07-17  John W. Eaton  <jwe@octave.org>
+
+	* general/fliplr.m: Fix usage test.
+	* testfun/test.m: Fix usage tests.
+
+2008-07-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/base/cov.m: Fix test that should no longer work.
+
+2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/gcbo.m, plot/gcbf.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+2008-07-16  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/loadimage.m: New file.
+	* deprecated/Makefile.in (SOURCES): Add it to the list.
+	* image/loadimage.m: Delete.
+	* image/Makefile.in (SOURCES): Remove it from the list.
+	* image/imread.m: Incorporate loadimage functionality here.
+	Simplify.
+	* image/imshow.m: Call imread, not loadimage.
+
+	* image/__img__.m: Set clim for true-color integer data.
+
+	* image/imshow.m: Don't convert integer true-color data to double.
+
+	* plot/__go_draw_axes__.m: Recognize 3-d cdata as a true-color image.
+
+2008-07-14  John W. Eaton  <jwe@octave.org>
+
+	* image/Makefile.in (SOURCES): Add imread.m to the list.
+
+2008-07-14  Thomas L. Scofield  <scofield@calvin.edu>
+
+	* image/imread.m: New file from Octave Forge.
+
+2008-07-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* set/unique.m: Implement 'first' and 'last', some simplifications.
+	* set/union.m: Implement output indices.
+	* set/intersect.m: Implement 'rows'.
+	* set/setdiff.m: Implement output indices.
+	* set/setxor.m: Implement 'rows' and output indices.
+	Add tests and adjust docs in all of the above.
+
+2008-06-11  John W. Eaton  <jwe@octave.org>
+
+	* set/ismember.m: Fix fail tests.
+
+	* general/rat.m: Properly initialize steps when all elements of
+	input array are integers.  Append spaces as necessary when
+	building  character array.
+
+2008-06-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* plot/__go_draw_axes__.m: Use fprintf for formatted output.
+
+2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__go_draw_axes__.m: Support hggroup objects.
+	* plot/hggroup.m: New file.
+	* plot/Makefile.in: Handle it.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/debug.m: New file..
+	* Makefile.in (SOURCES): Add it to the list.
+
+	* general/interp1q.m: Remove spaces between functions and args in
+	[]. Fix test code to actually test interp1q.
+
+2008-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strings/strcat.m: Add tests.
+
+2008-06-02  Kim Hansen  <kimhanse@gmail.com>
+
+	* strings/mat2str.m: Change is_complex to iscomplex, add tests, add
+	missing ;
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/single.m: Remove.
+	* Makefile.in (SOURCES): Remove it here as well.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* general/interp1q.m: New function.
+	* general/Makefile.in (SOURCES): Add it here.
+
+2008-05-20  Bill Denney  <bill@denney.ws>
+
+	* time/datenum.m: Allow mixed scalar and vector/matrix input.
+	New tests.
+
+2008-05-19  John W. Eaton  <jwe@octave.org>
+
+	* general/isa.m: Fix tests.
+
+2008-05-13  Bill Denney  <bill@denney.ws>
+
+	* general/isa.m: Use persistent cell arrays to hold class names
+	instead of multiple strcmp calls.
+
+2008-05-12  David Bateman  <dbateman@free.fr>
+
+	* control/base/__stepimp__.m, control/base/bode_bounds.m,
+	control/base/damp.m, control/base/dlqr.m, control/base/lsim.m,
+	control/base/tzero.m, control/hinf/hinfsyn.m,
+	control/hinf/is_dgkf.m, control/system/d2c.m,
+	control/system/is_controllable.m, control/system/is_detectable.m,
+	control/system/is_stabilizable.m, control/system/is_stable.m,
+	control/system/sysconnect.m, general/bicubic.m,
+	general/cplxpair.m, general/isdefinite.m, general/issymmetric.m,
+	general/quadgk.m, general/quadl.m, general/quadv.m,
+	geometry/delaunayn.m, linear-algebra/krylov.m,
+	linear-algebra/null.m, linear-algebra/onenormest.m,
+	linear-algebra/orth.m, linear-algebra/rank.m,
+	linear-algebra/rref.m, optimization/qp.m, optimization/sqp.m,
+	polynomial/polygcd.m, polynomial/residue.m, sparse/normest.m,
+	specfun/erfinv.m, statistics/distributions/betainv.m,
+	statistics/distributions/gaminv.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/tests/manova.m: Modify calls to eps to allow for single
+	precision types.
+
+	* general/isa.m: Also treat "float: and "numeric" as the class
+	argument.
+
+	* general/dblquad.m, general/quadgk.m, general/quadv.m,
+	general/triplequad.m: New functions.
+
+	* testfun/assert.m: Allow assert(cond, errmsg, ...) and
+	assert(cond, msgid, errmsg, ...) syntax for compatibility.
+
+2008-05-09  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* miscellaneous/news.m: Replace deprecated isstr call.
+
+2008-05-06  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/symvar.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+2008-05-04  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dbstack.m: Delete.
+	* miscellaneous/Makefile.in (SOURCES): Remove it from the list.
+
+2008-05-03  Rafael Laboissiere  <rafael@debian.org>
+
+	* linear-algebra/cond.m, miscellaneous/version.m,
+	miscellaneous/version.m, plot/feather.m, plot/__bar__.m,
+	plot/compass.m, plot/__quiver__.m, plot/__scatter__.m: Use ischar
+	instead of deprecated isstr.
+
+2008-05-01  David Bateman  <dbateman@free.fr>
+
+	* plot/plot.m: Remove documentation of 'L' option.
+	* plot/stairs.m: Allow axis handles, properties and linespecs to
+	be passed.
+
+2008-04-30  John W. Eaton  <jwe@octave.org>
+
+	* elfun/acot.m, elfun/acsc.m, elfun/acsch.m, elfun/asec.m,
+	elfun/asech.m, specfun/pow2.m: Fix tests.
+
+2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* specfun/log2.m: Delete.
+	* specfun/Makefile.in (SOURCES): Delete it from the list.
+
+2008-04-29  David Bateman  <dbateman@free.fr>
+
+	pkg/pkg.m: Also set archprefix with the -local and -global options.
+
+2008-04-29  Jonathan Stickel  <jjstickel@vcn.com>
+
+	* statistics/distributions/tcdf.m, statistics/distributions/tinv.m:
+	Doc fix.
+
+2008-04-25  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dbstack.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+2008-04-21  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m (gnuplot_position_colorbox): New arg, obj.
+	Change caller.  Improve sizing and position of colorbox for subplots.
+	* plot/colorbar.m: New demos.
+
+2008-04-16  S�ren Hauberg  <hauberg@gmail.com>
+
+	* plot/__gnuplot_version__.m: Display error if gnuplot is not found.
+
+2008-04-15  John W. Eaton  <jwe@octave.org>
+
+	* plot/view.m: Get values from current axes if nargin == 0.
+
+2008-04-15  David Bateman  <dbateman@free.fr>
+
+	* plot/__patch__.m: Fix for NaN values in faces of patches.
+
+2008-04-14  David Bateman  <dbateman@free.fr>
+
+	* plot/rose.m: Add missing comment mark that causes issues with
+	octave-forge function referencing.
+	* deprecated/lchol.m, deprecated/splchol.m: Fix texinfo errors.
+
+2008-04-09  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
+	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
+	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
+	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
+	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
+	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
+	deprecated/clearplot.m, deprecated/clg.m, deprecated/com2str.m,
+	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
+	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
+	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
+	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
+	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
+	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
+	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
+	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
+	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
+	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
+	deprecated/is_bool.m, deprecated/is_complex.m,
+	deprecated/is_list.m, deprecated/is_matrix.m,
+	deprecated/is_scalar.m, deprecated/is_square.m,
+	deprecated/is_stream.m, deprecated/is_struct.m,
+	deprecated/is_symmetric.m, deprecated/is_vector.m,
+	deprecated/isstr.m, deprecated/lchol.m,
+	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
+	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
+	deprecated/meshdom.m, deprecated/normal_cdf.m,
+	deprecated/normal_inv.m, deprecated/normal_pdf.m,
+	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
+	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
+	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
+	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
+	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
+	deprecated/setstr.m, deprecated/spatan2.m, deprecated/spchol.m,
+	deprecated/spchol2inv.m, deprecated/spcholinv.m,
+	deprecated/spcumprod.m, deprecated/spcumsum.m, deprecated/spdet.m,
+	deprecated/spdiag.m, deprecated/spfind.m, deprecated/spinv.m,
+	deprecated/spkron.m, deprecated/splchol.m, deprecated/splu.m,
+	deprecated/spmax.m, deprecated/spmin.m, deprecated/spprod.m,
+	deprecated/spqr.m, deprecated/spsum.m, deprecated/spsumsq.m,
+	deprecated/struct_contains.m, deprecated/struct_elements.m,
+	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
+	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
+	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
+	deprecated/uniform_rnd.m, deprecated/weibcdf.m,
+	deprecated/weibinv.m, deprecated/weibpdf.m, deprecated/weibrnd.m,
+	deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
+	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m,
+	deprecated/wiener_rnd.m: Don't embed newline in warning message.
+
+2008-04-09  David Bateman  <dbateman@free.fr>
+
+	* testfun/assert.m: Don't allow cond and expected to be lists.
+
+2008-04-04  John W. Eaton  <jwe@octave.org>
+
+	* strings/Makefile.in (SOURCES): Add isstrprop.m to the list.
+
+	* Makefile.in, audio/Makefile.in, control/Makefile.in,
+	* Makefile.incontrol/base/Makefile.in, control/hinf/Makefile.in,
+	* Makefile.incontrol/obsolete/Makefile.in,
+	* Makefile.incontrol/system/Makefile.in, control/util/Makefile.in,
+	* Makefile.indeprecated/Makefile.in, elfun/Makefile.in,
+	* Makefile.infinance/Makefile.in, general/Makefile.in,
+	* Makefile.ingeometry/Makefile.in, image/Makefile.in,
+	* Makefile.inio/Makefile.in, linear-algebra/Makefile.in,
+	* Makefile.inmiscellaneous/Makefile.in, optimization/Makefile.in,
+	* Makefile.inpath/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
+	* Makefile.inpolynomial/Makefile.in, quaternion/Makefile.in,
+	* Makefile.inset/Makefile.in, signal/Makefile.in,
+	* Makefile.insparse/Makefile.in, specfun/Makefile.in,
+	* Makefile.inspecial-matrix/Makefile.in, startup/Makefile.in,
+	* Makefile.instatistics/Makefile.in, statistics/base/Makefile.in,
+	* Makefile.instatistics/distributions/Makefile.in,
+	* Makefile.instatistics/models/Makefile.in,
+	* Makefile.instatistics/tests/Makefile.in, strings/Makefile.in,
+	* Makefile.intestfun/Makefile.in, time/Makefile.in
+	* Makefile.in(check-m-sources): New target.
+
+2008-04-04  Bill Denney  <bill@denney.ws>
+
+	* optimization/lsqnonneg.m: Use optimset, correctly index
+	Z and P in main loop.
+
+2008-04-04  David Bateman  <dbateman@free.fr>
+
+	* deprecated/beta_cdf.m deprecated/beta_inv.m
+	deprecated/beta_pdf.m deprecated/beta_rnd.m
+	deprecated/binomial_cdf.m deprecated/binomial_inv.m
+	deprecated/binomial_pdf.m deprecated/binomial_rnd.m
+	deprecated/chisquare_cdf.m deprecated/chisquare_inv.m
+	deprecated/chisquare_pdf.m deprecated/chisquare_rnd.m
+	deprecated/clearplot.m deprecated/clg.m deprecated/com2str.m
+	deprecated/exponential_cdf.m deprecated/exponential_inv.m
+	deprecated/exponential_pdf.m deprecated/exponential_rnd.m
+	deprecated/f_cdf.m deprecated/f_inv.m deprecated/f_pdf.m
+	deprecated/f_rnd.m deprecated/gamma_cdf.m deprecated/gamma_inv.m
+	deprecated/gamma_pdf.m deprecated/gamma_rnd.m
+	deprecated/geometric_cdf.m deprecated/geometric_inv.m
+	deprecated/geometric_pdf.m deprecated/geometric_rnd.m
+	deprecated/hypergeometric_cdf.m deprecated/hypergeometric_inv.m
+	deprecated/hypergeometric_pdf.m deprecated/hypergeometric_rnd.m
+	deprecated/intersection.m deprecated/is_bool.m
+	deprecated/is_complex.m deprecated/is_list.m
+	deprecated/is_matrix.m deprecated/is_scalar.m
+	deprecated/is_square.m deprecated/is_stream.m deprecated/isstr.m
+	deprecated/is_struct.m deprecated/is_symmetric.m
+	deprecated/is_vector.m deprecated/lognormal_cdf.m
+	deprecated/lognormal_inv.m deprecated/lognormal_pdf.m
+	deprecated/lognormal_rnd.m deprecated/meshdom.m
+	deprecated/normal_cdf.m deprecated/normal_inv.m
+	deprecated/normal_pdf.m deprecated/normal_rnd.m
+	deprecated/pascal_cdf.m deprecated/pascal_inv.m
+	deprecated/pascal_pdf.m deprecated/pascal_rnd.m
+	deprecated/poisson_cdf.m deprecated/poisson_inv.m
+	deprecated/poisson_pdf.m deprecated/poisson_rnd.m
+	deprecated/polyinteg.m deprecated/setstr.m
+	deprecated/struct_contains.m deprecated/struct_elements.m
+	deprecated/t_cdf.m deprecated/t_inv.m deprecated/t_pdf.m
+	deprecated/t_rnd.m deprecated/uniform_cdf.m
+	deprecated/uniform_inv.m deprecated/uniform_pdf.m
+	deprecated/uniform_rnd.m deprecated/weibcdf.m deprecated/weibinv.m
+	deprecated/weibpdf.m deprecated/weibrnd.m deprecated/weibull_cdf.m
+	deprecated/weibull_inv.m deprecated/weibull_pdf.m
+	deprecated/weibull_rnd.m deprecated/wiener_rnd.m: Add warning that
+	function will be removed in a future version.
+
+2008-04-03  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
+	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
+	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
+	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
+	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
+	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
+	deprecated/clearplot.m, deprecated/clg.m, deprecated/com2str.m,
+	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
+	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
+	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
+	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
+	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
+	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
+	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
+	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
+	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
+	deprecated/hypergeometric_rnd.m, deprecated/intersection.m,
+	deprecated/is_bool.m, deprecated/is_complex.m,
+	deprecated/is_list.m, deprecated/is_matrix.m,
+	deprecated/is_scalar.m, deprecated/is_square.m,
+	deprecated/is_stream.m, deprecated/is_struct.m,
+	deprecated/is_symmetric.m, deprecated/is_vector.m,
+	deprecated/isstr.m, deprecated/lchol.m,
+	deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
+	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m,
+	deprecated/meshdom.m, deprecated/normal_cdf.m,
+	deprecated/normal_inv.m, deprecated/normal_pdf.m,
+	deprecated/normal_rnd.m, deprecated/pascal_cdf.m,
+	deprecated/pascal_inv.m, deprecated/pascal_pdf.m,
+	deprecated/pascal_rnd.m, deprecated/poisson_cdf.m,
+	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
+	deprecated/poisson_rnd.m, deprecated/polyinteg.m,
+	deprecated/setstr.m, deprecated/spatan2.m, deprecated/spchol.m,
+	deprecated/spchol2inv.m, deprecated/spcholinv.m,
+	deprecated/spcumprod.m, deprecated/spcumsum.m, deprecated/spdet.m,
+	deprecated/spdiag.m, deprecated/spfind.m, deprecated/spinv.m,
+	deprecated/spkron.m, deprecated/splchol.m, deprecated/splu.m,
+	deprecated/spmax.m, deprecated/spmin.m, deprecated/spprod.m,
+	deprecated/spqr.m, deprecated/spsum.m, deprecated/spsumsq.m,
+	deprecated/struct_contains.m, deprecated/struct_elements.m,
+	deprecated/t_cdf.m, deprecated/t_inv.m, deprecated/t_pdf.m,
+	deprecated/t_rnd.m, deprecated/uniform_cdf.m,
+	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
+	deprecated/uniform_rnd.m, deprecated/weibcdf.m,
+	deprecated/weibinv.m, deprecated/weibpdf.m, deprecated/weibrnd.m,
+	deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
+	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m,
+	deprecated/wiener_rnd.m:
+	Note version when function was deprecated.
+
+2008-04-03  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Conditionally "set pm3d implict" for 2D
+	plot or 3D plots with more than one line.
+
+	* deprecated/splchol.m deprecated/lchol.m deprecated/spfind.m
+	deprecated/spchol.m deprecated/spmin.m deprecated/spmax.m
+	deprecated/spdet.m deprecated/splu.m deprecated/spqr.m
+	deprecated/spatan2.m deprecated/spchol2inv.m
+	deprecated/spcholinv.m deprecated/spcumprod.m deprecated/spdiag.m
+	deprecated/spinv.m deprecated/spcumsum.m deprecated/spprod.m
+	deprecated/spsum.m deprecated/spsumsq.m: New files
+	* deprecated/Makefile.in (SOURCES): Add them here.
+
+2008-04-03  Ben Abbott  <bpabbott@mac.com>
+
+	* sparse/spaugment.m: Increase test script tolerance.
+
+2008-04-02  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/Makefile.in (SOURCES): Add spkron.m to the list.
+
+	* general/Makefile.in (SOURCES): Add runlength.m to the list.
+
+2008-04-02  Bill Denney  <bill@denney.ws>
+
+	* optimization/lsqnonneg.m: New function.
+	* optimization/Makefile.in (SOURCES): Add it to the list.
+
+2008-04-02  David Bateman  <dbateman@free.fr>
+
+	* sparse/spaugment.m: New function
+	* sparse/Makefile.in (SOURCES): Add it here.
+
+	* plot/__gnuplot_ginput__.m: Use the gnuplot stream itself for
+	communication rather than a chat file if mkfifo is not available.
+	* plot/gnuplot_drawnow.m: Open stream with popen2 to allow two way
+	communication with the gnuplot process.
+
+2008-04-01  Richard Bovey  <Richard.Bovey@baesystems.com>
+
+	* general/sortrows.m: Handle negative column arguments.
+
+2008-04-01  Julian Schnidder  <j.schnidder@gmx.de>
+
+	* miscellaneous/perl.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-31  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Set the tick direction in the main call
+	the set tics rather than separately to avoid issues with multiple
+	ticks in plotyy.
+
+	* plot/gtext.m: New function to place text on a plot.
+	* plot/waitforbuttonpress.m: New function.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+	* plot/__gnuplot_ginput__.m: Bug fix for nargin==1. Workaround for
+	missing mkfifo under Windows.
+	* plot/ginput.m: Eliminate setting of n.
+
+	* plot/ginput.m: New function.
+	* plot/__gnuplot_ginput__.m: New function based on a version of
+	ginput.m from Petr Mikulik <mikulik@physics.muni.cz>.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+2008-03-31  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
+
+	* miscellaneous/run.m: Fix check for existence of file.
+
+2008-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/lookup.m: Remove (lookup moved to DLD-FUNCTIONS).
+	* general/Makefile.in (SOURCES): Delete lookup.m from the list.
+	* general/interp1.m, general/interp2.m, general/interpn.m,
+	polynomial/ppval.m: Fix buggy lookup calls.
+	* general/interp1.m: New test.
+
+2008-03-28  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* miscellaneous/tempdir.m: Use correct function name in texinfo
+	documentation.
+
+2008-03-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* general/del2.m: Missing semicolon.
+
+2008-03-28  Julian Schnidder  <j.schnidder@gmx.de>
+
+	* miscellaneous/info.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* plot/xlim.m, plot/ylim.m, plot/zlim.m, strings/strtrim.m:
+	Doc fixes.
+
+2008-03-27  David Bateman  <dbateman@free.fr>
+
+	* plot/__plt2__.m: Test if args are empty first so that
+	plot(zeros(1,0),zeros(1,0)) works as expected.
+
+	* plot/plotyy.m: The axis handle is a two element vector and
+	so needs special treatment. Call newplot for the second axis.
+
+2008-03-27  Bill Denney  <bill@denney.ws>
+
+	* time/datenum.m: Allow vector inputs in any orientation.
+
+	* strings/validatestring.m: New function.
+	* strings/Makefile.in (SOURCES): Add it to the list.
+
+	* general/nargoutchk.m: New function.
+	* general/Makefile.in (SOURCES): Add it to the list.
+
+	* general/genvarname.m: New function.
+	* general/Makefile.in (SOURCES): Add it to the list.
+
+	* time/addtodate.m: New function.
+	* time/Makefile.in (SOURCES): Add it to the list.
+
+	* geometry/rectint.m: Vectorize and add more tests.
+
+2008-03-27  John W. Eaton  <jwe@octave.org>
+
+	* plot/__axis_label__.m: Use name of caller in error message.
+
+2008-03-27  David Bateman  <dbateman@free.fr>
+
+	* linear-algebra/planerot.m: Givens rotation function.
+
+2008-03-26  John W. Eaton  <jwe@octave.org>
+
+	* set/ismember.m: Set size of idx output correctly for empty args.
+	New tests.
+
+	* general/logical.m: Correctly handle empty args.  New tests.
+
+	* control/hinf/h2syn.m, general/__splinen__.m, general/gradient.m,
+	geometry/inpolygon.m, geometry/trimesh.m, geometry/triplot.m,
+	image/imagesc.m, io/csvread.m, io/csvwrite.m,
+	miscellaneous/edit.m, miscellaneous/tempname.m, plot/fill.m,
+	plot/patch.m, plot/ribbon.m, plot/surface.m, polynomial/mkpp.m,
+	polynomial/pchip.m, polynomial/spline.m, set/unique.m:
+	Texinfo fixes.
+
+2008-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/dmult.m: Handle scaling along arbitrary dimension.
+
+2008-03-26  S�ren Hauberg  <hauberg@gmail.com>
+
+	* polynomial/convn.m: New tests.
+
+2008-03-20  Ben Abbott  <bpabbott@mac.com>
+
+	* statistics/base/statistics.m: Calculate median and quantiles in
+	a manner consistent with method #7 used by GNU R.
+	* statistics/base/__quantile__.m, statistics/base/quantile.m,
+	statistics/base/prctile.m: New functions.
+	* statistics/base/Makefile.in (SOURCES): Add them to the list.
+
+2008-03-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* polynomial/convn.m: New function.
+	* polynomial/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-25  David Bateman  <dbateman@free.fr>
+
+	* image/contrast.m: New function.
+	* image/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-24  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* pkg/pkg.m: Allow installation of already extracted packages.
+
+2008-03-24  David Bateman  <dbateman@free.fr>
+
+	* general/idivide.m: New function.
+	* general/Makefile.in (SOURCES): Add it to the list.
+
+	* miscellaneous/namelengthmax.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+	* strings/regexptranslate.m: New function.
+	* strings/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-21  David Bateman  <dbateman@free.fr>
+
+	* specfun/reallog.m, specfun/realpow.m, specfun/realsqrt.m:
+	New functions.
+	* specfun/Makefile.in (SOURCES): Add them to the list.
+
+2008-03-20  David Bateman  <dbateman@free.fr>
+
+	* general/tril.m, general/triu.m: Fail if input is a structure.
+
+	* miscellaneous/cast.m: Also allow cast to "char".
+
+	* general/rotdim.m: Ensure k is an integer scale.
+
+	* general/circshift.m: If matrix is empty fast return.
+
+2008-03-20  Jaroslav Hajek  <highegg@localhost.localdomain>
+
+	* linear-algebra/subspace.m: Check number of arguments, number
+	of dimensions of arguments and matching dimensions.
+
+2008-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* linear-algebra/subspace.m: New function.
+	* linear-algebra/subspace.m: New function.
+
+2008-03-19  Emil Lucretiu  <emil@la.mine.nu>
+
+	* signal/sinetone.m: Ensure integral number of samples.
+
+2008-03-19  Michael D. Godfrey  <godfrey@isl.stanford.edu>
+
+	* plot/__go_draw_axes__.m: Additional correction for symbol codes.
+
+2008-03-19  Ben Abbott  <bpabbott@mac.com>
+
+	* statistics/base/mode.m: Add NDArray tests.
+
+2008-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* statistics/distributions/exppdf.m,
+	statistics/distributions/expcdf.m,
+	statistics/distributions/expinv.m,
+	statistics/distributions/exprnd.m: Doc fix.
+
+2008-03-19  David Bateman  <dbateman@free.fr>
+
+	* statistics/base/mode.m: Fix for row vectors.
+
+	* plot/__scatter__.m: Modify for change of markersize in
+	__go_draw_axes__.m and for compatibility.
+	* plot/__go_draw_axes__.m: Don't divide the marker size by 6
+	twice.
+	* plot/scatter3.m: Doc fix.
+
+2008-03-18  Ben Abbott  <bpabbott@mac.com>
+
+	* specfun/beta.m: Fix for negative inputs.
+
+2008-03-18  Michael D. Godfrey  <godfrey@isl.stanford.edu>
+
+	* plot/__go_draw_axes__.m: Use correct symbol codes.
+
+2008-03-14  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Expicitly set gnuplot user
+	style to default to avoid wrong mesh color in some cases.
+
+2008-03-12  David Bateman  <dbateman@free.fr>
+
+	* geometry/griddata3.m: Use griddatan and not griddata
+	internally. Return vi and not yi. Add test code.
+
+2008-03-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Use get to access hidden properties.
+	Use strcmpi when comparing string properties.
+
+	* io/csread.m, io/csvwrite.m, io/dlmwrite.m: Style fixes.
+
+2008-03-11  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Plot surfaces in front of axes.
+	Allow plotting of uniform colored mesh plots with and
+	w/o hidden line removal.
+
+2008-03-11  David Bateman  <dbateman@free.fr>
+
+	* io/dlmwrite.m, io/csvread.m, io/csvwrite.m: Files ported from
+	octave-forge.
+	* io/Makefile.in (SOURCES): Add them here.
+
+2008-03-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/contourf.m: Set axes layer property to "top".
+
+	* plot/__go_draw_axes__.m: Handle tickdir property.
+
+2008-03-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/hist.m: Avoid temporaries.
+	Allow matrix arguments when number of bins > 30.
+	From Robert S. Mahurin <rob@utk.edu>.
+
+	* plot/ChangeLog: Handle axes linewidth property.
+
+	* plot/__go_draw_axes__.m: Adjust markersize by a factor of 1/6.
+
+	* general/interpn.m: New test.
+
+2008-03-05  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/roots.m: Catch Infs and/or NaNs.
+
+2008-03-05  Sebastien Loisel  <loisel@temple.edu>
+
+	* polynomial/roots.m: Apply a scaling factor to the removal of the
+	leading zeros.
+
+2008-03-04  John W. Eaton  <jwe@octave.org>
+
+	* plot/print.m: Fix oops in applying last change.
+
+2008-03-04  Bill Denney  <bill@denney.ws>
+
+	* plot/allchild.m, plot/findall.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+	* geometry/rectint.m: New function.
+	* geometry/Makefile.in (SOURCES): Add it to the list.
+
+2008-03-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* pkg/pkg.m (pkg:configure_make): Make it work with recent changes in
+	isspace handling with cell arrays of strings.
+
+2008-03-04  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/polyfit.m: Modified tests to respect a relative tolerance.
+
+	* plot/print.m: Accept a figure handle as an optional input.
+
+2008-02-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/print.m: Handle gif and jpg devices.
+
+2008-02-28  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (get_old_gnuplot_color): New subfunction.
+	Use it to replace repeated if/elseif blocks.
+
+2008-02-28  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: If facecolor property of a surface is
+	"none", don't use pm3d mode and set linestyle correctly.
+
+2008-02-25  Ben Abbott  <bpabbott@mac.com>
+
+	* control/system/zpout.m, finance/irr.m, general/int2str.m,
+	general/num2str.m, miscellaneous/bug_report.m,
+	miscellaneous/copyfile.m, miscellaneous/dir.m,
+	miscellaneous/edit.m, miscellaneous/fullfile.m,
+	miscellaneous/mkoctfile.m, miscellaneous/movefile.m,
+	miscellaneous/tempdir.m, miscellaneous/unpack.m,
+	path/__extractpath__.m, pkg/pkg.m, plot/__ezplot__.m,
+	plot/__go_draw_axes__.m, plot/legend.m, plot/print.m,
+	signal/spectral_adf.m, signal/spectral_xdf.m,
+	statistics/tests/z_test.m, statistics/tests/z_test_2.m,
+	strings/Makefile.in, strings/strcat.m, strings/strvcat.m,
+	testfun/assert.m, testfun/demo.m, testfun/speed.m,
+	testfun/test.m: Use cstrcat instead of strcat.
+
+	* strings/strcat.m: New compatible version.
+
+	* strings/cstrcat.m: Rename from strings/strcat.m.
+
+2008-02-25  John W. Eaton  <jwe@octave.org>
+
+	* strings/isstrprop.m: New file.
+
+2008-02-25  Ryan Hinton  <rwh4s@virginia.edu>
+
+	* miscellaneous/unpack.m: Use "-f -" args for tar.
+
+2008-02-24  John W. Eaton  <jwe@octave.org>
+
+	* specfun/log2.m: Ensure returned value of F strictly less than 1.
+	From Dave Hawthorne <davehawthorne@ieee.org>.
+
+2008-02-22  Ben Abbott  <bpabbott@mac.com>
+
+	* specfun/legendre.m: Doc fix.
+
+2008-02-22  David Bateman  <dbateman@free.fr>
+
+	* sparse/pcg.m, sparse/spdiags, spstats.m: Remove references to
+	spdiag.
+
+2008-02-22  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/fullfile.m: Improve handling of empty args and
+	args ending with filesep.
+
+	* control/base/__stepimp__.m: Don't use subplot for just one plot.
+
+2008-02-21  John W. Eaton  <jwe@octave.org>
+
+	* image/imshow.m: Call axis ("image").
+	From Michael G. Ross <mgross@MIT.EDU>.
+
+	* plot/errorbar.m: If nargout > 0, return vector of handles to
+	line objects.
+	* plot/__go_draw_axes__.m: Improve handling of line style for
+	errorbar plots.
+
+2008-02-20  Marco Caliari  <marco.caliari@univr.it>
+
+	* specfun/legendre.m: Accept normalization options ("sch", "norm"),
+	and improve stability for higher orders.
+
+2008-02-20  John W. Eaton  <jwe@octave.org>
+
+	* strings/strcat.m: Detect cellstr args.
+
+2008-02-20  David Bateman  <dbateman@free.fr>
+
+	* sparse/colperm.m, sparse/nonzero.m, sparse/spdiags.m,
+	sparse/spfun.m, sparse/spones.m, sparse/sprand.m,
+	sparse/sprandn.m, sparse/sprandsym.m, sparse/spy.m: Use generic
+	version of find rather than spfind.
+
+2008-02-19  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/edit.m: New option EDITINPLACE.  Prefer file list
+	rather than path list.  Return option structure with "get all".
+
+	* polynomial/polyfit.m: Use QR decomposition.  Handle
+	normalization option.
+	* polynomial/polyval.m: Normalize dependent variable.  Optionally
+	generate 50% prediction intervals.
+
+	* miscellaneous/ver.m: Include package version information in
+	output.  Improve consistency with Matlab.
+
+2008-02-19  John W. Eaton  <jwe@octave.org>
+
+	* pkg/pkg.m: Style fixes.
+
+2008-02-19  Carlo de Falco  <carlo.defalco@gmail.com>
+
+	* pkg/pkg.m: Handle 'describe' command.
+	(parse_pkg_idx, print_package_description): New subfunctions.
+
+2008-02-19  Bill Denney  <bill@denney.ws>
+
+	* time/datestr.m: Avoid confusion for datenum vectors that are 6
+	elements wide.
+
+2008-02-18  David Bateman  <dbateman@free.fr>
+
+	* general/rem.m, general/mod.m: Treat integer types correctly.
+
+2008-02-15  Timo Lindfors  <timo.lindfors@iki.fi>
+
+	* statistics/tests/kruskal_wallis_test.m: Handle ties.
+	* general/runlength.m: New function from Paul Kienzle.
+
+2008-02-15  Rolf Fabian  <r.fabian@jacobs-university.de>
+
+	* linear-algebra/cond.m: New optional second argument to
+	specify 1-norm, inf-norm, or frobenius-norm.
+
+2008-02-12  Kostas Poulios  <poulios.konstantinos@googlemail.com>
+
+	* plot/__quiver__.m: make arrow head be in z-plane of the arrow
+	body. Allow the linespec to specify the arrow color.
+
+2008-02-12  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/cast.m: Also treat the logical type.
+
+	* plot/__go_draw_axes__.m: Set pm3d implict to fix colorbars on
+	contour plots.
+
+ 	* plot/__go_draw_axes__.m: Use the cdatamapping property to set
+	the cbrange.
+	* plot/__img__.m: Set cdatamapping to "direct".
+	* plot/imagesc.m: Set cdatamapping to "scaled".
+
+2008-02-08  Julien Pommier  <pommier@pianoteq.com>
+
+	* audio/wavread.m: Limit data read to end of data chunk.
+
+2008-02-08  David Bateman  <dbateman@free.fr>
+
+	* plot/__contour__.m: Respect the graphic handle options that are
+	passed.
+	* plot/__go_draw_axes__.m: Respect the linewidth for patch objects.
+
+2008-02-01  Dave Goel  <deego3@gmail.com>
+
+	* signal/arch_rnd.m: Correctly index E and Y vectors.
+
+2008-02-01  Bill Denney  <bill@denney.ws>
+
+	* time/weekday.m: Allow vector inputs and speed up.
+	* time/eomday.m: Return column vector for column vector inputs.
+
+2008-01-30  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/edit.m: Use "## Created: DATE" instead of "initial
+	revision".
+
+	* plot/Makefile.in (SOURCES): Include __plt2sv__.m and
+	__plt2vs__.m in the list.
+
+	* miscellaneous/tempdir.m: Append filesep to name for
+	compatibility.  Warn if not a directory or directory does not
+	exist.
+
+	* strings/deblank.m: Improve compatibility.
+
+2008-01-29  John W. Eaton  <jwe@octave.org>
+
+	* strings/str2double.m: Delete unused variable FLAG_OCTAVE.
+
+2008-01-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m:
+	Return the label handle, not the current axis handle.
+
+2008-01-25  Alexander Barth  <barth.alexander@gmail.com>
+
+	* general/interpn.m: Compatibility fix. Don't ndgrid vector
+	abscissa.
+
+2008-01-25  David Bateman  <dbateman@free.fr>
+
+	* general/__splinen__.m: Treat mixed orientation vectors.
+	* plot/__scatter__.m: Remove NaN values from data.
+	* plot/__patch__.m: Vectorize treatment of trailing NaN values.
+
+2008-01-25  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* linear-algebra/trace.m: Test cases for non 2-d args.
+
+2008-01-25  James Packer  <james.packer@wadh.ox.ac.uk>
+
+	* geometry/griddata3.m: Call griddata, not gridata.
+
+2008-01-24  Schloegl Alois  <alois.schloegl@tugraz.at>
+
+	* linear-algebra/trace.m: Require 2-d args.  Handle vectors properly.
+
+2008-01-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* linear-algebra/cond.m, linear-algebra/trace.m:
+	Move tests here from test/test_linalg.m.
+
+	* general/diff.m, general/fliplr.m, general/flipud.m,
+	general/logspace.m, general/rot90.m, general/shift.m, general/tril.m,
+	general/triu.m, linear-algebra/vec.m, linear-algebra/vech.m,
+	special-matrix/hankel.m, special-matrix/hilb.m,
+	special-matrix/invhilb.m, special-matrix/sylvester_matrix.m,
+	special-matrix/toeplitz.m, special-matrix/vander.m:
+	Move tests here from test/test_matrix.m.
+
+	* general/isscalar.m, general/issquare.m, general/isvector.m:
+	Move tests here from test/test_number.m.
+
+	* deprecated/polyinteg.m, polynomial/compan.m, polynomial/conv.m,
+	polynomial/deconv.m, polynomial/poly.m, polynomial/polyderiv.m,
+	polynomial/polyfit.m, polynomial/polyreduce.m, polynomial/polyval.m,
+	polynomial/polyvalm.m, polynomial/roots.m:
+	Move tests here from test/test_poly.m.
+
+	* signal/unwrap.m:
+	Move tests here from test/test_signal.m.
+
+	* statistics/base/corrcoef.m, statistics/base/cov.m,
+	statistics/base/kurtosis.m, statistics/base/mahalanobis.m,
+	statistics/base/mean.m, statistics/base/median.m,
+	statistics/base/skewness.m, statistics/base/std.m:
+	Move tests here from test/test_stats.m.
+
+	* general/int2str.m, general/num2str.m, strings/bin2dec.m,
+	strings/blanks.m, strings/deblank.m, strings/dec2bin.m,
+	strings/dec2hex.m, strings/findstr.m, strings/hex2dec.m,
+	strings/index.m, strings/rindex.m, strings/split.m, strings/str2mat.m,
+	strings/str2num.m, strings/strcat.m, strings/strrep.m,
+	strings/substr.m:
+	Move tests here from test/test_string.m.
+
+	* miscellaneous/computer.m, miscellaneous/ls.m,
+	miscellaneous/version.m, time/asctime.m, time/clock.m, time/ctime.m,
+	time/date.m, time/etime.m, time/is_leap_year.m:
+	Move tests here from test/test_system.m.
+
+2008-01-22  Schloegl Alois  <alois.schloegl@tugraz.at>
+
+	* specfun/erfinv.m: Replace z_old and z_new by a single variable z.
+	Simplify initial checks on argument values.
+
+2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/gnuplot_drawnow.m: New function corresponding to the
+	implementation of the gnuplot-based graphics backend (derived from
+	drawnow.m).
+	* plot/drawnow.m: Deleted (converted to C++).
+
+2008-01-15  Rolf Fabian  <Rolf.Fabian@gmx.de>
+
+	* linear-algebra/__norm__.m: Only scale if inf norm is finite.
+	New tests.
+
+2008-01-18  John W. Eaton  <jwe@octave.org>
+
+	* optimization/sqp.m: End each function with endfunction.
+
+2008-01-18  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/residue.m: For each group of pole multiplicity, set
+	the poles of the group to the value of the group's average.
+
+2008-01-17  Tetsuro KURITA  <tkurita@mac.com>
+
+	* plot/print.m: Handle PDF output.
+	* plot/drawnow.m: Add "PDF" in a list of enhanced_terminals.
+
+2008-01-17  John W. Eaton  <jwe@octave.org>
+
+	* path/savepath.m: Print newline before initial comment line.
+	Double up single quote characters.
+	* path/__extractpath__.m: Return just the path as a string.
+	Undo single quote character doubling.
+
+	* path/pathdef.m: Avoid eval.  Simplify.
+
+	* path/pathdef.m: Use fullfile instead of concatenating with filesep.
+	* path/__extractpath__.m, path/savepath.m: Use unwind_protect to
+	avoid possible file descriptor leak.
+
+2008-01-17  Ben Abbott  <bpabbott@mac.com>
+
+	* path/savepath.m: Warn if modified file is not explicitly specified.
+	* startup/main-rcfile: Call atexit ("__finish__").
+
+2008-01-16  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (__do_enhanced_option__): New subfunction.
+	Use it to disable enhanced mode for individual labels and titles.
+
+	* startup/Makefile.in (SOURCES): Add __finish__.m to the list.
+	(install install-strip, uninstall): Handle function files.
+
+2008-01-16  Ben Abbott  <bpabbott@mac.com>
+
+	* startup/__finish__.m: New file.
+	* path/__extractpath__.m, path/matlabroot.m,
+	path/pathdef.m: New files.
+	* path/Makefile.in (SOURCES): Add them to the list.
+
+2008-01-15  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* special-matrix/vander.m: Vectorize.  New test.
+
+	* elfun/acot.m, elfun/acoth.m, elfun/acsc.m, elfun/acsch.m,
+	elfun/asec.m, elfun/asech.m, elfun/cot.m, elfun/coth.m,
+	elfun/csc.m,elfun/csch.m, elfun/lcm.m, elfun/sec.m, elfun/sech.m,
+	general/rem.m, miscellaneous/bincoeff.m, miscellaneous/xor.m,
+	specfun/beta.m, specfun/log2.m, specfun/pow2.m:
+	Move tests here from test/test_arith.m.
+
+2008-01-15  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/__norm__.m: Use sum(abs(x),2), not sum(abs(x.')).
+
+2008-01-15  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/drawnow.m, plot/__go_draw_figure__.m, plot/__go_draw_axes__.m:
+	Call __get__ instead of get.
+
+2008-01-15  Ben Abbott  <bpabbott@mac.com>
+
+	* linear-algebra/__norm__.m: Avoid divide by zero error for
+	Frobenius norm if matrix is all zeros.  Use transpose instead of
+	hermitian operator.
+
+2008-01-14  Bill Denney  <bill@denney.ws>
+
+	* plot/axis.m: Correctly handle "tight" and "image" options.
+
+2008-01-14  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/hsv2rgb.m, image/ntsc2rgb.m, image/rgb2hsv.m,
+	image/rgb2ntsc.m: Also accept images as input.
+
+	* image/gray2ind.m: Handle image type other than double.
+	Improve error checking and documentation.
+
+2008-01-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (get_fontname_and_size): Use strcmpi
+	instead of calling tolower on first arg.  Default font name is
+	Helvetica, not helvetica.  Don't downcase user-specified font name.
+	(__maybe_munge_text__): Fix typo.
+
+	* optimization/sqp.m: Fix function definitions in test code.
+
+2008-01-12  John W. Eaton  <jwe@octave.org>
+
+	* plot/gnuplot_binary.in: New file.
+	* plot/gnuplot_binary.m: Delete.
+	* plot/Makefile.in (SOURCES): Remove gnuplot_binary.m from the list.
+	(SOURCES_IN, GEN_M): New macros.
+	(DISTFILES): Include $(SOURCES_IN) in the list.
+	(FCN_FILES): Include $(GEN_M) in the list.
+	(all): Depend on $(GEN_M).
+	($(GEN_M): %.m : $(TOPDIR)/Makeconf): New pattern rule.
+	(distclean): Also remove $(GEN_M).
+
+2008-01-11  John W. Eaton  <jwe@octave.org>
+
+	* optimization/sqp.m: New test from example in doc string.
+
+2008-01-10  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/mpoles.m: Avoid cases where poles could be assigned
+	to more than one multiplicity group.
+
+2008-01-10  John W. Eaton  <jwe@octave.org>
+
+	* plot/gnuplot_binary.m: New file.
+	* plot/Makefile.in (SOURCES): Add it to the list.
+
+2008-01-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Fail if filename includes a directory part that
+	does not exist.
+
+2008-01-07  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
+	Error if glob call fails to match any files.
+
+2008-01-04  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* strings/strtrim.m: Doc fix.
+
+2008-01-04  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* general/sub2ind.m, general/ind2sub.m: Doc fix.
+
+2008-01-04  S�ren Hauberg   <hauberg@gmail.com>
+
+	* set/create_set.m, set/union.m: Accept "rows" argument.
+
+2008-01-02  John W. Eaton  <jwe@octave.org>
+
+	* plot/print.m: Correctly handle pbm terminal.
+
+2007-12-28  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/edit.m: Use strcat instead of fullfile to add file
+	extensions.
+
+2007-12-28  David Bateman  <dbateman@free.fr>
+
+	* ezcontourf.m, ezcontour.m, ezmeshc.m, ezmesh.m, ezplot3.m,
+	__ezplot__.m, ezpolar.m, ezsurfc.m, ezsurf.m: New functions.
+	* Makefile.in (SOURCES): Add to the sources.
+
+2007-12-28  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/pcolor.m: Swap 1st and 2nd argument in call to meshgrid.
+	Remove unnecessary call of size function.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-12-21  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imshow.m: Accept empty value for display_range.
+
+2007-12-20  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* pkg/pkg.m: Add .lib as architecture-dependent suffix.
+
+2007-12-19  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imshow.m: Store uint8 images as doubles.  Handle default
+	display ranges correctly.
+
+2007-12-19  Alexander Barth  <barth.alexander@gmail.com>
+	    Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/contourc.m: Allow usage of irregular spaced x, y data.
+
+2007-12-19  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/edit.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+
+2007-12-19  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__bar__.m: Handle "basevalue" option.
+	* plot/__bars__.m: New arg, base_value.
+
+2007-12-17  David Bateman  <dbateman@free.fr>
+
+	* plot/rose.m, plot/feather.m, plot/compass.m: New functions
+	* plot/Makefiles (SOURCES): Add them to the sources
+	* plot/polar.m: Set the x and y limits to the maximum polar
+	radius. Set the axes to be square.
+	* plot/__go_draw_axes__.m: Allow {x|y}axislocation to be "zero"
+	and print axis at zero if this is used.
+
+	* plot/__go_draw_axes__.m: Use "set pm3d explicit" so that
+	contours can overlay pcolor plots. Priveldge no hidden line
+	removal when there are multiple objects in the plot.
+
+2007-12-17  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m:  Fix mirrored tics and borders for
+	set (gca (), "[xy]axislocation", "{right|top}", "box", "off").
+
+2007-12-17  Ben Abbott  <bpabbott@mac.com>
+
+	* miscellaneous/run.m: Replace script with f when looking for
+	file to run.
+
+2007-12-14  David Bateman  <dbateman@free.fr>
+
+	* plot/contour3.m, plot/__contour__.m: Handle linespec.
+	* plot/contour.m: Doc fix.
+	* plot/__go_draw_axes__.m (case "patch"): Include "lt" in lt string.
+	Include linetype in withclause.
+
+	* plot/__go_draw_axes__.m (__calc_dimensions__): New function.
+	Use it to determine dimensions.  Consolidate all 3-d settings.
+
+2007-12-13  John W. Eaton  <jwe@octave.org>
+
+	* image/imshow.m: Turn axis visibility off.
+	Don't scale true color images.
+	* image/image.m: Set axis layer property to "top".
+
+2007-12-12  John W. Eaton  <jwe@octave.org>
+
+	* image/loadimage.m: Avoid calling eval.  Avoid calling exist.
+
+	* plot/pie.m: Avoid calling "exist".
+
+	* linear-algebra/condest.m: Use nargin instead of size(varargin,2).
+	Condense argument processing logic.  Allow 6 arguments.
+	Use issquare.  Avoid calling "exist".
+
+	* plot/__go_draw_axes__.m: Handle the axes layer property.
+
+2007-12-12  David Bateman  <dbateman@free.fr>
+
+	* plot/ellipsoid.m: Port from octave-forge, editing for style.
+	* plot/Makefile.in (SOURCES): Add to the sources.
+
+2007-12-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/surf.m: Set xgrid, ygrid, and zgrid on here.
+	* plot/surface.m: Not here.
+
+	* plot/__go_draw_axes__.m: Always use "set grid front".  Send a
+	subsequent "unset grid" if there is no grid.
+
+	* plot/__go_draw_axes__.m: Include "front" in "set label" options.
+
+	* plot/surface.m: Don't set facecolor property in call to
+	__go_surface__.
+
+	* plot/__plt2vs__.m, plot/__plt2sv__.m: New functions.
+	* plot/__plt2__.m: Handle scalar-vector and vector-scalar cases.
+
+2007-12-11  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__patch__.m: Fix typo. Improve argument checking, so that a
+	color string is not taken as z value.
+
+	* plot/slice.m: Remove unused variable, set xgrid, ygrid, and
+	zgrid to "on" and box to "off" for used axes.
+
+	* plot/__go_draw_axes__.m, plot/plot3.m, plot/ribbon.m,
+	plot/slice.m: Use size_equal(var1,var2,...) when possible.
+
+2007-12-11  David Bateman  <dbateman@free.fr>
+
+	* miscelleaneous/fullfile.m: Ignore empty arguments.
+
+	* sparse/spstats.m: Drop argument to Fsparse to force mutation.
+	* statistics/base/mode.m: Ditto.
+
+	* plot/__plt_get_axis_arg__.m: Ignore integer valued handles as
+	object handles are all now non integer.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* plot/sombrero.m, plot/peaks.m: Use surf instead of mesh.
+
+	* general/issymmetric.m: Use ' instead of .' for compatibility
+	with previous versions of Octave.
+	* general/ishermitian.m: Delete.
+	* general/Makefile.in (SOURCES): Remove ishermitian.m from the list.
+
+	* plot/fplot.m: In N is not specified, increase initial number of
+	points from 3 and 5 to 5 and 8.
+
+	* signal/detrend.m: Move tests here from test/test_signal.m.
+	Loosen tolerance on first test from 10*eps to 20*eps.
+
+	* finance/rate.m: Don't request info from fsolve.
+
+2007-12-10  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__line__.m: Pass initial property/value pairs to __go_line__.
+	* plot/surface.m: Pass initial property/value pairs to __go_surface__.
+
+2007-12-10  David Bateman  <dbateman@free.fr>
+
+	* image/image.m: Rewritten to allow trailing properties to be
+	passed to underlying image object.
+	* image/__img__.m: Pass additional arguments to __go_image__.
+	* plot/__patch__.m: Don't set clim, rely on autoscaling.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: If we have a grid, send "set grid
+	front" to gnuplot.
+
+2007-12-10  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Issue "set view map" for pcolor, and "set
+	border front" from images.
+	* plot/__go_draw_figure__.m: Issue "set autoscale fix" for gnuplot.
+	* plot/pcolor.m: Set axis "box" property.
+	* plot/title.m, plot/xlabel.m, plot/ylabel.m, plot/xlabel.m:
+	Mark as commands.
+
+2007-12-07  David Bateman  <dbateman@free.fr>
+
+	* plot/surf.m: Don't set facecolor property.
+
+2007-12-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/print.m: Pass mono to drawnow.
+	* plot/drawnow.m: New arg, mono.  Pass it to __go_draw_figure__.
+	* plot/__go_draw_figure__.m: New arg, mono.  Pass it to __go_draw_axes.
+	* plot/__go_draw_axes__.m: New arg, mono.  If mono is true,
+	disable color specifications.
+
+	* general/issymmetric.m: Move tests here from test/test_number.m
+
+2007-12-06  Jason Riedy  <ejr@cs.berkeley.edu>
+
+	* general/issymmetric.m: To keep its argument sparse and the
+	function quick, use the infinity norm rather than the 2-norm.
+	Also measure the symmetric part rather than the Hermitian part.
+	* general/ishermitian.m: New file.  Measure the Hermitian part.
+	* general/Makefile.in: Add ishermitian.m to SOURCES.
+
+2007-12-04  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Omit "font \"NAME,SIZE\"" in gnuplot
+	text and label commands if font is "*".
+
+	* linear-algebra/krylov.m: Doc fixes.
+	From Marco Caliari <caliari@sci.univr.it>.
+
+2007-12-04  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/shading.m: Use __plt_get_axis_arg__ for optional axes argument.
+	Add "## PKG_ADD: mark_as_command axis" line.
+
+2007-12-03  John W. Eaton  <jwe@octave.org>
+
+	* contour.m, contour3.m, contourc.m, contourf.m, cylinder.m,
+	fplot.m, plot3.m, plotyy.m, quiver3.m, scatter.m, scatter3.m,
+	slice.m, sombrero.m, stairs.m, stem.m, stem3.m:
+	Generate demos from examples.
+
+2007-12-03  David Bateman  <dbateman@free.fr>
+
+	* testfun/test.m: Disable "testif" test block to avoid spurious
+	skipped test for "make check". Avoid printing variables for
+	skipped tests.
+
+	* testfun/test.m: Add "testif" type to allow for conditional tests.
+
+	* plot/plotyy.m: Use activepositionproperty property of axes
+	object. Set second axis color to "none".
+	* plot/__go_draw_axes__.m: Respect the activepositionproperty
+	property of the axis objects.
+
+2007-12-03  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* linear-algebra/condest.m: Loosen tolerance in test.
+
+2007-12-02  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Remove unnecessary call to
+	get_data_limits.
+
+2007-11-30  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Don't compute data or axis limits.
+	(get_data_limits, get_axis_limits): Delete.
+
+2007-11-30  David Bateman  <dbateman@free.fr>
+
+	* plot/__scatter__.m: Avoid out of bounds varargin element access.
+
+	* plot/__go_draw_axes__.m (do_tics_1): regexprep the cell array of
+	tick labels rather than one by one on the labels themselves.
+	* plot/pareto.m: Bug in numerical labels fixed. Bug in search for
+	95% crossing fixed.
+
+2007-11-29  David Bateman  <dbateman@free.fr>
+
+	* plot/pareto.m: New file.
+	* plot/Makefile.in (SOURCES): Add it to the sources.
+	* plot/__go_draw_axes__.m (do_tics1): Replace "%" with "%%" in tic
+	marks to avoid gnuplot error about formating. More colorspec to
+	after the tics.
+	* plot/plotyy.m: More generic check for appropriate axis color.
+
+	* plot/__stem__.m: New file based on old stem.m expanded to treat
+	2- and 3-D.
+	* plot/stem3.m: New function.
+	* plot/Makefile.in (SOURCES): Add them to the sources.
+	* plot/stem.m: Adapt to use __stem__.
+
+2007-11-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/contour.m, plot/contour3.m, plot/fill.m, plot/patch.m,
+	plot/surf.m, plot/surface.m: Don't return handle value unless
+	requested.
+
+	* plot/patch.m: Omit isnan check on handle returned from
+	__plt_get_axis_arg__.
+
+	* plot/__plt_get_axis_arg__.m: Don't fail if current figure exists
+	but has no axes.
+
+2007-11-28  David Bateman  <dbateman@free.fr>
+
+	* __plt_get_axis_handle__.m: Also allow hggroup and return axes
+	ancestor. If leading argument is logical set variable nogca to see
+	if gca() should be called if there is no active handle found.
+	* __bar__.m, caxis.m, scatter.m, contourf.m, __axes_limits__.m,
+	fill.m,  surf.m, meshz.m, axis.m, pie.m, contour.m,
+	quiver.m, area.m, grid.m, cylinder.m, contour3.m, surface.m,
+	patch.m, scatter3.m, plot.m, sphere.m, quiver3.m, plotyy.m,
+	xlabel.m, ylabel.m, surfnorm.m, zlabel.m: Adapt to use
+	__plt__get_axis_arg__ to find axis handle.
+	* polar.m: Typo.
+
+2007-11-28  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (get_data_limits): Delete unused arg TX.
+
+2007-11-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/drawnow.m: Fix typo.
+
+2007-11-27  David Bateman  <dbateman@free.fr>
+
+	* plot/errorbar.m, plot/loglog.m, plot/loglogerr.m, plot/polar.m,
+	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
+	plot/semilogyerr.m: Treat an axis handle as the first argument.
+
+	* plot/meshz.m: New function.
+	* plot/Makefile.in (SOURCES): Add it to the list.
+	* plot/surface.m: Allow surface to accept an axis handle as the
+	first argument.
+	* plot/meshc.m: Extract z from the the surface object rather than
+	varargin so that we can rely on code in surface to treat leading
+	axis handles.
+
+	* plot/__go_draw_axes__.m: Add nomirror to "set ytics" and "set
+	y2tics" in the case of a plotyy plot.
+	* plot/plotyy.m: ensure the position property is set correct for
+	the second axis, by setting it after the plot itself. In the case
+	of a plot that returns multiple handles, base the color selection
+	on the first.
+
+2007-11-27  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Set quadrilateral color according to
+	z-value of vertex 'c3'.
+
+2007-11-27  John W. Eaton  <jwe@octave.org>
+
+	* image/image.m: Allow nargin == 0 case to work again.
+
+2007-11-27  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_figure__.m: Force a multiplot mode with a
+	colorbar, to ensure that the colorbar is on the canvas for png and
+	postscipt outputs.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* sparse/spstats.m, statistics/base/mode.m: More care with sparse
+	return values.
+
+	* plot/plotyy.m: New function
+	* plot/Makefile.in (SOURCES): Add it here.
+	* plot/__go_draw_axes__.m: Force axis margins for plotyy. Set text
+	color for {x|y|z}label and {x|y|z}tics. Also force the label of
+	{x|y}label to respect the axis position.
+	* plot/xlabel.m, plot/ylabel.m, plot/zlabel.m: Accept an axis
+	handle as the first argument.
+
+	* pkg/pkg.m (pkg:install): When loading the installed packages
+	index into installed_pkgs_lst and not descriptions..
+
+	* plot/quiver3.m, plot/surfnorm.m, plot/__quiver__.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them to the sources.
+	* plot/quiver.m: Modify to use __quiver__.m.
+
+	* plot/hist.m: Avoid saturation when the x values are in an
+	inetger type.
+
+2007-11-26  Jason Riedy  <ejr@cs.berkeley.edu>
+
+	* linear-algebra/condest.m, linear-algebra/onenormest.m: New
+	functions.
+	* linear-algebra/Makefile.in (SOURCES): Add them to the sources.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Prevent the cbrange from being of zero
+	extent.
+
+	* plot/colorbar.m: New function.
+	* plot/Makefile.in (SOURCES): Add it to the sources.
+	* plot/__go_draw_axes__.m: Calculate the colorbar position,
+	precalculate the clim, set pm3d except for mesh.
+	* plot/__contour__.m: Don't scale the contours to clim, but rather
+	save the real values so that colorbar corresponds to the contour
+	levels.
+
+	* plot/stem.m: Set marker color the same as the line color. Draw
+	a single discontinous line object for the stems.
+
+	* plot/sphere.m: New function ported from JHandles.
+	* plot/Makefile.in (SOURCES): Add it to the sources.
+
+	* plot/__go_draw_axes__.m: Pass the have_newer_gnuplot arg to
+	__maybe_munge_text__. Use it to reforce fontname for gnuplot 4.0
+	to get enhanced mode to work correctly for the X11 terminal.
+
+	* plot/imagesc.m, plot/image.m: Scale colormap to image and not
+	the reverse. Allow an axes handle to be passed and/or returned.
+	* plot/__go_draw_axes__.m: Autoscale colormap for images.
+
+	* plot/__go_draw_axes__.m: Add depthorder flag to "set pm3d" to
+	sort surface patches by their depth and not the order they are
+	rendered in.
+
+	* plot/__patch__.m: Set clim correctly.
+	* plot__go_draw_axes__.m: Allow patch objects to have markers, and
+	the marker color is determined by the cmap.
+	* plot/scatter.m: New function to 2D scatter plots.
+	* plot/scatter3.m: New function to 3D scatter plots.
+	* plot/__scatter__.m: Support function for scatter plots
+	* Makefile.in (SOURCES): Ad dnew functions here.
+
+	* plot/drawnow.m (open_gnuplot_stream, init_gnuplot_stream):
+	Return whether the terminal supports enhanced text or not.
+	(drawnow:enhanced_term): New sub-function to determine if terminal
+	supports enhanced mode.
+	* plot/__go_draw_figure__.m: Accept enhanced flag and pass to
+	__go_draw_axes__.
+	* plot/__go_draw_axes__.m: Accept enhanced flag and munge text if
+	needed to support the enhanced mode.
+	* plot/print.m: Remove "enhanced" option as this is now treated in
+	drawnow.m.
+
+	* plot/caxis.m: New function to control the color axis limits.
+	* plot/Makefile.in (SOURCES): Include it.
+	* plot/axis.m: Allow the first argument to be an axes handle.
+	* plot/__go_draw_axes__.m: Move the setting of the caxis, also
+	autoscale caxis for patches. If any(isinf(clim)) don't set the
+	caxis limits.
+
+	* image/gmap40.m: New gnuplot 4.0 specific colormap fucntion.
+	* image/Makefile.in (SOURCES): Include it.
+	* plot/__bar__.h: Allow axis handles to be passed. Set the color
+	of the bars for the colormap.
+	* plot/bar.m, plot/barh.m: Document that axis handles can be
+	passed.
+	* plot/__contour.m: Avoid possible divide by zero error.
+	* plot/contour.m: Missing semicolon.
+	* plot/surface.m: Don't attempt to set additional arguments if
+	there are none.
+	* plot/Makefile.in (SOURCES): Include __bars__.m
+
+2007-11-19  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__bar__.m: put bar creation code into separate function
+	to allow easy hook up from other graphic backends
+
+	* plot/__bars__.m: new function containing bar creation code
+
+2007-11-26  Alexander Barth  <barth.alexander@gmail.com>
+
+	* general/accumarray.m: Correct dimension check.
+
+2007-11-26  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/residue.m: Prepad along second dimension.
+	From Doug Stewart <dastew@sympatico.ca>.
+
+2007-11-26  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/cylinder.m, plot/slice.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+2007-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/patch.m: Handle arg may also be hggroup object.
+	Use ancestor to find parent axes object.
+
+2007-11-14  David Bateman  <dbateman@free.fr>
+
+	* plot/__contour__.m: Treat unclosed contours by adding NaN to
+	flag to patch that it is not closed. Allow z to take string
+	arguments and use it to flag that the contours are placed at the
+	z level of the contour itself.
+	* plot/__go_draw_axes__.m: Treat hidden line removal in patch
+	objects as well. Let hidden removal take precedence in case of a
+	conflict.
+	* plot/surface.m: Allow surface to treat handles being passed or
+	returned. Any additional arguments arr used to set the surface
+	handle.
+	* plot/contour3.m: New function
+	* plot/Makefile.in (SOURCES): Add it to the sources.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* specfun/bessel.m: Update doc string from
+	src/DLD-FUNCTIONS/besselj.cc.
+
+2007-11-12  David Bateman  <dbateman@free.fr>
+
+	* plot/contour.m: Allow handles to be passed and returned. Split
+	the countour function itself into __contour__.m to be shared with
+	surfc and meshc.
+	* plot/__contour__.m: New file
+	* plot/Makefile.in (SOURCES): Add it to the sources.
+	* plot/__go_draw_axes.m: For patch objects don't attempt to patch
+	the face or edge if the facecolor or edge color are marked as
+	"none". Allow the edgecolor to be determined by the cdata in the
+	same manner as the facecolor. Fail if facecolor is not "none" and
+	a 3-D plot is desired, rather than ignoring zdata. Make the
+	storage of 3D/4D data consistent between line, surface and patch
+	objects.
+	* plot/meshc.m: Use new __contour__.m to plot the contours.
+	* plot/surfc.m: Use new __contour__.m to plot the contours.
+
+	* plot/__go_draw_axes__.m (get_fontname_and_size):
+	Handle fontweight and fontangle properties.
+
+2007-11-12  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/spinmap.m, plot/ribbon.m: New functions.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+2007-11-12  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (get_fontname_and_size): New subfunction.
+	Use it to avoid duplicated code.
+
+2007-11-12  David Bateman  <dbateman@free.fr>
+
+	* plot/title.m: Fix return value for nargout > 0.
+
+	* plot/__go_draw_axes.m: Allow the font and fontsize to be
+	specified for the title, xlabel, ylabel and text objects.
+
+	* plot/__go_draw_axes.m: Allow arbitrary colormaps with gnuplot
+	4.0 and surface plots.
+
+2007-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/__patch__.m: Fix computation of faces when patch is defined
+	with X/Y/Z data.
+
+2007-11-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Correct test for have_data.
+	Correct logic in setting palette data.
+
+	* audio/wavread.m, control/base/__bodquist__.m,
+	control/base/dare.m, control/base/dlqr.m, control/hinf/h2norm.m,
+	control/system/c2d.m, control/system/is_detectable.m,
+	control/system/is_signal_list.m, control/system/is_stabilizable.m,
+	control/system/tfout.m, general/isdefinite.m,
+	linear-algebra/krylov.m, miscellaneous/compare_versions.m,
+	optimization/glpk.m, path/savepath.m, plot/findobj.m,
+	plot/shading.m, polynomial/mpoles.m, polynomial/polyint.m,
+	signal/freqz.m, signal/hurst.m, sparse/spfun.m, sparse/spones.m,
+	sparse/spstats.m, testfun/assert.m, testfun/fail.m,
+	testfun/test.m: Use specific end keywords.
+
+	* plot/surfc.m, plot/meshc.m: Don't change view if hold is on.
+
+2007-11-09  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/mesh.m, plot/pcolor.m, plot/surf.m, plot/surface.m:
+	Don't change view if hold is on.
+
+2007-11-09  David Bateman  <dbateman@free.fr>
+
+	* plot/hidden.m: New function.
+	* plot/Makefile.in (SOURCES): Add it here.
+	* plot/meshc.m, plot/mesh.m: Set facecolor to White for hidden
+	line removal.
+	* plot/__go_draw_axes__.m: If facecolor is white flag hidden line
+	removal and if it is "none" don't do hidden line removal.
+
+	* plot/legend.m: Also allow labels for surface and patch types.
+	* plot/__bar__.m: Split into separate patch pbjects to allow
+	setting of the legend.
+	* plot/__go_draw_axes__.m: Set titlespec from keylabel for patch
+	objects as well.
+
+	* plot/area.m, plot/__area__.m: New functions
+	* plot/Makefile.in (SOURCES): Add them to the list of files.
+
+	* plot/patch.m: Correctly handle case of axis handle as first arg.
+
+2007-11-09  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* sparse/spdiags.m: Tweak documentation entries to match other uses.
+
+2007-11-08  John W. Eaton  <jwe@octave.org>
+
+	* control/base/dcgain.m, control/base/dre.m,
+	control/base/impulse.m, control/base/step.m,
+	control/system/dmr2d.m, control/system/ord2.m,
+	control/system/sys2ss.m, control/system/sysdimensions.m,
+	control/system/sysgetsignals.m, control/system/sysout.m,
+	control/system/tfout.m, control/system/ugain.m,
+	control/system/zpout.m, control/util/strappend.m:
+	Don't fail with usage message if nargout is too large.
+
+	* control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
+	control/hinf/hinfnorm.m, control/hinf/hinfsyn.m,
+	control/hinf/hinfsyn_chk.m, control/hinf/is_dgkf.m,
+	control/hinf/wgt1o.m, control/obsolete/dezero.m,
+	control/obsolete/dlqg.m, control/obsolete/minfo.m,
+	control/obsolete/packsys.m, control/obsolete/qzval.m,
+	control/obsolete/rotg.m, control/obsolete/series.m,
+	control/obsolete/swapcols.m, control/obsolete/swaprows.m,
+	control/obsolete/syschnames.m, control/obsolete/unpacksys.m,
+	control/system/__syschnamesl__.m,
+	control/system/__syscont_disc__.m,
+	control/system/__sysdefioname__.m, control/system/__sysgroupn__.m,
+	control/system/__tf2sysl__.m, control/system/__zp2ssg2__.m,
+	control/system/abcddim.m, control/system/buildssic.m,
+	control/system/c2d.m, control/system/cellidx.m,
+	control/system/d2c.m, control/system/dmr2d.m,
+	control/system/fir2sys.m, control/system/is_abcd.m,
+	control/system/is_controllable.m, control/system/is_detectable.m,
+	control/system/is_digital.m, control/system/is_observable.m,
+	control/system/is_stabilizable.m, control/system/is_stable.m,
+	control/system/jet707.m, control/system/listidx.m,
+	control/system/parallel.m, control/system/ss.m,
+	control/system/ss2sys.m, control/system/ss2zp.m,
+	control/system/starp.m, control/system/sys2ss.m,
+	control/system/sys2tf.m, control/system/sys2zp.m,
+	control/system/sysadd.m, control/system/sysappend.m,
+	control/system/sysconnect.m, control/system/syscont.m,
+	control/system/sysdimensions.m, control/system/sysdisc.m,
+	control/system/sysdup.m, control/system/sysgetsignals.m,
+	control/system/sysgroup.m, control/system/sysmin.m,
+	control/system/sysmult.m, control/system/sysout.m,
+	control/system/sysprune.m, control/system/sysreorder.m,
+	control/system/sysscale.m, control/system/syssetsignals.m,
+	control/system/syssub.m, control/system/sysupdate.m,
+	control/system/tf.m, control/system/tf2ss.m,
+	control/system/tf2sys.m, control/system/tfout.m,
+	control/system/zp.m, control/system/zp2ss.m,
+	control/system/zp2sys.m, control/system/zp2tf.m,
+	control/system/zpout.m, control/util/__outlist__.m,
+	control/util/__zgpbal__.m, control/util/axis2dlim.m,
+	control/util/prompt.m, control/util/sortcom.m,
+	control/util/zgfmul.m, control/util/zgfslv.m,
+	control/util/zginit.m, control/util/zgreduce.m,
+	control/util/zgrownorm.m, control/util/zgscal.m: Style fixes.
+
+2007-11-08  David Bateman  <dbateman@free.fr>
+
+	* plot/quiver.m: Fix arrowheads.
+
+2007-11-07  Ben Abbott  <bpabbott@mac.com>
+
+	* set/ismember.m: Call cell_ismember to handle cellstr args.
+	Handle "rows" argument.  New tests.
+	(cell_ismember): New function.
+
+2007-11-07  John W. Eaton  <jwe@octave.org>
+
+	* control/base/__bodquist__.m, control/base/__freqresp__.m,
+	control/base/__stepimp__.m, control/base/are.m,
+	control/base/ctrb.m, control/base/damp.m, control/base/dare.m,
+	control/base/dcgain.m, control/base/dgram.m, control/base/dlqr.m,
+	control/base/dre.m, control/base/impulse.m, control/base/lqe.m,
+	control/base/lqg.m, control/base/lqr.m, control/base/lsim.m,
+	control/base/ltifr.m, control/base/nichols.m,
+	control/base/nyquist.m, control/base/obsv.m, control/base/place.m,
+	control/base/rlocus.m, control/base/step.m, control/base/tzero.m:
+	Style fixes.
+
+2007-11-07  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* control/base/bode_bounds.m, control/base/dgram.m,
+	control/base/dlyap.m, control/base/freqchkw.m,
+	control/base/gram.m, control/base/place.m,
+	control/hinf/hinf_ctr.m, control/hinf/hinfsyn_chk.m,
+	control/hinf/hinfsyn_ric.m, control/system/is_sample.m,
+	control/system/is_signal_list.m, control/system/ss2tf.m,
+	control/system/sys2fir.m, control/system/sysgettsam.m,
+	control/system/sysgettype.m, control/system/sysreorder.m,
+	control/system/tf2sys.m, control/system/zp2tf.m,
+	control/util/axis2dlim.m, control/util/swap.m,
+	control/util/zgfmul.m, control/util/zgfslv.m,
+	control/util/zginit.m, control/util/zgreduce.m,
+	control/util/zgrownorm.m, control/util/zgscal.m,
+	control/util/zgsgiv.m, control/util/zgshsr.m, general/isa.m,
+	geometry/inpolygon.m, linear-algebra/housh.m,
+	miscellaneous/compare_versions.m, miscellaneous/inputname.m,
+	miscellaneous/run.m, quaternion/qconj.m,
+	quaternion/qcoordinate_plot.m, quaternion/qderiv.m,
+	quaternion/qderivmat.m, quaternion/qinv.m, quaternion/qmult.m,
+	quaternion/qtrans.m, quaternion/qtransvmat.m, signal/fractdiff.m,
+	signal/freqz_plot.m, signal/periodogram.m, signal/rectangle_lw.m,
+	signal/rectangle_sw.m, signal/sinc.m, signal/triangle_lw.m,
+	signal/triangle_sw.m, signal/yulewalker.m, sparse/colperm.m,
+	sparse/etreeplot.m, sparse/nonzeros.m, sparse/spalloc.m,
+	sparse/spones.m, sparse/spy.m, specfun/isprime.m,
+	statistics/distributions/empirical_cdf.m,
+	statistics/distributions/empirical_inv.m,
+	statistics/distributions/empirical_pdf.m,
+	statistics/models/logistic_regression_derivatives.m,
+	statistics/models/logistic_regression_likelihood.m: Check nargin.
+
+2007-11-07  David Bateman  <dbateman@free.fr>
+
+	* general/gradient.m: Correctly convert deltax and deltay scalar
+	values are scalars to vectors.
+
+	* plot/__go_draw_axes__.m: Fix surfaces for gnuplot 4.0 and for
+	the meshc.m function.
+	* plot/meshc.m: Also use the surface function.
+
+	* plot/meshc.m, plot/quiver.m, plot/surfc.m, : New files.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+	Also add pcolor.m, shading.m, surf.m, and surface.m to the list.
+
+2007-11-07  Michael Zeising  <michael@michaels-website.de>
+
+	* audio/wavwrite.m, audio/wavwrite.m: Correct sample scaling.
+
+2007-11-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Also set have_data to false if any of
+	the data limits are infinite.
+	(get_data_limits): Don't do anything if xdat or tx are empty.
+	(get_axis_limits): Don't do anything if min_val or max_val are
+	infinite.
+
+2007-11-06  David Bateman  <dbateman@free.fr>
+
+	* plot/hist.m: Pass any additional arguments to bar for
+	treatment. Create a default x value that is always a vector.
+
+2007-11-06  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* pkg/pkg.m.m: Check for environment variables CC, CXX, AR, RANLIB
+	when calling ./configure and add quotes to preserve spaces.
+
+2007-11-06  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/pcolor.m, plot/shading.m, plot/surf.m, plot/surface.m:
+	New files.
+	* plot/mesh.m: Call surface to do the real work.
+	* plot/__go_draw_axes__.m: Use pm3d mode to handle new surface
+	properties.
+
+	* image/colormap.m: Also return current colormap if nargout and
+	nargin are both 0.
+
+2007-11-05  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* startup/inputrc: Delete key bindings starting with \340 code.
+
+2007-11-05  David Bateman  <dbateman@free.fr>
+
+	* linear-algebra/__norm__.m: Scale frobenius norm by infinity norm
+	to avoid issues of over- and underflow.  From Rolf Fabian
+	<Rolf.Fabian@gmx.de>.
+
+2007-11-02  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* time/asctime.m, general/structfun.m: Fix broken @examples in
+	help texts.
+
+2007-11-02  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/bar.m, plot/barh.m: Doc fix.
+
+2007-10-31  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Call undo_string_escapes on obj.keylabel.
+
+2007-10-31  Michael goffioul  <michael.goffioul@gmail.com>
+
+	* plot/subplot.m: Ignore legend objects when parsing existing axes
+	objects and legend objects are implemented with a separate axes
+	object.
+
+2007-10-30  David Bateman  <dbateman@free.fr>
+
+	* control/base/DEMOcontrol.m: Doc fixes for small book format.
+
+	* plot/__go_draw_axes__.m (do_linestyle_command):
+	Use point type 0 for ".".
+
+2007-10-26  John W. Eaton  <jwe@octave.org>
+
+	* image/imshow.m: Improve compatibility.
+	* image/image.m: Return handle if nargou > 0.
+
+	* pkg/pkg.m: Delete PKG_ADD directive for autoloading packes.
+
+2007-10-25  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/compare_versions.m: Style fixes.
+
+2007-10-24  John W. Eaton  <jwe@octave.org>
+
+	* image/saveimage.m: Use functional form of save instead of eval.
+	Use -text instead of -ascii.
+
+	* plot/__go_draw_axes__.m: Handle visible = "off" for axes objects.
+
+2007-10-23  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/legend.m: Also extract location string from varargin (lost
+	when 2007-10-08 patch was applied).
+
+2007-10-23  David Bateman  <dbateman@free.fr>
+
+	* plot/xlim.m, plot/ylim.m, plot/zlim.m, plot/__axes_limits__.m,
+	miscellaneous/what.m: New functions
+	* plot/Makefile.in, miscellaneous/Makefile.in (SOURCES): Add new
+	functions.
+
+2007-10-22  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/cputime.m, time/tic.m, time/toc.m: Delete.
+	* miscellaneous/Makefile.in (SOURCES): remove cputim.m
+	* time/Makefile.in (SOURCES): Remov tic.m and toc.m
+
+2007-10-19  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/contourf.m: New function.
+	* plot/Makefile.in (SOURCES): Add it to the list.
+
+2007-10-19  John W. Eaton  <jwe@octave.org>
+
+	* plot/subplot.m: Doc fix.
+
+2007-10-19  David Bateman  <dbateman@free.fr>
+
+	* plot/__bar__.m, plot/fill.m: Call newplot as needed.
+
+2007-10-17  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* plot/print.m: Handle -textspecial and -textnormal flags for fig
+	output.
+
+2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
+
+	* general/rat.m, sparse/pcg.m, sparse/pcr.m, optimization/sqp.m,
+	statistics/models/logistic_regression.m, polynomial/polygcd.m,
+	control/system/ss.m, signal/arch_rnd.m, control/system/ss2sys.m,
+	control/system/syssetsignals.m, control/base/lqg.m,
+	strings/str2double.m, control/system/sysscale.m,
+	control/hinf/hinfdemo.m, general/cplxpair.m:
+	Make help text fit on pages when using smallbook.
+
+2007-10-15  David Bateman  <dbateman@free.fr>
+
+	* plot/print.m: Call drawnow before printing to ensure the plot is
+	on the screen.
+
+	* testfun/test.m: In error/warning blocks test for an error before
+	a warning to avoid unexpected failures.
+
+2007-10-15  Kim Hansen  i<kimhanse@gmail.com>
+
+	* testfun/assert.m: Correct documentation of absolution versus
+	relative error tolerance and add tests.
+
+2007-10-14  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (pkg:configure_make): Treat case of no files to install in
+	src directory.
+	* plot/Makefile.in (SOURCES): Add fill.m.
+
+2007-10-13  David Bateman  <dbateman@free.fr>
+
+	* plot/__patch__.m: Allow multiple patches to be defined and
+	return a single patch object. Allow Faces/Vertices form of
+	patch. Flag failure so the patch can call print_usage.
+	* plot/patch.m: Update help string for Faces/Vertices
+	call. Respect the fail flag returned by __patch__. Add demo code
+	that tests the functionality of patch.
+	* plot/__go_draw_axes__.m: Treat an array of patches in a single
+	patch object.
+	* plot/fill.m: New function.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (get_axis_limits):
+	Return lim = [] if logscale and no positive values.
+	(__go_draw_axes__): Skip plotting if computed axis limits are empty.
+	Set initial min and min positive values to Inf, max values to -Inf.
+	(get_data_limits): Correctly handle xminp when no positive values
+	are found.
+
+2007-10-11  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/residue.m: New optional input for pole multiplicity.
+	Doc fix.  Fix tests.
+
+2007-10-11  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* toplev.cc (Foctave_config_info): Add field "mac".
+
+	* miscellaneous/ismac.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to the list.
+	* miscellaneous/ispc.m, miscellaneous/isunix.m: Doc fix.
+
+2007-10-11  Arno Onken  <asnelt@asnelt.org>
+
+	* statistics/distributions/hygernd.m: Allow size to be specified
+	as a scalar.  Handle three argument case.  Allow T, M, and N to be
+	scalars or matrices of a common size.
+
+2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
+
+	* control/csrefcard.lt, control/system/is_detectable.m,
+	control/system/sysgroup.m, geometry/voronoin.m,
+	miscellaneous/dir.m, sparse/pcg.m, sparse/treeplot.m,
+	statistics/base/mode.m, statistics/distributions/betarnd.m,
+	statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/frnd.m,
+	statistics/distributions/gamrnd.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/laplace_rnd.m,
+	statistics/distributions/logistic_rnd.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/normrnd.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/trnd.m,
+	statistics/distributions/unifrnd.m,
+	statistics/distributions/wblrnd.m: Spelling fixes.
+
+2007-10-10  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* time/tic.m: New optional output value.
+
+	* general/int2str.m: Doc fix.
+
+2007-10-10  Arno Onken  <asnelt@asnelt.org>
+
+	* statistics/distributions/hygecdf.m,
+	statistics/distributions/hygeinv.m,
+	statistics/distributions/hygepdf.m,
+	statistics/distributions/hygernd.m:
+	Swap order of T and M args for compatibility.
+
+2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* control/hinf/hinfsyn.m, control/hinf/wgt1o.m,
+	control/system/buildssic.m, control/system/c2d.m,
+	control/system/d2c.m, control/system/ord2.m, control/system/ss.m,
+	control/system/ss2sys.m, control/system/ss2tf.m,
+	control/system/syscont.m, control/system/sysdimensions.m,
+	control/system/sysdisc.m, control/system/sysmult.m,
+	control/system/sysrepdemo.m, control/system/tf2ss.m, elfun/lcm.m,
+	finance/fv.m, general/cumtrapz.m, general/gradient.m,
+	general/interp1.m, general/interp2.m, general/interp3.m,
+	general/interpft.m, general/interpn.m, general/polyarea.m,
+	general/rat.m, general/structfun.m, general/trapz.m,
+	geometry/tsearchn.m, image/rgb2hsv.m, linear-algebra/krylov.m,
+	miscellaneous/ans.m, miscellaneous/gzip.m, optimization/glpk.m,
+	optimization/sqp.m, plot/findobj.m, plot/legend.m, plot/peaks.m,
+	plot/plot3.m, plot/stem.m, polynomial/deconv.m,
+	polynomial/pchip.m, polynomial/spline.m, polynomial/unmkpp.m,
+	sparse/pcr.m, sparse/spalloc.m, sparse/spconvert.m,
+	specfun/factor.m, specfun/legendre.m, statistics/base/mean.m,
+	statistics/base/meansq.m, statistics/base/var.m,
+	statistics/tests/chisquare_test_independence.m,
+	statistics/tests/t_test.m, statistics/tests/u_test.m,
+	strings/dec2base.m, strings/mat2str.m, testfun/speed.m,
+	testfun/test.m: Spelling fixes.
+
+2007-10-10  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/mpoles.m: Return indx = ordr(indx), not indx(ordr).
+
+2007-10-10  John W. Eaton  <jwe@octave.org>
+
+	* general/num2str.m: Always allow for sign for automatically
+	computed format widths.
+
+2007-10-09  David Bateman  <dbateman@free.fr>
+
+	* plot/patch.m: Accept a handle as the first argument.
+
+2007-10-09:  Kim Hansen  <kimhanse@gmail.com>
+
+	* general/repmat.m: Handle sparse input.  Add tests.
+
+2007-10-09  John W. Eaton  <jwe@octave.org>
+
+	* audio/wavwrite.m: Accept arguments in compatible order.
+
+2007-10-08  David Bateman  <dbateman@free.fr>
+
+	* general/interp2.m: Relax test for values outside the grid to
+	allow monotonically decreasing abscissa as well.
+
+2007-10-08  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/residue.m: Doc fix.  Add tests.  Restore multiplicity
+	as output parameter.
+
+2007-10-08  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m, plot/legend.m:
+	Handle compatible position specifiers as strings.
+
+2007-10-08  John Swensen  <jpswensen@comcast.net>
+
+	* general/num2str.m: Eliminate extra whitespace in output.
+	* strings/strtrim.m: New function.
+	* strings/Makefile.in (SOURCES): Add it to the list.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/residue.m: New test from test/test_poly.m.
+
+2007-10-06  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/saveimage.m: Handle saving color images without a colormap.
+	* image/__img_via_file__.m: Add missing semicolon.
+
+2007-10-06  Bill Denney  <wsloand@gmail.com>
+
+	* general/__splinen__.m, general/isscalar.m, general/rat.m,
+	strings/dec2base.m: Use numel(x) instead of prod(size(x)).
+
+2007-10-06  Francesco Potorti`  <Potorti@isti.cnr.it>
+
+	* plot/print.m: Handle svg output type.  Accept new -S option to
+	specify size for PNG and SVG output types.
+
+2007-10-05  Ben Abbott  <bpabbott@mac.com>
+
+	* polynomial/mpoles.m: New function.
+	* polynomial/residue.m: Modified to behave in reciprocal
+	manner.  No longer compute 4th output, "e".  No longer accept
+	tolerance input.  Explicitly set tolerance parameter to 0.001.
+	Respect maximum relative difference in poles when determining
+	their multiplicity.  Use mpoles to determine the multiplicity of
+	poles.
+
+2007-10-05  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m: Add cbrange to the plot stream
+	for surface plots.
+
+2007-10-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/__next_line_color__.m: Get color_rotation from axes
+	colororder property.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dir.m: Handle symbolic links in compatible way.
+	Use S_ISDIR (st.mode) instead of checking st.modestr(1) == "d".
+
+	* linear-algebra/Makefile.in (SOURCES): Rename norm.m to __norm__.m.
+	* linear-algebra/__norm__.m: Rename from norm.m.  Eliminate
+	special for __vnorm__.
+
+2007-10-03  Quentin Spencer  <qspencer@ieee.org>
+
+	* linear-algebra/norm.m: Special case vector 1-norm and 2-norm.
+
+2007-10-03  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (is_architecture_dependent): New function to identify
+	if a file is architecture dependent based on a list of file
+	extensions.
+	(configure_make): Simplify the search for architecture dependent
+	files based on this function.
+	(load_pakages_and_dependencies): Also look for bin directory in
+	the architecture dependent directory.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dir.m: Create empty struct with field names.
+	Include datenum in struct.
+
+2007-10-02  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/ls.m: If nargout return string array of files
+	returned by ls.
+
+2007-10-01  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Use %.15e instead of %.15g when setting
+	range values.
+
+2007-10-01  David Bateman  <dbateman@free.fr>
+
+	* linear-algebra/norm.m: Inline the isvector(x) calculation for
+	speed with small vectors.
+	* pkg/pkg.m (archprefix): Set using octave_config_info("libexecdir")
+	rather than OCTAVE_HOME().
+
+2007-09-30  Ben Abbott  <bpabbott@mac.com>
+
+	* plot/findobj.m: New function.
+	* plot/Makefile.m (SOURCES): Add it to SOURCES.
+
+2007-09-26  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Add second argument to setting for prefix for
+	architecture dependent files. Use throughout.
+	(pkg:issuperuser): New function, use through to check for
+	root user.
+	(pkg:getarchprefix): function to give the archiecture dependent
+	prefix for a package.
+	(pkg:getarchdir): New function giving location of architetcure
+	dependent directory. Use through out.
+	(pkg:install): Treat architecture dependent directory separately
+	as in might not be a sub-directory of the package directory.
+	(pkg:uninstall): ditto.
+	(pkg:create_pkgadddel): Check for global or local install for
+	architecture dependent directory.
+	(pkg:finish_installation): ditto.
+	(pkg:write_INDEX): ditto.
+	(pkg:load_packages_and_dependencies): ditto.
+	(pkg:copy_files): ditto. Add step to copy architecture dependent
+	files to a new location if user is root.
+	(pkg:rm_rf): Check if file or directory exists before removing.
+	(pkg:dirempty): Check if directory exists before checking.
+
+	* plot/___patch__.m: Allow face colors to be passed as strings
+
+	* plot/__plt_get_axis_arg__.m: Treat case of empty "varargin"
+	needed for calls to "hold" without an argument.
+
+2007-09-21  John W. Eaton  <jwe@octave.org>
+
+	* optimization/sqp.m: Fix typo.
+
+	* plot/__go_draw_axes__.m (do_tics_1): Use %g, not %.15g here.
+
+2007-09-21  Luther Tychonievich  <lty@cs.byu.edu>
+
+	* control/hinf/h2norm: Compute d*d', not d'*d.
+
+2007-09-21  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* statistics/distributions/Makefile.in (SOURCES): Add unidcdf.m,
+	unidpdf.m and unidinv.m
+
+2007-09-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Use %.15g throughout.
+	(do_tics_1): Set numeric axes formats to "%.15g".
+
+2007-09-18  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m (__gnuplot_write_data__): Use %e instead
+	of %g when writing data.
+
+2007-09-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Omit linestyle clause for errorbar plots.
+
+2007-09-14  Ulrich Tipp  <ulrich.tipp@hsnr.de>
+
+	* miscellaneous/bincoeff.m: Fix calculation of bincoeff (n, k) for
+	noninteger N with N-K < 1.
+
+2007-08-04  Jean-Francois Cardoso  <cardoso@tsi.enst.fr>
+
+	* strings/index.m: Correct for strings differing after the third
+	position (bug reported by Maude Martin).
+
+2007-09-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/__default_colormap__.m: Delete.
+	* plot/Makefile (SOURCES): Remove from the list.
+
+2007-09-13  Christof Zeile  <cz-oct07@cvmx.com>
+
+	* pol2cart.m: Make it work with mixed scalar/nonscalar arguments.
+
+2007-09-10  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Allow gnuplot 4.0 with patches, but
+	limit the selection of colors in the same way as for lines.
+	* plot/__patch__.m: Allow matrix arguments with one patch per
+	column.
+	* plot/__bar__.m: Adapt to use "patch".
+
+2007-09-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m (drawnow): New arg, debug_file.
+	(init_plot_stream): Split from open_plot_stream.
+	* plot/print.m: Accept -debug=FILE argument.
+
+2007-09-06  David Bateman  <dbateman@free.fr>
+
+	* general/celldisp.m: New function.
+	* general/Makefile.in (SOURCES): Add celldisp.m.
+	* miscellaneous/swapbytes.m: New function.
+	* miscellaneous/gzip.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add swapbytes.m and gzip.m.
+
+2007-09-05  David Bateman  <dbateman@free.fr>
+
+	* general/structfun.m: New function.
+	* general/Makefile.in (SOURCES): Add it to sources.
+	* miscellaneous/run.m: New function.
+	* miscellaneous/Makefile.in (SOURCES): Add it to sources.
+	* statistics/base/mode.m: New function.
+	* statistics/base//Makefile.in (SOURCES): Add it to sources.
+
+2007-09-05  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/orderfields.m: Use numel instead of length.
+
+2007-09-05  Michael goffioul  <michael.goffioul@gmail.com>
+
+	* miscellaneous/orderfields.m: Handle empty structs.
+
+2007-09-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Consistently index PARAMETRIC with
+	DATA_IDX.
+
+2007-09-04  David Bateman  <dbateman@free.fr>
+
+	* general/isdir.m: Return a logical value.
+
+2007-09-04  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/chi2pdf.m,
+	statistics/distributions/chi2cdf.m,
+	statistics/distributions/chi2inv.m: Modifiy the call to the gamma
+	distribution functions to account for inverse of scale factor in
+	gamma functions.
+
+2007-09-01  John W. Eaton  <jwe@octave.org>
+
+	* plot/Makefile.in (SOURCES): Add ancestor.m to the list.
+
+2007-09-01  David Bateman  <dbateman@free.fr>
+
+	* polynomial/polyint.m: New function like polyinteg but with
+	explicit integration constant.
+	* polynomial/polyinteg.m: Remove.
+	* polynomial/Makefile.in (SOURCES): Add polyint.m and remove
+	polyinteg.m.
+	* deprecated/polyinteg.m: Move version here.
+	* deprecated/Makefile.in (SOURCES): Add polyinteg.m.
+
+	* geometry/voronoi.m: Add large box around data to get a good
+	approximation of the rays to infinity.
+
+2007-08-31  Michael goffioul  <michael.goffioul@gmail.com>
+
+	* plot/axes.m: Allow parent to be specified when creating axes
+	objects.  Support non-figure parents.
+
+2007-08-31  John W. Eaton  <jwe@octave.org>
+
+	* plot/ancestor.m: New function, adapted from Octave Forge.
+
+2007-08-31  S�ren Hauberg  <hauberg@gmail.com>
+
+	* polynomial/polygcd.m: Better layout of example.
+	* polynomial/compan.m: Remove unnecessary check.
+	* polynomial/roots.m: Added example to help text.
+	* polynomial/polyderiv.m: Change 'polyder' to 'polyderiv' in help text.
+	* polynomial/poly.m: Added example to help text.
+
+2007-08-30  John W. Eaton  <jwe@octave.org>
+
+	* optimization/qp.m: Increase maxit to 200.
+
+2007-08-30  David Bateman  <dbateman@free.fr>
+
+	* geometry/inpolygon.m: New file.
+	* geometry/Makefile.in (SOURCES): Add inpolygon.m.
+
+2007-08-29  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m: Disable linetype in do_linestyle_command.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Treat text color property.
+
+2007-08-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/subplot.m, plot/plot.m, plot/grid.m:
+	Use p = get (h, "prop") instead of obj = get (h); p = obj.prop.
+
+	* miscellaneous/movefile.m: Separate second and third args and
+	use p1 and p2, not f1 and f2 when constructing arguments for
+	calls to system.  From Michael Goffioul <michael.goffioul@gmail.com>.
+
+2007-08-24  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* set/intersect.m: Make it work with cell arrays of strings.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* geometry/convhull.m, geometry/delaunay.m, geometry/delaunay3.m,
+	geometry/griddata.m, geometry/voronoi.m, geometry/voronoin.m: New
+	functions ported from octave-forge.
+	* geometry/delaunayn.m, geometry/dsearch.m, geometry/dsearchn.m,
+	geometry/griddata3.m, geometry/griddatan.m, geometry/trimesh.m,
+	geometry/triplot.m, geometry/tsearchn.m:
+	New functions.
+	* geometry/voronoi.m: Remove duplicate edges from Voronoi diagram.
+	* geometry/Makefile.in (SOURCES): Add functions above.
+	* configure.in (AC_CONFIG_FILES): Add new file geometry/Makefile.
+
+2007-08-23  John W. Eaton  <jwe@octave.org>
+
+	* pkg/pkg.m: Avoid using installed_packages for both function and
+	variable name.
+
+2007-08-23  David Bateman  <dbateman@free.fr>
+
+	* plot/plot.m: Allow first arg to be axes handle.
+
+2007-08-22  David Bateman  <dbateman@free.fr>
+
+	* control/base/nichols.m: Correct for misnamed variable, and ensure
+	outputs are returned only if requested.
+
+2007-08-22  Donald Parsons  <dparsons@brightdsl.net>
+
+	* control/base/nichols.m: Fix typo.
+
+2007-08-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/meshgrid.m: Use repmat instead of multiplication.
+
+2007-08-10  Peter A. Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m: Add axes position to the usingclause,
+	use axes position in each appropriate gnuplot set statement.
+
+2007-08-10  John W. Eaton  <jwe@octave.org>
+
+	* image/Makefile.in (DISTFILES): Also include $(IMAGES) in the list.
+	(install install-strip): Use $(IMAGES), not $(IMAGE_FILES_NO_DIR).
+	(uninstall): Use $(IMAGES), not $(IMAGE_FILES_NO_DIR).
+	(IMAGE_FILES, IMAGE_FILES_NO_DIR): Delete obsolete variables.
+
+2007-08-10  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/patch.m, plot/__patch__.m: New files.
+	* plot/Makefile.in (SOURCES): Add them to the list.
+
+2007-08-07  John W. Eaton  <jwe@octave.org>
+
+	* path/savepath.m: Use single quotes for argument to PATH command
+	that is inserted in file.
+
+2007-07-27  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Only set default value for term if GNUTERM is
+	not set in the environment.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in, audio/Makefile.in, control/Makefile.in,
+	control/base/Makefile.in, control/hinf/Makefile.in,
+	control/obsolete/Makefile.in, control/system/Makefile.in,
+	control/util/Makefile.in, deprecated/Makefile.in,
+	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
+	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, optimizaton/Makefile.in,
+	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, quaternion/Makefile.in,
+	set/Makefile.in, signal/Makefile.in, sparse/Makefile.in,
+	specfun/Makefile.in, special-matrix/Makefile.in,
+	startup/Makefile.in, statistics/Makefile.in,
+	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
+	Adjust DISTFILES to allow out of tree "make dist" to work.
+
+2007-07-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt2__.m: Return [](0x1) if both X and Y are empty.
+
+2007-07-24  David Bateman  <dbateman@free.fr>
+
+	* image/flag.m: New colormap function.
+	* images/Makefile.in: Include it in SOURCES.
+
+	* image/autumn.m image/bone.m image/cool.m image/copper.m
+	image/hot.m image/hsv.m image/jet.m image/pink.m image/prism.m
+	image/rainbow.m image/spring.m image/summer.m image/white.m
+	image/winter.m, image/brighten.m: Use isscalar and not is_scalar.
+	* image/gray.m, image/ocean.m: Use the same means of finding the
+	number of colormap elements as the other colormap functions.
+
+2007-07-24  Kai Habel  <kai.habel@gmx.de>
+
+	* plot/__go_draw_axes__.m: Handle patch.
+
+2007-07-23  David Bateman  <dbateman@free.fr>
+
+	* general/rat.m: New function for ration approximation imported
+	from octave-forge.
+	* general/del2.m: New function for discrete laplacian operator.
+	* general/Makefile.in: Include rat.m and del2.m  in SOURCES.
+
+	* image/autumn.m image/bone.m image/cool.m image/copper.m
+	image/hot.m image/hsv.m image/jet.m image/pink.m image/prism.m
+	image/rainbow.m image/spring.m image/summer.m image/white.m
+	image/winter.m, image/brighten.m: Port image functions from
+	octave-forge.
+	* image/Makefile.in: Add ported functions to SOURCES.
+	* image/gray.m, image/ocean.m: Don't set the colormap for
+	compatibility with matlab.
+
+	* plot/meshc.m, plot/peaks.m: Port plotting function from
+	octave-forge
+	* plot/Makefile.in: Add ported functions to SOURCES.
+	* plot/__go_draw_axes__.m: Set the palette for the surfaces if
+	using gnuplot 4.2 or greater.
+
+2007-07-23  Claudio Belotti  <c.belotti@imperial.ac.uk>
+
+	* general/cart2sph.m: Fix unbalanced paranthesis.
+
+2007-07-19  David Bateman  <dbateman@free.fr>
+
+	* plot/fplot.m: More compatible version.
+
+2007-07-18  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/clf.m: Check for valid handle before deleting.
+
+	* plot/figure.m: Pass "figure" property/value pairs directly to
+	__go_figure__ instead of using regular "set" call.
+
+2007-07-18  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* plot/drawnow.m: Prefer GNUTERM to DISPLAY when choosing terminal
+	type for gnuplot.
+
+2007-07-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Unconditionally send "unset label" to
+	gnuplot for each set of axes.
+
+2007-07-18  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/gamcdf.m, statistics/distributions/gaminv.m,
+	statistics/distributions/gampdf.m, statistics/distributions/gamrnd.m,
+	statistics/distributions/expcdf.m, statistics/distributions/expinv.m,
+	statistics/distributions/exppdf.m, statistics/distributions/exprnd.m:
+	Use standard scale factor rather than one on the scale factor for
+	compatibility.
+
+	* deprecated/gamma_cdf.m, deprecated/gamma_inv.m,
+	deprecated/gamma_pdf.m, deprecated/gamma_rnd.m,
+	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
+	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m:
+	Preserve backward compatibility.
+
+2007-07-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* pkg/pkg.m (pkg:installed_packages): Use findstr rather than regexp
+	to avoid issues with regexp special characters in the path strings.
+
+2007-07-06  David Bateman  <dbateman@free.fr>
+
+	* general/accumarray.m: New function to create an array by
+	accumulating the elements.
+
+2007-06-29  Marcus W. Reble  <reble@wisc.edu>
+
+	* optimization/sqp.m (sqp): New args, lb, ub, maxiter, and tolerance.
+	(fdjac): Set nx outside of if block.
+	(cf_ub_lb, cigrad_ub_lb): New subfunctons.
+
+2007-06-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* plot/subplot.m: Add 'ishandle' check when parsing the existing axes.
+
+	* plot/axis.m: Also set "visible" property when setting axes to
+	on/off.
+
+2007-06-27  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* image/colormap.m: Only return colormap if nargout > 0.
+	Mark as command.
+
+2007-06-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m, plot/__go_draw_axes__.m: Use strcmpi instead of
+	strcmp for selected property comparisons.
+
+2007-06-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imshow.m: Fix check for colormap arguments.
+
+2007-06-25  Joel Keay  <keay@nhn.ou.edu>
+
+	* plot/drawnow.m: Handle GNUTERM=aqua if DISPLAY is not set.
+
+2007-06-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* statistics/base/median.m: Update help text to mention 'dim'
+	argument, and note that the data should be sorted for the
+	definition of the median to be correct.
+
+	* statistics/base/std.m: Add missing square to definition of
+	standard deviation.
+
+	* statistics/base/cov.m: Add definition of covariance to the help text.
+
+	* statistics/base/kurtosis.m, statistics/base/skewness.m,
+	statistics/base/std.m:
+	Note that \bar{x} is the mean value of x in the help text.
+
+	* specfun/nchoosek.m: Add alternative definition of the binomial
+	coefficient to the help text.
+
+	* specfun/perms.m, statistics/base/values.m: Add example in help text.
+
+	* statistics/base/var.m: Put N in @math in help text.
+
+	* statistics/base/qqplot.m, statistics/base/ppplot.m,
+	statistics/tests/kolmogorov_smirnov_test.m:
+	Write about possible values of 'dist' in help text.
+
+	* statistics/base/corrcoef.m, statistics/base/cor.m:
+	Add definition of correlation to the help text.
+
+	* statistics/base/logit.m, statistics/base/kendall.m,
+	statistics/base/cloglog.m, statistics/tests/hotelling_test_2.m,
+	statistics/distributions/wblcdf.m, statistics/distributions/wblpdf.m:
+	TeXification of help text.
+
+	* statistics/tests/hotelling_test.m: Write T^2 in @math in help text.
+
+	* statistics/tests/var_test.m, statistics/tests/welch_test.m:
+	Add missing @var's to help text.
+
+	* statistics/models/logistic_regression.m: Fix typos in help text.
+
+	* statistics/distributions/kolmogorov_smirnov_cdf.m: Fix TeX part
+	of help text.
+
+	* statistics/distributions/unidinv.m: Add a missing 'discrete' to
+	help text.
+
+	* statistics/distributions/unidpdf.m,
+	statistics/distributions/discrete_pdf.m:
+	Replace 'pDF' with 'PDF' in help text.
+
+2007-06-25  John W. Eaton  <jwe@octave.org>
+
+	* strings/substr.m: Use offset consistently in code and doc string.
+	From Rafael Laboissiere <rafael@debian.org>.
+
+2007-06-25  Pete Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m: Handle units for text objects.
+
+2007-06-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Handle char arrays for tic labels.
+	Recycle tic labels if necessary.  From Juhani Saastamoinen
+	<juhani@cs.joensuu.fi>.
+
+2007-06-20  John W. Eaton  <jwe@octave.org>
+
+	* strings/index.m: Allow strings to be empty.
+	From Hartmut Wziontek <hwz@hwz.bv.TU-Berlin.DE>
+
+	* plot/__go_draw_axes__.m (do_tics_1): Fix typo (xtic -> tics).
+
+2007-06-19  Vittoria Rezzonico  <vittoria.rezzonico@epfl.ch>
+
+	* sparse/pcg.m: Allow the preconditioner to be passed as two
+	separate matrices.
+
+2007-06-19  David Bateman  <dbateman@free.fr>
+
+	* plot/axis.m: Prefer to use legend rather than the older Octave
+	only ";;" legend syntax.
+	* polynomial/mkpp.m: ditto.
+	* polynomial/pchip.m: ditto.
+	* signal/freqz_plot.m: ditto.
+	* sparse/gplot.m: ditto.
+	* sparse/treeplot.m: ditto.
+
+2007-06-19  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (do_tics, do_tics_1): New functions.
+	(__go_draw_axes__): Call do_tics to handle tic marks.
+
+2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* general/interp1.m, general/interp2.m, general/interp3.m,
+	general/interpn.m: Replace, NaN with NA.  Use isna instead of ==
+	to check for NA.
+
+2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* optimization/glpk.m: TeXified the help text.
+	* optimization/qp.m: TeXified the help text.
+	* optimization/sqp.m: TeXified the help text.
+
+2007-06-16  S�ren Hauberg  <hauberg@gmail.com>
+
+	* plot/legend.m: Replace 'vargin' with 'varargin'.
+
+2007-06-15  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Only attempt label rotation if
+	have_newer_gnuplot is true.
+
+2007-06-15  Pete Gustafson  <petegus@umich.edu>
+
+	* plot/__go_draw_axes__.m  Handle rotation arg for axis labels.
+	* plot/__axis_label__.m  Assign ylabel default rotation property
+	to 90, all others 0.
+
+	* plot/__errplot__.m: Set ifmt from fmt.linestyle.
+	* plot/__go_draw_axes__.m: Removed undefined tx from call to
+	get_data_limits.
+	* plot/__plotopt1__.m: Intercept and strip format string when
+	called by __errplot__.
+
+2007-06-15  John W. Eaton  <jwe@octave.org>
+
+	* testfun/test.m: Also return number of expected failures.
+
+2007-06-14  John W. Eaton  <jwe@octave.org>
+
+	* set/ismember.m: Mark two tests known to fail with xtest.
+
+	* plot/__go_draw_axes__.m: Handle text rotation property.
+
+2007-06-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* testfun/test.m: Add xtest support for tests known to fail.
+
+2007-06-14  Sebastian Schubert  <sebastian-schubert@gmx.de>
+
+	* plot/print.m: Handle pstex, pslatex, epslatex, and
+	epslatexstandalone terminals.
+
+2007-06-14  David Bateman  <dbateman@free.fr>
+
+	* general/__splinen__.m: Check also for ND vectors. Fix for N > 2,
+	as permutation of results was incorrect.
+	* general/interp1.m: Add demo on second derivative
+	* general/interpn.m: Convert "y" to vectors for __splinen__
+	call. Add 3D demo. Fix typos
+	* general/interp3.m: Fix typos. Correct permutation for use of
+	interpn.
+	* polynomial/mkpp.m: Correction for matrices of 3 or more dimensions.
+
+2007-06-13  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/mkoctfile.m: Quote args too.
+
+2007-06-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* miscellaneous/mkoctfile.m: Quote script name for call to system.
+
+2007-06-12  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* plot/__pltopt1__.m: Set linestyle to "none" instead of "".
+	Set have_linestyle to true if two character linestyle is found.
+
+2007-06-12  David Bateman  <dbateman@free.fr>
+
+	* general/Makefile.in (SOURCES): Include __spline__.m, interp3.m
+	and interpn.m.
+
+	* pkg/pkg.m (pkg:load_package_dirs): Check for field "loaded" in
+	structure before using it.
+
+2007-06-12  David Bateman  <dbateman@free.fr>
+
+	* general/interp1.m: Change examples to use new graphics interface.
+	* general/__splinen__.m: New support function for N-dimensional
+	spline interpolation.
+	* general/bicubic.m: Allow definition of extrapolation
+	value. Adapt tests to use new graphics interface
+	* general/interp2.m: Call __splinen__ for 2-D spline
+	interpolation. Make the lookup table code only be called for
+	linear and nearest methods.
+	* general/interpn.m: New function for N-dimensional, linear, nearest
+	and spline interpolation.
+	* general/interp3.m: New function for 3-dimensional, linear, nearest
+	and spline interpolation.
+	* polynomial/spline.m: Change examples to use new graphics interface.
+
+2007-06-12  Steve M. Robbins  <steve@sumost.ca>
+
+	* statistics/tests/wilcoxon_test.m: Error if N <= 25.
+
+2007-06-12  S�ren Hauberg  <soren@hauberg.org>
+
+	* plot/fplot.m: If function is inline, vectorize it.
+
+2007-06-10  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (pkg:installed_packages): truncate start of package
+	directory if need to, so that it fits on a line.
+
+2007-06-07  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (pkg): For rebuild target, force package order in
+	saved file so that dependent packages are loaded first, and if
+	nargout==0 don't return any arguments.
+	(pkg:install): Only load packages that are marked autoload after
+	install. Various fixes. Save in order.
+	(pkg:uninstall): Save in order
+	(pkg:load_packages): Use load_package_and_dependencies to load
+	packages.
+	(pkg:save_order): New function to sort package list with dependent
+	packages first.
+	(pkg:load_packages_and_dependencies): New function to load both a
+	list of packages and their dependencies.
+	(pkg:load_package_dirs): New function that returns a vector of the
+	indexes into the installed package list indicating the packages to
+	load and the order to load them in to respect the dependencies.
+
+2007-06-03  S�ren Hauberg  <soren@hauberg.org>
+
+	* plot/axes.m: Eliminate redundant else clause.
+
+2007-06-03  David Bateman  <dbateman@free.fr>
+
+	* polynomial/spline.m: Add a small tolerance to spline tests.
+	* pkg/pkg.m: Protect against multiple actions being define.
+
+2007-06-01  David Bateman  <dbateman@free.fr>
+
+	* pkg.m (pkg:is_superuser): Remove function used in one place and
+	incorporate into main pkg function.
+	(pkg:install): Check for existence of files to install before
+	globbing and warn the user if they don't exist.
+
+2007-05-31  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/copyfile.m: Split copying of multiple files to a
+	directory over several copy command to limit the line length.
+	* miscellaneous/movefile.m: Ditto.
+
+	* pkg.m: Add build option to allow binary Octave packages to be
+	built from source packages. Probe absolute path of prefix, global
+	and local lists. Use strcat, rather that [] for strings.
+	(pkg:build): New function to binary binary package.
+	(pkg:absolute_pathname): Use fileattrib to probe absolute path.
+	(pkg:repackage): Package binary Octave package from installation.
+	(pkg:create_pkgadddel): Extract PKG_ADD and PKG_DEL directives
+	from m-files into main installation directory.
+	(pkg:shell): Suppress verbose messages from shell and only display
+	them with the verbose flag.
+	(pkg:installed_packages): Also include the loaded flag in the
+	local and global packages.
+	(pkg:uninstall): On uninstall, only rmpath the package if it is
+	flagged as loaded.
+
+2007-05-31  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* pkg.m (pkg:load_packages): Correctly load a mix of packages
+	with and without architecture dependent directories.
+	(pkg:installed_packages): Probe the global_list file even if it is
+	the same as the local_list.
+
+2007-05-29  John W. Eaton  <jwe@octave.org>
+
+	* sparse/spy.m: Set axis to "ij" mode.
+
+2007-05-24  John W. Eaton  <jwe@octave.org>
+
+	* set/ismember.m: Quote first arg of "fail" tests.
+
+2007-05-24  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (pkg:rebuild): Thinko in rebuild logic.
+
+2007-05-22  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Use rethrow(lasterror()) throughout rather than
+	error(lasterr()(8:end)).
+	(pkg:install): Warning for empty packages being removed. Suppress
+	spurious output. Warning rather than error for uninstalling a
+	package that is not installed to avoid RPM issue.
+	(pkg:configure_make): Fix for parsing of src/FILES. Don't create
+	inst or architecture dependent directory if it exists.
+
+2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* ChangeLog, control/system/is_stabilizable.m, general/bicubic.m,
+	image/ind2gray.m, image/saveimage.m, plot/box.m, plot/grid.m,
+	signal/freqz.m: Fix typos.
+
+2007-05-21  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Add rebuild target, and -local, -global option to
+	force installation location.
+	(rebuild): New subfunction to rebuild package database from
+	installed packages. Also allows changing of autoload status
+	(install): Warn use if attempting to install from non existent
+	file.
+	(issuperuser): Use 'geteuid() == 0' instead of 'strcmp (getenv(
+	"USER", "root"))' for root test.
+
+2007-05-21  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* miscellaneous/copyfile.m: check for cp.exe on Windows platforms
+	and replace "\" characters with "/".
+	* pkg/pkg.m: Use shell rather than system throughout. Replace "\"
+	characters with "/" throughout.
+	(shell): New subfunction that wraps system and is careful with the
+	shell on windows platforms.
+	(configure_make): Explictly pass complier etc to configure
+	process.
+	(issuperuser): Force default to global install for Windows machines.
+
+2007-05-19  Kristan Onu
+
+	* plot/Makefile.in (SOURCES): Remove hbar.m and add barh.m.
+
+2007-05-18  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (install): More verbosity.
+	(configure_make): Ditto.
+	(create_pkgadddel): Install in architecture dependent directory if
+	it exists to address issues with autoload/mfilename.
+	(write_INDEX): Check in archiecture dependent directories as well.
+
+2007-05-17  David Bateman  <dbateman@free.fr>
+
+	* plot/hbar.m: Remove.
+	* plot/barh.m: and move it here.
+
+2007-05-16  S�ren Hauberg  <soren@hauberg.org>
+
+	* general/sub2ind.m, general/ind2sub.m: Doc fix.
+
+2007-05-16  John W. Eaton  <jwe@octave.org>
+
+	* general/logspace.m: Return second arg if fewer than two values
+	are requested.
+
+2007-05-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_figure__.m: Ensure that a reset commands starts
+	on a new line.
+
+2007-05-14  Tarmigan Casebolt  <tarmigan+list@gmail.com>
+
+	* statistics/distributions/norminv.m,
+	statistics/distributions/norminv.m,
+	statistics/distributions/normpdf.m,
+	statistics/distributions/normrnd.m:
+	Use standard deviation, not variance.
+	* statistics/distributions/lognpdf.m: Adapt to change in norminv.
+	* statistics/distributions/logninv.m: Refer to norminv, not normal_inv.
+	* deprecated/normal_cdf.m, deprecated/normal_inv.m,
+	deprecated/normal_pdf.m, deprecated/normal_rnd.m: Preserve
+	backward compatibility.
+
+2007-05-14  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Mark loaded packages with "*".
+
+2007-05-13  S�ren Hauberg  <soren@hauberg.org>
+
+	* miscellaneous/single.m: Doc fix.
+	Convert to double instead of returning argument unchanged.
+
+	* miscellaneous/doc.m: Doc fix.
+
+	* miscellaneous/ver.m: Doc fix.
+	Don't display information about Octave Forge.
+
+2007-05-12  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Add a "-verbose" option that allows all output of an
+	install to be printed. An error in the on_uninstall script causes
+	a failure to uninstall. Place oct- and mex-files in an
+	architecture dependent directory.
+
+2007-05-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Break plot command over multiple lines.
+
+2007-05-09  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* statistics/distributions/normcdf.m: Use standard deviation
+	instead of variance for compatibility.
+
+2007-05-08  John W. Eaton  <jwe@octave.org>
+
+	* set/unique.m, set/ismember.m: Use numel(x) instead of prod(size(x)).
+
+	* set/ismember.m: Always return logical values.
+
+	* set/ismember.m: Return early if no matches are found.  New tests.
+	From David Grohmann <grohmann@arlut.utexas.edu>.
+
+	* general/__isequal__.m: Allow numeric values of different classes
+	to compare equal.
+
+2007-05-07  David Bateman  <dbateman@free.fr>
+
+	* sparse/spy.m: Reverse Y axis for new graphics code. Make more
+	compatiable, accepting LineSpec and markersize arguments.
+
+2007-05-02  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Convert NA to NaN before writing.
+
+2007-05-02  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* contour.m: Rewrite help string.
+
+2007-04-28  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/unzip.m, miscellaneous/untar.m,
+	miscellaneous/bunzip2.m, miscellaneous/gunzip.m:
+	Special case nargout == 0.
+
+2007-04-27  Kim Hansen  <kimhanse@gmail.com>
+
+	* general/sub2ind.m: Handle empty input, add tests.
+
+2007-04-27  G. D. McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* plot/contourc.m: Doc fix.
+
+2007-04-26  David Bateman  <dbateman@free.fr>
+
+	* plot/hist.m: Partially remove previous patch.
+
+2007-04-26  David Bateman  <dbateman@free.fr>
+
+	* plot/hist.m: Support returning of handle
+	* plot/__bar__.m: __pltopt__ should only be called on strings or
+	cells.
+
+2007-04-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: For images, set titlespec{data_idx} to
+	"title \"\"", not "".
+
+	* plot/legend.m: Initialize WARNED to false.
+
+2007-04-24  John W. Eaton  <jwe@octave.org>
+
+	* io/beep.m: Fix cut and paste error.
+	From S�ren Hauberg  <soren@hauberg.org>.
+
+2007-04-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/box.m: Delete extra endfunction keyword.
+
+2007-04-23  David Bateman  <dbateman@free.fr>
+
+	* plot/plot3.m: Call newplot.
+
+2007-04-20  John W. Eaton  <jwe@octave.org>
+
+	* plot/Makefile.in (SOURCES): Fix typo in adding __bar__.m to the list.
+
+2007-04-19  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/unpack.m: Use gzip -d and bzip2 -d instead of
+	gunzip and bunzip.  From Michael Goffioul <michael.goffioul@swing.be>.
+
+2007-04-19  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/util/axis2dlim.m: Delete extraneous line.
+
+2007-04-18  John W. Eaton  <jwe@octave.org>
+
+	* specfun/factorial.m: Increase tolerance in large value test.
+
+2007-04-18  David Bateman  <dbateman@free.fr>
+
+	* __bar__.m: New support function for bar/hbar to support graphic
+	handles, and additional arguments.
+	* bar.m: Convert to use __bar__.
+	* hbar.m: New function
+	* hist.m: Explicitly set the width of the bar plot.
+
+2007-04-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/stem.m (stem_line_spec): Pass false as third arg to __pltopt__.
+
+	* set/ismember.m: New tests.
+	From David Grohmann <grohmann@arlut.utexas.edu>
+
+2007-04-17  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* specfun/factorial.m: Use gamma function instead of cumprod.
+	Add tests.
+
+2007-04-16  John W. Eaton  <jwe@octave.org>
+
+	* gethelp.cc (looks_like_octave_copyright): Use same logic as in
+	looks_like_copyright in src/help.cc.
+	From S�ren Hauberg <soren@hauberg.org>.
+
+	* plot/__go_draw_axes__.m: For log plots, omit zero values too.
+
+2007-04-13  John W. Eaton  <jwe@octave.org>
+
+	* optimization/sqp.m: Initialize info to 0.
+
+	* optimization/qp.m: Undo previous change.
+
+2007-04-13  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* spdiags.m: Fixed the four-argument case to work for columns of
+	length one.
+
+2007-04-12  John W. Eaton  <jwe@octave.org>
+
+	* optimization/qp.m: Avoid Octave indexing bug.
+
+2007-04-12  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* miscellaneous/menu.m, control/base/bddemo.m,
+	control/hinf/dgkfdemo.m, control/system/packedform.m,
+	control/system/sysrepdemo.m:
+	Adapt to page_screen_output as a function.
+
+2007-04-11  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/not.m: Delete.
+	* miscellaneous/Makefile.in (SOURCES): Delete it from the list.
+
+2007-04-11  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/util/axis2dlim.m: Try harder to handle min and max vals
+	that are close but not exactly equal.
+
+2007-04-11  David Bateman  <dbateman@free.fr>
+
+	* general/bitcmp.m: Make it work again.
+
+2007-04-10  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Try harder to handle min and max vals
+	that are close but not exactly equal.
+
+2007-04-09  Daniel J. Sebald  <daniel.sebald@ieee.org>
+
+	* plot/stem.m: Add back the baseline line and let it be not adjustable
+	in response to a change in x limits for now.
+
+2007-04-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m (__gnuplot_write_data__): New function.
+	(__go_draw_axes__): Use it to write data to plot stream.
+
+2007-04-09  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/stem.m: Fix typos in doc string.  Fix typo in call to
+	zeros.  Set markerfacecolor property in call to plot.
+
+2007-04-06  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/norm.m: Use new __vnorm__ function for vector args.
+
+2007-04-06  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/stem.m: Use plot instead of a series of calls to line.
+
+2007-04-05  John W. Eaton  <jwe@octave.org>
+
+	* sparse/nonzeros.m, sparse/normest.m, sparse/spconvert.m,
+	sparse/spdiags.m, sparse/speye.m, sparse/spfun.m, sparse/spones.m,
+	sparse/sprand.m, sparse/sprandn.m, sparse/sprandsym.m,
+	sparse/spstats.m, sparse/treeplot.m: Style fixes.
+
+	* pkg/pkg.m: Use "strcat (...)" instead of "[...]".
+	Use strcmpi instead of strcmp+tolower.
+	Style fixes.
+
+	* testfun/speed.m: Use "strcat (...)" instead of "[...]".
+	Plotting fixes.  Style fixes.
+
+	* testfun/test.m: Use "strcat (...)" instead of "[...]".
+	Style fixes.
+
+	* testfun/fail.m: No need to check for evalin and lastwarn.
+	Style fixes.
+
+	* testfun/demo.m, testfun/example.m: Style fixes.
+	Use "strcat (...)" instead of "[...]".
+	Use format specifiers in calls to warning.
+
+	* testfun/assert.m: Use "numel (x)" instead of "prod (size (x))".
+	Use "strcat (...)" instead of "[...]".
+	Use "x(end)" instead of "x(length (x))".
+	Check NA before NaN.
+	Style fixes.
+
+2007-03-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/stem.m (stem, set_default_values): Use RGB triple for color.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in, audio/Makefile.in, control/Makefile.in,
+	control/base/Makefile.in, control/hinf/Makefile.in,
+	control/obsolete/Makefile.in, control/system/Makefile.in,
+	control/util/Makefile.in, deprecated/Makefile.in,
+	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
+	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, optimization/Makefile.in,
+	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
+	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
+	special-matrix/Makefile.in, startup/Makefile.in,
+	statistics/Makefile.in, statistics/base/Makefile.in,
+	statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
+	Use ln instead of $(LN_S) in dist target.
+
+2007-03-27  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Allow linewidth settings to work with
+	gnuplot 4.0.
+
+2007-03-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Send image data to gnuplot via plot stream.
+
+2007-03-26  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__go_draw_axes__.m: Always end palette data to gnuplot via
+	plot stream and using binary data.
+
+2007-03-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
+	lot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
+	plot/__plt2vv__.m: Accept properties in addtition to options struct.
+
+2007-03-26  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Send "set ticslevel 0" to plot stream.
+
+	* plot/plot3.m: Handle line properties.
+	* plot/plot.m: Update docstring.
+	* plot/__plotopt__.m, plot/__pltopt1__.m: New arg, err_on_invalid.
+	* plot/__plt__.m: Also gather properties.
+
+2007-03-26  Kim Hansen  <kimhanse@gmail.com>
+
+	* testfun/assert.m: Delete special check for empty objects.
+	Add test.
+
+2007-03-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Exit early if call is recursive.
+
+	* plot/__go_draw_axes__.m (get_data_limits): New function.
+	Check for Inf too.
+	(__go_draw_axes__): Use get_data_limits.
+
+2007-03-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: If GNUTERM is set to wxt in the environment,
+	send terminal setting command with title option to plot stream.
+
+	* plot/legend.m: Correctly increment index into list of children..
+
+2007-03-23  John W. Eaton  <jwe@octave.org>
+
+	* general/interp2.m, general/bicubic.m, control/base/rldemo.m,
+	control/hinf/hinfdemo.m, control/hinf/dhinfdemo.m,
+	control/base/nyquist.m, control/base/nichols.m,
+	control/base/frdemo.m, signal/freqz_plot.m,
+	control/base/__stepimp__.m, control/base/bode.m,
+	quaternion/demoquat.m, quaternion/qcoordinate_plot.m,
+	statistics/base/qqplot.m, statistics/base/ppplot.m, sparse/spy.m:
+	Update plotting code.
+
+	* control/base/bode.m: Unwrap phase angle.
+
+	* miscellaneous/dump_prefs.m: Remove automatic_replot from the list.
+
+	* plot/axis.m: Don't check automatic_replot, or call replot.
+
+	* quaternion/demoquat.m: Delete comments with obsolete plotting
+	commands.
+
+	* plot/__pltopt1__.m: Handle "@" marker same as "+".
+	Handle numeric color specs.
+	* plot/plot.m: Remove "-@" and "@" from docstring.
+
+	* plot/orient.m: Fix tests to avoid creating a plot window.
+
+	* elfun/acosd.m, elfun/acotd.m, elfun/acscd.m, elfun/asecd.m,
+	elfun/asind.m, elfun/atand.m, elfun/cosd.m, elfun/cotd.m,
+	elfun/cscd.m, elfun/secd.m, elfun/sind.m, elfun/tand.m,
+	general/arrayfun.m, miscellaneous/compare_versions.m,
+	path/savepath.m, pkg/pkg.m, plot/__gnuplot_version__.m,
+	plot/contour.m, plot/contourc.m, plot/legend.m, plot/stem.m,
+	polynomial/pchip.m: Fix copyright notice, correct FSF address.
+
+	* plot/__go_draw_figure__.m: Send reset to gnuplot before every
+	plot, not just multiplots.
+
+	* plot/__go_draw_axes__.m: Use %g for label coordinates, not %d.
+
+	* plot/contour.m: Don't call drawnow.
+
+2007-03-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Check and optionally, set, the __modified__
+	property of each figure.
+
+	* plot/__go_draw_axes__.m: If no real data, plot a point at Inf,
+	Inf to show axes.  From Daniel J Sebald <daniel.sebald@ieee.org>.
+
+2007-03-21  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/null.m: Set elements of retval with magnitudes
+	less than eps to 0.
+
+2007-03-21  David Bateman  <dbateman@free.fr>
+
+	* plot/__go_draw_axes__.m: Handle some colors with older gnuplot.
+	* testfun/speed.m: Documentation and example fix.
+
+2007-03-21  John W. Eaton  <jwe@octave.org>
+
+	* plot/subplot.m: If we find an existing subplot region, set
+	it to be the "currentaxes" property for the current figure.
+	Delete old axes objects if the new axes object overlaps the old.
+
+2007-03-20  David Bateman  <dbateman@free.fr>
+
+	* general/Makefile.in: Include arrayfun.m in SOURCES.
+
+2007-03-20  Bill Denney  <denney@seas.upenn.edu>
+
+	* general/arrayfun.m: New function.
+
+2007-03-20  John W. Eaton  <jwe@octave.org>
+
+	* plot/newplot.m: Call __request_drawnow__ after initializing axes.
+	* plot/text.m: Call __request_drawnow__ after creating text objects.
+
+	* plot/clf.m: Don't call drawnow.
+
+2007-03-20  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* image/__img__.m: Maybe set yaxis to reverse for images.
+	* plot/__go_draw_axes__.m: Don't add flipy to gnuplot command for
+	images.
+
+	* plot/drawnow.m: Make __go_close_all_registered__ persistent
+	instead of global.  Only register __go_close_all__ with atexit if
+	the plot stream is successfully opened.
+
+2007-03-15  John W. Eaton  <jwe@octave.org>
+
+	* plot/__go_draw_axes__.m: Make have_newer_gnuplot persistent.
+	From Daniel J Sebald <daniel.sebald@ieee.org>.
+
+2007-03-15  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__go_draw_axes__.m (do_linestyle_command): Fix marker types.
+	Use numeric line types.
+
+	* control/base/rlocus.m: Add asymptotes to the plot.  Use wider
+	lines and larger markers.  Remove key titles from line type
+	properties.
+
+2007-03-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/__axis_label__.m: Accept additional property-value pairs
+	and pass them to __go_text__.  Simply return the handle obtained
+	from __go_text__ instead of calling get on the current axis.
+	* plot/xlabel.m, plot/zlabel.m, plot/zlabel.m: Check args here.
+	Allow for extra property value pairs to be passed along.
+	* plot/title.m: Implement with __axis_label__ since it does all
+	that title needs to do.
+
+	* plot/clf.m: Set currentaxes property for current figure to [].
+
+	* plot/__axis_label__.m: Convert arg to text handle before calling set.
+
+	* plot/__plt__.m: Return line handles from all calls to __plt1__
+	and __plt2__, not just the last.
+
+	* plot/Makefile.in (SOURCES): Rename from SOURCES_M.
+	(SOURCES_IN, GEN_M): Delete.
+	(FCN_FILES): Don't include $(GEN_M).
+	(all): Don't depend on $(GEN_M).
+	($(GEN_M) : %.m : %.in): Delete pattern rule.
+
+	* plot/text.m: Use __go_text__ instead of __uiboject_text_ctor__.
+
+	* plot/newplot.m: Call __go_axes_init__ instead of
+	__uiobject_axes_init__.
+
+	* plot/mesh.m: Use __go_surface__ instead of
+	__uiobject_surface_ctor__.  Don't access object fields directly.
+
+	* plot/line.m: Use __line__ to do actual work.
+	* plot/__line__.m: New function.
+
+	* plot/axes.m: Use __go_axes__ to create axes graphics handle.
+	Use get and set instead of accessing object fields directly.
+
+	* plot/figure.m: Use __go_figure__ to create figure graphics
+	handle.
+
+	* plot/drawnow.m: Register __go_close_all__ with atexit instead of
+	__uiobject_close_all.  Call __go_draw_figure__ instead of
+	__uiobject_draw_figure__.
+
+	* plot/clf.m: Use get instead of accessing object fields
+	directly.  Simply delete children.  Don't set currentaxes.
+
+	* plot/close.m (close_all_figures): New subfunction.
+	Use it instead of getting list of figures to close from
+	__uiobject_figures__.
+
+	* plot/closereq.m: Simply delete the current figure.  Don't set
+	currentfigure.
+
+	* plot/__errplot__.m: Call __line__ instead of
+	__uiobject_line_ctor__.  Use set instead of accesing object fields
+	directly.  Don't call __uiobject_adopt__.
+
+	* plot/__uiobject_adopt__.m, plot/__uiobject_alloc__.in,
+	plot/__uiobject_axes_ctor__.m, plot/__uiobject_axes_dtor__.m,
+	plot/__uiobject_axes_init__.in, plot/__uiobject_axes_setr__.m,
+	plot/__uiobject_delete__.m, plot/__uiobject_figure_ctor__.m,
+	plot/__uiobject_figures__.in, plot/__uiobject_free__.in,
+	plot/__uiobject_get_handle__.in, plot/__uiobject_globals__.m,
+	plot/__uiobject_grow_list__.in, plot/__uiobject_handle2idx__.in,
+	plot/__uiobject_image_ctor__.m, plot/__uiobject_init_figure__.in,
+	plot/__uiobject_init_root_figure__.in,
+	plot/__uiobject_line_ctor__.m, plot/__uiobject_make_handle__.in,
+	plot/__uiobject_root_figure_ctor__.m,
+	plot/__uiobject_surface_ctor__.m, plot/__uiobject_text_ctor__.m:
+	plot/get.in, plot/include-globals.awk, plot/ishandle.m,
+	plot/set.in: Delete.
+	* plot/Makefile.in (SOURCES_M, SOURCES_IN): Remove from lists.
+
+	* plot/__go_close_all__.m: Rename from __uiobject_close_all.m.
+	Pass "hidden" as second arg to close.
+	* plot/__go_draw_axes__.m: Rename from __uiobject_draw_axes.m.
+	* plot/__go_draw_figure__.m: Rename from __uiobject_draw_figure.m.
+	* plot/Makefile.in (SOURCES_M): Rename in list.
+
+	* image/__img__.m: Use __go_image__ to create image graphics
+	handle.
+
+	* miscellaneous/delete.m: Call __go_delete__, not
+	__uiobject_delete__.  Check that arg is a graphics handle before
+	calling __go_delete__.
+
+2007-03-13  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/cast.m: Use feval and strcmp with cell to check
+	arg instead of switch statement.
+	From S�ren Hauberg <soren@hauberg.org>.
+
+2007-03-12  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/cast.m: New function.
+
+	* miscellaneous/delete.m: Call __go_delete__, not __uiobject_delete__.
+
+2007-03-08  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m: Perform
+	tilde expansion on target filename before passing it to the shell.
+
+	* statistics/base/Makefile.in (SOURCES): Remove unidrnd.m from list.
+	* statistics/distributions/Makefile.in (SOURCES): Add it here.
+
+2007-03-08  David Bateman  <dbateman@free.fr>
+
+	* statistics/base/unidrnd.m: Move to statistics/distributions
+	replacing slower version based on dicrete_rnd.
+
+2007-03-07  John W. Eaton  <jwe@octave.org>
+
+	* control/base/rlocus.m: Update for current plotting functions.
+
+2007-03-07  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/base/rlocus.m: Improve display.
+
+2007-03-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/legend.m: Only handle positions -1:4.
+	* plot/__pltopt1__.m: Don't set linestyle if only marker style is
+	found in option string
+	* plot/__uiobject_draw_axes__.m: Handle key position.
+
+	* plot/newplot.m: Always reset next line color.
+
+	* testfun/assert.m: Check that number of dimensions match before
+	checking dimensions.
+
+2007-03-07  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* specfun/perms.m, specfun/factorial.m: Check args.
+
+2007-03-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/mesh.m: Call newplot before doing anything.
+
+	* plot/__uiobject_draw_axes__.m: Send "e\n" at end of data, not
+	just "e".  Only flush plot stream once.
+	From Daniel J Sebald <daniel.sebald@ieee.org>.
+
+	* strings/blanks.m: Omit first index in assignment.
+
+2007-03-07  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* set/setdiff.m: Some code cleanup and a fix for setdiff on rows.
+
+2007-03-06  David Bateman  <dbateman@free.fr>
+	    John W. Eaton  <jwe@octave.org>
+
+	* set/setdiff.m: Ignore "rows" for cell array args.
+	Handle cellstr args.
+
+2007-03-05  John W. Eaton  <jwe@octave.org>
+
+	* optimization/sqp.m: Defer first call to obj_hess until after
+	calling obj_fun.
+
+2007-03-02  Bob Weigel  <rweigel@gmu.edu>
+
+	* specfun/nchoosek.m: Fix nargin check.
+
+2007-03-01  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* image/__img__.m: Don't set xlim and ylim properties.
+
+2007-03-01  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* general/interp1.m: Fix *style cases for decreasing x.
+
+2007-03-01  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* polynomial/roots.m: Check nargin before accessing arg.
+
+2007-02-28  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: If looking at image data, Don't
+	increment data_idx unless using gnuplot for display.
+
+2007-02-28  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__uiobject_draw_axes__.m: Improve calculation of limits for
+	plots with images.
+	* image/image.m, image/imagesc.m, image/imshow.m:
+	Deprecate zoom argument.
+
+2007-02-28  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Use fullfile to generate
+	temporary file names.  Keep image and colormap file ids separate.
+
+	* general/interp1.m: Correctly compute min and max values when
+	values are decreasing and not evenly spaced.
+	From Ricardo Marranita <ricardo.marranita@gmail.com>.
+
+2007-02-27  John W. Eaton  <jwe@octave.org>
+
+	* testfun/test.m (test): Handle possibility of file_in_loadpath
+	returning an empty cell array.
+
+2007-02-27  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* pkg/pkg.m: Use fullfile to create filenames from parts.
+
+2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in, audio/Makefile.in, control/Makefile.in,
+	control/base/Makefile.in, control/hinf/Makefile.in,
+	control/obsolete/Makefile.in, control/system/Makefile.in,
+	control/util/Makefile.in, deprecated/Makefile.in,
+	elfun/Makefile.in, finance/Makefile.in, general/Makefile.in,
+	image/Makefile.in, io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, optimization/Makefile.in,
+	path/Makefile.in, pkg/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
+	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
+	special-matrix/Makefile.in, startup/Makefile.in,
+	statistics/Makefile.in, statistics/base/Makefile.in,
+	statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in:
+	Use $(LN_S) instead of ln or ln -s.
+
+2007-02-24  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (configure_make): Ignore blank lines and trailing
+	'\n' in FILES file.
+	(configure_make): Also install any mex files.
+
+2007-02-24  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions (SOURCES): Add nbincdf.m,
+	nbininv.m, nbinpdf.m and nbinrnd.m.
+
+2007-02-23  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/Makefile.in (SOURCES): Remove
+	pascal_cdf.m pascal_inv.m pascal_pdf.m pascal_rnd.m from the list.
+
+	* deprecated/Makefile.in (SOURCES): Add pascal_cdf.m,
+	pascal_inv.m, pascal_pdf.m, and pascal_rnd.m to the list.
+
+2007-02-23  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/discrete_rnd.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/lognnd.m,
+	statistics/distributions/nbinrnd.m,
+	statistics/distributions/wblrnd.m:  Accelerate distributions.
+
+	* statistics/distributions/unidcdf.m,
+	statistics/distributions/unidinv.m,
+	statistics/distributions/unidpdf.m,
+	statistics/distributions/unidrnd.m: New functions based on
+	discrete_cdf, etc.
+
+	* statistics/distributions/pascal_cdf.m,
+	statistics/distributions/pascal_inv.m,
+	statistics/distributions/pascal_pdf.m,
+	statistics/distributions/pascal_rnd.m: Remove.
+	* statistics/distributions/nbincdf.m,
+	statistics/distributions/nbininv.m,
+	statistics/distributions/nbinpdf.m,
+	statistics/distributions/nbinrnd.m: Replace with matlab
+	compatible functions.
+	* deprecated/pascal_cdf.m, deprecated/pascal_inv.m,
+	deprecated/pascal_pdf.m, deprecated/pascal_rnd.m: Use the new
+	nbincdf, etc functions to implement these.
+
+2007-02-22  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__uiobject_draw_axes__.m: Insert newline between plot
+	command and data.
+
+2007-02-22  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/doc.m: If index search fails, try again without
+	the index search option.
+
+2007-02-22  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/doc.m: Find doc.info file correctly in user directories.
+
+	* statistics/distributions/frnd.m, statistics/distributions/exprnd.m,
+	statistics/distributions/gamrnd.m, statistics/distributions/trnd.m,
+	statistics/distributions/poissrnd.m, statistics/distributions/chi2rnd.m,
+	statistics/distributions/betarnd.m: Convert to use randg, rande
+	and randp to accelerate.
+
+	* pkg/pkg.m (fix_depends): Support > and < operators as well.
+
+2007-02-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: If not using gnuplot for images,
+	cache data and display after xlim and ylim have been determined.
+
+2007-02-22  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__uiobject_draw_axes__.m:
+	Allow multiple images to be displayed with gnuplot.
+
+2007-02-20  Rafael Laboissiere  <rafael@debian.org>
+
+	* optimization/glpk.m: Document the fact that extra.mem does not work
+	for versions of GLPK 4.15 and later.
+
+2007-02-19  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_alloc__.in: If next available element in
+	__uiobject_list__ is 0, grow list before doing anything else.
+	* plot/__uiobject_grow_list__.in: Only set __uiobject_head__ on
+	first call when size of __uiobject_list__ is 0.
+
+2007-02-16  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/Makefile.in (SOURCES): Remove popen2.m from the list.
+
+2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* miscellaneous/popen2.m: Remove as replaced with builtin.
+
+2007-02-16  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* specfun/nchoosek.m: Check nargin.
+
+2007-02-15  John W. Eaton  <jwe@octave.org>
+
+	* path/addpath.m, path/rmpath.m: Delete
+	* path/Makefile.in (SOURCES): Remove them from the list.
+
+	* plot/__uiobject_axes_init__.in, plot/__uiobject_axes_setr__.m:
+	Delete title, xlabel, ylabel, and zlabel properties before
+	reassigning.
+	* plot/__uiobject_axes_init__.in: New arg, mode.
+	Don't init outerposition if "mode" is "replace".
+	* plot/newplot.m: Check both figure and axes nextplot properties.
+	If axes nextplot property is replace, pass "replace" as mode arg
+	to __uiobject_axes_init__.
+
+2007-02-15  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* image/imshow.m: Don't restore old colormap.
+
+	* plot/__uiobject_image_ctor__.m: Set xdata and ydata properties.
+	* image/__img__.m: New file containing common parts of image.m and
+	imshow.m.
+	* image/Makefile.in (SOURCES): Add __img__.m to the list.
+	* image/image.m, image/imshow.m: Call __img__.
+	* plot/__uiobject_draw_axes__.m:
+	Handle rgb imaged data stored in 3-d arrays.
+
+	* plot/figure.m: Doc fix.
+
+2007-02-14  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* audio/wavread.m, audio/wavwrite.m: Use types with specific sizes
+	for reading and writing data.  New tests.  Improve rounding.
+
+2007-02-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/stem.m: New file, adapted from OctPlot.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+	* plot/__errcomm__.m, plot/__plr1__.m, plot/__plr2__.m,
+	plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
+	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
+	plot/__plt2vv__.m, plot/__plt__.m, plot/loglog.m,
+	plot/loglogerr.m, plot/plot.m, plot/plot3.m, plot/polar.m,
+	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
+	plot/semilogyerr.m: Return handles to line objects.
+
+2007-02-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_close_all.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+2007-02-10  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Arrange for plot streams to be close on exit.
+	* plot/__uiobject_globals__.m: Don't call mlock.
+
+	* plot/drawnow.m: Only check for DISPLAY if isunix returns true.
+	* plot/__uiobject_delete__.m: Send quit command and flush stream
+	before calling pclose.
+
+2007-02-09  John W. Eaton  <jwe@octave.org>
+
+	* plot/subplot.m: Delete spurious call to axes.
+
+	* plot/figure.m: Call drawnow for current figure before creating
+	or switching to a new figure.
+	* plot/__uiobject_init_figure__.in: Handle empty arg the same as
+	nargin == 0 case.
+
+	* testfun/assert.m: Try to avoid problems when comparisons involve
+	strange values like Inf+NaNi.
+
+2007-02-08  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow.m: Use gnuplot_binary() instead of just "gnuplot"
+	and check gnuplot_use_title_option instead of just assuming -title
+	works.  From Michael Goffioul <michael.goffioul@swing.be>.
+
+	* Makefile.in (DISTFILES): Add move-if-change to the list.
+
+	* audio/Makefile.in, control/base/Makefile.in,
+	control/hinf/Makefile.in, control/obsolete/Makefile.in,
+	control/system/Makefile.in, control/util/Makefile.in,
+	deprecated/Makefile.in, elfun/Makefile.in, finance/Makefile.in,
+	general/Makefile.in, image/Makefile.in, io/Makefile.in,
+	linear-algebra/Makefile.in, miscellaneous/Makefile.in,
+	optimization/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
+	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
+	special-matrix/Makefile.in, startup/Makefile.in,
+	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, testfun/Makefile.in, time/Makefile.in,
+	path/Makefile.in, pkg/Makefile.in: Explicitly list source files.
+
+	* plot/figure.m: Don't call drawnow.  Correctly init figure when
+	only given property list.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Handle xdir, ydir, and zdir axis
+	properties.
+
+	* plot/sombrero.m: Call box ("off") after mesh.
+
+	* plot/__uiobject_draw_axes__.m: Avoid rgb colors and "set style
+	line default" commands with older versions of gnuplot.
+
+	* plot/close.m: Use get (0, "currentifgure") instead of gcf.
+
+2007-02-06  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Set pt to 0 if marker is ".".
+	* sparse/gplot.m: Use line style - instead of 1.
+
+2007-02-05  Rafael Laboissiere  <rafael@debian.org>
+
+	* plot/print.m: Avoid error message from cellidx.
+
+2007-02-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/legend.m: Fix check for data.
+
+2007-02-05  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* plot/__uiobject_draw_axes__.m (do_linestyle_command):
+	Always set lt and pt.
+
+2007-02-05  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* plot/contourc.m: Correctly compute X and Y.
+
+2007-02-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Use title "" if no explicit title.
+	When setting {x,y,z}lim, also set {x,y,z}limmode to "auto.
+
+2007-02-01  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m:
+	Don't try to set axis limits unless we have data.
+
+	*  plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
+	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
+	plot/__plt2vv__.m, plot/__plt__.m, plot/__pltopt1__.m,
+	plot/__pltopt__.m, plot/plot3.m: Set and use options struct
+	instead of of key and fmt strings.
+
+	* plot/__pltopt1__.m: Greatly simplify.
+
+	* plot/__next_line_color__.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+	* plot/newplot.m: Call __next_line_color__ here to reset rotation.
+
+	* plot/__default_plot_options__.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+	* plot/__plt3__.m: Delete.
+	* plot/Makefile.in (SOURCES_M): Remove it from the list.
+
+2007-01-31  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Set defaults for color,
+	linestyle, linewidth, marker, and markersize properties.
+	* plot/__uiobject_draw_axes__.m: Attempt to handle line and marker
+	colors and widths, and line styles.
+
+	* plot/__plt__.m, image/image.m: Don't call drawnow.
+
+	* plot/__gnuplot_version__.m: Restore from CVS Attic.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+	* plot/__uiobject_draw_axes__.m: Delete useless call to
+	__gnuplot_save_data__.
+
+	* image/image.m: Accept 2 args, but ignore the second for now.
+
+2007-01-30  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (pkg, isautoload, install, load_packages): Add ability
+	to flag a package as to be autoloaded. Add install flags -noauto,
+	-auto to force autoload behavior.
+	(installed_packages): Make list of installed packages unique.
+
+2007-01-30  John W. Eaton  <jwe@octave.org>
+
+	* Merge of changes from graphics-branch:
+
+	2007-01-29  John W. Eaton  <jwe@octave.org>
+
+	* plot/subplot.m: Set nextplot property of current figure to "add".
+
+	* plot/__uiobject_draw_axes__.m: Only handle outerposition
+	property if it exists.
+
+	2007-01-26  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Move initialization of max and
+	min values outside of loop over child objects.
+
+	* plot/contour.m, plot/contourc.m: New files.
+	* plot/Makefile.in (SOURCES_M): Add them to the list.
+
+	* image/image_viewer.m: Set view_fcn to "gnuplot_internal" if we
+	find a gnuplot version newer than 4.0.
+	* image/__img_gnuplot__.m: Delete.
+	* image/image.m: Create image graphics object.
+	Call newplot to setup and drawnow to finish.
+	Eliminate ZOOM arg.
+
+	* plot/__uiobject_draw_axes__.m: Handle image data.
+
+	* plot/legend.m: Eliminate useless variable "warned".
+
+	* plot/__uiobject_image_ctor__.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+	* plot/gcf.m: Also create new figure if currentfigure is 0.
+	* plot/drawnow.m: Use get (0, "currentfigure") instead of gcf.
+
+	* plot/__uiobject_root_figure_ctor__.m: Set visible property.
+
+	* plot/__default_colormap__.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+	* plot/__uiobject_figure_ctor__.m: Use it to set default colormap
+	property.
+	* image/colormap.m: Use colormap property of current figure
+	to store colormap instead of using persistent variable.
+	Call __default_colormap__ to get default map value.
+	* image/ocean.m, image/gray.m: Set colormap for current figure.
+
+	* plot/__uiobject_draw_axes__.m: Handle aspect ratio property.
+	Handle some tick mark options.
+
+	* plot/__uiobject_axes_setr__.m: If we see xtick, ytick, or ztick,
+	set corresponding *mode to "manual".  If we set dataaspectratio,
+	set dataaspectratiomode to "manual".
+
+	* plot/__uiobject_axes_init__.m: Include *tick, *tickmode,
+	*ticklabelmode, dataaspectratio, dataaspectratiomode properties.
+
+	* plot/axis.m: New file.
+	* plot/Makefile.in (SOURCES_M): Include it in the list.
+
+	* plot/__uiobject_axes_setr__.m: If we see xlim, ylim, or zlim,
+	set corresponding *limmode to "manual".
+	* plot/__uiobject_draw_axes__.m	(get_axis_limits): New subfunction.
+	Use it to compute autosclaled limits.
+	Arg is now handle, not object.  Change all callers.
+	Compute data limits.
+
+	2007-01-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/drawnow: Fix visibility check for zero args.
+
+	* plot/text.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+	* plot/__uiobject_draw_axes__.m: Handle text objects.
+	* plot/__uiobject_text_ctor__.m: Include units, position, and
+	horizontalalignment properties.
+
+	* plot/figure.m: Set options for f we just constructed or were
+	given as an argument, not gcf.  Only return handle if nargout > 0.
+
+	* plot/drawnow.m: Handle visible field for figure here.
+	* plot/__uiobject_figure_ctor__.m: Set default visible field.
+
+	* plot/__uiobject_draw_axes__.m: Call undo_string_escapes on
+	title and axis labels.
+
+	* plot/plot3.m, plot/mesh.m: Set default 3-d view here.
+	* plot/__uiobject_draw_axes__.m: Handle view for 3-d plots.
+	* plot/__uiobject_axes_init__.in: Set default view field for object.
+	* plot/view.m: New file.
+	* plot/Makefile.in (SOURCES_M): Add it to the list.
+
+	* plot/__uiobject_make_handle__.in, plot/set.m, plot/drawnow.m:
+	Call __request_drawnow__.
+
+	* plot/newplot.m: For "replace" action, call __uiobject_axes_init__.
+
+	* plot/__uiobject_axes_ctor__.m, plot/__uiobject_text_ctor__.m:
+	Call set to set properties.  Return handle instead of structure.
+	Change all callers.
+
+	* plot/__uiobject_axes_setr__.m: New file.
+	* plot/set.in: Check for __setter__ field.
+
+	* plot/__uiobject_axes_init__.in:
+	Rename from plot/__uiobject_axes_init__.m.
+	Include __uiobject_globals__.
+	Accept handle as arg instead of structure
+	* plot/Makefile.in (SOURCES_M): Remove __uiobject_axes_init__.m
+	from the list.
+	(SOURCES_IN): Add __uiobject_axes_init__.in to the list.
+
+	2007-01-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/Makefile.in ($(GEN_M)): Depend on __uiobject_globals__.m.
+
+	* plot/__uiobject_globals__.m: Call __lock_global__ when
+	initializing each global variable.
+
+	2007-01-18  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_globals__.m (__uiobject_handles_free_list__,
+	__uiobject_figure_handles_free_list__): New global variables.
+	* plot/__uiobject_get_handle__.m, plot/__uiobject_free__.m:
+	Place unused handles on the free list.
+
+	* plot/__uiobject_get_figure_handle__.in: Delete.
+	* plot/Makefile.in: Delete it from the SOURCES_IN list.
+
+	* plot/__uiobject_init_figure__.in: Perform allocation of figure
+	handles here.  Return figure handle.
+	* plot/figure.m: Call __uiobject_init_figure__ to allocate handle.
+
+	2007-01-11  John W. Eaton  <jwe@octave.org>
+
+	* plot/__uiobject_draw_axes__.m: Use "%g", not "%.4g" when writing
+	data for gnuplot.
+
+	* plot/Makefile.in (SOURCES_M, SOURCES_IN, GEN_M): New lists of
+	files.
+	(SOURCES): Include $(SOURCES_M) and $(SOURCES_M) in the list.
+	(DISTFILES): Include include-globals.awk in the list.
+	(FCN_FILES): Define using $(SOURCES_M) and $(GEN_M).
+	($(GEN_M) : %.m : %.in): New rule.
+
+	* include-globals.awk: New file.
+
+	* plot/__uiobject_alloc__.in, plot/__uiobject_figures__.in,
+	plot/__uiobject_free__.in, plot/__uiobject_get_figure_handle__.in,
+	plot/__uiobject_get_handle__.in, plot/__uiobject_grow_list__.in,
+	plot/__uiobject_handle2idx__.in, plot/__uiobject_init_figure__.in,
+	plot/__uiobject_init_root_figure__.in,
+	plot/__uiobject_make_handle__.in,  plot/get.in, plot/set.in:
+	Rename from corresponding .m files.
+
+	* move-if-change: New file.
+
+	* plot/__uiobject_delete__.m: New file.
+	* plot/delete.m, plot/__uiobject_delete_children__.m,
+	plot/__uiobject_delete_child__.m: Delete.
+	* miscellaneous/delete.m: Forward to __uiobject_delete__ if arg is
+	not a character string.
+	* plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2vm__.m:
+	Fix assignment to tmp key value in loop.
+	* plot/__uiobject_axes_dtor__.m: No need to Call __uiobject_free__
+	for obj.title, obj.xlabel, obj.ylabel, obj.zlabel.
+	* plot/__uiobject_axes_dtor__.m, plot/__uiobject_axis_init__.m:
+	Inline code to delete children.
+	* plot/__uiobject_free__.m: Arg is now handle, not index into
+	__uiobject_list__.
+	* plot/clf.m, plot/closereq.m, plot/newplot.m: No need to remove
+	and free child.
+
+	2006-12-08  John W. Eaton  <jwe@octave.org>
+
+	* plot/gcf.m: Check if the root figure object's currentfigure
+	handle is empty, not 0.
+	* plot/__uiobject_root_figure_ctor__.m:
+	Set currentfigure to [], not 0.
+
+	* plot/stairs.m: Handle matrix arguments.  Improve compatibility.
+
+	2006-12-07  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt_get_axis_arg__.m, plot/__uiobject_adopt__.m,
+	plot/__uiobject_alloc__.m, plot/__uiobject_axes_ctor__.m,
+	plot/__uiobject_axes_dtor__.m, plot/__uiobject_axes_init__.m,
+	plot/__uiobject_delete_children__.m,
+	plot/__uiobject_draw_axes__.m, plot/__uiobject_draw_figure__.m,
+	plot/__uiobject_figure_ctor__.m, plot/__uiobject_figures__.m,
+	plot/__uiobject_free__.m, plot/__uiobject_get_figure_handle__.m,
+	plot/__uiobject_get_handle__.m, plot/__uiobject_globals__.m,
+	plot/__uiobject_grow_list__.m, plot/__uiobject_handle2idx__.m,
+	plot/__uiobject_init_figure__.m,
+	plot/__uiobject_init_root_figure__.m,
+	plot/__uiobject_line_ctor__.m, plot/__uiobject_make_handle__.m,
+	plot/__uiobject_remove_child__.m,
+	plot/__uiobject_root_figure_ctor__.m,
+	plot/__uiobject_surface_ctor__.m, plot/__uiobject_text_ctor__.m,
+	plot/axes.m, plot/box.m, plot/closereq.m, plot/delete.m,
+	plot/drawnow.m, plot/gca.m, plot/gcf.m, plot/get.m,
+	plot/isfigure.m, plot/ishandle.m, plot/line.m, plot/newplot.m,
+	plot/set.m: New files.
+
+	* plot/__plt3__.m, plot/errorbar.m, plot/__axis_label__.m,
+	plot/__plr1__.m, plot/__errcomm__.m, plot/print.m, plot/zlabel.m,
+	plot/__plt1__.m, plot/__plt2__.m, plot/sombrero.m, plot/shg.m,
+	plot/fplot.m, plot/ndgrid.m, plot/clf.m, plot/hold.m,
+	plot/ishold.m, plot/meshdom.m, plot/ylabel.m, plot/__plt2ss__.m,
+	plot/__plt2vv__.m, plot/__plr2__.m, plot/__plt2mm__.m,
+	plot/__pltopt1__.m, plot/meshgrid.m, plot/__plt2mv__.m,
+	plot/figure.m, plot/xlabel.m, plot/stairs.m, plot/__plt2vm__.m,
+	plot/bar.m, plot/__errplot__.m, plot/semilogx.m, plot/semilogy.m,
+	plot/loglog.m, plot/polar.m, plot/legend.m, plot/orient.m,
+	plot/title.m, plot/__pltopt__.m, plot/grid.m, plot/hist.m,
+	plot/subplot.m, plot/plot.m, plot/mesh.m, plot/__plt__.m,
+	plot/close.m, plot/loglogerr.m, plot/plot3.m, plot/semilogxerr.m,
+	plot/semilogyerr.m, plot/replot.m:
+	Adapt to new graphics data structure.
+
+	* plot/__do_legend__.m, plot/__gnuplot_version__.m,
+	plot/__init_plot_vars__.m, plot/__make_using_clause__.m,
+	plot/__plot_globals__.m, plot/__plr__.m, plot/__render_plot1__.m,
+	plot/__render_plot__.m, plot/__setup_plot__.m, plot/axis.m,
+	plot/contour.m, plot/mplot.m, plot/multiplot.m, plot/oneplot.m,
+	plot/plot_border.m, plot/subwindow.m: Delete.
+
+2007-01-24  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Install ChangeLog file if it exists.
+	Delete bare newline in string passed to write_INDEX.
+
+	* sparse/sprandsym.m: Make work for even values of N.
+
+2007-01-24  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/news.m: New file.
+
+2007-01-23  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* strings/strncmpi.m: Use strncmp instead of calling strtrunc on args.
+
+	* strings/strncmp.m: Delete (we now have a built-in version).
+
+2007-01-22  Bob Weigel  <rweigel@gmu.edu>
+
+	* testfun/test.m: Check for all files in path, use first found.
+
+2007-01-22  David Bateman  <dbateman@free.fr>
+
+	* polynomial/spline.m: Make DG a column instead of a row vector.
+
+2007-01-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* pkg/pkg.m (copy_files): Call write_INDEX with correct target
+	file name.
+
+	* image/ind2rgb.m: Better input checking.  Return 3-d array if
+	nargout is 1.  Handle colormaps that have too few colors.
+
+	* pkg/pkg.m (create_pkgadddel): Call fullfile with nm, not "nm".
+	(configure_make): Use fullfile instead of concatenating with "/".
+
+2007-01-10  Baylis Shanks  <bshanks3@hotmail.com>
+
+	* set/ismember.m: Handle N-d arrays.
+
+2007-01-10  David Bateman  <dbateman@free.fr>
+
+	* elfun/acosd.m, elfun/acotd.m, elfun/acscd.m, elfun/asecd.m,
+	elfun/asind.m, elfun/atand.m, elfun/cosd.m, elfun/cotd.m,
+	elfun/cscd.m, elfun/secd.m, elfun/sind.m, elfun/tand.m:
+	New files.
+
+2007-01-09  S�ren Hauberg  <hauberg@gmail.com>
+
+	* pkg/pkg.m: Allow filenames to contain glob patterns.
+
+2007-01-08  S�ren Hauberg  <hauberg@gmail.com>
+
+	* pkg/pkg.m: Use copyfile instead of calling system.  Use fullfile
+	instead of concatenating with "/".  Use mlock to ensure that
+	persistent variables are not clobbered if user types clear all.
+
+2007-01-08  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
+	Improve handling of file names containing globbing characters.
+	From S�ren Hauberg <hauberg@gmail.com>.
+
+2007-01-05  John W. Eaton  <jwe@octave.org>
+
+	* optimization/optimset.m, optimization/__fsolve_defopts__.m:
+	New files.
+
+2006-12-30  John W. Eaton  <jwe@octave.org>
+
+	* sparse/spfun.m: Check for "function_handle" not "function handle".
+	* plot/fplot.m: Likewise.  Use isa instead of strcmp + class.
+
+2006-12-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* image/imshow.m: Strip NaNs from image.
+
+2006-12-08  David Bateman  <dbateman@free.fr>
+
+	* sparse/normest.m: New file.
+
+2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m:
+	Work on Windows systems without cp or mv.
+
+	* startup/inputrc: Include sequences for Windows.
+
+2006-12-06  S�ren Hauberg  <hauberg@gmail.com>
+
+	* pkg/pkg.m (unload_packages): New function.
+	(pkg): Handle unload action.
+
+	* __errplot__.m: Add missing semicolon.
+
+2006-11-30  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/mexext.m: New file.
+
+2006-11-29  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m: Add local_list and global_list options that allow the
+	location of package lists to be probed and set.
+
+2006-11-17  John W. Eaton  <jwe@octave.org>
+
+	* plot/__render_plot1__.m: Reverse y axis for images.
+
+	* plot/__render_plot__.m: New args, terminal and output.
+	* plot/print.m: Don't set output and term here.  Instead, call
+	__render_plot__ with terminal and output.
+
+2006-11-16  John W. Eaton  <jwe@octave.org>
+
+	* plot/__render_plot1__.m: New file.
+	* plot/__render_plot__.m: Use it.  Loop over multiplots.
+	* plot/print.m, plot/subplot.m: Don't send "set multiplot" to
+	gnuplot.  Let __render_plot__ do that.
+
+2006-11-16  Francesco Potorti`  <Potorti@isti.cnr.it>
+
+	* plot/plot.m: Fix doc string.
+
+2006-11-16  John W. Eaton  <jwe@octave.org>
+
+	* plot/__render_plot__.m: Check for mix of 2-d and 3-d plots
+	before sending anything to the plotter.
+
+2006-11-15  John W. Eaton  <jwe@octave.org>
+
+	* image/__img_gnuplot__.m: Store more info in global plot
+	structures and use __render_plot__ to build plot command to
+	display image.
+
+	* plot/__plt3__.m: New arg, parametric.  Change all callers.
+
+	* plot/__plot_globals__.m (__plot_line_offset__, __plot_command__,
+	__plot_command_sep__): Delete.
+	(__plot_data_type__, __plot_data_parametric__,
+	__plot_image_colormap__, __plot_image_dims__, __plot_fmtstr__,
+	__plot_usingstr__, __plot_withstr__): New variables.
+	* plot/__init_plot_vars__.m: Initialize them.
+
+	* plot/__init_plot_vars__.m, plot/__setup_plot__.m:
+	Don't handle sep or cmd.
+
+	* plot/__render_plot__.m: New function.
+	* plot/__plt__.m, plot/__plt3__.m, plot/__errplot__.m:
+	Store more info in global plot structures and use __render_plot__
+	to build plot command.
+	* plot/replot.m: Simply call __render_plot__.
+
+	* plot/contour.m, plot/mesh.m, plot/plot3.m:
+	Set __plot_data_parametric__ here.
+
+2006-11-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/bottom_title.m, plot/top_title.m: Delete.
+
+	* image/image_viewer.m: Set default values here.
+	* image/image.m: Not here.
+
+	* image/image_viewer.m: Always return old values.  Check arguments.
+	* image/__img_gnuplot__.m: Rename from __img__m.
+
+2006-11-14  S�ren Hauberg  <soren@hauberg.org>
+
+	* image/image_viewer.m: New function.
+	* image/__img_via_file__.m: New function.
+	* image/image.m: Use image_viewer to determine which program to
+	use for image viewing.
+	* image/__img__.m: Silently accept more than 3 args.
+
+2006-11-14  John W. Eaton  <jwe@octave.org>
+
+	* plot/__do_legend__.m, plot/__errplot__.m,
+	plot/__init_plot_vars__.m, plot/__plot_globals__.m,
+	plot/__plt3__.m, plot/__plt__.m, plot/__setup_plot__.m,
+	plot/legend.m, plot/mplot.m, plot/multiplot.m, plot/oneplot.m,
+	plot/replot.m, plot/subplot.m, plot/subwindow.m:
+	Use __plot_globals__ for multiplot variables.  Keep track of
+	multiplot info for each figure.  Eliminate __multiplot_xscale__.
+
+2006-11-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/mesh.m: Use proper dimensions for y in call to repmat.
+
+	* miscellaneous/substruct.m: New function.
+
+	* testfun/assert.m: Force orientation to match when comparing
+	struct elements.
+
+	* general/__isequal__.m: Avoid assignment of comma-separated lists
+	when comparing structs.
+
+2006-11-13  S�ren Hauberg  <hauberg@gmail.com>
+
+	* general/bicubic.m, general/cart2pol.m, general/cart2sph.m,
+	plot/contour.m, linear-algebra/cross.m, general/cumtrapz.m,
+	linear-algebra/dot.m, image/imshow.m, general/interp2.m,
+	general/mod.m, plot/plot3.m, plot/__plr2__.m, plot/__plr__.m,
+	general/pol2cart.m, general/polyarea.m, polynomial/polyfit.m,
+	general/rem.m, image/rgb2ind.m, general/sph2cart.m,
+	general/trapz.m, miscellaneous/xor.m: Use size_equal.
+
+2006-11-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/mesh.m: Use size_equal to compare dimensions.
+
+2006-11-13  S�ren Hauberg  <soren@hauberg.org>
+
+	* plot/mesh.m: Simplify.  Set hidden3d for the plot.
+
+2006-11-11  S�ren Hauberg  <soren@hauberg.org>
+
+	* miscellaneous/copyfile.m: Fix docs to match function.
+
+2006-11-08  John W. Eaton  <jwe@octave.org>
+
+	* plot/legend.m: New function, adapted from Octave Forge.
+
+	* plot/__do_legend__.m: New function.
+	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m,
+	plot/replot.m: Call it before plotting.
+
+	* plot/plot3.m, plot/mesh.m, plot/contour.m: Don't send "set
+	noparametric" to gnuplot..
+
+	* plot/__plotopt__.m, plot/__pltopt1__.m, plot/__plt1__.m,
+	plot/__plt2__.m, plot/__plt2mm__.m, plot/__plt2mv__.m,
+	plot/__plt2ss__.m, plot/__plt2vm__.m, plot/__plt2vv__.m: Accept
+	and return key title separate from line format.  Accept format and
+	key as cellstr.  Always return data as cell array.  Return format
+	and key title as cellstr.
+	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m:
+	Handle line format and key titles separately.
+	* plot/__plt3__.m, plot/__plt__.m: Handle data as cell array only.
+
+	* plot/__plot_globals__.m (__plot_line_offset__,
+	__plot_key_labels__, __plot_key_properties__): New global
+	variables.  Initialize them.
+	* plot/__init_plot_vars__.m (__plot_line_offset__,
+	__plot_key_labels__, __plot_key_properties__): Initialize.
+	* plot/__errplot__.m, plot/__plt3__.m, plot/__plt__.m
+	(__plot_line_offset__, __plot_key_labels__,
+	__plot_key_properties__): Store information about plot key titles.
+
+	* plot/__errplot__.m, plot/__init_plot_vars__.m, plot/__plt3__.m,
+	plot/__plt__.m: Use cf, mxi, and myi as shorthand for
+	__current_figure__, __multiplot_xi__, and __multiplot_yi__,
+	respectively.
+
+	* plot/__errcomm__.m: Allow fmt to be cellstr.
+
+	* strings/strcat.m: Disable Octave:empty-list-elements warning
+	whle concatenating args.
+
+2006-11-07  John W. Eaton  <jwe@octave.org>
+
+	* startup/main-rcfile: Conditionally set PAGER_FLAGS.
+
+2006-11-06  S�ren Hauberg  <soren@hauberg.org>
+
+	* pkg/pkg.m (extract_pkg): No need to pass "dotexceptnewline"
+	option to regexp.
+
+	* image/__img__.m: Send "set size ratio -1" before plotting.
+
+2006-11-03  Bill Denney  <denney@seas.upenn.edu>
+
+	* strings/index.m: New arg, direction.  Simplify and speed up.
+	* strings/rindex.m: Implement using index (..., "last");
+
+	* blanks.m, strcat.m: Simplify.  Add tests.
+
+2006-11-01  Bill Denney  <denney@seas.upenn.edu>
+
+	* general/__isequal__.m: Test size and class more consistently.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/ls_command.m: Use /D instead of /w.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+	* miscellaneous/ls.m, miscellaneous/ls_command.m: New files.
+	* miscellaneous/dir.m: Mark as a command.
+
+2006-10-27  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* miscellaneous/unpack.m: Fix missing comma in strcat call.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* image/image.m: Set x = y = [] when nargin == 0;
+
+2006-10-25  Quentin Spencer  <qspencer@ieee.org>
+
+	* image/image.m: Call __img__ if gnuplot version is > 4.0.
+	* image/__img__.m: New file, originally from
+	Daniel J Sebald <daniel.sebald@ieee.org>.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/__gnuplot_version__.m: New function, originally from
+	Daniel J Sebald <daniel.sebald@ieee.org> by way of
+	Quentin Spencer <qspencer@ieee.org>.
+
+2006-10-25  S�ren Hauberg  <soren@hauberg.org>
+
+	* plot/__pltopt__.m: Update symbol marker id numbers for gnuplot 4.
+
+2006-10-24  Bill Denney  <denney@seas.upenn.edu>
+
+	* miscellaneous/unpack.m, miscellaneous/bunzip2.m,
+	miscellaneous/gunzip.m: New files.
+	* miscellaneous/untar.m, miscellaneous/unzip.m:
+	Call unpack to do the real work.
+
+2006-10-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/plot3.m: If we have a format string, then also pass using
+	string to __plt3__.
+
+	* plot/sombrero.m: Don't return anything if nargout == 0.
+
+	* plot/__plt3__.m: Create using clause if none is supplied.
+	* plot/mesh.m: Always pass empty using string to __plt3__.
+
+2006-10-20  Bill Denney  <denney@seas.upenn.edu>
+
+	* movefile.m, copyfile.m: Handle cellstr lists of files.
+	Quote filenames in shell commands.
+
+2006-10-17  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (uninstall): Allow the uninstall to proceed even if
+	the package directory is missing.
+
+2006-10-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/box.m: New function.
+
+2006-10-13  Etienne Grossmann  <etienne@tyzx.com>
+
+	* general/ind2sub.m, general/sub2ind.m: Handle empty indices.
+
+2006-10-12  Quentin Spencer  <qspencer@ieee.org>
+
+	* plot/sombrero.m: Only plot if nargout == 0.  Otherwise, return data.
+
+2006-10-10  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/copyfile.m, miscellaneous/movefile.m: New functions.
+
+2006-10-10  Bill Denney  <denney@seas.upenn.edu>
+
+	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m,
+	audio/playaudio.m, audio/record.m, audio/saveaudio.m,
+	audio/setaudio.m, audio/wavread.m, audio/wavwrite.m,
+	control/base/__bodquist__.m, control/base/__freqresp__.m,
+	control/base/are.m, control/base/bode.m, control/base/ctrb.m,
+	control/base/damp.m, control/base/dare.m, control/base/dcgain.m,
+	control/base/dre.m, control/base/impulse.m, control/base/lqg.m,
+	control/base/lsim.m, control/base/lyap.m, control/base/nichols.m,
+	control/base/nyquist.m, control/base/obsv.m, control/base/pzmap.m,
+	control/base/rlocus.m, control/base/step.m, control/base/tzero.m,
+	control/hinf/h2norm.m, control/hinf/h2syn.m,
+	control/hinf/hinfnorm.m, control/hinf/hinfsyn.m,
+	control/hinf/is_dgkf.m, control/hinf/wgt1o.m,
+	control/obsolete/dezero.m, control/system/__sysdefioname__.m,
+	control/system/buildssic.m, control/system/c2d.m,
+	control/system/cellidx.m, control/system/d2c.m,
+	control/system/dmr2d.m, control/system/fir2sys.m,
+	control/system/is_abcd.m, control/system/is_controllable.m,
+	control/system/is_detectable.m, control/system/is_digital.m,
+	control/system/is_observable.m, control/system/is_siso.m,
+	control/system/is_stabilizable.m, control/system/is_stable.m,
+	control/system/jet707.m, control/system/listidx.m,
+	control/system/ord2.m, control/system/parallel.m,
+	control/system/ss.m, control/system/ss2zp.m,
+	control/system/starp.m, control/system/sys2ss.m,
+	control/system/sys2tf.m, control/system/sys2zp.m,
+	control/system/sysadd.m, control/system/sysappend.m,
+	control/system/syschtsam.m, control/system/sysconnect.m,
+	control/system/syscont.m, control/system/sysdimensions.m,
+	control/system/sysdisc.m, control/system/sysdup.m,
+	control/system/sysgetsignals.m, control/system/sysgettsam.m,
+	control/system/sysgroup.m, control/system/sysidx.m,
+	control/system/sysmin.m, control/system/sysmult.m,
+	control/system/sysout.m, control/system/sysprune.m,
+	control/system/sysscale.m, control/system/syssetsignals.m,
+	control/system/syssub.m, control/system/sysupdate.m,
+	control/system/tf.m, control/system/tfout.m,
+	control/system/ugain.m, control/system/zp.m,
+	control/system/zpout.m, control/util/__outlist__.m,
+	control/util/__zgpbal__.m, control/util/prompt.m,
+	control/util/sortcom.m, control/util/strappend.m,
+	deprecated/com2str.m, elfun/acot.m, elfun/acoth.m, elfun/acsc.m,
+	elfun/acsch.m, elfun/asec.m, elfun/asech.m, elfun/cot.m,
+	elfun/coth.m, elfun/csc.m, elfun/csch.m, elfun/lcm.m, elfun/sec.m,
+	elfun/sech.m, finance/fv.m, finance/fvl.m, finance/irr.m,
+	finance/nper.m, finance/npv.m, finance/pmt.m, finance/pv.m,
+	finance/pvl.m, finance/rate.m, finance/vol.m,
+	general/__isequal__.m, general/bitcmp.m, general/bitget.m,
+	general/bitset.m, general/blkdiag.m, general/cart2sph.m,
+	general/cell2mat.m, general/circshift.m, general/cplxpair.m,
+	general/cumtrapz.m, general/deal.m, general/diff.m,
+	general/flipdim.m, general/fliplr.m, general/flipud.m,
+	general/ind2sub.m, general/int2str.m,
+	general/is_duplicate_entry.m, general/isdefinite.m,
+	general/isequal.m, general/isequalwithequalnans.m,
+	general/isscalar.m, general/issquare.m, general/issymmetric.m,
+	general/isvector.m, general/logical.m, general/logspace.m,
+	general/mod.m, general/nargchk.m, general/nextpow2.m,
+	general/perror.m, general/postpad.m, general/prepad.m,
+	general/randperm.m, general/rem.m, general/repmat.m,
+	general/rot90.m, general/rotdim.m, general/shift.m,
+	general/shiftdim.m, general/sph2cart.m, general/strerror.m,
+	general/sub2ind.m, general/trapz.m, general/tril.m,
+	general/triu.m, image/gray.m, image/gray2ind.m, image/hsv2rgb.m,
+	image/image.m, image/imagesc.m, image/ind2gray.m, image/ind2rgb.m,
+	image/loadimage.m, image/ntsc2rgb.m, image/ocean.m,
+	image/rgb2hsv.m, image/rgb2ntsc.m, image/saveimage.m, io/beep.m,
+	linear-algebra/commutation_matrix.m, linear-algebra/cond.m,
+	linear-algebra/cross.m, linear-algebra/dmult.m,
+	linear-algebra/dot.m, linear-algebra/duplication_matrix.m,
+	linear-algebra/krylov.m, linear-algebra/krylovb.m,
+	linear-algebra/logm.m, linear-algebra/norm.m,
+	linear-algebra/null.m, linear-algebra/orth.m,
+	linear-algebra/qzhess.m, linear-algebra/rank.m,
+	linear-algebra/trace.m, linear-algebra/vec.m,
+	linear-algebra/vech.m, miscellaneous/bincoeff.m,
+	miscellaneous/delete.m, miscellaneous/dir.m, miscellaneous/dos.m,
+	miscellaneous/fileattrib.m, miscellaneous/fileparts.m,
+	miscellaneous/flops.m, miscellaneous/fullfile.m,
+	miscellaneous/ispc.m, miscellaneous/isunix.m,
+	miscellaneous/menu.m, miscellaneous/not.m, miscellaneous/popen2.m,
+	miscellaneous/single.m, miscellaneous/unix.m, miscellaneous/ver.m,
+	miscellaneous/xor.m, optimization/glpk.m, optimization/glpkmex.m,
+	optimization/qp.m, optimization/sqp.m, plot/__axis_label__.m,
+	plot/__errplot__.m, plot/__plr1__.m, plot/__plr2__.m,
+	plot/__plr__.m, plot/__plt1__.m, plot/__plt2__.m,
+	plot/__plt2mm__.m, plot/__plt2mv__.m, plot/__plt2ss__.m,
+	plot/__plt2vm__.m, plot/__plt2vv__.m, plot/__pltopt1__.m,
+	plot/__pltopt__.m, plot/bar.m, plot/bottom_title.m, plot/close.m,
+	plot/contour.m, plot/errorbar.m, plot/figure.m, plot/fplot.m,
+	plot/grid.m, plot/hist.m, plot/hold.m, plot/ishold.m,
+	plot/loglogerr.m, plot/mesh.m, plot/meshdom.m, plot/meshgrid.m,
+	plot/multiplot.m, plot/orient.m, plot/polar.m, plot/replot.m,
+	plot/semilogxerr.m, plot/semilogyerr.m, plot/sombrero.m,
+	plot/stairs.m, plot/subplot.m, plot/subwindow.m, plot/title.m,
+	plot/top_title.m, polynomial/compan.m, polynomial/conv.m,
+	polynomial/deconv.m, polynomial/mkpp.m, polynomial/poly.m,
+	polynomial/polyder.m, polynomial/polyderiv.m,
+	polynomial/polyfit.m, polynomial/polygcd.m,
+	polynomial/polyinteg.m, polynomial/polyout.m,
+	polynomial/polyreduce.m, polynomial/polyval.m,
+	polynomial/polyvalm.m, polynomial/ppval.m, polynomial/residue.m,
+	polynomial/roots.m, polynomial/unmkpp.m, quaternion/quaternion.m,
+	set/complement.m, set/create_set.m, set/intersect.m,
+	set/ismember.m, set/setdiff.m, set/setxor.m, set/union.m,
+	set/unique.m, signal/arch_fit.m, signal/arch_rnd.m,
+	signal/arma_rnd.m, signal/autocor.m, signal/autoreg_matrix.m,
+	signal/bartlett.m, signal/blackman.m, signal/detrend.m,
+	signal/diffpara.m, signal/durbinlevinson.m, signal/fftconv.m,
+	signal/fftfilt.m, signal/fftshift.m, signal/filter2.m,
+	signal/freqz.m, signal/hamming.m, signal/hanning.m,
+	signal/hurst.m, signal/ifftshift.m, signal/sinetone.m,
+	signal/sinewave.m, signal/spencer.m, signal/stft.m,
+	signal/synthesis.m, signal/unwrap.m, sparse/gplot.m,
+	sparse/spfun.m, sparse/sprand.m, sparse/sprandn.m,
+	sparse/sprandsym.m, sparse/spstats.m, specfun/beta.m,
+	specfun/betai.m, specfun/betaln.m, specfun/erfinv.m,
+	specfun/gammai.m, specfun/log2.m, specfun/pow2.m,
+	special-matrix/hankel.m, special-matrix/hilb.m,
+	special-matrix/invhilb.m, special-matrix/sylvester_matrix.m,
+	special-matrix/toeplitz.m, special-matrix/vander.m,
+	statistics/base/center.m, statistics/base/cloglog.m,
+	statistics/base/cor.m, statistics/base/corrcoef.m,
+	statistics/base/cov.m, statistics/base/cut.m,
+	statistics/base/gls.m, statistics/base/iqr.m,
+	statistics/base/kendall.m, statistics/base/kurtosis.m,
+	statistics/base/logit.m, statistics/base/mahalanobis.m,
+	statistics/base/mean.m, statistics/base/meansq.m,
+	statistics/base/median.m, statistics/base/moment.m,
+	statistics/base/ols.m, statistics/base/ppplot.m,
+	statistics/base/probit.m, statistics/base/qqplot.m,
+	statistics/base/range.m, statistics/base/ranks.m,
+	statistics/base/run_count.m, statistics/base/skewness.m,
+	statistics/base/spearman.m, statistics/base/statistics.m,
+	statistics/base/std.m, statistics/base/studentize.m,
+	statistics/base/table.m, statistics/base/values.m,
+	statistics/base/var.m, statistics/distributions/betacdf.m,
+	statistics/distributions/betainv.m,
+	statistics/distributions/betapdf.m,
+	statistics/distributions/betarnd.m,
+	statistics/distributions/binocdf.m,
+	statistics/distributions/binoinv.m,
+	statistics/distributions/binopdf.m,
+	statistics/distributions/binornd.m,
+	statistics/distributions/cauchy_cdf.m,
+	statistics/distributions/cauchy_inv.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chi2cdf.m,
+	statistics/distributions/chi2inv.m,
+	statistics/distributions/chi2pdf.m,
+	statistics/distributions/chi2rnd.m,
+	statistics/distributions/discrete_cdf.m,
+	statistics/distributions/discrete_inv.m,
+	statistics/distributions/discrete_pdf.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/empirical_rnd.m,
+	statistics/distributions/expcdf.m,
+	statistics/distributions/expinv.m,
+	statistics/distributions/exppdf.m,
+	statistics/distributions/exprnd.m,
+	statistics/distributions/fcdf.m, statistics/distributions/finv.m,
+	statistics/distributions/fpdf.m, statistics/distributions/frnd.m,
+	statistics/distributions/gamcdf.m,
+	statistics/distributions/gaminv.m,
+	statistics/distributions/gampdf.m,
+	statistics/distributions/gamrnd.m,
+	statistics/distributions/geocdf.m,
+	statistics/distributions/geoinv.m,
+	statistics/distributions/geopdf.m,
+	statistics/distributions/geornd.m,
+	statistics/distributions/hygecdf.m,
+	statistics/distributions/hygeinv.m,
+	statistics/distributions/hygepdf.m,
+	statistics/distributions/hygernd.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/laplace_cdf.m,
+	statistics/distributions/laplace_inv.m,
+	statistics/distributions/laplace_pdf.m,
+	statistics/distributions/laplace_rnd.m,
+	statistics/distributions/logistic_cdf.m,
+	statistics/distributions/logistic_inv.m,
+	statistics/distributions/logistic_pdf.m,
+	statistics/distributions/logistic_rnd.m,
+	statistics/distributions/logncdf.m,
+	statistics/distributions/logninv.m,
+	statistics/distributions/lognpdf.m,
+	statistics/distributions/lognrnd.m,
+	statistics/distributions/normcdf.m,
+	statistics/distributions/norminv.m,
+	statistics/distributions/normpdf.m,
+	statistics/distributions/normrnd.m,
+	statistics/distributions/pascal_cdf.m,
+	statistics/distributions/pascal_inv.m,
+	statistics/distributions/pascal_pdf.m,
+	statistics/distributions/pascal_rnd.m,
+	statistics/distributions/poisscdf.m,
+	statistics/distributions/poissinv.m,
+	statistics/distributions/poisspdf.m,
+	statistics/distributions/poissrnd.m,
+	statistics/distributions/stdnormal_cdf.m,
+	statistics/distributions/stdnormal_inv.m,
+	statistics/distributions/stdnormal_pdf.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/tcdf.m, statistics/distributions/tinv.m,
+	statistics/distributions/tpdf.m, statistics/distributions/trnd.m,
+	statistics/distributions/unifcdf.m,
+	statistics/distributions/unifinv.m,
+	statistics/distributions/unifpdf.m,
+	statistics/distributions/unifrnd.m,
+	statistics/distributions/wblcdf.m,
+	statistics/distributions/wblinv.m,
+	statistics/distributions/wblpdf.m,
+	statistics/distributions/wblrnd.m,
+	statistics/distributions/wienrnd.m, statistics/tests/anova.m,
+	statistics/tests/bartlett_test.m,
+	statistics/tests/chisquare_test_homogeneity.m,
+	statistics/tests/chisquare_test_independence.m,
+	statistics/tests/cor_test.m, statistics/tests/f_test_regression.m,
+	statistics/tests/hotelling_test.m,
+	statistics/tests/hotelling_test_2.m,
+	statistics/tests/kolmogorov_smirnov_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m,
+	statistics/tests/kruskal_wallis_test.m, statistics/tests/manova.m,
+	statistics/tests/mcnemar_test.m, statistics/tests/prop_test_2.m,
+	statistics/tests/run_test.m, statistics/tests/sign_test.m,
+	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
+	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
+	statistics/tests/var_test.m, statistics/tests/welch_test.m,
+	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
+	statistics/tests/z_test_2.m, strings/base2dec.m, strings/blanks.m,
+	strings/deblank.m, strings/dec2base.m, strings/dec2bin.m,
+	strings/dec2hex.m, strings/findstr.m, strings/hex2dec.m,
+	strings/index.m, strings/isletter.m, strings/lower.m,
+	strings/rindex.m, strings/split.m, strings/str2mat.m,
+	strings/str2num.m, strings/strcat.m, strings/strcmpi.m,
+	strings/strfind.m, strings/strjust.m, strings/strmatch.m,
+	strings/strncmp.m, strings/strncmpi.m, strings/strrep.m,
+	strings/strtrunc.m, strings/strvcat.m, strings/substr.m,
+	strings/upper.m, testfun/assert.m, testfun/demo.m,
+	testfun/example.m, testfun/fail.m, testfun/speed.m,
+	testfun/test.m, time/asctime.m, time/calendar.m, time/ctime.m,
+	time/datenum.m, time/datestr.m, time/datevec.m, time/eomday.m,
+	time/etime.m, time/is_leap_year.m:
+	Use print_usage instead of usage.
+
+2006-10-09  David Bateman  <dbateman@free.fr>
+
+	* time/datevec.m: Add additional compatible default parsing strings.
+
+2006-10-09  Bill Denney  <denney@seas.upenn.edu>
+
+	* pkg/pkg.m: Remove trailing "\n" from error messages.
+	Remove compare_versions subfunction.
+
+	* miscellaneous/compare_versions.m: New function to compare
+	version numbers as strings with any boolean operators.
+
+	* miscellaneous/untar.m: Check more rigorously to see if the tar
+	file exists.
+
+2006-10-04  John W. Eaton  <jwe@octave.org>
+
+	* pkg/pkg.m: Use fullfile to concatenate directory and file names.
+
+2006-10-04  S�ren Hauberg  <soren@hauberg.org>
+
+	* pkg/pkg.m: Update docs.  Handle prefix option.
+	Handle dependencies for load option.
+
+2006-10-04  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/clearplot.m, deprecated/clg.m: New functions.
+
+	* plot/clg.m: Delete.
+	* plot/__init_plot_vars__.m: New function.
+	* plot/__setup_plot__.m: Use __init_plot_vars__.
+
+2006-10-03  S�ren Hauberg  <soren@hauberg.org>
+
+	* pkg/pkg.m: Avoid calling addpath with no args.
+
+2006-10-03  Bill Denney  <denney@seas.upenn.edu>
+
+ 	* audio/loadaudio.m, control/base/nyquist.m,
+ 	control/system/__zp2ssg2__.m, linear-algebra/cross.m,
+ 	linear-algebra/krylov.m, statistics/base/center.m,
+ 	statistics/base/median.m, statistics/base/std.m,
+ 	statistics/base/var.m, testfun/test.m: 	Use the new find syntax to
+	find first or last element matching a condition.
+
+2006-10-02  Bill Denney  <denney@seas.upenn.edu>
+
+	* strings/deblank.m, strings/upper.m, strings/lower.m,
+	general/__isequal__.m: Minimize looping using cellfun.
+
+2006-10-02  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (copy_files): always create installation directory.
+
+2006-10-02  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* miscellaneous/doc.m: Swap file and directory args to info.
+
+2006-10-01  Arno Onken  <whyly@gmx.net>
+
+	* statistics/distributions/exprnd.m: Fix typo.
+
+2006-09-30  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* polynomial/ppval.m: Use .' instead of '.
+	* polynomial/spline.m: Likewise.  New tests.
+
+2006-09-26  David Bateman  <dbateman@free.fr>
+
+	* __plt3__.m: Using global variables __plot_data__,
+	__plot_data_offset__ and __plot_command__ to store plots and
+	correctly handle multiplots, and hold state. Only accept a single
+	data parameter plus, using, format and with strings. Remove
+	setting of gnuplot parameters.
+	* __make_using_clause__.m: New function extracted from __plt__.m.
+	* __setup_plot__.m: Convert to a function and pass the plotting
+	command to use.
+	* __plt__.m: Change call to __setup_plot__ and __make_using_clause__.
+	* contour.m: Use unwind protect on the parametric state of plot
+	and __plt3__ instead of calling __gnuplot_splot__ directly.
+	* mesh.m: ditto.
+	* plot3.m: Error checking, setting of parametric state and
+	formation of matrix to plot moved from old __plt3__.
+
+2006-09-22  Michael Creel  <michael.creel@uab.es>
+
+	* deprecated/chisquare_pdf.m: Typo in documentation.
+
+2006-09-22  S�ren Hauberg  <soren@hauberg.org>
+
+	* signal/filter2.m: Correct texinfo doc.
+
+2006-09-22  David Bateman  <dbateman@free.fr>
+
+	* miscellaneous/parseparams.m: Correct texinfo doc.
+
+2006-09-15  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (prepare_installation): Don't create package
+	installation directory here.
+	(copy_files): Create it here instead, to avoid issues with
+	upgrades. Also install the COPYING file in packinfo.
+
+2006-09-13  John W. Eaton  <jwe@octave.org>
+
+	* general/blkdiag.m: Adjust to new cellfun rules.
+
+2006-08-30  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (install): Disallow bundles of packages. More verbose
+	error message for archive name not matching package name.
+	(installed_packages): Size header of printed results to
+	arguments. Sort the list of installed packages before printing
+	them.
+
+2006-09-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/freqz.m: Update tests.
+
+2006-09-11  Ken Kouno  <kouno@mk.ecei.tohoku.ac.jp>
+
+	* signal/freqz.m: Corretly postpad arrays.
+	Don't call fliplr on a column vector.
+
+2006-09-11  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* general/shiftdim.m: Use permute instead of reshape.
+
+2006-09-05  Alexander Barth  <abarth93@users.sourceforge.net>
+
+	* miscellaneous/parseparams.m: New function.
+
+2006-09-05  Rafael Laboissiere  <rafael@debian.org>
+
+	* miscellaneous/doc.m: Swap order of --file and --directory
+	options for info program invocation.
+
+2006-08-30  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (create_pkgadddel): Resolve variable name-clash from
+	previous change.
+
+2006-08-26  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (install, uninstall, installed_packages): Allow for
+	absence of trailing "/" in OCTAVE_HOME.
+
+2006-08-25  Alexander Barth  <abarth@marine.usf.edu>
+
+	* time/datenum.m: Allow arg to be character string.
+
+2006-08-25  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (install): Verify that package name correponds to the
+	archive name. Treat both PKG_ADD and PKG_DEL and remove them if
+	they are empty. If package directory is empty, remove it to fail
+	gracefully for system specific packages.
+	(extract_pkgadd, create_pkgadd): delete.
+	(extract_pkg, create_pkg): Generalized versions of deleted functions
+	(copy_files): Install both bin/ and doc/ directories, adding the
+	bin/ to the EXEC_PATH when the package is loaded.
+
+2006-08-24  John W. Eaton  <jwe@octave.org>
+
+	* image/saveimage.m: Use logical indexing instead of
+	indices computed by calling find on the logical index.
+
+2006-08-24  S�ren Hauberg  <soren@hauberg.org>
+
+	* miscellaneous/bincoeff.m, specfun/factorial.m:
+	Use logical indexing instead of indices computed by calling find
+	on the logical index.
+
+	* linear-algebra/krylov.m: Delete unused local var nzidx.
+
+2006-08-23  Quentin Spencer  <qspencer@ieee.org>
+
+	* control/system/tf2zp.m: Simplify gain calculation.
+
+2006-08-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt__.m: Insert using clauses for all plots.
+
+2006-08-23  A S Hodel  <hodelas@auburn.edu>
+
+	* control/system/sysscale.m: Call tf and zp with correct number of
+	args.
+
+2006-08-22  David Bateman  <dbateman@free.fr>
+
+	* pkg/pkg.m (extract_pkgadd, create_pkgadd): New functions to
+	Search inst/*.m and src/*.m files in the package for
+	PKG_ADD directives and append user supplied PKG_ADD.
+	(pkg): Call create_pkgadd after copying files.
+
+2006-08-21  S�ren Hauberg  <soren@hauberg.org>
+
+	* pkg/pkg.m: Handle multiple packages in a single file.
+	Insert directory separator between OCTAVE_HOME and rest of package
+	installation directory.
+
+2006-08-21  John W. Eaton  <jwe@octave.org>
+
+	* general/num2str.m: Early return if arg is empty.
+	From Thomas Treichl <Thomas.Treichl@gmx.net>.
+
+2006-08-21  David Bateman  <dbateman@free.fr>
+
+	* strings/mat2str.m: Compute NC before using.
+
+2006-08-17  John W. Eaton  <jwe@octave.org>
+
+	* audio/wavread.m: Fix calculation of sample count.
+
+2006-08-14  S�ren Hauberg  <soren@hauberg.org>
+
+	* image/imshow.m: New Matlab-compatible version.
+
+2006-08-15  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/is_global.m: Delete.
+
+2006-08-14  John W. Eaton  <jwe@octave.org>
+
+	* pkg/Makefile.in (script_sub_dir): Change from plot to pkg.
+
+2006-08-14  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
+
+	* sparse/spy.m, control/base/bode.m, control/base/__stepimp__.m,
+	signal/freqz_plot.m: Adapt to new automatic_replot definition.
+
+2006-08-14  S�ren Hauberg  <soren@hauberg.org>
+
+	* pkg/pkg.m: Don't pass function name to print_usage.
+	Use addpath and rmpath instead of manipulating LOADPATH.
+	Handle changes to system function.
+	(rm_rf): New subfunction.  Use it to avoid confirmation dialog for
+	recursive directory removal.
+
+	* strings/bin2dec.m: Ignore spaces in input for compatibility.
+
+	* colormap.m: Change global variable to persistent.
+
+	* rgb2ind.m: Handle single 3-d array as rgb image.
+
+2006-08-14  John W. Eaton  <jwe@octave.org>
+
+	* strings/str2double.m: Fix missing semicolon.
+
+2006-07-27  Jim Peterson  <jpeterson@annapmicro.com>
+
+	* plot/plot3.m: Accept one complex or one real and one complex
+	argument and plot real and imaginary components for y and z.
+
+2006-07-27  John W. Eaton  <jwe@octave.org>
+
+	* testfun/test.m: Call fflush after each block of calls to
+	fprintf, fputs, or fdisp.
+
+2006-07-26  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/mex.m: New function.
+
+2006-07-22  John W. Eaton  <jwe@octave.org>
+
+	* special-matrix/hadamard.m: Coerce bool matrix to double.
+
+2006-07-07  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/orderfields.m: New file.
+
+2006-06-30  John W. Eaton  <jwe@octave.org>
+
+	* time/datevec.m: Make another attempt to account for precision of
+	datenum format.
+
+2006-06-29  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dump_prefs.m: Remove obsolete symbols from the list.
+	Use feval instead of "type -q" to get values now that all the
+	symbols are functions.
+
+2006-06-16  John W. Eaton  <jwe@octave.org>
+
+	* time/datevec.m: Avoid computing log of non-positive values.
+
+2006-06-14  John W. Eaton  <jwe@octave.org>
+
+	* time/datevec.m: Attempt to account for precision of datenum format.
+
+2006-06-01  Quentin H. Spencer  <qspencer@ieee.org>
+
+	* audio/wavread.m: Fix file range error and add read support for
+	24-bit WAV files.
+
+2006-06-01  David Bateman  <dbateman@free.fr>
+
+	* general/interpft.m, general/quadl.m, general/polyarea.m,
+	general/interp1.m, general/gradient.m, general/interp2.m,
+	general/bicubic.m, miscellaneous/inputname.m, plot/__plt3__.m,
+	plot/ndgrid.m, plot/plot3.m, polynomial/pchip.m, sparse/pcg.m,
+	sparse/pcr.m, strings/mat2str.m: New files from Octave Forge.
+
+2006-05-31  Bill Denney  <bill@givebillmoney.com>
+
+ 	* miscellaneous/fileparts.m, miscellaneous/fullfile.m: Add seealso.
+ 	* miscellaneous/texas_lotto.m: Fix warning message.
+
+2006-05-26  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/doc.m: Also handle nargin == 0.
+
+2006-05-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/mesh.m: Use __gnupot_raw__ except where __gnuplot_set__ is
+	really needed.
+
+2006-05-22  John W. Eaton  <jwe@octave.org>
+
+	* general/lookup.m: New file from Octave Forge.
+
+2006-05-22  David Bateman  <dbateman@free.fr>
+
+	* general/nthroot.m, linear-algebra/rref.m, specfun/isprime.m,
+	specfun/primes.m, specfun/factor.m, specfun/nchoosek.m,
+	specfun/legendre.m, specfun/perms.m, special-matrix/rosser.m,
+	special-matrix/wilkinson.m, special-matrix/pascal.m,
+	special-matrix/magic.m, special-matrix/hadamard.m,
+	strings/strtok.m: New files from Octave Forge.
+
+2006-05-19  David Bateman  <dbateman@free.fr>
+
+	* polynomial/unmkpp.m, polynomial/mkpp.m, polynomial/spline.m,
+	polynomial/ppval.m, set/setxor.m: New files from Octave Forge.
+
+2006-05-17  John W. Eaton  <jwe@octave.org>
+
+	* set/intersection.m: Delete
+	* deprecated/intersection.m: New file.
+
+2006-05-17  David Bateman  <dbateman@free.fr>
+
+	* general/cplxpair.m, general/trapz.m, general/cumtrapz.m,
+	general/isdir.m, miscellaneous/dos.m, miscellaneous/getfield.m,
+	miscellaneous/setfield.m, plot/fplot.m, set/intersect.m,
+	signal/ifftshift.m, signal/filter2.m, specfun/betaln.m,
+	specfun/factorial.m, strings/strvcat.m: New files from Octave
+	Forge.
+
+2006-05-11  John W. Eaton  <jwe@octave.org>
+
+	* path/path.m: Delete (now a built-in function).
+
+	* pkg/Makefile.in: New file.
+	* configure.in (AC_CONFIG_FILES): Add pkg/Makefile to the list.
+	* Makefile.in (SUBDIRS): Add pkg to the list.
+
+2006-05-10  John W. Eaton  <jwe@octave.org>
+
+	* tar.m, untar.m, unzip.m: Adapt to Octave coding style.
+	* tar.m, untar.m: Only tar; don't compress or uncompress.
+
+2006-05-10  S�ren Hauberg  <hauberg@gmail.com>
+
+	* tar.m, untar.m, unzip.m: New files.
+
+2006-05-10  John W. Eaton  <jwe@octave.org>
+
+	* path/addpath.m, path/rmpath.m: Improve compatibility.
+	* path/setpath.m: Delete.
+
+	* pkg/pkg.m: New file.
+
+2006-05-09  Keith Goodman  <kwgoodman@gmail.com>
+
+	* plot/plot.m: Doc string fix.
+
+2006-05-09  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* testfun/speeed.m: Use new interface to unique and assert.
+	Improve documentation.  Approximate time complexity from log-log
+	plot.  Return time complexity and raw times if requested.  The
+	mean ratio is no longer returned.  Provide complete control over
+	which n are computed.
+
+2006-05-09  John W. Eaton  <jwe@octave.org>
+
+	* path/path.m: Move here from miscellaneous.
+	Adapt to new LOADPATH definition.
+
+2006-05-03  David Bateman  <dbateman@free.fr>
+
+	* path/rmpath.m, path/addpath.m, miscellaneous/path.m: Replace all
+	explicit uses of a path seperation character with pathsep().
+
+2006-05-03  Bob Weigel  <rweigel@gmu.edu>
+
+	* set/setdiff.m: New arg, byrows.  New tests.
+
+2006-04-29  John W. Eaton  <jwe@octave.org>
+
+	* startup/main-rcfile: Disable some warnings.
+
+2006-04-14  Bill Denney  <denney@seas.upenn.edu>
+
+ 	* strings/strcmpi.m: Return false instead of error if args are not
+	char or cellstr.
+
+2006-04-10  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dir.m: Ensure that returned structure array is
+	Nx1, not 1xN.
+
+2006-04-06  Olli Saarela  <olli.saarela@kcl.fi>
+
+	* plot/hist.m: Ignore NaN in inputs.
+
+2006-04-06  Keith Goodman  <kwgoodman@gmail.com>
+
+	* miscellaneous/mkoctfile.m: Doc string fix.
+
+2006-04-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt2__.m: Return data = [] and fmtstr = "" if x1 and x2
+	are both empty.
+	* plot/__plt__.m: Ignore empty data and format strings returned
+	from __plt1__ or __plt2__.
+
+2006-04-04  Bob Weigel  <rweigel@gmu.edu>
+
+	* set/unique.m: Properly handle single column input when
+	"rows" is specified.
+
+2006-04-04  John W. Eaton  <jwe@octave.org>
+
+	* path/setpath.m: New file.
+	* path/savepath.m: Use setpath to set path instead of assigning
+	directly to LOADPATH.
+
+	* path/Makefile.in, path/addpath.m, path/rmpath.m, path/savepath.m:
+	New files, adapted from Octave Forge by Keith Goodman
+	<kwgoodman@gmail.com>.
+	* path: New directory.
+	* Makefile.in (SUBDIRS): Add it to the list.
+	* configure.in (AC_CONFIG_FILES): Include path/Makefile here.
+
+2006-04-02  David Bateman  <dbateman@free.fr>
+
+	* general/tril.m, general.triu.m:
+	Use resize (resize (x, 0), nr, nc) rather than zeros (nr, nc)
+	to allow user types to work correctly.
+	* special-matrix/hankel.m, special-matrix/toeplitz.m: Ditto.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* plot/grid.m: Cache the state of the grid to allow toggling.
+	Accept keyword "minor" for minor grid.
+
+2006-03-28  John W. Eaton  <jwe@octave.org>
+
+	* general/isscalar.m: Only require that all dimensions are 1 for
+	compatiblity.
+
+2006-03-28  Bill Denney  <bill@givebillmoney.com>
+
+	* general/isvector.m: Allow non-numeric objects to be vectors for
+	compatibility.
+
+2006-03-28  Keith Goodman  <kwgoodman@gmail.com>
+
+	* plot/__errplot__.m: Doc string fix.
+
+	* miscellaneous/doc.m: Mark as command.
+
+	* general/isequal.m, general/__isequal__.m, general/cell2mat.m,
+	general/isequalwithequalnans.m, general/blkdiag.m,
+	strings/strfind.m, miscellaneous/doc.m: Update FSF address.
+
+2006-03-27  Don Bindner  <dbindner@truman.edu>
+
+	* plot/meshgrid.m: If nargout == 3 and vectors are supplied,
+	return 3d matrices.
+
+2006-03-27  Keith Goodman  <kwgoodman@gmail.com>
+
+	* time/toc.m: Don't print "Elapsed time..." if tic has not been set.
+
+2006-03-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/print.m: Don't replot after popping terminal setting.
+
+2006-03-20  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/mkoctfile.m: Use version-specific name of
+	mkoctfile.  Use fullfile to construct file name.
+
+2006-03-20  Keith Goodman  <kwgoodman@gmail.com>
+
+	* miscellaneous/mkoctfile.m: Make it possible to call mkoctfile
+	shell script from Octave prompt.
+
+2006-03-17  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/weibcdf.m, deprecated/weibinv.m,
+	deprecated/weibpdf.m, deprecated/weibrnd.m: New functions.
+
+	* deprecated/weibull_cdf.m, deprecated/weibull_inv.m,
+	deprecated/weibull_pdf.m, deprecated/weibull_rnd.m:
+	Call new wbl functions to do the real work.
+	Swap args and provide default values as necessary to preserve
+	compatibility with old version of Octave.
+
+	* statistics/distributions/wblcdf.m: Rename from weibcdf.m.
+	statistics/distributions/wblinv.m: Rename from weibinv.m.
+	statistics/distributions/wblpdf.m: Rename from weibpdf.m.
+	statistics/distributions/wblrnd.m: Rename from weibrnd.m.
+	Swap scale and shape args for compatibility.
+
+	* deprecated/lognormal_cdf.m, deprecated/lognormal_inv.m,
+	deprecated/lognormal_pdf.m, deprecated/lognormal_rnd.m:
+	Preserve compatibility with old versions of Octave given new
+	definitions of logncdf, logninv, lognpdf, and lognrnd.
+
+	* statistics/distributions/logncdf.m,
+	statistics/distributions/logninv.m,
+	statistics/distributions/lognpdf.m,
+	statistics/distributions/lognrnd.m: Compatibility fixes.
+	From Ben Barrowes  <barrowes@alum.mit.edu>
+
+	* deprecated/hypergeometric_rnd.m: Update interface to match
+	current 2.1.x version.
+
+	* deprecated/t_rnd.m: Call trnd, not t_rnd.
+
+	* miscellaneous/dir.m: Use readdir instead of glob.
+	Special case for "." to avoid globbing.  Use list_in_columns.
+	Eliminate unused variables len and finfo.
+
+2006-03-16  Bill Denney  <bill@givebillmoney.com>
+
+	* miscellaneous/dir.m: Improve compatibility.
+
+2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* time/calendar.m, time/datestr.m, time/datevec.m, time/eomday.m,
+	time/now.m, time/weekday.m: New functions from Octave Forge.
+
+2006-03-16  John W. Eaton  <jwe@octave.org>
+
+	* control/base/bode_bounds.m: Check for iip and iiz empty instead
+	of looking at sum of max dimensions.
+
+2006-03-16  David Bateman  <dbateman@free.fr>
+
+	* testfun/test.m: Clear last warning before warning test to avoid
+	issues with previously set warnings.
+	* build_sparse_test.sh: Tests for multiple RHS for rectanguar
+	sparse matrices. Force matrix type from spqr solution to be
+	singular to force QR solvers to be used for assert.
+
+2006-03-16  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* strings/strfind.m: New file.
+
+2006-03-16  John W. Eaton  <jwe@octave.org>
+
+	* general/rows.m, general/columns.m: Delete.
+
+2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* strings/strcmpi.m: Simplify.
+	* strings/strncmpi.m: Import from octave-forge, simplify.
+	* strings/strtrunc.m: New file.
+
+	* strings/lower.m, strings/upper.m: Handle cellstr arguments.
+
+2006-03-15  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/doc.m: New file.
+	From S�ren Hauberg <soren@hauberg.org>.
+
+2006-03-15  Keith Goodman  <kwgoodman@gmail.com>
+
+	* miscellaneous/mkoctfile.m: New file.
+
+2006-03-15  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/residue.m: Use & instead of && to generate arg for find.
+
+2006-03-14  Keith Goodman  <kwgoodman@gmail.com>
+
+	* strings/bin2dec.m: Doc fix.
+
+2006-03-10  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* time/etime.m: Use datenum to support times spanning year boundaries.
+	* time/datenum.m: New function to compute day number from time.
+
+2006-03-09  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/unix.m, plot/print.m:
+	Swap order of outputs from system.
+
+2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
+
+	* audio/lin2mu.m, audio/loadaudio.m, audio/mu2lin.m,
+	audio/playaudio.m, audio/record.m, audio/saveaudio.m,
+	audio/wavread.m, audio/wavwrite.m, control/base/DEMOcontrol.m,
+	control/base/__stepimp__.m, control/base/are.m,
+	control/base/controldemo.m, control/base/damp.m,
+	control/base/dare.m, control/base/impulse.m, control/base/lqg.m,
+	control/base/step.m, control/system/abcddim.m,
+	control/system/is_abcd.m, control/system/is_controllable.m,
+	control/system/is_detectable.m, control/system/is_observable.m,
+	control/system/is_stabilizable.m, control/system/is_stable.m,
+	control/system/jet707.m, control/system/sys2fir.m,
+	control/system/sysdimensions.m, control/system/sysupdate.m,
+	control/system/tfout.m, control/system/ugain.m,
+	control/system/zpout.m, elfun/lcm.m, finance/irr.m,
+	finance/nper.m, finance/npv.m, finance/pmt.m, finance/pv.m,
+	finance/rate.m, general/__isequal__.m, general/bitcmp.m,
+	general/bitget.m, general/bitset.m, general/blkdiag.m,
+	general/cart2pol.m, general/cart2sph.m, general/cell2mat.m,
+	general/circshift.m, general/columns.m, general/flipdim.m,
+	general/fliplr.m, general/flipud.m, general/ind2sub.m,
+	general/int2str.m, general/isdefinite.m, general/isequal.m,
+	general/isequalwithequalnans.m, general/isscalar.m,
+	general/issquare.m, general/issymmetric.m, general/isvector.m,
+	general/logspace.m, general/mod.m, general/nextpow2.m,
+	general/num2str.m, general/perror.m, general/pol2cart.m,
+	general/rem.m, general/rot90.m, general/rotdim.m, general/rows.m,
+	general/shiftdim.m, general/sph2cart.m, general/sub2ind.m,
+	general/tril.m, image/hsv2rgb.m, image/image.m, image/imagesc.m,
+	image/imshow.m, image/ind2gray.m, image/ind2rgb.m,
+	image/loadimage.m, image/rgb2hsv.m, image/rgb2ind.m,
+	image/saveimage.m, io/beep.m, linear-algebra/cond.m,
+	linear-algebra/norm.m, miscellaneous/comma.m, miscellaneous/dir.m,
+	miscellaneous/license.m, miscellaneous/menu.m,
+	miscellaneous/semicolon.m, miscellaneous/texas_lotto.m,
+	miscellaneous/unix.m, miscellaneous/ver.m, optimization/sqp.m,
+	plot/__errcomm__.m, plot/__errplot__.m, plot/__pltopt1__.m,
+	plot/__pltopt__.m, plot/bar.m, plot/contour.m, plot/errorbar.m,
+	plot/grid.m, plot/hist.m, plot/loglog.m, plot/loglogerr.m,
+	plot/mesh.m, plot/meshgrid.m, plot/plot.m, plot/polar.m,
+	plot/semilogx.m, plot/semilogxerr.m, plot/semilogy.m,
+	plot/semilogyerr.m, plot/shg.m, plot/stairs.m, plot/title.m,
+	plot/xlabel.m, polynomial/compan.m, polynomial/conv.m,
+	polynomial/deconv.m, polynomial/polyderiv.m, polynomial/polygcd.m,
+	polynomial/polyinteg.m, polynomial/polyout.m,
+	polynomial/polyreduce.m, polynomial/polyval.m,
+	polynomial/polyvalm.m, polynomial/residue.m, set/complement.m,
+	set/create_set.m, set/intersection.m, set/ismember.m,
+	set/setdiff.m, set/union.m, set/unique.m, sparse/etreeplot.m,
+	sparse/gplot.m, sparse/spalloc.m, sparse/sphcat.m,
+	sparse/sprand.m, sparse/sprandn.m, sparse/sprandsym.m,
+	sparse/spvcat.m, sparse/treeplot.m, specfun/erfinv.m,
+	specfun/log2.m, specfun/pow2.m, special-matrix/hankel.m,
+	special-matrix/hilb.m, special-matrix/invhilb.m,
+	special-matrix/sylvester_matrix.m, special-matrix/toeplitz.m,
+	special-matrix/vander.m, statistics/base/median.m,
+	statistics/base/std.m, statistics/distributions/gamcdf.m,
+	statistics/distributions/gaminv.m,
+	statistics/distributions/gampdf.m,
+	statistics/distributions/gamrnd.m, strings/base2dec.m,
+	strings/bin2dec.m, strings/dec2base.m, strings/dec2bin.m,
+	strings/dec2hex.m, strings/hex2dec.m, strings/isletter.m,
+	strings/lower.m, strings/upper.m, testfun/assert.m,
+	testfun/demo.m, testfun/example.m, testfun/test.m, time/etime.m:
+	Move @seealso inside @defXXX macro.  Remove "and" from @seealso.
+
+2006-02-27  John W. Eaton  <jwe@octave.org>
+
+	* time/tic.m: Move here from miscellaneous/tic.m.
+	* time/toc.m: Move here from miscellaneous/toc.m.
+
+2006-02-26  Keith Goodman  <kwgoodman@gmail.com>
+
+ 	* miscellaneous/toc.m: Display "Elapsed time is X seconds" if user
+	does not assign output of toc to a variable.
+
+2006-02-16  Bill Denney  <denney@seas.upenn.edu>
+
+ 	* axis.m: Catch limits that are the same and return an error.
+
+2006-02-15  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
+
+	* plot/print.m: Accept emf device option to support Enhanced
+	Metafile format.
+
+2006-02-15  A S Hodel  <hodelas@auburn.edu>
+
+	* control/base/lqe.m: Doc fix.
+
+2006-02-15  Keith Goodman  <kwgoodman@gmail.com>
+
+ 	* statistics/distributions/gamcdf.m: Doc fix.
+ 	* statistics/distributions/gaminv.m: Doc fix.
+ 	* statistics/distributions/gampdf.m: Doc fix.
+ 	* statistics/distributions/gamrnd.m: Doc fix.
+
+2006-02-09  David Bateman  <dbateman@free.fr>
+
+	* general/triu.m: Minimum change to allow sparse matrix. More needed
+	for arbitrary user type.
+	* general/tril.m: ditto.
+	* sparse/sprand.m: Doc fix.
+	* sparse/sprandn.m: Ditto.
+	* sparse/sprandsym.m: New function.
+	* audio/setaudio.m, general/cart2pol.m, general/cart2sph.m,
+	general/pol2cart.m, general/sph2cart.m, signal/freqz_plot.m:
+	Update for syntax error for latest texinfo.tex file.
+
+2006-02-02  John W. Eaton  <jwe@octave.org>
+
+	* plot/grid.m: Append ";\n" to "set grid" command.
+
+2006-02-02  A S Hodel  <hodelas@auburn.edu>
+
+	* control/base/rlocus.m: Don't atttempt to plot rlzer if it is empty.
+
+2006-01-13  John W. Eaton  <jwe@octave.org>
+
+	* audio/Makefile.in, control/base/Makefile.in,
+	control/hinf/Makefile.in, control/obsolete/Makefile.in,
+	control/system/Makefile.in, control/util/Makefile.in,
+	deprecated/Makefile.in, elfun/Makefile.in, finance/Makefile.in,
+	general/Makefile.in, image/Makefile.in, io/Makefile.in,
+	linear-algebra/Makefile.in, miscellaneous/Makefile.in,
+	optimization/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, quaternion/Makefile.in, set/Makefile.in,
+	signal/Makefile.in, sparse/Makefile.in, specfun/Makefile.in,
+	special-matrix/Makefile.in, startup/Makefile.in,
+	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, time/Makefile.in, testfun/Makefile.in:
+	(all): Depend on PKG_ADD.
+	(PKG_ADD): New target.
+
+2006-01-13  Bill Denney  <bill@givebillmoney.com>
+
+ 	* miscellaneous/dir.m: Add @seealso{} to docstring.
+
+2006-01-13  John W. Eaton  <jwe@octave.org>
+
+	* time/etime.m: Move here from miscellaneous/etime.m.
+	* time/is_leap_year.m: Move here from miscellaneous/is_leap_year.m.
+
+2006-01-13  Bill Denney  <bill@givebillmoney.com>
+
+	* miscellaneous/dir.m: Use filesep instead of "/" where needed.
+	* miscellaneous/fullfile.m: Likewise.
+
+2006-01-12  David Bateman  <dbateman@free.fr>
+
+	* general/blkdiag.m: Compatible behavior for empty matrices
+	* statistics/base/unidrnd.m: Documentation buglet.
+
+2005-12-14  David Bateman  <dbateman@free.fr>
+
+	* testfun/assert.m, testfun/fail.m, testfun/test.m, testfun/demo.m,
+	testfun/speed.m, testfun/example.m, Makefile.in: New files.
+
+	* Makefile.in (SUBDIRS): Include testfun.
+	* configure.in (AC_CONFIG_FILES): Include testfun/Makefile.
+
+	* miscellaneous/dir.m: Transpose sub-assignment for cleanness.
+
+	* general/__isequal__.m: Remove reference to getfield.
+
+	* plot/hist.m: Update test code for row/column discrepencies.
+	* signal/freqz.m: Alter output row/column for matlab compatibility.
+	Update the test code for this.
+	* sparse/spstats.m: Fix small bug in the dimension of output.
+
+2005-12-13  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* cell/cell2mat.m: New file, from octave-forge.
+
+2005-12-13  Ivana Varekova  <varekova@redhat.com>
+
+	* sparse/treeplot.m, sparse/etreeplot.m, sparse/gplot.m:
+	New graph theory functions.
+
+2005-12-13  John W. Eaton  <jwe@octave.org>
+
+	* general/blkdiag.m: Use "isempty" instead of @isempty.
+
+	* control/system/ss.m: Doc fix.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-12-12  Michael Zeising  <michael@michaels-website.de>
+
+	* audio/wavread.m, audio/wavwrite.m:
+	Correct scaling for 8-bit linear pcm samples.
+	Improve scaling for all other linear pcm resolutions.
+
+2005-12-07  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/moment.m: Don't save and restore warn_str_to_num.
+
+	* sparse/spdiags.m: Don't save and restore warn_fortran_indexing.
+	* strings/strjust.m: Likewise.
+
+	* general/shift.m: Don't save and restore warn_empty_list_elements.
+	* signal/arma_rnd.m: Likewise.
+	* strings/strcat.m: Likewise.
+	* control/base/__freqresp__.m: Likewise.
+	* control/base/place.m: Likewise.
+	* control/base/pzmap.m: Likewise.
+	* control/base/pzmap.m: Likewise.
+	* control/system/sysappend.m: Likewise.
+	* control/system/syscont.m: Likewise.
+	* control/system/sysdisc.m: Likewise.
+	* control/system/sysgroup.m: Likewise.
+	* control/system/tfout.m: Likewise.
+	* control/system/zpout.m: Likewise.
+	* control/util/__outlist__.m: Likewise.
+
+2005-12-06  John W. Eaton  <jwe@octave.org>
+
+	* audio/wavread.m, audio/wavwrite.m: Adapt to Octave coding style.
+	Avoid for loop in interleave/deinterleave steps.
+
+2005-12-06  Michael Zeising  <michael@michaels-website.de>
+
+	* audio/wavread.m, audio/wavwrite.m: New files.
+
+2005-12-06  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dir.m: Return Nx1 instead of 1xN struct array.
+
+2005-12-05  John W. Eaton  <jwe@octave.org>
+
+	* plot/axis.m: Add "## PKG_ADD: mark_as_command axis" line.
+
+2005-12-02  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/fileattrib.m: New function.
+
+2005-12-01  John W. Eaton  <jwe@octave.org>
+
+	* general/columns.m: Use size (x, 2) instead of [nr, nc] = size (x).
+	* general/rows.m: Use size (x, 1) instead of [nr, nc] = size (x).
+	From William Poetra Yoga Hadisoeseno <williampoetra@yahoo.com>.
+
+2005-11-30  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/krylov.m: Format doc string.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-11-23  William Poetra Yoga Hadisoeseno  <williampoetra@yahoo.com>
+
+	* general/blkdiag.m: Import from octave-forge.
+	Ignore empty matrices in the input.  Add tests.
+
+	* general/isequal.m, general/isequalwithequalnans.m:
+	New wrapper scripts for general/__isequal__.m.
+	* general/__isequal__.m: Rename from general/isequal.m.
+	New arg, nans_compare_equal.
+
+2005-11-29  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/ver.m: Use new uname built-in function instead of
+	calling system.  Only append octave_forge_string if
+	OCTAVE_FORGE_VERSION exists.  Use puts instead of disp.
+	Call license instead of hard-coding license info here.
+
+	* miscellaneous/license.m: Use persistent instead of global for
+	__octave_licenses__.  Use puts instead of disp.
+	Use getuid and getpwuid instead of calling unix ("id -un").
+	If nargout = 1, return license info instead of printing usage message.
+
+2005-11-29  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* miscellaneous/ver.m: New file.
+	* miscellaneous/license.m: New file.
+
+2005-11-22  John W. Eaton  <jwe@octave.org>
+
+	* plot/axis.m: Use %.16g instead of just %g to format ranges for
+	gnuplot set command.
+
+2005-11-15  John W. Eaton  <jwe@octave.org>
+
+	* general/shiftdim.m: Doc fix.
+
+2005-11-07  Keith Goodman  <kwgoodman@gmail.com>
+
+	* set/unique.m: Doc string fix.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (distclean, maintainer-clean):
+	Also remove autom4te.cache directory.
+	From Quentin Spencer  <qspencer@ieee.org>.
+
+2005-10-28  John W. Eaton  <jwe@octave.org>
+
+	* general/shiftdim.m: Compatibility fix for row vectors.
+	Correct check for non-scalar non-integer shift.  For positive
+	N, shift is remainder of N and number of dims.  Always return NS.
+	Simplify.
+
+2005-10-18  Keith Goodman  <kwgoodman@gmail.com>
+
+	* general/randperm.m: Improve compatibility by allowing input
+	value of zero.
+
+2005-10-13  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt__.m, plot/__errplot__.m, plot/replot.m:
+	If in multiplot mode, clear plot before issuing new plot command.
+
+	* plot/__setup_plot__.m: New function.
+	* plot/__plt__.m, plot__errplot__.m: Use it.
+	Handle multiplot data and offsets here.
+
+	* plot/__plot_globals__.m: Also keep track of multiplot options.
+	Move initialization to __setup_plot__.m.
+
+	* plot/subplot.m: Multiplot globals now in __plot_globals__.m.
+	Don't reset gnuplot_command_replot.
+
+	* plot/replot.m: Handle multiplot data and offsets here.
+	* plot__axis_label__.m, plot/axis.m, plot/grid.m,
+	plot/plot_border.m, plot/plot.m, plot/plot_title.m,
+	plot/top_title.m: Call replot, not __gnuplot_replot__.
+
+2005-10-12  John W. Eaton  <jwe@octave.org>
+
+	* plot/figure.m: Handle __current_figure__, not gnuplot details.
+
+2005-10-04  Rafael Laboissiere  <rafael@debian.org>
+
+	* binoinv.m, chi2pdf.m, frnd.m, poissinv.m, tinv.m, trnd.m,
+	weibrnd.m: Removed calls and references to deprecated _pdf and
+	_inv functions.
+	* chi2pdf.m: Fixed typos in the documentation.
+
+2005-09-28  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/single.m: New function.
+
+	* statistics/base/unidrnd.m: New function.
+
+2005-09-27  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/dir.m: Filename never includes directory part.
+
+2005-09-22  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/residue.m: Use logical indexing instead of find..
+
+2005-09-22  Julius Smith  <jos@ccrma.stanford.edu>
+
+	* polynomial/residue.m: Avoid division by zero for pure imaginary
+	and zero poles.
+
+2005-09-22  Bill Denney  <denney@seas.upenn.edu>
+
+	* strings/deblank.m: Handle cell arrays.
+	* strings/split.m: New argument, N, to limit number of splits.
+
+2005-09-22  Miroslaw Kwasniak  <mirek@zind.ikem.pwr.wroc.pl>
+
+	* plot/__pltopt1__.m: Handle plot colors "w" and "k" separately.
+
+2005-09-20  "Orestes Mas"  <orestes@tsc.upc.edu>
+
+	* control/base/rlocus.m: Doc fix.
+
+2005-09-20  John W. Eaton  <jwe@octave.org>
+
+	* general/isvector.m: Improve compatibility.
+
+	* general/postpad.m: Allow first argument to be a scalar.
+	Allow padding to extend dimensionality.
+	* general/prepad.m: Likewise.
+
+2005-09-14  Daniel  <durbano@shbano.com>
+
+	* statistics/tests/bartlett_test.m, linear-algebra/cross.m,
+	statistics/distributions/discrete_cdf.m, general/fliplr.m,
+	/control/base/dgram.m: Doc string fixes.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-09-12  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* saveimage.m: Do not ignore most significant bit when writing
+	black and white images to file.
+
+2005-09-07  Bill Denney  <denney@seas.upenn.edu>
+
+	* audio/playaudio.m, control/base/__bodquist__.m,
+	control/base/lqg.m, control/obsolete/dezero.m,
+	control/system/__syschnamesl__.m, control/system/__sysconcat__.m,
+	control/system/c2d.m, control/system/cellidx.m,
+	control/system/d2c.m, control/system/dmr2d.m,
+	control/system/is_signal_list.m, control/system/listidx.m,
+	control/system/ss.m, control/system/sysappend.m,
+	control/system/sysconnect.m, control/system/sysdup.m,
+	control/system/sysgetsignals.m, control/system/sysidx.m,
+	control/system/sysprune.m, control/system/syssetsignals.m,
+	control/system/tfout.m, control/system/zpout.m,
+	control/util/prompt.m, control/util/sortcom.m,
+	control/util/strappend.m, finance/fv.m, finance/nper.m,
+	finance/pmt.m, finance/pv.m, finance/rate.m, general/diff.m,
+	general/num2str.m, general/repmat.m, general/sortrows.m,
+	general/strerror.m, image/colormap.m, image/imshow.m,
+	image/loadimage.m, image/saveimage.m, linear-algebra/norm.m,
+	miscellaneous/fileparts.m, miscellaneous/popen2.m,
+	plot/__axis_label__.m, plot/__errcomm__.m, plot/__plt1__.m,
+	plot/__plt2__.m, plot/__plt__.m, plot/__pltopt1__.m,
+	plot/__pltopt__.m, plot/axis.m, plot/bottom_title.m, plot/close.m,
+	plot/grid.m, plot/hist.m, plot/plot_border.m, plot/polar.m,
+	plot/print.m, plot/title.m, plot/top_title.m,
+	polynomial/polyout.m, set/unique.m, signal/freqz.m, signal/stft.m,
+	statistics/base/mean.m, statistics/base/moment.m,
+	statistics/tests/cor_test.m,
+	statistics/tests/kolmogorov_smirnov_test.m,
+	statistics/tests/kolmogorov_smirnov_test_2.m,
+	statistics/tests/prop_test_2.m, statistics/tests/sign_test.m,
+	statistics/tests/t_test.m, statistics/tests/t_test_2.m,
+	statistics/tests/t_test_regression.m, statistics/tests/u_test.m,
+	statistics/tests/var_test.m, statistics/tests/welch_test.m,
+	statistics/tests/wilcoxon_test.m, statistics/tests/z_test.m,
+	statistics/tests/z_test_2.m, strings/base2dec.m, strings/blanks.m,
+	strings/deblank.m, strings/dec2base.m, strings/index.m,
+	strings/rindex.m, strings/split.m, strings/str2mat.m,
+	strings/str2num.m, strings/strcat.m, strings/strcmpi.m,
+	strings/strncmp.m, strings/strrep.m, strings/substr.m:
+	Avoid deprecated functions.  Use ischar instead of isstr.  Use
+	isvector instead of is_vector.  Use isstruct instead of
+	is_struct.  Use char instead of setstr.
+
+2005-08-31  Daniel  <durbano@shbano.com>
+
+	* special-matrix/invhilb.m, statistics/base/iqr.m,
+	control/system/is_controllable.m, set/ismember.m: Doc fixes.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-08-29  Bill Denney  <denney@seas.upenn.edu>
+
+	* image/saveimage.m: Open output file in binary mode.
+
+	* miscellaneous/bug_report.m: Open prefs file in text mode.
+
+2005-08-16  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/computer.m: Handle optional maxsize and endian
+	outputs.
+
+2005-08-15  John W. Eaton  <jwe@octave.org>
+
+	* strings/strcat.m: Allow single argument.
+
+2005-07-18  John W. Eaton  <jwe@octave.org>
+
+	* strings/strcmp.m: Delete.
+
+2005-07-13  John W. Eaton  <jwe@octave.org>
+
+	* deprecated/hypergeometric_rnd.m: Preserve compatibility with old
+	versions of Octave.
+
+2005-07-13  Ben Barrowes  <barrowes@alum.mit.edu>
+
+	* statistics/distributions/betacdf.m: Rename from beta_cdf.m.
+	* statistics/distributions/betainv.m: Rename from beta_inv.m.
+	* statistics/distributions/betapdf.m: Rename from beta_pdf.m.
+	* statistics/distributions/betarnd.m: Rename from beta_rnd.m.
+	* statistics/distributions/binocdf.m: Rename from binomial_cdf.m.
+	* statistics/distributions/binoinv.m: Rename from binomial_inv.m.
+	* statistics/distributions/binopdf.m: Rename from binomial_pdf.m.
+	* statistics/distributions/binornd.m: Rename from binomial_rnd.m.
+	* statistics/distributions/chi2cdf.m: Rename from chisquare_cdf.m.
+	* statistics/distributions/chi2inv.m: Rename from chisquare_inv.m.
+	* statistics/distributions/chi2pdf.m: Rename from chisquare_pdf.m.
+	* statistics/distributions/chi2rnd.m: Rename from chisquare_rnd.m.
+	* statistics/distributions/expcdf.m: Rename from exponential_cdf.m.
+	* statistics/distributions/expinv.m: Rename from exponential_inv.m.
+	* statistics/distributions/exppdf.m: Rename from exponential_pdf.m.
+	* statistics/distributions/exprnd.m: Rename from exponential_rnd.m.
+	* statistics/distributions/fcdf.m: Rename from f_cdf.m.
+	* statistics/distributions/finv.m: Rename from f_inv.m.
+	* statistics/distributions/fpdf.m: Rename from f_pdf.m.
+	* statistics/distributions/frnd.m: Rename from f_rnd.m.
+	* statistics/distributions/gamcdf.m: Rename from gamma_cdf.m.
+	* statistics/distributions/gaminv.m: Rename from gamma_inv.m.
+	* statistics/distributions/gampdf.m: Rename from gamma_pdf.m.
+	* statistics/distributions/gamrnd.m: Rename from gamma_rnd.m.
+	* statistics/distributions/geocdf.m: Rename from geometric_cdf.m.
+	* statistics/distributions/geoinv.m: Rename from geometric_inv.m.
+	* statistics/distributions/geopdf.m: Rename from geometric_pdf.m.
+	* statistics/distributions/geornd.m: Rename from geometric_rnd.m.
+	* statistics/distributions/hygecdf.m: Rename from hypergeometric_cdf.m.
+	* statistics/distributions/hygeinv.m: Rename from hypergeometric_inv.m.
+	* statistics/distributions/hygepdf.m: Rename from hypergeometric_pdf.m.
+	* statistics/distributions/hygernd.m: Rename from hypergeometric_rnd.m.
+	* statistics/distributions/logncdf.m: Rename from lognormal_cdf.m.
+	* statistics/distributions/logninv.m: Rename from lognormal_inv.m.
+	* statistics/distributions/lognpdf.m: Rename from lognormal_pdf.m.
+	* statistics/distributions/lognrnd.m: Rename from lognormal_rnd.m.
+	* statistics/distributions/normcdf.m: Rename from normal_cdf.m.
+	* statistics/distributions/norminv.m: Rename from normal_inv.m.
+	* statistics/distributions/normpdf.m: Rename from normal_pdf.m.
+	* statistics/distributions/normrnd.m: Rename from normal_rnd.m.
+	* statistics/distributions/poisscdf.m: Rename from poisson_cdf.m.
+	* statistics/distributions/poissinv.m: Rename from poisson_inv.m.
+	* statistics/distributions/poisspdf.m: Rename from poisson_pdf.m.
+	* statistics/distributions/poissrnd.m: Rename from poisson_rnd.m.
+	* statistics/distributions/tcdf.m: Rename from t_cdf.m.
+	* statistics/distributions/tinv.m: Rename from t_inv.m.
+	* statistics/distributions/tpdf.m: Rename from t_pdf.m.
+	* statistics/distributions/trnd.m: Rename from t_rnd.m.
+	* statistics/distributions/unifcdf.m: Rename from unifoxorm_cdf.m.
+	* statistics/distributions/unifinv.m: Rename from uniform_inv.m.
+	* statistics/distributions/unifpdf.m: Rename from uniform_pdf.m.
+	* statistics/distributions/unifrnd.m: Rename from uniform_rnd.m.
+	* statistics/distributions/weibcdf.m: Rename from weibull_cdf.m.
+	* statistics/distributions/weibinv.m: Rename from weibull_inv.m.
+	* statistics/distributions/weibpdf.m: Rename from weibull_pdf.m.
+	* statistics/distributions/wienrnd.m: Rename from wiener_rnd.m.
+
+	* deprecated/beta_cdf.m, deprecated/beta_inv.m,
+	deprecated/beta_pdf.m, deprecated/beta_rnd.m,
+	deprecated/binomial_cdf.m, deprecated/binomial_inv.m,
+	deprecated/binomial_pdf.m, deprecated/binomial_rnd.m,
+	deprecated/chisquare_cdf.m, deprecated/chisquare_inv.m,
+	deprecated/chisquare_pdf.m, deprecated/chisquare_rnd.m,
+	deprecated/exponential_cdf.m, deprecated/exponential_inv.m,
+	deprecated/exponential_pdf.m, deprecated/exponential_rnd.m,
+	deprecated/f_cdf.m, deprecated/f_inv.m, deprecated/f_pdf.m,
+	deprecated/f_rnd.m, deprecated/gamma_cdf.m,
+	deprecated/gamma_inv.m, deprecated/gamma_pdf.m,
+	deprecated/gamma_rnd.m, deprecated/geometric_cdf.m,
+	deprecated/geometric_inv.m, deprecated/geometric_pdf.m,
+	deprecated/geometric_rnd.m, deprecated/hypergeometric_cdf.m,
+	deprecated/hypergeometric_inv.m, deprecated/hypergeometric_pdf.m,
+	deprecated/hypergeometric_rnd.m, deprecated/lognormal_cdf.m,
+	deprecated/lognormal_inv.m, deprecated/lognormal_pdf.m,
+	deprecated/lognormal_rnd.m, deprecated/normal_cdf.m,
+	deprecated/normal_inv.m, deprecated/normal_pdf.m,
+	deprecated/normal_rnd.m, deprecated/poisson_cdf.m,
+	deprecated/poisson_inv.m, deprecated/poisson_pdf.m,
+	deprecated/poisson_rnd.m, deprecated/t_cdf.m, deprecated/t_inv.m,
+	deprecated/t_pdf.m, deprecated/t_rnd.m, deprecated/uniform_cdf.m,
+	deprecated/uniform_inv.m, deprecated/uniform_pdf.m,
+	deprecated/uniform_rnd.m, deprecated/weibull_cdf.m,
+	deprecated/weibull_inv.m, deprecated/weibull_pdf.m,
+	deprecated/wiener_rnd.m: New files.
+
+2005-07-08  John W. Eaton  <jwe@octave.org>
+
+	* statistics/distributions/weibrnd.m: Rename from weibull_rnd.m.
+	* deprecated/weibull_rnd.m: New file.
+
+2005-07-08  cctsim  <cctsim@yahoo.co.uk>
+
+	* strings/dec2base.m: Allow matrix arguments.
+
+2005-07-08  John W. Eaton  <jwe@octave.org>
+
+	* plot/__errplot__.m: Use __plot_globals__.
+	* plot/__plt__.m: Likewise.
+	* plot/figure.m: Likewise.
+
+	* plot/hold.m: New file.
+	* plot/ishold.m: New file.
+	* plot/__plot_globals__.m: New file.
+
+2005-07-05  cctsim  <cctsim@yahoo.co.uk>
+
+	* strings/dec2base.m: Don't remove all leading zeros if result is zero.
+
+2005-07-05  John W. Eaton  <jwe@octave.org>
+
+	* strings/findstr.m: Return [] for no matches.
+
+2005-06-17  Keith Goodman  <kwgoodman@gmail.com>
+
+	* miscellaneous/tic.m: Fix doc string.
+
+2005-06-15  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/polyfit.m: Force return value to be a row vector.
+
+2005-06-15  Tom Holroyd  <tomh@kurage.nimh.nih.gov>
+
+	* general/isequal.m: Correct nargin check.
+
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+	* general/isvector.m: Handle N-d arrays.
+	From Bill Denney <denney@seas.upenn.edu>.
+
+2005-06-02  Ben Barrowes  <barrowes@alum.mit.edu>
+
+	* plot/meshgrid.m: Handle 3 input arguments.
+
+2005-06-02  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/freqz.m: Use correct calculations when given a vector of
+	frequencies.  Improve accuracy of returned frequency vector.
+	Improve speed for medium length filters (at a slight cost for slow
+	filters).  Add test cases.
+
+2005-05-27  "Dmitri A. Sergatskov"  <dasergatskov@gmail.com>
+
+	* plot/loglog.m: Fix set commands.
+
+2005-05-25  John W. Eaton  <jwe@octave.org>
+
+	* plot/sombrero.m: Default n to 41 if nargin == 0.
+
+2005-05-24  John W. Eaton  <jwe@octave.org>
+
+	* statistics/tests/anova.m: Use mean (y(:)) to compute total_mean.
+
+	* strings/strncmp.m: New file, from Tom Holroyd
+	<tomh@kurage.nimh.nih.gov>.
+
+	* strings/strcmp.m: Return logical values in all cases.
+
+2005-05-23  John W. Eaton  <jwe@octave.org>
+
+	* plot/orient.m: New file.  Adapt to Octave coding style.
+	Texinfoize doc string.
+
+	* plot/print.m: New file.  Adapt to Octave coding style. Include
+	PKG_ADD command.  Use set terminal consistently	throughout.  Use
+	set terminal push/pop and unconditionally set output to screen
+	when done to avoid requiring gget.  Use a cell array for dev_list
+	and cellidx to search for items in the list.  Delete local
+	variable endl.  Don't set and restore automatic_replot.  Use {}
+	instead of nth to index varargin.  Delete local variable
+	va_arg_cnt.
+
+2005-05-18  John W. Eaton  <jwe@octave.org>
+
+	* general/num2str.m: Return early if X is a character string.
+
+2005-05-11  John W. Eaton  <jwe@octave.org>
+
+	* strings/findstr.m: Allow non-string arguments for compatiblity.
+	From Tom Holroyd <tomh@kurage.nimh.nih.gov>.
+
+	* plot/polar.m: Don't call __pltopt__ here.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* mkdoc: Print header message.
+
+2005-04-28  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CONFIG_SRCDIR): Look for startup/inputrc, not
+	startup/octaverc.
+
+2005-04-28  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* image/imshow.m: Handle various image depths and 3d RGB images.
+	(__im_numeric_limits__): New internal function.
+
+2005-04-28  toni saarela  <toni.saarela@helsinki.fi>
+
+	* statistics/tests/anova.m: Compute total_mean as mean of all
+	data, not mean of group_mean.
+
+2005-04-28  John W. Eaton  <jwe@octave.org>
+
+	* startup/local-rcfile: New file.
+	* startup/main-rcfile: Rename from startup/octaverc.
+	* startup/Makefile.in (SOURCES): Add inputrc to the list.
+	(install install-strip): Install main-rcfile in $(fcnfiledir)/startup.
+	Install local-rcfile in $(localfcnfiledir)/startup.
+
+2005-04-28  Keith Goodman  <kwgoodman@gmail.com>
+
+	* startup/inputrc: New file.
+	* startup/octaverc: Configure readline using inputrc from
+	startupfiledir.
+	* startup/Makefile.in (install, install-strip): Install octaverc
+	in $(fcnfiledir)/startup.
+
+2005-04-27  John W. Eaton  <jwe@octave.org>
+
+	* optimization/qp.m: Define n_in after removing -Inf bounds from Ain.
+
+2005-04-21  John W. Eaton  <jwe@octave.org>
+
+	* optimization/glpk.m: Handle SENSE argument.
+
+	* optimization/qp.m, optimization/sqp.m: New files.
+
+2005-04-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (clean, distclean, maintainer-clean):
+	Avoid duplication in rules.
+
+2005-03-28  John W. Eaton  <jwe@octave.org>
+
+	* plot/contour.m, plot/mesh.m: Continue to use __gnuplot_raw__ for
+	setting {no,}parametric.
+	* plot/figure.m: Likewise, for setting terminal type.
+
+	*  __axis_label__.m:, plot/axis.m, plot/bottom_title.m,
+	plot/contour.m, plot/figure.m, plot/multiplot.m, plot/mplot.m,
+	plot/plot_border.m, plot/subplot.m, plot/subwindow.m,
+	plot/title.m, plot/top_title.m: Avoid eval.
+
+2005-03-28  Dmitri A. Sergatskov  <dasergatskov@gmail.com>
+
+	* plot/__axis_label__.m, plot/axis.m, plot/grid.m,
+	plot/plot_border.m, plot/replot.m, plot/title.m, plot/top_title.m:
+	Use __gnuplot_replot__ instead of replot.
+
+	* plot/__axis_label__.m, plot/axis.m, plot/bottom_title.m,
+	plot/contour.m, plot/errorbar.m, plot/figure.m, plot/grid.m,
+	plot/loglogerr.m, plot/loglog.m, plot/mesh.m, plot/mplot.m,
+	plot/multiplot.m, plot/oneplot.m, plot/plot_border.m, plot/plot.m,
+	plot/polar.m, plot/semilogxerr.m, plot/semilogx.m,
+	plot/semilogyerr.m, plot/semilogy.m, plot/shg.m, plot/subplot.m,
+	plot/subwindow.m, plot/title.m, plot/top_title.m:
+	Use __gnuplot_raw__ instead of __gnuplot_set__.
+
+	* plot/replot.m: Use __gnuplot_replot__, not __greplot__.
+
+2005-03-24  John W. Eaton  <jwe@octave.org>
+
+	* optimization/glpkmex.m: Texinfoize Doc string.
+	* optimization/glpk.m: Likewise.
+	Allow VARTYPE and CTYPE to be row or column vectors of characters
+	(row vectors are orginary character strings).
+	* optimization/glpkparam.m: Delete.
+
+2005-03-24  Quentin Spencer  <qspencer@ieee.org>
+
+	* statistics/base/mean.m: Allow DIMS arg greater than the number
+	of dimensions of X.
+
+2005-03-23  John W. Eaton  <jwe@octave.org>
+
+	* general/tril.m, general/triu.m: Return value of same class as
+	argument.
+
+	* optimization/glpk.m: Simplify interface.  By default, solve
+	standard LP min C'*x s.t. A*x = b, x >= 0.
+	* optimization/glpkmex.m: New file.
+
+2005-03-22  John W. Eaton  <jwe@octave.org>
+
+	* configure.in (AC_CONFIG_FILES): Add optimization/Makefile to the
+	list.
+
+	* optimization/glpk.m: Adapt to Octave coding style.
+	No need for varargout or varargin.
+	Print usage message if nargin > 11.
+	Allow any value of nargout.
+	Use repmat (C, nr, nc) instead of char (C * ones (nr, nc)).
+	Avoid looping when checking character classes.
+
+	* optimization: New directory.
+	* Makefile.in (SUBDIRS): Add it to the list.
+	* optimization/Makefile.in: New file.
+	* optimization/glpk.m, optimization/glpkparams.m,
+	optimization/glpktest1, optimization/glpktest2: New files.
+
+2005-03-16  S�ren Hauberg  <soren@hauberg.org>
+
+	* strings/split.m: Quick return for empty second arg.
+	Improve warning for multi-line strings.
+	Speed up by avoiding sprintf in loop and eval.
+
+2005-03-16  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* polynomial/polyderiv.m : Accept a*b, a/b.  Auto-reduce common terms.
+	* polynomial/polyder.m: Ditto.
+	* polynomial/polygcd.m: New function.
+
+2005-03-16  John W. Eaton  <jwe@octave.org>
+
+	* control/base/__stepimp__.m, control/base/bode.m,
+	control/base/frdemo.m, control/base/nichols.m,
+	control/base/nyquist.m, control/base/pzmap.m,
+	control/base/rldemo.m, control/base/rlocus.m,
+	control/hinf/dhinfdemo.m, control/hinf/hinfdemo.m,
+	plot/__axis_label__.m, plot/__errplot__.m, plot/__plt__.m,
+	plot/axis.m, plot/bar.m, plot/bottom_title.m, plot/contour.m,
+	plot/errorbar.m, plot/figure.m, plot/grid.m, plot/loglog.m,
+	plot/loglogerr.m, plot/mesh.m, plot/meshgrid.m, plot/mplot.m,
+	plot/multiplot.m, plot/oneplot.m, plot/plot.m, plot/plot_border.m,
+	plot/polar.m, plot/semilogx.m, plot/semilogxerr.m,
+	plot/semilogy.m, plot/semilogyerr.m, plot/shg.m, plot/stairs.m,
+	plot/subplot.m, plot/subwindow.m, plot/title.m, plot/top_title.m,
+	plot/xlabel.m, quaternion/demoquat.m,
+	quaternion/qcoordinate_plot.m, signal/freqz_plot.m, sparse/spy.m,
+	statistics/base/ppplot.m, statistics/base/qqplot.m:
+	Use __gnuplot_plot__ instead of gplot, __gnuplot_splot__ instead
+	of gsplot, and __gnuplot_set__ instead of gset. Remove gplot,
+	gsplot from @seealso docs.
+
+	* plot/replot.m: New file.
+
+2005-03-15  David Bateman  <dbateman@free.fr>
+
+	* set/unique.m, set/ismember.m: Handle cell arrays.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* statistics/Makefile.in (bin-dist): Delete target.
+	(BINDISTSUBDIRS): Delete variable.
+	* control/Makefile.in: Likewise.
+
+	* audio/Makefile.in (bin-dist): Delete target.
+	(BINDISTFILES): Delete variable.
+	* control/base/Makefile.in: Likewise.
+	* control/hinf/Makefile.in: Likewise.
+	* control/obsolete/Makefile.in: Likewise.
+	* control/system/Makefile.in: Likewise.
+	* control/util/Makefile.in: Likewise.
+	* deprecated/Makefile.in: Likewise.
+	* elfun/Makefile.in: Likewise.
+	* finance/Makefile.in: Likewise.
+	* general/Makefile.in: Likewise.
+	* image/Makefile.in: Likewise.
+	* sparse/Makefile.in: Likewise.
+	* io/Makefile.in: Likewise.
+	* plot/Makefile.in: Likewise.
+	* Makefile.in: Likewise.
+	* miscellaneous/Makefile.in: Likewise.
+	* linear-algebra/Makefile.in: Likewise.
+	* polynomial/Makefile.in: Likewise.
+	* quaternion/Makefile.in: Likewise.
+	* set/Makefile.in: Likewise.
+	* signal/Makefile.in: Likewise.
+	* specfun/Makefile.in: Likewise.
+	* special-matrix/Makefile.in: Likewise.
+	* startup/Makefile.in: Likewise.
+	* statistics/base/Makefile.in: Likewise.
+	* statistics/distributions/Makefile.in: Likewise.
+	* statistics/models/Makefile.in: Likewise.
+	* statistics/tests/Makefile.in: Likewise.
+	* strings/Makefile.in: Likewise.
+	* time/Makefile.in: Likewise.
+
+2005-03-08  John W. Eaton  <jwe@octave.org>
+
+	* general/repmat.m: Correctly diagnose 3-argument non-scalar
+	dimensions case.  From Matthew A Swabey <mas01r@ecs.soton.ac.uk>.
+
+2005-03-04  John W. Eaton  <jwe@octave.org>
+
+	* plot/clg.m: New file.
+
+2005-03-03  John W. Eaton  <jwe@octave.org>
+
+	* general/isequal.m, general/sortrows.m, set/ismember.m,
+	set/setdiff.m, strings/str2double.m, strings/strmatch.m,
+	strings/strcmpi.m:
+	New files from Octave-forge.  Adapt to Octave coding standards.
+
+2005-03-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* statistics/distributions/binomial_pdf.m: Extend the feasible
+	computation range.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	Sparse merge.
+
+	2005-01-23  David Bateman  <dbateman@free.fr>
+
+	* sparse/randperm.m: Delete duplicate randperm.m.
+
+	2005-01-10  John W. Eaton  <jwe@octave.org>
+
+	* sparse/Makefile.in: New file.
+	* configure.in (AC_CONFIG_FILES): Add sparse/Makefile to the list.
+
+	2005-01-07  David Bateman  <dbateman@free.fr>
+
+	* set/unique.m: import file from octave-forge.
+
+	2005-01-05  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: include sparse directory in SUBDIRS.
+
+	2004-12-30  John W. Eaton  <jwe@octave.org>
+
+	* sparse/nzmax.m: Delete (there is an nzmax function in
+	src/DLD-FUNCTIONS/sparse.cc).
+
+	2004-12-28  John W. Eaton  <jwe@octave.org>
+
+	Merge of sparse code from David Bateman <dbateman@free.fr> and
+	Andy Adler <adler@site.uottawa.ca>.
+
+	* sparse/colperm.m, sparse/nonzeros.m, sparse/nzmax.m,
+	sparse/randperm.m, sparse/spalloc.m, sparse/spconvert.m,
+	sparse/spdiags.m, sparse/speye.m, sparse/spfun.m, sparse/sphcat.m,
+	sparse/spones.m, sparse/sprand.m, sparse/sprandn.m,
+	sparse/spstats.m, sparse/spvcat.m, sparse/spy.m: New files.
+
+	* sparse: New directory.
+
+2005-02-22  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/residue.m: Force prepad to always create row vectors.
+
+	* polynomial/poly.m: Quick return if m is 0.
+	From Carmen Navarrete <carmen.navarrete@uam.es>.
+
+2005-02-21  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/poisson_rnd.m: fix for lambda of zero.
+	From Mark van Rossum <mvanross@inf.ed.ac.uk>.
+	Fix for row vectors with at least one element of lambda not in
+	(0, Inf).
+
+2005-02-21  John W. Eaton  <jwe@octave.org>
+
+	* statistics/base/qqplot.m: Use feval instead of eval.
+
+	* plot/grid.m, plot/plot_border.m, plot/title.m, plot/top_title.m,
+	plot/__axis_label__.m: Issue replot command.
+
+2005-02-09  John W. Eaton  <jwe@octave.org>
+
+	* polynomial/polyderiv.m: Force P to be a row vector.
+
+2005-02-08  John W. Eaton  <jwe@octave.org>
+
+	* strings/dec2base.m: Don't delete leading zero if third arg is
+	provided and len <= computed max_len.
+
+2005-01-27  David Bateman  <dbateman@free.fr>
+
+	* strings/dec2base.m: Be even more careful about handling all digits.
+
+2005-01-27  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* strings/dec2base.m: Use integer arithmetic to count number of digits.
+
+2005-01-27  Benjamin Hall  <benjamin.hall@pw.utc.com>
+
+	* statistics/base/median.m: Make it work for the scalar case too.
+
+2005-01-25  Daniel J Sebald  <daniel.sebald@ieee.org>
+
+	* plot/__plt__.m: Initialize fmt and sep outside of loop.
+	Simplify logic for decoding args.
+
+2005-01-24  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plr__.m, plot/__plr2__.m: Pass name of caller to __plt__.
+
+	* plot/__plt__.m: No need to save and reset hold state now.
+	(first_plot): Delete unused variable.
+
+	* plot/__plr2__.m, plot/__plt2__.m: Improve diagnostics.
+
+	* plot/__plr__.m: Use __plt__, not specific __pltXX__ functions.
+	* plot/__plt1__.m, plot/__plt2__.m, plot/__plt2mm__.m,
+	plot/__plt2mv__.m, plot/__plt2ss__.m, plot/__plt2vm__.m,
+	plot/__plt2vv__.m:
+	Return data and gnuplot commands instead of evaluating them.
+	* plot/__plt__.m: Handle evaluation of all gnuplot commands here.
+	Based on changes from Daniel J Sebald <daniel.sebald@ieee.org>.
+
+2005-01-18  John W. Eaton  <jwe@octave.org>
+
+	* linear-algebra/cross.m: Allocate idx1 before use.
+
+2004-12-08  Heikki Junes  <Heikki.Junes@hut.fi>
+
+	* statistics/base/range.m: Fix varargin usage.
+
+2004-12-02  Pascal A. Dupuis  <Pascal.Dupuis@esat.kuleuven.ac.be>
+
+	* strings/deblank.m: Remove all trailing whitespace (check with
+	isspace), not just SPC.
+
+2004-12-02  Balint Reczey  <balint_reczey@yahoo.com>
+
+	* statistics/base/moment.m: Fix argument parsing for N-d arrays.
+
+2004-11-09  John W. Eaton  <jwe@octave.org>
+
+	* miscellaneous/fileparts.m: Allow filenames with no extension.
+	From Julius Smith <jos@ccrma.stanford.edu>.
+
+2004-11-08  John W. Eaton  <jwe@octave.org>
+
+	* plot/__plt2vm__.m: Delete debugging statement.
+	From Dmitri A. Sergatskov <dmitri@unm.edu>.
+
+2004-11-04  John W. Eaton  <jwe@octave.org>
+
+	* plot/hist.m: Always return row vectors for vector args.
+
+2004-09-23  John W. Eaton  <jwe@octave.org>
+
+	* strings/strcmp.m: If args are not strings or cell arrays of
+	strings, return zero instead of reporting an error.
+
+2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
+
+	* control/base/analdemo.m, control/base/are.m, control/base/bddemo.m,
+	control/base/controldemo.m, control/base/damp.m, control/base/dare.m,
+	control/base/dcgain.m, control/base/dgram.m, control/base/dlyap.m,
+	control/base/dre.m, control/base/frdemo.m, control/base/gram.m,
+	control/base/impulse.m, control/base/lqp.m, control/base/obsv.m,
+	control/base/pzmap.m, control/base/rldemo.m, control/hinf/h2norm.m,
+	control/hinf/hinfsyn.m, control/hinf/hinfsyn_ric.m,
+	control/hinf/is_dgkf.m, control/system/c2d.m,
+	control/system/is_detectable.m, control/system/is_sample.m,
+	control/system/is_siso.m, control/system/is_stable.m,
+	control/system/ss2sys.m, control/system/ss.m, control/system/sys2ss.m,
+	control/system/sys2tf.m, control/system/sys2zp.m,
+	control/system/sysappend.m, control/system/sysconnect.m,
+	control/system/sysdisc.m, control/system/sysdup.m,
+	control/system/sysgetsignals.m, control/system/sysmult.m,
+	control/system/syssetsignals.m, control/system/syssub.m,
+	control/system/tf2sys.m, control/system/ugain.m,
+	control/system/zp2ss.m, control/system/zp2sys.m,
+	control/system/zp2tf.m, control/util/axis2dlim.m, polynomial/roots.m,
+	special-matrix/toeplitz.m: Fix typos in doc strings.
+
+	* control/base/are.m, control/base/dare.m, control/base/lsim.m,
+	control/base/ltifr.m, control/base/place.m,control/base/tzero2.m,
+	control/base/tzero.m, control/hinf/hinf_ctr.m, control/hinf/wgt1o.m,
+	ontrol/system/is_abcd.m, control/system/parallel.m,
+	control/system/ss2tf.m, control/system/ss2zp.m, control/system/ss.m,
+	control/system/sysappend.m, control/system/sysconnect.m,
+	control/system/sysdup.m, control/system/sysgroup.m,
+	control/system/sysprune.m, control/system/sysreorder.m,
+	control/system/sysscale.m, control/system/syssub.m,
+	control/system/tf2ss.m, control/system/tf2zp.m, control/util/zgfmul.m,
+	control/util/zginit.m, control/util/zgscal.m, elfun/acoth.m,
+	polynomial/polyout.m, specfun/log2.m:
+	Add output arguments in doc strings.
+
+	* control/base/are.m, control/base/bode_bounds, control/base/bode.m,
+	control/base/__bodquist__.m, control/base/ctrb.m, control/base/dare.m,
+	control/base/DEMOcontrol.m, control/base/dlyap.m, control/base/dre.m,
+	control/base/freqchkw.m, control/base/__freqresp__.m,
+	control/base/__freqresp__.m, control/base/lqp.m, control/base/lqr.m,
+	contol/base/lsim.m, control/base/lyap.m, control/base/nyquist.m,
+	control/base/obsv.m, control/base/place.m, control/base/pzmap.m,
+	control/base/__stepimp__.m, control/base/step.m, control/base/tzero2.m
+	control/base/tzero.m, control/hinf/dhinfdemo.m, control/hinf/h2norm.m,
+	control/hinf/h2syn.m, control/hinf/hinfdemo.m,
+	control/hinf/hinfnorm.m, control/hinf/hinfsyn_chk.m,
+	control/hinf/hinfsyn.m, control/hinf/is_dgkf.m,
+	control/obsolete/syschnames.m, control/obsolete/syschnames.m,
+	control/system/c2d.m, control/system/is_abcd.m,
+	control/system/is_controllable.m, control/system/is_detectable.m,
+	control/system/is_observable.m, control/system/is_stable.m,
+	control/system/jet707.m, control/system/ord2.m,
+	control/system/starp.m, control/system/sys2fir.m,
+	control/system/sys2ss.m, control/system/sys2tf.m,
+	control/system/sys2zp.m, control/system/syscont.m,
+	control/system/sysdisc.m, control/system/sysdup.m,
+	control/system/sysgettype.m, control/system/sysgroup.m,
+	control/system/sysmult.m, control/system/sysprune.m,
+	control/system/sysreorder.m, control/system/sysscale.m,
+	control/system/syssetsignals.m, control/system/sysupdate.m,
+	control/system/tf2ss.m, control/system/tf2sys.m,
+	control/system/zp2ss.m, control/system/zp2sys.m,
+	control/util/axis2dlim.m, control/util/prompt.m,
+	control/util/zgfmul.m, control/util/zginit.m,
+	control/util/__zgpbal__.m, control/util/zgscal.m:
+	Use @var, @strong, @command, @math, @acronym, @table and @cite
+	in doc strings.
+
+	* control/base/bode_bounds.m, control/base/ctrb.m, control/base/dre.m,
+	control/base/dgram.m, control/base/dlyap.m, control/base/ltifr.m,
+	control/base/nyquist.m, control/base/obsv.m, control/base/tzero.m,
+	control/hinf/dgkfdemo.m, control/hinf/dhinfdemo.m,
+	control/hinf/h2norm.m, control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
+	control/hinf/hinfdemo.m, control/hinf/hinfnorm.m,
+	control/hinf/hinfsyn_chk.m, control/hinf/hinfsyn.m,
+	control/hinf/wgt1o.m, control/obsolete/syschnames.m,
+	control/system/c2d.m, control/system/fir2sys.m,
+	control/system/is_stabilizable.m, control/system/jet707.m,
+	control/system/ord2.m, control/system/ss2tf.m, control/system/tf2ss.m,
+	control/util/zgshsr.m, polynomial/polyout.m:
+	New @tex section(s) in doc strings for better formating of printed
+	output.
+
+	* control/base/__freqresp__.m, control/base/nyquist.m,
+	control/base/__stepimp__.m, control/hinf/hinfdemo.m,
+	control/obsolete/syschnames.m, control/system/sysprune.m:
+ 	Use proper double quote marks for TeX.
+
+	* control/base/DEMOcontrol.m: Add missing ;
+
+	* control/base/nichols.m, control/base/rlocus.m,
+	control/obsolete/minfo.m, control/system/is_digital.m,
+	control/system/ss2zp.m, control/system/sysmin.m,
+	control/system/tf2zp.m, control/util/sortcom.m:
+	Convert documentation to use or more completely use Texinfo.
+
+	* control/base/rlocus.m, control/hinf/dhinfdemo.m,
+	control/hinf/hinfdemo.m, control/system/ord2.m,
+	control/system/parallel.m, control/system/ss2tf.m,
+	control/system/starp.m: Use "@group ... @end group" to avoid ascii
+	art splitting over a page boundary.
+
+	* control/hinf/dgkfdemo.m, control/hinf/dhinfdemo.m,
+	control/hinf/h2norm.m, control/hinf/h2syn.m, control/hinf/hinf_ctr.m,
+	control/hinf/hinfdemo.m, control/hinf/hinfnorm.m,
+	control/hinf/hinfsyn_chk.m, control/hinf/hinfsyn.m,
+	control/hinf/wgt1o.m, control/system/buildssic.m:
+	Use {\cal H}_\infty for H-infinity and likewise for H-2 to
+	the TeX documentation.
+
+	* control/system/is_stabilizable.m:
+	Add Copyright so that help is displayed correctly.
+
+	* special-matrix/vander.m: Octave indexes start at 1.
+
+2004-09-21  David Bateman  <dbateman@free.fr>
+
+	* general/rotdim.m: New function for rotation of an N-d array in an
+	arbitrary plane.
+
+	* general/flipdim.m: New function to flip an N-d array about an
+	arbitrary axis.
+
+2004-09-15  David Bateman  <dbateman@free.fr>
+
+	* general/bitget.m: Replace Bmax, which is undefined with bitmax
+
+2004-09-15  John W. Eaton  <jwe@octave.org>
+
+	* strings/strcmp.m: Fix typo in cell/string array case.
+	Use iscellstr to check for cells rather than iscell.
+	Improve diagnostics for invalid args.
+
+2004-09-10  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/binomial_rnd.m: Fix error for scalar n
+	and p with n > 1, and fix for matrix n and p with n == 1.
+
+	* statistics/distributions/poisson_rnd.m: Fix for matrix length,
+	due to row vs. column vector operations.
+
+2004-09-03  David Bateman  <dbateman@free.fr>
+
+	* general/repmat.m: Fix to allow logical classes.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* general/isa.m: New function, from Octave-forge.
+
+2004-08-31  David Bateman  <dbateman@free.fr>
+
+	* general/bitcmp.m, general/bitget.m, general/bitset.m: Remove
+	limitation on the use of int64 and uint64 types, and the use
+	of the eval.
+
+	* general/bitset.m: Remove superfluous cast to return type, as bug
+	in .^ with integer types is fixed.
+
+	* general/repmat.m: Adapt to allow integer types.
+
+2004-08-31  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* plot/axis.m: Don't reset axes when querying them.
+
+2004-08-27  David Bateman  <dbateman@free.fr>
+
+	* statistics/base/ranks.m: Handle non-consecutive ties.
+	Eliminate loop.
+
+2004-07-27  David Bateman  <dbateman@free.fr>
+
+	* general/num2str.m: Also insert spaces in output when precision
+	argument is supplied.
+
+2004-07-23  David Bateman  <dbateman@free.fr>
+
+	* general/bitcmp.m, general/bitget.m, general/bitset.m: New functions.
+
+2004-07-22  Etienne Grossmann  <etienne@cs.uky.edu>
+
+	* general/sub2ind.m: Make reshaping index list unnecessary.
+
+2004-07-22  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* miscellaneous/unix.m: Fix doc string.
+
+2004-07-22  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* plot/figure.m: Clarification of documentation.
+
+	* image/imshow.m: Warn for complex images.
+	Only estimate colourmap for images in [0, 65536].
+
+2004-07-22  David Bateman  <dbateman@free.fr>
+
+	* general/num2str.m: Fix the case of an all zero input.
+
+2004-06-22  Etienne Grossmann  <etienne@cs.uky.edu>
+
+	* general/ind2sub.m: Doc fix.
+
+2004-06-08  John W. Eaton  <jwe@octave.org>
+
+	* statistics/tests/kolmogorov_smirnov_test.m: Use func2str to
+	convert function handle to string for eval.
+
+2004-06-04  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* plot/errorbar.m: Remove debugging output.
+
+2004-06-03  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* plot/__pltopt__.m: Properly escape @ symbols in doc string.
+
+2004-06-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* deprecated/com2str.m: Include 'i' suffix for pure imaginary numbers.
+
+	* polynomial/polyout.m: Use parenthesis if necessary around
+	complex polynomial coefficient.
+
+	* plot/__errcomm__.m, plot/__errplot__.m: Simplify code and fix
+	the bug which causes __errplot__ to ignore the last argument.
+
+2004-06-03  David Bateman  <dbateman@free.fr>
+
+	* general/shiftdim.m: New function based on JWE code snippet.
+
+	* general/circdim.m: New function.
+
+2004-05-06  David Bateman  <dbateman@free.fr>
+
+	* general/issquare.m: Fail if ndim(x) > 2.
+
+	* linear-algebra/norm.m, linear-algebra/norm.m: Fail if ndim(x) > 2.
+
+	* linear-alegbra/cross.m, linear-algebra/dot.m: Allow matrix and
+	N-d array arguments.  Add optional dim argument to define
+	dimension along which to operate.
+
+	* linear-algebra/dmult.m: Allow N-d arrays.
+
+	* linear-algebra/vec.m: Use v(:) and not reshape.
+
+2004-04-29  David Bateman  <dbateman@free.fr>
+
+	* statistics/base/ranks.m, statistics/base/run_count.m,
+	statistics/base/studentize.m, statistics/base/kurtosis.m
+	statistics/base/statistics.m, statistics/base/skewness.m
+	statistics/base/iqr.m:
+	Make N-d array aware.  Allow optional argument to define the
+	dimension along which to operate.  Update the documentation.
+
+	* statistics/base/ranks.m: Change algorithm to use sort,
+	and adjust for the ties after.
+
+	* statistics/base/run_counts.m: Change algorithm to use
+	the a combination of diff and find, rather than a for-loop.
+
+2004-04-23  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* plot/hist.m: Correctly determine cutoffs.  New tests.
+
+2004-04-23  David Bateman  <dbateman@free.fr>
+
+	* general/int2str.m: Treat only real part of argument, and treat
+	NDArrays by stacking the slices through the matrix vertically.
+
+	* general/num2str.m: Improve format of integer matrices, and the
+	conversion of complex matrices added. Treat NDArrays by stacking
+	the slices through the matrix vertically.
+
+	* deprecated/com2str.m: Moved here from general subdirectory.
+
+2004-04-22  John W. Eaton  <jwe@octave.org>
+
+	* quaternion/qtransvmat.m: Use continuation characters to make
+	sure result is a matrix instead of a vector.  From <aklark@atdot.it>.
+
+2004-04-21  David Bateman  <dbateman@free.fr>
+
+	* elfun/lcm.m: Make N-d aware.
+
+	* general/diff.m: Make the code N-d array aware.  Allow an
+	optional argument to define the dimension along which to perform
+	the differences and allow the order of the differences to be larger
+	than the dimension itself.
+
+	* general/rot90.m, general/fliplr.m, general/flipud.m: Limit the
+	use of these functions to 1- and 2-d arrays.
+
+2004-04-16  John W. Eaton  <jwe@octave.org>
+
+	* elfun/gcd.m: Delete.
+
+2004-04-15  David Bateman  <dbateman@free.fr>
+
+	* set/create_set.m, general/is_duplicate_entry.m: Make N-d array aware.
+
+	* general/shift.m, general/prepad.m, general/postpad.m: Make N-d
+	array aware and and optional argument for the dimension along
+	which to operate.
+
+	* signal/unwrap.m: Make N-d array aware and fix optional
+	argument for the dimension to be consistent with other N-d array
+	functions.
+
+2004-04-08  David Bateman  <dbateman@free.fr>
+
+	* statistics/distributions/discrete_cdf.m,
+	statistics/distributions/discrete_inv.m,
+	statistics/distributions/discrete_pdf.m,
+	statistics/distributions/discrete_rnd.m,
+	statistics/distributions/exponential_cdf.m,
+	statistics/distributions/exponential_inv.m,
+	statistics/distributions/exponential_pdf.m,
+	statistics/distributions/exponential_rnd.m,
+	statistics/distributions/f_cdf.m,
+	statistics/distributions/f_inv.m,
+	statistics/distributions/f_pdf.m,
+	statistics/distributions/f_rnd.m,
+	statistics/distributions/geometric_cdf.m,
+	statistics/distributions/geometric_inv.m,
+	statistics/distributions/geometric_pdf.m,
+	statistics/distributions/geometric_rnd.m,
+	statistics/distributions/hypergeometric_rnd.m,
+	statistics/distributions/kolmogorov_smirnov_cdf.m,
+	statistics/distributions/laplace_cdf.m,
+	statistics/distributions/laplace_inv.m,
+	statistics/distributions/laplace_pdf.m,
+	statistics/distributions/laplace_rnd.m,
+	statistics/distributions/logistic_inv.m,
+	statistics/distributions/logistic_rnd.m,
+	statistics/distributions/lognormal_cdf.m,
+	statistics/distributions/lognormal_inv.m,
+	statistics/distributions/lognormal_pdf.m,
+	statistics/distributions/lognormal_rnd.m,
+	statistics/distributions/pascal_cdf.m,
+	statistics/distributions/pascal_inv.m,
+	statistics/distributions/pascal_pdf.m,
+	statistics/distributions/pascal_rnd.m,
+	statistics/distributions/poisson_cdf.m,
+	statistics/distributions/poisson_inv.m,
+	statistics/distributions/poisson_pdf.m,
+	statistics/distributions/poisson_rnd.m,
+	statistics/distributions/t_cdf.m,
+	statistics/distributions/t_inv.m,
+	statistics/distributions/t_pdf.m,
+	statistics/distributions/t_rnd.m,
+	statistics/distributions/weibull_cdf.m,
+	statistics/distributions/weibull_inv.m,
+	statistics/distributions/weibull_pdf.m,
+	statistics/distributions/weibull_rnd.m:
+	Allow N-d arrays.
+
+	* statistics/distributions/discrete_inv.m: Fix bug in indexing,
+	that results in NaN in places where it should not have had.
+
+	* statistics/distributions/discrete_rnd.m: New argument formats to
+	allow creating arbitrary matrices, compatiable with the other
+	*_rnd.m functions. Maintain compatibility with previous format.
+
+	* statistics/distributions/empirical_rnd.m: New argument formats
+	to allow creating arbitrary matrices, compatiable with the other
+	*_rnd.m functions. Maintain compatibility with previous
+	format.  Allow N-d arrays.
+
+	* statistics/distributions/hypergeometric_cdf.m,
+	statistics/distributions/hypergeometric_inv.m,
+	statistics/distributions/hypergeometric_pdf.m,
+	statistics/distributions/wiener_rnd.m:
+	Error for non-scalar arguments.
+
+	* statistics/distributions/pascal_rnd.m:
+	Correct for n = 1 bug, where all elements were equal.
+
+2004-04-06  David Bateman  <dbateman@free.fr>
+
+	* general/common_size.m, miscellaneous/bincoeff.m,
+	statistics/distributions/beta_cdf.m,
+	statistics/distributions/beta_inv.m,
+	statistics/distributions/beta_pdf.m,
+	statistics/distributions/beta_rnd.m,
+	statistics/distributions/binomial_cdf.m,
+	statistics/distributions/binomial_inv.m,
+	statistics/distributions/binomial_pdf.m,
+	statistics/distributions/binomial_rnd.m,
+	statistics/distributions/cauchy_cdf.m,
+	statistics/distributions/cauchy_inv.m,
+	statistics/distributions/cauchy_pdf.m,
+	statistics/distributions/cauchy_rnd.m,
+	statistics/distributions/chisquare_cdf.m,
+	statistics/distributions/chisquare_inv.m,
+	statistics/distributions/chisquare_pdf.m,
+	statistics/distributions/chisquare_rnd.m,
+	statistics/distributions/gamma_cdf.m,
+	statistics/distributions/gamma_inv.m,
+	statistics/distributions/gamma_pdf.m,
+	statistics/distributions/gamma_rnd.m,
+	statistics/distributions/normal_cdf.m,
+	statistics/distributions/normal_inv.m,
+	statistics/distributions/normal_pdf.m,
+	statistics/distributions/normal_rnd.m,
+	statistics/distributions/stdnormal_cdf.m,
+	statistics/distributions/stdnormal_pdf.m,
+	statistics/distributions/stdnormal_rnd.m,
+	statistics/distributions/uniform_cdf.m,
+	statistics/distributions/uniform_inv.m,
+	statistics/distributions/uniform_pdf.m,
+	statistics/distributions/uniform_rnd.m:
+	Allow the inputs to be N-d arrays.
+
+	* statistics/base/var.m: Update for N-d arrays.  Allow dimension arg.
+	* statistics/base/median.m: Likewise.
+
+2004-04-02  David Bateman  <dbateman@free.fr>
+
+	* statistics/base/std.m: Allow optional args for type and dim.
+	* statistics/base/center.m, statistics/base/meansq.m,
+	statistics/base/moment.m, statistics/base/range.m:
+	Update for N-d arrays.
+	* signal/fftshift.m: Fix dimensioning error.
+
+	* statistics/base/std.m: Use repmat not ones(nr,1)*mean to allow
+	N-d arrays.
+
+	* general/mod.m, general/mod.m: Allow N-d arrays with one scalar arg.
+
+	* signal/fftshift.m: Update for N-d arrays, allow optional dim arg.
+
+	* specfun/erfinv.m, general/repmat.m: Update for N-d arrays.
+
+	* control/base/bode.m, control/base/lqg.m, control/system/ss2sys.m,
+	control/system/cellidx.m, control/system/dmr2d.m control/system/ss.m,
+	control/system/sysprune.m: Doc update for usage of cell arrays.
+
+	* control/system/sysidx.m: Use cellidx and not listidx.
+
+2004-03-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__pltopt1__.m: Always add title clause to plot command with
+	default of "" (so it is off unless explicitly set by the user).
+
+2004-03-12  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* image/imshow.m: Accept "truesize" argument.
+	Ignore current colormap.  New tests and demos.
+
+2004-03-10  Volker Kuhlmann  <VolkerKuhlmann@gmx.de>
+
+	* signal/sinewave.m: Allow N to default to M.
+
+2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* signal/unwrap.m: Use "isempty (tol)" instead of "tol == []".
+
+2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/deal.m: New function.
+	Add tests from Paul Kienzle.
+
+2004-03-03  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* plot/hist.m: Compute histogram correctly for n>=30.
+
+2004-03-02  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/sinc.m: Use i(:) instead of i when checking for any nonzeros.
+
+2004-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/horzcat.m: Delete.
+	* miscellaneous/vertcat.m: Delete.
+
+2004-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/figure.m: Also look for GNUTERM in the environment and use
+	that if it is set (for OS X).  From Per Persson <persquare@mac.com>.
+
+2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/__stepimp__.m: Only call clearplot if we will be
+	doing multiple plots in the same gnuplot frame.
+
+2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/system/__sysconcat__.m, control/system/__tfl__.m,
+	control/system/cellidx.m, control/system/ss.m,
+	control/system/tf.m, control/system/zp.m: New functions.
+
+2004-02-16  Glenn Golden  <gdg@zplane.com>
+
+	* statistics/distributions/discrete_inv.m:
+	Reduce memory requirements.
+
+2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__errcomm__.m: Fix thinko in previous change.
+	From Teemu Ikonen  <tpikonen@pcu.helsinki.fi>.
+
+2004-02-16  A S Hodel  <a.s.hodel@Eng.Auburn.EDU>
+
+	* control/base/__bodquist__.m, control/base/__stepimp__.m,
+	control/base/analdemo.m, control/base/bddemo.m,
+	control/base/bode.m, control/base/dre.m, control/base/frdemo.m,
+	control/base/lqg.m, control/base/nyquist.m, control/base/place.m,
+	control/base/rldemo.m, control/base/rlocus.m,
+	control/base/tzero.m, control/hinf/dgkfdemo.m,
+	control/hinf/dhinfdemo.m, control/hinf/h2syn.m,
+	control/hinf/hinf_ctr.m, control/hinf/hinfsyn.m,
+	control/hinf/wgt1o.m, control/obsolete/dlqg.m,
+	control/obsolete/packsys.m, control/obsolete/series.m,
+	control/system/__sysdefioname__.m,
+	control/system/__sysdefstname__.m, control/system/__sysgroupn__.m,
+	control/system/__tf2sysl__.m, control/system/buildssic.m,
+	control/system/c2d.m, control/system/d2c.m,
+	control/system/dmr2d.m, control/system/fir2sys.m,
+	control/system/is_signal_list.m, control/system/is_siso.m,
+	control/system/jet707.m, control/system/listidx.m,
+	control/system/moddemo.m, control/system/ord2.m,
+	control/system/packedform.m, control/system/parallel.m,
+	control/system/ss2sys.m, control/system/sys2tf.m,
+	control/system/sys2zp.m, control/system/sysadd.m,
+	control/system/sysappend.m, control/system/sysconnect.m,
+	control/system/syscont.m, control/system/sysdimensions.m,
+	control/system/sysdisc.m, control/system/sysdup.m,
+	control/system/sysgetsignals.m, control/system/sysgettype.m,
+	control/system/sysgroup.m, control/system/sysmin.m,
+	control/system/sysmult.m, control/system/sysprune.m,
+	control/system/sysrepdemo.m, control/system/sysscale.m,
+	control/system/syssetsignals.m, control/system/syssub.m,
+	control/system/sysupdate.m, control/system/tf2sys.m,
+	control/system/ugain.m, control/system/zp2ss.m,
+	control/system/zp2sys.m, control/util/__outlist__.m,
+	control/util/__zgpbal__.m, control/util/strappend.m:
+	Use cell arrays instead of lists.
+
+2004-01-23  Stefan van der Walt  <stefan@sun.ac.za>
+
+	* plot/bar.m: Increase size of cutoff vector from xlen-1 to xlen
+	so that bar (1, 1) will work.
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__errcomm__.m: Cope with nargin now being a function.
+	* plot/__errplot__.m: Likewise.
+	* plot/__plt__.m: Likewise.
+	* plot/plot_border.m: Likewise.
+
+	* Makefile.in (distclean, maintainer-clean): Remove DOCSTRINGS,
+	not $(DOCSTRINGS).
+
+2004-01-21  Quentin Spencer  <qspencer@ieee.org>
+
+	* linear-algebra/rank.m: Allow rank ([]) to return 0, same as
+	rank ([], tol).
+
+2004-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* elfun/acot.m: Return atan (1./z).
+	From Gregory Vanuxem <g.vanuxem@wanadoo.fr>.
+
+	* miscellaneous/dir.m: New file.
+
+	* general/num2str.m: Use "%d" as format if values are ints with
+	magnitude less than 1e10.
+
+2004-01-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/num2str.m: If single arg is string, return it.
+
+	* miscellaneous/not.m: New file.
+
+	* miscellaneous/unix.m: New file.
+
+	* miscellaneous/isunix.m: New file.
+	* miscellaneous/ispc.m: New file.
+
+	* miscellaneous/computer.m: New file.
+
+	* miscellaneous/delete.m: New file.
+
+2004-01-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/tests/kolmogorov_smirnov_test_2.m: Fix test for ties.
+
+2004-01-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/path.m: Handle DEFAULT_LOADPATH substitution.
+	Always return substituted version of LOADPATH if nargout != 0.
+
+2003-12-21  Schloegl Alois  <alois.schloegl@tugraz.at>
+
+	* miscellaneous/fullfile.m: If filename is empty, set it to "."
+	before continuing.
+
+	* miscellaneous/fileparts.m: Allow name to start with ".".
+
+2003-12-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/ind2sub.m: New file.
+	* general/sub2ind.m: New file.
+
+2003-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/system/zp2ss.m: Don't save and restore
+	warn_empty_list_elements.
+
+2003-12-15  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* control/system/zp2ss.m: Correct definition of pure gain system.
+
+2003-12-10  Quentin Spencer  <qspencer@ieee.org>
+
+	* statistics/base/mean.m: Remove special case for row vectors.
+
+2003-11-19  Quentin Spencer  <qspencer@ieee.org>
+
+	* signal/freqz_plot.m: Save and restore automatic_replot too.
+
+2003-11-18  Danilo Piazzalunga  <danilopiazza@libero.it>
+
+	* statistics/base/iqr.m: Handle matrices.
+
+2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/issymmetric.m: Don't fail if norm (x) == 0.
+
+2003-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/path.m: Fix thinko in previous change.
+
+2003-11-14  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* control/base/dare.m: Check positive (semi)definiteness and
+	dimensions of r (and q).
+	* control/base/dlqr.m: Check stabilizability of (A,B),
+	detectability of (A,Q), and whether (A,Q) has non minimal modes
+	near unit circle.
+
+	* control/system/is_detectable.m: Use Hautus Lemma.
+	Correct the behavior for discrete-time systems.
+	* control/system/is_stabilizable.m: Likewise.
+
+	* linear-algebra/krylov.m: Return H = [] in Vnrm == 0 case.
+
+	* linear-algebra/krylovb.m: Fix typo in usage message.
+
+	* general/isdefinite.m: New function.
+
+2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/reshape: Delete.
+
+2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/numel.m: Delete.
+
+2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/horzcat.m, miscellaneous/vartcat.m: New files.
+
+	* deprecated/isstr.m: New file.
+
+2003-10-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__axis_label__.m, plot/xlabel.m, plot/ylabel.m,
+	plot/zlabel.m, plot/title.m: Return a value if nargout > 0.
+
+2003-10-02  Quentin Spencer  <qspencer@ieee.org>
+
+	* statistics/base/mean.m: Fix missing semicolon problem.
+
+2003-09-08  Al Niessner  <Al.Niessner@jpl.nasa.gov>
+
+	* plot/subplot.m: New global variable, __multiplot_scale__.
+
+2003-08-29  David Castelow  <DCastelow@Airspan.com>
+
+	* strings/dec2base.m, strings/dec2bin.m, strings/dec2hex.m:
+	Allow optional length argument.
+
+2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Avoid calling flipud.
+	From Pascal A. Dupuis <Pascal.Dupuis@esat.kuleuven.ac.be>.
+	Return structure as second output value for improved Matlab
+	compatibility.
+
+2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/cond.m: Behave as though old built-in variable
+	propagate_empty_matrices is always 1.  Also handle empty matrices
+	with one non-zero dimension.
+
+	* miscellaneous/dump_prefs.m: Add warn_separator_insert and
+	warn_single_quote_string to the list.
+	Delete whitespace_in_literal_matrix and propagate_empty_matrices
+	from the list.
+
+2003-07-25  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/autocov.m: Transpose result of conj because diag returns
+	a column vector, not a row vector.
+
+	* audio/playaudio.m, audio/record.m, image/image.m,
+	miscellaneous/bug_report.m: Protect spaces in filenames
+	with quotes.
+
+2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* io/printf.m, io/puts.m: Delete.
+
+	* miscellaneous/dump_prefs.m: Delete define_all_return_values and
+	default_return_value from the list.
+	Add warn_undefined_return_values to the list.
+
+
+2003-07-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/dump_prefs.m: Delete default_global_variable_value
+	and initialize_global_variables from the list.
+
+2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/colormap.m: Don't save and restore default_eval_print_flag.
+
+	* miscellaneous/dump_prefs.m: Delete default_eval_print_flag.
+
+	* control/util/zgshsr.m: Use x OP= y instead of x = x OP y.
+	* control/system/sys2fir.m: Likewise.
+
+	* control/system/is_siso.m: Use && instead of & where appropriate.
+	* control/system/__tf2sysl__.m: Likewise.
+
+	* control/system/__tf2sysl__.m: Use end instead of length(X).
+
+	* control/freqchkw.m: Use %-escapes for error instead of num2str
+	and [] concatenation.
+	* control/system/sys2fir.m: Likewise.
+
+	* control/base/dgram.m, control/base/freqchkw.m,
+	control/base/gram.m, control/system/__abcddims__.m,
+	control/system/__sysdefstname__.m, control/system/__tf2sysl__.m,
+	control/system/is_sample.m, control/system/is_signal_list.m,
+	control/system/is_siso.m, control/system/sys2fir.m,
+	control/system/syschtsam.m, control/system/sysgettsam.m,
+	control/system/sysgettype.m, control/system/tf2zp.m,
+	control/system/ugain.m, control/util/prompt.m,
+	control/util/run_cmd.m, control/util/zgrownorm.m,
+	control/util/zgshsr.m:
+	Improve conformance to Octave coding style.
+
+	* miscellaneous/dump_prefs.m: Add warn_resize_on_reange_error to
+	the list.
+	Delete resize_on_range_error from the list.
+
+	* control/base/pzmap.m, control/base/place.m,
+	control/base/__freqresp__.m, control/system/sysappend.m,
+	control/system/syscont.m, control/system/sysdisc.m,
+	control/system/sysgroup.m, control/system/tfout.m,
+	control/system/zp2ss.m, control/system/zpout.m,
+	control/util/__outlist__.m, signal/arma_rnd.m, general/shift.m,
+	strings/strcat.m: Save and restore warn_empty_list_elements, not
+	empty_list_elements_ok.
+
+	* miscellaneous/dump_prefs.m: Add warn_empty_list_elements to the list.
+	Delete empty_list_elements_ok from the list.
+
+2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/dump_prefs.m: Include warn_neg_dim_as_zero in the
+	list.
+	Delete treat_neg_dim_as_zero from the list.
+
+	* strings/blanks.m: Don't check treat_neg_dim_as_zero.
+
+2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/reshape.m: Omit do_fortran_indexing from doc string (it
+	was not used in the code in any case).
+
+	* strings/strjust.m: Temporarily set warn_fortran_indexing, not
+	do_fortran_indexing.
+
+	* statistics/base/moment.m: Temporarily set warn_str_to_num, not
+	implict_str_to_num_ok.  Use unwind_protect block to do it.
+
+	* miscellaneous/dump_prefs.m: Include DEFAULT_EXEC_PATH,
+	DEFAULT_LOAD_PATH, crash_dumps_octave_core,
+	sighup_dumps_octave_core, sigterm_dumps_octave_core,
+	warn_imag_to_real, warn_num_to_str, warn_str_to_num, and
+	warn_fortran_indexing in the list.
+	Delete ok_to_lose_imaginary_part, implicit_num_to_str_ok,
+	implicit_str_to_num_ok, do_fortran_indexing, and
+	prefer_column_vectors from list.
+
+2003-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean, maintainer-clean): Also remove
+	gethelp$(BUILD_EXEEXT), $(DOCSTRINGS), and autom4te.cache
+	directory.
+
+2003-06-17  Aaron A. King  <king@quercus.tiem.utk.edu>
+
+	* plot/hist.m: Don't forget to define n if x is a vector.
+
+2003-06-13  Alois Schloegl  <alois.schloegl@tugraz.at>
+
+	* miscellaneous/fileparts.m: For compatibility with Matlab,
+	return "." with extension.
+
+2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/__stepimp__.m, control/base/nichols.m,
+	control/base/nyquist.m, miscellaneous/dump_prefs.m,
+	plot/bottom_title.m, plot/mplot.m, plot/multiplot.m,
+	plot/oneplot.m, plot/plot_border.m, plot/subplot.m,
+	plot/subwindow.m, plot/top_title.m, signal/freqz_plot.m:
+	Eliminate gnuplot_has_multiplot (assume it is always true).
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, image/Makefile.in, startup/Makefile.in: Handle DESTDIR.
+
+2003-05-05  Andy Adler  <adler@site.uottawa.ca>
+
+	* plot/hist.m: Improve performance by using different algorithms
+	depending on number of bins.
+
+2003-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/system/sysadd.m: If systems are not "tf", convert before
+	adding.
+
+2003-05-01  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* image/imagesc.m: Accept data limits parameter for colormap.
+
+2003-04-11  Doug Stewart  <dastew@sympatico.ca>
+
+	* control/base/__stepimp__.m: If digital impulse, reduce gain of
+	the impulse by t_step.
+
+2003-04-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/__bodquist__.m: Don't convert pdbig and fdbig to
+	column vectors.
+
+2003-03-24  Quentin Spencer  <qspencer@ieee.org>
+
+	* linear-algebra/null.m: Handle empty matrix arg.
+
+2003-03-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/shift.m: Force empty_list_elements_ok to 1.
+
+2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* deprecated/struct_contains.m, deprecated/struct_elements.m:
+	New files.
+
+2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/tests/kolmogorov_smirnov_test.m: Use str2func to make
+	function handle to pass to feval.
+	* statistics/base/qqplot.m: Likewise.
+	* statistics/base/ppplot.m: Likewise.
+	* signal/spectral_xdf.m: Likewise.
+	* signal/spectral_adf.m: Likewise.
+
+2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/axis.m: Avoid whitespace in literal matrix problem.
+
+2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/logm.m: New file.
+
+2003-02-18  David Bateman  <dbateman@free.fr>
+
+ 	* mkpkgadd: Scan C++ files as well
+
+2003-02-13  Alois Schloegl  <alois.schloegl@tugraz.at>
+
+	* strings/findstr.m: Return empty set for zero-length target.
+
+2003-02-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* set/union.m: Preserve the orientation of inputs.
+
+2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/int2str.m: Eliminate leading spaces.
+
+2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/int2str.m: Do a better job with 0, Inf, and NaN,
+
+2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in (gethelp$(BUILD_EXEEXT)): Pass $(BUILD_CXXFLAGS) and
+	$(BUILD_LDFLAGS) to compiler.
+
+2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/num2str.m: Don't specify field width for scalars.
+
+2003-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTFILES): Don't forget mkpkgadd.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* gethelp.cc: Define __USE_STD_IOSTREAM if using Compaq C++.
+
+	* miscellaneous/tempname.m: New file.
+
+	* miscellaneous/tempdir.m: New file.
+
+	* miscellaneous/fullfile.m: New file.
+
+2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/fileparts.m: New file.
+
+	* io/beep.m: New file.
+
+	* plot/__pltopt1__.m: Call undo_string_escapes for title part of
+	format only.
+
+2003-01-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/strcmp.m: Handle cell arrays of strings.
+
+2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/int2str.m: Handle matrices.
+	* general/num2str.m: Likewise.
+	Also handle optional precision, and format args.
+
+2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* audio/Makefile.in, control/base/Makefile.in,
+	control/hinf/Makefile.in, control/obsolete/Makefile.in,
+	control/system/Makefile.in, elfun/Makefile.in,
+	finance/Makefile.in, general/Makefile.in, image/Makefile.in,
+	io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, polynomial/Makefile.in,
+	quaternion/Makefile.in, set/Makefile.in, signal/Makefile.in,
+	specfun/Makefile.in, special-matrix/Makefile.in,
+	statistics/base/Makefile.in, statistics/distributions/Makefile.in,
+	statistics/models/Makefile.in, statistics/tests/Makefile.in,
+	strings/Makefile.in, time/Makefile.in, plot/Makefile.in,
+	deprecated/Makefile.in: Use new do-script-install and
+	do-script-uninstall macros.
+
+	* mkpkgadd: New script.
+
+	* plot/close.m: New file.
+
+2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/image.m: Use -raw option for xv.
+	From Remy Bruno <remy.bruno@libertysurf.fr>
+
+2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/lsim.m: Use approximate test for step size change.
+
+	* signal/bartlett.m: Avoid row/column mismatch error.
+
+2002-11-12  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* statistics/base/var.m: Use better formula for improved accuracy.
+
+2002-11-04  Nicholas Piper  <nick-octave@nickpiper.co.uk>
+
+	* control/base/lsim.m: Correct doc string.
+
+2002-11-04  A S Hodel  <a.s.hodel@Eng.Auburn.EDU>
+
+	* control/system/syssub.m: Call tf2sys with Gnum-Hnum, not Gnum+Hnum.
+
+2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/contour.m: Handle x and y as matrices too.
+
+2002-11-01  Joseph P. Skudlarek  <jskud@jskud.com>
+
+	* plot/contour.m: Fix error and usage messages.
+
+2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/contour.m: Correct orientation of plot.
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/analdemo.m: Fix typo.
+
+2002-10-31  Francesco Potorti`  <pot@gnu.org>
+
+	* statistics/distributions/discrete_pdf.m: Fix typo.
+
+2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkdoc: Exit immediately on errors.
+	Exit with error if gethelp does not exist.
+
+	* Makefile.in: Use $(BUILD_EXEEXT) as appropriate.
+
+2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (gethelp): Use $(BUILD_CXX), not $(CXX).
+
+2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* statistics/distributions/normal_cdf.m: Handle variance == 0.
+	* statistics/distributions/normal_pdf.m: Likewise.
+	* statistics/distributions/normal_inv.m: Likewise.
+
+2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* specfun/erfinv.m: Return NaN for NaN inputs.
+
+2002-09-26  Jeff Cunningham  <jeffrey@cunningham.net>
+
+	* statistics/base/var.m: Handle complex values.
+
+2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_CONFIG_FILES): Add deprecated/Makefile to the
+	list.
+	* deprecated/Makefile.in: New file.
+
+2002-08-09  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* statistics/distributions/beta_cdf.m: Replace betai with betainc.
+	* statistics/distributions/binomial_cdf.m: Likewise.
+	* statistics/distributions/f_cdf.m: Likewise.
+	* statistics/distributions/t_cdf.m: Likewise.
+
+	* miscellaneous/bincoeff.m: Replace lgamma with gammaln.
+	* specfun/beta.m: Likewise.
+	* special-matrix/invhilb.m: Likewise (but it is only in a comment).
+	* statistics/distributions/gamma_pdf.m: Likewise.
+	* statistics/distributions/poisson_pdf.m: Likewise.
+
+	* statistics/distributions/gamma_cdf.m: replace gammai with gammainc
+	* statistics/distributions/poisson_cdf.m: Likewise.
+
+2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* deprecated/is_bool.m: New file.
+	* deprecated/is_complex.m: New file.
+	* deprecated/is_global.m: New file.
+	* deprecated/is_list.m: New file.
+	* deprecated/is_matrix.m: New file.
+	* deprecated/is_scalar.m: New file.
+	* deprecated/is_square.m: New file.
+	* deprecated/is_stream.m: New file.
+	* deprecated/is_struct.m: New file.
+	* deprecated/is_symmetric.m: New file.
+	* deprecated/is_vector.m: New file.
+	* Change all callers of these functions to use the new names.
+
+	* deprecated: New directory.
+	* Makefile.in (SUBDIRS): Add it to the list.
+
+	* general/isscalar.m: Rename from is_scalar.m.
+	* general/issquare.m: Rename from is_square.m.
+	* general/issymmetric.m: Rename from is_symmetric.m.
+	* general/isvector.m: Rename from is_vector.m.
+
+2002-08-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/base/mean.m: Allow empty matrices.
+	Handle DIM arg.
+
+2002-08-05  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* plot/__errcomm__.m: If format is not specified, default to error
+	bar format.
+
+2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/popen2.m: Use F_SETFL and O_NONBLOCK, not
+	__F_SETFL__ and __O_NONBLOCK__.
+
+	* image/saveimage.m: Use OCTAVE_VERSION, not __OCTAVE_VERSION__.
+	* miscellaneous/bug_report.m: Likewise.
+
+2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/mod.m: Use isreal (x), not any (any (imag (x))).
+	* general/rem.m: Likewise.
+
+	* plot/loglogerr.m: Use varargin instead of old style varargs.
+	* plot/semilogxerr.m: Likewise.
+	* plot/semilogyerr.m: Likewise.
+
+2002-07-25  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* plot/__errcomm__.m: New file.  Common functionality for error plots.
+	* plot/loglogerr.m: New file.  Double logarithm plots with errorbars.
+	* plot/semilogxerr.m: New file.  Semilogarithm plots with errorbars.
+	* plot/semilogyerr.m: New file.  Semilogarithm plots with errorbars
+
+	* plot/errorbar.m: Use __errcomm__.m.
+	* plot/__errplot__.m: Minor cleanups.
+	* plot/__pltopt__.m: Handle boxxyerrorbars plot style.
+	* plot/__pltopt1__.m: Likewise.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/rem.m: Delete redundant call to usage.
+
+	* general/mod.m: Additional error checks, Texinfoize doc string.
+
+2002-04-29  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* general/mod.m: New function.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/system/sysmult.m: Use varargin instead of old style varargs.
+	* control/system/sysadd.m: Likewise.
+	* control/system/sysgroup.m: Likewise.
+	* control/system/syssub.m: Likewise.
+	* elfun/gcd.m: Likewise.
+	* elfun/lcm.m: Likewise.
+	* general/common_size.m: Likewise.
+	* io/printf.m: Likewise.
+	* miscellaneous/menu.m: Likewise.
+	* miscellaneous/path.m: Likewise.
+	* plot/__errplot__.m: Likewise.
+	* plot/__plt__.m: Likewise.
+	* plot/axis.m: Likewise.
+	* plot/errorbar.m: Likewise.
+	* plot/mplot.m: Likewise.
+	* plot/loglog.m: Likewise.
+	* plot/plot.m: Likewise.
+	* plot/plot_border.m: Likewise.
+	* plot/semilogx.m: Likewise.
+	* plot/semilogy.m: Likewise.
+	* plot/xlabel.m: Likewise.
+	* plot/ylabel.m: Likewise.
+	* plot/zlabel.m: Likewise.
+	* statistics/base/ppplot.m: Likewise.
+	* statistics/base/qqplot.m: Likewise.
+	* statistics/tests/bartlett_test.m: Likewise.
+	* statistics/tests/kolmogorov_smirnov_test.m: Likewise.
+	* statistics/tests/kruskal_wallis_test.m: Likewise.
+	* strings/str2mat.m: Likewise.
+	* strings/strcat.m: Likewise.
+
+2002-06-27  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
+
+	* statistics/distributions/gamma_pdf.m: Avoid overflow in more cases.
+
+2002-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* skip-autoheader: New file, for autogen.sh.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+2002-04-29  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* general/repmat.m: New function.
+
+2002-04-25  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* audio/lin2mu.m: Accept matrices and [-1,1] normalized audio.
+	Use optional parameter to specify the number of bits in the input.
+	* audio/mu2lin.m: Accept matrices, return n-bit integers or
+	floats in the range [-1,1], 2x speedup.
+
+	* strings/index.m, strings/rindex.m: Vectorize for speed.
+
+2002-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/kron.m: Delete.
+
+2002-04-24  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/freqz.m: If nargout is zero, plot results instead of
+	returning them.
+	* signal/freqz_plot.m: New file.
+
+2002-04-24  Bill Lash  <lash@tellabs.com>
+
+	* signal/unwrap.m: New file.
+
+2002-04-23  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* image/rgb2hsv.m: Faster, more accurate, remove the
+	divide by zero warning.
+
+2002-04-09  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* strings/deblank.m: Trim \0 as well as blank.
+
+	* freqz.m: Evaluate a specific range of frequencies
+	expressed in radians or Hz relative to a supplied sample rate.
+
+2002-04-04  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* signal/fftfilt.m: Filter columns if called with a matrix.
+
+	* strings/findstr.m: Vectorize as much as possible.
+
+2002-04-04  Dirk Laurie  <dirk@calvyn.puk.ac.za>
+
+	* special-matrix/invhilb.m: New version that is faster and more
+	accurate.
+
+2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* configure.in: Update for autoconf 2.5x.
+
+2002-04-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* special-matrix/vander.m: Code tidy and vectorize.
+
+2002-04-02  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* linear-algebra/cross.m: Accept nx3 and 3xn matrices, in addition
+	to vectors.  Issue a warning in the case x matches y' but return a
+	column vector as Octave currently does.
+
+	* plot/contour.m: Set default number of levels for contour(x,y,z).
+
+	* control/system/starp.m: Leave more of the documentation
+	processing to texinfo and less to the @format block.
+
+	* image/imagesc.m: Only display image if no output is requested.
+	Code tidying.
+
+2002-03-07  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+ 	* statistics/base/center.m: Accept and return empty matrix.
+
+2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/erfinv.m: Fix usage message.
+
+2002-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* elfun/coth.m: Use 1 ./ tanh(z) instead of cosh(z) ./ sinh(z).
+	From "Michael O'Brien" <mobrien@kento.unm.edu>.
+
+2001-06-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/distributions/discrete_cdf.m: Downcase incorrectly
+	capitalized variable names.
+
+2001-05-30  Jean-Francois Cardoso  <cardoso@tsi.enst.fr>
+
+	* m/image/saveimage.m: fix saving an image to Postscript format.
+
+2001-04-18  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/system/is_stabilizable.m: Pass a to sys2ss, not sys.
+
+2001-02-28  Kai Habel  <kai.habel@gmx.de>
+
+	* general/cart2pol.m: New file.
+	* general/pol2cart.m: New file.
+	* general/cart2sph.m: New file.
+	* general/sph2cart.m: New file.
+	* image/rgb2hsv.m: New file.
+	* image/hsv2rgb.m: New file.
+
+2001-02-26  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* plot/meshgrid.m: Avoid for loops.
+	* plot/meshdom.m: Likewise.
+
+2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/norm.m: Use sqrt instead of ^0.5.
+
+2001-02-22  Heinz Bauschke  <bauschke@cecm.sfu.ca>
+
+	* linear-algebra/norm.m: Use more efficient method for Frobenius
+	norm.
+
+2001-02-09  David Livings  <david.livings@asa.co.uk>
+
+	* statistics/tests/welch_test.m: Fix typo.
+
+	* statistics/distributions/chisquare_cdf.m:
+	Don't restrict inputs to be only positive integers.
+	* statistics/distributions/chisquare_inv.m: Likewise.
+	* statistics/distributions/chisquare_pdf.m: Likewise.
+	* statistics/distributions/chisquare_rnd.m: Likewise.
+	* statistics/distributions/f_cdf.m: Likewise.
+	* statistics/distributions/f_inv.m: Likewise.
+	* statistics/distributions/f_pdf.m: Likewise.
+	* statistics/distributions/f_rnd.m: Likewise.
+	* statistics/distributions/t_cdf.m: Likewise.
+	* statistics/distributions/t_inv.m: Likewise.
+	* statistics/distributions/t_pdf.m: Likewise.
+	* statistics/distributions/t_rnd.m: Likewise.
+
+2001-02-08  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* strings/dec2base.m: New file.
+	* strings/base2dec.m: New file.
+	* strings/strjust.m: New file.
+	* strings/dec2hex.m: Replace with version that just calls 2dec2base.
+	* strings/dec2bin.m: Likewise.
+	* strings/hex2dec.m: Replace with version that just calls base2dec.
+	* strings/bin2dec.m: Likewise.
+
+2001-02-07  David Livings  <david.livings@asa.co.uk>
+
+	* statistics/base/ppplot.m: Use gset, not set.
+	* statistics/base/qqplot.m: Likewise.
+
+2001-02-05  Ondrej Popp  <ondrej@geocities.com>
+
+	* control/system/c2d.m: Add missing endif.
+
+2000-12-15  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* strings/index.m: Return 0 if either string is empty.
+
+2000-12-15  Ben Sapp  <bsapp@lanl.gov>
+
+	* control/system/c2d.m: Allow option of matched pole/zero
+	equivalent for conversion.
+
+2000-12-15  Matthew W. Roberts  <matt@lehi.tamu.edu>
+
+	* strings/findstr.m: Return empty matrix if search string is empty.
+
+2000-12-15  Kai Habel  <kai.habel@gmx.de>
+
+	* saveimage.m: Do create rawbit image for black and white images,
+	but do it correctly.
+
+2000-12-13   Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* polynomial/deconv.m: For compatibility with Matlab, don't reduce
+	result polynomials.
+
+2000-12-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Don't try to create rawbit image.
+
+2000-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (bin-dist): Pass -C to $(MAKE), not -c.
+
+2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* plot/contour.m: Reorder args for Matlab compatibility.
+
+2000-10-27  Mats Jansson  <mats.e.jansson@home.se>
+
+	* set/create_set.m: Avoid empty matrix in matrix list warning.
+
+2000-09-08  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* plot/errorbar.m, plot/__errplot__.m: New functions.
+
+	* plot/mesh.m: Also set nologscale before plotting.
+	* plot/__pltopt1__.m: Handle xerrorbars, yerrorbars, and
+	xyerrorbars instead of just errorbars.
+
+2000-08-25  Thomas Walter  <walter@pctc.chemie.uni-erlangen.de>
+
+	* image/image.m: Try display (from ImageMagick) first.
+
+2000-08-01  Rolf Fabian  <fabian@tu-cottbus.de>
+
+	* plot/meshgrid.m: Use transpose to reorient vectors, not complex
+	conjugate transpose.
+
+2000-07-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/str2mat.m: Apply setstr to each argument.
+
+2000-07-17  Gabriele Pannocchia  <pannocchia@ing.unipi.it>
+
+	* control/base/dkalman.m: New file.
+	* control/base/dlqe.m: Handle singular A matrix.
+	* control/base/dlqr.m: Likewise.
+
+2000-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/strcmp.m: Return 0 instead of an error if row and column
+	dimensions don't match.
+
+2000-06-30  Kai Habel  <kahacjde@calvados.zrz.TU-Berlin.DE>
+
+	* plot/hist.m: Allow 3 argument form to work.
+
+2000-06-27  Matthew W. Roberts  <matt@lehi.tamu.edu>
+
+	* plot/plot.m: Add examples in doc string.
+
+2000-06-08  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* control/base/__stepimp__.m: Reset multiplot state when done.
+	Do the right thing even if automatic_replot is not zero.
+	Avoid failure if system has pure imaginary poles.
+
+2000-06-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/logical.m: Return arg if it is empty.  Better error
+	message for non-numeric types.
+
+2000-05-31  A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/base/dlqe.m: Update documentation.  Fix typo.  Warn
+	about difference with Matlab dlqe function.
+
+	* control/system/sysmult.m: Fix typo in argument dimensions checking.
+
+2000-05-24  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* strings/strrep.m: Fix typo.
+
+2000-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/strrep.m: Don't transpose result for case of jump > 0.
+
+2000-05-13  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* strings/strrep.m: Avoid for loop for speed.
+	* plot/axis.m: Handle string options for Matlab compatibility.
+
+2000-04-04  John Smith  <john@arrows.demon.co.uk>
+
+	* statistics/distributions/beta_inv.m: Provide better(?) initial
+	guess for iteration.
+
+2000-03-31   Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* image/image.m: Allow image (A) or image (x, y, A).
+	* image/imagesc.m: Likewise.
+
+	* image/image.m: If zoom is not supplied, or if it is an empty
+	matrix, autoscale the image.
+
+2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/title.m, plot/bottom_title.m, plot/top_title.m:
+	Undo string escapes in text twice(!) before sending to gnuplot.
+
+	* image/saveimage.m: Add comment to file saying who created it and
+	when it was created.  Suggested by Stephen Eglen
+	<stephen@cogsci.ed.ac.uk>.
+
+2000-03-21  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* polynomial/polyreduce.m: Simplify by looking for the first
+	non-zero element rather than the last of the first set of zero
+	elements.
+
+	* plot/__pltopt1__.m: Accept "--", "-.", and ":" line styles.
+
+2000-03-21  Kai Habel  <kahacjde@calvados.zrz.TU-Berlin.DE>
+
+	* image/saveimage.m: Swap black and white colormaps so zero is
+	displayed as black and 1 is displayed as white.
+	Fix indexing bug in ppm case.
+
+2000-03-06  Stephen Eglen  <stephen@anc.ed.ac.uk>
+
+	* statistics/tests/kolmogorov_smirnov_test_2.m: Account for ties
+	between the two distributions (took same approach as ks.test() in R.)
+
+2000-02-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/bode.m: Temporarily disable automatic_replot.
+
+2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): Also remove gethelp.
+
+	* specfun/erfinv.m: Use z_new in convergence test, not z_old.
+
+2000-02-11  Georg Thimm  <mgeorg@SGraphicsWS1.mpe.ntu.edu.sg>
+
+	* set/create_set.m: Use find to avoid while loop.
+
+2000-02-11  Stephen Eglen  <stephen@cogsci.ed.ac.uk>
+
+	* plot/hist.m: New optional third argument.
+
+2000-02-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/bug_report.m: Use octave-bug script with version
+	number appended.
+
+2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* gethelp.cc: Sprinkle with std:: qualifier.
+
+2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Delete some debugging code.
+
+2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* signal/sinc.m: Avoid reshaping.
+
+	* image/rgb2ind.m: No longer needs to reset do_fortran_indexing.
+	* image/ind2rgb.m: Ditto.
+	* image/ind2gray.m: Ditto.
+	* general/reshape.m: Ditto.  Also no longer needs to reset
+	implicit_str_to_num_ok.
+
+2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/popen2.m: Deal with the fact that pipe now returns
+	a list of file structures, not a vector of numeric file ids.
+
+2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__axis_label__.m: New function.
+	Undo string escapes in text twice(!) before sending to gnuplot.
+	* plot/xlabel.m: Use it.
+	* plot/ylabel.m: Ditto.
+	* plot/zlabel.m: Ditto.
+
+	* plot/mesh.m: Fix error message to reflect reality.
+
+2000-01-24  Cyril Humbert  <humbert@phobos.univ-mlv.fr>
+
+	* statistics/distributions/weibull_pdf.m: Use correct formula.
+
+2000-01-22  Michael Reifenberger  <mike@Plaut.de>
+
+	* audio/saveaudio.m: Also accept files with .ul extension.
+	* audio/loadaudio.m: Ditto.
+	* audio/playaudio.m: Ditto.
+
+2000-01-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/distributions/beta_cdf.m: Texinfoize doc string.
+	* statistics/distributions/beta_inv.m: Ditto.
+	* statistics/distributions/beta_pdf.m: Ditto.
+	* statistics/distributions/beta_rnd.m: Ditto.
+	* statistics/distributions/binomial_cdf.m: Ditto.
+	* statistics/distributions/binomial_inv.m: Ditto.
+	* statistics/distributions/binomial_pdf.m: Ditto.
+	* statistics/distributions/binomial_rnd.m: Ditto.
+	* statistics/distributions/cauchy_cdf.m: Ditto.
+	* statistics/distributions/cauchy_inv.m: Ditto.
+	* statistics/distributions/cauchy_pdf.m: Ditto.
+	* statistics/distributions/cauchy_rnd.m: Ditto.
+	* statistics/distributions/chisquare_cdf.m: Ditto.
+	* statistics/distributions/chisquare_inv.m: Ditto.
+	* statistics/distributions/chisquare_pdf.m: Ditto.
+	* statistics/distributions/chisquare_rnd.m: Ditto.
+	* statistics/distributions/discrete_cdf.m: Ditto.
+	* statistics/distributions/discrete_inv.m: Ditto.
+	* statistics/distributions/discrete_pdf.m: Ditto.
+	* statistics/distributions/discrete_rnd.m: Ditto.
+	* statistics/distributions/empirical_cdf.m: Ditto.
+	* statistics/distributions/empirical_inv.m: Ditto.
+	* statistics/distributions/empirical_pdf.m: Ditto.
+	* statistics/distributions/empirical_rnd.m: Ditto.
+	* statistics/distributions/exponential_cdf.m: Ditto.
+	* statistics/distributions/exponential_inv.m: Ditto.
+	* statistics/distributions/exponential_pdf.m: Ditto.
+	* statistics/distributions/exponential_rnd.m: Ditto.
+	* statistics/distributions/f_cdf.m: Ditto.
+	* statistics/distributions/f_inv.m: Ditto.
+	* statistics/distributions/f_pdf.m: Ditto.
+	* statistics/distributions/f_rnd.m: Ditto.
+	* statistics/distributions/gamma_cdf.m: Ditto.
+	* statistics/distributions/gamma_inv.m: Ditto.
+	* statistics/distributions/gamma_pdf.m: Ditto.
+	* statistics/distributions/gamma_rnd.m: Ditto.
+	* statistics/distributions/geometric_cdf.m: Ditto.
+	* statistics/distributions/geometric_inv.m: Ditto.
+	* statistics/distributions/geometric_pdf.m: Ditto.
+	* statistics/distributions/geometric_rnd.m: Ditto.
+	* statistics/distributions/hypergeometric_cdf.m: Ditto.
+	* statistics/distributions/hypergeometric_inv.m: Ditto.
+	* statistics/distributions/hypergeometric_pdf.m: Ditto.
+	* statistics/distributions/hypergeometric_rnd.m: Ditto.
+	* statistics/distributions/kolmogorov_smirnov_cdf.m: Ditto.
+	* statistics/distributions/laplace_cdf.m: Ditto.
+	* statistics/distributions/laplace_inv.m: Ditto.
+	* statistics/distributions/laplace_pdf.m: Ditto.
+	* statistics/distributions/laplace_rnd.m: Ditto.
+	* statistics/distributions/logistic_cdf.m: Ditto.
+	* statistics/distributions/logistic_inv.m: Ditto.
+	* statistics/distributions/logistic_pdf.m: Ditto.
+	* statistics/distributions/logistic_rnd.m: Ditto.
+	* statistics/distributions/lognormal_cdf.m: Ditto.
+	* statistics/distributions/lognormal_inv.m: Ditto.
+	* statistics/distributions/lognormal_pdf.m: Ditto.
+	* statistics/distributions/lognormal_rnd.m: Ditto.
+	* statistics/distributions/normal_cdf.m: Ditto.
+	* statistics/distributions/normal_inv.m: Ditto.
+	* statistics/distributions/normal_pdf.m: Ditto.
+	* statistics/distributions/normal_rnd.m: Ditto.
+	* statistics/distributions/pascal_cdf.m: Ditto.
+	* statistics/distributions/pascal_inv.m: Ditto.
+	* statistics/distributions/pascal_pdf.m: Ditto.
+	* statistics/distributions/pascal_rnd.m: Ditto.
+	* statistics/distributions/poisson_cdf.m: Ditto.
+	* statistics/distributions/poisson_inv.m: Ditto.
+	* statistics/distributions/poisson_pdf.m: Ditto.
+	* statistics/distributions/poisson_rnd.m: Ditto.
+	* statistics/distributions/stdnormal_cdf.m: Ditto.
+	* statistics/distributions/stdnormal_inv.m: Ditto.
+	* statistics/distributions/stdnormal_pdf.m: Ditto.
+	* statistics/distributions/stdnormal_rnd.m: Ditto.
+	* statistics/distributions/t_cdf.m: Ditto.
+	* statistics/distributions/t_inv.m: Ditto.
+	* statistics/distributions/t_pdf.m: Ditto.
+	* statistics/distributions/t_rnd.m: Ditto.
+	* statistics/distributions/uniform_cdf.m: Ditto.
+	* statistics/distributions/uniform_inv.m: Ditto.
+	* statistics/distributions/uniform_pdf.m: Ditto.
+	* statistics/distributions/uniform_rnd.m: Ditto.
+	* statistics/distributions/weibull_cdf.m: Ditto.
+	* statistics/distributions/weibull_inv.m: Ditto.
+	* statistics/distributions/weibull_pdf.m: Ditto.
+	* statistics/distributions/weibull_rnd.m: Ditto.
+	* statistics/distributions/wiener_rnd.m: Ditto.
+
+2000-01-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/base/values.m: Texinfoize doc string.
+	* statistics/base/var.m: Ditto.
+	* statistics/base/table.m: Ditto.
+	* statistics/base/studentize.m: Ditto.
+	* statistics/base/statistics.m: Ditto.
+	* statistics/base/spearman.m: Ditto.
+	* statistics/base/run_count.m: Ditto.
+	* statistics/base/ranks.m: Ditto.
+	* statistics/base/range.m: Ditto.
+	* statistics/base/qqplot.m: Ditto.
+	* statistics/base/probit.m: Ditto.
+	* statistics/base/ppplot.m: Ditto.
+	* statistics/base/moment.m: Ditto.
+	* statistics/base/meansq.m: Ditto.
+	* statistics/base/logit.m: Ditto.
+	* statistics/base/kendall.m: Ditto.
+	* statistics/base/iqr.m: Ditto.
+	* statistics/base/cut.m: Ditto.
+	* statistics/base/cor.m: Ditto.
+	* statistics/base/cloglog.m: Ditto.
+	* statistics/base/center.m: Ditto.
+	* statistics/models/logistic_regression.m: Ditto.
+	* statistics/models/logistic_regression_derivative.m: Ditto.
+	* statistics/models/logistic_regression_likelihood.m: Ditto.
+	* statistics/tests/anova.m: Ditto.
+	* statistics/tests/bartlett_test.m: Ditto.
+	* statistics/tests/chisquare_test_homogeneity.m: Ditto.
+	* statistics/tests/chisquare_test_independence.m: Ditto.
+	* statistics/tests/cor_test.m: Ditto.
+	* statistics/tests/f_test_regression.m: Ditto.
+	* statistics/tests/hotelling_test.m: Ditto.
+	* statistics/tests/hotelling_test_2.m: Ditto.
+	* statistics/tests/kolmogorov_smirnov_test.m: Ditto.
+	* statistics/tests/kolmogorov_smirnov_test_2.m: Ditto.
+	* statistics/tests/kruskal_wallis_test.m: Ditto.
+	* statistics/tests/manova.m: Ditto.
+	* statistics/tests/mcnemar_test.m: Ditto.
+	* statistics/tests/prop_test_2.m: Ditto.
+	* statistics/tests/run_test.m: Ditto.
+	* statistics/tests/sign_test.m: Ditto.
+	* statistics/tests/t_test.m: Ditto.
+	* statistics/tests/t_test_2.m: Ditto.
+	* statistics/tests/t_test_regression.m: Ditto.
+	* statistics/tests/u_test.m: Ditto.
+	* statistics/tests/var_test.m: Ditto.
+	* statistics/tests/welch_test.m: Ditto.
+	* statistics/tests/wilcoxon_test.m: Ditto.
+	* statistics/tests/z_test.m: Ditto.
+	* statistics/tests/z_test_2.m: Ditto.
+
+2000-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/bin2dec.m: Texinfoize doc string.
+	* plot/__plr1__.m: Ditto.
+	* plot/__pltopt__.m: Ditto.
+	* plot/__plt__.m: Ditto.
+	* plot/__plt2vv__.m: Ditto.
+	* plot/__plr2__.m: Ditto.
+	* plot/__plr__.m: Ditto.
+	* plot/__plt1__.m: Ditto.
+	* plot/__plt2__.m: Ditto.
+	* plot/__plt2mm__.m: Ditto.
+	* plot/__plt2mv__.m: Ditto.
+	* plot/__plt2ss__.m: Ditto.
+	* miscellaneous/paren.m: Ditto.
+	* miscellaneous/comma.m: Ditto.
+	* miscellaneous/semicolon.m: Ditto.
+	* miscellaneous/path.m: Ditto.
+	* miscellaneous/list_primes.m: Ditto.
+	* miscellaneous/flops.m: Ditto.
+	* miscellaneous/dump_prefs.m: Ditto.
+	* miscellaneous/bug_report.m: Ditto.
+	* linear-algebra/dot.m: Ditto
+	* linear-algebra/dmult.m: Ditto.
+	* general/randperm.m: Ditto.
+	* general/logical.m: Ditto.
+	* general/is_duplicate_entry.m: Ditto.
+	* signal/arch_fit.m: Ditto.
+	* signal/arch_rnd.m: Ditto.
+	* signal/arch_test.m: Ditto.
+	* signal/arma_rnd.m: Ditto.
+	* signal/autocor.m: Ditto.
+	* signal/autocov.m: Ditto.
+	* signal/autoreg_matrix.m: Ditto.
+	* signal/bartlett.m: Ditto.
+	* signal/blackman.m: Ditto.
+	* signal/detrend.m: Ditto.
+	* signal/diffpara.m: Ditto.
+	* signal/durbinlevinson.m: Ditto.
+	* signal/fftconv.m: Ditto.
+	* signal/fftfilt.m: Ditto.
+	* signal/fftshift.m: Ditto.
+	* signal/fractdiff.m: Ditto.
+	* signal/freqz.m: Ditto.
+	* signal/hamming.m: Ditto.
+	* signal/hanning.m: Ditto.
+	* signal/hurst.m: Ditto.
+	* signal/periodogram.m: Ditto.
+	* signal/rectangle_lw.m: Ditto.
+	* signal/rectangle_sw.m: Ditto.
+	* signal/sinc.m: Ditto.
+	* signal/sinetone.m: Ditto.
+	* signal/sinewave.m: Ditto.
+	* signal/spectral_adf.m: Ditto.
+	* signal/spectral_xdf.m: Ditto.
+	* signal/spencer.m: Ditto.
+	* signal/stft.m: Ditto.
+	* signal/synthesis.m: Ditto.
+	* signal/triangle_lw.m: Ditto.
+	* signal/triangle_sw.m: Ditto.
+	* signal/yulewalker.m: Ditto.
+	* control/util/strappend.m: Ditto.
+	* control/base/nichols.m: Ditto.
+	* control/system/is_signal_list.m: Ditto.
+	* control/system/listidx.m: Ditto.
+	* control/system/sysgettsam.m: Ditto.
+	* control/system/sysidx.m: Ditto.
+
+2000-01-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/system/__abcddims__.m: Rename from
+	control/system/abcddims.m, change all callers.
+	* control/base/__bodquist__.m: Likewise.
+	* control/base/__freqresp__.m: Likewise.
+	* control/util/__outlist__.m: Likewise.
+	* control/base/__stepimp__.m: Likewise.
+	* control/system/__syschnamesl__.m: Likewise.
+	* control/system/__syscont_disc__.m: Likewise.
+	* control/system/__sysdefioname__.m: Likewise.
+	* control/system/__sysdefstname__.m: Likewise.
+	* control/system/__sysgroupn__.m: Likewise.
+	* control/system/__tf2sysl__.m: Likewise.
+	* control/util/__zgpbal__.m: Likewise.
+	* control/system/__zp2ssg2__.m: Likewise.
+
+	* quaternion/demoquat.m: Add copyright notice, Texinfoize doc string.
+	* quaternion/qconj.m: Ditto.
+	* quaternion/qcoordinate_plot.m: Ditto.
+	* quaternion/qderiv.m: Ditto.
+	* quaternion/qderivmat.m: Ditto.
+	* quaternion/qinv.m: Ditto.
+	* quaternion/qmult.m: Ditto.
+	* quaternion/qtrans.m: Ditto.
+	* quaternion/qtransv.m: Ditto.
+	* quaternion/qtransvmat.m: Ditto.
+	* quaternion/quaternion.m: Ditto.
+
+2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/base/Makefile.in: Ditto.
+	* control/hinf/Makefile.in: New file.
+	* control/marsyas/Makefile.in: Ditto.
+	* control/obsolete/Makefile.in: Ditto.
+	* control/system/Makefile.in: Ditto.
+	* control/util/Makefile.in: Ditto.
+
+	* strings/com2str.m: Move here from control directory.
+
+	* control/base: New directory.
+	* control/base/DEMOcontrol.m: Move here from control directory.
+	* control/base/analdemo.m: Ditto.
+	* control/base/are.m: Ditto.
+	* control/base/bddemo.m: Ditto.
+	* control/base/bode.m: Ditto.
+	* control/base/bode_bounds.m: Ditto.
+	* control/base/bodquist.m: Ditto.
+	* control/base/controldemo.m: Ditto.
+	* control/base/ctrb.m: Ditto.
+	* control/base/damp.m: Ditto.
+	* control/base/dare.m: Ditto.
+	* control/base/dcgain.m: Ditto.
+	* control/base/dgram.m: Ditto.
+	* control/base/dlqe.m: Ditto.
+	* control/base/dlqr.m: Ditto.
+	* control/base/dlyap.m: Ditto.
+	* control/base/dre.m: Ditto.
+	* control/base/frdemo.m: Ditto.
+	* control/base/freqchkw.m: Ditto.
+	* control/base/freqresp.m: Ditto.
+	* control/base/gram.m: Ditto.
+	* control/base/impulse.m: Ditto.
+	* control/base/lqe.m: Ditto.
+	* control/base/lqg.m: Ditto.
+	* control/base/lqr.m: Ditto.
+	* control/base/lsim.m: Ditto.
+	* control/base/ltifr.m: Ditto.
+	* control/base/lyap.m: Ditto.
+	* control/base/nichols.m: Ditto.
+	* control/base/nyquist.m: Ditto.
+	* control/base/obsv.m: Ditto.
+	* control/base/place.m: Ditto.
+	* control/base/pzmap.m: Ditto.
+	* control/base/rldemo.m: Ditto.
+	* control/base/rlocus.m: Ditto.
+	* control/base/step.m: Ditto.
+	* control/base/stepimp.m: Ditto.
+	* control/base/tzero.m: Ditto.
+	* control/base/tzero2.m: Ditto.
+
+	* control/hinf: New directory.
+	* control/hinf/dhinfdemo.m: Move here from control directory.
+	* control/hinf/h2norm.m: Ditto.
+	* control/hinf/h2syn.m: Ditto.
+	* control/hinf/hinf_ctr.m: Ditto.
+	* control/hinf/hinfdemo.m: Ditto.
+	* control/hinf/hinfnorm.m: Ditto.
+	* control/hinf/hinfsyn.m: Ditto.
+	* control/hinf/hinfsyn_chk.m: Ditto.
+	* control/hinf/hinfsyn_ric.m: Ditto.
+	* control/hinf/wgt1o.m: Ditto.
+	* control/hinf/dgkfdemo.m: Ditto.
+	* control/hinf/is_dgkf.m: Ditto.
+
+	* control/marsyas: New directory.
+	* control/marsyas/demomarsyas.m: Move here from control directory.
+	* control/marsyas/susball.m: Ditto.
+
+	* control/obsolete/dezero.m: Move here from control directory.
+	* control/obsolete/rotg.m: Ditto.
+
+	* control/system: New directory.
+	* control/system/abcddim.m: Move here from control directory.
+	* control/system/abcddims.m: Ditto.
+	* control/system/buildssic.m: Ditto.
+	* control/system/c2d.m: Ditto.
+	* control/system/d2c.m: Ditto.
+	* control/system/dmr2d.m: Ditto.
+	* control/system/fir2sys.m: Ditto.
+	* control/system/is_abcd.m: Ditto.
+	* control/system/is_digital.m: Ditto.
+	* control/system/is_sample.m: Ditto.
+	* control/system/is_signal_list.m: Ditto.
+	* control/system/is_siso.m: Ditto.
+	* control/system/is_controllable.m: Ditto.
+	* control/system/is_detectable.m: Ditto.
+	* control/system/is_observable.m: Ditto.
+	* control/system/is_stabilizable.m: Ditto.
+	* control/system/is_stable.m: Ditto.
+	* control/system/jet707.m: Ditto.
+	* control/system/listidx.m: Ditto.
+	* control/system/moddemo.m: Ditto.
+	* control/system/ord2.m: Ditto.
+	* control/system/packedform.m: Ditto.
+	* control/system/parallel.m: Ditto.
+	* control/system/ss2sys.m: Ditto.
+	* control/system/ss2tf.m: Ditto.
+	* control/system/ss2zp.m: Ditto.
+	* control/system/starp.m: Ditto.
+	* control/system/sys2fir.m: Ditto.
+	* control/system/sys2ss.m: Ditto.
+	* control/system/sys2tf.m: Ditto.
+	* control/system/sys2zp.m: Ditto.
+	* control/system/sysadd.m: Ditto.
+	* control/system/sysappend.m: Ditto.
+	* control/system/syschnamesl.m: Ditto.
+	* control/system/syschtsam.m: Ditto.
+	* control/system/sysconnect.m: Ditto.
+	* control/system/syscont.m: Ditto.
+	* control/system/syscont_disc.m: Ditto.
+	* control/system/sysdefioname.m: Ditto.
+	* control/system/sysdefstname.m: Ditto.
+	* control/system/sysdimensions.m: Ditto.
+	* control/system/sysdisc.m: Ditto.
+	* control/system/sysdup.m: Ditto.
+	* control/system/sysgetsignals.m: Ditto.
+	* control/system/sysgettsam.m: Ditto.
+	* control/system/sysgettype.m: Ditto.
+	* control/system/sysgroup.m: Ditto.
+	* control/system/sysgroupn.m: Ditto.
+	* control/system/sysidx.m: Ditto.
+	* control/system/sysmin.m: Ditto.
+	* control/system/sysmult.m: Ditto.
+	* control/system/sysout.m: Ditto.
+	* control/system/sysprune.m: Ditto.
+	* control/system/sysreorder.m: Ditto.
+	* control/system/sysrepdemo.m: Ditto.
+	* control/system/sysscale.m: Ditto.
+	* control/system/syssetsignals.m: Ditto.
+	* control/system/syssub.m: Ditto.
+	* control/system/sysupdate.m: Ditto.
+	* control/system/tf2ss.m: Ditto.
+	* control/system/tf2sys.m: Ditto.
+	* control/system/tf2sysl.m: Ditto.
+	* control/system/tf2zp.m: Ditto.
+	* control/system/tfout.m: Ditto.
+	* control/system/ugain.m: Ditto.
+	* control/system/zp2ss.m: Ditto.
+	* control/system/zp2ssg2.m: Ditto.
+	* control/system/zp2sys.m: Ditto.
+	* control/system/zp2tf.m: Ditto.
+	* control/system/zpout.m: Ditto.
+
+	* control/util: New directory.
+	* control/util/axis2dlim.m: Move here from control directory.
+	* control/util/outlist.m: Ditto.
+	* control/util/prompt.m: Ditto.
+	* control/util/run_cmd.m: Ditto.
+	* control/util/sortcom.m: Ditto.
+	* control/util/strappend.m: Ditto.
+	* control/util/swap.m: Ditto.
+	* control/util/zgfmul.m: Ditto.
+	* control/util/zgfslv.m: Ditto.
+	* control/util/zginit.m: Ditto.
+	* control/util/zgpbal.m: Ditto.
+	* control/util/zgreduce.m: Ditto.
+	* control/util/zgrownorm.m: Ditto.
+	* control/util/zgscal.m: Ditto.
+	* control/util/zgsgiv.m: Ditto.
+	* control/util/zgshsr.m: Ditto.
+
+2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* gethelp.cc (extract_help_text): Discard first space character
+	after consecutive comment characters.
+
+Thu Jan 13 00:56:57 2000  John W. Eaton  <jwe@bahaha.che.wisc.edu>
+
+	* control/obsolete: New directory
+	* control/obsolete/swaprows.m: Move here from control directory.
+	* control/obsolete/swapcols.m: Ditto.
+	* control/obsolete/dlqg.m: Ditto.
+	* control/obsolete/minfo.m: Ditto.
+	* control/obsolete/packsys.m: Ditto.
+	* control/obsolete/qzval.m: Ditto.
+	* control/obsolete/unpacksys.m: Ditto.
+	* control/obsolete/series.m: Ditto.
+	* control/obsolete/syschnames.m: Ditto.
+	* polynomial/polyout.m: Ditto.
+
+2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/fliplr.m: Eliminate useless copy of arg.
+	* general/flipud.m: Ditto.
+
+2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/cross.m: Only return a row vector if both args
+	are row vectors.
+	* polynomial/polyfit.m: Likewise.
+
+	* signal/autocov.m: Don't reset prefer_column_vectors.
+
+	* statistics/distributions/discrete_rnd.m:
+	Always generate a row vector.
+	* statistics/distributions/hypergeometric_rnd.m: Likewise.
+
+2000-01-11  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* strings/upper.m: Add missing `-*- texinfo -*-' tag to doc string.
+
+	* audio/setaudio.m: Texinfoize doc string.
+	* control/com2str.m: Likewise.
+	* control/controldemo.m: Likewise.
+	* control/DEMOcontrol.m: Likewise.
+	* control/dezero.m: Likewise.
+	* control/dre.m: Likewise.
+	* control/hinfsyn_ric.m: Likewise.
+
+2000-01-05  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* io/printf.m: Add @seealso{...} to doc string.
+	* io/puts.m: Likewise.
+	* plot/semilogx.m: Likewise.
+	* plot/semilogy.m: Likewise.
+	* plot/__pltopt__.m: Likewise.
+	* plot/bar.m: Likewise.
+	* plot/xlabel.m: Likewise.
+	* plot/grid.m: Likewise.
+	* plot/shg.m: Likewise.
+	* plot/title.m: Likewise.
+	* plot/mesh.m: Likewise.
+	* plot/__pltopt1__.m: Likewise.
+	* plot/contour.m: Likewise.
+	* plot/hist.m: Likewise.
+	* plot/stairs.m: Likewise.
+	* plot/meshgrid.m: Likewise.
+	* plot/polar.m: Likewise.
+	* plot/loglog.m: Likewise.
+	* plot/plot.m: Likewise.
+	* miscellaneous/semicolon.m: Likewise.
+	* miscellaneous/menu.m: Likewise.
+	* miscellaneous/etime.m: Likewise.
+	* miscellaneous/texas_lotto.m: Likewise.
+	* miscellaneous/comma.m: Likewise.
+	* audio/lin2mu.m: Likewise.
+	* audio/playaudio.m: Likewise.
+	* audio/loadaudio.m: Likewise.
+	* audio/saveaudio.m: Likewise.
+	* audio/mu2lin.m: Likewise.
+	* audio/record.m: Likewise.
+	* strings/isletter.m: Likewise.
+	* strings/lower.m: Likewise.
+	* strings/lower.m: Likewise.
+	* strings/upper.m: Likewise.
+	* specfun/erfinv.m: Likewise.
+	* specfun/gammai.m: Likewise.
+	* specfun/log2.m: Likewise.
+	* specfun/pow2.m: Likewise.
+	* elfun/gcd.m: Likewise.
+	* elfun/lcm.m: Likewise.
+	* special-matrix/vander.m: Likewise.
+	* special-matrix/sylvester_matrix.m: Likewise.
+	* special-matrix/hilb.m: Likewise.
+	* special-matrix/hankel.m: Likewise.
+	* special-matrix/toeplitz.m: Likewise.
+	* special-matrix/invhilb.m: Likewise.
+	* statistics/base/std.m: Likewise.
+	* statistics/base/median.m: Likewise.
+	* linear-algebra/cond.m: Likewise.
+	* linear-algebra/norm.m: Likewise.
+	* finance/nper.m: Likewise.
+	* finance/pmt.m: Likewise.
+	* finance/pv.m: Likewise.
+	* finance/rate.m: Likewise.
+	* finance/npv.m: Likewise.
+	* general/fliplr.m: Likewise.
+	* general/flipud.m: Likewise.
+	* general/is_scalar.m: Likewise.
+	* general/rem.m: Likewise.
+	* general/perror.m: Likewise.
+	* general/tril.m: Likewise.
+	* general/rot90.m: Likewise.
+	* general/num2str.m: Likewise.
+	* general/int2str.m: Likewise.
+	* general/reshape.m: Likewise.
+	* general/logspace.m: Likewise.
+	* general/is_symmetric.m: Likewise.
+	* general/is_vector.m: Likewise.
+	* general/nextpow2.m: Likewise.
+	* general/columns.m: Likewise.
+	* general/is_square.m: Likewise.
+	* general/rows.m: Likewise.
+	* control/ugain.m: Likewise.
+	* control/damp.m: Likewise.
+	* control/dare.m: Likewise.
+	* control/are.m: Likewise.
+	* control/sys2fir.m: Likewise.
+	* control/abcddim.m: Likewise.
+	* control/is_abcd.m: Likewise.
+	* control/step.m: Likewise.
+	* control/is_observable.m: Likewise.
+	* control/is_controllable.m: Likewise.
+	* control/jet707.m: Likewise.
+	* control/polyout.m: Likewise.
+	* control/impulse.m: Likewise.
+	* control/lqg.m: Likewise.
+	* control/is_detectable.m: Likewise.
+	* control/sysdimensions.m: Likewise.
+	* control/sysupdate.m: Likewise.
+	* control/stepimp.m: Likewise.
+	* control/is_stable.m: Likewise.
+	* control/tfout.m: Likewise.
+	* control/zpout.m: Likewise.
+
+2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* set/complement.m: Add @seealso{} stuff.
+	* set/create_set.m: Likewise.
+	* set/intersection.m: Likewise.
+	* set/union.m: Likewise.
+
+1999-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/d2c.m: Use double quotes instead of single quotes for
+	string constants.
+	* control/dgkfdemo.m: Likewise.
+	* control/fir2sys.m: Likewise.
+	* control/frdemo.m: Likewise.
+	* control/moddemo.m: Likewise.
+	* control/minfo.m: Likewise.
+	* control/is_stabilizable.m: Likewise.
+	* control/is_dgkf.m: Likewise.
+	* control/polyout.m: Likewise.
+	* control/sysconnect.m: Likewise.
+	* control/sysrepdemo.m: Likewise.
+	* control/tf2sys.m: Likewise.
+	* control/tfout.m: Likewise.
+	* control/zp2sys.m: Likewise.
+	* control/zpout.m: Likewise.
+	* control/tzero.m: Likewise.
+
+	* control/DEMOcontrol.m: Handle moddemo case too.
+
+	* image/loadimage.m: Use double quotes instead of single quotes
+	for string constants.  Use sprintf instead of square brackets to
+	construct string.
+
+	* control/DEMOcontrol.m: Formatting tweaks.
+	* control/fir2sys.m: Likewise.
+
+1999-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkdoc: Only delete spaces before @ characters at the beginning
+	of a line.
+
+1999-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/bddemo.m: Make it more likely to work with any value of
+	whitespace_in_literal_matrix.
+	* control/analdemo.m: Ditto.
+	* control/dgkfdemo.m: Ditto.
+	* control/frdemo.m: Ditto.
+	* control/sysrepdemo.m: Ditto.
+	* control/moddemo.m: Ditto.
+	* control/zp2ss.m: Ditto.
+	* control/zp2tf.m: Ditto.
+	* control/syssub.m: Ditto.
+	* finance/npv.m: Ditto.
+	* statistics/base/studentize.m: Ditto.
+	* statistics/base/values.m: Ditto.
+	* statistics/distributions/exponential_cdf.m: Ditto.
+	* statistics/distributions/poisson_cdf.m: Ditto.
+
+	* control/dezero.m: Use toascii to convert string to ASCII value
+	instead of multiplying it by 1.
+
+	* control/zp2sys.m: Don't save and restore implicit_str_to_num_ok.
+	* control/zpout.m: Ditto.
+	* control/tfout.m: Ditto.
+	* control/tf2sys.m: Ditto.
+	* control/syssub.m: Ditto.
+	* control/syssetsignals.m: Ditto.
+	* control/sysout.m: Ditto.
+	* control/sysmult.m: Ditto.
+	* control/sysgroup.m: Ditto.
+	* control/sysdup.m: Ditto.
+	* control/sysdisc.m: Ditto.
+	* control/syscont.m: Ditto.
+	* control/sysconnect.m: Ditto.
+	* control/sysappend.m: Ditto.
+	* control/sysadd.m: Ditto.
+	* control/ss2sys.m: Ditto.
+	* control/nyquist.m: Ditto.
+	* control/lqg.m: Ditto.
+	* control/fir2sys.m: Ditto.
+	* control/dmr2d.m: Ditto.
+	* control/dezero.m: Ditto.
+	* control/d2c.m: Ditto.
+	* control/c2d.m: Ditto.
+	* control/bddemo.m: Ditto.
+	* control/pzmap.m: Ditto.
+
+1999-12-08  Daniel Calvelo  <dcalvelo@pharion.univ-lille2.fr>
+
+	* signal/spectral_adf.m: Fix typo.
+
+1999-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/cond.m: Texinfoize doc string.
+	* linear-algebra/kron.m: Ditto.
+	* linear-algebra/norm.m: Ditto.
+	* linear-algebra/null.m: Ditto.
+	* linear-algebra/orth.m: Ditto.
+	* linear-algebra/rank.m: Ditto.
+	* linear-algebra/trace.m: Ditto.
+	* linear-algebra/qzhess.m: Ditto.
+	* miscellaneous/menu.m: Ditto.
+	* general/perror.m: Ditto.
+	* general/strerror.m: Ditto.
+	* general/columns.m: Ditto.
+	* general/rows.m: Ditto.
+	* image/colormap.m: Ditto.
+	* image/gray.m: Ditto.
+	* image/gray2ind.m: Ditto.
+	* image/image.m: Ditto.
+	* image/imagesc.m: Ditto.
+	* image/imshow.m: Ditto.
+	* image/ind2gray.m: Ditto.
+	* image/ind2rgb.m: Ditto.
+	* image/loadimage.m: Ditto.
+	* image/rgb2ntsc.m: Ditto.
+	* image/ntsc2rgb.m: Ditto.
+	* image/ocean.m: Ditto.
+	* image/rgb2ind.m: Ditto.
+	* image/saveimage.m: Ditto.
+	* io/printf.m: Ditto.
+	* io/puts.m: Ditto.
+
+1999-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* special-matrix/hankel.m: Texinfoize doc string.
+	* special-matrix/hilb.m: Ditto.
+	* special-matrix/invhilb.m: Ditto.
+	* special-matrix/sylvester_matrix.m: Ditto.
+	* special-matrix/toeplitz.m: Ditto.
+	* special-matrix/vander.m: Ditto.
+	* linear-algebra/vec.m: Ditto.
+	* linear-algebra/vech.m: Ditto.
+	* general/common_size.m: Ditto.
+	* general/diff.m: Ditto.
+	* general/fliplr.m: Ditto.
+	* general/flipud.m: Ditto.
+	* general/rot90.m: Ditto.
+	* general/reshape.m: Ditto.
+	* general/shift.m: Ditto.
+	* general/tril.m: Ditto.
+	* general/triu.m: Ditto.
+	* general/logspace.m: Ditto.
+	* general/nargchk.m: Ditto.
+
+1999-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/base/mean: Texinfoize doc string.
+	* statistics/base/median: Ditto.
+	* statistics/base/std: Ditto.
+	* statistics/base/cov: Ditto.
+	* statistics/base/corrcoef: Ditto.
+	* statistics/base/kurtosis: Ditto.
+	* statistics/base/mahalanobis: Ditto.
+	* statistics/base/skewness: Ditto.
+	* statistics/base/gls.m: Ditto.
+	* statistics/base/ols.m: Ditto.
+	* signal/detrend.m: Ditto.
+	* signal/freqz.m: Ditto.
+	* signal/sinc.m: Ditto.
+	* signal/fftconv.m: Ditto.
+	* signal/fftfilt.m: Ditto.
+	* set/create_set.m: Ditto.
+	* set/union.m: Ditto.
+	* set/intersection.m: Ditto.
+	* set/complement.m: Ditto.
+	* poly/compan.m: Ditto.
+	* poly/conv: Ditto.
+	* poly/deconv: Ditto.
+	* poly/poly: Ditto.
+	* poly/polyderiv: Ditto.
+	* poly/polyfit: Ditto.
+	* poly/polyinteg: Ditto.
+	* poly/polyreduce: Ditto.
+	* poly/polyval: Ditto.
+	* poly/polyvalm: Ditto.
+	* poly/residue: Ditto.
+	* poly/roots: Ditto.
+	* plot/top_title.m: Ditto
+	* plot/subwindow.m: Ditto
+	* plot/subplot.m: Ditto
+	* plot/plot_border.m: Ditto
+	* plot/oneplot.m: Ditto
+	* plot/multiplot.m: Ditto
+	* plot/mplot.m: Ditto
+	* plot/xlabel.m: Ditto
+	* plot/figure.m: Ditto
+	* plot/meshdom.m: Ditto
+	* plot/mesh.m: Ditto
+	* plot/stairs.m: Ditto
+	* plot/polar.m: Ditto
+	* plot/loglog.m: Ditto
+	* plot/hist.m: Ditto
+	* plot/contour.m: Ditto
+	* plot/bar.m: Ditto
+	* plot/axis.m: Ditto
+	* plot/plot.m: Ditto.
+
+1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/pinv.m: Delete.
+
+	* Makefile.in (DOCSTRINGS): Don't echo $(ALL_M_FILES).
+
+	* strings/blanks.m: Texinfoize doc string.
+	* strings/strcat.m: Ditto.
+	* strings/str2mat.m: Ditto.
+	* strings/deblank.m: Ditto.
+	* strings/findstr.m: Ditto.
+	* strings/index.m: Ditto.
+	* strings/rindex.m: Ditto.
+	* strings/split.m: Ditto.
+	* strings/strcmp.m: Ditto.
+	* strings/strrep.m: Ditto.
+	* strings/substr.m: Ditto.
+	* general/int2str.m: Ditto.
+	* general/num2str.m: Ditto.
+	* strings/dec2bin.m: Ditto.
+	* strings/bin2dec: Ditto.
+	* strings/dec2bin: Ditto.
+	* strings/dec2hex: Ditto.
+	* strings/hex2dec: Ditto.
+	* strings/str2num: Ditto.
+
+1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTFILES): Include DOCSTRINGS.
+
+1999-11-09  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* control/DEMOcontrol.m: Texinfoize doc string.
+	* control/abcddim.m: Ditto.
+	* control/abcddims.m: Ditto.
+	* control/analdemo.m: Ditto.
+	* control/are.m: Ditto.
+	* control/axis2dlim.m: Ditto.
+	* control/bddemo.m: Ditto.
+	* control/bode.m: Ditto.
+	* control/bode_bounds.m: Ditto.
+	* control/bodquist.m: Ditto.
+	* control/buildssic.m: Ditto.
+	* control/c2d.m: Ditto.
+	* control/ctrb.m: Ditto.
+	* control/d2c.m: Ditto.
+	* control/damp.m: Ditto.
+	* control/dare.m: Ditto.
+	* control/dcgain.m: Ditto.
+	* control/dgkfdemo.m: Ditto.
+	* control/dgram.m: Ditto.
+	* control/dlqe.m: Ditto.
+	* control/dlqr.m: Ditto.
+	* control/dlyap.m: Ditto.
+	* control/dmr2d.m: Ditto.
+	* control/fir2sys.m: Ditto.
+	* control/frdemo.m: Ditto.
+	* control/freqchkw.m: Ditto.
+	* control/freqresp.m: Ditto.
+	* control/gram.m: Ditto.
+	* control/h2norm.m: Ditto.
+	* control/h2syn.m: Ditto.
+	* control/hinf_ctr.m: Ditto.
+	* control/hinfdemo.m: Ditto.
+	* control/hinfnorm.m: Ditto.
+	* control/hinfsyn.m: Ditto.
+	* control/hinfsyn_chk.m: Ditto.
+	* control/impulse.m: Ditto.
+	* control/is_abcd.m: Ditto.
+	* control/is_controllable.m: Ditto.
+	* control/is_detectable.m: Ditto.
+	* control/is_dgkf.m: Ditto.
+	* control/is_digital.m: Ditto.
+	* control/is_observable.m: Ditto.
+	* control/is_sample.m: Ditto.
+	* control/is_signal_list.m: Ditto.
+	* control/is_siso.m: Ditto.
+	* control/is_stabilizable.m: Ditto.
+	* control/is_stable.m: Ditto.
+	* control/jet707.m: Ditto.
+	* control/lqe.m: Ditto.
+	* control/lqg.m: Ditto.
+	* control/lqr.m: Ditto.
+	* control/lsim.m: Ditto.
+	* control/ltifr.m: Ditto.
+	* control/lyap.m: Ditto.
+	* control/moddemo.m: Ditto.
+	* control/nyquist.m: Ditto.
+	* control/obsv.m: Ditto.
+	* control/ord2.m: Ditto.
+	* control/outlist.m: Ditto.
+	* control/pinv.m: Ditto.
+	* control/place.m: Ditto.
+	* control/polyout.m: Ditto.
+	* control/prompt.m: Ditto.
+	* control/pzmap.m: Ditto.
+	* control/qzval.m: Ditto.
+	* control/rldemo.m: Ditto.
+	* control/rlocus.m: Ditto.
+	* control/sortcom.m: Ditto.
+	* control/ss2sys.m: Ditto.
+	* control/ss2tf.m: Ditto.
+	* control/ss2zp.m: Ditto.
+	* control/starp.m: Ditto.
+	* control/step.m: Ditto.
+	* control/stepimp.m: Ditto.
+	* control/susball.m: Ditto.
+	* control/sys2fir.m: Ditto.
+	* control/sys2ss.m: Ditto.
+	* control/sys2tf.m: Ditto.
+	* control/sys2zp.m: Ditto.
+	* control/sysadd.m: Ditto.
+	* control/sysappend.m: Ditto.
+	* control/syschnames.m: Ditto.
+	* control/syschnamesl.m: Ditto.
+	* control/syschtsam.m: Ditto.
+	* control/sysconnect.m: Ditto.
+	* control/syscont.m: Ditto.
+	* control/syscont_disc.m: Ditto.
+	* control/sysdefioname.m: Ditto.
+	* control/sysdefstname.m: Ditto.
+	* control/sysdimensions.m: Ditto.
+	* control/sysdisc.m: Ditto.
+	* control/sysdup.m: Ditto.
+	* control/sysgetsignals.m: Ditto.
+	* control/sysgettype.m: Ditto.
+	* control/sysgroup.m: Ditto.
+	* control/sysgroupn.m: Ditto.
+	* control/sysmult.m: Ditto.
+	* control/sysout.m: Ditto.
+	* control/sysprune.m: Ditto.
+	* control/sysreorder.m: Ditto.
+	* control/sysrepdemo.m: Ditto.
+	* control/sysscale.m: Ditto.
+	* control/syssetsignals.m: Ditto.
+	* control/syssub.m: Ditto.
+	* control/sysupdate.m: Ditto.
+	* control/tf2ss.m: Ditto.
+	* control/tf2sys.m: Ditto.
+	* control/tf2sysl.m: Ditto.
+	* control/tf2zp.m: Ditto.
+	* control/tfout.m: Ditto.
+	* control/tzero.m: Ditto.
+	* control/tzero2.m: Ditto.
+	* control/ugain.m: Ditto.
+	* control/wgt1o.m: Ditto.
+	* control/zgfmul.m: Ditto.
+	* control/zgfslv.m: Ditto.
+	* control/zginit.m: Ditto.
+	* control/zgpbal.m: Ditto.
+	* control/zgreduce.m: Ditto.
+	* control/zgrownorm.m: Ditto.
+	* control/zgscal.m: Ditto.
+	* control/zgsgiv.m: Ditto.
+	* control/zgshsr.m: Ditto.
+	* control/zp2ss.m: Ditto.
+	* control/zp2ssg2.m: Ditto.
+	* control/zp2sys.m: Ditto.
+	* control/zp2tf.m: Ditto.
+	* control/zpout.m: Ditto.
+
+1999-11-02  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* audio/lin2mu.m: Texinfoize doc string.
+	* audio/loadaudio.m: Ditto.
+	* audio/mu2lin.m: Ditto.
+	* audio/playaudio.m: Ditto.
+	* audio/record.m: Ditto.
+	* audio/saveaudio.m: Ditto.
+
+1999-10-26  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* elfun/acot.m: Texinfoize doc string.
+	* elfun/acsc.m: Ditto.
+	* elfun/acsch.m: Ditto.
+	* elfun/asec.m: Ditto.
+	* elfun/asech.m: Ditto.
+	* elfun/cot.m: Ditto.
+	* elfun/coth.m: Ditto.
+	* elfun/csc.m: Ditto.
+	* elfun/csch.m: Ditto.
+	* elfun/gcd.m: Ditto.
+	* elfun/lcm.m: Ditto.
+	* elfun/sec.m: Ditto.
+	* elfun/sech.m: Ditto.
+	* general/nextpow2.m: Ditto.
+	* general/rem.m: Ditto.
+	* linear-algebra/commutation_matrix.m: Ditto.
+	* linear-algebra/cross.m: Ditto.
+	* linear-algebra/duplication_matrix.m: Ditto.
+	* miscellaneous/bincoeff.m: Ditto.
+	* miscellaneous/xor.m: Ditto.
+	* specfun/bessel.m: Ditto.
+	* specfun/beta.m: Ditto.
+	* specfun/betai.m: Ditto.
+	* specfun/erfinv.m: Ditto.
+	* specfun/gammai.m: Ditto.
+	* specfun/log2.m: Ditto.
+	* specfun/pow2.m: Ditto.
+
+1999-10-23  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* general/is_scalar.m: Texinfoize help text.
+	* general/is_square.m: Ditto.
+	* general/is_symmetric.m: Ditto.
+
+1999-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/split.m: If the string to be split is empty, just return
+	an empty string.
+
+1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (ALL_M_FILES): New macro.
+	(DOCSTRINGS): No longer .PHONY; depend on $(ALL_M_FILES).
+
+1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/bode.m: Don't return anything if nargout == 0.
+
+1999-10-20  James B. Rawlings  <jbraw@bevo.che.wisc.edu>
+
+	* control/bode.m: Don't do axis scaling for magnitude plots.
+
+1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTFILES): Add move-if-change, mkdoc, and
+	gethelp.cc to the list.
+
+1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time/asctime.m: Texinfoize help text.
+	* time/clock.m: Ditto.
+	* time/date.m: Ditto.
+	* miscellaneous/cputime.m: Ditto.
+	* miscellaneous/etime.m: Ditto.
+	* miscellaneous/is_leap_year.m: Ditto.
+	* miscellaneous/popen2.m: Ditto.
+	* miscellaneous/version.m: Ditto.
+	* miscellaneous/tic.m: Ditto.
+	* miscellaneous/toc.m: Just refer to tic.m.
+
+	* Makefile.in (dist, bin-dist): Use `$(MAKE) -C dir' instead of
+	`cd dir; $(MAKE); cd ..'.
+	($(SUBDIRS)): Likewise.
+
+	* statistics/Makefile.in ($(SUBDIRS)): Likewise.
+
+	* statistics/Makefile.in (bin-dist): Use `$(MAKE) -C dir' instead
+	of `cd dir; $(MAKE)'.
+
+	* gethelp.cc, mkdoc: New files.
+	* Makefile.in: Use them to create DOCSTRINGS file from .m file
+	sources.
+
+1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/kron.m: Fix typo in previous change
+
+1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/bode.m: Allow optional 5th arg to specify plot style.
+
+Wed Sep 22 22:12:03 1999 A. Scottedward Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* linear-algebra/krylov.m: Correctly handle case of V having full
+	rank when V has more columns than rows.
+
+Mon Sep 20 23:04:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/linspace.m, linear-algebra/pinv.m: Delete.
+
+	* statistics/tests/manova.m: Avoid problems if
+	whitespace_in_literal_matrix is set to "traditional".
+	* statistics/tests/t_test_regression.m: Likewise.
+	* statistics/tests/u_test.m: Likewise.
+	* statistics/tests/chisquare_test_homogeneity.m: Likewise.
+	* statistics/tests/anova.m: Likewise.
+	* statistics/tests/kruskal_wallis_test.m: Likewise.
+	* statistics/base/statistics.m: Likewise.
+	* image/saveimage.m: Likewise.
+	* signal/arch_fit.m: Likewise.
+	* signal/autoreg_matrix.m: Likewise.
+	* signal/triangle_lw.m: Likewise.
+	* strings/dec2hex.m: Likewise.
+
+Thu Sep  9 19:31:58 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Initialize scale.
+
+Sun Sep  5 22:13:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/reshape.m: Allow reshape (a, size (b)).
+
+Fri Sep  3 00:01:38 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/erfinv.m: Improve stopping criterion.
+	Add iteration count as second return value.
+
+Mon Aug 30 12:07:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/base/mean.m: Use .', not ' to reorient row vectors.
+
+Tue Aug 17 11:11:27 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/pack.m: New function.
+
+Mon Aug 16 07:46:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/figure.m: Always return figure number.  With no args,
+ 	figure now creates a new figure window and returns its number.
+	Accept figure (property, value) syntax, but do nothing.
+
+Thu Aug 12 09:28:01 PDT 1999  Tom Poage  <tfpoage@ucdavis.edu>
+
+	* general/shift.m: Avoid printing temporary value for backward shift.
+
+Mon Aug  2 16:39:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/bar.m: Compute bar widths correctly when x-values are not
+	evenly spaced.
+
+Mon Jul 12 22:48:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/cond.m: Avoid returning NaN for matrices that
+	contain only zeros.
+
+Sun Jun 20 22:24:27 1999  Eduardo Gallestey  <eduardo@faceng.anu.edu.au>
+
+	* linear-algebra/kron.m: Create result matrix and insert blocks
+	instead of appending them.
+
+Sat Jun 19 01:52:18 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/bodquist.m, control/buildssic.m, control/is_digital.m,
+	control/stepimp.m, control/sysmin.m, control/syssetsignals.m:
+	Update from A. S. Hodel.
+
+Fri Jun 18 12:19:22 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Correct previous change.
+
+Wed Apr  7 13:57:26 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/qrhouse.m, linear-algebra/krygetq.m: Delete.
+
+Wed Apr  7 13:22:43 1999  A. S. Hodel  <a.s.hodel@eng.auburn.edu>
+
+	* control/is_controllable.m, control/zgscal.m: Accomodate new
+	version of krylov and krylovb.
+
+	* control/outlist.m, control/sysout.m: Fix typos.
+
+	* control/sysdimensions.m: Add option for total number of states.
+
+	* linear-algebra/krylov.m: Improve robustness by row-pivoting.
+	* linear-algebra/krylovb.m: Just call krylov with appropriate
+	arguments.
+
+Tue Mar 30 00:43:09 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/index.m: Fail with meaningful error message if either
+	arg is a string array.
+
+Wed Mar 24 20:34:48 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/norm.m: Do the right thing for 1- and
+	infinity-norms of complex matrices.  From Sven Khatri
+	<khatri@saturn.vocalpoint.com>.
+
+Tue Mar 16 13:36:36 1999  A. Scottedward Hodel"  <scotte@eng.auburn.edu>
+
+	* linear-algebra/qrhouse.m: Handle default args correctly.
+
+Thu Mar 11 12:52:34 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/split.m: Avoid problems when splitting strings that have
+	\ in them.
+
+Thu Mar 11 12:36:13 1999  Massimo Lorenzin  <maxlorenzin@tin.it>
+
+	* image/colormap.m: Do better arg checking, handle string args
+	that name the colormap function to call (e.g., colormap ("ocean")).
+
+Mon Mar  8 22:23:24 1999  Rolf Fabian  <fabian@TU-Cottbus.De>
+
+	* polynomial/polyfit.m: Use .' transpose operator, not '.
+	* linear-algebra/dot.m: Likewise.
+	* linear-algebra/cross.m: Likewise.
+	* general/rot90.m: Likewise.
+
+Sat Mar  6 01:45:00 1999  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
+
+	* linear-algebra/qrhouse.m: Permute columns at each iteration so
+	that the leading column is not all zeros.
+
+Fri Mar  5 00:37:47 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/shift.m: Fix potential problems with
+	whitespace_in_literal_matrix.
+	* signal/arch_rnd.m: Ditto.
+	* signal/autocov.m: Ditto.
+	* signal/diffpara.m: Ditto.
+	* signal/hurst.m: Ditto.
+	* signal/periodogram.m: Ditto.
+	* signal/spectral_adf.m: Ditto.
+	* signal/spectral_xdf.m: Ditto.
+	* signal/spencer.m: Ditto.
+	* signal/synthesis.m: Ditto.
+	* statistics/distributions/wiener_rnd.m: Ditto.
+	* statistics/models/logistic_regression_likelihood.m: Ditto.
+	* statistics/models/logistic_regression.m: Ditto.
+	* statistics/models/logistic_regression_derivatives.m: Ditto.
+	* statistics/tests/run_test.m: Ditto.
+	* statistics/tests/chisquare_test_independence.m: Ditto.
+
+Wed Mar  3 02:25:00 1999  Joao Cardoso  <jcardoso@inescn.pt>
+
+	* plot/__plr2__.m: Fix typo.
+
+Tue Jan 12 10:31:15 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__pltopt1__.m: Accept "k" to mean black.
+
+Fri Dec 11 10:43:19 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
+
+	* linear-algebra/krylov.m: Force empty_list_elements_ok for this
+	function.
+
+Thu Dec 10 11:07:00 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
+
+	* control/ss2sys.m: Fix typo.
+
+Wed Dec  9 12:42:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/subplot.m, plot/oneplot.m: Don't call clearplot.
+
+	* control: Update from A. S. Hodel <a.s.hodel@eng.auburn.edu> for
+	signal names as lists of strings instead of string arrays.
+
+Fri Dec  4 16:08:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* quaternion: New directory of functions from A. S. Hodel
+	<a.s.hodel@eng.auburn.edu>.
+	* Makefile.in (SUBDIRS): Add it to the list.
+	* quaternion/Makefile.in: New file.
+	* configure.in (AC_OUTPUT): Add quaternion/Makefile.
+
+Tue Nov 24 21:41:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Make it work again for black and white colormaps.
+
+	* image/imagesc.m: Use rows (colormap), not length (colormap),
+	since there can be fewer rows than columns.  Round values to
+	nearest position in colormap instead of truncating. Correct usage
+	message.
+
+Tue Nov 24 14:50:52 1998  A Scott Hodel  <hodel@edalf1.msfc.nasa.gov>
+
+	* linear-algebra/krylov.m: New arg pflg.  If nonzero, avoid using
+	zero rows of [A,v] as householder pivots; this avoids spurious
+	non-zero entries in returned orthogonal matrix U, but destroys the
+	Householder matrix structure of H.
+
+Fri Nov 20 12:46:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/logical.m: Just copy input to output if argument is
+	already a logical object.
+
+Fri Nov  6 10:17:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* New files from OCST, in control subdiretory:
+
+	    DEMOcontrol.m      is_siso.m          syschnames.m
+	    abcddim.m          is_stabilizable.m  syschnamesl.m
+	    abcddims.m         is_stable.m        syschtsam.m
+	    analdemo.m         jet707.m           sysconnect.m
+	    are.m              lqe.m              syscont.m
+	    axis2dlim.m        lqg.m              syscont_disc.m
+	    bddemo.m           lqr.m              sysdefioname.m
+	    bode.m             lsim.m             sysdefstname.m
+	    bode_bounds.m      ltifr.m            sysdimensions.m
+	    bodquist.m         lyap.m             sysdisc.m
+	    buildssic.m        mb.m               sysdup.m
+	    c2d.m              minfo.m            sysgetsignals.m
+	    com2str.m          moddemo.m          sysgettsam.m
+	    controldemo.m      nichols.m          sysgettype.m
+	    ctrb.m             nyquist.m          sysgroup.m
+	    d2c.m              obsv.m             sysgroupn.m
+	    damp.m             ord2.m             sysmult.m
+	    dare.m             outlist.m          sysout.m
+	    dcgain.m           packedform.m       sysprune.m
+	    demomarsyas.m      packsys.m          sysreorder.m
+	    dezero.m;          parallel.m         sysrepdemo.m
+	    dgkfdemo.m         place.m            sysscale.m
+	    dgram.m            polyout.m          syssub.m
+	    dhinfdemo.m        prompt.m           sysupdate.m
+	    dlqe.m             pzmap.m            tf2ss.m
+	    dlqg.m             qzval.m            tf2sys.m
+	    dlqr.m             rldemo.m           tf2sysl.m
+	    dlyap.m            rlocus.m           tf2zp.m
+	    dmr2d.m            rotg.m             tfout.m
+	    fir2sys.m          run_cmd.m;         tzero.m
+	    frdemo.m           series.m           tzero2.m
+	    freqchkw.m         sortcom.m          ugain.m
+	    freqresp.m         ss2sys.m           unpacksys.m
+	    gram.m             ss2tf.m            wgt1o.m
+	    h2norm.m           ss2zp.m            zgfmul.m
+	    h2syn.m            starp.m            zgfslv.m
+	    hinf_ctr.m         step.m             zginit.m
+	    hinfdemo.m         stepimp.m          zgpbal.m
+	    hinfnorm.m         strappend.m;       zgreduce.m
+	    hinfsyn.m          susball.m          zgrownorm.m
+	    hinfsyn_chk.m      swap.m             zgscal.m
+	    impulse.m          swapcols.m         zgsgiv.m
+	    is_abcd.m          swaprows.m         zgshsr.m
+	    is_controllable.m  sys2fir.m          zp2ss.m
+	    is_detectable.m    sys2ss.m           zp2ssg2.m
+	    is_dgkf.m          sys2tf.m           zp2sys.m
+	    is_digital.m       sys2zp.m           zp2tf.m
+	    is_observable.m    sysadd.m           zpout.m
+	    is_sample.m        sysappend.m
+
+Thu Nov  5 13:28:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Escape newlinew in macro call with \.
+
+	* strings/deblank.m: Make it work for string arrays too.
+
+Wed Nov  4 21:51:13 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/housh.m: New file from the OCST.
+	* linear-algebra/krygetq.m: Ditto.
+	* linear-algebra/krylov.m: Ditto.
+	* linear-algebra/krylovb.m: Ditto.
+	* linear-algebra/qrhouse.m: Ditto.
+	* general/is_duplicate_entry.m: Ditto.
+
+	* general/is_symmetric.m: Call is_square instead of doing that
+	check in line.
+
+Wed Oct 28 11:51:14 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/is_square.m:
+
+	* general/isempty.m, general/is_matrix.m: Delete.
+
+	* general/is_symmetric: Delete special case for strings.  Whether
+	the conversion is valid should depend on implicit_str_to_num_ok.
+
+	* general/is_square.m: If arg is not a matrix, don't check size,
+	just return 0.
+	* general/is_symmetric: Likewise.
+	* general/is_vector.m: Likewise.
+	* general/is_scalar.m: Likewise.
+
+	* general/length.m: Delete.
+
+Fri Oct 23 00:21:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in: Add finance/Makefile, statistics/base/Makefile,
+	statistics/distributions/Makefile, statistics/models/Makefile,
+	and statistics/tests/Makefile to the list of files to create.
+
+	* finance/Makefile.in, statistics/base/Makefile.in,
+	statistics/distributions/Makefile.in, statistics/models/Makefile.in,
+  	statistics/tests/Makefile.in: New files.
+	* statistics/Makefile.in: Delete file lists.  Now only handle
+	subdirectories.
+	* Makefile.in (SUBDIRS): Add finance.
+
+	* Move the following files from statistics to statistics/base:
+
+	    corrcoef.m
+	    kurtosis.m
+	    mahalanobis.m
+	    median.m
+	    ols.m
+	    skewness.m
+	    std.m
+
+	New files, from Kurt Hornik's octave-ci package:
+
+	* finance (new directory):
+
+	    fv.m
+	    fvl.m
+	    irr.m
+	    nper.m
+	    npv.m
+	    pmt.m
+	    pv.m
+	    pvl.m
+	    rate.m
+	    vol.m
+
+	* linear-algebra/dmult.m
+
+	* signal:
+
+	    arch_fit.m
+	    arch_rnd.m
+	    arch_test.m
+	    arma_rnd.m
+	    autocor.m
+	    autocov.m
+	    autoreg_matrix.m
+	    bartlett.m
+	    blackman.m
+	    diffpara.m
+	    durbinlevinson.m
+	    fractdiff.m
+	    hamming.m
+	    hanning.m
+	    hurst.m
+	    periodogram.m
+	    rectangle_lw.m
+	    rectangle_sw.m
+	    sinetone.m
+	    sinewave.m
+	    spectral_adf.m
+	    spectral_xdf.m
+	    spencer.m
+	    stft.m
+	    synthesis.m
+	    triangle_lw.m
+	    triangle_sw.m
+	    yulewalker.m
+
+	* statistics/base (new directory):
+
+	    center.m
+	    cloglog.m
+	    cor.m
+	    cov.m
+	    cut.m
+	    iqr.m
+	    kendall.m
+	    logit.m
+	    mean.m
+	    meansq.m
+	    moment.m
+	    ppplot.m
+	    probit.m
+	    qqplot.m
+	    range.m
+	    ranks.m
+	    run_count.m
+	    spearman.m
+	    statistics.m
+	    studentize.m
+	    table.m
+	    values.m
+	    var.m
+
+	(Replaces cov.m and mean.m with new versions.)
+
+	* statistics/distributions (new directory):
+
+	    beta_cdf.m
+	    beta_inv.m
+	    beta_pdf.m
+	    beta_rnd.m
+	    binomial_cdf.m
+	    binomial_inv.m
+	    binomial_pdf.m
+	    binomial_rnd.m
+	    cauchy_cdf.m
+	    cauchy_inv.m
+	    cauchy_pdf.m
+	    cauchy_rnd.m
+	    chisquare_cdf.m
+	    chisquare_inv.m
+	    chisquare_pdf.m
+	    chisquare_rnd.m
+	    discrete_cdf.m
+	    discrete_inv.m
+	    discrete_pdf.m
+	    discrete_rnd.m
+	    empirical_cdf.m
+	    empirical_inv.m
+	    empirical_pdf.m
+	    empirical_rnd.m
+	    exponential_cdf.m
+	    exponential_inv.m
+	    exponential_pdf.m
+	    exponential_rnd.m
+	    f_cdf.m
+	    f_inv.m
+	    f_pdf.m
+	    f_rnd.m
+	    gamma_cdf.m
+	    gamma_inv.m
+	    gamma_pdf.m
+	    gamma_rnd.m
+	    geometric_cdf.m
+	    geometric_inv.m
+	    geometric_pdf.m
+	    geometric_rnd.m
+	    hypergeometric_cdf.m
+	    hypergeometric_inv.m
+	    hypergeometric_pdf.m
+	    hypergeometric_rnd.m
+	    kolmogorov_smirnov_cdf.m
+	    laplace_cdf.m
+	    laplace_inv.m
+	    laplace_pdf.m
+	    laplace_rnd.m
+	    logistic_cdf.m
+	    logistic_inv.m
+	    logistic_pdf.m
+	    logistic_rnd.m
+	    lognormal_cdf.m
+	    lognormal_inv.m
+	    lognormal_pdf.m
+	    lognormal_rnd.m
+	    normal_cdf.m
+	    normal_inv.m
+	    normal_pdf.m
+	    normal_rnd.m
+	    pascal_cdf.m
+	    pascal_inv.m
+	    pascal_pdf.m
+	    pascal_rnd.m
+	    poisson_cdf.m
+	    poisson_inv.m
+	    poisson_pdf.m
+	    poisson_rnd.m
+	    stdnormal_cdf.m
+	    stdnormal_inv.m
+	    stdnormal_pdf.m
+	    stdnormal_rnd.m
+	    t_cdf.m
+	    t_inv.m
+	    t_pdf.m
+	    t_rnd.m
+	    uniform_cdf.m
+	    uniform_inv.m
+	    uniform_pdf.m
+	    uniform_rnd.m
+	    weibull_cdf.m
+	    weibull_inv.m
+	    weibull_pdf.m
+	    weibull_rnd.m
+	    wiener_rnd.m
+
+	* statistics/models (new directory):
+
+	    logistic_regression.m
+	    logistic_regression_derivatives.m
+	    logistic_regression_likelihood.m
+
+	* statistics/tests (new directory):
+
+	    anova.m
+	    bartlett_test.m
+	    chisquare_test_homogeneity.m
+	    chisquare_test_independence.m
+	    cor_test.m
+	    f_test_regression.m
+	    hotelling_test.m
+	    hotelling_test_2.m
+	    kolmogorov_smirnov_test.m
+	    kolmogorov_smirnov_test_2.m
+	    kruskal_wallis_test.m
+	    manova.m
+	    mcnemar_test.m
+	    prop_test_2.m
+	    run_test.m
+	    sign_test.m
+	    t_test.m
+	    t_test_2.m
+	    t_test_regression.m
+	    u_test.m
+	    var_test.m
+	    welch_test.m
+	    wilcoxon_test.m
+	    z_test.m
+	    z_test_2.m
+
+Thu Oct 22 12:25:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time/date.m: Use %Y, not %y in format string, for Matlab 5
+	compatibility and to avoid Y2K problems.
+
+Mon Oct 19 17:26:35 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Just use the \ operator to handle the
+	least-squares solution.
+
+Thu Sep  3 12:40:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/str2num.m: If eval returns a string, return an empty matrix.
+
+	* strings/strrep.m: Don't convert args to numeric values.
+	Prevent warnings for empty string args.
+	From Georg Thimm <thimm@idiap.ch>.
+
+	* strings/strcat.m: Prevent warnings for empty string args.
+
+Wed Sep  2 17:20:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/menu.m: Remove special case for empty string
+	returned from input().  Add second arg to eval() to catch errors.
+
+Thu Jun 18 16:32:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__plt__.m: Don't call usleep.
+
+Mon May 18 11:42:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/dot.m: New function.
+
+	* strings/lower.m, strings/upper.m: New functions, for Matlab
+	compatibility.
+
+Fri May 15 01:16:53 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/hist.m: Also allow just one output argument.
+
+Sun May 10 23:00:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/deblank.m: Make it work if the string is only blanks.
+
+Tue May  5 00:53:36 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__plt2mv__.m: Delete calls to keyboard.
+
+Mon May  4 11:43:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/oneplot.m: Fix typo.
+
+Wed Apr 22 12:11:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/flops.m: Allow a single argument too.
+
+Tue Apr 21 10:18:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/str2mat.m: Also handle case when there are no empty
+	strings correctly.
+
+Mon Apr 20 22:14:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/isletter.m: New function, for Matlab compatibility.
+
+Fri Apr 17 10:53:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/str2mat.m: Handle string matrices too.
+
+Wed Apr 15 11:16:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* audio/loadaudio.m: Accept "pcm" as another file extension for
+	linear encoding.
+
+	* audio/saveaudio.m, audio/loadaudio.m, audio/playaudio.m,
+	audio/record.m: Open files in binary mode.
+
+Fri Apr 10 10:46:21 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/dump_prefs.m: Use string array for list of values.
+	Move functionality of dump_1_pref here, but use built-in function
+	type to extract value, and put it inside try/catch block.
+	* miscellaneous/dump_1_pref.m: Delete unused function.
+
+Wed Apr  8 13:17:58 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__pltopt1.m__: New file.
+	* plot/__pltopt.m__: Handle opt as a string array by calling
+	__pltopt1__ multiple times and returning a string array with rows
+	corresponding to the rows of opt.
+	* plot/__plt2ss__.m, plot/__plt2vv__.m, plot/__plt2vm__.m,
+	plot/__plt2mv__.m, plot/__plt2mm__.m: Handle fmt as a string
+	array.
+
+Fri Mar 27 03:00:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/mplot.m: Fix misspellings of global variables.
+	Don't call clearplot.
+
+Tue Mar 17 17:45:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/subplot.m, plot/multiplot.m: Set gnuplot_command_replot to
+	"cle;rep" when going in ot multiplot mode.
+	* plot/oneplot.m: Reset gnuplot_command_replot to "rep" when
+	switching out of multiplot mode.
+
+Fri Feb 20 01:31:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/mplot.m, plot/subplot.m, plot/oneplot.m, plot/multiplot.m,
+	plot/subwindow.m: Call clearplot after setting up multiplot mode.
+
+Tue Feb  3 00:18:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* special-matrix/sylvester_matrix.m: Rename from hadamard.m
+
+	* miscellaneous/bug_report.m: Don't try to get smart with
+	OCTAVE_HOME.  Assume octave-bug can be found in EXEC_PATH.
+
+	* Makefile.in (install): Create separate ls-R files for
+	$(datadir) and $(libexecdir).
+	(uninstall): Remove both ls-R files.
+
+Sat Jan 31 01:09:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* signal/fftshift.m: New file.
+
+	* plot/contour.m: Fix for non-square case.
+
+	* general/randperm.m: New file.
+
+Fri Jan 30 15:20:39 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/betai.m: Restore file for compatibility with previous
+	versions.  Call betainc with reordered args.
+	* specfun/gammai.m: Likewise, call gammainc with reordered args.
+
+Wed Jan 28 22:44:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/contour.m: Handle discrete contour levels.
+
+Tue Jan 27 04:31:22 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/lyap.m: For compatibility with Matlab, solve
+ 	A*X + X*A' + C = 0 instead of A'*X + X*A + C = 0.
+
+Wed Dec 10 00:14:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/bessel.m: New file.
+
+	* specfun/betai.m, specfun/betainc.m, specfun/gammai.m,
+	specfun/gammainc.m: Delete.
+
+Wed Nov 19 00:19:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/colormap.m: Initialize __current_color_map__ in global
+	statement.
+	* miscellaneous/toc.m: Initialize __tic_toc_timestamp__ in global
+	statement.
+	* plot/axis.m: Initialize __current_axis__ in global statement.
+	* plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/subplot.m,
+	plot/subwindow.m: Initialize __multiplot_mode__ in global statement.
+
+Tue Nov 18 01:35:50 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time/tic.m: Rename _time_tic_called to __tic_toc_timestamp__.
+	* time/toc.m: Likewise.
+
+	* image/colormap.m: Rename CURRENT_COLOR_MAP to __current_color_map__.
+
+	* plot/mplot.m, plot/multiplot.m, plot/subplot.m: Don't do
+	anything special for automatic_replot when in multiplot mode --
+	recent 3.6beta releases handle this correctly.
+
+	* plot/figure.m: Ensure that we are not in multiplot mode before
+	setting the terminal type.
+
+	* plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/subplot.m,
+ 	plot/subwindow.m: Use leading and trailing underscores for
+ 	`private' globals.
+
+	* plot/oneplot.m: Don't do anything if gnuplot_has_multiplot is false.
+
+Fri Nov 14 10:53:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__pltopt__.m: Use sprintf instead of strcat when adding TITLE.
+
+Fri Oct 10 11:18:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/gammai.m: Avoid problems with whitespace when
+	constructing matrices.
+
+	* polynomial/polyfit.m: Compute yf correctly.  From Seung Lee
+	<SJL@nrc.gov>.  Also return yf in the same orientation as the
+	original y vector.
+
+Fri Sep 19 17:04:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/cross.m: Use direct formula instead of calling
+	det three times in a loop.  If both args are column (row) vectors,
+	return a column (row) vector.  If they don't match, pay attention
+	to the value of prefer_column_vectors.
+
+Thu Aug 28 15:31:20 1997  Rolf Fabian  <fabian@olymp.Umwelt.TU-Cottbus.de>
+
+	* polynomial/polyvalm.m: Don't assume orthogonal eigenvectors for
+	nonsymmetric matrices.
+
+	* general/tril.m: Fix usage message.
+
+	* polynomial/polyvalm.m: Fix error messages.
+	* polynomial/polyderiv.m: Likewise.
+	* polynomial/polyval.m: Likewise.
+
+Wed Aug 13 14:14:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/blanks.m: Allow blanks(0) to return empty string.
+	Allow negative arguments if treat_neg_dim_as_zero is true.
+
+Wed Jun 25 21:26:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/mesh.m: Set noparametric plot mode after plotting.
+
+Wed Jun 25 21:06:10 1997  Rick Niles  <niles@axp745.gsfc.nasa.gov>
+
+	* plot/__pltopt__.m: Handle key/legend names.
+	Correctly set colors, line styles, and point styles.
+
+Wed Jun 25 13:34:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Return fit y values as second output.
+	Don't use QR factorization to solve least squares problem.
+
+Wed Jun 18 10:24:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/dlqr.m: Use ao, not a, to compute k.
+
+Tue Jun  3 12:16:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/path.m: New file.
+
+Wed May 21 11:45:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/bug_report.m: Pass file id to dump_prefs, not file
+	name.
+
+Mon May 12 02:04:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/erfinv.m: Add missing semicolon.
+
+Wed Apr  2 22:04:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/xor.m: Make type of return value logical.
+
+Fri Mar 28 16:19:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/dump_prefs.m: Delete call to dump_1_pref for
+	warn_comma_in_global_decl.
+
+Tue Mar 25 22:00:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/bug_report.m: Use __OCTAVE_HOME__ to find
+	octave-bug script.
+
+Mon Mar 24 16:49:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/dump_prefs.m: Delete call to dump_1_pref for
+	prefer_zero_one_indexing.
+
+	* general/logical.m: New file.
+
+Sat Mar 15 15:07:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/nextpow2.m: Correctly handle new meaning of is_scalar()
+	and is_vector().
+
+Thu Mar 13 16:36:35 1997  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* specfun/erfinv.m: Scale update by sqrt (pi) / 2.
+	Use tolerance of 2 * eps.
+
+Wed Mar 12 16:57:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): New target.
+	* audio/Makefile.in: Ditto.
+	* control/Makefile.in: Ditto.
+	* elfun/Makefile.in: Ditto.
+	* general/Makefile.in: Ditto.
+	* image/Makefile.in: Ditto.
+	* io/Makefile.in: Ditto.
+	* linear-algebra/Makefile.in: Ditto.
+	* miscellaneous/Makefile.in: Ditto.
+	* plot/Makefile.in: Ditto.
+	* polynomial/Makefile.in: Ditto.
+	* set/Makefile.in: Ditto.
+	* signal/Makefile.in: Ditto.
+	* specfun/Makefile.in: Ditto.
+	* special-matrix/Makefile.in: Ditto.
+	* startup/Makefile.in: Ditto.
+	* statistics/Makefile.in: Ditto.
+	* strings/Makefile.in: Ditto.
+
+Tue Mar 11 10:14:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* elfun/coth.m: Write as cosh(x) ./ sinh(x) instead of 1 ./ tanh(x).
+
+Fri Mar  7 23:06:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/corrcoef.m: Make it actually work.
+
+Thu Mar  6 12:36:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/corrcoef.m: Don't fail if single argument is a matrix.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Wed Feb 26 01:48:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (maintainer-clean): Also remove configure.
+
+	* signal/fftconv.m: Check inputs with is_vector(), not is_matrix().
+
+	* general/is_matrix.m: Return zero for empty matrices.
+
+Tue Feb 25 15:16:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/vech.m: Size result just once.
+
+Sun Feb 23 00:15:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/is_square.m: Handle empty matrices correctly.
+	* general/is_symmetric.m: Handle empty matrices and strings.
+
+Sat Feb 22 01:06:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/conv.m: Check inputs with is_vector(), not is_matrix().
+	* polynomial/deconv.m: Likewise.
+	* polynomial/polyderiv.m: Likewise.
+	* polynomial/polyinteg.m: Likewise.
+	* polynomial/polyreduce.m: Likewise.
+	* polynomial/polyval.m: Likewise.
+	* polynomial/polyvalm.m: Likewise.
+	* general/postpad.m: Likewise.
+	* general/prepad.m: Likewise.
+
+	* polynomial/compan.m: Check input with is_vector(), not
+	is_matrix().  Handle scalar case.
+
+Fri Feb 21 13:36:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/contour.m: Order data so that it is consistent with
+	meshgrid and mesh.
+
+	* plot/meshdom.m, plot/meshgrid.m: Change help message.
+	* plot/sombrero.m: Use meshgrid, not meshdom.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/paren.m: New file.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.3 released.
+
+Thu Feb 13 19:06:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Only clip image data that is actually out of
+	range.
+
+Sun Feb  9 19:52:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/is_matrix.m: Scalars, vectors, and empty matrices may
+	also be considered to be matrices.
+
+	* general/is_vector.m: Scalars may also be considered to be vectors.
+
+	* general/isempty.m: Use size(), not rows() and columns().
+
+	* plot/contour.m: Convert set to gset.
+	Set view to 0, 0, 1, 1, not 0, 0, 1.9, 1.
+
+Fri Feb  7 12:55:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/erfinv.m: Fix typo in last change.
+
+Fri Jan 31 09:30:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/loadimage.m: Make it possible to load files with image
+	data named X or img.
+
+	* image/default.img: Change name of image from X to img to match
+	what saveimage does now.
+
+	* image/loadimage.m: Rename X to be img, to match what saveimage
+	does now.
+
+Mon Jan 27 13:48:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+	* plot/__plt__.m: Use usleep() instead of replot to try to avoid
+	weird missing-lines bug without creating extra plots unecessarily.
+
+Sat Jan 25 22:37:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in, audio/Makefile.in, control/Makefile.in,
+	elfun/Makefile.in, general/Makefile.in, image/Makefile.in,
+	io/Makefile.in, linear-algebra/Makefile.in,
+	miscellaneous/Makefile.in, plot/Makefile.in,
+	polynomial/Makefile.in, set/Makefile.in, signal/Makefile.in,
+	specfun/Makefile.in, special-matrix/Makefile.in,
+	startup/Makefile.in, statistics/Makefile.in, strings/Makefile.in,
+	time/Makefile.in (bin-dist): New target.
+
+Wed Jan 22 11:28:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/erfinv.m: Avoid A([]) = X, X != [] error.
+
+Tue Jan 21 11:16:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/xor.m: Make it work.
+
+Mon Jan 20 12:28:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/sombrero.m: Doc fix.
+
+Tue Jan  7 00:16:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Thu Dec 19 22:16:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* elfun/lcm.m: Replace missing if statement.
+
+	* elfun/gcd.m: Report error if no input args.
+	* elfun/lcm.m: Likewise.
+
+Mon Dec 16 15:23:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install): Use ls -LR to create ls-R database.
+	Also list contents of $libexecdir/octave in ls-R database.
+
+Tue Dec 10 01:43:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+Fri Dec  6 15:23:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.94.
+
+Sun Dec  1 20:55:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/str2num.m: New file.
+
+Wed Nov 20 01:00:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.93.
+
+Tue Nov 19 15:13:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* linear-algebra/commutation_matrix.m, linear-algebra/cross.m,
+	linear-algebra/duplication_matrix.m, linear-algebra/vec.m,
+	linear-algebra/vech.m: New files from Kurt Hornik.
+
+	* general/nextpow2.m, general/shift.m, general/diff.m,
+	general/common_size.m: New files from Kurt Hornik.
+
+	* miscellaneous/bincoeff.m, miscellaneous/xor.m:
+	New files from Kurt Hornik.
+
+	* signal/detrend.m: New file from Kurt Hornik.
+
+	* specfun/betai.m, specfun/gammai.m, specfun/erfinv.m,
+	specfun/pow2.m, specfun/log2.m:
+	New files and updates from Kurt Hornik.
+
+Fri Nov 15 18:13:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/__plt__.m: Add explicit replot after last command is
+	issued, to force all lines to be displayed.  Hmm.
+
+Thu Nov 14 00:06:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/axis.m, plot/bottom_title.m, plot/contour.m,
+	plot/figure.m, plot/grid.m, plot/loglog.m, plot/mesh.m,
+	plot/mplot.m, plot/multiplot.m, plot/oneplot.m, plot/plot.m,
+	plot/plot_border.m, plot/polar.m, plot/semilogx.m,
+	plot/semilogy.m, plot/subplot.m, plot/subwindow.m, plot/title.m,
+	plot/top_title.m, plot/xlabel.m, plot/ylabel.m, plot/zlabel.m:
+	Uset gset, not set.
+
+	* Version 1.92.
+
+Thu Nov  7 12:43:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: When writing PostScript, name Octave as the
+	almighty Creator.  Use single call to fprintf instead of looping.
+
+	* image/Makefile.in: Delete references to octtopnm.
+
+	* general/logspace.m: Doc fix.
+
+	* Version 1.91.
+
+Sat Nov  2 21:06:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/image.m: Use tmpnam() instead of home-brew scheme.
+
+	* audio/record.m, audio/playaudio.m: Use tmpnam() instead of
+	octave_tmp_file_name().  Use unwind_protect to ensure tmp file is
+	deleted.
+	* miscellaneous/bug_report.m: Likewise.  Also use unlink() instead
+	of a system() command to delete the tmp file.
+
+Wed Oct 30 17:19:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+Thu Oct 10 17:31:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/subplot.m, plot/multiplot.m, plot/mplot.m:
+	Don't check for string value of automatic_replot.
+
+	* image/ind2ind.m, image/ind2rgb.m, image/ind2gray.m:
+	Temporarily set do_fortran_indexing to 1, not "true".
+
+	* miscellaneous/menu.m: Temporarily set page_screen_output to 0,
+	not "false".
+
+	* linear-algebra/cond.m: Don't compare propagate_empty_matrices to
+	"false".
+
+Tue Aug 20 18:27:36 1996  Kurt Hornik  <Kurt.Hornik@ci.tuwien.ac.at>
+
+	* strings/substr.m: Allow negative OFFSET.  LEN is now optional.
+
+Mon Jul 15 16:15:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/bug_report.m: Don't redirect output to /dev/tty in
+	system command.
+
+Fri Jul 12 12:24:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* __plr1__.m: Renamed from polar_int_1.m.
+	* __plr2__.m: Renamed from polar_int_2.m.
+	* __plr__.m: Renamed from polar_int.m.
+	* __plt1__.m: Renamed from plot_int_1.m.
+	* __plt2__.m: Renamed from plot_int_2.m.
+	* __plt2mm__.m: Renamed from plot_2_m_m_.m.
+	* __plt2mv__.m: Renamed from plot_2_m_v_.m.
+	* __plt2ss__.m: Renamed from plot_2_s_s_.m.
+	* __plt2vm__.m: Renamed from plot_2_v_m_.m.
+	* __plt2vv__.m: Renamed from plot_2_v_v_.m.
+	* __plt__.m: Renamed from plot_int.m.
+	* __pltopt__.m: Renamed from plot_opt.m.
+	Change all callers.
+
+Thu Jul 11 17:24:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* All .m files: Add regular Author:, Created:, and Adapted-By:
+	comments like those found in Emacs lisp files.
+
+Mon Jun 24 04:16:41 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* All .m files: Change comment style.
+
+Fri Jun 14 01:42:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* bottom_title.m, mplot.m, multiplot.m, oneplot.m, plot_border.m,
+	subplot.m, subwindow.m, top_title.m:
+	Print error message if gnuplot_has_multiplot is not true.
+
+Thu Jun  6 00:18:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/figure.m: New function.
+
+Wed Jun  5 18:19:00 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/strrep.m: New function.
+
+Thu May 23 15:04:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strings/bin2dec.m, strings/blanks.m, strings/deblank.m,
+	strings/dec2bin.m, strings/dec2hex.m, strings/findstr.m,
+	strings/hex2dec.m, strings/index.m, strings/rindex.m,
+	strings/split.m, strings/str2mat.m, strings/substr.m:
+	New functions from Kurt Hornik, heavily modified by jwe.
+
+	* general/reshape.m: Allow strings to be reshaped too.
+
+	* strings/strcmp.m: No longer need to set implicit_str_to_num_ok.
+	Always return a scalar.
+
+Wed May 22 19:52:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Make orientation of result compatible with
+	Matlab.
+
+Sat May 18 17:32:15 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Add missing close paren.
+
+Thu May 16 10:23:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/plot_opt.m: Set compatibility arg in call to sscanf.
+
+	* io/scanf.m: Delete.
+
+Mon May 13 09:37:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/median.m: Fix typo in usage message.
+
+Wed Apr 24 02:45:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/popen2.m: New file.
+
+Wed Apr 17 18:34:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Add io/Makefile.
+
+	* io: New directory.
+	* Makefile.in (SUBDIRS): Add it to the list.
+
+	* miscellaneous/flops.m: New file.
+
+Fri Mar 22 04:40:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/cputime.m: Return three arguments instead of a
+	vector, for compatibility with previous versions and with Matlab
+	(which only returns one scalar value).
+
+Wed Mar 20 05:09:48 1996  Kurt Hornik  <Kurt.Hornik@tuwien.ac.at>
+
+	* general/triu.m: Compute lower bound on loop index correctly.
+	* general/tril.m: Likewise, for upper bound.
+
+Tue Feb  6 09:29:43 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: For color images, make sure indices into
+	temporary colormap and result matrix have proper orientation.
+	Set grey flag correctly.
+
+Tue Jan  9 00:12:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* statistics/std.m: Use better formula (from Jim Van Zandt
+	jrv@vanzandt.mv.com).
+
+Sun Jan  7 20:12:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* meshgrid.m: New file (from Jim Van Zandt jrv@vanzandt.mv.com).
+	* mesh.m: Transpose Z if only one arg.
+ 	Handle case of all three args being matrices (from Jim Van Zandt
+	jrv@vanzandt.mv.com).
+	* meshdom.m: Undo previous change.
+
+Wed Dec 20 13:48:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* configure.in (AC_OUTPUT): Add audio/Makefile
+
+Thu Nov 16 13:07:07 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* audio: New directory of files from Kurt Hornik and Andreas
+	Weingessel.
+	* audio/Makefile.in: New file.
+	* Makefile.in (SUBDIRS): Add audio to the list.
+
+Mon Nov  6 07:29:35 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/polyfit.m: Use `economy-stle' QR factorization.
+
+Fri Nov  3 00:38:46 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/mesh.m: Require, length (y) == rows (z) and length (x) ==
+	columns (z), not the other way around.
+	* plot/meshdom.m: Don't reverse order of elements in y.
+
+Thu Nov  2 23:56:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/axis.m: Return current axis if nargin == 0.
+
+Tue Oct 31 04:11:28 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* polynomial/roots.m: Updates from Kurt Hornik.
+
+	* polynomial/polyder.m: New file.
+
+	* polynomial/polyderiv.m: Give return value and arg different names.
+
+Mon Oct 30 23:27:02 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* specfun/betainc.m: New file.
+	* specfun/gammainc.m: New file.
+
+Wed Oct 18 23:45:52 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* general/strerror.m: New file.
+	* general/perror.m: Implement using strerror().
+
+Thu Oct  5 03:21:36 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/bottom_title.m plot/mplot.m plot/multiplot.m plot/oneplot.m
+	plot/plot_border.m plot/subplot.m plot/subwindow.m
+	plot/top_title.m plot/zlabel.m: New files, from Vinayak Dutt.
+
+	* image/saveimage.m: Round img values first.
+
+Tue Oct  3 03:55:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/abcddim.m control/are.m general/tril.m general/triu.m
+	image/saveimage.m linear-algebra/kron.m linear-algebra/norm.m
+	linear-algebra/null.m miscellaneous/etime.m plot/contour.m
+	plot/mesh.m plot/plot_int.m plot/polar_int.m
+	special-matrix/hankel.m special-matrix/toeplitz.m
+	tuwien/strfun/split.m: Add missing semicolons.
+
+	* plot/polar_int.m: Use .', not ' to make vectors conform.
+
+	* image/Makefile.in: Don't build or install octtoppm.
+
+	* image/saveimage.m: Rewrite to avoid using octoppm and pbm
+	routines so that people who don't have the pbm stuff installed
+	can still use this function.
+
+Mon Oct  2 05:10:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* image/saveimage.m: Better error checking, clean up a bit.
+
+Tue Sep 26 00:04:56 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* plot/plot_opt.m: Change more to more_opts as a temporary fix to
+	avoid conflict with new built-in text-style function more.
+
+	* linear-algebra/norm.m: Also allow 2nd arg == "inf".
+
+	* startup/Makefile.in (install): Also install octaverc in
+	$localfcnfiledir/startup/octavrc.
+
+Wed Sep 20 00:01:30 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkinstalldirs: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+	* Makefile.in (DISTFILES): Distribute configure.in and configure.
+
+Thu Sep 14 03:56:19 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* special-matrix/hankel.m: Compatibility fix.  Complain if
+	r(1) != c(nr), not if r(1) != c(1).
+
+	* signal/filter.m: Doc fix.
+
+Wed Sep 13 03:19:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* miscellaneous/cputime.m: Use new resource structure names (no
+	ru_ or tv_ prefixes).
+
+Tue Sep 12 02:20:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time/ctime.m: Fix doc string and usage message.
+
+Mon Sep 11 18:43:46 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time/clock.m: Use new time structure names (no tm_ prefix).
+
+Thu Aug 24 20:53:08 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* control/c2d.m: Make function work for any value of
+	whitespace_in_literal_matrix.
+	* control/dare.m: Likewise.
+	* control/tzero.m: Likewise.
+	* elfun/gcd.m: Likewise.
+	* elfun/lcm.m: Likewise.
+	* general/postpad.m: Likewise.
+	* general/prepad.m: Likewise.
+	* linear-algebra/kron.m: Likewise.
+	* miscellaneous/etime.m: Likewise.
+	* polynomial/conv.m: Likewise.
+	* polynomial/deconv.m: Likewise.
+	* polynomial/poly.m: Likewise.
+	* polynomial/roots.m: Likewise.
+	* signal/filter.m: Likewise.
+	* signal/freqz.m: Likewise.
+	* signal/fftfilt.m: Likewise.
+
+Tue Jun  6 22:34:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* miscellaneous/is_leap_year.m: Make work for vector args.
+
+Tue May  2 16:18:33 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* plot/polar_int_2.m: Add missing semicolons.
+	Set theta = theta', not rho'.
+
+Sun Apr 30 11:19:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* polynomial/roots.m: Make it work for any value of
+	whitespace_in_literal_matrix.
+
+Mon Apr 10 09:37:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* configure.in: New file.
+
+Thu Mar 30 13:29:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* control/lyap.m: Add missing semicolon.
+
+	* miscellaneous/cputime.m: New function file.
+
+Wed Mar 29 22:50:49 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* time: New directory.
+	* time/asctime.m, time/clock.m, time/ctime.m, time/date.m:
+	New function files.
+	* time/Makefile.in: New file.
+	* Makefile.in (SUBDIRS): Add time.
+
+Thu Mar 23 15:42:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* polynomial/polyreduce.m: Make sure initial index is not empty.
+
+Tue Mar 14 23:38:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* plot/plot_int_1.m: Transpose data with .', not '.
+
+Fri Mar 10 10:40:13 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (install uninstall clean mostlyclean distclean
+	realclean): Use SUBDIR_FOR_COMMAND.  Combine actions.
+
+Sun Feb 26 22:18:22 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (install): Create ls-R database file.
+	(uninstall): Delete it.
+
+Fri Feb 24 10:36:01 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* image/saveimage.m: Fix typo.
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/src-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,38717 @@
+2011-04-13  Rik  <octave@nomad.inbox5.com>
+
+	* help.cc: Add spaces after commas in @seealso blocks.
+
+2011-04-12  Rik  <octave@nomad.inbox5.com>
+
+	* load-path.cc (restoredefaultpath): Correct use of it's -> its in 
+	documentation.
+
+2011-04-10  John Eaton  <jwe@octave.org>
+
+	* graphics.cc (Fishandle) Accept vector of handles (bug #33025).
+
+2011-04-08  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/eig.cc,
+	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/schur.cc,
+	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc, data.cc: Improve
+	docstrings.
+
+2011-04-06  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/dmperm.cc, data.cc: Clean up operator and function
+	indices.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/nproc.cc: Spellcheck documentation for 3.4.1 release.
+
+2011-04-04  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/colamd.cc, data.cc, file-io.cc: Grammarcheck files
+	for 3.4.1 release.
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* input.cc (add_input_event_hook, remove_input_event_hook): Improve
+	docstring.
+	* utils.cc (isvarname): Add seealso link to iskeyword().
+	* variables.cc (missing_function_hook): Improve docstring.
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/dot.cc (blkmm): Improve docstring.
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (diag): Add documentation for 3-input form of diag.  Add new
+	tests.
+
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (diag): Reverse previous changeset.  Return 3-input form
+	of diag().
+
+2011-04-01  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (diag): Remove archaic 3-input argument form of function.
+	Add all calling forms of function to docstring.
+
+2011-04-01  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/filter.cc: Fix orientation of initial conditions vector
+	(bug #32741).  Revamp test vectors.
+
+2011-04-01  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/__fltk_uigetfile__.cc, DLD-FUNCTIONS/__init_fltk__.cc:
+	Correct typo in #include path (bug #32972).
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/onCleanup.cc: Remove non-existent @seealso link in
+	docstring.
+
+2011-03-31  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/quadcc.cc: Add reference to original paper in docstring.
+
+2011-03-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* file-io.cc: Document the "all" parameter to fclose.
+
+2011-03-29  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.cc: Prevent ticks from being cropped by round-off errors
+	when limmode == auto (bug #32701).
+
+2011-03-28  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/inv.cc (inv, inverse), DLD-FUNCTIONS/tril.cc (tril),
+	data.cc (cumsum, szie), file-io.cc (fgets), ov-typeinfo.cc (typeinfo),
+	ov-usr-fcn.cc (nargout), utils.cc (make_absolute_filename), 
+	variables.cc (who): Improve docstrings
+
+2011-03-25  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Fmkstemp): Use gnulib::mkstemp.
+	* DLD-FUNCTIONS/__init_fltk__.cc (f): Use gnulib::floor.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* dot.cc: Improve seealso cross references in docstring.
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* help.cc (get_help_text, get_help_text_from_file): Improve docstrings.
+
+2011-03-17  John W. Eaton  <jwe@octave.org>
+
+	* ov-float.cc (octave_float_scalar::do_index_op): Widen to float
+	matrix, not double.
+
+2011-03-17  Rik  <octave@nomad.inbox5.com>
+
+	* syscalls.cc (gethostname): Redo documentation string.
+
+2011-03-17  Iain Murray  <iain@iainmurray.net>
+
+	* DLD-FUNCTIONS/nprocs.cc: Delete file.
+	* DLD-FUNCTIONS/nproc.cc: New file.  New function nproc provided by
+	gnulib.
+	* DLD-FUNCTIONS/module-files: Add nproc.cc.
+
+2011-03-16  Iain Murray  <iain@iainmurray.net>
+
+	* DLD-FUNCTIONS/nprocs.cc: New file.
+	* DLD-FUNCTIONS/module-files: Add nprocs.cc.
+	Expose nprocs and nprocs_conf from gnulib.
+
+2011-03-15  Marco Caliari  <marco.caliari@univr.it>
+
+	* graphics.cc: Simplify calculation of number of tick labels.  Fixes
+	bug #32692.
+
+2011-03-13  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (plot_window::plot_window):
+	Revert changes from 2011-02-26.
+
+2011-03-10  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in: Add PERSISTENT mode to listener_mode.
+	(base_property::delete_listener): Take into account persistent
+	mode of a listener.
+	* graphics.cc (addlistener, dellistener): Accept a new optional
+	argument for persistent listeners.
+
+2011-03-07  Konstantinos Poulios  <logari81@googlemail.com>
+
+	Bug #32482.
+
+	* graphics.h.in (axes::properties::update_yaxislocation,
+	axes::properties::update_yaxislocation):
+	Hook update_ylabel_position and update_xlabel_position
+	respectively.
+
+2011-03-06  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (axes::properties::update_xlabel_position,
+	axes::properties::update_ylabel_position,
+	axes::properties::update_zlabel_position,
+	axes::properties::update_title_position):
+	Determine position also for empty axes labels/titles in order
+	to improve the tightinset calculation.
+	(axes::properties::get_extent): Take position of empty strings
+	into account for the calculation of axes extents.
+
+2011-03-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (axes::properties::get_extent): Add new optional
+	argument for ignoring the length of text objects.
+	* graphics.cc (axes::properties::get_extent): Add the possibility
+	of ignoring the length of text objects.
+	(axes::properties::calc_tightbox): Take only text height into
+	account for the calculation of the tight box.
+
+2011-02-26  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (plot_window::plot_window):
+	Move canvas allocation after the configuration of the menubar.
+	(plot_window::show_menubar, plot_window::hide_menubar):
+	Simplify source code.
+
+2011-02-26  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/matrix_type.cc,
+	DLD-FUNCTIONS/strfind.cc, DLD-FUNCTIONS/sub2ind.cc, bitfcns.cc,
+	data.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
+	load-path.cc, load-save.cc, oct-parse.yy, ov-base.cc, ov-cell.cc,
+	ov-class.cc, ov-fcn-handle.cc, ov-fcn-inline.cc, ov-flt-re-mat.cc,
+	ov-struct.cc, ov-usr-fcn.cc, pr-output.cc, pt-mat.cc, sparse.cc,
+	strfns.cc, syscalls.cc, sysdep.cc, toplev.cc, utils.cc, variables.cc:
+	Rewrite error strings to use variables named in documentation.
+
+2011-02-23  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_base::dup): Return retval.
+
+2011-02-22  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (class axes::properties): New hidden property
+	looseinset.
+	(axes::properties::update_looseinset): New function.
+	* graphics.cc (axes::properties::init): Initialize looseinset.
+	(axes::properties::sync_positions): Take looseinset into account
+	instead of default_axes_position.
+	(axes::properties::set_defaults): Default values for looseinset.
+
+2011-02-21  Kai Habel  <kai.habel@gmx.de>
+
+	* src/DLD-FUNCTIONS/__fltk_uigetfile__cc:
+	Use forward slash as file seperator for fltk file path processing only.
+
+2011-02-21  Kai Habel  <kai.habel@gmx.de>
+
+	* src/DLD-FUNCTIONS/__init_fltk__.cc(plot_window::plot_window):
+	Call size_range early to allow window resizing for MacOS and MinGW.
+
+2011-02-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/regexp.cc: Assume we have PCRE.
+
+2011-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* src/DLD-FUNCTIONS/regexp.cc: Use PCRE regular expressions everywhere
+	now that Octave requires library for building.  Remove testif PCRE
+	on testing blocks and adjust all documentation.
+	
+2011-02-18  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (axes::properties::sync_positions): Fix a small
+	bug introduced with changes from 2011-02-14.
+
+2011-02-15  Konstantinos Poulios  <logari81@googlemail.com>
+
+	Bug #32319.
+
+	* DLD-FUNCTIONS/__init_fltk__.cc: Include sysdep.h.
+	(class OpenGL_fltk): Replace integer print_fid member with
+	boolean print_mode. New class member print_cmd of type string.
+	(OpenGL_fltk::print): Accept command string argument instead of
+	file id.
+	(OpenGL_fltk::draw): Invoke and terminate an octave process for
+	the printing job.
+	(plot_window::print, figure_manager::print,
+	figure_manager::do_print): Replace file id with command string.
+	(fltk_graphics_toolkit::print_figure): Remove parsing of file id.
+	* graphics.cc (drawnow): Recognize strings beginning with "|" as
+	pipelines instead of filenames.
+
+2011-02-14  David Bateman  <dbateman@free.fr>
+
+	* gl-render.cc (void opengl_renderer::draw_patch (
+	const patch::properties &)): Obtain the marker color directly
+	from the cdata rather that the facecolor, as the facecolor might
+	not have been set.  Bug #31801.
+
+2011-02-14  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (axes::properties::sync_positions): Calculation of
+	tightinset property.
+
+2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
+
+	Bugs #31800, #32211.
+
+	* gl-render.cc (opengl_renderer::draw_axes_boxes): Draw only one
+	y-axis line when plotyy tag is present.
+	(opengl_renderer::draw_text): Remove superfluous calls of set_font
+	and set_color.
+	* graphics.h.in (class text::properties): Tag color with "u"
+	qualifier.
+	(text::properties::update_color): New function.
+
+2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (axes::properties::update_boundingbox,
+	axes::properties::update_dataaspectratio,
+	axes::properties::update_dataaspectratiomode,
+	axes::properties::update_plotboxaspectratio,
+	axes::properties::update_plotboxaspectratiomode):
+	Replace update_transform hooks with sync_positions. 
+
+2011-02-13  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (axes::properties::get_extent,
+	axes::properties::calc_tightbox): New functions prototypes.
+	(axes::properties::update_view): Hook sync_positions.
+	(axes::properties::update_outerposition,
+	axes::properties::update_position): Set activepositionproperty
+	appropriately.
+	(text::properties::update_string): Call	update_text_extent after
+	request_autopos.
+	* graphics.cc (axes::properties::sync_positions): Enable
+	synchronization of position and outer position. Take label and
+	title extents in the calculation of outerposition into account.
+	Do iterative calculation of position when activepositionproperty
+	is set to outerposition.
+	(axes::properties::update_title_position): Use new function
+	get_extent.
+	(axes::properties::update_autopos): Handle new tag "sync".
+	(axes::properties::get_extent): New function calculating the
+	tight box which contains all axes labels and axes title.
+	(axes::properties::calc_tightbox): New function calculating axes
+	tight box.
+	(axes::properties::update_units): Don't call any hooks and listeners
+	for position, outerposition and tightset.
+	(text::properties::update_text_extent): Request axes positions
+	synchronization when axes labels or title extents change.
+
+2011-02-11  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (strip_trailing_separators): Declare K as size_t
+	rather than octave_idx_type.
+
+2011-02-10 Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* DLD-FUNCTIONS/mgorth.cc: New file implementing modified
+	Gram-Schmidt orthogonalization.
+
+2011-02-10  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Avoid deprecated
+	Array<T>::resize function.
+
+2011-02-09  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (axes::properties::update_xlabel_position,
+	axes::properties::update_ylabel_position,
+	axes::properties::update_zlabel_position,
+	axes::properties::update_title_position): Use get_transform only
+	when it is required.
+	(text::properties::request_autopos): Remove redundant temporary
+	settting of autopos_tag to none.
+
+2011-02-08  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (INSTANTIATE_ABS): Omit inline keyword from
+	template instantiation.  From Orion Poplawski <orion@cora.nwra.com>.
+
+2011-02-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (parse_fcn_file): Don't warn about coercing
+	nested functions to subfunctions if yyparse failed.
+
+2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (class axes::properties): Tag positionmode,
+	rotationmode, horizontalalignmentmode, verticalalignmentmode
+	with "u" qualifier. New hidden property autopos_tag.
+	(axes::properties::request_autopos,
+	axes::properties::update_positionmode,
+	axes::properties::update_rotationmode,
+	axes::properties::update_horizontalalignmentmode,
+	axes::properties::update_verticalalignmentmode): New functions
+	(base_properties::update_autopos): New virtual function.
+	(axes::properties::update_xlabel_position,
+	axes::properties::update_ylabel_position,
+	axes::properties::update_zlabel_position,
+	axes::properties::update_title_position): Made public.
+	* graphics.cc (base_properties::update_autopos,
+	axes::properties::update_autopos,
+	text::properties::request_autopos): New functions.
+	(axes::properties::init, axes::properties::set_defaults,
+	axes::properties::set_xlabel, axes::properties::set_ylabel,
+	axes::properties::set_zlabel, axes::properties::set_title):
+	Set autopos_tag for {x,y,z}label and title.
+	(axes::properties::update_xlabel_position,
+	axes::properties::update_ylabel_position,
+	axes::properties::update_zlabel_position,
+	axes::properties::update_title_position): Run only for non-empty
+	strings. Set autopos_tag temporarily to none in order to prevent
+	race conditions.
+
+2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc: Untabify and improve indentation.
+
+2011-02-06  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (updating_axes_layout): New file-scope variable.
+	(axes::properties::update_axes_layout):	Return immediately if
+	updating_axes_layout is true.
+
+2011-02-03  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc: Include <sys/types.h> and <unistd.h> for isatty.
+	Bug #32336.
+
+2011-02-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* gl-render.h: (opengl_renderer::draw_axes_titles): Remove prototype.
+	* gl-render.cc: (opengl_renderer::draw_axes_titles): Remove function.
+	(opengl_renderer::draw_axes_x_grid,
+	opengl_renderer::draw_axes_y_grid,
+	opengl_renderer::draw_axes_z_grid): Remove calculation of axis label
+	positions.
+	* graphics.cc: (axes::properties::update_xlabel_position,
+	axes::properties::update_ylabel_position
+	axes::properties::update_zlabel_position
+	axes::properties::update_title_position): New functions calculating
+	label and title positions.
+	(axes::properties::get_ticklabel_extents): New function.
+	* graphics.h.in: Provide functions prototypes.
+	* txt-eng-ft.cc (ft_render::get_extent): New function version.
+	* txt-eng-ft.h (ft_render::get_extent): Provide function prototype.
+
+2011-02-03  Kai Habel  <kai.habel@gmx.de>
+
+	* src/gl-render.cc(text_to_pixels): Use text_renderer object only
+	when freetype is available
+
+2011-02-03  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (octave_base_value::as_mxArray): Return 0 silently.
+	* mex.cc (mxArray_octave_value::dup): If value can't be
+	converted to mxArray object, then simply create a clone of the
+	mxArray_octave_value container.
+
+2011-02-02  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/eigs.cc, DLD-FUNCTIONS/qr.cc: Use testif to only run
+	some sparse tests when necessary libraries are installed.
+
+2011-02-03  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (axes::properties::update_axes_layout):
+	New function calculating axes layout.
+	(axes::properties::update_ticklengths): New function calculating
+	tick lengths and offsets.
+	* graphics.h.in (class axes::properties):: New private data
+	describing axes layout and corresponding "get" methods. Provide
+	declaration and call dependencies for "update_axes_layout".
+	Tag layer, yaxislocation, xaxislocation, tickdir, tickdirmode,
+	with "u" qualifier.
+	(axes::properties::update_layer,
+	axes::properties::update_yaxislocation,
+	axes::properties::update_xaxislocation,
+	axes::properties::update_ticklengths,
+	axes::properties::update_tickdir,
+	axes::properties::update_tickdirmode): New functions
+	* gl-render.cc:	(opengl_renderer::draw_axes_planes,
+	opengl_renderer::draw_axes_boxes,
+	opengl_renderer::draw_axes_x_grid,
+	opengl_renderer::draw_axes_y_grid,
+	opengl_renderer::draw_axes_z_grid,
+	opengl_renderer::draw_axes_title): Simplify arguments list.
+	(opengl_renderer::draw_axes): Remove calculation of axes layout.
+	(opengl_renderer::setup_opengl_transformation): Disable antializing.
+	* gl-render.h: Adapt functions prototypes.
+
+2011-02-01  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.h (opengl_renderer::draw (const Matrix& hlist)):
+	Use get_object instead of lookup.
+	* DLD-FUNCTIONS/__init_fltk__.cc (Fl_Gl_Window::draw): Likewise.
+	* graphics.h.in (gh_manager::get_object (double)): New function.
+	* gl-renderer.h (opengl_renderer::draw (const graphics_handle&)):
+	Delete.
+	* gl2ps-renderer.h (glps_renderer::draw (const graphics_handle&)):
+	Delete.
+
+2011-02-01  John W. Eaton  <jwe@octave.org>
+
+	* gl2ps-renderer.h: Remove virtual tag for derived virtual functions.
+	(opengl_renderer (const graphics_handle&)): New function.
+	* DLD-FUNCTIONS/__init_fltk__.cc (OpenGL_fltk::Fl_Gl_Window):
+	Don't use new to create temporary glps_renderer object.
+
+2011-02-01  Michael Godfrey  <godfrey@isl.stanford.edu>
+
+	* gl2ps-renderer.cc (glps_renderer::draw):
+	Return immediately if fdopen fails.
+
+2011-02-01  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc:	(opengl_renderer::setup_opengl_transformation,
+	opengl_renderer::draw_axes_planes,
+	opengl_renderer::draw_axes_boxes,
+	opengl_renderer::draw_axes_x_grid,
+	opengl_renderer::draw_axes_y_grid,
+	opengl_renderer::draw_axes_z_grid,
+	opengl_renderer::draw_axes_title,
+	opengl_renderer::draw_axes_children):
+	New private functions, extracted from opengl_renderer::draw_axes.
+	(opengl_renderer::draw_axes): Call subfunctions to do most of
+	the work.
+	* gl-render.h: Provide decls.
+
+2011-01-31  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (get_P_tmpdir): New function.
+	* file-io.cc (FP_tmpdir): Use it.
+	Bug #32158.
+
+2011-01-30  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (mouse_wheel_zoom, gui_mode): Rename
+	functions and strip "fltk_" prefix.  Improve docstrings.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* txt-eng-ft.cc (ft_manager::ft_manager): Omit fc_init_done from
+	initialization list if fontconfig is missing.
+
+2011-01-30  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* oct-parse.yy (class stdio_stream_reader): Disallow copying.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (gnuplot_toolkit::redraw): Call __gnuplot_drawnow__,
+	not gnuplot_drawnow.
+	(gnuplot_toolkit::print_figure): Likewise.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (OCTAVE_LIBS): Remove $(ARPACK_LDFLAGS) and
+	$(ARPACK_LIBS) from the list.
+	(DLD-FUNCTIONS/eigs.df): Don't add $(ARPACK_CPPFLAGS) to CPPFLAGS.
+	(DLD_FUNCTIONS_eigs_la_CPPFLAGS): Remove $(ARPACK_CPPFLAGS) from
+	the list.
+	(DLD_FUNCTIONS_eigs_la_LIBADD): Remove $(ARPACK_LDFLAGS) and
+	$(ARPACK_LIBS) from the list.
+
+2011-01-30  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (Fload): Doc fix.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (fltk_gui_mode, fltk_mouse_wheel_zoom):
+	Improve docstrings.
+
+	* graphics.cc (available_graphics_toolkits): Fix typo in docstring.
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* syscalls.cc (S_ISSOCK, S_ISCHR): Improve docstrings
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* dirfns.cc (readdir, filesep, pathsep): Improve docstrings
+	* file-io.cc (tmpnam): Improve docstring
+	* input.cc (filemarker): Improve docstring
+	* syscalls.cc (stat, lstat): Improve docstring
+
+2011-01-29  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/getrusage.cc, toplev.cc: Improve docstring
+
+2011-01-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__fltk_uigetfile__.cc (__fltk_uigetfile__):
+	Don't allocate Fl_File_Chooser object with new.  Delete unused
+	variable fargs.  Allocate default retval values in initial
+	declaration.
+
+2011-01-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc: Undefine Complex after
+	including FLTK headers.
+	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: Likewise.
+
+2011-01-29  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (__fltk_uigetfile__): Use the same compiler flags
+	as for __init_fltk__.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/eigs.cc (Feigs): Assume we have ARPACK.
+	Use "test" instead of "testif HAVE_ARPACK".
+	* toplev.cc (octave_config_info): Remove ARPACK_CPPFLAGS,
+	ARPACK_LDFLAGS, ARPACK_LIBS from the struct.
+	* oct-conf.h.in (OCTAVE_CONF_ARPACK_CPPFLAGS,
+	OCTAVE_CONF_ARPACK_LDFLAGS, OCTAVE_CONF_ARPACK_LIBS):
+	Delete #defines.
+
+2011-01-28  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: File filter value is
+	1-based now.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (Foutput_max_field_width): Set internal variable
+	output_max_field_width, not output_precision.
+
+2011-01-28  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (Fformat, Ffixed_point_format, Foutput_precision,
+	Foutput_max_field_width, Fsplit_long_rows, Fprint_empty_dimensions):
+	Update @seealso lists.
+
+2011-01-27  Rik  <octave@nomad.inbox5.com>
+
+	* graphics.cc: Improve reset docstring.
+
+2011-01-27  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (__fltk_uigetfile__): Remove here.
+	* DLD-FUNCTIONS/__fltk_uigetfile__.cc: New file. 
+	* DLD-FUNCTIONS/module-files: Add __fltk_uigetfile__.cc.
+	Bug #32190.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Skip leading whitespace
+	on each line.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::subsasgn,
+	octave_scalar_struct::subsasgn): Call undef_subsasgn on object
+	returned by octave_value::empty_conv if LHS is initially undefined.
+	Bug #32242.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (input_event_hook): Fix incorrect use of iterator.
+	Reported by Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
+
+2011-01-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (octave_class::reconstruct_exemplar):
+	Call constructor with do_multi_index_op instead of feval.
+	Verify that symbol_table::find_method did return a class
+	constructor for the correct type.  Bug #32242.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll, graphics.cc, gl-render.cc, ov-mex-fcn.h, graphics.h.in:
+	Delete trailing whitespace.
+
+2011-01-26  John W. Eaton  <jwe@octave.org>
+
+	Bug #32242.
+
+	* ov.h, ov.cc (octave_value::undef_subsasgn): New function.
+	* ov-class.h, ov-class.cc (octave_class::undef_subsasgn,
+	octave_class::subsasgn_common): New functions.
+	* ov-base.h, ov-base.cc (octave_base_value::subsasgn): If
+	undefined, call undef_subsasgn on object returned by
+	octave_value::empty_conv.
+	(octave_base_value::undef_subsasgn): New virtual function.
+	(octave_base_value::subsasgn): Only handle case of undefined
+	values here.
+
+2011-01-26  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+	    John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (scaler::scaler (const std::string&)): New constructor.
+	(graphics_handle::operator++, graphics_hanlde::operator--):
+	Implement as recommended by Effective C++.
+
+	* graphics.h.in (class base_property, class array_property,
+	class children_property, class property, class graphics_xform,
+	class graphics_event): Explicitelly iniatialize
+	all data members in constructor initialisation list.
+	* gl-render.cc (class patch_tesselator): Likewise
+	* graphics.cc (class radio_values, class gh_manager),
+	(class callback_event, class set_event): Likewise.
+
+	* graphics.h.in (class base_graphics_property): Disallow copying.
+	* graphics.cc (class function_event): Likewise.
+	(function_event::function_event (void)): Delete implementation.
+
+2011-01-25  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/config-module.awk: Use automake variable for 
+	portability.
+	* Makefile.am (uninstall-oct): Use GNU Make features for portability
+
+2011-01-25  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
+	load-save.cc: Make docstrings static by removing documentation
+	depending on #ifdef configuration variables.
+
+2011-01-25  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (OCT_STAMP_FILES): New variable.
+	(DISTCLEANFILES): Add $(OCT_STAMP_FILES) to the list.
+	(all-local): Depend on $(OCT_STAMP_FILES) instead of $(OCT_FILES).
+
+	* DLD-FUNCTIONS/config-module.awk: Create stamp files when
+	creating .oct file links.
+
+2011-01-25  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* src/graphics.cc (text::properties::update_text_extent):
+	Disable warning about missing freetype library.
+
+2011-01-25  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* src/graphics.cc (axes::properties::calc_ticks_and_lims):
+	Fixing wrong dimensions of minor ticks vector.
+
+2011-01-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.h (octave_map::octave_map (const string_vector&)):
+	Initialize xvals elements to 1x1 Cells.  Bug #32222.
+
+2011-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* ov-base-mat.h (class octave_base_matrix): Disallow assignment.
+	* ov-range.h (class octave_range): Likewise.
+
+2011-01-23  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_scalar_struct::print_raw):
+	Avoid unnecessary conversion of map value to Cell.
+
+2011-01-22  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table::parent_classes):
+	Also add parents of parents to the list.  Bug #32210.
+
+2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (octave_class::subsasgn): Find appropriate unique base
+	before trying any indexed assignment.  Bug #32182.
+
+2011-01-22  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in, graphics.cc (xmtick, ymtick, zmtick):
+	New properties holding minor ticks positions.
+	(axes::properties::calc_ticks_and_lims): Calculation of minor ticks
+	positions.
+	* gl-render.h, gl-render.cc
+	(opengl_renderer::render_grid,	opengl_renderer::render_tickmarks,
+	opengl_renderer::render_ticktexts): New functions.
+	(opengl_renderer::draw_axes): Make use of new rendering functions
+	and minor ticks positions.
+	Correct axis label positioning for x axis at top and y axis at right
+	position. Bug #31800.
+	Change axis positioning policy for 3D plots, keeping x and y axis
+	always at bottom.
+
+2011-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* gl-render.cc: Use octave_refcount for refcounting.
+	* oct-map.h: Ditto.
+	* ov-base.h: Ditto.
+	* pt-mat.cc: Ditto.
+
+2011-01-22  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* ov-mex-fcn.h, txt-eng-ft.cc, mex.cc:
+	Initialize all data members in initialization list.
+
+2011-01-22  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (fltk_uimenu): Disallow copying.
+	(class plot_window): Likewise.
+	* c-file-ptr-stream.h (class c_file_ptr_buf): Likewise.
+	(class c_file_ptr_stream): Likewise.
+	(class c_zfile_ptr_buf): Likewise.
+	* gl-render.cc (class opengl_tesselator): Likewise.
+	(class patch_tesselator): Likewise.
+	* lex.ll (class flex_stream_reader): Likewise.
+	* mex.cc (class mex): Likewise.
+	* oct-procbuf.h (class octave_procbuf): Likewise.
+	* pt-cbinop.h (class tree_compound_binary_expression): Likewise.
+	* symtab.h (class scope_id_cache): Likewise.
+	(class symbol_table): Likewise.
+	* txt-eng-ft.h (class ft_manager): Likewise.
+	(class ft_render): Likewise.
+	* unwind-prot.h (class unwind_protect::elem): Likewise.
+	(class unwind_protect::fcn_arg_elem): Likewise.
+	(class unwind_protect::method_elem): Likewise.
+	(class unwind_protect::restore_var_elem): Likewise.
+	(class unwind_protect::delete_ptr_elem): Likewise.
+	(class unwind_protect): Likewise.
+	* zfstream.h (class gzfilebuf): Likewise.
+
+	* mex.cc (class mxArray_octave_value): Disallow assignment.
+	(class mxArray_matlab): Likewise.
+	(class mxArray_number): Likewise.
+	(class mxArray_sparse): Likewise.
+	(class mxArray_struct): Likewise.
+	(class mxArray_cell): Likewise.
+
+	* unwind-prot.h (unwind_protect::elem::elem):
+	Provide default constructor.
+
+2011-01-21  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* src/graphics.cc (axes::properties::set_xlabel,
+	axes::properties::set_ylabel, axes::properties::set_zlabel):
+	Setting axis label color from axis color.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* src/file-io.cc, src/variables.cc: Prevent doubled quotes around @table
+	items in Info.
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* src/DLD-FUNCTIONS/chol.cc, src/DLD-FUNCTIONS/luinc.cc,
+	src/DLD-FUNCTIONS/qz.cc: Use non-breaking spaces between certain
+	adjectives and their linked nouns in docstrings
+
+2011-01-20  Rik  <octave@nomad.inbox5.com>
+
+	* src/DLD-FUNCTIONS/str2double.cc, src/data.cc, src/mappers.cc,
+	src/variables.cc: Use @nospell macro on certain words in docstring.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__delaunayn__.cc,
+	DLD-FUNCTIONS/__init_fltk__.cc,
+	DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/quadcc.cc, DLD-FUNCTIONS/regexp.cc, data.cc,
+	gripes.cc, ls-mat5.cc, toplev.cc, variables.cc:
+	Style fixes for error and warning messages.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Array.cc, Sparse.cc, base-lu.cc, idx-vector.cc,
+	lo-array-gripes.cc: Style fixes for error and warning messages.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__contourc__.cc, DLD-FUNCTIONS/__delaunayn__.cc,
+	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/__glpk__.cc,
+	DLD-FUNCTIONS/__init_fltk__.cc,
+	DLD-FUNCTIONS/__lin_interpn__.cc,
+	DLD-FUNCTIONS/__magick_read__.cc,
+	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/__qp__.cc,
+	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
+	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/ccolamd.cc,
+	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/chol.cc,
+	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/colloc.cc,
+	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
+	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/dlmread.cc,
+	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc,
+	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc,
+	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/givens.cc,
+	DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc,
+	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lookup.cc,
+	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
+	DLD-FUNCTIONS/max.cc, DLD-FUNCTIONS/md5sum.cc,
+	DLD-FUNCTIONS/onCleanup.cc, DLD-FUNCTIONS/qr.cc,
+	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/quadcc.cc,
+	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
+	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
+	DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/sqrtm.cc,
+	DLD-FUNCTIONS/str2double.cc, DLD-FUNCTIONS/strfind.cc,
+	DLD-FUNCTIONS/sub2ind.cc, DLD-FUNCTIONS/svd.cc,
+	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
+	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/tril.cc,
+	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/typecast.cc,
+	DLD-FUNCTIONS/urlwrite.cc, OPERATORS/op-b-sbm.cc,
+	OPERATORS/op-bm-sbm.cc, OPERATORS/op-cdm-cdm.cc,
+	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-scm.cc,
+	OPERATORS/op-cm-sm.cc, OPERATORS/op-cs-cs.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-dm-dm.cc, OPERATORS/op-dms-template.cc,
+	OPERATORS/op-fcdm-fcdm.cc, OPERATORS/op-fcm-fcm.cc,
+	OPERATORS/op-fcm-fcs.cc, OPERATORS/op-fcm-fm.cc,
+	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcs-fcm.cc,
+	OPERATORS/op-fcs-fcs.cc, OPERATORS/op-fcs-fm.cc,
+	OPERATORS/op-fcs-fs.cc, OPERATORS/op-fdm-fdm.cc,
+	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
+	OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
+	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
+	OPERATORS/op-fs-fm.cc, OPERATORS/op-int-concat.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-pm-pm.cc, OPERATORS/op-pm-scm.cc,
+	OPERATORS/op-pm-sm.cc, OPERATORS/op-pm-template.cc,
+	OPERATORS/op-range.cc, OPERATORS/op-s-scm.cc,
+	OPERATORS/op-sbm-b.cc, OPERATORS/op-sbm-bm.cc,
+	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
+	OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-m.cc,
+	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-scm.cc,
+	OPERATORS/op-scm-sm.cc, OPERATORS/op-sm-cm.cc,
+	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-m.cc,
+	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-scm.cc,
+	OPERATORS/op-sm-sm.cc, OPERATORS/op-str-str.cc,
+	OPERATORS/op-ui64-ui64.cc, bitfcns.cc, c-file-ptr-stream.cc,
+	c-file-ptr-stream.h, comment-list.h, data.cc, debug.cc, debug.h,
+	defun-int.h, defun.cc, dynamic-ld.cc, error.cc, file-io.cc,
+	gl-render.cc, gl-render.h, gl2ps-renderer.cc, gl2ps-renderer.h,
+	gl2ps.c, gl2ps.h, graphics.cc, graphics.h.in, help.cc, input.cc,
+	lex.h, lex.ll, load-path.cc, load-path.h, load-save.cc,
+	load-save.h, ls-ascii-helper.cc, ls-hdf5.cc, ls-hdf5.h,
+	ls-mat-ascii.cc, ls-mat4.cc, ls-mat4.h, ls-mat5.cc,
+	ls-oct-ascii.cc, ls-oct-ascii.h, ls-oct-binary.cc, mappers.cc,
+	mex.cc, mex.h, mexproto.h, mxarray.h.in, oct-hist.cc,
+	oct-lvalue.cc, oct-lvalue.h, oct-map.cc, oct-map.h, oct-obj.cc,
+	oct-obj.h, oct-parse.yy, oct-procbuf.cc, oct-stream.cc,
+	oct-stream.h, octave.cc, ov-base-diag.cc, ov-base-diag.h,
+	ov-base-int.cc, ov-base-int.h, ov-base-mat.cc, ov-base-mat.h,
+	ov-base-scalar.cc, ov-base-scalar.h, ov-base-sparse.cc,
+	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
+	ov-bool-mat.h, ov-bool-sparse.cc, ov-bool-sparse.h, ov-bool.cc,
+	ov-bool.h, ov-builtin.h, ov-cell.cc, ov-cell.h, ov-ch-mat.cc,
+	ov-class.cc, ov-class.h, ov-complex.cc, ov-complex.h,
+	ov-cx-diag.cc, ov-cx-diag.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-cx-sparse.cc, ov-cx-sparse.h, ov-dld-fcn.h, ov-fcn-handle.cc,
+	ov-fcn-handle.h, ov-fcn-inline.cc, ov-fcn-inline.h, ov-fcn.h,
+	ov-float.cc, ov-float.h, ov-flt-complex.cc, ov-flt-complex.h,
+	ov-flt-cx-diag.cc, ov-flt-cx-diag.h, ov-flt-cx-mat.cc,
+	ov-flt-cx-mat.h, ov-flt-re-diag.cc, ov-flt-re-diag.h,
+	ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h, ov-lazy-idx.cc,
+	ov-lazy-idx.h, ov-null-mat.cc, ov-null-mat.h, ov-perm.cc,
+	ov-perm.h, ov-range.cc, ov-range.h, ov-re-diag.cc, ov-re-diag.h,
+	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
+	ov-scalar.cc, ov-scalar.h, ov-str-mat.cc, ov-str-mat.h,
+	ov-struct.cc, ov-struct.h, ov-type-conv.h, ov-typeinfo.cc,
+	ov-usr-fcn.cc, ov-usr-fcn.h, ov.cc, ov.h, pager.cc,
+	pr-output.cc, procstream.h, pt-arg-list.cc, pt-assign.h,
+	pt-binop.cc, pt-bp.cc, pt-bp.h, pt-cbinop.cc, pt-cell.cc,
+	pt-colon.cc, pt-const.cc, pt-decl.cc, pt-eval.cc,
+	pt-fcn-handle.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-mat.cc,
+	pt-mat.h, pt-pr-code.cc, pt-select.cc, pt-select.h, pt-stmt.cc,
+	pt-unop.cc, pt-unop.h, sighandlers.cc, sighandlers.h,
+	sparse-xdiv.cc, sparse-xdiv.h, sparse-xpow.cc, sparse-xpow.h,
+	sparse.cc, strfns.cc, symtab.cc, symtab.h, syscalls.cc,
+	sysdep.cc, toplev.cc, toplev.h, txt-eng-ft.cc, txt-eng-ft.h,
+	txt-eng.h, unwind-prot.h, utils.cc, utils.h, variables.cc,
+	variables.h, xdiv.cc, xdiv.h, xnorm.cc, xpow.cc, zfstream.cc,
+	zfstream.h: Strip trailing whitespace.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc, DLD-FUNCTIONS/__init_fltk__.cc,
+	DLD-FUNCTIONS/__magick_read__.cc: Untabify.
+
+2011-01-20  Pascal Dupuis <Pascal.Dupuis@worldonline.be>.
+
+	* debug.h, dynamic-ld.cc, gl-render.cc, gl-render.h,
+	gl2ps-renderer.h, lex.h, ls-hdf5.h, oct-stream.h, oct-strstrm.h,
+	ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
+	ov-cell.h, ov-class.h, ov-dld-fcn.h, ov-fcn-handle.h,
+	ov-lazy-idx.h, ov-perm.h, ov-range.h, ov-struct.h, procstream.h,
+	pt-assign.h, symtab.h, unwind-prot.h: Initialize
+	all data members in initialization list.
+
+2011-01-20  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/__init_fltk__.cc (__fltk_uigetfile__): Append file
+	seperator to 2nd return value (file path).
+	Bug #32190.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* oct-obj.h (octave_value_list::octave_value_list): Initialize
+	all data members in initialization list.  From Pascal Dupuis
+	<Pascal.Dupuis@worldonline.be>.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_mat5_binary_element):
+	Improve diagnositc if uncompress fails.
+
+	* load-path.cc (strip_trailing_separators): New static function.
+	(load_path::do_add, load_path::do_remove): Call it on directory arg.
+
+2011-01-20  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.h, graphics.cc, gl-render.cc, graphics.h.in:
+	Update for backend -> graphics_toolkit change.
+
+	* DLD-FUNCTIONS/__init_fltk__.cc: Rename from fltk_backend.cc
+	Update for backend -> graphics_toolkit change.
+	* DLD-FUNCTIONS/module-files, Makefile.am: Update for renamed file.
+
+2011-01-19  Rik  <octave@nomad.inbox5.com>
+
+	* src/data.cc, src/input.cc, src/utils.cc: spellcheck docstrings.
+
+2011-01-19  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/quad.cc,
+	DLD-FUNCTIONS/quadcc.cc, DLD-FUNCTIONS/rcond.cc,
+	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/strfind.cc,
+	DLD-FUNCTIONS/typecast.cc, data.cc, dirfns.cc, error.cc, file-io.cc,
+	graphics.cc, help.cc, input.cc, load-path.cc, load-save.cc, mappers.cc,
+	oct-hist.cc, oct-parse.yy, pager.cc, pr-output.cc, pt-binop.cc,
+	sparse.cc, strfns.cc, syscalls.cc, sysdep.cc, utils.cc: grammarcheck
+	files in src directory.	
+
+2011-01-19  John W. Eaton  <jwe@octave.org>
+
+	* oct-obj.cc (octave_value_list::all_scalars): Check for scalar
+	values, not strings.  Bug #32172.
+
+2011-01-17  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/module-files: Add quadcc.cc to list of files.
+	* DLD-FUNCTIONS/quad.cc: Add Seealso links to quadcc.
+
+2011-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTION/lookup.cc (Flookup): Validate option string.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_function::bind_automatic_vars):
+	Save argument names in hidden variable .argn..
+
+	* variables.cc (F__varval__): New function.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (bind_automatic_vars): Mark variables created
+	here as automatic.
+
+	* symtab.h (symbol_table::mark_automatic): New function.
+	(symbol_table::do_mark_automatic): New function.
+
+2011-01-17  Michael Godfrey <godfrey@isl.stanford.edu>
+
+	* variables.cc (Fwhos): Describe a and f attributes in help text.
+
+2011-01-17  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (octave_signal_handler): Wait for children here.
+	(sigchld_handler): Not here.
+
+2011-01-16  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dispatch__.cc,
+	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/__glpk__.cc,
+	DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/__pchip_deriv__.cc,
+	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
+	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/ccolamd.cc,
+	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/chol.cc,
+	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/colloc.cc,
+	DLD-FUNCTIONS/conv2.cc, DLD-FUNCTIONS/convhulln.cc,
+	DLD-FUNCTIONS/cquad.cc, DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/det.cc,
+	DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/dmperm.cc,
+	DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
+	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
+	DLD-FUNCTIONS/fltk_backend.cc, DLD-FUNCTIONS/gammainc.cc,
+	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/getgrent.cc,
+	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/hess.cc,
+	DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
+	DLD-FUNCTIONS/max.cc, DLD-FUNCTIONS/md5sum.cc,
+	DLD-FUNCTIONS/onCleanup.cc, DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
+	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
+	DLD-FUNCTIONS/rcond.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/spparms.cc,
+	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/str2double.cc,
+	DLD-FUNCTIONS/strfind.cc, DLD-FUNCTIONS/sub2ind.cc,
+	DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
+	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/time.cc, DLD-FUNCTIONS/tril.cc,
+	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/typecast.cc,
+	DLD-FUNCTIONS/urlwrite.cc: Improve docstrings.  Use same variable names
+	in error() strings and docstrings.
+
+2011-01-16  John W. Eaton  <jwe@octave.org>
+
+	* mkgendoc: Write function name along with file name in comment.
+
+2011-01-15  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* symtab.h (do_clear_global_pattern): Reword so as to not
+	invalidate iterators when calling std::map::erase().
+	* DLD-FUNCTIONS/urwlwrite.cc (~curl_handles): Ditto.
+
+2011-01-15  Rik  <octave@nomad.inbox5.com>
+
+	* src/dirfns.cc, src/help.cc, src/input.cc, src/load-save.cc,
+	src/oct-hist.cc, src/pager.cc, src/pr-output.cc, src/variables.cc:
+	Eliminate @deffn macros.
+
+2011-01-15  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (FWEXITSTATUS, FWIFEXITED): Missing semicolon.
+
+2011-01-15  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc: Use version instead of flops in test.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/svd.cc: Add Seealso references to svd.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* src/mappers.cc: Add Seealso links between sqrt, cbrt, nthroot
+	functions.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Ffnmatch): Use DEFUNX until gnulib's fnmatch is C++
+	friendly.
+
+2011-01-14  Rik  <octave@nomad.inbox5.com>
+
+	* src/mappers.cc: Add Seealso links between erf variants to docstring.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (BADSIG, BLOCK_SIGNAL, SIGCHLD, BLOCK_CHILD,
+	UNBLOCK_CHILD): Move macro definitions here from sighandlers.h.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (mkstemp): Delete.
+	Delete decl for mkstemps.
+	(Fmkstemp): Assume we have mkstemp from gnulib.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/dot.cc,
+	octave.cc: Style fixes.
+
+2011-01-13  David Bateman  <dbateman@free.fr>
+
+	ls-mat5.cc (int save_mat5_element_length (const octave_value&,
+	const std::string&, bool, bool)): For sparse matrices use nnz rather
+	than nzmax.
+	(bool save_mat5_binary_element (std::ostream&, const octave_value&,
+	const std::string&, bool, bool, bool, bool)): ditto.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* base-list.h (class octave_base_list): Provide explicit
+	default and copy construtors, assignment operator, and destructor.
+	* load-path.h (load_path::dir_info::class_info): Likewise.
+
+	* load-path.h (load_path::dir_info::dir_info): Initialize all
+	members in initializaition list.
+	* lex.h (lexical_feedback::lexical_feedback): Likewise.
+
+2011-01-13  John W. Eaton  <jwe@octave.org>
+
+	* cutils.h: New file.
+	(octave_sleep, octave_usleep, octave_raw_vsnprintf): Move decls
+	here from utils.h.
+	* Makefile.am (octinclude_HEADERS): Add cutils.h to the list.
+	* utils.h: Include cutils.h.
+	* cutils.c: Include cutils.h.
+
+2011-01-12  David Grundberg  <individ@acc.umu.se>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (__magick_read__) [!HAVE_MAGICK]:
+	Write more verbose error message that blames on imread, not
+	__magick_read__.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/rand.cc (reset_rand_generator): Delete unused
+	static function.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (graphics_object::get_ancestor): Avoid GCC warning.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gcd.cc (extended_gcd): Tag call to floor with gnulib::.
+
+2011-01-12  John W. Eaton  <jwe@octave.org>
+
+	* oct-hist.cc (Fhistory_control): New function.
+
+2011-01-12  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* oct-hist.cc (default_history_control): New function.
+	(initialize_history): Pass Vhistory control to
+	command_history::initialize.
+
+2011-01-11  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* gl-render.cc (opengl_renderer::draw_axes): Improve positioning
+	of titles.
+
+2011-01-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::print_as_scalar): Always return true.
+	(octave_cell::print_raw): Handle extra newlines here.
+	* ov-struct.cc (Fstruct_levels_to_print): Move here from pr-output.cc
+	(Vstruct_levels_to_print): Move here from pr-output.cc.  Now static.
+	(Vprint_struct_array_contents): New static variable.
+	(Fprint_struct_array_contents): New function.
+	(octave_struct::print_raw): Use Vprint_struct_array_contents.
+	Simplify and improve output.
+	(octave_scalar_struct::print_raw): Simplify and improve output.
+	* pr-output.h (Vstruct_levels_to_print): Delete decl.
+	* ov-class.cc (octave_class::print_raw): Don't unwind_protect
+	Vstruct_levels_to_print.
+
+2011-01-09  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (save_mat5_array_length (const float*, octave_idx_type,
+	bool)): Take in to account the short tags for single data elements.
+	(int save_mat5_element_length (const octave_value&, const std::string&,
+	bool, bool)): Declare sparse matrices const to avoid a copy on read.
+	* ls-utils.cc (save_type get_save_type (float, float)): New function.
+	* ls-utils.h  (save_type get_save_type (float, float)): Declare it.
+
+2011-01-09  John W. Eaton  <jwe@octave.org>
+
+	* token.h, token.cc (token::plot_tok_typ): Delete unused enum.
+	(token::token_type): Delete pttype_token from the list.
+	(token::token (plot_tok_type, int, int)): Delete unused constructor.
+	(token::pttype): Delete unused function.
+	(token::anonymous union): Delete PT element.
+
+2011-01-09  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll (display_token): Display token value for NUM, IMAG_NUM,
+	STRUCT_ELT, NAME, DQ_STRING, and SQ_STRING tokens.
+
+2011-01-09  John W. Eaton  <jwe@octave.org>
+
+	* lex.h, lex.ll, oct-parse.yy (lexer_flags::parsed_function_name):
+	Declare to be std::stack<bool> instead of bool.  Change all uses.
+	Bug #32083.
+
+2011-01-08  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* gl-render.cc (opengl_renderer::draw_axes): Revert positionmode
+	to auto after automatic positioning of titles. Bug #32074.
+
+2011-01-08  David Grundberg  <individ@acc.umu.se>
+
+	* ov-fcn.h (is_subfunction): Rename from is_nested_function.
+	Change all uses and nearby comments.
+	* ov-usr-fcn.h (is_subfunction, mark_as_subfunction): Rename from
+	is_nested_function, mark_as_nested_function.  Change all uses.
+
+2011-01-07  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): For uniformoutput case
+	with nargout > 0, initialize elements of retval to NDArray
+	objects of the same size as the input.  Bug #32067.
+
+2011-01-07  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (Fget): Return empty matrix if no values are found.
+	Bug #32067.
+
+2011-01-06  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* txt-eng-ft.h, txt-eng-ft.cc: Remove dependency on graphics.h.
+	(ft_render::set_font): New arguments list.
+	(ft_render::text_to_pixels): New method.
+	* graphics.cc (text::properties::update_text_extent): Adapt the call
+	to ft_render::set_font.
+	(text::properties::get_extent_matrix): New function.
+	(text::properties::update_text_extent): Function rewrite.
+	* gl-render.cc (opengl_renderer::set_font): Likewise.
+	(opengl_renderer::text_to_pixels):
+	Make use of ft_render::text_to_pixels.
+	(opengl_renderer::render_text): Simplify.
+	(opengl_renderer::draw_text): Make text drawing aware of the text
+	extent property.
+	* gl-render.h (opengl_renderer::text_to_pixels): Arguments reordering.
+	(opengl_renderer::get_transform): New function.
+	* gl2ps-renderer.cc (glps_renderer::render_text): Adapt the call to
+	text_to_pixels.
+	(glps_renderer::alignment_to_mode): New function.
+	(glps_renderer::draw_text): Overload inherited function.
+	* gl2ps-renderer.h (glps_renderer::alignment_to_mode): New function.
+	* graphics.h.in: Add dependency on txt-eng-ft.h.
+	(class text::properties): Tag horizontalalignment and verticalalignment
+	with "u" qualifier.
+	(text::properties::get_extent_matrix, get_pixels,
+	update_horizontalalignment, update_verticalalignment): New functions.
+	(text::properties::renderer): New class member of type ft_render.
+	(text::properties::pixels): New class member of type uint8NDArray.
+
+2011-01-06  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/rand.cc (Frandperm): Tag call to floor with gnulib::.
+	* DLD-FUNCTIONS/gcd.cc (divide): Tag calls to floor with gnulib::.
+	* ov-scalar.cc (octave_scalar::map): Tag floor with gnulib::.
+	* ov-cell.cc (octave_cell::save_hdf5): Tag call to floor with gnulib::.
+	* pr-output.cc (engineering_exponent, num_digits,
+	octave_print_internal_template): Tag call to floor with gnulib::.
+	* graphics.cc: Consistently use std::ceil.
+	(axes::properties::get_axis_limits): Tag calls to floor with gnulib::.
+	(axes::properties::calc_ticks_and_lims): Likewise.
+
+2011-01-05  John W. Eaton  <jwe@octave.org>
+
+	Bug #32060.
+
+	* ov-fcn.h (octave_function::mark_as_private_function): Now virtual.
+	* ov-usr-fcn.h (octave_function::mark_as_private_fucntion):
+	New function.  Mark subfunctions as private also.
+	* symtab.cc, symtab.h
+	(symbol_table::mark_subfunctions_in_scope_as_private,
+	symbol_table::fcn_info::mark_subfunction_in_scope_as_private,
+	symbol_table::fcn_info::fcn_info_rep::mark_subfunction_in_scope_as_private):
+	New functions.
+
+2011-01-04  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw): Improve
+	display of percentage full.  Bug #32011.
+
+2011-01-04  John W. Eaton  <jwe@octave.org>
+
+	* ov-typeinfo.cc (Ftypeinfo): Return cell array of character
+	strings, not character array.  Bug #32050.
+
+2011-01-03  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (islogical, isnumeric): Add tests to check sparse forms of
+	logical matrices.
+
+2011-01-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-bool-sparse.h (octave_sparse_bool_matrix::is_numeric_type): New
+	virtual method override.
+
+2010-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* toplev.cc (system): Add additional calling form "shell_cmd" to
+	documentation.
+
+2010-12-31  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (islogical, isinteger, iscomplex, isfloat, isempty,
+	isnumeric, ismatrix, issorted): Improve docstring
+	* graphics.cc (ishandle): Improve docstring
+	* lex.ll (iskeyword): Improve docstring
+	* mappers.cc (isalnum, isalpha, isascii, iscntrl, isdigit, isinf,
+	isgraph, islower, isna, isnan, isprint, ispunct, isspace, isupper,
+	isxdigit): Improve docstring
+	(finite/isfinite): Make finite an alias for isfinite rather than the
+	reverse.  Improve docstring.
+	* ov-cell.cc (iscell, iscellstr): Improve docstring
+	* ov-class.cc (isobject, ismethod): Improve docstring
+	* ov-null-mat.cc (isnull): Improve docstring
+	* ov-struct.cc (isstruct, isfield): Improve docstring
+	* ov-usr-fcn.cc (isargout): Improve docstring
+	* sparse.cc (issparse): Improve docstring
+	* strfns.cc (ischar): Improve docstring
+	* sysdep.cc (isieee): Improve docstring
+	* utils.cc (isvarname, is_absolute_filename,
+	is_rooted_relative_filename, isindex): Improve docstring
+	* variables.cc (isglobal): Improve docstring
+
+2010-12-28  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (and, ctranspose, eq, ge, gt, ldivide, le, lt, minus,
+	mldivide, mpower, mrdivide, mtimes, ne, not, or, plus, power, rdivide,
+	times, transpose, uminus, uplus): Improve docstrings for functions
+	which emulate operators.  Add Seealso cross-referencing.
+
+2010-12-28  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (save_mat5_array_length (const float*, octave_idx_type,
+	bool)): Take in to account the 4 bytes of padding for an odd number
+	of elements in single precision arrays.
+
+2010-12-27  Rik  <octave@nomad.inbox5.com>
+
+	* syscalls.cc (stat): Add additional calling form using file descriptor
+	fid to docstring.
+
+2010-12-26  Michael Godfrey <godfrey@isl.stanford.edu>
+
+	* gammainc.cc: Add @tex blocks to docstring.
+
+2010-12-25  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/str2double.cc: Fix bug in converting "numberi" strings
+	such as "2i".  Add ability to process special value "NA".  Rewrite 
+	docstring.
+
+2010-12-25  Rik  <octave@nomad.inbox5.com>
+
+	* input.cc (PS1): Correct use of xref macro to remove Tex warning.
+
+2010-12-22  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* input.cc (PS1): Give an example of how PS1 can use ANSI escape
+	codes for getting a colourised prompt.
+	* oct-hist.cc (history): Correct documentation about how
+	history("-r") appends to history, doesn't replace it.
+
+2010-12-22  Judd Storrs  <jstorrs@gmail.com>
+
+	* data.cc (Fvec): New optional second argument to set dimension
+	of result.
+
+2010-12-18  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (class axes::properties): Tag xtickmode, ytickmode
+	and ztickmode with "u" qualifier.
+	(axes::properties::update_xtickmode, axes::properties::update_ytickmode
+	axes::properties::update_ztickmode): New functions.
+
+2010-12-18  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Simplify file name/id logic.
+	Bug #31910.
+
+2010-12-17  Rik  <octave@nomad.inbox5.com>
+
+	* oct-parse.yy (builtin): Remove seealso reference to deprecated 
+	function dispatch.
+
+2010-12-17  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (class text::properties): New properties positionmode,
+	rotationmode, horizontalalignmentmode, verticalalignmentmode.
+	* graphics.cc (axes::properties::init, axes::properties::set_defaults):
+	Set mode to auto for all initialized positioning properties.
+	(axes::properties::set_xlabel,set_ylabel,set_zlabel,set_title):
+	Revert to auto-positioning mode and turn clipping off when title or
+	labels are set.
+	* gl-render.cc (opengl_renderer::draw_axes): Disable auto-positioning
+	of manually positioned title and axes labels.
+
+2010-12-17  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.h.in (class axes::properties): Change default value for
+	fontsize from 12 to 10.
+	* graphics.cc (axes::properties::set_defaults): Likewise.
+
+2010-12-15  John W. Eaton  <jwe@octave.org>
+
+	Bug #31883.
+
+	* oct-hist.cc (initialize_history): Call command_history::initialize.
+
+	* octave.cc (gripe_safe_source_exception): New function.
+	(safe_source_file): New function.
+	(execute_startup_files): Call safe_source_file instead of source_file.
+	(execute_command_line_file): Likewise.  Don't handle exceptions here.
+	(execute_eval_option_code): Also catch octave_execution	exception.
+
+2010-12-15  John W. Eaton  <jwe@octave.org>
+
+	Bug #31861.  Also bug #31286.
+
+	* lex.h (lexical_feedback::defining_func): Now int instead of bool.
+	lex.ll (is_keyword_token): Increment lexer_flags.defining_func
+	instead of setting it to true.
+	(lexical_feedback::init): Set defining_func to 0 instead of false.
+	* oct-parse.yy (recover_from_parsing_function): Decrement
+	lexer_flags.defining_func here.
+	* input.cc (input_event_hook): Don't do anything if we are
+	lexer_flags.defining_func is nonzero.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* ov-struct.cc (isfield): Additional test for cellstring of field names.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (mod): Additional tests for mod with non-integer real values.
+
+2010-12-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Drop support for the "i" option.
+
+2010-12-09  Marco Atzeri   <marco_atzeri@yahoo.it>
+
+	* mappers.cc: In test for gamma, expect Inf for gamma(-1), not NaN.
+	Bug #31772.
+
+2010-12-08  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (base_property::do_set): Don't reverse order of
+	children.  Bug #31822.
+
+2010-12-08  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_user_function):
+	Return if an error occurs in out_of_date_check.
+
+2010-12-07  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find): If an
+	error occurred during the first call to xfind, don't try again.
+
+2010-12-07  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (case_list): Also accept default_case by itself.
+	Bug #31793.
+
+2010-12-01  John W. Eaton  <jwe@octave.org>
+
+	* pt-pr-code.cc	(tree_print_code::visit_octave_user_function_trailer):
+	Don't indent or print "endfunction" here.
+	* ov-usr-fcn.cc (ov_user_script::do_multi_index_op): Save and
+	set tree_evaluator::statement_context, not
+	tree_evaluator::in_fcn_or_script_body.
+	(ov_user_function::do_multi_index_op): Likewise.
+	* pt-eval.cc: Initialize tree_evaluator::statement_context, not
+	tree_evaluator::in_fcn_or_script_body.
+	(tree_evaluator::visit_break_command): Check statement_context,
+	not in_fcn_or_script_body.
+	(tree_evaluator::visit_continue_command): Likewise.
+	(tree_evaluator::visit_return_command): Likewise.
+	(visit_statement): Also echo commands in scripts if
+	Vecho_executing_commands & ECHO_SCRIPTS is true.
+	* pt-eval.h (tree_evaluator::in_fcn_body,
+	tree_evaluator::in_script_body): New static variables.
+	(tree_evaluator::): Now an enum.
+	(tree_evaluator::in_function_or_script_body): Now an enum.
+	Rename from in_fcn_or_script_body.
+
+2010-12-01  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_gui_mode): Fix gui mode
+	problems when set to none.
+
+2010-11-26  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (find_uimenu_children,
+	__fltk_redraw__): Consider hidden handles here.
+
+2010-11-26  John W. Eaton  <jwe@octave.org>
+
+	* defaults.cc (FEXEC_PATH): Only call set_exec_path if nargin is
+	greater than zero.
+
+2010-11-25  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_gui_mode): New
+	function to set GUI mode.
+	(__fltk_uigetfile__): Remove nargout from argument list.
+	(plot_window): Remove gui_mode enum here.
+
+2010-11-25  John W. Eaton  <jwe@octave.org>
+
+	* defaults.cc (set_exec_path): Append EXEC_PATH to PATH.  Store
+	only extra directories in EXEC_PATH.
+	(FEXEC_PATH): Update doc string.
+	Bug #31695.
+
+2010-11-22  John W. Eaton  <jwe@octave.org>
+
+	* defun.cc (defun_isargout): Cast nout to octave_idx_type in call
+	to std::min.
+
+2010-11-21  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/fltk-backend.cc (__fltk_uigetfile__): New function
+	for GUI file dialogs.
+	* graphics.cc (property_list::set): Indentation	fix.
+
+2010-11-20  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in: Change intended for 11272.
+
+2010-11-19  John W. Eaton  <jwe@octave.org>
+
+	Bug #31706.
+
+	* mex.h, mex.cc (mxArray::dup): Rename from clone.  Change all
+	uses and derived classes.
+	(mxArray_octave_value::dup): Convert to mxArray object here.
+
+2010-11-19  John W. Eaton  <jwe@octave.org>
+
+	Bug #31707.
+
+	* mex.cc (mex::free): Don't warn about skipping memory not
+	allocated by mxMalloc, mxCalloc, or mxRealloc.
+
+2010-11-18  Daisuke TAKAGO  <takago@neptune.kanazawa-it.ac.jp>
+
+	* gl-render.cc (opengl_renderer::draw_line):
+	Layer markers in 2D plots.
+
+2010-11-18  John W. Eaton  <jwe@octave.org>
+
+	Bug # 31689.
+
+	* ov-str-mat.cc (octave_char_matrix_str::save_ascii):
+	Adapt to change in charMatrix::row_as_string function.
+	* DLD-FUNCTIONS/md5sum.cc: New tests.
+
+2010-11-17  John W. Eaton  <jwe@octave.org>
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue1): Also stash
+	the directory name of the parent function in the newly created
+	anonymous function.  Bug #31484.
+
+2010-11-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (parse_fcn_file): Protect and set global_command
+	to 0 before calling yyparse.
+	* toplev.cc (main_loop): Likewise.
+
+	* oct-parse.yy (eval_string): Set global_command to 0 after
+	protecting it and before calling yyparse.
+	* input.cc (get_debug_input): Likewise.
+
+2010-11-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (graphics_object::get_ancestor): New method.
+	* graphics.cc (graphics_object::get_ancestor): Likewise.
+	(convert_text_position, convert_cdata): Use it.
+	(xget_ancestor): Remove obsolete function.
+	* DLD_FUNCTIONS/fltk_backend.cc (plot_window::uimenu_update,
+	fltk_backend::update): Replace xget_ancestor with
+	graphics_objects::get_ancestor.
+
+2010-11-13  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (figure::properties::filename): Make writable.
+	Bug #31450.
+
+2010-11-12  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (nodist_liboctinterp_la_SOURCES): Remove
+	$(OPT_HANDLERS) from  the  list.  Bug #31623.
+
+2010-11-11  John W. Eaton  <jwe@octave.org>
+
+	* data.cc: New tests for cat.  Enable 4 asserts that were disabled.
+
+2010-11-11  Kai Habel  <kai.habel@gmx.de>
+
+	* fltk-backend.cc (plot_window::uimenu_update,
+	fltk_backend::update): Add prefix 'ID_' to property ids to avoid
+	name clash on windows systems.
+	* graphics.cc (gnuplot_backend::update): Ditto.
+	* genprops.awk (emit_declarations, emit_source): Ditto.
+
+2010-11-11  John W. Eaton  <jwe@octave.org>
+
+	Bug #31165.
+
+	* symtab.h (symbol_table::parent_classes): New static function.
+	* symtab.cc (out_of_date_check): Also look for methods defined
+	in parent classes of dispatch_type.
+	(symbol_table::fcn_info::fcn_info_rep::load_class_method): Call
+	parent_classes instead of accessing parent_map directly.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Call octave_ieee_init here.
+	* sysdep.cc (sysdep_init): Not here.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc: Eliminate special case for __DECCXX.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (sysdep_init): Eliminate special case for NeXT systems.
+	(malloc_handler, NeXT_init): Delete.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (MAYBE_ACK_SIGNAL): Delete macro and all uses.
+	(sigchld_handler): Delete special case for __EMX__.
+	* sysdep.cc (sysdep_init): Eliminate special case for __EMX__.
+	(OS2_init, Fextproc): Delete.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (sysdep_init): Eliminate special case for SCO.
+	(SCO_init): Delete.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__dispatch__.cc: Rename from dispatch.cc.
+	Move tests to scripts/deprecated/dispatch.m.
+	(F__dispatch__): Rename from Fdispatch.
+
+	* DLD-FUNCTIONS/module-files: Add __dispatch__.cc to the list.
+	Remove dispatch.cc from the list.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (Fbuiltin): Move here from DLD-FUNCTIONS/dispatch.cc.
+
+2010-11-10  Kai Habel  <kai.habel@gmx.de>
+
+	* fltk-backend.cc (fltk_uimenu::update_accelerator
+	fltk_uimenu::update_callback, fltk_uimenu::update_enable,
+	fltk_uimenu::update_foregroundcolor fltk_uimenu::update_visible):
+	Check if find_item was succesful.
+	(fltk_uimenu::update_seperator): Make sure we don't write beyond
+	limits of menubar structure.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	Bug #31491.
+
+	* pt-pr-code.cc, pt-pr-code.h (tree_print_code::print_fcn_handle_body):
+	New function.
+	* ov-fcn-handle (octave_fcn_handle::print_raw): Use it.
+	* pt-pr-code.cc (tree_print_code::visit_anon_fcn_handle): Likewise.
+	* pt-pr-code.h (tree_print_code::suppress_newline): Rename from
+	printing_newlines.  Now int.  Change all uses.
+	* pt-pr-code.cc (tree_print_code::newline): Only set
+	beginning_of_line if newline is printed.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	Bug #31567.
+
+	* ov-fcn.h (octave_base_value::is_class_constructor)
+	octave_base_value::is_class_method): New optional character
+	string argument.
+	* ov-usr-fcn.h (octave_usr_fcn::is_class_constructor)
+	octave_usr_fcn::is_class_method): New optional arg. If this
+	argument is not empty, also check it against the name of the
+	dispatch class.
+	* ov-class.cc (Fclass): Allow class function to be called inside
+	a class method.  Require that the to-be-constructed object is of
+	the same class as the class constructor or method.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll (handle_number): Set lexer_flags.looking_for_object_index
+	to false here.  Fixes bug #31608.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc (make_marker_list): Call fmod instead of mod.
+
+	* data.cc (Frem): Use xrem instead of fmod and fmodf.
+	(Fmod): Use xmod instead of mod.
+
+2010-11-08  Kai Habel  <kai.habel@gmx.de>
+
+	* fltk-backend.cc (fltk_uimenu::do_find_uimenu_children):
+	Simplify.  Remove unused code.
+	(fltk_uimenu::update_submenu): Remove unused function.
+	(fltk_uimenu::add_to_menu, fltk_uimenu::remove_from_menu):
+	Simplify.  Get properties for valid objects only.
+
+2010-11-03  Ben Abbott  <bpabbott@mac.com>
+
+	* gl-render.cc: Do not give rendering error for uimenus.
+
+2010-11-03  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/cquad.cc: If we don't have copysign but we do
+	have _copysign, define copysign to be _copysign.
+
+2010-11-02  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/cquad.cc (Fcquad): Use octave_Inf, not INFINITY.
+
+2010-11-02  David Bateman  <dbateman@free.fr>
+
+	* ls-hdf5.cc (bool hdf5_get_scalar_attr (hid_t, hid_t,
+	const char *, void *), herr_t hdf5_add_scalar_attr
+	(hid_t, hid_t, const char *, void *)): New functions.
+	(herr_t hdf5_add_scalar_attr (hid_t, const char *)): Remove static
+	definition to make this function visible externally.
+	* ls-hdf5.h (extern OCTINTERP_API bool hdf5_check_attr (hid_t,
+	const char *), extern OCTINTERP_API bool hdf5_get_scalar_attr
+	(hid_t, hid_t, const char *, void *buf), extern OCTINTERP_API herr_t
+	hdf5_add_attr (hid_t, const char *), extern OCTINTERP_API herr_t
+	hdf5_add_scalar_attr (hid_t, hid_t, const char *, void *)): Function
+	declarations.
+	* ov-range.cc (bool octave_range::save_hdf5 (hid_t, const char *,
+	bool)): Save the number of elements in the range as an HDF5 attribute.
+	(bool octave_range::load_hdf5 (hid_t, const char *)): If an HDF5
+	attribute containing the number of elements exists use it to ensure
+	the correct number of elements in the range.
+
+2010-11-01  David Bateman  <dbateman@free.fr>
+
+	* gl-render.cc (void opengl_renderer::draw_patch (const
+	patch::properties &)): Draw clipped contours of patches.
+	* graphics.cc (template<class T> static void get_array_limits
+	(const Array<T>&, double&, double&, double&)): Don't need to test
+	for NaN as comparison is always false.
+	(Matrix children_property::do_get_children (bool) const): New method of
+	new children_property class.
+	(void children_property::do_delete_children (bool)): Ditto.
+	(void base_properties::remove_child (const graphics_handle&)): Delete.
+	(void base_properties::set_children (const octave_value&)): Delete.
+	(void base_properties::delete_children (void)): Delete.
+	(base_properties::update_axis_limits (const std::string&,
+	const graphics_handle&) const): New method.
+	(void base_graphics_object::update_axis_limits (const std::string&,
+	const graphics_handle&)): New Method.
+	(Matrix base_properties::get_children_internal (bool) const): Delete.
+	(Matrix base_properties::get_children (void) const): Delete.
+	(Matrix base_properties::get_hidden_children (void) const): Delete.
+	(void axes::update_axis_limits (const std::string&,
+	const graphics_handle&): New Method.
+	(void hggroup::properties::update_limits (void) const): New method.
+	(void hggroup::properties::update_limits (const graphics_handle&)
+	const): New method.
+	(void hggroup::update_axis_limits (const std::string&,
+	const graphics_handle&)): New method.
+	* graphics.h.in (class children_property): New class.
+	(class base_properties): Use it.
+	(base_graphics_object::update_axis_limits(const std::string&,
+	const graphics_handle&)): New method.
+	(graphics_object::update_axis_limits(const std::string&,
+	const graphics_handle&)): New method.
+	(axes::update_axis_limits(const std::string&,
+	const graphics_handle&)): New method.
+	(hggroup::adopt (const graphics_handle&)): Use it
+	(void hggroup::properties::update_limits (void) const): Remove inline
+	definition of the methid.
+	(void hggroup::properties::update_limits (const graphics_handle&)
+	const): New method.
+	(void hggroup::update_axis_limits (const std::string&,
+	const graphics_handle&)): New method.
+
+2010-10-31  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* xnorm.h (xnorm, xcolnorms, xrownorms, xfrobnorm): tag with
+	OCTINTERP_API.
+
+2010-10-31  Kai Habel  <kai.habel@gmx.de>
+
+	* fltk-backend.cc (find_uimenu_children): Remove template argument.
+	(do_find_uimenu_children): New function.
+
+2010-10-29  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (octave_value patch::properties::get_color_data
+	(void) const): Don't call convert_data is the facevertexcdata
+	property is undefined or empty.
+	* gl-render.cc (void opengl_renderer::draw_patch
+	(const patch::properties &)): Set ec_mode to 0 if edgecolor is "none".
+	Set fc_mode to 0 if facecolor is "none".
+
+2010-10-29  Ben Abbott  <bpabbott@mac.com>
+
+	* gl-render.cc: Crop ticks, ticklabels, and gridlines for OpenGL
+	backend.
+
+2010-10-28  Konstantinos Poulios  <logari81@googlemail.com>
+
+	* graphics.cc (normalized_aspectratios, max_axes_scale):
+	New file-scope static function
+	(updating_aspectratios): New file-scope variable.
+	(axes::properties::update_aspectratios, axes::update_axis_limits):
+	Return immediately if updating_aspecratios is true.
+	(axes::properties::update_aspectratios):
+	If dataaspectratiomode is set to manual this function will try to
+	respect it even after changes in xlim, ylim, zlim.
+	If both dataaspectratiomode and plotboxaspectratiomode is set to
+	manual this function will try to recalulate xlim, ylim, zlim
+	depending on the status of xlimmode, ylimmode, zlimmode. If
+	altering xlim, ylim, zlim is not possible, plotboxaspectratio will
+	be overriden.
+	* graphics.h.in (class axes::properties): Tag dataaspectratio,
+	dataaspectratiomode, plotboxaspectratio, and
+	plotboxaspectratiomode with "u" qualifier.
+	(axes::update_dataaspectratio,
+	axes::update_dataaspectratiomode,
+	axes::update_plotboxaspectratio,
+	axes::update_plotboxaspectratiomode): New functions.
+
+2010-10-25  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Use F77_CHAR_ARC_LEN macro to pass
+	character string length in call to xerbla.
+
+2010-10-25  Kai Habel  <kai.habel@gmx.de>
+
+	* gl-render.cc (opengl_renderer::draw): Ignore uimenu objects here.
+	* graphics.h.in (class OCTINTERP_API uimenu): New graphics object.
+	* graphics.cc (lookup_object_name): Add uimenu here.
+	(make_graphics_object_from_type): Likewise.
+	(property_list::set): Likewise.
+	(property_list::lookup): Likewise.
+	(root_figure::init_factory_properties): Likewise.
+	(__go_uimenu__): New function.
+	* DLD-Functions/fltk-backend.cc (OpenGL_fltk::resize): Make public.
+	(script_cb): New function.
+	(fltk_uimenu): New class.
+	(plot_window::plot_window): Initialize fltk_uimenu object.
+	(plot_window::~plot_window): Delete fltk_uimenu object.
+	(plot_window::show_menubar): New function.
+	(plot_window::hide_menubar): New function.
+	(plot_window::uimenu_update): New function.
+	(plot_window::handle): Do not evaluate FLTK events when figure
+	is deleted.
+	(figure_manager::uimenu_update): New function.
+	(figure_manager::toggle_menubar_visibility): New functions.
+	(figure_manager::do_toggle_menubar_visibility): New function.
+	(figure_manager::do_uimenu_update): New function.
+	(fltk_backend::uimenu_set_fltk_label): New function.
+	(fltk_backend::update): Add figure and uimenu updates.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/tril.cc, syscalls.cc: Docstring improvements.
+
+2010-10-24  Rik  <octave@nomad.inbox5.com>
+
+	* variables.cc: Deprecate is_global function
+
+2010-10-23  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Ffopen): Only handle fopen ("all") case if nargout
+	is 0 or 1.
+
+2010-10-22  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (usage): Put whitespace before and after usage message.
+	(octave_main): If getopt_long returns '?', it means an
+	unrecognized option was encountered.
+	Panic if default case in option switch statement is reached.
+ 	(verbose_usage, short_opts, usage_string): Remove '?' as an
+	alias for 'h' in the list of possible options.
+	Fixes bug #31423.
+
+2010-10-22  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (load_fcn_from_file): Also strip directory when
+	computing function name from filename.  Bug #31395.
+
+2010-10-21  Gunnar Farnebäck  <gunnar@lysator.liu.se>
+
+	* mex.cc (mxArray_number::as_octave_value): Convert single
+	matlab array to single octave array instead of to double octave
+	array.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* gripes.h: Include lo-array-gripes.h.
+
+2010-10-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-float.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
+	ov-scalar.cc: Use gripe_nan_to_character_conversion.
+
+	* ops.h, ov-base-mat.cc, ov-base-scalar.cc, ov-complex.h,
+	ov-cx-mat.cc, ov-cx-sparse.cc, ov-float.h, ov-flt-complex.h,
+	ov-flt-cx-mat.cc, ov-flt-re-mat.cc, ov-range.cc, ov-re-mat.cc,
+	ov-re-sparse.cc, ov-scalar.h: Use gripe_nan_to_logical_conversion.
+
+2010-10-20  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (Fsystem): Allow optional RETURN_OUTPUT and TYPE
+	arguments to be specified independently.  Update doc string.
+
+2010-10-18  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_first_of,
+	load_path::do_find_all_first_of): Also search path for relative
+	filenames.
+
+2010-10-17  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/tril.cc: Use Octave copyright notice instead of
+	generic "This program is free software" notice.
+
+	* toplev.cc (Fwarranty): Say "GNU Octave" instead of "This program".
+
+2010-10-16  John W. Eaton  <jwe@octave.org>
+
+	* mxarray.h.in (mxArray::is_function_handle): New virtual function.
+	* mex.cc (mxArray_base::is_function_handle): New pure virtual function.
+	(mxArray_octave_value::is_function_handle): New function.
+	(mxArray_matlab::is_function_handle): New function.
+	(mxIsFunctionHandle): New function.
+	* mexproto.h (mxIsFunctionHandle): Provide decl.
+
+2010-10-14  John W. Eaton  <jwe@octave.org>
+
+	* sparse.cc: Rename from DLD-FUNCTIONS/sparse.cc.  Include
+	defun.h, not defun-dld.h.
+	(Fissparse, Fsparse, Fspalloc): Use DEFUN, not DEFUN_DLD.
+	* Makefile.am (DIST_SRC): Add sparse.cc to the list.
+	* DLD-FUNCTIONS/module-files: Remove sparse.cc from the list of files.
+
+2010-10-09  Ben Abbott  <bpabbott@mac.com>
+
+	* gl-render.cc: Treat images with scalar unique(x/ydata) like Matlab.
+
+2010-10-08  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (maximum_braindamage):
+	Set do_braindead_shortcircuit_evaluation to true.
+	Disable Octave:possible-matlab-short-circuit-operator warning.
+	* oct-parse.yy (if_cmd_list1, elseif_clause, loop_command):
+	Mark conditions in IF and WHILE statements for braindead
+	short-circuit behavior.
+	* pt-binop.cc (Vdo_braindead_shortcircuit_evaluation): New
+	static variable.
+	(Fdo_braindead_shortcircuit_evaluation): New function.
+	(tree_binary_expression::rvalue1): Perform short-circuit
+	evaluation of | and & expressions that are conditions of WHILE
+	and IF statements if Vdo_braindead_shortcircuit_evaluation is true.
+	* pt-binop.h
+	(tree_binary_expression::eligible_for_braindead_shortcircuit):
+	New data member.  Initialize it in class constructors.
+	(tree_binary_expression::mark_braindead_shortcircuit): New function.
+	* pt-exp.h (tree_expression::mark_braindead_shortcircuit):
+	New virtual function.
+
+2010-10-08  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in: Properly set image pixel size when unique(x/ydata)
+	is scalar.
+
+2010-10-07  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/conv2.cc (convn): Update docstring.  Add 1 new test.
+
+2010-10-07  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/conv2.cc (convn): Style fixes.  Edit docstring.
+
+2010-10-07  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (do_stream_open): Use fileno instead of ::fileno to
+	avoid problems if fileno is a macro.
+
+2010-10-05  John W. Eaton  <jwe@octave.org>
+
+	* oct-stdstrm.h (octave_stdiostream::octave_stdiostream): Use
+	fileno instead of ::fileno to avoid problems if fileno is a macro.
+
+2010-10-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (axis::properties::pixel_size): New function.
+	(axis::properties::pixel_xsize,axis::properties::pixel_ysize):
+	New functions, use axis::properties::pixel_size
+	(axis::properties::update_ydata,axis::properties::update_xdata):
+	Use axis::properties::pixel_size functions
+
+	* graphics.cc (__image_pixel_size__): New function uses
+	axis::properties::pixel_size functions
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (class caseless_str): Move to
+	liboctave/caseless-string.h.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (base_properties::get_dynamic): Create and return
+	octave_scalar_map object instead of Octave_map.
+	(base_graphics_object::remove_all_listeners): Use octave_map
+	instead of Octave_map.
+	(base_graphics_object::values_as_string): Likewise.
+
+	* graphics.h.in, graphics.cc (property_list::as_struct):
+	Return octave_scalar_map instead of Octave_map.
+	(base_graphics_object::values_as_struct): Likewise.
+	(graphics_object:values_as_struct): Likewise.
+	(graphics_object::set): Accept octave_map instead of Octave_map.
+
+	* genprops.awk: Use octave_map instead of Octave_map in
+	generated code.  Convert second arg to octave_value in call to
+	octave_map::assign.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_struct::as_octave_value): Use octave_map
+	instead of Octave_map.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.h: Delete forward decl for Octave_map class.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.h (octave_struct (const Octave_map&)): Delete constructor.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-inline.cc (octave_fcn_inline::map_value):  Use
+	octave_scalar_map and octave_map instead of Octave_map.
+
+2010-10-01  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_info_list::map_value): Use
+	octave_scalar_map and octave_map instead of Octave_map.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.h (octave_fields::nil_rep): Make a static function.
+	(octave_fields::octave_fields (void)): Use it here.
+
+2010-09-30  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Use Octave_scalar_map instead
+	of Octave_map.
+	* sighandlers.cc (make_sig_struct, FSIG): Likewise.
+
+	* utils.cc (decode_subscripts): Use octave_map instead of Octave_map.
+	* octave.cc (F__version_info__): Likewise.
+	* pt-eval.cc (visit_complex_for_command): Likewise.
+	* pt-idx.cc (tree_index_expression::lvalue): Likewise.
+
+2010-09-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gcd.cc: Style fixes.
+
+2010-09-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-errno.cc.in (octave_errno::do_list, octave_errno::list):
+	Use octave_scalar_map instead of Octave_map.
+
+2010-09-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* DLD-FUNCTIONS/gcd.cc (divide): New function, complex integer
+	division with remainder.
+	(simple_gcd): Overload for complex values.
+	(extended_gcd): Ditto.
+	(do_simple_gcd): Dispatch for complex gcd.
+	(do_extended_gcd): Ditto.
+	(Fgcd): Mention that complex gcd is now also possible.
+
+2010-09-30  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* DLD-FUNCTIONS/gcd.cc (extended_gcd): Fix bug that didn't
+	distinguish the two output coefficients.
+	(Fgcd): Fix off-by-one bug and typo from copy-pasted code.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-parse.yy (Fautoload): Replace Octave_map by octave_map.
+	* ov-fcn-handle.cc (Ffunctions): Replace Octave_map by
+	octave_scalar_map.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help.cc (F__which__): Use octave_map instead of Octave_map.
+	* load-save.cc (do_load, save_fields, save_vars): Use
+	octave_scalar_map instead of Octave_map.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* debug.cc (Fdbstatus, Fdbstack): Use octave_map instead of
+	Octave_map.
+	* error.cc (warning_options, initialize_warning_options,
+	pr_where, Frethrow, Ferror, Fwarning, Flasterror): Use
+	octave_scalar_map or octave_map instead of Octave_map.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-errno.cc (octave_errno::list, octave_errno::do_list): Use
+	octave_scalar_map instead of Octave_map.
+	* oct-errno.h: Update decls.
+
+2010-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-idx.cc (tree_index_expression::make_arg_struct): Use octave_map
+	instead of Octave_map.
+	* pt-idx.h: Update decl.
+
+2010-09-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (octave_map::contents): Fix off-by-1 error.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (OCTAVE_GLPK_GET_REAL_PARAM,
+	OCTAVE_GLPK_GET_INT_PARAM): Use GETFIELD to access map fields,
+	not CONTENTS.
+	* DLD-FUNCTIONS/amd.cc (Famd): Likewise.
+	* DLD-FUNCTIONS/luinc.cc (Fluinc): Likewise.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (F__ftp_dir__): Use octave_scalar_map
+	instead of Octave_map.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/luinc.cc (Fluinc): Use octave_scalar_map
+	instead of Octave_map.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Use octave_scalar_map
+	instead of Octave_map.  Use scalar values where appropriate in
+	call to glpk.
+	(OCTAVE_GLPK_GET_REAL_PARAM, OCTAVE_GLPK_GET_INT_PARAM):
+	Update for octave_scalar_map.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/amd.cc (Famd): Use octave_scalar_map instead of
+	Octave_map.
+	* DLD-FUNCTIONS/cellfun.cc (get_output_list): Likewise.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dispatch.cc (Fdispatch): Use octave_scalar_map
+	instead of Octave_map.
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Likewise.
+	* DLD-FUNCTIONS/regexp.cc (octregexp): Likewise.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/eigs.cc (Feigs): Use octave_scalar_map instead
+	of Octave_map.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/getpwent.cc (mk_pw_map): Use octave_scalar_map
+	instead of Octave_map.
+	* DLD-FUNCTIONS/getgrent.cc (mk_gr_map): Likewise.
+	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Likewise.
+
+2010-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/time.cc (intfield, stringfield): New functions.
+	(mk_tm_map, extract_tm): Arg is now octave_scalar_map instead of
+	Octave_map.
+	(extract_tm): Use local intfield and setfield functions.
+	(Fmktime, Fstrftime): Use octave_scalar_map instead of Octave_map.
+
+2010-09-28  John W. Eaton  <jwe@octave.org>
+
+	* Cell.h, Cell.cc (Cell::Cell (const std::list<std::string>&)):
+	New constructor.
+
+2010-09-28  John P. Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (maybe_initialize_magick):
+	Warn on initialization of *Magick if QuantumDepth is less than 32.
+
+2010-09-28  John P. Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_format_list__):
+	New function.
+
+2010-09-28  John P. Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image)
+	(encode_bool_image): Ensure bit depth encoding is correct for
+	logical, uint8, and uint16 images.
+
+2010-09-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (xpow (double, const Matrix&)): Ensure real result for
+	positive base.
+	(xpow (double, const Matrix&)): Likewise.
+
+2010-09-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* error.cc (interpreter_try): New function.
+	* error.h: Declare it.
+	* ov-fcn-handle.cc (octave_fcn_binder::maybe_binder): Use it here.
+	* variables.cc (safe_symbol_lookup): Also here.
+
+2010-09-27  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc (opengl_renderer::draw_axes): Reverse order in
+	which child objects are processed.
+
+2010-09-26  Rik  <octave@nomad.inbox5.com>
+
+	* load-path.cc: Use single quotes for regex when possible.
+	* DLD-FUNCTIONS/regexp.cc (regexp): Update docstring to highlight
+	differences between POSIX and PCRE regex.
+
+2010-09-26  Rik  <octave@nomad.inbox5.com>
+
+	* load-path.cc: Use single quotes for regular expression patterns when
+	possible.
+
+2010-09-26  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/regexp.cc (regexp, regexprep, regexpi): Update
+	docstrings to more fully explain PCRE.  Modify advanced tests to run
+	only run when PCRE is present.
+
+2010-09-25  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (Fquit): Allow any number of output parameters.
+
+2010-09-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/gcd.cc (Fgcd): Rewrite. Use more efficient code.
+	Specialize for simple/extended Euclid. Handle integer arguments.
+
+2010-09-24  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/regexp.cc (regexp, regexprep): Update docstring to
+	discuss limits when not compiled with PCRE.
+
+2010-09-23  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (ALL_DEF_FILES): New variable.
+	(DEF_FILES): Don't include $(DLD_DYNAMIC_DEF_FILES) in the list.
+	(DEF_FILES DLD_DYNAMIC_DEF_FILES): Fix dependency info.
+	(doc-files): Depend on $(ALL_DEF_FILES), not $(DEF_FILES).
+
+2010-09-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (elem_xpow (float, const NDArray&),
+	elem_xpow (float, const FloatNDArray&)): Use simpler tests.
+
+2010-09-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.h (octave_base_stream::file_number): Return 0, 1,
+	and 2 for named stdin, stdout, and stderr streams; -1 otherwise.
+
+2010-09-21  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (Fgethostname): New function.
+
+2010-09-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/time.cc (Fmktime): New tests (bug #31079).
+
+2010-09-20  John W. Eaton  <jwe@octave.org>
+
+	Bug #31085:
+
+	* file-io.cc (do_stream_open): Use fopen, fileno, and gzdopen
+	instead of gzopen.  Pass integer file id to
+	octave_zstdiostream::create.
+
+	* oct-stdstrm.h (class octave_base_tstdiostream): Rename from
+	octave_tstdiostream.
+	(octave_tstdiostream::fnum): New data member.
+	(octave_tstdiostream::file_number): New member function.
+	(octave_tstdiostream::octave_tstdiostream): New arg, FID.
+	(octave_tstdiostream::create): Delete.
+	(class octave_stdiostream, class octave_zstdiostream): New
+	non-template classes derived from octave_tstdiostream to replace
+	typedefs.
+
+	* oct-stream.h (octave_base_stream::file_number): Now virtual
+	and const.  Return -1 in defaault implementation.
+
+2010-09-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list) [HAVE_PCRE]:
+	Break from search loop if idx is at or beyond end of buffer
+	(bug #31056).
+
+2010-09-19  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in: Add displayname property to patch and surface objects.
+
+2010-09-18  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in: Remove properties for dead legend code.
+
+2010-09-18  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.cc: Replace pagetype property value custom with <custom>.
+
+2010-09-16  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (static Matrix screen_size_pixels (void), static Matrix
+	papersize_from_type (const caseless_str, const caseless_str))): New
+	functions.
+	(void figure::properties::set_paperunits (const octave_value&),
+	void figure::properties::set_papertype (const octave_value&),
+	void figure::properties::update_paperunits (const caseless_str&))
+	void figure::properties::update_papertype (void),
+	void figure::properties::update_papersize (void),
+	void figure::properties::update_units (const caseless_str&)): New
+	methods of the figure class.
+	(void axes::properties::set_units (const octave_value&),
+	void axes::properties::update_units (const caseless_str&),
+	void axes::properties::set_fontunits (const octave_value&),
+	void axes::properties::update_fontunits (const caseless_str&)):
+	New methods of the axes class.
+	* graphics.h.in (void figure::properties::update_paperunits
+	(const caseless_str&), void figure::properties::update_units
+	(const caseless_str&)): Declaration of new figure methods.
+	(void figure::properties::update_paperunits (const caseless_str&),
+	void figure::properties::update_units (const caseless_str&)):
+	Declaration of new axes methods.
+
+2010-09-16  John P. Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/))magick_read__.cc (write_image): Remove
+	unnecessary for loop to set image format.
+
+2010-09-16  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/svd.cc (Fsvd): Delete assert to avoid
+	"comparison is always false due to limited range of data type"
+	warning from GCC.
+
+	* utils.cc (octave_vsnprintf): Declare nchars volatile to avoid
+	GCC warning.
+
+	* pr-output.cc (octave_print_internal): Avoid uninitialized
+	variable warning from GCC.
+
+2010-09-16  John Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (write_image): Allow
+	arbitrary extensions with format specifier.
+
+2010-09-15  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (Faddpath, Frmpath): Document path arguments.
+
+2010-09-15  John Swensen  <jpswensen@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (write_image): Allow writing
+	arbitrary image types to filenames without an extension (bug #30784).
+
+2010-09-14  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_exist): If looking for any type of file
+	or "file", return 7 for directories and 2 for all other types of
+	files.
+
+2010-09-14  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (base_graphics_backend::initialize): Rename
+	from base_graphics_backend::object_created.  Change all uses.
+	(base_graphics_backend::finalize): Rename from
+	base_graphics_backend::object_destoyed.  Change all uses.
+	(base_graphics_backend::update): Rename from
+	base_graphics_backend::property_changed.  Change all uses.
+
+2010-09-14  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::object_destroyed):
+	Don't attempt to delete window if __plot_stream__ is empty.
+
+2010-09-14  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* load-path.cc (genpath): Pass SKIP in recursive call.
+	(Fgenpath): Accept list of directories to skip.
+
+2010-09-14  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (BEGIN_CHAR_CLASS_CONVERSION): If we hit EOF but
+	have found a match, clear the stream state (bug # 30997).
+
+2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Remove subsref optimization.
+
+2010-09-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellindexmat): New DEFUN.
+
+2010-09-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.cc (octave_fcn_binder::maybe_binder): Stash name tags
+	in the template.
+	(octave_fcn_binder::do_multi_index_op): Don't use xelem to ensure
+	proper unsharing. Make a shallow copy prior to call to ensure
+	consistency throughout recursive calls.
+
+2010-09-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.h (octave_fcn_binder): New subclass.
+	* ov-fcn-handle.cc: Define methods.
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue1): Call
+	octave_fcn_binder::maybe_binder.
+
+2010-09-11  John W. Eaton  <jwe@octave.org>
+
+	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
+	Avoid GCC shadow variable warning.
+
+2010-09-11  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (Faddpath): Adjust value of nargin if numeric
+	option is found (bug #31001).
+
+2010-09-09  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl2ps-renderer.cc: Renders to a previously opened fid.
+	* gl2ps-renderer.h: Ditto.
+	* DLD-FUNCTIONS/fltk_backend.cc: print now accepts fid instead
+	of filename to use with above change
+
+2010-09-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (maybe_initialize_magick): New
+	helper function. Move initialization code & static variable here.
+	(F__magick_read__, F__magick_write__, F__magick_finfo__): Call it
+	here.
+
+2010-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cquad.cc: New source, courtesy by Pedro Gonnet.
+	* DLD-FUNCTIONS/module-files: Update.
+
+2010-09-01  Marco Caliari  <marco.caliari@univr.it>
+
+	* graphics.cc: Fix axes limits underflow to zero for logscale.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (single_type_concat (Array<T>&, ...)): Optimize all
+	scalars case.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (octave_map::cat): Search first for an index with
+	nonzero nfields and use it for comparisons.
+	(permute_to_correct_order1): New overloaded helper func.
+	(permute_to_correct_order): use it here. Pass the index here.
+	* pt-mat.cc (single_type_concat): Don't subst 0x0 for all empty
+	arrays. Use the respective cat() capability instead.
+
+2010-09-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Support "emptyvalue" option.
+	Fix condition for terminating read.
+
+2010-08-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Support reading from a file ID.
+
+2010-08-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (get_current_method_class): Make it an octave_class
+	method. Return class_name as default.
+	(octave_class::dotref): Error on zero return value.
+
+2010-08-30  Ben Abbott  <bpabbott@mac.com>
+
+	* gl-render.cc: Matlab compatible markers for the OpenGL.
+
+2010-08-30  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (convert_cdata_1, convert_cdata_2): New functions.
+	(convert_cdata): Use them to avoid converting all elements of
+	cdata to double at once.
+	* graphics.h.in (surface::properties::init): Constrain cdata and
+	alphadata to be single, double, or uint8.
+
+2010-08-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* graphics.cc (convert_cdata): Avoid extracting pointer to temporary
+	copy.
+
+2010-08-30  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (convert_cdata): Allow cdata to be any type that
+	can be converted to double.
+	* graphics.h.in (surface::properties::init): Remove constraints
+	on cdata and alphadata.
+
+2010-08-27  Jordi Gutiérrez Hermoso  <jordigh@gmail.com>
+
+	* graphics.cc (axes::properties::rotate_view): Don't rotate past
+	the top and bottom.
+	(axes::properties::update_camera): Fix the view when rotating to
+	the bottom.
+	(calc_dimensions): New static function.
+	(F__calc_dimensions__) New defun to replace m-script function.
+	* graphics.h.in (calc_dimension): Provide decl.
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
+	Use calc_dimensions to decide whether the current figure should
+	be rotated.
+	(plot_window::mark_modified) Recompute the number of dimensions.
+	Deactivate rotation if necessary.
+	(plot_window::ndim) New data member.
+	(plot_window::button_press, plot_window::handle): Only turn on
+	rotation if ndim == 3.
+
+2010-08-24  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (static void read_mat5_binary_data (std::istream&,
+	float *, octave_idx_type, bool, mat5_data_type,
+	oct_mach_info::float_format)) : New function
+	(std::string read_mat5_binary_element (std::istream&,
+	const std::string&, bool, bool&, octave_value&)): Treat
+	MAT_FILE_SINGLE_CLASS as single precision rather than convert to
+	double precision.
+	(static void write_mat5_array (std::ostream&, const FloatNDArray&,
+	bool), int save_mat5_array_length (const float*, octave_idx_type,
+	bool), int save_mat5_array_length (const FloatComplex*,
+	octave_idx_type, bool)): New functions.
+	(int save_mat5_element_length (const octave_value&,
+	const std::string&, bool save_as_floats, bool), bool
+	save_mat5_binary_element (std::ostream&, const octave_value&,
+	const std::string&, bool, bool, bool, bool)):  Treat
+	MAT_FILE_SINGLE_CLASS as single precision rather than convert to
+	double precision.
+
+2010-08-23  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::dir_info::initialize): Clear
+	method_file_map before updating file list.
+	* load-path.cc (load_path::load_path): Explicitly initialize
+	private_fcn_map.
+
+2010-08-17  Rik  <octave@nomad.inbox5.com>
+
+	* mappers.cc (gamma,lgamma): Add %!tests for negative integer
+	input arguments.
+
+2010-08-17  Rik  <octave@nomad.inbox5.com>
+
+	* bitfcns.cc (bitmax): Add additional calling argument, class, and
+	additional return value for bitmax("single").
+
+2010-08-17  Rik  <octave@nomad.inbox5.com>
+
+	* bitfcns.cc (sizemax): Improve documentation string.
+
+2010-08-16  Ben Abbott  <bpabbott@mac.com>
+
+	* gl2ps.c: Use upstream version gl2ps-1.3.5-svn-20100816.
+
+2010-08-13  Rik  <octave@nomad.inbox5.com>
+
+	* toplev.c (do_goto_frame_relative): Remove unused variable c.
+
+2010-08-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-builtin.cc
+	(octave_builtin::subsref (..., const std::list<octave_lvalue> *)
+	octave_builtin::do_multi_index_op (..., const std::list<octave_lvalue> *)):
+	New methods. Move code here. Set curr_lvalue_list.
+	(octave_builtin::curr_lvalue_list): New static member.
+	* ov-fcn-handle.h: Declare them.
+	* defun.cc (defun_isargout): New overloaded function.
+	* defun-int.h: Declare it.
+
+2010-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-lazy-idx.h (octave_lazy_index::subsasgn): Remove override. Leave
+	it to the defualt numeric conversion mechanism.
+
+2010-08-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fdiff): Allow logical type.
+
+2010-08-09  Rik  <octave@nomad.inbox5.com>
+
+	* oct-parse.yy (parse_fcn_file): Restore parsing of help text
+	accidentally lost in previous changeset.
+
+2010-08-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (parse_fcn_file): Handle empty script files
+	(bug #30588).
+
+2010-08-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::assign (assign_op, const std::string&,
+	const std::list<octave_value_list>&, const octave_value&):
+	Don't attempt to fix struct assignment to non-struct values here.
+	Check for successful assignment before overwriting this.
+
+	* ov-cell.cc (octave_cell::subsasgn): Allow dot assignment into empty
+	cell.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/config-module.awk: Add newlines to divide blocks
+	in generated modules.mk and improve readability.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Create .DOCSTRINGS quietly and avoid screen clutter
+	during build.
+
+2010-08-08  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Run do_subst macro quietly without cluttering screen
+	during build.
+
+2010-08-08  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc
+	(base_graphics_backend::print_figure): Add a redraw to get the
+	thing going.
+
+2010-08-05  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl2ps-renderer.cc (draw): Add support for more terminal types.
+	* DLD-FUNCTIONS/fltk_backend.cc: Likewise.
+
+2010-08-04  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_number (const char *)): Create empty string if
+	given NULL arg  (bug #30639).  Create 0x0 string array if given
+	an empty string argument, not 1x0.
+
+2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-str-str.cc: Fix assignment operator.
+	* OPERATORS/op-str-s.cc: Likewise.
+	* OPERATORS/op-str-m.cc: Likewise.
+
+2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.cc
+	(octave_value::subsref (..., const std::list<octave_lvalue> *)
+	octave_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
+	New methods. Move code here.
+	* ov-fcn-handle.h: Declare them.
+
+2010-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-usr-fcn.cc (Fis_ignored_output): Rename to Fisargout. Change the
+	behavior to indicate not ignored outputs.
+
+2010-08-01  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/amd.cc, DLD-FUNCTIONS/balance.cc,
+	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
+	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+ 	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/onCleanup.cc,
+	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/str2double.cc,
+	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/typecast.cc, data.cc, graphics.cc,
+	load-save.cc, ov-null-mat.cc, ov-struct.cc, ov-usr-fcn.cc,
+	pr-output.cc, strfns.cc, variables.cc: Grammarcheck documentation.
+	Add @noindent lines and ensure line length is less than 80.
+
+2010-07-31  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/__voronoi__.cc,
+	DLD-FUNCTIONS/amd.cc, DLD-FUNCTIONS/balance.cc,
+	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
+	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/conv2.cc,
+	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
+	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
+	DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/givens.cc,
+	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/hex2num.cc, DLD-FUNCTIONS/inv.cc,
+	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
+	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
+	DLD-FUNCTIONS/md5sum.cc, DLD-FUNCTIONS/onCleanup.cc,
+	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc,
+	DLD-FUNCTIONS/str2double.cc, DLD-FUNCTIONS/strfind.cc,
+	DLD-FUNCTIONS/sub2ind.cc, DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc,
+	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/time.cc,
+	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/typecast.cc,
+	DLD-FUNCTIONS/urlwrite.cc, bitfcns.cc, data.cc, debug.cc, defaults.cc,
+	dirfns.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
+	load-path.cc, load-save.cc, ls-oct-ascii.cc, mappers.cc, oct-hist.cc,
+	octave.cc, ov-base.cc, ov-cell.cc, ov-class.cc, ov-fcn-handle.cc,
+	ov-fcn-inline.cc, ov-null-mat.cc, ov-range.cc, ov-struct.cc,
+	ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-eval.cc, pt-mat.cc,
+	sighandlers.cc, strfns.cc, symtab.cc, syscalls.cc, sysdep.cc,
+	toplev.cc, utils.cc, variables.cc: Grammarcheck .cc files
+
+2010-07-30  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (Fdbstack): Improve display.
+
+	* toplev.cc (octave_call_stack::do_goto_frame_relative):
+	Improve message.  Don't display column number.
+
+	* debug.cc (get_file_line): Don't allow eol to be less than bol.
+	(Fdbwhere): Improve message.  Don't display column number.
+	(Fdbstack): Omit column number from display.
+
+	* pt-eval.cc (tree_evaluator::visit_statement): Don't call
+	octave_call_stack::set_statement for commands issued while
+	debugging.
+
+2010-07-30  John W. Eaton  <jwe@octave.org>
+
+	* pt-bp.cc (tree_breakpoint::take_action): Only call
+	delete_breakpoint if is_breakpoint returns true.
+	(tree_breakpoint::visit_statement): If statement is command,
+	accept it, otherwise, maybe take action on the statement.
+	(tree_breakpoint::visit_no_op_command): Handle breakpoints at
+	end of function.
+	Addresses more problems found with bug #30490.
+
+2010-07-30  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: add .DOCSTRINGS to the DISTCLEANFILES list
+
+2010-07-30  John W. Eaton  <jwe@octave.org>
+
+	* pt-eval.cc (tree_evaluator::visit_if_command,
+	tree_evaluator::visit_switch_command): Also process breakpoints
+	for the command (bug #30490).
+
+2010-07-29  Ben Abbott  <bpabbott@mac.com>
+
+	* gl-render.cc: Transpose markers '^' and 'v'.
+
+2010-07-29  John W. Eaton  <jwe@octave.org>
+
+	* pt-bp.cc (tree_breakpoint::visit_if_command): Also allow
+	breakpoint to be set on command, same as for switch, while, or
+	do-until statments.
+	* pt-select.h, pt-select.cc (tree_if_command::set_breakpoint,
+	tree_if_command::delete_breakpoint, tree_switch_command::set_breakpoint,
+	tree_switch_command::delete_breakpoint): Delete functions and decls.
+	(bug #30490).
+
+2010-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::subsref (..., const std::list<octave_lvalue> *)
+	octave_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
+	New methods.
+	* ov.h: Declare them.
+	* ov-base.cc (octave_base_value::subsref (..., const std::list<octave_lvalue> *)
+	octave_base_value::do_multi_index_op (..., const std::list<octave_lvalue> *)):
+	New methods.
+	* ov-base.h: Declare them.
+	* ov-usr-fcn.cc (octave_user_function::subsref (..., const std::list<octave_lvalue> *)
+	octave_user_function::do_multi_index_op (..., const std::list<octave_lvalue> *)):
+	New virtual method overrides. Move code here.
+	(octave_user_function::bind_automatic_vars): Add lvalue_list
+	parameter. Bind automatic variable ".ignored.".
+	(Fis_ignored_output): New defun.
+	* ov-usr-fcn.h: Update decls.
+	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
+	Skip warning if outputs are ignored.
+	* pt-exp.cc (tree_expression::rvalue (..., const
+	std::list<octave_lvalue> *)): New method overload.
+	* pt-exp.h: Declare it.
+	* pt-idx.cc (tree_index_expression::rvalue (..., const
+	std::list<octave_lvalue> *)): New method override. Move code here.
+	* pt-idx.h: Declare it.
+	* pt-assign.cc (tree_multi_assignment::rvalue): Pass in the pointer to
+	lvalue_list.
+
+2010-07-28  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Reorder cases to check for
+	character strings before numeric arrays.
+	Delete explicit instantiations of find_nonzero_elem_idx templates.
+	New test for char array argument.
+
+2010-07-27  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/schur.cc (rsf2csf): Change first documentation line to
+	active voice.
+
+2010-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/schur.cc (Frsf2csf): New DEFUN.
+
+2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-scalar.cc (octave_base_scalar::diag): Implement here. Fix.
+	* ov-base-scalar.h: Only declare here.
+
+2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-diag.cc (octave_diag_matrix::try_narrowing_conversion): Remove
+	redundant cast.
+	* ov-flt-re-diag.cc
+	(octave_float_diag_matrix::try_narrowing_conversion): Ditto.
+	* ov-cx-diag.cc
+	(octave_complex_diag_matrix::try_narrowing_conversion): Ditto.
+	* ov-flt-cx-diag.cc
+	(octave_float_complex_diag_matrix::try_narrowing_conversion): Ditto.
+
+2010-07-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (do_single_type_concat_no_mutate): Remove.
+	(tree_matrix::rvalue1): Use do_single_type_concat instead.
+
+2010-07-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* bitfcns.cc (Fsizemax): New DEFUN.
+
+2010-07-20  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
+	Added a bottom Fl_Box (copied from gmsh) and tooltips
+
+2010-07-20  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/typecast.cc (typecast): Combine two @seealso macro
+	uses to one.
+
+2010-07-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Use octave_idx_type instead of
+	unsigned long. Over-allocate by a factor 2 to reduce copying.
+	Attempt to estimate number of columns from first line.
+	Hoist tmp_stream out of the loop and reset it for each substring.
+
+2010-07-17  Rik  <octave@nomad.inbox5.com>
+
+	* data.cc (repelems): Add more documentation about new function.
+
+2010-07-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (do_repelems): New helper func.
+	(Frepelems): New DEFUN.
+
+2010-07-19  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::gui_mode):
+	Use enum instead of int.  Change all uses.
+
+2010-07-18  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/fltk_backend.cc: Add mode for mouse rotation.
+	(view2status): new function
+	* graphics.cc: Remove limitations for zooming and translation.
+	(axes::properties::rotate_view): new function
+
+2010-07-17  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/ccolamd.cc,
+	  DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/dasrt.cc,
+	  DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/eigs.cc, DLD-FUNCTIONS/qz.cc,
+	  DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/sparse.cc,
+	  DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/symrcm.cc, dirfns.cc,
+	  file-io.cc, syscalls.cc: Spellcheck documentation
+
+2010-07-08  Rik  <octave@nomad.inbox5.com>
+
+	* DLD_FUNCTIONS/rand.cc: Correct typo in rande documentation.
+	(bug #30446).
+
+2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (mat2cell_mismatch, prepare_idx,
+	do_mat2cell_2d, do_mat2cell_nd, do_mat2cell): New helper funcs.
+	(Fmat2cell): Use them here.
+
+2010-07-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (do_sparse_diff): Use typecasts where needed.
+
+2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Pass the distribution name as an
+	argument. Ensure restoration using unwind_protect.
+	(Frand, Frandn, Frandg, Frandp, Frande): Update.
+
+2010-07-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind-prot.h (unwind_protect::fcn_crefarg_elem): New class.
+	(unwind_protect::add_fcn (void (*) (const T&), T)): New method
+	overload.
+
+2010-07-08  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/__magick_read__,cc (F__magick_read__): Add the syntax
+	__magick_read__ ("file", "frames", "all").
+
+2010-07-08  Rik  <octave@nomad.inbox5.com>
+
+	* DLD_FUNCTIONS/eigs.cc: Initialize random number generator in test
+	blocks to get reproducible results.
+
+2010-07-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (Fstruct2cell): Use octave_map. Optimize.
+
+2010-07-07  Rik  <octave@nomad.inbox5.com>
+
+	* pr-output.cc (calc_scale_exp): Avoid use of % operator on negative
+	operands for portability between C++ compilers.
+	(engineering_exponent): Avoid use of % operator.  Keep calculation of
+	exponent within pr_engineering_float class.  (encapsulation).
+	(num_digits): Rename from calc_digits.  Return true number of digits =
+	1 + calc_digits.
+	(calc_scale_exp): Rename from maybe_mod3 for readability.
+	(operator << (... pr_engineering_float pef): Use pef abbreviation for
+	pr_engineering_float.
+
+2010-07-07  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (axes): Add hidden property __hold_all.
+
+2010-07-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.h (octave_class::map): Turn to octave_map.
+	* ov-class.cc (octave_class): Update methods.
+	* ov-base.h, ov-base.cc (octave_base_value::old_map_value) : Remove.
+	* ov.h, ov.cc (octave_value::old_map_value) : Remove.
+
+2010-07-06  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (static bool print_eng): Flag engineering format,
+	(float_format::float_format (int, int, int, int)): New constructor.
+	(int float_format::ex): New field in the class.
+	(static int maybe_mod3 (const int&), static int
+	engineering_exponent (const double&),
+	static int calc_digits (const double&)): New functions
+	(class pr_engineering_float): New class
+	(std::ostream& operator << (std::ostream&,
+	const pr_formatted_float&)): New operator. Make it a friend of the
+	float_format class.
+	(static void set_real_format(...),
+	static void set_real_matrix_format (...),
+	static void set_complex_format(...),
+	static void set_complex_matrix_format (...),
+	static void set_range_format (...)): Set width for engineering format.
+	(static void set_format (...)): Call calc_digits to find the number
+	of digits in a value.
+	(static void pr_any_float (const float_format *, std::ostream&,
+	double, int)): Print engineering formats.
+	(static void init_format_state (void)): Set default state of print_eng.
+	(static void set_format_style (int, const string_vector&)): Parse
+	the "eng" argument.
+	(Fformat): Document the new engineering format.
+
+2010-07-04  Soren Hauberg  <hauberg@gmail.com>
+
+	* DLD_FUNCTIONS/__magick_read__.cc: restore locale after
+	GraphicsMagick initialisation.
+
+2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* toplev.cc (octave_call_stack::do_backtrace): Use static
+	octave_fields struct.
+	(octave_call_stack::empty_backtrace): New static method.
+	* toplev.h: Declare it.
+	* error.cc (Vlast_error_stack, initialize_last_error_stack,
+	Frethrow): Use octave_map or octave_scalar_map where applicable.
+
+2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::all_1x1,
+	tm_cont::all_1x1): New member fields.
+	(tm_row_const::tm_row_const_rep::init, tm_const::init):
+	Handle them here.
+	(tm_row_const::all_1x1_p, tm_const::all_1x1_p): New methods.
+	(single_type_concat<MAP> (octave_map&, ...)): New template
+	overload.
+	(do_single_type_concat<octave_map>): New template specialization.
+	(tree_matrix::rvalue1): Specialize for cell and struct classes.
+	* oct-map.cc (octave_map::do_cat (..., const octave_map *, ...)):
+	Assign result dimensions.
+
+2010-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (octave_map::cat (..., const octave_scalar_map *)):
+	Handle special dims (-1, -2).
+	* data.cc (do_single_type_concat_map): Don't handle them here.
+
+2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* syscalls.cc (mk_stat_map, Funame): Use octave_scalar_map.
+
+2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.h (octave_scalar_map::assign (const std::string&, const
+	octave_value&), octave_map::assign (const std::string&, const Cell&)):
+	Backward-compatible aliases for setfield.
+
+2010-07-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (octave_fields::equal_up_to_order (const octave_fields&,
+	octave_idx_type *)): New overload.
+	(octave_fields::equal_up_to_order (const octave_fields&,
+	Array<octave_idx_type>&)): Use it here.
+	(octave_map::fast_elem_insert,
+	octave_map::fast_elem_extract): New methods.
+	* oct-map.h: Update decls.
+	* ov-struct.cc (octave_struct::fast_elem_extract,
+	octave_struct::fast_elem_insert,
+	octave_scalar_struct::fast_elem_insert_self): New methods.
+	* ov-struct.h: Update decls.
+
+2010-06-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (single_type_concat): Optimize all scalars case where
+	applicable.
+	(single_type_concat_map, do_single_type_concat_map): New funcs.
+	* pt-mat.cc (get_concat_class): Handle cell and struct concats.
+
+
+2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell, do_num2cell): Optimize cells
+	and structs.
+
+2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.h (octave_scalar_struct::resize, octave_struct::resize):
+	Don't ignore fill argument.
+
+2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.h (octave_map::octave_map (const dim_vector&, const
+	octave_fields&)): New internal ctor.
+
+	* oct-map.cc (octave_map::assign): Handle no fields case.
+
+2010-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.cc (Fcell2struct): Rewrite.
+
+2010-06-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-range.cc (octave_range::save_ascii): Save length rather than
+	limit when inc is zero. Adjust comment.
+	(octave_range::save_binary, octave_range::save_hdf5): Ditto.
+	(octave_range::load_ascii): Assume limit is length when increment is
+	zero.
+	(octave_range::load_binary, octave_range::load_hdf5): Ditto.
+
+
+2010-06-25  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (reset_default_properties): New static function.
+	(root_figure::reset_default_properties,
+	figure::reset_default_properties, axes::reset_default_properties):
+	Use it to avoid duplicated code.
+
+2010-06-24  Rik  <octave@nomad.inbox5.com>
+
+	* octave.cc: Add [FILE] to octave usage string (bug #30258).
+
+2010-06-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.h (octave_map, octave_scalar_map): New classes.
+	* oct-map.cc (octave_map, octave_scalar_map): Implement them.
+	(Octave_map::Octave_map (const octave_map&)): New ctor.
+	* ov-struct.h (octave_struct): Use octave_map for storage.
+	(octave_scalar_struct): New class.
+	* ov-struct.cc: Update implementations.
+	* ov-base.h (octave_base_value::old_map_value): New method.
+	(octave_base_value::map_value): Return octave_map.
+	(octave_base_value::scalar_map_value): New method.
+	* ov-base.cc (octave_base_value::old_map_value,
+	octave_base_value::map_value, octave_base_value::scalar_map_value):
+	Add default implementations.
+	* ov-class.h (octave_class::old_map_value): New override.
+	* ov-class.cc: Use old_map_value for efficiency.
+
+2010-06-23  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void root_figure::reset_default_properties (void),
+	void figure::reset_default_properties (void),
+	void figure::reset_default_properties (void),
+	Freset): New functions.
+	* graphics.h.in (void graphics_object:reset_default_properies (void),
+	virtual void base_graphics_object:reset_default_properies (void)):
+	New functions.
+	(void root_figure::reset_default_properties (void),
+	void figure::reset_default_properties (void),
+	void figure::reset_default_properties (void)): Declarations.
+	(std::string color_property::values_as_string (void) const,
+	Cell color_property::values_as_cell (void) const): New functions.
+
+2010-06-21  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/dlmread.cc: Fix spreadsheet style range option.
+	(bug #30183).
+
+2010-06-21  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (std::string radio_values:values_as_string (void)
+	const, Cell radio_values:values_as_cell (void) const): New functions.
+	(void graphics_object::set (const octave_value_list&)): Throw error
+	with no arguments.
+	(std::string base_graphics_object::values_as_string (void),
+	Octave_map base_graphics_object::values_as_struct (void)): New
+	functions.
+	(Fset): Allow single handle as an argument and return the radio
+	values.
+	* graphics.h.in (virtual bool base_property::is_radio (void) const,
+	virtual std::string base_property::values_as_string (void) const,
+	virtual Cell base_property::values_as_cell (void) const):
+	New function.
+	(std::string radio_values::values_as_string (void) const,
+	Cell radio_values::values_as_cell (void) const): Declaration.
+	(octave_idx_type radio_values::nelem (void) const): New function.
+	(std::string radio_property::values_as_string (void) const,
+	Cell radio_property::values_as_cell (void) const,
+	bool radio_property::is_radio (void) const): New functions.
+	(bool property::is_radio (void) const,
+	std::string raproperty::values_as_string (void) const,
+	Cell property::values_as_cell (void) const): New functions.
+	(std::string base_graphics_object::values_as_string (void),
+	Octave_map base_graphics_object::values_as_struct (void)): Declaration.
+	(std::string graphics_object::values_as_string (void),
+	Octave_map graphics_object::values_as_struct (void)): New functions.
+
+2010-06-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (single_type_concat): Assume matrix arguments start from
+	index zero.
+	(do_cat): Make dim a separate argument. Special-case support for dim =
+	-1 and dim = -2
+
+2010-06-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (tm_row_const::eval_error): Make a static func.
+	(tm_row_const::do_init_element): Simplify using dim_vector::hvcat.
+	(tm_const::init): Ditto.
+	(single_type_concat): Special-case empty results. Skip or use 0x0 for
+	empty arrays otherwise.
+	(tree_matrix::rvalue1): Skip empty arrays in the fallback branch.
+
+2010-06-16  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/dot.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/lookup.cc,
+	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/onCleanup.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/svd.cc,
+	data.cc, dirfns.cc, graphics.cc, mappers.cc, ov-cell.cc, ov-range.cc:
+	Periodic grammar check of documentation to ensure a common format.
+
+2010-06-11  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rand.cc : Add "reset" flag to reset the random
+	generators from the entropy pool.
+
+	* genprops.awk : Don't special case the color_property in the
+	factory default methods.
+
+2010-06-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fsort): Fix invalid tests.
+
+2010-06-15  Rik  <octave@nomad.inbox5.com>
+
+	* pr-output.cc: Second try at removing extra newlines from NDArrays
+
+2010-06-14  Rik  <octave@nomad.inbox5.com>
+
+	* pr-output.cc: Remove extra newlines when displaying multi-dimensional
+	arrays (bug #30029).
+
+2010-06-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fsort, Fnth_element): Fix behavior when trailing singleton
+	dim is specified.
+
+2010-06-12  Ben Abbott  <bpabbott@mac.com>
+
+	* DLD-FUNCTIONS/gammainc.cc: Fix doc-string typo.
+
+2010-06-11  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/gammainc.cc: Implement complementary incomplete
+	gamma function.
+
+2010-06-10  Ben Abbott  <bpabbott@mac.com>
+
+	* data.cc: Fix test for concatentating empty nd-arrays.
+
+2010-06-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fvec): New DEFUN.
+
+2010-06-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Freshape): Use octave_idx_type rather than int.
+	Don't use intermediate Array when sizes are given as separate
+	arguments. Simplify computing unknown dimension.
+
+2010-06-09  David Grundberg  <individ@acc.umu.se>
+
+	* ov-struct.cc (Fisfield): Accept cell array as name argument.
+
+2010-06-08  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/tril.cc,
+	data.cc, ov.cc: Improve documentation string.
+
+2010-06-06  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* data.cc (Frem, Fmod): Specify template arguments of binmap
+	explicitely.
+
+2010-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/strfind.cc (Fqs_replace): Allow overlapped matches.
+	(Fstrrep): Support "overlaps" option.
+	(Fstrfind): Ditto.
+
+2010-05-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::fast_elem_extract,
+	octave_value::fast_elem_insert): New methods.
+	* ov-base.cc (octave_base_value::fast_elem_extract,
+	octave_base_value::fast_elem_insert,
+	octave_base_value::fast_elem_insert_self): New methods.
+	* ov-base.h: Declare them.
+	* ov-base-mat.cc (octave_base_matrix::fast_elem_extract,
+	octave_base_matrix::fast_elem_insert): New overrides.
+	* ov-base-mat.h: Declare them.
+	* ov-base-scalar.cc (octave_base_scalar::fast_elem_extract,
+	octave_base_scalar::fast_elem_insert_self): New overrides.
+	* ov-base-scalar.h: Declare them.
+	(octave_base_scalar::scalar_ref): New method.
+	* ov-scalar.cc (octave_scalar::fast_elem_insert_self): New override.
+	* ov-scalar.h: Declare it.
+	* ov-float.cc (octave_float_scalar::fast_elem_insert_self): New override.
+	* ov-float.h: Declare it.
+	* ov-cell.cc (octave_base_matrix<Cell>::fast_elem_extract,
+	octave_base_matrix<Cell>::fast_elem_insert): New specializations.
+	* DLD-FUNCTIONS/cellfun.cc (scalar_col_helper, scalar_col_helper_def,
+	scalar_col_helper_nda, make_col_helper, can_extract): Remove.
+	(Fcellfun): Use the new fast_elem_insert method.
+
+2010-05-10  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/eigs.cc: Improve documentation string.
+	Use ~ notation instead of dummy variables for unused return arguments.
+
+2010-05-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.h (octave_base_matrix::matrix_ref (void) const): New
+	overload.
+
+2010-05-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.h (octave_value_list::slice): Optionally include tags in
+	slicing.
+	* oct-parse.yy (get_feval_args): Simplify.
+	* pt-idx.cc (make_value_list): Use octave_idx_type instead of int.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::length): Simplify.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.h (octave_base_matrix::ndims): New override.
+	* ov-base-scalar.h (octave_base_scalar::numel,
+	octave_base_scalar::ndims): New overrides.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.cc (octave_base_value::ndims): Remove fallback
+	implementation (makes no sense).
+	* ov-base.h (octave_base_value::ndims): Use a simplistic fallback
+	here.
+
+2010-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::rows, octave_base_value::columns):
+	Use const where appropriate, don't test for impossible condition.
+
+2010-05-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.h (Cell::index, Cell::assign, Cell::delete_elements):
+	Make signatures consistent with inherited overloads. Import inherited
+	overloads to class's scope.
+	* oct-map.cc (Octave_map::maybe_delete_elements): Simplify.
+
+2010-05-20  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (Ffile_in_path, Ffile_in_loadpath): If no file is
+	found, return empty character string instead of empty matrix.
+
+2010-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/onCleanup.cc (octave_oncleanup::load_ascii,
+	octave_oncleanup::load_binary, octave_oncleanup::load_hdf5,
+	octave_oncleanup::save_ascii, octave_oncleanup::save_binary,
+	octave_oncleanup::save_hdf5): Comment out unused params.
+
+2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* defun-int.h (octave_auto_shlib): Make members public.
+	* DLD-FUNCTIONS/onCleanup.cc: New source.
+	* DLD-FUNCTIONS/module-files: Add it here.
+
+2010-05-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (set_internal_variable (int&, ..., const char **)):
+	Drop nchoices argument. Instead determine nchoices by trailing NULL.
+	* variables.h (SET_INTERNAL_VARIABLE_CHOICES): Update.
+	* DLD-FUNCTIONS/svd.cc (Fsvd_driver): Update.
+
+2010-05-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (set_internal_variable (int&, ..., const char **, int)):
+	New overload.
+	* variables.h: Declare it.
+	(SET_INTERNAL_VARIABLE_CHOICES): New macro.
+	* DLD-FUNCTIONS/svd.cc (Fsvd_driver): Use it here.
+
+2010-05-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-usr-fcn.h (octave_user_function::curr_unwind_protect_frame): New
+	field.
+	(octave_user_function::local_protect): New template method.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Initialize it here.
+	(octave_user_function::do_multi_index_op): Set and restore it here.
+	* variables.cc (wants_local_change, try_local_protect): New helper
+	funcs.
+	(set_internal_variable): Call them in all overloads.
+
+2010-05-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symtab::do_mark_global, symtab::do_mark_hidden): Force
+	non-existing symbol to be created.
+
+2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xdiv.cc (solve_singularity_warning): Use ID for the warning.
+
+2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sqrtm.cc (sqrtm_utri_inplace): Use an ID for the
+	warning.
+
+2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-save.cc (install_loaded_variable): Pre-extract symbol record
+	reference to do all operations.
+
+2010-05-11  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (save_mat5_element_length): Correct element length for
+	sparse elements with NZMAX=1 or NC=0.
+	(save_mat5_binary_element): Save the NZMAX elements of the RIDX
+	sparse index.
+
+2010-05-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-lazy-idx.cc (octave_lazy_index::save_binary): Fix arguments to
+	save_binary_data.
+
+2010-05-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sqrtm.cc (do_sqrtm): Mark the result as triangular
+	where applicable.
+
+2010-05-10  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/qr.cc: Split qrdelete test into high precision test
+	when QRUPDATE is present and low precision when it is not.
+
+2010-05-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/schur.cc (Fschur): Mark triangular matrices on output.
+
+2010-05-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-range.cc (octave_range::index_vector): Optimize order of
+	conditions.
+
+2010-05-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::do_non_const_unary_op): Always return *this as
+	octave_value&. Remove unused overload.
+	* oct-lvalue.cc (octave_lvalue::do_unary_op): Simplify.
+	* pt-unop.cc (tree_prefix_expression::rvalue1,
+	tree_postfix_expression::rvalue1): Remove dummy rvalue1 calls.
+
+2010-05-07  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ov-base.h (Vsparse_auto_mutate): Add OCTINTERP_API tag.
+
+2010-05-07  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (maximum_braindamage): Set value of internal
+	variable Vallow_noninteger_range_as_index to true instead of
+	setting Octave:allow-noninteger-ranges-as-indices warning state.
+	* ov-range.cc (Fallow_noninteger_range_as_index): New function.
+	(Vallow_noninteger_range_as_index): New variable.
+	(octave_range::index_vector): Only allow non-integer range as
+	index if Vallow_noninteger_range_as_index is true.
+	(octave_range::bool_array_value): Move definition here from ov-range.h.
+	* ov-range.h (Vallow_noninteger_range_as_index): Provide decl.
+	* utils.cc (reset_warning_state): Delete.
+	(Fisindex): Temporarily set Vallow_noninteger_range_as_index
+	instead of changing warning state for
+	Octave:allow-noninteger-ranges-as-indices to "error".
+
+2010-05-06  John W. Eaton  <jwe@octave.org>
+
+	* xgl2ps.c: Don't compile gl2ps.c unless we have OpenGL.
+	From Petr Mikulik <mikulik>.
+
+2010-05-06  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.cc (octave_range::index_vector):
+	Improve warning/error message.
+
+2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sqrtm.cc (sqrtm_utri_inplace, do_sqrtm): New helper
+	functions.
+	(Fsqrtm): Rewrite.
+
+2010-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/schur.cc (Fschur): Recognize "complex" option for
+	Matlab compatibility. Simplify argument handling and improve error
+	messages.
+
+2010-05-05  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (reset_warning_state): New function.
+	(Fisindex): Temporarily set warning state for
+	Octave:allow-noninteger-ranges-as-indices to "error".
+	* error.cc (set_warning_state): New function.
+	(initialize_default_warning_state): Set default warning state
+	for Octave:allow-noninteger-ranges-as-indices to "error".
+	* error.h (set_warning_state): Provide decl.
+	* octave.cc (maximum_braindamage): Set warning state for
+	Octave:allow-noninteger-ranges-as-indices to "on".
+	* ov-range.cc (octave_range::index_vector): Warn if range
+	contains non-integer values.
+
+2010-05-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/svd.cc (driver): New static var.
+	(Fsvd): Use it to select a driver.
+	(Fsvd_driver): New DEFUN.
+
+2010-05-02  Rik  <octave@nomad.inbox5.com>
+
+	* ov-cell.cc: Wrap documentation line to prevent overfull hbox
+	LaTex warning
+
+2010-05-01  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.cc, graphics.h.in: Remove line object properties ldata,
+	udata, xldata, xudata.
+
+2010-04-30  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::set_axes_currentpoint):
+	check for valid object before manipulating it
+
+2010-04-27  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (string_array_property::string_array_property):
+	Index string_vector with [], not ().
+	(string_array_property::string_value): Likewise.
+	(string_array_property::do_set): Likewise.
+	Avoid indexing past last element of string_vector object.
+	Fixes bug #29695.
+
+2010-04-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cs-list.cc (octave_cs_list::subsref): New methods. Just gripe.
+	* ov-cs-list.h: Declare them.
+
+2010-04-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
+	Correct spelling of max_recursion_depth in error message.
+	(octave_usr_fcn::do_multi_index_op): Ditto.
+	* pt-eval.h, pt-eval.cc (Vmax_recursion_depth): Move definition
+	here from ov-usr-fcn.cc.  Now extern.
+	(Fmax_recursion_depth): Move definition here from ov-usr-fcn.cc.
+	* oct-parse.yy (source_file): Limit recursive calls on a
+	per-file basis.
+	Addresses bug #29491.
+
+2010-04-25  David Bateman  <dbateman@free.fr>
+
+	* oct-parse.yy (octave_function * load_fcn_from_file
+	(const std::string&, const std::string&, const std::string&)
+	(const std::string&, bool)): When loading a mex-file attempt
+	to load the m-file first to get the help string.
+
+2010-04-24  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in: Have figure color property support a radio value,
+	'none'.
+
+2010-04-24  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void axes::properties::set_defaults
+	(base_graphics_object&, const std::string&)): Make the default
+	axes color "none".
+
+2010-04-24  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* Makefile.am: change GRAPHICS_CPPFLAGS to GRAPHICS_CFLAGS since
+	the former does not exist and the latter serves the same purpose
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Clarify compilation note about defaults.h
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* symtab.h: Clear global variables when 'clear -all' called
+
+2010-04-23  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc	(OpenGL_fltk::OpenGL_fltk):
+	Explicitly initizlize all data members in the order they are declared.
+
+2010-04-23  John W. Eaton  <jwe@octave.org>
+
+	* txt-eng-ft.cc (ft_render::visit): Declare loop counter size_t,
+	not int.
+
+	* graphics.h.in (graphics_xform::untransform):  Likewise.
+	* graphics.cc (text::properties::update_text_extent): Likewise.
+	* DLD-FUNCTIONS/fltk_backend.cc	(plot_window::set_axes_currentpoint):
+	Avoid GCC shadow variable warning.
+
+	* DLD-FUNCTIONS (plot_window::plot_window): Explicitly
+	initialize all data members in the order they are declared.
+
+2010-04-23  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gcd.cc (Fgcd): Use two-argument dim_vector constructor.
+
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
+	Explicitly create idx_vec with column orientation.
+
+	* oct-obj.cc (octave_value_list::octave_value_list):
+	Explicitly resize data to be row vector.
+
+2010-04-23  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/regexp.cc.: Eliminate compile warning.
+	warning: suggest explicit braces to avoid ambiguous 'else'.
+
+2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-scalar.h (octave_base_scalar::reshape,
+	octave_base_scalar::permute): Remove implementations.
+	* ov-base-scalar.cc (octave_base_scalar::reshape,
+	octave_base_scalar::permute): Provide correct implementations here.
+
+2010-04-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-bool.h (octave_bool::empty_clone): Correctly return an empty
+	matrix.
+	* ov-float.h (octave_float::empty_clone): Ditto.
+	* ov-base-mat.h (octave_base_matrix::clone,
+	octave_base_matrix::empty_clone): Remove.
+	* ov-base-scalar.h (octave_base_scalar::clone,
+	octave_base_scalar::empty_clone): Remove.
+	* ov-base-sparse.h (octave_base_sparse::clone,
+	octave_base_sparse::empty_clone): Remove.
+	* ov-base.h (octave_base_value::empty_clone): Remove implementation.
+	* ov-base.cc (octave_base_value::empty_clone): Implement here.
+	Fall back to resize() for empty_clone().
+	* ov.cc (octave_value::assign): Correct behavior in the indexed
+	OP= case.  Use better error messages. Always return non-const
+	reference, like any assignment.
+	* ov.h: Update decls.
+	* oct-lvalue.cc (octave_lvalue::assign): Simplify.
+
+2010-04-22  Rik  <octave@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/hess.cc.: return correct Hessenberg matrix when
+	called with only one output argument.
+
+2010-04-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (do_hypot): New helper function. Move bulk code from Fhypot
+	here.
+	(Fhypot): Account for >2 args by folding do_hypot several times.
+
+2010-04-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (single_type_concat): New overloads. Make TYPE an explicit
+	template parameter. Try to forward some cases to Array<T>::cat and
+	Sparse<T>::cat.
+	(do_single_type_concat, do_single_type_concat_no_mutate): Don't
+	allocate the array here, let single_type_concat do it.
+
+2010-04-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (single_type_concat, do_single_type_concat): Rewrite using
+	new liboctave facilities.
+	(do_cat): Don't compute result dims if the case can be forwarded to
+	liboctave.
+
+2010-04-13  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void text::properties::update_text_extent (void)):
+	Don't call text_renderer.set_font if HAVE_FONTCONFIG is not set.
+
+2010-04-13  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Handle repeated matches
+	in the list of matches returned by pcre.
+
+2010-04-13  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::set_currentpoint,
+	(plot_window::set_axes_currentpoint, plot_window::key2shift,
+	(plot_window::key2ascii, plot_window::modifier2cell): New helper
+	functions for keypress and mousebutton callbacks.
+	(plot_window::handle): implement keypress and mousebutton callbacks.
+
+	* graphics.h.in (callback_property::is_defined): New conveniance
+	function.  Rename figure.current_point to figure.currentpoint.
+
+2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sparse.cc (Fspalloc): New DEFUN.
+	* ov-base.cc (octave_base_value::nzmax): Return numel by default.
+
+2010-04-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-sparse.cc (octave_base_sparse::assign): Rewrite.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::assign
+	(const octave_value_list& idx, const SparseMatrix& rhs)): Remove.
+	* ov-cx-sparse.h: Remove decl.
+
+2010-04-10  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in: Fix nextplot property values. Add "new" to
+	list for axes nextplot values. Change "replace_children" to
+	"replacechildren" for both axes and figures.
+
+2010-04-09  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Properly ignore
+	zero-length matches in named tokens.
+
+2010-04-09  John W. Eaton  <jwe@octave.org>
+
+	* ov-ch-mat.h (octave_char_matrix::mex_get_data): New function.
+	Addresses bug #29475.
+
+2010-04-09  Judd Storrs  <jstorrs@gmail.com>
+
+	* utils.cc (isvarname): Keywords are not valid variable names.
+
+2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help.cc (make_name_list): Don't insert global and top-level scope
+	variables. Always insert current scope.
+
+2010-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT): Replace by
+	templates.
+	(single_type_concat, do_single_type_concat): New static temvplate
+	funcs. Correctly skip 0x0 matrices.
+	(Fcat): Call them here. Add tests.
+
+2010-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-parse.yy (feval): Use do_multi_index_op on handles.
+	(get_feval_args): Use array slicing functions rather than loops.
+
+2010-04-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-sparse.cc (octave_base_sparse::delete_elements): Rewrite.
+
+2010-04-02  Judd Storrs  <jstorrs@gmail.com>
+
+	* octave.cc (intern_argv): Truncate argv when script files are
+	run without command line parameters. Resolves bug #29423.
+
+2010-03-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): Rewrite.
+
+2010-03-28  David Grundberg  <davidg@cs.umu.se>
+
+	* DLD-FUNCTIONS/convhulln.cc [HAVE_QHULL]: Neither include
+	qhull/qhull_a.h nor run tests if unless we HAVE_QHULL.
+
+2010-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (maybe_missing_function_hook): Temporarily clear before
+	executing the hook to avoid recursive calls.
+
+2010-03-25  John W. Eaton  <jwe@octave.org>
+
+	* gl2ps-renderer.cc (glps_renderer::draw): Tag call to fclose
+	with gnulib::.
+
+2010-03-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy, oct-fstrm.cc, mex.cc, input.cc,
+	c-file-ptr-stream.cc: Revert changes from 2010-03-24.
+
+2010-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* kron.cc (Fkron): Completely rewrite.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* version.h.in (OCTAVE_BUGS_STATEMENT): Point to
+	http://www.octave.org/bugs.html, not the mailing list.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/config-module.awk: Emit additions to EXTRA_DIST.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am ($(srcdir)/DLD-FUNCTIONS/module.mk):
+	Remove doubled // from file name in rule.
+
+2010-03-24  David Grundberg  <davidg@cs.umu.se>
+
+	* oct-parse.yy: Include gnulib stdlib.h/stdio.h instead of C++
+	headers.
+	* oct-fstrm.cc: Include gnulib stdlib.h/string.h instead of C++
+	headers.
+	* mex.cc: Include gnulib stdlib.h instead of C++ headers.
+	* input.cc: Include gnulib stdio.h instead of C++ headers.
+	* c-file-ptr-stream.cc: Include gnulib stdio.h.
+
+2010-03-24  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::add_to_fcn_map): Style fixes.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (maybe_missing_function_hook): Don't call hook if
+	errors are being handled.
+
+2010-03-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (Fmissing_function_hook): New pseudo-variable.
+	(Vmissing_function_hook): New static var.
+	(maybe_missing_function_hook): New function.
+	* variables.h: Declare it.
+	* pt-id.cc (tree_identifier::eval_undefined_error): Call it here.
+	* oct-parse.yy (feval (const std::string&, ...)): Also here.
+
+2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Frem, Fmod): New DEFUNs.
+	(Ffmod): Remove. Make an alias of Frem.
+
+2010-03-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (map_d_m, map_m_d, map_m_m, map_f_fm, map_fm_f, map_fm_fm,
+	map_d_s, map_s_d, map_s_s): Remove.
+	(Fatan2, Fhypot, Ffmod): Rewrite using binmap.
+
+2010-03-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix the parsing of string
+	function arguments.
+
+2010-03-20  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll: Don't undefine GNULIB_NAMESPACE.  Define fprintf,
+	fwrite, malloc, and realloc and GNULIB_NAMESPACE::fprintf, ...
+	* oct-parse.yy: Likewise.  Always include cstdlib.
+
+2010-03-16  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (save_ascii_data): Insert extra newline after
+	data is written to file.  From Brett Stewart <btstewart@wisc.edu>.
+
+2010-03-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (unary_mapper_t::umap_cbrt): New enum member.
+	* ov.h (octave_value::cbrt): New forwarder method.
+	* ov-scalar.cc (octave_scalar::map): Handle cbrt.
+	* ov-float.cc (octave_float_scalar::map): Ditto.
+	* ov-re-mat.cc (octave_matrix::map): Ditto.
+	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
+	* ov-re-sparse.cc (octave_sparse_matrix::map): Ditto.
+
+2010-03-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy, lex.ll: Undefine GNULIB_NAMESPACE immediately
+	after including <config.h>.
+
+	* toplev.cc (wait_for_input): Tag call to select with gnulib::.
+
+	* sighandlers.h (BLOCK_SIGNAL): Tag calls to sigemptyset,
+	sigaddset, and sigprocmask with gnulib::.
+	(UNBLOCK_CHILD): Tag call to sigprocmask with gnulib::.
+	* sighandlers.cc (octave_set_signal_handler): Tag calls to
+	sigemptyset with gnulib::.
+	(octave_set_signal_handler): Tag call to sigaction with gnulib::.
+
+	* oct-procbuf.cc (octave_procbuf::open): Tag calls to close, dup2,
+	and fclose with gnulib::.
+	(octave_procbuf::close): Tag call to fclose with gnulib::.
+
+	* oct-hist.cc (unlink_cleanup): Tag call to unlink with gnulib::.
+
+	* oct-fstrm.cc (octave_fstream::octave_fstream): Tag call to
+	strerror with gnulib::.
+
+	* mex.cc (mex::malloc_unmarked, mex::realloc, mxArray::malloc,
+	mxMalloc, mxRealloc): Tag call to malloc with gnulib::.
+
+	* input.cc (gnu_readline): Tag call to fputs with gnulib::.
+
+	* file-io.cc (cleanup_tmp_files): Tag call to unlink with gnulib::.
+	(do_stream_open, Ftmpfile, Fmkstemp): Tag call to strerror with
+	gnulib::.
+
+	* dirfns.cc (octave_change_to_directory): Tag call to strerror
+	with gnulib::.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::overflow): Tag calls to
+	fputc with gnulib::.
+	(c_file_ptr_buf::xsputn): Tag call to fwrite with gnulib::.
+	(c_file_ptr_buf::file_close): Move here from
+	c-file-ptr-stream.h.  Tag call to fclose with gnulib::.
+
+2010-03-12  Ben Abbott  <bpabbott@mac.com>
+
+	* /DLD-FUNCTIONS/chol.cc: Increase tolerance for single precision test.
+
+2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Fix deprecated array constructor.
+
+2010-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-intx.h
+	(OCTAVE_INT_NDARRAY_T::convert_gripe): Remove method.
+	(OCTAVE_INT_NDARRAY_T): Remove all uses.
+	(OCTAVE_INT_T::convert_gripe): Remove method.
+	(OCTAVE_INT_T): Remove all uses.
+	* ov.cc (convert_to_int_array, convert_to_octave_idx_type_array):
+	Remove int conversion warnings.
+	* data.cc (NATIVE_REDUCTION_1): Ditto.
+
+	* OPERATORS/op-intx.h: Remove integer warning stubs.
+	* OPERATORS/opt-int-conv.cc: Ditto.
+
+	* gripes.cc (gripe_truncated_conversion,
+	gripe_binop_integer_math_truncated,
+	gripe_native_integer_math_truncated,
+	gripe_unop_integer_math_truncated, gripe_non_integer_conversion,
+	gripe_nan_conversion): Remove.
+	* gripes.h: Remove decls.
+	* error.cc (initialize_default_warning_state): Don't initialize
+	removed warnings.
+
+2010-03-07  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* gl-render.cc (draw_figure): disable depth test on the 3rd pass.
+	(draw_text): use get_data_position to get text position.
+	* graphics.h.in (graphics_xform): New zlim field.
+	(graphics_xform::untransform(double,double,bool)): New method.
+	(axes::properties::get_transform): Provide zlim data to graphics_xform
+	constructor.
+	(text::properties::string, text::properties::units,
+	text::properties::rotation, text::properties::fontname,
+	text::properties::fontangle, text::properties::fontsize,
+	text::properties::fontweight, text::properties::interpreter): Add 'u'
+	modified.
+	(text::properties::extent): New property.
+	(text::properties::get_data_position): New method.
+	(text::properties::update_position): Use it.
+	(text::properties::update_text_extent,
+	text::properties::update_string, text::properties::update_rotation,
+	text::properties::update_fontname, text::properties::update_fontsize,
+	text::properties::update_fontangle,
+	text::properties::update_fontweight,
+	text::properties::update_interpreter, text::properties::update_units):
+	New updaters.
+	* graphics.cc (convert_position): Support single point.
+	(convert_text_position): New helper function.
+	(text::properties::get_data_position, text::properties::get_extent,
+	text::properties::update_text_extent, text::properties::update_units):
+	New methods.
+	* txt-eng-ft.h (ft_render::get_extent, ft_render::rotation_to_mode):
+	New methods.
+	* txt-eng-ft.cc (ft_render::get_extent, ft_render::rotation_to_mode):
+	Ditto.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (do_accumdim_sum): New helper function.
+	(F__accumdim_sum__): New DEFUN.
+
+2010-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (unary_mapper_t::umap_erfcx): New enum member.
+	* ov.h (octave_value::erfcx): New forwarder method.
+	* ov-scalar.cc (octave_scalar::map): Handle erfcx.
+	* ov-float.cc (octave_float_scalar::map): Ditto.
+	* ov-re-mat.cc (octave_matrix::map): Ditto.
+	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
+
+2010-03-03  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_read__):
+	Call Magick::InitializeMagick.
+
+2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/__convn__.cc: Remove.
+	* DLD-FUNCTIONS/module-files: Update.
+
+2010-03-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/conv.cc (Fconv2): Rewrite using convn from liboctave.
+	(Fconvn): New DEFUN.
+
+2010-03-01  John W. Eaton  <jwe@octave.org>
+
+	* (str2double1): Pass argument as const reference and make
+	explicit copy instead of passing by value.
+
+2010-03-01  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/str2double.cc (set_component): Use autoconf
+	macros instead of checking predefined compiler macros.
+	(str2double1): Pass val to set_component, not c.
+
+2010-03-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/str2double.cc (set_component): New helper func.
+	(str2double1): Use it here.
+
+2010-03-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/str2double.cc (str2double1): Use ISO-conformant code
+	for setting the real and imaginary part.
+
+2010-02-28  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Don't set
+	CURLOPT_USERPWD if userpwd is empty.
+
+2010-02-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am ($(srcdir)/DLD-FUNCTIONS/module.mk): New target.
+
+	* DLD-FUNCTIONS/config-module.sh: Accept top_srcdir argument.
+	Work from build directory too, not just source tree.
+
+2010-02-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-typeinfo.h (octave_value_typeinfo::octave_value_typeinfo):
+	Add missing initializers.
+
+2010-02-28  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/conv2.cc (conv2 (const MArray<T>&, const MArray<T>&,
+	Shape)): Args are now const.  Move invariant expressions outside
+	of loops.  Use pointers instead of Array class indexing methods.
+	(conv2 (const MArray<T>&, const MArray<T>&, const MArray<T>&, Shape)):
+	Ditto.
+
+2010-02-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.cc (do_index_op): Use checkelem for scalar indices.
+	Simplify.
+
+2010-02-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc: Update.
+	* ov-base-diag.cc: Update.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/str2double.cc (single_number): New helper func.
+	(extract_number): Call it instead of >> to get Inf's and NaN's
+	correctly.
+
+2010-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/str2double.cc: New source.
+
+2010-02-19  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/qr.cc: Increase tolerance for test.
+
+2010-02-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* TEMPLATE-INST/Array-tc.cc: Remove Array2 instantiation.
+	* DLD-FUNCTIONS/besselj.cc: Use Array instead of Array2.
+	* DLD-FUNCTIONS/tril.cc: Ditto.
+	* data.cc: Ditto.
+	* ov-typeinfo.cc: Ditto.
+	* ov-typeinfo.h: Ditto.
+	* pr-output.cc: Ditto.
+
+2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-bool-mat.h (octave_bool_matrix::octave_bool_matrix (const
+	Array<bool>&)): New ctor.
+	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix (const
+	Array<char>&)): New ctor.
+	* ov-str-mat.h (octave_char_matrix_str::octave_char_matrix_str (const
+	Array<char>&)): New ctor.
+	(octave_char_matrix_sq_str::octave_char_matrix_sq_str (const
+	Array<char>&)): New ctor.
+
+2010-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.cc: Reflect Array API changes.
+	* DLD-FUNCTIONS/__convn__.cc: Ditto.
+	* DLD-FUNCTIONS/__glpk__.cc: Ditto.
+	* DLD-FUNCTIONS/__magick_read__.cc: Ditto.
+	* DLD-FUNCTIONS/bsxfun.cc: Ditto.
+	* DLD-FUNCTIONS/cellfun.cc: Ditto.
+	* DLD-FUNCTIONS/conv2.cc: Ditto.
+	* DLD-FUNCTIONS/dlmread.cc: Ditto.
+	* DLD-FUNCTIONS/filter.cc: Ditto.
+	* DLD-FUNCTIONS/kron.cc: Ditto.
+	* DLD-FUNCTIONS/qz.cc: Ditto.
+	* DLD-FUNCTIONS/regexp.cc: Ditto.
+	* DLD-FUNCTIONS/sub2ind.cc: Ditto.
+	* data.cc: Ditto.
+	* file-io.cc: Ditto.
+	* gl-render.cc: Ditto.
+	* ls-mat5.cc: Ditto.
+	* oct-map.cc: Ditto.
+	* oct-obj.h: Ditto.
+	* oct-parse.yy: Ditto.
+	* oct-stream.cc: Ditto.
+	* ov-base-mat.cc: Ditto.
+	* ov-base-sparse.cc: Ditto.
+	* ov-perm.cc: Ditto.
+	* ov-struct.cc: Ditto.
+	* ov-typeinfo.cc: Ditto.
+	* ov-typeinfo.h: Ditto.
+	* ov.cc: Ditto.
+	* pr-output.cc: Ditto.
+	* pt-mat.cc: Ditto.
+	* strfns.cc: Ditto.
+	* txt-eng-ft.cc: Ditto.
+	* variables.cc: Ditto.
+
+2010-02-22  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc: Use numel instead of nelem consistently and where
+	appropriate in all functions.
+	(read_mat5_binary_element): Declare ridx and cidx as pointer to
+	octave_idx_type, not int.
+	(read_mat5_integer_data): Declare count as octave_idx_type, not int.
+	(READ_INTEGER_DATA): Loop counter is octave_idx_type, not int.
+	(OCTAVE_MAT5_INTEGER_READ): Declare n and loop counter as
+	octave_idx_type, not int.
+	(read_mat5_binary_element): Rows and columns of sparse matrix
+	are octave_idx_type, not int.  Declare nzmax and nnz as
+	octave_idx_type.  Read nzmax as 32-bit int, and assign.  Move
+	decls closer to first use.
+	(read_mat5_binary_data): Declare count as octave_idx_type, not int.
+	(read_mat5_binary_element, write_mat5_array):
+	Use octave_idx_type instead of int for numel and loop counters.
+	(write_mat5_array): Declare len and nel as octave_idx_type.
+	Move declarations closer to first use.
+	(write_mat5_tag): Declare bytes arg as octave_idx_type, not int.
+	(write_mat5_integer_data): Declare nel as octave_idx_type, not int.
+	(write_mat5_cell_array): Declare nel and loop counter as
+	octave_idx_type, not int.
+	(save_mat5_array_length): Declare nel nad loop counters as
+	octave_idx_type, not int.
+	(save_mat5_binary_element): Declare dims and counters as
+	octave_idx_type, not int. Delete unused streampos variables.
+	Call write_mat5_sparse_index_vector to write ridx and cidx.
+	Don't write element if dimension is too large to save.
+	(gripe_dim_too_large, write_mat5_sparse_index_vector): New functions.
+
+2010-02-22  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* dirfns.cc (Fglob): Make glob function test more robust.
+
+2010-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* gl-render.h: Define WIN32_LEAN_AND_MEAN and don't #undef min/max.
+	* DLD-FUNCTIONS/fltk_backend.cc: Don't #undef min/max.
+
+	* sighandlers.cc (octave_set_signal_handler): Don't use SIGALRM
+	unconditionally.
+
+	* ov-bool.h (class octave_bool): Add OCTINTERP_API.
+	* unwind-prot.h (class unwind_protect_safe): Ditto.
+
+	* Makefile.am: Add -bindir flag to liboctinterp_la_LDFLAGS. Remove
+	temporary libtool module file after copying oct file.
+
+2010-02-19  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/qr.cc: Increase tolerance for test.
+
+2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-lazy-idx.cc (octave_lazy_index::reshape,
+	octave_lazy_index::squeeze, octave_lazy_index::permute,
+	octave_lazy_index::sort, octave_lazy_index::is_sorted,
+	octave_lazy_index::sort_rows_idx, octave_lazy_index::is_sorted_rows):
+	New method overrides.
+	* ov-lazy-idx.h: Declare them.
+	* ov-re-mat.cc (octave_matrix::reshape, octave_matrix::squeeze,
+	octave_matrix::sort, octave_matrix::is_sorted,
+	octave_matrix::sort_rows_idx, octave_matrix::is_sorted_rows): New
+	method overrides.
+	* ov-re-mat.h: Declare them.
+
+2010-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Avoid unsafe conversion from Inf to
+	integer.
+
+2010-02-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* syscalls.cc (mk_stat_result): New helper function.
+	(Flstat): Call it here.
+	(Fstat): Also here. Handle also the fstat case here.
+
+2010-02-18  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* dirfns.cc (Fglob): Document globbing patterns, add test.
+
+2010-02-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-path.cc (in_path_list): New helper function.
+	(add_to_fcn_map): Use it here.
+
+2010-02-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (__magick_finfo__):
+	Handle multiple frames in a single image file.
+
+2010-02-18  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.h (Octave_map::Octave_map): Allow dimension to also be
+	specified in string_vector constructor.
+
+2010-02-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
+	Include ../libcruft/libranlib.la in the list.
+	* oct-conf.h.in (OCTAVE_CONF_F77_INTEGER_8_FLAG): New macro.
+	* toplev.cc (octave_config_info): Include F77_INTEGER_8_FLAG in
+	the struct.
+
+2010-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Return an idx_vector
+	when left_inf is in effect, to enable lazy index optimization.
+
+2010-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-lazy-idx.h: New source.
+	* ov-lazy-idx.cc: New source.
+	* ov.cc (install_types): Register lazy_index here.
+	(octave_value::octave_value (const idx_vector&)): Use lazy
+	construction if possible, under control of an optional flag.
+	(octave_value::clone): Implement.
+	* ls-hdf5.cc (save_hdf5): Avoid saving lazy indices.
+
+2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.h (octave_fcn_handle::print_as_scalar): New method
+	override.
+
+2010-02-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::is_equal_to): New method.
+	* ov-fcn-handle.h: Declare it.
+	* OPERATORS/op-fcn.cc (eq, ne): Call it here. Register new handler.
+
+2010-02-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-path.cc (load_path::do_any_class_method): Rename to
+	do_overloads. Return a list of classes.
+	* load-path.h (load_path::any_class_method): Likewise.
+	* symtab.cc (get_dispatch_type): Rewrite.
+	* symtab.h (get_dispatch_type): Update decl.
+	* ov-fcn-handle.h (octave_fcn_handle): Partially rewrite.
+	(octave_fcn_handle::builtin_overloads, octave_fcn_handle::overloads,
+	octave_fcn_handle::has_overloads): New members.
+	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Rewrite.
+	(make_fcn_handle): Partially rewrite.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/config-module.awk, genprops.awk, graphics.h.in,
+	mkgendoc, mk-pkg-add, mxarray.h.in, zfstream.cc, zfstream.h:
+	Untabify.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fstrcmpi, Fstrncmpi): Use DEFUNX instead of DEFUN.
+	(Fstrncmpi): Report strncmpi in error message, not strncmp.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Cell.cc, bitfcns.cc, c-file-ptr-stream.cc, comment-list.cc,
+	data.cc, debug.cc, defaults.cc, defun.cc, dirfns.cc, display.cc,
+	dynamic-ld.cc, error.cc, file-io.cc, gl-render.cc,
+	gl2ps-renderer.cc, graphics.cc, gripes.cc, help.cc, input.cc,
+	load-path.cc, load-save.cc, ls-ascii-helper.cc, ls-hdf5.cc,
+	ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc, ls-oct-ascii.cc,
+	ls-oct-binary.cc, mex.cc, oct-fstrm.cc, oct-hist.cc,
+	oct-lvalue.cc, oct-map.cc, oct-obj.cc, oct-prcstrm.cc,
+	oct-procbuf.cc, oct-stream.cc, oct-strstrm.cc, octave.cc,
+	ov-base-diag.cc, ov-base-int.cc, ov-base-mat.cc,
+	ov-base-scalar.cc, ov-base-sparse.cc, ov-base.cc,
+	ov-bool-mat.cc, ov-bool-sparse.cc, ov-bool.cc, ov-builtin.cc,
+	ov-cell.cc, ov-ch-mat.cc, ov-class.cc, ov-colon.cc,
+	ov-complex.cc, ov-cx-diag.cc, ov-cx-mat.cc, ov-cx-sparse.cc,
+	ov-dld-fcn.cc, ov-fcn-handle.cc, ov-fcn-inline.cc, ov-float.cc,
+	ov-flt-complex.cc, ov-flt-cx-diag.cc, ov-flt-cx-mat.cc,
+	ov-flt-re-diag.cc, ov-flt-re-mat.cc, ov-int16.cc, ov-int32.cc,
+	ov-int64.cc, ov-int8.cc, ov-mex-fcn.cc, ov-perm.cc, ov-range.cc,
+	ov-re-diag.cc, ov-re-mat.cc, ov-re-sparse.cc, ov-scalar.cc,
+	ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc, ov-uint16.cc,
+	ov-uint32.cc, ov-uint64.cc, ov-uint8.cc, ov-usr-fcn.cc, ov.cc,
+	pager.cc, pr-output.cc, procstream.cc, pt-arg-list.cc,
+	pt-assign.cc, pt-binop.cc, pt-bp.cc, pt-cbinop.cc, pt-cell.cc,
+	pt-check.cc, pt-cmd.cc, pt-colon.cc, pt-const.cc, pt-decl.cc,
+	pt-eval.cc, pt-except.cc, pt-exp.cc, pt-fcn-handle.cc, pt-id.cc,
+	pt-idx.cc, pt-jump.cc, pt-loop.cc, pt-mat.cc, pt-misc.cc,
+	pt-pr-code.cc, pt-select.cc, pt-stmt.cc, pt-unop.cc,
+	sighandlers.cc, sparse-xdiv.cc, sparse-xpow.cc, strfns.cc,
+	symtab.cc, syscalls.cc, sysdep.cc, toplev.cc, txt-eng-ft.cc,
+	utils.cc, variables.cc, xdiv.cc, xpow.cc, oct-parse.yy, lex.ll:
+	Untabify.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Cell.h, base-list.h, c-file-ptr-stream.h, comment-list.h,
+	debug.h, defun-int.h, dynamic-ld.h, error.h, gl-render.h,
+	gl2ps-renderer.h, gripes.h, load-path.h, load-save.h, ls-hdf5.h,
+	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
+	ls-oct-binary.h, oct-fstrm.h, oct-iostrm.h, oct-lvalue.h,
+	oct-map.h, oct-obj.h, oct-prcstrm.h, oct-stdstrm.h,
+	oct-stream.h, oct-strstrm.h, octave.h, ops.h, ov-base-diag.h,
+	ov-base-int.h, ov-base-mat.h, ov-base-scalar.h,
+	ov-base-sparse.h, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
+	ov-bool.h, ov-builtin.h, ov-cell.h, ov-class.h, ov-complex.h,
+	ov-cx-diag.h, ov-cx-mat.h, ov-cx-sparse.h, ov-dld-fcn.h,
+	ov-fcn-handle.h, ov-fcn-inline.h, ov-fcn.h, ov-float.h,
+	ov-flt-complex.h, ov-flt-cx-diag.h, ov-flt-cx-mat.h,
+	ov-flt-re-diag.h, ov-flt-re-mat.h, ov-intx.h, ov-mex-fcn.h,
+	ov-perm.h, ov-range.h, ov-re-diag.h, ov-re-mat.h,
+	ov-re-sparse.h, ov-scalar.h, ov-str-mat.h, ov-struct.h,
+	ov-type-conv.h, ov-typeinfo.h, ov-usr-fcn.h, ov.h, parse.h,
+	pr-output.h, pt-arg-list.h, pt-assign.h, pt-binop.h, pt-cell.h,
+	pt-cmd.h, pt-colon.h, pt-const.h, pt-decl.h, pt-eval.h,
+	pt-except.h, pt-exp.h, pt-fcn-handle.h, pt-id.h, pt-idx.h,
+	pt-jump.h, pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h,
+	pt-select.h, pt-stmt.h, pt-unop.h, sighandlers.h, sparse-xdiv.h,
+	sparse-xpow.h, symtab.h, token.h, toplev.h, txt-eng-ft.h,
+	txt-eng.h, utils.h, variables.h, xdiv.h: Untabify.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/qz.cc: Untabify.
+	(Fqz): Declare complex_case volatile to avoid GCC warning.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/qz.cc: Style fixes.
+
+2010-02-11  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc: If gnulib defines open, undefine it.  Move
+	#undefs before including zfstream.h.
+
+2010-01-30  Jyh-Miin Lin  <jyhmiin@gmail.com>
+
+	* DLD-FUNCTIONS/qz.cc (Fqz): Handle complex case without reordering.
+	Return Q' for Matlab compatibility.
+
+2010-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc: Reverse the effect of 2ceae0b40515.
+	(get_dispatch_type): If btyp_unknown occurs, read the class dispatch
+	type.
+
+2010-02-10  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc: If gnulib defines close, undefine it.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-perm.h (octave_perm_matrix::builtin_type): New function.
+	* symtab.cc (build_sup_table): Build the matrix with extra column
+	and row to avoid segfault when undefined value leaks in.
+	(get_dispatch_type): Update. Gripe if invalid result is detected.
+
+2010-02-10  John W. Eaton  <jwe@octave.org>
+
+	* data.cc: Ensure that CLOCKS_PER_SEC is defined instead of HZ.
+	(Fcputime): Use CLOCKS_PER_SEC instead of HZ.
+
+2010-02-10  John W. Eaton  <jwe@octave.org>
+
+	* data.cc: Include <sys/times.h>.  Define HZ if it is not defined.
+
+2010-02-10  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (base_properties::set_children): Ensure that new
+	children are stored as a column vector.
+
+	* syscalls.cc (Fdup2, Fexec, Fpopen2, Ffork, Fgetpgrp, Fgetpid,
+	Fgetppid, Fgetegid, Fgetgid, Fgeteuid, Fkill, Ffstat, Flstat,
+	Fpipe, Fstat, Fwaitpid): Use DEFUNX instead of DEFUN.
+
+2010-02-10  David Grundberg  <davidg@cs.umu.se>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (read_images): Reimplement
+	copying with direct fortran_vec manipulation, avoiding indexing
+	operations.  Replace scale_quantum_to_depth calls with simple
+	arithmetics.
+	(scale_quantum_to_depth): Remove function.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc (Fbsxfun): Remove redundant test. Add
+	explanation.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::is_list): Remove.
+	* ov.h (octave_value::is_list): Remove.
+	* data.cc (Fislist): Remove.
+	* oct-stream.cc (printf_value_cache::printf_value_cache): Don't call
+	is_list.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-str-mat.h (octave_char_matrix_str::is_real_type): Delete
+	overload.
+	* data.cc (Fisreal): Improve docs.
+
+2010-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fisnumeric): Improve documentation.
+	(Fismatrix): Ditto.
+
+2010-02-09  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc, graphics.h.in
+	(base_properties::get_hidden_children): New function.
+	(base_properties::get_children_internal): New function.
+	(base_properties::get_children): Call get_children_internal to
+	do the work.
+	(base_properties::set_children): Incorporate maybe_set_children
+	function here.  Account for hidden children.
+	(maybe_set_children): Delete.
+
+	* c-file-ptr-stream.h (c_file_ptr_buf::buf_close): Rename from close.
+	(c_file_ptr_buf::file_close): Rename from fclose.
+	(c_file_ptr_stream::stream_close): Rename from close.
+	(c_zfile_ptr_buf:buf_close): Rename from close.
+	Change all callers.
+
+2010-02-09  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (clear): Only warn if reloading a dynamically
+	linked file that defines multiple functions.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx (const Array<T>&, ...)):
+	Optimize creation of result indices.
+	* data.cc (Fsort): Ditto.
+
+2010-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd, Fetree): Fix improper arg
+	checks.
+	* DLD-FUNCTIONS/ccolamd.cc (Fccolamd, Fcsymamd): Likewise.
+
+2010-02-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (octave_matrix::sort): Special-case sorting a known
+	index vector.
+
+2010-02-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (Fclass): If more than 1 argument, check that
+	call is inside class constructor first, then check for valid
+	arguments.
+
+2010-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (F__accumarray_sum__): Allow bool and char inputs.
+	(do_accumarray_minmax, do_accumarray_minmax_fun): New helper funcs.
+	(F__accumarray_min__, F__accumarray_max__): New defuns.
+
+2010-02-04  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc: Don't include <sys/utsname.h>.
+
+2010-02-04  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (gh_manager::lookup (const octave_value&)):
+	New function.
+	* graphics.cc (axes::properties::set_text_child): Validate value.
+	Allow value to be character string or handle of text object.
+
+2010-02-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (OCTAVE_LIBS): Include all liboctave library
+	dependencies here.
+
+2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.h (octave_fcn_handle::anonymous): New static field.
+	* ov-fcn-handle.cc (octave_fcn_handle::anonymous): Initialize it.
+	Use everywhere instead of hardwired string.
+	(octave_fcn_handle::print_raw): Print named function handle with
+	starting @.
+	* pt-fcn-handle.cc: Use octave_fcn_handle::anonymous rather than
+	hardcoded string.
+
+2010-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-fcn.cc: New source.
+	* OPERATORS/module.mk: Include it.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc: Assume we have fcntl.h and sys/stat.h.
+
+	* syscalls.cc: Assume we have fcntl.h and fcntl.
+	(Ffcntl): Use DEFUNX, not DEFUN.  Call octave_fcntl, not
+	octave_syscalls::fcntl.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/sub2ind.cc (get_dim_vector):
+	Eliminate unnecessary cast.
+
+	* DLD-FUNCTIONS/qr.cc (Fqrinsert, Fqrdelete):
+	Avoid type mismatch errors with octave_idx_type.
+
+	* oct-stream.cc (scanf_format_list::add_elt_to_list):
+	NUM_ELTS arg is octave_idx_type, not int.
+
+	* ov-struct.cc (octave_struct::load_ascii): Ensure args to
+	std::max are the same type.
+	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Likewise.
+	* DLD-FUNCTIONS/sub2ind.cc (get_dim_vector): Likewise.
+	* DLD-FUNCTIONS/strfind.cc (qs_search): Likewise, for std::min.
+	* DLD-FUNCTIONS/tril.cc (do_tril, do_triu): Likewise.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (octave_vsnprintf): Assume we have vsnprintf with
+	semantics that match the version provided by gnulib.
+
+	* DLD-FUNCTIONS/convhulln.cc (Fconvhulln):
+	Use std::sstream instead of fixed-length buffer and snprintf.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* cutils.c (octave_usleep): Implement using nanosleep.
+	(octave_sleep): Assume sleep exists.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (Fcanonicalize_file_name):
+	Call octave_canonicalize_file_name instead of
+	file_ops::canonicalize_file_name.
+
+2010-02-03  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Fpwd): Call octave_env::get_current_directory, not
+	octave_env::getcwd.
+
+	* utils.cc (search_path_for_file, search_path_for_all_files,
+	make_absolute, Ffile_in_loadpath, Ffile_in_path, file_in_path,
+	contents_file_in_path, Fmake_absolute_filename):
+	Don't pass current directory to octave_env::make_absolute.
+	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
+	* octave.cc (execute_startup_files): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+	* load-save.cc (find_file_to_load): Likewise.
+	* load-path.cc (load_path::dir_info::update,
+	load_path::dir_info::initialize, load_path::do_find_dir,
+	load_path::do_find_matching_dirs): Likewise.
+	* file-io.cc (do_stream_open): Likewise.
+	* oct-parse.yy (load_fcn_from_file, Fautoload): Likewise.
+	* DLD-FUNCTIONS/md5sum.cc (Fmd5sum): Likewise.
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite): Likewise.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (Fcanonicalize_file_name): Use DEFUNX instead of DEFUN.
+
+2010-02-02  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* DLD-FUNCTIONS/filter.cc: New tests.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Assume we have atexit.
+	* sighandlers.h, sighandlers.cc: Delete conditional definition
+	of RETSIGTYPE.  Replace all uses of RETSIGTYPE with void.
+	(MAYBE_REINSTALL_SIGHANDLER, SIGHANDLER_RETURN):
+	Delete macros and all uses.
+
+2010-02-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-path.cc (load_path::add_to_fcn_map): Warn when core library or
+	built-in functions are being shadowed.
+	(load_path::do_add): Pass at_end to add_to_fcn_map, add_to_method_map.
+	Don't abort when "." not yet included.
+	(load_path::do_clear): Don't append "." here.
+	(load_path::do_set): Always prepend "." here.
+	(load_path::initialize): Don't explicitly include "." here.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
+	MArrayN<T>&, MArrayN<T>&, int)): Return early if X is empty.
+
+2010-02-02  John W. Eaton  <jwe@octave.org>
+
+	* cutils.c: Include <sys/times.h>, not "systime.h".
+	* data.cc (Fcputime): Assume we have times.
+
+	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Assume we have times.
+	Include <times.h> and <sys/times.h> unconditionally.
+	Don't include <windows.h>
+
+2010-02-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strfns.cc (Fstrncmpi): Fix typo in docstring.
+
+2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-list.h, ov-list.cc, OPERATORS/op-list.cc: Remove.
+
+	* Makefile.am, OPERATORS/module.mk: Update.
+	* debug.cc: Remove #include.
+	* ov-base.cc: Ditto.
+	* ov-cs-list.h: Ditto.
+	* ov-struct.cc: Ditto.
+	* pt-bp.cc: Ditto.
+	* ov.cc (octave_value::octave_value (const octave_value_list&)):
+	Simplify.
+	(install_types): Omit octave_list.
+
+2010-01-30  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* DLD-FUNCTIONS/time.cc: Replace struct_contains by isfield.
+
+2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-assign.h (tree_multi_assignment::etype): Remove.
+	(tree_multi_assignment::tree_multi_assignment): Update.
+	(tree_multi_assignment::op_type): Update.
+	* pt-assign.cc (tree_multi_assignment::tree_multi_assignment): Update.
+	(tree_multi_assignment::rvalue): Update.
+	(tree_multi_assignment::dup): Update.
+	* oct=parse.yy (make_assign_op): Don't allow computed multiple
+	assignments.
+
+2010-01-30  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (__fltk_redraw__): call
+	Fl::check twice to ensure all pending draws are shown on screen
+
+2010-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-lvalue.h (octave_lvalue::black_hole): Remove field.
+	(octave_lvalue::(all methods)): Update.
+	* oct-lvalue.cc: Ditto.
+
+2010-01-29  David Grundberg  <davidg@cs.umu.se>
+
+	* mex.cc (mex::realloc): Allocate new memory if the argument is
+	NULL.
+
+2010-01-29  Ryan Rusaw  <rrusaw@gmail.com>
+
+	* pt-eval.h, pt-eval.cc (tree_evaluator::do_keyboard):
+	New virtual function.
+
+2010-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* toplev.cc (run_command_and_return_output): Fix testing of failed
+	process creation, simplify.
+	(cleanup_iprocstream): Remove.
+
+2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-eval.cc (do_unwind_protect_cleanup_code): Save
+	current_statement and restore it after cleanup block.
+
+2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-parse.yy (validate_matrix_row): New static helper func.
+	(cell_or_matrix_row): Call it here.
+
+2010-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-lvalue.h (octave_lvalue::is_black_hole): New method.
+	(octave_lvalue::black_hole): New field.
+	(octave_lvalue::is_defined, octave_lvalue::is_undefined,
+	octave_lvalue::is_map): Make const.
+	(octave_lvalue::index_set): Remove field.
+	(octave_lvalue::octave_lvalue, octave_lvalue::operator =): Correctly
+	handle black holes. Update.
+	(dummy_value): Remove.
+	* pt-id.h (tree_identifier::is_black_hole): New method.
+	(tree_identifier::is_variable): Make virtual.
+	(tree_black_hole): New class.
+	* oct-parse.yy (magic_tilde): New terminal.
+	(param_list): Allow magic_tilde.
+	(arg_list): Allow magic_tilde.
+	* pt-misc.cc (tree_parameter_list::validate): Handle black holes.
+	* pt-idx.cc (tree_index_expression::append): Gripe if arguments
+	contain magic tilde.
+	* pt-arg-list.h (tree_argument_list::has_magic_tilde): New method
+	decl.
+	(tree_argument_list::list_includes_magic_tilde): New field.
+	(tree_argument_list::tree_argument_list): Initialize it in ctors.
+	* pt-arg-list.cc (tree_argument_list::has_magic_tilde): New method.
+	(tree_argument_list::append): Update list_includes_magic_tilde.
+
+2010-01-27  Judd Storrs  <jstorrs@gmail.com>
+
+	* ov-class.cc (octave_class::print_with_name) Add default case for
+	classes that don't define a display method.
+
+2010-01-26  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl-render.cc (draw_text): scale position.
+
+2010-01-26  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Fmkdir, Frmdir, Flink, Fsymlink, Freadlink,
+	Frename, Ftmpnam, Fumask): Use DEFUNX instead of DEFUN.
+	* syscall.scc (Fmkfifo, Funlink): Ditto.
+	* DLD-FUNCTIONS/urlwrite.cc (cleanup_urlwrite, reset_path,
+	delete_file): Now static.
+
+2010-01-23  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Use getopt directly instead of using
+	the (mostly useless) prog_args wrapper class.
+	Include <getopt.h>, not "prog-args.h".
+
+2010-01-23  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (user_abort): Also set debug_mode if Vdebugging.
+	* debug.cc (bp_table::do_add_breakpoint, do_remove_all_breakpoints,
+	bp_table::do_remove_breakpoint,	do_remove_all_breakpoints_in_file):
+	Also set debug_mode if Vdebugging.
+	* pt-eval.cc (visit_return_command): Actually call reset_debug_state.
+	(reset_debug_state): Also set debug_mode if Vdebugging.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Use new names for prog_args member
+	functions.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc: Don't include sys/types.h, unistd.h, or fstream.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (make_break_command, make_continue_command,
+	make_return_command): Don't examine evaluator state here.
+	* pt-eval.cc (tree_evaluator::visit_break_command): Don't set
+	tree_break_command::breaking unless inside function or script
+	body, or inside a looping command.
+	(tree_evaluator::visit_continue_command): Likewise, for
+	tree_continue_command::continuing.
+	(tree_evaluator::visit_return_command): Likewise, for
+	tree_return_command::returning.  Act like dbcont if debugging
+	and in the top-level debugging stack frame.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_base_stream::do_scanf): Don't skip
+	whitespace, literal text, and %% elements at the end of the
+	format spec.  Correctly process formats containing only literal text.
+	(scanf_format_list::finish_conversion): Don't increment nconv
+	for literal % characters.
+	(scanf_format_list::length, scanf_format_list::num_conversions):
+	Return octave_idx_type, not int.
+	(scanf_format_list::nconv, scanf_format_list::curr_idx):
+	Now octave_idx_type, not int.  Change all uses.
+	(printf_format_list::length): Return octave_idx_type, not int.
+	(scanf_format_list::nconv, scanf_format_list::curr_idx):
+	Now octave_idx_type, not int.  Change all uses.
+	(scanf_format_list::add_elt_to_list,
+	scanf_format_list::process_conversion,
+	scanf_format_list::finish_conversion,
+	printf_format_list::add_elt_to_list,
+	printf_format_list::process_conversion,
+	printf_format_list::finish_conversion):
+	Use size_t instead of int as appropriate.
+	* oct-stream.h: Update decls.
+
+2010-01-22  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (Fdbcont, Fdbquit): Call reset_debug_state.
+	(Fdbquit): Set Vdebugging to false.
+	* input.cc (Fkeyboard): Set tree_evaluator::debug_state to true.
+	Set tree_evaluator::current_frame to the initial stack frame
+	that is active for debugging commands.
+	* pt-eval.cc (tree_evaluator::reset_debug_state): New function.
+	* pt-eval.h (tree_evaluator::reset_debug_state): Provide decl.
+	* toplev.cc (main_loop): Call tree_evaluator::reset_debug_state
+	if at top level.
+
+2010-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fnorm): Don't special-case empty matrix.
+	* DLD-FUNCTIONS/svd.cc (Fsvd): Fix empty matrix case. Add tests.
+
+2010-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Partially undo
+	previous change.
+	* ov-type-conv.h (octave_type_conv_body): Undo previous change.
+	* ov-dld-fcn.cc (octave_dld_function::do_multi_index_op): Ditto.
+
+2010-01-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/getgrent.cc,
+	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/regexp.cc, lex.ll,
+	cutils.c, data.cc, defaults.cc, dirfns.cc, file-io.cc, help.cc,
+	input.cc, oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc,
+	pager.h, procstream.h, sighandlers.cc, toplev.cc, syscalls.cc,
+	sysdep.cc, utils.cc: Assume sys/types.h and unistd.h are present
+	(gnulib provides them).
+
+2010-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::dim_vector): Return 0x0 by default.
+	* oct-obj.h (octave_value_list::xelem, octave_value_list::clear): New
+	methods.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Don't call
+	make_storable_values. Chop a potential single undefined value.
+	* ov-type-conv.h (octave_type_conv_body): Ensure storable value.
+	* ov-dld-fcn.cc (octave_dld_function::do_multi_index_op): New method.
+	* DLD-FUNCTIONS/cellfun.cc (get_output_list): New helper function.
+	(Fcellfun): Call it here. Optimize.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* defaults.h.in, graphics.h.in, oct-conf.h.in, oct-errno.cc.in,
+	version.h.in: Delete Emacs local-variable settings.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* cutils.c, main.c, matherr.c, siglist.c, Cell.cc, bitfcns.cc,
+	c-file-ptr-stream.cc, comment-list.cc, data.cc, debug.cc,
+	defaults.cc, defun.cc, dirfns.cc, display.cc, dynamic-ld.cc,
+	error.cc, file-io.cc, gl-render.cc, gl2ps-renderer.cc,
+	graphics.cc, gripes.cc, help.cc, input.cc, load-path.cc,
+	load-save.cc, ls-ascii-helper.cc, ls-hdf5.cc, ls-mat-ascii.cc,
+	ls-mat4.cc, ls-mat5.cc, ls-oct-ascii.cc, ls-oct-binary.cc,
+	ls-utils.cc, mappers.cc, oct-fstrm.cc, oct-hist.cc,
+	oct-iostrm.cc, oct-lvalue.cc, oct-map.cc, oct-obj.cc,
+	oct-prcstrm.cc, oct-procbuf.cc, oct-stream.cc, oct-strstrm.cc,
+	octave.cc, ov-base-int.cc, ov-base-mat.cc, ov-base-scalar.cc,
+	ov-base-sparse.cc, ov-base.cc, ov-bool-mat.cc,
+	ov-bool-sparse.cc, ov-bool.cc, ov-builtin.cc, ov-cell.cc,
+	ov-ch-mat.cc, ov-class.cc, ov-colon.cc, ov-complex.cc,
+	ov-cs-list.cc, ov-cx-mat.cc, ov-cx-sparse.cc, ov-dld-fcn.cc,
+	ov-fcn-handle.cc, ov-fcn-inline.cc, ov-fcn.cc, ov-float.cc,
+	ov-flt-complex.cc, ov-flt-cx-mat.cc, ov-flt-re-mat.cc,
+	ov-int16.cc, ov-int32.cc, ov-int64.cc, ov-int8.cc, ov-list.cc,
+	ov-mex-fcn.cc, ov-range.cc, ov-re-mat.cc, ov-re-sparse.cc,
+	ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc,
+	ov-uint16.cc, ov-uint32.cc, ov-uint64.cc, ov-uint8.cc,
+	ov-usr-fcn.cc, ov.cc, pager.cc, pr-output.cc, procstream.cc,
+	pt-arg-list.cc, pt-assign.cc, pt-binop.cc, pt-bp.cc, pt-cell.cc,
+	pt-check.cc, pt-cmd.cc, pt-colon.cc, pt-const.cc, pt-decl.cc,
+	pt-eval.cc, pt-except.cc, pt-exp.cc, pt-fcn-handle.cc, pt-id.cc,
+	pt-idx.cc, pt-jump.cc, pt-loop.cc, pt-mat.cc, pt-misc.cc,
+	pt-pr-code.cc, pt-select.cc, pt-stmt.cc, pt-unop.cc, pt.cc,
+	sighandlers.cc, sparse-xdiv.cc, sparse-xpow.cc, strfns.cc,
+	symtab.cc, syscalls.cc, sysdep.cc, token.cc, toplev.cc,
+	unwind-prot.cc, utils.cc, variables.cc, xdiv.cc, xpow.cc,
+	zfstream.cc, Cell.h, base-list.h, builtins.h,
+	c-file-ptr-stream.h, comment-list.h, debug.h, defun-dld.h,
+	defun-int.h, defun.h, dirfns.h, display.h, dynamic-ld.h,
+	error.h, file-io.h, gl2ps-renderer.h, gripes.h, help.h, input.h,
+	lex.h, load-path.h, load-save.h, ls-ascii-helper.h, ls-hdf5.h,
+	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
+	ls-oct-binary.h, ls-utils.h, mex.h, mexproto.h, oct-errno.h,
+	oct-fstrm.h, oct-hdf5.h, oct-hist.h, oct-iostrm.h, oct-lvalue.h,
+	oct-map.h, oct-obj.h, oct-prcstrm.h, oct-procbuf.h,
+	oct-stdstrm.h, oct-stream.h, oct-strstrm.h, oct.h, octave.h,
+	ops.h, ov-base-int.h, ov-base-mat.h, ov-base-scalar.h,
+	ov-base-sparse.h, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
+	ov-bool.h, ov-builtin.h, ov-cell.h, ov-ch-mat.h, ov-class.h,
+	ov-colon.h, ov-complex.h, ov-cs-list.h, ov-cx-mat.h,
+	ov-cx-sparse.h, ov-dld-fcn.h, ov-fcn-handle.h, ov-fcn-inline.h,
+	ov-fcn.h, ov-float.h, ov-flt-complex.h, ov-flt-cx-diag.h,
+	ov-flt-cx-mat.h, ov-flt-re-mat.h, ov-int-traits.h, ov-int16.h,
+	ov-int32.h, ov-int64.h, ov-int8.h, ov-intx.h, ov-list.h,
+	ov-mex-fcn.h, ov-range.h, ov-re-mat.h, ov-re-sparse.h,
+	ov-scalar.h, ov-str-mat.h, ov-struct.h, ov-type-conv.h,
+	ov-typeinfo.h, ov-uint16.h, ov-uint32.h, ov-uint64.h,
+	ov-uint8.h, ov-usr-fcn.h, ov.h, pager.h, parse.h, pr-output.h,
+	procstream.h, pt-all.h, pt-arg-list.h, pt-assign.h, pt-binop.h,
+	pt-bp.h, pt-cbinop.h, pt-cell.h, pt-check.h, pt-cmd.h,
+	pt-colon.h, pt-const.h, pt-decl.h, pt-eval.h, pt-except.h,
+	pt-exp.h, pt-fcn-handle.h, pt-id.h, pt-idx.h, pt-jump.h,
+	pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h, pt-select.h,
+	pt-stmt.h, pt-unop.h, pt-walk.h, pt.h, sighandlers.h, siglist.h,
+	sparse-xdiv.h, sparse-xpow.h, symtab.h, sysdep.h, token.h,
+	toplev.h, unwind-prot.h, utils.h, variables.h, xdiv.h, xpow.h,
+	zfstream.h, oct-parse.yy, lex.ll: Delete EMacs local-variable settings.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__magick_read__.cc, DLD-FUNCTIONS/balance.cc,
+	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
+	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc,
+	DLD-FUNCTIONS/colloc.cc, DLD-FUNCTIONS/conv2.cc,
+	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
+	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/det.cc,
+	DLD-FUNCTIONS/dmperm.cc, DLD-FUNCTIONS/dot.cc,
+	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/fltk_backend.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
+	DLD-FUNCTIONS/getgrent.cc, DLD-FUNCTIONS/getpwent.cc,
+	DLD-FUNCTIONS/getrusage.cc, DLD-FUNCTIONS/givens.cc,
+	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/inv.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
+	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
+	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
+	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/sparse.cc,
+	DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/sqrtm.cc,
+	DLD-FUNCTIONS/svd.cc, DLD-FUNCTIONS/syl.cc,
+	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/time.cc,
+	DLD-FUNCTIONS/tril.cc: Delete Emacs local-variable settings.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__contourc__.cc, DLD-FUNCTIONS/__convn__.cc,
+	DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dsearchn__.cc,
+	DLD-FUNCTIONS/__glpk__.cc, DLD-FUNCTIONS/__lin_interpn__.cc,
+	DLD-FUNCTIONS/__magick_read__.cc,
+	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/__qp__.cc,
+	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/amd.cc,
+	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/bsxfun.cc,
+	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colamd.cc,
+	DLD-FUNCTIONS/colloc.cc, DLD-FUNCTIONS/conv2.cc,
+	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
+	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/dispatch.cc,
+	DLD-FUNCTIONS/dlmread.cc, DLD-FUNCTIONS/dmperm.cc,
+	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/eigs.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc,
+	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
+	DLD-FUNCTIONS/fltk_backend.cc, DLD-FUNCTIONS/gammainc.cc,
+	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/getgrent.cc,
+	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/givens.cc,
+	DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/hex2num.cc,
+	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lsode.cc,
+	DLD-FUNCTIONS/lu.cc, DLD-FUNCTIONS/luinc.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/md5sum.cc,
+	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/qr.cc,
+	DLD-FUNCTIONS/quad.cc, DLD-FUNCTIONS/qz.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/rcond.cc,
+	DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/schur.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spparms.cc,
+	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
+	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
+	DLD-FUNCTIONS/symrcm.cc, DLD-FUNCTIONS/time.cc,
+	DLD-FUNCTIONS/tril.cc, DLD-FUNCTIONS/tsearch.cc,
+	DLD-FUNCTIONS/urlwrite.cc: Untabify.
+
+2010-01-20  John W. Eaton  <jwe@octave.org>
+
+	* TEMPLATE-INST/Array-os.cc, TEMPLATE-INST/Array-tc.cc,
+	TEMPLATE-INST/Array-sym.cc: Delete Emacs local-variable settings.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (xpow, elem_xpow): Don't do redundant real->complex
+	conversions.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc: Substitute OCTAVE_QUIT -> octave_quit ().
+	* input.cc: Ditto.
+	* ls-mat-ascii.cc: Ditto.
+	* oct-stream.cc: Ditto.
+	* ov-base-int.cc: Ditto.
+	* ov-base-sparse.cc: Ditto.
+	* ov-bool-sparse.cc: Ditto.
+	* ov-cell.cc: Ditto.
+	* ov-cx-sparse.cc: Ditto.
+	* ov-flt-re-mat.cc: Ditto.
+	* ov-re-mat.cc: Ditto.
+	* ov-re-sparse.cc: Ditto.
+	* pr-output.cc: Ditto.
+	* pt-eval.cc: Ditto.
+	* pt-mat.cc: Ditto.
+	* sighandlers.cc: Ditto.
+	* sparse-xdiv.cc: Ditto.
+	* sparse-xpow.cc: Ditto.
+	* toplev.cc: Ditto.
+	* utils.cc: Ditto.
+	* xdiv.cc: Ditto.
+	* xpow.cc: Ditto.
+
+2010-01-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc: New tests.
+
+2010-01-20  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (string_array_property): New property.
+	(axes::properties): Use it here for the linestyleorder property.
+	Remove the markerorder property.
+	* genprops.awk: Emit string_array_property
+
+2010-01-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/strfind.cc: Optimize searching for 1 or 2 characters.
+
+2010-01-18  John W. Eaton  <jwe@octave.org>
+
+	* oct-parse.yy (fcn_end): Allow EOF as end of function if
+	reading from eval string.
+	(eval_string): Protect and set reading_fcn_file,
+	reading_script_file, and reading_classdef_file.
+
+2010-01-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (xpow (const NDArray&, double), xpow (const FloatNDArray&,
+	float)): Optimize also the x.^3 case.
+
+2010-01-18  David Grundberg  <davidg@cs.umu.se>
+
+	* mex.cc (mexPrintf): Change signature.
+	* mexproto.h (mexPrintf): Ditto.
+
+2010-01-18  David Grundberg  <davidg@cs.umu.se>
+
+	* mexproto.h (mxSetDimensions): Change signature.
+	* mex.cc (mxSetDimensions): Ditto.
+
+2010-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Support dim argument, make
+	consistent with rest of functions.
+
+2010-01-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* ov-cell.cc (Fstruct2cell): Add example, add test.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun, Fnum2cell), ov-struct.cc
+	(Fisstruct): Fix docstring.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellslices, Fisfield, Ffieldnames,
+	Frmfield): Add test.
+	* ov-struct.cc (Fcell2struct): Fix docstring, add test.
+
+2010-01-16  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (line::properties, surface::properties,
+	patch::properties): Allow the use of a "@" marker.
+	(axes::properties): Add markerorder properties to set the
+	order of the marker styles for the "@" marker.
+
+2010-01-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT,
+	DO_SINGLE_TYPE_CONCAT_NO_MUTATE): Remove macros.
+	(single_type_concat, do_single_type_concat,
+	do_single_type_concat_no_mutate): New template funcs.
+	(tree_matrix::rvalue1): Call them here.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* strfns.cc (do_strcmp_fun,
+	strcmp_array_op, strcmp_str_op,
+	strcmpi_array_op, strcmpi_str_op,
+	strncmp_array_op, strncmp_str_op,
+	strncmpi_array_op, strncmpi_str_op): New functions.
+	(Fstrcmp, Fstrncmp): Reimplement using do_strcmp_fun.
+	(Fstrcmpi, Fstrncmpi): New defuns.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc (maybe_fill_table): register relational
+	handlers for char arrays.
+
+2010-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (octave_class::numel (const octave_value_list&)): Don't
+	attempt to query overloaded size.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn.h (octave_function (const std::string&, const std::string&)):
+	Explicitly initialize all data members.
+
+	* ov-builtin.h (octave_builtin::octave_builtin):
+	Explicitly initialize base class object and data member.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (read_indexed_images):
+	No need to explicitly call chop_trailing_singletons now.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-obj.cc (octave_value_list::any_cell): Avoid assignment in
+	condition of if statement.
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/lu.cc: Avoid test failures if HAVE_QRUPDATE_LUU is
+	not defined.
+
+2010-01-12  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (patch::properties): Add "flat" value to
+	markeredgecolor and  markerfacecolor properties.
+
+2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (builtin_type_t): New enum constants: btyp_cell,
+	btyp_struct and btyp_func_handle.
+	(btyp_isinteger, btyp_isfloat, btyp_isarray): New funcs.
+	(btyp_class_name): New array.
+	(get_builtin_classes): New func.
+	* ov-cell.h (octave_cell::builtin_type): New virtual override.
+	* ov-struct.h (octave_struct::builtin_type): New virtual override.
+	* ov-fcn-handle.h (octave_fcn_handle::builtin_type): New virtual override.
+	* symtab.cc (get_dispatch_type): Rewrite. Add overload.
+	* symtab.h: Update decls.
+	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Rewrite.
+	(get_builtin_classes): Remove.
+
+2010-01-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.cc (octave_value_list::any_cell): New method.
+	* oct-obj.h: Declare it.
+	* utils.cc (do_simple_cellfun): New overloaded function.
+	* utils.h: Declare it.
+	* DLD-FUNCTIONS/strfind.cc (Fstrfind): Call it here.
+	(Fstrrep): Also here.
+
+2010-01-11  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Update DOCSTRINGS rules to avoid
+	simple_move_if_change_rule and allow Make to update timestamps.
+
+2010-01-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::lasterror):
+	Avoid using errno as a local variable name.
+
+2010-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lu.cc (Fluupdate): Add tests for LU updating.
+
+2010-01-11  Tatsuro MATSUOKA  <tmacchant@yahoo.co.jp>
+
+	* Makefile.am (OCTINTERP_LINK_DEPS): Include FT2_LDFLAGS and
+	FT2_LIBS in the list.
+
+2010-01-09  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/lookup.cc (stri_comp_lt, stri_comp_gt):
+	Comment out unused functions.
+
+	* oct-stream.cc (BEGIN_S_CONVERSION): Don't declare local tmp
+	variable twice.
+
+	* gl-render.cc (opengl_renderer::draw_image): Avoid shadow
+	declaration warning from GCC.
+
+	* DLD-FUNCTIONS/fltk_backend.cc (base_graphics_backend):
+	Avoid unused parameter warning from GCC.
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Likewise.
+
+	* data.cc (get_sort_mode_option): Avoid uninitialized variable
+	warning from GCC.
+
+2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.h (octave_value_list::operator () const,
+	octave_value_list::elem const): Return const octave_value&.
+	* ov.cc (octave_value::function_value,
+	octave_value::user_function_value, octave_value::user_script_value,
+	octave_value::user_code_value, octave_value::fcn_handle_value,
+	octave_value::fcn_inline_value): Declare as const.
+	* ov.h: Likewise.
+	* ov-base.h (octave_value::function_value const): Remove overload.
+	* ov-usr-fcn.h (octave_user_function::function_value const): Likewise.
+	* ov-builtin.h (octave_builtin::function_value const): Likewise.
+	* ov-builtin.h (octave_builtin::function_value const): Likewise.
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Take a non-const copy prior to
+	calling non-const functions.
+
+
+2010-01-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/strfind.cc (qs_replace): New function.
+	(Fstrrep): Use it here. Allow S to be a cellstr.
+
+2010-01-07  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (cputime): Eliminate Windows-specific code.
+
+2010-01-07  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (get_global_value): Fix function name in error message.
+	(get_top_level_value, set_top_level_value): New functions.
+	* variables.h (get_top_level_value, set_top_level_value):
+	Provide decls.
+
+	* symtab.h (symbol_table::top_level_varref,
+	symbol_table::top_level_varval): New static functions.
+
+2010-01-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* utils.cc (octave_sleep (double)): Add OCTAVE_QUIT.
+
+2010-01-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind_protect.h, unwind_protect.cc (unwind_protect): Rewrite.
+	Remove obsolete macros. Use a simple linked list.
+
+	* debug.cc (Fdbwhere): Update to new unwind_protect style.
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct,
+	  octave_dynamic_loader::do_load_mex): Ditto.
+	* error.cc (Flasterror, Flasterr, error_2, warning_1): Ditto.
+	* graphics.cc (base_graphics_object::remove_all_listeners,
+	  axes::update_axis_limits, gh_manager::do_execute_callback,
+	  Fdrawnow): Ditto.
+	* help.cc (raw_help_from_file): Ditto.
+	* input.cc (do_keyboard, Fkeyboard, get_debug_input): Ditto.
+	* load-path.cc (load_path::do_set, execute_pkg_add_or_del,
+	* ls-mat4.cc (save_mat_binary_data): Ditto.
+	* ls-mat5.cc (read_mat5_binary_element): Ditto.
+	* mex.cc (call_mex, mexGetVariable): Ditto.
+	* oct-hist.cc (do_edit_history, do_run_history): Ditto.
+	* octave.cc (execute_startup_files, execute_eval_option_code,
+	  execute_command_line_file): Ditto.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Ditto.
+	* ov-class.cc (octave_class::subsasgn, octave_class::print_raw):
+	Ditto.
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
+	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5): Ditto.
+	* ov-list.cc (octave_list::print_raw): Ditto.
+	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Ditto.
+	* ov-struct.cc (octave_struct::print_raw): Ditto.
+	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op,
+	  octave_user_function::do_multi_index_op): Ditto.
+	* pager.cc (flush_octave_stdout): Ditto.
+	* pr-output.cc (Frats): Ditto.
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector): Ditto.
+
+	* pt-eval.cc (tree_evaluator::visit_simple_for_command,
+	tree_evaluator::visit_complex_for_command,
+	tree_evaluator::visit_while_command,
+	tree_evaluator::visit_do_until_command): Update to new unwind_protect
+	style.
+	(do_catch_code): Remove.
+	(tree_evaluator::visit_try_catch_command): Simplify. Don't register
+	catch code for unwind_protect.
+	(tree_evaluator::do_unwind_protect_cleanup_code): Make a
+	tree_evaluator method. Update to new unwind_protect style.
+	(tree_evaluator::visit_unwind_protect_command): Use explicit try/catch
+	handling rather than inserting unsafe code into unwind_protect.
+
+	* pt-eval.h (tree_evaluator::do_unwind_protect_cleanup_code): New decl.
+	* toplev.cc (main_loop): Update to new unwind_protect style.
+	  (run_command_and_return_output): Ditto.
+	* utils.cc (Fisindex): Ditto.
+	* variables.cc (generate_struct_completions, safe_symbol_lookup,
+	do_who): Ditto.
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Ditto.
+	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Ditto.
+	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): Ditto.
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Ditto.
+	* DLD-FUNCTIONS/eigs.cc (Feigs): Ditto.
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Ditto.
+	* DLD-FUNCTIONS/quad.cc (Fquad): Ditto.
+	* DLD-FUNCTIONS/rand.cc (Frandn, Frande, Frandg, Frandp): Ditto.
+	* DLD-FUNCTIONS/typecast.cc (get_data_and_bytesize, Ftypecast): Ditto.
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, mput_directory,
+	getallfiles, F__ftp_mget__): Ditto.
+
+2010-01-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.cc (Cell::cellstr_value): New method.
+	* Cell.h (Cell::cellstr_value): Declare it.
+
+	* ov-cell.h (octave_cell::cellstr_cache): Declare as autopointer.
+	(octave_cell::clear_cellstr_cache): Move here.
+	* ov-cell.cc (octave_cell::is_cellstr): Only allocate the pointer, but
+	don't actually create strings.
+	(octave_cell::cellstr_value): Use cached test, call
+	Cell::cellstr_value.
+	(octave_cell::make_cellstr_cache): Remove.
+
+2010-01-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (AM_CPPFLAGS): Include -I../libgnu in the list.
+
+2010-01-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* graphics.cc (graphics_object::set (const Octave_map&)): New function.
+	(graphics_object::set (const Array<std::string>&, const Cell&,
+	octave_idx_type)):  New function.
+	(graphics_object::set_value_or_default (const caseless_str&,
+	const octave_value&)): New function.
+	(graphics_object::set (const octave_value_list&)):
+	Call set_value_or_default to set property values.
+	(Fset): Handle struct and cell array arguments.
+	New tests.
+	* graphics.h.in (graphics_objects::set): Provide decls.
+
+2010-01-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/strfind.cc (qs_search): Optionally discard overlaps.
+	Return result as Array<octave_idx_type>.
+	(Fstrfind): Use octave_value (Array<octave_idx_type>) constructor.
+	(Fstrrep): New function.
+
+2010-01-04  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll (can_be_command): New function.
+	(handle_identifier): Use it.
+
+2010-01-04  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makefile.am (install-oct): Write $(DESTDIR)$(...), not
+	$(DESTDIR).$(...).
+
+2010-01-02  Ben Abbott  <bpabbott@mac.com>
+
+	* mappers.cc: Change test tolerance from 1e-16 to eps.
+
+2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (scalar_query_helper): Remove.
+	(can_extract): New overloaded helper function.
+	(scalar_col_helper_nda): Rewrite using can_extract and
+	octave_value_extract. Instantiate for integer types.
+	(make_col_helper): Support integer types.
+
+
+2009-12-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix tests.
+
+2009-12-28  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* DLD-FUNCTIONS/md5sum.cc, DLD-FUNCTIONS/lookup.cc: Include
+	config.h before another header file.
+
+2009-12-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (xgl2ps.c): New file.
+	(EXTRA_DIST): Include gl2ps.c in the list.
+	(DIST_SRC): Include xgl2ps.c in the list instead of gl2ps.c.
+
+2009-12-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (decode_subscripts): Move to utils.cc.
+	* utils.cc (decode_subscripts): New func.
+	* utils.h: Declare it.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Optimize the
+	`cellfun (@subsref, args, {subs}, "uniformoutput", true)' case.
+
+2009-12-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* gripes.cc (gripe_nonbraced_cs_list_assignment): New function.
+	* gripes.h: Declare it.
+	* ov-cell.cc (octave_cell::subsasgn): Use it here.
+	* ov-struct.cc (octave_struct::subsasgn): Also here.
+	* pt-idx.cc (tree_simple_assignment::rvalue1): And here. Check for
+	single lhs value.
+
+2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-str-mat.h (octave_char_matrix_str::is_matrix_type): Remove
+	override.
+	* data.cc (Fismatrix): Update test.
+
+2009-12-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/strfind.cc: New source.
+	* DLD-FUNCTIONS/module-files: Add it here.
+
+2009-12-23  John W. Eaton  <jwe@octave.org>
+
+	* lex.ll: Use %top block to include config.h.
+
+2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/max.cc (do_cumminmax_body): Support also btyp_bool.
+
+2009-12-22  Rob Mahurin  <octave@tertiarysource.net>
+
+	* find-defun-files.sh: Use SED and EGREP as returned by configure.
+
+2009-12-20  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_sindow::set_name): New method.
+	(figure_manager::set_name, figure_manage::do_set_name): New methods.
+	(fltk_backend::property_changed): Handle change of figure title string.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
+	variables of top_builddir and top_srcdir.
+
+2009-12-18  David Grundberg  <davidg@cs.umu.se>
+
+	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
+	Print script filename in script indexing errors.
+	(octave_user_script::subsref): Ditto.
+
+2009-12-18  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (get_debug_input): Don't attempt to get user input
+	unless stdin is a tty.  Force interactive input mode when
+	reading debugging input.
+	(octave_gets): Bypass readline if get_input_from_eval_string is true.
+
+	* input.cc, input.h (stdin_is_tty): New variable.
+	* octave.cc (octave_main): Set it to true if stdin is not a tty.
+
+2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/max.cc (do_minmax_red_op<boolNDArray>): New
+	specialization.
+	(do_minmax_body): Handle btyp_bool.
+
+2009-12-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symbol_table::cleanup): Call clear_variables rather than
+	clear_all on the top and global scopes.
+
+2009-12-16  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (F__init_fltk__):
+	Add __remove_fltk__ to the list of atexit functions.
+	(F__remove_fltk__): Wait fltk_maxtime instead of 10 seconds.
+
+2009-12-15  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (do_goto_frame_relative): Stop searching at top
+	stack frame even though it is not a function.
+
+2009-12-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Preserve original nargout. Call
+	functions with this value. Use nargout1 to possibly accumulate extra
+	outputs, as long as they are defined.
+
+2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-range.cc (octave_range::do_index_op): Defer single subscript to
+	new Range methods.
+
+2009-12-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symbol_table::cleanup): New static method.
+	* symtab.h: Declare it.
+	* toplev.cc (clean_up_and_exit): Call it here.
+
+2009-12-12  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::toggle_grid,
+	plot_window::axis_auto): Modify the axes of the correct figure.
+
+2009-12-12  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::plot_window):
+	Handle case where window is created but not visible. Cache
+	window label.
+	(figure_manager::toggle_window_visibility,
+	(figure_manager::do_toggle_window_visibility): New methods.
+	(fltk_backend::property_change): Handle figure visibility change.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (base_properties::all_dynamic_properties):
+	No longer static.
+	(base_properties::set (const caseless_str&, const octave_value&)):
+	Only provide decl, not definition.
+	(base_properties::set (const caseless_str&, const std::string&,
+	const octave_value&)): Delete.
+	(base_properties::dynamic_properties): Rename from
+	all_dynamic_properties.  No longer static.  Now protected.
+	(base_properties::has_dynamic_property,
+	base_properties::dynamic_property_names,
+	base_properties::set_dynamic): Omit class name argument.
+	* graphics.cc (base_properties::all_dynamic_properties):
+	Delete obsolete definition.
+	(base_properties::dynamic_property_names): Now const.
+	Omit class name argument.  Simply return dynamic_properties set.
+	(base_properties::has_dynamic_property): Omit class name argument.
+	Simply return dynamic_properties set.  Don't pass class name to
+	dynamic_property_names function.
+	(base_properties::set_dynamic): Omit class name argument.
+	Dynamic_properties is no longer a map.
+
+	* genprops.awk: Omit class name from arguments of generated
+	base_properties::all_property_names and base_properties::set
+	functions.  Don't pass class name to base_properties::set in
+	generated derived class set functions.
+
+2009-12-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (DOCSTRINGS): Use $(cp_update_rule) instead of
+	cp -a --update.
+
+2009-12-10  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: distclean symbolic links for OCT_FILES
+
+2009-12-10  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Copy DOCSTRINGS from srcdir to builddir if it does not
+	exist.  Enables VPATH builds.
+
+2009-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-dld-fcn.h (octave_dld_function::get_shlib): New method.
+	* ov-mex-fcn.h (octave_mex_function::get_shlib): New method.
+	* defun.cc (get_current_shlib): New function.
+	* defun-int.h: Declare it.
+	(octave_auto_shlib): New class.
+
+2009-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (out_of_date_check): Try also autoloads.
+
+2009-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (symbol_table::fcn_info::clear_autoload_function):
+	New method.
+	(symbol_table::clear_dld_function): New method.
+	* dynamic-ld.cc (octave_shlib_list::do_remove): Switch order of stmts.
+	(octave_mex_file_list::do_remove): Likewise.
+	(do_clear_function): Call symbol_table::clear_dld_function.
+	(octave_dynamic_loader::do_load_oct): Don't use
+	octave_shlib::mark_relative.
+	(octave_dynamic_loader::do_load_mex): Ditto.
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (fopen_mode_to_ios_mode): Allow "+" at the end of
+	modestrings like "rb+".
+
+2009-12-10  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (BEGIN_C_CONVERSION, BEGIN_S_CONVERSION):
+	Store characters directly in appropriately sized std::string object.
+	(FINISH_CHARACTER_CONVERSION): Do store ASCII NUL values.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc: Style fixes.
+
+2009-12-09  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::print): Print immediatly.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* gl2ps-renderer.cc (draw_pixels): New template function.
+	(opengl_renderer::draw_pixels): Use it.
+
+2009-12-09  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl2ps.c, gl2ps.h: Use upstream version gl2ps-1.3.5-svn-20091202.
+
+	* gl-render.cc (opengl_renderer::draw_pixels): New function.
+	(opengl_renderer::draw_image): Correctly handle images with width
+	or height of 1.  Use draw_pixels.
+	* gl-render.h (opengl_renderer::draw_pixels): Provide decl.
+
+	* gl2ps-renderer.cc (glps_renderer::draw_pixels): New function.
+	* gl2ps-renderer.h (glps_renderer::draw_pixels): Provide decl.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc: Call nstrftime instead of my_strftime.
+
+2009-12-09  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc: Include strftime.h.
+	(write_header): Call my_strftime instead of strftime.
+
+	* Makefile.am (AM_CPPFLAGS): Add -I$(top_srcdir)/libgnu to the list.
+	(OCTAVE_LIBS, OCTINTERP_LINK_DEPS, OCT_LINK_DEPS):
+	Add ../libgnu/libgnu.la to the list.
+
+2009-12-09  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Distribute DOCSTRINGS in tar.gz file
+
+2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dirfns.cc (Ffnmatch): Simplify.
+
+2009-12-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ov-ch-mat.cc: Add missing #include.
+	* oct-stream.cc (do_read): Simplify.
+	* gl-render.h: Undef min and max after #including windows.h.
+
+2009-12-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (gendoc.cc): Don't pass $(srcdidr) to mkgendoc.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc,
+	OPERATORS/op-b-sbm.cc, OPERATORS/op-bm-b.cc,
+	OPERATORS/op-bm-bm.cc, OPERATORS/op-bm-sbm.cc,
+	OPERATORS/op-cdm-cdm.cc, OPERATORS/op-cdm-cm.cc,
+	OPERATORS/op-cdm-cs.cc, OPERATORS/op-cdm-dm.cc,
+	OPERATORS/op-cdm-m.cc, OPERATORS/op-cdm-s.cc,
+	OPERATORS/op-cell.cc, OPERATORS/op-chm.cc,
+	OPERATORS/op-class.cc, OPERATORS/op-cm-cdm.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cm-dm.cc, OPERATORS/op-cm-m.cc,
+	OPERATORS/op-cm-pm.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc,
+	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-dm-cdm.cc, OPERATORS/op-dm-cm.cc,
+	OPERATORS/op-dm-cs.cc, OPERATORS/op-dm-dm.cc,
+	OPERATORS/op-dm-m.cc, OPERATORS/op-dm-s.cc,
+	OPERATORS/op-dm-scm.cc, OPERATORS/op-dm-sm.cc,
+	OPERATORS/op-dm-template.cc, OPERATORS/op-dms-template.cc,
+	OPERATORS/op-double-conv.cc, OPERATORS/op-fcdm-fcdm.cc,
+	OPERATORS/op-fcdm-fcm.cc, OPERATORS/op-fcdm-fcs.cc,
+	OPERATORS/op-fcdm-fdm.cc, OPERATORS/op-fcdm-fm.cc,
+	OPERATORS/op-fcdm-fs.cc, OPERATORS/op-fcm-fcdm.cc,
+	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
+	OPERATORS/op-fcm-fdm.cc, OPERATORS/op-fcm-fm.cc,
+	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcm-pm.cc,
+	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
+	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
+	OPERATORS/op-fdm-fcdm.cc, OPERATORS/op-fdm-fcm.cc,
+	OPERATORS/op-fdm-fcs.cc, OPERATORS/op-fdm-fdm.cc,
+	OPERATORS/op-fdm-fm.cc, OPERATORS/op-fdm-fs.cc,
+	OPERATORS/op-float-conv.cc, OPERATORS/op-fm-fcdm.cc,
+	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
+	OPERATORS/op-fm-fdm.cc, OPERATORS/op-fm-fm.cc,
+	OPERATORS/op-fm-fs.cc, OPERATORS/op-fm-pm.cc,
+	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
+	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc,
+	OPERATORS/op-i16-i16.cc, OPERATORS/op-i32-i32.cc,
+	OPERATORS/op-i64-i64.cc, OPERATORS/op-i8-i8.cc,
+	OPERATORS/op-int-concat.cc, OPERATORS/op-int-conv.cc,
+	OPERATORS/op-list.cc, OPERATORS/op-m-cdm.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
+	OPERATORS/op-m-dm.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-pm.cc,
+	OPERATORS/op-m-s.cc, OPERATORS/op-m-scm.cc,
+	OPERATORS/op-m-sm.cc, OPERATORS/op-pm-cm.cc,
+	OPERATORS/op-pm-fcm.cc, OPERATORS/op-pm-fm.cc,
+	OPERATORS/op-pm-m.cc, OPERATORS/op-pm-pm.cc,
+	OPERATORS/op-pm-scm.cc, OPERATORS/op-pm-sm.cc,
+	OPERATORS/op-pm-template.cc, OPERATORS/op-range.cc,
+	OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc,
+	OPERATORS/op-s-s.cc, OPERATORS/op-s-scm.cc,
+	OPERATORS/op-s-sm.cc, OPERATORS/op-sbm-b.cc,
+	OPERATORS/op-sbm-bm.cc, OPERATORS/op-sbm-sbm.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
+	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
+	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
+	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
+	OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
+	OPERATORS/op-str-str.cc, OPERATORS/op-struct.cc,
+	OPERATORS/op-ui16-ui16.cc, OPERATORS/op-ui32-ui32.cc,
+	OPERATORS/op-ui64-ui64.cc, OPERATORS/op-ui8-ui8.cc:
+	Delete Emacs local-variable settings.
+
+2009-12-07  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-pm-sm.cc, OPERATORS/op-pm-scm.cc,
+	OPERATORS/op-dm-sm.cc, OPERATORS/op-dm-scm.cc,
+	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fcm.cc,
+	OPERATORS/op-fs-fcs.cc, OPERATORS/op-fm-fm.cc,
+	OPERATORS/op-fm-fcs.cc, OPERATORS/op-fm-fcm.cc,
+	OPERATORS/op-fcs-fs.cc, OPERATORS/op-fcs-fm.cc,
+	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcm-fs.cc,
+	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fm-fs.cc,
+	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-class.cc,
+	OPERATORS/op-fcm-fcs.cc, OPERATORS/op-str-str.cc,
+	OPERATORS/op-str-s.cc, OPERATORS/op-str-m.cc,
+	OPERATORS/op-struct.cc, OPERATORS/op-sm-scm.cc,
+	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-sm.cc,
+	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-cm.cc,
+	OPERATORS/op-scm-sm.cc, OPERATORS/op-scm-scm.cc,
+	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-m.cc,
+	OPERATORS/op-scm-cs.cc, OPERATORS/op-sm-m.cc,
+	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
+	OPERATORS/op-sbm-bm.cc, OPERATORS/op-s-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-sbm-b.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-int.h,
+	OPERATORS/op-int-conv.cc, OPERATORS/op-int-concat.cc,
+	OPERATORS/op-cs-sm.cc, OPERATORS/op-cs-scm.cc,
+	OPERATORS/op-cm-sm.cc, OPERATORS/op-cs-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-scm.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-chm.cc,
+	OPERATORS/op-cell.cc, OPERATORS/op-bm-sbm.cc,
+	OPERATORS/op-bm-bm.cc, OPERATORS/op-bm-b.cc,
+	OPERATORS/op-b-sbm.cc, OPERATORS/op-fcs-fcs.cc:
+	Untabify.
+
+2009-12-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.am: Build OPT_HANDLERS before DEF_FILES.
+
+2009-12-06  Rik  <rik@nomad.inbox5.com>
+
+	* Makefile.am: Distribute DOCSTRINGS so that documentation will
+	not require rebuild after merely untarring a distribution.
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Document complexity.
+
+2009-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): Rewrite.
+	(Flookup): Simplify string part. Use Array<std::string>::lookup.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Always use
+	CURLOPT_USERPWD instead of CURLOPT_USER and CURLOPT_PASSWD.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* version.h.in (OCTAVE_API_VERSION_NUMBER): New macro.
+	* Makefile.am (version.h): Substitute OCTAVE_API_VERSION_NUMBER.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (mkdefs): New arguments, srcdir and file.
+	Generate output here.  (.cc.df): Not here.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (BUILT_SOURCES): Include graphics-props.cc in the
+	list.
+
+2009-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (liboctinterp_la_SOURCES): Remove $(OPT_HANDLERS)
+	from the list.
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (CLEANFILES): Include DLD-FUNCTIONS/PKG_ADD,
+	doc-files, gendoc.cc, gendoc$(BUILD_EXEEXT), graphics-props.cc,
+	oct-parse.output, $(BUILT_NODISTFILES) in the list.  Remove
+	$(BUILT_SOURCES) from the list.  (MAINTAINERCLEANFILES): New
+	variable.  (BUILT_DISTFILES): Remove oct-parse.cc and lex.cc
+	from the list.  (BUILT_NODISTFILES): Include defaults.h,
+	graphics.h, oct-conf.h, oct-errno.cc, ops.cc, mxarray.h, and
+	version.h in the list.  Remove $(OPT_INC) from the list.
+	(BUILT_SOURCES): Include mxarray.h and version.h in the list.
+	(EXTRA_DIST): Include version.h.in in the list.  (.cc.df): Don't
+	silence rules.  Omit $(srcdir) from XDEFUN_FILE_NAME.
+	($(DEF_FILES)): Depend on mkdefs and Makefile.  (mxarray.h,
+	version.h): New rules.  (DLD-FUNCTIONS/PKG_ADD): Don't silence
+	rules.  (builtins.cc, DOCSTRINGS, gendoc.cc, ops.cc,
+	$(OPT_HANDLERS)) oct-errno.cc, oct-gperf.h): Don't silence
+	rules.  (doc-files, defaults.h, oct-conf.h): Don't silence
+	rules.
+
+	* mxarray.h.in, version.h.in: Use % to delimit substitutions,
+	not @.
+
+	* mkbuiltins: Operate on a list of files passed as arguments.
+
+	* genprops.awk: Write either graphics.h or graphics-props.cc to
+	stdout instead of graphics.h simultaneously with
+	graphics-props.cc ot a file.  * Makefile.am (graphics.h,
+	graphics-props.cc): Split into two separate rules.
+
+	* find-defun-files.sh: Omit directory part from .df file names.
+	Operate on .ll and .yy files instead of generated .cc files.
+
+2009-12-02  Rik  <rik@nomad.inbox5.com>
+
+	* DLD-FUNCTIONS/urlwrite.cc: Correctly compile code even when
+	libcurl is not present according to configure.
+
+2009-12-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-bool-mat.h (octave_bool_matrix::octave_bool_matrix (const
+	boolNDArray&, const idx_vector&)): New constructor.
+	* ov-re-mat.h (octave_bool_matrix::octave_bool_matrix (const
+	NDArray&, const idx_vector&)): Simplify.
+	* ov.cc (octave_value::octave_value (const idx_vector&)): Allow
+	the mask case.
+	* DLD-FUNCTIONS/find.cc (Ffind): Explicitly call unmask.
+
+2009-11-30  Kacper Kowalik  <xarthisius.kk@gmail.com>
+
+	* oct-hdf5.h: Drop force the use of the v1.6 API * ls-hdf5.cc,
+	ov-base-int.cc, ov-bool-mat.cc, ov-bool-sparse.cc, ov-bool.cc,
+	ov-cell.cc, ov-class.cc, ov-complex.cc, ov-cx-mat.cc,
+	ov-cx-sparse.cc, ov-fcn-handle.cc, ov-fcn-inline.cc,
+	ov-float.cc, ov-flt-complex.cc, ov-flt-cx-mat.cc,
+	ov-flt-re-mat.cc, ov-list.cc, ov-range.cc, ov-re-mat.cc,
+	ov-re-sparse.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc:
+	Allow v1.8 API versions of hdf5 functions.
+
+2009-11-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fft2.cc (Fifft2): Docstring fix.
+
+2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-unop.cc (tree_prefix_expression::rvalue1): Try to use
+	octave_value::do_non_const_unary_op.
+
+2009-11-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/urlwrite.cc (curl_handle::init): Use
+	CURLOPT_USERPWD if libcurl ver < 7.19.0.
+
+2009-11-28  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl-render.cc (opengl_renderer::draw_image): Handle indexed
+	images.
+
+2009-11-28  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl-render.h (opengl_renderer::draw): Draw children from end of
+	list to preserve correct stacking order (first child should be
+	on top).
+
+	* graphics.cc (maybe_set_children): Store sorted child lists.
+
+2009-11-27  Kacper Kowalik  <xarthisius.kk@gmail.com>
+
+	* ls-hdf5.cc (have_h5giterate_bug): Drop this group iteration
+	flag for buggy pre 1.2.2 versions of hdf5.  * ov-base-int.cc
+	(octave_base_int_matrix<T>::load_hdf5)
+	octave_base_int_scalar<T>::load_hdf5), ov-base-int.h
+	(octave_base_int_matrix<T>::load_hdf5,
+	octave_base_int_scalar<T>::load_hdf5), ov-base.cc
+	(octave_base_value::load_hdf5), ov-base.h
+	(octave_base_value::load_hdf5), ov-bool-mat.cc
+	(octave_bool_matrix::load_hdf5), ov-bool-mat.h
+	(octave_bool_matrix::load_hdf5), ov-bool-sparse.cc
+	(octave_sparse_bool_matrix::load_hdf5), ov-bool-sparse.h
+	(octave_sparse_bool_matrix::load_hdf5), ov-bool.cc
+	(octave_bool::load_hdf5), ov-bool.h (octave_bool::load_hdf5),
+	ov-cell.cc (octave_cell::load_hdf5), ov-cell.h
+	(octave_cell::load_hdf5), ov-class.cc (octave_class::load_hdf5),
+	ov-class.h (octave_class::load_hdf5), ov-complex.cc
+	(octave_complex::load_hdf5), ov-complex.h
+	(octave_complex::load_hdf5), ov-cx-mat.cc
+	(octave_complex_matrix::load_hdf5), ov-cx-mat.h
+	(octave_complex_matrix::load_hdf5), ov-cx-sparse.cc
+	(octave_sparse_complex_matrix::load_hdf5), ov-cx-sparse.h
+	(octave_sparse_complex_matrix::load_hdf5), ov-fcn-handle.cc
+	(octave_fcn_handle::load_hdf5), ov-fcn-handle.h
+	(octave_fcn_handle::load_hdf5), ov-fcn-inline.cc
+	(octave_fcn_inline::load_hdf5), ov-fcn-inline.h
+	(octave_fcn_inline::load_hdf5), ov-float.cc
+	(octave_float_scalar::load_hdf5), ov-float.h
+	(octave_float_scalar::load_hdf5), ov-flt-complex.cc
+	(octave_float_complex::load_hdf5), ov-flt-complex.h
+	(octave_float_complex::load_hdf5), ov-flt-cx-mat.cc
+	(octave_float_complex_matrix::load_hdf5), ov-flt-cx-mat.h
+	(octave_float_complex_matrix::load_hdf5), ov-flt-re-mat.cc
+	(octave_float_matrix::load_hdf5), ov-flt-re-mat.h
+	(octave_float_matrix::load_hdf5), ov-list.cc
+	(octave_list::load_hdf5), ov-list.h (octave_list::load_hdf5),
+	ov-range.cc (octave_range::load_hdf5), ov-range.h
+	(octave_range::load_hdf5), ov-re-mat.cc
+	(octave_matrix::load_hdf5), ov-re-mat.h
+	(octave_matrix::load_hdf5), ov-re-sparse.cc
+	(octave_sparse_matrix::load_hdf5), ov-re-sparse.h
+	(octave_sparse_matrix::load_hdf5), ov-scalar.cc
+	(octave_scalar::load_hdf5), ov-scalar.h
+	(octave_scalar::load_hdf5), ov-str-mat.cc
+	(octave_char_matrix_str::load_hdf5), ov-str-mat.h
+	(octave_char_matrix_str::load_hdf5), ov-struct.cc
+	(octave_struct::load_hdf5), ov-struct.h
+	(octave_struct::load_hdf5), ov.h (octave_value::load_hdf5):
+	Remove have_hg5iterate_bug from the call to load_hdf5.
+	* ov-cell.cc (octave_bool::load_hdf5), ov-class.cc
+	(octave_class::load_hdf5), ov-fcn-handle.cc
+	(octave_fcn_handle::load_hdf5), ov-list.cc
+	(octave_list::load_hdf5), ov-struct.cc
+	(octave_struct::load_hdf5): Remove HAVE_H5GGET_NUM_OBJS cruft
+	for old hdf5 versions.
+
+2009-11-27  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/urlwrite.cc (curl_handle, curl_handles): Add
+	classes to manage the open curl connections.  (F__ftp__,
+	F__ftp_pwd__, F__ftp_cwd__, F__ftp_dir__, F__ftp_ascii__,
+	F__ftp_binary__, F__ftp_close__, F__ftp_mode__, F__ftp_delete__,
+	F__ftp_rmdir__, F__ftp_mkdir__, F__ftp_rename__, F__ftp_mput__,
+	F__ftp_mget__): New functions.
+
+2009-11-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::octave_value (const index_vector&)): Take
+	a copy if idx to allow mutation.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/dot.cc (Fdot): Update docs.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/dot.cc: New source.
+	* DLD-FUNCTIONS/module-files: Include it.
+
+2009-11-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fismatrix): Return true for empty matrices as well.
+
+2009-11-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/chol.cc (get_chol_l): New helper function.
+	(Fchol): Use it to set MatrixType for lower triangular factors
+	as well. Use default octave_idx_type->octave_value conversion.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (do_accumarray_sum): Simplify.
+
+2009-11-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.cc (octave_struct::save_binary): Save dimensions for
+	structs.  (octave_struct::load_binary): Load dimensions if
+	present, use 1x1 otherwise.
+
+2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fmerge): Add missing parentheses.
+
+2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-complex.h (octave_complex::bool_value,
+	octave_complex::bool_array_value): New methods.
+	* ov-flt-complex.h (octave_float_complex::bool_value,
+	octave_float_complex::bool_array_value): New methods.
+	* ov-cx-mat.cc (octave_complex_matrix::bool_array_value): New
+	method.  * ov-cx-mat.h: Declare it.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::bool_array_value):
+	New method.
+	* ov-flt-cx-mat.h: Declare it.
+
+2009-11-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.cc (octave_struct::save_ascii): Save dimensions for
+	structs.  (octave_struct::load_ascii): Load dimensions if
+	present, use 1x1 otherwise.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fmerge): Correct query for logical masks.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* utils.cc (dims_to_numel): Fallback to index_vector query for
+	non-numeric types.
+
+2009-11-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-bool.h (octave_bool::is_numeric_type): New overload.
+	* ov-bool-mat.h (octave_bool-matrix::is_numeric_type): New overload.
+
+2009-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (unary_mapper_t): New member: umap_erfinv.
+	* ov-base.c (octave_base_value::get_umap_name): Add "erfinv" here.
+	* ov.h (octave_value::erfinv): New method.
+	* ov-scalar.cc (octave_scalar::map): Handle umap_erfinv.
+	* ov-float.cc (octave_float::map): Ditto.
+	* ov-re-mat.cc (octave_matrix::map): Ditto.
+	* ov-flt-re-mat.cc (octave_float_matrix::map): Ditto.
+	* ov-re-sparse.cc (octave_sparse_matrix::map): Ditto.
+	* mappers.cc (Ferfinv): New DEFUN.
+
+2009-11-14  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl-render.cc (opengl_renderer::text_to_pixels): New function
+	from code in render_text to produce the pixels and compute
+	bounding box.  (opengl_renderer::render_text): Call
+	text_to_pixels to compute rotation mode and bounding box.
+	* gl-renger.h (opengl_renderer::text_to_pixels): Provide decl.
+	* gl2ps-renderer.cc (glps_renderer::render_text): Call
+	text_to_pixels to compute bounding box.
+	(glps_renderer::set_font): Call opengl_renderer::set_font.
+
+2009-11-18  Michael Godfrey  <godfrey@isl.stanford.edu>
+
+	* txt-eng-ft.cc: Relax font match test.
+
+2009-11-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc (bsxfun_builtin_op): New member:
+	bsxfun_builtin_power.  (bsxfun_builtin_names): Include "power".
+	(do_bsxfun_real_pow): New static function.  (maybe_fill_table):
+	Register power handlers.
+
+2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-complex.cc (octave_complex::try_narrowing_conversion):
+	Don't check signbit.
+	* ov-flt-complex.cc
+	(octave_float_complex::try_narrowing_conversion): Ditto.
+	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
+	Simplify.  Don't check signbit.
+	* ov-flt-cx-mat.cc
+	(octave_float_complex_matrix::try_narrowing_conversion): Ditto.
+
+2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (do_rc_map): New static function.
+	(octave_matrix::map): Use it here.
+	* ov-flt-re-mat.cc (do_rc_map): New static function.
+	(octave_float_matrix::map): Use it here.
+
+2009-11-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/balance.cc: Fix docs.
+
+2009-11-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (liboctinterp_la_CPPFLAGS): Define.
+
+2009-11-13  Joel Keay  <keay@ou.edu>
+
+	* graphics.h.in (image::properties::init): Also allow single,
+	int16, and uint16 data types.
+
+2009-11-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (unary_mapper_t): Move to octave_base_value.
+	* ov.h: Partially revert to c657c056240d.
+	(FORWARD_MAPPER): Update to use octave_base_value::map.
+	(octave_value::map): Ditto.
+	* mappers.cc: Revert to c657c056240d.
+	* data.cc: Ditto.
+	* Cell.h, Cell.cc: Ditto.
+	* ov-cell.cc (octave_cell::map): Rewrite.
+	* ov-base-sparse.cc (octave_base_sparse::map): New method.
+	* ov-base-sparse.h: Declare it.
+	* ov-re-sparse.cc (octave_sparse_matrix::map): Use it as a fallback.
+	* ov-cx-sparse.cc (octave_sparse_complexmatrix::map): Ditto.
+
+2009-11-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (unary_mapper_t): New enum.
+	(octave_base_value::map (unary_mapper_t)): New method.
+	(octave_base_value::abs, octave_base_value::acos,
+	octave_base_value::acosh, octave_base_value::angle,
+	octave_base_value::arg, octave_base_value::asin,
+	octave_base_value::asinh, octave_base_value::atan,
+	octave_base_value::atanh, octave_base_value::ceil,
+	octave_base_value::conj, octave_base_value::cos,
+	octave_base_value::cosh, octave_base_value::erf,
+	octave_base_value::erfc, octave_base_value::exp,
+	octave_base_value::expm1, octave_base_value::finite,
+	octave_base_value::fix, octave_base_value::floor,
+	octave_base_value::gamma, octave_base_value::imag,
+	octave_base_value::isinf, octave_base_value::isna,
+	octave_base_value::isnan, octave_base_value::lgamma,
+	octave_base_value::log, octave_base_value::log2,
+	octave_base_value::log10, octave_base_value::log1p,
+	octave_base_value::real, octave_base_value::round,
+	octave_base_value::roundb, octave_base_value::signum,
+	octave_base_value::sin, octave_base_value::sinh,
+	octave_base_value::sqrt, octave_base_value::tan,
+	octave_base_value::tanh): Remove.
+
+	* ov.h (octave_value::map (unary_mapper_t)): New method.
+	(octave_value::abs, octave_value::acos, octave_value::acosh,
+	octave_value::angle, octave_value::arg, octave_value::asin,
+	octave_value::asinh, octave_value::atan, octave_value::atanh,
+	octave_value::ceil, octave_value::conj, octave_value::cos,
+	octave_value::cosh, octave_value::erf, octave_value::erfc,
+	octave_value::exp, octave_value::expm1, octave_value::finite,
+	octave_value::fix, octave_value::floor, octave_value::gamma,
+	octave_value::imag, octave_value::isinf, octave_value::isna,
+	octave_value::isnan, octave_value::lgamma, octave_value::log,
+	octave_value::log2, octave_value::log10, octave_value::log1p,
+	octave_value::real, octave_value::round, octave_value::roundb,
+	octave_value::signum, octave_value::sin, octave_value::sinh,
+	octave_value::sqrt, octave_value::tan, octave_value::tanh): Remove.
+
+	* ov-scalar.h, ov-scalar.cc (octave_scalar): Update.
+	* ov-float.h, ov-float.cc (octave_float): Update.
+
+	* ov-complex.h, ov-complex.cc (octave_complex): Update.
+	* ov-flt-complex.h, ov-flt-complex.cc (octave_float_complex):
+	Update.
+
+	* ov-re-matrix.h, ov-re-matrix.cc (octave_matrix): Update.
+	* ov-flt-re-matrix.h, ov-flt-re-matrix.cc (octave_float_matrix): Update.
+	* ov-cx-matrix.h, ov-cx-matrix.cc (octave_complex_matrix): Update.
+	* ov-flt-cx-matrix.h, ov-flt-cx-matrix.cc
+	(octave_float_complex_matrix): Update.
+
+	* ov-re-sparse.h, ov-re-sparse.cc (octave_sparse_matrix): Update.
+	* ov-cx-sparse.h, ov-cx-sparse.cc (octave_sparse_complex_matrix):
+	Update.
+
+	* ov-re-diag.h, ov-re-diag.cc (octave_diag_matrix): Update.
+	* ov-flt-re-diag.h, ov-flt-re-diag.cc (octave_float_diag_matrix):
+	Update.
+	* ov-cx-diag.h ov-cx-diag.cc (octave_complex_diag_matrix): Update.
+	* ov-flt-cx-diag.h, ov-flt-cx-diag.cc
+	(octave_float_complex_diag_matrix): Update.
+
+	* ov-range.h (octave_range): Update.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T): Update.
+	(OCTAVE_VALUE_INT_SCALAR_T): Update.
+
+	* ov-perm.h (octave_perm_matrix): Update.
+	* ov-bool.h (octave_bool): Update.
+	* ov-bool-mat.h (octave_bool_matrix): Update.
+	* ov-ch-mat.h (octave_char_matrix): Update.
+
+	* mappers.cc (Fabs, Facos, Facosh, Fangle, Farg, Fasin, Fasinh,
+	Fatan, Fatanh, Fceil, Fconj, Fcos, Fcosh, Ferf, Ferfc, Fexp,
+	Fexpm1, Ffinite, Ffix, Ffloor, Fgamma, Fimag, Fisinf, Fisna,
+	Fisnan, Flgamma, Flog, Flog2, Flog10, Flog1p, Freal, Fround,
+	Froundb, Fsignum, Fsin, Fsinh, Fsqrt, Ftan, Ftanh, Fisalnum,
+	Fisalpha, Fisascii, Fiscntrl, Fisdigit, Fisgraph, Fislower,
+	Fisprint, Fispunct, Fisspace, Fisupper, Fisxdigit, Ftoascii,
+	Ftolower, Ftoupper): Update.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_all_first_of): Take advantage
+	of string_vector (std::list<std:string>) constructor.
+
+2009-11-11  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (do_get_help_text_from_file,
+	Fget_help_text_from_file): New functions.
+	(do_get_help_text): Pass NAME by const reference.
+	* utils.cc (find_dir_in_path): New optional argument "all".
+	* load-path.cc (load_path::do_find_matching_dirs): New function.
+	(load_path::do_find_dir): Perform match on absolute directory
+	names, but return name as it appears in dir_info_list.  Adjust
+	dname_len after stripping directory separator.
+	* load-path.h (load_path::do_find_matching_dirs): Provide decl.
+	(load_path::find_matching_dirs): New function.
+
+2009-11-11  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (Fl_Gl_Window::draw):
+	If zooming, call overlay.
+	(Fl_Gl_Window::overlay): Rename from draw_overlay.  Don't return
+	early if zooming.  Don't call valid and conditionally call
+	setup_veiwport.  Set overlay color and draw line around zoom box.
+	(Fl_Gl_Window::zoom_box_vertex): New function.
+	(Fl_Gl_Window::pixel2status): Call canvas->redraw, not
+	canvas->redraw_overlay.
+
+2009-11-10  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* gl2ps-renderer.cc, gl2ps-renderer.h, gl2ps.c, gl2ps.h: New
+	files.  PostScript backend based on opengl_renderer and gl2ps.
+	* Makefile.am (octinclude_HEADERS): Add gl2ps.h to the list.
+	(DIST_SRC): Add gl2ps.c to the list.
+	* gl-render.cc (opengl_renderer::render_text): Rename from
+	opengl_renderer::draw_text.
+	(opengl_renderer::draw_figure, opengl_renderer::draw_axes,
+	opengl_renderer::draw_line, opengl_renderer::draw_surface,
+	opengl_renderer::draw_patch, opengl_renderer::draw_hggroup,
+	opengl_renderer::draw_text, opengl_renderer::draw_image):
+	Rename from overloaded opengl_renderer::draw.
+	* gl-render.h: Fix decls.
+
+	* DLD-FUNCTIONS/fltk_backend.cc (OpenGL_fltk::print): New function.
+	(OpenGL_fltk::print_filename): New data member.
+	(OpenGL_fltk::draw): Add support for printing.
+	(fltk_backend::print_figure): Call figure_manager::print.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Fferror): Update doc string.
+
+2009-11-10  David Grundberg  <davidg@cs.umu.se>
+
+	* oct-strstrm.h (octave_base_strstream::tell): Declare virtual.
+	(octave_istrstream::tell): New method.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am, OPERATORS/module.mk, TEMPLATE-INST/module.mk,
+	find-defun-files.sh, version.h.in,
+	DLD-FUNCTIONS/config-module.awk, DLD-FUNCTIONS/config-module.sh,
+	DLD-FUNCTIONS/module-files: New files.
+	* Makefile.in, version.h: Delete.
+	* lex.ll: Rename from lex.l.  Include oct-parse.h instead of y.tab.h.
+	* parse.yy: Rename from parse.y
+	* mkbuiltins, mkgendoc: Don't require filenames to start with a
+	"." at beginning of line.
+
+	* oct-conf.h.in (OCTAVE_CONF_LAPACK_LIBS): Delete macro.
+	* toplev.cc (octave_config_info): Don't include LAPACK_LIBS in the
+	struct.
+
+2009-11-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (octave_class::numel): Use base version if called
+	from built-in assignment.
+	(octave_class::size): Ditto.
+
+2009-11-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Simplify examples in
+	docs.
+
+2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.cc (btyp_mixed_numeric): New function.
+	* ov-base.h: Declare it.
+	(btyp_isnumeric): New inline function.
+	* DLD_FUNCTIONS/max.cc (do_minmax_red_op, do_minmax_bin_op,
+	do_minmax_body, do_cumminmax_red_op): New functions.
+	(MINMAX_DOUBLE_SBODY, MINMAX_DOUBLE_BODY, MINMAX_SINGLE_SBODY,
+	MINMAX_SINGLE_BODY, MINMAX_SPARSE_BODY, MINMAX_INT_SBODY,
+	MINMAX_INT_BODY, MINMAX_BODY, CUMMINMAX_BODY): Remove.
+	(Fmin, Fmax, Fcummin, Fcummax): Update.
+
+2009-11-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h: Add sparse matrix extractors.
+
+2009-11-09  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/__dsearchn__.cc,
+	DLD-FUNCTIONS/__voronoi__.cc, DLD-FUNCTIONS/convhulln.cc,
+	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/tsearch.cc: Correctly include
+	config.h, don't include oct.h, etc.
+
+2009-11-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/bsxfun.cc: Add missing copyright.  (fill_table):
+	Mark table as initialized.
+
+2009-11-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-assign.cc (tree_multi_assignment::rvalue): Don't skip
+	zero-length lvalue cs-lists.
+
+2009-11-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::print_raw): Indent properly. Use
+	newline rather than '\n'.
+
+2009-11-03  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (root_figure): Add commandwindowsize, diary,
+	diaryfile, echo, format, language, monitorpositions,
+	pointerlocation, pointerwindow, and recursionlimit properties.
+
+2009-11-03  David Grundberg  <davidg@cs.umu.se>
+
+	* graphics.h.in (root_figure): Add FormatSpacing property.
+
+2009-11-03  David Grundberg  <davidg@cs.umu.se>
+
+	* ov-class.cc (octave_class::size): Allow and ignore extra
+	outargs from user-defined size methods.
+
+2009-11-03  David Grundberg  <davidg@cs.umu.se>
+
+	* ov-class.cc (make_idx_args): Call user-defined
+	subsref/subsasgn with 1xN structs instead of Nx1.
+
+2009-11-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (octave_class::unique_parent_class): New method.
+	(octave_class::subsasgn): Use it here.
+	* ov-class.h: Declare it.
+
+2009-11-01  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (get_sort_mode_option): New function.
+	(Fissorted): Handle ascending or descending option.
+
+2009-11-01  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::dir_info::update): Always initialize
+	relative directories that are not yet included in abs_dir_cache.
+
+2009-10-29  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (finish_function): Return function object unless
+	parsing function file.
+
+2009-10-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/tril.cc: New source.  * Makefile.in: Include it.
+
+2009-10-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* error.cc (verror (bool, std::ostream&, ..., bool)): Add
+	optional with_cfn flag. If specified, prepend current function
+	name (unless already there).
+	(error_1): Accept with_cfn flag and pass it on.
+	(error_2): Ditto.
+	(verror_with_cfn, error_with_cfn, error_with_id_cfn,
+	verror_with_id_cfn): New functions.
+	* error.h: Declare them.
+	* octave.cc (lo_error_handler): Call verror_with_cfn.
+	* ov-base.cc (INT_CONV_METHOD): Call error_with_cfn.
+	* ov.cc (octave_value::int_vector_value, octave_idx_type_vector_value):
+	Call error_with_cfn.
+
+2009-10-21  Rik  <octave@nomad.inbox5.com>
+
+	* variables.cc: Correct use of deftypefnx for who and whos.
+
+2009-10-21  John W. Eaton  <jwe@octave.org>
+
+	* load-path.h (load_path::dir_path::dir_time_last_checked): New
+	field.  (load_path::dir_path::dir_path,
+	load_path::dir_path::operator=): Initialize and copy
+	dir_time_last_checked.
+	* load-path.cc (load_path::dir_info::initialize): Store time of
+	last update.
+	(load_path::dir_info::update): Check directory modification time
+	against time of last update, within resolution of filesystem
+	time stamps.  Suggested by Judd Storrs <storrsjm@email.uc.edu>.
+
+2009-10-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (builtin_type_t): Declare also btyp_num_types.
+	* DLD-FUNCTIONS/bsxfun.cc (bsxfun_builtin_op): New enum.
+	(bsxfun_handler): New typedef.
+	(bsxfun_builtin_names, bsxfun_handler_table): New variables.
+	(bsxfun_builtin_lookup, maybe_fill_table, maybe_optimized_builtin):
+	New static funcs.
+	(bsxfun_forward_op, bsxfun_forward_rel): New static template funcs.
+	(Fbsxfun): Try to optimize some built-in operations.
+
+2009-10-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Allow non-positive
+	indices as bounds.
+
+2009-10-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fnth_element): Clarify docstring.
+
+2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.cc, Cell.h, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/lookup.cc,
+	DLD-FUNCTIONS/max.cc, TEMPLATE-INST/Array-tc.cc, data.cc,
+	oct-map.cc, ov-cx-mat.h, ov-flt-cx-mat.cc, ov-flt-cx-mat.h,
+	ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h, ov-re-mat.h,
+	ov.cc, ov.h, pr-output.cc, pr-output.h, variables.cc:
+	Remove traces of ArrayN.
+
+	* OPERATORS/op-dm-scm.cc: Avoid using dm + s, dm - s operators.
+	* OPERATORS/op-dm-sm.cc: Ditto.
+	* OPERATORS/op-dms-template.cc: Ditto.
+
+2009-10-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): Use Array<T>::column here.
+
+2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Update docstring.
+
+2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::octave_value (octave_base_value *, bool)):
+	New constructor.
+	(octave_value::octave_value (octave_base_value *, int)): Deprecate.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Allow the obsolete func
+	body syntax.
+
+2009-10-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (extract_function): Pass 0 to eval_string to avoid
+	error.
+
+2009-10-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::octave_value (const Array<std::string>&)): New
+	constructor.
+	* ov.h: Declare it.
+	* data.cc (Fnth_element): New DEFUN.
+
+2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fcumsum, Fcumprod, Fprod, Fsum, Fsumsq): Correct help
+	string.
+
+2009-10-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fsum): Rewrite.
+	(Fcumsum): Rewrite.
+	(NATIVE_REDUCTION, NATIVE_REDUCTION_1): Remove.
+
+2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-binop.cc, pt-unop.cc: Revert the effect of 1be3c73ed7b5.
+
+2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lu.cc (maybe_set_triangular): Remove.
+	(get_lu_l, get_lu_u): New helper funcs.
+	(Flu, Fluupdate): Use them to auto-set MatrixType of results.
+	* DLD-FUNCTIONS/qr.cc (maybe_set_triangular): Remove.
+	(get_qr_r): New helper func.
+	(Fqr, Fqrupdate, Fqrinsert, Fqrdelete,
+	Fqrshift): Use it to auto-set MatrixType of results.
+	* DLD-FUNCTIONS/chol.cc (get_chol_r): New helper func.
+	(Fchol, Fcholupdate, Fcholinsert, Fcholdelete, Fcholshift): Use it
+	to auto-set MatrixType of result.
+
+2009-10-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Support 'nocompute'
+	option.
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lu.cc (Fluupdate): New DEFUN_DLD.
+	(check_lu_dims): New helper func.
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Flength): Simplify.
+	(Fndims): Simplify.
+	(Fsize): Rewrite, use dim_vector::redim to simplify.
+	(Fsize_equal): Don't chop trailing singletons (should be already
+	chopped).
+
+2009-10-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* utils.cc (dims_to_numel): New function.
+	* utils.h: Declare it.
+	* ov-base.cc (octave_base_value::numel (const octave_value_list&)):
+	Use it here.
+	* data.cc (Fnumel): Also here.
+
+2009-10-07  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (get_dims_str): New function.
+	(symbol_info_list::display_line,
+	symbol_info_list::parse_whos_line_format): Use it to get dims string.
+
+2009-10-07  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::get_count): Return octave_idx_type, not int.
+
+2009-10-07  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	Avoid uninitialized variable warning.
+	* pt-cbinop.cc (simplify_ldiv_op): Avoid unused parameter warning.
+	* ov-flt-re-mat.cc (convert_to_str_internal):
+	Update for octave_value constructor changes.
+
+2009-10-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-stream.cc (octave_base_stream::skipl,
+	octave_stream::skipl (long, ...), octave_stream::skipl (const
+	octave_value&, ...)): New methods.
+	* oct-stream.h: Declare them.
+	* file-io.cc (Ffskipl): New DEFUN.
+
+2009-10-07  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-str-str.cc (DEFUNOP (transpose, char_matrix_str)):
+	Update for octave_value constructor changes.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::assign): Do not gripe "assignment failed" if
+	already griped about the binary operation.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-idx.cc (tree_index_expression::rvalue): When evaluating index
+	chain, split on chaining ()() and (){}.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-misc.cc (tree_argument_list::convert_to_const_vector):
+	Return more than nargout arguments only unless undefined elements
+	occur.
+	* ov-class.cc (octave_class::subsref): Pack return list from
+	overloaded method into first value.
+
+2009-10-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-ch-mat.h (octave_char_matrix): Don't declare allocator and
+	typeid.
+	* ov-ch-mat.cc: Don't define them.
+	* ov.cc (install_types): Don't register octave_char_matrix.
+
+2009-10-05  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value (const charMatrix&, char, bool),
+	octave_value (const charNDArray&, char, bool),
+	octave_value (const ArrayN<char>&, char, bool)):
+	New constructor decls.
+	(octave_value (const charMatrix&, bool, char),
+	octave_value (const charNDArray&, bool, char),
+	octave_value (const ArrayN<char>&, bool, char)): Mark with
+	GCC_ATTR_DEPRECATED.  Single-quoted strings are now default string
+	type.
+	(octave_value::convert_to_str): Default is single-quoted strings.
+	* ov.cc (octave_value (const charMatrix&, char, bool),
+	octave_value (const charNDArray&, char, bool),
+	octave_value (const ArrayN<char>&, char, bool)): New constructors.
+	(octave_value (const charMatrix&, bool, char),
+	octave_value (const charNDArray&, bool, char),
+	octave_value (const ArrayN<char>&, bool, char)):
+	Assume is_string argument is always true.
+
+	* ov-re-mat.cc (octave_sparse_matrix::convert_to_str_internal):
+	Update for octave_value constructor changes.
+	* ov-ch-mat.h (octave_char_matrix::convert_to_str_internal): Likewise.
+	* ov-re-sparse.cc (octave_sparse_matrix::convert_to_str_internal):
+	Likewise.
+	* ov-str-mat.h (octave_char_matrix_str::squeeze,
+	octave_char_matrix_str::reshape, octave_char_matrix_str::permute,
+	octave_char_matrix_str::diag, octave_char_matrix_str::sort,
+	octave_char_matrix_sq_str::squeeze,
+	octave_char_matrix_sq_str::reshape,
+	octave_char_matrix_sq_str::permute,
+	octave_char_matrix_sq_str::diag, octave_char_matrix_sq_str::sort):
+	Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
+	Likewise.
+	(octave_char_matrix_str::resize): Likewise.
+	* data.cc (do_cat, Fmerge): Likewise.
+	* ops.h (DEFNDCHARCATOP_FN): Likewise.
+	* ov-base-int.cc (octave_base_int_matrix<T>::convert_to_str_internal):
+	Likewise.
+	* pt-mat.cc (tree_matrix::rvalue1): Likewise.
+
+	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix): Delete
+	unused bool arg.  Declare constructors protected.
+
+	(xisalnum, xisalpha, xisascii, xiscntrl, xisdigit, xisgraph,
+	xislower, xisprint, xispunct, xisspace, xisupper, xisxdigit,
+	xtoascii, xtolower, xtoupper): Move decls here from ov-str-mat.h.
+	(MAT_MAPPER, BOOL_MAT_MAPPER): Move macro definitions and uses
+	here from ov-str-mat.h.
+
+	* ov-ch-mat.cc (MACRO_WRAPPER, STRING_MAPPER, TOSTRING_MAPPER):
+	Move macro definitions and uses here.
+	* ov-str-mat.cc: From here.
+
+	* DLD-FUNCTIONS/typecast (Ftypecast): Update for octave_value
+	constructor changes.  Create sq_string unless casting from string,
+	then preserve exact type.
+	(Fbitpack): Update for octave_value constructor changes.  Create
+	sq_string.
+	* DLD-FUNCTIONS/hex2num.cc (Fnum2hex): Update for octave_value
+	constructor changes.  Create sq_string.
+	* ls-oct-ascii.cc (read_ascii_data): Likewise.
+	* mex.cc (mxArray_number::as_octave_value): Likewise.
+	* oct-stream.cc (octave_stream::read): Likewise.
+	* ov-base.cc (STRING_MAPPER): Likewise.
+
+2009-10-04  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.h (octave_char_matrix_str::squeeze,
+	octave_char_matrix_sq_str::squeeze, octave_char_matrix_str::diag,
+	octave_char_matrix_sq_str::diag): New functions.
+
+2009-10-03  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (image::update_xdata): Add a half-pixel to each limit.
+	(image::update_ydata): Ditto.
+	* gl-render.cc (opengl_renderer::draw): Clip image to axis and fix
+	unpack alignment.
+
+2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-scalar.h (octave_base_scalar::matrix_type): Always
+	return MatrixType::Diagonal.
+	(octave_base_scalar::typ): Remove.
+
+2009-10-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h: Define also diag matrix extractors.
+	(octave_type_traits, octave_array_type_traits): Remove.
+	(octave_value::builtin_type): New method.
+	* oct-stream.cc (do_read): Update.
+	* data.cc (identity_matrix): Update.
+	* ov-base.h (builtin_type_t): New enum.
+	(octave_base_value::builtin_type): New method.
+	* ov-re-mat.h (octave_matrix::builtin_type): New method.
+	* ov-flt-re-mat.h (octave_float_matrix::builtin_type): New method.
+	* ov-cx-mat.h (octave_complex_matrix::builtin_type): New method.
+	* ov-flt-cx-mat.h (octave_float_complex_matrix::builtin_type):
+	New method.
+	* ov-bool-mat.h (octave_bool_matrix::builtin_type): New method.
+	* ov-ch-mat.h (octave_char_matrix::builtin_type): New method.
+	* ov-scalar.h (octave_scalar::builtin_type): New method.
+	* ov-float.h (octave_float::builtin_type): New method.
+	* ov-complex.h (octave_complex::builtin_type): New method.
+	* ov-bool.h (octave_bool::builtin_type): New method.
+	* ov-flt-complex.h (octave_float_complex::builtin_type): New method.
+	* ov-re-diag.h (octave_diag_matrix::builtin_type): New method.
+	* ov-flt-re-diag.h (octave_float_diag_matrix::builtin_type): New method.
+	* ov-cx-diag.h (octave_complex_diag_matrix::builtin_type): New method.
+	* ov-flt-cx-diag.h
+	(octave_float_complex_diag_matrix::builtin_type):
+	New method.
+	* ov-re-sparse.h (octave_sparse_matrix::builtin_type): New method.
+	* ov-cx-sparse.h (octave_sparse_complex_matrix::builtin_type):
+	New method.
+	* ov-bool-sparse.h (octave_sparse_bool_matrix::builtin_type):
+	New method.
+	* ov-intx.h (octave_int_matrix::builtin_type,
+	octave_int_scalar::builtin_type): New methods.
+	* ov-int8.h: Define OCTAVE_INT_BTYP.
+	* ov-int16.h: Define OCTAVE_INT_BTYP.
+	* ov-int32.h: Define OCTAVE_INT_BTYP.
+	* ov-int64.h: Define OCTAVE_INT_BTYP.
+	* ov-uint8.h: Define OCTAVE_INT_BTYP.
+	* ov-uint16.h: Define OCTAVE_INT_BTYP.
+	* ov-uint32.h: Define OCTAVE_INT_BTYP.
+	* ov-uint64.h: Define OCTAVE_INT_BTYP.
+
+2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Fix initialization, add missing
+	break.
+
+2009-10-01  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc (opengl_renderer::draw (const image::properties&)):
+	Adjust origin for glRasterPos3d.
+
+2009-10-01  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc: Style fixes.
+
+2009-10-01  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (image::properties::get_color_data): New function.
+	* gl-render.cc (opengl_renderer::draw): Handle RGB images.
+
+2009-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc
+	(do_num2cell_helper, do_num2cell): New funcs.
+	(Fnum2cell): Rewrite.
+	(do_cellslices_nda): Do not leave trailing dims.
+
+2009-09-30  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (error_1, pr_where_2, handle_message):
+	Don't do anything if fmt is empty.
+	(Ferror): Call print_usage if nargin == 0.
+
+2009-09-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/typecast.cc (Ftypecast): Rewrite.
+	(Fbitpack, Fbitunpack): New DEFUNs.
+
+2009-09-28  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Redraw the
+	overlay when zoom box changes size.
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_mouse_wheel_zoom): New
+	function to set mouse wheel zoom factor.
+
+2009-09-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sub2ind.cc (get_dimensions): Allow singleton array.
+	(Fsub2ind): Allow single index.
+
+2009-09-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-m-m.cc (trans_mul, mul_trans): Update.
+	* OPERATORS/op-fm-fm.cc (trans_mul, mul_trans): Update.
+	* OPERATORS/op-cm-cm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
+	Update.
+	* OPERATORS/op-fcm-fcm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
+	Update.
+	* OPERATORS/op-m-cm.cc (trans_mul): Update.
+	* OPERATORS/op-cm-m.cc (mul_trans): Update.
+	* OPERATORS/op-fm-fcm.cc (trans_mul): Update.
+	* OPERATORS/op-fcm-fm.cc (mul_trans): Update.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-m-cm.cc: Declare and install trans_mul operator.
+	* OPERATORS/op-fm-fcm.cc: Ditto.
+	* OPERATORS/op-cm-m.cc: Declare and install mul_trans operator.
+	* OPERATORS/op-fcm-fm.cc: Ditto.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-m-cm.cc: Declare and install trans_ldiv operator.
+	* OPERATORS/op-fm-fcm.cc: Ditto.
+
+2009-09-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::op_trans_ldiv, op_herm_ldiv): New enum constants.
+	* ov.cc (decompose_binary_op, binary_op_fcn_name): Support them.
+	* xdiv.h: Include mx-defs.h, delete forward decls.
+	* xdiv.cc (xleftdiv): Support transt parameter.
+	(xdiv): Optimize.
+	* pt-cbinop.cc (simplify_ldiv_op): New static func.
+	(maybe_compound_binary_expression): Try it.
+	* OPERATORS/op-m-m.cc: Define and install trans_ldiv handler.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-cm-cm.cc: Define and install trans_ldiv and herm_ldiv
+	handlers.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+
+2009-09-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value_extract): New template function.
+	* data.cc (do_linspace): New static template function.
+	(Flinspace): Rewrite.
+
+2009-09-18  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::redraw_figure):
+	Call __fltk_redraw__ after marking figure as modified.
+
+2009-09-18  John W. Eaton  <jwe@octave.org>
+
+	* mexproto.h: Define OCTINTERP_API if it is not already defined.
+	Use C-style comments.
+
+2009-09-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/rand.cc (Frandperm): New function.
+
+2009-09-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-misc.cc (tree_parameter_list::convert_to_const_vector): Pass
+	in nargout. Don't return excess elements. Optimize varargout-only case
+	to possibly use a shallow copy.
+	* pt-misc.h: Update decl.
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op): Update call
+	to tree_parameter_list::convert_to_const_vector.
+
+2009-09-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pr-output.cc (Fdisp, Ffdisp): Declare retval as octave_value_list.
+
+2009-09-14  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::pixel2status,
+	plot_window::pixel2pos): New argument AXES, which the
+	coordinates are relative to.
+	(plot_window::handle): Pass axes to pixel2status and pixel2pos.
+
+2009-09-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (symbol_table::curr_fcn): New member field.
+	(symbol_table::get_curr_fcn, symbol_table::set_curr_fcn): New member
+	funcs.
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::xfind): Use
+	symbol_table::get_curr_fcn.
+	(symbol_table::fcn_info::fcn_info_rep::x_builtin_find): Ditto.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function): Call
+	symbol_table::set_curr_fcn.
+
+2009-09-12  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.3.50+.
+	(OCTAVE_API_VERSION): Now api-v38+.
+
+2009-09-12  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.3.50.
+	(OCTAVE_API_VERSION): Now api-v38.
+	(OCTAVE_RELEASE_DATE): Now 2009-09-12.
+
+2009-09-08  Rafael Laboissiere  <rafael@debian.org>
+
+	* pr-output.cc: New test.
+
+2009-09-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Add LDFLAGS to OCT_LINK_DEPS.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc: Fix test.
+
+2009-09-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-s-cs.cc: Use DEFCMPLXCMPOP_OP.
+	* OPERATORS/op-cs-s.cc: Ditto.
+	* OPERATORS/op-fs-fcs.cc: Ditto.
+	* OPERATORS/op-fcs-fs.cc: Ditto.
+
+2009-09-05  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk: Fix formatting of generated output.
+	* graphics.h.in (graphics_object::get (const std::string&) const,
+	graphics_object::get (const char *) const): New functions.
+
+2009-09-05  John W. Eaton  <jwe@octave.org>
+
+	* txt-eng-ft.cc (ft_manager::do_get_font): Remove spurious
+	assignment usd for debugging.
+
+2009-09-04  John W. Eaton  <jwe@octave.org>
+
+	* txt-eng-ft.cc (ft_manager::do_get_font, ft_render::set_font,
+	ft_render::set_mode, ft_render::visit, ft_render::set_color):
+	Issue warnings instead of errors for non-fatal problems.
+	(ft_render::visit): If face is null, then return without warning.
+	* genprops.awk: Also generate const std::string& and const char*
+	versions of the get member functions.
+	* gl-render.cc (opengl_renderer::draw): Omit caseless_str
+	constructor in call to get method.
+	* ft_render::set_font (): Likewise.
+
+2009-09-03  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (set_format (const Complex&, int&, int&)):
+	Avoid passing NaN or Inf to log10.
+
+2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::assign (assign_op, const octave_value&)):
+	Call maybe_mutate after in-place operation.
+
+2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::do_non_const_unary_op): Split to
+	genuine/non-genuine case.
+	(octave_value::binary_op_to_assign_op): New method.
+	* ov.h: Declare it.
+	* ov-re-mat.h (octave_matrix::changesign): New method.
+	* ov-flt-re-mat.h (octave_float_matrix::changesign): New method.
+	* ov-cx-mat.h (octave_complex_matrix::changesign): New method.
+	* ov-flt-cx-mat.h (octave_float_complex_matrix::changesign): New
+	method.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::changesign): New method.
+	* ov-bool-mat.h (octave_bool_matrix::invert): New method.
+	* pt-unop.cc (tree_prefix_expression::rvalue1): Use
+	do_non_const_unary_op.
+	* pt-binop.cc (tree_binary_expression::rvalue1): If possible,
+	convert to computed assignment.
+
+	* OPERATORS/op-m-m.cc: Define & install in-place minus operation.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-cm-cm.cc: Ditto.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+	* OPERATORS/op-int.h: Ditto.
+	* OPERATORS/op-bm-bm.cc: Define & install in-place not operation.
+
+2009-09-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.h (octave_matrix::increment, octave_matrix::decrement):
+	Use matrix_ref.
+	* ov-flt-re-mat.h (octave_float_matrix::increment,
+	octave_float_matrix::decrement): Use matrix_ref.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::increment,
+	OCTAVE_VALUE_INT_MATRIX_T::decrement):
+	Use matrix_ref.
+
+2009-09-02  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (axes::properties::calc_ticklabels):
+	Avoid unused parameter warning from gcc.
+
+	* ov-perm.cc (octave_perm_matrix::save_binary,
+	octave_perm_matrix::load_binary): Avoid shadow warning from gcc.
+
+2009-09-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/eig.cc (Feigs): Correct nesting error in option
+	parsing that prevented the use of a function for generalized
+	eigenvalue problems.
+
+2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ops.h (DEFCMPLXCMPOP_OP, DEFNDCMPLXCMPOP_FN): New macros.
+	* gripes.cc (gripe_warn_complex_cmp): New function.
+	* gripes.h: declare it.
+
+	* OPERATORS/op-cm-cm.cc: Call the new macros.
+	* OPERATORS/op-cm-cs.cc: Ditto.
+	* OPERATORS/op-cm-m.cc: Ditto.
+	* OPERATORS/op-cm-s.cc: Ditto.
+	* OPERATORS/op-cs-cm.cc: Ditto.
+	* OPERATORS/op-cs-cs.cc: Ditto.
+	* OPERATORS/op-cs-m.cc: Ditto.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+	* OPERATORS/op-fcm-fcs.cc: Ditto.
+	* OPERATORS/op-fcm-fm.cc: Ditto.
+	* OPERATORS/op-fcm-fs.cc: Ditto.
+	* OPERATORS/op-fcs-fcm.cc: Ditto.
+	* OPERATORS/op-fcs-fcs.cc: Ditto.
+	* OPERATORS/op-fcs-fm.cc: Ditto.
+	* OPERATORS/op-fm-fcm.cc: Ditto.
+	* OPERATORS/op-fm-fcs.cc: Ditto.
+	* OPERATORS/op-fs-fcm.cc: Ditto.
+	* OPERATORS/op-m-cm.cc: Ditto.
+	* OPERATORS/op-m-cs.cc: Ditto.
+	* OPERATORS/op-s-cm.cc: Ditto.
+
+
+2009-08-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ops.h (BOOL_OP1, BOOL_OP2, BOOL_OP3, SC_MX_BOOL_OP, MX_SC_BOOL_OP,
+	MX_MX_BOOL_OP): Remove.
+
+2009-08-28  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk: Generate static member functions has_core_property
+	and core_property_names.  Make has_property and all_property_names
+	non-static const member functions.  Pass object type to
+	validate_property_name.
+	* graphics.cc (validate_property_name): New arg, WHAT.
+	Improve warning and error messages.
+	(property_list::set): Use has_core_property instead of has_property.
+	(base_properties::has_property): Delete definition.
+	(base_graphics_object::remove_all_listeners): Move unwind protect
+	block here, from old base_properties::has_property function.
+	* graphics.h.in (base_properties::has_property): Now virtual.
+	Unconditionally call panic_impossible.
+
+2009-08-28  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (validate_property_name): Return full name of
+	matched property value.  Issue warning if given property name is
+	abbreviated.
+	* genprops.awk: Use name returned by validate_property_name for
+	subsequent matching.
+	* octave.cc (maximum_braindamage):
+	Disable Octave:abbreviated-property-match warning.
+
+2009-08-27  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (validate_property_name): New static function.
+	(base_properties::dynamic_property_names): New function.
+	* graphicffs.h.in (base_properties::dynamic_property_names):
+	Provide decl.
+	* genprops.awk: Generate all_property_names functions.  Use
+	all_property_names as needed to avoid duplication elsewhere.
+	Call validate_property_name in set/get functions.
+
+2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (get_current_method_class): Simplify.
+	(octave_class::in_class_method): Don't rely on multiple copies of
+	methods. Don't declare as const.
+	(octave_class::octave_class (const Octave_map&, const std::string&,
+	const octave_value_list&)):
+	Call symbol_table::add_to_parent_map instead.
+	* ov-class.h (octave_class::in_class_method): Don't declare as const.
+	* symtab.h (symbol_table::parent_map): New field.
+	(symbol_table::add_to_parent_map): New method.
+	(symbol_table::load_class_method): Search also parent classes.
+	* load-path.h (load_path::parent_map, load_path::add_to_parent_map,
+	load_path::do_add_to_parent_map): Remove.
+	* load-path.cc (load_path::do_find_method): Don't search parent
+	classes.
+
+2009-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-cs-cs.cc: Simplify comparison operators.
+	* OPERATORS/op-fcs-fcs.cc: Ditto.
+
+2009-08-25  David Grundberg  <individ@acc.umu.se>
+
+	* DLD-FUNCTIONS/__magick_read__.cc [HAVE_MAGICK]: Include
+	Magick++.h instead of GraphicsMagick/Magic++.h.
+	* Makefile.in: Replace MAGICK_LIBS with MAGICK_LDFLAGS and
+	MAGICK_LIBS. Replace MAGICK_INCFLAGS with MAGICK_CPPFLAGS.
+	* oct-conf.h.in: Ditto.
+	* toplev.cc (octave_config_info): Ditto.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New defines for UMFPACK_CPPFLAGS and UMFPACK_LDFLAGS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New defines for QRUPDATE_CPPFLAGS and QRUPDATE_LDFLAGS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New defines for ARPACK_CPPFLAGS and ARPACK_LDFLAGS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
+	Include BLAS_LIBS in the list.
+
+2009-08-26  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (OCTAVE_LIBS): Include FLIBS in the list.
+	(OCTINTERP_LINK_DEPS): Include TERM_LIBS, LIBGLOB, and FLIBS in
+	the list.
+
+2009-08-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Ffmod): Reverse order of args.
+
+2009-08-26  Rob Mahurin  <rob@utk.edu>
+
+	* syscalls.cc: Recommend waitpid() in popen2() documentation.
+
+2009-08-25  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (gnuplot_backend::send_quit): Wait for gnuplot process.
+
+2009-08-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-m-m.cc: Install .*= and ./= operators.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-cm-cm.cc: Ditto.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+	* OPERATORS/op-int.h: Ditto.
+
+2009-08-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (UNARY_OP_DEFUN_BODY,
+	BINARY_OP_DEFUN_BODY, BINARY_ASSOC_OP_DEFUN_BODY): Remove.
+	(unary_op_defun_body, binary_op_defun_body,
+	binary_assoc_op_defun_body): New functions.
+	(Fnot, Fuplus, Fuminus, Ftranspose, Fctranspose): Use
+	unary_op_defun_body.
+	(Fminus, Fmrdivide, Fmpower, Fmldivide, Flt, Fle, Feq, Fge, Fgt, Fne,
+	Frdivide, Fpower, Fldivide): Use binary_op_defun_body.
+	(Fplus, Ftimes, Fmtimes, Fand, For): Use binary_assoc_op_defun_body.
+
+2009-08-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-s-s.cc: Check for NaN in ! operator.
+	* OPERATORS/op-fs-fs.cc: Ditto.
+	* OPERATORS/op-cs-cs.cc: Ditto.
+	* OPERATORS/op-fcs-fcs.cc: Ditto.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ops.h (DEFNDASSIGNOP_FNOP): New macro.
+	* OPERATORS/op-bm-bm.cc: Define and install &= and |= operators.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-m-m.cc: Define and install += and -= operators.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-cm-cm.cc: Ditto.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+	* OPERATORS/op-m-s.cc: Define and install +=,-=,*=,/= operators.
+	* OPERATORS/op-fm-fs.cc: Ditto.
+	* OPERATORS/op-cm-cs.cc: Ditto.
+	* OPERATORS/op-fcm-fcs.cc: Ditto.
+	* OPERATORS/op-cm-s.cc: Define and install *=,/= operators.
+	* OPERATORS/op-fcm-fs.cc: Ditto.
+	* ops.h (DEFNDASSIGNOP_OP): New macro.
+	* ov.cc (octave_value::assign (assign_op, const octave_value&)):
+	Try looking up specialized handlers if the value is not shared.
+	* ov-base-mat.h (octave_base_matrix::matrix_ref): New method.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.h (octave_value_list::octave_value_list (octave_idx_type)):
+	Allow this constructor.
+
+2009-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Reuse cached index vector when
+	converting boolean mask to indices.
+
+2009-08-18  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New #defines for HDF5_LDFLAGS and HDF5LDFLAGS.
+	* Makefile.in (OCTAVE_LIBS, OCTINTERP_LINK_DEPS):
+	Include them in the lists.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New #defines for ZLIB_CPPFLAGS and ZLIB_LDFLAGS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (OCTINTERP_LINK_DEPS): Include FFTW_LDFLAGS,
+	FFTW_LIBS and READLINE_LIBS in the list.
+	(OCTAVE_LIBS): Attempt to include all necessary dependencies for
+	static linking.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (eigs.oct, chol.oct, qr.oct): Add library-specific
+	CPPFLAGS and LDFLAGS variables to CPPFLAGS and LDFLAGS.
+	From Benjamin Lindner <lindnerb@users.sourceforge.net>.
+
+2009-08-17  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (OCTINTERP_LINK_DEPS): List $(LIBS) last.
+
+2009-08-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makefile.in (OCTINTERP_LINK_DEPS): Include $(LIBCRUFT) and
+	$(LIBS) in the list.
+	(OCT_LINK_DEPS): Include $(LIBOCTAVE) and $(LIBCRUFT) in the list.
+	(eigs.oct, qz.oct): Add $(BLAS_LIBS) to LDFLAGS.
+	(ccolamd.oct, symbfact.oct): Add library-specific CPPFLAGS and
+	LDFLAGS variables to CPPFLAGS and LDFLAGS.
+
+2009-08-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.h, ov-struct.cc: Revert to e08d72bb988e.
+	* ov-class.h, ov-class.cc: Partially revert to e08d72bb988e.
+	(octave_class::subsasgn): Cut&paste code from octave_struct::subsasgn
+	for the nested dot indexing.
+	* ov-usr-fcn.cc (Voptimize_subasgn_calls): Default to true.
+
+2009-08-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw.cc: Update for new FFTW
+	defines.
+
+	* Makefile.in (amd.oct, colamd.oct, dmperm.oct, symcrm.oct,
+	qr.oct, fft.oct, fft2.oct, fftn.oct, fftw.oct): Add
+	library-specific CPPFLAGS and LDFLAGS variables to CPPFLAGS
+	and LDFLAGS.
+	* oct-conf.h.in: New #defines for GLPK_CPPFLAGS, GLPK_LDFLAGS,
+	AMD_CPPFLAGS, AMD_LDFLAGS, CAMD_CPPFLAGS, CAMD_LDFLAGS,
+	CCOLAMD_CPPFLAGS, CCOLAMD_LDFLAGS, CHOLMOD_CPPFLAGS,
+	CHOLMOD_LDFLAGS, COLAMD_CPPFLAGS, COLAMD_LDFLAGS,
+	CXSPARSE_CPPFLAGS, CXSPARSE_LDFLAGS, FFTW3_CPPFLAGS,
+	FFTW3_LDFLAGS, FFTW3_LIBS, FFTW3F_CPPFLAGS, FFTW3F_LDFLAGS, and
+	FFTW3F_LIBS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.h (octave_class): Derive from octave_struct.
+	(octave_class::octave_class): Update all constructors.
+	(octave_class::numeric_conv, octave_class::byte_size, octave_class::numel, octave_class::nfields,
+	octave_class::reshape, octave_class::resize, octave_class::is_defined,
+	octave_class::map_value): Remove methods (inherit).
+	* ov-class.h (octave_class::obsolete_copies): New field.
+	Init to 0 in all constructors.
+	(octave_class::unique_clone): New decl.
+	* ov-class.cc (octave_class::unique_clone): Fake clone if all
+	remaining copies are obsolete.
+	(octave_class::subsref): Share code with octave_struct::subsref.
+	(octave_class::subsref (..., bool auto_add)): New method.
+	(octave_class::subsasgn): If plausible, attempt to
+	optimize the method call by marking appropriate number of copies
+	obsolete. Share code with octave_struct::subsasgn.
+	(octave_class::dotasgn): New method override.
+	* ov-struct.h (octave_struct::dotref): New virtual overload.
+	(octave_struct::dotasgn): New virtual method decl.
+	* ov-struct.cc (octave_struct::dotasgn): New virtual method.
+	* ov-usr-fcn.h (octave_user_function::num_args_passed,
+	octave_user_function::saved_args): Remove fields. Wipe from all
+	constructor lists.
+	(octave_user_function::save_args_passed,
+	octave_user_function::restore_args_passed): Remove methods.
+	(octave_user_function::all_va_args): Update decl.
+	(octave_user_function::subsasgn_optimization_ok): New method decl.
+	* ov-usr-fcn.cc (octave_user_function::all_va_args): Rename from
+	octave_all_va_args, take args as a parameter.
+	(octave_user_function::subsasgn_optimization_ok): New method.
+	(octave_user_function::do_multi_index_op): Simplify.
+
+2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::count): Declare as octave_idx_type.
+	(octave_base_value::octave_base_value (const octave_base_value&)):
+	Initialize count to 1.
+	(octave_base_value::unique_clone ()): New method.
+	(octave_base_value::print_with_name): Declare as non-const.
+	* ov-base.cc (octave_base_value::print_with_name): Update.
+	* ov.h (octave_value::make_unique (void)): Don't set rep->count.
+	Call unique_clone.
+	(octave_value::make_unique (int)): Don't set rep->count.
+	Call unique_clone.
+	(octave_value::octave_value (const octave_base_value *)): Declare
+	as private.
+	* ov-class.cc (octave_class::print_with_name): Avoid using clone ().
+	* ov-class.h (octave_class::print_with_name): Declare as non-const.
+
+2009-08-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Consistently add library-specific CPPFLAGS and
+	LDFLAGS variables to CPPFLAGS and LDFLAGS for .oct files that need
+	them.  Also add X11_FLAGS to CPPFLAGS for display.d display.df and
+	pic/display.o.
+
+	* oct-conf.h.in: New #defines for QHULL_CPPFLAGS, QHULL_LDFLAGS,
+	CURL_CPPFLAGS, and CURL_LDFLAGS.
+	* toplev.cc (octave_config_info): Include them in the list.
+
+2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Include LDFLAGS when linking shared executable.
+
+2009-08-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fissorted, F__sort_rows_idx__, Fnorm): Mark as Built-in
+	Functions in the inline help.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fftw.cc (Ffftw): Update for octave_fftw_planner
+	and octave_float_fftw_planner as singleton objects.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: Use READLINE_LIBS instead of LIBREADLINE.
+	New #defines for TERM_LIBS and DL_LIBS.
+	* toplev.cc (octave_config_info): Add TERM_LIBS and DL_LIBS to the
+	struct.  Use READLINE_LIBS instead of LIBREADLINE.
+
+2009-08-11  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in: New #defines for AMD_LIBS, ARPACK_LIBS,
+	CAMD_LIBS, CCOLAMD_LIBS, CHOLMOD_LIBS, COLAMD_LIBS, CXSPARSE_LIBS,
+	FT2_LIBS, GRAPHICS_LIBS, HDF5_LIBS, OPENGL_LIBS, PTHREAD_CFLAGS,
+	PTHREAD_LIBS, QHULL_LIBS, QRUPDATE_LIBS, REGEX_LIBS, UMFPACK_LIBS,
+	ZLIB_LIBS.
+
+	* toplev.cc (octave_config_info): Include them in the struct.
+
+2009-08-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fdiff): New built-in function.
+	(do_diff): New assistant function.
+
+2009-08-10  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Perform tilde expansion on
+	filename argument.
+
+2009-08-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (out_of_date_check): Remove overloads. Add check_relative
+	parameter.
+	(out_of_date_check_internal): Remove.
+	* symtab.h: Update.
+	* ov-fcn-handle.cc (octave_fcn_handle::do_index_op): Call
+	out_of_date_check with check_relative = false.
+
+2009-08-09  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Fevalin): Also return output from CATCH expression.
+
+2009-08-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fifelse): Rename to Fmerge, alias to Fifelse.
+
+2009-08-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-dm-template.cc, OPERATORS/op-pm-template.cc:
+	Also define conversions for null string and null sq_string.
+
+2009-08-06  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-cdm-m.cc, OPERATORS/op-dm-m.cc, OPERATORS/op-pm-m.cc:
+	Define LDMATRIX and DEFINENULLASSIGNCONV.
+	* OPERATORS/op-dm-template.cc, OPERATORS/op-pm-template.cc:
+	Include ov-null-mat.h and define assignment conversion for null
+	matrices if DEFINENULLASSIGNCONV is defined.  Define OCTAVE_LDMATRIX.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* pt-eval.cc (tree_evaluator::visit_complex_for_command):
+	Use key_list order for iterating through map.
+
+	* Makefile.in (OCT_LINK_DEPS): Also include $(RLD_FLAG) in the list.
+
+2009-08-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (octave$(EXEEXT)): Clean up link flags and library list.
+	(OCTINTERP_LINK_DEPS): Omit -L../libcruft $(LIBCRUFT) $(LIBS)
+	$(FLIBS) from the list.  Include $(RLD_FLAG) in the list.
+	(OCT_LINK_DEPS): Only include -L. $(LIBOCTINTERP) in the list.
+
+2009-08-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* utils.cc (Fisindex): New DEFUN.
+
+2009-08-04  Kristian Rumberg  <kristianrumberg@gmail.com>
+
+	* input.cc (is_completing_dirfns): New function.
+	(generate_completion): Use it to selectively complete file names.
+
+2009-08-04  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (Fdbwhere): Call octave_call_stack::goto_frame_relative
+	to move to user code frame.  Get line and column information from
+	call stack.
+	* input.cc (Fkeyboard): Don't pass verbose flag to
+	octave_call_stack::goto_frame_relative.
+	(get_debug_input): Get line and column information from call stack.
+
+	* pt-eval.h, pt-eval.cc (tree_evaluator::debug_line,
+	tree_evaluator::debug_column, tree_evaluator::db_line,
+	tree_evaluator::db_column): Delete.
+	* pt-eval.cc (tree_evaluator::do_breakpoint): Don't print function
+	name and location info here.  Delete line and column number args.
+	Change all callers.
+
+	* toplev.h (octave_call_stack::do_current,
+	octave_call_stack::do_current_statement): New functions.
+	(octave_call_stack::current): Call do_current, not top.
+	(octave_call_stack::current_statement): Call do_current_statement,
+	not top_statement.
+	(octave_call_stack::top, octave_call_stack::top_statement,
+	octave_call_stack::do_top, octave_call_stack::do_top_statement):
+	Delete.
+
+2009-08-04  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_call_stack::do_goto_frame_relative): Allow
+	NSKIP to be 0.  Set current scope and context.
+	* input.cc (Fkeyboard): Use octave_call_stack::goto_frame_relative
+	to set scope in user code that called the keyboard function.
+
+2009-08-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* input.cc (Fkeyboard): Only call do_keyboard, don't fiddle with
+	stack.
+
+2009-08-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sub2ind.cc: New source.
+	* Makefile.in: Include it.
+	* ov-range.h (octave_range::octave_range (const Range&, const
+	idx_vector&)): New constructor.
+	* ov-re-mat.h (octave_matrix::octave_matrix (const NDArray&, const
+	idx_vector&)): New constructor.
+	* ov.cc (octave_value::octave_value (const idx_vector&)): New
+	constructor.
+	* ov.h: Declare it.
+
+2009-07-30  Ryan Rusaw  <rrusaw@gmail.com>
+
+	* input.cc (reading_classdef_file): New file-scope variable.
+	(gnu_readline): Also set curr_stream if reading_classdef_file.
+	(octave_gets, get_input_from_file):
+	Handle classdef files like other input files.
+	* input.h (reading_classdef_file): Provide decl.
+
+	* octave.gperf (classdef, endclassdef, endevents, endmethods,
+	endproperties, events, get, methods, properties, set): New keywords.
+
+	* lex.l: Handle classdef filees like other input files.
+	Recognize superclass method identifiers and metaclass query constructs.
+	(is_keyword_token): Recognize endclassdef, endevents, endmethods,
+	endproperties, get, set, properties, methods, and events keywords.
+	(maybe_classdef_get_set_method, parsing_classdef): New variables.
+	(handle_superclass_identifier, handle_meta_identifier):
+	New static functions.
+	(lexical_feedback::init): Initialize parsing_classdef and
+	maybe_classdef_get_set_method.
+	(display_token): Handle SUPERCLASSREF, METAQUERY, GET, SET,
+	PROPERTIES, METHODS, EVENTS, and  CLASSDEF tokens.
+	* lex.h (maybe_classdef_get_set_method, parsing_classdef):
+	Provide decls.
+	* parse.y (%union): New placeholder type, dummy_type.
+	(SUPERCLASSREF, METAQUERY, GET, SET, PROPERTIES, METHODS, EVENTS,
+	CLASSDEF): New tokens.
+	(superclass_identifier, meta_identifier, classdef_beg,
+	classdef_end, classdef1, classdef, opt_attr_list, attr_list, attr,
+	opt_superclasses, superclasses, class_body, properties_beg,
+	properties_block, properties_list, class_property, methods_beg,
+	methods_block, methods_list, events_beg, events_block,
+	events_list, class_event): New non-terminals.
+	(primary_expr): Include superclass_identifier and meta_identifier
+	as possible primary_exprs.
+	(function_beg): If parsing classdef file, set
+	lexer_flags.maybe_classdef_get_set_method to true.
+	be recognized.
+	(fcn_name): Accept GET '.' identifier or SET '.' identifier.
+	(end_error): Handle endclassdef.
+	(looking_at_classdef_keyword): New function.
+	(gobble_leading_whitespace): Handle classdef.
+	* token.h, token.cc (sc, mc):
+	New union fields for symbol classdef symbol_record info.
+	(token::token (symbol_table::symbol_record *,
+	symbol_table::symbol_record *, int, int),
+	token::token (symbol_table::symbol_record *,
+	symbol_table::symbol_record *, symbol_table::symbol_record *, int,
+	int)): New constructors.
+	(token::method_rec, token::class_rec, token::package_rec,
+	token::meta_class_rec, token::meta_package_rec): New methods.
+	(token_type): New enum values: scls_rec_token, meta_rec_token.
+	(end_tok_type): New enum values: classdef_end, events_end,
+	methods_end, properties_end.
+
+2009-07-30  David Grundberg  <individ@acc.umu.se>
+
+	* symtab.h (symbol_table::parent_scope): Remove.
+	(symbol_table::set_parent_scope): Remove.
+	(symbol_table::reset_parent_scope): Remove.
+	(symbol_table::install_subfunction): Require scope parameter
+	instead of xparent_scope default.
+	* symtab.cc: Remove symbol_table::xparent_scope
+	* lex.h (lexical_feedback::parsing_nested_function): Remove.
+	* lex.l	(is_keyword_token): Don't ignore endfunctions.
+	(prep_lexer_for_script_file): Renamed from prep_lexer_for_script.
+	(prep_lexer_for_function_file): New function.
+	(display_token): Display SCRIPT_FILE and FUNCTION_FILE.
+	(display_state): Display FUNCTION_FILE_BEGIN
+	(FUNCTION_FILE_BEGIN): New state.
+	(NESTED_FUNCTION_END, NESTED_FUNCTION_BEGIN): Remove states.
+	(prep_for_function, prep_for_nested_function): Remove functions.
+	* parse.h: Remove extern declaration parent_function_name,
+	end_tokens_expected.
+	* parse.y: Add variables current_function_depth,
+	max_function_depth, parsing_subfunctions, seen_endfunction. Remove
+	parent_function_name. Rename curr_fcn_ptr to primary_fcn_ptr. Add
+	token FUNCTION_FILE. Rename token SCRIPT to SCRIPT_FILE.
+	(function_file): New rule.
+	(input): Accept function_file.
+	(script_file): Rule renamed from script.
+	(function_file): New rule.
+	(function_list): New rule.
+	(push_fcn_symtab): Parse nested functions.
+	(fcn_name): Remove parent_function_name.
+	(function_end): Use seen_endfunction. New error messages.
+	(make_script): Use primary_fcn_ptr.
+	(frob_function): Simplify control structures. Don't use
+	symbol_table::parent_scope.
+	(push_fcn_symtab, function_end, frob_function, finish_function):
+	Use current_function_depth instead of
+	lexical_feedback::parsing_nested_function.
+	(make_return_command): Use current_function_depth instead of
+	lexical_feedback::defining_func.
+	(make_break_command, make_decl_command, maybe_warn_missing_semi):
+	Ditto
+	(parse_fcn_file): Warn when nested functions have been
+	declared. Remove superfluous local variables. Parse function files
+	using function_file rule.
+
+2009-07-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fmerge): Rename to Fifelse.
+
+2009-07-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fmerge): New DEFUN.
+	(do_merge): New helper function.
+
+2009-07-29  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (param_list_end): Also set
+	lexer_flags.looking_for_object_index to false.
+
+	* ov-float.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
+	ov-scalar.cc: Use complex function for acos mapper if arg is out
+	of range [-1, 1].
+
+	* ov-bool.cc (octave_bool::load_ascii): Call template function to
+	read value.
+	* ov-scalar.cc (octave_scalar::load_ascii): Likewise.
+	* ov-complex.cc (octave_complex::load_ascii): Likewise.
+	* ov-float.cc (octave_float_scalar::load_ascii): Likewise.
+	* ov-flt-complex.cc (octave_float_complex::load_ascii): Likewise.
+	* ls-mat-ascii.cc (read_mat_ascii_data): Likewise.
+
+	* ov-re-sparse.cc (octave_sparse_matrix::load_binary,
+	octave_sparse_matrix::load_hdf5): Perform sanity check on indices.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::load_binary,
+	octave_sparse_complex_matrix::load_hdf5): Likewise.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::load_binary,
+	octave_sparse_bool_matrix::load_hdf5): Likewise.
+
+2009-07-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op):
+	Cache lookups also for classes.
+
+2009-07-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Support auto-expanding scalar
+	cells.
+
+2009-07-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::xfind,
+	symbol_table::fcn_info::fcn_info_rep::find,
+	symbol_table::fcn_info::fcn_info_rep::find_function,
+	symbol_table::fcn_info::find,
+	symbol_table::fcn_info::find_function,
+	symbol_table::find, symbol_table::do_find,
+	symbol_table::find_function):
+	Add local_funcs parameter.
+	* symtab.h: Update decls.
+	* ov-fcn-handle.cc (make_fcn_handle): Add local_funcs parameter.
+	* ov-fcn-handle.h: Update decls.
+
+2009-07-24  John W. Eaton  <jwe@octave.org>
+
+	* pt-mat.cc (DO_SINGLE_TYPE_CONCAT_NO_MUTATE): New macro.
+	(tree_matrix::rvalue1): Use it to avoid complex -> real conversion.
+
+2009-07-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCIONS/cellfun.cc (Fcellfun): Avoid double error messages.
+
+2009-07-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-path.cc (load_path::do_any_class_method): New method.
+	* load-path.h (load_path::do_any_class_method): New method decl.
+	(load_path::any_class_method): New method.
+	* ov-fcn-handle.cc (octave_fcn_handle::do_multi_index_op): Support
+	calls without non-overloaded base function.
+	(make_fcn_handle): Support creation without non-overloaded base
+	function.
+
+2009-07-23  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::pixel2axes_or_ca):
+	Replace plot_window::pixel2axes and use algorithm from octavede.
+	(plot_window::handle): Zooming now works on the axes below the
+	mouse pointer instead of the current axes. Combine old and new
+	zooming methods.
+	(help_text): Update to reflect new mouse/key bindings.
+
+2009-07-23  Soren Hauberg  <hauberg@gmail.com>
+
+	* graphics.cc (axes::properties::zoom_about_point,
+	axes::properties::translate_view): New functions.
+	(axes::properties::zoom): make zoom_stack usage optional.
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::handle): Use new
+	zoom API.
+
+2009-07-23  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (safe_symbol_lookup): New function.
+	(symbol_exist): Use it.
+
+2009-07-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/chol.cc (Fcholupdate,
+	Fcholinsert, Fcholdelete, Fcholshift): Replace is_matrix_type ->
+	is_numeric_type.
+
+2009-07-23  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (IGNORE_EXCEPTION, SAFE_CALL): New macros.
+	(clean_up_and_exit, do_octave_atexit): Use SAFE_CALL to handle
+	exceptions while preparing to exit.
+
+2009-07-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (get_dispatch_type): Omit first-arg dispatch, export.
+	* symtab.h (get_dispatch_type): Provide decl.
+	* ov-fcn-handle.h (octave_fcn_handle::warn_reload): Delete.
+	(octave_fcn_handle::disp): New field.
+	(octave_fcn_handle::str_ov_map): New typedef.
+	(octave_fcn_handle::octave_fcn_handle (..., str_ov_map *)): New
+	constructor.
+	(octave_fcn_handle::do_multi_index_op): New method decl.
+	(octave_fcn_handle::is_overloaded): New method.
+	* ov-fcn-handle.cc
+	(octave_fcn_handle::do_multi_index_op): New method.
+	(octave_fcn_handle::subsref): Rewrite using do_multi_index_op.
+	(octave_fcn_handle::make_fcn_handle): Construct overloaded handles if
+	appropriate.
+	(Ffunctions): Indicate (statically) overloaded handles.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Update & modernize.
+	* DLD-FUNCTIONS/bsxfun.cc (Fbsxfun): Ditto.
+
+2009-07-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symbol_table::find,
+	symbol_table::find_function,
+	symbol_table::symbol_record::find,
+	symbol_table::fcn_info::find,
+	symbol_table::fcn_info::fcn_info_rep::find,
+	symbol_table::fcn_info::fcn_info_rep::xfind): Simplify argument lists.
+	* symtab.h: Update declarations.
+	* pt-id.cc (tree_identifier::rvalue): Simplify.
+	* pt-id.h (tree_identifier::do_lookup): Simplify.
+	* pt-idx.cc (tree_index_expression::rvalue): Update.
+	* variables.cc (symbol_exist): Update.
+
+2009-07-21  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::builtin_find,
+	symbol_table::do_builtin_find,
+	symbol_table::fcn_info::builtin_find,
+	symbol_table::fcn_info::fcn_info_rep::builtin_find,
+	symbol_table::fcn_info::fcn_info_rep::x_builtin_find): New functions.
+	* symtab.h: Provide decls.
+	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Call
+	symbol_table::builtin_find instead of symbol_table::find_function.
+
+2009-07-20  Aleksej Saushev  <asau@inbox.ru>
+
+	* sysdep.cc: Also define BSD_init if __NetBSD__ is defined.
+	(sysdep_init): Also call BSD_init if __NetBSD__ is defined.
+
+2009-07-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* bitfcns.cc (DO_UBITSHIFT): Avoid overflow.
+	(DO_SBITSHIFT): Fix mask calculation.
+
+2009-07-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_read__):
+	Determine correct number of bits required when reading images.
+
+2009-07-16  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (get_array_limits): Require min_pos value to be
+	greater than zero.
+
+2009-07-15  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* DLD-FUNCTIONS/filter.cc: New tests.
+
+2009-07-09  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fones, Fzeros, Ftrue, Ffalse): Update docstrings.
+
+2009-07-08  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (convert_cdata): Return NaN for NaN values in cdata.
+
+	* pt-assign.cc (maybe_warn_former_built_in_variable): Improve message.
+
+2009-07-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-eval.cc (do_unwind_protect_cleanup_code): Add missing
+	unwind_protect::run.
+
+2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* help.cc (do_which): Also look for files.
+
+2009-07-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.cc (Cell::index): Use proper resize_fill_value.
+
+2009-07-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (symbol_table::get_fcn_info): New private static method.
+	(symbol_record_rep::finfo): New field.
+	* symtab.cc (symbol_record::find): Use cached finfo if possible,
+	cache on successful queries.
+
+2008-07-01  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (static inline std::string rational_approx (double,
+	int)): Test for underflow of fractional part of rational approximation
+	earlier in the loop.
+
+2009-07-01  Joe Rothweiler  <octaveuser@sensicomm.com>
+
+	* input.cc (raw_mode): Use TCSADRAIN if no wait.
+
+2009-06-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (force_variable): Remove assertion.
+
+2009-06-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makefile.in (INCLUDES): Install txt-eng.h and txt-eng-ft.h.
+	* gl-render.cc (opengl_renderer::draw_text): Fix bitmap offset
+	computation for 90x rotated text.
+	* txt-eng-ft.cc (ft_render::render): Compute bitmap pixels correctly
+	for 90x rotated text.
+
+	* gl-render.cc (opengl_renderer::draw(text::properties)): Don't do
+	anything if the bitmap data is empty. Issue a warning instead of
+	an error if Freetype library is not available.
+	* txt-eng-ft.cc (ft_manager::do_get_font): Small change in error
+	string (add prefix).
+	(ft_render::render): Don't do anything if the bitmap data is empty.
+
+2009-06-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (erase_scope (void *)): Remove overload.
+
+2009-06-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* txt-eng.h: New file for simple text engine.
+	* txt-eng.h, txt-eng.cc: Freetype based text render engine.
+	* Makefile.in: Add txt-eng-ft.cc to list of source files.
+	* gl-render.h (opengl_renderer::draw_text, opengl_renderer::set_font,
+	opengl_renderer::draw(text::properties)): New method to support text
+	rendering using the Freetype renderer.
+	(opengl_renderer::text_renderer): New field for text rendering.
+	* gl-render.cc (opengl_renderer::draw(graphics_object)): Support text
+	object.
+	(opengl_renderer::draw(figure::properties)): Setup alpha test.
+	(opengl_renderer::draw(axes::properties)): Render tick labels, hide
+	labels for depth axes and fix a problem in calling
+	graphics_object::get(char*).
+	(opengl_renderer::draw(text::properties)): Basic text rendering using
+	Freetype engine.
+	(opengl_renderer::draw_text): Ditto.
+	(opengl_renderer::set_color): Propagate the color to the text
+	renderer.
+	(opengl_renderer::set_font): New utility method.
+	* graphics.cc (axes::properties::init, axes::properties::set_defauls):
+	(Re)initialize tick labels, labels and title property.
+
+2009-06-26  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (Faddpath): Preserve order of prepended elements.
+
+2009-06-25  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (gh_manager::restore_gcbo):
+	Arg is now void, not void*.
+
+2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind-prot.h (unwind_protect::fcn_elem): New class.
+	(unwind_protect::fcn_arg_elem): New class.
+	(unwind_protect::method_elem): New class.
+	(unwind_protect::add_action_var): Rename to add_fcn.
+	(unwind_protect::add_fcn): New static method.
+	(unwind_protect::add_method): New static method.
+
+	* symtab.h: Split clear_variables into two overloads.
+	* toplev.h (octave_call_stack::restore_frame): New static method.
+
+	* graphics.cc: Update unwind_protect usage.
+	* input.cc: Ditto.
+	* lex.h: Ditto.
+	* ls-mat5.cc: Ditto.
+	* mex.cc: Ditto.
+	* ov-builtin.cc: Ditto.
+	* ov-fcn-handle.cc: Ditto.
+	* ov-mex-fcn.cc: Ditto.
+	* ov-usr-fcn.cc: Ditto.
+	* parse.y: Ditto.
+	* pt-eval.cc: Ditto.
+	* toplev.cc: Ditto.
+	* variables.cc: Ditto.
+
+2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* input.cc: Use unwind_protect::add_action_var where appropriate.
+	* ls-mat5.cc: Ditto.
+	* ov-fcn-handle.cc: Ditto.
+	* parse.y: Ditto.
+	* toplev.cc: Ditto.
+	* variables.cc: Ditto.
+
+2009-06-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind-prot.h (unwind_protect::elem): New polymorphic class.
+	(unwind_protect::restore_var): Remove.
+	(unwind_protect::restore_mem): Remove.
+	(unwind_protect::elt_list): Update.
+	(unwind_protect::add (elem *)): New method.
+	(unwind_protect::add (void (*)(void *), void *)): Reimplement.
+	(unwind_protect::run (void)): Rewrite.
+	(unwind_protect::discard (void)): Rewrite.
+	(unwind_protect::protect_var): Rewrite.
+	(unwind_protect::protect_mem): Rewrite.
+	(unwind_protect::add_action_var): New method.
+	* unwind-prot.cc (unwind_protect::restore_mem): Remove.
+
+2009-06-24  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* oct-map.cc (Octave_map::squeeze, Octave_map::permute,
+	Octave_map::transpose, Octave_map::reshape, Octave_map::concat,
+	Octave_map::index): Add tests for preservation of key order in
+	struct arrays.
+
+2009-06-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (get_concat_class): Use empty string as zero value.
+	(tm_row_const_rep::tm_row_const_rep): Initialize class_nm to empty
+	string.
+	(tm_const::tm_const): Ditto.
+
+2009-06-24  John W. Eaton  <jwe@octave.org>
+
+	* pt-assign.cc (former_built_in_variables): Remove "ans" from the list.
+
+2009-06-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind-prot.h (restore_var, restore_mem): Hide also copy
+	constructors.
+
+2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* quit.h (octave_quit_exception): Delete.
+	(exit_status, quitting_gracefully): New globals.
+	* quit.cc: Initialize them.
+	(Fquit): Set the globals, simulate interrupt.
+	(main_loop): Handle exit properly.
+	* octave.cc (execute_eval_option_code): Ditto.
+	(execute_command_line_file): Ditto.
+	* pt-eval.cc (do_unwind_protect_cleanup_code):
+	Fix order of unwind_protect calls.
+
+2009-06-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::squeeze, Octave_map::permute,
+	Octave_map::transpose, Octave_map::reshape, Octave_map::concat):
+	Preserve key order.
+
+2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-eval.cc (tree_evaluator::visit_try_catch_command): Simplify.
+
+2009-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc: Modernize unwind_protect usage.
+	* DLD-FUNCTIONS/daspk.cc: Ditto.
+	* DLD-FUNCTIONS/dasrt.cc: Ditto.
+	* DLD-FUNCTIONS/dassl.cc: Ditto.
+	* DLD-FUNCTIONS/eigs.cc: Ditto.
+	* DLD-FUNCTIONS/lsode.cc: Ditto.
+	* DLD-FUNCTIONS/quad.cc: Ditto.
+	* DLD-FUNCTIONS/rand.cc: Ditto.
+	* debug.cc: Ditto.
+	* dynamic-ld.cc: Ditto.
+	* error.cc: Ditto.
+	* graphics.cc: Ditto.
+	* help.cc: Ditto.
+	* input.cc: Ditto.
+	* load-path.cc: Ditto.
+	* ls-mat4.cc: Ditto.
+	* ls-mat5.cc: Ditto.
+	* mex.cc: Ditto.
+	* oct-hist.cc: Ditto.
+	* octave.cc: Ditto.
+	* ov-builtin.cc: Ditto.
+	* ov-class.cc: Ditto.
+	* ov-fcn-handle.cc: Ditto.
+	* ov-list.cc: Ditto.
+	* ov-mex-fcn.cc: Ditto.
+	* ov-struct.cc: Ditto.
+	* ov-usr-fcn.cc: Ditto.
+	* pager.cc: Ditto.
+	* pr-output.cc: Ditto.
+	* pt-arg-list.cc: Ditto.
+	* pt-eval.cc: Ditto.
+	* toplev.cc: Ditto.
+	* variables.cc: Ditto.
+
+2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* unwind-prot.h (unwind_protect): Rewrite.
+	(unwind_protect::protect_var): New class.
+	(unwind_protect::protect_mem): New class.
+	* unwind-prot.cc (unwind_protect): Rewrite.
+	* pt-eval.cc (tree_evaluator::visit_try_catch_command): Delete frame
+	properly.
+
+2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::all_strings): Avoid duplicate conversions.
+
+2009-06-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (Fsubsasgn): Uniquify shared value before assigning to it.
+
+2009-06-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc: Update docs.
+
+2009-06-17  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_octave_value::get_data):
+	If octave_value::mex_get_data returns a valid pointer, mark it as
+	foreign and return it instead of enumerating the types that can be
+	handled directly.
+
+	* ov-re-mat.h (octave_matrix::mex_get_data): New function.
+	* ov-bool-mat.h (octave_bool_matrix::mex_get_data): Ditto.
+	* ov-flt-re-mat.h (octave_float_matrix::mex_get_data): Ditto.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::mex_get_data): Ditto.
+	* ov-base-mat.h (octave_base_matrix::mex_get_data): Delete.
+
+2009-06-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (symbol_table::set_scope_and_context): Avoid checking
+	error_state for setting context.
+
+2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.h (octave_matrix::octave_matrix (const Array<octave_idx_type>&,
+	bool)): New constructor.
+	* ov.cc (octave_value::octave_value (const Array<octave_idx_type>&,
+	bool)): New constructor.
+	* ov.h: Declare it.
+
+	* data.cc (Fsort, F__sort_rows_idx__): Use the new constructor.
+	* DLD-FUNCTIONS/find.cc (Ffind): Ditto.
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Ditto.
+	* DLD-FUNCTIONS/max.cc (Fmax, Fmin, Fcummax, Fcummin): Ditto.
+
+2009-06-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.h (octave_base_matrix::idx_cache): New member field.
+	(octave_base_matrix::typ): Turn to MatrixType *.
+	(octave_base_matrix::octave_base_matrix (...)): Update constructors.
+	(octave_base_matrix::clear_cached_info,
+	octave_base_matrix::set_idx_cache): New member functions.
+	* ov-base-mat.cc (octave_base_matrix::assign,
+	octave_base_matrix::delete_elements): Call clear_cached_info here.
+	* ov-re-mat.h (octave_matrix::index_vector): Use idx_cache.
+	* ov-flt-re-mat.h (octave_float_matrix::index_vector): Ditto.
+	* ov-bool-mat.h (octave_bool_matrix::index_vector): Ditto.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::index_vector): Ditto.
+	* ov-range.h (octave_range::idx_cache): New member field.
+	(octave_range::octave_range (...)): Update constructors.
+	(octave_range::clear_cached_info,
+	octave_base_matrix::set_idx_cache): New member functions.
+	(octave_range::idx_vector): Use idx_cache.
+
+2009-06-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (axes::properties::xtick, axes::properties::ytick,
+	axes::properties::ztick, axes::properties::xticklabelmode,
+	axes::properties::yticklabelmode, axes::properties::zticklabelmode):
+	Add 'u' modifier to enable updaters.
+	(axes::properties::calc_ticklabels): New function to update tick
+	labels.
+	(axes::properties::update_xtick, axes::properties::update_ytick,
+	axes::properties::update_ztick,
+	axes::properties::update_xticklabelmode,
+	axes::properties::update_yticklabelmode,
+	axes::properties::update_zticklabelmode): Add updaters to update tick
+	labels correctly.
+	(axes::properties::update_xlim, axes::properties::update_ylim,
+	axes::properties::update_zlim): Update tick labels.
+	* graphics.cc (axes::properties::calc_ticklabels): New function to
+	update tick labels.
+
+2009-06-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Support character array lookup.
+
+2009-06-12  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (make_fcn_handle): Accept operators which have
+	corresponding functions and make function handles using the names.
+	New test.
+
+2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (do_numeric_lookup): New template function.
+	(Flookup): Extend to support b and m options, improve diagnostic.
+	Refactor.
+
+2009-06-12  Kai NODA  <nodakai@gmail.com>
+
+	* ls-mat4.h: Fix include guard
+	* ov-type-conv.h: Add missing include guard.
+
+2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (BINARY_ASSOC_OP_DEFUN_BODY): New helper macro.
+	(Fplus, Fmtimes, Ftimes, Fand, For): Allow >= 1 arguments.
+
+2009-06-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::sort (Array<octave_idx_type>&)): Simplify.
+
+2009-06-11  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc: Keep long options alphabetized.
+
+	* display.h (display_info::no_window_system): New static function.
+	(display_info::display_info, display_info::init,
+	display_info::instance_ok): New argument, QUERY.
+	(display_info::init): Skip query if QUERY is false.
+
+	* octave.cc (long_opts, octave_main): Handle --no-window-system option.
+	(NO_WINDOW_SYSTEM_OPTION): New defined value.
+	(usage_string, verbose_usage): Mention --no-window-system option.
+
+2009-06-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-class.cc (octave_class::subsref): Set up proper nargout for call to subsref
+	method.
+	* ov-class.cc (octave_class::subsref): Unpack cs-list and setup nargin
+	for call to subsasgn.
+
+2009-06-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.cc (octave_base_value::numel (const octave_value_list&),
+	octave_base_value::size): New virtual methods.
+	* ov-base.h: Declare them.
+	* ov.h (octave_value::numel (const octave_value_list&)): New method.
+	(octave_value::size): Forward to octave_base_value.
+	* ov-class.cc (octave_class::numel (const octave_value_list&),
+	octave_base_value::size): New method overrides.
+	* ov-class.h: Declare them.
+	* pt-idx.cc (tree_index_expression::lvalue): Rewrite.
+	* data.cc (Fnumel): Allow indexed query.
+
+2009-06-10  John W. Eaton  <jwe@octave.org>
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::dup): Don't convert to
+	tree_constant object here.  Do inherit from current symbol table
+	scope and context.  New test.
+
+	* lex.l	(handle_identifier): Set lexer_flags.looking_for_object_index
+	false if identifier is a keyword.
+	({IDENT}{S}*): Don't set lexer_flags.looking_for_object_index here.
+
+2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* octave.cc (octave_main): Call initialize_command_input
+	conditionally. Move line_editing update in front of it.
+	Call command_editor::force_default_editor if not line_editing.
+
+2009-06-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Flog2): Fix tests.
+
+2009-06-08  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_exist): Returnn 1 for function handles and
+	inline function objects.
+
+2009-06-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.h (symbol_table::do_clear_global,
+	symbol_table::do_clear_global_pattern): Properly erase from both local
+	and global table.
+
+2009-06-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (Fclear): Clear also globals when called without
+	arguments.
+
+2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* graphics.cc (color_property::do_set): Allow a wider range of types.
+
+2009-06-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Fix docs. Improve second argument
+	handling. Add regression tests.
+
+2009-06-06  Rik  <rdrider0-list@yahoo.com>
+
+	* data.cc: Update documentation for 'complex' function
+
+2009-06-06  Rik  <rdrider0-list@yahoo.com>
+
+	* load-save.cc: Update documentation for NA and isna functions
+
+2009-06-06  Rik  <rdrider0-list@yahoo.com>
+
+	* load-save.cc: Update documentation for load and save
+
+2009-06-06  Rik  <rdrider0-list@yahoo.com>
+
+	* pr-output.cc: Update documentation for 'format'
+
+2009-06-05  Rik  <rdrider0-list@yahoo.com>
+
+	* variables.cc: Update documentation for 'who' family of functions
+
+2009-06-03  Rik  <rdrider0-list@yahoo.com>
+
+	* input.cc: Correct documentation for keyboard function
+
+2009-06-02  Rob Mahurin  <rob@utk.edu>
+
+	* Makefile.in: Add CARBON_LIBS to OCTINTERP_LINK_DEPS.
+	From Bernard Desgraups <bdesgraupes@orange.fr>.
+
+2009-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.cc (octave_base_value::numeric_assign): Gripe when no index
+	given.
+	* ov-cell.cc (octave_cell::subsasgn): Ditto.
+	* ov-struct.cc (octave_struct::subsasgn): Ditto.
+	* ov-list.cc (octave_list::subsasgn): Ditto.
+
+2009-05-28  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_files): Avoid shadow warning from GCC.
+
+2009-05-27  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (write_image):
+	Bail out if given indexed image.
+
+2009-05-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (encode_map): Fix RGB color
+	construction.
+
+2009-05-26  John W. Eaton  <jwe@octave.org>
+
+	* load-path.h, load-path.cc (load_path::files, load_path::do_files):
+	New arg, OMIT_EXTS.
+	* help.cc (F__list_functions__): Call load_path::files with
+	omit_exts set to true.
+
+	* symtab.h
+	(symbol_table::symbol_record::symbol_record_rep::is_variable):
+	Use "! is_local ()" instead of storage_class != local.
+	(symbol_table::do_variable_names): Only add variables to the list.
+	(symbol_table::unmark_forced_variables): New static function
+	* variables.cc (do_who): Use is_variable instead of is_defined.
+	Also limit output to variables when using regexp pattern.
+	* octave.cc (unmark_forced_vars): Delete.
+	(execute_eval_option_code): Don't add unmark_forced_vars to
+	unwind_protect stack here.
+	* toplev.cc (main_loop): Add symbol_table::unmark_forced_variables
+	to the unwind_protect stack here.
+	* input.cc (get_debug_input): Likewise.
+	* parse.y (parse_fcn_file, eval_string): Likewise.
+
+2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* toplev.h (quit_allowed): New global variable.
+	* toplev.cc (quit_allowed): Declare it.
+	(Fquit): Raise error if quitting is not allowed.
+	* octave.cc (octave_main): if running as embedded, disable quit by
+	default.
+
+2009-05-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* variables.cc (do_who): Only output symbols with a defined value.
+
+2009-05-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* toplev.h (main_loop): Tag with OCTINTERP_API.
+	* input.h (octave_read, get_input_from_file, get_input_from_stdin):
+	Ditto.
+	* lex.h (create_buffer, current_buffer, switch_to_buffer,
+	delete_buffer, restore_input_buffer, delete_input_buffer): Ditto.
+
+2009-05-22  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* ov-class.h, ov-class.cc (octave_class::clear_exemplar_map):
+	New function.
+	* symtab.h (symbol_record::clear_objects,
+	symbol_record::do_clear_objects): New functions.
+	* variables.cc (do_matlab_compatible_clear, clear):
+	Handle -classes option.
+
+2009-05-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::assign (const
+	octave_value_list, typename MT::element_type)): Avoid out of bounds
+	assignments.
+
+2009-05-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.cc (figure::properties::get_boundingbox,
+	figure::properties::set_boundingbox): Get screen size from root
+	object.
+	(convert_position): Get screen resolution from root object and remove
+	unneeded "backend" argument.
+	(axes::properties::get_boundingbox,
+	figure::properties::get_boundingbox,
+	figure::properties::set_boundingbox): Remove unneeded backend argument
+	to convert_position call.
+
+	* debug.h (class bp_table): Tag with OCTINTERP_API.
+	* input.h (Vdebugging): Ditto.
+	* pt-eval.h (class tree_evaluator): Ditto.
+	* toplev.h (class octave_call_stack): Ditto.
+
+	* file-io.cc (mkstemp): Add mktemp-based implementation of mkstemp on
+	platforms that do not have it (mkstemp is required by the new help
+	system).
+
+	* TEMPLATE-INST/Array-os.cc: Add "extern template" declaration for
+	Array<octave_idx_type> to avoid implicit instantiation (and duplicate
+	symbols at link-time) [Win32]
+
+2009-05-20  John W. Eaton  <jwe@octave.org>
+
+	* pt-assign.cc (maybe_warn_former_built_in_variable):
+	Set initialized to true when done initializing vars set.
+	From Michael Goffioul  <michael.goffioul@gmail.com>.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-typeinfo.h
+	(octave_value_typeinfo::unary_class_ops,
+	octave_value_typeinfo::unary_ops,
+	octave_value_typeinfo::non_const_unary_ops,
+	octave_value_typeinfo::binary_class_ops,
+	octave_value_typeinfo::binary_ops,
+	octave_value_typeinfo::compound_binary_class_ops,
+	octave_value_typeinfo::compound_binary_ops,
+	octave_value_typeinfo::cat_ops,
+	octave_value_typeinfo::assign_ops,
+	octave_value_typeinfo::assignany_ops,
+	octave_value_typeinfo::pref_assign_conv,
+	octave_value_typeinfo::type_conv_ops,
+	octave_value_typeinfo::widening_ops): Declare as Array<void *>.
+	* ov-typeinfo.cc: Reflect changes.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* toplev.h (octave_exit_func): New typedef.
+	(octave_exit): Change to octave_exit_func.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-typeinfo.cc: Don't include oct-obj.h.
+
+2009-05-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* toplev.h (octave_quit_exception): New class.
+	(octave_exit): New global variable.
+	* toplev.cc (octave_exit): Initialize to ::exit.
+	(clean_up_and_exit): Call octave_exit if set.
+	(Fquit): Raise octave_quit_exception to quit.
+	(main_loop): Catch octave_quit_exception.
+	* octave.cc (execute_command_line_file): Ditto.
+	(execute_eval_option_code): Ditto.
+
+2009-05-19  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (F__fltk_redraw__): New function.
+	(F__init_fltk__): Call add_input_event_hook with feval to add
+	__fltk_redraw__ to the list of even hook functions to call.
+	Call mlock when initializing.
+	(F__remove_fltk__): Call remove_input_event_hook with feval to
+	remove __fltk_redraw__ from the list of event hook functions.
+	Unlock __init_fltk__ when shutting down.
+
+	* input.cc (Finput_event_hook): Delete.
+	(input_event_hook): Handle set of functions instead of just one.
+	(Fadd_input_event_hook, Fremove_input_event_hook): New functions.
+
+2009-05-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in: Add X11_LIBS to OCTINTERP_LINK_DEPS.
+
+2009-05-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* TEMPLATE-INST/Array-tc.cc: Change #include.
+
+2009-05-15  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* ov-class.cc (octave_class::exemplar_info): Fix typo in error message.
+	* ov-class.cc (Fmethods): Methods returns cell array.
+	* ls-mat5.cc (read_mat5_binary_element):
+	Construct exemplar array and ensure inheritance is correct.
+
+2009-05-15  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (Ferror): Handle error struct argument.
+
+	* ls-mat5.cc (save_mat5_binary_element): Avoid multiple calls to
+	contents method.  From David Bateman <dbateman@free.fr>.
+	(save_mat5_element_length): Use const Cell to avoid making copies
+	when indexing.
+
+2009-05-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-stream.cc: Don't instantiate Array2<read_fptr>.
+	(octave_stream::read): Make read_fptr_table a static 2d array.
+	(FILL_TABLE_ROW): Update.
+
+2009-05-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (F__accumarray_sum__): Optimize the constant range case.
+
+2009-05-11  John W. Eaton  <jwe@octave.org>
+
+	* sparse-xdiv.cc (do_rightdiv_sm_dm, do_leftdiv_dm_sm):
+	Avoid apparent MSVC bug with typedef.
+
+	* Makefile.in (install-lib): Remove
+	$(DESTDIR)$(octlibdir)/$(SHLLIBPRE)octinterp.$(SHLLIB_VER), not
+	$(DESTDIR)$(octlibdir)/$(SHLPRE)octinterp.$(SHLEXT_VER).
+
+2009-05-08  Carsten Clark  <tantumquantum+gnuoctave@gmail.com>
+
+	* data.cc (Fissorted): Fix typo in documentation entry.
+
+2009-05-07  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* ov-class.h, ov-class.cc (octave_class::reconstruct_exemplar):
+	New function.
+	* ov-class.cc (octave_class::load_binary, octave_class::load_hdf5,
+	octave_class::load_ascii): Construct exemplar table and ensure
+	inheritance is correct.
+	* ov-struct.cc (struct): Return struct from object.
+
+2009-05-07  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (base_graphics_object::set): Undo previous change.
+	(base_properties::set (const caseless_str&, const octave_value&):
+	New virtual function.
+	(base_properties::set (const caseless_str&, const std::string&,
+	const octave_value&)): No longer virtual.
+
+	* toplev.cc (octave_config_info): Remove F2C and F2CFLAGS from the
+	config infor struct.
+	* oct-conf.h.in (OCTAVE_CONF_F2CFLAGS, OCTAVE_CONF_F2C):
+	Delete definitions.
+
+2009-05-07  Marco Atzeri  <marco_atzeri@yahoo.it>
+
+	* Makefile.in: (SHLPRE): Rename from SHLLIBPRE.
+
+2009-05-07  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk (emit_declarations): Emit decls for static
+	has_property functions.
+	(emit_source): Add class name argument to base_properties::set
+	function.  Pass class name to set_dynamic and
+	base_properties::set.  Emit definitions for has_property
+	functions.
+	* graphics.h.in, graphics.cc
+	(base_properties::set, base_properties::set_dynamic):
+	New argument CNAME.
+	(base_properties::all_dynamic_properties): New static data member.
+	(base_properties::has_dynamic_property): New static function.
+	(base_graphics_object::set): Pass class name to
+	base_properties::set function.
+	(property_list::set): Check for invalid property names.
+
+2009-05-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (Fdouble): Fix order of branches.
+
+2009-05-05  John Swensen  <jpswensen@comcast.net>
+
+	* debug.h, debug.cc (breakpoints): Rename from bp_map, use a
+	std::set instead of a std::map object.  Change all uses.
+	(bp_table::do_get_breakpoint_list): Simplify.
+
+2009-05-05  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* ov-class.h, ov-class.cc (octave_class::reconstruct_parents):
+	New function.
+	* ov-class.cc (octave_class::load_binary, octave_class::load_hdf5):
+	Contstruct parent list.
+	(get_current_method_class): Clean up method class extraction.
+
+2009-05-05  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (array_property::validate): Require object to be any
+	numeric type, not necessarily a double precision value.
+
+	* variables.cc (set_internal_variable): Pass NM in call to error.
+
+2009-05-04  Peter O'Gorman  <pogma@thewrittenword.com>
+
+	* utils.cc: Don't define HAVE_C99_VSNPRINTF here.
+
+2009-05-01  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (Vlast_error_file, Vlast_error_name, Vlast_error_line,
+	Vlast_error_column): Delete.
+	(Vlast_error_stack): New static variable.
+	(initialize_last_error_stack): New static function.
+	(verror, Frethrow, Flasterror): Set or use Vlast_error_stack, not
+	Vlast_error_file, etc.
+
+2009-04-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (octave_class::dotref): Handle empty parent class.
+	(octave_class::get_current_method_class): Allow result to be empty.
+	(called_from_builtin): New static function.
+	(octave_class::subsref, octave_class::subsasgn): Use it.
+
+2009-04-23  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (Fclass): Check newly constructed classes against
+	the first constructed object of the class.
+
+	* ov-class.h, ov-class.cc (octave_class::exmplar_info): New class.
+	(exemplar_map): New static data member.
+	(exemplar_iterator, exemplar_const_iterator): New typedefs.
+
+	* ov-class.h (octave_class::nparents,
+	octave_class::parent_class_name_list): New functions.
+	* ov.h (octave_base_value::nparents,
+	octave_base_value::parent_class_name_list): New functions.
+	* ov-base.h, ov-base.cc (octave_base_value::nparents,
+	octave_base_value::parent_class_name_list): New functions.
+	(parent_class_names): Error if called for wrong type argument.
+
+	* symtab.cc (load_out_of_date_fcn): New arg, dispatch_type.
+	(out_of_date_check_internal): Pass dispatch type to
+	load_out_of_date_fcn.
+
+2009-04-22  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-int.cc (octave_base_int_helper<T, false,
+	false>::char_value_out_of_range): Correct result for specialization.
+
+	* ov-class.cc (octave_class::dotref, octave_class::subsasgn):
+	Protect against possibly invalid octave_value -> string conversions.
+
+2009-04-22  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* variables.cc (symbol_exist): Also return 1 for objects.
+	* ov-base.h (octave_base_value::assign): New virtual function.
+	* ov-class.h (octave_class::assign): New function.
+	* ov-class.cc (octave_class::find_parent_class): Simplify.
+	(octave_class::octave_class): Don't allow duplicate parent classes.
+	(octave_class::subsasgn): Allow cls = method (cls, value) to work
+	properly when method is a parent-class method.
+	(get_method_class): New static function.
+	(octave_class:subsasgn, octave_class::dotref): Use it.
+	(F__isa_parent__): New function.
+
+2009-04-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-range.cc (octave_range::char_array_value): New virtual function
+	override.
+	* ov-range.h: Declare it.
+
+2009-04-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
+	Update class name even for all-zeros elements.
+	(get_concat_class): Update the default value if possible.
+
+2009-04-21  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Fassignin): Add missing unwind_protect frame.
+
+	* toplev.h (push (symbol_table::scope_id, symbol_table::context_id)):
+	New function.
+
+	* toplev.cc (main_loop): Don't call symbol_table::reset_scope.
+
+	* mex.cc (mexGetVariable, mexPutVariable): Use unwind_protect to
+	restore call stack and scope.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Don't use symbol_table::push_scope.
+	* variablees.cc (do_who): Likewise.  Use octave_call_stack and
+	unwind_protect to manage change in scope.
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
+	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5):
+	Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+
+	* symtab.h (erase_scope (void*)): New function, for unwind_protect.
+	(symbol_table::push_scope, symbol_table::pop_scope,
+	symbol_table::reset_scope): Delete.
+	(symbol_table::scope_stack): Delete static member.
+	* symtab.cc (symbol_table::scope_stack): Delete definition.
+
+2009-04-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.h (Octave_map::contents (const_iterator) const,
+	Octave_map::contents (iterator)): Simplify.
+
+2009-04-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (Octave_map::assign (const octave_value_list&, const
+	std::string&, const Cell&)): Fix & simplify.
+	(common_size): Remove.
+
+2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-idx.cc (make_value_list): Gripe on magic end query for undefined
+	variables.
+
+2009-04-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (same_sign): New helper function.
+	(elem_xpow (double, const Range&), elem_xpow (const Complex&, const Range&)):
+	Only optimize monotonic-magnitude integer ranges, start always from
+	the smaller end.
+
+2008-04-11  David Bateman  <dbateman@free.fr>
+
+	* ov-cell.cc (Fstruct2cell): Treat possible trailing singleton for
+	creation of cell array from column structure vector.
+
+2009-04-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::subsasgn): Fix reference counting
+	optimization.
+
+2009-04-08  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (rehash_internal): New function.
+	(Frehash): Use it.
+	(Fpath, Faddpath, Frmpath): Call rehash_internal if path is modified.
+
+2009-04-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (elem_xpow (double, const Range&),
+	elem_xpow (const Complex&, const Range&)): New functions.
+	* xpow.h: Declare them.
+	* OPERATORS/op-range.cc: Define scalar .^ range and complex .^ range &
+	install them.
+
+2009-04-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.cc (octave_struct::subsasgn): Fix reference counting
+	optimization.
+
+2008-04-03  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/max.cc (MINMAX_SPARSE_BODY): Allow sparse boolean
+	values.
+
+2009-04-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-str-mat.cc (default_numeric_conversion_function):
+	Create an octave_scalar if possible.
+
+2009-03-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (plot_window::button_press):
+	Don't pass arbitrary input to fl_message as a format string.
+
+2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-eval.cc (do_unwind_protect_cleanup_code): Protect also
+	octave_interrupt_state.
+
+2009-03-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): Index n-d arrays along the
+	last dimension.
+
+2009-03-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/balance.cc (Fbalance): Fix order of output args.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc
+	(find_nonzero_elem_idx (const Array<T>&, ...)): Move dimensions
+	fixup to liboctave.
+
+2009-03-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/find.cc
+	(find_nonzero_elem_idx (const Array<T>&, ...)): Simplify.
+	Instantiate for bool and octave_int types.
+	(find_nonzero_elem_idx (const Sparse<T>&, ...)):
+	Instantiate for bool.
+	(Ffind): Handle bool and octave_int cases.
+
+2009-03-25  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.55+.
+	(OCTAVE_API_VERSION): Now api-v37+.
+
+	* version.h (OCTAVE_VERSION): Now 3.1.55.
+	(OCTAVE_API_VERSION): Now api-v37.
+	(OCTAVE_RELEASE_DATE): Now 2009-03-25.
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Also return
+	[](0x0) if the array has 0 rows and it is not a column vector.
+
+	* oct-stream.cc (octave_stream::write (const Array<T>&,
+	octave_idx_type, oct_data_conv::data_type, octave_idx_type,
+	oct_mach_info::float_format)): Seek to skip if still inside bounds
+	of existing file.  Otherwise, write NUL to skip.
+
+	* Makefile.in (%.df : %.cc): Write source file name to output,
+	wrapped in XDEFUN_FILE_NAME macro.
+	* mkbuiltins: Provide definition for XDEFUN_FILE_NAME.
+	* mkgendoc: Likeiwse.
+	(XDEFUN_DLD_INTERNAL, XDEFUNX_DLD_INTERNAL, XDEFUN_INTERNAL,
+	XDEFCONSTFUN_INTERNAL, XDEFUNX_INTERNAL, XDEFVAR_INTERNAL,
+	XDEFCONST_INTERNAL): Pass file_name to print_doc_string.
+	(print_doc_string): New arg, FILE_NAME.  Print file name as
+	comment.
+
+2009-03-24  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (F__parent_classes__): New function.
+
+2009-03-24  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* ov-class.h, ov-class.cc (octave_class::octave_class (const
+	Octave_map&, const std::string&, const octave_value_list&)):
+	New constructor.
+	(octave_class::find_parent_class, octave_class::parent_classes):
+	New functions.
+	(octave_class::dotref): Also look in parent class.
+	(Fclass): Handle parent class arguments.
+
+	* ov-base.h (octave_base_value::get_parent_list,
+	octave_base_value::parent_classes): New virtual functions.
+
+	* load-path.h, load-path.cc (load_path::parent_map): New data member.
+	(load_path::add_to_parent_map): New static function.
+	(load_path::do_add_to_parent_map): New member function.
+	(load_path::do_find_method): Also look in parent classes for methods.
+	(load_path::parent_map_type, load_path::const_parent_map_iterator,
+	load_path::parent_map_iterator): New typedefs.
+
+2009-03-23  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h
+	(symbol_table::symbol_record::symobl_recoord_rep::is_variable):
+	Also return true if symbol is tagged as a variable.
+	(symbol_table::symbol_record::symobl_recoord_rep::force_variable):
+	Don't set variable value.
+	(symbol_table::symbol_record::symobl_recoord_rep::clear_forced,
+	symbol_table::symbol_record::clear_forced): Delete.
+	(symbol_table::unmark_forced_variables): Rename from
+	symbol_table::clear_forced_variables.
+	(symbol_table::do_unmark_forced_variables): Rename from
+	symbol_table::do_clear_forced_variables.
+	* parse.y (make_script, finish_function): Call
+	symbol_table::unmark_forced_variables instead of
+	symbol_table::clear_forced_variables.
+	* octave.cc (unmark_forced_vars): New function.
+	(execute_eval_option_code): Add it to the unwind-protect stack.
+
+2009-03-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-eval.cc (tree_evaluator::visit_simple_for_command):
+	Remove struct branch, handle structs by the generic code.
+	(tree_evaluator::visit_complex_for_command):
+	Add missing const qualifiers.
+
+2009-03-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-diag.cc: Add missing include.
+	* sparse-xdiv.cc: Ditto.
+	* DLD-FUNCTIONS/__glpk__.cc: Ditto.
+	* DLD-FUNCTIONS/__lin_interpn__.cc: Ditto.
+	* DLD-FUNCTIONS/__voronoi__.cc: Ditto.
+
+2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (octave_matrix::load_ascii): Simplify.
+	* ov-flt-re-mat.cc (octave_float_matrix::load_ascii): Simplify.
+	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Simplify.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::load_ascii): Simplify.
+
+2009-03-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (octave_matrix::isnan, octave_matrix::isinf,
+	octave_matrix::finite): Simplify.
+	* ov-flt-re-mat.cc (octave_float_matrix::isnan,
+	octave_float_matrix::isinf, octave_float_matrix::finite): Simplify.
+	* ov-cx-mat.cc (octave_complex_matrix::isnan,
+	octave_complex_matrix::isinf, octave_complex_matrix::finite):
+	Simplify.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::isnan,
+	octave_float_complex_matrix::isinf,
+	octave_float_complex_matrix::finite): Simplify.
+
+2009-03-19  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* ls-oct-ascii.cc (extract_keyword): Replace loop with call to
+	read_until_newline to avoid leaving stray '\r' in stream when
+	reading files with CRLF line endings.
+
+2009-03-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc
+	(scalar_col_helper, scalar_col_helper_def, scalar_col_helper_nda,
+	scalar_query_helper): New classes.
+	(make_col_helper): New function.
+	(Fcellfun): Use col_helper classes for UniformOutput. Avoid copying by
+	using const variables.
+
+2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-b-bm.cc: Add missing INSTALL_BINOPs.
+	* OPERATORS/op-bm-b.cc: Ditto.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-m-m.cc: Ditto.
+
+2009-03-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::octave_value): Move to ov.h
+	* ov.h (octave_value::octave_value): Implement fast inline constructor
+	using a static rep.
+
+2009-03-15  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellslices): New DLD function.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::compound_binary_op): Support bool compound ops.
+	* ov.cc (do_binary_op, decompose_binary_op, binary_op_fcn_name):
+	Ditto.
+	* pt-cbinop.cc (strip_not, simplify_and_or_op): New funcs.
+	(maybe_compound_binary_expression): Support bool compound ops.
+	* OPERATORS/op-int.h: Support bool compound ops.
+	* OPERATORS/op-b-bm.cc: Ditto.
+	* OPERATORS/op-bm-b.cc: Ditto.
+	* OPERATORS/op-bm-bm.cc: Ditto.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-m-m.cc: Ditto.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (xpow (const NDArray&, double), xpow (const ComplexNDArray&, double),
+	xpow (const FloatNDArray&, float), xpow (const FloatComplexNDArray&,
+	float)): Use xisint for testing ints. Optimize w.r.t int exponents.
+
+2009-03-13  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (maybe_warn_assign_as_truth_value, make_binary_op,
+	maybe_warn_variable_switch_label, maybe_warn_associativity_change):
+	Print file and line number info if available.
+	* lex.l (gripe_matlab_incompatible): Likewise.
+
+	* error.cc (pr_where): Use octave_call_stack::backtrace to print
+	complete stack trace at once.  Don't attempt to print code.
+	(error_2): Set error_state to 0 before calling pr_where.
+	(warning_1): Switch sense of test on symbol_table::at_top_level.
+	Call pr_where after printing primary warning message.
+
+2009-03-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-range.h (octave_range::octave_range (const Range&)): Allow
+	constructing from invalid range op result.
+	* ov-range.cc (octave_range::try_narrowing_conversion): Validate
+	invalid range op results.
+	* data.cc (fill_matrix): Return packed form (zero-step range) if
+	possible.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* DLD-FUNCTIONS/lu.cc (lu): Call fact.Pr_mat () and fact.Pc_mat ()
+	to return permutation matrices in the sparse case.
+
+2009-03-12  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat-ascii.cc (get_mat_data_input_line): If we are looking at
+	'\r' or '\n', skip current line ending instead of skipping until
+	the next.
+
+2009-03-12  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.cc: Fix default "papersize" property value.
+
+2009-03-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-flt-perm.h, ov-flt-perm.cc: Remove sources.
+	* ov.h, ov.cc (octave_value::octave_value (const PermMatrix&)): Remove
+	use "single" argument.
+	* ov.cc (install_types): Update.
+	* xpow.cc, xpow.h (xpow (PermMatrix, float)): Remove.
+	* ov-base-diag.cc (octave_base_diag::do_index_op): Remove permutation
+	creating block.
+	* ov-re-diag.cc (octave_diag_matrix::do_index_op): Move it here.
+	* ov-re-diag.h (octave_diag_matrix::do_index_op): New decl.
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Update.
+	* DLD-FUNCTIONS/inv.cc (Finv): Update.
+	* DLD-FUNCTIONS/pinv.cc (Fpinv): Update.
+
+	* OPERATORS/op-fcm-pm.cc <-- OPERATORS/op-fcm-fpm.cc
+	* OPERATORS/op-fcm-pm.cc: Update.
+	* OPERATORS/op-fm-pm.cc <-- OPERATORS/op-fm-fpm.cc
+	* OPERATORS/op-fm-pm.cc: Update.
+	* OPERATORS/op-pm-fcm.cc <-- OPERATORS/op-fpm-fcm.cc
+	* OPERATORS/op-pm-fcm.cc: Update.
+	* OPERATORS/op-pm-fm.cc <-- OPERATORS/op-fpm-fm.cc
+	* OPERATORS/op-pm-fm.cc: Update.
+	* OPERATORS/op-pm-pm.cc: Update.
+	* OPERATORS/op-pm-template.cc: Update.
+
+2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc (xpow (const PermMatrix&, double), xpow (const PermMatrix&,
+	float)): New functions.
+	* xpow.h: Declare them.
+	* DLD-FUNCTIONS/op-pm-pm.cc: Support permutation matrix ^ scalar.
+	* DLD-FUNCTIONS/op-fpm-fpm.cc: Ditto.
+
+2009-03-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-ch-mat.cc (octave_char_matrix::double_value,
+	octave_char_matrix::float_value, octave_char_matrix::complex_value,
+	octave_char_matrix::float_complex_value): Cast to unsigned char.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* OPERATORS/op-pm-sm.cc (mul_pm_sm): New Octave binding for
+	perm * sparse.
+	(ldiv_pm_sm): New Octave binding for perm \ sparse.
+	(mul_sm_pm): New Octave binding for sparse * perm.
+	(div_sm_pm): New Octave binding for sparse / perm.
+	(install_pm_sm_ops): Install the above bindings.
+
+	* OPERATORS/op-pm-scm.cc (mul_pm_scm): New Octave binding for
+	perm * sparse complex.
+	(ldiv_pm_scm): New Octave binding for perm \ sparse complex.
+	(mul_scm_pm): New Octave binding for sparse complex * perm.
+	(div_scm_pm): New Octave binding for sparse complex / perm.
+	(install_pm_scm_ops): Install the above bindings.
+
+	* Makefile.in (PERM_OP_XSRC): Add op-pm-sm.cc and op-pm-scm.cc for
+	operations between permutations and sparse matrices.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): New override
+	for find on PermMatrix.
+	(find): Add a branch testing arg.is_perm_matrix () and calling the
+	above override.
+
+2009-03-10  John W. Eaton  <jwe@octave.org>
+
+	* c-file-ptr-stream.cc, dynamic-ld.cc, error.cc, lex.l, pager.cc,
+	zfstream.cc: Include <iostream>.
+	* zfstream.h: Include <iosfwd> instead of <istream> and <ostream>.
+	* c-file-ptr-stream.h, help.h, load-path.h, load-save.h,
+	ls-ascii-helper.h, oct-iostrm.h, oct-stream.h, ov-base-diag.h,
+	ov-base-int.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
+	ov-base.h, ov-bool-mat.h, ov-bool-sparse.h, ov-bool.h, ov-cell.h,
+	ov-ch-mat.h, ov-class.h, ov-colon.h, ov-complex.h, ov-cs-list.h,
+	ov-cx-mat.h, ov-cx-sparse.h, ov-fcn-handle.h, ov-fcn-inline.h,
+	ov-float.h, ov-flt-complex.h, ov-flt-cx-mat.h, ov-flt-re-mat.h,
+	ov-intx.h, ov-list.h, ov-range.h, ov-re-mat.h, ov-re-sparse.h,
+	ov-scalar.h, ov-str-mat.h, ov-struct.h, ov.h, pager.h,
+	pr-output.h, procstream.h, pt-assign.h, pt-cell.h, pt-const.h,
+	pt-fcn-handle.h, pt-id.h, pt-mat.h, pt.h, utils.h:
+	Include <iosfwd> instead of <iosstream>.
+
+2009-03-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fsize_equal): Allow single argument call.
+	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Update docs.
+
+2009-03-09  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* ls-ascii-helper.h, ls-ascii-helper.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* load-save.cc (Fload): Open all files in binary mode.
+	* ov-range.cc (load_ascii): Explicitly handle CR and CRLF line endings.
+	* ov-fcn-handle.cc (load_ascii): Likewise.
+	* ov-fcn-inline.cc (load_ascii): Likewise.
+	* ov-str-mat.cc (load_ascii): Likewise.
+	* ls-mat-ascii.cc (get_mat_data_input_line): Likewise.
+	* ls-oct-ascii.cc (extract_keyword, read_ascii_data): Likewise.
+	* ls-oct-ascii.h (extract_keyword): Likewise.
+
+2009-03-09  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (OCTAVE_DEFAULT_FONTNAME): New macro, defaults to "*".
+	(axes::properties, text::properties): Use it to set default fontname.
+	* graphics.cc (axes::properties::set_defaults): Likewise.
+
+2009-03-09  Rafael Laboissiere  <rafael@debian.org>
+
+	* Makefile.in (maintainer-clean): Remove y.tab.h here.
+	(distclean): Not here.
+
+2009-03-09  Jason Riedy  <jason@acm.org>
+
+	* OPERATORS/op-dm-sm.cc (add_dm_sm): Octave binding for diag + sparse.
+	(sub_dm_sm): Octave binding for diag - sparse.
+	(add_sm_dm): Octave binding for diag + sparse.
+	(sub_sm_dm): Octave binding for diag - sparse.
+	(install_dm_sm_ops): Install above bindings.
+
+	* OPERATORS/op-dm-scm.cc (add_cdm_sm): Octave binding for diag + sparse.
+	(add_dm_scm): Octave binding for diag + sparse.
+	(add_cdm_scm): Octave binding for diag + sparse.
+	(sub_cdm_sm): Octave binding for diag - sparse.
+	(sub_dm_scm): Octave binding for diag - sparse.
+	(sub_cdm_csm): Octave binding for diag - sparse.
+	(add_sm_cdm): Octave binding for diag + sparse.
+	(add_scm_dm): Octave binding for diag + sparse.
+	(add_scm_cdm): Octave binding for diag + sparse.
+	(sub_sm_cdm): Octave binding for diag - sparse.
+	(sub_scm_dm): Octave binding for diag - sparse.
+	(sub_scm_cdm): Octave binding for diag - sparse.
+	(install_dm_scm_ops): Install above bindings.
+
+2009-03-08  Jason Riedy  <jason@acm.org>
+
+	* sparse-xdiv.h (xleftdiv): Declare overrides for
+	xleftdiv (diagonal, sparse), both real and complex.
+	(xdiv): Declare overrides for xdiv (sparse, diagonal), both real
+	and complex.
+
+	* sparse-xdiv.cc (do_rightdiv_sm_dm): New template function.
+	Implementation for xdiv (sparse, diagonal).
+	(xdiv): Call do_rightdiv_sm_dm to implement overrides, real and
+	complex.
+	(do_leftdiv_dm_sm): New template function.  Implementation for
+	xleftdiv (diagonal, sparse).
+	(xleftdiv): Call do_leftdiv_dm_sm to implement overrides, real and
+	complex.
+
+	* OPERATORS/op-dm-sm.cc (ldiv_dm_sm): Octave binding for real left
+	division, diagonal into sparse.
+	(div_sm_dm): Octave binding for real right division, sparse by
+	diagonal.
+	(install_dm_sm_ops): Install above bindings.
+
+	* OPERATORS/op-dm-scm.cc (ldiv_dm_scm): Octave binding for real
+	diagonal \ complex sparse.
+	(ldiv_cdm_sm): Octave binding for complex diagonal \ real sparse.
+	(ldiv_cdm_scm): Octave binding for complex diagonal \ complex sparse.
+	(div_scm_dm): Octave binding for complex sparse / real diagonal.
+	(div_sm_cdm): Octave binding for real sparse / complex diagonal.
+	(div_scm_cdm): Octave binding for complex sparse / complex diagonal.
+	(install_dm_scm_ops): Install above bindings.
+
+2009-03-08  Jason Riedy  <jason@acm.org>
+
+	* OPERATORS/op-dm-scm.cc: New file.  Implement multiplication
+	between diagonal matrices (both real and complex) and complex
+	sparse matrices.
+	* OPERATORS/op-dm-sm.cc: New file.  Implement multiplication
+	between diagonal matrices and sparse matrices, all real.
+	* Makefile.in (DIAG_OP_XSRC): Add op-dm-sm.cc and op-dm-scm.cc.
+
+2009-03-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (F__accumarray_sum__): New function.
+	(do_accumarray_sum): New helper template function.
+
+2009-03-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xdiv.cc (mdm_div_impl, dmm_lelftdiv_impl, dmdm_div_impl,
+	dmdm_leftdiv_impl): Optimize.
+
+2009-03-07  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (octave_print_internal (std::ostream&,
+	const PermMatrix&, bool, int)): Delete unused variable SCALE.
+
+	* utils.cc (octave_vsnprintf): Avoid uninitialized variable
+	warning from GCC.
+
+	* DLD-FUNCTIONS/qz.cc (Fqz): Avoid "maybe clobbered by vfork"
+	warning from GCC.
+
+	* version.h (OCTAVE_VERSION): Now 3.1.54.
+	(OCTAVE_API_VERSION): Now api-v36.
+	(OCTAVE_RELEASE_DATE): Now 2009-03-07.
+
+	* octave.cc (verbose_usage): Include --doc-cache-file in option list.
+
+2009-03-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::diag_matrix_value,
+	octave_value::complex_diag_matrix_value,
+	octave_value::float_diag_matrix_value,
+	octave_value::float_complex_diag_matrix_value,
+	octave_value::perm_matrix_value): New methods.
+
+	* ov-base.cc (octave_base_value::diag_matrix_value,
+	octave_base_value::complex_diag_matrix_value,
+	octave_base_value::float_diag_matrix_value,
+	octave_base_value::float_complex_diag_matrix_value,
+	octave_base_value::perm_matrix_value): New virtual methods.
+
+	* ov-base.h: Declare them.
+
+	* ov-base-diag.h (octave_base_diag::diag_matrix_value,
+	octave_base_diag::complex_diag_matrix_value,
+	octave_base_diag::float_diag_matrix_value,
+	octave_base_diag::float_complex_diag_matrix_value,
+	octave_base_diag::perm_matrix_value): Remove declarations.
+
+	* DLD-FUNCTIONS/inv.cc (Finv): Simplify handling diag & perm matrices.
+	* DLD-FUNCTIONS/pinv.cc (Fpinv): Ditto.
+	* DLD-FUNCTIONS/det.cc (Fdet): Ditto.
+
+2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ls-hdf5.cc (add_hdf5_data): Handle diag & perm matrices.
+
+2009-03-05  John W. Eaton  <jwe@octave.org>
+
+	* pt-cell.cc, pt-cell.h (tree_cell::dup): Now const.
+	* comment-list.cc, comment-list.h (octave_comment_list::dup): Ditto.
+	* pt-arg-list.cc, pt-arg-list.h (tree_argument_list::dup): Ditto.
+	* pt-assign.cc, pt-assign.h (tree_simple_assignment::dup,
+	tree_multi_assignment::dup): Ditto.
+	* pt-binop.cc, pt-binop.h (tree_binary_expression::dup,
+	tree_boolean_expression::dup): Ditto.
+	* pt-cmd.cc, pt-cmd.h (tree_no_op_command::dup,
+	tree_function_def::dup): Ditto.
+	* pt-colon.cc, pt-colon.h (tree_colon_expression::dup): Ditto.
+	* pt-const.cc, pt-const.h (tree_constant::dup): Ditto.
+	* pt-decl.cc, pt-decl.h (tree_decl_elt::dup, tree_decl_init_list::dup,
+	tree_global_command::dup, tree_static_command::dup): Ditto.
+	* pt-except.cc, pt-except.h (tree_try_catch_command::dup,
+	tree_unwind_protect_command::dup): Ditto.
+	* pt-fcn-handle.cc, pt-fcn-handle.h (tree_fcn_handle::dup,
+	tree_anon_fcn_handle::dup): Ditto.
+	* pt-id.cc, pt-id.h (tree_identifier::dup): Ditto.
+	* pt-idx.cc, pt-idx.h (tree_index_expression::dup): Ditto.
+	* pt-jump.cc, pt-jump.h (tree_break_command::dup,
+	tree_continue_command::dup, tree_return_command::dup): Ditto.
+	* pt-loop.cc, pt-loop.h (tree_while_command::dup,
+	tree_do_until_command::dup, tree_simple_for_command::dup,
+	tree_complex_for_command::dup): Ditto.
+	* pt-mat.cc, pt-mat.h (tree_matrix::dup): Ditto.
+	* pt-misc.cc, pt-misc.h (tree_parameter_list::dup,
+	tree_return_list::dup): Ditto.
+	* pt-select.cc, pt-select.h (tree_if_clause::dup,
+	tree_if_command_list::dup, tree_if_command::dup,
+	tree_switch_case::dup, tree_switch_case_list::dup,
+	tree_switch_command::dup): Ditto.
+	* pt-stmt.cc, pt-stmt.h (tree_statement::dup,
+	tree_statement_list::dup): Ditto.
+	* pt-unop.cc, pt-unop.h (tree_prefix_expression::dup,
+	tree_postfix_expression::dup): Ditto.
+	* pt-fcn-handle.h (tree_anon_fcn_handle::parameter_list,
+	tree_anon_fcn_handle::return_list, tree_anon_fcn_handle::body,
+	tree_anon_fcn_handle::scope): Ditto.
+
+2009-03-05  Jason Riedy  <jason@acm.org>
+
+	* ov-base-int.cc (convert_to_str_internal): Replace elt_type with
+	element_type throughout.
+
+2009-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): Handle diagonal and permutation
+	matrices.
+
+2009-03-03  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::save_ascii,
+	octave_struct::save_binary, octave_struct::save_hdf5):
+	Preserve order of structure fields.
+	* ls-mat5.cc (save_mat5_binary_element): Likewise.
+
+	* symtab.h (symbol_table::do_inherit): Only inherit values for
+	symbols from the donor_scope that already exist in the table.
+	(symbol_table::symbol_record::symbol_record_rep::dup): Now const.
+	(symbol_table::symbol_record::operator=): Decrement rep->count and
+	maybe delete rep.
+	(symbol_table::fcn_info::operator=): Likewise.
+
+	* pt-fcn-handle.cc: (tree_anon_fcn_handle::dup): Transform
+	tree_anon_fcn_handle objects to tree_constant objects containing
+	octave_fcn_handle objects.  New tests.
+
+	* pt-assign.cc (tree_simple_assignment::rvalue1): Assign result of
+	call to rhs->rvalue1() to an octave_value object, not an
+	octave_value_list object.
+
+2009-03-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-stream.h (octave_stream_list::lookup_cache): New member field.
+	(octave_stream_list::octave_stream_list): Initialize it.
+	(octave_stream_list::do_lookup): Use it.
+	(octave_stream_list::clear): Make flush optional. Do physically erase
+	entries from the map. Close files.
+	(octave_stream_list::do_remove): Call clear on "all". Do erase deleted
+	entry from the map.
+
+2009-03-02  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (Fget, F__get__): Return a column vector of property
+	values, not a row vector.
+
+2009-03-01  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-fcm-fcm.cc (DEFNDASSIGNOP_FN (dbl_assign)):
+	LHS type is float_complex_matrix, not complex_matrix.  RHS value
+	function is float_complex_array, not complex_array.
+
+2009-03-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-perm.cc (octave_perm_matrix::print_raw): Call
+	octave_print_internal.
+	(octave_perm_matrix::print_raw): Call print_raw.
+	* pr-output.cc (octave_print_internal (...,const DiagMatrix&,...)):
+	Indicate diagonal matrix.
+	(octave_print_internal (...,const ComplexDiagMatrix&,...)): Ditto.
+	(octave_print_internal (...,const PermMatrix&,...)): New function.
+	* pr-output.h: Declare it.
+
+2009-02-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-dms-template.cc (gripe_if_zero): New template static
+	function.
+	(dmsdiv, sdmldiv): Call it.
+
+2009-02-26  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table::symbol_record::symbol_record_rep::forced):
+	New static constant.
+	(symbol_table::symbol_record::symbol_record_rep::force_variable,
+	symbol_table::symbol_record::force_variable): New functions.
+	(symbol_table::symbol_record::symbol_record_rep::is_forced,
+	symbol_table::symbol_record::symbol_record_rep::mark_forced,
+	symbol_table::symbol_record::symbol_record_rep::unmark_forced,
+	symbol_table::symbol_record::symbol_record_rep::clear_forced,
+	symbol_table::symbol_record::is_forced,
+	symbol_table::symbol_record::mark_forced,
+	symbol_table::symbol_record::clear_forced,
+	symbol_table::symbol_record::unmark_forced): New fucntions.
+	* lex.h, lex.l (force_local_variable): Delete.
+	(handle_identifier): Call symbol_table::force_variable instead of
+	force_local_variable.
+	* parse.y (make_script): Call symbol_table:clear_forced_variables
+	after defining script.
+	(finish_function): Call symbol_table::clear_forced_variables
+	instead of symbol_table::clear_variables.
+
+	* DLD-FUNCTIONS/chol.cc: Correct spelling of CHOLMOD in tests.
+
+	* version.h (OCTAVE_VERSION): Now 3.1.53+.
+	(OCTAVE_API_VERSION): Now api-v35+.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.53.
+	(OCTAVE_API_VERSION): Now api-v35.
+	(OCTAVE_RELEASE_DATE): Now 2009-02-25.
+	(OCTAVE_COPYRIGHT): Update year.
+
+	* Makefile.in (distclean): Remove tags TAGS y.tab.h y.output
+	yy.lex.c here, not in maintainer-clean target.  Also remove
+	parse.output.
+
+	* DLD-FUNCTIONS/rand.cc: Note that the tests for the old random
+	number generator will fail if using 64-bit indexing.
+
+2009-02-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lu.cc (maybe_set_triangular): New function.
+	(Flu): Use it.
+	* DLD-FUNCTIONS/qr.cc (maybe_set_triangular): New function.
+	(Fqr): Use it.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/chol.cc: Fix tests for missing cholmod.
+
+	* input.cc (get_debug_input): Write debugging location info
+	directly to std::cerr instead of calling message.
+	* pt-eval.cc (tree_evaluator::do_breakpoint): Write debugging
+	location info directly to std::cerr, not octave_stdout.
+
+	* defaults.h.in (OCTAVE_DOC_CACHE_FILE): New macro.
+	* defaults.cc (set_default_doc_cache_file): New function.
+	(install_defaults): Call it.
+
+	* help.cc (__list_functions__): Simplify
+
+	* input.cc (get_debug_input): Don't pass arbitrary input to
+	message as a format string.
+
+2009-02-24  John W. Eaton  <jwe@octave.org>
+
+	* help.cc, help.h (Vdoc_cache_file): New global variable.
+	(Fdoc_cache_file): New function.
+	* octave.cc (DOC_CACHE_FILE_OPTION): New option tag.
+	(long_opts): Include doc-cache-file in the list.
+	(octave_main): Handle DOC_CACHE_FILE_OPTION.
+
+2009-02-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-scalar.h
+	(octave_scalar::int8_scalar_value): New method.
+	(octave_scalar::int16_scalar_value): New method.
+	(octave_scalar::int32_scalar_value): New method.
+	(octave_scalar::int64_scalar_value): New method.
+	(octave_scalar::uint8_scalar_value): New method.
+	(octave_scalar::uint16_scalar_value): New method.
+	(octave_scalar::uint32_scalar_value): New method.
+	(octave_scalar::uint64_scalar_value): New method.
+
+	* ov-float.h
+	(octave_float_scalar::int8_scalar_value): New method.
+	(octave_float_scalar::int16_scalar_value): New method.
+	(octave_float_scalar::int32_scalar_value): New method.
+	(octave_float_scalar::int64_scalar_value): New method.
+	(octave_float_scalar::uint8_scalar_value): New method.
+	(octave_float_scalar::uint16_scalar_value): New method.
+	(octave_float_scalar::uint32_scalar_value): New method.
+	(octave_float_scalar::uint64_scalar_value): New method.
+
+	* OPERATORS/op-s-s.cc (scalar_to_float): Remove duplicate conversion.
+	* OPERATORS/op-range.cc (range_to_float_matrix): Ditto.
+
+2009-02-24  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-float-conv.cc: New file.
+	* Makefile.in (FLOAT_OP_XSRC): Add it to the list.
+	(DOUBLE_OP_XSRC): Move op-double-conv.cc here from INTTYPE_OP_XSRC.
+	* ops.h (DEFFLTCONVFN, DEFSTRFLTCONVFN): New macros.
+
+2009-02-23  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
+	Remove extra ")" from output.
+
+	* DLD-FUNCTIONS/eigs.cc (Feigs): If sigma argument is not a
+	string, try extraction as complex value and check for error
+	instead of inquiring about type first.
+
+	* pt-eval.cc (tree_evaluator::visit_break_command,
+	tree_evaluator::visit_return_command,
+	tree_evaluator::visit_global_command,
+	tree_evaluator::visit_static_command): Handle breakpoint.
+	(tree_evaluator::visit_simple_for_command,
+	tree_evaluator::visit_complex_for_command): Handle breakpoint once
+	at beginning of loop.
+	(tree_evaluator::visit_if_command_list): Don't call do_breakpoint
+	for else clauses.
+	(tree_evaluator::visit_no_op_command): Handle breakpoint if no-op
+	command is end of function or script.
+	(tree_evaluator::visit_statement): Handle breakpoint for
+	expressions but not commands.
+	(tree_evaluator::visit_while_command,
+	tree_evaluator::visit_do_until_command):
+	Check for breakpoint set on cmd, not expr.
+	(tree_evaluator::visit_do_until_command): Handle breakpoint
+	between check for breaking out of loop and loop control
+	expression.
+
+	* pt-cmd.h (tree_no_op_command::eof): New data member
+	(tree_no_op_command::tree_no_op_command): Initialize it.
+	(tree_no_op_command::is_end_of_fcn_or_script): New function.
+	* pt-stmt.cc (tree_statement::is_end_of_fcn_or_script):
+	Call is_end_of_fcn_or_script instead of looking at original text
+	of no-op command.
+
+	* pt-select.h, pt-select.cc (tree_if_command::set_breakpoint,
+	tree_if_command::delete_breakpoint): New functions.
+	(tree_switch_command::set_breakpoint,
+	tree_switch_command::delete_breakpoint): New functions.
+	* pt-stmt.h, pt-stmt.cc (tree_statement::set_breakpoint,
+	tree_statement::delete_breakpoint, tree_statement::is_breakpoint):
+	Delegate real work to cmd or expr.
+	(tree_statement::bp): Delete data member.
+	(tree_statement::tree_statement): Don't initialize bp.
+	(tree_statement::dup): Don't copy bp.
+
+	* pt.h (tree::line (int), tree:column (int)): New functions.
+	(tree:set_breakpoint, tree::delete_breakpoint): Now virtual.
+
+	* parse.y (finish_if_command): Also store line and column info for
+	if statement in first element of list.
+	(finish_switch_command): Likewise, for switch.
+
+	* input.cc (last_debugging_command): New static variable.
+	(octave_gets): Set it here.  Don't insert repeated debugging
+	commands in the history list.
+
+2009-02-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/pinv.cc: Support diagonal and permutation matrices.
+
+2008-02-21  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc, OPERATORS/op-s-scm.cc,
+	OPERATORS/op-s-sm.cc, OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-s.cc: Don't perform any
+	narrowing to full matrices.
+
+2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-diag.h (octave_base_diag::sqrt): Remove.
+	* ov-re-diag.cc (octave_diag_matrix::sqrt): New method.
+	* ov-re-diag.h: Declare it.
+	* ov-flt-re-diag.cc (octave_float_diag_matrix::sqrt): New method.
+	* ov-flt-re-diag.h: Declare it.
+	* ov-cx-diag.cc (octave_complex_diag_matrix::sqrt): New method.
+	* ov-cx-diag.h: Declare it.
+	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::sqrt): New method.
+	* ov-flt-cx-diag.h: Declare it.
+
+2009-02-20  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Clear and
+	reload mex file if it is out of date.  Don't check path for file.
+
+	* pt-bp.cc (tree_breakpoint::visit_octave_user_script,
+	tree_breakpoint::visit_octave_user_function):
+	Don't panic.  Call accept on command list if it exists.
+
+2009-02-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
+	Correctly compute all-scalar index.
+	* ov-cell.cc (octave_cell::is_sorted, octave_cell::is_sorted_rows):
+	New methods.
+	(octave_cell::octave_cell (const Array<std::string>&)): New
+	constructor.
+	* ov-cell.h: Declare them.
+	* ov-cell.cc (octave_cell::sort): Create result already with
+	cellstr_cache.
+	* strfns.cc (Fstrcmp): Use special code when dealing with
+	cellstr arrays.
+
+2009-02-20  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::assign):
+	Correctly compute all-scalar index.
+
+	* symbtab.cc (symbol_table::stash_dir_name_for_subfunctions):
+	New function.
+	* symtab.h: Provide decl.
+	* parse.y (load_fcn_from_file): Call it after parsing a function.
+
+2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.h (octave_cell::cellstr_cache): New field.
+	(octave_cell::clear_cellstr_cache, octave_cell::make_cellstr_cache,
+	octave_cell::assign, octave_cell::delete_elements,
+	octave_cell::mex_get_data): New methods.
+	(octave_cell::is_cellstr): Reuse cellstr cache if possible, create if
+	successful.
+	(octave_cell::cellstr_value): Reuse cellstr cache if possible.
+	(octave_cell::subsasgn): Clear cellstr cache.
+
+2009-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Use Array<T>::lookup if possible.
+	Do not compare octave_values directly. Properly check for iscellstr.
+
+2009-02-19  John W. Eaton  <jwe@octave.org>
+
+	* data.cc, graphics.cc, help.cc, lex.l, load-path.cc, parse.y:
+	Consistent doc strings for internal functions.
+
+2009-02-18  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (convert_to_octave_idx_type_array): New static function.
+	(octave_value::octave_idx_type_vector_value): New function.
+	* ov.h (octave_value::octave_idx_type_vector_value): Provide decl.
+	* DLD-FUNCTIONS/qr.cc (Fqrdelete, Fqrinsert): Use it to convert
+	octave_value object to array of octave_idx_type values.
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Likewise.
+	* DLD-FUNCTIONS/time.cc (strptime): Likewise.
+	* DLD-FUNCTIONS/quad.cc (Fquad): Eliminate unnecessary cast.
+	* toplev.cc (run_command_and_return_output): Likewise.
+
+	* strfns.cc (Fstrvcat): Use octave_idx_type and size_t instead of
+	int as needed.
+	(Fstrcmp, Fstrncmp): Use octave_idx_type instead of int as needed.
+
+	* DLD-FUNCTIONS/hex2num.cc (Fhex2num, Fnum2hex):
+	Use union to avoid reinterpret_cast and GCC warning.
+
+	* mex.cc (call_mex): Declare local nargout variable volatile to
+	avoid "maybe clobbered by vfork" warning from GCC.
+
+	* ov-cx-mat.cc (xabs): Comment out unused static function.
+	* ov-flt-cx-mat.cc (xabs): Ditto.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::seekoff,
+	c_file_ptr_buf::seepos, c_zfile_ptr_buf::seekoff,
+	c_zfile_ptr_buf::seepos): Avoid unused paramter warnings.
+
+2009-02-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (Fresize): Allow arbitrary number of parameters. Improve
+	documentation.
+
+2009-02-17  Benjamin Lindner  <lindnerb@users.sourceforge.net>
+
+	* file-io.cc: (Fmkstemp): Use mkstemps if it is available and
+	mkstemp is missing.
+
+2009-02-17  Olaf Till  <olaf.till@uni-jena.de>
+
+	* DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/dasrt.cc: Documentation fixes.
+
+2009-02-17  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/convhulln.cc (Fconvhulln): Compute convex hull
+	volume and return it as second output.  New tests.
+
+2009-02-17  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn.h (octave_function::octave_function): Initialize data members.
+	(octave_function::dispatch_class): No longer virtual.
+	Replace with version from ov-usr-fcn.h.
+	(octave_function::xdispatch_class,
+	octave_function::stash_dispatch_class): Move here from ov-usr-fcn.h.
+	(octave_function::mark_as_private_function,
+	octave_function::is_private_function,
+	octave_function::is_private_function_of_class): New functions.
+	(octave_function::private_function): New data member.
+	* ov-usr-fcn.h (octave_user_function::xdispatch_class,
+	octave_user_function::stash_dispatch_class,
+	octave_user_function::dispatch_class): Delete.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Don't initialize xdispatch_type.
+
+	* symtab.cc
+	(symbol_table::fcn_info::fcn_info_rep::load_private_function):
+	If private directory is subdirectory of class directory, qmark
+	function as a private directory of the class.
+
+	* ov-class.cc (octave_class::in_class_method): Also return true
+	for functions that are private to a class.
+	(octave_class::subsasgn): If not in class method, look for
+	subsasgn method.  If not found, or if not in a class method,
+	perform default struct-style subscripted indexing.
+
+	* ov-class.h (octave_class::empty_clone):
+	Preserve fields and class name.
+	* oct-map.h (Octave_map::Octave_map (const string_vector&):
+	New constructor.
+
+	* ov-class.cc (octave_class::subsref): If indexing directly and
+	result is map, return class object, not simple struct.
+
+	* symtab.cc
+	(symbol_table::fcn_info::fcn_info_rep::load_private_function):
+	Pass dir_name to load_fcn_from_file.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/data.cc (NATIVE_REDUCTION): Add BOOL_FCN argument.
+	(NATIVE_REDUCTION_1): Check integer overflow flags and possibly gripe.
+	(Fsum): Reflect change.
+	(Fcumsum): USE NATIVE_REDUCTION.
+	* gripes.cc (gripe_native_integer_math_truncated): New function.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/max.cc (Fcummin, Fcummax): Improve inline docs.
+
+2009-02-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/max.cc (MINMAX_DOUBLE_SBODY): New macro.
+	(MINMAX_DOUBLE_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
+	(MINMAX_SINGLE_SBODY): New macro.
+	(MINMAX_SINGLE_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
+	(MINMAX_INT_SBODY): New macro.
+	(MINMAX_INT_BODY): Move part of code to MINMAX_DOUBLE_SBODY.
+	(CUMMINMAX_BODY): New macro.
+	(Fcummin, Fcummax): New DLD functions.
+
+2009-02-17  John W. Eaton  <jwe@octave.org>
+
+	* octave.gperf: Eliminate whitespace to allow gperf 2.7.2 to work.
+
+	* file-io.cc (Ffscanf, Fsscanf): Check error_state after call to
+	octave_stream::scanf.
+	(Ffgetl): Check error state after call to octave_stream::getl.
+	(Ffgets): Check error state after call to octave_stream::gets.
+
+	* oct-stream.cc (octave_base_stream::do_gets,
+	octave_base_stream::do_scanf):
+	Disallow reading from stdin when running interactively.
+
+	* toplev.cc (octave_config_info): Add CARBON_LIBS, X11_INCFLAGS,
+	and X11_LIBS to the struct.
+	* oct-conf.h.in (OCTAVE_CONF_CARBON_LIBS,
+	OCTAVE_CONF_X11_INCFLAGS, OCTAVE_CONF_X11_LIBS): New macros.
+
+2009-02-17  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* Makefile.in (octave$(EXEEXT)): Link with CARBON_LIBS.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (next_token_can_follow_bin_op):
+	Push all characters read on to buffer stack.
+
+	* genprops.awk (emit_source): Don't use + to concatenate strings.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* data.cc (NATIVE_REDUCTION): Use boolNDArray::any for native bool
+	summation, boolNDArray::sum for double-valued.
+
+2009-02-16  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::assign (const octave_value_list&,
+	typename MT::element_type): Fix invalid index.
+	* ov-re-mat.cc (default_numeric_demotion_function): Use
+	float_array_value instead of float_matrix_value.
+
+2009-02-16  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (gnu_readline): Use fputs instead of fprintf.
+
+2009-02-15  John W. Eaton  <jwe@octave.org>
+
+	* defun.cc, defun-int.h, defun-dld.h (DEFUN_INTERNAL,
+	DEFCONSTFUN_INTERNAL, DEFUNX_INTERNAL, DEFUN_DLD_INTERNAL,
+	DEFUNX_DLD_INTERNAL, install_builtin_function,
+	install_dld_function, install_mex_function):
+	Delete IS_TEXT_FCN arg.  Fix all uses.
+	(DEFMD, DEFUN_TEXT): Delete.
+	* mkbuiltins, mkgendoc: Adapt to DEFUN macro changes.
+
+	* lex.h, lex.l (lexer_flags::at_beginning_of_statement):
+	New data member.  Set it as needed in rules.
+	(is_keyword_token):
+	Handle lexer_flags::at_beginning_of_statement.
+	(next_token_can_follow_bin_op, looks_like_command_arg): New functions.
+	(handle_identifier): Use them to determine
+	Don't check is_command_name or is_rawcommand_name.
+	* parse.y (statement): Recognize word_list_cmd here.
+	(expression): Not here.
+
+	* lex.l (handle_string): Delete arg TEXT_STYLE.
+	(BIN_OP_RETURN, XBIN_OP_RETURN): New arg, BOS. Change all uses.
+
+	* lex.h, lex.l (lexer_flags::doing_raw_command): Delete data
+	member and all uses.
+
+	* debug.cc, dirfns.cc, error.cc, input.cc, lex.l, load-path.cc,
+	load-save.cc, oct-hist.cc, ov-class.cc, pager.cc, parse.y,
+	pr-output.cc, sysdep.cc, utils.cc, variables.cc:
+	Replace all uses of DEFCMD with DEFUN.
+
+	* variables.cc (command_set, rawcommand_set): Delete static variables.
+	(mark_as_command, unmark_command, is_command_name,
+	mark_as_rawcommand, unmark_raw_command, is_rawcommand_name): Delete.
+	(Fmark_as_command, Funmark_command, Fiscommand,
+	Fmark_as_rawcommand, Funmark_rawcommand, Fisrawcommand):
+	Convert to .m files and move to scripts/deprecated.
+	* variables.h (mark_as_command, is_command_name,
+	is_marked_as_rawcommand, mark_as_rawcommand, unmark_rawcommand,
+	is_rawcommand_name): Delete decls.
+
+	* lex.h, lex.l (lexer_flags.looking_at_object_index): Now a
+	std::list<bool> object instead of an int.
+	Push TRUE to list at start of object index.  Push FALSE at
+	beginning of matrix list.  Pop value at end of object index or
+	matrix list.
+	(lexer_flags.looking_for_object_index): New data member.
+	Set it as needed in rules.
+	(inside_any_object_index): New function.
+	* parse.y (begin_obj_idx, cancel_obj_idx): Delete non-terminals
+	and all uses.
+
+2009-02-13 Ben Abbott  <bpabott@mac.com>
+
+	* graphics.h.in (class axes::properties): Initialize ticklength.
+	* graphics.cc (default_axes_ticklength): New function.
+
+2009-02-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_base_stream::do_gets): Handle CRLF and CR.
+
+	* toplev.cc (do_octave_atexit): Only save history if
+	Vsaving_history is true.
+
+2009-02-12  John W. Eaton  <jwe@octave.org>
+
+	* data.cc, ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h,
+	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-perm.h, ov-range.h,
+	ov.h: Rename internal issorted and issorted_rows functions to
+	is_sorted and is_sorted_rows.
+
+	* ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base.h,
+	ov-cell.h, ov-perm.h, ov-range.h, ov.h, data.cc, ov-base.cc,
+	ov-cell.cc: Rename all uses of sortrows_idx to sort_rows_idx.
+
+	* TEMPLATE-INST/Array-tc.cc: Don't instantiate sort functions for
+	Arrays of octave_value objects.
+	(octave_sort<octave_value>::ascending_compare,
+	octave_sort<octave_value>::descending_compare): Delete.
+
+	* ov.h (octave_value::cellstr_value): New function.
+	* ov-base.cc, ov-base.h (octave_base_value::cellstr_value):
+	New function.
+	* ov-cell.h (octave_cell::cellstr_value, octave_cell::sort,
+	octave_cell::sortrows_idx): New functions
+	* Cell.h, Cell.cc (Cell::Cell (Array<std::string>)): New constructor.
+
+	* TEMPLATE-INST/Array-tc.cc: Undo previous change.
+	(octave_sort<octave_value>::ascending_compare,
+	octave_sort<octave_value>::descending_compare):
+	Pass args by const reference instead of value.
+
+	* version.h (OCTAVE_VERSION): Now 3.1.52+.
+	(OCTAVE_API_VERSION): Now api-v34+.
+
+	* TEMPLATE-INST/Array-tc.cc
+	(octave_sort<octave_value>::ascending_compare,
+	octave_sort<octave_value>::descending_compare):
+	Delete unused template specializations.
+	Use NO_INSTANTIATE_ARRAY_SORT instead of INSTANTIATE_ARRAY_SORT
+	for octave_values.
+
+2009-02-11  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* gl-render.h: Use HAVE_FRAMEWORK_OPENGL.
+	* gl-render.cc (opengl_tesselator, opengl_renderer::draw,
+	opengl_renderer::init_marker): Use HAVE_FRAMEWORK_OPENGL.
+
+2009-02-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::issorted, octave_value::sortrows_idx,
+	octave_value::issorted_rows): New methods.
+	* ov.cc (octave_base_value::issorted, octave_base_value::sortrows_idx,
+	octave_base_value::issorted_rows): New methods.
+	* ov.cc: Declare them.
+
+	* ov-base-mat.h (octave_base_matrix::issorted, octave_base_matrix::sortrows_idx,
+	octave_base_matrix::issorted_rows): New methods.
+
+	* ov-base-diag.h (octave_base_diag::issorted, octave_base_diag::sortrows_idx,
+	octave_base_diag::issorted_rows): New methods.
+
+	* ov-perm.h (octave_perm_matrix::issorted, octave_perm_matrix::sortrows_idx,
+	octave_perm_matrix::issorted_rows): New methods.
+
+	* ov-range.h (octave_range::issorted, octave_range::sortrows_idx,
+	octave_range::issorted_rows): New methods.
+
+	* data.cc (F__sortrows_idx__, Fissorted): New defuns.
+
+2009-02-11  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Add octetcdir to the struct.
+	* defaults.h.in (OCTAVE_OCTETCDIR): New macro.
+
+2009-02-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/__pchip_deriv__.cc (F__pchip_deriv__):
+	Add support for computing pchip derivatives along rows of matrix.
+	Eliminate redundant copying by using const args where appropriate.
+
+2009-02-09  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.52.
+	(OCTAVE_RELEASE_DATE): Now 2009-02-09.
+	(OCTAVE_COPYRIGHT): Update year.
+
+	* load-path.cc (dir_info::update, dir_info::initialize):
+	Likewise, to allow some functionality if getcwd fails.
+
+	* toplev.cc (main_loop): Also catch octave_execution_exception.
+
+	* DLD-FUNCTIONS/dispatch.cc: Comment out troublesome tests.
+
+	* DLD-FUNCTIONS/eigs.cc: Increase tolerance to 1e-11 on all tests.
+
+	* lex.l (lexical_feedback::looking_at_decl_list): New data member.
+	* lex.l (lexical_feedback::init): Initialize it.
+	(handle_identifier): Also force local variable if looking_at_decl_list.
+	* parse.y (parsing_decl_list): New non-terminal.
+	(declaration): Use it.  Set lexer_flags.looking_at_decl_list to
+	false after parsing the declaration.
+
+2009-02-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* TEMPLATE-INST/Array-tc.cc: Reflect changes in octave_sort.
+
+2009-02-08  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (initialize_pathsearch): Delete.
+	(octave_main): Don't call initialize_pathsearch.
+
+2009-02-07  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (eval_string): Use the one true evaluator.
+
+2009-02-06  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (INCLUDES): Include oct-hdf5.h in the list.
+
+	* Makefile.in (oct-gperf.h): Don't use pipeline to process gperf
+	output.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::cn_info_rep::xfind):
+	New function.
+	(symbol_table::fcn_info::cn_info_rep::find):
+	Use it to avoid recursive call.
+
+	* graphics.cc (Fdrawnow): Return after errors.  Don't strip
+	trailing directory separator from name used in call to file_stat.
+
+	* DLD-FUNCTIONS/eigs.cc (Feigs): Avoid warnings about ambiguous
+	else.  Style fixes.  Return after errors.
+
+2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-map.cc (Octave_map::index): Optimize.
+
+2009-02-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-cm-cs.cc: Use scalar_value in scalar-to-matrix
+	indexed assignments.
+	* OPERATORS/op-fcm-fcs.cc: Ditto.
+	* OPERATORS/op-fm-fs.cc: Ditto.
+	* OPERATORS/op-m-s.cc: Ditto.
+	* OPERATORS/op-int.h (OCTAVE_MS_INT_ASSIGN_OPS): Use homogeneous
+	integer scalar-to-matrix assignment.
+	(OCTAVE_MM_INT_ASSIGN_OPS): Use homogeneous integer matrix-to-matrix
+	assignment.
+
+	* Cell.h (Cell::index): Remove direct idx_vector overloads.
+	(Cell::assign): Remove direct idx_vector overloads.
+	(Cell::delete_elements): Remove direct idx_vector overloads.
+	* Cell.cc (Cell::index (const octave_value_list&)): Call
+	ArrayN<octave_value>::index.
+
+	* oct-map.h (Octave_map::index): Remove direct idx_vector overloads.
+	* oct-map.cc (Octave_map::index): Ditto.
+	* ov-base-mat.cc (octave_base_mat::do_index_op): Optimize scalar
+	indexing case.
+	(octave_base_mat::assign (const octave_value_list&, const MT&)):
+	Specialize variable argument number.
+	(octave_base_mat::assign (const octave_value_list&, const
+	typename MT::element_type&)):
+	New method overload with optimized scalar indexing case.
+
+	* ov-cell.cc (octave_base_matrix<Cell>::do_index_op,
+	octave_base_matrix<Cell>::assign,
+	octave_base_matrix<Cell>::delete_elements): Specialize.
+	(octave_cell::assign (const_octave_value_list, const octave_value&):
+	Delete method.
+	* ov-cell.h: Reflect change.
+
+	* ov-cx-mat.cc (octave_complex_matrix::assign): Delete overloads.
+	* ov-cx-mat.h: Reflect changes.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::assign): Delete overloads.
+	* ov-flt-cx-mat.h: Reflect changes.
+	* ov-list.cc (octave_list::do_index_op): Simplify.
+	* ov-struct.cc (octave_struct::do_index_op): Simplify.
+	* pt-eval.cc (tree_evaluator::visit_simple_for_command): Optimize
+	traversing a row vector.
+
+2009-02-05  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (Vignore_function_time_stamp):
+	Eliminate unused static variable.
+
+	* debug.cc (get_file_line): Override default precedence in logical
+	expression.
+
+	* ov-null-mat.cc (default_null_str_numeric_conversion_function,
+	default_null_sq_str_numeric_conversion_function,
+	default_null_matrix_numeric_conversion_function):
+	Avoid unused variable warning.
+
+	* ov-flt-re-diag.cc (octave_float_diag_matrix::save_binary):
+	Avoid unused parameter warning.
+	* pt-eval.cc (tree_evaluator::visit_if_clause): Likewise.
+	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type): Likewise.
+	* ov-base.cc (octave_base_value::subsref (const std::string&,
+	const std::list<octave_value_list>&, bool): Likewise.
+	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::save_binary):
+	Likewise.
+
+	* oct-hdf5.h: New file.
+	* ls-hdf5.cc, ov-base.h, ov.h: Include oct-hdf5.h instead of hdf5.h.
+	* ls-hdf5.h: Include oct-hdf5.h.
+	* load-save.cc: Include ls-hdf5.h instead of hdf5.h.
+	* ov-base-sparse.cc, load-save.cc:
+	Don't protect #include "ls-hdf5.h" with #ifdef.
+
+2009-02-04  Kai Habel  <kai.habel@gmx.de>
+
+	* gl-render.cc (opengl_renderer::draw (surface::properties)):
+	Normalize surface normals. Correct calculation of diffuse lighting.
+	* gl-render.cc (opengl_renderer::draw (patch::properties)):
+	Correct calculation of diffuse lighting.
+
+2009-02-04  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (do_which): If NAME is not in the symbol table, look for
+	a function file in the load path.
+	(raw_help_from_file): Unwind-protect and set reading_script_file.
+
+	* pt-loop.h, pt-loop.cc (evaluating_looping_command):
+	Delete global variable and all uses.
+	* parse.y, parse.h (evaluating_function_body): Delete global
+	variable and all uses.
+	(make_break_command, make_continue_command, make_return_command):
+	Use tree_evaluator::in_fcn_or_script_body and
+	tree_evaluator::in_loop_command instead of
+	evaluating_function_body and evaluating_looping_command.
+
+	* pt-eval.h (tree_evaluator::in_function_or_script_body):
+	Delete 	member variable and all uses.
+	(tree_evaluator::reset): Delete function and all uses.
+
+	* pt-eval.cc, pt-eval.h (tree_evaluator::in_fcn_or_script_body,
+	tree_evaluator::in_loop_command): New static variables.
+	(tree_evaluator::visit_simple_for_command,
+	tree_evaluator::visit_complex_for_command,
+	tree_evaluator::visit_while_command,
+	tree_evaluator::visit_do_until_command): Unwind-protect and set
+	tree_evaluator::in_loop_command instead of
+	evaluating_looping_command.
+	(tree_evaluator::visit_statement): Only call echo_code if
+	evaluating function or script and (Vecho_executing_commands &
+	ECHO_FUNCTIONS).  Use tree_evaluator::in_fcn_or_script_body
+	instead of evaluating_function_body.
+
+	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op):
+	octave_user_function::do_multi_index_op): Unwind-protect and set
+	tree_evaluator::in_fcn_or_script_body.
+
+	* pt-stmt.cc, pt-stmt.h (tree_statement::echo_code):
+	Rename from maybe_echo_code.  Simplify.
+
+2009-02-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-loop.h (tree_simple_for_command::do_for_loop_once,
+	tree_complex_for_command::do_for_loop_once): Remove obsolete decls.
+	* pt-loop.cc (quit_loop_now): Remove obsolete method.
+	* pt-eval.cc (DO_ND_LOOP): Delete macro.
+	(tree_evaluator::visit_simple_for_command): Use the generic
+	do_index_op for iterating matrices.
+
+2009-02-04  John W. Eaton  <jwe@octave.org>
+
+	New evaluator and debugger derived from tree-walker class.
+
+	* pt-eval.h, pt-eval.cc: New files.  Parse tree evaluator code
+	adapted from eval member functions in classes derived from
+	tree_command.
+	* Makefile.in (PT_INCLUDES, PT_SRC): Add them to the lists
+
+	* pt-cmd.cc (tree_function_def::eval): Delete.
+	* pt-cmd.h: Delete decl.
+	(tree_command::eval): Delete pure virtual function.
+	(tree_no_op_command::eval): Delete.
+	(tree_function_def::function): Return octave_value, instead of
+	pointer to octave_function.  Change all uses.
+
+	* pt-except.cc (do_catch_code, tree_try_catch_command::eval,
+	do_unwind_protect_cleanup_code,
+	tree_unwind_protect_command::eval): Delete.
+	* pt-except.h: Delete decls.
+
+	* pt-jump.cc (tree_break_command::eval, tree_return_command::eval,
+	tree_continue_command::eval): Delete.
+	* pt-jump.h: Delete decls.
+
+	* pt-loop.cc (DO_ND_LOOP): Delete macro.
+	(tree_while_command::eval, tree_do_until_command::eval,
+	tree_simple_for_command::do_for_loop_once,
+	tree_simple_for_command::eval,
+	tree_complex_for_command::do_for_loop_once,
+	tree_complex_for_command::eval):
+	* pt-loop.h: Delete decls.
+
+	* pt-select.cc (tree_if_clause::eval, tree_if_command_list::eval,
+	tree_if_command::eval, tree_switch_case::eval,
+	tree_switch_case_list::eval, tree_switch_command::eval): Delete.
+	* pt-select.h: Delete decls.
+	(class tree_if_clause, class tree_switch_case): Derive from tree.
+	Handle line and column in constructors.
+
+	* pt-stmt.cc (tree_statement::eval): Delete
+	* pt-stmt.h: Delete decl.
+
+	* pt-stmt.cc, pt-stmt.h (tree_statement::is_command,
+	tree_statement::is_expression, tree_statement::line,
+	tree_statement::column): Now const.
+
+	* pt-stmt.cc (tree_statement::set_print_flag,
+	tree_statement::is_end_of_fcn_or_script): New functions.
+	* pt-stmt.h: Provide decl.
+	(set_breakpoint, delete_breakpoint, is_breakpoint): New function.
+	(bp): New member variable.
+	(print_result): Delete member variable.
+	(tree_statement_list::anon_function_body): New member variable.
+	(tree_statement_list::mark_as_anon_function_body,
+	tree_statement_list::is_anon_function_body,
+	tree_statement_list::is_script_body): New functions.
+
+	* pt-decl.cc (tree_decl_init_list::eval,
+	tree_decl_command::accept, tree_global_command::do_init,
+	tree_global_command::eval, tree_static_command::do_init,
+	tree_static_command::eval): Delete.
+	* pt-decl.h: Delete decls.
+	(tree_decl_elt::eval_fcn): Delete typedef.
+
+	* pt-decl.cc (tree_global_command::accept,
+	tree_static_command::accept): New functions.
+
+	* pt-stmt.cc (tree_statement::print_result): Move here from
+	pt-stmt.h.  Return true if expr is printable.
+
+	* ov-base.cc (Vsilent_functions): Delete.
+	(octave_base_value::print_with_name): Don't check
+	evaluating_function_body && Vsilent_functions here.
+	* ov-class.cc (octave_class::print_with_name): Likewise.
+	* ov-base.h (Vsilent_functions): Delete decl.
+	* pt-eval.cc (Fsilent_functions): Move here from ov-base.cc.
+	(Vsilent_functions): New static variable.
+
+	* sighandlers.cc (user_abort): Set tree_evaluator::debug_mode here.
+
+	* pt.h (tree::bp): Rename from tree::break_point.
+	(tree::set_breakpoint, tree::delete_breakpoint, tree::is_breakpoint):
+	No longer virtual.
+
+	* input.cc (get_debug_input): Use current_evaluator and
+	tree-walker to evaluate command.
+	* ov-usr-fcn.cc (octave_user_script::do_multi_index_op): Likewise.
+	* toplev.cc (main_loop): Likewise.
+	* parse.y (eval_string):
+
+	* input.h, input.cc (Vdebugging_current_line): Delete.
+	(get_debug_input): Use tree_evaluator::debug_line instead of
+	Vdebugging_current_line.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Handle inline functions and anonymous functions as single
+	expressions.
+	* parse.y (eval_string): Likewise.
+
+	* parse.y (make_do_until_command): Rename first argument from
+	do_tok to until_tok.
+	(loop_command): Pass UNTIL token instead of DO token to
+	make_do_until_command.
+	(make_elseif_clause): New arg, elseif_tok.  Pass line and column
+	info to tree_if_clause constructor.
+	(elseif_clause): Pass ELSEIF token to make_elseif_clause.
+	(make_switch_case): New arg, case_tok.  Pass line and column info
+	to tree_switch_case constructor.
+	(switch_case): Pass CASE token to make_switch_case.
+	(make_script): New arg end_script.  Append it to cmds.
+	(script): Create no-op command for end of script and pass it to
+	make_script.
+	(start_function): New arg, end_function. Append it to body.
+	(function2): Pass end_function to start_function.
+	(make_end): New function.
+	(function_end): Declare as tree_statement_type.
+	Create no-op command for end of script.
+	(make_anon_fcn_handle): Mark body as anonymous function.
+	(set_stmt_print_flag): Set print flag for all separator types
+
+	* parse.y (fold (tree_binary_expression*),
+	fold (tree_unary_expression *),	finish_colon_expression,
+	finish_matrix): Call rvalue1 instead of rvalue.
+	Stash line number in new tree_constant object.
+
+	* debug.h (bp_table::have_breakpoints): New static function.
+	(bp_table::do_have_breakpoints): New member function.
+	* debug.cc (bp_table::do_add_breakpoint,
+	bp_table::do_remove_breakpoint,
+	bp_table::do_remove_all_breakpoints_in_file,
+	bp_table::do_remove_all_breakpoints): Call
+	bp_table::have_breakpoints to set tree_evaluator::debug_mode.
+	(Fdbnext): Delete function.  Alias to dbstep.
+	(Fdbquit, Fdbcont): Set tree_evaluator::dbstep_flag to zero.
+	(Fdbstep): Rewrite to use tree_evaluator::dbstep_flag instead of
+	tree::break_next, tree::last_line, tree::break_function, and
+	tree::last_break_function.
+	(Fdbwhere): Use tree_evaluator::debug_line and
+	tree_evaluator::debug_column to get current line and column info.
+	Don't print column if it is less than zero.
+	* pt.cc, pt.h (tree::break_next, tree::last_line,
+	tree::last_break_function, tree::break_function,
+	tree::break_statement): Delete.
+
+	* pt-bp.cc (tree_breakpoint::visit_global_command,
+	tree_breakpoint::visit_static_command,
+	tree_breakpoint::take_action (tree_statement&)): New functions.
+	* pt-bp.h: Provide decls.
+
+	* pt-bp.h (tree_walker::visit_global_command,
+	tree_walker::visit_static_command): New pure virtual functions.
+	(tree_walker::visit_decl_command): Delete.
+
+	* pt-bp.cc (tree_breakpoint::visit_decl_command): Delete.
+	* pt-bp.h: Delete decl.
+	(MAYBE_DO_BREAKPOINT): Delete macro and all uses.
+
+	* pt-bp.cc (tree_breakpoint::visit_no_op_command): Do nothing.
+	(tree_breakpoint::visit_argument_list,
+	tree_breakpoint::visit_binary_expression,
+	tree_breakpoint::visit_colon_expression,
+	tree_breakpoint::visit_decl_elt,
+	tree_breakpoint::visit_decl_init_list,
+	tree_breakpoint::visit_octave_user_script,
+	tree_breakpoint::visit_octave_user_function,
+	tree_breakpoint::visit_octave_user_function_header,
+	tree_breakpoint::visit_octave_user_function_trailer,
+	tree_breakpoint::visit_identifier,
+	tree_breakpoint::visit_index_expression,
+	tree_breakpoint::visit_matrix, tree_breakpoint::visit_cell,
+	tree_breakpoint::visit_multi_assignment,
+	tree_breakpoint::visit_anon_fcn_handle,
+	tree_breakpoint::visit_constant,
+	tree_breakpoint::visit_fcn_handle,
+	tree_breakpoint::visit_parameter_list,
+	tree_breakpoint::visit_postfix_expression,
+	tree_breakpoint::visit_prefix_expression,
+	tree_breakpoint::visit_return_list,
+	tree_breakpoint::visit_simple_assignment): Call panic_impossible
+	since breakpoints aren't set on expressions.
+	(tree_breakpoint::visit_if_clause): Fold into visit_if_command_list.
+	(tree_breakpoint::visit_switch_case): Fold into visit_switch_case_list.
+	(tree_breakpoint::visit_try_catch_command,
+	tree_breakpoint::visit_unwind_protect_command):
+	Don't set breakpoint on command itself, the the statements it
+	contains.
+	(tree_breakpoint::visit_global_command,
+	tree_breakpoint::visit_static_command): Call do_decl_command to do
+	actual work.
+	(tree_breakpoint::visit_while_command,
+	tree_breakpoint::visit_do_until_command,
+	tree_breakpoint::visit_simple_for_command,
+	tree_breakpoint::visit_complex_for_command,
+	tree_breakpoint::visit_statement,
+	tree_breakpoint::visit_statement_list,
+	tree_breakpoint::visit_switch_case_list): Set breakpoints at
+	appropriate places.
+
+	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_global_command,
+	tree_print_code::visit_static_command,
+	tree_print_code::do_decl_command): New functions.
+	(tree_print_code::visit_decl_command): Delete.
+
+	* pt-check.h, pt-check.cc (tree_checker::visit_global_command,
+	tree_checker::visit_static_command, tree_checker::do_decl_command):
+	New functions.
+	(tree_checker::visit_decl_command): Delete.
+
+	* pt-select.cc (tree_switch_case::label_matches): Call rvalue1
+	instead of rvalue.
+
+	* pt-exp.h, pt-exp.cc (tree_expression::rvalue1): New function.
+	(tree_expression::rvalue (void)): Delete.
+	(tree_expression::is_logically_true): Call rvalue1 instead of rvalue.
+
+	* pt-fcn-handle.h, pt-fcn-handle.cc (tree_fcn_handle::rvalue1,
+	tree_anon_fcn_handle::rvalue1): New functions.
+	(tree_fcn_handle:rvalue (void),
+	tree_anon_fcn_handle::rvalue1 (void)): Delete.
+	(tree_fcn_handle::rvalue (int), tree_anon_fcn_handle_rvalue (int)):
+	Call rvalue1 instead of rvalue.
+
+	* pt-idx.h, pt-idx.cc (tree_index_expression::rvalue1): New function.
+	(tree_index_expression::rvalue (void)): Delete.
+	(tree_index_expression::get_struct_index,
+	tree_index_expression::rvalue (int)): Call rvalue1 instead of rvalue.
+
+	* pt-mat.h, pt-mat.cc (tree_matrix::rvalue1): New function.
+	(tree_matrix::rvalue (void)): Delete.
+	(tm_row_const::tm_row_const_rep::init,
+	tree_matrix::rvalue (int)): Call rvalue1 instead of rvalue.
+
+	* pt-misc.cc (tree_parameter_list::convert_to_const_vector):
+	Call rvalue1 instead of rvalue.
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	Likewise.
+
+	* pt-unop.h, pt-unop.cc (tree_prefix_expression::rvalue1,
+	tree_postfix_expression::rvalue1): New functions.
+	(tree_prefix_expression::rvalue (void),
+	tree_postfix_expression::rvalue (void)): Delete.
+	(tree_prefix_expression::rvalue (int),
+	tree_postfix_expression::rvalue (int)):
+	Call rvalue1 instead of rvalue.
+
+	* pt-id.h, pt-id.cc (tree_identifier::rvalue1): New function.
+	(tree_identifier::rvalue (void)): Delete.
+
+	* pt-assign.h, pt-assign.cc (tree_simple_assignment::rvalue1,
+	tree_multi_assignment::rvalue1): New functions.
+	(tree_simple_assignment::rvalue (void),
+	tree_multi_assignment::rvalue (void): Delete.
+	(tree_simple_assignment::rvalue (int)):
+	Call rvalue1 instead of rvalue.
+
+	* pt-binop.h, pt-binop.cc (tree_binary_expression::rvalue1,
+	tree_boolean_expression::rvalue1): New functions.
+	(tree_binary_expression::rvalue (void),
+	tree_boolean_expression::rvalue (void)): Delete.
+	(tree_binary_expression::rvalue (int),
+	tree_boolean_expression::rvalue (int)):
+	Call rvalue1 instead of rvalue.
+
+	* pt-cbinop.h, pt-cbinop.cc
+	(tree_compound_binary_expression::rvalue1): New function.
+	(tree_compound_binary_expression::rvalue (void)): Delete.
+
+	* pt-cell.h, pt-cell.cc (tree_cell::rvalue1): New function.
+	(tree_cell::rvalue (void)): Delete.
+	(tree_cell::rvalue (int)): Call rvalue1 instead of rvalue.
+
+	* pt-colon.h, pt-colon.cc (tree_colon_expression::rvalue1):
+	New function.
+	(tree_colon_expression::rvalue (void)): Delete.
+	(tree_colon_expression::rvalue (int)):
+	Call rvalue1 instead of rvalue.
+
+	* pt-const.h, pt-const.cc (tree_constant::rvalue1): New function.
+	(tree_constant::rvalue (void)): Delete.
+	(tree_constant::rvalue (int)): Call rvalue1 instead of rvalue.
+
+	* pt-decl.h, pt-decl.cc (tree_decl_elt::ravlue1): New function.
+	(tree_decl_elt::ravlue (void)): Delete.
+	(tree_decl_elt::eval): Call rvalue1 instead of rvalue.
+
+2009-02-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* TEMPLATE-INST/Array-tc.cc: Replace vec_index by pointers.
+
+2009-02-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (octave_matrix::abs, octave_matrix::real,
+	octave_matrix::imag, octave_matrix::conj): Use special code.
+	* ov-flt-re-mat.cc (octave_float_matrix::abs, octave_float_matrix::real,
+	octave_float_matrix::imag, octave_float_matrix::conj): Use special code.
+	* ov-cx-mat.cc (octave_complex_matrix::abs, octave_complex_matrix::real,
+	octave_complex_matrix::imag, octave_complex_matrix::conj): Use special code.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::abs, octave_float_complex_matrix::real,
+	octave_float_complex_matrix::imag, octave_float_complex_matrix::conj): Use special code.
+
+2009-01-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Add missing check.
+
+2009-01-29  John W. Eaton  <jwe@octave.org>
+
+	* pt-stmt.cc (tree_statement::eval): Check
+	in_function_or_script_body instead of symbol_table::at_top_level ()
+	to decide whether to call octave_call_stack::set_statement.
+
+	* graphics.cc (properties::set_defaults): Also set
+	horizontalalignment, verticalalignmnt, and rotation properties for
+	new label objects here.
+
+	* ov-base-scalar.cc (octave_base_scalar<ST>::is_true (void) const):
+	Error if scalar is NaN.
+	* ov-base-mat.cc (octave_base_matrix<MT>::is_true (void) const):
+	Likewise, if any element of matrix is NaN.
+	* ov-cell.cc (octave_cell::is_true): New function.
+	* Cell.h (Cell::any_element_is_nan): New function.
+
+2009-01-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pr-output.cc:
+	(void octave_print_internal (..., const DiagMatrix& m,...),
+	(void octave_print_internal (..., const ComplexDiagMatrix& m,...),
+	(void octave_print_internal (..., const FloatDiagMatrix& m,...),
+	(void octave_print_internal (..., const FloatComplexDiagMatrix& m,...)):
+	New functions.
+	* pr-output.h: Declare them.
+	* ov-base-diag.cc (octave_base_diag::print_raw): Call
+	octave_print_internal.
+
+2009-01-28  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (install, uninstall): Handle SHLLIBPRE and SHLBINPRE
+	library prefixes.  From Marco Atzeri <marco_atzeri@yahoo.it>.
+
+2008-01-28  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Don't break for zero
+	length match, but rather advance the index by one character and
+	try again.
+
+2009-01-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Fix doc string.
+
+2009-01-27  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (Fcommand_line_path): Rename from Fcommandlinepath.
+
+2009-01-27 Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.cc (convert_position): Handle character units.
+	(default_axes_tick, default_figure_papersize,
+	default_figure_paperposition): New functions.
+	* graphics.h.in (class figure::properties): Use them to
+	initialize papersize, paperposition, xtick, ytick, and ztick
+	properties.
+
+2009-01-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc (Fqr): Treat empty matrices correctly.
+
+2009-01-26  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* display.cc (display_info::init): Use double instead of CGFloat.
+	Use HAVE_FRAMEWORK_CARBON instead of OCTAVE_USE_OS_X_API.
+
+2009-01-26  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_fcn): Handle @foo/bar.
+
+2009-01-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-cell.cc (tree_cell::rvalue): Optimize the single row case.
+
+2009-01-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-struct.cc (octave_struct::subsasgn): Reshape cs-list on rhs
+	according to the index expression.
+	* ov-cell.cc (octave_cell::subsasgn): Ditto.
+
+2008-12-25 Ben Abbott  <bpabbott@mac.com>
+
+	* load-path.cc (Fcommandlinepath): New function.
+	* load-path.h (load_path::get_command_line_path,
+	load_path::do_get_command_line_path): New functions.
+
+2009-01-24 Ben Abbott  <bpabbott@mac.com>
+
+	* DLD-FUNCTIONS/eigs.cc: eigs.cc: skip tests if ARPACK is missing.
+
+2009-01-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* help.cc (do_get_help_text, raw_help_from_symbol_table): new output to
+	flag the a function is found but not documented.
+
+2009-01-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* help.cc (raw_help_from_file): No longer search for files called
+	'Contents.m', as this is moved to 'script/help.m'.
+
+
+2009-01-23  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_call_stack::do_goto_caller_frame):
+	Also allow caller frame to be base frame, not just user code.
+
+2009-01-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* gripes.cc (gripe_indexed_cs_list, gripe_invalid_inquiry_subscript):
+	New functions.
+	* gripes.h: Declare them.
+	* pt-idx.cc: Remove definitions of the above funcs.
+	* ov-cell.cc (octave_cell::subsref): Declare constants as const.
+	(octave_cell::subsasgn): Remove dead branch, declare constants as const.
+	(octave_cell::list_value): Optimize.
+	* ov-struct.cc
+	(octave_struct::subsref): Declare constants as const.
+	(octave_struct::subsasgn): Remove dead branch, declare constants as const.
+	* ov-cs-list.cc (octave_cs_list::octave_cs_list (const Cell&)):
+	Optimize.
+	* oct-obj.cc (octave_value_list::octave_value_list (const
+	std::list<octave_value_list>&)): New constructor.
+	* oct-obj.h: Declare it.
+	* pt-arg-list.cc (convert_to_const_vector): Optimize.
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find): Use const
+	reference to avoid redundant copy.
+	* ov-usr-fcn.cc (octave_user_function::bind_automatic_vars): Optimize.
+	(octave_user_function::octave_all_va_args): Optimize.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.h (Cell::Cell (octave_value_list)): Only declare.
+	(Cell::index (*)): Change resize_ok type to bool.
+	* Cell.cc (Cell::Cell (octave_value_list)): Redefine.
+	* oct-obj.h, oct-obj.cc: Change octave_value_list::data to
+	Cell variable, reflect changes.
+
+2009-01-22  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (do_which (std::ostream&, const std::string&), Fwhich):
+	Delete.
+	(do_which (const std::string&, std::string&), F__which__):
+	New functions.
+	* do_which (const std::string&):
+	Call do_which (const std::string&, std::string&) to do the work.
+
+2009-01-22  S�ren Hauberg  <hauberg@gmail.com>
+
+	* defun-int.h (print_usage): No longer mark as deprecated.
+	* defun.cc (print_usage): Simply call feval to execute print_usage.m.
+	* help.cc (additional_help_message, display_names_from_help_list,
+	display_symtab_names, simple_help, try_info, help_from_info,
+	display_help_text, display_usage_text, raw_help_from_list,
+	help_from_list, help_from_symbol_table, help_from_file,
+	builtin_help, Fhelp, display_file, do_type, Ftype,
+	first_help_sentence, print_lookfor, Flookfor): Delete.
+	(looks_like_html, raw_help_from_map, raw_help, do_get_help_text,
+	F__operators__, F__keywords__, F__builtins__,
+	file_is_in_dir, F__list_functions__): New functions.
+	(pair_type, map_iter): New typedefs.
+	(operators, keywords): Use pair_type for elements of list.
+	(names): Use map for (keyword, doc) lists.
+	(make_name_list): Sprinkle with const.
+	* help.h (display_help_text, display_usage_text,
+	additional_help_message): Delete decls.
+
+2009-01-22  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Check OCTAVEUSE_OS_X_API instead
+	of __APPLE__ && __MACH__.
+
+	* display.cc (display_info::init): Get info for Windows and OS X
+	systems.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-idx.cc (tree_index_expression::lvalue): Correct tmpi when seeing
+	a plain struct component.
+	* ov-struct.cc (octave_struct::subsasgn): Use proper type substr in
+	empty_conv.
+
+2009-01-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc: Remove HAVE_QRUPDATE check.
+	* DLD-FUNCTIONS/chol.cc: Ditto.
+
+2009-01-21  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (display.o): Add X11_INCFLAGS to CPPFLAGS.
+	(octave$(EXEEXT)): Link with X11_LIBS.
+
+	* display.h, display.cc: New files.
+	* graphics.cc (default_screendepth, default_screensize,
+	default_screenpixelsperinch): New functions.
+	* graphics.h.in (class root_figure::properties): New property,
+	screendepth.  Use default_screensize to initialize screensize
+	property.  Use default_screenpixelsperinch to initialize
+	screenpixelsperinch property.
+
+	* graphics.cc (properties::init): Set default xlabel, ylabel,
+	zlabel, and title properties that differ from default text
+	properties.
+
+2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-range.cc: Define & register range-scalar ops.
+
+2009-01-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::subsref (..., bool auto_add)): New method.
+	(octave_value::next_subsref (bool auto_add, ...)): New method.
+	* ov.cc (octave_value::next_subsref (bool auto_add, ...)): New method.
+	* ov-base.h (octave_base_value::subsref (..., bool auto_add)): New
+	virtual method.
+	* ov-base.cc (octave_base_value::subsref (..., bool auto_add)): New
+	virtual method.
+	* ov-cell.cc (octave_cell::subsref (..., bool auto_add)): New virtual
+	method.
+	* ov-cell.h (octave_cell::subsref (..., bool auto_add)): Declare it.
+	* ov-struct.cc (octave_struct::subsref (..., bool auto_add)): New
+	virtual method.
+	(octave_struct::subsref (const std::string& type, const
+	std::list<octave_value_list>& idx)): Do not allow resizing.
+	* ov-struct.h (octave_struct::subsref (..., bool auto_add)): Declare
+	it.
+	* ov-struct.cc (octave_struct::dotref (..., bool auto_add)): New
+	virtual method.
+	* ov-struct.h (octave_struct::dotref (..., bool auto_add)): Declare it.
+	* pt-idx.cc (tree_index_expression::rvalue): Do not reevaluate already
+	evaluated part of the index chain.
+	(tree_index_expression::rvalue): Do not reevaluate already evaluated
+	part of the index chain. Do not actually perform trailing indexing.
+	Do not allow indexing cs-lists.
+
+2009-01-20  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Ffstat): New function.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete, Fqrshift):
+	Reflect changes in liboctave.
+	* DLD-FUNCTIONS/chol.cc (Fcholupdate, Fcholinsert):
+	Reflect changes in liboctave.
+
+2009-01-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::make_unique (int)): New method.
+	* oct-obj.h (octave_value_list::octave_value_list (const Cell&)): New
+	constructor.
+	* ov-cell.cc (octave_cell::subsasgn): Allow composed {} indexing
+	in multi-assignments. Optimize.
+	* ov-struct.cc (octave_struct::subsasgn): Correct composed {} indexing
+	in multi-assignments. Optimize & fix bugs.
+	* pt-idx.cc (tree_index_expression::lvalue): Rewrite to allow
+	specifying cs-list anywhere in index chain, be more robust.
+
+2009-01-19  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (grab_comment_block): If not reading input from a file,
+	bail out at first newline inside a comment.
+
+	* lex.l (lexer_debug_flag): New static variable.
+	(F__lexer_debug_flag__): New function.
+	(LEXER_DEBUG): New macro.  Use it in all patterns.
+	(DISPLAY_TOK_AND_RETURN): Also display token if lexer_debug_flag
+	is set.
+	(process_comment): Display comment if lexer_debug_flag is set.
+	(display_character, display_state, lexer_debug): New static functions.
+	(xunput): Display character if lexer_debug_flag is set.
+
+2009-01-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h: Describe usage of storable_value and make_storable_value.
+	* ov.cc: Remove FIXME comment.
+
+2009-01-15  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Freshape): Include mismatched dimensions in error message.
+	From Robert Millan <rmh@aybabtu.com>.
+
+2009-01-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.cc (octave_value::maybe_economize): New method.
+	(octave_value::non_null_value): rename to storable_value.
+	(octave_value::make_non_null_value): rename to make_storable_value.
+	* ov-base.h (octave_base_value::maybe_economize): New method.
+	* ov-base-mat.h (octave_base_mat::maybe_economize): New override.
+	* oct-obj.cc (octave_value_list::normalize_null_values):
+	Rename to make_storable_values, use make_storable_value.
+	* oct-obj.h: Ditto.
+	* ov-builtin.cc: non_null_value -> storable_value.
+	* ov-cell.cc: Ditto.
+	* ov-struct.cc: Ditto.
+	* pt-decl.h: Ditto.
+
+2009-01-15  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image):
+	Initialize bitdepth.
+
+2009-01-14  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/chol.cc,
+	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
+	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
+	DLD-FUNCTIONS/givens.cc, DLD-FUNCTIONS/hess.cc,
+	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/qz.cc,
+	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/svd.cc,
+	DLD-FUNCTIONS/syl.cc, data.cc, mappers.cc:
+	Use ifnottex instead of ifinfo.
+
+2009-01-14  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_set): Call do_clear after disabling
+	add_hook.
+
+2009-01-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* dirfns.cc (Freadddir): qsort -> sort.
+	* graphics.cc (maybe_set_children): Ditto.
+	* help.cc (simple_help): Ditto.
+	* input.cc (generate_possible_completions): Ditto.
+	* oct_map.cc (keys_ok): Ditto.
+	* ov-fcn-inline.cc (Finline): Ditto.
+	* variables.cc (Fisrawcommand): Ditto.
+
+2009-01-12  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (maximum_braindamage): Set confirm_recursive_rmdir to
+	false.
+
+	* strfns.cc (Fstrcmp, Fstrncmp): Simplify by initializing all
+	elements of output to false with constructor argument.
+
+2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strfns.cc (Fstrncmp): New test.
+
+2009-01-12  John W. Eaton  <jwe@octave.org>
+
+	* pt-stmt.h (tree_statement::is_null_statement): New function.
+	* parse.y (set_stmt_print_flag): Return list.  Remove trailing
+	null statements from list.
+	(list, simple_list): Simplify action.
+	(make_statement, make_statement_list, append_statement_list):
+	Always create statements and them to the list.
+
+	* base-list.h (octave_base_list::push_front,
+	octave_base_list::push_back, octave_base_list::pop_front,
+	octave_base_list::pop_back): New functions.
+
+	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete, Fqrshift):
+	Require args to be numeric, not necessarily matrix objects.
+
+2009-01-12  Ben Abbott  <bpabbott@mac.com>
+
+	* graphics.h.in (text::properties::fontunits): Fix typo in list of
+	possible values.
+
+2009-01-12  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fstrvcat, Fchar): Use queue to avoid duplicate calls
+	to all_strings.
+
+2009-01-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strfns.cc (Fstrvcap): New function.
+
+2008-11-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strfns.cc (Fchar, Fischar, Fstrncmp, Flist_in_columns):
+	Improve documentation strings.  Add examples and tests.
+
+2009-01-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-perm.cc (octave_perm_matrix::do_index_op): Return shallow copy
+	when indexed by (:,:).
+	* ov-base-mat.cc (octave_base_diag::do_index_op): Return shallow copy
+	when indexed by (:,:). Optimize indexing equivalent to resizing.
+	* data.cc: Fix tests.
+	* mappers.cc: Fix tests.
+
+2009-01-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-diag.h, ov-base-mat.h, ov-base-scalar.h, ov-base-sparse.h,
+	ov-base.cc, ov-base.h, ov-perm.h, ov-range.h, ov.h: Add full_value
+	methods to octave_value, octave_base_value and its relevant
+	subclasses.
+	* data.cc (Ffull): New DEFUN.
+	* DLD-FUNCTIONS/sparse.cc (Ffull): move to data.cc.
+2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::is_copy_of): New method.
+	* ov-struct.cc (numeric_conv): Add output parameter orig.
+	(octave_struct::subsasgn): Temporarily erase duplicate lhs value prior
+	to assignment.
+
+2009-01-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.cc (octave_value_list::all_scalars): New method.
+	* oct-obj.h: Declare it.
+	* ov-cell.cc (octave_cell::subsasgn): Disable assigning
+	to non-scalar {}-indexed cell, unless in a multi-assignment.
+
+2009-01-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/sparse.cc (Ffull): Convert diagonal & permutation
+	matrices, leave other classes untouched.
+
+2009-01-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-cdm-cdm.cc: Install missing widening op.
+	* OPERATORS/op-dm-dm.cc: Ditto.
+	* OPERATORS/op-fcdm-fcdm.cc: Ditto.
+	* OPERATORS/op-fdm-fdm.cc: Ditto.
+	* OPERATORS/op-pm-pm.cc: Ditto.
+	* OPERATORS/op-fpm-fpm.cc: Ditto.
+
+2009-01-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::subsasgn): Put erased copy back after
+	make_unique has been called.
+
+2009-01-09  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.cc: Calculate normals for surface boundaries, use
+	more neighboring points to calculate interior normals
+
+2009-01-09  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (get_user_input (void)): Don't increment input_line_number.
+	* lex.l (xunput): New function.  Use it in place of yyunput
+	anywhere a newline character may be put back on the input stream.
+	Increment input_line_number in all rules that consume newlines
+	characters.
+	(text_yyinput): Increment input_line_number
+	(fixup_column_count): Increment input_line_number.
+	(prep_for_function): Set input_line_number to 1, not 0.
+	(reset_parser): Set input_line_number to current_command_number,
+	not current_command_number-1.
+	(flex_stream_reader::ungetc): Call xunput, not yyunput.
+	* parse.y (input_line_number): Initialize to 1, not 0.
+	(text_getc): Increment input_line_number correctly.
+	(stdio_stream_reader::ungetc): Decrement input_line_number if
+	putting back a newline character.
+	(parse_fcn_file): Set input_line_number to 1, not 0.
+	(eval_string): Unwind-protect input_line_number and
+	current_input_column.
+
+	* parse.y (make_statement): New function.
+	(statement): Use it.
+	(make_statement_list, append_statement_list): New functions.
+	(simple_list1, list1): Use them.
+
+2009-01-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (octave_cell::subsasgn): Erase duplicate lhs value
+	prior to assignment to avoid a redundant copy.
+
+2008-12-26  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* mappers.cc (Ftoascii), mappers.cc (Ftolower), mappers.cc
+	(Ftoupper), DLD-FUNCTIONS/regexp.cc (Fregexp),
+	DLD-FUNCTIONS/regexp.cc	(Fregexpi), DLD-FUNCTIONS/regexp.cc
+	(Fregexprep): Add references.
+
+2008-12-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-obj.h, oct-obj.cc (octave_value_list::valid_scalar_indices): Remove.
+	* ov-base-diag.cc, ov-base-diag.h, ov-base-scalar.cc, ov-base.h,
+	ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc, ov-bool-sparse.h,
+	ov-bool.cc, ov-bool.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.h,
+	ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-cx-sparse.cc, ov-cx-sparse.h, ov-float.cc, ov-float.h,
+	ov-flt-complex.cc, ov-flt-complex.h, ov-flt-cx-mat.cc,
+	ov-flt-cx-mat.h, ov-flt-re-mat.cc, ov-flt-re-mat.h, ov-intx.h,
+	ov-perm.cc, ov-perm.h, ov-range.h, ov-re-mat.cc, ov-re-mat.h,
+	ov-re-sparse.cc, ov-re-sparse.h, ov-scalar.cc, ov-scalar.h,
+	ov-str-mat.cc, ov-str-mat.h, ov.h:
+	Remove valid_as_scalar_index and valid_as_zero_index methods
+	from octave_value, octave_base_value and all of its subclasses.
+
+2008-12-26  Francesco Potortì  <pot@gnu.org>
+
+	* data.cc (resize): Add cross reference to postpad.
+
+2008-12-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-save.h (load_save_format_type, load_save_format_options): New
+	enums.
+	(load_save_format): Convert to a class.
+	* load-save.cc (do_save(..., const octave_value&,...)): Use fmt.type
+	in switch. Use options of LS_MAT_ASCII.
+	(do_load, write_header): Use format.type in switch.
+	* ls-mat-ascii.h (save_mat_ascii_data): Add tabs option.
+	* ls-mat-ascii.cc (save_mat_ascii_data): Implement it.
+
+2008-12-24  Ben Abbott  <bpabbott@mac.com>
+
+	* DLD-FUNCTIONS/chol.cc: Compare results to 0 in tests.
+	Delete spurious function calls in test block.
+
+2008-12-24  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/eigs.cc: Use "testif HAVE_ARPACK" to skip tests if
+	ARPACK is not available.
+
+	* Makefile.in (DLD_XSRC): Add eigs.cc to the list.
+
+	* load-save.cc (parse_save_options): Handle -double.
+
+2008-12-23  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/eigs.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it here.
+
+2008-12-22  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/__voronoi__.cc (F__voronoi__): Resize AtInf array
+	before returning it.
+
+2008-12-12  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/chol.cc (Fcholinv): Add test.
+
+2008-12-12  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ls-hdf5.cc (add_hdf5_data): Check for diagonal & permutation
+	matrices and convert them to full prior to saving.
+
+2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-mat.cc (Fdouble): Handle diagonal & perm matrices.
+	* ov-flt-re-mat.cc (Fsingle): Handle diagonal & perm matrices.
+
+2008-12-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-diag.cc (octave_base_diag<DMT,MT>::subsasgn): New method.
+	* ov-base-diag.h (octave_base_diag<DMT,MT>::subsasgn): Declare it.
+	(octave_base_diag<DMT,MT>::chk_valid_scalar): New method decl.
+
+	* ov-re-diag.cc (octave_diag_matrix::chk_valid_scalar): New method
+	override.
+	* ov-re-diag.h: Declare it.
+	* ov-flt-re-diag.cc (octave_float_diag_matrix::chk_valid_scalar): New
+	method override.
+	* ov-flt-re-diag.h: Declare it.
+	* ov-cx-diag.cc (octave_complex_diag_matrix::chk_valid_scalar): New
+	method override.
+	* ov-cx-diag.h: Declare it.
+	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::chk_valid_scalar):
+	New method override.
+	* ov-flt-cx-diag.h: Declare it.
+
+2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/expm.cc: Remove.
+	* Makefile.in: Update.
+
+2008-12-10  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::empty_clone): Construct an
+	empty matrix instead of zero.
+
+2008-12-07  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* mappers.cc (Ftolower): Make lower alias of tolower, add tests
+	* mappers.cc (Ftoupper): Make upper alias of toupper, add tests
+
+2008-12-09  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/balance.cc (Fbalance): Exploit the new AEPBAL functionality.
+
+2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xpow.cc ( xpow (const DiagMatrix& a, double b),
+	xpow (const DiagMatrix& a, const Complex& b),
+	xpow (const ComplexDiagMatrix& a, double b),
+	xpow (const ComplexDiagMatrix& a, const Complex& b),
+	xpow (const FloatDiagMatrix& a, float b),
+	xpow (const FloatDiagMatrix& a, const FloatComplex& b),
+	xpow (const FloatComplexDiagMatrix& a, float b),
+	xpow (const FloatComplexDiagMatrix& a, const FloatComplex& b)):
+	New methods.
+	* xpow.h: Declare them.
+	* OPERATORS/op-dms-template.cc: Support diagonal matrix ^ scalar.
+
+2008-12-08  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-re-diag.cc (octave_diag_matrix::save_binary,
+	octave_diag_matrix::load_binary): New methods.
+	* ov-re-diag.h: Declare them.
+	* ov-flt-re-diag.cc (octave_float_diag_matrix::save_binary,
+	octave_float_diag_matrix::load_binary): New methods.
+	* ov-flt-re-diag.h: Declare them.
+	* ov-cx-diag.cc (octave_complex_diag_matrix::save_binary,
+	octave_complex_diag_matrix::load_binary): New methods.
+	* ov-cx-diag.h: Declare them.
+	* ov-flt-cx-diag.cc (octave_float_complex_diag_matrix::save_binary,
+	octave_float_complex_diag_matrix::load_binary): New methods.
+	* ov-flt-cx-diag.h: Declare them.
+	* ov-perm.cc (octave_perm_matrix::save_binary,
+	octave_perm_matrix::load_binary): New methods.
+	* ov-perm.h: Declare them.
+
+2008-12-06  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::load_binary): Call istream::get
+	rather than istream::read to supply null terminating character.
+
+2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
+	* file-io.cc, gl-render.cc, load-save.cc, ls-hdf5.cc, ls-mat4.cc,
+	ls-mat5.cc, ls-oct-binary.cc, mex.cc, oct.h, ov-base-int.cc,
+	ov-bool-mat.cc, ov-bool-sparse.cc, ov-cell.cc, ov-class.cc,
+	ov-cx-mat.cc, ov-cx-sparse.cc, ov-fcn-handle.cc, ov-fcn-inline.cc,
+	ov-flt-cx-mat.cc, ov-flt-re-mat.cc, ov-re-mat.cc, ov-re-sparse.cc,
+	ov-str-mat.cc, ov-struct.cc, toplev.cc,
+	DLD-FUNCTIONS/__lin_interpn__.cc, DLD-FUNCTIONS/amd.cc,
+	DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/gcd.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/symbfact.cc, DLD-FUNCTIONS/symrcm.cc:
+	Include oct-locbuf.h.
+
+2008-12-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base-diag.cc (save_ascii, load_ascii): Save natively.
+	* ov-base-diag.h (load_ascii): Declare.
+	* ov-perm.cc (save_ascii, load_ascii): Save natively.
+	* ov-perm.h (load_ascii): Declare.
+
+2008-12-04  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strfns.cc (Fchar): Add test from str2mat.m
+
+2008-12-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov.h (octave_value::is_perm_matrix): New method.
+	* ov-base.h (octave_base_value::is_perm_matrix): New method.
+	* ov-perm.h (octave_perm_matrix::is_perm_matrix): New method.
+	* DLD-FUNCTIONS/inv.cc (Finv): Handle permutation matrices specially,
+	compute rcond for diagonal matrices.
+	* DLD-FUNCTIONS/det.cc (Fdet): Handle permutation & diagonal matrices
+	specially.
+
+2008-12-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-perm.h: New source.
+	* ov-perm.cc: New source.
+	* ov-flt-perm.h: New source.
+	* ov-flt-perm.cc: New source.
+	* ov-base-diag.cc (octave_base_diag<DMT, MT>::do_index_op):
+	If subscripting an identity matrix by permutation(s), return a
+	permutation matrix object.
+	* ov.cc (octave_value::octave_value (const PermMatrix&)): New
+	constructor.
+	* ov.cc (octave_value::octave_value (const PermMatrix&)): Declare it.
+	* op-cm-pm.cc: New source.
+	* op-fcm-fpm.cc: New source.
+	* op-fm-fpm.cc: New source.
+	* op-fpm-fcm.cc: New source.
+	* op-fpm-fm.cc: New source.
+	* op-fpm-fpm.cc: New source.
+	* op-m-pm.cc: New source.
+	* op-pm-cm.cc: New source.
+	* op-pm-m.cc: New source.
+	* op-pm-pm.cc: New source.
+	* op-pm-template.cc: New source.
+	* Makefile.in: Include new sources.
+	* DLD-FUNCTIONS/qr.cc (Fqr): Reflect interface changes of QR classes.
+
+2008-12-03  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (bp_table::do_get_breakpoint_list): Style fixes.
+
+2008-12-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::is_diag_matrix): New virtual method.
+	* ops.h (CONCAT2, CONCAT3): New macros. Use CONCAT macros instead of
+	direct token pasting to avoid disabling argument prescan.
+	* xdiv.cc, xdiv.h: Implement xdiv and xleftdiv overloads for diagonal
+	and mixed dense-diagonal operands.
+
+	* ov-re-diag.h: New source.
+	* ov-re-diag.cc: New source.
+	* ov-flt-re-diag.h: New source.
+	* ov-flt-re-diag.cc: New source.
+	* ov-base-diag.h: New source.
+	* ov-base-diag.cc: New source.
+	* OPERATORS/op-m-dm.cc: New source.
+	* OPERATORS/op-m-cdm.cc: New source.
+	* OPERATORS/op-fm-fdm.cc: New source.
+	* OPERATORS/op-fm-fcdm.cc: New source.
+	* OPERATORS/op-fdm-fs.cc: New source.
+	* OPERATORS/op-fdm-fm.cc: New source.
+	* OPERATORS/op-fdm-fdm.cc: New source.
+	* OPERATORS/op-fdm-fcs.cc: New source.
+	* OPERATORS/op-fdm-fcm.cc: New source.
+	* OPERATORS/op-fdm-fcdm.cc: New source.
+	* OPERATORS/op-fcm-fdm.cc: New source.
+	* OPERATORS/op-fcm-fcdm.cc: New source.
+	* OPERATORS/op-fcdm-fs.cc: New source.
+	* OPERATORS/op-fcdm-fm.cc: New source.
+	* OPERATORS/op-fcdm-fdm.cc: New source.
+	* OPERATORS/op-fcdm-fcs.cc: New source.
+	* OPERATORS/op-fcdm-fcm.cc: New source.
+	* OPERATORS/op-fcdm-fcdm.cc: New source.
+	* OPERATORS/op-dms-template.cc: New source.
+	* OPERATORS/op-dm-template.cc: New source.
+	* OPERATORS/op-dm-s.cc: New source.
+	* OPERATORS/op-dm-m.cc: New source.
+	* OPERATORS/op-dm-dm.cc: New source.
+	* OPERATORS/op-dm-cs.cc: New source.
+	* OPERATORS/op-dm-cm.cc: New source.
+	* OPERATORS/op-dm-cdm.cc: New source.
+	* OPERATORS/op-cm-dm.cc: New source.
+	* OPERATORS/op-cm-cdm.cc: New source.
+	* OPERATORS/op-cdm-s.cc: New source.
+	* OPERATORS/op-cdm-m.cc: New source.
+	* OPERATORS/op-cdm-dm.cc: New source.
+	* OPERATORS/op-cdm-cs.cc: New source.
+	* OPERATORS/op-cdm-cm.cc: New source.
+	* OPERATORS/op-cdm-cdm.cc: New source.
+	* Makefile.in: Include them.
+
+	* ov-re-mat.cc (octave_matrix::diag): New method override.
+	* ov-re-mat.h: Declare it.
+	* ov-cx-mat.cc: Likewise with octave_complex_matrix.
+	* ov-cx-mat.h: Likewise with octave_complex_matrix.
+	* ov-flt-re-mat.cc: Likewise with octave_float_matrix.
+	* ov-flt-re-mat.h: Likewise with octave_float_matrix.
+	* ov-flt-cx-mat.cc: Likewise with octave_float_complex_matrix.
+	* ov-flt-cx-mat.h: Likewise with octave_float_complex_matrix.
+	* ov.cc (octave_value::octave_value (const DiagMatrix&))
+	(octave_value::octave_value (const FloatDiagMatrix&))
+	(octave_value::octave_value (const ComplexDiagMatrix&))
+	(octave_value::octave_value (const FloatComplexDiagMatrix&)):
+	Construct a diagonal matrix object.
+	* data.cc (Fdiag): Support explicit dimensions. Fix tests.
+	(Feye): Return diagonal matrix objects if possible. Fix tests.
+	* mappers.cc (Freal, Fimag): Fix tests.
+	* DLD-FUNCTIONS/inv.cc (Finv): Handle diagonal matrix objects.
+	* ov-range.h (octave_range::diag): Declare only.
+	* ov-range.cc (octave_range::diag): Return DiagMatrix if possible.
+
+2008-11-25  Jaroslav Hajek  <highegg@gmail.com>
+	* ov.cc (octave_value::is_equal): New member function.
+	* ov.h: Declare it.
+	* pt-select.cc (tree_switch_case::label_matches): Call
+	octave_value::is_equal.
+
+2008-12-04  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* DLD-FUNCTIONS/cellfun.cc: Added more tests for cellfun.
+
+2008-11-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.h (octave_base_value::type_conv_info): New class.
+	* ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc,
+	ov-bool-sparse.h, ov-bool.cc, ov-bool.h, ov-complex.cc, ov-complex.h,
+	ov-cx-mat.cc, ov-cx-mat.h, ov-null-mat.cc, ov-null-mat.h,
+	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc,
+	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov.h:
+	Return type_conv_info instead of type_conv_fcn from
+	numeric_conversion_function and numeric_demotion_function
+	methods.
+	* ov-base.cc (octave_base_value::numeric_assign): Try biased conversion
+	first if possible.
+	* ov.cc (do_binary_op): Likewise. Also, search recursively.
+	* ov.cc (do_cat_op): Likewise.
+
+2008-11-24  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (F__go_delete__): Check validity of handles before
+	deleting them to avoid issues with callback function also deleting
+	the handles.
+
+2008-11-21  John Swensen  <jpswensen@comcast.net>
+
+	* debug.cc (bp_table::do_get_breakpoint_list): Avoid modifying
+	bp_map while iterating over it.
+
+2008-11-21  Jarkko Kaleva  <d3roga@gmail.com>
+
+	* DLD-FUNCTIONS/eig.cc (Feig): Handle generalized eigenvalues and
+	eigenvectors.
+
+2008-11-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD_FUNCTIONS/det.cc: Include only DET.h. Retrieve & matrix type &
+	store it after calculation if possible.
+
+2008-11-17  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::dir_info::update): Simplify previous
+	change.
+
+	* load-path.h (load_path::dir_info::abs_dir_name): New data member.
+	(load_path::dir_info::dir_info, load_path::dir_info::operator =):
+	Copy abs_dir_name.
+	(load_path::abs_dir_cache_type, load_path::dir_cache_iterator,
+	load_path::const_dir_cache_iterator): New typedefs.
+	(load_path::abs_dir_cache): New static data member.
+	(load_path::dir_info:dir_info): New constructor.
+	* load-path.cc (load_path::abs_dir_cache): Define new static data
+	member.
+	(load_path::dir_info::update): Look in abs_dir_cache for relative
+	directory names.
+	(load_path::dir_info::initialize): Update abs_dir_cache here.
+
+2008-11-13  John W. Eaton  <jwe@octave.org>
+
+	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-uint8.h,
+	ov-uint16.h, ov-uint32.h, ov-uint64.h: Don't define
+	OCTAVE_INT_NDARRAY_T.
+	* ov-intx.h (class OCTAVE_VALUE_INT_MATRIX_T,
+	class OCTAVE_VALUE_INT_SCALAR_T): Use intNDArray<OCTAVE_INT_T>
+	instead of OCTAVE_INT_NDARRAY_T.
+	(OCTAVE_VALUE_INT_MATRIX_T::increment,
+	OCTAVE_VALUE_INT_MATRIX_T::decrement,
+	OCTAVE_VALUE_INT_SCALAR_T::increment,
+	OCTAVE_VALUE_INT_SCALAR_T::decrement): Convert 1 to OCTAVE_INT_T.
+
+2008-11-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* strfns.cc (Fchar): adapt to conserve empty strings, add tests
+
+2008-11-12  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* dirfcn.cc (Ffilesep): Make it return all file separators when 'all'
+	is given as argument.
+
+	* DLD-FUNCTIONS/getrusage.cc: Undefine min/max.
+	* TEMPLATE-INST/Array-os.cc: Declare Array<bool> as extern template.
+
+2008-11-12  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-cell.cc (op_catop_matrix_cell): Cast args in the correct
+	order.
+	* OPERATORS/op-struct.cc (op_catop_matrix_struct): Ditto.
+
+2008-11-11  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-assign.cc: Fix handling of empty cs-lists in assignment LHS.
+
+2008-11-11  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (<MATRIX_START>{S}+): Don't insert separator if next token
+	is a separator.
+
+	* parse.y (F__parser_debug_flag__): New function.
+
+2008-10-31  Jaroslav Hajek  <highegg@gmail.com>
+
+	* xnorm.cc: New source.
+	* xnorm.h: New header file.
+	* Makefile.in: Include xnorm.cc in the build process.
+	* data.cc (Fnorm): Call xnorm, xcolnorms, xrownorms or xfrobnorm
+	to do the actual work.
+
+2008-10-31  David Bateman  <dbateman@free.fr>
+
+	* ov-base-scalar.h (octave_value octave_base_scalar::reshape
+	(const dim_vector&) const): New method.
+
+2008-10-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::index): Copy key_list.
+
+2008-10-31  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (void image::init (void)): Add a constraint for
+	logical cdata.
+
+	* graphics.h.in (base_property::delete_listener): New method.
+	(property::delete_listener): New method.
+	(base_graphics_object::delete_listener): New method.
+	(base_graphics_object::delete_property_listener): New method.
+	(base_graphics_object::remove_all_listeners): New method.
+	(graphics_object::delete_property_listener): New method.
+	(axes::set_defaults): Call remove_all_listeners.
+	* graphics.cc (void base_properties::delete_listener): New method
+	(void base_graphics_object::remove_all_listeners (void)): New method
+	(Fdellistener): New command to remove listener functions associated
+	with a property.
+
+2008-10-30  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (axes::properties): Add keyreverse property.
+	* graphics.cc (axes::properties::set_defaults): Initialize
+	keyreverse property.
+
+2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.h (Cell::assign (const Array<idx_vector>&, ...),
+	Cell::delete_elements (const Array<idx_vector>&, ...)):
+	New member functions.
+	* Cell.cc (Cell::assign (const octave_value_list&, ...),
+	Cell::delete_elements (const octave_value_list&, ...)):
+	Call Array<T>::assign.
+	* DLD-FUNCTIONS/dlmread.cc: Call Array<T>::resize_fill.
+	* ov-base-mat.cc (octave_base_matrix::assign): Call Array<T>::assign.
+	(octave_base_matrix::delete_elements):: Call Array<T>::delete_elements.
+	* ov-cell.cc (Fcell): Call Array<T>::chop_trailing_singletons,
+	simplify.
+	* ov-cx-mat.cc (octave_complex_matrix::assign): Call Array<T>::assign.
+	* ov-flt-cx-mat.cc (octave_float_complex_matrix::assign): Call
+	Array<T>::assign.
+	* ov-list.cc (octave_list::subsasgn): Call Array<T>::assign.
+	* pr-output.cc (PRINT_ND_ARRAY): Use zero-based indices.
+
+2008-10-29  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* data.cc (Fcolumns): Remove "and" from @seealso string.
+	* mappers.cc (Fgamma, Flgamma): Replace @seealso reference to
+	deprecated gammai by gammainc.
+	* DLD-FUNCTIONS/sqrtm.cc (Fsqrtm): Remove reference to Octave
+	Forge function funm.
+	* DLD-FUNCTIONS/qz.cc (Fqz): removed @seealso reference to Octave
+	Forge function dare.
+	* DLD-FUNCTIONS/rcond.cc (Frcond): removed @seealso reference to
+	mldivide.
+	* debug.cc (Fdbstop): Fix @seealso references and function name in
+	docstring of dbnext.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Remove @seealso reference
+	to isclass.
+	* syscalls.cc (Fwaitpid): Replace WCONTINUED by WCONTINUE.
+	* oct-hist.cc (Fhistory_size, Fsaving_history): Fix @seealso
+	references to history_timestamp_format_string.
+	* DLD-FUNCTIONS/luinc.cc (Fluinc): Remove reference to missing
+	function cholinc.
+
+2008-10-29  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc (Fcholinsert, Fcholdelete, Fcholshift): Fix
+	inline docs.
+
+2008-10-28  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (finish_function): Clear local variables in function scope.
+	* symtab.h (symbol_table::clear_variables): New argument, scope.
+
+2008-10-28  Brian Gough  <bjg@gnu.org>
+
+	* DLD-FUNCTIONS/besselj.cc: Added tests.
+
+2008-10-23  John W. Eaton  <jwe@octave.org>
+
+	* oct-hist.c (initialize_history): New arg, read_history_file)
+	* oct-hist.h: Fix decl.
+	* octave.cc (octave_main): Set read_history_file to false if
+	--no-history option is specified.  Pass read_history_file to
+	initialize_history.
+
+	* DLD-FUNCTIONS/fltk_backend.cc: Update initialization comment.
+
+2008-10-22  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (figure_manager::do_close_all):
+	Rename from close_all.  Now private.
+	(figure_manager::do_new_window): Rename from new_window.
+	Now private.
+	(figure_manager::do_delete_window): Rename from delete_window.
+	Now private.
+	(figure_manager::do_mark_modified): Rename from mark_modified.
+	Now private.
+	(figure_manager::do_get_size): Rename from get_size.  Now private.
+	(figure_manager::close_all, figure_manager::do_new_window,
+	figure_manager::do_delete_window,
+	figure_manager::do_mark_modified, figure_manager::do_get_size):
+	New static functions.
+	(figure_manager::instance_ok): New function.
+	(figure_manager::Instance): Delete.  Eliminate all uses in favor
+	of static methods that call instance_ok and forward to private
+	member functions.
+	(figure_manager::instance): New static data member.
+	(figure_manager::hnd2idx, figure_manager::figprops2idx,
+	figure_manager::figprops2idx, figure_manager::str2idx): Now static.
+
+	* DLD-FUNCTIONS/fltk_backend.cc (figure_manager::default_size):
+	Increase default window size.
+
+	* graphics.cc (figure::properties::remove_child): New function.
+	* graphics.h.in: Provide decl.
+
+	* gl-render.cc (opengl_renderer::draw): Get all children.
+
+	* DLD-FUNCTIONS/fltk_backend.cc (__fltk_redraw__):
+	Check for "root" object, not "root_figure".
+
+	* graphics.h.in (base_properties::get_all_children): New function.
+
+2008-10-22  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (line::properties, surface::properties): Add data
+	source properties.
+
+2008-10-21  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (axes::properties::delete_children): Delete decl.
+
+	* graphics.h.in (gh_manager::is_handle_visible): New function.
+	(axes::properites): Move title property after label properties.
+	(graphics_object::is_handle_visible): New function.
+	(base_properties::is_handle_visible): New function.
+	(base_properties): Mark children property with G.
+	* graphics.cc (axes::properties::set_text_child): New function.
+	(axes::properties::set_title, axes::properties::set_xlabel,
+	axes::properties::set_ylabel, axes::properties::set_zlabel): Use it.
+	(base_property::get_children): New function.  Only
+	return handles that are visible.
+	(axes::properties::delete_text_child): Set handlevisibility to
+	"off" for newly created object and add it to the list of children.
+	Call base_properties::remove_child on previous handle value.
+	(axes::properties::set_defaults): Don't explicitly delete xlabel,
+	ylabel, zlabel, and title handles.  Reinitialize them after
+	deleting children.
+	(axes::properties::remove_child): Don't explicitly delete xlabel,
+	ylabel, zlabel, and title handles.
+	(axes::properties::init): Move here from graphics.h.in.  Set
+	handlevisibility to "off" for xlabel, ylabel, zlabel, and title
+	and add them to the list of children.
+	(axes::properties::delete_children): Delete.
+
+	* genprops.awk: Allow whitespace between BEGIN_PROPERTIES and
+	opening paren.  Accept optional second argument for graphics
+	object name.
+	* graphics.h.in (root_figure properties): Pass "root" as second
+	arg to BEGIN_PROPERTIES.
+
+2008-10-16  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (make_handle_fraction): New static function.
+	(gh_manager::get_handle): Use it.
+	(gh_manager::do_free): Call make_handle_fraction to replace
+	fractional part of non-figure handles.
+
+	* graphics.cc (base_properties::remove_child): Handle children as
+	a column vector instead of a row vector.
+
+	* utils.cc (Fis_absolute_filename, Fis_rooted_relative_filename,
+	Fmake_absolute_filename, Ffind_dir_in_path): New functions.
+
+2008-10-16  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void axes::properties::set_defaults
+	(base_graphics_object&,	const std::string&)): Preserve font
+	and position properties if the axis is "replaced".
+
+2008-10-16  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (class axes::properties): New property: interpreter.
+
+2008-10-15  David Bateman  <dbateman@free.fr>
+
+	* ov-class.c (Fsuperiorto, Finferiorto): Allow more than one class
+	to be defined at a time.
+
+2008-10-12  David Bateman  <dbateman@free.fr>
+
+	* pt-colon.cc (octave_value tree_colon_expression::make_range
+	(const octave_value&, const octave_value&, const octave_value&)):
+	Treating class overloading of colon operator.
+	(octave_value tree_colon_expression::rvalue (void)): Ditto.
+
+2008-10-10  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (base_properties::adopt): Place new child at front
+	of list, not end.  Make list of children a column vector instead
+	of a row vector.
+
+	* graphics.cc (gh_manager::do_free): Set the beingdeleted
+	property, then delete the children, then execute the deletefcn.
+	(axes::properties::set_defaults, axes::properties::remove_child,
+	axes::properites::delete_children): Call delete_text_child to
+	manage the title, xlabel, ylabel, and zlabel properties.
+	(axes::properties::get_title, axes::properties::get_xlabel,
+	axes::properties::get_ylabel, axes::properties::get_zlabel): Delete.
+
+	* graphics.h.in (axes::properites::title,
+	axes::properites::xlabel, axes::properites::ylabel,
+	axes::properites::zlabel): No longer mutable.  Don't generate
+	factory default values or custom get functions for these
+	properties.
+
+	* graphics.cc (axes::properties::delete_text_child): New function.
+	* graphics.h.in: Provide decl.
+
+	* graphics.h.in (graphics_object::type): New function.
+
+2008-10-10  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (radio_property axes::properties::__colorbar__):
+	Delete.
+	* graphics.cc (void axes::properties::sync_positions (void)):
+	Disable code synchronizing outerposiiton and position.
+	(void axes::properties::set_defaults (base_graphics_object&,
+	const std::string&): Remove __colorbar__.
+	(F__go_delete__): Don't delete if already being deleting to avoid
+	recursion in callback functions.
+	(F__go_axes_init__): Flag error if handle is deleted during
+	initialization due.
+
+2008-10-09  David Bateman  <dbateman@free.fr>
+
+	* ov-class.cc (Octave_map octave_class::map_value (void) const):
+	Remove.
+	(bool octave_class::save_ascii (std::ostream&),
+	bool octave_class::load_ascii (std::istream&),
+	bool octave_class::save_binary (std::ostream&, bool&),
+	bool octave_class::save_binary (std::ostream&, bool&),
+	bool octave_class::save_hdf5 (hid_t, const char *, bool),
+	bool octave_class::load_hdf5 (hid_t, const char *, bool)):
+	Allow saving and reloading of classes.
+	* ov-class. (Octave_map octave_class::map_value (void) const):
+	Remove.
+	* ls-mat.cc (std::string read_mat5_binary_element (std::istream&,
+	const std::string&, bool, bool&, octave_value&),
+	int save_mat5_element_length (const octave_value&, const std::string&,
+	bool, bool)): Allow saving and loading of classes.
+	* ls-oct-ascii.h (template <class T> bool extract_keyword
+	(std::istream&, const char *, T&, const bool)): Initialize value with
+	null constructor rather than 0.
+
+2008-10-07  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (F__go_delete__): Allow arrays of graphic handles.
+
+2008-10-01  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-i64-i64.cc: Instantiate all 64-bit operations.
+	* OPERATORS/op-ui64-ui64.cc: Instantiate all unsigned 64-bit operations.
+
+2008-10-06  John W. Eaton  <jwe@octave.org>
+
+	* ov-type-conv.h (octave_type_conv_body): Avoid shadow warning
+	from GCC.
+
+2008-10-06  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (static bool is_handle (const octave_value&)): Delete.
+	(static octave_value is_handle (const octave_value&)): New function.
+
+2008-10-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.cc (Cell::delete_elements): Don't pass second arg to
+	Array<T>::maybe_delete_elements.
+	* ov-base-mat.cc (octave_base_matrix<MT>::delete_elements): Ditto.
+
+2008-10-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Cell.h (Cell::delete_elements): Declare new member function.
+	* Cell.h (Cell::delete_elements): Define it.
+	* oct-map.cc (Octave_map::maybe_delete_elements): Call delete_elements
+	instead of assign with empty Cell.
+
+2008-10-02  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	Don't insert undefined elements in return list.
+
+2008-09-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-str-mat.h (octave-char-matrix-str::assign): Remove declaration.
+	* ov-str-mat.cc (octave-char-matrix-str::assign): Remove definition.
+
+2008-09-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__magick_read__.cc: Only define
+	magick_to_octave_value if HAVE_MAGICK is defined.
+
+2008-09-29  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::load_class_method):
+	Call load_class_constructor if name and dispatch_type are the same.
+
+2008-09-29  David Bateman  <dbateman@free.fr>
+
+	* symtab.cc (octave_value symbol_table::find_function
+	(const std::string&, tree_argument_list *, const string_vector&,
+	octave_value_list&, bool&)): If first character of function name
+	is "@" then look for class specific method.
+
+2008-09-26  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (out_of_date_check_internal):
+	Fix order of arguments in call to load_path::find_method.
+
+2008-09-26  David Bateman  <dbateman@free.fr>
+
+	* ov-class.h (idx_vector index_vector (void) const): Declare new
+	maethod.
+	* ov-class.cc (idx_vector index_vector (void) const): Define new
+	method.
+	* (Fismethod): New function.
+
+2008-09-26  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (urlwrite_cleanup_file) New function.
+	(urlwrite_delete_file, urlwrite_filename): New static variables.
+	(Furlwrite): Only return filename if urlget succeeds.  Use
+	unwind_protect to delete files we create if download fails.
+
+2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-null-mat.h: New header file.
+	* ov-null-mat.cc: New source.
+	* ov.h (octave_value::is_null_value, octave_value::non_null_value,
+	octave_value::make_non_null_value):
+	Declare new member functions.
+	* ov.cc (octave_value:non_null_value, octave_value::make_non_null_value):
+	Define them.
+	(octave_value::assign (assign_op op, const octave_value& rhs)):
+	(register_types): Register null types.
+	Call non_null_value ().
+	* oct-obj.cc (octave_value_list::normalize_null_values): New member
+	function.
+	* oct-obj.h (octave_value_list::normalize_null_values): Declare it.
+	* ov-base.h (is_null_value): New virtual member function.
+	* ops.h (NULLASSIGNOPDECL, DEFNULLASSIGNOP_FN): New macros.
+	* ov-base-mat.cc (octave_base_mat<MT>::delete_elements): New member func.
+	* ov-base-mat.h: Declare it.
+	* ov-base-sparse.cc (octave_base_sparse<MT>::delete_elements): New member func.
+	* ov-base-sparse.h: Declare it.
+	* ov-cell.cc (octave_cell:subsasgn): Handle null values.
+	* ov-struct.cc (octave_cell:subsasgn): Handle null values.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Normalize return
+	values.
+	* pt-misc.cc (tree_parameter_list::define_from_arg_vector): Call
+	octave_lvalue::define instead of octave_lvalue::assign.
+	* pt-decl.h (tree_decl_elt::rvalue): Call non_null_value ().
+	* OPERATORS/op-int.h (OCTAVE_INT_NULL_ASSIGN_OPS,
+	OCTAVE_INSTALL_INT_NULL_ASSIGN_OPS): New macros.
+	* OPERATORS/op-m-m.cc: Install & define assignment & conversion operators.
+	* OPERATORS/op-bm-bm.cc: Ditto.
+	* OPERATORS/op-cell.cc: Ditto.
+	* OPERATORS/op-cm-cm.cc: Ditto.
+	* OPERATORS/op-cs-cs.cc: Ditto.
+	* OPERATORS/op-fcm-fcm.cc: Ditto.
+	* OPERATORS/op-fcs-fcs.cc: Ditto.
+	* OPERATORS/op-fm-fm.cc: Ditto.
+	* OPERATORS/op-fs-fs.cc: Ditto.
+	* OPERATORS/op-int.h: Ditto.
+	* OPERATORS/op-m-m.cc: Ditto.
+	* OPERATORS/op-range.cc: Ditto.
+	* OPERATORS/op-s-s.cc: Ditto.
+	* OPERATORS/op-scm-scm.cc: Ditto.
+	* OPERATORS/op-sm-sm.cc: Ditto.
+	* OPERATORS/op-str-str.cc: Ditto.
+	* OPERATORS/op-i16-i16.cc: Ditto.
+	* OPERATORS/op-i32-i32.cc: Ditto.
+	* OPERATORS/op-i64-i64.cc: Ditto.
+	* OPERATORS/op-i8-i8.cc: Ditto.
+	* OPERATORS/op-ui16-ui16.cc: Ditto.
+	* OPERATORS/op-ui32-ui32.cc: Ditto.
+	* OPERATORS/op-ui64-ui64.cc: Ditto.
+	* OPERATORS/op-ui8-ui8.cc: Ditto.
+
+2008-09-25  David Bateman  <dbateman@free.fr>
+
+	* pt-mat.cc (class tm_row_const): Add any_class test
+	(class tm_const): Ditto.
+	(octave_value tree_matrix::rvalue (void)): If any object to
+	concatenate is a class object, dispatch to the appropriate
+	vertcat/horzcat function.
+
+2008-09-25  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::do_find): Don't set evaluated_args and
+	args_evaluated here, prior to call to symbol_table::fcn_info::find.
+
+2008-09-24  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (magick_to_octave_value): New
+	template function with specializations for various
+	GraphicsMagick++ types.
+	(F__magick_finfo__): New function.
+
+2008-09-24  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Add symbol_table::clear_variables cleanup function to the
+	unwind_protect stack after the parameter list cleanup functions.
+
+	* load-path.cc (load_path::do_initialize): Check for OCTAVE_PATH
+	in the environment, not OCTAVE_LOADPATH.
+
+2008-09-24  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Retry if match limit
+	is exceeded.
+
+2008-09-24  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk (emit_declarations): Emit call to set_mode before
+	updaters.
+
+2008-09-23  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc (F__end__): Dispatch to user-defined end
+	function for classes if one is defined.
+	* lex.l (is_keyword_token): Allow "end" as a functon name.
+
+2008-09-23  David Bateman  <dbateman@free.fr>
+
+	* variables.cc (static octave_value do_who (int, const string_vector&,
+	bool, bool, std::string): Add final message argument and simple
+	treatment of the "-file" option.
+
+2008-09-22  David Bateman  <dbateman@free.fr>
+
+	* debug.cc (static octave_user_code * get_user_code
+	(const std::string&)): Only check user code as break points can't
+	be set in builtins or oct-files.
+	(bp_table::intmap bp_table::do_remove_all_breakpoints_in_file
+	(const std::string&, bool)): Add flag to silence the error message
+	from this function if a user code with breakpoints is not found.
+	(bp_table::fname_line_map bp_table::do_get_breakpoint_list (const
+	octave_value_list&)): Do an ourt of date check on the function
+	before checking the breakpoints.
+	* debug.h (do_remove_all_breakpoints_in_file,
+	remove_all_breakpoints_in_file): Add flag to silence error
+	message.
+	* symtab.cc (out_of_date_check_internal): Clear breakpoints in
+	function if out_of_date. split into two versions taking the
+	octave_function pointer seperately or not.
+	* symtab.h (bool out_of_date_check (octave_function*)): New function.
+
+2008-09-18  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/fftw.cc (Ffftw): Clarify the documentation.
+
+2008-09-17  Krzesimir Nowak  <qdlacz@gmail.com>
+
+	* debug.cc (Fisdebugmode): New function.
+
+2008-09-17  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): Chopping trailing singleton dimensions.
+
+	* data.cc (SINGLE_TYPE_CONCAT, DO_SINGLE_TYPE_CONCAT): New macros
+	(do_cat): Special case single type concatenations for speed.
+	* pt.mat.cc (std::string get_concat_class (const std::string&,
+	const std::string&), void maybe_warn_string_concat (bool, bool)):
+	Remove static declaration.
+	* pt-mat.h (std::string get_concat_class (const std::string&,
+	const std::string&), void maybe_warn_string_concat (bool, bool)):
+	Define extern here.
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): Clarify the help string.
+
+2008-09-10  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Make all command-line arguments
+	available to startup scripts and PKG_ADD files.
+
+2008-09-09  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Distinguish between
+	matlab named tokens and perl lookbehind expressions. For
+	lookbehind expression replace "*" and "+" with a limited number of
+	fixed length expressions to simulate arbitrary length look behind.
+
+2008-09-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* DLD-FUNCTIONS/__magick_read__.cc (encode_uint_image): Resolve "pow"
+	ambiguity.
+
+	* graphics.cc (base_properties::get_dynamic,
+	base_properties::set_dynamic, base_propertyes::get_property_dynamic):
+	Add the 3rd template parameter to std::map, corresponding to all_props
+	field.
+
+2008-09-08  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (std::string extract_keyword (std::istream&,
+	const char *, const bool)): Also accept \r as line ending character.
+	* ls-oct-ascii.h (template <class T> bool extract_keyword
+	(std::istream&, const char *, T&, const bool)): Likewise.
+	(template <class T> bool extract_keyword (std::istream&, const
+	string_vector&, std::string&, T&, const bool)): Likewise.
+
+2008-09-03  Ben Abbott  <bpabott@mac.com>
+
+	* mappers.cc: Use eps(single) as tolerance for single precesion test.
+
+2008-09-03  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (mlock): Lock current function on the call stack.
+	(Fmlock): Lock caller.
+
+	* symtab.cc (out_of_date_check_internal): If dispatch type is set,
+	check for method.  If that fails, check for regular function.
+
+2008-09-02  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.cc (hggroup::update_axis_limits): Also reacts on
+	[xyzac]liminclude changes.
+
+2008-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* DLD-FUNCTIONS/fltk_backend.cc (fltk_backend::redraw_figure,
+	fltk_backend::print_figure): Change graphics_handle argument to
+	graphics_object.
+
+2008-08-29  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc: Replace int by octave_idx_type in multiple
+	places.
+	(array_property::is_equal): In macro CHECK_ARRAY_EQUAL, special
+	case scalar case and keep copy of array value to avoid early
+	destruction of converted array values.
+
+2008-08-28  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (root_figure::properties::showhiddenhandles):
+	New property.
+
+2008-08-27  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Initialize output vectors
+	by NA value.
+
+2008-08-26 Ben Abbott  <bpabott@mac.com>
+
+	* mappers.cc: Adjust tolerance for single precesion tests.
+
+	* DLD-FUNCTIONS/chol.cc: Double tolerance.
+
+2008-08-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* parse.y (Fassignin): Use default  scope when calling varref.
+
+2008-08-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* genprops.awk (emit_declarations): Call updaters/listeners only when
+	'set' method returned true.
+	* graphics.h.in (base_property::set, base_property::do_set):
+	Return bool value.
+	(property::set): Likewise.
+	(string_property::do_set): Check value change and return bool value.
+	(radio_property::do_set, double_property::do_set,
+	array_property::do_set): Likewise.
+	(color_property::do_set, double_radio_property::do_set,
+	row_vector_property::do_set, bool_property::do_set,
+	handle_property::do_set): Return bool value.
+	(any_property::do_set, callback_property::do_set): Return always true.
+	(color_values::operator==, color_values::operator!=): Add.
+	(array_property::is_equal): Add.
+	* graphics.cc (base_property::set): Executes listeners/notifiers only
+	when do_set returns true. Return bool value.
+	(color_property::do_set, double_radio_property::do_set): Check value
+	change and return bool value.
+	(array_property::is_equal): Add.
+
+	* genprops.awk (emit_declarations, emit_source): Change code emission
+	when emitting base_properties code (base is 1).
+	(BEGIN): Initialize pcount to 0.
+	(BEGIN_PROPERTIES): Initialize base to 0.
+	(BEGIN_BASE_PROPERTIES): New statement.
+	(main): Add support for 'f' modifier. Add support for non xxx_property
+	typed properties.
+	* graphics.h.in (base_properties::base_properties): Remove
+	implementation.
+	(base_properties::get_tag, base_properties::get_parent,
+	base_properties::get_type, base_properties::get___myhandle__,
+	base_properties::get_busyaction, base_properties::get_buttondownfcn,
+	base_properties::is_clipping, base_properties::get_clipping,
+	base_properties::execute_createfcn, base_properties::get_createfcn,
+	base_properties::execute_deletefcn, base_properties::get_deletefcn,
+	base_properties::get_handlevisibility, base_properties::is_hittest,
+	base_properties::get_hittest, base_properties::is_interruptible,
+	base_properties::get_interruptible, base_properties::is_selected,
+	base_properties::get_selected, base_properties::is_selectionhighlight,
+	base_properties::get_selectionhighlight,
+	base_properties::get_uicontextmenu, base_properties::get_userdata,
+	base_properties::is_visible, base_properties::get_visible,
+	base_properties::is_beingdeleted, base_properties::get_beingdeleted,
+	base_properties::set_busyaction, base_properties::set_buttondownfcn,
+	base_properties::set_clipping, base_properties::set_createfcn,
+	base_properties::set_deletefcn, base_properties::set_handlevisibility,
+	base_properties::set_hittest, base_properties::set_interruptible,
+	base_properties::set_selected,
+	base_properties::set_selectionhighlight,
+	base_properties::set_uicontextmenu, base_properties::set_userdata,
+	base_properties::set_visible, base_properties::set_beingdeleted,
+	base_properties::get_children): Remove (now auto-generated).
+	(base_properties::enum): Likewise.
+	(base_properties::is_modified): Call is___modified__.
+	(base_properties::set_modified): Call set___modified__.
+	(base_properties::set_children): Add.
+	(base_properties::set_dynamic, base_properties::get_dynamic,
+	base_properties::get_property_dynamic): New methods.
+	(class base_properties): Surround properties declaration with
+	BEGIN_BASE_PROPERTIES/END_PROPERTIES pair.
+	* graphics.cc (base_properties::get, base_properties::set,
+	base_properties::get_property): Remove (now auto-generated).
+	(base_properties::set_dynamic, base_properties::get_dynamic,
+	base_properties::get_property_dynamic): New methods.
+	(base_properties::set_children): Likewise.
+
+	* DLD_FUNCTIONS/fltk_backend.cc (F__fltk_redraw__): Make static.
+	(F__init_fltk__): Protect from mutliple invocations.
+	(F__remove_fltk__): Likewise.
+	(F__init_fltk__): Register input event hook.
+	(F__remove_fltk__): Unregister input event hook.
+
+	* DLD_FUNCTIONS/fltk_backend.cc (fltk_backend::close_figure): Remove.
+	(fltk_backend::object_destroyed, fltk_backend::property_changed): New
+	methods.
+	* genprops.awk (emit_declarations): Generate "enum" property fields.
+	(emit_sources): Emit set_id calls.
+	* graphics.h.in (base_property::id): New field.
+	(base_property::base_property): Initialize it.
+	(base_property::get_id, base_property::set_id): Add accessors.
+	(property::get_id, property::set_id): Likewise.
+	(base_graphics_backend::close_figure, graphics_backend::close_figure):
+	Remove methods.
+	(base_graphics_backend::redraw_figure,
+	base_graphics_backend::print_figure, graphics_backend::redraw_figure,
+	graphics_backend::print_figure): Change graphics_handle argument into
+	graphics_object.
+	(base_graphics_backend::property_changed,
+	base_graphics_backend::object_created,
+	base_graphics_backend::object_destroyed,
+	graphics_backend::property_changed, graphics_backend::object_created,
+	graphics_backend::object_destroyed): New signature with
+	graphics_object argument.
+	(base_properties::base_properties): Add set_id calls.
+	(class base_properties): Add "enum" property fields.
+	(root_figure::properties::remove_child): Add overloaded method.
+	(figure::properties::close): Remove.
+	(figure::properties::set_backend): Call object_destroyed instead of
+	close.
+	(figure::~figure): Remove close call.
+	(figure::properties::get_title): New method.
+	* graphics.cc (base_property::set): Call property_changed only for
+	valid id (>=0); Use graphics_object argument.
+	(gh_manager::do_free): Call object_destroyed with graphics_object
+	argument.
+	(base_graphics_backend::property_changed,
+	base_graphics_backend::object_created,
+	base_graphics_object::object_destroyed): Implement wrappers for
+	graphics_handle argument case.
+	(gnuplot_backend::close_figure): Remove.
+	(gnuplot_backend::object_destroyed,
+	gnuplot_backend::property_changed): New methods.
+	(gnuplot_backend::redraw_figure, gnuplot_backend::print_figure):
+	Change graphics_handle argument to graphics_object.
+	(root_figure::properties::remove_child): Add.
+	(figure::properties::close): Remove.
+	(figure::properties::set_position): Do not call set_figure_position.
+	(figure::properties::get_title): New method.
+	(gh_manager::do_make_graphics_handle): Call object_created with
+	a graphics_object argument.
+	(gh_manager::do_make_figure_handle): Likewise.
+	(Fdrawnow): Call redraw_figure and print_figure with a graphics_object
+	argument.
+
+2008-08-26  Maciek Gajewski  <maciej.gajewski0@gmail.com>
+
+	* graphics.h.in (base_property::set): Remove inline implementation.
+	(base_graphics_backend::property_changed,
+	base_graphics_backend::object_created,
+	base_graphics_backend::object_destroyed): New method.
+	(graphics_backend::property_changed, graphics_backend::object_created,
+	graphics_backend::object_destroyed): Likewise.
+	* graphics.cc (base_property::set): Moved from header file.
+	(gh_manager::do_free): Add backend notification.
+	(gh_manager::do_make_graphics_handle): Likewise.
+	(gh_manager::do_make_figure_handle): Likewise.
+
+2008-08-25  Thomas L. Scofield  <scofield@calvin.edu>
+
+	* DLD-FUNCTIONS/__magick_read__.cc: Untabify.
+	(jpg_settings, encode_bool_image, encode_uint_image, encode_map):
+	New functions.
+	(write_image): Use them to handle various image types.
+
+2008-08-25  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void gh_manager::do_execute_callback
+	(const graphics_handle&, const octave_value&, const
+	octave_value&)): Don't pass the function handle as first arg of
+	property listener functions
+
+	* graphics.h.in (class base_properties): Add functor for caseless
+	string comparison. Use it in the property map, so that user added
+	properties are found in a case insensitive fashion.
+
+2008-08-22  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table::inherit): Pass reference to symbol table
+	to do_inherit instead of scope.
+	(symbol_table::do_inherit): First arg is now reference to
+	symbol_table, not scope id.  Insert all variables from donor scope.
+
+2008-08-21  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* mappers.cc: Increase test script tolerance.
+
+2008-08-20  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (builtin_help): Go to next symbol name on error.
+	(do_type, do_which): Omit separate path search for files.
+	(help_from_symbol_table): Only insert Texinfo markup if it looks
+	like the help message is already in Texinfo.
+
+2008-08-19  David Bateman  <dbateman@free.fr>
+
+	* load-path.cc (load-path::do_find_dir (const std:string&) const)):
+	Method to find a directory on the load-path corresponding to the
+	argument.
+	* load-path.h (load-path::do_find_dir (const std:string&) const),
+	load-path::find_dir (const std::string&) const): New methods.
+	* utils.cc (std::string contents_file_in_path (const std::string&)):
+	New function.
+	* utils.h  (std::string contents_file_in_path (const std::string&)):
+	Declare it.
+	* help.cc (static bool raw_help_from_file (const std::string&,
+	std::string&, std::string&, bool&)): Also check is requested
+	argument is a directory and contains the file Contents.m.
+
+	* OPERATORS/op-int-conv.cc (DEFINTCONVFN): New macro that warn
+	for integer conversion issues. Use it to replace DEFCONVFN.
+	* OPERATORS/op-int.h (DEFINTBINOP_OP, DEFINTNDBINOP_OP,
+	DEFINTBINOP_FN, DEFINTNDBINOP_FN): New macros that warn for
+	integer truncation issues. Use them to replace the corresponding
+	macros in the integer arithmetic macros. Update other integer
+	arithmetic functions that don't use these macros individually.
+	* error.cc (initialize_default_warning_state (void)): Initialize
+	the default warning state for the integer warnings to be off.
+	* gripes.cc (void gripe_binop_integer_math_truncated (const char *,
+	const char *, const char *), void gripe_unop_integer_math_truncated
+	(const char *, const char *), void gripe_non_integer_conversion
+	(const char *, const char *), void gripe_nan_conversion (const char *,
+	const char *)): Warning functions for integer conversion and math
+	issues.
+	* gripes.h (void gripe_binop_integer_math_truncated (const char *,
+	const char *, const char *), void gripe_unop_integer_math_truncated
+	(const char *, const char *), void gripe_non_integer_conversion
+	(const char *, const char *), void gripe_nan_conversion (const char *,
+	const char *)): Declare them.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::convert_gripe,
+	OCTAVE_VALUE_INT_SCALAR_T::convert_gripe): Adapt for new means of
+	flagging integer truncation.
+	(OCTAVE_VALUE_INT_MATRIX_T::decrement,
+	OCTAVE_VALUE_INT_MATRIX_T::increment,
+	OCTAVE_VALUE_INT_SCALAR_T::decrement,
+	OCTAVE_VALUE_INT_SCALAR_T::increment): Check for integer
+	truncation.
+	* ov.cc (convert_to_int_array): Adapt for new means of
+	flagging integer truncation.
+
+2008-08-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* pt-assign.h (tree_simple_assignment::first_execution): New
+	member field.
+	(tree_simple_assignment::first_execution): Ditto.
+	* pt-assign.cc (tree_simple_assignment::tree_simple_assignment):
+	Initialize first_execution.
+	(tree_multi_assignment::tree_multi_assignment): Ditto.
+	(tree_simple_assignment::rvalue): Check for obsolete built-in
+	variables only at first execution.
+	(tree_multi_assignment::rvalue): Ditto.
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Checks whether LB and UB are
+	of proper size.
+
+	* oct-obj.cc, oct-obj.h (octave_value_list::make_argv):
+	Allow calling without fcn_name.
+	* load-save.cc (parse_save_options (const string_vector&, ...)):
+	Return string_vector with parsed arguments removed instead.
+	(parse_save_options (const std::string&, ...)):	Ditto.
+	(Fsave): Fix calls to parse_save_options.
+
+2008-08-19  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Feval): Return value produced by evaluating CATCH string.
+
+2008-08-12  John W. Eaton  <jwe@octave.org>
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
+	Call stash_parent_function_scope for user function.
+	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline):
+	Likewise.
+
+	* ov-struct.cc (octave_struct::subsref): Don't allow resizing for
+	simple x(idx) case.
+
+2008-08-07  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (octave_value::idx_type_value): Don't include default
+	argument values in definition.
+
+	* glrender.h, zfstream.h: Don't include config.h.
+
+	* oct-errno.h: Include <cerrno>.
+
+	* Cell.cc, DLD-FUNCTIONS/regexp.cc, DLD-FUNCTIONS/dlmread.cc,
+	debug.cc, error.cc, file-io.cc, graphics.cc, help.cc, input.cc,
+	lex.l, load-path.cc, load-save.cc, ls-mat-ascii.cc,
+	ls-oct-ascii.cc, oct-stream.cc, octave.cc, variables.cc,
+	ov-fcn-handle.cc, parse.y, pr-output.cc, symtab.cc, sysdep.cc,
+	utils.cc, graphics.h.in: Replace all uses of NPOS with
+	std::string::npos.
+
+	* ov.cc (octave_value::idx_type_value): Move definition here.
+	* ov.h: From here.
+
+	* DLD-FUNCTIONS/fsolve.cc (override_options): Don't fail if
+	options_map does not contain an expected keyword.
+	Fix typo in warning identifier.
+	(make_unimplemented_options): Use CamelCase names here.
+
+2008-08-06  S�ren Hauberg  <hauberg@gmail.com>
+
+	* error.cc (Ferror): Update format of error messages in exmple.
+	* parse.y: (Feval): Likewise.
+
+2008-08-06  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fsolve.cc (hybrd_info_to_fsolve_info):
+	Update INFO values to be compatible with Matlab's current fsolve.
+	(make_unimplemented_options, override_options): New functions.
+	(Ffsolve): Handle optimset options.  Update doc string.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op,
+	octave_user_script::do_multi_index_op):
+	Call octave_call_stack::backtrace_error_message.
+	* toplev.h (octave_call_stack::do_pop): Don't call
+	backtrace_error_message here.
+	* toplev.cc, toplev.h (octave_call_stack::do_backtrace_error_message):
+	Rename from octave_call_stack::backtrace_error_message.
+	* toplev.h (octave_call_stack::backtrace_error_message):
+	New public static function.
+
+2008-08-05  John W. Eaton  <jwe@octave.org>
+
+	* gripes.cc (gripe_truncated_conversion,
+	gripe_logical_conversion): Don't declare as extern here.
+	* utils.cc (octave_format, octave_vformat): Likewise.
+	* pr-output.cc (octave_print_internal (std::ostream&, const Cell&,
+	bool, int, bool)): Likewise.
+
+	* toplev.cc (octave_call_stack::backtrace_error_message): New
+	function.
+	* toplev.h: Provide decl.
+	(octave_call_stack::do_pop): Call backtrace_error_message if
+	error_state is nonzero.
+
+	* pt-unop.cc (tree_prefix_expression::eval_error,
+	tree_postfix_expression::eval_error): Delete.  Eliminate all uses.
+	* pt-unop.h: Delete decls.
+
+	* pt-select.cc (tree_switch_case::eval_error,
+	tree_switch_command::eval_error): Delete.  Eliminate all uses.
+	(tree_if_command::eval): Omit "evaluating if command" message.
+	* pt-select.h: Delete decls.
+
+	* pt-loop.cc (tree_while_command::eval_error,
+	tree_complex_for_command::eval_error,
+	tree_simple_for_command::eval_error,
+	tree_do_until_command::eval_error): Delete.  Eliminate all uses.
+	* pt-loop.h: Delete decls.
+
+	* pt-exp.cc (tree_expression::is_logically_true): Omit "evaluating
+	conditional expression" error message.
+
+	* pt-decl.cc (tree_global_command::eval): Omit "evaluating global
+	command" error message.
+	(tree_static_command::eval): Omit "evaluating static command"
+	error message.
+
+	* pt-colon.cc (tree_colon_expression::eval_error): Omit
+	"evaluating colon expression" error message.
+	* pt-colon.h (tree_colon_expression::eval_error): Eliminate
+	default argument value.
+
+	* pt-idx.cc (tree_index_expression::eval_error): Delete.
+	Eliminate all uses.
+	* pt-idx.h: Delete decl.
+
+	* pt-binop.cc (tree_binary_expression::eval_error): Delete.
+	* pt-binop.cc, pt-cbinop.cc: Eliminate all uses of eval_error.
+	* pt-binop.h: Delete decl.
+
+	* pt-assign.cc (tree_simple_assignment::eval_error,
+	tree_multi_assignment::eval_error): Delete.  Eliminate all uses.
+	* pt-assign.h: Delete decls.
+
+	* ov-usr-fcn.cc (octave_user_script::traceback_error,
+	octave_user_function::traceback_error): Delete.  Eliminate all uses.
+	* ov-usr-fcn.h: Delete decls.
+
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Call
+	gripe_library_exectuion_error on octave_execution_exception.
+	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Likewise.
+	* ov.cc (do_binary_op, do_cat_op, do_unary_op,
+	do_non_const_unary_op): Likewise.
+	* pt-stmt.cc (tree_statement::eval): Likewise.
+
+	* gripes.cc (gripe_library_execution_error): New function.
+	* gripes.h: Provide decl.
+
+	* dirfns.cc (Fpathsep): Fix usage of dir_path::path_sep_str.
+	* defaults.cc (set_exec_path, set_image_path): Likewise.
+	* load-path.h (load_path::set_command_line_path): Likewise.
+	* load-path.cc (maybe_add_path_elts, load_path::do_initialize,
+	load_path::do_path, genpath, Fpath): Likewise.
+	(split_path): Fix usage of dir_path::path_sep_char.
+
+2008-08-04  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_autoload):
+	Fix usage of file_ops::dir_sep_chars.
+	* variables.cc (looks_like_struct):
+	Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
+	* octave.cc (execute_command_line_file): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+	* load-save.cc (find_file_to_load): Likewise.
+	* load-path.cc (load_path::do_find_file): Likewise.
+	* graphics.cc (drawnow): Likewise.
+	* parse.y (frob_function): Likewise.
+
+	* octave.cc (initialize_pathsearch): Fix usage of
+	file_ops::dir_sep_str.
+	* help.cc (Flookfor): Likewise.
+	* dirfns.cc (Ffilesep): Likewise.
+	(Fautoload): Likewise.
+
+	* defaults.cc (subst_octave_home): Fix usage of
+	file_ops::dir_sep_char.
+	(Fmfilename): Likewise.
+
+2008-07-31  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (assign_lhs): Call force_local_variable on all elements
+	of lexer_flags.pending_local_variables here, then clear the set.
+	(matrix): Clear lexer_flags.pending_local_variable here.
+	* lex.l (lexical_feedback::init): Clear it.
+	(force_local_variable): No longer static.
+	(is_variable): Also return true for names in the
+	lexer_flags.pending_local_variables.
+	(handle_identifier): If we are parsing a matrix list, mark
+	identifiers as pending local variables rather than forcing them to
+	be local variables immediately.
+	* lex.h (lexical_feedback::pending_local_variables): New data member.
+	(force_local_variable): Provide decl.
+
+2008-07-30  John W. Eaton  <jwe@octave.org>
+
+	* ov-intx.h, ov.cc: Style fixes.
+
+	* gripes.cc (gripe_truncated_conversion): Use the warning ID
+	Octave:int-convert-overflow.
+
+2008-07-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* gripes.cc (gripe_truncated_conversion): New function.
+	* gripes.h (gripe_truncated_conversion): Declare it.
+	* ops.h (DEFCONVFNX2): New macro.
+	(DEFCONVFN, DEFCONVFN2): Call DEFCONVFNX2 instead of DEFCONVFNX.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::convert_gripe): New member
+	function.
+	(OCTAVE_VALUE_INT_MATRIX_T::int*_array_value): Call convert_gripe.
+	(OCTAVE_VALUE_INT_SCALAR_T::convert_gripe): New member function.
+	(OCTAVE_VALUE_INT_SCALAR_T::int*_scalar_value): Call convert_gripe.
+	(OCTAVE_VALUE_INT_SCALAR_T::int*_array_value): Call int*_scalar_value.
+	* ov.cc (convert_to_int_array): New function.
+	(int_vector_value): Call convert_to_int_array.
+
+2008-07-30  John W. Eaton  <jwe@octave.org>
+
+	* defun-dld.h (DEFUNX_DLD): Eliminate fsname arg.
+	* defun-int.h (DEFINE_FUN_INSTALLER_FUN2,
+	DEFINE_FUN_INSTALLER_FUN3, DEFINE_FUNX_INSTALLER_FUN2): Delete.
+	(DEFINE_FUNX_INSTALLER_FUN): Rename from DEFINE_FUNX_INSTALLER_FUN3.
+	Don't emit fsname function.  Don't append cxx_abi to gname.
+	(DEFINE_FUN_INSTALLER_FUN): Define in terms of
+	DEFINE_FUNX_INSTALLER_FUN, not DEFINE_FUN_INSTALLER_FUN2.
+	* dynamic-ld.cc (octave_dynamic_loader::name_mangler,
+	octave_dynamic_loader::name_uscore_mangler): New functions.
+	(octave_dynamic_loader::mangle_name,
+	octave_dynamic_loader::xmangle_name): Delete.
+	(octave_dynamic_loader::do_load_oct): Search for function with
+	name_mangler then name_uscore_mangler.
+
+	* oct-stream.cc (do_read): New arg, do_NA_conv.
+	Perform NA translation if do_NA_conv is true.
+	(DO_READ_VAL_TEMPLATE, read_fptr): Include the new arg for do_read
+	in decl.
+	(octave_stream::read): Pass do_NA_conv to do_read.
+
+2008-07-29  David Bateman  <dbateman@free.fr>
+
+	* data.cc (FNA): Add tests for conversion of single to double NA
+	values.
+
+	* ov-flt-re-mat.cc (Fsingle): Documentation fix.
+
+2008-07-28  David Bateman  <dbateman@free.fr>
+
+	* error.cc (last_error_id, last_error_message, last_warning_id,
+	last_warning_message): New functions to return the error/warning
+	message and id without exposing the internal values.
+	* error.h  (last_error_id, last_error_message, last_warning_id,
+	last_warning_message): Declare them.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Use them to pass the error
+	to the ErrorHandler function.
+
+2008-07-28  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (Flasterror, Flasterr): Unwind-protect error_state.
+
+	* DLD-FUNCTIONS/__magick_read__.cc (F__magick_write__, write_image):
+	New functions.
+
+2008-07-25  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Return calculated determinant for
+	numerically singular matrices, not 0.
+
+	* symtab.cc (get_dispatch_type): New function.
+	(symbol_table::fcn_info::fcn_info_rep::find): Use it.
+
+	* ov-class.cc (set_class_relationship): Delete static function.
+	(Fsuperiorto, Finferiorto): Warn about precedence conflicts.
+	Call symbol_table::set_class_relationship instead of local static
+	function.
+	* symtab.h (symbol_table::class_precedence_table): New data member.
+	(symbol_table::set_class_relationship, symbol_table::is_superiorto):
+	New static functions.
+
+2008-07-24  John W. Eaton  <jwe@octave.org>
+
+	* load-path.h (load_path::dir_info::class_info): New struct.
+	(load_path::dir_info::method_file_map_type): Now a map from
+	class name to a to a class_info object.  Change all uses.
+	* load-path.cc (load_path::dir_info::get_method_file_map):
+	Also look for private functions in the class directory.
+	(load_path::add_to_method_map): Also add private functions from
+	class directories to private_fcn_map.
+
+	* dirfns.cc (Fmkdir): If directory already exists, return status =
+	true, but also set error message.
+
+2008-07-23  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr_fcn.cc (octave_user_function::do_multi_index_op):
+	Don't unwind_protect and set curr_parent_function here.
+	* toplev.cc (curr_parent_function): Delete definition.
+	* toplev.h: (curr_parent_function): Delete declaration.
+
+	* ov-usr-fcn.h (octave_user_function::parent_scope): New data member.
+	(octave_user_function::parent_fcn_scope,
+	octave_user_function::stash_parent_fcn_scope): New functions.
+	* ov-usr_fcn.cc (octave_user_function::octave_user_function):
+	Initialize parent_scope.
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find):
+	Check parent of current function by looking at call stack, not
+	global curr_parent_function variable.
+	* parse.y (frob_function): If parsing nested function, stash
+	current parent function scope.
+	* ov-fcn.h (octave_function::parent_fcn_scope): New virtual function.
+
+2008-07-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.cc (F__go_execute_callback__): New function.
+
+	* DLD-FUNCTIONS/fltk_backend.cc: Undefine min/max after FLTK headers
+	inclusion.
+
+	* graphics.h.in (class base_graphics_event, class graphics_event): New
+	classes (replace gh_manager::event_data).
+	(class gh_manager::event_data): Remove.
+	(gh_manager::post_function, gh_manager::do_post_function): Use
+	graphics_event::event_fcn type.
+	(gh_manager::event_queue, gh_manager::do_post_event): Use
+	graphics_event type.
+	* graphics.cc (class callback_event, class function_event, class
+	set_event): Renamed from xxx_data classes.
+	(graphics_event::create_callback_event,
+	graphics_event::create_function_event,
+	graphics_event::create_set_event): Renamed from gh_manager::xxx
+	equivalent methods, removed reference count increment.
+	(gh_manager::do_post_event): Likewise.
+	(gh_manager::do_post_event): Use graphics_event type.
+	(gh_manager::do_post_function): Use graphics_event::event_fcn type.
+
+2008-07-22  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.51+.
+
+2008-07-21  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.51.
+	(OCTAVE_RELEASE_DATE): Now 2008-07-21.
+
+	* ov-class.cc (octave_class::subsasgn): Only do internal magic if
+	rhs is not an octave_class object.
+
+	* OPERATORS/op-struct.cc: Define concatenation operators for
+	struct/matrix concatenation (valid if matrix is empty).
+	* OPERATORS/op-cell.cc (install_cell_ops): Likewise, for cells.
+
+	* DLD-FUNCTIONS/fltk_backend.cc: Don't include oct.h.
+	Make compilation of entire file conditional on HAVE_FLTK.
+
+	* gl-render.cc: Make compilation of entire file conditional on
+	HAVE_OPENGL.
+
+	* Makefile.in (GL_RENDER_SRC, FLTK_BACKEND_SRC): Delete variables.
+	(DLD_XSRC): Always include fltk_backend.cc in the list.
+	(DIST_SRC): Always include gl-render.cc in the list.
+
+2008-07-19  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.50+.
+	(OCTAVE_API_VERSION): Now api-v33+.
+
+2008-07-18  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 3.1.50.
+	(OCTAVE_API_VERSION): Now api-v33.
+	(OCTAVE_RELEASE_DATE): Now 2008-07-18.
+	(OCTAVE_COPYRIGHT): Update date to 2008.
+
+2008-07-18  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (__magick_read__.df): New rule.
+	Append MAGICK_INCFLAGS to CPPFLAGS.
+
+	* Makefile.in (EXTRAS): Add graphics-props.cc to the list.
+	List graphics-props.cc as a target generated by genprops.awk.
+
+2008-07-18 Carlo de Falco  <carlo.defalco@gmail.com>
+
+	* gl-render.h: Conditionally include GL/gl.h or OpenGL/gl.h
+	and GL/glu.h or OpenGL/glu.h
+
+2008-07-17  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (out_of_date_check_internal): New arg, dispatch_type.
+	Use it to handle class methods.
+
+	* toplev.h (octave_call_stack::do_caller): New function.
+	(octave_call_stack::caller): Use it.
+
+2008-07-17  Jaroslav Hajek  <highegg@gmail.com>
+
+	* Makefile.in (convhulln.oct, __delaunayn__.oct, __voronoi__.oct,
+	regexp.oct, urlwrite.oct, __glpk__.oct, fltk_backend.oct):
+	Use OCT_LINK_DEPS instead of DL_LDFLAGS for target-specific
+	dependencies.
+
+2008-07-17  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTION/__magick_read__.cc (F__magick_read__): Allow build
+	without GraphicsMagick++ installed.
+
+2008-07-16  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (gh_manager::autolock): Delete copy constructor
+	and assignment definitions.
+
+2008-07-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (callback_property::execute): Remove static version.
+	(base_properties::is_hittest, base_properties::is_interruptible,
+	base_properties::is_selected, base_properties::is_selectionhighlight):
+	New convenience property accessors.
+	(base_graphics_object::get_handle, graphics_object::get_handle): Idem.
+	(gh_manager::graphics_lock): New global mutex
+	(gh_manager::lock, gh_manager::unlock, gh_manager::do_lock,
+	gh_manager::do_unlock): Add accessors for it.
+	(gh_manager::autolock): New class for easy locking of the graphics
+	system.
+	(gh_manager::event_data): New class for event management.
+	(gh_manager::event_queue): New object to hold pending events.
+	(gh_manager::callback_objects): New stack of callback objects.
+	(gh_manager::execute_callback, gh_manager:post_callback,
+	gh_manager::post_function, gh_manager::post_set,
+	gh_manager::process_events, gh_manager::flush_events,
+	gh_manager::restore_gcbo): New static methods for event management.
+	(gh_manager::do_execute_callback, gh_manager::do_post_callback,
+	gh_manager::do_post_function, gh_manager::do_post_set,
+	gh_manager::do_process_events, gh_manager::do_post_event,
+	gh_manager::do_restore_gcbo): New non-static versions.
+	* graphics.cc (xreset_gcbo): Remove.
+	(execute_callback): Likewise.
+	(base_property::run_listeners, callback_property::execute): Use
+	gh_manager::execute_callback.
+	(class callback_event_data, class function_event_data, class
+	set_event_data): New classes to implement various types of events.
+	(gh_manager::event_data::create_callback_event,
+	gh_manager::event_data::create_function_event,
+	gh_manager::event_data::create_set_event): Implement event factory
+	methods.
+	(gh_manager::do_restore_gcbo, gh_manager::do_execute_callback,
+	gh_manager::do_post_event, gh_manager::do_post_callback,
+	gh_manager::do_post_function, gh_manager::do_post_set,
+	gh_manager::do_process_events): New methods for event management.
+	(Fishandle, Fset, Fget, F__get__, F__go_figure__, F__go_delete__,
+	F__go_axes_init__, F__go_handles__, F__go_figure_handles__,
+	Favailable_backends, Fdrawnow, Faddlistener, Faddproperty,
+	get_property_from_handle, set_property_in_handle): Lock graphics
+	system.
+	(GO_BODY): Likewise.
+	(Fdrawnow): Support single "expose" argument.
+
+2008-07-15  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__convn__.cc (convn): Cast second arg to
+	octave_idx_type in call to std::max.
+
+2008-07-14  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (convhulln.oct, __delaunayn__.oct, __voronoi__.oct,
+	regexp.oct, urlwrite.oct, __glpk__.oct, fltk_backend.oct):
+	Simplify with target-specific settings for DL_LDFLAGS.
+
+	* DLD-FUNCTIONS/__magick_read__.cc: Delete "using namespace std"
+	and "using namespace Magick" directives.  Style fixes.
+
+	* oct-conf.h.in (OCTAVE_CONF_MAGICK_INCFLAGS,
+	OCTAVE_CONF_MAGICK_LIBS): Substitute here.
+	* toplev.cc (octave_config_info): Include MAGICK_INCFLAGS and
+	MAGICK_LIBS in the struct.
+	* Makefile.in (DLD_XSRC): Add __magick_read__.cc to the list.
+	(OCTAVE_LIBS): Add $(MAGICK_LIBS) to the list for static linking case.
+	(__magick_read__.d, __magick_read__.o, pic/__magick_read__.o):
+	Append MAGICK_INCFLAGS to CPPFLAGS.
+	(__magick_read__.oct): Append MAGICK_LIBS to LDFLAGS.
+
+2008-07-14  Thomas L. Scofield  <scofield@calvin.edu>
+
+	* DLD-FUNCTIONS/__magick_read__.cc: New file from Octave Forge.
+
+2008-07-11  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (const_value): Delete arg NM.  Change all uses.
+
+	* DLD-FUNCTIONS/fft.cc (do_fft): Avoid GCC warning.
+	* DLD-FUNCTIONS/fft2.cc (do_fft2): Likewise.
+	* DLD-FUNCTIONS/fftn.cc (do_fftn): Likewise.
+	* DLD-FUNCTIONS/qr.cc (Fqrshift): Likewise.
+	* DLD-FUNCTIONS/lookup.cc (Flookup): Likewise.
+	* gl-render.cc (opengl_renderer::draw): Likewise.
+	* graphics.cc (axes::update_axis_limits,
+	hggroup::update_axis_limits, Favailable_backends):
+	Likewise.
+	* pt-cmd.cc (tree_no_op_command::dup, tree_function_def::dup):
+	Likewise.
+	* pt-const.cc (tree_constant::dup): Likewise.
+	* pt-id.cc (tree_identifier::dup): Likewise.
+	* pt-jump.cc (tree_break_command::dup, tree_continue_command::dup,
+	tree_return_command::dup): Likewise.
+
+	* DLD-FUNCTIONS/colamd.cc: Style fixes.
+	(tree_postorder): Rename from TreePostorder.
+	(tree_postorder, coletree): Avoid GCC warnings.
+
+	* DLD-FUNCTIONS/chol.cc (Fchol): Avoid GCC warnings.
+	(Fcholdelete, Fcholshift): Delete unused arg nargout.
+
+	* toplev.cc, toplev.h (octave_call_stack::caller_user_function,
+	octave_call_stack::caller_user_script,
+	octave_call_stack::do_caller_user_function,
+	octave_call_stack::do_caller_user_script):
+	Delete functions and decls.
+
+	* defun.cc (print_usage): Call octave_call_stack::caller_user_code,
+	not octave_call_stack::caller_user_function.
+	* debug.cc (get_user_code): Likewise.
+
+	* toplev.h (octave_call_stack::difference_type): Delete typedef.
+	* toplev.cc, toplev.h (octave_call_stack::caller_user_code_line,
+	octave_call_stack::do_caller_user_code_line,
+	octave_call_stack::caller_user_code_column,
+	octave_call_stack::do_caller_user_code_column,
+	octave_call_stack::caller_script,
+	octave_call_stack::do_caller_script,
+	octave_call_stack::caller_user_function,
+	octave_call_stack::do_caller_user_function,
+	octave_call_stack::caller_user_code,
+	octave_call_stack::do_caller_user_code):
+	Delete unused difference_type arg.
+
+	* ov-float.h, ov-flt-re-mat.cc, ov-range.h, ov-re-mat.h,
+	ov-re-sparse.cc, ov-scalar.h: Check for NaN in bool_value and
+	bool_array_value member functions to bool.
+
+	* ops.h (DEFSCALARBOOLOP_OP): New macro.
+	* OPERATORS/op-s-s.cc, OPERATORS/op-fs-fs.cc: Use it to define
+	el_and and el_or ops.
+
+2008-07-10  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/lookup.cc (assign): Delete.
+	(Flookup): Use new NDArray constructors rather than assign.
+	* data.cc (Fsort): Use new NDArray constructors rather than
+	directly assigning.
+	* besselj.cc (int_array2_to_matrix, int_arrayn_to_array,
+	int_array2_to_float_matrix, int_arrayn_to_float_array): Delete.
+	(do-bessel): Use new NDArray constructors.
+	* max.cc (MINMAX_SPARSE_BODY, MINMAX_INT_BODY, MINMAX_SINGLE_BODY,
+	MINMAX_DOUBLE_BODY): Use new NDArray constructors.
+	* ov-bool.h (array_value, float_array_value): Explictly cast
+	boolean scalar to double before the assignment to avoid ambiguity.
+
+2008-07-10  David Bateman  <dbateman@free.fr>
+
+	* ls-mat4.cc (read_mat_binary_data, save_mat_binary_data): Add
+	loading and saving of sparse matrices.
+
+2008-07-10  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makefile.in: Add OPENGL_LIBS to liboctinterp link command. Add
+	GRAPHICS_CFLAGS to fltk_backend.cc compilation command.
+	* data.cc: Define hypotf to _hypotf when not present.
+	* gl-render.h: Replace OCTGRAPHICS_API with OCTINTERP_API.
+	* gl-render.cc: Get rid of Array2<vertex_data>.
+	* OPERATORS/op-int.h: Use powf instead of pow when invoked
+	with float arguments.
+
+2008-07-09  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (get_debug_input): Don't delete global_command here.
+	* toplev.cc (main_loop): Undo previous change.
+
+	* toplev.h (octave_call_stack::instance_ok): Push top scope when
+	creating instance.
+
+	* DLD-FUNCTIONS/inv.cc (Finv): Avoid GCC warning.
+
+	* DLD-FUNCTIONS/expm.cc (Fexpm): Avoid GCC warning.
+
+	* ov-fcn-inline.cc (octave_fcn_inline::load_ascii): Avoid GCC warning.
+
+2008-07-09  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* gl-render.cc (opengl_renderer::draw(figure)): Enable line smoothing
+	according to __enhanced__ property.
+	(opengl_renderer::draw_marker): Only draw markers with valid call
+	lists ID.
+	(opengl_renderer::make_marker_list): Do not produce filled marker call
+	list for non-fillable markers.
+	(opengl_renderer::draw(axes)): Do not antialias axes system.
+
+	* gl-render.cc (opengl_renderer::set_polygon_offset): Also enable
+	polygon offseting in GL_LINE mode.
+	(opengl_renderer::draw_marker): Offset markers foward instead of
+	backward (to draw them above lines).
+
+	* Makefile.in: new substituted variables GL_RENDER_SRC and
+	FLTK_BACKEND_SRC.
+
+	* gl-render.cc (vertex_data::vertex_data_rep::vertex_data(void),
+	vertex_data::vertex_data(void), vertex_data::vertex_data(...)):
+	initialize reference counting correctly.
+
+2008-07-09  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (main_loop): Unwind-protect global_command.
+	* input.cc (get_debug_input): Likewise.
+
+2008-07-09  David Bateman  <dbateman@free.fr>
+
+	* pt-id.cc (octave_value_list tree_identifier::rvalue (int),
+	octave_lvalue tree_identifier::lvalue (void)): Remove
+	MAYBE_DO_BREAKPOINT.
+
+2008-07-08  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (axes::properties::keypos): Declare as
+	any_property instead of double_property.
+
+2008-06-28  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (push_dummy_call_stack_elt): Delete.
+	(Fdbstack): Don't push dummy stack elt.  Use nskip instead of
+	nframes, and curr_frame instead of idx.  Pass curr_frame to
+	octave_call_stack::backtrace.
+
+	* ls-mat5.cc (read_mat5_binary_element): Explicitly pass 0 for
+	current_context in call to symbol_table::varref.
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii): Likewise.
+	Fix test.
+
+	* mex.cc (mexGetVariable, mexPutVariable): Use octave_call_stack
+	methods to manipulate scope and context.
+	* parse.y (source_file, Fassignin, Fevalin): Likewise.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Call octave_call_stack::push after call to symbol_table::push_scope.
+	Call unwind_protect::add with octave_call_stack::unwind_pop
+	immediately after call to octave_call_stack::push.
+
+	* symtab.cc (symbol_table::xcurrent_caller_scope): Delete definition.
+	* symtab.h (symbol_table::xcurrent_caller_scope): Delete decl.
+	Delete all uses.
+	(xcurrent_context_this_table): Delete.  Delete all uses.
+	(symbol_table::current_caller_scope): Delete.
+
+	* toplev.cc (octave_call_stack::do_num_user_code_frames):
+	New function.
+	(octave_call_stack::do_backtrace): New arg, curr_user_frame.
+	Rename nframes arg to nskip.  Correctly handle curr_frame not at
+	end of stack.
+	(octave_call_stack::do_goto_frame_relative): Rename n arg to nskip.
+	Correctly handle curr_frame not at end of stack.
+	(octave_call_stack::do_goto_caller_frame): New function.
+	(octave_call_stack::do_goto_base_frame): New function.
+	* toplev.h: Provide decls for new functions.
+	(octave_call_stack::call_stack_elt::prev): New data member.
+	Initialize it in constructor.
+	(octave_call_stack::const_reverse_iterator,
+	octave_call_stack::reverse_iterator): New typedefs.
+	(octave_call_stack::symbol_table::scope_id current_scope,
+	octave_call_stack::symbol_table::context_id current_context,
+	octave_call_stack::num_user_code_frames,
+	octave_call_stack::goto_caller_frame,
+	octave_call_stack::goto_base_frame,
+	octave_call_stack::do_num_user_code_frames,
+	octave_call_stack::do_current_scope,
+	octave_call_stack::do_current_context): New functions.
+
+	(octave_call_stack::push): Default value for context arg is
+	symbol_table::current_context, not 0.
+	(octave_call_stack::do_push): Save previous frame.  Always push
+	new frame on back of stack.  Call symbol_table::set_scope_and_context.
+	(octave_call_stack::do_pop): Restore previous frame.  Always pop
+	frame from back of stack.  Call symbol_table::set_scope_and_context.
+
+2008-06-26  John W. Eaton  <jwe@octave.org>
+
+	* token.h: Omit "class symbol_table::symbol_record" decl;
+
+	* lex.l (grab_block_comment): Use parens around || expression
+	within && expression.
+
+2008-06-23  John W. Eaton  <jwe@octave.org>
+
+	* debug.cc (Fdbstack): Avoid shadowed variable warning.
+
+2008-06-23  Jaroslav Hajek  <highegg@gmail.com>
+
+	* genprops.awk (emit_source): Avoid gensub for portability.
+	(BEGIN): Ditto.
+
+2008-06-20  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list): Make "once" an output
+	argument.
+	(octregexp): Do not use cell arrays when "once" is requested.
+
+	* ov.cc (make_vector_dims): New function.
+	(vector_value, complex_vector_value, float_vector_value,
+	float_complex_vector_value): Query N-d array values and simplify,
+	avoid copying.
+	(column_vector_value, complex_column_vector_value,
+	float_column_vector_value, float_complex_column_vector_value,
+	row_vector_value, complex_row_vector_value,
+	float_row_vector_value, float_complex_row_vector_value):
+	Simplify to trivial wrappers.
+	(int_vector_value): Avoid conversions if integer type, query N-d array
+	value, simplify.
+
+2008-06-17  John W. Eaton  <jwe@octave.org>
+
+	* toplev.h, toplev.cc (class octave_call_stack):
+	Push elements on and pop from back of queue.
+	(octave_call_stack::do_push, octave_call_stack::do_pop):
+	Always adjust curr_frame.
+	(octave_call_stack::size, octave_call_stack::do_size): New functions.
+	* pt-stmt.cc (tree_statement::eval):
+	Also call octave_call_stack::set_statement when debugging.
+	* debug.cc (push_dummy_call_stack_elt): New function.
+	(Fdbstack): Omit dbstack from call stack by popping element rather
+	than adjusting frame number.  Correctly handle arg.
+
+2008-06-12  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrshift, Fqrdelete):
+	Allow single precision arguments, add tests for single precision.
+
+2008-06-11  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (octave_base_value::streamoff_value,
+	octave_base_value::streamoff_array_value): Delete.
+	* ov-base.h: Delete decls.
+	(octave_base_value::is_streamoff): Delete.
+	* ov-float.cc (octave_float_scalar::streamoff_value,
+	octave_float_scalar::streamoff_array_value): Delete.
+	* ov-float.h: Delete decls.
+	* ov-flt-re-mat.cc (octave_float_matrix::streamoff_array_value): Delete.
+	* ov-flt-re-mat.h: Delete decl.
+	* ov-re-mat.cc (octave_matrix::streamoff_array_value): Delete.
+	* ov-re-mat.h: Delete decl.
+	* ov-re-sparse.cc (octave_sparse_matrix::streamoff_array_value): Delete.
+	* ov-re-sparse.h: Delete decl.
+	* ov-scalar.cc (octave_scalar::streamoff_value,
+	octave_scalar::streamoff_array_value): Delete.
+	* ov-scalar.h: Delete decls.
+	* ov.cc (octave_value::octave_value (const streamoff_array&),
+	octave_value::octave_value (const ArrayN<std::streamoff>&),
+	octave_value::streamoff_value (void) const,
+	octave_value::streamoff_array_value (void) const): Delete.
+	* ov.h: Delete decls.
+	(octave_value::is_streamoff): Delete.
+	* ov.cc (install_types): Don't register streamoff type.
+	* ov-streamoff.h, ov-streamoff.cc, OPERATORS/op-streamoff.cc: Delete.
+	* Makefile.in: Delete them from the lists.
+
+	* error.cc (verror): Restore newline in msg_string.  Stripping
+	"error: " prefix when buffering error messages is no longer neeed.
+
+2008-06-25  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (Frats): Print usage if nargin == 0.
+
+2008-06-10  John W. Eaton  <jwe@octave.org>
+
+	* mexproto.h (mxCreateLogicalScalar): Declar arg as mxLogical, not int.
+
+2008-06-09  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (execute_callback): Pass CB by const reference and
+	explicitly make a copy.
+	(xget_ancestor): Pass GO by const reference and explicitly make a copy.
+
+	* error.cc (verror): Omit "name: " and "\a" from Vlast_error_msg.
+	Save line and column information from user code.
+	* toplev.cc (octave_call_stack::do_caller_user_code_line,
+	octave_call_stack::do_caller_user_code_column): New functions.
+	* toplev.h: Provide decls.
+	(octave_call_stack::caller_user_code_line,
+	octave_call_stack::caller_user_code_column): New functions.
+	(octave_call_stack::current_line, octave_call_stack::current_column):
+	Default return value is -1, not 0.
+
+2008-06-06  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::erase_subfunctions):
+	New function.
+	* ov-base.h (octave_base_value::erase_subfunctions):
+	New virtual function.
+	* ov-usr-fcn.h (octave_user_function::erase_subfunctions):
+	New function.
+	* symtab.h (symbol_table::fcn_info::::erase_subfunction,
+	symbol_table::fcn_info::fcn_info_rep::erase_subfunction,
+	symbol_table::erase_subfunctions_in_scope):
+	New functions.
+	(symbol_table::fcn_info::fcn_info_rep::clear_user_function):
+	Erase subfunctions here.
+
+	* variables.cc (Fmlock): Doc fix.
+
+2008-06-05  John W. Eaton  <jwe@octave.org>
+
+	* gl-render.cc (opengl_renderer::draw): Correctly avoid shadow
+	warnings from gcc for xmin, xmax, ymin, ymax, zmin, and zmax.
+
+	* graphics/ChangeLog, graphics/Makefile.in, graphics/Makerules.in,
+	graphics/fltk_backend/Makefile.in, graphics/opengl/Makefile.in:
+	Delete.
+
+	* gl-render.cc, gl-render.h: Move here from graphics/opengl.
+	* Makefile.in: Add them to the appropriate lists.
+	(octave$(EXEEXT)): Also link with $(OPENGL_LIBS)
+
+	* fltk_backend.cc: Move here from graphics/fltk_backend.
+	* Makefile.in (DLD_XSRC): Add it to the list
+	(fltk_backend.oct): Include special rules for linking with
+	$(GRAPHICS_LIBS) and $(FT2_LIBS).
+
+	* dynamic-ld.cc (octave_dynamic_loader::mex_mangler,
+	octave_dynamic_loader::mex_uscore_mangler,
+	octave_dynamic_loader::mex_f77_mangler): New functions.
+	(octave_dynamic_loader::do_load_mex): Use them.
+	(octave_dynamic_loader::do_remove_oct): Rename from
+	octave_dynamic_loader::do_remove.
+	(octave_dynamic_loader::do_remove_mex): New function.
+	* dynamic-ld.h: Provide/fix decls.
+
+	* graphics.cc (properties::update_normals): Style fixes.
+	* graphics.h.in: Style fixes.
+
+	ChangeLog entries for gl-render.h, gl-render.cc, and
+	fltk_backend.cc before the move:
+
+	2008-06-05  John W. Eaton  <jwe@octave.org>
+
+	* opengl/gl-render.cc (xmin): New static function.
+
+	* opengl/gl-render.h (opengl_renderer): Style fixes.
+	* fltk_backend/fltk_backend.cc: Style fixes.
+
+	2008-04-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.h (opengl_renderer::draw(hggroup)): New method.
+	* opengl/gl-render.cc (opengl_renderer::draw(hggroup)): Likewise.
+	(opengl_renderer::draw(graphics_object)): Call it.
+
+	2008-03-17  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (plot_window::resize,
+	plot_window::draw): make canvas the size of figure.position
+
+	2008-03-09  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (plot_window::handle): add zoom
+	stack
+
+	2008-03-06  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (plot_window::handle): Add handling
+	of the 'a' and 'g' keys
+	(plot_window: toggle_grid): New helper function
+	(plot_window): Add new togglegrid button
+
+	2008-03-01  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (OpenGL_fltk::draw_overlay,
+	OpenGL_fltk::zoom, OpenGL_fltk::set_zoom_box): Added to support
+	zoom box
+	(plot_window::handle): Added zoom box code, B-3 now does autoscale
+	(plot_window::axis_auto): New utility function to call axis("auto")
+	(plot_window::button_press): "A" button now does autoscale
+
+	* opengl/gl-render.cc (make_marker_list): Add the "+x*.^v><"
+	markers
+
+	2008-02-27  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (opengl_renderer::draw(patch),
+	opengl_renderer::draw(surface)): Adapt to type change of facealpha and
+	edgealpha, using double_radio_property class.
+
+	2008-02-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.h: Make sure windows.h is included before OpenGL
+	headers.
+	* fltk_backend/Makefile.in (FLTK_EXTRA_CXXFLAGS): Use $(srcdir) for
+	includesion of OpenGL renderer headers.
+	(Makeconf): Move inclusion of Makeconf later on, to avoid freezing
+	MinGW make.
+
+	* fltk_backend/Makefile.in (GRAPHICS_CFLAGS): New substituted
+	variable.
+
+	2008-02-25  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (class plot_window): Many changes
+	to use figure::properties instead of figure handle to reference
+	the figure
+	(class figure_manager): ditto
+	(__fltk_redraw__): moved most of functionality into the
+	figure_manager class
+	(plot_window::pixel2pos): Modified to use axes::pixel2coord
+	(plot_window::pixel2staus): Modified to use pixel2pos
+	(plot_window::handle): Added zoom with mouse
+
+	2008-02-24  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (OpenGL_fltk::Draw): removed double
+	buffer switch
+	(OpenGL_fltk::setup_viewport): removed call to glOrtho --
+	gl-render takes care of all the transformations
+
+	2008-02-23  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/fltk_backend.cc (plot_window::mark_modifed): mark
+	the whole window as damaged (otherwise changing figure.postion
+	does not have immediate effect)
+	(plot_window::draw): New function, checks for window size
+	(__fltk_maxtime__): New DEFUN to allow tweaking of fltk timeout
+	(__fltk_redraw__): Use fltk_maxtime as timeout
+
+	2008-02-21  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (opengl_renderer::patch_tesselator::combine):
+	Protect against NULL vertex data.
+
+	* opengl/gl-render.cc (opengl_renderer::draw(patch)): Add marker
+	rendering of patch objects.
+
+	2008-02-21  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* opengl/gl-render.cc: remove OpenGL includes
+	* opengl/gl-render.h: add OpenGL includes
+	* fltk_backend/fltk_backend.cc: remove OpenGL includes
+	(__fltk_redraw__): put figure handle into the figure's
+	__plot_stream__ property for later
+	(fltk_backend::close_figure): use argument as figure handle to
+	close
+
+	2008-02-20  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* fltk_backend/Makefile.in: initial import
+
+	* fltk_backend/fltk_backend.cc: initial import
+
+
+	2008-02-20  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.h (opengl_renderer::draw(patch)): New method to
+	render patch objects.
+	(class opengl_renderer::patch_tesselator): Forward declaration.
+	* opengl/gl-render.cc (opengl_texture::create): Use RGB data format
+	instead of RGBA.
+	(class opengl_tesselator): New classes to abstract GLU tessellation
+	process.
+	(class opengl_renderer::patch_tesselator): New class to render opaque
+	patch objects.
+	(class vertex_data): New class to hold vertex data during tessellation
+	of patch objects.
+	(opengl_renderer::draw(patch)): New method to render patch objects (no
+	transparency, no border, no marker yet).
+	(opengl_renderer::draw(graphics_object)): Dispatch to it.
+
+	* opengl/gl-render.cc (opengl_renderer::draw(patch)): Use patch color
+	data and support face/vertex single color specification.
+
+	* opengl/gl-render.cc (opengl_tesselator::begin_polygon): Set
+	tessellation property also for non-filled polygons.
+	(opengl_renderer::patch_tesselator::vertex): Protect against empty
+	color matrices.
+	(opengl_renderer::draw(patch)): Render patch border (no transparency
+	yet).
+
+	2008-02-19  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (opengl_texture::texture_rep::tex_coord,
+	opengl_texture::tex_coord): New wrapper around glTexCoord2d.
+	(opengl_renderer::draw(surface)): Use it for texturemap
+	implementation.
+	(opengl_renderer::draw(surface)): Fix indexing bug when creating clip
+	matrix.
+	(opengl_texture::operator=): Add assignment operator.
+	(opengl_texture::create): New static opengl_texture creator.
+	(opengl_texture::is_valid): New accessor.
+
+	2008-02-18  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (class opengl_texture): New class to wrap
+	texture operations in OpenGL.
+
+	2008-02-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (opengl_renderer::draw(surface)): Set material
+	color when rendering surface facets.
+
+	* opengl/gl-render.cc (opengl_renderer::draw(surface)): Add rendering
+	of mesh and markers.
+
+	2008-02-16  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.cc (opengl_renderer::draw(figure)): Initialize the
+	OpenGL context correctly.
+	(opengl_renderer::draw(surface)): Add missing glEnd call.
+
+	2008-02-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* opengl/gl-render.h opengl/gl-render.cc: Add rendering
+	interface for surface objects (actual implement still
+	missing).
+
+	2008-02-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makefile.in Makerules.in: Initial import
+	* opengl/Makefile.in: Likewise.
+	* opengl/gl-render.h opengl/gl-render.cc: Likewise.
+
+2008-06-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (axes::properties::set_defaults): Preserve position
+	if mode is replace.
+	(axes::properties::sync_positions): Use default_axes_postion for
+	consistency.
+
+	* graphics.h.in (axes::properties::sync_positions,
+	axes::properties::update_position,
+	axes::properties::update_outerposition): New functions to sync
+	outerposition and position.
+
+	* graphics.h.in (axes::properties::update_xlim,
+	axes::properties::update_ylim, axes::properties::update_zlim):
+	pass is_logscale flag to axes::properties::calc_ticks_and_lims
+	* graphics.cc (axes::properties::calc_ticks_and_lims): Added
+	support for log scale
+
+	* graphics.h.in (axes::properities::fix_limits) : New method.
+	(axes::properties::update_xlim, axes::properties::update_ylim,
+	axes::properties::update_zlim): Use fix_limits.
+
+	* graphics.cc (axes::properties::calc_ticks_and_lims): Make sure
+	that lo <= hi.
+
+	* graphics.h.in (axes::pixel2coord, axes::coord2pixel): New functions.
+
+	* graphics.cc (convert_position): No longer static.
+	* graphics.h.in: Provide decl.
+
+ 	* graphics.cc (Favailable_backends): New function.
+  	* graphics.h.in (base_graphics_backend::available_backends_list):
+	New function.
+
+	* graphics.cc (axes::properties::calc_ticks_and_lims): Refactor.
+	Adjust axes limits & tics together so that the result is consistent.
+	(axes::properties::calc_tick_sep): Ditto.
+	(axes::properties::get_axis_limits): Ditto.  Now a member of
+	axes::properties
+	(magform): Now file-scope static function instead of
+	axes::properties member function.
+
+	* graphics.h.in (axes::properties::update_xlim): call the new
+	axes::properties::calc_ticks_and_lims method
+	(axes::properties::update_ylim): ditto
+	(axes::properties::update_zlim): ditto
+
+2008-06-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ov-fcn-inline.h (class octave_fcn_inline): Mark with OCTINTERP_API.
+	* ov-fcn-handle.h (class Octave_fcn_handle): Likewise.
+	* ls-oct-binary.h (save_binary_data, read_binary_data): Likewise.
+
+	* genprops.awk (emit_source): Fix if-then-else statement generation
+	when the first property is hidden.
+	* graphics.h.in (base_properties::adopt): Call mark_modified.
+	(class hggroup): New graphics object class.
+	* graphics.cc (lookup_object_name, make_graphics_object_from_type,
+	property_list::lookup, property_list::set,
+	root_figure::init_factory_properties): Support hggroup as possible
+	object type.
+	(hggroup::update_axis_limits): New graphics object class.
+	(make_graphics_object): Look for "parent" property in the arguments
+	and use it as actual parent for the created object.
+	(F__go_hggroup__): New function.
+	(F__go_delete__): Set Vdrawnow_requested to true.
+
+	* graphics.h.in (base_property::clone, string_property::clone,
+	radio_property::clone, color_property::clone, double_property::clone,
+	double_radio_property::clone, array_property::clone,
+	row_vector_property::clone, bool_property::clone,
+	handle_property::clone, callback_property::clone, any_property::clone,
+	property::clone): New virtual method.
+	(property::create): New static method to create dynamic properties.
+	(base_properties::has_property): New method to check the existence of
+	a property.
+	(any_property::any_property, row_vector_property::row_vector_property,
+	double_radio_property::double_radio_property): New copy constructors.
+	* graphics.cc (lookup_object_name): New static utility function.
+	(make_graphics_object_from_type): Likewise.
+	(gh_manager::do_make_graphics_handle): Use it.
+	(dprop_obj_map): New static map used for chaching purpose in dynamic
+	property creation.
+	(property::create): New static method to create dynamic properties.
+	(base_properties::has_property): New method to check the existence of
+	a property.
+	(base_properties::override_defaults): Check parent validity.
+	(Faddlistener): Documentation fix.
+	(Faddproperty): New function to create dynamic properties.
+
+	* genprops.awk (emit_get_array): Don't produce get_xxx_property
+	accessors.
+	* graphics.h.in (array_property::get_limits): New method to return the
+	array limits.
+	(base_properties::get_xdata_property,
+	base_properties::get_ydata_property,
+	base_properties::get_zdata_property,
+	base_properties::get_ldata_property,
+	base_properties::get_udata_property,
+	base_properties::get_xldata_property,
+	base_properties::get_xudata_property,
+	base_properties::get_cdata_property): Remove methods, replaced with
+	limit-based equivalent.
+	(base_graphics_object::get_xdata_property,
+	base_graphics_object::get_ydata_property,
+	base_graphics_object::get_zdata_property,
+	base_graphics_object::get_ldata_property,
+	base_graphics_object::get_udata_property,
+	base_graphics_object::get_xldata_property,
+	base_graphics_object::get_xudata_property,
+	base_graphics_object::get_cdata_property): Likewise.
+	(graphics_object::get_xdata_property,
+	graphics_object::get_ydata_property,
+	graphics_object::get_zdata_property,
+	graphics_object::get_ldata_property,
+	graphics_object::get_udata_property,
+	graphics_object::get_xldata_property,
+	graphics_object::get_xudata_property,
+	graphics_object::get_cdata_property): Likewise.
+	(base_properties::get_xlim, base_properties::get_ylim,
+	base_properties::get_zlim, base_properties::get_clim,
+	base_properties::get_alim, base_properties::is_xliminclude,
+	base_properties::is_yliminclude, base_properties::is_zliminclude,
+	base_properties::is_climinclude, base_properties::is_aliminclude):
+	New methods.
+	(base_graphics_object::get_xlim, base_graphics_object::get_ylim,
+	base_graphics_object::get_zlim, base_graphics_object::get_clim,
+	base_graphics_object::get_alim, base_graphics_object::is_xliminclude,
+	base_graphics_object::is_yliminclude,
+	base_graphics_object::is_zliminclude,
+	base_graphics_object::is_climinclude,
+	base_graphics_object::is_aliminclude): Likewise.
+	(graphics_object::get_xlim, graphics_object::get_ylim,
+	graphics_object::get_zlim, graphics_object::get_clim,
+	graphics_object::get_alim, graphics_object::is_xliminclude,
+	graphics_object::is_yliminclude, graphics_object::is_zliminclude,
+	graphics_object::is_climinclude, graphics_object::is_aliminclude):
+	Likewise.
+	(base_graphics_object::update_axis_limits): Provide default behavior
+	by passing the call to the parent object.
+	(line::properties::xdata, line::properties::ydata,
+	line::properties::zdata, line::properties::ldata,
+	line::properties::udata, line::properties::xldata,
+	line::properties::xudata): Replace 'l' modifier with 'u'.
+	(line::properties::xlim, line::properties::ylim,
+	line::properties::zlim, line::properties::xliminclude,
+	line::properties::yliminclude, line::properties::zliminclude): New
+	hidden properties.
+	(line::properties::update_xdata, line::properties::update_ydata,
+	line::properties::update_zdata, line::properties::update_xldata,
+	line::properties::update_xudata, line::properties::update_ldata,
+	line::properties::update_udata): New updaters that update limit
+	properties.
+	(line::properties::compute_xlim, line::properties::compute_ylim): New
+	method to compute actual limits taking into account x/y data and
+	upper/lower bounds.
+	(text::properties::position): Add 'u' modifier.
+	(text::properties::xlim, text::properties::ylim,
+	text::properties::zlim, text::properties::xliminclude,
+	text::properties::yliminclude, text::properties::zliminclude): New
+	hidden properties.
+	(text::properties::update_position): New updater that updates limit
+	properties.
+	(image::properties::xdata, image::properties::ydata,
+	image::properties::cdata): Replace 'l' modifier with 'u'.
+	(image::properties::cdatamapping): Add 'l' modifier.
+	(image::properties::xlim, image::properties::ylim,
+	image::properties::clim, image::properties::xliminclude,
+	image::properties::yliminclude, image::properties::climinclude): New
+	hidden properties.
+	(image::properties::get_climinclude,
+	image::properties::is_climinclude): Provide specialized inline
+	accessors.
+	(image::properties::update_xdata, image::properties::update_ydata,
+	image::properties::update_cdata): New updaters that update limit
+	properties.
+	(patch::properties::xdata, patch::properties::ydata,
+	patch::properties::zdata, patch::properties::cdata): Replace 'l'
+	modifier with 'u'.
+	(patch::properties::cdatamapping): Add 'l' modifier.
+	(patch::properties::alphadatamapping): New property.
+	(patch::properties::xlim, patch::properties::ylim,
+	patch::properties::zlim, patch::properties::clim,
+	patch::properties::alim, patch::properties::xliminclude,
+	patch::properties::yliminclude, patch::properties::zliminclude,
+	patch::properties::climinclude, patch::properties::aliminclude: New
+	hidden properties.
+	(patch::properties::get_climinclude,
+	patch::properties::is_climinclude, patch::properties::get_aliminclude,
+	patch::properties::is_aliminclude): Provide specialized inline
+	accessors.
+	(patch::properties::update_xdata, patch::properties::update_ydata,
+	patch::properties::update_zdata, patch::properties::update_cdata): New
+	updaters that update limit properties.
+	(surface::properties::xdata, surface::properties::ydata,
+	surface::properties::zdata, surface::properties::cdata,
+	surface::properties::alphadata): Replace 'l' modifier with 'u'.
+	(surface::properties::cdatamapping,
+	surface::properties::alphadatamapping): Add 'l' modifier.
+	(surface::properties::xlim, surface::properties::ylim,
+	surface::properties::zlim, surface::properties::clim,
+	surface::properties::alim, surface::properties::xliminclude,
+	surface::properties::yliminclude, surface::properties::zliminclude,
+	surface::properties::climinclude, surface::properties::aliminclude: New
+	hidden properties.
+	(surface::properties::get_climinclude,
+	surface::properties::is_climinclude,
+	surface::properties::get_aliminclude,
+	surface::properties::is_aliminclude): Provide specialized inline
+	accessors.
+	(surface::properties::update_xdata, surface::properties::update_ydata,
+	surface::properties::update_zdata): Update limit properties.
+	(surface::properties::update_cdata,
+	surface::properties::update_alphadata): New updaters that update limit
+	properties.
+	* graphics.cc (base_properties::update_axis_limits): Simply call
+	update_axis_limits in owning graphics_object.
+	(base_graphics_object::update_axis_limits): Provide default behavior
+	by passing the call to the parent object.
+	(check_limits_vals(double&,double&,double&,const octave_value&)): New
+	static method to work with new limit properties in graphics objects.
+	(get_children_limits): New static method to compute the raw limits of
+	a set of children, based on the new limit properties.
+	(axes::update_axis_limits): Simplify and call get_children_limits. Add
+	handling of alpha limits.
+	(line::properties::compute_xlim, line::properties::compute_ylim): New
+	methods to compute line limits taking into account upper/lower bounds.
+
+	* graphics.cc (axes::properties::sync_positions): Update
+	transformation data.
+
+	* graphics.cc (Faddlistener): Rename from Fadd_listener.
+
+	* graphics.h.in (axes::properties::pixel2coord): Center Z coordinate
+	on x_zlim instead of 0.
+	(axes::properties::zoom, axes::properties::unzoom,
+	axes::properties::clear_zoom_stack): New methods to handle zoom stack.
+	(axes::properties::zoom_stack): New field to hold zoom stack.
+	(axes::properties::update_xlim, axes::properites::update_ylim):
+	Additional do_clr_zoom argument to control whether the zoom stack will
+	be cleared.
+	(axes::properties::update_zlim): Clear zoom stack.
+	* graphics.cc (axes::properties::zoom, axes::properties::unzoom,
+	axes::properties::clear_zoom_stack): New methods to handle zoom stack.
+
+	* genprops.awk (emit_source): Use all properties in factory defaults.
+
+	* graphics.h.in (base_property::base_property): Set internal counter
+	to 1 by default.
+	(property::property): Adapt constructors to default counter value in
+	base_property.
+
+	* graphics.h.in (base_properties::get_property): Make virtual and
+	remove const modifier.
+	* graphics.cc (base_properties::get_property): Can return built-in
+	properties. Generate an error if the property does not exist.
+	(base_properties::add_listener): Use get_property.
+	(Fadd_listener): Add documentation.
+	* genprops.awk (emit_common_declarations, emit_source): Emit code for
+	overloaded get_property method.
+
+	* genprops.awk (emit_declarations): Run listeners in the property
+	setter methods.
+	* graphics.h.in (enum listener_mode): New enum type for listeners.
+	(base_property::set): Make non-virtual and handle listeners execution.
+	(base_property::listeners): New field holding a map of listeners.
+	(base_property::add_listener, base_property::run_listeners,
+	base_property::do_set): New methods to handle listeners.
+	(property::add_listener, property::run_listeners): Likewise.
+	(base_properties::add_listener): Likewise.
+	(base_graphics_object::add_property_listener,
+	graphics_object::add_property_listener): Likewise.
+	(all property classes): Rename set to do_set and make it protected.
+	* graphics.cc (base_property::run_listeners): New method to execute
+	listeners.
+	(color_property::set, double_radio_property::set,
+	handle_property::set): Rename to do_set.
+	(base_properties::add_listener): New method to handle listener
+	additio. Only handle dynamic properties.
+	(Fadd_listener): New octave interface to add property listeners to
+	graphics object.
+
+	* genprops.awk (emit_get_data): Remove.
+	(emit_declarations): Treat row_vector_property as array_property and
+	remove data_property references.
+	* graphics.h.in (array_property::array_property(array_property)): Add
+	copy constructor.
+	(class data_property): Remove (replaced by array_property).
+	(class base_graphics_backend, class graphics_backend): Replace
+	data_property references with array_property.
+	(line::properties::xdata, line::properties::ydata,
+	line::properties::zdata, line::properties::ldata,
+	line::properties::udata, line::properties::xldata,
+	line::properties::xudata): Turn into row_vector_property.
+	(image::properties::xdata, image::properties::ydata): Likewise.
+	(image::properties::init): Add length constraints for xdata and ydata.
+	(patch::properties::xdata, patch::properties::ydata,
+	patch::properties::zdata, patch::properties::facevertexalphadata):
+	Turn into array_property.
+	(surface::properties::xdata, surface::properties::ydata,
+	surface::properties::zdata): Likewise.
+	(patch::properties::init): Add size constraints for xdata, ydata,
+	zdata and facevertexalphadata.
+	(surface::properties::init): Add size constraints for xdata, ydata and
+	zdata.
+	* graphics.cc (check_limit_vals): Remove override with data_property.
+	(axes::update_axis_limits): Replace data_property references with
+	array_property.
+
+	* graphics.h.in (root_figure::get_default): Use factory defaults when
+	no explicit default value exists.
+	(figure::properties::set___backend__): Reset __plot_stream__ to empty
+	value.
+	* graphics.cc (gh_manager::gh_manager): Call
+	graphics_backend::default_backend to make sure the default backend is
+	initialized.
+
+	* graphics.h.in (patch::properties::edgealpha,
+	surface::properties::facealpha, surface::properties::edgealpha): Fix
+	typos in property names.
+
+	* graphics.h.in (class double_radio_property): New property class for
+	holding face/edge alpha values.
+	(patch::properties::facealpha, patch::properties::edgealpha,
+	surface::properties::facealpha, surface::properties::edgealpha): Use
+	double_radio_property class.
+	* graphics.cc (double_radio_property::set): Implement new property
+	class.
+	* genprops.awk (emit_get_double_radio): New function to emit code for
+	double_radio_property.
+	(emit_declarations): Use it.
+
+	* graphics.h.in (array_property::array_property(void)): New default
+	constructor.
+	(array_property::xmin, array_property:xmax, array_property::xminp,
+	array_property::min_val, array_property::max_val,
+	array_property::min_pos): New fields and accessors to hold min/max
+	values of the array data.
+	(array_property::get_data_limits): New method to compute min/max
+	values of the array data.
+	(base_properties::get_cdata_property,
+	graphics_object::get_cdata_property): Return array_property.
+	(image::properties::cdata, surface::properties::cdata,
+	patch::properties::cdata, patch::properties::facevertexcdata): Turn
+	into array_property type.
+	(image::properties::init, surface::properties::init,
+	patch::properties::init): Add constraint initialization for cdata and
+	facevertexcdata (patch only).
+	* genprops.awk (emit_get_array): New function to emit accessor for
+	array_property.
+	(emit_declarations): Use it.
+	* graphics.cc (get_array_limits): New template function to compute
+	min/max values of an Array<T> object.
+	(array_property::get_data_limits): New method to compute min/max
+	values of the array data, using get_array_limits.
+	(check_limit_vals): Overridden function with array_property.
+	(axes::update_axis_limits): Turn cdata property into array_property.
+
+	* graphics.h.in (patch::properties::get_color_data): New utility
+	function to retrieve actual color data.
+	* graphics.cc (patch::properties::get_color_data): Likewise.
+
+	* graphics.h.in (base_scaler::is_linear, lin_scaler::is_linear,
+	scaler::is_linear): New method to detect linear scales.
+	(graphics_xform::scale(Matrix)): New method to scale 2D/3D coordinates
+	directly.
+	(patch::properties::facelighting): Set default value to "none".
+
+	* graphics.h.in (axes::axes): Be sure to initialize transformation
+	data correctly.
+
+	* graphics.cc (xget_ancestor): Pass graphics_object argument by value
+	instead of by reference.
+
+	* graphics.h.in (surface::properties::xdata,
+	surface::properties::ydata, surface::properties::zdata,
+	surface::properties::normalmode, surface::properties::vertexnormals):
+	Add 'u' modifier.
+	(surface::properties::update_normals): New method to compute normals
+	automatically.
+	(surface::properties::update_xdata, surface::properties::update_ydata,
+	surface::properties::update_zdata,
+	surface::properties::update_normalmode,
+	surface::properties::update_vertexnormals): New updaters to update
+	normals automatically.
+	* graphics.cc (surface::properties::update_normals): Likewise.
+	(cross_product): New inlined utility function for cross product
+	computation adn accumulation.
+
+	* graphics.h.in (class base_scaler, class lin_scaler, class
+	log_scaler, class scaler): Add scale method for NDArray.
+	(log_scaler::do_scale): Factorize scaling code.
+
+	* graphics.h.in (figure::properties::update_position): Re-remove.
+	(figure::properties::facecolor): Re-add 'texturemap' value.
+	(surface::properties::get_color_data): New method to compute actual
+	surface color data from cdata.
+	* graphics.cc (surface::properties::get_color_data): Likewise.
+	(xget_ancestor): New utility function to retrieve an ancestor of a
+	given type.
+	(convert_cdata): New utility function to convert cdata property into
+	actual color data.
+
+	* graphics.h.in (surface::properties::facecolor): Add "texturemap"
+	as possible value.
+	(class surface::properties): New properties alphadata,
+	alphadatmapping, ambientstrength, backfacelighting, diffusestrength,
+	edgealpha, edgelighting, erasemode, facelighting, meshstyle,
+	normalmode, specularcolorreflectance, specularexponent,
+	specularstrength, vertexnormals.
+	(surface::properties::init): Add constraints for alphadata,
+	vertexnormals and cdata (the latter are commented until cdata
+	has changed type).
+
+	* graphics.h.in (base_properties::update_boundingbox): New method
+	to handle object resize.
+	(figure::properties::set_boundingbox): New method to set figure
+	position from backend.
+	(figure::properties::update_position): Remove method.
+	(figure::properties::position): Remove 'u' modifier and add 'S'
+	modifier.
+	(axes::properties::update_boundingbox): Overload to recompute
+	transformation when axes size changed.
+	* graphics.cc (base_properties::update_boundingbox): New method.
+	(figure::properties::set_boundingbox,
+	figure::properties::set_position): Likewise.
+
+	* genprops.awk: Add 'U' modifier to support extern updaters.
+	* graphics.h.in (base_graphics_backend::gripe_invalid): New method
+	to simplify error reporting.
+	(class base_graphics_backend): Use it.
+	(base_graphics_backend::set_figure_position): New backend method.
+	(graphics_backend::set_figure_position): Likewise.
+	(figure::properties::position): Mark property with updater.
+	(figure::properties::update_position): New updater.
+
+	* graphics.h.in (root_figure::properties::callbackobject):
+	New root property.
+	(root_figure::properties::cbo_stack): New field.
+	* graphics.cc (xset_gcbo, xreset_gcbo): New utility functions.
+	(execute_callback): Set callbackobject property in root object
+	before executing a callback.
+	(root_figure::properties::set_callbackobject): Implement accessor.
+
+	* graphics.h.in (root_figure::properties::callbackobject):
+	New root property.
+	(root_figure::properties::cbo_stack): New field.
+	* graphics.cc (xset_gcbo, xreset_gcbo): New utility functions.
+	(execute_callback): Set callbackobject property in root object
+	before executing a callback.
+	(root_figure::properties::set_callbackobject): Implement accessor.
+
+	* graphics.h.in (class root_figure::properties,
+	class line::properties, class text::properties,
+	class image::properties, class patch::properties,
+	class surface::properties): Export classes with
+	OCTINTERP_API.
+
+	* graphics.cc (axes::properties::set_defaults): Use correct
+	default values for gridlinestyle and minorgridlinestyle.
+
+2008-06-03  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-save.cc (Fload): Fix "-7" option.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* pt.cc (tree:last_break_function): Next pointer to last function
+	with a breakpoint.
+	* pt.h (tree:last_break_function): ditto.
+	* debug.cc (Fdbstep): Use tree::break_function value of zero to
+	signal to step into the next function. Set tree::last_break_function
+	to indicate position of last breakpoint.
+	(Fdbnext):  Set tree::last_break_function to indicate position of
+	last breakpoint.
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Check tree::break_function value
+	of zero as well. Only check tree::last_line if we are in teh same
+	function as the last breakpoint.
+	* input.cc (char Vfilemarker): New global variable.
+	(Ffilemarker): New function to query and set Vfilemarker.
+	* input.h (extern char Vfilemarker): Make Vfilemarker available.
+	* util.cc (fcn_file_in_path): If the input argument contains
+	Vfilemarker, strip the trailing part of string from this point
+	when looking for function file.
+	* toplev.cc (octave_call_stack::fo_backtrace): Mark subfunctions
+	with the name of the parent function and Vfilemarker.
+	* symtab.cc (symbol_table::find_function (const std::string&,
+	tree_argument_list *, const string_vector&, octave_value_list*,
+	bool&): If function name contains Vfilemarker, check in scope of
+	specified parent function.
+
+	* DLD-FUNCTIONS/betainc.cc: Move test code here. Add test code for
+	single precision type.
+	* DLD-FUNCTIONS/gammainc.cc: Ditto.
+	* DLD-FUNCTIONS/gcd.cc (Fgcd): Support single precision. Move test
+	code here. Add test code for single precision type.
+	* data.cc: Move test code here and add tests for single precision
+	type. Add tests for Fislogical.
+	(NATIVE_REDUCTION): Support the 'double' argument.
+	* mapper.cc: Move test code here and add tests for single precision
+	type.
+	* ov-float.cc (CD_SCALAR_MAPPER): Replace Complex with
+	FloatComplex.
+	(erf, erfc, abs, acos, asin, asinh, atan, atanh, ceil, cos, cosh,
+	exp, expm1, floor, log10, log1p, sin, sinh, sqrt, tan, tanh): Use
+	float version of base functions (ie. ::sinf and not ::sin)
+	(lgamma, acosh, log, log2, log10, log1p): Use single precision
+	infinity value.
+	* ov-flt-complex.cc (erf, erfc, expm1, log1p): Use the float
+	version of base functions.
+	* ov-flt-cx-mat.cc (DARRY_MAPPER): Replace NDArray with FloatNDArray.
+	(erf, erdc, gamma): Use FloatNDArray::dmapper and not
+	NDArray::dmapper.
+	* ov-flt-cx-mat.h (is_double_type): Delete.
+	(is_single_type): New method.
+	* ov-flt-re-mat.cc (lgamma,  acosh, log, log2, log10, log1p,
+	sqrt): Use single precision infinity value.
+
+	* chol.cc (Fcholinv, Fchol2inv, Fcholupdate, Fcholinsert,
+	Fcholdelete, Fcholshift): Allow single precision arguments.
+	(Fchol): Move test code here. Add test code for single precision.
+	(Fcholupdate, Fcholinsert, Fcholdelete, Fcholshift): Add test code
+	for single precision.
+	* conv2.cc (Fconv2): Add single precision test code.
+	* det.cc (Fdet): For single values or empty matrices, return
+	single precision arg for single precion input. Move test code
+	here. Add single precision test code.
+	* fft.cc (do_fft): For empty single precision arguments return a
+	single precision value. Add single precision test code. Remove
+	fft2 test code.
+	* fft2.cc (do_fft2): For empty single precision arguments return a
+	single precision value. Add single precision test code. Move fft2
+	test code here.
+	* fftn.cc (do_fftn): For empty single precision arguments return a
+	single precision value.
+	* eig.cc (Feig):  Move test code here. Add single precision test
+	code.
+	* expm.cc (Fexpm): Ditto.
+	* find.cc (Ffind): Ditto.
+	* hess.cc (Fhess): Ditto.
+	* inv.cc (Finc): Ditto.
+	* lu.cc (Flu): Ditto.
+	* qr.cc (Fqr): Ditto.
+	* schur.cc (Fschur): Ditto.
+	* svd.cc (Fsvd): Ditto.
+	* syl.cc (Fsyl): Ditto.
+
+	* op-fcm-fcm.cc, op-fcm-fcs.cc, op-fcm-fm.cc, op-fcm-fs.cc,
+	op-fcs-fcm.cc, op-fcs-fcs.cc, op-fcs-fm.cc, op-fcs-fs.cc,
+	op-fm-fcm.cc, op-fm-fcs.cc, op-fm-fm.cc, op-fm-fs.cc,
+	op-fs-fcm.cc, op-fs-fcs.cc, op-fs-fm.cc, op-fs-fs.cc: Add mixed
+	double, single precision concatenation operators.
+
+	* data.cc (Fall, Fany, Fdiag, Fcat, Fismatrix, Fones, Fzeros,
+	Finf, FNaN, FNA, Feye, Flinspace, Freshape, Ftranspose,
+	Fctranspose, Fsort). Move tests here. Add single precision tests.
+	* mappers.cc (Ffinite, Fisinf, Fisna, Fisnan): Ditto.
+	* ov-float.cc (octave_float_scalar:resize): single precision
+	return value.
+	* ov.cc (octave_value::octave_value (const
+	FloatComplexDiagMatrix&)): Ditto.
+	* data.cc (Fnorm): Add single precision.
+	(do_cat): Disable fast return and skipping empty matrices, as they
+	play a part in determining the return type.
+	* ov.cc (octave_value do_cat_op (const octave_value&, const
+	octave_value&, const Array<octave_idx_type>&)): ditto.
+
+2008-06-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-cell.cc (Fcellstr): For compatibility with Matlab, return {''}
+	when given ''.
+
+2008-05-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function,
+	fsolve_user_jacobian): Reshape argument to original dims before
+	passing.
+	(Ffsolve): Save original dimensions of the starting guess and reshape
+	on return. Fix tests.
+
+2008-05-21  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/quad.cc (quad_float_user_function): New function.
+	(Fquad): Handle float type.
+	New tests.
+
+2008-05-21  Jaroslav Hajek  <highegg@gmail.com>
+
+	* OPERATORS/op-fcm-fcm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
+	New functions.
+	(install_fcm_fcm_ops): Install them.
+	* OPERATORS/op-fm-fm.cc (trans_mul, mul_trans): New functions.
+	(install_fm_fm_ops): Install them.
+
+	* OPERATORS/op-sm-m.cc (trans_mul): New function.
+	(install_sm_m_ops): Register it.
+	* OPERATORS/op-m-sm.cc (mul_trans): New function.
+	(install_m_sm_ops): Register it.
+	* OPERATORS/op-scm-cm.cc (trans_mul, herm_mul): New function.
+	(install_scm_cm_ops): Register it.
+	* OPERATORS/op-cm-scm.cc (mul_trans, mul_herm): New function.
+	(install_cm_scm_ops): Register it.
+
+	* dMatrix.cc: Declare DSYRK.
+	(xgemm): Call DSYRK if symmetric case detected.
+	* CMatrix.cc: Declare ZSYRK, ZHERK.
+	(xgemm): Call ZSYRK/ZHERK if symmetric/hermitian case detected.
+
+	* ov.h (octave_value::compound_binary_op): New enum.
+	(do_binary_op (octave_value::compound_binary_op, ...),
+	octave_value::binary_op_fcn_name (compound_binary_op),
+	octave_value::do_binary_op (compound_binary_op, ...)):
+	New declarations.
+	(OV_COMP_BINOP_FN): New macro (+ several expansions).
+	* ov.cc (octave_value::binary_op_fcn_name (compound_binary_op),
+	decompose_binary_op, do_binary_op (compound_binary_op, ...)):
+	New functions.
+	* ov-typeinfo.h (octave_value_typeinfo::register_binary_class_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::register_binary_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_register_binary_class_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_register_binary_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_lookup_binary_class_op
+	(octave_value::compound_binary_op),
+	octave_value_typeinfo::do_lookup_binary_op
+	(octave_value::compound_binary_op, ...)):
+	New declarations.
+	(octave_value_typeinfo::lookup_binary_class_op
+	(octave_value::compound_binary_op),
+	(octave_value_typeinfo::lookup_binary_op
+	(octave_value::compound_binary_op, ...)):
+	New functions.
+	(octave_value_typeinfo::compound_binary_class_ops,
+	octave_value_typeinfo::compound_binary_ops):
+	New fields.
+	* ov-typeinfo.cc (octave_value_typeinfo::register_binary_class_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::register_binary_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_register_binary_class_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_register_binary_op
+	(octave_value::compound_binary_op, ...),
+	octave_value_typeinfo::do_lookup_binary_class_op
+	(octave_value::compound_binary_op),
+	octave_value_typeinfo::do_lookup_binary_op
+	(octave_value::compound_binary_op, ...)):
+	New functions.
+	(octave_value::do_register_type): Resize also compound_binary_ops
+	field.
+	* pt-exp.h (tree_expression::is_unary_expression): New virtual
+	function.
+	* pt-unop.h (tree_unary_expression::is_unary_expression): New virtual
+	override.
+	* pt-cbinop.h, pt-cbinop.cc: New files (implement
+	tree_compound_binary_expression class).
+	* pt-all.h: Include pt-cbinop.h.
+	* Makefile.in (PT_INCLUDES, PT_SRC): Include them in the lists.
+	* parse.y (make_binary_op): Call maybe_compound_binary_expression.
+	* OPERATORS/op-m-m.cc (trans_mul, mul_trans): New operator handlers.
+	(install_m_m_ops): Register them.
+	* OPERATORS/op-cm-cm.cc (trans_mul, mul_trans, herm_mul, mul_herm):
+	New operator handlers.
+	(install_cm_cm_ops): Register them.
+
+	* DLD-FUNCTIONS/matrix_type.cc: Fix tests relying on the
+	older more optimistic hermitian check.
+
+2008-05-21  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rcond.cc (Frcond): Add support for single precision.
+
+	* DLD-FUNCTIONS/sqrt.m: Replace DBL_* with FLT_* for single
+	precision types.
+	* data.cc (static octave_value fill_matrix (const
+	octave_value_list&, double, float, const char *)): Add function
+	with additional argument to allow for different valid for double
+	and single precision.
+	(Finf, FNaN, FNA, Frealmax, Frealmin): Use it here.
+	(Feps): Modify behavior for a single numerical argument to give
+	difference to next largest value in the class of the type passed.
+
+2008-05-21  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.h (tree_index_expression::tree_index_expression (int, int)):
+	Delete default argument values.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Flog2): Handle single precision.
+	* ov-float.h, ov.float.cc, ov-flt-complex.h, ov-flt-complex.cc,
+	ov-flt-re-mat.h, ov-flt-re-mat.cc, ov-flt-cx-mat.h,
+	ov-flt-cx-mat.cc: Provide single precision version of log2 mapper
+	function.
+
+	* DLD-FUNCTIONS/__convn__.cc, DLD-FUNCTIONS/__pchip_deriv__.cc,
+	DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
+	DLD-FUNCTIONS/conv2.cc, DLD-FUNCTIONS/gammainc.cc,
+	DLD-FUNCTIONS/givens.cc, DLD-FUNCTIONS/kron.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/syl.cc, data.cc:
+	Prefer demotion to single precision rather than promotion to double.
+
+	* ov-float.cc, ov-float.h, ov-flt-complex.cc, ov-flt-complex.h,
+	ov-flt-cx-mat.cc, ov-flt-cx-mat.h, ov-flt-re-mat.cc,
+	ov-flt-re-mat.h (numeric_conversion_function (void) const):
+	Remove method.
+
+	* ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h
+	(numeric_conversion_function (void) const): Add method for
+	conversion to single precision.
+
+	* DLD-FUNCTIONS/conv2.cc (Fconv2): Don't access third arg if we
+	don't have one.
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/expm.cc,
+	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/hess.cc,
+	DLD-FUNCTIONS/qr.cc: COnvert for use with single precision.
+
+	* OPERATORS/op-int.h, OPERATORS/op-int-conv.cc,
+	OPERATORS/op-int-concat.cc: Adapt for single precision.
+
+	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
+	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
+	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
+	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
+	Add includes for single precision types.
+
+	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
+	OPERATORS/op-fcm-fs.cc, OPERATORS/op-fcs-fs.cc,
+	OPERATORS/op-fm-fs.cc, OPERATORS/op-fs-fcm.cc,
+	OPERATORS/op-fs-fcs.cc, OPERATORS/op-fs-fm.cc,
+	OPERATORS/op-fs-fs.cc, OPERATORS/op-int.h, ov.cc, ov-scalar.cc,
+	ov-float.h, ov-flt-complex.cc, ov-float.cc, ov-flt-re-mat.cc,
+	ov-flt-cx-mat.cc: Replace octave_float with octave_scalar_float
+
+	* OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
+	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
+	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc,
+	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
+	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fcm-fs.cc,
+	OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
+	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
+	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
+	OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
+	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
+	OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
+	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc:
+	Add mixed single/double assign operators.
+
+	* ov.h (numeric_demotion_function): New method for double to
+	single demotion.
+	* ov-base.h (numeric_demotion_function): Declare virtual version.
+
+	* ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h
+	(numeric_cdemote_function (void) const): Add method for
+	conversion to single precision renamed from the method
+	numeric_conversion_function
+
+	* ov.cc (do_binary_op): Use demotion function seperately than the
+	numeric conversion function so as to avoid isses like
+	a=zeros(2,2);a(1,:)=1:2.
+
+	* OPERATORS/op-fcm-fcm.cc, OPERATORS/op-fcm-fcs.cc,
+	OPERATORS/op-fcm-fm.cc, OPERATORS/op-fcm-fs.cc,
+	OPERATORS/op-fcs-fcm.cc, OPERATORS/op-fcs-fcs.cc,
+	OPERATORS/op-fcs-fm.cc, OPERATORS/op-fcs-fs.cc,
+	OPERATORS/op-fm-fcm.cc, OPERATORS/op-fm-fcs.cc,
+	OPERATORS/op-fm-fm.cc, OPERATORS/op-fm-fs.cc,
+	OPERATORS/op-fs-fcm.cc, OPERATORS/op-fs-fcs.cc,
+	OPERATORS/op-fs-fm.cc, OPERATORS/op-fs-fs.cc, ov-float.cc,
+	ov-float.h, ov-flt-complex.cc, ov-flt-complex.h, ov-flt-cx-mat.cc,
+	ov-flt-cx-mat.h, ov-flt-re-mat.cc, ov-flt-re-mat.h: New files.
+	* Makefile.in (OV_INCLUDES, OV_SRC, OP_XSRC. FLOAT_OP_XSRC,
+	DOUBLE_OP_XSRC): Add them here.
+
+	* DLD-FUNCTIONS/__convn__.cc, DLD-FUNCTIONS/__lin_interpn__.cc,
+	DLD-FUNCTIONS/__pchip_deriv__.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/betainc.cc, DLD-FUNCTIONS/bsxfun.cc,
+	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/conv2.cc,
+	DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/fft.cc,
+	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
+	DLD-FUNCTIONS/fftw.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/givens.cc,
+	DLD-FUNCTIONS/inv.cc, DLD-FUNCTIONS/kron.cc,
+	DLD-FUNCTIONS/lookup.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/max.cc,
+	DLD-FUNCTIONS/pinv.cc, DLD-FUNCTIONS/schur.cc,
+	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
+	DLD-FUNCTIONS/syl.cc, DLD-FUNCTIONS/symbfact.cc,
+	DLD-FUNCTIONS/typecast.cc, OPERATORS/op-b-b.cc,
+	OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-range.cc, OPERATORS/op-s-s.cc, bitfcns.cc, data.cc,
+	oct-stream.cc, ov-base.cc, ov-base.h, ov-bool-mat.cc,
+	ov-bool-mat.h, ov-bool.h, ov-ch-mat.cc, ov-ch-mat.h,
+	ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-intx.h,
+	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.h,
+	ov.cc, ov.h, pr-output.cc, pr-output.h, pt-mat.cc, utils.cc,
+	utils.h, xdiv.cc, xdiv.h, xpow.cc, xpow.h:
+	Allow single precision types.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rcond.cc: New function.
+	* Makefile.in (DLD_XSRC): Add it here.
+
+	* debug.cc (Fdbstop): If no line specified assume line 1.
+	(Fdbstep, Fdbcont, Fdbnext): Move debugging functions
+	to normal commands.
+	(Fdbquit): New command to quit debugging mode and return to the
+	prompt.
+	(Fdbstep): Modify the dbstep command for compatibility.
+	* input.cc (Vdebugging_current_line): Store current line being
+	debugged for use in DEFCMD versions of debug commands.
+	(match_sans_spaces_semi): Delete.
+	(static void get_debug_input (const std;string&)): New function to
+	parse input in debug mode using standard Octave parser.
+	(static octave_value_list get_user_input (const
+	octave_value_list&, int)): Remove debugging specialization.
+	* input.h (Vdebugging_current_line): Store current line being
+	debugged for use in DEFCMD versions of debug commands.
+	* parse.y (make_return_command): Special handling in debug mode.
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Support break in n lines needed
+	to support "dbstep N".
+	* pt.cc (tree::break_next): Convert to a down counter to support
+	break in N lines. Breakpoint occure when tree::break_next is zero.
+	* toplev.cc (octave_user_script *
+	octave_call_stack::do_caller_user_script (difference_type) const):
+	Support skipping the first N functions to support "dbstep out".
+	(octave_user_function * octave_call_stack::do_caller_user_function
+	(difference_type) const): Ditto.
+	(octave_user_code * octave_call_stack::do_caller_user_code
+	(difference_type) const): Ditto.
+	* toplev.h (octave_user_script *
+	octave_call_stack::do_caller_user_script (difference_type) const):
+	Add difference_type argument.
+	(octave_user_function * octave_call_stack::do_caller_user_function
+	(difference_type) const): Ditto.
+	(octave_user_code * octave_call_stack::do_caller_user_code
+	(difference_type) const): Ditto.
+	(static octave_user_script *caller_script (difference_type)):
+	Ditto.
+	(static octave_user_function *caller_user_function
+	(difference_type q)): Ditto.
+	(static octave_user_code *caller_user_code (difference_type q)):
+	Ditto.
+
+2008-05-20  Kim Hansen  <kimhanse@gmail.com>
+
+	* load-path.cc (load_path::do_initialize):
+	Include separator when appending sys_path.
+
+2008-05-20  Bill Denney  <bill@denney.ws>
+
+	* file-io.cc (Ffgets, Fgets, Ffputs, Ffscanf): Doc fix (seealso).
+
+2008-05-20  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* DLD-FUNCTIONS/rand.cc (Frandn): Doc fix.
+
+2008-05-20  David Bateman  <dbateman@free.fr>
+
+	* load-save.cc (do_load): Treat non verbose list_only output in
+	the same manner as Fwho.
+	* symtab.h (static void clear_variable_regexp (const
+	std::string&): New method.
+	(static std::list<symbol_record> regexp (const std::string&)): Ditto.
+	(static std::list<symbol_record> regexp_variables (const
+	std::string&)): Ditto.
+	(static std::list<symbol_record> regexp_global_variables (const
+	std::string&)): Ditto,
+	(static std::list<symbol_record> regexp_variables (const
+	string_vector&)): Ditto.
+	(void do_clear_variable_regexp (const std::string&)): Ditto.
+	(std::list<symbol_record> do_regexp (const std::string&, bool)
+	const): Ditto.
+	(do_who): Accept the "-regexp" option. Use regexp versions of
+	symbol table functions.
+	(static inline bool name_match_any_pattern (const string_vector&,
+	int, int, bool): Add regexp argument, and use regexp matching if
+	true.
+	(do_clear_variables): Add regexp option and pass to
+	name_match_any_pattern.
+	(Fclear): Accept the -regexp option.
+
+2008-05-07  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc, pt-arg-list.h (tree_argument_list::dup):
+	New arg, context.
+	* pt-assign.cc, pt-assign.h (tree_simple_assignment::dup,
+	tree_multi_assignment::dup): Likewise.
+	* pt-binop.cc, pt-binop.h (tree_binary_expression::dup,
+	tree_boolean_expression::dup): Likewise.
+	* pt-cell.cc, pt-cell.h (tree_cell::dup): Likewise.
+	* pt-cmd.cc, pt-cmd.h (tree_no_op_command::dup,
+	tree_function_def::dup): Likewise.
+	* pt-colon.cc, pt-colon.h (tree_colon_expression::dup): Likewise.
+	* pt-const.cc, pt-const.h (tree_constant::dup): Likewise.
+	* pt-decl.cc, pt-decl.h (tree_decl_elt::dup, tree_decl_init_list::dup,
+	tree_global_command::dup, tree_static_command::dup): Likewise.
+	* pt-except.cc, pt-except.h (tree_try_catch_command::dup,
+	tree_unwind_protect_command::dup): Likewise.
+	* pt-exp.h (tree_expression:dup): Likewise.
+	* pt-fcn-handle.cc, pt-exp.h (tree_expression:dup): Likewise.
+	* pt-fcn-handle.h (tree_fcn_handle::dup,
+	tree_anon_fcn_handle::dup): Likewise.
+	* pt-id.cc, pt-id.h (tree_identifier::dup): Likewise.
+	* pt-idx.cc, pt-idx.h (tree_index_expression::dup): Likewise.
+	* pt-jump.cc, pt-jump.h (tree_break_command::dup,
+	tree_continue_command::dup, tree_return_command::dup): Likewise.
+	* pt-loop.cc, pt-loop.h (tree_while_command::dup,
+	tree_do_until_command::dup, tree_simple_for_command::dup,
+	tree_complex_for_command::dup): Likewise.
+	* pt-mat.cc, pt-mat.h (tree_matrix::dup): Likewise.
+	* pt-misc.cc, pt-misc.h (tree_parameter_list::dup,
+	tree_return_list::dup): Likewise.
+	* pt-select.cc, pt-select.h (tree_if_clause::dup,
+	tree_if_command_list::dup, tree_if_command::dup,
+	tree_switch_case::dup, tree_switch_case_list::dup,
+	tree_switch_command::dup, tree_statement::dup,
+	tree_statement_list::dup, tree_prefix_expression::dup,
+	tree_postfix_expression::dup): Likewise.
+
+	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
+	octave_fcn_handle::save_binary, octave_fcn_handle::save_hdf5):
+ 	Pass context to symbol_table::all_variables.
+	* load-save.cc (dump_octave_core): Likewise.
+	* ov-fcn-handle.cc (Ffunctions): Don't skip anonymous functions
+	with the name set to the text of the function body.
+ 	Pass context to symbol_table::all_variables and
+	symbol_table::symbol_record::varval.
+
+	* symtab.h (symbol_table::varref, symbol_table::do_varref,
+	symbol_table::varval, symbol_table::do_varval,
+	symbol_table::all_variables, symbol_table::do_all_variables,
+	symbol_table::symbol_record::varref,
+	symbol_table::symbol_record::varval,
+	symbol_table::symbol_record::is_defined,
+	symbol_table::symbol_record::is_variable,
+	symbol_table::symbol_record::symbol_record_rep::varref,
+	symbol_table::symbol_record::symbol_record_rep::varval,
+	symbol_table::symbol_record::symbol_record_rep::is_defined,
+	symbol_table::symbol_record::symbol_record_rep::is_variable,
+	):
+	* symtab.h (symbol_table::do_inherit): New arg, donor_context.
+	Look for value in donor_contxt.  Set value in base context.
+	* symtab.cc (symbol_table::symbol_record::symbol_record_rep::dump):
+	Pass xcurrent_context to varval.
+
+2008-05-06  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline.cc (Finline): Also ignore NaN, Inf, pi, NA and eps.
+
+	* bitfcns.cc (BITOP): Treat octave_bool types and octave_scalar.
+
+2008-05-06  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table::scope_id_cache): New class.  Use it to
+	replace scope_ids_in_use and scope_ids_free_list.
+	(symbol_table::erase_scope): Call free_scope.
+	(symbol_table::free_scope): Call scope_id_cache::free.
+
+	* ov-fcn.h (octave_function::lock_subfunctions,
+	octave_function::unlock_subfunctions): New virtual functions.
+	(octave_function::lock_subfunctions): Call lock_subfunctions here.
+	(octave_function::unlock_subfunctions): Call unlock_subfunctions here.
+	* ov-usr-fcn.h (octave_user_function::lock_subfunctions,
+	octave_user_function::unlock_subfunctions): New functions.
+
+	* symtab.h (symbol_table::lock_subfunctions,
+	symbol_table::lock_subfunctions,
+	symbol_table::fcn_info::lock_subfunction,
+	symbol_table::fcn_info::unlock_subfunction,
+	symbol_table::fcn_info::fcn_info_rep::lock_subfunction,
+	symbol_table::fcn_info::fcn_info_rep::unlock_subfunction):
+	New functions.
+
+	* symtab.h (symbol_table::set_scope, symbol_table::get_instance):
+	Don't set instance unless allocation succeeds.
+	(symbol_table::print_scope, symbol_table::do_print_scope): Delete.
+	(symbol_table::free_scope): Avoid using invalid iterator.
+	(symbol_table::erase_scope): Call free_scope here.
+
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
+	octave_fcn_handle::load_binary, octave_fcn_handle::load_hdf5):
+	Cache anonymous name here.
+	(octave_fcn_handle::octave_fcn_handle): Move here from
+	ov-fcn-handle.h.  Cache name if function is user-defined.
+
+	* pt-id.cc (tree_identifier::dup): Avoid shadow warning.
+
+	* symtab.h (symbol_table::cache_name, symbol_table::do_cache_name):
+	New functions.
+	(symbol_table::get_instance): Cache top-level name here.
+	* parse.y (finish_function): Call symbol_table::cache_name here.
+
+	* symtab.cc (F__dump_symtab_info__): New function.
+
+	* symtab.cc (symbol_table::dump, symbol_table::dump_global,
+	symbol_table::dump_functions, symbol_table::do_dump,
+	symbol_table::symbol_record::symbol_record_rep::dump,
+	symobl_table::fcn_info::fcn_info_rep::dump): New functions.
+	* symtab.h: Provide decls.
+	(symtab::scopes, symbol_table::symbol_record::dump,
+	symbol_table::fcn_info::dump): New functions.
+	(symtab::get_instance): New arg, create; if false throw error if
+	instance for given scope is not found.
+
+	* ov-base.cc (octave_base_value::dump): New virtual function.
+	* ov-base.h: Proivde decl.
+	* ov.h (octave_value::dump): New function.
+
+	* ov.h, ov.c (octave_value::function_value): New const version.
+	* ov-base.h, ov-base.cc (octave_base_value::function_value): Likewise.
+	* ov-builtin.h (octave_builtin::function_value): Likewise.
+	* ov-fcn-handle.h (octave_fcn_handle::function_value): Likewise.
+	* ov-mex-fcn.h (octave_mex_function::function_value): Likewise.
+	* ov-usr-fcn.h (octave_user_script::function_value,
+	octave_user_function): Likewise.
+
+	* symtab.h, symtab.cc: Use consistent naming scheme for iterator
+	typedefs.  Change all uses.
+
+	* variables.cc (F__print_symtab_info__, F__print_symbol_info__):
+	Delete.
+
+	* ov-cell.cc (Fstruct2cell): Handle structure arrays properly.
+
+2008-05-05  David Bateman  <dbateman@free.fr>
+
+	* sysdep.cc (Fputenv): Allow single arg. Alias to setenv.
+
+2008-05-05  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (Fre_read_readline_init_file): New function.
+
+2008-05-04  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (Ffunctions): Pass octave_value object instead
+	of Cell in structure field assignment.
+
+	* parse.y (frob_function): Don't install subfunctions here.
+	(finish_function): Handle subfunctions here.
+	Conditionally define tree_function_def object here.
+
+	* symtab.h (symbol_table::fcn_info::fcn_info_rep::find_function):
+	Initialize args_evaluated.
+	* pt-id.cc (tree_identifier::rvalue): Likewise.
+	* variables.cc (symbol_exist): Likewise.
+
+	* pt-id.h (tree_identifier::tree_identifer): Delete useless statement.
+
+	* variables.cc (get_global_value): Use symbol_table::global_varval
+	instead of passing scope to symbol_table::varval.
+	(set_global_value): Use symbol_table::global_varref
+	instead of passing scope to symbol_table::varref.
+	(do_who): Use symbol_table::glob_global_variables
+	instead of passing scope to symbol_table::glob_variables.
+	(do_clear_globals):
+	Use symbol_table::global_variable_names and
+	symbol_table::clear_global instead of passing scope to
+	symbol_table::clear_variables.
+	Use symbol_table::global_variable_names instead of passing scope
+	to symbol_table::variable_names.
+
+	* unwind-prot.cc (unwind_protect::save_size_t): New function.
+	(saved_variable::restore_value): Handle size_t values.
+	(saved_variable::saved_variable): New size_t constructor.
+	(saved_variable::size_type): New var_type enum value.
+	(saved_variable::ptr_to_size_t, saved_variable::size_t_value):
+	New union elements.
+	* unwind-prot.h (unwind_protect::save_size_t): Provide decl
+	(unwind_protect_size_t): New macro.
+
+	* toplev.cc (octave_call_stack::do_goto_frame,
+	octave_call_stack::do_goto_frame_relative): New functions.
+	(octave_call_stack::do_backtrace): Also return scope and context ids.
+	* toplev.h 	(octave_call_stack::do_goto_frame,
+	octave_call_stack::do_goto_frame_relative): Provide decls.
+	(octave_call_stack::curr_frame): New data member.
+	(octave_call_stack::octave_call_stack): Initialize it.
+	(octave_call_stack::call_stack_elt::scope,
+	(octave_call_stack::call_stack_elt::context): New data members.,
+	(octave_call_stack::current_frame,
+	(octave_call_stack::do_current_frame
+	octave_call_stack::do_goto_frame,
+	octave_call_stack::do_goto_frame_relative): New functions.
+	(octave_call_stack::push, octave_call_stack::do_push):
+	New args, scope and context.
+	(octave_call_stack::do_push, octave_call_stack::do_pop): Update
+	curr_frame if debugging.
+
+	* symtab.cc (symbol_table::global_table): New map for global values.
+	(symbol_table::xcurrent_context): New variable for context info.
+	* symtab.h: Provide decls.
+	(symbol_table::global_varref, symbol_table::global_varval,
+	symbol_table::current_context,
+	symbol_table::set_scope_and_context,
+	symbol_table::glob_global_variables,
+	symbol_table::global_variable_names,
+	symbol_table::top_leve_variable_names):
+	New functions.
+	(symbol_table::context_id, const_global_table_iterator,
+	global_table_iterator): New typedefs.
+	(symbol_table::xcurrent_context_this_table): New variable.
+	(symbol_table::symbol_table): Initialize it.
+	(symbol_table::set_scope): Use it.
+	(symbol_table::symbol_record::find, symbol_table::do_find):
+	Use symbol_table::global_varref instead of passing scope to
+	symbol_table::varref.
+	(symbol_table::symbol_record::symbol_record_rep::value_stack):
+	Now a std::deque instead of a std::stack.
+	(symbol_table::symbol_record::symbol_record_rep::push_context,
+	symbol_table::symbol_record::symbol_record_rep::pop_context):
+	Don't push or pop persistent of global variables.
+	(symbol_table::symbol_record::symbol_record_rep::varval,
+	Handle context here.  Call symbol_table::global_varval instead of
+	passing scope to symbol_table::varval.
+	(symbol_table::symbol_record::symbol_record_rep::varref):
+	Handle context here.  Call symbol_table::global_varref instead of
+	passing scope to symbol_table::varref.
+	(symbol_table::symbol_record::varref,
+	symbol_table::symbol_record::varval): No need to handle global
+	values specially here.
+	(symbol_table::symbol_record::push_context
+	symbol_table::symbol_record::pop_context: No need to handle global
+	or persistent values specially here.
+	(symbol_table::get_instance): Don't return global scope.
+	(symbol_table::do_push_context, symbol_table::do_pop_context):
+	Increment/decrement xcurrent_context.
+	(symbol_table::do_clear_global, symbol_table::do_clear_global_pattern):
+	Use global_table instead of separate scope.
+
+	* symtab.h, symtab.cc (symbol_table::fcn_info::fcn_info_rep::find,
+	symbol_table::fcn_info::fcn_info_rep::find_function,
+	symbol_table::fcn_info::find, symbol_table::fcn_info::find_function,
+	symbol_table::find, symbol_table::find_function,
+	symbol_table::do_find, symbol_table::insert, symbol_table::varref,
+	symbol_table::varval, symbol_table::persistent_varref,
+	symbol_table::persistent_varval, symbol_table::erase_persistent,
+	symbol_table::is_variable, symbol_table::clear,
+	symbol_table::clear_variables, symbol_table::clear_global,
+	symbol_table::clear_variable, symbol_table::clear_global_pattern,
+	symbol_table::clear_variable_pattern, symbol_table::push_context,
+	symbol_table::pop_context, symbol_table::mark_hidden,
+	symbol_table::mark_global, symbol_table::glob,
+	symbol_table::glob_variables, symbol_table::variable_names,
+	symbol_table::is_local_variable, symbol_table::is_global):
+	Eliminate scope arg.  Change all uses.
+	(symbol_table::erase_scope, symbol_table::dup_scope):
+	Require scope arg.
+
+	* pt-stmt.cc (tree_statement::eval): Don't update statement info
+	in octave_call_stack if debugging.
+
+	* pt-id.h (tree_identifier::xsym): New function.
+	(tree_identifier::rvalue, tree_identifier::lvalue,
+	tree_identifier::dup, tree_identifier::is_defined,
+	tree_identifier::is_variable, tree_identifier::mark_global,
+	tree_identifier::mark_as_static, tree_identifier::do_lookup,
+	tree_identifier::mark_as_formal_parameter):
+	Use xsym to access symbol.
+	(tree_identifier::scope): New data member.
+	(tree_identifier::tree_identifier): Initialize it.
+
+	* ov-usr-fcn.cc (octave_user_script::octave_user_script,
+	octave_user_function::octave_user_function):
+	Initialize call_depth to -1.
+	(octave_user_script::do_multi_index_op): Fix comparison of
+	call_depth with Vmax_recursion_depth.
+	(octave_user_function::do_multi_index_op):
+	Compare call depth > 0, instead of > 1.
+	* ov-usr-fcn.h (octave_user_function::save_args_passed):
+	Compare call depth > 0, instead of > 1.
+
+	* input.cc (Vdebugging): New variable.
+	(get_user_input): Eliminate DEBUG argument.  Use global Vdebugging
+	variable instead.  Change all callers.
+	(saved_frame): New static variable.
+	(restore_frame): New function.
+	(do_keyboard): Unwind-protect Vdebugging here and set it to TRUE.
+	Save current frame.  Use unwind_protect to restore it.
+	(Fkeyboard): Save current frame.  Use unwind_protect to restore it.
+	Move up the call stack one frame before calling do_keyboard.
+	* input.h (Vdebugging): Provide decl.
+
+	* mex.cc (mexGetVariable): Handle global vars with get_global_value.
+	(mexPutVariable): Likewise, with set_global_value.
+
+	* octave.cc (intern_argv): Assert that we are at the top level.
+	Don't pass scope to symbol_table::varref or symbol_table::mark_hidden.
+
+	* load-save.cc (install_loaded_variable): Use
+	symbol_table::global_varref instead of passing global scope to
+	symbol_table::varref.
+
+	* help.cc (make_name_list): Call symbol_table::global_variable_names
+	and symbol_table::top_level_variable_names instead of passing
+	scope to symbol_table::variable_names.
+
+	* debug.cc (do_dbupdown, Fdbup, Fdbdown): New functions.
+	(current_stack_frame): Delete static variable.
+	(Fdbstack): Rename from F__dbstack__.  Implement all of dbstack
+	here instead of partially in dbstack.m.
+
+2008-05-03  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc (F__end__): If there are more dimensions than
+	indices, smash extra dimensions first.
+	(num_indices): New static variable.
+	(tree_argument_list::convert_to_const_vector): Save and set it.
+
+	* parse.y (parse_fcn_file): Also temporarily set parser_end_of_input
+	and get_input_from_eval_string to false while reading script files.
+
+2008-05-01  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (load_fcn_from_file): Expect
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
+	Search currently loaded .oct files by file name.  Don't search
+	currently loaded files for functions.
+	(octave_shlib_list::find_file, octave_shlib_list::do_find_file):
+	New functions.
+	(octave_shlib_list::search, octave_shlib_list::do_search): Delete.
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct): No need to
+	do load_path lookups here.
+	(octave_shlib_list::iterator, octave_shlib_list::const_iterator):
+	New typedefs.
+	(octave_shlib_list::do_remove, octave_shlib_list::do_search,
+	octave_shlib_list::do_display): Use them.
+	(octave_mex_file_list::iterator, octave_mex_file_list::const_iterator):
+	New typedefs.
+	(octave_mex_file_list::do_remove): Use them.
+
+2008-05-03  Rafael Laboissiere  <rafael@debian.org>
+
+	* DLD-FUNCTIONS/time.cc, file_io.cc: Use ischar instead of
+	deprecated isstr.
+
+2008-04-30  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
+	If function already exists, reload it anyway.  Clear existing
+	oct_file only if reloading a function from the same file.
+	(octave_shlib_list::display): New static function.
+	(octave_shlib_list::do_display): New function.
+
+	* symtab.cc (out_of_date_check_internal): Better handling for
+	functions found in files by relative file names.
+	(load_out_of_date_fcn): New function.
+
+	* ls-oct-ascii.cc (extract_keyword): Return early if first char is
+	not a comment character.
+	(read_ascii_data): Accept .nargin. and .nargout. as valid identifiers.
+
+	* ov-fcn-handle.cc: Combine tests.  Test saving and loading
+	handles for built-in, .oct, and .m functions.
+	(octave_fcn_handle::save_ascii, octave_fcn_handle::save_binary,
+	octave_fcn_handle::save_hdf5, octave_fcn_handle::print):
+	Avoid dereferencing invalid pointer.
+
+	* data.cc: Fix tests.  Use "%!assert", not "%! assert" for
+	individual assert tests.
+
+2008-04-30  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
+	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-cx-sparse.cc, ov-cx-sparse.h, ov-intx.h, ov-range.h,
+	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
+	ov-scalar.cc, ov-scalar.h, ov.h:
+ 	Provide log2 mapper function.
+	* data.cc (Flog2): New function.
+
+2008-04-25  John W. Eaton  <jwe@octave.org>
+
+	* pt-stmt.h (tree_statement_list::function_body): New data member.
+	(tree_statement_list::tree_statement_list): Initialize it.
+	(tree_statement_list::mark_as_script_body): New function.
+	(tree_statement::maybe_echo_code, tree_statement::eval):
+	Rename in_function_body argument to in_function_or_script_body.
+	* pt-stmt.cc (tree_statement::eval): Only set statement in call
+	stack if in_function_or_script_body is true.
+
+	* pt-stmt.cc (tree_statement_list::eval): Call elt->eval with
+	function_body || script_body.
+	* ov-usr-fcn.cc (octave_user_script::octave_user_script):
+	command list as script body here.
+	(octave_user_function::octave_user_function):
+	Mark command list as function body here.
+	* parse.y (start_function, make_anon_fcn_handle): Not here.
+
+	* toplev.h, toplev.cc (octave_call_stack::backtrace,
+	octave_call_stack::do_backtrace): New arg, N.  Skip innermost N
+	stack frames.
+
+	* debug.cc (F__dbstack__): New function.
+	(current_stack_frame): New static variable.
+
+	* error.cc (verror, pr_where): Use octave_call_stack instead of
+	tree_statement stack to get line and column information.
+	(pr_where): Use octave_call_stack instead of tree_statement stack
+	to get current statement.
+	* input.cc (get_user_input): Extract current line number from
+	octave_call_stack instead of tree_statement_stack.
+	* pt-stmt.cc (tree_statement::eval): Put current statement on
+	octave_call_stack instead of tree_statement_stack.
+	* pt-stmt.h, pt-stmt.cc (class tree_statement_stack): Delete.
+
+	* toplev.h, toplev.cc (octave_call_stack::call_stack_elt):
+	New nested struct.
+	(octave_call_stack::cs): Now a deque of call_stack_elts.
+	Change all uses.
+	(octave_call_stack::current_statement,
+	octave_call_stack::current_line,
+	octave_call_stack::current_column,
+	octave_call_stack::top_statement,
+	octave_call_stack::set_statement, octave_call_stack::backtrace):
+	New static functions.
+	(octave_call_stack::do_current_line,
+	octave_call_stack::do_current_column,
+	octave_call_stack::do_top_statement,
+	octave_call_stack::do_set_statement,
+	octave_call_stack::do_backtrace): New member functions.
+
+2008-04-24  John W. Eaton  <jwe@octave.org>
+
+	* toplev.h, toplev.cc (octave_call_stack::unwind_pop_script):
+	Delete unused function.
+
+	* ov-usr-fcn.cc: Move constructor definitions here, from ov-usr-fcn.h.
+	* ov-usr-fcn.h (octave_user_script::octave_user_script):
+	Also Initialize t_parsed and t_checked.
+
+2008-04-24  Jaroslav Hajek  <highegg@gmail.com>
+
+	* ov-usr-fcn.h (octave_user_script::octave_user_script):
+	Initialize call_depth.
+
+2008-04-24  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (do_stream_open): Return -1 for directories.
+
+2008-04-23  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Avoid bounds error when removing
+	constraint from active set.
+
+	* lex.l (text_yyinput): New function.  Use it in place of yyinput.
+	(next_token_is_sep_op, scan_for_comments, eat_whitespace,
+	have_continuation): No need to check for CR or CRLF.
+	* parse.y (text_getc): Also return NL for single CR.
+
+2008-04-32  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* input.cc (get_input_from_file): Open file in binary mode.
+
+2008-04-20  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream::read): Allow single data type
+	specification but return double.
+
+2008-04-18  John W. Eaton  <jwe@octave.org>
+
+	* lex.l, lex.h (process_comment): New arg, start_in_block.  Call
+	grab_block_comment if start_in_block is true.  Change all uses.
+	* lex.l (grab_block_comment): New function.
+	(grab_comment_block): New arg, at_bol.  Change all uses.
+	Call grab_block_comment if we find the start of a block comment.
+	(block_comment_nesting_level): New static variable.
+	(^{S}*{CCHAR}\{{S}*{NL}): New rule.
+	(<<EOF>>): Warn about open block comments.
+	(reset_parser): Set block_comment_nesting_level to zero.
+	* parse.y (parse_fcn_file): Stash help text from
+	gobble_leading_white_space after calling reset_parser.
+	(text_getc): Keep track of input_line_number here.
+	(skip_white_sapce): Don't increment input_line_number here.
+	* lex.l (grab_comment_block): Or here.
+
+	* lex.l (Vdisplay_tokens): New static variable.
+	(F__display_tokens__): New function.
+	(display_token): New function.
+	(DISPLAY_TOK_AND_RETURN): New macro.
+	(COUNT_TOK_AND_RETURN): Use DISPLAY_TOK_AND_RETURN.
+	(<COMMAND_START>[\"\'], "'", \"): Move handle_string outside of
+	COUNT_TOK_AND_RETURN macro parameter list.
+	(handle_identifier): Don't use macros to return token values here.
+	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*|<MATRIX_START>{S}*{NL}{SNLCMT}*):
+	Recognize block comments here.
+
+	* pr-output.cc (Fdisp): If nargout > 0, produce an sq-string
+	unless arg is a dq-string.
+
+2008-04-17  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (looks_like_copyright): Handle leading whitespace.
+	(class stdio_stream_reader): New class.
+	(skip_white_space): New function.
+	(gobble_leading_white_space): New arg, EOF.  Change all uses.
+	Use skip_white_space and grab_comment_block to process comments.
+	(process_leading_comments): Delete.
+	(parse_fcn_file): Call gobble_leading_white_space instead of
+	process_leading_comments.
+	Skip parsing if gobble_leading_white_space detects EOF.
+	* lex.l (process_comment): Delete CCHAR arg.  Change all uses.
+	({CCHAR}): Unput comment character before calling process_comment.
+	(grab_comment_block): Rename from grab_help_text.  Don't discard
+	spaces from comment text.  Update input_line_number and
+	current_input_column as characters are read.  Warn only once about
+	incompatible comment characters in a given block of comments.
+	Use stream_reader class instead of accessing yyinput and yyunput
+	directly.
+	(class flex_stream_reader): New class.
+	(process_comment): Use grab_comment_block to handle all comments.
+	Don't call maybe_gripe_matlab_incompatible_comment.
+	Always store comment text returned by grab_comment_block.
+	* lex.h (grab_comment_block): Provide decl.
+	(class stream_reader): New class.
+
+2008-04-16  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Fautoload, Fmfilename): Call
+	octave_call_stack::caller_user_code, not
+	octave_call_stack::caller_user_script_or_function.
+	* toplev.cc, toplev.h (octave_call_stack::caller_user_code):
+	Rename from octave_call_stack::caller_user_script_or_function.
+	(octave_call_stack::do_caller_user_code): Rename from
+	octave_call_stack::do_caller_user_script_or_function.
+	* ov-usr-fcn.h (class octave_user_code): New class, derived from
+	octave_fucntion.
+	(class octave_user_function, class octave_user_script): Derive
+	from octave_user_code, not octave_function.
+	(octave_user_script::user_code_value,
+	octave_user_function::user_code_value): New functions.
+	* ov.cc (octave_value::user_script_value,
+	octave_value::user_code_value): New functions.
+	* ov.h: Provide decls.
+	(octave_value::is_user_code, octave_value::is_user_script):
+	New functions.
+	* ov-base.cc (octave_base_value::user_script_value,
+	octave_base_value::user_code_value): New virutal functions.
+	* ov-base.h: Provide decls.
+	(octave_base_value::is_user_script, octave_base_value::is_user_code):
+	New virtual functions.
+	* error.cc (verror, pr_where, error_2, warning_1):
+	Call octave_call_stack::caller_user_code instead of
+	octave_call_stack::caller_user_script_or_function
+	* input.cc (get_user_input): Likewise.
+	* debug.h (bp_table::breakpoint_map): Use pointer to
+	octave_user_code instead of octave_user_function.
+	* debug.cc (get_user_code): Rename from get_user_function.
+	Return pointer to octave_user_code instead of octave_user_function.
+	Change all uses.
+	(bp_table::do_add_breakpoint, bp_table::do_remove_breakpoint,
+	bp_table::do_remove_all_breakpoints_in_file,
+	bp_table::do_get_breakpoint_list):
+	Avoid dereferencing invalid pointers.
+	(parse_dbfunction_params): Call
+	octave_call_stack::caller_user_code, not
+	octave_call_stack::caller_user_script_or_function.
+
+	* load-save.cc (Fsave): Fix continuation character in doc string.
+
+	* pt-walk.h (tree_walker::visit_function_def): New function.
+	* pt-pr-code.cc (tree_print_code::visit_function_def): New function.
+	* pt-pr-code.h: Provide decl.
+	* pt-bp.cc (tree_breakpoint::visit_function_def): New function.
+	* pt-bp.h: Provide decl.
+	* pt-check.cc (tree_checker::visit_function_def): New function.
+	* pt-check.h: Provide decl.
+
+	* parse.y (finish_function): Return ptr to tree_function_def object
+	if curr_fcn_ptr is not defined.  Avoid dereferencing invalid pointers.
+	(frob_function): Set curr_fcn_ptr only when reading a function file.
+	(function): Call finish function in both cases to generate value
+	of production.
+
+	* pt-cmd.h, pt-cmd.cc (tree_function_def): New class.
+
+	* parse.y (parse_and_execute): Delete.
+	* parse.h: Delete decl.
+
+	* pt-pb.cc (tree_breakpoint::visit_octave_user_script): New function.
+	* pt-pb.h: Provide decl.
+	* pt-check.cc (tree_checker::visit_octave_user_script): New function.
+	* pt-check.h: Provide decl.
+	* pt-pr-code.cc (tree_print_code::visit_octave_user_script):
+	New function.
+	* pt-pr-code.h: Provide decl.
+	* pt-walk.h (visit_octave_user_script): New pure virtual function.
+
+	* parse.y (make_script, process_leading_comments,
+	looking_at_function_keyword): New static functions.
+	(SCRIPT): New token.
+	(script): New non-terminal.
+	(command): Handle script here.
+	(parse_fcn_file): Eliminate EXEC_SCRIPT argument.  Change all
+	callers.  Parse scripts and return an octave_user_script rather
+	than executing them here.
+	(load_fcn_from_file): Handle script and function files the same.
+	(source_file): Call d_multi_index_op on object returned by
+	parse_fcn_file.
+	(is_function_file): Delete.
+	(gobble_leading_white_space): Don't recurse.  Simplify.  Eliminate
+	SKIP_CODE, IN_PARTS, and SAVE_COPYRIGHT arguments.  Change all
+	callers.
+	(octave_function_ptr): Delete unused typedef.
+	(get_help_from_file): If help text isn't found by
+	gobble_leading_whitespace, parse file to find it.
+
+	* lex.l (SCRIPT_FILE_BEGIN): New exclusive start state.
+	(prep_lexer_for_script): New function.
+	(grab_help_text): New arg, EOF.
+	(process_comment): New function.
+	({CCHAR}): Use it.
+	* lex.h (prep_lexer_for_script): Provide decl.
+
+	* lex.h, lex.cc, parse.y (lexical_feedback::beginning_of_function):
+	Delete data member and all uses.
+
+	* ov-usr-fcn.cc (octave_user_script::~octave_user_script):
+	Move destructor here from ov-usr-fcn.h.  Delete cmd_list.
+	(octave_user_script::subsref, octave_user_script::accept,
+	octave_user_script::traceback_error): New functions.
+	(octave_user_script::do_multi_index_op):
+	Execute cmd_list instead of calling source_file.
+	* ov-usr-fcn.h (octave_usr_script::cmd_list,
+	octave_usr_script::t_parsed, octave_usr_script::t_checked,
+	octave_usr_script::call_depth): New data members.
+	(octave_usr_script::octave_usr_script): Initialize all data members.
+	(octave_usr_script::octave_usr_script (const std::string&, const
+	std::string&, tree_statement_list *, const std::string&)):
+	New constructor.
+	(octave_usr_script::function_value,
+	octave_usr_script::user_script_value, mark_fcn_file_up_to_date,
+	octave_usr_script::stash_fcn_file_time,
+	octave_usr_script::time_parsed, octave_usr_script::time_checked,
+	octave_usr_script::subsref, octave_usr_script::body): New functions.
+	(octave_user_script::subsref, octave_user_script::accept,
+	octave_user_script::traceback_error): Provide decls.
+
+2008-04-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* oct-stream.cc (octave_scan_1): Ensure digit following X is hex
+	digit before reading number as hex.
+
+2008-04-14  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Ffread): Allow SKIP arg to be omitted.
+	(Ffwrite): Likewise.  Handle args in a way consistent with Ffread.
+
+2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* DLD-FUNCTIONS/dispatch.cc: Replace system("echo '...'>...") calls
+	with real file writing.
+
+2008-04-07  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc (Fqrshift): New function.
+	* DLD-FUNCTIONS/chol.cc (Fcholinsert, Fcholdelete, Fcholshift):
+	New functions.
+
+2008-04-04  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (make_constant): Handle escape sequences in dq-strings.
+
+2008-04-03  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (make_constant): Also stash original text for strings.
+
+	* ov-fcn-handle.cc (octave_fcn_handle::subsref):
+	Don't call next_subsref here.
+
+2008-04-01  John W. Eaton  <jwe@octave.org>
+
+	* pt-id.h (do_lookup (bool&, bool)): Delete.
+	(do_lookup (tree_argument_list *, const string_vector&,
+	octave_value_list&, bool&)): Call MAYBE_DO_BREAKPOINT here.
+
+2008-04-02  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (void gnuplot_backend::close_figure (const
+	octave_value&) const): Allow for an input and output stream.
+
+2008-03-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/lookup.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2008-03-28  David Bateman  <dbateman@free.fr>
+
+	* ov-complex.cc (SCALAR_MAPPER, CD_SCALAR_MAPPER): New macro for
+	complex values with zero imaginary part.
+	(erf, erfc, gamma, lgamma): Use the new mappers to define these
+	mapper functions.
+	* ov-complex.h (erf, erfc, gamma, lgamma): Declare them.
+	* ov-cx-mat.cc (any_element_less_than, any_element_greater_than):
+	New static functions
+	(DARRAY_MAPPER, CD_ARRAY_MAPPER): New macro for complex values
+	with zero imaginary part.
+	(erf, erfc, gamma, lgamma): Use the new mappers to define these
+	mapper functions.
+	* ov-cx-mat.h (erf, erfc, gamma, lgamma): Declare them.
+	* ov-cx-sparse.cc (any_element_less_than, any_element_greater_than):
+	New static functions
+	(DSPARSE_MAPPER, CD_SPARSE_MAPPER): New macro for complex values
+	with zero imaginary part.
+	(erf, erfc, gamma, lgamma): Use the new mappers to define these
+	mapper functions.
+	* ov-cx-sparse.h (erf, erfc, gamma, lgamma): Declare them.
+	* ov-re-sparse.cc (CD_SPARSE_MAPPER): Use correct mapper functors.
+	* mapper.cc: Add tests for the above cases.
+
+2008-03-27  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/max.cc: Rename from minmax.cc.
+	* Makefile.in (DLD_XSRC): Rename minmax.cc to max.cc.
+
+	* DLD-FUNCTIONS/__convn__.cc (convn): Use traits class and
+	typedefs to allow all types to be deduced from argument types.
+
+2008-03-27  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__convn__.cc (Fconvn): Allow convolving real data with
+	complex data.
+
+2008-03-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)):
+	Forward to simple subsref.
+	* ov-base-sparse.h (octave_base_sparse<T>::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)): Likewise.
+	* ov-base-scalar.h (octave_base_sparse<T>::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)): Likewise.
+	* ov-base-matrix.h (octave_base_matrix<T>::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)): Likewise.
+
+	* ov-struct.cc, ov-cell.h (octave_cell::subsref (const
+	std::string&, const std::list<octave_value_list>&, int)):
+	Define nargout version of subsref instead of simple version.
+	* ov-struct.cc, ov-struct.h (octave_struct::subsref (const
+	std::string&, const std::list<octave_value_list>&, int)):
+	Define nargout version of subsref instead of simple version.
+
+	* ov-builtin.h (octave_builtin::subsref (const std::string&,
+	const std::list<octave_value_list>&): Forward to nargout subsref.
+	* ov-cell.h (octave_cell::subsref (const std::string&,
+	const std::list<octave_value_list>&)):
+	* ov-class.h (octave_class::subsref (const std::string&,
+	const std::list<octave_value_list>&): Likewise.
+	* ov-fcn-handle.h (octave_fcn_handle::subsref (const std::string&,
+	const std::list<octave_value_list>&): Likewise.
+	* ov-list.h (octave_list::subsref (const std::string&,
+	const std::list<octave_value_list>&): Likewise.
+	* ov-mex-fcn.h (octave_mex_function::subsref (const std::string&,
+	const std::list<octave_value_list>&): Likewise.
+	* ov-struct.h (octave_struct::subsref (const std::string&,
+	const std::list<octave_value_list>&)):
+	* ov-usr-fcn.h (octave_user_function::subsref (const std::string&,
+	const std::list<octave_value_list>&): Likewise.
+
+	* ov.cc (octave_value::subsref): Use value of nargout instead of
+	is_constant method to decide which type of subsref method to call.
+	(octave_value::assign): Always call simple subref method here.
+
+	* DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/det.cc,
+	DLD-FUNCTIONS/getpwent.cc, DLD-FUNCTIONS/inv.cc,
+	DLD-FUNCTIONS/qr.cc, DLD-FUNCTIONS/symrcm.cc, file-io.cc):
+	Texinfo fixes.
+
+2008-03-26  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__convn__.cc (Fconvn):
+	Call complex_array_value to extract N-d array.
+
+2008-03-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
+	Also display percentage of elements that are nonzero.
+
+2008-03-25  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__convn__.cc: New file.
+	* Makefile.in: Add __convn__.cc
+
+2008-03-25  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/hex2num.cc: New function
+	* Makefile.in (DLD_XSRC): Add hex2num.cc.
+
+2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* mappers.cc (Fexpm1, Flog1p): New functions.
+	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
+	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-cx-sparse.cc, ov-cx-sparse.h, ov-range.h, ov-re-mat.cc,
+	ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h, ov-scalar.cc,
+	ov-scalar.h, ov.h:
+	Provide expm1 and log1p functions.
+
+	* mappers.cc (Froundb): New functions
+	* ov-base.cc, ov-base.h, ov-bool-mat.h, ov-bool-sparse.h,
+	ov-bool.h, ov-complex.cc, ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h,
+	ov-cx-sparse.cc, ov-cx-sparse.h, ov-intx.h, ov-range.h,
+	ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc, ov-re-sparse.h,
+	ov-scalar.cc, ov-scalar.h, ov.h:
+ 	Provide roundb mapper function.
+
+2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* load-save.cc (save_vars): Handle -struct modifier.
+	(save_fields): New function.
+	(Fsave): Document new feature.
+
+2008-03-25  John W. Eaton  <jwe@octave.org>
+
+	* lex.h (lexical_feedback::looking_at_initializer_expression):
+	New data member.
+	* lex.l (lexical_feedback::init): Initialize it.
+	(handle_identifier): Don't unconditionally force identifiers to be
+	variables in the current scope.  Don't call force_local_variable
+	for symbols that appear in parameter initializer expressions.
+	* parse.y (decl_param_init): New parser "subroutine".
+	(decl2): Use it.  Set lexer_flags.looking_at_initializer_expression
+	to false after parsing initializer.
+
+2008-03-24  David Bateman  <dbateman@free.fr>
+
+	* data.cc (map_s_s): Fix for sparse/sparse mappers that resulted
+	in an empty sparse matrix being returned.
+	(Fhypot): New function based on the libm hypot function.
+
+2008-03-24  Primozz Peterlin  <primozz.peterlin@gmail.com>
+
+	* variables.cc (Fexist): Doc fix.
+
+2008-03-23  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-int.h: Add el_div and el_ldiv operators to the
+	binops that were missing them. Added elem_pow functions for mixed
+	integer floating point cases. Initialize the mixed integer
+	floating point cases.
+
+2008-03-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.h (octave_cell::is_constant): Return true.
+	* ov-cell.h, ov-cell.cc (octave_cell::subsref (const std::string&,
+	const std::list<octave_value_list>&)): Define.
+	(octave_cell::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)): Call panic_impossible.
+
+	* ov-struct.h (octave_struct::is_constant): New function.
+	* ov-struct.h, ov-struct.cc (octave_struct::subsref (const std::string&,
+	const std::list<octave_value_list>&)): Define.
+	(octave_struct::subsref (const std::string&,
+	const std::list<octave_value_list>&, int)): Call panic_impossible.
+
+2008-03-21  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/amd.cc: New file.
+	* Makefile.in (DLD_XSRC): Add amd.cc.
+
+2008-03-20  David Bateman  <dbateman@free.fr>
+
+	* Cell.cc (Cell Cell::diag (void) const): delete.
+	(Cell Cell::diag (octave__idx_type) const):Rewrite in terms of
+	template classes function.
+	* Cell.h (Cell diag (void) const): delete.
+
+	* ov.h (octave_value diag (octave_idx_type) const): New method.
+	* ov-base.h (virtual octave_value diag (octave_idx_type) const):
+	New virtual method.
+	* ov-base.cc (octave_value octave_base_value::diag
+	(octave_idx_type) const): New default method.
+
+	* ov-base-mat.h (octave_value diag (octave_idx_type) const): New
+	method.
+	* ov-base-sparse.h (octave_value diag (octave_idx_type) const): New
+	method.
+	* ov-base-scalar.h (octave_value diag (octave_idx_type) const): New
+	method.
+	* ov-range.h (octave_value diag (octave_idx_type) const): New
+	method.
+
+	* data.cc (make_diag, make_spdiag): Delete.
+	(Fdiag): Rewrite in terms of octave_value diag function.
+
+	* data.cc (static octave_value make_diag (const Cell&,
+	octave_idx_type)): New instantiation of template function.
+	(static octave_value make_diag (const octave_value&,
+	octave_idx_type)): Allow cell arrays.
+
+	* Cell.cc (Cell Cell::diag (void) const, Cell Cell::diag
+	(octave__idx_type)): New methods for diagonal matrices.
+	* Cell.h (Cell Cell::diag (void) const, Cell Cell::diag
+	(octave__idx_type)): Declare them.
+
+2008-03-18  David Bateman  <dbateman@free.fr>
+
+	* ov-re-mat.cc (lgamma): Convert to a allow negative arguments.
+	* ov-re-sparse.cc (lgamma): ditto.
+	* ov-scalar.cc (lgamma): ditto.
+
+	* DLD-FUNCTIONS/minmax.cc: 64-bit indexing fix.
+
+2008-03-13  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Handle num_named_args in initialization list instead of functinon body.
+
+	* octave.gperf: Eliminate varargin and varargout keywords.
+	* lex.l (is_keyword_token): Eliminate varargin_kw and varargout_kw
+	from switch statement.
+	* parse.y (return_list): Eliminate special cases for VARARGOUT.
+	Call validate on tree_parameter_list object.
+	(param_list1): Likewise, for VARARGIN.
+	* pt-misc.cc (tree_parameter_list::validate): New function.
+	(tree_parameter_list::mark_varargs_only): Now private.
+	(tree_parameter_list::mark_varargs): Now private.
+	* pt-misc.h (tree_parameter_list::validate): Provide decl.
+
+2008-03-12  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (Vwhos_line_format): Omit print_dims parameter.
+	Fix doc string in Vwhos_line_format DEVAR.
+	(symbol_record_name_compare): Delete unused function.
+	(whos_parameter::dimensions): Delete struct field.
+	(symbol_info_list): New class.
+	(dimensions_string_req_first_space, make_dimensions_string,
+	dimensions_string_req_total_space): Delete.
+	(parse_whos_line_format): Move functionality to new
+	symbol_info_list class.
+	(print_symbol_info_line): Move functionality to new
+	symbol_info_list::struct symbol_info::displaly_line method.
+	(do_who): Simplify with new symbol_info_list class.
+	Handle index expressions in addition to symbol names.
+
+	* DLD-FUNCTIONS/dlmread.cc (Fdlmread): Fix separator detection.
+
+2008-03-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/eig.cc (Feig): Handle possible error from EIG.
+	* DLD-FUNCTIONS/qp.cc (qp, Fqp): Likewise.
+	* xpow.cc (xpow): Likewise.
+
+2008-03-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dlmread.cc: Style fixes.
+
+2008-03-11  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/dlmread.cc: Function ported from octave forge. Add
+	spreadsheet style ranges.
+	* Makefile.in (DLD_XSRC): Add dlmread.cc.
+
+2008-03-10  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxCreateLogicalScalar): Argument is now mxLogical.
+
+	* data.cc (Fisfloat): New function.
+	* ov.h (octave_value::is_float_type): Ditto.
+	* ov-base.h (octave_base_value::is_float_type): Ditto.
+	* ov-complex.h (octave_complex): Ditto.
+	* ov-cx-mat.h (octave_complex_matrix): Ditto.
+	* ov-cx-sparse.h (octave_sparse_complex_matrix): Ditto.
+	* ov-range.h (octave_range): Ditto.
+	* ov-re-mat.h (octave_matrix): Ditto.
+	* ov-re-sparse.h (octave_sparse_matrix): Ditto.
+	* ov-scalar.h (octave_scalar): Ditto.
+
+	* mxarray.h.in (mxLogical): Use unsigned char instead of int.
+	From Antwerpen, G. (Gert) van <gert.vanantwerpen@tno.nl>.
+
+2008-03-07  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::print_raw): Don't print contents fo
+	struct arrays that have more than one element.
+
+2008-03-06  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Document that
+	the initial interpretation of a positive definite return from
+	matrix_type is that the matrix is "probably" positive definite and
+	not certainly so.
+
+2008-03-06  John W. Eaton  <jwe@octave.org>
+
+	* parse.y: Move tests here from test/test_eval.m.
+	* DLD-FUNCTIONS/fft.cc: Move tests here from test/test_signal.m.
+	* DLD-FUNCTIONS/dassl.cc: Move tests here from test/test_diffeq.m.
+	* DLD-FUNCTIONS/lsode.cc: Move tests here from test/test_diffeq.m.
+	* DLD-FUNCTIONS/quad.cc: Move tests here from test/test_quad.m.
+	* DLD-FUNCTIONS/time.cc: Move tests here from test/test_system.m.
+
+2008-03-06  Alexander Barth  <barth.alexander@gmail.com>
+
+	* DLD-FUNCTIONS/__lin_interpn__.cc (lookup):
+	Handle decreasing coordinate values.
+
+2008-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/chol.cc (Fcholupdate): Adjust code to meet
+	Octave's coding guidelines.
+
+	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete): Adjust
+	code to meet Octave's coding guidelines.
+	* DLD-FUNCTIONS/qr.cc (Fqrdelete): Fix incorrect test.
+
+	* DLD-FUNCTIONS/qr.cc (Fqrinsert, Fqrdelete): Modify to use
+	0-based indexing in liboctave's QR classes.
+
+2008-03-04  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/chol.cc (Fcholupdate): New function.
+
+	* DLD-FUNCTIONS/qr.cc (Fqrupdate, Fqrinsert, Fqrdelete):
+	New functions.
+
+2008-03-04  Ryan Rusaw  <rrusaw@gmail.com>
+
+	* toplev.h (octave_call_stack::element): New static function.
+	(octave_call_stack::cs): Now std::deque instead of std::list.
+
+	* pt-stmt.cc (curr_statement, curr_caller_statement): Delete.
+	* pt-stmt.h: Delete decls.
+
+	* pt-stmt.h, pt-stmt.cc (tree_statement_stack): New class.
+
+	* pt-stmt.cc (tree_statement::eval): Use tree_statement_stack
+	instead of curr_statement variable.
+
+	* ov-usr-func.cc (octave_user_function::do_multi_index_op):
+	Don't set curr_caller_statement.
+
+	* error.cc (verror, pr_where): Call tree_statement_stack::current_line
+	and tree_statement_stack::current_column instead of
+	instead of curr_statement->line and curr_statement->column.
+	* input.cc (get_user_input): Likewise.
+
+2008-02-27  John P. Swensen  <jpswensen@gmail.com>
+
+	* debug.cc (get_user_function): Call symtab::find_function instead
+	of symtab::find_user_function.
+
+2008-02-27  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (do_read): Stop reading if seek fails.
+
+2008-02-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-int.cc (octave_base_int_helper,
+	octave_base_int_helper_traits): New templates and specializations.
+	(octave_base_int_matrix<T>::convert_to_str_internal,
+	octave_base_int_matrix<T>::convert_to_str_internal): Use them.
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Pass name of calling function
+	to octave_rand::state.
+
+	* variables.cc (bind_ans): Handle cs-lists recursively.
+
+	* ov-cs-list.h, ov-cs-list.cc (octave_cs_list::print,
+	octave_cs_list::print_raw): Delete.
+
+2008-02-25  John W. Eaton  <jwe@octave.org>
+
+	* Cell.cc (Cell::map): New function.
+	* Cell.h (Cell::map): Declare.
+	(xisalnum, xisalpha, xisascii, xiscntrl, xisdigit,
+	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
+	xisxdigit, xtoascii, xtolower, xtoupper): New mapper functions.
+	(ctype_mapper): New private typedef.
+
+	* ov-cell.h (xisalnum, xisalpha, xisascii, xiscntrl, xisdigit,
+	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
+	xisxdigit, xtoascii, xtolower, xtoupper): New mapper functions.
+
+2008-02-25  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ov-scalar.cc (octave_scalar::round): Use xround instead of ::round
+	in mapper implementation.
+
+2008-02-25  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (UNDEFINED_MAPPER, STRING_MAPPER): New macros.  Use
+	them to define mapper functions.
+
+	* mappers.cc (Fisalnum, Fisalpha, Fisascii, Fiscntrl, Fisdigit,
+	Fisgraph, Fislower, Fisprint, Fispunct, Fisspace, Fisupper,
+	Fisxdigit, Ftoascii, Ftolower, Ftoupper):
+	Use DEFUNX to define ctype mapper functions.
+	Use new function names.
+
+	* ov-base.h, ov-base.cc, ov-str-mat.h, ov-str-mat.cc:
+	Prepend x to ctype mapper function names.
+
+	* graphics.h.in (row_vector_property::row_vector_property):
+	Set default constraints here.
+	(row_vector_property::add_constraint): New function.
+	(row_vector_property::validate): Delete decl.
+	(axes::properties::init): Use single-arg add_constraint function
+	for xlim, ylim, zlim, clim, and alim properties.
+
+	* graphics.cc (row_vector_property::validate): Delete.
+
+	* graphics.cc (axes::properties::update_camera,
+	axes::properties::update_aspectratios):
+	Avoid shadow warnings from GCC.
+
+	* graphics.h.in (base_properties::get_bounding_box):
+	Avoid unused argument warning from GCC.
+
+	* graphics.h.in (array_property::add_constraint): Arg is now const
+	reference, not value.
+
+	* graphics.h.in, graphics.cc (class row_vector_property): New class.
+	(axes::properties): xlim, ylim, zlim, clim, alim, xtick, ytick,
+	ztick properties are now row_vector_property objects instead of
+	array_property objects.
+
+	* genprops.awk: Special case row_vector_property in the same way
+	as array_property.
+
+2008-02-22  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/colamd.cc,
+	DLD-FUNCTIONS/convhulln.cc, DLD-FUNCTIONS/dmperm.cc,
+	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/symbfact.cc, zfstream.h, zfstream.cc:
+	Use 0 instead of NULL.
+
+2008-02-22  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/chol.c (Fchol, Fcholinv, Fchol2iinv): Treat
+	sparse matrices. Add the "lower" and "vector" flags.
+	* DLD-FUNCTIONS/inv.c (Finv): Treat sparse matrices.
+	* DLD-FUNCTION/sparse.cc (static bool is_sparse (const
+	octave_value&)): Remove and use arg.is_sparse_type () instead.
+	(Fspcumprod, Fspcumsum, Fspprod, spsum, spsumsq, spdiag): Remove.
+	* DLD-FUNCTIONS/splu.cc: Remove.
+	* DLD-FUNCTIONS/lu.cc: Treat sparse matrices, Add "vector" flag.
+	* DLD-FUNCTIONS/spchol.cc: Move to symbfact.cc
+	* DLD-FUNCTIONS/symbfact.cc: Remove cholesky functions Fspchol,
+	Fspcholinv, Fspchol2inv.
+	* DLD-FUNCTIONS/luinc.cc: Modify for new sparse LU
+	constructors. Ass the 'vector' flag.
+	* DLD-FUNCTIONS/spparms.cc: Add the sum_tol flag.
+
+	* Makifile.in (DLD_XSRC): Remove spchol.cc, splu.cc and add
+	symbfact.cc
+	* data.cc (NATIVE_REDUCTION): Treat sparse matrices
+	(DATA_REDUCTION): Ditto.
+	(template <class T> static octave_value make_spdiag (const T&,
+	octave_idx_type)): New template function for sparse diag
+	function. Instantiate it.
+	(static octave_value make_diag (const octave_value&,
+	octave_idx_type): Use make_spdiag for sparse matrice.
+	(Fatan2): Compatibility fixes for mixed full/sparse matrices.
+
+2008-02-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_jacobian):
+	Check dimensions of user-supplied Jacobian matrix.
+	(fsolve_user_function): Check for non-square systems.
+
+2008-02-20  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (map_d_m, map_m_d, map_m_m, Fatan2, Ffmod):
+	Handle N-d arrays.
+
+	* ov-bool-mat.h (octave_bool_matrix (const Array2<bool>&)): Delete.
+
+2008-02-20  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/det.cc, DLD-FUNCTIONS/find.cc,
+	* DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/qr.cc:
+	Treat sparse matrices.
+
+	* DLD-FUNCTIONS/sparse.cc (Fspmin, Fspmax, Fatan2): Remove functions.
+
+	* DLD-FUNCTIONS/dmperm.cc: Rename from spqr.cc.
+	(Fspqr): Delete function.
+
+	* DLD-FUNCTIONS/spqr.cc, DLD-FUNCTIONS/spdet.cc,
+	DLD-FUNCTIONS/spfind.cc: Remove.
+
+	* Makefile.in (DLD_XSRC): Add dmperm.cc to the list.
+	Delete det.cc, find.cc, minmax.cc, and qr.cc from the list.
+
+	* Makefile.in (OV_SRC): Remove ov-mapper.cc.
+	(OV_INCLUDES): Remove ov-mapper.h.
+	(DEFUN_PATTERN): No longer accept DEFUN_MAPPER as valid.
+	* ov-mapper.cc, ov-mapepr.h: Delete, remove all includes of
+	ov-mapper.h from all files.
+
+	* op-b-sbm.cc, op-bm-sbm.cc, op-smb-b.cc, op-sbm-bm.cc: Include
+	ov-bool-sparse.h.
+
+	* defun-int.h (DEFUN_MAPPER_INTERNAL, install_builtin_mapper):
+	Remove.
+	* defun.cc (install_builtin_mapper): Ditto.
+	* defun.h (DEFUN_MAPPER): Remove.
+
+	* mappers.cc: Rewrite all mapper function using DEFUN and newly
+	introduced octave_value mapper functions.
+	(dummyp, xabs, xisalnum, xisascii, xiscntrl, xisdigit,
+	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
+	xtoascii, xtolower, xtoupper, xconj, ximag, xreal): Remove
+	static wrapper functions.
+
+	* mkbuiltins (XDEFUN_MAPPER_INTERNAL, install_builtin_functions):
+	Remove.
+	* mkgendoc (XDEFUN_MAPPER_INTERNAL): Remove.
+
+	* ov.cc (octave_mapper::register_type): Remove.
+
+	* ov.h (abs, acos, acosh, angle, arg, asin, asinh, atan, atanh,
+	ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor, gamma,
+	imag, isinf, isna, isnan, lgamma, log, log10, real, round, signum,
+	sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii, iscntrl,
+	isdigit, isgraph, islower, isprint, ispunct, isspace, isupper,
+	isxdigit, toascii, tolower, toupper):
+	New octave_value mapper	functions.
+
+	* ov-base.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
+	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
+	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
+	signum, sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii,
+	iscntrl, isdigit, isgraph, slower, isprint, ispunct, isspace,
+	isupper, isxdigit, toascii, tolower, toupper):
+	New virtual mapper functions.
+	* ov-base.cc (abs, acos, acosh, angle, arg, asin, asinh, atan,
+	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
+	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
+	signum, sin, sinh, sqrt, tan, tanh, isalnum, isalpha, isascii,
+	iscntrl, isdigit, isgraph, slower, isprint, ispunct, isspace,
+	isupper, isxdigit, toascii, tolower, toupper):
+	Base versions of mapper functions.
+
+	* ov-bool-mat.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
+	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
+	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
+	signum, sin, sinh, sqrt, tan, tanh):
+	Mapper function recast boolen matrix as double.
+	* ov-bool.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
+	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
+	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
+	signum, sin, sinh, sqrt, tan, tanh): Ditto.
+	* ov-bool-sparse.h (abs, acos, acosh, angle, arg, asin, asinh,
+	atan, atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix,
+	floor, gamma, imag, isinf, isna, isnan, lgamma, log, log10, real,
+	round, signum, sin, sinh, sqrt, tan, tanh): Ditto.
+	(char_array_value): New method to convert to charNDArray.
+	* ov-bool-sparse.cc (char_array_value): New method to convert to
+	charNDArray.
+	* ov-complex.cc (char_array_value): ditto.
+	(xabs, ximag, xreal): Static wrapper functions.
+	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
+	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
+	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
+	tanh): New mapper methods.
+	* ov-complex.h: Provide decls.
+
+	* ov-cx-mat.cc (char_array_value): New method to convert to
+	charNDArray.
+	(xabs, ximag, xreal): Static wrapper functions.
+	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
+	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
+	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
+	tanh): New mapper methods.
+	* ov-cx-mat.h: Provide decls.
+
+	* ov-cx-sparse.cc (char_array_value): New method to convert to
+	charNDArray.
+	(xabs, ximag, xreal): Static wrapper functions.
+	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
+	conj, cos, cosh, exp, finite, fix, floor, imag, isinf, isna,
+	isnan, log, log10, real, round, signum, sin, sinh, sqrt, tan,
+	tanh): New mapper methods.
+	* ov-cx-sparse.h: Provide decls.
+
+	* ov-intx.h (abs, signum, imag, ceil, conj, fix, floor, real,
+	round, finite, isinf, isna, isnan): Define for both matrix and
+	scalar classes.
+
+	* ov-range.h (abs, acos, acosh, angle, arg, asin, asinh, atan,
+	atanh, ceil, conj, cos, cosh, erf, erfc, exp, finite, fix, floor,
+	gamma, imag, isinf, isna, isnan, lgamma, log, log10, real, round,
+	signum, sin, sinh, sqrt, tan, tanh): New mapper functions.
+
+	* ov-re-mat.cc (any_element_less_than): Static function to check if
+	any elemet was less than a value,
+	(any_element_greater_than): Ditto with greater than.
+	(abs, acos, acosh, angle, arg, asin, asinh, atan, atanh, ceil,
+	conj, cos, cosh, erf, erfc, exp, finite, fix, floor, gamma, imag,
+	isinf, isna, isnan, lgamma, log, log10, real, round, signum, sin,
+	sinh, sqrt, tan, tanh): New mapper functions.
+	* ov-re-mat.h: Provide decls.
+
+	* ov-scalar.cc (any_element_less_than): Static function to check if
+	any elemet was less than a value,
+	(any_element_greater_than): ditto with greater than.
+	(abs acos acosh angle arg asin asinh atan atanh
+	ceil conj cos cosh erf erfc exp finite fix floor gamma imag
+	isinf isna isnan lgamma log log10 real round signum sin sinh
+	sqrt tan tanh): New mapper functions.
+	* ov-scalar.h: Provide decls.
+
+	* ov-str-mat.cc (xisalnum, xisascii, xiscntrl, xisdigit,
+	xisgraph, xislower, xisprint, xispunct, xisspace, xisupper,
+	xtoascii, xtolower, xtoupper): New static wrapper functions.
+	(isalnum, isalpha, isascii, iscntrl, isdigit, isgraph, islower,
+	isprint, ispunct, isspace, isupper, isxdigit, toascii, tolower,
+	toupper): New mapper methods.
+	* ov-str-mat.h: Provide decls.
+
+2008-02-18  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fatan2): Reject arguments that are integer types.
+
+2008-02-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* DLD-FUNCTIONS/qr.cc: Doc fix.
+
+2008-02-18  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h
+	(symbol_table::fcn_info::fcn_info_rep::clear_unlocked_functions):
+	symbol_table::fcn_info::fcn_info_rep::clear_cmdline_function,
+	symbol_table::fcn_info::fcn_info_rep::clear_autoload_function):
+	New functions.
+	(symbol_table::fcn_info::fcn_info_rep::clear_user_function):
+	Don't clear locked functions.
+	(symbol_table::fcn_info::fcn_info_rep::clear_mex_function):
+	Call clear_user_function instead of setting function_on_path directly.
+	(symbol_table::fcn_info::fcn_info_rep::clear):
+	Use new functions to do the real work.
+
+	* ov.h (octave_value::lock, octave_value::unlock,
+	octave_value::islocked): New functions.
+	* ov-base.cc (octave_base_value::lock, octave_base_value::unlock):
+	New functions.
+	* ov-base.h Provide decls.
+	(octave_base_value::islocked): New function.
+	* ov-fcn.h (octave_function::islocked): Now const.
+
+2008-02-15  John W. Eaton  <jwe@octave.org>
+
+	* ov-builtin.cc (octave_builtin::do_multi_index_op):
+	Catch possible octave_execution_exception.
+	* ov-mex-fcn.cc (octave_mex_function::do_multi_index_op): Likewise.
+	* ov.cc (do_binary_op, do_cat_op, do_unary_op,
+	octave_value::do_non_const_unary_op): Likewise.
+
+2008-02-14  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/qz.cc:
+	Don't check f77_exception_encountered.
+
+	* sighandlers.cc (user_abort): If interrupting immediately, set
+	octave_interrupt_state if it is not already set.
+
+	* pt-stmt.cc (tree_statement::eval): Catch execution exceptions.
+
+	* octave.cc (lo_error_handler): New static function.
+	(initialize_error_handlers): Set liboctave_error_handler to
+	lo_error_handler, not error.
+
+	* DLD-FUNCTIONS/urlwrite.cc (urlget): Call octave_rethrow_exception
+	instead of octave_throw_interrupt_exception.
+	* utils.cc (BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE_FOR_VSNPRINTF):
+	Likewise.
+
+2008-02-12  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in: Implement the cdatamapping property in patch and
+	image objects.
+
+2008-02-12  John W. Eaton  <jwe@octave.org>
+
+	* pt-loop.cc (tree_simple_for_command::eval): Compute range
+	element with multiplication.
+
+2008-02-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in ($(MAKEDEPS)): Skip dependencies if omit_deps is defined.
+
+2008-02-09  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (set_range_format): Eliminate sign arg.
+	Change all callers.
+
+2008-02-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::subsref): Allow Cell::index to resize.
+
+	* input.cc (interactive_input): Eliminate debug arg.  Change All uses.
+	(get_user_input): Don't process input_buf if there is an error.
+	Call reset_error_handler instead of setting error_state to 0.
+
+2008-02-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (callback_property::execute): New static
+	helper method (useful to execute callbacks by name).
+	* graphics.cc (callback_property::execute): Likewise.
+	(execute_callback): Avoid undefined argument when executing
+	callback. Do not use arguments when the callback is a string.
+
+2008-02-07  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::sort): New functions.
+
+2008-02-07  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (DLD_XSRC): Delete spkron.cc.
+	* DLD-FUNCTIONS/spkron.cc: Delete.
+	* DLD-FUNCTIONS/kron.cc: Include here and dispatch to the sparse
+	version if either argument is sparse.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (parse.cc): Also use --defines option for bison.
+
+2008-02-06  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.cc (axes::properties::set_defaults): Set default axes
+	color to white.
+
+2008-02-06  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (parse.cc): Use "-o $@" instead of renaming y.tab.c.
+	(maintainer-clean): Don't remove y.tab.c.
+
+	* Makefile.in (parse.cc : parse.y): Use mv instead of move-if-change.
+	(stamp-prereq, stamp-liboctave-prereq): Eliminate.
+	(clean): Don't remove stamp-prereq and stamp-liboctave-prereq.
+	(OPT_BASE, OPT_IN, OPT_INC): New macros.
+	(OPT_HANDLERS): Define in terms of OPT_BASE.
+	($(OPT_INC) : %.h : %.in): New pattern rule.
+	(PREREQ): New macro.
+	($(MAKEDEPS)): Simplify with $(PREREQ).
+
+2008-02-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Unconditionally include $(MAKEDEPS).
+	Mark $(MAKEDEPS) as .PHONY targets if omit_deps is true.
+
+2008-02-05  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_properties::get_boundingbox): New method.
+	(figure::properties::get_boundingbox): Overload method.
+	(axes::properties::get_boundingbox): Likewise.
+	* graphics.cc (figure::properties::get_boundingbox): Return a
+	left-to-right/top-to-bottom bounding box rectangle.
+	(axes::properties::get_boundingbox): Likewise.
+	(axes::properties::update_camera): Remove backend access and
+	use the new axes bounding box.
+
+2008-02-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (axes::properties::update_xlim,
+	axes::properties::update_ylim, axes::properties::update_zlim):
+	New update methods.
+
+	* graphics.cc (axes::properties::calc_ticks): New function.
+	(axes::properties::magform): New function.
+	(axes::update_axis_limits): Call update_{x,y,z}lims if
+	appropriate.
+
+2008-02-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_graphics_backend::get_screen_size,
+	graphics_backend::get_screen_size): New methods.
+	(graphics_backend::available_backends): Export symbol.
+	(class figure::properties, class axes::properties): Export classes.
+	(figure::properties::get_boundingbox): New utility method.
+	(figure::properties::position): Use valid default position.
+	(axes::properties::gridlinestyle,
+	axes::properties::minorgridlinestyle):
+	Use dotted line style as default.
+	* graphics.cc (default_figure_position): New static function.
+	(gnuplot_backend::get_screen_size): New method.
+	(figure::properties::get_boundingbox): New utility method.
+
+2008-02-02  Shai Ayal  <shaiay@users.sourceforge.org>
+
+	* graphics.h.in (base_scaler::~base_scalar): New virtual destructor.
+	* graphics.cc (axes::properties::update_camera): Tag abs with std.
+
+	* graphics.h.in (graphics_backend::find_backend): New function.
+	(class figure): Add __backend__ property and set method.
+
+2008-02-02  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (do_type): Don't print dyamically loaded function files.
+
+	* ov-fcn.h (octave_function::is_dynamically_loaded_function): Delete.
+
+2008-02-01  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (Fset_variable, Fvariable_value):
+	New functions, but commented out for now.
+
+2008-01-30  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (axes::properties::get_transform_matrix,
+	axes::properties::get_inverse_transform_matrix,
+	axes::properties::get_opengl_matrix_1,
+	axes::properties::get_opengl_matrix_2,
+	axes::properties::get_transform_zlim): New accessors.
+	(base_properties::is_clipping): New accessor.
+	(class graphics_xform): New class encapsulating axes transformation.
+	(axes::properties::get_transform): New method returning a
+	graphics_xform object.
+	* graphics.cc (class graphics_xform): New class.
+
+2008-01-31  David Bateman  <dbateman@free.fr>
+
+	* ov.cc (octave_value::octave_value (const ArrayN<bool>&),
+	octave_value::octave_value (const Sparse<bool>&, const MatrixType &),
+	octave_value::octave_value (const ArrayN<std::streamoff>&)): New
+	constructors.
+	* ov.h: (octave_value (const ArrayN<bool>&),
+	octave_value (const Sparse<bool>&, const MatrixType &),
+	octave_value (const ArrayN<std::streamoff>&)): Declare them.
+	(octave_value sort (octave_idx_type, sortmode) const, octave_value
+	sort (Array<octave_idx_type> &, octave_idx_type, sortmode) const):
+	octave_value sort method.
+
+
+	* ov-base.cc (sort): Base versions of teh octave_value sort methods.
+	* ov-base.h (sort): Declare the octave_value sort methods
+	* ov-base-scalar.h (sort): Simple sort methods for scalars.
+	* ov-base-mat.h, ov-base-sparse.h (sort): Sort methods calling
+	underlying array or sparse sort methods.
+	* ov-str-mat.h (sort): String specific sort methods.
+
+	* TEMPLATE-INST/Array-tc.cc: Instantiate the array sort methods.
+	* ov-streamoff.h (sort): Sort versions returning and error.
+	* oct-stream.cc, ov-typeinfo.cc, Array-os.cc: Null instantiation
+	of array sort methods.
+
+	* Makefile.in (DLD_XSRC): Remove sort.cc
+	* DLD-FUNCTIONS/sort.cc: Remove
+	* data.cc (Fsort): New function using octave_value sort methods
+	for the sorting. Add tests.
+
+2008-01-30  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* pager.cc (Fmore): Doc fix.
+
+2008-01-28  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* genprops.awk: Add update ('u') modifier and document the
+	readonly ('r') modifier.
+	* graphics.h.in (class base_scaler, class lin_scaler, class
+	log_scaler, class scaler): New classes to make abstraction of the
+	axis scale.
+	(base_graphics_backend::get_screen_resolution,
+	graphics_backend::get_screen_resolution): New methods.
+	(axes::properties::sx, axes::properties::sy,
+	axes::properties::sz): New scaler fields.
+	(axes::properties::get_x_scaler, axes::properties::get_y_scaler,
+	axes::properties::get_z_scaler): New accessors.
+	(axes::properties::x_render, axes::properties::x_render_inv,
+	axes::properties::x_gl_mat1, axes::properties::x_gl_mat2,
+	axes::properties::x_zlim): New utility Matrix fields.
+	(axes::properties::get_boundingbox,
+	axes::properties::update_camera,
+	axes::properites::update_aspectratios,
+	axes::properties::update_transform,
+	axes::properties::update_xscale, axes::properties::update_yscale,
+	axes::properties::update_zscale, axes::properties::update_view,
+	axes::properties::update_xdir, axes::properties::update_ydir,
+	axes::properties::update_zdir): New updater methods.
+	(axes::properties::init): Initialize sx, sy, sz and x_zlim correctly.
+	(axes::properties::position): Use valid default position value.
+	(axes::properties::xscale, axes::properties::yscale,
+	axes::properties::zscale, axes::properties::xdir,
+	axes::properties::ydir, axes::properties::zdir,
+	axes::properties::view): Add updater ('u') property modifier.
+	* graphics.cc (default_axes_position, default_axes_outerposition):
+	New initializers.
+	(convert_position): New utility function to convert position
+	according to specified units.
+	(gnuplot_backend::get_screen_resolution): New method.
+	(axes::properties::set_defaults): Initilize recently added properties.
+	(xform_matrix, xform_vector, transform, xform_scale,
+	xform_translate, scale, translate, xform, normalize, dot, cross,
+	unit_cube, cam2xform, xform2cam): New inline transformation
+	utility functions.
+	(axes::properties::update_camera,
+	axes::properties::update_aspectratios,
+	axes::properties::get_boundingbox): New updater methods for
+	computing transformation matrices.
+	(axes::update_axis_limits): Update transformation data.
+
+2008-01-28  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (BEGIN_CHAR_CLASS_CONVERSION): Handle width properly.
+	(OCTAVE_SCAN) [__GNUG__ && ! CXX_ISO_COMPLIANT_LIBRARY]:
+	Delete special case.
+
+2008-01-25  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rand.cc (Frandp): Relax relative error on randp
+	tests.
+
+2008-01-25  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_properties::get_backend,
+	base_graphics_object::get_backend, graphics_backend::get_backend):
+	New methods for convenient access to the backend.
+	(figure::get_backend, figure::set_backend): Remove.
+	* graphics.cc (base_properties::get_backend): New method.
+	(Fdrawnow): Use graphics_object::get_backend to simplify code.
+
+2008-01-24  Pascal Dupuis  <Pascal.Dupuis@worldonline.be>
+
+	* mxarray.h.in: Include <cstring>.
+
+2008-01-22  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (clear_drawnow_request): New function.
+	(Fdrawnow): Add it to the unwind_protect stack.
+
+	* input.cc (Vdrawnow_requested): No longer static.
+	* input.h: Provide decl.
+	* graphics.cc (Fdrawnow, Fset, make_graphics_object):
+	Use Vdrawnow_requested directly.
+
+	* toplev.cc (octave_add_atexit_function,
+	octave_remove_atexit_function): New functions.
+	(Fatexit): Use them.
+	* graphics.cc (Fdrawnow): Call octave_add_atexit_function instead
+	of using eval.
+	* toplev.h (octave_add_atexit_function,
+	octave_remove_atexit_function): Provide decls.
+
+2008-01-22  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_properties::is_visible,
+	base_properties::set_modified): New accessors.
+	(class base_graphics_backend, class graphics_backend): New classes
+	for handling octave/backend interaction.
+	(figure::properties::close): Add "pop" argument controlling
+	whether the figure should be popped from the list of existing figures.
+	(class figure::properties): New backend field and accessors, holding
+	the graphics backend associated with the figure.
+	* graphics.cc (class gnuplot_backend): New class for the default
+	gnuplot backend.
+	(figure::properties::close): Add "pop" argument and transfer the
+	figure closing to the associated backend.
+	(Fdrawnow): New builtin function, converted from drawnow.m.
+
+2008-01-19  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk (emit_source): Use "pname" for property name argument.
+
+2008-01-19  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (class figure::properties): New properties:
+	alphamap, currentcharacter, currentobject, current_point,
+	dockcontrols, doublebuffer, filename, integerhandle,
+	inverthardcopy, keypressfcn, keyreleasefcn, menubar, mincolormap,
+	name, numbertitle, paperunits, paperposition, paperpositionmode,
+	papersize, papertype, pointer, pointershapecdata,
+	pointershapehotspot, position, renderer, renderermode, resize,
+	resizefcn, selectiontype, toolbar, units, windowbuttondownfcn,
+	windowbuttonmotionfcn, windowbuttonupfcn, windowbuttonwheelfcn,
+	windowstyle, wvisual, wvisualmode, xdisplay, xvisual, xvisualmode,
+	buttondownfcn.
+
+2008-01-19  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_properties::beingdeleted,
+	base_properties::is_beingdeleted,
+	base_properties::get_beingdeleted,
+	base_properties::set_beingdeleted):
+	Add beingdeleted property and accessors.
+	* graphics.cc (base_properties::get): Likewise.
+	(gh_manager::free): Set beingdeleted to "on" when freeing an object.
+	* genprops.awk: Skip C++-style comments in property declaration.
+
+	* graphics.h.in (class axes::properties): New properties: alim,
+	alimmode, xminortick, yminortick, zminortick, ambientlightcolor,
+	cameraposition, cameratarget, cameraupvector, cameraviewangle,
+	camerapositionmode, cameratargetmode, cameraupvectormode,
+	cameraviewanglemode, currentpoint, drawmode, fontangle, fontname,
+	fontsize, fontweight, fontunits, gridlinestyle,
+	minorgridlinestyle, linestyleorder, linewidth, plotboxaspectratio,
+	plotboxaspectratiomode, projection, tickdir, tickdirmode,
+	ticklength, tightinset, units, x_viewtransform,
+	x_projectiontransform, x_viewporttransform, x_normrendertransform,
+	x_rendertransform.
+	* genprops.awk: Handle new readonly modifier 'r'.
+
+2008-01-18  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
+
+	* genprops.awk: Avoid using "default" as a variable name.
+
+2008-01-17  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (data_property::get_data_limits): Reset min/max values.
+
+2008-01-17  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline.cc: Add tests for Finline.
+
+2008-01-17  Ben Abbott  <bpabbott@mac.com>
+
+	* load-path.cc (F__pathorig__): Rename from Fpathdef.
+	(Frestoredefaultpath): New function.
+
+2008-01-16  John W. Eaton  <jwe@octave.org>
+
+	* pt-assign.cc (tree_simple_assignment::rvalue,
+	tree_multi_assignment::rvalue): Handle assignment of
+	comma-separated lists.
+
+2008-01-15  John W. Eaton  <jwe@octave.org>
+
+	* mappers.cc (install_mapper_functions): Move test for asin here
+	from test/test_arith.m.
+
+	* graphics.h.in (class line::properties, class text::properties):
+	Rename erase_mode property to erasemode.
+
+2008-01-15  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (base_properties::remove_child,
+	base_properties::adopt, base_properties::update_axis_limits):
+	Make virtual.
+	(base_graphics_object::mark_modified,
+	base_graphics_object::override-defaults,
+	base_graphics_object::set_from_list, base_graphics_object::set,
+	base_graphics_object::get, base_graphics_object::get_parent,
+	base_graphics_object::remove_child, base_graphics_object::adopt,
+	base_graphics_object::reparent, base_graphics_object::defaults,
+	base_graphics_object::type): Add default implementation.
+	(class root_figure, class figure, class axes, class line,
+	class text, class image, class patch, class surface):
+	Remove overloaded virtual methods whose implementation is
+	identical to the default one.
+
+	* genprops.awk: Handle 'h' modifier for hidden properties.
+	Replace "get(void)" method with "get(bool all = false)" to allow
+	access to hidden properties.
+
+	* graphics.h.in (base_properties::get, base_graphics_object::get,
+	graphics_object::get, root_figure::get, figure::get, axes::get,
+	line::get, text::get, patch::get, surface::get, image::get):
+	New arg, ALL, to access hidden properties.
+	(gh_manager::do_get_object): Do not look for invalid handles.
+	(figure::properties::__plot_stream__,
+	figure::properties::__enhanced__, axes::properties::__colorbar__):
+	Make properties hidden.
+	(axes::properties, line::properties, text::properties,
+	patch::properties, surface::properties): Remove obsolete 'a'
+	property modifier.
+	* graphics.cc (base_properties::get): New arg ALL, to access
+	hidden properties.
+	(base_properties::mark_modified): Call mark_modified only on valid
+	parent object.
+	(__get__): New internal function returning all properties,
+	including the hidden ones.
+
+2008-01-15  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (properties::set_currentfigure,
+	properties::set_currentaxes): Don't convert arg to double
+	before passing to graphics_handle constructor.
+	(base_properties::remove_child): Call mark_modified if list of
+	children changes.
+
+2008-01-15  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (class line::properties): New properties:
+	displayname, erasemode.
+	(class text::properties) New properties: backgroundcolor,
+	displayname, edgecolor, erase_mode, editing, fontunits, linestyle,
+	linewidth, margin, verticalalignment.
+
+2008-01-14  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_initialize): Start with sys_path empty.
+	(maybe_add_path_elts): Omit path_sep_str if path is empty.
+
+	* symtab.h (symbol_table::do_pop_context): Remove symbol_records
+	which have no more context.
+	(symbol_table::symbol_record::pop_context,
+	(symbol_table::symbol_record::symbol_record_rep::pop_context):
+	Return size of value_stack, or 1 if variable is persistent or global.
+
+2008-01-14  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.h.in (class patch::properties): New properties:
+	cdatamapping, facevertexalphadata, facevertexcdata, vertexnormals,
+	normalmode, facelighting, edgealpha, edgelighting,
+	backfacelighting, ambientstrength, diffusestrength,
+	specularstrength, specularexponent, specularcolorreflectance,
+	erasemode.
+
+2008-01-14  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in (gh_manager::do_make_graphics_handle,
+	gh_manager::make_graphics_handle): New boolean parameter
+	do_createfcn.
+	* graphics.cc (xcreatefcn): New static function.
+	(gh_manager::do_make_graphics_handle): New boolean parameter
+	do_createfcn.  Execute createfcn callback accordingly.
+	(make_graphics_object, F__go_figure__): Use do_createfcn
+	parameter and call xcreatefcn
+
+	* genprops.awk (emit_get_callback): Pass user data to execute method.
+	* graphics.cc (execute_callback): New static function.
+	(callback_property::validate): Make it work.
+	(callback_property::execute): Make it work.
+	(gh_manager::do_free): Execute delete function here.
+	* graphics.h.in (callback_property::execute): Fix decl.
+	(base_properties::buttondownfcn, base_properties::createfcn,
+	base_properties::deletefcn, base_properties::userdata): Default
+	value is empty Matrix, not undefined octave_value object.
+	(base_properties::execute_createfcn): New function.
+	(base_properties::execute_deletefcn): New function.
+
+2007-12-13  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in, graphics.cc (class base_properties): New
+	properties: busyaction, buttondownfcn, clipping, createfcn,
+	deletefcn, handlevisibility, hittest, interruptible, selected,
+	selectionhighlight, uicontextmenu, userdata, visible.
+	(class figure): Delete visible property.
+
+2008-01-13  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* graphics.h.in: Sprinkle with OCTINTERP_API as needed.
+	(axes::properties::xaxislocation): Allow value of zero.
+	(axes::properties::yaxislocation): Likewise.
+
+2008-01-12  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* Makefile.in (distclean): Delete graphics-props.cc.
+
+	* genprops.awk: Handle new graphics property classes.
+
+	* graphics.h.in, graphics.cc: Adapt for new specific property types.
+
+2008-01-12  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Add GNUPLOT to the struct.
+	* oct-conf.h.in (OCTAVE_CONF_GNUPLOT): New macro.
+
+2008-01-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Undo part of change from
+	2007-09-04 (compute Y at each iteration).
+
+2008-01-10  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Doc fix.
+	(hybrd_info_to_fsolve_info): Swap return values for -1 and -2 inputs.
+
+	* DLD_FUNCTIONS/__gnuplot_raw__.l: Delete.
+	* Makefile.in (DLD_XSRC): Remove it from the list.
+	(BUILT_DISTFILES): Remove __gnuplot_raw__.cc from the list.
+	(stamp-prereq): Don't depend on __gnuplot_raw__.cc.
+	(maintainer-clean): Don't remove __gnuplot_raw__.cc.
+	(__gnuplot_raw__.cc): Delete target.
+	(__gnuplot_raw__.o, pic/__gnuplot_raw__.o): Delete targets.
+
+	* mex.cc (calc_single_subscript_internal): New static function.
+	(mxArray_octave_value::calc_single_subscript): Use it.
+	(mxArray_matlab::calc_single_subscript): Use it.
+
+2008-01-07  John W. Eaton  <jwe@octave.org>
+
+	* pt-except.cc (tree_try_catch_command::eval):
+	Set Vdebug_on_error and Vdebug_on_warning to false while executing
+	try block.
+
+	* error.cc (Vdebug_on_error, Vdebug_on_warning): No longer static.
+	* error.h: Provide decls.
+
+	* gripes.cc (gripe_wrong_type_arg (const std::string&, const
+	octave_value&, bool)): New function.
+	* gripes.h: Provide decl.
+
+	* oct-stream.cc (printf_value_cache::printf_value_cache):
+	Reject structs, cells, objects, and lists.
+	(octave_base_stream::do_printf): Quit early if printf_value_cache
+	constructor fails.
+
+	* parse.y (make_anon_fcn_handle): Don't attempt to convert
+	expression to assignment to __retval__.
+
+2008-01-07  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ov-builtin.h (octave_builtin): Tag with OCTINTERP_API.
+	* ov-dld-fcn.h (octave_dld_function): Likewise.
+
+	* ov-dld-fcn.cc (octave_dld_function::create): New function.
+	* ov-dld-fcn.h: Provide decl.
+	* defun.h (DEFINE_FUNX_INSTALLER_FUN3): Call it instead of
+	creating a new octave_dld_function object directly.
+
+2008-01-04  John Swensen  <jpswensen@comcast.net>
+
+	* debug.cc (bp_table::do_remove_all_breakpoints_in_file):
+	Avoid calling erase on invalid bp_map iterators.
+	(bp_table::do_remove_breakpoint): Only try to delete breakpoints
+	if some exist.  Avoid calling erase on invalid bp_map iterators.
+	(parse_dbfunction_params): Return early if ARGS is empty.
+	New arg, WHO.  Change all uses.
+	Accept but do nothing with struct args.
+
+2008-01-04  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* variables.cc (Fclear): Doc fix.
+
+2008-01-04  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table:pop_scope): Avoid accessing beyond end of
+	scope_stack.
+
+2008-01-04  David Bateman  <dbateman@free.fr>
+
+	* ov-mapper.cc (SPARSE_MAPPER_LOOP_2): Use data method instead of
+	elem in the case where F(0) is non-zero.
+
+2007-12-28  John W. Eaton  <jwe@octave.org>
+
+	Merge changes from object branch:
+
+	2007-12-12  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::dir_info::get_file_list,
+	load_path::move_method_map, load_path::remove_method_map,
+	load_path::do_find_fcn, load_path::do_find_private_fcn,
+	load_path::do_find_method, load_path::do_find_file,
+	load_path::do_find_first_of, load_path::do_find_all_first_of,
+	load_path::do_display, load_path::add_to_method_map, genpath,
+	execute_pkg_add_or_del): Use file_ops::concat.
+
+	2007-08-24  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (Fmislocked): return value for nargin == 0 case.
+
+	2007-07-27  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.cc (tree_index_expression::rvalue):
+	Pass substring of type to subsref when doing partial evaluation.
+	(tree_index_expression::lvalue): Likewise.
+
+	2007-06-29  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (is_built_in_class, set_class_relationship,
+	Fsuperiorto, Finferiorto): New functions.
+	(octave_class::in_class_method): New function.
+	(octave_class::subsref, octave_class:subsasgn): Use it.
+
+	2007-06-28  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (sanitize): New function.
+	(make_idx_args): Use it.
+
+	2007-06-28  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (octave_class::subsasgn): Expect and use only
+	one return value from feval of subsasgn method.
+
+	* ov.cc (octave_value::assign): Don't convert to struct if
+	indexing a class object with ".".
+
+	* pt-idx.cc (tree_index_expression::make_arg_struct):
+	Use Cell instead of octave_value_list for subscripts.
+
+	* ov-class.cc (make_idx_args): For "." index, subs field is
+	string, not cell.
+
+	2007-06-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
+	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
+	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
+	octave_fcn_handle::load_hdf5): Adapt to new symbol table objects.
+
+	* symtab.h (symbol_table::all_variables,
+	symbol_table::do_all_variables): New arg, defined_only.
+
+	2007-06-26  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_mat5_binary_element): Adapt to new symbol table
+	objects.
+
+	* variables.cc (Vwhos_line_format): New static variable.
+	(Fwhos_line_format): New function.
+	(symbol_record_name_compare): Delete function.
+	(symbol_record_name_compare, whos_parameter): New structs.
+	(print_descriptor, dimensions_string_req_first_space,
+	dimensions_string_req_total_space, make_dimensions_string,
+	parse_whos_line_format, print_symbol_info_line): New static
+	functions, adapted from old symbol table class.
+	(do_who): Adapt to new symbol table objects.
+
+	* symtab.h (symbol_table::glob_variables): New functions.
+	(symbol_table::do_glob): New argument, vars_only.  Change all uses.
+
+	2007-06-22  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::help_for_dispatch):
+	New function.
+	* symtab.h: Provide decl.
+	(symbol_table::fcn_info::help_for_dispatch,
+	symbol_table::help_for_dispatch): New functions.
+
+	* help.cc (help_from_symbol_table): Call
+	symbol_table::help_for_dispatch instead of
+	extract_help_from_dispatch.
+
+	* help.cc (extract_help_from_dispatch): Delete.
+	* help.h: Delete decl.
+
+	2007-06-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dispatch.cc (class octave_dispatch): Delete class.
+	(builtin, any_arg_is_magic_colon, dispatch_record): Delete functions.
+	(Fbuiltin, Fdispatch): Adapt to new symbol table objects.
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::print_dispatch):
+	New function.
+	* symtab.h: Provide decl.
+	(symbol_table::fcn_info::print_dispatch, symbol_table::print_dispatch):
+	New functions.
+
+	* symtab.h (symbol_table::fcn_info::fcn_info_rep::clear_dispatch,
+	symbol_table::fcn_info::clear_dispatch, symbol_table::clear_dispatch):
+	New functions.
+
+	* symtab.h (symbol_table::fcn_info::fcn_info_rep::get_dispatch,
+	symbol_table::fcn_info::get_dispatch, symbol_table::get_dispatch):
+	New functions.
+
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find):
+	Use leftmost class argument as dispatch type, or first argument if
+	there are no class arguments.
+
+	2007-06-20  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (Vprint_answer_id_name, Fprint_answer_id_name): Delete.
+	(octave_base_value::print_with_name): Always print name.
+
+	* ov-base.cc (Vsilent_functions): No longer static.
+	* ov-base.h: Provide decl.
+
+	* ov-class.cc (Fmethods): Define as command.
+
+	* ov-class.cc (octave_class::print): Simply call print_raw.
+
+	* ov-class.cc (octave_class::print_with_name): New function.
+	* ov-class.h: Provide decl.
+
+	2007-06-19  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (octave_value::do_unary_op, octave_value::do_binary_op):
+	Handle class methods.
+
+	* ov.cc (octave_value::unary_op_fcn_name,
+	octave_value::binary_op_fcn_name): New functions.
+	* ov.h: Provide decls.
+
+	* ov-typeinfo.cc (octave_value_typeinfo::register_unary_class_op,
+	octave_value_typeinfo::register_binary_class_op,
+	octave_value_typeinfo::do_register_unary_class_op,
+	octave_value_typeinfo::do_register_binary_class_op,
+	octave_value_typeinfo::do_lookup_unary_class_op,
+	octave_value_typeinfo::do_lookup_binary_class_op): New functions.
+	* ov-typeinfo.h: Provide decls.
+
+	* ov-typeinfo.h (octave_value_typeinfo::unary_class_op_fcn,
+	octave_value_typeinfo::binary_class_op_fcn): New typedefs.
+	(octave_value_typeinfo::unary_class_ops,
+	octave_value_typeinfo::binary_class_ops): New data members.
+	(octave_value_typeinfo::octave_value_typeinfo): Initialize them.
+	(octave_value_typeinfo::lookup_unary_class_op,
+	octave_value_typeinfo::lookup_binary_class_op): New functions.
+
+	* OPERATORS/op-class.cc: New file.
+	* Makefile.in (OP_XSRC): Add it to the list.
+
+	* ov.cc (install_types): Call octave_class::register_type here.
+
+	* ov-class.h (octave_class): Implement by containing a map object
+	instead of deriving from octave_struct.
+	* ov-class.cc (octave_class::subsref, octave_class::subsasgn):
+	Don't use octave_class implementation as default action.
+
+	* ov.h, ov.cc (octave_value::octave_value (const Octave_map&, const
+	std::string&)): New constructor.
+
+	2007-06-18  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (octave_class::subsref, octave_class::subsasgn):
+	Handle dispatch to user-defined methods.
+
+	* parse.y (load_fcn_from_file): New arg, dispatch_type.
+	Change all uses.
+
+	* ov-fcn.h (octave_function::is_class_constructor,
+	octave_function::is_class_method, octave_function::dispatch_class):
+	New virtual functions.
+
+	* ov-usr-fcn.h (octave_user_function::dispatch_class,
+	octave_usr_function::stash_dispatch_class): New functions.
+	(octave_usr_fucntion::xdispatch_class): New data member.
+	* parse.y (frob_function): Call stash_dispatch_class here.
+
+	* ov-struct.cc (Ffieldnames): Also handle objects.
+
+	* ov-class.cc (Fmethods): New function.
+	* load-path.cc (load_path::do_methods): New function.
+	* load-path.h (load_path::methods): New function.
+
+	* ov.h (octave_value::is_object): New function.
+	* ov-base.h (octave_base_value::is_object): New virtual function.
+	* ov-class.h (octave_class::is_object): New function.
+	* ov-class.cc (Fisobject): New function.
+
+	2007-06-15  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (octave_class::print): Call display method if found.
+
+	* symtab.h (symbol_table::fcn_info::find_method): New function.
+	(symbol_table::find_method): New function.
+	(symbol_table::fcn_info::fcn_info_rep::find_method): Provide decl.
+	* symtab.cc (symbol_table::fcn_info::fcn_info_rep::find_method):
+	New function.
+	(symbol_table::fcn_info::fcn_info_rep::find): Use it.
+
+	2007-06-14  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_table::clear_mex_functions): Make it work.
+	(symbol_table::fcn_info::fcn_info_rep::clear_mex_function,
+	symbol_table::fcn_info::clear_mex_function): New functions.
+
+	2007-06-08  John W. Eaton  <jwe@octave.org>
+
+	* defun.cc (Falias): Delete.
+
+	* variables.cc (load_fcn_try_ctor): New function.
+	(lookup): call load_fcn_try_ctor instead of load_fcn_from_file.
+
+	* variables.cc, variables.h (at_top_level, lookup_by_name, lookup,
+	initialize_symbol_tables, fcn_out_of_date, symbol_out_of_date,
+	lookup_function, lookup_user_function, link_to_global_variable,
+	link_to_builtin_or_function, force_link_to_function, Fdocument,
+	is_local_variable, do_clear_all, do_clear_functions,
+	do_clear_globals, do_clear_variables, do_clear_function,
+	do_clear_global, do_clear_variable, do_clear_symbol,
+	do_clear_function_pattern, do_clear_global_pattern,
+	do_clear_variable_pattern, do_clear_symbol_pattern,
+	clear_function, clear_variable, clear_symbol):
+	Delete (some functionality moved to the new symtab.cc and some is
+	no longer needed).
+	(Fignore_function_time_stamp): Move to symtab.cc.
+
+	* lex.l (lookup_identifier): Delete.
+
+	* parse.y (is_function_file): New function.
+	(load_fcn_from_file): Return pointer to octave_function, not bool.
+
+	* ov-usr-fcn.h, ov-usr-fcn.cc (octave_user_function::argn_sr,
+	octave_user_function::nargin_sr, octave_user_function::nargout_sr,
+	octave_user_function::varargin_sr): Delete data members.
+	(octave_user_function::install_automatic_vars): Delete.
+	(octave_user_script::do_multi_index_op): New function.
+
+	* ov-fcn.h (octave_function::locked, octave_function::my_dir_name):
+	New data members.
+	(octave_function::dir_name, octave_function::stash_dir_name,
+	octave_function::lock, octave_function::unlock,
+	octave_function::islocked): New functions.
+
+	* of-fcn-handle.h, ov-fcn-handle.cc (octave_fcn_handle::subsref):
+	Call out_of_date_check here to simplify time stamp checking.
+	(octave_fcn_handle::reload_warning): Delete.
+
+	* ov.h (octave_value::is_user_script, octave_value::is_user_function):
+	New functions.
+	* ov-base.h (octave_base_value::is_user_script,
+	octave_base_value::is_user_function): New pure virtual functions.
+	* ov-fcn.h (octave_function::is_user_script,
+	octave_function::is_user_function): Delete.
+
+	* load-save.cc (install_loaded_variable): Greatly simplify.
+
+	* load-path.h, load-path.cc: Change private_fcn_file to private_file.
+	(load_path::private_fcn_map): New data member.
+	(load_path::do_add, load_path::do_remove, load_path::do_update):
+	Also manage private_file_map here.
+	(load_path::add_to_private_fcn_map): New function.
+	(load_path::remove_private_fcn_map): New function.
+	(load_path::do_find_private_fcn): Make it work.
+	(get_file_list): New function.
+	(load_path::do_display): Use it.  Display private map.
+	(load_path::find_method, load_path::find_fcn): Handle directory name.
+
+	* token.cc, token.h, toplev.cc, debug.cc, defun.cc, defun-dld.h,
+	defun-int.h, error.cc, help.cc, load-save.h, load-save.cc, mex.cc,
+	octave.cc, ov-fcn-handle.cc, ov-usr-fcn.cc, parse.h, parse.y,
+	lex.l, variables.cc: Adapt to new symbol table objects (my
+	apologies for the lack of detail).
+
+	* unwind-prot.h (unwind_protect::add): Set default value for ptr arg.
+
+	* pt-stmt.cc (tree_statement::eval): Rework method for deciding
+	whether to assign value to ans.
+
+	* pt-idx.cc (tree_index_expression::rvalue):
+	Looking up symbol may evaluaate first args now.
+
+	* pt-id.h, pt-id.cc (tree_identifier::document,
+	tree_identifier::is_defined, tree_identifier::define,
+	tree_identifier::is_function, tree_identifier::lookup,
+	tree_identifier::link_to_global): Delete.
+	(tree_identifier::do_lookup): Simplify.
+	(tree_identifier::rvalue): Looking up symbol can't execute script now.
+
+	* pt-misc.cc (tree_parameter_list::initialize_undefined,
+	tree_parameter_list::is_defined): Call is_variable for elt, not
+	is_defined.
+
+	* pt-fcn-handle.h (tree_anon_fcn_handle::fcn): Now pointer to
+	octave_user_function, not value.  Change all uses.
+
+	* pt-decl.h (tree_decl_command::initialized): Delete data member.
+	(tree_decl_elt::is_variable): New function.
+	* pt-decl.cc: Fix all uses of tree_decl_command::initialized.
+
+	* ls-hdf5.cc, ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc,
+	ls-oct-ascii.cc, ls-oct-binary.cc, input.cc: Don't include symtab.h.
+
+	* dynamic-ld.h, dynamic-ld.cc (octave_dynamic_loader::load_oct,
+	octave_dynamic_loader::load_mex, octave_dynamic_loader::do_load_oct,
+	octave_dynamic_loader::do_load_mex): Adapt to new symbol table
+	objects.  Return pointer octave_function instead of bool.
+
+	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Disable for now.
+	Disable code that works with old symbol tables.
+	(Fbuiltin): Simply call symbol_table::add_dispatch.
+
+	* pt-arg-list.cc, pt-arg-list.h, pt-assign.cc, pt-assign.h,
+	pt-binop.cc, pt-binop.h, pt-bp.h, pt-cell.cc, pt-cell.h,
+	pt-cmd.cc, pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc,
+	pt-const.h, pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h,
+	pt-exp.h, pt-fcn-handle.cc, pt-fcn-handle.h, pt-id.cc, pt-id.h,
+	pt-idx.cc, pt-idx.h, pt-jump.cc, pt-jump.h, pt-loop.cc, pt-loop.h,
+	pt-mat.cc, pt-mat.h, pt-misc.cc, pt-misc.h, pt-select.cc,
+	pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc, pt-unop.h:
+	Adapt dup functions to use scope instead of symbol_table objects.
+
+	* TEMPLATE-INST/Array-sym.cc: Delete.
+	* Makefile.in (TI_XSRC): Remove it from the list.
+
+	* symtab.h, symtab.cc: Replace with new versions.
+
+	2007-05-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-lvalue.cc, oct-lvalue.h (octave_lvalue::chg_fcn): Delete.
+	Fix all uses.
+
+	2007-05-15  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_private_function): New function.
+	* load-path.h (load_path::do_find_private_function): Provide decl.
+	(load_path::find_private_function): New function.
+
+	2007-05-08  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.cc (tree_index_expression::rvalue): Handle dispatch here.
+
+	* pt-id.cc (tree_identifier::is_variable, tree_identifier::lookup):
+	New functions.
+	* pt-id.cc: Provide decls.
+
+	* parse.y (current_class_name): New global variable.
+	* parse.h: Provide decl.
+
+	* parse.y (load_fcn_from_file, parse_fcn_file):
+	New arg, dispatch_type.
+	(parse_fcn_file): Protect current_class_name and set it to
+	dispatch_type before parsing function.
+	(load_fcn_from_file): If dispatch_type is not empty, call
+	load_path::find_method instead of load_path::find_fcn.
+	* parse.h: Fix decls for extern functions.
+
+	* lex.h (lexical_feedback::parsing_class_method): New data member.
+	* lex.l (lexical_feedback::init): Initialize it.
+	(lookup_identifier): Check it and set sym_name accordingly.
+
+	* ov-usr-fcn.h (octave_user_function::mark_as_class_constructor,
+	octave_user_function::is_class_constructor,
+	octave_user_function::mark_as_class_method,
+	octave_user_function::is_class_method): New functions.
+	(octave_user_function::class_constructor,
+	octave_user_function::class_method): New data members.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Initialize them.
+
+	* load-path.h, load-path.cc: Use typedefs to simplify template decls.
+	Use fcn consistently instead of function.
+
+	2007-05-03  John W. Eaton  <jwe@octave.org>
+
+	* ov-class.cc (Fclass): Move here.
+	* ov-typeinfo.cc: From here.
+
+	* input.cc (octave_gets): Call load_path::update if user input
+	contains something other than one of the characters " \t\n\r".
+
+	* ov-class.cc, ov-class.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* load-path.cc (genpath): Skip directories beginning with "@".
+	(load_path::dir_info::get_file_list):  Don't return anything.
+	Call get_private_function_map here.
+	(load_path::dir_info::initialize): Not here.
+	(load_path::dir_info_::get_method_file_map): New function.
+	(load_path::method_map): New data member.
+	(load_path::do_clear): Also clear method_map.
+	(load_path::do_add): Also call add_to_method_map.
+	(load_path::do_update): Also clear method_map and call
+	(load_path::do_find_method): New function.
+	(load_path::do_add_to_method_map): New function.
+	(load_path::move_fcn_map, load_path::move_method_map): New functions.
+	(load_path::move): Use them.
+	(load_path::remove_fcn_map, load_path::remove_method_map):
+	New functions.
+	(load_path::remove): Use them.
+	* load-path.h: Provide/fix decls.
+	(load_path::find_method): New static function.
+
+	* Makefile.in (%.df : %.cc): Use mv instead of
+	$(simple-move-if-change-rule).
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+	* version.h (OCTAVE_VERSION): Now 3.0.0.
+	(OCTAVE_API_VERSION): Now api-v32.
+	(OCTAVE_RELEASE_DATE): Now 2007-12-21.
+
+2007-12-19  Thomas Kasper  <ThomasKasper@gmx.net>
+
+	* OPERATORS/op-scm-cs.cc (DEFBINOP (pow)): Extract complex value
+	from second arg.
+
+2007-12-12  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): Check for scalar arguments
+	for 2 argument version.
+
+2007-12-12  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (class axes) Add the layer property.
+	* graphics.cc (class axes) Ditto.
+
+	* graphics.cc (gh_manager::get_handle): Use ceil instead of trunc.
+
+2007-12-11  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.19+.
+
+2007-12-11  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.19.
+	(OCTAVE_API_VERSION): Now api-v31.
+	(OCTAVE_RELEASE_DATE): Now 2007-12-11.
+
+	* graphics.cc (make_graphics_object):
+	If successful, call __request_drawnow__.
+
+	* input.cc (Vgud_mode): New static variable.
+	(F__gud_mode__): New function.
+	(get_user_input): If debug and Vgud_mode, print location info in
+	format for Emacs GUD mode.
+
+2007-12-11  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
+	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc: Privilege
+	conversion to dense matrices for compatibility.
+
+	* DLD-FUNCTIONS/sparse.cc (FSparse): Remove the mutate flag, as
+	default bahavior is now to keep matrix sparse always.
+
+	* graphics.cc (axes::properties::properties):
+	Initialize xcolor, ycolor, and zcolor to (0, 0, 0).
+
+	* graphics.h.in (gh_manager::next_handle): Now double.
+	* graphics.cc (gh_manager::get_handle, gh_manager::gh_manager):
+	Set fractional part of next_handle to a random value.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::all_strings): Handle empty elements.
+	Handle N-d cell arrays.
+
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve):
+	For compatibility, return [x, fval, info] instead of [x, info, msg].
+ 	Move tests here from test/test_nonlin.m.
+
+	* OPERATORS/op-cm-s.cc: Define function for el_mul with
+	DEFNDBINOP_OP, not DEFBINOP_OP.
+
+	* OPERATORS/op-s-cm.cc: Define functions for el_and and el_or
+	operators with DEFNDBINOP_FN.
+
+	* oct-hist.cc (default_history_file): Use file_ops::concat.
+	* load-path.cc (dir_info::initialize, dir_info::get_file_list,
+	load_path::do_find_fcn, load_path::do_find_file, genpath,
+	execute_pkg_add_or_del, load_path::do_find_first_of,
+	load_path::do_find_all_first_of): Likewise.
+
+	* help.cc (Flookfor): Avoid doubling directory separator.
+	* dirfns.cc (Fmkdir): Likewise.
+
+	* pt-mat.cc (tree_matrix::rvalue): Produce sq_string if any
+	strings are sq_string objects.
+
+2007-12-10  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (data_property::data): Declare as NDArray instead
+	of Matrix.  Change all uses.
+
+2007-12-10  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (class figure) Add the color property.
+	* graphics.cc (class figure) Ditto.
+
+2007-12-07  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fnorm): Don't return a scalar stored as a sparse
+	matrix. Convert it to a scalar.
+
+	* graphics.cc (check_limit_val): Delete.
+	(check_limit_vals): Simplify and no longer use check_limit_val.
+
+2007-12-05  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.18+.
+
+2007-12-05  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.18.
+	(OCTAVE_API_VERSION): Now api-v30.
+	(OCTAVE_RELEASE_DATE): Now 2007-12-05.
+
+2007-12-04  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (INCLUDES): Add builtins.h to the list.
+
+	* oct-hist.cc (default_history_file): Use += instead of
+	push_back to append character to std::string object.
+
+	* Makefile.in (LIBDLFCN): Delete all uses.
+
+	* toplev.cc (octave_config_info): Remove LIBDLFCN and
+	DLFCN_INCFLAGS from the list.
+	* oct-conf.h.in (OCTAVE_CONF_DLFCN_INCFLAGS, OCTAVE_CONF_LIBDLFCN):
+	Delete.
+
+	* error.cc (Ferror): Handle error id.
+
+	* load-save.cc (Fsave, Fload): Doc fixes.
+	From Marco Caliari <caliari@sci.univr.it>.
+
+2007-12-04  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h.in (base_properties::get_type
+	base_properties::get___modified__,
+	base_properties::get___myhandle__): New functions.
+
+2007-12-04  Christoph Mayer  <Christoph.Mayer@dlr.de>.
+
+	* toplev.h (clean_up_and_exit, recover_from_exception,
+	do_octave_atexit, global_command, curr_parent_function):
+	Tag with OCTINTERP_API.
+
+2007-12-03  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/luinc.cc: Make tests conditional on HAVE_UMFPACK.
+	* DLD-FUNCTIONS/spqr.cc: Make tests conditional on HAVE_CXSPARSE.
+
+	* DLD-FUNCTIONS/regexp.cc: Use "%!testif" blocks for conditional
+	tests on PCRE.
+
+	* graphics.cc (class axes): Add color and activepositionproperty
+	properties to axis objects.
+	* graphics.h.in (class axes): ditto.
+
+	* DLD-FUNCTIONS/regexp.cc: Also include sys/types.h for regexp.
+
+2007-11-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/sort.cc (operator < (const Complex&, const Complex&),
+	operator > (const Complex&, const Complex&)):
+	Pass args by const reference, not value.
+
+	* data.cc, matherr.c, pr-output.cc, sysdep.cc,
+	DLD-FUNCTIONS/__dsearchn__.cc, DLD-FUNCTIONS/minmax.cc,
+	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/sort.cc,
+	DLD-FUNCTIONS/tsearch.cc: Include lo-math.h instead of cmath
+	or math.h.
+
+2007-11-30  Moritz Borgmann  <octave@moriborg.de>
+
+	* ls-mat5.h (mat5_data_type): Delete trailing comma in enum decl.
+	* oct-stream.cc (octave_base_stream::do_printf): Use
+	OCTAVE_EMPTY_CPP_ARG to avoid annoying Sun compiler warning.
+	* OPERATORS/op-sbm-sbm.cc (DEFDBLCONVFN): Delete useless macro
+	invocation.
+
+	* DLD-FUNCTIONS/typecast.cc (typecast): No longer static.
+
+2007-11-30  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (updating_axis_limits): New static variable.
+	(check_limit_val, check_limit_vals, get_axis_limits): New functions.
+	(axes::update_axis_limits): Make it work.
+	* graphics.h.in (base_properties::get_children): New function.
+	(base_properties::get_xdata, base_properties::get_ydata,
+	base_properties::get_zdata, base_properties::get_ldata,
+	base_properties::get_udata, base_properties::get_xldata,
+	base_properties::get_xudata, base_properties::get_cdata,
+	base_properties::get_properties (void) const):
+	New virtual functions.
+	(graphics_object::get_xdata, graphics_object::get_ydata,
+	graphics_object::get_zdata, graphics_object::get_ldata,
+	graphics_object::get_udata, graphics_object::get_xldata,
+	graphics_object::get_xudata, graphics_object::get_cdata,
+	graphics_object::get_properties (void) const,
+	root_figure::get_properties (void) const,
+	figure::get_properties (void) const,
+	axes::get_properties (void) const,
+	line::get_properties (void) const,
+	text::get_properties (void) const,
+	image::get_properties (void) const,
+	patch::get_properties (void) const,
+	surface::get_properties (void) const)): New functions.
+	(radio_property::radio_property (const radio_values&)):
+	Provide	default value for argument.
+	(radio_property::radio_property (const radio_values&, const
+	std::string&)): Delete.
+	(axes::xlimmode, axes::ylimmode, axes::zlimmode, axes::climmode,
+	axes::xscale, axes::yscale, axes::zscale): Declare as
+	radio_property instead of octave_value values.  Adjust all uses.
+
+2007-11-29  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (octave_print_internal_template (std::ostream&,
+	const octave_int<T>&, bool)): Rename from octave_print_internal.
+	(PRINT_INT_SCALAR_INTERNAL): New macro.  Use it to define
+	non-template functions for printing scalar octave_int values.
+	(octave_print_internal_template (std::ostream&, const intNDArray<T>&,
+	bool, int)): Rename from octave_print_internal.
+	(PRINT_INT_ARRAY_INTERNAL): New macro.  Use it to define
+	non-template functions for printing scalar octave_int values.
+	* pr-output.h: Declare non-template functions for printing
+	octave_int scalar and array values.
+	Delete declarations of template funtions for printing octave_int
+	scalar and array values.
+
+2007-11-28  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (base_properties::update_axis_limits,
+	axes::update_axis_limits): New functions.
+	* graphics.h.in (class data_property): New class.
+	(graphics_object::update_axis_limits): New function.
+	(base_graphics_object::update_axis_limits): New virtual function.
+	(base_properties::update_axis_limits, axes::update_axis_limits):
+	Provide decls.
+	(class line, class image, class patch, class surface): Use it
+	instead of octave_value for data properties.  Tag data properties
+	with "l" modifier.
+	(class axes): Tag scale properties with "l" modifier.
+	* genprops.awk: Handle "l" modifier.
+
+	* mkbuiltins: Emit #include "builtins.h" for the builtins.cc file.
+	From Christoph Mayer <Christoph.Mayer@dlr.de>.
+
+	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
+	Delete.
+
+	* Cell.cc (Cell::Cell (const dim_vector&, const string_vector&, bool)):
+	Initialize undefined values to resize_fill_value ().
+
+2007-11-27  John W. Eaton  <jwe@octave.org>
+
+	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
+	Tag inline.  From Moritz Borgmann <octave@moriborg.de>.
+
+	* pt-bp.cc (tree_breakpoint::visit_decl_command): Also check line
+	number of cmd.
+	* pt-decl.cc (tree_global_command::eval, tree_static_command::eval):
+	Insert MAYBE_DO_BREAKPOINT here.
+
+	* error.cc (Fwarning): If setting state "all" to "error", leave
+	Octave:matlab-incompatible and Octave:single-quote-string warning
+	states unchanged.
+	(warning_enabled): Allow individual warning states to override
+	"warning error all".
+
+	* octave.cc (execute_eval_option_code, execute_command_line_file):
+	Handle interrupts.
+	* toplev.cc (recover_from_exception): Now extern.
+	* toplev.h (recover_from_exception): Provide decl.
+
+	* pt-idx.cc (tree_index_expression::lvalue): Treat object == []
+	the same as undefined.
+
+2007-11-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (DO_DOUBLE_CONV): Always use long.
+
+	* oct-stream.cc (do_write): Call float_value and double_value on
+	octave_int<T> objects instead of relying on conversion operators.
+
+	* ls-mat5.cc (read_mat5_binary_element, OCTAVE_MAT5_INTEGER_READ):
+	Call double_value on octave_int<T> objects
+	instead of relying on conversion operator.
+	(read_mat5_binary_file_header):
+	Call char_value on octave_int<T> objects
+	instead of relying on conversion operator.
+	(read_mat5_binary_element):
+	Call bool_value on octave_int<T> objects
+	instead of relying on conversion operator.
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::double_value,
+	OCTAVE_VALUE_INT_MATRIX_T::scalar_value,
+	OCTAVE_VALUE_INT_MATRIX_T::matrix_value,
+	OCTAVE_VALUE_INT_MATRIX_T::complex_matrix_value,
+	OCTAVE_VALUE_INT_MATRIX_T::array_value,
+	OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::double_value,
+	OCTAVE_VALUE_INT_SCALAR_T::scalar_value,
+	OCTAVE_VALUE_INT_SCALAR_T::matrix_value,
+	OCTAVE_VALUE_INT_SCALAR_T::complex_matrix_value,
+	OCTAVE_VALUE_INT_SCALAR_T::array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::complex_array_value,
+	Call double_value on octave_int<T> objects
+	instead of relying on conversion operator.
+	(OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value):
+	Call bool_value on octave_int<T> objects
+	instead of relying on conversion operator.
+	(OCTAVE_VALUE_INT_MATRIX_T::char_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::char_array_value):
+	Call char_value on octave_int<T> objects
+	instead of relying on conversion operator.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* Sparse-op-defs.h (SPARSE_BASE_REDUCTION_OP): Check that the fill
+	value is not zero before creating the matrices.
+
+	* graphics.cc (class axes): Add the {x|y|z}color color property.
+	* graphics.h.in (class axes): ditto.
+
+	* ov-base.cc (Vsparse_auto_mutate, Fsparse_auto_mutate): New
+	internal variable and built-in function to set it.
+	* ov-base.h (extern bool Vsparse_auto_mutate): Export internal
+	variable to other functions.
+	* ov-re-sparse.cc (octave_sparse_matrix::try_narrowing_conversion
+	(void)), ov-cx-sparse.cc
+	(octave_sparse_complex_matrix::try_narrowing_conversion (void)),
+	ov-bool-sparse.cc
+	(octave_sparse_bool_matrix::try_narrowing_conversion (void)):
+	Use Vsparse_auto_mutate flag to determine whether to convert
+	sparse matrices to full matrices if that saves space.
+
+	* DLD-FUNCTIONS/minmax.cc (MINMAX_DOUBLE_BODY): New version of
+	MINMAX_BODY macro without the initialization.
+	(MINMAX_INT_BODY): Macro for min/max for the integer types
+	(MINMAX_BODY): New macro that calls the appropriate instantiation
+	of the other two macros.
+
+	* graphics.cc (class axes): Add __colorbar__ property.
+	* graphics.h.in (class axes): ditto.
+
+	* data.cc (Fnorm): Document the "inf" string argument for matrice
+	and vectors and the "fro" argument for vectors.
+
+	* graphics.h.in (class figure): Add __enhanced__ property to cache
+	whether the terminal supports enhanced mode. Add interpreter
+	property to all text classes, to determine the renderer for the
+	text.
+	* graphics.cc (class figure): ditto.
+
+2007-11-26  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (string_properties): delete class
+	(property_name): rename class to caseless_str.
+	(radio_values::possible_vals): change type to caseless_str.
+
+2007-11-26  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* builtins.h (install_builtins): Tag with OCTINTERP_API.
+	* toplev.h (octave_interpreter_ready, octave_initialized): Likewise.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mex::foreign_memlist): New data member.
+	(mex::mark_foreign, mex::unmark_foreign): New functions.
+	(mex::free): Don't warn about pointers found in foreign_memlist.
+	(maybe_mark_foreign): New function.
+	(mxArray_octave_value::get_data, mxArray_octave_value::get_ir,
+	mxArray_octave_value::get_jc):
+	Call maybe_mark_foreign on returned pointer.
+
+2007-11-14  David Bateman  <dbateman@free.fr>
+
+	* mex.cc (mxArray_sparse::mxArray_sparse (const mxArray_sparse&)):
+	Also ensure that pr and pi are correctly copied.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (@bsd_gcc_kluge_targets_frag@): Delete line for
+	Makefrag.bsd substitution.
+
+	* graphics.h.in (base_properties::tag): New property.
+	(base_properties::get_tag, base_properties::set_tag): New functions.
+	(root_figure::set, root_figure::get, figure::set, figure::get,
+	axes::set, axes::get, line::set, line::get, text::set, text::get,
+	patch::set, patch::get, surface::set, surface::get): Handle tag.
+
+2007-11-14  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* DLD-FUNCTIONS/regexp.cc: Undo previous change.
+
+2007-11-14  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mex::mark, mex::unmark): Now public.
+	(mex::persistent): Delete.
+	(mexMakeArrayPersistent): Call maybe_unmark_array instead of
+	mex::persistent.
+	(mexMakeMemoryPersistent): Call maybe_unmark instead of
+	mex::persistent.
+	(maybe_unmark (void *)): New function.
+	(mxSetDimensions, mxSetPr, mxSetPi, mxSetData, mxSetImagData,
+	mxSetIr, mxSetJc): Use it.  From David Bateman.
+
+2007-11-13  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* DLD-FUNCTIONS/rand.cc (Frand): Update URL reference in doc string.
+
+2007-11-12  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in, graphics.cc (class text): Add the fontangle and
+	fontweight properties. Add string_property class to handle the
+	string radio values.
+
+2007-11-12  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.17+.
+
+2007-11-12  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in, graphics.cc (class text): Add the fontname and
+	fontsize properties.
+
+2007-11-10  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.17.
+	(OCTAVE_API_VERSION): Now api-v29.
+	(OCTAVE_RELEASE_DATE): Now 2007-11-10.
+
+2007-11-09  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l: Don't add atexit ("closeplot")
+	to PKG_ADD file.
+
+2007-11-09  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc, graphics.h.in (class patch): Add the field "keylabel".
+
+	* data.cc (Fcputime) [__WIN32__]: Correct scaling of sys and usr times.
+
+	* graphics.cc (is_handle): Handle must be a real scalar.
+
+2007-11-09  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+	* data.cc (Fislogical): Fix typo in documentation entry.
+
+2007-11-08  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__gnuplot_save_data__):
+	Note obsolescence in doc string.
+	(WARN_OBSOLETE): New macro
+	(F__gnuplot_save_data__, Fgnuplot_command_plot,
+	Fgnuplot_command_replot, Fgnuplot_command_splot,
+	Fgnuplot_command_using, Fgnuplot_command_with,
+	Fgnuplot_command_axes, Fgnuplot_command_title,
+	Fgnuplot_command_end, Fgnuplot_use_title_option,
+	F__clear_plot_window__, Fcloseplot, Fpurge_tmp_files,
+	F__gnuplot_raw__, F__gnuplot_send_inline_data__, F__gnuplot_set__,
+	F__gnuplot_show__, F__gnuplot_plot__, F__gnuplot_splot__,
+	F__gnuplot_replot__): Use WARN_OBSOLETE.
+
+2007-11-07  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/regexp.cc: Handle HAVE_PCRE_PCRE_H.  Check
+	HAVE_PCRE_H instead of HAVE_PCRE to decide whether to include pcre.h.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (Fgnuplot_command_plot,
+	Fgnuplot_command_replot, Fgnuplot_command_splot,
+	Fgnuplot_command_using, Fgnuplot_command_with,
+	Fgnuplot_command_axes, Fgnuplot_command_title,
+	Fgnuplot_command_end, Fgnuplot_use_title_option,
+	F__clear_plot_window__, Fcloseplot, Fpurge_tmp_files,
+	F__gnuplot_raw__, F__gnuplot_send_inline_data__, F__gnuplot_set__,
+	F__gnuplot_show__, F__gnuplot_plot__, F__gnuplot_splot__,
+	F__gnuplot_replot__): Note obsolescence in doc string.
+
+2007-11-06  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.h.in (class surface::properties): New properties,
+	cdata, facecolor, facealpha, edgecolor, linestyle,
+	linewidth, marker, markeredgecolor, markerfacecolor, markersize.
+	* graphics.cc (surface::properties::properties,
+	surface::properties::set, surface::properties::get,
+	surface::properties::factory_defaults): Handle new properities.
+
+2007-11-06  David Bateman  <dbateman@free.fr>
+
+	* data.cc (DATA_REDUCTION): Handle the 'native' and 'double'
+	arguments of the Fsum function.
+	* OPERATORS/op-bm-bm.cc (matrix_to_bool_matrix,
+	scalar_to_bool_matrix): New type conversion functions.
+	(install_bm_bm_ops): Install new type conversions functions.
+
+2007-11-06  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* toplev.cc (Fsystem) [__WIN32__ && ! __CYGWIN__]:
+	Quote the complete command.
+
+2007-11-06  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fnorm): New tests.
+
+	* defun-int.h (DEFINE_FUNX_INSTALLER_FUN3): Don't install function
+	if check_version produces an error.
+
+2007-11-05  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.cc (tree_index_expression::lvalue): Try to do a better
+	job of computing the number of elements in lvalue expressions when
+	the last indexing element is ".".
+
+2007-11-02  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (fopen_mode_to_ios_mode): Use std::ios::app instead
+	of std::ios::ate.
+
+2007-11-02  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* input.cc, pr-output.cc, bitfcns.cc, DLD-FUNCTIONS/time.cc:
+	Fix broken @examples in help texts.
+
+2007-10-31  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fnorm): Avoid warning about p_val possibly being used
+	uninitialized.
+
+	* version.h (OCTAVE_VERSION): Now 2.9.16+.
+
+2007-10-31  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.16.
+	(OCTAVE_API_VERSION): Now api-v28.
+	(OCTAVE_RELEASE_DATE): Now 2007-10-31.
+
+2007-10-31  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* pt-assign.h (tree_simple_assignment::op_type,
+	tree_multi_assignment::op_type): New functions.
+	* pt-unop.h (tree_unary_expression::op_type): New function.
+
+2007-10-31  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (line::properties::get): Fix property name
+	(markerface -> markerfacecolor).
+
+	* Makefile.in (INCLUDES): Add debug.h to the list.
+
+2007-10-30  John Swensen  <jpswensen@comcast.net>
+
+	* debug.h: New file.
+	* debug.cc (parse_dbfunction_params, do_find_bkpt_list,
+	intmap_to_ov): New functions.
+	(Fdbstop, Fdbclear): Use parse_dbfunction_params.
+	Improve compatibility.
+	(Fdbstatus): Improve compatibility.
+
+	* help.cc (do_which): No longer static.
+	* help.h: Provide decl.
+
+2007-10-30  David Bateman  <dbateman@free.fr>
+
+	* symtab.cc: Doc fixes for small book format.
+
+2007-10-30  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (fopen_mode_to_ios_mode): Handle 'W' as 'w' and 'R'
+	as 'r', but warn about them.
+
+2007-10-29  Thomas Treichl  <Thomas.Treichl@gmx.net>
+
+	* data.cc: Include sytime.h, sys/types.h, and sys/resource.h.
+
+2007-10-25  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (figure::properties::set_currentaxes):
+	Allow currentfigure to be NaN.
+
+2007-10-25  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* DLD-FUNCTIONS/__contourc__.cc: Use unsigned int instead of uint.
+	(drawcn): Use 1 << k instead of pow (2, k).
+
+2007-10-25  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_record::TYPE): Delete trailing comma in enum decl.
+
+	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Use
+	OCTAVE_EMPTY_CPP_ARG to avoid annoying Sun compiler warning.
+
+	* Makefile.in (graphics.h): Use $(AWK) instead of awk.
+
+	* DLD-FUNCTIONS/time.cc (Ftime, Fmktime): Avoid unnecessary cast.
+
+	* data.cc (Ftic, Ftoc): Call double_value on octave_time objects
+	instead of relying on conversion operator.
+	* ov.cc (octave_value::octave_value (octave_time)): Likewise.
+
+	* variables.cc (symbol_out_of_date): Use explicit conversion to
+	time_t instead of relying on conversion operator.
+	* ov-fcn-handle.cc (octave_fcn_handle::subsref): Likewise.
+
+	* data.cc (tic_toc_timestamp): Rename from __tic_toc_timestamp__.
+	Change all uses.
+
+2007-10-24  David Bateman  <dbateman@free.fr>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::OCTAVE_VALUE_INT_MATRIX_T
+	(const ArrayN<OCTAVE_INT_T>&)): New constructor.
+	* ov.cc (octave_value::octave_value(const ArrayN<T>) with T being
+	octave_int8, octave_uint8, octave_int16, octave_uint16,
+	octave_int32, octave_uint32, octave_int64, octave_uint64): New
+	constructors.
+	* ov.h (octave_value::octave_value(const ArrayN<T>) with T being
+	octave_int8, octave_uint8, octave_int16, octave_uint16,
+	octave_int32, octave_uint32, octave_int64, octave_uint64):
+	Declare them.
+	* DLD-FUNCTIONS/sort.cc (template class octave_sort<T>,
+	template class vec_index<T>, template class
+	octave_sort<vec_index<T> *>,  with T being
+	octave_int8, octave_uint8, octave_int16, octave_uint16,
+	octave_int32, octave_uint32, octave_int64, octave_uint64): New
+	instantiations of sort template classes.
+	(Fsort): Use them.
+
+2007-10-24  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (root_figure::properties::set_currentfigure):
+	Allow currentfigure to be NaN.
+
+	* pt-idx.cc (tree_index_expression::lvalue): Correctly compute
+	number of elements in lvalue expression when last indexing
+	element is ".".
+
+2007-10-23  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (is_handle (const graphics_handle&)): New function.
+	(gh_manager::do_free, reparent, base_properties::set_parent,
+	properties::get_title, properties::get_xlabel,
+	properties::get_ylabel, properties::get_zlabel,
+	properties::remove_child, make_graphics_object, F__go_figure__,
+	F__go_delete__, __go_axes_init__): Call OK on graphics handle
+	object instead of relying on implicit conversion operator.
+	* graphics.h.in (graphics_handle::operator double ()): Delete.
+	(graphics_handle::operator bool ()): Delete.
+	(gh_manager::do_handle_list, gh_manager::do_figure_handle_list,
+	base_properties::adopt): Call VALUE on graphics handle object
+	instead of relying on implicit conversion operator.
+
+	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Call
+	DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2 with "( )" as arg list
+	instead of "()".
+
+	* mxarray.h.in (mxClassID): Delete trailing comma in enum decl.
+
+	* symtab.h (symbol_table::symbol_table): Reduce default table size
+	to 64.
+
+2007-10-22  Kim Hansen  <kimhanse@gmail.com>
+
+	* unwind-prot.cc: Include <cstring>.
+
+2007-10-22  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Ftic, Ftoc, Fcputime): New builtin versions of the
+	benchmarking functions for speed.
+	* oct-map.cc (Octave_map::squeeze, Octave_map::permute): New methods.
+	(Octave_map::index (const octave_value_list&, bool)): Add resize_ok
+	argument, define as const and use const_iterator internally.
+	(Octave_map::index (idx_vector&, ...), Octave_map::index (Array
+	<idx_vector>&, ...)): New forms of the index function.
+	* oct-map.h (squeeze, permute, indx (const octave_value_list&, bool),
+	index (idx_vector&, ...), index (Array <idx_vector>&, ...)): Add
+	or update declaration.
+	* ov-struct.cc (octave_struct::do_index_op (const octave_value_list&,
+	bool)): New method.
+	* ov-struct.h (do_index_op (const octave_value_list&, bool)): Declare
+	it.
+	(squeeze (void), permute (const Arra<int>&, bool): New methods.
+
+2007-10-19  Kai Habel  <kai.habel@gmx.de>
+
+	* DLD-FUNCTIONS/__contourc__.cc (add_point): Rename from
+	cl_add_point.  Change all uses.
+	(end_contour): Rename from cl_end_contour.  Change all uses.
+	(start_contour): Rename from cl_start_contour.  Change all uses.
+	(drawcn): Rename from cl_drawcn.  New algorithm for locating contours.
+	(mark_facets): New function.
+	(cntr): Rename from cl_cntr.  Change all uses.  New algorithm for
+	locating contours.
+
+2007-10-19  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::subsasgn): If RHS is cs-list, don't
+	fail if shape of LHS is different.
+	* ov-struct.cc (octave_struct::subsasgn): Likewise.
+
+2007-10-19  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* help.cc (Flookfor): Call print_usage instead of usage.
+	* DLD-FUNCTIONS/cellfun.cc (Fmat2cell): Likewise.
+
+2007-10-17  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/spchol.cc (Fsymbfact): Delete special code for METIS.
+
+2007-10-17  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Fix check for Wact(j).
+
+2007-10-15  S�ren Hauberg  <hauberg@gmail.com>
+
+	* error.cc (Ferror): Make text fit on pages when using smallbook.
+	* load-save.cc (Fsave_header_format_string): Ditto.
+	* ov-struct.cc (Fcell2struct): Ditto.
+	* DLD-FUNCTIONS/besselj.cc (Fairy): Ditto.
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread): Ditto.
+
+2007-10-15  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (axes::properties::get): Fix typo.
+
+2007-10-13  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.15+.
+
+2007-10-13  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.15.
+	(OCTAVE_API_VERSION): Now api-v27.
+	(OCTAVE_RELEASE_DATE): Now 2007-10-13.
+
+2007-10-13  David Bateman  <dbateman@free.fr>
+
+	* graphics.h.in (class patch): Add the faces and vertices properties.
+	* graphics.cc (patch::properties::properties): Initialize faces
+	and vertices.
+	(patch::properties::get): Also fetch faces and vertices.
+	(patch::properties::factory_defaults): Set faces and vertices.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (urlget): Disable use of EPSV mode.
+
+2007-10-11  Brian Gough  <bjg@network-theory.co.uk>
+
+	* DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/regexp.cc, dirfns.cc,
+	input.cc: Spelling fixes.
+
+2007-10-10  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-sbm-sbm.cc (bool_matrix_to_double_matrix):
+	New conversion function.
+	(install_sbm_sbm_ops): Install it.
+
+	* ov-re-mat.cc (double): Handle sparse as a special case.
+
+2007-10-10  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* data.cc, debug.cc, dirfns.cc, error.cc, file-io.cc, help.cc,
+	load-save.cc, ov-fcn-inline.cc, parse.y, pr-output.cc, symtab.cc,
+	syscalls.cc, toplev.cc, variables.cc, DLD-FUNCTIONS/bsxfun.cc,
+	DLD-FUNCTIONS/cellfun.cc, DLD-FUNCTIONS/fft.cc,
+	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftw.cc,
+	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/lsode.cc,
+	DLD-FUNCTIONS/luinc.cc, DLD-FUNCTIONS/matrix_type.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/regexp.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/spchol.cc,
+	DLD-FUNCTIONS/splu.cc, DLD-FUNCTIONS/spparms.cc: Spelling fixes.
+
+2007-10-10  Kim Hansen  <kimhanse@gmail.com>
+
+	* DLD-FUNCTIONS/lpsolve.cc: Delete.
+	* Makefile.in (DLD_XSRC): Remove it from the list.
+
+	* data.cc (Fsqueeze): Document 2d behaviour.
+	* ov-range.h (octave_range::squeeze): New function.
+
+2007-10-09  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (urlget_cleanup): New function.
+	(urlget): Protect call to curl_easy_perform with
+	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE and
+	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
+
+2007-10-09  David Bateman  <dbateman@free.fr>
+
+	* input.cc (accept_line): Drop this function and remove automatic
+	insertion of closing quotes as the transpose operator confuses it.
+	(initialize_command_input): Remove accept_line from here as well.
+
+2007-10-09  John W. Eaton  <jwe@octave.org>
+
+	* ov-mapper.cc (octave_mapper::apply): If possible, use
+	d_d_map_fcn to handle complex values which have imag(z) == 0.
+
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread) [! HAVE_CURL]:
+	Throw error instead of returning empty string hiding error message
+	in third return value.
+	(progress_func): Delete.
+	(Furlread): Don't set progress callback for curl.
+	(write_data, form_query_string, urlget): Now static.
+
+2007-10-08  David Bateman  <dbateman@free.fr>
+
+	*  input.cc (quoting_filename): Function to add a leading quote to
+	a string if needed.
+	(accept_line): Function to check if a string needs a closing quote
+	before calling the rl_newline function.
+	(initialize_command_input): Initialize completer_quote_characters,
+	filename_quote_characters, quoting_function,
+	user_accept_line_function.
+
+	* data.cc (template <class T> static make_diag (...)): New
+	template class version of make_diag. Make other make_diag
+	functions depend on it.
+	( static octave_value make_diag (const octave_value&,
+	octave_idx_type)): Treat all possible internal Octave types.
+
+2007-10-08  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc 	(save_vars, dump_octave_core):
+	Don't pass INFNAN_WARNED to do_save.
+	(do_save): Delete unused arg, INFNAN_WARNED.
+	Don't pass INFNAN_WARNED to save_ascii_data.
+	* ls-oct-ascii.cc (save_ascii_data_for_plotting):
+	Don't pass INFNAN_WARNED to save_ascii.
+	(save_ascii_data): Delete unused arg, INFNAN_WARNED.
+
+	* ov.h (octave_value::save_ascii): Delete unused arg, INFNAN_WARNED.
+	* ov-base-int.cc (octave_base_int_matrix<T>::save_ascii,
+	octave_base_int_scalar<T>::save_ascii): Likewise.
+	* ov-base-sparse.cc (octave_base_sparse<T>::save_ascii): Likewise.
+	* ov-base.cc (octave_base_value::save_ascii): Likewise.
+	* ov-bool-mat.cc (octave_bool_matrix::save_ascii): Likewise.
+	* ov-bool.cc (octave_bool::save_ascii): Likewise.
+	* ov-cell.cc (octave_cell::save_ascii): Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii): Likewise.
+	* ov-fcn-inline.cc (octave_fcn_inline::save_ascii): Likewise.
+	* ov-list.cc (octave_list::save_ascii): Likewise.
+	* ov-struct.cc (octave_struct::save_ascii): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::save_ascii): Likewise.
+	* ov-range.cc (octave_range::save_ascii): Likewise.
+
+	* ov-scalar.cc (octave_scalar::save_ascii): Remove warning about
+	reloading inf/nan values.  Delete unused arg, INFNAN_WARNED.
+	* ov-complex.cc (octave_complex::save_ascii): Likewise.
+	* ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::save_ascii): Likewise.
+
+	* ov-fcn-inline.cc (Finline): Use DEFUNX instead of DEFUN.
+
+2007-10-08  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* sighandlers.h (can_interrupt): Tag with OCTINERP_API.
+	* sysdep.h (raw_mode, octave_popen, octave_pclose,
+	same_file_internal): Likewise.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_base_stream::do_scanf):
+	Always allow MVAL to re resized if NR > 0.
+	(FINISH_CHARACTER_CONVERSION): Likewise.
+
+	* mappers.cc (install_mapper_functions): Undo previous change.
+	Fix doc string for lgamma.
+	(xzlgamma): Delete.
+
+2007-10-05  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h.in (axes::properties): New property, colororder.
+	* graphics.cc (default_colororder): New function.
+	(axes::properties::properties, axes::properties::get,
+	axes::properties::set_defaults,
+	axes::properties::factory_defaults, ): Handle colororder.
+
+	* mappers.cc (xzlgamma): New static function.
+	(install_mapper_functions): Pass xzlgamma for c_c_map for lgamma
+	mapper.  Pass 1 for can_ret_cmplx_for_real and set hi to
+	octave_Inf.
+
+2007-10-04  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/symrcm.cc: Move static functions to top of file to
+	avoid forward decls.
+	(Q_enq): Delete unused arg QH.  Change all uses.
+	(Q_deq): Delete unused arg QT.  Change all uses.
+	(find_starting_node): Delete unused local variable J.
+	(H_heapify_min, H_insert, find_starting_node, Fsymrcm):
+	Move local variable decls to point of first use.
+
+	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP):
+	Avoid control-reaches-end-of-non-void-function warning.
+
+	* pt-const.cc (tree_constant::dup): Avoid unused parameter warning.
+
+	* pr-output.cc (set_real_format, set_real_matrix_format,
+	set_complex_format, set_complex_matrix_format):
+	Delete unused arg, SIGN.  Change uses.
+
+	* oct-map.cc (Octave_map::Octave_map): Avoid shadow warning.
+
+	* load-save.cc (write_header): Use reinterpret_cast to avoid
+	old-style cast warning.
+
+	* data.cc (do_permute): Delete unused arg, FNAME.  Change all uses.
+
+	* sysdep.cc (w32_set_octave_home, w32_set_quiet_shutdown,
+	MINGW_signal_cleanup):
+	Only define if defined (__WIN32__) && !	defined (_POSIX_VERSION).
+
+2007-10-04  Jason Riedy  <jason@acm.org>
+
+	* ls-mat5.cc (read_mat5_binary_data): Map miUTF16 to miUINT16,
+	miUTF32 to miUINT32.  The matfile format currently states that
+	wide UTF formats are in the same byte order as the integers.
+	(read_mat5_binary_element): Replace all UTF16 and UTF32
+	characters with the high bit set (value >127) by '?' and warn
+	that we've done so.
+
+2007-10-04  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* sysdep.cc (w32_set_octave_home): Base OCTAVE_HOME location on
+	octinterp, not the main exe.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fnorm): New function.
+	(F__vnorm__): Delete.
+
+2007-10-03  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* DLD-FUNCTIONS/typecast.cc: Include <algorithm>.
+
+2007-10-03  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::Octave_map (const dim_vector&,
+	const string_vector&)): Delete.
+	(Octave_map::Octave_map (const dim_vector&, const Cell&)):
+	New function.
+	* ov-struct.cc (Fstruct): Allow creation of empty struct arrays
+	with field names.
+
+2007-10-01  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc ((color_property::color_property (const
+	octave_value& val)): Undo change from 2007-09-26
+	(patch::properties::properties): use the "a" modifier to
+	face_color & edge_color properties
+	(patch::properties::set): Undo change from 2007-09-26
+	* graphics.h.in	(color_property::color_property
+	(const octave_value& val)): Undo change from 2007-09-26
+
+2007-10-01  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* octave.cc (octave_main): Add "--line-editing" option to force
+	readline line editing.
+
+2007-09-28  David Bateman  <dbateman@free.fr>
+
+	* ov-range.h (int8_array_value, int16_array_value, int32_array_value,
+	int64_array_value, uint8_array_value, uint16_array_value,
+	int32_array_value, uint64_array_value): New methods
+
+2007-09-28  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.h.in (color_property::colormap_property (const Matrix&)):
+	Use floating point math in calculation of colormap.
+
+2007-09-26  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (color_values::str2rgb): accept upper, lower and
+	mixed-case versions of the string representing the color. Allow
+	black defined as "k" and white as "w".
+	(color_property::color_property (const octave_value& val,
+	const radio_values &v)): Modify the constructor to also take a
+	radio_values argument. Use it.
+	(patch::properties::set): Change set_facecolor calls to initialize
+	the color_property argument with the available radio_values.
+	* graphics.h.in (color_property::color_property
+	(const octave_value& val, const radio_values &v)): Also pass a
+	radio_values argument.
+
+	* ov-range.h (sparse_matrix_value, sparse_complex_matrix_value):
+	New methods.
+
+	* mk-pkg-add: Simplfy the autoload commands.
+	* parse.y (Fautoload): Allow bare filename if file is in the same
+	directory as the script from where the autoload command is run.
+
+2007-09-25  Matthias Drochner  <m.drochner@fz-juelich.de>
+
+	* syscalls.cc (Fpopen2): Doc fix.
+	Use "sort -r" instead of "sort -nr" in test.
+
+2007-09-18  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (input_event_hook, Finput_event_hook): Call
+	command_editor::add_event_hook and
+	command_editor::remove_event_hook intstead of
+	command_editor::set_event_hook and
+	command_editor::restore_event_hook.
+
+2007-09-17  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.14+.
+
+2007-09-17  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.14.
+	(OCTAVE_API_VERSION): Now api-v26.
+	(OCTAVE_RELEASE_DATE): Now 2007-09-17.
+
+	* Makefile.in (DISTFILES): Add genprops.awk to the list.
+
+	* ov-typeinfo.h (cat_op_fcn): Third arg in function pointer
+	typedef is now Array<octave_idx_type> instead of Array<int>.
+
+	* file-io.cc (do_stream_open): Use binary mode by default.
+
+2007-09-14  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* genprop.awk: Handle "a" modifier.
+
+2007-09-14  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.h.in (radio_values::contains): New function.
+	(radio_values::validate): Use it.
+	* graphics.cc (color_property::operator =): Call it instead of
+	validate here.
+
+2007-09-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (glpk): Pass LPX_FX, not LB_DB, to
+	lpx_set_col_bnds when lb[i] == ub[i].
+	From: Zhi Wang <zcwang@umich.edu>.
+
+	* graphics.h.in (colormap_property::colormap_property):
+	Use jet colormap as default.
+
+2007-09-12  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (text::properties::properties): Default color is
+	black, not white.
+	* graphics.h (text::properties::color): Declare as color_property,
+	not octave_value.
+
+	* graphics.h.in (root_figure::defaults, figure::defaults,
+	axes::defaults, line::defaults, text::defaults, image::defaults,
+	patch::defaults, surface::defaults): New functions.
+	* gripes.cc (gripe_not_implemented): New function.
+	* gripes.h: Provide decl.
+
+2007-09-10  John W. Eaton  <jwe@octave.org>
+
+	* genprops.awk: Add missing newline character at end of file.
+	From Alexander Klimov <alserkli@inbox.ru>.
+
+2007-09-10  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): Avoid invalid indexing into ra_idx vector.
+
+2007-09-06  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/__delaunay__.cc, DLD-FUNCRIONS/__voronoi__.cc,
+	DLD-FUNCTIONS/convhulln.cc: Avoid variables in global scope
+
+2007-09-06  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (stamp-prereq): Add graphics.h to the dependency list.
+
+2007-08-31  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (INCLUDES): Remove graphics.h from the list.
+	(DISTFILES): Include graphics.h.in in the list.
+	(genprops.awk): New file.
+	(graphics.h): New rule.
+	(distclean): Remove graphics.h.
+	* graphics.h.in: New file, from graphics.h.
+	(graphics_handle): Now a class instead of typedef.  Adapt all uses.
+	(OCTAVE_GRAPHICS_PROPERTY_INTERNAL, OCTAVE_GRAPHICS_PROPERTY,
+	OCTAVE_GRAPHICS_MUTABLE_PROPERTY): Delete macros.
+	(class root_figure, class figure, class axes, class line, class
+	text, class image, class patch, class surface): Use genprops.awk
+	to generate property declarations and set/get functions.
+	* graphics.h: Delete.
+	* graphics.cc (nan_to_empty, empty_to_nan): Delete.
+	(root_figure::properties::set, figure::properties::set,
+	axes::properties::set, line::properties::set,
+	text::properties::set, image::properties::set,
+	patch::properties::set, surface::properties::set): Call
+	type-specific set functions to set properties.
+	(root_figure::properties::set_currentfigure,
+	figure::properties::set_currentaxes, figure::properties::set_visible,
+	axes::properties::get_title, axes::properties::get_xlabel,
+	axes::properties::get_ylabel,  axes::properties::get_zlabel,
+	axes::properties::set_title, axes::properties::set_xlabel,
+	axes::properties::set_ylabel,  axes::properties::set_zlabel):
+	Define custom versions.
+
+2007-09-06  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/bsxfun.cc: New function.
+	* DLD-FUNCTIONS/typecast.cc: New function.
+	* Makefile.in (DLD_XSRC): Add bsxfun.cc and typecast.cc.
+	* ov.cc (do_cat_op): Modify use of Array<int> to
+	Array<octave_idx_type> and adjust where necessary.
+	* ov.h (do_cat_op): ditto.
+	* data.cc (do_cat): ditto.
+	* pt-mat.cc (tree_matrix::rvalue): ditto.
+
+2007-09-05  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* oct-stream.cc (octave_base_stream::do_printf): Ignore precision
+	portion of format string if printing Inf, NaN, or NA values.
+
+2007-09-05  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort_sparse, mx_sort_sparse_indexed):
+	New template classes for sparse sort functions.
+	(Fsort): Use them.
+	* ov.h (octave_value (const Sparse<double>&, const MatrixType&),
+	octave_value (const Sparse<Complex>&, const MatrixType&)): New
+	constructors.
+	* ov.cc (octave_value::octave_value (const Sparse<double>&,
+	const MatrixType&), octave_value::octave_value (const
+	Sparse<Complex>&, const MatrixType&)): Define them.
+	* ov-re-sparse.h (octave_sparse_matrix (const MSparse<double>&,
+	const MatrixType&), octave_sparse_matrix (const Sparse<double>&),
+	octave_sparse_matrix (const Sparse<double>&, const MatrixType&)):
+	New constructors.
+	* ov-cx-sparse.h (octave_sparse_complex_matrix (const MSparse<double>&,
+	const MatrixType&), octave_sparse_complex_matrix (const
+	Sparse<double>&), octave_sparse_complex_matrix (const
+	Sparse<double>&, const MatrixType&)): ditto.
+
+2007-09-04  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Use Wact(j) == i - n_eq when
+	checking for blocking constraint.  Don't resize lambda_tmp.  Only
+	compute Y = Aact.pseudo_inverse () if it is needed.
+
+2007-08-31  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* ls-mat-ascii.cc (get_lines_and_columns): Check beg variable for
+	NPOS to avoid segmentation fault.
+
+	* load-path.cc (load_path::do_find_file): Do not assume paths
+	use forward slashes.
+
+2007-08-30  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (Fpause): Doc fix.
+
+2007-08-30  Gabriele Pannocchia  <g.pannocchia@ing.unipi.it>
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Resize Wact to n_act-neq, not n_act.
+
+2007-08-29  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (class root_figure::properties):
+	Rename from root_figure::root_figure_properties.
+	(class figure::properties): Rename from figure::figure_properties.
+	(class axes::properties): Rename from axes::axes_properties.
+	(class line::properties): Rename from line::line_properties.
+	(class text::properties): Rename from text::text_properties.
+	(class image::properties): Rename from image::image_properties.
+	(class patch::properties): Rename from patch::patch_properties.
+	(class surface::properties): Rename from surface::surface_properties.
+
+	* base-list.h (octave_base_list::remove): Implement our own
+	remove_if function here.
+
+2007-08-28  John W. Eaton  <jwe@octave.org>
+
+	* graphics.h (base_properties): Move class definition before
+	definition of base_graphics_object class.  Provide forward
+	declaration of base_graphics_object prior to definition of
+	base_properties.
+ 	(base_graphics_object::get_properties): New virtual function.
+	(graphics_object::get_properties, root_figure::get_properties,
+	figure::get_properties, axes::get_properties,
+	line::get_properties, text::get_properties, image::get_properties,
+	patch::get_properties, surface::get_properties): New functions.
+	(root_figure::properties, figure::properties, axes::properties,
+	line::properties, text::properties, image::properties,
+	patch::properties, surface::properties): Data member now private.
+
+2007-08-27  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_file): Also files with non
+	rooted relative names.
+	* load-save.cc (find_file_to_load): Likewise.  Also handle
+	appending .mat to files with relative names.
+
+	* graphics.cc (base_properties::mark_modified,
+	base_properties::override_defaults,
+	base_properties::delete_children, figure::get_default,
+	axes::get_default): Move definitions here, from graphics.h.
+	* graphics.h (class gh_manager): Move decl to end of file.
+
+	* Cell.h (Cell::Cell (const octave_value_list&)): Create row
+	vector instead of column vector.
+
+	* pt-idx.cc (tree_index_expression::lvalue): Handle [x.a] =
+	... style assignments.
+	* ov-struct.cc (octave_struct::subsasgn): Handle case of RHS as
+	comma-separated list.
+
+	* ov-cell.cc (gripe_failed_assignment): New function.
+	(octave_cell::subsasgn): Call gripe_failed_assignment if assign
+	methods fail.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* symtab.cc (void symbol_table::clear (void)): If the record in
+	the symbol table to clear is a user function that is a sub
+	function with a static parent or if the parent is the current
+	parent function, don't delete the record.
+	(void symbol_table::clear_functions (void)): ditto.
+	(void symbol_table::clear (const std::string&)): ditto.
+	(void symbol_table::clear_function (const std::string&)): ditto.
+
+	* graphics.h (class text): Add property color.
+	* graphics.cc (text::text_properties::text_properties) ditto.
+	(text::text_properties::set): ditto.
+	(text::text_properties::get): ditto.
+	(text::text_properties::factory_defaults): ditto.
+
+2007-08-24  John W. Eaton  <jwe@octave.org>
+
+	* mappers.cc (dummyp): New function.
+	(install_mapper_functions): Use it to handle character data in
+	finite, isinf, isna, and isnan functions.
+
+	* load-path.cc (load_path::do_remove): Call remove_hook function
+	before removing directory from list.
+
+2007-08-24  David Bateman  <dbateman@free.fr>
+
+	* ov-bool-sparse.cc (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Class
+	is now logical.
+	* ov-re-sparse.cc, ov-cx-sparse.cc
+	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Class is now double.
+	* ov-mapper.cc (octave_mapper::apply): Use is_sparse_type method
+	rather than comparing class name.
+	* ls-mat5.cc (save_mat5_element_length, save_mat5_binary_element):
+	ditto.
+	* pt-mat.cc (tree_matrix:rvalue): sparse matrices are now of class
+	"double" or "logical", create new single type concat clause for
+	them.
+	* mex.cc (get_class_id): No longer need to special case sparse
+	matrices.
+
+	* DLD-FUNCTIONS/__delaunayn__.cc, DLD-FUNCTIONS/convhulln.cc,
+	DLD-FUNCTIONS/tsearch.cc, DLD-FUNCTIONS/__voronoi__.cc: New
+	functions ported from octave-forge.
+	* DLD-FUCTIONS/__dsearchn__.cc: New file.
+	* DLD-FUNCTIONS/__voronoi__.cc: Return point at infinity and
+	include it in the polygrons of the Voronoi diagram for
+	compatibility.
+	* Makefile.in: Add specific build targets for __delanayn__.cc,
+	convhulln.cc and __voronoi__.cc to link to Qhull.
+	(DLD_SRC): Add new functions.
+	(OCTAVE_LIBS): Add QHULL_LIBS
+
+2007-08-22  David Bateman  <dbateman@free.fr>
+
+	* variables.cc (Fmunlock): Call munlock and not mlock.
+	* symtab.cc (symbol_record::mark_as_formal_parameter): Typo.
+
+2007-08-10  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.cc (tree_index_expression::get_struct_index): Improve
+	error message.
+	* ov-struct.cc (Fstruct, Fcell2struct): Trap invalid field names here.
+
+2007-08-10  Peter A. Gustafson  <petegus@umich.edu>
+
+	* graphics.h, graphics.cc (axes::axes_properties): New properties,
+	xaxislocation and yaxislocation.
+
+2007-08-10  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.cc, graphics.h (patch): New class.
+	(axes::axes_properties): New properties, clim and climmode.
+	(surface::surface_properties::surface_properties): Handle patch.
+	(F__go_patch__): New function.
+
+2007-07-30  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_number::mxArray_number (int, const char **)):
+	First arg is now mwSize.
+	(max_str_len): Return mwSize value, not int.
+	* mxarray.h.in (mxArray::mxArray (int, const char **)):
+	First arg is now mwSize.
+	(mxArray::mxArray (mxClassID, mwSize, mwSize, int, mxComplexity)):
+	Third arg is now mwSize.
+	(mxArray::get_string (char *, int)): Second arg is now mwSize.
+
+2007-07-26  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc: Include glpk/glpk.h if
+	HAVE_GLPK_GLPK_H is defined.
+
+2007-07-26  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (Frats): Return character array with same number of
+	rows as original value.
+
+2007-07-26  John W. Eaton  <jwe@octave.org>
+
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Rename cur_fcn to xfcn.
+
+	* version.h (OCTAVE_VERSION): Now 2.9.13+.
+
+2007-07-25  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.13
+	(OCTAVE_API_VERSION): Now api-v25.
+	(OCTAVE_RELEASE_DATE): Now 2007-07-25.
+
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Rename fcn to curr_fcn.
+
+2007-07-25  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: 	Adjust DISTFILES to allow out of tree "make dist"
+	to work.
+
+2007-07-24  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (color_property::operator = (const octave_value&)):
+	New method.
+	* graphics.h: Provide decl.
+
+2007-07-24  Rafael Laboissiere  <rafael@debian.org>
+
+	* oct-conf.h.in (OCTAVE_CONF_RUNTEST): Delete definition.
+	* toplevel.cc (Foctave_config_info): Remove RUNTEST from struct.
+
+2007-07-23  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (rat_format, rat_string_len): Global variable
+	controlling behavior of rational approximation. Use throughout.
+	(class pr_rational_float): New class for rational approximation of
+	floats, specifically with the << operator defined.
+	(std::ostream& operator << (std::ostream&, const
+	pr_rational_float&)): Operator to print rational approximations of
+	double values.
+	(std::string rational_approx (double, int)): Function to convert a
+	double value to a string of maximum length giving the rational
+	approximation.
+	(pr_any_float): Include the output of rational approximations.
+	(Fformat): Add the "rat" format as an option.
+	(Frats): New function.
+
+2007-07-23  Aquil H. Abdullah  <aquil.abdullah@gmail.com>
+
+	* mex.cc (mxCreateStructArray): Declare second arg as const.
+	* mexproto.h (mxCreateStructArray): Ditto.
+
+2007-07-20  David Bateman  <dbateman@free.fr>
+
+	* zfstream.cc (BUFSIZE): Increase default buffer size to 256kB
+	(gzfilebuf::underflow): Stash the last 16 characters read, so as
+	to avoid calling pbackfail as much as possible.
+
+2007-07-18  David Bateman  <dbateman@free.fr>
+
+	 * zfstream.cc (int_type gzfilebuf::pbackfail (int_type)): New
+	 method to putback a character when the putback position in the
+	 internal buffer doesn't exist.
+	 * zfstream.h (int_type pbackfail (int_type)): Declaration it.
+
+2007-07-14  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix:load_hdf5):
+	Use OCTAVE_LOCAL_BUFFER for temporary boolean value.
+
+2007-06-27  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sparse.cc (Fspdiag): Ensure spdiag(zeros(1,0)) returns
+	0x0 matrix. Doc update.
+	* data.cc (Fdiag): Doc update.
+
+2007-06-28  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::subsasgn): Given x = {}, convert to
+	struct for assignments like x(1).f = val;
+
+	* oct-stream.cc (octave_scan_1): New function
+	(octave_scan): Use it.  Handle fmt.width.
+
+	* graphics.h (axes::axes_properties::visible): New data member.
+	* graphics.cc (axes::axes_properties::axes_properties,
+	axes::axes_properties::set, axes::axes_properties::get,
+	axes::axes_properties::factory_defaults): Handle visible property.
+
+2007-06-27  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.h (color_values::color_values): Arg is now std:string
+	instead of char.  Call str2rgb, not c2rgb.
+	* graphics.h, graphics.cc: (color_values::str2rgb): Rename from
+	c2rgb.  Handle long color names, not just single char abbreviations.
+
+2007-06-27  David Bateman  <dbateman@free.fr>
+
+	* load-save.cc (Fsave): Ensure header is written for non
+	existent file with "-append".
+	* ls-hdf5.h: First steps towards having append work for hdf5.
+
+2007-06-26  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (Fsave): Open files correctly for -append.
+	Don't write file headers if appending.  Error for -append -hdf5.
+
+2007-06-25  Olaf Till  <i7tiol@t-online.de>
+
+	* oct-stream.h (octave_stream_list::list): Use std::map.
+	(octave_stream_list::curr_len): Delete data member.
+	(octave_stream_list::octave_stream_list): Fix initializations.
+
+	* oct-stream.cc (octave_steam_list::do_insert,
+	octave_steam_list::do_lookup, octave_steam_list::do_remove,
+	octave_steam_list::do_clear, octave_steam_list::do_list_open_files,
+	octave_steam_list::do_open_file_numbers,
+	octave_steam_list::do_get_file_number):
+ 	Use new octave_stream_list::list type.
+	(octave_stream_list::do_insert): Insert octave_stream with key
+	corresponding to file-descriptor.
+	(octave_stream_list::do_insert, octave_steam_list::insert):
+	Remove const qualifier of argument.
+
+2007-06-18  S�ren Hauberg  <hauberg@gmail.com>
+
+	* DLD-FUNCTIONS/__lin_interpn__.cc: Replace octave_NaN with octave_NA.
+
+2007-06-15  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h (OCTAVE_GRAPHICS_PROPERTY_INTERNAL,
+	OCTAVE_GRAPHICS_PROPERTY, OCTAVE_GRAPHICS_MUTABLE_PROPERTY):
+	New macros. Use them to declare individual properties and define
+	accessor methods for each property in the property classes.
+
+2007-06-15  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.cc (Fget, Fset): Handle vectors of handles.
+
+2007-06-14  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (octave_popen, octave_pclose): New functions.
+	* sysdep.h: Provide decls.
+
+	* oct-procbuf.cc (procbuf::open): Use octave_popen.
+	(procbuf::close): Use octave_pclose.
+	* oct-prcstrm.cc (octave_oprocstream::octave_oprocstream,
+	octave_iprocstream::ictave_oprocstream): Likewise.
+
+	* graphics.h (text::text_properties::rotation): New data member.
+	* graphics.cc (text::text_properties::text_properties,
+	text::text_properties::set, text::text_properties::get,
+	text::text_properties::factory_defaults): Handle rotation property.
+
+2007-06-14  Kai Habel  <kai.habel@gmx.de>
+
+	* graphics.cc (color_values::c2rgb): Also accept 'k' for black.
+
+2007-06-14  David Bateman  <dbateman@free.fr>
+
+	* ov-ch-mat.h (idx_vector index_vector (void) const): Remove
+	definition.
+	* ov-ch-mat.cc (idx_vector index_vector (void) const): Move it
+	here. Special case ":" case for compatibility.
+
+2007-06-13  John W. Eaton  <jwe@octave.org>
+
+	* ov-re-mat.cc (octave_matrix::load_ascii):
+	Do a better job of handling read errors and empty matrices.
+	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Likewise.
+	* ov-bool-mat.cc (octave_bool_matrix::load_ascii): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::load_ascii): Likewise.
+
+2007-06-13  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): Don't treat as single
+	argument if arg2 is empty and nargin=2.
+
+2007-06-13  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.h, graphics.cc: Move class declarations to graphics.h.
+	Move larger functions outside of class declarations in graphics.cc.
+
+2007-06-12  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* DLD-FUNCTIONS/cellfun.cc: Use fullfile to generate filenames
+	instead of assuming / will work as directory separator.
+
+2007-06-12  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/interpn.cc: Remove it.
+	* DLD-FUNCTIONS/__lin_interpn__.cc: Move it. This is now a support
+	function of interpn.m.
+	* Makefile.in (DLD_XSRC): Remove interpn.cc and add __lin_interpn__.cc.
+
+2007-06-07  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-handles.cc (octave_fcn_handle::save_hdf5): More care that
+	all open HDF5 descriptors are closed.
+	(octave_fcn_handle::load_hdf5): Ditto.
+
+2007-06-06  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* utils.cc [__MINGW32__]: Don't define HAVE_C99_VSNPRINTF.
+
+2007-06-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* defaults.h.in, ls-hdf5.h, ov-complex.h, ov-cx-mat.h, ov-intx.h,
+	sysdep.h: Sprinkle with OCTINTERP_API as needed.
+
+2007-06-05  John W. Eaton  <jwe@octave.org>
+
+	* help.h (raw_help): Tag with OCTINTERP_API.
+
+	* Makefile.in (INCLUDES): Remove mxarray.h from the list so that
+	it is not distributed.
+	(EXTRAS): Add mxarray.h to the list so that it is installed.
+
+	* sysdep.cc (same_file_internal) [OCTAVE_USE_WINDOWS_API]:
+	Avoid leaking file handles.
+
+2007-05-08 Michael Weitzel  <michael.weitzel@uni-siegen.de>
+
+	* DLD-FUNCTIONS/symrcm.cc: Fix for queuing error that might cause
+	an infinite loop.
+
+2007-06-04  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fislogical): Rename from Fisbool.
+	Make isbool an alias for islogical.
+
+2007-06-03  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (DISTFILES): Add mxarray.h.in
+	(install-inc): Modify target so that mxarray.h is installed
+	correctly.
+	(distclean): Remove mxarray.h on distclean.
+	* mex.cc: Use mwSize for dimensions and mwIndex for indexing
+	throughout, with the exception of struct key indexes.
+	* mexproto.h: ditto.
+	* mxarray.h: remove.
+	* mxarray.h.in: Copy here and define mwSize, mwIndex, and use
+	throughout.
+	* ov-bool-mat.cc (octave_bool_matrix::as_mxArray): Use mwSize and
+	mwIndex.
+	* ov-bool-sparse (octave_sparse_bool_matrix::as_mxArray): ditto.
+	* ov-cell.cc (octave_cell:as_mxArray): ditto.
+	* ov-ch-mat.cc (octave_char_matrix:as_mxArray): ditto.
+	* ov-cx-mat.cc (octave_complex_matrix::as_mxArray): ditto.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::as_mxArray): ditto.
+	* ov-int.h (as_mxArray): ditto.
+	* ov-range.cc (octave_range:as_mxArray): ditto.
+	* ov-re-mat.cc (octave_matrix:as_mxArray): ditto.
+	* ov-re-sparse.cc (octave_sparse_matrix::as_mxArray): ditto.
+	* ov-struct.cc (octave_struct::as_mxArray): ditto.
+
+2007-06-02  David Bateman  <dbateman@free.fr>
+
+	* graphics.cc (color_property class): g++ doesn't like anonymous
+	enums. Give type to color_type enum.
+
+2007-05-31  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (radio_values, radio_property, color_values):
+	New classes.
+	(color_property class): Handle both color and radio values.
+
+2007-05-31  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (main_loop): Improve bad_alloc error message.
+
+	* octave.cc (execute_command_line_file, execute_eval_option_code):
+	Likewise.
+
+2007-05-31  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* toplev.cc (octave_atexit_functions):
+	Now std::list instead of std::stack.
+	(do_octave_atexit): Adapte to octave_atexit_functions as list.
+	(Fatexit): Allow second arg of false to remove element from list.
+
+	* DLD-FUNCTIONS/symrcm.cc: Use ! instead of "not".
+
+	* sysdep.cc (same_file_internal) [OCTAVE_USE_WINDOWS_API]:
+	Use INVALID_HANDLE_VALUE, not INVALID_FILE_HANDLE.
+
+2007-05-28  G. D. McBain  <geordie_mcbain@yahoo.com.au>
+
+	* ov-list.cc (append): Doc fix.
+
+2007-05-28  John W. Eaton  <jwe@octave.org>
+
+	* pt-loop.cc (DO_ND_LOOP): Avoid parser problem with obsolete g++.
+
+2007-05-23  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.12+.
+
+2007-05-23  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.12.
+	(OCTAVE_RELEASE_DATE): Now 2007-05-23.
+
+	* parse.y (make_anon_fcn_handle): Don't build assignment expression.
+	* ov-fcn-handle.cc (octave_fcn_handle::print_raw):
+	Don't split assignment expression.
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Special case for inline function body evaluation.
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
+	Set current function as parent of anonymous function handle.
+
+	* Makefile.in (uninstall): Also remove
+	$(DESTDIR)$(octincludedir)/octave, $(DESTDIR)$(octincludedir),
+	$(DESTDIR)$(octlibdir), and $(DESTDIR)$(octfiledir).
+
+2007-05-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* debug.cc, error.cc, load-save.cc, oct-hist.cc, sighandlers.cc,
+	symtab.cc: Fix typos.
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.11+.
+
+2007-05-22  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.11.
+	(OCTAVE_API_VERSION): Now api-v24.
+	(OCTAVE_RELEASE_DATE): Now 2007-05-22.
+
+2007-05-21  David Bateman  <dbateman@free.fr>
+
+	* debug.cc (Fdbstop): handle integer, vector and multiple line
+	arguments.
+	(Fdbclar): ditto. Eliminate extraneous debugging messages.
+
+2007-05-21  S�ren Hauberg  <hauberg@gmail.com>
+
+	* load-path.cc (Fpath, Frehash): Replace "LOADPATH" with "load
+	path" in doc strings.
+
+	* parse.y (Feval): Add example.
+
+2007-05-21  David Bateman  <dbateman@free.fr>
+
+	* error.cc (rethrow_error): Use NULL name so that "error:" is not
+	added to the message
+	(Frethrow): Correctly treat empty stack.
+
+2007-05-21  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.h (Octave_map::numel): Return number of array elements,
+	not number of map elements.
+	(Octave_map::nfields): Rename from length.
+	(Octave_map::empty): Delete.
+	Change all uses of empty to check nfields () == 0 instead.
+
+2007-05-21  S�ren Hauberg  <soren@hauberg.org>
+
+	* help.cc (Fautoload): Doc fix.
+	* variables.cc (Fiscommand): Doc fix.
+
+2007-05-19  David Bateman  <dbatemna@free.fr>
+
+	* ov-fcn-inline.cc (Fvectorize): Doc fix.
+
+2007-05-16  S�ren Hauberg  <soren@hauberg.org>
+
+	* ov.cc (Fsubsref, Fsubsasgn): Doc fix.
+
+2007-05-16  John W. Eaton  <jwe@octave.org>
+
+	* load-path.h (load_path::sys_path): New static data member.
+	(load_path::system_path): New static function.
+	(load_path::do_system_path): New function.
+	* load-path.cc (Vsystem_path): Delete.
+	(load_path::do_initialize): Use sys_path, not Vsystem_path.
+	(Fpathdef): Call load_path::system_path instead of using Vsystem_path.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::set_fcn): Likewise.
+
+2007-05-16  David Bateman  <dbateman@free.fr>
+
+	* load_pathc.cc (std::string octave_system_path (void)): New
+	function.
+	* load-path.h (std::string octave_system_path (void)): Declare it.
+
+	* load-save.cc (static load_save_format get_file_format
+	(std::istream&, const std::string&)): Add filename argument, and
+	pass it to read_mat5_binary_header. Use new format throughout file.
+	(Fload): Don't allow gzip of matlab v7 files as the files
+	themselves include compression.
+
+	* ls-mat5.cc (arrayclsstype:MAT_FILE_WORKSPACE_CLASS): New class
+	type.
+	(read_mat5_binary_element): Workspaces, don't have dimensions, so
+	don't read them. Implement read of matlab objects, but only use
+	them for inline functions. Implement reading of function and
+	workspace classes.
+	(read_mat5_binary_header): Add filename argument. Read sub-system
+	specific data block given as an offset in bytes 117 to 124.
+	(save_mat5_binary_element): Include saving of inline functions.
+
+	* ls-mat5.h (read_mat5_binary_header): Include filename.
+
+	* ov-fcn-handle.cc (octave_fcn_handle_save_ascii,
+	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
+	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
+	octave_fcn_handle::load_hdf5): Save and reload the local symbol
+	table of the user function associated with anonymous function
+	handles. Save and load the absolute path and the exec_prefix for
+	normal function handles and use then to find equivalent functions
+	between different installations of Octave. Attempt to maintain
+	backward and forward compatibility.
+	(Ffunctions): Additional outputs, including the workspace of
+	anonymous functions, and more compatiable outputs.
+
+	* ov-fcn-handle.h (user_function_value): Expose the user function
+	value of a function handle.
+
+	* ov-fcn-inline.cc (Octave_map octave_fcn_inline::map_value
+	(void) const): Return a structure compatiable with matlab's class
+	implementation of inline functions.
+
+	* ov-fcn-inline.h (map_value): Declare it.
+
+2007-05-14  Bob Weigel  <rweigel@gmu.edu>
+
+	* DLD-FUNCTIONS/svd.cc: Doc fix.
+
+2007-05-14  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* DLD-FUNCTIONS/fft.cc (do_fft): Handle empty matrices.  New tests.
+
+2007-05-14  S�ren Hauberg  <soren@hauberg.org>
+
+	* toplev.cc (Fatexit): Simplify example in doc string.
+	* help.cc (Flookfor): Doc fix.
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
+	Reformat to avoid long lines in doc string example.
+
+2007-05-13  S�ren Hauberg  <soren@hauberg.org>
+
+	* toplev.cc (Fquit): Doc fix.
+	* help.cc (Fhelp): Doc fix.
+	* oct-hist.cc (Fsaving_history): Doc fix.
+
+2007-05-11  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_out_of_date):
+	Always check for files that have gone missing.
+
+2007-05-08 Michael Weitzel  <michael.weitzel@uni-siegen.de>
+
+	* DLD-FUNCTIONS/symrcm.cc: New function for Reverse Cuthill-McKee
+	permutation.
+
+2007-05-07  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::resize): Handle case of no keys.
+	(keys_ok): Rename from equiv_keys.  Return value is now status.
+	Pass key names as string_vector reference arg.
+	(Octave_map::assign (const octave_value_list&, const Octave_map&)):
+	Call keys_ok, not equiv_keys.  Handle case of no keys.
+
+2007-04-30  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (%.df : %.cc): Use mv instead of
+	$(simple-move-if-change-rule).
+
+2007-04-30  David Bateman  <dbateman@free.fr>
+
+	* pt-loop.cc (DO_ND_LOOP): New args, CONV and ARG.
+	Use octave_idx_type instead of int for loop counters.
+	Remove redundant assignments to variable "quit" as it is
+	always defined in quit_loop_now.
+	Special case rows = 0 and 1 cases in loops over arrays.
+	Include some of the code that was separate from the macro
+	DO_ND_LOOP in the macro itself
+	(tree_simple_for_command::eval): USE DO_ND_LOOP for all loops.
+	(DO_LOOP): Delete.
+
+2007-04-30  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mex::cleanup): Don't call unmark for elements of the set
+	inside the loop.  From Laurent Mazet <laurent.mazet@motorola.com>.
+
+2007-04-30  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-int-conv.cc: Define sq and dq string conversion
+	operators.  Delete old char_matrix_str conversions.
+	* OPERATORS/op-int-conv.cc (install_int_conv_ops): Install them.
+
+2007-04-27  Benjamin Lindner  <lindnerb@users.sourceforge.net>.
+
+	* octave.cc (execute_startup_files): Call same_file to check for
+	already executed init files.
+
+2007-04-27  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (same_file_internal): New function.  POSIX code
+	from same_file in utils.cc.  Windows code from
+	Benjamin Lindner  <lindnerb@users.sourceforge.net>.
+	Don't canonicalize file names.
+	Also return false if stat calls fail.
+	* sysdep.h: Provide decl.
+	* utils.cc (same_file): Use same_file_internal.
+
+2007-04-27  David Bateman  <dbateman@free.fr>
+
+	* graphic.cc (get_property_form_handle, set_property_in_handle):
+	New functions.
+	* grahics.h: New file.
+	* mex.cc (mexGet, mexSet): use the above to implement mexGet
+	and mexSet.
+	* Makefile.in (INCLUDES): Add graphics.h
+
+2007-04-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Only deal with varargout if ret_list->takes_varargs () is true.
+
+2007-04-26  S�ren Hauberg  <soren@hauberg.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc: Doc fix.
+
+2007-04-26  David Bateman  <dbateman@free.fr>
+
+	* pt-loop.cc (tree_simple_for_command::eval (void)): Correct
+	reshaping of dim_vector in for loop for multi-dimensional array.
+
+2007-04-26  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (find_file_to_load): Only consider regular files.
+
+2007-04-24  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (color_property): Eliminate alpha channel from RGB
+	color spec.
+
+2007-04-23  Shai Ayal  <shaiay@users.sourceforge.net>
+
+	* graphics.cc (color_property::color_property):
+	New arg A for alpha channel.  Set rgba instead of red, green, blue.
+	(color_property::color_property (char)): New constructor.
+	(color_propery::rgba): New data member.
+	(color_property::red, color_property::green, color_property::blue):
+	Delete.
+	(color_property::validate): Use rgba.
+	(color_property::c2rgba): New function.
+
+2007-04-23  S�ren Hauberg  <soren@hauberg.org>
+
+	* data.cc (Fsize_equal): Allow more than two arguments.
+
+2007-04-20  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (deftypefn):
+	(Vautomatic_replot): Delete static variable.
+	(Fautomatic_replot): Delete function.
+
+	* toplev.cc (Fcasesen): Delete obsolete function.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (gnuplot::makeplot): Check
+	whether caller is "splot", not "gsplot".
+
+2007-04-19  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (is_keyword_token): Delete all_va_args_kw switch case.
+	* octave.gperf: Remove all_va_args_kw from the list.
+
+2007-04-19  Daniel J. Sebald  <daniel.sebald@ieee.org>
+
+	* syscalls.cc: Fix popen2 test to stop trying after 100 times
+	throught the loop.
+
+2007-04-16  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* ov-fcn-inline.cc (Fargnames): Doc fix.
+
+2007-04-13  Geordie McBain  <geordie.mcbain@aeromech.usyd.edu.au>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Doc fix.
+
+2007-04-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DOCSTRINGS): Don't echo commands.
+	(doc-files): Use mv, not $(simple-move-if-change-rule).
+
+	* data.cc (Fnot, Fuplus, Fuminus, Ftranspose, Fctranspose, Fplus,
+	Fminus, Fmtimes, Fmrdivide, Fmpower, Fmldivide, Flt, Fle, Feq,
+	Fge, Fgt, Fne, Ftimes, Frdivide, Fpower, Fldivide, Fand, For):
+	New functions.
+
+2007-04-09  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (line::line_properties::markeredgecolor,
+	line::line_properties::markerfacecolor): New properties.
+
+2007-04-06  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (F__vnorm__): New function.
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::param_list,
+	tree_anon_fcn_handle::cmd_list,	tree_anon_fcn_handle::ret_list,
+	tree_anon_fcn_handle::sym_tab): Delete.  Remove all uses.
+	(tree_anon_fcn_handle::fcn): New data member.
+	(tree_anon_fcn_handle::tree_anon_fcn_handle): Initialize it.
+	(tree_anon_fcn_handle::rvalue, tree_anon_fcn_handle::dup):
+	Extract parameter list, return list, function body, and symbol
+	table from fcn.
+	(tree_anon_fcn_handle::parameter_list, tree_anon_fcn_handle::body):
+	Forward request to fcn.
+
+	* ov-usr-fcn.h (octave_user_function::local_sym_tab): Rename from
+	sym_tab.  Change all uses.
+	(octave_user_function::sym_tab): New function.
+
+	* octave.cc (execute_command_line_file):
+
+2007-04-05  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (Fregexprep): Correct iteration over
+	cell arrays so that the source and pattern are iterated seperately
+	in the same manner as matlab.
+
+2007-04-05  Laurent Mazet  <laurent.mazet@motorola.com>
+
+	* mex.cc (mxArray_octave_value::get_string): Copy nel elements,
+	not buflen elements.
+
+2007-04-05  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (DO_DOUBLE_CONV): New macro.
+	(do_printf): Use it.
+
+2007-04-04  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (octave_yes_or_no): Force interactive_input to use readline.
+
+	* octave.cc (execute_eval_option_code): Catch bad::alloc here.
+
+2007-04-03  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread):
+	Use && for logical, not &.
+
+	* DLD-FUNCTIONS/qr.cc (Fqr): Clarify nargin check.
+
+	* error.cc (Frethrow): Add braces to avoid ambiguous if/else.
+	* oct-stream.cc (octave_scan<>): Likewise.
+	* DLD-FUNCTIONS/colamd.cc (Fetree): Likewise.
+	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Likewise.
+
+	* ov-fcn-handle.cc (make_fcn_handle): Pass ultimate parent
+	function name to lookup_function.
+
+2007-03-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/filter.cc (filter): Fix typo in doc string.
+	From Utkarsh Upadhyay <musically.ut@gmail.com>.
+
+2007-03-28  Rafael Laboissiere  <rafael@debian.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc: Fix #ifdef logic around GLPK_PRE_4_14.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.10+
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.10.
+	(OCTAVE_API_VERSION): Now api-v23.
+	(OCTAVE_RELEASE_DATE): Now 2007-03-27.
+
+	* version.h (OCTAVE_COPYRIGHT): Update for 2007.  Add "and others".
+	(X_OCTAVE_WARRANTY_STATEMENT): Rename from OCTAVE_WARRANTY_STATEMENT.
+	Accept arg.
+	(OCTAVE_WARRANTY_STATEMENT): Define using X_OCTAVE_WARRANTY_STATEMENT.
+	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Define using
+	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY.
+	(X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Rename
+	from OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY.
+	Accept arg and pass to X_OCTAVE_WARRANTY_STATEMENT.
+	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY): Pass empty
+	arg to X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS.
+	(OCTAVE_STARTUP_MESSAGE): Put info about news last.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (dist, conf-dist): Use ln, not $(LN_S).
+
+2007-03-26  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
+
+	* file-io.cc (do_stream_open) [! HAVE_ZLIB]:
+	Call fopen with mode, not tmode.
+
+2007-03-26  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-str-str.cc (DEFCHARNDBINOP): New macro.  Use it to
+	define functions for eq and ne ops.  Also define lt, le, ge, and
+	gt ops.
+
+2007-03-23  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rand.cc: Make more statistical tests optional.
+
+2007-03-23  John W. Eaton  <jwe@octave.org>
+
+	* bitfcns.cc (Fbitshift): Error if third argument is not a scalar.
+
+2007-03-23  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rand.cc: Make statistical tests optional and
+	add tests for fixed sequences.
+
+2007-03-22  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc (base_graphics_object::mark_modified):
+	New virtual function.
+	(base_properties::__modified__): New data member.
+	(base_properties::base_properties): Initialize it.
+	(graphics_object::mark_modified, base_properties::mark_modified,
+	root_figure::mark_modified, figure::mark_modified,
+	axes::mark_modified, line::mark_modified, text::mark_modified,
+	image::mark_modified, surface::mark_modified,
+	root_figure::root_figure_properties::mark_modified,
+	figure::figure_properties::mark_modified,
+	axes::axes_properties::mark_modified,
+	line::line_properties::mark_modified,
+	text::text_properties::mark_modified,
+	image::image_properties::mark_modified,
+	surface::surface_properties::mark_modified): New functions.
+	(figure::figure_properties::set, figure::figure_properties::get,
+	axes::axes_properties::set, axes::axes_properties::get,
+	line::line_properties::set, line::line_properties::get,
+	text::text_properties::set, text::text_properties::get,
+	image::image_properties::set, image::image_properties::get,
+	surface::surface_properties::set, surface::surface_properties::get):
+	Handle __modified__ property.
+
+	* parse.y (Fautoload): Use warning_with_id.
+
+2007-03-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__qp__.cc (ABS): Delete.  Use std::abs instead.
+	(null): Set elements of retval with magnitudes less than eps to 0.
+
+	* error.cc (Fwarning): Allow setting options with struct.
+	If setting options, return previous state.
+
+	* graphics.cc (axes::axes_properties::set_defaults): Reverse sense
+	of mode test for setting outerposition property.
+	(figure::figure_properties::set): If setting visible property,
+	make this figure the current figure.
+	(gh_manager::figure_handle_list, gh_manager::do_figure_handle_list):
+	New functions.
+	(F__go_figure_handles__): New function.
+
+	* sysdep.cc (Fpause): Also call drawnow if nargin == 0.
+	(Fkbhit, Fsleep, Fusleep): Also call drawnow here.
+
+2007-03-20  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Correct for shape of return
+	matrix for the case of UniformOutput being true.
+
+2007-03-20  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (Fpause): Call drawnow.
+
+2007-03-15  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (F__lock_global__): Delete.
+
+2007-03-14  John W. Eaton  <jwe@octave.org>
+
+	* graphics.cc: New file.
+	* Makefile.in (DIST_SRC): Add it to the list.
+
+2007-03-13  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (do_stream_open): Use binary mode if 't' is not
+	specified in mode, but don't add 'b' if it is already present.
+
+2007-03-09  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat):  Also treat case of all empty matrices.
+
+2007-03-08  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_octave_value::set_dimensions,
+	mxArray_octave_value::set_m, mxArray_octave_value::set_n,
+	mxArray_octave_value::set_class_name,
+	mxArray_octave_value::set_ir, mxArray_octave_value::set_jc,
+	mxArray_octave_value::remove_field,
+	mxArray_octave_value::set_field_by_number):
+	Don't panic; request mutation instead.
+	(class mxArray_octave_value):
+
+	* mxarray.h (mxArray::set_m, mxArray::set_n,
+	mxArray::set_dimensions): Wrap method call call with
+	DO_VOID_MUTABLE_METHOD.
+
+2007-03-08  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): Ignore leading empty matrices.
+
+2007-03-07  Bob Weigel  <rweigel@gmu.edu>
+
+	* urlwrite.cc (urlget): Allow URL redirects.
+
+2007-03-05  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/md5sum.cc (Fmd5sum): Treat both files and strings.
+
+2007-03-05  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Check GLPK_PRE_4_14, not
+	GLPK_PRE_4_15.
+
+2007-03-02  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Fautoload): Undo previous change.
+	Warn if FILE is not an absolute file name.
+
+	* utils.cc (make_absolute): Make copy of arg before
+
+2007-03-01  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-mat.h	(octave_base_matrix::octave_base_matrix (const MT&),
+	(octave_base_matrix::octave_base_matrix (const MT&, const MatrixType&)):
+	Use common definition with default argument value.
+	* ov-base-scalar.h (octave_base_scalar<T>::typ): New data member.
+	Initialize in constructors.
+	(octave_base_scalar<T>::matrix_type): New funtions.
+
+2007-03-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/md5sum.cc: New file.
+	* Makefile.in (DLD_XSRC): Add md5sum.cc
+
+2007-03-01  Olli Saarela  <Olli.Saarela@kcl.fi>
+
+	* input.cc (FPS1): Fix @seealso.
+
+2007-03-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Special case scalar
+	types and always return "Full" matrix type.
+
+2007-02-28  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (interactive_input): Also call flush_octave_stdout
+	after calling drawnow.
+
+2007-02-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (uninstall): Also remove octave-$(version)$(EXEEXT),
+	oct-gperf.h, and all .oct files.  Remove PKG_ADD.
+	From Thomas Treichl <Thomas.Treichl@gmx.net>.
+
+	* load-path.h, (load_path::initialize, load_path::do_initialize):
+	New arg, set_initial_path.
+	* load-path.cc (load_path::do_initialize): Don't add system
+	directories to apth if set_initial_path is false.
+	* octave.cc (set_initial_path): New static variable.
+	(NO_INITIAL_PATH_OPTION): New define.
+	(usage_string): Include --no-initial-path in message.
+	(long_opts): Include no-initial-path/NO_INITIAL_PATH_OPTION here.
+	(octave_main): Handle NO_INITIAL_PATH_OPTION.
+	Pass set_initial_path to load_path::initialize.
+
+	* parse.y (Fautoload): Warn about duplicate entries.  Only insert
+	the first found.
+
+2007-02-27  David Bateman  <dbateman@free.fr>
+
+	* error.cc (Vlast_error_file, Vlast_erro_name, Vlast_error_row,
+	Vlast_error_column): New static variables.
+	(verror): Use them to store the location of last error.
+	(rethrow_error, Frethrow, Flasterror): New functions.
+
+	* DLD-FUNCTIONS/regexp.cc (octcellregexp): Wrapper to octregexp
+	function for cases when string or pattern are cell arrays
+	(Fregexp, Fregexpi): Use them.
+	(octregexprep): New function with functionality of old Fregexprep.
+	(Fregexprep): Treat cell arguments.
+
+2007-02-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
+
+	* DLD-FUNCTIONS/getrusage.cc: Undef min after including windows.h.
+
+2007-02-25  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/interpn.cc: Include dNDArray.h, not dMatrix.cc.
+
+	* error.h: Include cstdarg.
+	From Juhani Saastamoinen <juhani@cs.joensuu.fi>.
+
+2007-02-23  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (lookup_function): Don't dereference NULL
+	curr_parent_fucntion pointer.
+	* ov-fcn-handle.cc (make_fcn_handle): Call lookup_function with
+	parent set to empty string if call_stack is empty.
+
+	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin): Also adjust argument list
+	in calls to functions that are not overloaded.  Call
+	lookup_by_name to find function instead of searching fbi_symtab
+	directly.
+
+	* help.cc (do_which): Return empty string if file not found.
+
+2007-02-22  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_cell::mxArray_cell (const mxArray_cell&),
+	mxArray_struct::mxArray_struct (const mxArray_struct&)):
+	Avoid calling clone on 0 elements.
+
+	* variables.cc (symbol_out_of_date): If checking nested function,
+	look for file using parent function name.  Delete unused
+	variable NAMES.
+
+	* oct-stream.cc (octave_stream::do_gets): If no limit or not
+	at limit, read ahead one character at end of line for compatibility.
+	(octave_stream::gets, octave_stream::getl): Set max_len to -1 if
+	tc_max_len is not defined.
+	* file-io.cc (Ffgets, Ffgetl): If no limit specified, pass
+	undefined octave_value object as max_len in call to
+	octave_stream::gets.
+
+2007-02-21  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mexErrMsgIdAndTxt, mexWarnMsgIdAndTxt): Handle second
+	arg as format and accept variable number of arguments.
+	* mexproto.h: Fix decls.
+
+	* error.h, error.cc (vmessage, vusage, vwarning, verror,
+	vparse_error, vmessage_with_id, vusage_with_id, vwarning_with_id,
+	verror_with_id, vparse_error_with_id): Provide va_list versions of
+	variadic error, warning, and message functions.
+	(message, usage, warning, error, parse_error, message_with_id,
+	usage_with_id, warning_with_id, error_with_id,
+	parse_error_with_id): Call va_list versions.
+
+	* DLD-FUNCTIONS/urlwrite.cc (Furlwrite, Furlread): Return error
+	code and message instead of throwing error if functionality is
+	missing.
+
+	* oct-obj.h (octave_value_list::splice): Set default for
+	replacement list argument.
+
+2007-02-20  Rafael Laboissiere  <rafael@laboissiere.net>
+
+	* DLD-FUNCTIONS/__glpk__.cc: Adapt code for changes in the GLPK
+	API for version 4.15 or later.
+
+2007-02-20  John W. Eaton  <jwe@octave.org>
+
+	* mxarray.h (mxArray::get_scalar): New function.
+	* mex.cc (mxArray_base::get_scalar): New pure virtual function.
+	(mxArray_octave_value::get_scalar, mxArray_matlab::get_scalar,
+	mxArray_number::get_scalar): New functions.
+	(mxGetScalar): Call get_scalar here.
+
+	* mex.cc (mxArray_octave_value::get_dimensions): Cache ndims here.
+	(mxArray_octave_value::get_number_of_dimensions):
+	Call get_dimensions here to cache both ndims and dims.
+
+2007-02-17  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_out_of_date): Don't exit early if looking
+	at nested function.
+
+2007-02-16  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct): Clear
+	function if original was loaded from relative path and the name
+	can no longer be found in path.  Mark files found from relative
+	path as relative.
+	(clear): Only warn if there is more than one function to clear.
+
+	* variables.cc (symbol_out_of_date): Don't ignore return value in
+	call to octave_env::make_absolute.
+	(symbol_out_of_date): Clear symbol if original was loaded from
+	relative path and name can no longer be found in path.
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_oct):
+	Also check whether new file is same as the old file.
+
+	* utils.cc (same_file): Move here from variables.cc.
+	* utils.h: (same_file): Provide decl.
+
+	* parse.y (frob_function): Stash parent function name if parsing
+	nested function.
+
+	* ov-fcn-handle.cc (make_fcn_handle): Pass current function name
+	as parent in call to lookup_function.
+
+	* ov-fcn.h (octave_function::parent_fcn_name): New virtual function.
+
+	* ov-usr-fcn.h (octave_user_function::parent_name): New data member.
+	(octave_user_function::stash_parent_function_name,
+	octave_user_function::parent_function_name): New methods.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Initialize parent_name.
+
+	* variables.h, variables.cc (lookup_function): New arg, parent.
+	If not empty, try this first for lookup.
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): If doing
+	path lookup, check relative status. Pass relative to oct_file_in_path.
+	(octave_dynamic_loader::do_load_mex): Likewise, for mex_file_in_path
+
+	* defun-int.h, defun.cc (install_mex_function): New arg, relative.
+	(install_dld_function): Likewise.
+	(octave_dld_fcn_installer): Likewise.
+	(DEFINE_FUNX_INSTALLER_FUN3): Pass relative to install_dld_function.
+
+	* dynamic-ld.h (octave_dynamic_loader::load_oct,
+	octave_dynamic_loader::load_mex,
+	octave_dynamic_loader::do_load_oct
+	octave_dynamic_loader::do_load_mex): New arg, relative.
+
+	* dirfns.h (Vcurrent_directory): Delete unused variable.
+
+	* variables.cc (symbol_out_of_date): Also compare function time
+	stamp to Vlast_chdir_time if function is from relative lookup.
+
+	* dirfns.cc (Vlast_chdir_time): New variable.
+	(octave_change_to_directory): Update it if chdir succeeds.
+	* dirfns.h (Vlast_chdir_time): Provide decl.
+
+	* ov-fcn.h (octave_function::relative): New data member.
+	(octave_function::mark_relative, octave_function::is_relative):
+	New functions.
+
+	* parse.y (fcn_file_from_relative_lookup): New static variable.
+	(load_fcn_from_file): Note whether function file was found from
+	relative path element.
+	(frob_function): Maybe mark function as relative.
+
+	* parse.y (lookup_autoload): Don't call octave_env::make_absolute
+	on return value.
+	* variables.cc (symbol_out_of_date): Make name absolute after call
+	to lookup_autoload.
+
+	* input.cc (interactive_input): New arg, DEBUG.  Don't call
+	drawnow if debugging.
+	(get_user_input): Pass DEBUG to interactive_input.
+
+2007-02-16  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* syscalls.cc (Fpopen2): New function.
+	(pipe): Modify to return input and output file descriptor
+	seperately rather than in a list.
+
+2007-02-16  Muthiah Annamalai  <muthuspost@gmail.com>
+
+	* debug.cc (Fdbtype): Improve compatibility.
+
+2007-02-16  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (wait_for_input): New function.
+	(run_command_and_return_output): Use it instead of napping.
+
+	* oct-procbuf.h (octave_procbuf::pid): Now const.
+	* procstream.h (procstreambase::pid): Now const.
+	(procstreambase::file_number): New function.
+
+2007-02-15  John W. Eaton  <jwe@octave.org>
+
+	* mxarray.h (mxChar): Use char instead of unsigned short.
+
+	* toplev.cc (Foctave_config_info): Remove
+	OCTAVE_CONF_MKOCTFILE_INCFLAGS and OCTAVE_CONF_MKOCTFILE_LFLAGS
+	from the list.
+	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_INCFLAGS,
+	OCTAVE_CONF_MKOCTFILE_LFLAGS): Don't define.
+	(OCTAVE_CONF_INCLUDEDIR, OCTAVE_CONF_OCTINCLUDEDIR,
+	OCTAVE_CONF_OCTLIBDIR, OCTAVE_CONF_PREFIX): New definitions.
+
+2007-02-14  Alexander Barth  <abarth@marine.usf.edu>
+
+	* DLD-FUNCTIONS/interpn.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2007-02-14  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (interactive_input): Check error_state after call to feval.
+
+2007-02-10  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream::rewind): Call seek (0, SEEK_SET)
+	instead of rep->rewind.
+	(octave_base_stream::rewind): Delete Function.
+	* oct-stream.h (octave_base_stream::rewind): Delete decl.
+
+2007-02-09  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (PAD): Adjust to change in write_mat5_tag.
+	(TAGLENGTH): Delete unused macro.
+
+	* ov-struct.cc (octave_struct::load_ascii,
+	octave_struct::load_binary, octave_struct::load_hdf5):
+	Delete obsolete attempt at backward compatibility.
+
+	* ls-mat5.cc (read_mat5_binary_element): Don't attempt to read
+	fieldnames if there are no fields.
+	(write_mat5_tag): Don't use small data element format if bytes == 0.
+
+	* ls-mat5.cc (read_mat5_binary_element): Always create a structure
+	that is at least 1x1.
+	* ov-struct.cc (octave_struct::load_ascii,
+	octave_struct::load_binary, octave_struct::load_hdf5): Likewise.
+
+2007-02-08  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* DLD-FUNCTIONS/__glpk__.cc: Include glplib.h if glpk.h does not.
+	Provide definitions for lib_set_fault_hook and lib_set_print_hook
+	if they are not defined.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* defaults.cc (subst_octave_home):
+	Only substitute at beginning of string.
+
+	* ls-hdf5.cc (save_hdf5_empty): Use OCTAVE_LOCAL_BUFFER.
+	* ov-bool-mat.cc (octave_bool_matrix::save_hdf5,
+	octave_bool_matrix::load_hdf5): Likewise.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_hdf5,
+	octave_sparse_bool_matrix::load_hdf5): Likewise.
+
+2007-02-07  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* ov-cell.cc (octave_cell::save_hdf5): Correct test for H5Dwrite
+	return value.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* zfstream.cc (gzfilebuf::open_mode): Always append "b" to c_mode.
+
+	* toplev.cc (Foctave_config_info): Use struct for conf_info.
+	Call subst_octave_home on selected values when initializing map.
+	* defaults.cc (subst_octave_home): Now extern.
+	* defaults.h.in: Provide decl.
+
+2007-02-05  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_number::as_octave_value): Fake mxSINGLE_CLASS
+	by returning double-precision values.
+	(mxArray_sparse::as_octave_value): Clarify error message.
+
+	* ov-complex.h (octave_complex): Use std instead of OCTAVE_STD
+	since the latter was unconditionally defined to be std anyway.
+
+2007-02-05  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* ov-complex.h: Tag octave_complex class with OCTINTERP_API.
+
+2007-01-30  John W. Eaton  <jwe@octave.org>
+
+	* Merge of changes from graphics-branch:
+
+	2007-01-26  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__contourc__.cc: New function.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+	2007-01-25  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (Vdrawnow_requested): New static variable.
+	(F__request_drawnow__): New function.
+	(interactive_input): New function.  Update Vlast_prompt_time here.
+	(octave_gets, get_user_input, octave_yes_or_no):
+	Call interactive_input instead of gnu_readline.
+
+	* symtab.h (symbol_record::eternal): New data member.
+	(symbol_record::symbol_record): Initialize it.
+	(symbol_record::make_eternal, symbol_record::is_eternal):
+	Don't forward to symbol_def functions.
+	(symbol_record::symbol_def::make_eternal,
+	symbol_record::symbol_def::is_eternal): Delete.
+	(symbol_record::symbol_def::eternal): Delete data member.
+	(symbol_record::symbol_def::symbol_def): Delete initialization.
+
+	* pt-id.cc (tree_identifier::link_to_global): Include variable
+	name in warning message.
+
+	* variables.cc (F__lock_global__): New function.
+
+	2007-01-11  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (save_ascii_data_for_plotting, save_three_d):
+	Set precision to 6 instead of 4.
+
+2007-01-29  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Don't panic if
+	nargout is greater than 3.
+
+2007-01-24  John W. Eaton  <jwe@octave.org>
+
+	* pt-assgn.cc (former_built_in_variables): New static data.
+	(maybe_warn_former_built_in_variable): New static function.
+	(tree_simple_assignment::tree_simple_assignment,
+	tree_multi_assignment::tree_multi_assignment):
+	Move definition here from pt-assign.h
+	Maybe warn about assignment to obsolete built-in variables.
+
+	* version.h (OCTAVE_STARTUP_MESSAGE): Mention "news" function.
+
+	* pt-stmt.cc (tree_statement::eval): Use dynamic_cast, not
+	static_cast.
+
+	* help.cc (help_from_file): Show .oct or .mex file name if one
+	exists in the same directory as the .m file.
+
+2007-01-23  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* strfns.cc (Fstrncmp): New function.
+
+2007-01-17  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (help_from_file, help_from_symbol_table, help_from_list):
+	Rewrite using raw_ versions.
+
+2007-01-17  David Bateman  <dbateman@free.fr>
+
+	* help.cc (raw_help, raw_help_from_file,
+	raw_help_from_symbol_table, raw_help_from_list): New functions.
+	* help.h (raw_help): Provide decl.
+
+2007-01-16  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__pchip_deriv__.cc: Fix dpchim decl for --enable-64.
+	(F__pchip_deriv__): Fix call to dpchim for --enable-64.
+
+	* DLD-FUNCTIONS/fftw.cc: Delete decl for fftw_planner.
+
+2007-01-11  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* load-path.h (class load_path): Tag with OCTINTERP_API.
+
+	* ls-oct-binary.cc (read_binary_data): Use unsigned char, not
+	char, for reading flags and data types.
+
+2007-01-10  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* parse.y (load_fcn_from_file): Delete unused variable NAMES.
+	If NM is absolute, strip directory and extension parts.
+
+2007-01-10  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* DLD-FUNCTIONS/getrusage.cc: Use #ifdef __WIN32__, not __MINGW32__.
+
+2007-01-10  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (load_fcn_from_file): Only compare last two characters
+	when looking for ".m".
+
+2007-01-06  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_CONFIG_STATEMENT): New macro
+	(OCTAVE_NAME_AND_VERSION): Remove config info.
+	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY):
+	Use OCTAVE_CONFIG_STATEMENT here.
+
+2007-01-05  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (DLD_XSRC): Add fftw.cc and remove fftw_wisdom.cc
+	* DLD-FUNCTIONS/fftw.cc: New file.
+	* DLD-FUNCTIONS/fftw_wisdom.cc: Delete.
+	* defaults.cc (Vfftw_wisdom_program): Delete variable.
+	(set_default_fftw_wisdom_prog): Delete function that sets it.
+	(install_defaults): Delete set_default_fftw_prog from defaults.
+	(Ffftw_wisdom_program): Delete.
+
+2007-01-04  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
+	octave_fcn_handle::load_binary):
+	Throw error if handle can't be created.
+
+2007-01-04  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* mex.cc (mxArray_number::mxArray_number (int, const char **)):
+	Correctly index LHS in assignment.
+
+2007-01-03  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fisinteger): New function.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::is_integer_type,
+	OCTAVE_VALUE_INT_SCALAR_T::is_integer_type): New function.
+	* ov.h (octave_value::is_integer_type): New function.
+	* ov-base.h (octave_base_value::is_integer_type): New virtual function.
+
+2007-01-03  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* toplev.cc (Fsystem): Handle async calls on Windows systems.
+
+2007-01-03  David Bateman  <dbateman@free.fr>
+
+	* (OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
+	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
+	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
+	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc):
+	Modify div and ldiv functions so that scalars stored as sparse
+	matrices are special cased.
+
+	* ov-re-sparse.cc (double_value, complex_value): Scalar can be
+	stored as a sparse matrix and so don't warn on implicit conversion
+	to a scalar.
+	* ov-cx-sparse.cc (double_value, complex_value): ditto.
+	* ov-bool-sparse.cc (double_value, complex_value): ditto.
+
+2007-01-03  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load_mex): Also check
+	for _mexFunction.
+
+2006-12-30  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-inline.cc: For compatibility, class id is
+	"function_handle", not "inline function".
+
+2006-12-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (%.df : %.cc): Insert a "do not edit" notice in the
+	.df files.
+
+	* mex.cc (mxArray_matlab::get_class_name,
+	mxArray_octave_value::get_class_id): Use "function_handle", not
+	"function handle".
+
+2006-12-14  John W. Eaton  <jwe@octave.org>
+
+	* pt-decl.cc (tree_decl_elt::eval): New function.
+	* pt-decl.h (tree_decl_elt::eval): Provide decl.
+	(tree_decl_elt::is_defined, tree_decl_elt::lvalue_ok,
+	tree_decl_elt::mark_as_formal_parameter, tree_decl_elt::rvalue,
+	tree_decl_elt::lvalue): New functions.
+
+	* pt-misc.h (class tree_parameter_list): Derive from
+	octave_base_list<tree_decl_elt *> instead of
+	octave_base_list<tree_identifier *>.
+	(tree_parameter_list::tree_parameter_list (tree_identifier *)): Delete.
+	(tree_parameter_list::tree_parameter_list (tree_decl_elt *)):
+	New function.
+	* pt-misc.cc (tree_parameter_list::mark_as_formal_parameters,
+	tree_parameter_list::initialize_undefined_elements,
+	tree_parameter_list::undefine, tree_parameter_list::dup,
+	tree_parameter_list::convert_to_const_vector,
+	tree_parameter_list::is_defined): Handle argument list elements
+	as tree_decl_list objects instead of tree_identifier objects.
+	(tree_parameter_list::define_from_arg_vector): Likewise.
+	Always process entire list, setting default values if possible.
+	Accept ":" to mean "use default argument".
+
+	* parse.y (param_list2): Use decl2 to recognize
+	"identifier '=' expression" in addition to "identifier".
+
+	* parse.y (return_list1, make_anon_fcn_handle, finish_function):
+	Adapt to new definition of tree_parameter_list.
+	* pt-bp.cc (tree_breakpoint::visit_parameter_list): Likewise.
+	* pt-check.cc (tree_checker::visit_parameter_list): Likewise.
+	* pt-pr-code.cc (tree_print_code::visit_parameter_list): Likewise.
+
+2006-12-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::array_value,
+	OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
+	OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
+	OCTAVE_VALUE_INT_MATRIX_T::char_array_value):
+	Use fortran_vec to avoid expensive indexing operator.
+
+2006-12-08  David Bateman  <dbateman@free.fr>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::matrix_value,
+	OCTAVE_VALUE_INT_SCALAR_T::complex_matrix_value,
+	OCTAVE_VALUE_INT_MATRIX_T::matrix_value,
+	OCTAVE_VALUE_INT_MATRIX_T::comlex_matrix_value): New functions.
+	(OCTAVE_VALUE_INT_MATRIX_T::array_value,
+	OCTAVE_VALUE_INT_MATRIX_T::comlex_array_value):
+	Use octave_idx_type instead of int for indexing.
+
+2006-12-04  David Bateman  <dbateman@free.fr>
+
+	* xpow.cc (xpow (const Matrix&, double)): Add matrix type probing
+	to matrix inverse.
+	(xpow (const ComplexMatrix&, double)): ditto.
+	* DLD-FUNCTIONS/inv.cc (Finv): Add matrix type probing.
+
+2006-12-06  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc: Include "Cell.h" here.
+	* input.h: Include "oct-obj.h", not "ov-list.h".
+
+2006-12-06  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* mappers.cc (install_mapper_functions): Undefine isascii before
+	the DEFUN_MAPPER for it.
+
+	* input.cc (get_user_input): Prevent out of bounds array access
+	when checking for EOL.
+
+2006-12-05  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (extract_keyword): If no match and looking for
+	more, skip to end of line before trying another match.
+
+	* pt-mat.cc (tm_row_const::empty): New function.
+	(tm_const::init): Don't append anything if tmp tm_row_const object
+	is empty.
+	(tree_matrix::rvalue): Default return value is Matrix().
+	Don't do anything if tmp tm_const object is empty.
+
+	* dirfns.cc (Fmkdir): Fix thinko in previous change.
+
+2006-12-05  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* DLD-FUNCTIONS/rand.cc: Test for Poisson generator with lambda > 1e8.
+
+2006-12-04  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fdata): If ndims is greater than nargout and
+	nargout is greater than 1, then collect size of trailing
+	dimensions into retval(end).
+
+	* load-path.cc (load_path::do_find_fcn): Return empty string if
+	tests fail.
+
+	* ov-base-mat.cc (void octave_base_matrix<MT>::assign (const
+	octave_value_list&, const MT&)): Invalidate matrix type on
+	assignment.
+
+2006-11-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom):
+	Accept "r" or "w" for second argument.
+
+2006-11-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Look in load-path
+	if reading wisdom file, but not if writing.
+
+2006-11-28  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_struct::get_field_by_number):
+	Return 0 if key_num is out of range.
+	(mxArray_struct::set_field_by_number):
+	Do nothing if key_num is out of range.
+	(mxArray_cell::get_cell, mxArray_cell::set_cell):
+	Avoid out-of-bounds indexing
+
+2006-11-28  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* mex.cc (mxArray_matlab::get_n, mxArray_octave_value::get_n):
+	Return product of last N-1 dims.
+
+2006-11-28  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (eat_whitespace): Also handle CRLF as EOL.
+
+	* dirfns.cc (Fmkdir): Handle "mkdir (parent, dir)".
+
+2006-11-21  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (load_path::do_find_file,
+	load_path::do_find_first_of, load_path::do_find_all_first_of):
+	Call rooted_pathname instead of absolute_pathname.
+	* utils.cc (fcn_file_in_path, oct_file_in_path, mex_file_in_path):
+	Likewise.
+
+2006-11-16  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-hist.cc (default_history_file): Instead of appending
+	"/.octave_hist", append directory separator (but only if
+	necessary), then ".octave_hist".
+
+2006-11-16  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fresize): Fix doc string.
+
+2006-11-15  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (write_data, write_inline_data):
+	New functions.
+	(save_in_tmp_file): Use write_data.
+	(gnuplot::send_inline_data, gnuplot_do_send_inline_data):
+	New functions.
+	(F__gnuplot_send_inline_data__, F__gnuplot_save_data__):
+	New functions.
+
+	* ls-oct-ascii.cc (save_ascii_data_for_plotting):
+	Call save_ascii_data with precision = 4.
+	(save_three_d): Temporarily set precision to 4 for output stream.
+
+2006-11-15  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Cell.h (Cell): Tag class with OCTINTERP_API.
+
+2006-11-13  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (maximum_braindamage): Disable
+	Octave:fopen-file-in-path and Octave:load-file-in-path warnings.
+
+	* load-save.cc (find_file_to_load): New function.
+	(Fload): Call find_file_to_load to search load path for file.
+
+	* file-io.cc (Ffopen): Search load path for file.
+
+	* load-path.cc (path::do_find_first_of, path::do_find_file):
+	Break out of all loops once file is found, not just innermost one.
+
+	* data.cc (Fsize_equal): New function.
+
+2006-11-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* ov.cc (check_subsref_elements, Fsubsref, Fsubsasgn):
+	New functions.
+
+	* ov-re-mat.h, ov-scalar.h, pr-output.h:
+	Sprinkle with OCTINTERP_API as needed.
+
+2006-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (parse.cc): Avoid creating empty files.
+	(%.df : %cc, builtins.cc, mkbuiltins, PKG_ADD, DOCSTRINGS,
+	doc-files, gendoc.cc, ops.cc, $(OPT_HANDLERS), oct-errno.cc,
+	oct-gperf.h): Use $(simple-move-if-change-rule) here.
+	(lex.cc, __gnuplot_raw__.cc):
+	Use $(destdir-move-if-change-rule) here.
+	(ifndef omit_deps): Don't include stamp-prereq here.
+	($(DEF_FILES), $(MAKEDEPS)): Also depend on stamp-prereq.
+
+2006-11-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.cc (octave_char_matrix_str::load_ascii,
+	octave_char_matrix_str::load_binary):
+	Use chMatrix as buffer instead of C string.
+
+2006-11-09  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.h (octave_user_function::inline_function):
+	 New data member.
+	(octave_user_function::mark_as_inline_function): Set it.
+	(octave_user_function::is_inline_function): Check it.
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Also skip setting curr_parent_fucntion if evaluating an inline
+	function.
+	(octave_user_function::octave_user_function):
+	 Initialize inline_function.
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::rvalue):
+	Mark user function as inline here.
+
+2006-11-09  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* load-path.cc (load_path::move): Don't use reference to file_info
+	object that will be erased.
+
+2006-11-07  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (file_in_path): Don't unconditionally return "".
+
+	* pager.cc (default_pager): Don't append options here.
+	(pager_command): New function.
+	(do_sync): Use it.
+	(VPAGER_FLAGS): New variable.
+	(FPAGER_FLAGS): New function.
+
+2006-11-06  John W. Eaton  <jwe@octave.org>
+
+	* oct-hist.cc (default_history_file): If env_file is not empty,
+	just accept it rather than checking to see if it exists.
+
+2006-11-03  Bill Denney  <denney@seas.upenn.edu>
+
+	* help.cc (keywords): Document try and unwind_protect.
+
+2006-11-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DLL_CXXDEFS): Rename from XTRA_CXXDEFS.
+	(DLL_CDEFS): Rename from XTRA_CDEFS.
+	Substitute OCTINTERP_DLL_DEFS, not XTRA_OCTINTERP_DEFS.
+
+2006-11-02  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* sysdep.cc (MSVC_init): Also cal w32_sigint_init and
+	w32_set_quiet_shutdown.
+
+2006-11-01  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::idx_type_value): New function.
+	* data.cc (fill_matrix, Flinspace, Freshape): Use idx_type_value
+	instead of int_value to extract size args.
+
+2006-10-31  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::empty_clone): Return octave_matrix
+	object instead of octave_range.
+
+2006-10-29  Juhani Saastamoinen  <juhani@cs.joensuu.fi>
+
+	* ls-mat5.cc (read_mat5_tag): Declare bytes as int32_t, not just int.
+
+2006-10-28  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (Fatexit): Push function names on the stack even if we
+	don't have atexit or on_exit.
+
+2006-10-28  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* mappers.cc (install_mapper_functions): Undefine toascii before
+	the DEFUN_MAPPER for it.
+
+2006-10-27  John W. Eaton  <jwe@octave.org>
+
+	* mexproto.h: Include oct-dlldefs.h.
+
+	* pr-output.cc (SPECIALIZE_UABS): New macro.
+	Use it to generate specializations of abs for unsigned int types.
+	Instantiate abs for signed int types.
+
+	* load-path.cc (load_path::do_initialize):
+	Use dir_path::path_sep_str instead of ":".
+	Don't append ":::" to xpath when calling do_set.
+
+	* dirfns.cc (Fls, cleanup_iprocstream): Delete.
+
+	* sysdep.cc (Ftilde_expand): If arg is cellstr, return cellstr.
+
+	* ov.h (octave_value::is_cellstr): New function.
+	* ov-base.h (octave_base_value::is_cellstr): New function.
+	* ov-cell.h (octave_cell::is_cellstr): New function.
+	* ov-cell.cc (Fiscellstr): Implement with is_cellstr.
+	* Cell.cc (Cell::Cell (const dim_vector&, const string_vector&, bool)):
+	New constructor.
+	(Cell::is_cellstr): New function.
+	* Cell.h: Provide decls.
+
+	* defaults.cc (subst_octave_home): If dir_sep_char is not '/',
+	replace before returning.
+	From Michael Goffioul <michael.goffioul@swing.be>.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* cutils.c (octave_strcasecmp, octave-strncasecmp):
+	Move to liboctave/lo-cutils.c.
+	* utils.h: Delete decls.
+	* strcasecmp.c: Move to liboctave/strcasecmp.c.
+	* strncase.c: Move to liboctave/strncase.c.
+	* Makefile.in (DIST_SRC): Delete them from the list.
+
+	* bitfcns.cc (bitshift): If A < 0, return -bitshift (-A, N, MASK).
+
+2006-10-26  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* help.cc (display_help_text): Quote sed patterns with ".
+
+	* file-io.cc: Include file-io.h.
+
+	* TEMPLATE-INST/Array-os.cc, TEMPLATE-INST/Array-sym.cc,
+	TEMPLATE-INST/Array-tc.cc, defun-int.h, error.h, file-io.h,
+	gripes.h, ls-oct-ascii.h, mexproto.h, oct-map.h, oct-obj.h,
+	oct-stream.cc, oct-stream.h, octave.h, ov-base.h,
+	ov-bool-sparse.cc, ov-bool-sparse.h, ov-cx-sparse.cc,
+	ov-cx-sparse.h, ov-fcn.h, ov-re-sparse.cc, ov-re-sparse.h,
+	ov-str-mat.h, ov-typeinfo.cc, ov-typeinfo.h, ov.h, pager.h,
+	parse.h, pr-output.cc, pr-output.h, procstream.h, sighandlers.h,
+	symtab.h, unwind-prot.h, utils.h, variables.h:
+	Sprinkle with OCTINTERP_API as needed.
+
+2006-10-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-bool.h (octave_bool::sparse_matrix_value,
+	octave_bool::sparse_complex_matrix_value
+	octave_bool::sparse_bool_matrix_value): New functions.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc: Check defined (RETSIGTYPE_IS_VOID) instead of
+	RETSIGTYPE == void.
+
+	* oct-procbuf.cc (BUFSIZ): Define if not already defined.
+	(octave_procbuf::open): Pass BUFSIZ as size argument to setvbuf.
+
+2006-10-25  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in (XTRA_CDEFS, XTRA_CXXDEFS): Substitute here.
+
+	* oct-procbuf.cc [_MSC_VER]: Define W32POPEN and W32PCLOSE the
+	same as for __MINGW32__.
+	(octave_procbuf::open, octave_procbuf::close) [_MSC_VER]:
+	Use the same code as for __MINGW32__ and __CYGWIN__.
+
+	* oct-prcstrm.cc [_MSC_VER]: Define popen and pclose.
+
+2006-10-25  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (w32_set_octave_home): Correctly initialize bin_dir.
+	Fill it with '\0' instead of ' '.
+
+2006-10-24  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Filter out $(XTRA_CXXDEFS) from $(ALL_CXXFLAGS) for
+	$(DLD_PICOBJ).
+
+2006-10-24  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.cc (MSC_init): New function.
+	(sysdep_init): Call it.
+	(w32_set_octave_home): New function, based on code from Michael
+	Goffioul <michael.goffioul@swing.be>.
+	(MINGW_init): Call w32_set_octave_home here too.
+
+2006-10-23  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_table::clear_mex_functions): New function.
+	* symtab.h: Provide decl.
+	* vriables.cc (clear_mex_functions): New function.
+	* variables.h Provide decl.
+	* toplev.cc: Call clear_mex_functions instead of delete_symbol_tables.
+
+	* variables.cc (delete_symbol_tables): Delete.
+	* variables.h: Delete decl.
+
+	* mex.cc (mex::unmark_array): New function.
+	(mex::persistent): Define with unmark_array.
+	(maybe_unmark_array): New function.
+	(mxArray_struct::set_field_by_number, mxArray_cell::set_cell):
+	Call maybe_unmark_array on val to avoid freeing val twice on exit
+	from mex function.
+	(mxFree): Call xfree, not free.
+
+2006-10-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-intx.h
+	(OCTAVE_VALUE_INT_MATRIX_T::OCTAVE_TYPE_PREDICATE_FUNCTION,
+	(OCTAVE_VALUE_INT_SCALAR_T::OCTAVE_TYPE_PREDICATE_FUNCTION):
+	Function is now const, so it properly overloads method in base
+	class.
+
+	* mex.cc (mxArray_octave_value::is_uint32):
+	Call val.is_uint32_type, not val.is_int32_type.
+	(mxArray_octave_value::is_uint64):
+	Call val.is_uint64_type, not val.is_int64_type.
+	(mxArray_octave_value::is_uint8):
+	Call val.is_uint8_type, not val.is_int8_type.
+
+2006-10-20  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* ov-mex-fcn.h (octave_mex_function::atexit): New function.
+	(octave_mex_function::exit_fcn_ptr): New data member.
+	* ov-mex-fcn.cc (octave_mex_function::exit_fcn_ptr): New data member.
+	(octave_mex_function::octave_mex_function): Initialize it.
+	(octave_mex_function::~octave_mex_function):
+	If we have an exit function, call it.
+
+2006-10-20  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (delete_symbol_tables): New function.
+	* variables.h: Provide decl.
+	* toplev.cc (do_octave_atexit): Call it.
+
+	* mex.cc (mex::mex): New arg, a pointer to the current mex function.
+	(mex::curr_mex_fcn): New data member.
+	(mex::current_mex_function): New function.
+	(mexAtExit): Set exit function pointer in current mex file object.
+
+2006-10-20  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* mex.cc (enum callstyle): Delete enum definition.
+	(Fortran_mex, C_mex): Delete functions.
+	(call_mex): First arg is now bool.
+	* ov-mex-fcn.cc (call_mex): Fix decl to match new definition.
+	(Fortran_mex, C_mex): Delete decls.
+	(octave_mex_function::do_multi_index_op): Simplify call to call_mex.
+
+2006-10-20  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (handle_identifier): If a command name is found, skip
+	starting command mode if parsing an object index.
+
+2006-10-20  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTION/spqr.cc (dmperm_internal): New function with core
+	of Fdmperm.
+	(Fdmperm): Call dmperm_internal rather then calculating loally.
+	(Fsprank): New function to calculate the strutural rank also using
+	dmperm_internal.
+
+2006-10-19  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::as_mxArrary):
+	Use OCTAVE_LOCAL_BUFFER to allocate tempoarary array of field names.
+
+	* mxarray.h (mxArray::persistent): Delete var and all uses.
+	(mxArray::mark_persistent, mxArray::unmark_persistent,
+	mxArray::is_persistent): Delete functions.
+	* mex.cc (mex::function_name): Use mxArray::strsave, not strsave.
+	(mex::mark_array): New function.
+	(mex::make_value): Use it.
+	(mex::free_value): Return true if we found ptr in arraylist.
+	(mex::persistent (mxArray *)): Remove ptr from arraylist instead
+	of marking it as persistent.
+	(mxArray::malloc): Call ::malloc instead of malloc.
+	(mxArray::calloc): Call ::calloc instead of calloc.
+	(maybe_mark_array): New function.
+	(mxCreateCellArray, mxCreateCellMatrix, mxCreateCharArray,
+	mxCreateCharMatrixFromStrings, mxCreateDoubleMatrix,
+	mxCreateDoubleScalar, mxCreateLogicalArray, mxCreateLogicalMatrix,
+	mxCreateLogicalScalar, mxCreateNumericArray,
+	mxCreateNumericMatrix, mxCreateSparse,
+	mxCreateSparseLogicalMatrix, mxCreateString, mxCreateStructArray,
+	mxCreateStructMatrix, mxDuplicateArray): Use it.
+	(mxDestroyArray): No need to check persistence now.
+	Also delete ptr if mex_context->free_value does not.
+	(call_mex): No need to delete elements of argout now.
+
+2006-10-18  John W. Eaton  <jwe@octave.org>
+
+	* dynamic-ld.cc (octave_shlib_list::remove,
+	octave_shlib_list::do_remove, octave_mex_file_list::remove,
+	octave_mex_file_list::do_remove): New arg, cl_hook.
+	(octave_shlib_list::do_remove): Pass cl_hook to octave_shlib close
+	function.
+	(octave_dynamic_loader::do_load_oct): Don't call close on shl
+	directly.  Pass do_clear_function to octave_shlib_list::remove.
+
+	* mex.cc (mexUnlock): Don't warn if unlocking a function that is
+	not locked.
+
+	* pt-fcn-handle.cc (tree_anon_fcn_handle::dup):
+	Correctly duplicate symbol table info.
+
+2006-10-17  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* oct-map.h: Include <algorithm>.
+
+2006-10-16  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream_list::do_remove): Handle "all" as a
+	special case.
+
+2006-10-13  Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Adapt rules to use $(LIBPRE).
+
+2006-10-11  John W. Eaton  <jwe@octave.org>
+
+	* mex.h (UINT64_T, uint64_T, INT64_T, int64_T, UINT32_T, uint32_T,
+	INT32_T, int32_T, UINT16_T, uint16_T, INT16_T, int16_T, UINT8_T,
+	uint8_T, INT8_T, int8_T): Conditionally define.
+	From Andy Adler <adler@site.uottawa.ca>.
+
+2006-10-09  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in (OCTAVE_CONF_CURL_LIBS): Substitute.
+	* toplev.cc (octave_config_info): Add CURL_LIBS to the list.
+
+2006-10-09  Alexander Barth  <abarth@marine.usf.edu>
+
+	* DLD-FUNCTIONS/urlwrite.cc: New file providing urlwrite and urlread.
+
+2006-10-09  John W. Eaton  <jwe@octave.org>
+
+	* pt-mat.cc (tree_matrix::dup): Append new elements to new matrix.
+	* pt-cell.cc (tree_cell::dup): Append new elements to new cell array.
+
+2006-10-04  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.9+.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__clear_plot_window__):
+	Rename from Fclearplot.  Only clear plot window.
+
+2006-10-03  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/luinc.cc (Fluinc): Avoid crash if SparseLU or
+	SparseComplexLU constructor fails.
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx):
+	Delete unused variable.
+
+2006-10-03  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (OCT_LINK_DEPS) Include $(CAMD_LIBS) in the list.
+	(octave$(EXEEXT)): Include $(CAMD_LIBS) in link command.
+
+2006-10-02  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.9.
+	(OCTAVE_API_VERSION): Now api-v22.
+	(OCTAVE_RELEASE_DATE): Now 2006-10-02.
+
+	* pr-output.cc (pr_plus_format): Use "inline" instead of "static
+	inline" for template functions to avoid problems when not
+	compiling with 	g++.
+
+	* mex.cc (call_mex): Delete elements of argout.
+	From Kai Labusch <labusch@inb.uni-luebeck.de>.
+
+2006-09-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/spfind.cc (sparse_find_non_zero_elem_idx):
+	Leading dimension is NR, not NC.
+
+	* Makefile.in (DEP_5): Include oct-errno.cc in the list.
+
+2006-09-27  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (abs): New template function.  Instantiate for
+	unsigned types.
+
+2006-09-27  David Bateman  <dbateman@free.fr>
+
+	* file-io.cc (Fsprintf): If fmt is an sq_string, return an sq_string.
+
+	* DLD-FUNCTIONS/sparse.cc (spfind, sparse_find): Delete.
+	* DLD-FUNCTIONS/spfind.cc: New file implementating compatible
+	sparse find function.
+	* Makefile.in (DLD_XSRC): Add spfind.cc.
+
+2006-09-26  Bill Denney  <bill@givebillmoney.com>
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx, Ffind):
+	Handle direction and limit on number of elements to find.
+
+2006-09-26  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (warning_1): Call error_2, not error.
+
+2006-09-15  John W. Eaton  <jwe@octave.org>
+
+	* ops.h (DEFSTRDBLCONVFN): New arg, TFROM.
+	* OPERATORS/op-double-conv.cc: Declare and install sq_string
+	conversions too.
+
+	* ov-base-int.cc (octave_base_int_scalar<T>::convert_to_str_internal,
+	octave_base_int_matrix<T>::convert_to_str_internal):
+	New functions.
+	* ov-base-int.h: Provide decls.
+
+2006-09-15  S�ren Hauberg  <soren@hauberg.org>.
+
+	* data.cc (Fsize): If nargout > ndims, fill with 1.
+
+2006-09-15  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc: Fix xerbla decl.
+
+2006-09-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/cellfun.cc: Improve error message for uniform
+	output case when results are not scalars.  Avoid shadow decls.
+
+2006-09-13  David Bateman  <dbateman@free.fr>
+
+	* ov-scalar.h (octave_scalar::sparse_matrix_value,
+	octave_scalar::sparse_complex_matrix_value): New extractor functions.
+	* ov-complex.h (octave_complex::sparse_matrix_value,
+	octave_complex::sparse_complex_matrix_value): Ditto.
+	* DLD-FUNCTIONS/spkron.cc (Fspkron): Change example in help.
+
+2006-09-12  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun): Allow matlab compatiable
+	'UniformOutput' and 'ErrorHandler' options.  Change output when
+	called with function handler or inline function to by default have
+	'UniformOutput' set to true.  Allow functions with multiple inputs
+	and outputs. Add test code.  Replace some int with octave_idx_type.
+	(Fnum2cell): Replace some int with octave_idx_type.  Add test code.
+
+2006-09-11  Yozo Hida  <yozo@cs.berkeley.edu>
+
+	* DLD-FUNCTIONS/gcd.cc (Fgcd): Extend range by using std::floor
+	instead of converting to int.
+
+2006-09-05  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_sparse::as_octave_value): Cast nzmax to
+	octave_idx_type for sparse matrix constructors.
+
+2006-09-01  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc: Don't handle nargout == 0 as a special case.
+	(octave_change_to_directory): Perform tilde expansion on directory
+	name here.
+
+2006-08-30  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (get_file_format): Fix misplaced #endif.
+
+2006-08-29  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (execute_pkg_add_or_del):
+	Source PKG_ADD or PKG_DEL in base workspace.
+	* parse.y (source_file): New optional arg, context.
+	* parse.h (source_file): Fix decl.
+
+2006-08-25  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.8+.
+
+2006-08-24  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.8.
+	(OCTAVE_API_VERSION): Now api-v21.
+	(OCTAVE_RELEASE_DATE): Now 2006-08-24.
+
+2006-08-23  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::save_ascii): Delete strip_nan_and_inf arg.
+	* ov-base.h, ov-base.cc (octave_base_value::save_ascii): Likewise.
+	* ov-base-int.h, ov-base-int.cc	(octave_base_int_matrix<T>::save_ascii,
+	octave_base_int_scalar<T>::save_ascii, ): Likewise.
+	* ov-base-sparse.cc, ov-base-sparse.h
+	(octave_base_sparse<T>::save_ascii): Likewise.
+	* ov-bool-mat.cc, ov-bool-mat.h (octave_bool_matrix::save_ascii):
+	Likewise.
+	* ov-bool.cc, ov-bool.h (octave_bool::save_ascii): Likewise.
+	* ov-cell.cc, ov-cell.h (octave_cell::save_ascii): Likewise.
+	* ov-complex.cc, ov-complex.h (octave_complex::save_ascii): Likewise.
+	* ov-fcn-handle.cc, ov-fcn-handle.h (octave_fcn_handle::save_ascii):
+	Likewise.
+	* ov-fcn-inline.cc, ov-fcn-inline.h (octave_fcn_inline::save_ascii):
+	Likewise.
+	* ov-list.cc, ov-list.h (octave_list::save_ascii): Likewise.
+	* ov-range.cc, ov-range.h (octave_range::save_ascii): Likewise.
+	* ov-scalar.cc, ov-scalar.h (octave_scalar::save_ascii): Likewise.
+	* ov-str-mat.cc, ov-str-mat.h (octave_char_matrix_str::save_ascii):
+	Likewise.
+	* ov-struct.cc, ov-struct.h (octave_struct::save_ascii): Likewise.
+	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
+	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
+	Likewise.
+	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
+	Likewise.
+	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
+
+	* ls-oct-ascii.cc, ls-oct-ascii.h (save_ascii_data):
+	Delete strip_nan_and_inf arg.
+	(save_ascii_data_for_plotting): Delete strip_nan_and_inf arg from
+	call to save_ascii_data.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (handle_using): Accept "(EXPR)"
+	as components of using clauses.
+	(enum _toktype): New element DOLLAR.
+	Accept "$" in lexer.
+
+	* ls-oct-ascii.cc (save_ascii_data): Delete arg strip_nan_and_inf.
+	Change all uses.
+
+	* ls-oct-ascii.h (save_three_d): Provide decl.
+	* load-save.h (save_ascii_data_for_plotting, save_three_d):
+	Delete decls.
+
+2006-08-22  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::save_ascii): strip_nan_and_inf is now int,
+	not bool.
+	* ov-base.h, ov-base.cc (octave_base_value::save_ascii): Likewise.
+	* ov-base-int.h, ov-base-int.cc	(octave_base_int_matrix<T>::save_ascii,
+	octave_base_int_scalar<T>::save_ascii, ): Likewise.
+	* ov-base-sparse.cc, ov-base-sparse.h
+	(octave_base_sparse<T>::save_ascii): Likewise.
+	* ov-bool-mat.cc, ov-bool-mat.h (octave_bool_matrix::save_ascii):
+	Likewise.
+	* ov-bool.cc, ov-bool.h (octave_bool::save_ascii): Likewise.
+	* ov-cell.cc, ov-cell.h (octave_cell::save_ascii): Likewise.
+	* ov-complex.cc, ov-complex.h (octave_complex::save_ascii): Likewise.
+	* ov-fcn-handle.cc, ov-fcn-handle.h (octave_fcn_handle::save_ascii):
+	Likewise.
+	* ov-fcn-inline.cc, ov-fcn-inline.h (octave_fcn_inline::save_ascii):
+	Likewise.
+	* ov-list.cc, ov-list.h (octave_list::save_ascii): Likewise.
+	* ov-range.cc, ov-range.h (octave_range::save_ascii): Likewise.
+	* ov-scalar.cc, ov-scalar.h (octave_scalar::save_ascii): Likewise.
+	* ov-str-mat.cc, ov-str-mat.h (octave_char_matrix_str::save_ascii):
+	Likewise.
+	* ov-struct.cc, ov-struct.h (octave_struct::save_ascii): Likewise.
+	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii): Likewise.
+	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
+	Likewise.
+
+	* ov-cx-mat.cc, ov-cx-mat.cc (octave_complex_matrix::save_ascii):
+	Don't strip Inf and NaN here.  Call ComplexMatrix::save_ascii to
+	do the real work.
+	* ov-re-mat.cc, ov-re-mat.cc (octave_matrix::save_ascii):
+	Don't strip Inf and NaN here.  Call Matrix::save_ascii to do the
+	real work.
+
+	* ov-re-mat.cc, ov-cx-mat.cc (strip_infnan): Delete.
+	* ls-oct-ascii.cc, ls-oct-ascii.h (save_ascii_data):
+	strip_nan_and_inf is now int, not bool.
+	(strip_infnan): Delete.
+	(save_ascii_data_for_plotting): Call save_ascii_data with
+	strip_nan_and_inf = 2.
+
+	* Makefile.in (INCLUDES): Remove matrix.h from the list.
+
+2006-08-22  David Bateman  <dbateman@free.fr>
+
+	* sparse-xpow.cc: Replace all uses of pow by std::pow.
+	(elem_pow): Simplify for two sparse matrices arguments.
+
+2006-08-22  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc: Increase default value of save_precision to 16.
+
+	* ls-mat-ascii.cc (save_mat5_ascii_data): Use scientific format.
+
+2006-08-21  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_mat5_binary_data, read_mat5_integer_data,
+	write_mat5_array): Unconditionally enable code for 64-bit int types.
+
+	* ov-fcn-handle.cc (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA):
+	For compatibility, set class to function_handle.
+
+2006-08-18  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (set_real_matrix_format): Also always include space
+	for sign if values are int, inf, or nan.
+	(set_complex_format, set_complex_matrix_format): Always include
+	space for sign in real format, but never in imaginary format.
+
+	* gripes.cc (gripe_logical_conversion): New function.
+	* gripes.h: Provide decl.
+	* ov.h (octave_value::bool_value, octave_value::bool_matrix_value,
+	octave_value::bool_array_value): New arg, warn.
+	* ov-base.cc, ov-base.h (octave_base_value::bool_value,
+	octave_base_value::bool_matrix_value,
+	octave_base_value::bool_array_value): Likewise.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value): Likewise.
+	* ov-range.h (octave_range::bool_array_value): Likewise.
+	* ov-re-mat.cc, ov-re-mat.h (octave_matrix::bool_array_value):
+	Likewise.
+	* ov-re-sparse.cc, ov-re-sparse.h
+	(octave_sparse_matrix::bool_array_value): Likewise.
+	* ov-scalar.h (octave_scalar::bool_value,
+	octave_scalar::bool_array_value): Likewise.
+	* OPERATORS/op-bm-b.cc (oct_assignop_conv_and_assign):
+	Ask for warning from bool_array_value.
+	* OPERATORS/op-bm-bm.cc (oct_assignop_conv_and_assign): Likewise.
+	* ov-bool.h (octave_bool::bool_value,
+	octave_bool::bool_matrix_value, octave_bool::bool_array_value):
+	Likewise.
+	* ov-bool-mat.h (octave_bool_matrix::bool_matrix_value,
+	octave_bool_matrix::bool_array_value): Likewise.
+	* ov-bool-sparse.cc, ov-bool-sparse.h
+	(octave_sparse_bool_matrix::bool_matrix_value,
+	octave_sparse_bool_matrix::bool_array_value): Likewise.
+
+2006-08-18  Benjamin Lindner  <lindnerben@gmx.net>
+
+	* ls-mat5.cc (read_mat5_tag): Declare type as int32_t, not int.
+	(read_mat5_binary_element): Likewise, for len and element_length.
+
+2006-08-18  John W. Eaton  <jwe@octave.org>
+
+	* load-save.h (enum load_save_format): New element, LS_MAT_ASCII_LONG.
+	* load-save.cc (Fload, Fsave): Make -ascii Matlab compatible.
+	(do_save): Handle LS_MAT_ASCII.
+	* ls-mat-ascii.cc (save_mat_ascii_data): New function.
+	* ls-mat-ascii.h: Provide decl.
+
+2006-08-17  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (save_mat5_element_length): Correctly compute element
+	length for character data.  Handle N-d character data
+	(save_mat5_binary_element): Handle N-d character data.
+
+2006-08-16  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (gobble_leading_white_space): New arg, SKIP_CODE.
+	Change all uses.
+
+2006-08-15  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (help_from_file): Call get_help_from_file with new file
+	arg.  Print file info here.
+
+	* parse.y (get_help_from_file): Delete include_file_info arg.
+	Provide two versions, one that returns the file found in a
+	reference arg and one that does not.
+
+	* variables.cc (do_isglobal): New function.
+	(Fisglobal): Use it.
+	(Fis_global): New function.
+
+2006-08-14  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_record_name_compare): Fix casts.
+
+	* ov-cell.cc (octave_cell::subsasgn): Call empty_conv for 0x0
+	objects, not just empty objects.
+
+	* oct-map.h (Octave_map::clear): Also clear key_list.
+
+	* load-path.cc (load_path::find_dir_info, load_path::do_add,
+	load_path::do_remove): Perform tilde expansion on directory here.
+
+2006-07-29  John W. Eaton  <jwe@octave.org>
+
+	* matrix.h: Delete to avoid conflict with liboctave/Matrix.h on
+	case-insensitive filesystems.
+
+	* version.h (OCTAVE_VERSION): Now 2.9.7+.
+
+2006-07-28  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.7.
+	(OCTAVE_API_VERSION): Now api-v20.
+	(OCTAVE_RELEASE_DATE): Now 2006-07-28.
+
+	* load-path.cc (path::do_add): Warn for trailing "//".
+
+	* strfns.cc: Comment out some tests for snapshot.
+
+2006-07-27  John W. Eaton  <jwe@octave.org>
+
+	* defaults.cc (Vlocal_api_arch_lib_dir): New variable.
+	(set_default_local_api_arch_lib_dir): New function.
+	(install_defaults): Call it.
+	(set_exec_path): Put Vlocal_api_arch_lib_dir in the list.
+	* toplev.cc (localapiarchlibdir): Include it in the list.
+	* defaults.h.in (OCTAVE_LOCALAPIARCHLIBDIR): Substitute here.
+
+2006-07-26  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray::as_octave_value (mxArray *)): New static function.
+	(call_mex, mexPutVariable, mexCallMATLAB,
+	mxArray_cell::as_octave_value, mxArray_struct::as_octave_value):
+	Use static version of as_octave_value here.
+	(mxArray_sparse::mxArray_sparse (const mxArray_sparse&)):
+	Check pr, ir, and jc before calling memcpy.
+	(mxArray_number::mxArray_number): Check pr before calling memcpy
+
+	* mxarray.h (mxArray::as_octave_value (mxArray *)): Provide decl.
+	(mxArray::as_octave_value): Now protected.
+
+	* file-io.cc (Ffeof, Fferror): Use DEFUNX instead of DEFUN.
+
+	* mex.cc (xfree): New function.
+	(mex::free): Use it.
+	(mxArray_struct::~mxArray_struct, mxArray_cell::~mxArray_cell):
+	Delete elements with delete, not mxDestroyArray.
+	(mex::cleanup): Don't call mex::free or mex::free_value.
+	(mex::free_value): Add debug warning.
+	(mex::mark, mex::unmark): Fix debug warning.
+	(call_mex): Use unwind_protect frame.
+	(mexUnlock): Use iterator to remove item from mex_lock_count.
+
+	* octave.cc (maximum_braindamage): Use disable_warning instead of
+	bind_internal_variable to disable function-name-clash warning.
+	* error.cc (disable_warning): No longer static.
+	* error.h: Provide decl.
+
+2006-07-25  David Bateman  <dbateman@free.fr>
+
+	* mex.cc (mxArray_octave_value::get_class_id): Handle sparse.
+	(class mxArray_sparse): Derive from mxArray_matlab, not
+	mxArray_number.
+	(mxArray_sparse::as_octave_value): Implement function.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::as_mxArray):
+	Implement function.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::as_mxArray):
+	Implement function.
+	* ov-re-sparse.cc (octave_sparse_matrix::as_mxArray):
+	Implement function.
+
+2006-07-25  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mxArray_struct::as_octave_value, call_mex,
+	mexCallMATLAB, mxArray_cell::as_octave_value):
+	Convert NULL mxArray* pointers to empty matrix values.
+	(mxArray_octave_value:get_ir): Fix typo.
+
+2006-07-22  John W. Eaton  <jwe@octave.org>
+
+	* mxarray.h: New file.
+	* mex.h, mexproto.h, mex.cc: New implementation of mxArray and MEX
+	interface.
+
+	* ov.h (octave_value::mex_get_ir, octave_value::mex_get_jc):
+	New functions.
+	* ov-base.h (octave_base_value::mex_get_ir,
+	octave_base_value::mex_get_jc): New virtual functions.
+	* ov-base-sparse.h (octave_base_sparse<T>::mex_get_ir,
+	octave_base_sparse<T>::mex_get_jc): New functions.
+
+	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::as_mxArray,
+	OCTAVE_VALUE_INT_MATRIX_T::as_mxArray): New functions.
+	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-uint8.h,
+	ov-uint16.h, ov-uint32.h, ov-uint64.h: Define OCTAVE_INT_MX_CLASS
+	before including ov-intx.h.  Undef it after.
+	* ov-range.cc (octave_range::as_mxArray): New function.
+	* ov-range.h: Provide decl.
+	* ov-scalar.cc (octave_scalar::as_mxArray): New function.
+	* ov-scalar.h: Provide decl.
+	* ov-complex.cc (octave_complex::as_mxArray): New function.
+	* ov-complex.h: Provide decl.
+	* ov-re-mat.cc (octave_matrix::as_mxArray): New function.
+	* ov-re-mat.h: Provide decl.
+	* ov-cx-mat.cc (octave_complex_matrix::as_mxArray): New function.
+	* ov-cx-mat.h: Provide decl.
+	* ov-ch-mat.cc (octave_char_matrix::as_mxArray): New function.
+	* ov-ch-mat.h: Provide decl.
+	* ov-bool-mat.cc (octave_bool_matrix::as_mxArray): New function.
+	* ov-bool-mat.h: Provide decl.
+	* ov-bool.cc (octave_bool::as_mxArray): New function.
+	* ov-bool.h: Provide decl.
+
+	* ov-struct.h (octave_struct::numel): New function.
+
+	* ls-mat5.cc (arrayclasstype): Use "MAT_FILE_" instead of "mx" as
+	prefix for element names.
+
+	* ov.h (octave_value::as_mxArray): New function.
+	* ov-base.cc (octave_base_value::as_mxArray): New function.
+	* ov-base.h: Provide decl.
+
+	* ov.h (octave_value::mex_get_data): New function.
+	* ov-base.h (octave_base_value::mex_get_data): New function.
+	* ov-base-scalar.h (octave_base_scalar<ST>::mex_get_data): New function.
+	* ov-base-matrix.h (octave_base_matrix<MT>::mex_get_data): New function.
+	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::mex_get_data): New function.
+
+	* ov.h (octave_value::nfields): New function.
+	* ov-base.cc (octave_base_value::nfields): New virtual function.
+	* ov-base.h: Provide decl.
+	* ov-struct.h (octave_struct::nfields): New function.
+
+2006-07-19  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-bm-bm.cc (oct_assignop_conv_and_assign): New function.
+	(install_bm_bm_ops): Install it for various types.
+	* OPERATORS/op-bm-b.cc (oct_assignop_conv_and_assign): New function.
+	(install_bm_b_ops): Install it for various types.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::bool_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::bool_array_value): New functions.
+	* ov-range.h (octave_range::bool_array_value): New function.
+	* ov-re-sparse.cc (octave_sparse_matrix::bool_array_value):
+	New function.
+	* ov-re-sparse.h: Provide decl.
+	* ov-re-mat.cc (octave_matrix::bool_array_value): New function.
+	* ov-re-mat.h: Provide decl.
+
+	* ov-base.cc (octave_base_value::numeric_assign):
+	Avoid memory leak when converting LHS.
+
+2006-07-18  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::is_int8_type, octave_value::is_int16_type,
+	octave_value::is_int32_type, octave_value::is_int64_type,
+	octave_value::is_uint8_type, octave_value::is_uint16_type,
+	octave_value::is_uint32_type, octave_value::is_uint64_type):
+	New functions.
+	* ov-base.h (octave_base_value::is_int8_type,
+	octave_base_value::is_int16_type,
+	octave_base_value::is_int32_type,
+	octave_base_value::is_int64_type,
+	octave_base_value::is_uint8_type,
+	octave_base_value::is_uint16_type,
+	octave_base_value::is_uint32_type,
+	octave_base_value::is_uint64_type): New functions.
+	* ov-int8.h, ov-int16.h, ov-int32.h, ov-int16.h, ov-uint8.h,
+	ov-uint16.h, ov-uint32.h, ov-uint16.h: Define OCTAVE_BASE_INT_T.
+	* ov-intx.h: Use OCTAVE_BASE_INT_T to define type-specific predicate.
+
+	* ov.h (octave_value::is_double_type, octave_value::is_single_type):
+	New functions.
+	* ov-base.h (octave_base_value::is_double_type,
+	octave_base_value::is_single_type): New functions.
+	* ov-re-mat.h (octave_matrix::is_double_type): New function.
+	* ov-cx-mat.h (octave_matrix::is_double_type): New function.
+	* ov-scalar.h (octave_scalar::is_double_type): New function.
+	* ov-complex.h (octave_complex::is_double_type): New function.
+	* ov-range.h (octave_range::is_double_type): New function.
+	* ov-re-sparse.h (octave_sparse_matrix::is_double_type): New function.
+	* ov-cx-sparse.h (octave_sparse_complex_matrix::is_double_type):
+	New function.
+
+2006-07-15  John W. Eaton  <jwe@octave.org>
+
+	* ov-typeinfo.cc: Also instantiate arrays of assignany_ops.
+
+	* oct-errno.cc.in (octave_errno::octave_errno): VALUE field in
+	errno_struct no longer const.
+
+	* DLD-FUNCTIONS/dispatch.cc (octave_dispatch::do_index_op):
+	Declare	resize_ok arg as bool, not int.
+	Provide default value for resize_ok.
+
+2006-07-14  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (do_write): Include explicit instantiations.
+
+	* ov-str-mat.h (octave_char_matrix_sq_str::resize):
+	Include fill arg to match base class.
+	* ov-struct.h (octave_struct::resize): Likewise.
+
+	* ov-base-mat.cc, ov-base-mat.h, ov-base-sparse.cc,
+	ov-base-sparse.h, ov-base.cc, ov-base.h, ov-bool.cc,
+	ov-bool.h, ov-complex.cc, ov-complex.h, ov-intx.h, ov-list.cc,
+	ov-list.h, ov-range.cc, ov-range.h, ov-scalar.cc, ov-scalar.h,
+	ov-str-mat.cc, ov-str-mat.h, ov.h (do_index_op):
+	Declare	resize_ok arg as bool, not int.
+	Provide default value for resize_ok.
+
+	* c-file-ptr-stream.h (c_file_ptr_stream::c_file_ptr_stream):
+	Qualify init.
+
+2006-07-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.h (Octave_map::del): Add missing std:: qualifier to use
+	of find template.
+
+2006-07-07  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (octave_value::is_bool_scalar): New function.
+	* ov-base.h (octave_base_value::is_bool_scalar): New function.
+	* ov-bool.h (octave_bool::is_bool_scalar): New function.
+
+	* oct-map.cc (Octave_map::keys): Use assert.
+	(Octave_map::assign): Avoid inserting new key in map unless
+	assignment to cell succeeds.
+
+	* oct-map.h (Octave_map::del): Only touch key_list if map contains key.
+	Assert that key_list contains key.
+
+	* oct-map.h (Octave_map::maybe_add_to_key_list): For efficiency,
+	check map, not key_list.  From Paul Kienzle  <pkienzle@users.sf.net>.
+
+2006-07-06  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Declare mrowsc volatile.
+
+	* ov-struct.cc (octave_struct::print_raw): Print keys in key_list
+	order.
+
+	* oct-map.h (Octave_map::key_list): New data member.
+	(Octave_map::maybe_add_to_key_list): New function.
+	(Octave_map::key_list_iterator, Octave_map::const_key_list_iterator):
+	New typedefs.
+	(Octave_map::del): Also delete key from key_list.
+	* oct-map.cc (Octave_map::keys): Compute return value from
+	key_list instead of map.
+	(Octave_map::assign, Octave_map::contents): Call maybe_add_to_key_list.
+	* oct-map.h, oct-map.cc (Octave_map::Octave_map):
+	Insert keys in key_list.
+
+	* oct-map.h (Octave_map::Octave_map (const dim_vector&,
+	const string_vector&)): New arg, key_list_arg.
+	* oct-map.cc: Move definition here.
+
+2006-07-05  John W. Eaton  <jwe@octave.org>
+
+	* mex.cc (mexGetVariable): Rename from mexGetArray, swap arguments.
+	(mexGetVariablePtr): Rename from mexGetArrayPtr, swap arguments.
+	(mexErrMsgIdAndTxt, mexWarnMsgIdAndTxt): New functions.
+	* mexproto.h: Provide decls.
+	Include decls for as yet unsupported functions.
+	* mex.h: Add enum for class ids.
+	(mexGetArray): Define using mexGetVariable.
+	(mexGetArrayPtr): Define using mexGetVariablePtr.
+
+2006-07-02  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.cc (CHAR_MATRIX_CONV): Omit "warn-" from label.
+	* parse.y (maybe_warn_variable_switch_label): Likewise.
+
+2006-07-01  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (finish_cell): Use finish_matrix to do constant folding.
+
+2006-06-30  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (octave_base_value::numeric_assign):
+	Avoid memory leak when converting LHS.
+
+	* oct-hist.cc (do_history, initialize_history, Fhistory_file):
+	Don't perform tilde expansion on history file name.
+
+	* syscalls.cc (Flstat, Fstat): Don't perform tilde expansion on arg.
+	* input.cc (Fread_readline_init_file): Likewise.
+	* dirfns.cc (Fcd, Freaddir): Likewise.
+
+	* load-path.cc (genpath): Don't perform tilde expansion on name.
+	(load_path::do_add): Don't warn about moving "." to front of list.
+
+2006-06-28  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (Faddpath): Don't treat "." specially here.
+	Don't check directory status here.
+	(Fpath): Handle all args.  Don't treat "." specially here.
+	(Faddpath, Frmpath): Delete unused variable xpath.
+	(load_path::do_add): New function.
+	(load_path::do_prepend, load_path::do_append): Use it.
+	(load_path::do_remove): Really prevent removal of ".".
+	(load_path::do_clear): Clearing doesn't remove ".".
+	(load_path::append, load_path::prepend, load_path::do_append,
+	load_path::do_prepend): New arg, warn.
+
+	* load-path.h: Fix decls.
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp_list):
+	Avoid bug in older versions of g++.
+
+2006-06-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (clean): Also remove $(DLD_OBJ).
+
+	* sighandlers.cc (install_signal_handlers): Don't handle SIGPROF.
+	From Geoffrey Knauth <geoff@knauth.org>.
+
+2006-06-25  John W. Eaton  <jwe@octave.org>
+
+	* mk-pkg-add: Avoid apparently non-portable sed patterns.
+
+2006-06-21  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (do_who): Handle mex.
+
+	* symtab.cc (SYMBOL_DEF::type_as_string, SYMBOL_DEF::which,
+	symbol_table::clear_functions, table::clear_function,
+	symbol_table::clear_function_pattern):
+	Handle mex.
+	* symtab.h (symbol_record::is_mex_function,
+	symbol_record::symbol_def::is_mex_function): New functions.
+	(symbol_record::TYPE): New value, MEX_FUNCTION.
+	(symbol_record::is_function, symbol_table::user_function_name_list,
+	SYMTAB_ALL_TYPES): Handle MEX_FUNCTION.
+
+	* ov-fcn.h (octave_function::octave_function):
+	Provide default for doc string arg.
+
+	* defun.cc (install_mex_function): New function.
+	* defun-int.h: Provide decl.
+
+	* ov-builtin.cc (any_arg_is_magic_colon): Delete.
+	(octave_builtin::do_multi_index_op): Call has_magic_colon method
+	for args instead of any_arg_is_magic_colon.
+
+	* ov-base.h (octave_base_value::is_mex_function): New function.
+	* ov.h (octave_value::is_mex_function): New function.
+
+	* ov-mex-fcn.h, ov-mex-fcn.cc: New files.
+
+	* parse.y (load_fcn_from_file): Also handle .mex files.
+
+	* dynamic-ld.cc (octave_dynamic_loader::load_oct): Rename from load.
+	(octave_dynamic_loader::do_load_oct): Rename from do_load.
+	* dynamic-ld.h: Fix decls.
+
+	* utils.cc (mex_file_in_path): New function.
+	* utils.h: Provide decl.
+
+	* variables.cc (symbol_out_of_date): Also handle mex files.
+
+	* load-path.cc (load_path::dir_info::get_file_list,
+	load_path::dir_info::get_private_function_map,
+	load_path::do_find_fcn, load_path::add_to_fcn_map,
+	load_path::do_display): Also handle mex files.
+	* load-path.h (load_path::find_mex_file): New static function.
+	(load_path::MEX_FILE): New static data member.
+	(load_path::do_find_fcn): By default, also look for mex files.
+
+	* matrix.h, mex.h, mex.cc: New files from Octave Forge
+	* mexproto.h: New file, extracted from mex.h.
+	* Makefile.in: Add them to the appropriate lists.
+
+2006-06-20  John W. Eaton  <jwe@octave.org>
+
+	* ov-re-mat.cc (octave_matrix::convert_to_str_internal):
+	Don't lose empty dimensions on conversion to char.
+
+	* strfns.cc (Fstrcmp): Handle comparison of cellstr and empty string.
+
+2006-06-16  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (%union): New type, anon_fcn_handle_type.
+	(anon_fcn_handle): Now anon_fcn_handle_type, not tree_constant_type.
+	(make_anon_fcn_handle):	Return tree_anon_fcn_handle, not tree_constant.
+
+	* comment-list.cc (octave_comment_list::dup): New function.
+	* comment-list.h: Provide decl.
+
+	* pt-cmd.cc (tree_no_op_command::dup): New function.
+	* pt-cmd.h: Provide decl.
+	(tree_command::dup): New pure virtual function.
+
+	* pt-loop.cc (tree_while_command::dup, tree_do_until_command::dup,
+	tree_simple_for_command::dup, tree_complex_for_command::dup):
+	New functions.
+	* pt-loop.h: Provide decls.
+
+	* pt-jump.cc (tree_break_command::dup, tree_continue_command::dup,
+	tree_return_command::dup): New functions.
+	* pt-jump.h: Provide decls.
+
+	* pt-except.cc (tree_try_catch_command::dup,
+	tree_unwind_protect_command::dup): New functions.
+	* pt-except.h: Provide decls.
+
+	* pt-select.cc (tree_if_clause::dup, tree_if_command_list::dup,
+	tree_if_command::dup, tree_switch_case::dup,
+	tree_switch_case_list::dup, tree_switch_command::dup):
+	New functions.
+	* pt-select.h: Provide decls.
+
+	* pt-decl.cc (tree_decl_elt::dup, tree_decl_init_list::dup,
+	tree_global_command::dup, tree_static_command::dup): New functions.
+	* pt-decl.h: Provide decls.
+
+	* pt-exp.h (tree_expression::copy_base): New function.
+	(tree_expression::dup): New pure virtual function.
+
+	* pt-fcn-handle.cc, pt-fcn-handle.h (tree_anon_fcn_handle): New class.
+
+	* pt-fcn-handle.cc (tree_function_handle::dup): New function.
+	* pt-fcn-handle.h: Provide decl.
+
+	* pt-colon.cc (tree_colon_expression::dup): New function.
+	* pt-colon.h: Provide decl.
+	(tree_colon_expression::tree_colon_expression (tree_expression *,
+	tree_expression *, tree_expression *, int, int)): New constructor.
+
+	* pt-const.cc (tree_constant::dup): New function.
+	(tree_constant::tree_constant (const octave_value&, const
+	std::string&, int, int)): New constructor.
+	* pt-const.h: Provide decls.
+
+	* pt-idx.cc (tree_index_expression::dup): New functoin.
+	(tree_index_expression::tree_index_expression (int, int)):
+	New constructor.
+	* pt-idx.h: Provide decls.
+
+	* pt-arg-list.cc (tree_argument_list::dup): New function.
+	* pt-arg-list.h: Provide decl.
+
+	* pt-id.cc (tree_identifier::dup): New function.
+	* pt-id.h: Provide decl.
+
+	* pt-cell.cc (tree_cell::dup): New function.
+	* pt-cell.h: Provide decl.
+
+	* pt-mat.cc (tree_matrix::dup): New function.
+	* pt-mat.h: Provide decl.
+
+	* pt-assign.cc (tree_simple_assignment::dup,
+	tree_multi_assignment::dup): New functions.
+	* pt-assign.h: Provide decls.
+
+	* pt-binop.cc (tree_binary_expression::dup,
+	tree_boolean_expression::dup): New functions.
+	* pt-binop.h: Provide decls.
+
+	* pt-unop.cc (tree_prefix_expression::dup,
+	tree_postfix_expression::dup): New functions.
+	* pt-unop.h: Provide decls.
+
+	* pt-stmt.cc (tree_statement::dup, tree_statement_list::dup):
+	New functions.
+	* pt-stmt.h: Provide decls.
+
+	* pt-misc.cc (tree_parameter_list::dup,
+	tree_return_list::dup): New functions.
+	* pt-misc.h: Provide decls.
+
+	* symtab.cc (symbol_table::dup, symbol_table::inherit,
+	symbol_record:is_automatic_variable): New functions.
+	* symtab.h: Provide decls.
+	(symbol_record::automatic_variable): New data member.
+	(symbol_record::symbol_record): Initialize it.
+	(symbol_record::mark_as_automatic_variable): New function.
+
+	* pt-walk.h (tree_walker::visit_anon_fcn_handle):
+	New pure virtual function.
+	* pt-pr-code.cc (tree_print_code::visit_anon_fcn_handle): New function.
+	* pt-pr-code.h: Provide decl.
+	* pt-bp.cc (tree_breakpoint::visit_anon_fcn_handle): New function.
+	* pt-bp.h: Provide decl.
+	* pt-check.cc (tree_checker::visit_anon_fcn_handle): New function.
+	* pt-check.h: Provide decl.
+
+2006-06-13  John W. Eaton  <jwe@octave.org>
+
+	* pt-stmt.cc (tree_statement_list::eval): Revise previous change
+	to preserve return-last-value-computed semantics.
+
+	* DLD-FUNCTIONS/fsolve.cc (hybrd_info_to_fsolve_info):
+	Warn about invalid values of INFO from MINPACK instead of calling
+	panic_impossible.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Don't assign values returned by evaluation of cmd_list to
+	temporary variable.  Delete unused variable last_computed_value.
+
+	* pt-stmt.cc (tree_statement_list::eval):
+	Clear retval before each statement is evaluated.
+
+2006-06-12  John W. Eaton  <jwe@octave.org>
+
+	* unwind-prot.h (unwind_protect_fptr): New macro.
+	* load-path.cc (load_path::do_set): Use it instead of
+	unwind_protect_ptr when protecting add_hook function pointer.
+	* dynamic-ld.cc (octave_dynamic_loader::do_load): Use FCN_PTR_CAST
+	here instead of reinterpret_cast.
+
+2006-06-09  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.6+.
+
+2006-06-09  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.6.
+	(OCTAVE_API_VERSION): Now api-v19.
+	(OCTAVE_RELEASE_DATE): Now 2006-06-09.
+
+	* ov-cell.cc (cell::save_hdf5): Use leading zeros to keep elements
+	correctly sorted in the HDF file.
+	From Stephen Fegan <sfegan@astro.ucla.edu>.
+
+2006-06-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (function::do_multi_index_op): Append contents of
+	varargout to ret_list before calling convert_to_const_vector.
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	No need to handle all_va_args here.
+
+	* ov-va-args.h, ov-va-args.cc: Delete files.
+	* Makefile.in (OV_INCLUDES, OV_SRC): Delete from the lists.
+
+	* ov.cc (install_types): Don't register octave_all_va_args type.
+	* ov.h, ov.cc (octave_value::octave_value (octave_value::all_va_args)):
+	Delete.
+	* ov.h (octave_value::is_all_va_args): Delete.
+	(octave_value::enum all_va_args): Delete.
+
+	* pt-pr-code.cc	(tree_print_code::visit_octave_user_function_header):
+	Print "varargout" and "varargin" instead of "...".
+
+	* pt-misc.h, pt-misc.cc	(tree_parameter_list::convert_to_const_vector):
+	Arg is now const Cell& instead of tree_va_return_list*.
+
+	* ov-usr-fcn.h, ov-usr-fcn.cc (octave_user_function::vr_list,
+	octave_user_function::curr_va_arg_number):
+	Delete variables and all uses.
+	(octave_function::octave_va_start, octave_function::octave_va_arg,
+	octave_function::octave_vr_val,	octave_function::has_varargout):
+	Delete functions and all uses.
+
+	* ov-fcn.h (octave_function::octave_va_start,
+	octave_function::octave_va_arg, octave_function::octave_vr_val,
+	octave_function::has_varargout): Delete.
+
+	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Delete.
+
+	* lex.l ({EL}): Don't handle "..." as varargin or varargout.
+	* octave.gperf (all_va_args, ALL_VA_ARGS, all_va_args_kw): Delete.
+	* parse.y (ALL_VA_ARGS): Delete token and all uses.
+
+	* defaults.h.in (OCTAVE_DATAROOTDIR): Substitute here.
+	* toplev.cc (octave_config_info): Add datarootdir to the struct.
+
+2006-06-07  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::subsasgn): Handle c-s list object on
+	RHS if last index is '{'.
+	* pt-assign.cc (tree_multi_assignment::rvalue): Compute all LHS
+	lvalues before evaluating RHS.  If LHS lvalue expects more than
+	one output, pass octave_cs_list object to assign method.
+	* pt-idx.cc (tree_index_expression::lvalue): Compute expected
+	number of values if '{' index appears last.
+	* pt-arg-list.cc (tree_argument_list::lvalue_list): New function.
+	* pt-arg-list.h (tree_argument_list::lvalue_list): Provide decl.
+	* oct-lvalue.h (octave_lvalue::nel): New data member.
+	(octave_lvalue::numel): New functions
+	* oct-obj.cc (octave_value_list::has_magic_colon): New function.
+	* oct-obj.h (octave_value_list::has_magic_colon): Provide decl.
+	* pt-arg-list.cc (tree_argument_list::nargout_count): Delete function.
+	* pt-arg-list.h (tree_argument_list::nargout_count): Delete decl.
+
+2006-06-06  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (generic_sig_handler, sigint_handler):
+	Use strsignal instead of accessing sys_siglist directly.
+	* siglist.h: Use HAVE_DECL_SYS_SIGLIST instead of SYS_SIGLIST_DECLARED.
+	* siglist.c: Update sys_siglist.
+	(init_signals, strsignal): New functions.
+	* octave.cc (octave_main): Call init_signals here.
+
+	* toplev.cc (Foctave_config_info): Delete LIBPLPLOT from struct.
+
+2006-06-05  John W. Eaton  <jwe@octave.org>
+
+	* pt-assign.cc (Vprint_rhs_assign_val): Delete variable.
+	(Fprint_rhs_assign_val): Delete function.
+	tree_simple_assignment::rvalue, tree_multi_assignment::rvalue):
+	No special case for Vprint_rhs_assign_val.
+
+2006-06-02  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.h (tree_argument_list::mark_as_simple_assign_lhs,
+	tree_argument_list::is_simple_assign_lhs): New functions.
+	(tree_argument_list::simple_assign_lhs): New data member.
+	* parse.y (assign_lhs): Classify LHS here.
+	(make_assign_op): Create simple or multi assign op based on
+	classification of LHS, not its length.
+
+2006-06-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DLD_XSRC): Add __pchip_deriv__.cc to the list.
+
+2006-06-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/__pchip_deriv__.cc: New file.
+
+2006-05-31  John W. Eaton  <jwe@octave.org>
+
+	* load-path.h (load_path::set_command_line_path): Make it
+	additive.
+
+2006-05-26  John W. Eaton  <jwe@octave.org>
+
+	* load-path.cc (genpath, maybe_add_path_elts, Fgenpath, Frehash,
+	Fpath, Fpathdef): Move here from defaults.cc.
+	* load-path.cc, load-path.h: New files.
+	* Makefile.in (INCLUDES, DIST_SRC): Add them to the lists.
+	* help.cc (make_name_list, simple_help): Use load_path instead of
+	octave_fcn_file_name_cache.
+	(Flookfor): Use load_path instead of Vload_path_dir_path.
+	* octave.cc (octave_main):  Likewise.
+	* parse.y (load_fcn_from_file): Likewise.
+	* utils.cc (Ffile_in_loadpath, file_in_path, fcn_file_in_path,
+	oct_file_in_path): Likewise.
+	* variables.cc (symbol_exist, symbol_out_of_date): Likewise.
+	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Likewise.
+	* utils.cc (Ffind_first_of_in_loadpath): Delete.
+	* input.cc (octave_gets): Call load_path::update here.
+	* dirfns.cc (octave_change_to_directory): Likewise.
+	* defaults.cc (VLOADPATH, VDEFAULT_LOADPATH, Vload_path_dir_path,
+	maybe_add_or_del_packages, update_load_path_dir_path,
+	execute_default_pkg_add_files, set_load_path): Delete.
+	* defaults.h.in (Vload_path_dir_path,
+	execute_default_pkg_add_files, maybe_add_default_load_path,
+	set_load_path): Delete decls.
+
+	* fn-cache.h, fn-cache.cc: Delete.
+	* Makefile.in (INCLUDES, DIST_SRC): Remove them from the lists.
+
+	* input.cc (octave_gets): Only update Vlast_prompt_time if we are
+	interactive and actually printing a prompt.  Don't print prompt if
+	reading startup files or command line files.  Initialize
+	Vlast_prompt_time to 0.
+
+	* pr-output.cc (set_format): Always include space for sign.
+
+2006-05-23  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (Fsave): Use tellp instead of pubseekoff to
+	determine whether we are at beginning of file.
+
+	* ov-intx.h (OCTAVE_VALUE_INT_SCALAR_T::increment,
+	OCTAVE_VALUE_INT_SCALAR_T::decrement,
+	OCTAVE_VALUE_INT_MATRIX_T::increment,
+	OCTAVE_VALUE_INT_MATRIX_T::decrement): New functions.
+	* OPERATORS/op-int.h (OCTAVE_INSTALL_M_INT_UNOPS,
+	OCTAVE_INSTALL_S_INT_UNOPS, OCTAVE_M_INT_UNOPS,
+	OCTAVE_S_INT_UNOPS): Uncomment increment and decrement ops.
+
+2006-05-19  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (SYMBOL_DEF::document): If definition is a function,
+	also pass doc string to function object.
+	* ov-fcn.h (octave_function::document): New function.
+	* defun.cc (print_usage (octave_function *)): New function.
+	(print_usage (void)): New function.
+	(print_usage (const std::string&)): Provide for backward
+	compatibility.  Ignore arg.
+	(Fprint_usage): Don't accept arg.
+	* defun-int.h (print_usage (void)): Provide decl.
+	(print_usage (const std::string&)): Tag with GCC_ATTR_DEPRECATED.
+
+2006-05-04  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/conv2.cc: New file from Octave Forge.
+	* Makefile.in (DLD_XSRC): Add it to the list
+
+2006-05-17  Bill Denney  <bill@givebillmoney.com>
+
+	* help.cc (keywords): Improve and Texinfoize.
+
+2006-05-17  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (Vwhos_line_format): Show class instead of type.
+	(symbol_table::parse_whos_line_format):
+	Use 't' for "Type" and 'c' for "Class".
+	(symbol_record::print_symbol_info_line): Likewise.
+	(maybe_list_cmp_fcn): Fix casts.
+
+2006-05-11  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (IMAGE_PATH_OPTION): New macro.
+	(usage_string, verbose_usage): Include --image-path option.
+	(long_opts): Include --image-path.
+	(octave_main): Handle IMAGE_PATH_OPTION.
+
+	* toplev.cc (Foctave_config_info): Delete fcnfilepath, imagepath,
+	localfcnfilepath, and localoctfilepath from the struct.
+	* defaults.h.in (OCTAVE_FCNFILEPATH, OCTAVE_IMAGEPATH,
+	OCTAVE_LOCALFCNFILEPATH, OCTAVE_LOCALOCTFILEPATH): Delete variables.
+
+	* octave.cc (octave_main): Call set_exec_path and set_load_path
+	instead of bind_internal_variable.
+
+	* defaults.cc (Fpathdef): Rename from FDEFAULT_LOADPATH.
+	Don't allow default path to be set.
+	(Fpath): Rename from FLOADPATH.  Make Matlab-compatible.
+	(update_load_path_dir_path): No need to pass VDEFAULT_LOADPATH to
+	dir_path constructor now.
+	(update_exec_path, FDEFAULT_EXEC_PATH,
+	set_default_default_exec_path, set_default_exec_path,
+	maybe_add_default_load_path): Delete functions.
+	(VDEFAULT_EXEC_PATH): Delete variable.
+	(FEXEC_PATH): Leading and trailing colons no longer special.
+	(set_exec_path, set_load_path, set_image_path,
+	maybe_add_path_elts): New functions.
+	(install_defaults): Call set_exec_path and set_load_path instead
+	of set_default_exec_path and set_default_path.  Don't call
+	set_default_default_exec_path.  Do call set_image_path.
+	* defaults.cc (genpath, Fgenpath): New functions.
+	(Vlocal_ver_oct_file_dir, Vlocal_api_oct_file_dir,
+	Vlocal_oct_file_dir, Vlocal_ver_fcn_file_dir,
+	Vlocal_api_fcn_file_dir, Vlocal_fcn_file_dir, Vimage_dir):
+	New variables.
+	(set_default_local_ver_oct_file_dir,
+	set_default_local_api_oct_file_dir,
+	set_default_local_oct_file_dir,
+	set_default_local_ver_fcn_file_dir,
+	set_default_local_api_fcn_file_dir,
+	set_default_local_fcn_file_dir, set_default_image_dir):
+	New functions.
+	(install_defaults): Call them.
+	* defaults.h.in (set_exec_path, set_load_path, set_image_path,
+	Vlocal_ver_oct_file_dir, Vlocal_api_oct_file_dir,
+	Vlocal_oct_file_dir, Vlocal_ver_fcn_file_dir,
+	Vlocal_api_fcn_file_dir, Vlocal_fcn_file_dir,
+	Vlocal_fcn_file_dir, Vimage_dir): Provide decls.
+
+2006-05-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (Fcellstr): Trim trailing blanks.
+	* Cell.h (Cell::Cell (const string_vector&)): New arg, TRIM.
+
+	* oct-hist.cc (initialize_history, Fhistory_size):
+	Also call command_history::set_size here.
+
+	* defun.cc (Fprint_usage): New function.
+	* help.cc (display_usage_text): New function.
+
+2006-05-09  Keith Goodman  <kwgoodman@gmail.com>
+
+	* DLD-FUNCTIONS/rand.cc: Doc string fix.
+
+2006-05-09  Jorge Barros de Abreu  <ficmatin01@solar.com.br>
+
+	* data.cc (FInf, FNaN): Fix typo in doc string.
+
+2006-05-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DEFUN_PATTERN): Match DEFUNX_DLD.
+	* mkbuiltins: Handle XDEFUNX_DLD_INTERNAL.
+	* mkgendoc: Likewise.
+	* mk-pkg-add: Likewise.  Do all the matching with sed.
+	* defun-int.h 	(DEFINE_FUNX_INSTALLER_FUN, DEFINE_FUNX_INSTALLER_FUN2,
+	DEFINE_FUNX_INSTALLER_FUN3): New macros.
+	(DEFINE_FUN_INSTALLER_FUN3): Define using DEFINE_FUNX_INSTALLER_FUN3.
+	(DEFUNX_DLD_INTERNAL): New macro.
+	* defun-dld.h (DEFUNX_DLD): New macro.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l: Mark __gnuplot_set__ as a
+	command, not a rawcommand.
+
+	* load-save.cc: No need to handle built-in variables.
+	* help.cc (simple_help): No need to handle built-in variables.
+
+	* variables.cc (is_builtin_variable, builtin_string_variable,
+	builtin_real_scalar_variable, builtin_any_variable):
+	Delete functions.
+	(Fexist, Fdocument, do_who, Fwho, link_to_builtin_or_function):
+	No need to handle built-in variables.
+	* variables.h (is_builtin_variable, builtin_string_variable,
+	builtin_real_scalar_variable, builtin_any_variable): Delete decls.
+
+	* symtab.h (symbol_record::symbol_def::is_builtin_variable,
+	symbol_record::is_builtin_variable): Delete.
+	(symbol_record::TYPE): Remove BUILTIN_VARIABLE from enum.
+	(symbol_record::symbol_def::is_variable, SYMTAB_ALL_TYPES,
+	SYMTAB_VARIABLES): No need to handle built-in variables now.
+	(symbol_record::define_builtin_variable,
+	symbol_record::link_to_builtin_variable): Delete decls.
+	* symtab.cc (record::define, SYMBOL_DEF::type,
+	SYMBOL_DEF::type_as_string): No need to handle built-in variables.
+	(symbol_record::define_builtin_variable): Delete.
+	(symbol_record::variable_reference): No need to attemp to link to
+	built-in variable.
+
+	* utils.cc (check_preference, warn_old_style_preference): Delete.
+	* utils.h (check_preference): Delete decl.
+
+	* defun-int.h: Delete all DEFVAR macros.
+
+	* Makefile.in, mkbuiltins: No need for VAR_FILES.
+
+	* parse.y (current_script_file_name): Delete all uses.
+	(clear_current_script_file_name): Delete function.
+
+	* variables.cc (symbols_of_variables): Delete DEFVAR and function.
+	(bind_ans): Lookup ans in curr_sym_tab, not fbi_sym_tab.
+	SR is no longer static, so we insert value in local scope.
+
+	* defun.cc (bind_builtin_variable): Delete function.
+	* defun-int.h: Delete decl.
+
+	* defaults.cc (fftw_wisdom_program): Rename from fftw_wisdom_prog.
+	Change all uses.
+	(VDEFAULT_LOADPATH): Rename from Vdefault_load_path.  Change all uses.
+	(VLOADPATH): Rename from Vload_path.  Change all uses.
+	(VDEFAULT_EXECPATH): Rename from Vdefault_exec_path.  Change all uses.
+	(VEXECPATH): Rename from Vexec_path.  Change all uses.
+	(VEDITOR): Rename from Veditor.  Change all uses.
+	(Ffftw_wisdom_program, FDEFAULT_LOADPATH, FLOADPATH,
+	FDEFAULT_EXEC_PATH, FEXEC_PATH, FEDITOR, FIMAGEPATH): New functions.
+	(fftw_wisdom_program, default_load_path, loadpath,
+	default_exec_path, exec_path, editor, image_path): Delete functions.
+	(symbols_of_defaults): Delete DEFVARs and function.
+
+	* pr-output.cc (set_output_prec_and_fw): Set Voutput_precision and
+	Voutput_max_field_width directly instead of calling
+	bind_builtin_variable.
+
+	* octave.cc (octave_main, maximum_braindamage):
+	Call bind_internal_variable instead of bind_builtin_variable.
+
+	* pager.cc (Fmore): Set Vpage_screen_output directly instead of
+	calling bind_builtin_variable.
+
+	* error.cc (Fwarning): Set Vdebug_on_warning directly instead of
+	calling bind_builtin_variable.
+
+	* error.cc (initialize_warning_options): Now static.
+	(disable_warning, initialize_default_warning_state): New functions.
+
+	* error.h (initialize_warning_options): Delete decl.
+	(initialize_default_warning_state): Provide decl.
+	* octave.cc (octave_main): Call initialize_default_warning_state
+	instead initialize_warning_options.
+
+	* lex.l (warn_matlab_incompatible, warn_separator_insert,
+	warn_single_quote_string): Delete functions.
+	(symbols_of_lex): Delete DEFVARS.
+	(Vwarn_matlab_incompatible, Vwarn_separator_insert,
+	Vwarn_single_quote_string): Delete variables.
+	(maybe_warn_separator_insert, gripe_single_quote_string,
+	gripe_matlab_incompatible): Call warning_with_id instead of warning.
+
+	* variables.h (SET_NONEMPTY_INTERNAL_STRING_VARIABLE,
+	SET_INTERNAL_VARIABLE_WITH_LIMITS): New macros.
+
+	* ls-oct-ascii.cc (Fsave_precision): New function.
+	(save_precision): Delete function.
+	(symbols_of_ls_oct_ascii): Delete DEFVAR and function.
+
+	* oct-hist.cc (initialize_history): New function.
+	* oct-hist.h: Provide decl.
+	* octave.cc (octave_main): Call initialize_history instead of
+	command_history::read.
+
+	* oct-hist.cc (Fhistory_size, Fhistory_file,
+	Fhistory_timestamp_format_string, Fsaving_history): New functions.
+	(history_size, history_file, history_timestamp_format_string,
+	saving_history): Delete functions.
+	(symbols_of_oct_hist): Delete DEFVARs and function.
+
+	* pt-mat.cc (Fstring_fill_char): New function.
+	(string_fill_char): Delete function.
+	(symbols_of_pt_mat): Delete DEFVAR and function.
+
+	* variables.cc (Fignore_function_time_stamp, ans): New functions.
+	(ignore_function_time_stamp): Delete function.
+	(symbols_of_variables): Delete DEFVARs and function.
+
+	* oct-procbuf.cc: (Vkluge_procbuf_delay): Delete variable.
+	(octave_procbuf::open): Never delay after fork.
+	(kluge_procbuf_delay): Delete function.
+	(symbols_of_oct_procbuf): Delete DEFVAR and function.
+
+	* dirfns.cc (Fconfirm_recursive_rmdir): New function.
+	(confirm_recursive_rmdir): Delete function.
+	(symbols_of_dirfns): Delete DEFVAR and function.
+
+	* error.cc (initialize_warning_options): Now extern.
+	Rename from init_warning_options.
+	* error.h: Provide decl.
+	* octave.cc (octave_main): Call it here.
+
+	* error.cc (Fbeep_on_error, Fdebug_on_error, Fdebug_on_warning):
+	New functions.
+	(beep_on_error, debug_on_error, debug_on_warning): Delete Functions.
+	(symbols_of_error): Delete DEFVARs and function.
+
+	* help.cc (Finfo_file, Finfo_program, Fmakeinfo_program,
+	Fsuppress_verbose_help_message): New function.
+	(info_file, info_program, makeinfo_program,
+	suppress_verbose_help_message): Delete function.
+	(symbols_of_help): Delete DEFVARs and function.
+	(Vinfo_program): Rename from Vinfo_prog.  Change all uses.
+
+	* input.cc (FPS1, FPS2, FPS4, Fcompletion_append_char,
+	Fecho_executing_commands): New functions.
+	(ps1, ps2, ps4, completion_append_char, echo_executing_commands):
+	Delete functions.
+	(symbols_of_input): Delete DEFVARs and function.
+	(VPS1, VPS2, VPS4): Rename from Vps1, Vps2, Vps4.  Change all uses.
+	(Fecho): Set Vecho_executing_commands directly.
+
+	* load-save.cc (crash_dumps_octave_core, Fdefault_save_options,
+	Foctave_core_file_limit, Foctave_core_file_name,
+	Foctave_core_file_options, Fsave_header_format_string):
+	New functions.
+	(crash_dumps_octave_core, default_save_options,
+	octave_core_file_limit, octave_core_file_name,
+	octave_core_file_options, save_header_format_string):
+	Delete functions.
+	(symbols_of_load_save): Delete DEFVARs and function.
+
+	* ov-base.cc (Fprint_answer_id_name, Fsilent_functions): New functions.
+	(print_answer_id_name, silent_functions): Delete functions.
+	(symbols_of_ov_base): Delete DEFVARs and function.
+
+	* ov-usr-fcn.cc (Fmax_recursion_depth): New function.
+	(max_recursion_depth): Delete function.
+	(symbols_of_ov_usr_fcn): Delete DEFVAR for max_recursion_depth.
+	Delete function.
+
+	* pager.cc (Fpage_output_immediately, Fpage_screen_output, FPAGER):
+	New functions.
+	(page_output_immediately, page_screen_output, pager_binary):
+	Delete functions.
+	(symbols_of_pager): Delete DEFVARs and function.
+	(VPAGER): Rename from Vpager_binary.  Change all uses.
+
+	* pr-output.cc (Ffixed_point_format, Fprint_empty_dimensions,
+	Fsplit_long_rows, Foutput_max_field_width, Foutput_precision,
+	Fstruct_levels_to_print): New functions.
+	(fixed_point_format, print_empty_dimensions, split_long_rows,
+	output_max_field_width, output_precision, struct_levels_to_print):
+	Delete functions.
+	(symbols_of_pr_output): Delete DEFVARs and function.
+
+	* pt-assign.cc (Fprint_rhs_assign_val): New function.
+	(print_rhs_assign_val): Delete function.
+	(symbols_of_pt_assign): Delete DEFVAR.  Delete function.
+
+	* sighandlers.cc (Fdebug_on_interrupt, Fsighup_dumps_octave_core,
+	Fsigterm_dumps_octave_core): New functions.
+	(debug_on_interrupt, sighup_dumps_octave_core,
+	sigterm_dumps_octave_core): Delete functions.
+	(symbols_of_sighanlders): Delete DEFVARs.  Delete function.
+
+	* symtab.cc (Vdebug_symtab_lookups): Now bool.
+	(Fdebug_symtab_lookups, Fwhos_line_format,
+	Fvariables_can_hide_functions): New functions.
+	(debug_symtab_lookups, whos_line_format,
+	variables_can_hide_functions): Delete functions.
+	(symbols_of_symtab): Delete DEFVARs and function.
+
+2006-05-04  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sqqr (Fdmperm): Allow compilation with versions
+	v2.0.0 of CXSparse or later.
+
+2006-05-04  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (set_internal_variable): Move here from
+	DLD-FUNCTIONS/__gnuplot_raw__.l.
+	* variables.h (SET_INTERNAL_VARIABLE): Likewise.
+	(set_internal_variable): Provide decls.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l: Convert all DEFVARs to DEFUN_DLDs.
+	(gnuplot::init): Delete.
+	(gnuplot::gnuplot): Don't call init here.
+	(set_internal_variable): New functions.
+	(SET_INTERNAL_VARIABLE): New macro.
+
+	* Makefile.in: Undo changes of 2006-03-16.
+	* DLD-FUNCTINS/__gnuplot_raw__.l: Move here from __gnuplot_raw__.l.
+	Undo changes of 2006-03-16.
+
+2006-05-03  David Bateman  <dbateman@free.fr>
+
+	* ov-base-mat.h: Add caching of matrix type, and code to supply
+	and copy matrix type.
+	* ov-bool-mat.h: Add caching to constructor.
+	* ov-re-mat.h: ditto.
+	* ov-cx-mat.h: ditto.
+	* ov.cc: Add to the BoolMatrix, Matrix and the ComplexMatrix
+	octave_value constructors, the ability to specify the matrix type.
+	* ov.h: Adapt declaration of above constructors.
+	(MatrixType matrix_type(void) const, MatrixType matrix_type (const
+	MatrixType&)): New functions for probing and setting matrix type.
+	* ov-base.cc (virtual MatrixType matrix_type(void) const, virtual
+	MatrixType matrix_type (const MatrixType&)): New default functions
+	for probing and setting matrix type.
+	* ov-base.h  (virtual MatrixType matrix_type(void) const, virtual
+	MatrixType matrix_type (const MatrixType&)): Declarations.
+	* ov-base-sparse.h: Replace all uses of SparseType with
+	MatrixType. Replace sparse_type function with matrix_type function.
+	* ov-bool-sparse.h: Replace all uses of SparseType with MatrixType.
+	* ov-cx-sparse.h: ditto.
+	* ov-re-sparse.h: ditto.
+	* sparse-xdiv.cc: ditto.
+	* sparse-xdiv.h: ditto.
+	* sparse-xpow.cc: ditto.
+	* DLD-FUNCTIONS/luinc.cc: ditto.
+	* DLD-FUNCTIONS/splu.cc: ditto.
+	* xdiv.cc (xdiv, xleftdiv): Pass the matrix type, simplfy since
+	the matrix solve function now calls lssolve if singular.
+	* xdiv.h (xdvi, xleftdiv): Update the declarations
+	* OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-m.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc,
+	OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-s-cm.cc, OPERATORS/op-s-m.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-m.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-m.cc: Update use of
+	xdiv and xleftdiv functions to allow matrix type caching.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Update to allow typing
+	 of Matrix, and ComplexMatrix types. Add new test code for this.
+
+	* DLD-FUNCTIONS/cellfun.cc (Fmat2cell): new function.
+
+	* DLD-FUNCTIONS/regexp.cc (class regexp_elem): New class to store
+	matched element in a std::list.
+	(octregexp_list): Take algorithm from octregexp and construct a
+	list of matches.
+	(octregexp): Rewrite to use linked list of matches.
+	(Fregexprep): New function, working directly in linked list of
+	matches.
+
+2006-05-02  John W. Eaton  <jwe@octave.org>
+
+	* lex.l ({CCHAR}): Exit rawcommand mode if returning '\n' token.
+
+2006-05-02  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Require real scalar for seed.
+
+2006-05-01  John W. Eaton  <jwe@octave.org>
+
+	* error.h (Vwarning_option): Delete.
+	* variables.cc (looks_like_struct): Remove use from commented code.
+
+	* gripes.cc, gripes.h (gripe_implicit_conversion): New arg, ID.
+	Change all uses.
+
+	* defaults.cc (set_local_site_defaults_file, set_site_defaults_file):
+	Allow filenames to be set from the environment.
+
+	* oct-map.cc (octave_map::resize): No longer const.
+	* ov-struct.h (octave_struct::resize): Deal with it.
+
+	* octave.cc (initialize_error_handlers): Also call
+	set_liboctave_warning_with_id_handler.
+	(execute_startup_files): Check that home_rc is not an empty string.
+	(F__version_info__): Resize vinfo before assigining elements.
+
+	* ov-base.cc (warn_num_to_str, warn_resize_on_range_error):
+	Delete functions.
+	(symbols_of_ov_base): Delete DEFVARS.
+	(Vwarn_num_to_str, Vwarn_resize_on_range_error): Delete variables.
+	(value::convert_to_str): Check state of warning ID
+	Octave:num-to-str instead of using Vwarn_num_to_str.
+	* OPERATORS/op-chm.cc: Likewise.
+	* ov-base.h (Vwarn_num_to_str, Vwarn_resize_on_range_error):
+	Delete decls.
+
+	* ov-list.cc (octave_list::assign): Call warning_with_id instead
+	of warning.
+
+	* parse.y (warn_assign_as_truth_value, warn_associativity_change,
+	warn_function_name_clash, warn_future_time_stamp,
+	warn_missing_semicolon, warn_precedence_change,
+	warn_variable_switch_label, symbols_of_parse):
+	Delete DEFVARs and functions.
+	(Vwarn_assign_as_truth_value, Vwarn_associativity_change,
+	Vwarn_function_name_clash, Vwarn_future_time_stamp,
+	Vwarn_missing_semicolon, Vwarn_precedence_change,
+	Vwarn_variable_switch_label): Delete variables.
+	* parse.h (Vwarn_future_time_stamp): Delete decl.
+	* parse.y (fold): Check state of warning ID
+	Octave:associativity-change and Octave:precedence-change instead
+	of using Vwarn_associativity_change and Vwarn_precedence_change.
+	(maybe_warn_associativity_change, maybe_warn_missing_semi,
+	maybe_warn_assign_as_truth_value, make_binary_op, make_boolean_op,
+	frob_function): Call warning_with_id instead of warning.
+	* dynamic-ld.cc (octave_dynamic_loader::do_load): Likewise.
+
+	* ov.cc (warn_fortran_indexing, warn_imag_to_real, symbols_of_ov):
+	Delete DEFVARs and functions.
+	(Vwarn_fortran_indexing, Vwarn_imag_to_real): Delete variables.
+
+	* ov.cc (octave_value::vector_value, octave_value::int_vector_value,
+	octave_value::complex_vector_value): Check state of warning ID
+	Octave:fortran-indexing instead of using Vwarn_fortran_indexing.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::double_value,
+	octave_sparse_complex_matrix::complex_value): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::matrix_value,
+	octave_complex_matrix::complex_value): Likewise.
+	* ov-re-mat.cc (octave_matrix::complex_value,
+	octave_matrix::double_value): Likewise.
+	* ov-streamoff.cc (octave_streamoff::streamoff_value): Likewise.
+	* ov-re-sparse.cc (octave_sparse_matrix::complex_value,
+	octave_sparse_matrix::double_value): Likewise.
+	* ov-range.cc (octave_range::complex_value,
+	octave_range::double_value): Likewise.
+	* ov-ch-mat.cc (octave_char_matrix::complex_value,
+	octave_char_matrix::double_value): Likewise.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::complex_value,
+	octave_sparse_bool_matrix::double_value): Likewise.
+	* ov-bool-mat.cc (octave_bool_matrix::complex_value,
+	octave_bool_matrix::double_value): Likewise.
+
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::double_value,
+	octave_sparse_complex_matrix::matrix_value,
+	octave_sparse_complex_matrix::sparse_matrix_value): Check state of
+	warning ID Octave:imag-to-real instead of using Vwarn_imag_to_real.
+	* ov-cx-mat.cc (octave_complex_matrix::double_value,
+	octave_complex_matrix::matrix_value,
+	octave_complex_matrix::complex_value,
+	octave_complex_matrix::sparse_matrix_value): Likewise.
+	* ov-complex.cc (octave_complex::double_value,
+	octave_complex::matrix_value, octave_complex::array_value): Likewise.
+
+	* ov.h (Vwarn_fortran_indexing, Vwarn_imag_to_real): Delete decls.
+
+	* pt-mat.cc (warn_empty_list_elements, warn_string_concat):
+	Delete functions.
+	(symbols_of_pt_mat): Delete DEFVARs.
+	(Vwarn_empty_list_elements, Vwarn_string_concat): Delete variables.
+	(tm_row_const::tm_row_const_rep::eval_warning, tm_const::init,
+	maybe_warn_string_concat): Call warning_with_id instead of warning.
+
+	* ov-str-mat.cc (warn_str_to_num, symbols_of_ov_str_mat):
+	Delete DEFVAR and functions.
+	(Vwarn_str_to_num): Delete variable.
+	(CHAR_MATRIX_CONV): Call warning_with_id instead of warning.
+
+	* utils.cc (warn_neg_dim_as_zero, symbols_of_utils):
+	Delete DEFVAR and functions.
+	(Vwarn_neg_dim_as_zero): Delete variable.
+	(check_dimensions): Call warning_with_id instead of warning.
+
+	* pt-misc.cc (warn_undefined_return_values, symbols_of_pt_misc):
+	Delete DEFVAR and functions.
+	(Vwarn_undefined_return_values): Delete variable.
+	(tree_parameter_list::initialize_undefined_elements):
+	Call warning_with_id instead of warning.
+
+	* dynamic-ld.cc	(warn_reload_forces_clear, symbols_of_dynamic_ld):
+	Delete DEFVAR and functions.
+	(Vwarn_reload_forces_clear): Delete variable.
+	(do_clear_function, octave_dynamic_loader::do_load):
+	Call warning_with_id instead of warning.
+	* error.cc (warning_enabled): Now extern.
+	(Fwarning): If specific id is not found, return state of "all".
+
+	* error.h: Provide decl.
+
+	* gripes.cc (warn_divide_by_zero, symbols_of_gripes):
+	Delete DEFVAR and functions.
+	(gripe_divide_by_zero): Check whether warning is enabled, then
+	call warning_with_id instead of warning.
+	(Vwarn_divide_by_zero): Delete variable.
+
+2006-04-27  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (Fexist): Fix doc string.
+
+	* help.cc (simple_help): No need to handle built-in constants now.
+	* variables.cc (do_who): Likewise.
+	(symbol_exist): Likewise.
+	(link_to_builtin_or_function): Likewise.
+	* symtab.cc (SYMBOL_DEF::type_as_string): Likewise.
+	(record::read_only_error): Likewise.
+	(SYMBOL_DEF::type): Likewise.
+	(record::variable_reference): Likewise.
+	(symbol_record::define_builtin_const): Delete function.
+
+	* symtab.h (symbol_record::define_builtin_const): Delete decl.
+	(symbol_record::symbol_def::is_constant): Delete function.
+	(symbol_record::symbol_def::is_builtin_constant): Delete function.
+	(symbol_record::symbol_def::is_constant): Delete function.
+	(symbol_record::is_builtin_constant): Delete function.
+	(SYMTAB_ALL_TYPES): No need to handle builtin-constants now.
+	(symbol_record::TYPE): Remove BUILTIN_CONSTANT from enum.
+
+	* defun.cc (install_builtin_constant): Delete function.
+	* defun-int.h (install_builtin_constant): Delete decl.
+
+	* variables.cc (bind_builtin_constant): Delete function.
+	* variables.h (bind_builtin_constant): Delete decl.
+
+	* defun-int.h (DEFCONST, DEFCONSTX, DEFCONST_INTERNAL,
+	DEFCONSTX_INTERNAL): Delete definitions.
+
+	* sighandlers.cc (FSIG): New function to replace DEFCONST in
+	symbols_of_sighandlers.
+
+	* octave.cc (intern_argv): Set octave_argv instead of calling
+	bind_builtin_variable here.
+	(Fargv, Fprogram_invocation_name, Fprogram_name): New functions to
+	replace DEFCONSTs in symbols_of_toplvev in toplev.cc.
+	(octave_program_invocation_name, octave_program_name):
+	New static variables.
+	(execute_command_line_file): Use unwind_protect_str to protect
+	octave_program_invocation_name, octave_program_name instead of
+	using a restore function.
+	(restore_program_name): Delete.
+
+	* defaults.cc (FOCTAVE_HOME): New function to replace DEFCONST in
+	symbols_of_defaults.
+
+2006-04-27  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp): Fix for infinite loop in
+	regexp. Include news regexp arguments, and associated tests.
+
+2006-04-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc: Also instantiate do_read functions for boolNDArray.
+
+2006-04-26  Bill Denney  <denney@seas.upenn.edu>
+
+ 	* pager.cc (Fterminal_size): Add list_in_columns to @seealso.
+
+2006-04-26  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Ffilesep): New function to replace DEFCONST in
+	symbols_of_dirfns.
+	(Fpathsep): New function.
+
+	* defaults.cc (set_default_default_exec_path): Use
+	dir_path::path_sep_str instead of std::string (SEPCHAR_STR).
+	(set_default_exec_path): Likewise.
+	(set_default_path): Likewise.
+	(maybe_add_default_load_path): Likewise.  Use dir_path::is_path_sep.
+
+2006-04-18  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/regexp.cc: Include <algorithm>, for transform decl.
+
+	* DLD-FUNCTIONS/ccolamd.cc (Fccolamd, Fcsymamd):
+	Always return something.
+
+	* sighandlers.cc (octave_set_signal_handler,
+	octave_set_interrupt_handler): New arg, restart_syscalls, with
+	default value true.
+	* sighandlers.h: Fix decls to match.
+	* sysdep.cc (octave_kbhit): Disable restarting of system calls.
+
+	* help.cc (Flookfor): Add std qualifier to transform function.
+	Include <algorithm>, for transform decl.
+
+2006-04-16  John W. Eaton  <jwe@octave.org>
+
+	* pager.h (octave_diary_buf, octave_pager_buf): Use std:stringbuf
+	directly.
+
+	* ls-mat-ascii.cc (read_mat_ascii_data): Use std::istringstream
+	directly.
+	* load-save.cc (parse_save_options): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+	* oct-strstrm.h (octave_istrstream::is): Likewise.
+
+	* __gnuplot_raw__.l (printrange, handle_using, gnuplot::do_open,
+	gnuplot::do_set, gnuplot::do_show, gnuplot::makeplot,
+	gnuplot::handle_title): Use std::ostringstream directly.
+	* toplev.cc (run_command_and_return_output): Likewise.
+	* symtab.h (symbol_table::symbol_table): Likewise.
+	* strfns.cc (Flist_in_columns): Likewise.
+	* pt.cc (tree::str_print_code): Likewise.
+	* parse.y (yyerror, fold, finish_matrix): Likewise.
+	* pr-output.cc (PRINT_ND_ARRAY, octave_print_internal, Fdisp):
+	Likewise.
+	* symtab.cc (symbol_table::print_descriptor): Likewise.
+	* ov-list.cc (octave_list::print_raw, octave_list::save_ascii,
+	octave_list::save_binary, octave_list::save_hdf5): Likewise.
+	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline,
+	octave_fcn_inline::load_ascii, octave_fcn_inline::print_raw,
+	Finline): Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::load_ascii,
+	octave_fcn_handle::save_binary, octave_fcn_handle::save_hdf5):
+	Likewise.
+	* ov-cs-list.cc (octave_cs_list::print_raw): Likewise.
+	* ov-cell.cc (octave_cell::print_raw, octave_cell::save_hdf5):
+	Likewise.
+	* oct-strstrm.h (octave_ostrstream::os, octave_ostrstream::str):
+	Likewise.
+	* oct-stream.h (scanf_format_list::buf, printf_format_list::buf):
+	Likewise.
+	* oct-stream.cc (scanf_format_list::scanf_format_list,
+	printf_format_list::printf_format_list,
+	octave_base_stream::do_gets, BEGIN_CHAR_CLASS_CONVERSION,
+	octave_stream_list::do_list_open_files): Likewise.
+	* ls-oct-ascii.h (extract_keyword): Likewise.
+	* load-save.cc (do_load): Likewise.
+	* lex.l (have_continuation, handle_string): Likewise.
+	* input.cc (get_user_input): Likewise.
+	* dirfns.cc (Fls): Likewise.
+	* error.cc (error_message_buffer, vwarning, verror, pr_where):
+	Likewise.
+	* defun.cc (print_usage): Likewise.
+	* help.cc (display_help_text, Ftype, first_help_sentence):
+	Likewise.
+	* ls-mat5.cc (save_mat5_binary_element): Likewise.
+	* DLD-FUNCTIONS/regexp.cc (octregexp): Likewise.
+	* DLD-FUNCTIONS/fftw_wisdom.cc (Ffftw_wisdom): Likewise.
+
+2006-04-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (lex.o parse.o __gnuplot_raw__.o, pic/parse.o
+	pic/__gnuplot_raw__.o):	Omit -Wold-style-cast from CXXFLAGS.
+
+	* ls-mat5.cc (READ_INTEGER_DATA): Allocate local buffer to avoid
+	pointer tricks.
+
+	* DLD-FUNCTIONS/regexp.cc (octregexp): Use OCTAVE_LOCAL_BUFFER
+	instead of allocting memory with malloc.
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): Use octave_value extractors
+	instead of using get_rep.
+
+	* DLD-FUNCTIONS/dispatch.cc (dispatch_record): Use dynamic_cast,
+	not reinterpret_cast.
+
+	* DLD-FUNCTIONS/besselj.cc (Fairy): Use int_value instead of
+	double_value and cast to extract kind arg.
+	(int_arrayN_to_array): Arg is ArrayN<octave_idx_type>, not ArrayN<int>.
+
+	* OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
+	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
+	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
+	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc: No need to cast
+	away const just to cache sparse type.
+	* ov-base-sparse.h (octave_base_sparse::typ): Now mutable.
+	(octave_base_sparse::sparse_type): Now const.
+
+	* OPERATORS/op-cm-scm.cc (DEFBINOP(div)): Explicitly cast args
+	here instead of using CAST_BINOP_ARGS.
+
+	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP): Second arg to
+	CAST_BINOP_ARGS is also const.
+
+	* DLD-FUNCTIONS/chol.cc (Fcholinv, Fchol2inv): Eliminate nargout
+	arg to avoid unused variable warnings.
+
+	* unwind-prot.h, unwind-prot.cc (unwind_protect::save_bool,
+	unwind_protect::save_int, unwind_protect::save_str,
+	unwind_protect::save_ptr, unwind_protect::save_var):
+	Pointer args now const.
+	(unwind_protect_const_ptr): New macro.
+
+	* symtab.cc (maybe_list_cmp_fcn): Use static_cast instead of X_CAST.
+	* variables.cc (symbol_record_name_compare): Likewise.
+	* ls-mat5.cc (MAT5_DO_WRITE, save_mat5_binary_element): Likewise.
+
+	* ov-fcn-handle.cc (octave_fcn_handle::save_hdf5,
+	octave_fcn_handle::load_hdf5): Eliminate unnecessary casts.
+	* ov-fcn-inline.cc (octave_fcn_inline::save_hdf5,
+	octave_fcn_inline::load_hdf5): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::save_hdf5,
+	octave_char_matrix_str::load_hdf5): Likewise.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_hdf5,
+	octave_sparse_bool_matrix::load_hdf5): Likewise.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::save_hdf5,
+	octave_sparse_complex_matrix::load_hdf5): Likewise.
+	* ov-re-sparse.cc (octave_sparse_matrix::save_hdf5,
+	octave_sparse_matrix::load_hdf5): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::save_ascii,
+	octave_char_matrix_str::load_ascii): Likewise.
+	* mappers.cc (xtoascii): Likewise.
+	* load-save.cc (read_binary_file_header, write_header): Likewise.
+	* parse.y (get_help_from_file, parse_fcn_file): Likewise.
+	* DLD-FUNCTIONS/rand.cc (do_rand): Likewise.
+	* ls-hdf5.cc (read_hdf5_data, hdf5_add_attr, save_hdf5_empty,
+	load_hdf5_empty add_hdf5_data): Likewise.
+	* ls-mat4.cc (read_mat_binary_data): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+
+	* oct-stream.cc (expand_char_class, octave_base_stream::do_gets):
+	Use static_cast instead of C-style cast.
+	* oct-procbuf.cc (kluge_procbuf_delay): Likewise.
+	* parse.y (gobble_leading_white_space,: Likewise.
+	* DLD-FUNCTIONS/besselj.cc (int_array2_to_matrix,
+	int_arrayN_to_array): Likewise.
+	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd): Likewise.
+	* DLD-FUNCTIONS/ccolamd.cc (Fcsymamd): Likewise.
+	* pt-pr-code.cc (tree_print_code::print_comment_elt): Likewise.
+	* DLD-FUNCTIONS/besselj.cc (do_bessel): Likewise.
+	* DLD-FUNCTIONS/spchol.cc (Fsymfact): Likewise.
+	* DLD-FUNCTIONS/sparse.cc (sparse_find): Likewise.
+	* DLD-FUNCTIONS/sort.cc (FloatFlip): Likewise.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element, OCTAVE_MAT5_INTEGER_READ,
+	read_mat5_binary_element, save_mat5_binary_element): Likewise.
+
+	* DLD-FUNCTIONS/splu.cc (Fspinv): Use dynamic_cast instead of
+	C-style cast.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Likewise.
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort): Use reinterpret_cast instead of
+	C-style cast.
+	* ls-mat5.cc (write_mat5_tag): Likewise.
+
+	* ov-typeinfo.h (octave_value_typeinfo::octave_value_typeinfo):
+	Eliminate unnecessary casts in constructor initializers.
+
+	* ops.h (CAST_CONV_ARG, CAST_UNOP_ARG, CAST_BINOP_ARGS,
+	DEFASSIGNANYOP_FN): Use C++ dynamic_cast instead of DYNAMIC_CAST macro.
+
+	* unwind-prot.h (unwind_protect_ptr): Use combination of
+	reinterpret_cast and const_cast instead of X_CAST.
+
+	* dynamic-ld.cc (loader::do_load): Use reinterpret_cast instead of
+	X_CAST.
+	* ov-base-int.cc (octave_base_int_matrix<T>::save_binary,
+	octave_base_int_matrix<T>::load_binary,
+	octave_base_int_scalar<T>::save_binary,
+	octave_base_int_scalar<T>::load_binary): Likewise.
+	* ov-bool-mat.cc (octave_bool_matrix::save_binary,
+	octave_bool_matrix::load_binary): Likewise.
+	* ov-bool-sparse.cc (octave_sparse_bool_matrix::save_binary,
+	octave_sparse_bool_matrix::load_binary): Likewise.
+	* ov-bool.cc (octave_bool::save_binary, octave_bool::load_binary):
+	Likewise.
+	* ov-cell.cc (octave_cell::save_binary, octave_cell::load_binary):
+	Likewise.
+	* ov-complex.cc (octave_complex::save_binary,
+	octave_complex::load_binary): Likewise.
+	* ov-cx-mat.cc (octave_matrix::save_binary,
+	octave_matrix::load_binary): Likewise.
+	* ov-cx-sparse.cc (octave_sparse_complex_matrix::save_binary,
+	octave_sparse_complex_matrix::load_binary): Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::save_binary,
+	octave_fcn_handle::load_binary): Likewise.
+	* ov-fcn-inline.cc (octave_fcn_inline::save_binary,
+	octave_fcn_inline::load_binary): Likewise.
+	* ov-list.cc (octave_list::save_binary, octave_list::load_binary):
+	Likewise.
+	* ov-range.cc (octave_range::save_binary, octave_range::load_binary):
+	Likewise.
+	* ov-re-mat.cc (octave_matrix::save_binary,
+	octave_matrix::load_binary): Likewise.
+	* ov-re-sparse.cc (octave_sparse_matrix::save_binary,
+	octave_sparse_matrix::load_binary): Likewise.
+	* ov-scalar.cc (octave_scalar::save_binary,
+	octave_scalar::load_binary): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::save_binary,
+	(octave_char_matrix_str::load_binary): Likewise.
+	* ov-struct.cc (octave_struct::save_binary,
+	octave_struct::load_binary): Likewise.
+	* ls-oct-binary.cc (save_binary_data, read_binary_data): Likewise.
+	* ls-mat4.cc (read_mat_file_header, save_mat_binary_data): Likewise.
+	* ls-mat5.cc (read_mat5_tag, read_mat5_binary_element,
+	read_mat5_binary_element, read_mat5_binary_file_header,
+	MAT5_DO_WRITE, write_mat5_array, write_mat5_integer_data,
+	save_mat5_binary_element, READ_INTEGER_DATA): Likewise.
+
+2006-04-12  John W. Eaton  <jwe@octave.org>
+
+	* ov.h (OV_REP_TYPE): New macro.
+
+	* DLD-FUNCTIONS/sparse.cc (MINMAX_BODY): No need to cast arg1 to
+	const octave_sparse_matrix&.
+
+	* ov-base.cc (print_answer_id_name, warn_resize_on_range_error,
+	warn_num_to_str, silent_functions): Move here, from ov.cc.
+	(Vwarn_resize_on_range_error, Vsilent_functions): Likewise.
+	(Vprint_answer_id_name): Likewise.  Now static.
+	(symbols_of_ov_base): New function.  Move DEFVARs for
+	print_answer_id_name, warn_resize_on_range_error, warn_num_to_str,
+	and silent_functions here from symbols_of_ov in ov.cc.
+	* ov.h (Vprint_answer_id_name): Delete decl.
+	* ov-base.h (Vwarn_resize_on_range_error, Vwarn_num_to_str):
+	Move decls here from ov.h.
+
+	* ov-str-mat.cc (warn_str_to_num): Move here, from ov.cc.
+	(Vwarn_str_to_num): Likewise.  Now static.
+	(symbols_of_ov_str_mat): New function.  Move DEFVAR for
+	warn_str_to_num here from symbols_of_ov in ov.cc.
+	* ov.h (Vwarn_str_to_num): Delete decl.
+
+	* ov-struct.cc (octave_struct::load_ascii): Pass loop counter, not
+	count, to read_ascii.
+	* ov-list.cc (octave_list::load_ascii): Likewise.
+
+	* ov-list.cc (octave_list::do_index_op): Allow index to extract
+	multiple items.  Result is always a list.
+
+	* pr-output.cc (struct_levels_to_print): Move here from ov.cc.
+	(Vstruct-levels_to_print): Likewise.
+	(symbols_of_pr_output): Move DEFVAR for struct_levels_to_print here
+	from symbols_of_ov in ov.cc.
+	* pr-output.h (Vstruct_levels_to_print): Nove decl here from ov.h.
+
+	* gripes.cc (warn_divide_by_zero): Move here from ov.cc.
+	(Vwarn_divide_by_zero): Likewise.  Now static.
+	(symbols_of_gripes): New function.  Move DEFVAR for
+	warn_divide_by_zero here from symbols_of_ov in ov.cc.
+	* ov.h (Vwarn_divide_by_zero): Delete decl.
+
+	* load-save.cc (do_load): Declare count octave_idx_type, not int.
+	* ls-oct-ascii.cc, ls-oct-ascii.h (read_ascii_data): Likewise.
+
+	Rearrange octave_value class hierarchy so that rep is a pointer
+	an octave_base_value object and the octave_base_value class
+	stores the reference count.  Virtualness now goes with the
+	octave_base_value class, not the octave_value class.
+
+	* ops.h, ov-base-int.cc, ov-base-int.h, ov-base-mat.h,
+	ov-base-scalar.h, ov-base-sparse.h, ov-base.cc, ov-base.h,
+	ov-bool-mat.cc, ov-bool-mat.h, ov-bool-sparse.cc,
+	ov-bool-sparse.h, ov-bool.cc, ov-bool.h, ov-cell.cc, ov-cell.h,
+	ov-ch-mat.h, ov-colon.h, ov-complex.cc, ov-complex.h,
+	ov-cs-list.h, ov-cx-mat.cc, ov-cx-mat.h, ov-cx-sparse.cc,
+	ov-cx-sparse.h, ov-fcn-handle.h, ov-fcn-inline.h, ov-fcn.cc,
+	ov-fcn.h, ov-intx.h, ov-list.cc, ov-list.h, ov-range.cc,
+	ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-re-sparse.cc,
+	ov-re-sparse.h, ov-scalar.h, ov-str-mat.cc, ov-str-mat.h,
+	ov-streamoff.h, ov-struct.cc, ov-struct.h, ov-type-conv.h,
+	ov-typeinfo.cc, ov-typeinfo.h, ov-va-args.h, ov.cc, ov.h,
+	variables.cc, DLD-FUNCTIONS/matrix_type.cc, DLD-FUNCTIONS/splu.cc,
+	OPERATORS/op-chm.cc: Cope with octave_value hierarchy changes
+	(apologies for the lack of detail).
+
+	* ov.cc (octave_value::nil_rep): Delete.
+	* ov.h (octave_value::nil_rep): Delete decl.
+
+	* ov-base.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA,
+	DECLARE_OV_BASE_TYPEID_FUNCTIONS_AND_DATA,
+	DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA2,
+	DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA):
+	Move macro definitions here from ov.h.
+	(struct_indent, increment_struct_indent, decrement_struct_indent,
+	list_indent, increment_list_indent, decrement_list_indent):
+	Delete decls.
+
+	* ov-base.cc. ov-base.h (do_index_op, ndims, all, any,
+	convert_to_str, print_with_name, numeric_assign,
+	reset_indent_level, increment_indent_level,
+	decrement_indent_level, current_print_indent_level, newline,
+	indent, reset): Move member functions here from octave_value class.
+	(count, curr_print_indent_level, beginning_of_line):
+	Move data members here from octave_value class.
+	(gripe_indexed_assignment, gripe_assign_conversion_failed,
+	gripe_no_conversion): Move here from ov.cc.
+
+	* ov.h (class octave_xvalue): Delete.
+	(octave_value::octave_value (const octave_xvalue&)): Delete.
+	(anonymous union): Delete.
+	(octave_value::rep): Now a pointer to octave_base_value instead of
+	octave_value.
+
+	(octave_value::internal_rep): Return pointer to octave_base_value,
+	not octave_value.
+
+2006-04-11  John W. Eaton  <jwe@octave.org>
+
+	* pt-assign.cc (tree_simple_assignment::rvalue,
+	tree_multi_assignment::rvalue):
+	Error if RHS is a comma-separated list.
+
+2006-04-07  John W. Eaton  <jwe@octave.org>
+
+	* defaults.cc (FOCTAVE_VERSION): New function to replace
+	corresponding DEFCONSTX macro in symbols_of_defaults.
+
+	* file-io.cc (FP_tmpdir, FSEEK_SET, FSEEK_CUR, FSEEK_END, Fstdin,
+	Fstdout, Fstderr): New functions to replace DEFCONSTX macros in
+	symbols_of_file_io.
+	(const_value): New static function.
+	(symbols_of_file_io): Delete.
+
+	* syscalls.cc (FF_DUPFD, FF_GETFD, FF_GETFL, FF_SETFD, FF_SETFL,
+	FO_APPEND, FO_ASYNC, FO_CREAT, FO_EXCL, FO_NONBLOCK, FO_RDONLY,
+	FO_RDWR, FO_SYNC, FO_TRUNC, FO_WRONLY, FWNOHANG, FWUNTRACED,
+	FWCONTINUE): New functions to replace DEFCONSTX macros in
+	symbols_of_syscalls.
+	(const_value): New static function.
+	(symbols_of_syscalls): Delete.
+
+	* pr-output.cc (pr_max_internal, pr_min_internal):
+	Return 0 if all values are Inf or NaN.
+	Always leave space for sign when printing Inf or NaN values.
+
+	* parse.y (Fmfilename): Don't let filenames like ../foo fake us out.
+
+	* data.cc (fill_matrix): Create separate versions for int, bool,
+	and double, and Complex values.
+	(FInf, FNaN, Fe, Feps, Fpi, Frealmax, Frealmin, FI, FNA, Ffalse,
+	Ftrue): New functions to replace DEFCONST and DEFCONSTX macros in
+	symbols_of_data.  Provide i, J, and j aliases for I.
+	Provide nan alias for NaN.  Provide inf alias for Inf.
+	(symbols_of_data): Delete.
+
+2006-04-06  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (parse_and_execute, parse_fcn_file):
+	Create octave_script_function object and push it on the call stack.
+
+	* parse.y (Fmfilename): Check for script or user function file on
+	call stack.
+
+	* ov-builtin.cc (octave_builtin::do_multi_index_op):
+	Use octave_call_stack instead of curr_function to save pointer to
+	current function.
+	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op): Likewise.
+
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Use octave_call_stack instead of
+	curr_function to get pointer to current function.
+	* pt-arg-list.cc (list::convert_to_const_vector): Likewise.
+	* variables.cc (Fmlock, Fmunlock, Fmislocked): Likewise.
+	* input.cc (get_user_input): Likewise.
+	* error.cc (warning_1, error_2): Likewise.  Only enter debug mode
+	if there is a scripting language caller.
+	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Likewise.  Check
+	scripting language caller, not current function.
+
+	* toplev.cc (curr_caller_function, curr_function): Delete.
+	* toplev.h: Delete decls.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Don't protect and set curr_caller_function.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
+	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
+
+	* variables.cc (do_who): Use octave_call_stack instead of
+	curr_caller_function to get pointer to calling function.
+	* input.cc (get_user_input): Likewise.
+	* error.cc (pr_where): Likewise.  No need for curr_function now.
+	* parse.y (Fmfilename): Likewise.  Check for scripting language
+	caller, not any calling function.
+
+	* ov-usr-fcn.h (octave_user_script): New class.
+	* ov-fcn.h (octave_function::is_user_script): New virtual function.
+
+	* toplev.h, toplev.cc (octave_call_stack): New class.
+
+	* debug.cc (Fdbwhere): Use get_user_function here.
+
+2006-04-05  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (mk-pkg-add): Use mfilename to simplify.
+	(PKG_ADD): Don't pass --prefix arg to mk-pkg-add.
+	(PKG_ADD.inst): Delete target.
+	(clean): Don't remove PKG_ADD.inst.
+	(install-oct): Don't depend on PKG_ADD.inst.  Install PKG_ADD, not
+	PKG_ADD.inst.
+
+	* parse.y (Fmfilename): New function.
+
+2006-04-04  David Bateman  <dbateman@free.fr>
+
+	* help.cc (Flookfor): Skip overloaded functions.  Lookup help text
+	of autoloaded function, not parent that contains the autoload.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fresize): New function.
+	* oct-map.cc, ov-base-mat.cc, ov-base-sparse.cc, ov-base.cc,
+	ov-bool.cc, ov-complex.cc, ov-range.cc, ov-scalar.cc,
+	ov-str-mat.cc (resize): Add boolean fill argument.
+	* oct-map.h, ov-base-mat.h, ov-base-sparse.h, ov-base.h,
+	ov-bool.h, ov-complex.h, ov-intx.h, ov-range.h, ov-scalar.h,
+	ov-str-mat.h, ov.h (resize): Ditto.
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Additional argument for
+	gamma and poisson distributions.  Change "state" and "seed"
+	arguments so that they choose between generators.
+	Add, poisson, gamma and exponential generators.
+	(Frand, Frandn): Update docs for new generators, add tests.
+	(Frande, Frandp, Frandg): New generators, with test code.
+
+	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Allow functions to be passed
+	using function handles, inline functions, and cell arrays of
+	strings, inline and function handles.
+	* DLD-FUNCTIONS/dasrtk.cc (Fdasrt): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (Flsode):  Likewise.
+
+	* ls-hdf5.h (hdf5_fstreambase::open): Remove unused arg prot.
+
+2006-03-30  Bill Denney  <denney@seas.upenn.edu>
+
+ 	* data.cc: Include numel in @seealso.
+
+2006-03-30  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/fftw_wisdom.cc: Don't attempt to save wisdom to
+	an empty filename or invalid filename.
+
+2006-03-28  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/matrix_type.cc: Update copyright notice and FSF
+	address.
+
+2006-03-24  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/spchol.cc (Fsymbfact): Use CHOLMOD_NAME to select
+	proper version of row_subtree function.
+
+	* ov-cell.cc (octave_cell::save_hdf5): Use OSSTREAM instead of
+	fixed character buffer and sprintf.
+	* ov-list.cc (octave_list::save_hdf5, octave_list::save_ascii,
+	octave_list::save_binary): Likewise.
+
+	* ov-cell.h (octave_cell::convert_to_str_internal):
+	Undo previous change for pad arg.
+	* ov-cell.cc (octave_cell::all_strings): Reinstate pad arg, pass
+	it on to all_strings.
+	* ov.h (octave_value::all_strings): Reinstate pad arg.
+	* ov-base.cc (octave_base_value::all_strings): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::all_strings): Likewise.
+	* ov.h, ov-base.h, ov-cell.h, ov-str-mat.h: Fix all_strings decls.
+
+2005-10-25  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): With 1 arg, return [](0x0) for compatibility.
+
+2006-03-23  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.5+.
+
+2006-03-22  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.5.
+	(OCTAVE_API_VERSION): Now api-v18.
+	(OCTAVE_RELEASE_DATE): Now 2006-03-22.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.h (octave_cell::convert_to_str_internal):
+	Ignore pad and force args.
+	* ov-cell.cc (octave_cell::all_strings): Delete args.  Never pad.
+	* ov-base.cc (octave_base_value::all_strings): Delete args.
+	Always force string conversion, never pad.
+	* ov-str-mat.cc (octave_char_matrix_str::all_strings):
+	Delete args.  Don't strip whitespace.
+	* ov.h, ov-base.h, ov-cell.h, ov-str-mat.h: Fix all_strings decls.
+	* strfns.cc (Fchar): No args for all_strings.
+
+2006-03-21  David bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Use GetProcessTimes for
+	MinGW to obtain user and system times.
+
+2006-03-17  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (F__list_in_columns__): New function.
+
+2006-03-16  Bill Denney  <bill@givebillmoney.com>
+
+	* DLD-FUNCTIONS/time.cc: Improve @seealso entries in doc strings.
+
+2006-03-16  John W. Eaton  <jwe@octave.org>
+
+	* __gnuplot_raw__.l (F__gnuplot_show__): Temporarily use DEFCMD
+	instead of DEFUN.
+	(symbols_of___gnuplot_raw__): Temporarily mark __gnuplot_plot__,
+	__gnuplot_set__, __gnuplot_splot__, and __gnuplot_replot__ as raw
+	commands.
+
+	* variables.cc (is_marked_as_rawcommand, unmark_rawcommand,
+	mark_as_rawcommand): Temporarily not static.
+	* variables.h: Temporarily Provide decls.
+
+2006-03-16  David Bateman  <dbateman@free.fr>
+
+	* sparse-xdiv.cc (result_ok): delete.
+	(xdiv, xleftdiv): Simplify to use version of SpareMatrix::solve
+	and SparseComplexMatrix::solve which internally treats rectangular
+	and singular matrices.
+	* DLD-FUNCTIONS/luinc.cc: Remove error test for singular matrix as
+	QR solver now implemented.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Paranoid check on
+	error_state. Disable tests for the detection of underdetermined
+	lower and over-determined upper matrix due to problems with
+	non minimum norm solutions.
+	* DLD-FUNCTIONS/spqr.cc: Warning for issue of use of Fspqr for
+	under-determined problems.
+
+2006-03-16  John W. Eaton  <jwe@octave.org>
+
+	* __gnuplot_raw__.l: Move here from DLD-FUNCTIONS/__gnuplot_raw__.l.
+	Use DEFUN, not DEFUN_DLD.  Include defun.h, not defun-dld.h.
+	(gnuplot::do_init):Move guts to symbols_of___gnuplot_raw__.
+	(symbols_of___gnuplot_raw__): New function.
+
+	* Makefile.in (DLD_XSRC): Delete __gnuplot_raw__.l from the list.
+	(DIST_SRC): Include __gnuplot_raw__.l in the list.
+	(__gnuplot_raw__.cc): Depend on __gnuplot_raw__.l, not
+	DLD-FUNCTIONS/__gnuplot_raw__.l
+
+	* ls-oct-ascii.h (extract_keyword): Use std::string compare method
+	instead of strncmp.
+	* ls-oct-ascii.cc (extract_keyword): Likewise.
+
+2006-03-15  William Poetra Yoga Hadisoeseno  <williampoetra@gmail.com>
+
+	* data.cc (Frows, Fcolumns): New functions.
+
+	* DLD-FUNCTIONS/time.cc (Fstrptime, Fstrftime): Fix docstring.
+
+	* strfns.cc (Fstrcmp): Fixed docstring.
+
+2006-03-15  John W. Eaton  <jwe@octave.org>
+
+	* pager.cc (Fterminal_size): New function.
+
+	* help.cc (help_from_info): Simplify.
+	(try_info): Use feval to call doc instead of executing info program.
+	(additional_help_message): Point users to doc instead of help -i.
+	From S�ren Hauberg <soren@hauberg.org>.
+
+	* toplev.cc (Fsystem): Return output if nargout > 1, not 0.
+
+2006-03-14  Keith Goodman  <kwgoodman@gmail.com>
+
+	* help.cc (Fhelp, Fwhich, Flookfor): Doc string fix.
+
+2006-03-14  John W. Eaton  <jwe@octave.org>
+
+	* defun.cc (print_usage): New arg, extra_msg.
+
+	* xpow.cc: Omit tests for now.
+
+	* parse.y (QUOTE, TRANSPOSE): For compatibility, now have same
+	precedence as POW and EPOW.
+
+2006-03-14  Bill Denney  <bill@givebillmoney.com>
+
+	 * load-save.cc (Fload, Fsave): Update docstring for functional form.
+
+2006-03-14  John W. Eaton  <jwe@octave.org>
+
+	* xpow.cc (elem_xpow): Undo previous change.
+
+2006-03-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* xpow.cc: New tests.
+
+2006-03-13  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (fcn_out_of_date): No longer static.
+	* ov-fcn-handle.cc (warn_reload): New function.
+	(octave_fcn_handle::subsref): Implement basic logic for updating
+	when pointed-to function changes.
+
+2006-03-10  John W. Eaton  <jwe@octave.org>
+
+	* xpow.cc (elem_xpow): Only use complex pow if really necessary.
+
+	* symtab.cc (symbol_table::glob, symbol_table::symbol_list,
+	symbol_table::subsymbol_list): Force result to be a column
+	vector.
+
+	* oct-stream.h (octave_stream::stream_ok): Undo previous change.
+	Eliminate who parameter.  Change all callers.
+
+	* variables.cc (do_who): Return more info in structure array for
+	verbose output.
+	* symtab.h (symbol_record::size, symbol_record::class_name,
+	symbol_record::is_sparse_type, symbol_record::is_complex_type,
+	symbol_record::size, symbol_record::symbol_def::class_name,
+	symbol_record::symbol_def::is_sparse_type,
+	symbol_record::symbol_def::is_complex_type): New functions.
+	* ov.h (octave_value::size): New function.
+
+2006-03-09  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (run_command_and_return_output): Swap output and
+	status for compatibility.
+
+	* Makefile.in (defaults.h, oct-conf.h): Force updates.
+
+	* defaults.h.in (OCTAVE_RELEASE): New macro.
+
+	* octave.cc (F__version_info__): New arg, release.
+	(initialize_version_info): Pass release arg to F__version_info__.
+
+	* toplev.cc: Include api_version in the list.
+
+	* Makefile.in (DIST_SRC): Include octave.cc here.
+	(DISTFILES, DEP_5): Not here.
+
+	* octave.cc (F__version_info__): New function.
+	(initialize_version_info): New function.
+	(octave_main): Call initialize_version_info just before reading
+	init files.
+
+	* version.h (OCTAVE_RELEASE_DATE): New macro.
+
+	* ov-fcn-handle.h (octave_fcn_handle::dims): New function.
+
+2006-03-08  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream::stream_ok): Move definition here,
+	from oct-stream.h.  New arg, warn.  If warn is true and stream is
+	invalid, print warning.
+	(octave_stream::error): Always avoid warning message from
+	stream_ok.  Return "invalid stream object" if stream is not ok.
+
+2006-03-08  David Bateman  <dbateman@free.fr>
+
+	* ov-mapper.cc (SPARSE_MAPPER_LOOP_2): Change nnz to nz to remove
+	shadowed variable warning.
+	* DLD-FUNCTIONS/spqr.cc: Update for new upstream CXSPARSE release.
+
+2006-03-06  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (display_help_text): Force linebreak with @sp.
+
+2006-03-06  Keith Goodman  <kwgoodman@gmail.com>
+
+	* bitfcns.cc, data.cc, debug.cc, file-io.cc, help.cc,
+	load-save.cc, mappers.cc, ov-cell.cc, ov-fcn-inline.cc,
+	ov-struct.cc, ov-usr-fcn.cc, ov.cc, pr-output.cc, utils.cc,
+	variables.cc, DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTIONS/cellfun.cc,
+	DLD-FUNCTIONS/colamd.cc, DLD-FUNCTIONS/daspk.cc,
+	DLD-FUNCTIONS/dasrt.cc, DLD-FUNCTIONS/dassl.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fft2.cc,
+	DLD-FUNCTIONS/fftn.cc, DLD-FUNCTIONS/fftw_wisdom.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/gcd.cc,
+	DLD-FUNCTIONS/luinc.cc,	DLD-FUNCTIONS/sparse.cc,
+	DLD-FUNCTIONS/spchol.cc, DLD-FUNCTIONS/splu.cc,
+	DLD-FUNCTIONS/spqr.cc, DLD-FUNCTIONS/sqrtm.cc:
+	Move @seealso inside @defXXX macro.  Remove "and" from @seealso.
+
+2006-03-04  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (additional_help_message): Don't print "\n" before message.
+	(help_from_symbol_table): If Vsuppress_verbose_help_message is
+	true, don't print which info.
+
+2006-03-03  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Vconfirm_recursive_rmdir): New static variable.
+	(symbols_of_dirfns): DEFVAR it.
+	(confirm_recursive_rmdir): New function.
+	(Frmdir): Maybe ask for confirmation for recursive removal.
+	Require second arg to be "s".
+
+	* input.cc (octave_yes_or_no): New function.
+	(Fyes_or_no): New function.
+	* input.h (octave_yes_or_no): Provide decl.
+
+2006-03-02  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (Fmkdir, Frmdir): Now commands.
+
+2006-02-20  David Bateman  <dbateman@free.fr>
+
+	* ov.h (virtual bool is_sparse_type (bool)): New virtual function
+	* ov-base.h (bool is_sparse_type (bool)): New function
+	* ov-base-sparse.h (bool is_sparse_type (bool)): New function
+	* DLD-FUNCTIONS/ccolamd.cc, DLD-FUNCTION/colamd.cc,
+	DLD-FUNCTIONS/__glpk__.cc, DLD-FUNCTIONS/splu.cc,
+	DLD-FUNCTIONS/sparse.cc, DLD-FUNCTIONS/matrix_type.cc, pt-mat.cc:
+	Replace us of 'arg.class_name () == "sparse"' with
+	'arg.is_sparse_type ()'
+
+2006-02-20  David Bateman  <dbateman@free.fr>
+
+	* pt-mat.cc (class tm_row_const): Add any_sparse bool variable.
+	(tm_row_const::tm_row_const_rep::do_init_element): Initialize
+	any_sparse variable if any matrice is sparse.
+	(class tm_const): Add any_sparse bool variable.
+	(tm_const::init): Initialize any_sparse variable.
+	(tree_matrix::rvalue): If any matrix is sparse use sparse matrix
+	as initial matrix for concatenation
+	* DLD-FUNCTIONS/matrix_type.cc: Add tests for new rectangular
+	diagonal, permuted diagonal, triangular and permuted triangular
+	matrices
+
+2006-02-20  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (__builtin_delete, __builtin_new): Use std::cerr for
+	messages instead of std::cout.
+	(main_loop, do_octave_atexit): Use octave_stdout, not std::cout.
+
+2006-02-15  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (Fautoload): Return struct array of autoload info if
+	nargin == 0.
+
+2006-02-15  Keith Goodman  <kwgoodman@gmail.com>
+
+	* help.cc (keywords): Doc string fix.
+
+2006-02-15  John W. Eaton  <jwe@octave.org>
+
+	* oct-procbuf.cc (close): Use __CYGWIN__ instead of __CYGWIN32__.
+
+2006-02-13  David Bateman  <dbateman@free.fr>
+
+	* DLD_FUNCTIONS/regexp.cc (octregexp): Add matlab compatiable
+	named tokens. Update the tests
+
+2006-02-10  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (\[{S}*): Maybe set lexer_flags.looking_at_return_list or
+	lexer_flags.looking_at_matrix_or_assign_lhs here.
+	* parse.y
+	(return_list_beg): Don't use in_return_list here.
+	(assign_lhs, matrix): Don't use in_matrix_or_assign_lhs here.
+	(in_matrix_or_assign_lhs, in_return_list): Delete unused macros.
+	(matrix): Clear lexer_flags.looking_at_matrix_or_assign_lhs in all
+	cases.
+
+2006-02-09  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (oct_file_in_path): Check len > 4, not len > 2.
+	From Larrie Carr <larrie@telus.net>.
+
+2006-02-09  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/spqr.cc: New file for sparse QR and dmperm based on
+	CSparse.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): dintinguish between
+	rectangular and singular matrices. Add tests.
+	* DLD-FUNCTIONS/luinc.cc: Add tests.
+	* DLD-FUNCTIONS/spkron.cc: Ditto.
+	* Makefile.in (DLD_XSRC): Add spqr.cc.
+	(OCT_LINK_DEPS): Add CSSPARSE_LIBS.
+	* sparse-xdiv.h: Remove conditio of lssolve.
+
+2006-02-08  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (frob_function): Clear ID_NAME from top_level symbol
+	table if we are defining a function at the top-level and a
+	function with the same name is already in the top-level symbol
+	table.
+
+2006-01-31  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-sparse.h (octave_base_sparse<T>::nzmax): New function.
+	* ov.h (octave_value::nzmax): New function.
+	* ov-base.cc (octave_base_value::nzmax): New function.
+	* ov-base.h: Provide decl.
+	* data.cc (Fnzmax): New function.
+	* DLD-FUNCTIONS/sparse.cc (Fnzmax): Delete.
+
+2006-01-31  Kim Hansen  <kim@i9.dk>
+
+	* __glpk__.cc (F__glpk__): Fix for sparse matrices.
+
+2006-01-30  John W. Eaton  <jwe@octave.org>
+
+	* gripes.cc (gripe_wrong_type_arg (const char*, const char*, bool)):
+	New function.
+	(gripe_wrong_type_arg (const char*, const std::string&, bool)):
+	Define using const char*, const char*, bool version.
+	(gripe_wrong_type_arg (const char*, const octave_value&, bool)):
+	Define using const char*, const std::string&, bool version.
+
+	* ov.h (octave_value::nnz): New function.
+	* ov-base.cc (octave_base_value::nnz): New function.
+	* ov-base.h: Provide decl.
+	* ov-base-mat.h (octave_base_matrix<MT>::nnz): New function.
+	* ov-base-scalar.h (octave_base_scalar<MT>::nnz): New function.
+	* Cell.cc (Cell::nnz): New function.
+	* Cell.h: Provide decl.
+	* data.cc (Fnnz): New function.
+	* DLD-FUNCTIONS/sparse.cc (Fnnz): Delete.
+
+2006-01-13  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::print_raw): Correctly print scalar
+	structs and empty struct arrays.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (Fclearplot): For compatibility,
+	also turn off hold state for current figure.
+
+2006-01-13  Bill Denney  <bill@givebillmoney.com>
+
+ 	* dirfns.cc: Add @seealso{} to docstrings.
+
+2006-01-13  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (display_help_text): Use warning() to print raw Texinfo
+	source.  Don't redirect error output for makeinfo process.
+
+	* DLD-FUNCTIONS/__gnuplot_raw__.l (F__gnuplot_init__): Delete
+	function and PKG_ADD directive.
+	(gnuplot::gnuplot): Call do_init here.
+	(gnuplot::init): Delete static function.
+	(gnuplot::close_all): New static function.
+	(class gnuplot_X): New class.
+	(gnpulot_X::X): New static instance.
+
+2006-01-12  David Bateman  <dbateman@free.fr>
+
+	* help.cc (make_name_list): Add autoload functions to list of
+	available completions.
+	(simple_help): Add autoloaded functions to functions listed
+	(first_help_sentence): Avoid issue with single line help string
+	that is not terminated in \n.
+	(Flookfor): Check for string match in the keyword/function, etc
+	name. Also look for string match in help of autoloaded functions.
+	Load oct-files to be able to access their help string.
+	* parse.y (string_vector autoloaded_functions (void)): New
+	function to list all autloaded functions.
+	(string_vector reverse_lookup_autoload (const std::string& nm)):
+	Reverse lookup function to match file to autoloaded functions.
+	* parse.h (autoloaded_functions, reverse_lookup_autoload):
+	Declaration.
+
+	* oct-map.cc (maybe_delete_elements): New function.
+	* oct-map.h (maybe_delete_elements): Declare it.
+	* ov-struct.cc (octave_struct::subsref): Handle indexing empty
+	structure.
+	(octave_struct::subsasgn): If rhs is [], delete elements.
+	(octave_struct::print_raw): Handle printing empty structure.
+
+	* ls-mat5.cc (read_mat5_binary_element): Allow reading of sparse
+	elements when nnz doesn't equal nzmax.
+
+2006-01-10  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sparse.cc (sparse_find): Use Sparse<T>::nonzero()
+	rather than Sparse<T>::nnz(), due to possibility of overallocation
+	of memory.
+
+2006-01-06  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::transpose): Avoid GCC 3.3.x parse error.
+
+2005-12-14  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream::invalid_stream_error): Delete.
+	* oct-stream.h (octave_stream::stream_ok): Don't fail with error.
+
+2005-12-14  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/regexp.cc: New file.
+
+	* DLD-FUNCTIONS/dispatch.cc: Update tests for string/sq_string
+	differences.
+
+	* error.cc (Vquiet_warning): New variable.
+	(vwarning): Use Vquiet_warning to prevent warning output.
+	(Fwarning): Include "quiet" option to Fwarning function.
+	Assign retval when using "query".  Typo in error message.
+	(Flastwarn): Clear warning_state when using Flastwarn to probe warning
+	message.
+
+	* ov-struct.cc: Update Fstruct tests for change in error output.
+
+	* Makefile.in: Include regexp when needed with appropriate libraries.
+
+2005-12-13  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: Change references to gplot.l to __gnuplot_raw__.l.
+	* DLD-FUNCTIONS/__gnuplot_raw__.l: Rename from DLD-FUNCTIONS/gplot.l.
+	Remove all references to deprecated gplot, gsplot, graw, gset and
+	gshow functions.
+	* help.cc (static help_list keywords[]): Remove gsplot and gplot.
+
+	* ls-oct-ascii.cc (save_three_d):  Don't strip Inf or NaN.
+	(save_ascii_data_for_plotting): Ditto.
+
+2005-12-13  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream_list::do_insert): Check open state
+	of stream in list instead of whether stream state is OK.
+
+2005-12-12  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-struct.cc (transpose): New function.
+	(install_struct_ops): Install it.
+
+	* oct-map.cc (Octave_map::transpose): New function.
+	* oct-map.h: Provide decl.
+
+2005-12-08  John W. Eaton  <jwe@octave.org>
+
+	* Cell.cc (Cell::column): New function.
+	* pt-loop.cc (DO_ND_LOOP): Simplify.
+	(simple_for_loop_command::eval): Correctly handle N-d numeric and
+	cell arrays when only the first dimension is 0.
+
+2005-12-07  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (NL): Also accept '\r'.
+
+	* error.cc (Vbacktrace_on_warning, warning_options,
+	Vlast_warning_id, Vlast_error_id): New file-scope variables.
+	(Vwarning_frequency, Vwarning_option): Delete unused variables.
+	(set_warning_option): Delete unused function.
+	(Fwarning): Update for compatibility.  Use DEFCMD, not DEFUN.
+	(warning_enabled, check_state): New functions.
+	(warning (const char *fmt, ...)): Use it.
+	(init_warning_options): New function.
+	(symbols_of_error): Call it.
+	(vwarning, Flastwarn): Handle Vlast_warning_id.  Improve compatibility.
+	(handle_message): New arg, ID.  Change all callers.
+	(vwarning, verror, error_1): New arg, ID.  Change all callers.
+	(verror, Flasterr): Handle Vlast_error_id.  Improve compatibility.
+
+	* error.cc (message_with_id, usage_with_id, warning_with_id,
+	error_with_id, parse_error_with_id): New functions.
+	(error_2, warning_1, usage_1): New functions.
+	* error.h (message_with_id, usage_with_id, warning_with_id,
+	error_with_id, parse_error_with_id): Provide decls.
+
+2005-11-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/schur.cc (Fschur): Doc string fix.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-11-28  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (Funame): New function.
+
+2005-11-21  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (pr_int): Fix thinko in byte-swapping for bit format.
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
+	Use C++ static_cast instead of C-style casts.
+
+2005-11-21  William Poetra Yoga H <williampoetra@yahoo.com>
+
+	* DLD-FUNCTIONS/cellfun.cc (Fcellfun):
+	Docstring and error message fixes.
+
+2005-11-17  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): Don't cast arg1 to
+	const octave_complex_matrix&.
+
+2005-11-16  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (PKG_ADD.inst): New target.
+	(install-oct): Depend on it.
+	(clean): Remove it.
+
+	* mk-pkg-add: New option --install.  Don't use --prefix option.
+	Delete obsolete comments.
+
+	* Cell.cc (Cell::index): Indexing with () is a no-op, not an error.
+	* oct-map.cc (Octave_map::index): Likewise.
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Likewise.
+	* ov-base-sparse.cc (octave_base_sparse<T>::do_index_op): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
+	Likewise.
+
+2005-11-11  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (install-oct): Fix thinko in previous change.
+
+	* version.h (OCTAVE_VERSION): Now 2.9.4
+	(OCTAVE_API_VERSION): Now api-v17.
+
+	* variables.cc (symbol_out_of_date): Check for autoloads here too.
+
+	* Makefile.in (PKG_ADD): Depend on $(DLD_DEF_FILES), not $(DLD_SRC).
+	(%.df : %.cc): Also insert PKG_ADD commands in .df files.
+	(install-oct): Generate PKG_ADD file for install directory here.
+	Don't depend on PKG-ADD. No need to make .oct file links.
+	(clean): No need to delete links.
+	(stamp-oct-links): Delete target.
+	(distclean): No need to remove stamp-oct-links.
+	(all): Depend on $(OCT_FILES), not stamp-oct-links.
+
+	* mk-pkg-add: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+	* mk-oct-links: Delete.
+	* Makefile.in (DISTFILES): Remove it from the list.
+
+2005-11-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.h (octave_char_matrix_str::permute,
+	octave_char_matrix_str::resize): New functions.
+	(octave_char_matrix_sq_str::reshape,
+	octave_char_matrix_sq_str::permute,
+	octave_char_matrix_sq_str::resize): New functions.
+
+	* OPERATORS/op-str-str.cc, OPERATORS/op-str-s.cc,
+	OPERATORS/op-str-m.cc: Use DEFNDCHARCATOP_FN.
+
+	* data.cc (do_cat): No need to handle character arrays specially here.
+
+	* ops.h (DEFNDCHARCATOP_FN): New macro.
+	* OPERATORS/op-int.h (OCTAVE_INT_CHAR_CONCAT_FN,
+	OCTAVE_CHAR_INT_CONCAT_FN, OCTAVE_INSTALL_INT_CHAR_CONCAT_FN,
+	OCTAVE_INSTALL_CHAR_INT_CONCAT_FN): New macros.
+	* OPERATORS/op-int-concat.cc: Use them do define char/int op functions.
+	(install_int_concat_ops): Install char/int concat ops.
+
+	* ov-scalar.h (class octave_scalar): Provide extractors
+	for all int array types and char array type.
+
+2005-11-09  John W. Eaton  <jwe@octave.org>
+
+	* ov-bool-mat.h (class octave_bool_matrix): Provide extractors
+	for all int array types and char array type.
+	* ov-bool.h (class octave_bool): Likewise.
+
+	* ov-intx.h (class OCTAVE_VALUE_INT_MATRIX_T): Provide extractors
+	for all int array types and char array type.
+	(class OCTAVE_VALUE_INT_SCALAR_T): Provide extractors for all int
+	scalar and array types and char array type.
+
+	* pt-mat.cc (tm_const::class_nm): New data member.
+	(tm_const::tm_const): Initialize it.
+	(tm_const::class_name): New function.
+	(tm_row_const::tm_row_const_rep::class_nm): New data member.
+	(tm_row_const::tm_row_const_rep::tm_row_const_rep): Initialize it.
+	(tm_row_const::class_name): New function.
+	(get_concat_class): New function.
+	(tm_row_const::tm_row_const_rep::do_init_element): Use it.
+	(tm_const::init): Use it.
+
+2005-11-07  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fstrcmp): If args are not strings or cell arrays of
+	strings, return false.
+
+2005-11-01  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (oct-gperf.h): Avoid extra temporary file.
+	(distclean): Delete oct-errno.cc here.
+	From Quentin Spencer  <qspencer@ieee.org>.
+
+2005-11-01  Quentin Spencer  <qspencer@ieee.org>
+
+	* DLD-FUNCTIONS/spchol.cc: Use C++ true/false instead of
+	preprocessor defined TRUE/FALSE.
+	* Makefile.in (DISTFILES): Add mk-errno-list to the list.
+
+2005-10-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (gnuplot::set_gnuplot_exe,
+	gnuplot::do_set_gnuplot_exe): New functions.
+	(gnuplot_binary): Call gnuplot::set_gnuplot_exe here.
+
+	* DLD-FUNCTIONS/gplot.l (gnuplot::set_gnuplot_use_title_option,
+	gnuplot::do_set_gnuplot_use_title_option): New functions.
+	(gnuplot_use_title_option):
+	Call gnuplot::set_gnuplot_use_title_option here.
+
+2005-10-27  James R. Van Zandt  <jrvz@comcast.net>
+
+	* mappers.cc: Doc fix for lgamma.
+	* DLD-FUNCTIONS/gammainc.cc (Fgammainc): Doc fix.
+
+2005-10-27  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Declare mrowsA volatile.
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::tm_row_const_rep):
+	Ensure that we always have at least two dimensions here.
+	(tm_const::tm_const): Likewise.
+	(tm_const::rows, tm_const::columns): Simplify.
+	(tm_row_const::rows, tm_row_const::columns)): Simplify.
+
+2005-10-26  John W. Eaton  <jwe@octave.org>
+
+	* oct-procbuf.cc (octave_procbuf::open): Cast 0 to void * to avoid
+	new g++ warning.
+	* toplev.cc (Fsystem): Likewise.
+
+	Changes for GCC 4.1, tip from Arno J. Klaassen
+	<arno@heho.snv.jussieu.fr>:
+
+	* ov.h (do_unary_op (octave_value::unary_op, const octave_value&)):
+	Publish externally used friend function.
+	(do_unary_op (octave_value::unary_op, const octave_value&,
+	const octave_value&)): Likewise.
+
+2005-10-25  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): called with 2 args, should return args(1)
+	for compatibility.
+
+2005-10-23  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (DLD_XSRC): Add spchol.cc.
+	* sparse-xpow.cc (xpow): Change call to sparse inverse to include
+	SparseType.
+	* DLD-FUNCTIONS/colamd.c (Fsymbfact): Remove.
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): 64-bit fixes and fix
+	for permutation of upper/lower triangular matrices.
+	* DLD-FUNCTIONS/splu.cc (Fspinv): Implemtation of sparse inverse
+	function.
+	* DLD-FUNCTIONS/spchol.cc (sparse_chol): Static function for core of
+	the sparse cholesky factorization.
+	(Fspchol): New function for sparse cholesky factorization R'R.
+	(Fsplchol): New function for sparse cholesky factorization LL'.
+	(Fspcholinv): New cholesky inverse function.
+	(Fspchol2inv): New cholesky inverse function.
+	(Fsymbfact): Implementation of symbolic factorization using cholmod.
+
+2005-10-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (read_until): Special case STRING.
+	(handle_string): Restore function.
+	("'", "\""): Call handle string when matching these tokens..
+
+2005-10-20  John W. Eaton  <jwe@octave.org>
+
+	* pt-mat.cc (tm_row_const::all_real): New data member.
+	(tm_row_const::all_real_p): New function.
+	(tm_row_const::tm_row_const_rep::all_real): New data member.
+	(tm_row_const::tm_row_const_rep::all_real_p): New function.
+	(tm_row_const::tm_row_const_rep::init): Set all_real and all_cmplx
+	to true here.
+	(tm_row_const::all_cmplx): Rename from is_cmplx.
+	(tm_row_const::all_complex_p): Rename from complex_p.
+	(tm_row_const::tm_row_const_rep::all_cmplx): Rename from is_cmplx.
+	(tm_row_const::tm_row_const_rep::all_complex_p): Rename from complex_p.
+	(tm_row_const::tm_row_const_rep::init): Set all_real and all_cmplx
+	to true here.
+	(SINGLE_TYPE_CONCAT): New macro.
+	(tree_matrix::rvalue): Use it for single type cases.
+
+	* pt-mat.cc: Sprinkle with OCTAVE_QUIT.
+
+2005-10-18  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): If not embedded, call clean_up_and_exit
+	instead of return to exit function.
+
+2005-10-18  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
+
+	* DLD-FUNCTIONS/gplot.l (gnuplot::handle_title):
+	Omit class name from declaration.
+
+2005-10-17  Keith Goodman  <kwgoodman@gmail.com>
+
+	* DLD-FUNCTIONS/sort.cc: Doc string fix.
+
+2005-10-17  John W. Eaton  <jwe@octave.org>
+
+	* oct-conf.h.in (OCTAVE_CONF_F77_FLOAT_STORE_FLAG): Substitute
+	OCTAVE_CONF_F77_FLOAT_STORE_FLAG here.
+
+2005-10-14  John W. Eaton  <jwe@octave.org>
+
+	* mk-errno-list: New script.
+	* Makefile.in (oct-errno.cc): Use it.
+
+2005-10-13  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (F__gnuplot_raw__):
+	Call print_usage with correct function name.
+
+2005-10-12  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l: Major cleanup.
+	Built-in variable gnuplot_has_frames no longer necessary.
+	(gnuplot): New class to manage multiple gnuplot processes.
+	(handle_string): Delete.  It was only used for the case of
+	__gnuplot_plot__ "file", which is no longer allowed.
+
+2005-10-05  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_exist): Chekck for autoloaded functions.
+
+	* parse.y (Fautoload): New function.
+	(autoloading, autoload_map): New static variables.
+	(load_fcn_from_file, frob_function): Handle autoloading.
+	(lookup_autoload): New function.
+	(get_help_from_file): New args, symbol_found and include_file_info.
+	Change all callers.
+
+2005-10-05  David Bateman  <dbateman@free.fr>
+
+	* help.cc (try_info): format in command string for mingw.
+
+2005-09-30  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (octave_value::~octave_value): No need to set rep to zero
+	after deleting.
+
+2005-09-29  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (mk_stat_map): Store mode too.
+	(FS_ISREG, FS_ISDIR, FS_ISCHR, FS_ISBLK, FS_ISFIFO, FS_ISLNK,
+	FS_ISSOCK): New functions.
+	(Fstat): Fix docstring.
+
+2005-09-28  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (printf_value_cache::double_value): Force
+	character strings to be converted to ASCII equivalents.
+
+	* data.cc (Fcomplex): New function.
+
+	* ov-type-conv.h (OCTAVE_TYPE_CONV_BODY3): Return arg unchanged if
+	class name is same as name of conversion.
+
+	* dirfns.cc (Frmdir, Fmkdir): For compatibility, return true for
+	success and false for failure.  Return third value, msgid.
+	(Frmdir): Handle second arg for recursive behavior.
+
+2005-09-23  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (load_fcn_from_file): Don't look in path if file is
+	absolute and has .oct or .m extension.
+
+	* utils.cc (Ferrno_list): New function.
+
+	* oct-errno.h, oct-errno.cc.in: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	(oct-errno.cc): New rule.
+	($(OPT_HANDLERS)): Use $(PERL) instead of just perl.
+
+	* utils.cc: Include oct-errno.h.
+	(Ferrno): Rename from FERRNO.  Allow errno to be set.  Allow
+	lookups of errno codes by name and access to structure containing
+	all errno names and codes.
+
+2005-09-19  John W. Eaton  <jwe@octave.org>
+
+	* pt-bp.cc (tree_breakpoint::visit_index_expression):
+	Avoid dereferencing invalid pointer.
+
+2005-09-19  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (OCT_LINK_DEPS): Include UFsparse libraries.
+
+	* DLD_FUNCTIONS/__glpk__.cc (F__glpk__): Replace isinf with
+	xisinf. Allow sparse matrices as second argument.
+
+	* syscalls.cc: Typos.
+	* sysdep.cc: Typos.
+
+2005-09-16  John W. Eaton  <jwe@octave.org>
+
+	* syscalls.cc (Fwaitpid): Doc fix.  Expect WNOHANG, WUNTRACED,
+	WCONTINUED as args instad of int values.
+	Return values are now [pid, status, msg] instad of [pid, msg].
+	(WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP,
+	WIFSTOPPED, WSTOPSIG, WIFCONTINUED): New functions.
+	(symbols_of_syscalls): DEFCONST WNOHANG, WUNTRACED, and WCONTINUE.
+
+	* oct-procbuf.cc (octave_procbuf::close): Call octave_syscalls::waitpid
+	here instead of calling waitpid directly.
+	* sighandlers.cc (OCL_REP::wait): Likewise.
+
+	* sysdep.h [__MINGW32__]: Don't define waitpid here.
+
+2005-09-15  John W. Eaton  <jwe@octave.org>
+
+	* sysdep.h [__MINGW32__]: Move to definition of waitpid sysdep.h.
+
+	* sysdep.cc, sighandlers.cc: Rename all win32_ symbols to w32.
+
+	* sysdep.cc (w32_set_quiet_shutdown): New function.
+	* sysdep.h: Provide decl.
+	* sysdep.cc (MINGW_signal_cleanup): Use it.
+	* sighandlers.cc (octave_catch_interrupts): Use it.
+
+	* sysdep.h: Provide decl.
+	(MINGW_SIGNAL_CLEANUP): New macro.
+	(USE_W32_SIGINT): Move definition here.
+	* sighandlers.cc: From here.
+
+	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): Use print_usage, not usage.
+	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd, Fetree): Likewise.
+	(Fcolamd, Fsymamd) [! HAVE_COLAMD]: Return empty octave_value_list
+	object.
+
+	* sysdep.cc (sysdep_cleanup): New function.
+	Move w32 clean up code here.
+	* toplev.cc (clean_up_and_exit): From here.
+	Call sysdep_cleanup here.
+
+2005-09-15  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in (DLD_XSRC): Add ccolamd.cc
+	(OCTAVE_LIBS): Add LIBGLOB.
+	(OCT_LINK_DEPST, octave): Add AMD, COLAMD, CCOLAMD and CHOLMOD
+	libraries.
+	* default.cc (set_default_exec_path, set_default_path,
+	maybe_add_default_load_path, LOADPATH): Use SEPCHAR_STR and SEPCHAR.
+	* help.cc (display_help_text): Exclude /dev/null on mingw.
+	* oct-procbuf.cc (W32POPEN, W32PCLOSE): Macros for cygwin/mingw.
+	(octave_procbuf::open, octave_probuf::close): Use them.
+	* sighandler.cc (user_abort): New function with core of old
+	sigint_handler.
+	(sigint_handler): Simplify and specialize for w32.
+	(w32_sigint_handler): W32 version of sigint handler.
+	(octave_catch_interrupts): Initialize w32 siginit handler.
+	* sysdep.cc (MINGW_init): New function.
+	(sysdep_init): Use it.
+	* toplev.cc (clean_up_and_exit): Clean w32 signalling shutdown.
+	* DLD-FUNCTIONS/cellfun.cc (Fnum2cell): New function.
+	* DLD-FUNCTIONS/colamd.cc (Fcolamd, Fsymamd): Allow conditional build.
+	Include oct-sparse.h rather than colamd.h.
+	* DLD-FUNCTIONS/ccolamd.cc: New file with Fccolamd a Fcsymamd.
+
+2005-09-14  John W. Eaton  <jwe@octave.org>
+
+	* ov-complex.cc (octave_complex::try_narrowing_conversion):
+	Don't drop -0i.
+	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
+	Likewise.
+
+2005-09-14  Daniel  <durbano@shbano.com>
+
+	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/chol.cc,
+	DLD-FUNCTIONS/fft.cc, DLD-FUNCTIONS/fftw_wisdom.cc, utils.cc:
+	Doc string fixes.
+	From Jorge Barros de Abreu <ficmatin01@solar.com.br>.
+
+2005-09-14  David Bateman  <dbateman@free.fr>
+
+	* help.cc (Flookfor, print_lookfor, first_help_sentence):
+	New functions.
+
+2005-09-07  Bill Denney  <denney@seas.upenn.edu>
+
+	* dirfns.cc (Fglob): Doc fix.
+
+2005-09-07  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (Fstruct): Allow struct (zeros (0, N)) to create a
+	0xN struct array.
+
+2005-09-04  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/colamd.c (COLAMD_NAME, SYMAMD_NAME): New macros
+	(symetree, make_set, link, finf, etdfs, TreePostorder, coletree,
+	Fcolamd, Fsymamd, Fetree): Update for 64-bit indexing and colamd
+	versin 2.4.
+
+2005-09-01  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_out_of_date): Don't check nested functions.
+
+2005-08-31  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.cc (Octave_map::index): Don't crash if index list is empty.
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
+	Likewise.
+
+	* oct-map.h (Octave_map::ndims): New function.
+
+2005-08-30  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::permute): New function.
+
+	* ov-struct.cc (octave_struct::load_ascii,
+	octave_struct::load_binary, octave_struct::load_hdf5): Try harder
+	to read old-style files correctly.
+
+2005-08-25  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-sm-m.cc, OPERATORS/op-sm-cm.cc, OPERATORS/op-scm-m.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-m-sm.cc, OPERATORS/op-m-scm.cc,
+	OPERATORS/op-cm-sm.cc, OPERATORS/op-cm-scm.cc: Use mixed matrix/sparse
+	multiply operator rather than casting sparse to matrix.
+
+2005-07-18  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fstrcmp): New function from S�ren Hauberg
+	<soren@hauberg.org> and Tom Holroyd <tomh@kurage.nimh.nih.gov>.
+	Adapt to Octave conventions.
+
+2005-07-11  David Bateman  <dbateman@free.fr>
+
+	* ov-fc-inline.cc (Fvectorize): Allow string arguments
+
+2005-07-08  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (Fhold, Fishold): Delete.
+	(clear_before_plotting): Delete static variable.
+	Delete PKG_ADD line for hold.
+
+2005-07-07  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (pr_plus_format): Delete "static" from template decl.
+
+	* oct-stream.cc (octave_scan): Delete explicit instantiation of
+	octave_scan<double> since a specialization is provided.
+
+	* DLD-FUNCTIONS/matrix_type.cc (Fmatrix_type): Include
+	<algorithm>, for std::transform decl.  Use std qualifier for
+	transform and tolower.
+
+2005-07-05  Antoine Moreau  <antoine.moreau@univ-bpclermont.fr>
+
+	* DLD-FUNCTIONS/betainc.cc (Fbetainc): Fix doc string to match
+	function definition..
+
+2005-07-05  Mats Jansson  <mats.e.jansson@home.se>
+
+	 * file-io.cc (Fmkstemp): Check if second argument is true
+	 before marking file for deletion.
+
+2005-07-05  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op_internal):
+	Rename from char_matrix_str::do_index_op.  New arg, type.
+	ov-str-mat.h (octave_char_matrix_str::do_index_op): Define using
+	do_index_op_internal.
+	(octave_char_matrix_sq_str::do_index_op): New function.
+
+2005-07-01  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (end_error): Also handle end_try_catch case.
+
+2005-06-17  John W. Eaton  <jwe@octave.org>
+
+	* help.cc (help_from_list, help_from_symbol_table,
+	help_from_file): New arg, symbol_found.
+	(builtin_help): Use symbol_found arg to determine whether help
+	text is empty or symbol is not available.
+
+	* symtab.cc (symbol_record::print_info): Print more info.
+
+	* DLD-FUNCTIONS/dispatch.cc (Fdispatch_help): Delete.
+	(dispatch_record): Don't prepend "<>" to help text.
+	(Fdispatch): Don't setup dispatched help.
+
+	* help.cc (extract_help_from_dispatch): New function.
+	(help_from_symbol_table): Use it.
+	* defun.cc (print_usage): Use it.
+
+	* toplev.cc (octave_config_info): Include localapifcnfiledir and
+	localapioctfiledir in the list.
+
+	* symtab.h (symbol_record::alias): New arg, mark_to_clear.
+	(symbol_record::aliases_to_clear): New data member.
+	(symbol_record::push_alias_to_clear): New function.
+	* symtab.cc (symbol_record::alias): If mark_to_clear is true, push
+	this pointer on aliases_to_clear stack for s.
+	(symbol_record::clear): Also clear aliases_to_clear_stack.
+
+	* defun.cc (install_dld_function): Create full file name alias in
+	fbi_sym_tab and hide it from view.
+	Don't call protect or make_eternal on sym_rec.
+
+	* variables.cc (fcn_out_of_date): New function.
+	(symbol_out_of_date): Also check for symbol using full function
+	file name.
+
+	* symtab.h (symbol_record::visible): New data member.
+	(symbol_record::hide, symbol_record::show, symbol_record::is_visible):
+	New functions.
+
+	* symtab.h (symbol_record::maybe_delete_def): New private function.
+	* symtab.cc (symbol_record::clear, symbol_record::alias,
+	symbol_record::pop_context,
+	symbol_record::define (octave_function *, unsigned int)): Use it.
+	(symbol_table::symbol_list): Only include visible symbols in list.
+
+	* parse.y (frob_function): Hide nested function names.
+
+	* parse.y (frob_function): Create full file name alias in
+	fbi_sym_tab and hide it from view.
+	* defun.cc (install_dld_function): Likewise.
+
+2005-06-16  John W. Eaton  <jwe@octave.org>
+
+	* ov-dld-fcn.cc (octave_dld_function): Check Voct_file_dir to see
+	if function is system file, Vfcn_file_dir.
+	* defaults.cc (set_default_oct_file_dir): New function.
+	(install_defaults): Call it.
+	(Voct_file_dir): New global variable.
+	* defaults.h.in (Voct_file_dir): Provide decl.
+
+	* variables.cc (function_out_of_date_internal): Use
+	Vignore_function_time_stamp only to avoid calling stat.
+	(symbol_out_of_date): Don't check Vignore_function_time_stamp here.
+	(function_out_of_date): Rename from function_out_of_date_internal.
+
+	* defaults.cc (loadpath): Don't do anything if value is unchanged.
+	If loadpath changes, also update Vlast_prompt_time.
+
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+	* pt-mat.cc (Vwarn_string_concat): Default value now false.
+	(symbols_of_pt_mat): Change initial value here as well.
+
+	* ls-mat5.cc, mappers.cc, oct-stream.cc, pr-output.cc: Change all
+	uses of octave_is_NaN_or_NA to xisnan.
+
+2005-06-14  Keith Goodman  <kwgoodman@gmail.com>
+
+	* input.cc (get_user_input): Renamed debug commands to dbnext,
+	dbstep, and dbcont.
+	* pt.cc: Renamed dbg_next to dbnext in comment string.
+	* pt.h: Renamed dbg_next to dbnext in comment string.
+
+2005-06-14  David Bateman  <dbateman@free.fr>
+
+	* pt-arg-list.cc (F__end__): Return 1 for dimensions larger than ndim.
+
+2005-06-14  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (save_mat5_array_length): Special case for NaN, NA,
+	and Inf values.  Only check if abs value is greater than FLT_MAX.
+
+2005-06-09  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (save_mat5_element_length): 1 element strings will be
+	saved in a compressed format, so calculate the length accordingly.
+
+2005-05-30  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (read_mat5_binary_element): Don't convert to string
+	if matrix is not of type mxCHAR_CLASS.
+
+2005-05-23  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Ffopen): Don't fail with internal error message if
+	we fail to create a valid stream object.
+	(do_stream_open (const std::string&, const std::string&,
+	const std::string&, int&): Always create octave_stream object,
+	even if file pointer returne from fopen is 0.
+
+	* load-save.cc (gripe_file_open): New function.
+	(get_file_format, Fload, Fsave): Use it.
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Return
+	appropriately sized empty values for empty args.
+
+	* debug.cc (Fdbwhere, get_user_function): Look at
+	curr_caller_function, not curr_function, since function is now set
+	inside mapper, built-in (and therefore dld) functions too.
+
+2005-05-21  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc, pr-output.h (Vprint_empty_dimensions): Now extern.
+	* ov-cell.cc (octave_cell::print_raw): Conditionally print
+	dimensions of empty 2-d cell arrays.
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort, mx_sort_indexed): Return empty
+	values for empty args.
+
+	* lex.l (handle_string): If single-quote string, \ and . have no
+	special meaning.
+
+2005-05-18  John W. Eaton  <jwe@octave.org>
+
+	* pt-colon.cc (tree_colon_expression::make_range): Don't require
+	scalars values as range components.
+
+	* version.h (OCTAVE_VERSION): Now 2.9.3
+	(OCTAVE_API_VERSION): Now api-v16.
+
+	* ov-base-sparse.cc (octave_base_sparse<T>::print_raw):
+	Make spacing of output consistent with other parts of Octave.
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Chop trailing singelton
+	dimensions before generating array.
+
+2005-05-17  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (install_types): Don't call octave_stream::register_type.
+	* ov.h, ov.cc (octave_value::octave_value (const octave_stream&,
+	int): Delete constructor.
+	(octave_value::is_stream, octave_value::stream_value,
+	octave_value::stream_number): Delete functions.
+	* ov-base.h (octave_base_value::is_stream): Delete function.
+	* ov-base.h, ov-base.cc (octave_base_value::stream_value,
+	octave_base_value::stream_number): Delete functions.
+	* file-io.cc (Fisstream): Delete function.
+	* op-file.h, op-file.cc, OPERATORS/op-fil-sbm.cc,
+	OPERATORS/op-fil-scm.cc, OPERATORS/op-fil-sm.cc,
+	* OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
+	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
+	OPERATORS/op-fil-m.cc, OPERATORS/op-fil-s.cc,
+	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-rec.cc,
+	OPERATORS/op-fil-str.cc: Delete files.
+	* Makefile.in (OP_XSRC, SPARSE_OP_XSRC): Delete op-fil-*.cc from
+	the lists.
+	(OV_INCLUDES): Delete op-file.h from the list.
+	(OV_SRC): Delete op-file.cc from the list.
+	* oct-stream.cc, oct-stream.h (octave_stream_list::insert,
+	octave_stream_list::do_insert): Return stream number instead of
+	octave_value.
+
+2005-05-16  David Bateman  <dbateman@free.fr>
+
+	* ls-mat.cc (save_mat5_binary_element): Increase size of
+	compression buffer.
+	(load_mat5_binary_element): Allow ASCII encoded as UTF8,
+	and give error messages for multi-byte UTF8 and UTF16 and UTF32
+	encodings.
+
+	* ls-hdf5.h (H5T_NATIVE_IDX): New macro defining native indexing
+	type for HDF5 files
+
+	* ls-hdf5.cc (save_hdf5_empty, load_hdf5_empty): Use
+	H5T_NATIVE_IDX to allow 64-bit indexing.
+	* ov-bool-sparse.cc (save_hdf5, load_hdf5): ditto.
+	* ov-re-sparse.cc (save_hdf5, load_hdf5): ditto.
+	* ov-cx-sparse.cc (save_hdf5, load_hdf5): ditto.
+	* ov-cell.cc (save_hdf5, load_hdf5): ditto.
+
+	* load-save.cc (parse_save_options): Remove -nozip option.
+	(Fsave): If user defines file format, ignore completely the default
+	file format options.
+
+2005-05-12  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (oct-gperf.h): Try harder to cause Make to exit here
+	if gperf is missing or fails to create a valid file.
+
+2005-05-10  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (<MATRIX_START>{SNLCMT}*\]{S}*): If whitespace was gobbled,
+	unput SPC before returning the token.
+	(<MATRIX_START>{SNLCMT}*\}{S}*): Likewise.
+
+2005-05-09  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (except_command): Make catch clause optional in try
+	statements.
+	* pt-except.cc (tree_try_catch_command::eval):
+	Always buffer error messages.
+
+2005-05-06  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::save_ascii,
+	octave_struct::save_binary, octave_sruct::save_hdf5):
+	Always save cell array.
+	(octave_struct::load_ascii, octave_struct::load_binary,
+	octave_sruct::load_hdf5): Try to read old-style files correctly.
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Use chol2inv to compute inverse
+	from Cholesky factors.
+	(cholinv): Delete.
+
+	* DLD-FUNCTIONS/chol.cc (Fcholinv): New function.
+	(Fchol2inv): New function.
+
+2005-05-05  Keith Goodman  <kwgoodman@gmail.com>
+
+	* ov-usr-fcn.cc	(Fnargout, Fnargin): Update doc strings.
+	* help.cc (keywords): Update doc strings for varargin, varargout.
+
+2005-05-05  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (BEGIN_S_CONVERSION): Correctly handle width
+	specifiers.
+
+2005-05-04  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_mat5_binary_element): Implement reading of N-d
+	structure arrays.
+
+	* ov-struct.cc (octave_struct::load_hdf5,
+	octave_struct::load_binary, octave_struct::load_ascii): Assign
+	cell_value to map slot, not octave_value containing the cell.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* error.cc (Flasterr): Don't access argv if an error occurs when
+	creating it.
+
+	* mkgendoc (main): Print header message.
+
+2005-05-02  Bill Denney  <denney@seas.upenn.edu>
+
+	* data.cc, defaults.cc, DLD-FUNCTIONS/qz.cc, file-io.cc,
+	sighandlers.cc, syscalls.cc: Docstring fixes.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (octave_print_internal (std::ostream&,
+	const Range&, bool, int)): Don't print newline at end of broken
+	rows (that is handled by pr_col_num_header).
+	From Keith Goodman <kwgoodman@gmail.com>.
+
+	* Makefile.in (octave$(EXEEXT)): List $(UMFPACK_LIBS) ahead of
+	$(BLAS_LIBS).
+	(OCTAVE_LIBS): Include $(GLPK_LIBS) in the list if dynamic linking
+	is not enabled.
+	From Dmitri A. Sergatskov <dasergatskov@gmail.com>.
+
+2005-05-02  John W. Eaton  <jwe@octave.org>
+
+	* oct-map.h, oct-map.cc (Octave_map::seek, Octave_map::contents):
+	New non-const versions.
+	(Octave_map::assign (const octave_value_list&,
+	const std::string&, const Cell&)): Allow both tmp RHS and LHS to
+	be resized.  For clarity, always resize to new_dims.
+
+2005-05-02  David Bateman  <dbateman@free.fr>
+
+	* ov-re-sparse.cc, ov-cx-sparse.cc (load_binary): read save_type into
+	one byte variable.
+
+2005-04-29  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (DO_LITERAL_CONVERSION): Cast fmt[i] to unsigned
+	char for comparison.
+
+	* c-file-ptr-stream.h (c_file_ptr_stream): New template class,
+	converted from i_c_file_ptr_stream.
+	(i_c_file_ptr_stream, o_c_file_ptr_stream, io_c_file_ptr_stream):
+	Now typedefs.
+	(i_c_zfile_ptr_stream, o_c_zfile_ptr_stream, io_c_zfile_ptr_stream):
+	New typedefs.
+	* c-file-ptr-stream.h, c-file-ptr-stream.cc (c_zfile_ptr_buf):
+	New class.
+
+	* oct-stdstrm.h (class octave_tstdiostream): New template class,
+	converted from octave_stdiostream.
+	(octave_stdiostream): Now a typedef.
+	[HAVE_ZLIB] (octave_zstdiostream): New a typedef.
+	* oct-stdstrm.cc: Delete.
+	* Makefile.in (DIST_SRC): Remove it from the list.
+
+2005-04-29  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: Add matrix_type.cc and spkron.cc to DLD_XSRC.
+
+	* ls.mat.cc (read_mat5_binary_element): Allow for endian change
+	for compressed data elements.
+
+	* ov-base-sparse.cc (assign): Invalidate matrix type.
+
+	* ov-base-sparse.cc (SparseType sparse_type (void),
+	SparseType sparse_type (const SparseType&):
+	Functions to read and set sparse matrix type.
+
+	* ov-bool-sparse.cc (load_binary): Remove third argument.
+	(load_hdf5): Cast hsize_t comparisions with int to avoid warning.
+	* ov-cx-sparse.cc (load_hdf5): Ditto.
+	* ov-re-sparse.cc (load_hdf5): Ditto.
+
+	* ov-re-sparse.cc (convert_to_str_internal): Add third argument
+	for string type.
+	* ov-re-sparse.h (convert_to_str_internal): Adject declaration.
+
+	* sparse-xdiv.cc (xdiv, xleftdiv): Pass SparseType as third
+	argument, use it and return it to allow caching of type.
+	* sparse-xdiv.h (xdiv, xleftdiv): Change declarations for third
+	argument of type SparseType.
+
+	* DLD-FUNCTIONS/luinc.cc (Fluinc): Use type_name and not
+	class_name to test for real/complex sparse matrices.
+	Set matrix type.
+
+	* DLD-FUNCTIONS/splu.cc (Fsplu): Set matrix type.
+
+	* OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
+	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
+	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
+	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc (div, ldiv):
+	Pass and recache SparseType wirh xdiv/xleftdiv.
+
+2005-04-29  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (maybe_warn_interface_change): Delete function.
+	(fopen_mode_to_ios_mode): Don't call it.
+
+2005-04-27  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::subsref):
+	Check whether function referenced by handle is out of date.
+	(Ffunctions): Tag nameless user function as "command-line".
+
+	* variables.cc (symbol_out_of_date (octave_fucntion *)): New function.
+	(function_out_of_date): New function.
+	* parse.y (load_fcn_from_file (const std::string&, bool)):
+	New function.
+
+	* DLD-FUNCTIONS/gplot.l (gnuplot_init): New function to handle
+	initialization.  If builtin variables have already been installed,
+	simply update our cached values.
+	(F__gnuplot_init__): Call gnuplot_init to do all the real work.
+	(Fclearplot, Fcloseplot, Fhold, Fishold, Fpurge_tmp_files,
+	F__gnuplot_raw__, F__gnuplot_set__, F__gnuplot_plot__,
+	F__gnuplot_splot__, F__gnuplot_replot__, Fgplot, Fgsplot, Fgraw,
+	Fgset, Fgshow): Call gnuplot_init before doing anything.
+
+	* parse.y: (safe_fclose): Delete comment list to avoid memory leak.
+	(parse_and_execute (FILE *)): Also save and restore global_command.
+
+2005-04-26  John W. Eaton  <jwe@octave.org>
+
+	* mkbuiltins (VAR_FILES): Expect $(VAR_FILES) to have .df suffix.
+
+	* Makefile.in (clean): Also remove $(DLD_PICOBJ).
+	Use mk-oct-links --delete to remove links to .oct files.
+	Remove $(DOC_FILES) not $(DEF_FILES) and $(VAR_FILES).
+
+	* mk-oct-links (mk-oct-links): Handle --delete option.
+	Rename -p option to be --print.  Skip nonexistent .df files.
+
+2005-04-25  John W. Eaton  <jwe@octave.org>
+
+	* oct-hist.cc (default_history_file, default_history_size): Now static.
+	* oct-hist.h: Delete decls.
+
+	* oct-hist.cc (default_history_timestamp_format,
+	default_history_timestamp_format): New functions.
+	(Vdefault_history_timestamp_format): New variable.
+	(symbols_of_oct_hist): DEFVAR it.
+	(octave_history_write_timestamp): New function.
+	* oct-hist.h (octave_history_write_timestamp): Provide decl.
+	* toplev.cc (): call octave_history_write_timestamp here.
+	* octave.cc (maximum_braindamage):
+	Bind history_timestamp_format_string here.
+
+2005-04-22  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.9.2.
+	(OCTAVE_API_VERSION): Now api-v15.
+
+	* pager.cc (default_pager): Also append -X.
+
+	* DLD-FUNCTIONS/dispatch.cc (Fdispatch): Dispatch help on "string"
+	and "sq_string" types.
+	(dispatch_record): Add extra space to force new paragraph after
+	each dispatched function name if we are formatting with Texinfo.
+	Force noindent of preceding "Overloaded function:" tag.
+
+2005-04-21  John W Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_mat5_binary_element): Only read sparse matrix
+	values if sizeof (int) == sizeof (octave_idx_type).
+
+	* DLD-FUNCTIONS/colamd.cc: These functions only work if
+	sizeof (int) == sizeof (octave_idx_type).
+
+	* Makefile.in (parse.cc): Expect 14 shift/reduce conflicts.
+
+	* parse.y (USING TITLE WITH AXES COLON OPEN_BRACE CLEAR):
+	Delete unused tokens.
+
+	* DLD-FUNCTIONS/__qp__.cc (qp): Use octave_idx_type where needed.
+
+	* DLD-FUNCTIONS/__qp__.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2005-04-20  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (IDENT): Allow $ in identifiers.
+	* utils.cc (valid_identifier): Likewise.
+
+2005-04-19  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (Fsystem): Move enum exec_type declaration to file
+	scope and rename system_exec_type.  Change all uses.
+
+2005-04-14  David Bateman  <dbateman@free.fr>
+
+	* load-save.cc (Vdefault_save_format, Voctave_core_file_format):
+	Delete variables.
+	(Vdefault_save_options, Voctave_core_file_options): New variables.
+	(get_save_format): Delete function.
+	(parse_save_options (const string_vector&, ...),
+	parse_save_options (const std::string&, ...)): New functions.
+	(dump_octave_core): Allow save_as_floats to be used.
+	(dump_octave_core): Parse save options.
+	(Fsave): Split parsing of options, and default formats.
+	(default_save_format): Delete function and DEFVAR.
+	(default_save_options): New function.  DEFVAR it.
+	(octave_core_file_format): Delete function and DEFVAR.
+	(octave_core_file_options): New function.  DEFVAR it.
+
+	* octave.cc (default_save_format): Delete binding
+	(default_save_options): New bindings
+
+	* Makefile.in: Add luinc.cc to DLD_XSRC.
+	* DLD-FUNCTIONS/luinc.cc: New file for incomplete LU factorization.
+
+	* ov-bool-sparse.h (index_vector): New function.
+	* ov-re-sparse.cc (index_vector): Ditto.
+	* ov-re-sparse.h (index_vector): Definition.
+
+	* ov-mapper.cc (any_element_less_than, any_element_greater_than):
+	New versions for SparseMatrix
+	(SPARSE_MAPPER_LOOP_2, SPARSE_MAPPER_LOOP_1, SPARSE_MAPPER_LOOP):
+	New macros.
+	(octave_mapper::apply): Add special cases for sparse arguments to
+	the mapper functions
+
+	* ov-re-sparse.cc (streamoff_array_value): Use octave_idx_type.
+	(convert_to_str_internal): New function.
+	* ov-re-sparse.h (convert_to_str_internal): Definition.
+
+	* DLD-FUNCTIONS/sparse.cc (Fsparse): More care for nargin=2 case.
+
+	* DLD-FUNCTIONS/splu.cc (Fsplu): Use octave_idx_type.
+
+2005-04-14  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fchar): If arg is a dq string, return a dq string.
+
+	* pt-mat.cc (Vwarn_string_concat): New static variable.
+	(symbols_of_pt_mat): DEFVAR it.
+	(warn_string_concat): New function.
+	(maybe_warn_string_concat): New function.
+	(tree_matrix::rvalue): If all args are single quoted strings,
+	create a single quoted string object.  If all args are strings
+	(any type), create a double quoted string object.  If a mixture of
+	string types, maybe warn.
+	(class tm_row_const, class tm_row_const_rep, class tm_const):
+	Note whether all values are double or single quoted strings.
+
+	* ov.h (octave_value::is_dq_string): New function.
+
+2005-04-13  John W. Eaton  <jwe@octave.org>
+
+	* strfns.cc (Fchar): Create sq_string objects here.
+
+2005-04-12  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (Ffprintf, Fprintf, Fsprintf):
+	Pass octave_value to octave_stream::printf for FMT.
+	(Fscanf, Fsscanf): Likewise, for octave_stream::scanf and
+	octave_stream::oscanf.
+
+	* oct-stream.cc, oct-stream.h (octave_stream::printf,
+	octave_stream::scanf, octave_stream::oscanf): New versions that
+	accept an octave_value for FMT.
+	(octave_stream::puts): New version that accepts octave_value for
+	value to print.
+	(octave_base_stream::do_scanf): If all_char_conv, force
+	conversion to string to avoid warning.
+
+	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_sq_str): New class.
+	(octave_char_matrix_dq_str): New typedef.
+
+	* ov.h, ov.cc: All string constructors now take type argument.
+
+	* ov.cc (install_types): Register octave_char_matrix_sq_str.
+
+	* ov.h (octave_value::convert_to_str): New arg, type.
+	(octave_value::convert_to_str_internal): Likewise.
+	Change all derived classes.
+
+	* ov.h (octave_value::is_sq_string): New predicate.
+
+	* octave.gperf (__FILE__): Now a DQ_STRING.
+
+	* ls-mat4.cc (read_mat_binary_data): Force sq strings here.
+	* ls-mat5.cc (read_mat5_binary_element): And here.
+
+	* lex.l (<COMMAND_START>[\;\,]): Return SQ_STRING, not STRING.
+	(<COMMAND_START>[^#% \t\r\n\;\,\"\'][^ \t\r\n\;\,]*{S}*): Likewise.
+	(handle_string): Type of string to return depends on delimeter.
+
+	* parse.y (DQ_STRING, SQ_STRING): New token types.
+	(STRING): Delete token type.
+	(string): New non-terminal.
+	(constant): Recognize string here instead of STRING.
+	(word_list): Likewise.
+	(opt_sep): Handle DQ_STRING and SQ_STRING.
+
+	* OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
+	OPERATORS/op-str-str.cc: Define operators for both sq and dq
+	strings.
+
+2005-04-08  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (clean): Use exact filenames instead of *.xxx.
+	Also remove PKG_ADD.
+	(DISTFILES): Add gplot.cc to the list.
+	(maintainer-clean): Remove gplot.cc here.
+
+	* Initial merge of 64-bit changes from Clinton Chee:
+
+	2005-04-07  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.h, ls-oct-ascii.cc (extract_keyword): Now template
+	functions defined in the header file.
+
+	* ls-mat5.cc, ov-base-sparse.h, ov-base.h, ov-bool-sparse.cc
+	ov-cx-sparse.cc, ov-re-sparse.cc, ov.cc, pt-loop.cc,
+	sparse-xdiv.cc, sparse-xpow.cc, DLD-FUNCTIONS/sparse.cc,
+	DLD-FUNCTIONS/spdet.cc:
+	Use octave_idx_type instead of int where needed.
+
+	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
+
+	* Cell.cc, Cell.h, data.cc, defaults.cc, dirfns.cc, file-io.cc,
+	gripes.cc, gripes.h, ls-mat-ascii.cc, ls-mat4.cc, ls-oct-ascii.cc,
+	oct-map.cc, oct-map.h, oct-obj.cc, oct-obj.h, oct-stream.cc,
+	oct-stream.h, octave.cc, ops.h, ov-base-mat.cc, ov-base.h,
+	ov-bool-mat.cc, ov-cell.cc, ov-cs-list.cc, ov-cx-mat.cc,
+	ov-intx.h, ov-list.cc, ov-mapper.cc, ov-range.cc, ov-range.h,
+	ov-re-mat.cc, ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.cc,
+	ov.h, pr-output.cc, pt-arg-list.cc, pt-cell.cc, pt-loop.cc,
+	pt-mat.cc, pt-select.cc, symtab.h, utils.cc, utils.h, xdiv.cc,
+	xpow.cc:
+	Use octave_idx_type instead of int where needed.
+
+	2005-04-01  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Add USE_64_BIT_IDX_T to the list.
+	* oct-conf.h.in (OCTAVE_CONF_USE_64_BIT_IDX_T): Substitute here.
+
+	2005-03-31  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/sort.cc: Don't use unsigned int for index into
+	dim_vector, or cast dim to unsigned int.
+	(Fsort): No need to cast arg before asking for dims.
+
+	* DLD-FUNCTIONS/gcd.cc (Fgcd): Use OCTAVE_LOCAL_BUFFER to allocate
+	local array of NDArray objects.
+
+	2005-03-31  Clinton Chee  <chee@parallel.hpc.unsw.edu.au>
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/chol.cc, DLD-FUNCTIONS/colloc.cc,
+	DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
+	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/det.cc,
+	DLD-FUNCTIONS/eig.cc, DLD-FUNCTIONS/expm.cc, DLD-FUNCTIONS/fft.cc,
+	DLD-FUNCTIONS/fft2.cc, DLD-FUNCTIONS/fftn.cc,
+	DLD-FUNCTIONS/fftw_wisdom.cc, DLD-FUNCTIONS/filter.cc,
+	DLD-FUNCTIONS/find.cc, DLD-FUNCTIONS/fsolve.cc,
+	DLD-FUNCTIONS/gcd.cc, DLD-FUNCTIONS/hess.cc, DLD-FUNCTIONS/inv.cc,
+	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/lu.cc,
+	DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/quad.cc,
+	DLD-FUNCTIONS/qz.cc, DLD-FUNCTIONS/rand.cc,
+	DLD-FUNCTIONS/schur.cc, DLD-FUNCTIONS/sort.cc,
+	DLD-FUNCTIONS/sqrtm.cc, DLD-FUNCTIONS/svd.cc,
+	DLD-FUNCTIONS/syl.cc:
+	Use octave_idx_type instead of int where needed.
+
+2005-04-06  David Bateman  <dbateman@free.fr>
+
+	* Makefile.in: Link to UMFPACK_LIBS. Add zfstream.{cc,h} to build and
+	dist files.
+
+	* zfstream.cc: New file for C++ binding for fstream like class for
+	zlib.
+
+	* zfstream.h: Definition for fstream like C++ bindings to zlib.
+
+	* load-save.cc (static bool check_gzip_magic (const std::string&)):
+	New function to look for GZIP magic
+	(static load_save_format get_file_format (const istream &file)): New
+	function split from old get_file_format but passed istream to allow
+	use with zlib istream.
+	(static load_save_format get_file_format (const std::string&,
+	const std::string&, bool)): Modify the test uncompressed file first,
+	then compressed version
+	(Fload) Allow -v6, -6, -v7 and -7 options. Split load code to allow
+	use of zlib.
+	(Fsave) Allow -zip, -z, -v6, -6, -v7 and -7 options. Split save code
+	to allow use of zlib.
+
+	* load-save.h: add LS_MAT7_BINARY to load_save_format enum
+
+	* ls-mat5.cc (read_mat5_binary_element): Test for miCOMPRESSED flag for
+	matlab v7 files, and decompress data in memory. Allow reading of matlab
+	logical variables either in mxDOUBLE_CLASS or mxUINT8_CLASS.
+	(int save_mat5_array_length(const double*, ...): New function to
+	calculate number of bytes used to save NDArray.
+	(int save_mat5_array_length(const Complex*, ...): New function to
+	calculate number of bytes used to save ComplexNDArray.
+	(int save_mat5_element_length): New function to find number of bytes
+	needed to save data element.
+	(save_mat5_binary_element): New input arguments, mat7_format and
+	compressing, that define if we are in a matlab v7 format and where we
+	are currently compressing the data element. If mat7_format use
+	miCOMPRESSED flag for matlab v7 files, and compress data in memory.
+	Add capability to save logical variables as mxUINT8_CLASS. If v7
+	format maximum variable length is 63 characters and not 31. Use the
+	save_mat5_element_length function to pre-calculate the number of bytes
+	taken by a variable rather than use a negative seek to correct after
+	writing (zlib can't do negative seeking)
+
+	* ls-mat5.h: Add to miCOMPRESSED, miUTF8, miUTF16 and miUTF32 flags to
+	the enum mat5_data_type.
+	(save_mat5_binary_element): Add args mat7_format and compressing to the
+	definition.
+
+2005-04-06  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-scm-scm.cc: Delete #pragma implementation.
+
+2005-04-05  John W. Eaton  <jwe@octave.org>
+
+	* ov-ch-mat.h (octave_char_matrix::index_vector): New function.
+
+	* oct-stream.cc (BEGIN_C_CONVERSION): Clear stream state if
+	we hit EOF after we read something.
+
+	* pt-assign.cc (tree_multi_assignment::rvalue):
+	Allow assignments of the form [a,b,c] = x{:}.
+
+2005-03-30  John W. Eaton  <jwe@octave.org>
+
+	* mappers.cc (install_mapper_functions): Use std:: as needed.
+	* defun-int.h (DEFUN_MAPPER_INTERNAL): Don't use X_CAST on
+	function pointer args.
+
+	* ov-complex.cc, ov-cx-mat.cc, xpow.cc, ls-mat5.cc: Use std:: for
+	Complex functions instead of relying on wrappers from oct-cmplx.h.
+
+	* oct-stream.cc (octave_scan): Initialize c1 to EOF.
+
+2005-03-29  John W. Eaton  <jwe@octave.org>
+
+	* utils.cc (get_dimensions): Produce error instead of warning if
+	given a matrix argument.
+
+	* load-save.cc (Fload, Fsave): Also accept -V4 option.
+
+	* ls-hdf5.h (hdf5_fstreambase::hdf5_fstreambase,
+	hdf5_fstreambase::open): Use & instead of == to test whether mode
+	is std::ios::in or std::ios::out.
+	(hd5_ifstream::istream, hd5_ifstream::open, hd5_ofstream::istream,
+	hd5_ofstream::open): Default mode now includes binary flag.
+
+2005-03-28  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_stream::write): For compatibility, Write
+	zeros instead of seeking if SKIP is nonzero.
+
+	* DLD-FUNCTIONS/gplot.l (Fgraw): Recommend __gnuplot_raw__, not
+	__gnuplot__raw__.
+	(Fgshow): Recommend __gnuplot_show__, not __gnuplot__show__.
+	Don't add "mark_as_rawcommand ("replot")" to PKG_ADD file.
+
+2005-03-26  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (gnu_readline): Don't wrap call to command_editor::readline
+	with {BEGIN,END}_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
+
+2005-03-25  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (main_loop): Don't use octave_set_current_context here.
+
+	* pt-loop.cc (simple_for_loop::eval): In for i = matrix ... end,
+	skip loop if matrix is empty.  Likewise for cell arrays.
+
+2005-03-24  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Texinfoize doc string.
+
+	* Makefile.in (install-oct): Always create $(octfiledir) and
+	install PKG_ADD file there.
+
+	* octave.cc (octave_main): Fix logic in test for exit after
+	evaluating --eval option code.
+
+2005-03-23  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Require 9 arguments.
+	Print error messages and return early if value extractions fail.
+	Default for message level now 0.
+	Rename local variable error to be errnum.
+	(glpk_fault_hook): Call message instead of writing to octave_stderr.
+	(glpk_fault_hook): Call error instead of writing to octave_stderr.
+	(glpk): Likewise.
+	Declare mark static.  Delete declaration of fperr.
+	(glpk): Delete unnecessary casts.
+
+	* DLD-FUNCTIONS/__glpk__.cc (OCTAVE_GLPK_GET_REAL_PARAM,
+	OCTAVE_GLPK_GET_INT_PARAM): New macros.
+	(F__glpk__): Use them.
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__): Accept lpsolver and
+	save_pb in param arg instead of as separate args.
+	Arg list now matches new interface for glpk.m.
+	Don't return lambda and redcosts fields in extra if isMIP.
+
+	* toplev.cc (do_octave_atexit): Call reset_error_handler before
+	each call to feval.
+
+2005-03-22  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in: Add special rule for __glpk__.oct.
+
+	* toplev.cc (octave_config_info): Add GLPK_LIBS to the list.
+	* oct-conf.h.in (OCTAVE_CONF_GLPK_LIBS): Substitute here.
+
+	* DLD-FUNCTIONS/__glpk__.cc (F__glpk__, glpk):
+	Adapt to Octave coding style.
+	(glpk): Move decls closer to first use.
+	(F__glpk__): Eliminate unnecessary loop seting inf values.
+	Ensure that isMIP is initialized.
+	Declare sense, nz, and isMIP volatile to avoid GCC warnings that
+	these variables might be might be clobbered by `longjmp' or `vfork'
+
+	* DLD-FUNCTIONS/__glpk__.cc: New file.
+
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2005-03-21  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (maximum_braindamage):
+	Don't set warn_matlab_incompatible to true.
+
+2005-03-17  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (class bracket_brace_paren_nesting_level): Use static
+	const int members instead of anonymous enum.
+
+2005-03-16  John W. Eaton  <jwe@octave.org>
+
+	* ov-struct.cc (octave_struct::save_ascii): Don't convert Cell
+	object to cs-list.
+	(octave_struct::save_binary): Likewise
+	(octave_struct::save_hdf5): Likewise.
+
+	* DLD-FUNCTIONS/gplot.l (Fset, Fshow): Delete.
+	(F__gnuplot_plot__): Rename from Fgplot.
+	(F__gnuplot_splot__): Rename from Fgsplot.
+	(F__gnuplot_raw__): Rename from Fgraw.
+	(F__gnuplot_set__): Rename from Fgset.
+	(F__gnuplot_show__): Rename from Fgshow.
+	(F__gnuplot_replot__): Rename from Freplot.
+	(WARN_DEPRECATED, DEPRECATED_BODY): New macros.
+	(Fgplot, Fgsplot, Fgraw, Fgset, Fgshow): New functions.
+
+2005-03-15  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (<COMMAND_START>{NL}): Reset lexer_flags.doing_rawcommand
+	state here.
+
+	* version.h (OCTAVE_API_VERSION): Now 2.9.0.
+	(OCTAVE_API_VERSION): Now api-v14.
+
+	* Makefile.in (INCLUDES): Delete sparse-ops.h from the list.
+
+	* cellfun.cc: New function from Octave-forge.  Adapt to Octave
+	coding standards.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2005-03-14  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/dispatch.cc (Fbuiltin):	Avoid crash if symbol
+	lookup fails.
+
+2005-03-10  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (Foctave_config_info): Print error instead of crashing
+	if struct does not contain field we are looking for.
+
+2005-03-09  John W. Eaton  <jwe@octave.org>
+
+	* load-save.cc (Fload, Fsave): Accept -text as an alias for -ascii.
+	Issue warning for future change in meaning of -ascii.
+
+	* Makefile.in (bin-dist): Delete target.
+	(BINDISTFILES, BINDISTLIBS): Delete variables.
+
+2005-03-04  John W. Eaton  <jwe@octave.org>
+
+	* octave.cc (octave_main): Concatenate all --eval arguments.
+
+2005-03-03  John W. Eaton  <jwe@octave.org>
+
+	* input.cc (input_from_command_line_file): Move definition here.
+	* parse.y: From here.
+	* input.h (input_from_command_line_file): Move decl here.
+	* parse.h: From here.
+
+	* input.cc (octave_gets):
+	Don't save history if input is from command line file.
+
+	* parse.y (parse_and_execute, parse_fcn_file, eval_string):
+	Don't alter value of input_from_command_line_file here.
+	(input_from_command_line_file): Default value is false.
+	(eval_string): Turn off line editing here.
+
+	* toplev.cc, toplev.h (main_loop): Delete fun_to_call arg and all uses.
+
+	* octave.cc (fun_to_call): Delete static variable.
+	(persist, code_to_eval): New static variables.
+	(long_opts): Delete --funcall, add --eval and --persist.
+	(usage_string, verbose_usage, octave_main): Likewise.
+	(FUNCALL_OPTION): Delete.
+	(EVAL_OPTION, PERSIST_OPTION): New macros.
+	(maximum_braindamage): Set persist to true.
+	(execute_eval_option_code): New function.
+	(restore_program_name): New function.
+	(execute_command_line_file): New function.
+	(octave_main): Call execute_eval_option code and
+	execute_command_line file.  If persist, go interactive even after
+	evaluating --eval code and/or command-line file.
+
+	* ov-bool-sparse.h, ov-bool-sparse.cc
+	(octave_sparse_bool_matrix::sparse_matrix_value,
+	octave_sparse_bool_matrix::sparse_complex_matrix_value):
+	Accept bool arg.
+
+	* parse.y (looks_like_copyright): Check first 9 characters, not 14.
+
+2005-03-02  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_scan (std::istream&, const
+	scanf_format_elt&, double*)): New specialization to handle Inf,
+	NaN, and NA.
+
+	* parse.y (looks_like_copyright):
+	Rename from looks_like_octave_copyright.  Change all uses.
+	Simply match "Copyright".
+
+2005-03-01  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/odessa.cc: Delete.
+	* Makefile.in (DLD_XSRC): Remove it from the list.
+	(OPT_HANDLERS): Remove ODESSA-opts.cc from the list.
+
+2005-02-28  John W. Eaton  <jwe@octave.org>
+
+	* toplev.cc (octave_config_info): Remove LIBGLOB and GLOB_INCFLAGS
+	from the list.
+	* oct-conf.h.in (OCTAVE_CONF_LIBGLOB, OCTAVE_CONF_GLOB_INCFLAGS):
+	Delete.
+	* Makefile.in (OCTAVE_LIBS): Remove $(LIBGLOB) from the list.
+
+2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	Sparse merge.
+
+	2005-02-25  John W. Eaton  <jwe@octave.org>
+
+	* DLD-SRC/rand.cc (Frand): Accept "state" as an alias for "seed".
+
+	* DLD-SRC/dispatch.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+	2005-02-13  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline.h, DLD-FUNCTIONS/spparms.cc, DLD-FUNCTIONS/gcd.cc:
+	Remove additional licensing clause, with authors permission
+
+	* ov-base-sparse.h: New constructor to cache SparseType, not yet
+	used
+	* ov-re-sparse.h: likewise
+	* ov-cx-sparse.h: likewise
+	* ov.h: Likewise
+
+	* sparse-xdiv.cc: Remove spparms umfpack flag
+
+	* DLD-FUNCTIONS/spparms.cc: Warning that umfpack flag is ignored.
+
+	2005-01-16  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (read_mat5_integer_data): Change "T &m" to "T *m" and
+	instantiate with values like octave_int8 rather than int8NDArray.
+	Modify function to fit
+	(read_mat5_binary_element): Use new form of read_mat_integer_data
+	to read data directly into sparse matrix
+	(write_mat5_integer_data): Change "const T &m" to "T *m", etc. New
+	instantiation with int.
+	(save_mat5_binary_element): Modify to save sparse data
+
+	2005-01-15  David Bateman  <dbateman@free.fr>
+
+	* data.cc (do_cat): Use first non-empty matrix as base for
+	concatenation.
+	* pt-mat.cc (tree_matrix::rvalue): ditto.
+
+	2005-01-14  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (do_cat_op): When checking for empty args, use
+	all_zero_dims, not numel.
+	* ov.h (octave_value::all_zero_dims): New function.
+
+	* ov-bool-sparse.cc (try_narrowing_conversion): Convert to
+	bool_matrix, not matrix.
+
+	2005-01-13  David Bateman  <dbateman@free.fr>
+
+	* data.cc (make_diag): Use numel not capacity to remove ambiguity.
+	* ov.h (octave_value::capacity): New virtual funtion.
+	* ov-base.h (octave_base_value::capacity): New function calls numel.
+	* data.cc (Freshape): Use arg.numel() rather than arg.dims().numel()
+	since sparse numel now consistent.
+	* symtab.h (symbol_record::symbol_def::capacity,
+	symbol_record::capacity): New methods.
+	* symtab.cc (symbol_record::print_symbol_info_line,
+	symbol_table::parse_whos_line_format, symbol_table::maybe_list):
+	used capacity() and not numel() to properly assess size of
+	sparse objects.
+	* ov-base-sparse.h (octave_base_sparse::capacity): New function,
+	(octave_base_sparse::numel): Delete.
+	* ov-re-sparse.cc (octave_sparse_matrix::streamoff_array_value):
+	Only fill from non-zero elements of sparse array.
+	* DLD-FUNCTIONS/splu.cc (Fsplu): Change use of nelem to numel.
+	* ov.cc (do_cat_op): Early return for concatenation with empty
+	objects.
+
+	2005-01-12  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Make it work for character strings.
+
+	2005-01-11  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-double-conv.cc: New conversions for sparse_matrix
+	and sparse_bool_matrix to matrix.
+
+	2005-01-11  David Bateman  <dbateman@free.fr>
+
+	* ov-base-sparse.h (octave_base_sparse::any,
+	octave_base_sparse::all): Use new constructors, etc as pointed out
+	by JWE.
+
+	2005-01-10  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/sparse.cc (MINMAX_BODY, Fspatan2, make_spdiag):
+	Write retval(0) = result instead of retval(0) = octave_value (result).
+	* DLD-FUNCTIONS/splu.cc (Fsplu): Likewise.
+
+	2005-01-08  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (read_mat5_integer_data): Instantiate for Array<int>
+	(read_mat5_binary_element): Add code to read sparse matrices
+	saved in matlab v5 format
+
+	2005-01-07  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
+	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-m-scm.cc, OPERATORS/op-m-sm.cc,
+	OPERATORS/op-sbm-b.cc, OPERATORS/op-sbm-bm.cc,
+	OPERATORS/op-sbm-sbm.cc, OPERATORS/op-scm-cm.cc,
+	OPERATORS/op-scm-cs.cc, OPERATORS/op-scm-m.cc,
+	OPERATORS/op-scm-s.cc, OPERATORS/op-scm-scm.cc,
+	OPERATORS/op-scm-sm.cc, OPERATORS/op-sm-cm.cc,
+	OPERATORS/op-sm-cs.cc, OPERATORS/op-sm-m.cc,
+	OPERATORS/op-sm-s.cc, OPERATORS/op-sm-scm.cc,
+	OPERATORS/op-sm-sm.cc, OPERATORS/op-s-scm.cc,
+	OPERATORS/op-s-sm.cc: New octave_value constructors allow
+	macros from ops.h to be used rather than sparse-ops.h. Remove
+	other explicit uses of maybe_mutate.
+
+	* sparse-ops.h: delete file.
+
+	* colamd.cc (Fcolamd, Fsymamd, Fetree): Remove no longer needed
+	use of get_rep() and use the sparse matrix conversion functions
+	directly.
+
+	* data.cc (Freshape): Use arg.dims().numel() rather than
+	arg.numel() due to definition of numel for sparse matrices.
+
+	* sparse.cc (Ffull, Fspfind, SPARSE_DIM_ARG_BODY, MINMAX_BODY,
+	Fspatan2, make_spdiag): Convert to use new octave_value sparse
+	constructors, sparse matrix conversion functions and remove
+	maybe_mutate calls.
+	(Fspreshape): Delete
+
+	* splu.cc (Fsplu): Remove remaining explicit octave_value
+	construction.
+
+	* ov-base-sparse.h (do_index_op, resize, reshape, permute, squeeze):
+	Move these methods from the derived classes.
+	* ov-base-spase.cc (do_index_op): Move this method from the derived
+	classes.
+	* ov-bool-sparse.h (do_index_op, resize, reshape, permute, squeeze):
+	delete.
+	* ov-re-spase.cc (do_index_op): delete.
+	* ov-cx-sparse.h (do_index_op, resize, reshape, permute, squeeze):
+	delete.
+	* ov-cx-spase.cc (do_index_op): delete.
+	* ov-bool-spase.cc (do_index_op): delete.
+	* ov-re-sparse.h (do_index_op, resize, reshape, permute, squeeze):
+	delete.
+
+	* DLD-FUNCTIONS/spdet.cc (Fspdet): Remove use of SparseDet and
+	SparseComplexDET classes and use DET and ComplexDET classes.
+
+ 	* DLD-FUNCTIONS/colamd.cc op-bm-sbm.cc OPERATORS/op-b-sbm.cc
+	OPERATORS/op-cm-scm.cc OPERATORS/op-cm-sm.cc OPERATORS/op-cs-scm.cc
+	OPERATORS/op-cs-sm.cc OPERATORS/op-fil-sbm.cc OPERATORS/op-fil-scm.cc
+	OPERATORS/op-fil-sm.cc OPERATORS/op-m-scm.cc OPERATORS/op-m-sm.cc
+	OPERATORS/op-sbm-b.cc OPERATORS/op-sbm-bm.cc OPERATORS/op-sbm-sbm.cc
+	OPERATORS/op-scm-cm.cc OPERATORS/op-scm-cs.cc OPERATORS/op-scm-m.cc
+	OPERATORS/op-scm-s.cc OPERATORS/op-scm-scm.cc OPERATORS/op-scm-sm.cc
+	OPERATORS/op-sm-cm.cc OPERATORS/op-sm-cs.cc OPERATORS/op-sm-m.cc
+	OPERATORS/op-sm-s.cc OPERATORS/op-sm-scm.cc OPERATORS/op-sm-sm.cc
+	OPERATORS/op-s-scm.cc OPERATORS/op-s-sm.cc ov-base-sparse.cc
+	ov-base-sparse.h ov-bool-sparse.cc ov-bool-sparse.h ov-cx-sparse.cc
+	ov-cx-sparse.h ov-re-sparse.cc ov-re-sparse.h sparse-base-lu.cc
+	sparse-base-lu.h DLD-FUNCTIONS/sparse.cc sparse-xdiv.cc sparse-xdiv.h
+	sparse-xpow.cc sparse-xpow.h DLD-FUNCTIONS/spdet.cc
+	DLD-FUNCTIONS/splu.cc DLD-FUNCTIONS/spparms.cc: Remove additional
+	licensing clause with authors permission.
+
+	2005-01-05  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/colamd.cc: Rename from colamdoct.cc. Base colamd.h
+	now found in COLAMD/colamd.h.
+	(Fcolamd): Return value is now used.
+	(Fsymamd): ditto.
+
+	* Makefile.in: include colamd.cc in DLD_XSRC.
+
+	* ov.h (sparse_matrix_value, sparse_complex_matrix_value,
+	sparse_bool_matrix_value): New virtual functions
+
+	* ov-base.cc (octave_base_value::sparse_matrix_value,
+	octave_base_value::sparse_complex_matrix_value,
+	octave_base_value::sparse_bool_matrix_value): New default sparse
+	matrix extraction functions.
+
+	* ov-base.h (sparse_matrix_value, sparse_complex_matrix_value,
+	sparse_bool_matrix_value): Declare them.
+
+	* ov-re-mat.cc (octave_matrix::sparse_matrix_value,
+	octave_matrix::sparse_complex_matrix_value): Conversion functions.
+
+	* ov-re-mat.h (sparse_matrix_value, sparse_complex_matrix_value):
+	Declare them.
+
+	* ov-cx-mat.cc (octave_complex_matrix::sparse_matrix_value,
+	octave_complex_matrix::sparse_complex_matrix_value): Conversion
+	functions.
+
+	* ov-cx-mat.h (sparse_matrix_value, sparse_complex_matrix_value):
+	Declare them.
+
+	* ov-bool-mat.h (sparse_matrix_value, sparse_complex_matrix_value,
+	sparse_bool_matrix_value): Conversion functions.
+
+	* DLD_FUNCTIONS/spdet.cc (Fspdet): Use the above constructors
+	and conversion functions.
+	* DLD_FUNCTIONS/splu.cc (Fsplu): ditto.
+
+	2004-12-30  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/splu.cc (Fsplu): Avoid shadow warnings.
+
+	* sparse-xpow.cc (elem_xpow): Delete unsed variables.
+	* sparse-xdiv.cc (x_el_div): Likewise.
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Delete unused argument nargout.
+	* DLD-FUNCTIONS/spdet.cc (Fspdet): Likewise.
+
+	* DLD-FUNCTIONS/sparse.cc (Fnzmax): Return a value.
+
+	* ov.cc, ov.h (octave_value::octave_value (const SparseMatrix&),
+	(octave_value::octave_value (const SparseBoolMatrix&),
+	(octave_value::octave_value (const SparseComplexMatrix&)):
+	New constructors.
+
+	2004-12-29  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/sparse.cc (SPARSE_DIM_ARG_BODY): Rename from
+	DEFUN_DLD_SPARSE_DIM_ARG.  Omit HELP arg.  Omit DEFUN_DLD, so the
+	macro only defines the function body.
+	(Fspprod, Fspcumprod, Fspsum, Fspcumsum, Fspsumsq): Define with
+	DEFUN_DLD, not DEFUN_DLD_SPARSE_DIM_ARG.  Use SPARSE_DIM_ARG_BODY
+	to define function body.
+
+	* DLD-FUNCTIONS/sparse.cc (load_sparse_type, sparse_type_loaded):
+	Delete function, variable, and all uses.
+	* ov.cc: Include ov-bool-sparse.h, ov-re-sparse.h, ov-cx-sparse.h.
+	(install_types): Register sparse types.
+
+	Merge of sparse code from David Bateman <dbateman@free.fr> and
+	Andy Adler <adler@site.uottawa.ca>.
+
+	* sparse-xdiv.cc, sparse-xpow.cc: New files.
+	* Makefile.in (DIST_SRC): Add them to the list.
+
+	* sparse-ops.h sparse-xdiv.h, sparse-xpow.h: New files.
+	* Makefile.in (INCLUDES): Add them to the list.
+
+	* DLD-FUNCTIONS/colamdoct.cc, DLD-FUNCTIONS/sparse.cc,
+	DLD-FUNCTIONS/spdet.cc, DLD-FUNCTIONS/splu.cc,
+	DLD-FUNCTIONS/spparms.cc: New files.
+	* Makefile.in (DLD_XSRC): Add them to the list.
+
+	* ov-base-sparse.cc, ov-base-sparse.h, ov-bool-sparse.cc,
+	ov-bool-sparse.h, ov-cx-sparse.cc, ov-cx-sparse.h,
+	ov-re-sparse.cc, ov-re-sparse.h: New files.
+	* Makefile.in (OV_SPARSE_SRC, OV_SPARSE_INCLUDES): New lists.
+	(OV_SRC): Add $(OV_SPARSE_SRC) to the list.
+	(INCLUDES): Add $(OV_SPARSE_INCLUDES) to the list.
+
+	* OPERATORS/op-bm-sbm.cc, OPERATORS/op-b-sbm.cc,
+	OPERATORS/op-cm-scm.cc, OPERATORS/op-cm-sm.cc,
+	OPERATORS/op-cs-scm.cc, OPERATORS/op-cs-sm.cc,
+	OPERATORS/op-fil-sbm.cc, OPERATORS/op-fil-scm.cc,
+	OPERATORS/op-fil-sm.cc, OPERATORS/op-m-scm.cc,
+	OPERATORS/op-m-sm.cc, OPERATORS/op-sbm-b.cc,
+	OPERATORS/op-sbm-bm.cc, OPERATORS/op-sbm-sbm.cc,
+	OPERATORS/op-scm-cm.cc, OPERATORS/op-scm-cs.cc,
+	OPERATORS/op-scm-m.cc, OPERATORS/op-scm-s.cc,
+	OPERATORS/op-scm-scm.cc, OPERATORS/op-scm-sm.cc,
+	OPERATORS/op-sm-cm.cc, OPERATORS/op-sm-cs.cc,
+	OPERATORS/op-sm-m.cc, OPERATORS/op-sm-s.cc,
+	OPERATORS/op-sm-scm.cc, OPERATORS/op-sm-sm.cc,
+	OPERATORS/op-s-scm.cc, OPERATORS/op-s-sm.cc: New files.
+	* Makefile.in (SPARSE_OP_XSRC): New list.
+	(OP_XSRC): Add $(SPARSE_OP_XSRC) to the list.
+
+2005-02-23  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (fold (tree_binary_expression*)): Skip constant folding
+	for some expressions to preserve warnings.
+	(Vwarn_associativity_change): New static variable.
+	(warn_associativity_change): New function.
+	(symbols_of_parse): DEFVAR warn_associativity_change.
+	(maybe_warn_associativity_change): New function.
+	(make_binary_op): Use it.
+
+2005-02-22  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (POW, EPOW): Use %left associativity for compatibility.
+
+	* ov-base-int.cc (octave_baes_int_matrix<T>::load_binary):
+	Handle arrays with only one dimension.
+	* ov-bool-mat.cc (octave_bool_matrix::load_binary): Likewise.
+	* ov-cell.cc (octave_cell::load_binary): Likewise.
+	* ov-cell.cc (octave_complex_matrix::load_binary): Likewise.
+	* ov-re-mat.cc (octave_matrix::load_binary): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::load_binary): Likewise.
+
+	* ov-mapper.cc (octave_mapper::subsref): Return retval after
+	calling next_subsref.
+
+	* ov-mapper.cc (octave_builtin::subsref): If nargout is 0 and we
+	have additional indexing to perform, set it to 1 before calling
+	do_multi_index_op.
+
+	* oct-map.cc (Octave_map::intfield, Octave_map::stringfield):
+	New functions.
+	* oct-map.h: Provide decls.
+	* DLD-FUNCTIONS/time.cc (extract_tm): Use intfield and stringfield
+	to access map elements.
+
+2005-02-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-builtin.cc (octave_builtin::subsref): If nargout is 0 and we
+	have additional indexing to perform, set it to 1 before calling
+	do_multi_index_op.
+	* ov-usr-fcn.cc (octave_user_function::subsref): Likewise.
+
+	* DLD-FUNCTIONS/gplot.l (send_to_plot_stream):
+	Replot with no previous plot is a no-op.
+	(makeplot): Likewise.
+	(Vautomatic_replot): Don't use this variable in low-level functions.
+
+2005-02-18  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (oct-gperf.h): Remove -E from list of gperf options.
+
+	* data.cc (do_permute): Use zero-based indexing for permutation
+	vector that is passed to octave_value::permute method.
+	Allow permutation vector longer	than number of dimenensions of
+	permuted matrix.
+
+2005-02-17  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_API_VERSION): Now 2.1.64-cvs.
+	(OCTAVE_API_VERSION): Now api-v12-cvs.
+
+2005-02-16  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-mat.h (octave_base_matrix::squeeze): Explicitly convert
+	result of matrix.squeeze() to MT.
+
+2005-02-15  John W. Eaton  <jwe@octave.org>
+
+	* dirfns.cc (deftypefn): Don't print to octave_stdout if nargout > 0.
+
+	* pt-mat.cc (tree_matrix::rvalue): Min size of ra_idx is 2.
+
+	* file-io.cc (Ffclear): New function.
+
+	* sighandlers.h: Define SIGCHLD if it is not already defined and
+	SIGCLD is defined.
+
+	* sighandlers.cc (octave_set_signal_handler): Request system calls
+	restarted if interrupted by signals (except for SIGALRM).
+	* dirfns.cc (Fls): Don't bother with sleeping or checking errno.
+
+2005-02-11  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (sigpipe_handler): Don't try to take action.
+	Set octave_signal_caught and octave_signals_caught here.
+	(sigchld_handler): Call octave_child_list::wait here.
+	Set octave_signal_caught and octave_signals_caught here.
+	(octave_signals_caught): New static file-scope variable.
+	(sigint_handler): Also set octave_signal_caught.
+
+	* sighandlers.cc (sigpipe_handler):
+
+	* DLD-FUNCTIONS/gplot.l (plot_stream_event_handler): Rename from
+	plot_stream_death_handler.  Return true if plotter has exited.
+	Call close_plot_stream with false arg.
+	(plot_stream_pid): Delete static file-scope variable and all uses.
+	(close_plot_stream): New arg, remove_from_child_list, with default
+	value of true.  Only call octave_child_list::remove if
+	remove_from_child_list is true.
+
+	* pager.cc (octave_pager_pid, saved_interrupt_handler,
+	interrupt_handler_saved): Delete static file-scope variables and
+	all uses.
+	(clear_external_pager): Do nothing if external_pager is 0.
+	(pager_event_handler): Rename from pager_death_handler.
+	Improve warning message.  Return true if pager has exited.
+	(octave_pager_buf::do_sync): Check errno == EPIPE after write.
+	(flush_octave_stdout): No need to check external_pager before
+	calling clear_external_pager.
+
+	* toplev.cc (recover_from_exception): Set octave_signal_caught to zero.
+	(main_loop): Set octave_signal_hook to octave_signal_handler here.
+
+	* sighandlers.cc (octave_signal_handler): New function.
+	* sighanlders.h: Provide decl.
+
+	* sighandlers.cc (install_signal_handlers): Initialize
+	octave_signals_caught.
+
+	* sighandlers.h (octave_child::status, have_status): New data members.
+	(child_event_handler): Rename from dead_child_handler.
+	Change all uses.
+	(octave_child_list::reap, octave_child_list::wait): New functions.
+	(octave_child_list::length, octave_child_list::do_length,
+	octave_child_list::elem, octave_child_list::do_elem,
+	octave_child_list::list, octave_child_list::curr_len): Delete.
+
+	* sighandlers.h, sighandlers.cc
+	(octave_child_list::octave_child_list_rep): New class.
+
+	* input.cc (gnu_readline, octave_gets, get_user_input):
+	Call OCTAVE_QUIT before doing anything.
+
+	* base-list.h (octave_base_list<T>::remove_if): New function.
+
+	* TEMPLATE-INST/Array-oc.cc: Delete.
+	* Makefile.in (TI_XSRC): Remove from list.
+
+2005-02-10  Driss Ghaddab  <driss.ghaddab@free.fr>
+
+	* cutils.c (octave_usleep) [HAVE_POLL]: Fix typo.
+
+2005-02-10  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (symbol_exist): Don't search path if explicitly
+	asked for a variable or builtin.  From David Bateman
+	<dbateman@free.fr>.
+
+2005-02-09  John W. Eaton  <jwe@octave.org>
+
+	* variables.cc (same_file): New static function.
+	(symbol_out_of_date): Use it.
+
+	* syscalls.cc (Fcanonicalize_file_name): New function.
+
+2005-02-08  Walter Landry  <landry@osc.edu>
+
+	* symtab.h (symbol_record::mark_as_command): Avoid AIX compiler error.
+
+2005-02-07  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): Return [] instead
+	of [](1x0) for scalar arg of zero.
+
+2005-02-06  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (tmp_files): Delete.
+	From Todd Neal <tolchz@tolchz.net>.
+
+2005-02-04  John W. Eaton  <jwe@octave.org>
+
+	* sighandlers.cc (octave_child_list::~octave_child_list): Move here.
+	* sighandlers.h: From here.
+
+2005-02-02  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (parse.cc): Expect 12 shift/reduce conflicts.
+	* parse.y (loop_command): Allow "for (k=1:10) ... endfor".
+
+2005-01-27  David Bateman  <dbateman@free.fr>
+
+	* ov-mapper.cc (octave_mapper::apply): Only work on real arguments
+	if c_c_map_fcn or d_d_map_fcn or d_b_map_fcn is defined.xo
+
+2005-01-26  Joel Andersson  <snprintf@gmail.com>
+
+	* help.cc (keywords): Document endswitch.
+
+2005-01-21  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/filter.cc (filter): Avoid slow Marray indexing ops.
+
+2005-01-20  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (EXTRAS): Move ov-base-mat.cc ov-base-scalar.cc here.
+	(OV_SRC): From here.
+
+2005-01-18  John W. Eaton  <jwe@octave.org>
+
+	* ov-complex.h (octave_complex::any): New function.
+	* ov-scalar.h (octave_scalar::any): New function.
+
+	* file-io.cc (Fmkstemp): Fix doc string.  Error message belongs in
+	third output value.  From Mats Jansson <mats.e.jansson@home.se>.
+
+2005-01-12  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/find.cc (Ffind): Make it work for character strings.
+
+2005-01-11  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/gplot.l (UNOP): Avoid trailing comment.
+
+2005-01-10  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (extract_keyword (std::istream&, const
+	string_vector&, std::string&, int&, const bool)):
+	Remove duplicate definition.
+
+2004-12-27  Martin Dalecki  <martin@dalecki.de>
+
+	* Cell.cc, c-file-ptr-stream.cc, comment-list.cc, oct-map.cc,
+	oct-obj.cc, ov-base.cc, ov-base-int.cc, ov-base-mat.cc,
+	ov-base-scalar.cc, ov-bool.cc, ov-bool-mat.cc, ov-builtin.cc,
+	ov.cc, ov-cell.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
+	ov-cs-list.cc, ov-cx-mat.cc, ov-dld-fcn.cc, ov-fcn.cc,
+	ov-fcn-handle.cc, ov-fcn-inline.cc, ov-file.cc, ov-int16.cc,
+	ov-int32.cc, ov-int64.cc, ov-int8.cc, ov-list.cc, ov-mapper.cc,
+	ov-range.cc, ov-re-mat.cc, ov-scalar.cc, ov-streamoff.cc,
+	ov-str-mat.cc, ov-struct.cc, ov-typeinfo.cc, ov-uint16.cc,
+	ov-uint32.cc, ov-uint64.cc, ov-uint8.cc, ov-usr-fcn.cc,
+	ov-va-args.cc, procstream.cc, pt-arg-list.cc, pt-assign.cc,
+	pt-binop.cc, pt-bp.cc, pt.cc, pt-cell.cc, pt-check.cc, pt-cmd.cc,
+	pt-colon.cc, pt-const.cc, pt-decl.cc, pt-except.cc, pt-exp.cc,
+	pt-fcn-handle.cc, pt-id.cc, pt-idx.cc, pt-jump.cc, pt-loop.cc,
+	pt-mat.cc, pt-misc.cc, pt-pr-code.cc, pt-select.cc, pt-stmt.cc,
+	pt-unop.cc, symtab.cc, token.cc, unwind-prot.cc:
+	Delete #pragma implementation.
+
+	* Cell.h, c-file-ptr-stream.h, comment-list.h, oct-map.h,
+	oct-obj.h, ov-base.h, ov-base-int.h, ov-base-mat.h,
+	ov-base-scalar.h, ov-bool.h, ov-bool-mat.h, ov-builtin.h,
+	ov-cell.h, ov-ch-mat.h, ov-complex.h, ov-cs-list.h, ov-cx-mat.h,
+	ov-dld-fcn.h, ov-fcn.h, ov-fcn-handle.h, ov-fcn-inline.h,
+	ov-file.h, ov.h, ov-int16.h, ov-int32.h, ov-int64.h, ov-int8.h,
+	ov-list.h, ov-mapper.h, ov-range.h, ov-re-mat.h, ov-scalar.h,
+	ov-streamoff.h, ov-str-mat.h, ov-struct.h, ov-typeinfo.h,
+	ov-uint16.h, ov-uint32.h, ov-uint64.h, ov-uint8.h, ov-usr-fcn.h,
+	procstream.h, pt-arg-list.h, pt-assign.h, pt-binop.h, pt-bp.h,
+	pt-cell.h, pt-check.h, pt-cmd.h, pt-colon.h, pt-const.h,
+	pt-decl.h, pt-except.h, pt-exp.h, pt-fcn-handle.h, pt.h, pt-id.h,
+	pt-idx.h, pt-jump.h, pt-loop.h, pt-mat.h, pt-misc.h, pt-pr-code.h,
+	pt-select.h, pt-stmt.h, pt-unop.h, symtab.h, token.h,
+	unwind-prot.h: Delete #pragma interface.
+
+2004-12-27  John W. Eaton  <jwe@octave.org>
+
+	Merge of changes from Teemu Ikonen <tpikonen@pcu.helsinki.fi> to
+	remove gnuplot from main parser.
+
+	* pt-plot.cc, pt-plot.h: Delete.
+	* Makefile.in (PT_SRC, PT_INCLUDES): Delete them from the lists.
+
+	* DLD-FUNCTIONS/gplot.l: New file.
+	* Makefile.in: Include it in the DLD_XSRC list.
+
+	* dirfns.cc (octave_change_to_directory):
+	Don't call do_external_plotter_cd.
+
+	* symtab.h (symbol_record::TYPE): New element, RAWCOMMAND.
+	(symbol_record::symbol_def::mark_as_rawcommand,
+	symbol_record::symbol_def::unmark_rawcommand,
+	symbol_record::symbol_def::is_rawcommand): New functions.
+	(symbol_record::symbol_def::symbol_type): Bitfield is now 9 bits wide.
+	(symbol_record::mark_as_rawcommand,
+	symbol_record::unmark_rawcommand, symbol_record::is_rawcommand):
+	New functions.
+	(SYMTAB_ALL_TYPES): Include RAWCOMMAND.
+
+	* parse.y (make_plot_command): Delete function.
+	(tree_plot_command_type, subplot_type, subplot_list_type,
+	plot_limits_type, plot_range_type, subplot_using_type,
+	subplot_style_type, subplot_axes_type):
+	Delete non-terminal type decls.
+	(PLOT, STYLE, AXES_TAG): Delete token types.
+	(title, plot_command, plot_command2, plot_options, plot_command1,
+	ranges, ranges1, using, using1, style, axes): Delete non-terminals.
+
+	* toplev.cc (do_octave_atexit): Don't call close_plot_stream.
+
+	* variables.cc (rawcommand_set): New static variable.
+	(is_marked_as_rawcommand, mark_as_rawcommand, unmark_rawcommand,
+	Fiscommand, Fmark_as_rawcommand, Funmark_rawcommand,
+	Fisrawcommand, is_rawcommand_name): New functions.
+	* variables.h: Provide decl for is_rawcommand_name.
+
+	* pt-bp.cc, pt-bp.h, pt-check.cc, pt-check.h, pt-pr-code.cc,
+	pt-pr-code.h, pt-walk.h: Delete all declarations, definitions, and
+	uses of visit_subplot, visit_subplot_axes, visit_subplot_list,
+	visit_subplot_style, and visit_subplot_using methods.
+
+	* lex.h (lexer_flags): New field, doing_rawcommand.
+	* lex.l (<COMMAND_START>[\;\,]): Also handle raw commands here.
+	(lexer_flags::init): Initialize doing_racommand to false.
+	(handle_identifier): Recognize raw commands ere.
+	(handle_string): Don't do string escape conversions on raw command
+	strings.
+
+	* octave.gperf: Delete gplot_kw, gsplot_kw, replot_kw.
+
+	* lex.h (lexer_flags): Delete fields cant_be_identifier,
+	doing_set, in_plot_range, in_plot_using, in_plot_style,
+	in_plot_axes, past_plot_range, and plotting.
+	* lex.l: Delete all uses of these lexer flags and remove all
+	special cases for plotting.
+	(plot_style_token, plot_axes_token, is_plot_keyword): Delete.
+
+	* file-io.cc, file-io.h (tmp_files, mark_for_deletion,
+	cleanup_tmp_files): Move here.
+	* pt-plot.cc, pt-plot.h: From here.
+
+	* Makefile.in (PKG_ADD): New target.
+	(all): Depend on PKG_ADD.
+	(install-oct): Depend on PKG_ADD.  Install PKG_ADD file.
+	(gplot.cc): New target.
+	(stamp-prereq): Depend on gplot.cc.
+	(VAR): Don't include $(DLD_SRC) here.
+	(DLD_OBJ, DLD_DEF_FILES): Include .l files.
+
+	* defun-int.h (DEFVAR, DEFCONST, DEFCONSTX): Move definition here.
+	* defun.h: From here.
+
+2004-12-22  John W. Eaton  <jwe@octave.org>
+
+	* ls-oct-ascii.cc (extract_keyword (std::istream&, const
+	string_vector&, std::string&, int&, const bool): New function.
+	* ls-oct-ascii.h: Provide decl.
+	* ov-bool-mat.cc (octave_bool_matrix::load_ascii):
+	Use new extract_keyword function to avoid calling tellg/seekg.
+	* ov-cell.cc (octave_cell::load_ascii): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::load_ascii): Likewise.
+	* ov-re-mat.cc (octave_matrix::load_ascii): Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::load_ascii): Likewise.
+
+2004-12-20  John W. Eaton  <jwe@octave.org>
+
+	* pt-idx.cc (tree_index_expression::has_magic_end): Return true if
+	any argument list element has a magic end token.
+
+2004-12-03  John W. Eaton  <jwe@octave.org>
+
+  	* version.h (OCTAVE_VERSION): Now 2.1.64.
+
+2004-12-03  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* file-io.cc: Doc string fixes.
+
+2004-12-02  David Bateman  <dbateman@free.fr>
+
+	* input.cc (get_user_input): Only set nm and line for debugging if
+	both debug is true and curr_caller_function is non-null.
+
+2004-12-02  David Bateman  <dbateman@free.fr>
+
+	* ls-mat5.cc (arrayclasstype): Add mxINT64_CLASS, mxUINT64_CLASS,
+	mxFUNCTION_CLASS enum values.
+	(read_mat5_integer_data): New template function.
+	(OCTAVE_MAT5_INTEGER_READ): New macro.
+	(read_mat5_binary_element): Handle reading integer types.
+	Eliminate automatic conversion from int to double.
+	(write_mat5_integer_data): New template function.
+	Instantiate it for the 8 integer data types
+	(save_mat5_binary_element): Handle integer data types.
+
+	* load-save.cc (Fload): Check file existence here.
+	If file does not exist, append ".mat" to name and try again.
+	(get_file_format): Delete check for file existence.
+
+2004-11-30  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (oct-gperf.h): Use -L C++ instead of -L ANSI_C.
+	Use -Z octave_kw_hash option, delete -H and -N options.
+	* lex.l (is_keyword_token): Use octave_kw_hash::in_word_set
+	instead of octave_kw_lookup.
+	(is_keyword): Likewise.
+
+2004-11-22  John W. Eaton  <jwe@octave.org>
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	Check to see whether object is a function or function handle
+	instead of constant.
+
+2004-11-19  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op):
+	Skip indexing operation if indices are invalid.
+
+	* pr-output.cc (set_range_format, set_complex_matrix_format,
+	set_complex_format, set_real_matrix_format, set_real_format):
+	Also specify std::ios::fixed for bank format.
+
+2004-11-17  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.63.
+	(OCTAVE_API_VERSION): Now api-v12.
+
+2004-11-17  David Bateman  <dbateman@free.fr>
+
+	* pt-arg-list.cc (F__end__): Ask dv for the number of elements
+	instead indexed_object.
+
+2004-11-16  David Bateman  <dbateman@free.fr>
+
+	* ov.h (octave_value::numel): Now virtual.  Call rep->numel ().
+	* ov.cc (octave_value::numel): Delete.
+	* ov-base.h (octave_base_value::numel): New function.
+
+2004-11-12  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.62.
+
+2004-11-09  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-int-concat.cc: New file for mixed integer/other
+	concatentation operators.
+	* Makefile.in (INTTYPE_OP_XSRC): Add it to the list.
+
+	* ops.h (DEFNDCATOP_FN2): New macro.
+
+	* OPERATORS/op-int.h (OCTAVE_CONCAT_FN2,
+	OCTAVE_INSTALL_CONCAT_FN2, OCTAVE_DOUBLE_INT_CONCAT_FN,
+	OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN, OCTAVE_INT_DOUBLE_CONCAT_FN,
+	OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN): New macros.
+
+2004-11-09  David Bateman  <dbateman@free.fr>
+
+	* Cell.cc (concat): Delete.
+	(Cell::concat): New method.
+	* Cell.h: Provide decls.
+
+	* oct-map.cc (concat): Delete
+	(Octave_map::concat): New method.
+	* oct-map.h: Provide decls.
+
+	* ov.h (typedef octave_value (*cat_op_fcn) (octave_value&,
+	const octave_value&, const Array<int>&): Change definition of
+	cat_op_fcn so first argument is not constant.
+
+	* ops.h (CATOPDECL): First arg is no longer constant.
+	(DEFCATOP_FN, DEFNDCATOP_FN): Change to use new concat methods.
+
+	* OPERATORS/op-chm.cc, OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc,
+	OPERATORS/op-str-str.cc (DEFCATOP): Change explicit concat functions
+	to use new concatenation methods.
+
+2004-11-05  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.61.
+
+	* DLD-FUNCTIONS/det.cc (det): Always compute rcond so we can
+	detect numerically singular matrices.
+
+2004-11-04  John W. Eaton  <jwe@octave.org>
+
+	* pt-colon.cc (tree_colon_expression::line,
+	tree_colon_expression::column): New functions.
+	* pt-colon.h: Provide decls.
+
+	* oct-stream.cc (octave_stream::seek (long, int)): Return error
+	(but leave file position unchanged) for attempt to seek beyond end
+	of file.
+
+	* DLD-FUNCTIONS/inv.cc (Finv): Check rcond value returned from
+	LAPACK routines, and be careful to avoid optimizing away the
+	1+rcond == 1.0 check.
+	* DLD-FUNCTIONS/det.cc (Fdet): Likewise.
+
+2004-11-03  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (Fsize): Return 1 if requested dimension is larger than
+	the number of dimensions of the given object.
+
+2004-11-01  Claude Lacoursiere  <claude@hpc2n.umu.se>a
+
+	* ls-hdf5.cc (read_hdf5_data): Expect num_obj to be in distinct group.
+	* ov-cell.cc (octave_cell::load_hdf5): Likewise.
+	* ov-list.cc (octave_list::load_hdf5): Likewise.
+	* ov-struct.cc (octave_struct::load_hdf5): Likewise.
+
+2004-11-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
+	MArrayN<T>&, MArrayN<T>&, int)): The variable si is now at least 2-D.
+	(Ffilter): Force si to be 2-D, while allowing arbitrary vector
+	orientation.
+
+2004-11-01  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (INSTANTIATE_EYE): New macro.  Use it to instantiate
+	identity matrix functions for various matrix types.
+
+	* variables.cc (do_who): Fix typo in for loop.
+
+2004-10-28  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (save_mat5_binary_element): Save structure elements
+	in correct order.
+
+2004-10-26  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn.h (octave_function::octave_va_arg): No longer const.
+
+2004-10-22  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/filter.cc: Remove some unnecessary parens.
+
+2004-10-22  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/filter.cc (filter (MArray<T>&, MArray<T>&,
+	MArrayN<T>&, MArrayN<T>&, int)): If value to filter is
+	dimensionality 2 it might still be a vector, use special case.
+
+2004-10-21  John W. Eaton  <jwe@octave.org>
+
+	* ov-base.cc (INT_CONV_METHOD): Apply saturation semantics here too.
+
+2004-10-19  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::write): New function.
+
+2004-10-18  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (symbol_record::dimensions_string_req_first_space,
+	symbol_record::make_dimensions_string): Use dims() for all objects.
+
+2004-10-18  Oyvind Kristiansen  <oyvinkri@stud.ntnu.no>
+
+	* symtab.cc (symbol_table::parse_whos_line_format): Handle
+	size-of-parameter and center-specific format specifiers.
+
+2004-10-18  John W. Eaton  <jwe@octave.org>
+
+	* pt-plot.cc (handle_plot_data): If plotting data from file,
+	always use "using" clause.
+
+2004-10-12  David Bateman  <dbateman@free.fr>
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element,
+	tm_const::init): Dimensionality of matrices not necessarily the
+	same.  Check before comparing.
+
+2004-10-06  John W. Eaton  <jwe@octave.org>
+
+	* pt-fcn-handle.h (tree_fcn_handle::name): New function.
+
+2004-10-01  John W. Eaton  <jwe@octave.org>
+
+	* ov-range.h (octave_range::valid_as_scalar_index): Ensure int value.
+	(octave_range::valid_as_zero_index): Likewise.
+
+	* ov-scalar.h (octave_scalar::valid_as_scalar_index): Ensure int value.
+	(octave_scalar::valid_as_zero_index): Likewise.
+
+2004-09-24  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.60.
+	(OCTAVE_API_VERSION): Now api-v11.
+
+	* OPERATORS/op-int.h (OCTAVE_MM_INT_OPS): Include missing matrix
+	by int matrix ops.
+	(OCTAVE_INSTALL_MM_INT_OPS): Install them.
+
+	* OPERATORS/op-i64-i64.cc: Define and install missing int64 by
+	matrix and scalar ops.
+
+2004-09-24  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline (Finline): Attempt better auto-detection of
+	symbols that should be recognized as arguments.
+
+2004-09-24  John W. Eaton  <jwe@octave.org>
+
+	* ov-str-mat.cc (default_numeric_conversion_function): Return
+	scalar object if numel == 1.
+
+2004-09-23  John W. Eaton  <jwe@octave.org>
+
+	* ops.h	(DEFSTRDBLCONVFN): New macro.
+	* OPERATORS/op-double-conv.cc: Use it to define new conversion op.
+	Define new range to double matrix conversion.
+	(install_int_conv_ops): Install new ops.
+
+	* ops.h	(DEFSTRINTCONVFN): New macro.
+	* OPERATORS/op-int-conv.cc: Use it to define new conversion ops.
+	(install_int_conv_ops): Install them.
+
+	* (OCTAVE_SS_INT_OPS2, OCTAVE_SM_INT_OPS2, OCTAVE_MM_INT_OPS2,
+	OCTAVE_INSTALL_SS_INT_OPS2, OCTAVE_INSTALL_SM_INT_OPS2,
+	OCTAVE_INSTALL_MS_INT_OPS2, OCTAVE_INSTALL_MM_INT_OPS2):
+	Delete unused macros.
+
+	* OPERATORS/op-int.h (OCTAVE_SS_INT_BOOL_OPS): New args Z1 and Z2.
+	(OCTAVE_SS_INT_OPS): Pass appropriately typed zero values to
+	OCTAVE_SS_INT_BOOL_OPS.
+	* OPERATORS/op-i64-i64.cc, OPERATORS/op-ui64-ui64.cc: Likewise.
+
+	* pr-output.cc (pr_plus_format): Now template.
+	Specialize for Complex.
+	(octave_print_internal): Lookup print_conv_type using
+	octave_int<T>, not just T.
+
+	* ov-struct.cc (octave_struct::subsref): Pass skip to next_subsref.
+
+	* oct-stream.cc	(do_read): Hitting EOF should not be an error.
+
+2004-09-22  John W. Eaton  <jwe@octave.org>
+
+	* pt-plot.cc (send_to_plot_stream): Skip automatic replot if in
+	multiplot mode.
+
+	* variables.cc (get_global_value): New arg, silent.
+	* variables.h (get_global_value): Default value for silent arg is
+	false.
+
+2004-09-22  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline.cc (Finline): When called with a single arg, derive
+	argument of inline function in a compatible manner.
+
+2004-09-22  Federico Zenith  <zenith@chemeng.ntnu.no>
+
+	* DLD-FUNCTIONS/qz.cc (Fqz): New @tex section(s) in doc string for
+	better formating of printed documentation.  Use @var in doc string.
+
+	* DLD-FUNCTIONS/time.cc (Fstrftime): Fix typo in doc string.
+	* error.cc (Flasterr, Flastwarn): Likewise.
+	* mappers.cc (Farg, Fasinh, Fatanh, Ffinite, Fsin, Fsinh, Ftan):
+	Likewise.
+	* file-io.cc (Fmktemp): Likewise.
+	* pt-plot.cc (symbols_of_pt_plot): Fix typos in doc string for
+	gnuplot_has_frames.
+
+	* input.cc (symbols_of_input): Replace --echo-input with new
+	--echo-commands in PS4 doc string.
+
+	* pt-assign.cc (symbols_of_pt_assign): Mark print_rhs_assign_val
+	as built-in in doc string.
+
+	* symtab.cc (symbols_of_symtab): Mark variables_can_hide_functions
+	as built-in in doc string.
+
+2004-09-21  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.59.
+
+	* oct-fstrm.h (octave_fstream::octave_fstream,
+	octave_fstream::create): Set default float format to actual native
+	format, not flt_fmt_native.
+	* oct-iostrm.h (octave_base_iostream::octave_base_iostream,
+	octave_istream::octave_istream, octave_ostream::octave_ostream):
+	Likewise.
+	* oct-prcstrm.h (octave_iprocstream::octave_iprocstream,
+	octave_oprocstream::octave_oprocstream,
+	octave_iprocstream::create, octave_oprocstream::create):
+	Likewise.
+	* oct-stdstrm.h (octave_stdiostream::octave_stdiostream,
+	octave_stdiostream::create):
+	Likewise.
+	* oct-stream.h (octave_base_stream::octave_base_stream):
+	Likewise.
+	* oct-strstrm.h (octave_base_strstream::octave_base_strstream,
+	octave_istrstream::octave_istrstream, octave_istrstream::create):
+	Likewise.
+
+2004-09-21  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Freshape): Allow a single empty dimension argument
+	to flag unknown dimension and calculate its value from the
+	other dimensions.
+
+2004-09-21  John W. Eaton  <jwe@octave.org>
+
+	* symtab.h (symbol_record::~symbol_record): Delete definition if
+	count goes to zero.
+	* symtab.cc (symbol_table::~symbol_table): Move here from symtab.h.
+	Call delete on each symbol record in the table instead of just
+	clearing them.
+
+2004-09-17 David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sort.cc (ascending_compare, descending_compare):
+	Now templates (avoids g++ 3.4.x compile problems).
+	Fix other uses of these functions to also treat them as templates.
+	(mx_sort): For unsigned EIGHT_BYTE_INT versions correct the test
+	for the position of NaN.  Problems when mode was DESCENDING or
+	UNDEFINED.  Use static_cast<unsigned int> (dim) rather than
+	(unsigned int) dim.
+	(IFloatFlip): Now static.
+
+2004-09-17  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Only compute estimate of the
+	condition number if requested as output.
+
+	* DLD-FUNCTIONS/schur.cc (Fschur): Only compute unitary matrix if
+	requested as output.
+
+2004-09-17  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-inline.cc (octave_fcn_inline::octave_fcn_inline):
+	Call eval_string instead of feval ("eval", ...).
+	Construct anonymous function handle to avoid going through the
+	symbol table.
+
+	* ov-fcn-handle.h (octave_fcn_handle::fcn_val): New function.
+	(octave_fcn_handle::octave_fcn_handle (const std:string&)):
+	New constructor.
+
+2004-09-16  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (frob_function): Clear id_name from curr_sym_tab, not
+	top_level_sym_tab.
+
+	* symtab.cc (maybe_list): Count sizes using size_t, not int.
+
+	* variables.cc (symbol_out_of_date): Always look in LOADPATH.
+
+2004-09-15  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-int-conv.cc: Define and install bool to int
+	conversions.
+	* OPERATORS/op-double-conv.cc: Define and install bool to double
+	conversions.
+
+	* ov.cc (octave_value::assign): Handle subsref for containers.
+	* oct-lvalue.cc (octave_lvale::value): Likewise.
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort): Return octave_value, not
+	octave_value list.
+
+2004-09-15  David Bateman  <dbateman@free.fr>
+
+	* ov.cc (octave_value::octave_value (const ArrayN<char>&, bool)):
+	New Constructor .
+	* ov.h: Provide decl.
+
+	* DLD-FUNCTIONS/sort.cc (sortmode): New enum to define sort direction.
+	(template <class T> class vec_index): New class to contain values and
+	index for indexed sorts, replacing all previous struct versions.
+	Instantiate for double, Complex, char and octave_value.
+	(template <class T> static octave_value_list mx_sort (ArrayN<T> &, int,
+	sortmode)): New templated version of mx_sort replacing all previous
+	versions, but specific to non indexed sorts. Instantiate for char
+	and double if not IEEE754.
+	(template <> static octave_value_list mx_sort (ArrayN<double> &,
+	int, sortmode)): Specialized function of mx_sort of IEEE754.
+	(template <class T> static octave_value_list mx_sort_indexed
+	(ArrayN<T> &, int, sortmode)): New templated version of mx_sort
+	for indexed sorts. Instantiate for double, Complex, char and
+	octave_value.
+	(ascending_compare, descending_compare): Comparison functions
+	for double, char, vec_index<double> *, vec_index<Complex> *,
+	vec_index<char> *, vec_index<octave_value>. Fix Complex comparison
+	operator to sort by arg of values if absolute values are equal.
+	(Fsort): Update docs for new mode argument and for sorting of
+	strings and cell arrays of strings. Implement mode argument to
+	define ascending and descending sorts. Include sorting of cell
+	arrays of strings. Adapt for new templated versions of the mx_sort
+	function.
+
+2004-09-15  John W. Eaton  <jwe@octave.org>
+
+	* ov-cell.cc (octave_cell::subsref): Pass nargout to next_subsref.
+	* ov-builtin.cc (octave_builtin::subsref): Likewise.
+	* ov-fcn-handle.cc (octave_fcn_handle::subsref): Likewise.
+	* ov-list.cc (octave_list::subsref): Likewise.
+	* ov-mapper.cc (octave_mapper::subsref): Likewise.
+	* ov-struct.cc (octave_struct::subsref): Likewise.
+	* ov-usr-fcn.cc (octave_user_function::subsref): Likewise.
+
+	* ov-struct.cc, ov-struct.h (octave_struct::subsref (const
+	std::string&, const std::list<octave_value_list>&, int)):
+	Define this version.
+	(octave_struct::subsref (const std::string&, const
+	std::list<octave_value_list>&)): Panic in this version.
+	* ov-list.cc, ov-list.h: Likewise.
+	* ov-cell.cc, ov-cell.h: Likewise.
+
+	* ov.cc (octave_value::subsref (int, const std::string&, const
+	std::list<octave_value_list>&, size_t)): New function.
+	* ov.h: Provide decl.
+
+	* ov-cell.h (octave_cell::is_constant): Return false.
+	* ov-struct.h (octave_struct::is_constant): Delete.
+	* ov-list.h (octave_list::is_constant): Delete.
+
+2004-09-14  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort (charNDArray&, bool, int)):
+	New function to sort character strings.
+	(Fsort): Handle character strings.
+
+2004-09-11  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii):
+	Write directly to OS.
+	(octave_fcn_handle::load_ascii,	octave_fcn_handle::load_binary,
+	octave_fcn_handle::load_hdf5): Check parse status after calling
+	eval_string.  Don't dereference fh unless it is valid.
+
+2004-09-11  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-handle.cc (octave_fcn_handle::save_ascii,
+	octave_fcn_handle::load_ascii, octave_fcn_handle::save_binary,
+	octave_fcn_handle::load_binary, octave_fcn_handle::save_hdf5,
+	octave_fcn_handle::load_hdf5): New functions.
+	* ov-fcn-handle.h: Provide decls.
+
+	* ov-fcn-inline.cc (octave_fcn_inline::load_ascii):
+	Allow spaces in saved function.
+ 	(octave_fcn_inline::save_hdf5): Properly close all HDF5 objects.
+
+	* ls-oct-ascii.cc (read_ascii_data): Check return type of
+	<octave_value>.load_ascii for errors reading the variables
+
+	* variables.cc (lookup_function_handle, clear_variable,
+	clear_symbol): New functions.
+	* variables.h: Provide decls.
+
+2004-09-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Use unwind
+	protect frame instead of a single unwind_protect::run.
+	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
+
+	* data.cc (fill_matrix, identity_matrix):
+	Also allow logical data type.
+
+2004-09-10  David Bateman  <dbateman@free.fr>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::double_value,
+	OCTAVE_VALUE_INT_MATRIX_T::scalar_value,
+	OCTAVE_VALUE_INT_SCALAR_T::double_value,
+	OCTAVE_VALUE_INT_SCALAR_T::scalar_value): New functions.
+
+2004-09-10  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-scalar.h (octave_base_scalar::clone,
+	octave_base_scalar::empty_clone): New functions.
+
+2004-09-09  John W. Eaton  <jwe@octave.org>
+
+	* pt-pr-code.h (tree_print_code::newline): New optional arg, alt_nl.
+	* pt-pr-code.cc (tree_print_code::newline): Use it if not printing
+	newlines.
+	(tree_print_code::visit_statement): If we printed ";", call
+	newline with optional arg set to "".
+	(tree_print_code::printing_newlines): New data member.
+	(tree_print_code::tree_print_code): Initialize it.
+	(tree_print_code::suspend_newline, tree_print_code::resume_newline):
+	New functions.
+	(tree_print_code::newline, tree_print_code::indent): Use it
+
+	* ov-fcn-handle.cc (octave_fcn_handle::print_raw):
+	Print code for anonymous function handles.
+
+2004-09-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.cc (Ffunc2str, Ffunctions): Don't call substr(1)
+	on fh_nm, since we no longer need to skip "@" in the name.
+
+	* error.cc (pr_where): Do a better job of printing location info.
+
+	* input.cc (get_user_input): Print location info before the debug
+	prompt.  From Keith Goodman <kwgoodman@gmail.com>.
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Save and set curr_caller_function and curr_caller_statement here.
+	* ov-mapper.cc (octave_mapper::do_multi_index_op): Likewise.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
+
+	* pt-stmt.cc (curr_caller_statement): New variable.
+	* pt-stmt.h: Provide decl.
+
+	* toplev.cc (curr_caller_function): New variable.
+	* toplev.h: Provide decl.
+
+	* pt-arg-list.cc (convert_to_const_vector):
+	Unwind-protect index_position before modifying it.
+	Don't protect and set index_position unless stash_object is true.
+
+2004-09-08  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-inline.cc (octave_fcn_inline::save_ascii,
+	octave_fcn_inline::load_ascii, octave_fcn_inline::save_binary,
+	octave_fcn_inline::load_binary, octave_fcn_inline::save_hdf5,
+	octave_fcn_inline::load_hdf5): New functions.
+	* ov-fcn-inline.h: Provide decls.
+
+2004-09-08  John W. Eaton  <jwe@octave.org>
+
+	* ov.h: Add octave_array_type_traits specialization for
+	boolNDArray element type.
+
+2004-09-07  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc: Instantiate octave_stream::write for Array<bool>.
+	(octave_stream::read): Expand read_fptr_table to include dt_logical.
+
+	* ov-bool.h (octave_bool::write): New function.
+	* ov-bool-mat.h (octave_bool_matrix::write): New function.
+
+	* ov-fcn-inline.h (octave_fcn_inline::octave_fcn_inline): New copy
+	constructor.
+	(octave_fcn_inline::clone, octave_fcn_inline::empty_clone):
+	New functions.
+
+	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle): New copy
+	constructor.
+	(octave_fcn_handle::clone, octave_fcn_handle::empty_clone):
+	New functions.
+
+2004-09-06  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (install_types): Call octave_fcn_inline::register_type.
+
+	* version.h (OCTAVE_API_VERSION): Now api-v10.
+
+	* OPERATORS/op-b-b.cc, OPERATORS/op-bm-bm.cc: Define and install
+	unary plus and unary minus operators.
+
+	* OPERATORS/op-int.h, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-cs-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-range.cc:
+	Define and install unary plus operator.
+
+	* ov.cc (unary_op_as_string): Handle op_uplus too.
+
+	* parse.y (prefix_expr): Build unary plus op here instead of
+	converting to no-op.
+	(make_prefix_op): Accept op_uplus.
+
+2004-09-03  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-b-bm.cc (DEFCONV): Define bool scalar to bool
+	matrix conversion.
+	(install_b_bm_ops): Install it.
+	Install conversion for assignment of bool matrix to indexed bool.
+	* OPERATORS/op-b-b.cc (install_b_b_ops): Install conversion for
+	assignment of bool to indexed bool.
+
+2004-09-03  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
+	OPERATORS/op-bm-bm.cc: Modify concatenation between boolean types
+	so that it returns a boolean.
+
+	* ov-bool.cc (octave_bool::do_index_op): Return boolean matrix.
+
+	* ov-intx.h (do_index_op (const octave_value_list&, int)):
+	New function for indexed subsref of int types.
+
+2004-09-03  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-int.h (OCTAVE_SM_INT_OPS): Define int by double
+	mixed comparison and bool ops.
+	(OCTAVE_INSTALL_SM_INT_OPS): Install them.
+	(OCTAVE_MS_INT_OPS): Define double by int mixed comparison and
+	bool ops.
+	(OCTAVE_INSTALL_MS_INT_OPS): Install them
+
+	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
+	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
+	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
+	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
+	Define and install various mixed-type operators.
+
+	* OPERATORS/op-int.h (OCTAVE_MM_INT_OPS): Also define mixed int
+	and double matrix comparison and bool ops.
+	(OCTAVE_INSTALL_MM_INT_OPS): Install them.
+	(OCTAVE_SS_INT_BOOL_OPS, OCTAVE_SM_INT_BOOL_OPS,
+	OCTAVE_MS_INT_BOOL_OPS, OCTAVE_MM_INT_BOOL_OPS):
+	Define logical AND and OR ops.
+	(OCTAVE_INSTALL_SS_INT_BOOL_OPS, OCTAVE_INSTALL_SM_INT_BOOL_OPS,
+	OCTAVE_INSTALL_MS_INT_BOOL_OPS, OCTAVE_INSTALL_MM_INT_BOOL_OPS):
+	Install them.
+	(OCTAVE_MM_INT_CMP_OPS, OCTAVE_MM_INT_BOOL_OPS): Accept prefix arg.
+	(OCTAVE_MM_CONV): New macro.
+	(OCTAVE_MM_INT_OPS): Use it to define complex matrix conversion.
+	(OCTAVE_MIXED_INT_CMP_OPS, OCTAVE_MIXED_INT_BOOL_OPS): New macros.
+
+	* OPERATORS/op-int.h (OCTAVE_MS_INT_OPS): Don't define indexed int
+	matrix = complex scalar assignment ops.
+	(OCTAVE_MS_INT_OPS): Don't define indexed int matrix = complex
+	matrix assignment ops.
+	(OCTAVE_SM_CONV): New macro.
+	(OCTAVE_SM_INT_OPS): Use it to define int scalar -> (int|complex)
+	matrix widening ops.
+	(OCTAVE_RE_INT_ASSIGN_OPS, OCTAVE_CX_INT_ASSIGN_OPS): New macros.
+	(OCTAVE_INT_OPS): Use them here.
+	(OCTAVE_INSTALL_SS_INT_OPS): Install indexed int scalar = scalar
+	and indexed int scalar = complex scalar assignment conversions.
+	(OCTAVE_INSTALL_SM_INT_OPS): Install int scalar -> (int|complex)
+	matrix widening ops.  Install indexed int scalar =
+	(int|real|complex) matrix assignment conversions.
+	(OCTAVE_INSTALL_MS_INT_OPS): Install indexed int matrix = complex
+	scalar assignment conversion.
+	(OCTAVE_INSTALL_MM_INT_OPS): Install int matrix -> complex matrix
+	widening op.  Install indexed int matrix = complex matrix
+	assignment conversion.
+	(OCTAVE_INSTALL_RE_INT_ASSIGN_OPS, OCTAVE_INSTALL_CX_INT_ASSIGN_OPS):
+	New macros.
+	(OCTAVE_INSTALL_INT_OPS): Use them.
+
+	* op-int.h: (OCTAVE_INSTALL_SM_INT_ASSIGNCONV): New macro.
+	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
+	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
+	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
+	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
+	Use it to define mixed size integer scalar/integer matrix
+	assignment conversions.
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::complex_array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::complex_array_vale):
+	New functions.
+
+2004-09-02  John W. Eaton  <jwe@octave.org>
+
+	* DLD-FUNCTIONS/quad.cc (Fquad): Pass "__quad_fcn_" instead of
+	"__quad_fcn__" to unique_symbol_name.
+
+	* ov-fcn-inline.cc (octave_fcn_inline): Pass "__inline_" instead
+	of "__inline__" to unique_symbol_name.
+
+	* variables.cc (unique_symbol_name): Make better random symbol name.
+
+2004-09-01  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.58.
+
+	* Makefile.in (OP_INCLUDES): New variable.
+	Include OPERATORS/op-int.h here.
+	* Makefile.in (dist): Also link $(OP_INCLUDES).
+
+	* Makefile.in (DISTFILES): Include $(EXTRAS) in the list.
+
+2004-09-01  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTION/quad.cc: Allow function handle and inline functions.
+	Use a unique function name and delete it on exit.
+
+	* ov.h (is_inline_function): New virtual function.
+	* ov-fcn-inline.h (is_inline_function): New function.
+	* ov-base.h (is_inline_function): New function.
+
+	* ov-fcn-inline.cc (octave_fcn_handle::octave_fcn_handle):
+	Use unique_symbol_name and clear_function instead of manipulating
+	symbol table directly.
+
+	* variables.cc (unique_symbol_name): New function.
+	(clear_function): New function.
+	* variables.h: Provide decls.
+
+	* dynamic-ld.cc (do_clear_function): Rename from clear_function.
+
+2004-09-01  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-i8-i8.cc, OPERATORS/op-i16-i16.cc,
+	OPERATORS/op-i32-i32.cc, OPERATORS/op-i64-i64.cc,
+	OPERATORS/op-ui8-ui8.cc, OPERATORS/op-ui16-ui16.cc,
+	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-ui64-ui64.cc:
+	Define and install mixed assignment ops.
+	* op-int.h: Define mixed integer/double ops.
+	Define simple division ops.
+
+	* ov-complex.h (octave_complex_scalar): New typedef to simplify
+	various macros where naming consistency matters.
+
+2004-08-31  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-int.h (ss_pow, ms_el_pow, mm_el_pow): New power
+	functions.
+	(sm_el_pow): Return correct type.
+	(OCTAVE_SS_POW_OPS, OCTAVE_SM_POW_OPS, OCTAVE_MS_POW_OPS,
+	OCTAVE_MM_POW_OPS): New macros to define the power operator over
+	integer types.
+	(OCTAVE_SS_INT_OPS, OCTAVE_SM_INT_OPS, OCTAVE_MS_INT_OPS,
+	OCTAVE_MM_INT_OPS): Use the new macros for the power operators.
+	(OCTAVE_INSTALL_SS_INT_OPS, OCTAVE_INSTALL_MS_INT_OPS,
+	OCTAVE_INSTALL_MM_INT_OPS): Install new power functions.
+
+	* OPERATORS/op-int-conv.cc (INT_CONV_FUNCTIONS): Correct return
+	types for unsigned integer scalars and signed integer matrices.
+
+	* ov-type-conv.h (OCTAVE_TYPE_CONV_BODY3): Conversion betwen same
+	types returns the original value.
+
+	* bitfcns.cc (BITOP): Fix for mixed scalar/matrix ops. Allow
+	octave_range as an argument, by using class_name rather than
+	type_id to test.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.cc (pr_int): Also handle bank_format.
+	(octave_print_internal (std::ostream& os, const intNDArray<T>&,
+	bool, int)): Likewise.
+
+2004-08-31  David Bateman  <dbateman@free.fr>
+
+	* pr-output.cc (pr_int(std::ostream, const T&, int)):
+	New template function to print formatted integer types.
+	Instantiate it for all of the integer types.
+	(octave_print_internal (std::ostream, const intNDArray<T>&, bool,
+	int)): Use pr_int.  Align output up in columns, and check for
+	free_format or plus_format.
+	(octave_print_internal (std::ostream, const octave_int<T>&, bool)):
+	Use pr_int.  Check for free_format and plus_format.
+
+	* ls-hdf5.cc (hdf5_read_next_data): When importing hdf5 files,
+	allow structures and lists (for backward compatibility).  Also
+	allow importation of integer types into octave int and uint types.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* data.cc (fill_matrix, identity_matrix): Convert class name to
+	oct_data_conv::data_type and switch on that.
+	(identity_matrix (int, int)): New template.
+	(identity_matrix (int, int, const std::string&)): Use it.
+
+	* ov.h (octave_type_traits, octave_array_type_traits): Move here.
+	* oct-stream.cc: From here.
+
+2004-08-31  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fzeros, Fones, Feye): Update help text for optional
+	class argument.
+	(static octave_value identity_matrix (int, int, const std::string&)):
+	New function to create identity matrices with an arbitrary type.
+	(Feye): Call new version of identity matrix function, even for scalars.
+	(static octave_value fill_matrix (const octave_value_list&, double,
+	const char *)): Update to allow arbitrary classes of matrices to be
+	created.
+
+2004-08-31  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat5.cc (read_int): New function.
+
+	* oct-stream.cc (octave_base_stream::do_read,
+	octave_base_stream::read, octave_base_stream::write): Delete.
+	* oct-stream.h: Delete decls.
+
+	* oct-stream.cc (octave_stream::read): Handle block_size and
+	separate input/output types.
+	(octave_stream::write): Handle block_size and various input types.
+	(octave_type_traits, octave_array_type_traits):	New traits classes.
+	(do_read): New templates to read data and perform type conversion.
+	(octave_stream::write (const Array<T>&, int,
+	oct_data_conv::data_type, int, oct_mach_info::float_format),
+	do_write, write_int):
+	New templates to write ints and perform type conversion.
+	Instantiate for various Octave types.
+
+	* ov.cc (octave_value::write): New function.
+	* ov.h: Provide decl.
+	* ov-base.cc (octave_base_value::write): New function.
+	* ov-base.h: Provide decl.
+	* ov-complex.h (octave_complex::write): New function.
+	* ov-cx-mat.h (octave_complex_matrix::write): New function.
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::write): New function.
+	(OCTAVE_VALUE_INT_SCALAR_T::write): New function.
+	* ov-re-mat.h (octave_matrix::write): New function.
+	* ov-scalar.h (octave_scalar::write): New function.
+	* ov-str-mat.h (octave_char_matrix_str::write): New function.
+
+	* file-io.cc (Ffread): Handle block size, to/from format in
+	precision argument.
+	(Ffwrite): Handle block size in precision argument.
+
+2004-08-25  David Bateman  <dbateman@free.fr>
+
+	* ov-cell.cc (octave_cell::subsasgn): Delete elements of cell array
+	when type is "(" and rhs is empty.
+
+2004-08-09  John W. Eaton  <jwe@octave.org>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::index_vector,
+	OCTAVE_VALUE_INT_SCALAR_T::index_vector): New functions.
+
+2004-08-06  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-struct.cc: New file.
+	* ov-struct.h (octave_struct::resize (const dim_vector&)):
+	New function.
+	* oct-map.h (Octave_map::resize (const dim_vector&)): New function.
+	* ov-map.cc (Octave_map::reshape):
+	Correct return for same sized reshape.
+	(Octave_map::resize (const dim_vector&)): New function.
+	(concat (const Octave_map&, const Octave_map&, const Array<int>&)):
+	Complete concatenation function.
+	* Makefile.in (OP_XSRC): Include op-struct.cc in the list.
+
+2004-08-05  John W. Eaton  <jwe@octave.org>
+
+	* pt-stmt.h (tree_statement::set_command,
+	(tree_statement::set_expression): New functions.
+
+	* parse.y (param_list_beg): Handle pushing new symbol table
+	context for anonymous function handle parameter lists here.
+	(anon_fcn_handle): New non-terminal.
+	(expression): Include anon_fcn_handle here.
+	(make_anon_fcn_handle): New static function.
+
+2004-08-05  David Bateman  <dbateman@free.fr>
+
+	* ov.cc (octave_value::fcn_inline_value): New virtual function.
+	* ov.h (octave_value::fcn_inline_value): Provide decl.
+	* ov-base.cc (octave_base_value::fcn_inline_value): New function
+	* ov-base.h (octave_base_value::fcn_inline_value): Provide decl.
+	* ov-fcn-handle.cc (octave_fcn_handle::octave_fcn_handle
+	(const std::string&, const string_vector&, const std::string&),
+	octave_fcn_handle::convert_to_str_internal, Finline, Fargnames,
+	Fformula, Fvectorize): Delete.
+	(octave_fcn_handle::print_raw): Remove inline case.
+	* ov-fcn-handle.h (octave_fcn_handle::fcn_type,
+	octave_fcn_handle::octave_fcn_handle (const std::string&, const
+	string_vector&, const std::string&),
+	octave_fcn_handle::inline_fcn_name,
+	octave_fcn_handle::inline_fcn_text,
+	octave_fcn_handle::inline_fcn_arg_names,
+	octave_fcn_handle::is_inline,
+	octave_fcn_handle::convert_to_str_internal,
+	octave_fcn_handle::typ, octave_fcn_handle::iftext,
+	octave_fcn_handle::ifargs): Delete constructors,
+	functions, and data members (moved to ov-fcn-inline.h).
+	* Makefile.in: Include ov-fcn-inline.h and ov-fcn-inline.cc where
+	appropriate.
+	* ov-fcn-inline.h, ov-fcn-inline.cc: New class.
+
+2004-08-05  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-int.cc (octave_base_int_matrix<T>::save_ascii,
+	octave_base_int_matrix<T>::load_ascii,
+	octave_base_int_matrix<T>::save_binary,
+	octave_base_int_matrix<T>::load_binary,
+	octave_base_int_matrix<T>::save_hdf5,
+	octave_base_int_matrix<T>::load_hdf5,
+	octave_base_int_matrix<T>::try_narrowing_conversion,
+	octave_base_int_scalar<T>::print_raw,
+	octave_base_int_scalar<T>::save_ascii,
+	octave_base_int_scalar<T>::load_ascii,
+	octave_base_int_scalar<T>::save_binary,
+	octave_base_int_scalar<T>::load_binary,
+	octave_base_int_scalar<T>::save_hdf5,
+	octave_base_int_scalar<T>::load_hdf5):
+	Sprinkle with this-> as needed.
+
+	* Makefile.in (EXTRAS): New macro.  Move ov-base-int.cc here from
+	OV_INTTYPE_SRC.
+	(INCLUDES_FOR_INSTALL): New macro.
+	(install-inc, uninstall): Use it instead of INCLUDES.
+
+	* variables.h (symbol_exist): Default for type is now "any".
+
+2004-08-05  David Bateman  <dbateman@free.fr>
+
+	* ov-fcn-handle.cc (octave_fcn_handle (const std::string&,
+	const string_vector&, const std::string&)): New constructor for inline
+	function handles.
+	(octave_fcn_handle::print_raw): Allow inline functions to be printed.
+	(octave_fcn_handle::convert_to_str_internal): New function to allow
+	Fchar to work on inlined function handles.
+	(Finline, Fformula, Fargnames, Fvectorize): New functions.
+	* ov-fcn-handle.h (octave_fcn_handle (const std::string&,
+	const string_vector&, const std::string&)): Provide decl.
+	(octave_fcn_handle::convert_to_str_internal): Provide decl.
+	(fcn_type): New enum for the type of function handle.
+	(octave_fcn_handle::inline_fcn_text, octave_fcn_handle::is_inline,
+	octave_fcn_handle::inline_fcn_arg_names): New functions.
+	(octave_fcn_handle::typ, octave_fcn_handle::iftext,
+	octave_fcn_handle::ifargs): New private variables for inline functions.
+
+2004-08-04  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (fcn_handle):
+	Recognize '@' FCN_HANDLE rather than just FCN_HANDLE.
+	Decrement lexer_flags.looking_at_function_handle here.
+	* lex.h (lexical_feedback::looking_at_function_handle):
+	New data member.
+	(lexical_feedback::init): Initialize it.
+	* lex.l (handle_identifier): Only reject keywords if we are
+	looking at a function handle.
+	("@"): Recognize this separately from what follows.
+	Increment lexer_flags.looking_at_function_handle here.
+
+	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle
+	(octave_function*, const std::string)): Delete.
+	* ov.h, ov.cc (octave_value::octave_value (octave_function *)): Delete.
+	(octave_value::octave_value (octave_function *, const std::string)):
+	Delete.
+
+	* ov-fcn-handle.h (octave_fcn_handle::fcn): Now octave_value, not
+	pointer to octave_function.
+	(octave_fcn_handle::octave_fcn_handle (const octave_value&, const
+	std::string)): New constructor.
+	* variables.cc (lookup_function): Return octave_value, not pointer
+	to octave_function.  Change all uses.
+	(lookup_user_function): Return octave_value, not pointer
+	to octave_user_function.  Change all uses.
+
+2004-08-03  John W. Eaton  <jwe@octave.org>
+
+	* ov-usr-fcn.cc (octave_user_fcn::do_multi_index_op): Call
+	install_automatic_vars here.
+	(octave_user_fcn::octave_user_fcn): Not here.
+	(install_automatic_vars): Don't mark argn_sr, nargin_sr,
+	nargout_sr, or varargin_sr as static.
+
+	* oct-stream.cc (octave_scan): Avoid need for pushing two
+	characters back on the input stream.
+
+2004-08-02  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_scan): For %i format, recognize numbers
+	with leading 0x or 0X as hex and leading 0 as octal.
+
+	* OPERATORS/op-fcn-handle.cc: Delete.
+	* Makefile.in (OP_XSRC): Delete it from the list.
+	* pr-output.cc (octave_print_internal (std::ostream&, const
+	std::string&, bool, int): New function.
+	* ov-fcn-handle.cc (octave_value::subsref): New function.
+	* ov-fcn-handle.h (class fcn_handle_elt, class fcn_handle_array):
+	Delete.
+	(class octave_fcn_handle): Derive from octave_base_value, not
+	octave_base_matrix<fcn_handle_array>.
+
+	* ov-cx-mat.cc (try_narrowing_conversion): Also allow complex to
+	real conversion for N-d arrays.
+
+2004-07-30  John W. Eaton  <jwe@octave.org>
+
+	* lex.l (<COMMAND_START>[^#% \t\r\n\;\,\"\'][^ \t\r\n\;\,]*{S}*):
+	Also recognize \r as a word list separator.
+
+2004-07-27  John W. Eaton  <jwe@octave.org>
+
+	* bitfcns.cc (DO_BITSHIFT): Pass mask to bitshift.
+	(bitshift (double, int, EIGHT_BYTE_INT): New arg, mask.
+	(DO_UBITSHIFT, DO_SBITSHIFT): Use bitshfit, not operator >>.
+	Use nbits function from octave_int type to set bits_in_type.
+
+	* ov-struct.cc (Fisfield): Only print usage message if number of
+	arguments is incorrect.  Return false for invalid arguments.
+	From Andy Adler <adler@site.uottawa.ca>.
+
+2004-07-27  David Bateman  <dbateman@free.fr>
+
+	* Cell.cc (Cell::index): Quit early if an error occurs when
+	creating index vector object.
+
+	* ov-int8.cc, ov-int16.cc, ov-int32.cc, ov-int64.cc, ov-uint8.cc,
+	ov-uint16.cc, ov-uint32.cc, ov-uint64.cc (HDF5_SAVE_TYPE): Define
+	for HDF5 native format for the type.
+
+	* ov-base-int.h (save_ascii, save_binary, load_binary, save_hdf5):
+	Delete unused arguments.
+
+	* ov-base-int.cc (octave_base_int_matrix::save_ascii,
+	octave_base_int_matrix::save_binary,
+	octave_base_int_scalar::save_ascii,
+	octave_base_int_scalar::save_binary,
+	octave_base_int_scalar::save_hdf5): Delete unused argument.
+
+	* ov-base-int.cc (octave_base_int_matrix::save_binary,
+	octave_base_int_matrix::load_binary,
+	octave_base_int_matrix::save_hdf5,
+	octave_base_int_matrix::load_hdf5,
+	octave_base_int_scalar::save_ascii,
+	octave_base_int_scalar::load_ascii,
+	octave_base_int_scalar::save_binary,
+	octave_base_int_scalar::load_binary,
+	octave_base_int_scalar::save_hdf5,
+	octave_base_int_scalar::load_hdf5): Implement missing functions.
+
+2004-07-23  David Bateman  <dbateman@free.fr>
+
+	* ov-intx.h (OCTAVE_VALUE_INT_MATRIX_T::array_value,
+	OCTAVE_VALUE_INT_SCALAR_T::array_value): new methods to extract array
+	value from integer types.
+
+	* bitfcns.cc (BITOPX): New Macro renamed from BITOP.
+	(BITOP): Alter to allow different types and call BITOP appropriately.
+	(DO_SBITSHIFT, DO_UBITSHIFT): New macros for signed, unsigned
+	bitshifts.
+
+	(DO_BITSHIFT): Test for shift of more bits than in type, which is
+	undefined.  Generalize to allow double args as well.
+	(Fbitshift): Add int and double types.
+	(Fbitmax): Return 53 bit value which conforms to IEEE754 double
+	mantissa.
+	(Fintmax, Fintmin): New functions.
+	(Fbitget, Fbitset, Fbitcmp): Delete.
+
+	* OPERATORS/op-int.h: Add sm_el_pow function
+
+	* ops.h (CATOPDECL, DEFCATOPX, DEFCATOP, DEFCATOP_FB, DEFNDCATOP_FN,
+	CATOP_NONCONFORMANT, INSTALL_CATOP): New macros.
+
+	* OPERATORS/op-b-b.cc, OPERATORS/op-b-bm.cc, OPERATORS/op-bm-b.cc,
+	OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc, OPERATORS/op-chm.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
+	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc,
+	OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc, OPERATORS/op-m-cm.cc,
+	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
+	OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
+	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
+	OPERATORS/op-str-m.cc, OPERATORS/op-str-s.cc (CATOPDECL, DEFCATOPX,
+	DEFCATOP, DEFCATOP_FB, DEFNDCATOP_FN, CATOP_NONCONFORMANT,
+	INSTALL_CATOP): Use them to define concatenation functions.
+
+	* OPERATORS/op-int.h (OCTAVE_CONCAT_FN, OCTAVE_INSTALL_CONCAT_FN):
+	New macros to define and install concatentaion functions for int/uint
+	types.
+
+	* TEMPLATE-INST/Array-tc.cc (INSTANTIATE_ARRAY_CAT): Delete.
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
+	Also append empty elements to the list of elements to be parsed.
+	(tree_matrix::rvalue): Use new concatenation binary operators.
+
+	* data.cc (cat_add_dims): Delete (now dim_vector::concat).
+	(do_cat): Use new concatenation binary operators.
+
+	* ov-typeinfo.cc (cat_op_fcn): Instantiate the array of cat functions.
+	(register_cat_op, do_register_cat_op, do_lookup_cat_op): New functions.
+	(cat_ops): Lookup table of binary concatentaion operators.
+
+	* ov-typeinfo.h (lookup_cat_op): New function.
+
+	* ov.cc (gripe_cat_op, gripe_cat_op_conv, do_cat_op): New functions.
+
+	* ov.h (cat_op_fcn): Definition.
+	(resize, do_cat_op): New functions.
+
+	* ov-intx.h (resize): New_function
+
+	* version.h (OCTAVE_API_VERSION): Bump version to api-v9.
+
+	* Cell.cc, Cell.h, oct-map.cc, oct-map.h (cat): Delete.
+	(concat): New function.
+
+	* Cell.cc, Cell.h (insert): New function
+
+	* ov-base.cc, ov-base.h, ov-scalar.h, ov-complex.h, ov-bool.h,
+	ov-range.h, ov-base-mat.h, (resize): New function.
+
+2004-07-23  John W. Eaton  <jwe@octave.org>
+
+	* symtab.cc (whos_parameter): Move decl here, from symtab.h.
+
+2004-07-23  Oyvind Kristiansen  <oyvinkri@stud.ntnu.no>
+
+	* symtab.cc (symbol_record::subsymbols_list): New method.
+	(symbol_record::maybe_list): Call to subsymbols_list and merge
+	result with the original list of symbols.
+
+	* symtab.cc (symbol_record::make_dimensions_string): New method.
+	(symbol_record::print_symbol_info_line): Print N-d info.  Output
+	for long format now under control of format string.
+	(symbol_table::maybe_list): Headers to whos listing updated.
+	Also print footer info.
+	(symbol_table::print_descriptor): Method printing the
+	header of whos listings.
+	(symbol_table::parse_whos_line_format): New method.
+	(whos_line_format, Vwhos_line_format): New built-in variables.
+	(symbols_of_symtab): DEFVAR them.
+	(symbol_record::nelem, symbol_record::symbol_def::nelem,
+	symbol_record::byte_size, symbol_record::symbol_def::byte_size):
+	New methods.
+	(symbol_record::dimensions_string_req_first_space): New	method.
+	(symbol_record::dimensions_string_req_total_space): New	method.
+	* symtab.h (whos_parameter): New struct.  Container for one
+	parameter in whos_line_format.
+
+2004-07-22  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Fix doc string.
+	* ov-struct.cc (Fstruct): Likewise.
+	* symtab.cc (Fdebug_symtab_lookups): Likewise.
+
+2004-07-22  David Bateman  <dbateman@free.fr>
+
+	* data.cc (Fsize): Return 1 for dimensions exceeding ndim.
+
+	* ov.cc (octave_value::octave_value (const ArrayN<double>)):
+	New constructor.
+	* ov.h: Provide decl.
+	* ov-cx-mat.h (octave_complex_matrix (const ArrayN<Complex>&)):
+	New constructor.
+	* ov-re-mat.h (octave_complex_matrix (const ArrayN<double>&)):
+	New constructor.
+
+	* ov-re-mat.h (octave_matrix(const ArrayN<double>&)): New constructor
+	* pt-loop.cc (DO_ND_LOOP): New macro for use of NDArray in for loop.
+	(tree_simple_for_command::eval): Use it, and allow iteration over
+	cell arrays.
+
+2004-07-12  John W. Eaton  <jwe@octave.org>
+
+	* ov-intx.h: N-d array and scalar extractor functions take no args.
+
+	* ov.h (octave_value::int8_scalar_value,
+	octave_value::int16_scalar_value, octave_value::int32_scalar_value,
+	octave_value::int64_scalar_value, octave_value::uint8_scalar_value,
+	octave_value::uint16_scalar_value, octave_value::uint32_scalar_value,
+	octave_value::uint64_scalar_value): New functions.
+	* ov-base.cc (octave_base_value::int8_scalar_value,
+	octave_base_value::int16_scalar_value,
+	octave_base_value::int32_scalar_value,
+	octave_base_value::int64_scalar_value,
+	octave_base_value::uint8_scalar_value,
+	octave_base_value::uint16_scalar_value,
+	octave_base_value::uint32_scalar_value,
+	octave_base_value::uint64_scalar_value): New functions.
+	* ov-base.h: Provide decls.
+
+	* lex.l: (Vtoken_count): New static variable.
+	(COUNT_TOK_AND_RETURN): New macro.  Use it everywhere a token is
+	returned to the parser.
+	(F__token_count__): New function.
+
+2004-06-25  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-int-conv.cc: Add conversions for range type.
+
+2004-06-17  John W. Eaton  <jwe@octave.org>
+
+	* bitfcns.cc (bitfcns): New file.
+	* Makefile.in (DIST_SRC): Add it to the list.
+
+2004-06-16  John W. Eaton  <jwe@octave.org>
+
+	* OPERATORS/op-int.h: New file.
+	* OPERATORS/op-i16-i16.cc, OPERATORS/op-i8-i8.cc,
+	OPERATORS/op-ui32-ui32.cc, OPERATORS/op-i32-i32.cc,
+	OPERATORS/op-int-conv.cc, OPERATORS/op-ui64-ui64.cc,
+	OPERATORS/op-i64-i64.cc, OPERATORS/op-ui16-ui16.cc,
+	OPERATORS/op-ui8-ui8.cc: Use new macros from op-int.h.
+
+2004-06-14  John W. Eaton  <jwe@octave.org>
+
+	* pr-output.h, pr-output.cc (octave_print_conv): New traits class.
+	(template <class T> void octave_print_internal (std::ostream&,
+	const intNDArray<T>&, bool, int),
+	(template <class T> void octave_print_internal (std::ostream&,
+	const octave_int<T>&, bool)): New template functions.
+	Instantiate versions for new int types.
+
+	* ov-typeinfo.h (octave_value_typeinfo::type_conv_ops):
+	New data member.
+	(octave_value_typeinfo::register_type_conv_op,
+	octave_value_typeinfo::lookup_type_conv_op,
+	octave_value_typeinfo::do_register_type_conv_op,
+	octave_value_typeinfo::do_lookup_type_conv_op): New functions.
+
+	* ov-re-mat.cc (Fdouble): New function.
+
+	* ov-range.h (octave_range::reshape): Reshape array_value, not
+	matrix_value.
+
+	* ov-base-scalar.h (octave_base_scalar<ST>::all,
+	octave_base_scalar<ST>::any, octave_base_scalar<ST>::is_true): Use
+	ST() instead of 0.0.
+
+	* ov-base-mat.h (octave_base_matrix<MT>::byte_size): New function.
+
+	* ops.h (INSTALL_COLNVOP, DEFCONVFNX, DEFDBLCONVFN, DEFCONVFN,
+	DEFCONVFN2): New macros.
+
+	* DLD-FUNCTIONS/filter.cc (Ffilter): Kluge type conversions.
+
+	* ov.cc (install_types): Register new integer types.
+
+	* ov.h, ov.cc (octave_value::octave_value (const octave_int8&),
+	octave_value::octave_value (const octave_uint8&),
+	octave_value::octave_value (const octave_int16&),
+	octave_value::octave_value (const octave_uint16&),
+	octave_value::octave_value (const octave_int32&),
+	octave_value::octave_value (const octave_uint32&),
+	octave_value::octave_value (const octave_int64&),
+	octave_value::octave_value (const octave_uint64&),
+	octave_value::octave_value (const int8NDArray&),
+	octave_value::octave_value (const uint8NDArray&),
+	octave_value::octave_value (const int16NDArray&),
+	octave_value::octave_value (const uint16NDArray&),
+	octave_value::octave_value (const int32NDArray&),
+	octave_value::octave_value (const uint32NDArray&),
+	octave_value::octave_value (const int64NDArray&),
+	octave_value::octave_value (const uint64NDArray&)):
+	New constructors.
+
+	* ov.h (octave_value::internal_rep): New function.
+	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Also define
+	static_type_id, static_type_name, and static_class_name
+	functions.
+
+	* Cell.h (Cell::reshape (const dim_vector&)): New forwarding
+	function for return type conversion.
+
+	* ov-int16.cc, ov-int16.h, ov-int32.cc, ov-int32.h, ov-int64.cc,
+	ov-int64.h, ov-int8.cc, ov-int8.h, ov-uint16.cc, ov-uint16.h,
+	ov-uint32.cc, ov-uint32.h, ov-uint64.cc, ov-uint64.h, ov-uint8.cc,
+	ov-uint8.h, ov-type-conv.h, ov-int-traits.h,
+	OPERATORS/op-int-conv.cc, OPERATORS/op-double-conv.cc,
+	OPERATORS/op-i16-i16.cc, OPERATORS/op-i32-i32.cc,
+	OPERATORS/op-i64-i64.cc, OPERATORS/op-i8-i8.cc,
+	OPERATORS/op-ui16-ui16.cc, OPERATORS/op-ui32-ui32.cc,
+	OPERATORS/op-ui64-ui64.cc, OPERATORS/op-ui8-ui8.cc: New files.
+	Makefile.in: Add them to the appropriate lists.
+
+2004-06-03  John W. Eaton  <jwe@octave.org>
+
+	* ov-fcn-handle.h (octave_function_handle::is_matrix_type,
+	octave_function_handle::is_numeric_type,
+	octave_function_handle::is_constant,
+	octave_function_handle::is_true): New functions.
+	(octave_function_handle::is_defined): Delete (inherited version is
+	OK).
+
+2004-06-03  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/filter.cc: Fix for length(a)=1 && length(b)=2 case.
+
+2004-05-07  John W. Eaton  <jwe@octave.org>
+
+	* ov.cc (octave_value::print_with_name): Only print name tag if
+	Vprint_answer_id_name is true.
+
+	* octave.cc (intern_argv): Insert __nargin__ in top_level_sym_tab
+	instead of making it a builtin variable.  Mark it static.
+	* ov-usr-fcn.cc (octave_user_function::install_automatic_vars):
+	Mark local automatic variables static.
+
+2004-04-30  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (octave_base_stream::clearerr): New function.
+	(octave_stream::clearerr): New function.
+	(seek (long, int)): Call clearerr here.
+	* oct-stdstrm.h (octave_stdiostream::clear): New function.
+	* c-file-ptr-stream.h (c_file_ptr_buf::clear,
+	i_c_file_ptr_stream::clear, o_c_file_ptr_stream::clear,
+	io_c_file_ptr_stream::clear): New functions.
+
+2004-04-29  David Bateman  <dbateman@free.fr>
+
+	* load-save.cc (Fload, Fsave): Accept -mat as well as -mat-binary.
+
+2004-04-27  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/sort.cc: Add missing "class" keywords to template
+	instantiations.
+
+2004-04-22  John W. Eaton  <jwe@octave.org>
+
+	* pt-plot.cc (Fclearplot): Temporarily turn off automatic_replot.
+	Clear display after resetting title, labels, etc.
+
+2004-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-colon.cc (tree_colon_expression::rvalue): Also check for
+	error_state after evaluating each subexpression.
+
+2004-04-22  David Bateman  <dbateman@free.fr>
+
+	* ov-base-scalar.h (octave_base_scalar<ST>::permute): New function.
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::is_true): Make N-d aware.
+
+2004-04-22  John W. Eaton  <jwe@octave.org>
+
+	* oct-stream.cc (printf_value_cache::curr_value): Now NDArray.
+	(printf_value_cache::double_value): Extract N-d array, not Matrix.
+
+2004-04-21  John W. Eaton  <jwe@octave.org>
+
+	* parse.y (function2): Pass id name to frob_function.  Delete id.
+	(frob_function): Accept function name instead of identifier.
+	Don't try to rename symbol table entry.  Lookup symbol record for
+	function name here.  Insert name in symbol table if needed.
+	Operate on symbol record instead of identifier.
+
+2004-04-21  David Bateman  <dbateman@free.fr>
+
+	* DLD_FUNCTIONS/fft.cc(do_fft): Correctly initialize the variable dim
+	for scalar arguments.
+
+	* DLD-FUNCTIONS/minmax.cc: Handle single vector arg correctly.
+
+2004-04-20  John W. Eaton  <jwe@octave.org>
+
+	* ls-mat-ascii.cc (read_mat_ascii_data): Prepend "X" to keywords.
+	Only drop text after last "." in name.
+
+	* lex.l (is_keyword): New function.
+	(Fiskeyword): Use it.
+	* lex.h: Provide decl.
+
+	* lex.l (is_keyword_token): Rename from is_keyword.
+
+2004-04-16  John W. Eaton  <jwe@octave.org>
+
+	* file-io.cc (maybe_warn_interface_change): New function.
+	(fopen_mode_to_ios_mode): Use it.
+
+2004-04-16  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* file-io.cc (fopen_mode_to_ios_mode):  Default to binary mode.
+	(Ffopen): Document 't' and 'b' mode flags.
+
+2004-04-16  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (DLD_XSRC): Add gcd.cc to the list.
+
+2004-04-16  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/gcd.cc: New file.
+
+2004-04-15  David Bateman  <dbateman@free.fr>
+
+	* ov-ch-mat.h: convert_to_str_interal returns charNDArray.
+
+2004-04-12  John W. Eaton  <jwe@octave.org>
+
+	* version.h (OCTAVE_BUGS_STATEMENT): Bug list is now bug@octave.org.
+
+2004-04-08  John W. Eaton  <jwe@octave.org>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Quit early
+	if an error occurs when creating index vector object.
+
+	* ov.cc (octave_value::numeric_assign): Always call maybe_mutate
+	on return value.
+
+2004-04-06  David Bateman  <dbateman@free.fr>
+
+  	* DLD_FUNCTIONS/sort.cc: Use the new template sort class, adapt for
+	N-d arrays, and allow optional dim argument.
+
+	* DLD_FUNCTIONS/fftn.cc: Save result of transpose operation.
+	Check for failure of transpose.
+
+2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool.h (octave_bool::bool_array_value): New function.
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): Don't allow
+	expressions like x(i)(j) or x(i){j} when x is empty.
+
+	* load-save.cc (get_file_format): Error if file does not exist.
+	(Fload): Also complain here if specific file type is specified and
+	file does not exist.
+
+2004-04-02  Quentin Spencer  <qspencer@ieee.org>
+
+	* parse.y: Use persistent instead of static in warnings messages.
+
+2004-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-decl.cc (tree_static_command::do_init): Initialize to empty
+	matrix by default.
+
+2004-04-02  David Bateman  <dbateman@free.fr>
+
+	* ov-re-mat.cc (octave_matrix::convert_to_str_internal):
+	Return charNDArray.
+	* ov-bool-mat.cc (octave_bool_matrix::convert_to_str_internal):
+	Call array_value.
+
+	* DLD-FUNCTIONS/besselj.cc, DLD-FUNCTIONS/betainc.cc,
+	DLD-FUNCTIONS/gammainc.cc, DLD-FUNCTIONS/minmax.cc,
+	DLD-FUNCTIONS/filter.cc:
+	Convert for N-d array, better Matlab compatibility.
+
+	* load-save.cc (Fload): Better handling of non existent files.
+
+2004-03-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-list.cc (octave_list::subsref): Correctly create return value.
+	Return comma-separate list if {-style indexing extracts more than
+	one value.
+
+2004-03-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.57.
+	(OCTAVE_API_VERSION): Now api-v8.
+
+	* ov-cell.cc (octave_cell::save_hdf5): Handle empty cells.
+	(octave_cell::load_hdf5): Likewise.
+
+2004-03-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): If empty,
+	allow type conversion when indexing with "{" and ".".
+
+2004-03-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (init_format_state): Also set compact_format.
+	(pr_col_num_header): Print one newline character before column
+	headers for compact format.
+
+2004-03-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_WWW_STATEMENT): New macro.
+	(OCTAVE_STARTUP_MESSAGE): Include it here.
+	(OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS): And here.
+
+	* octave.cc (verbose_usage): Use OCTAVE_WWW_STATEMENT here.
+
+	* DLD-FUNCTIONS/find.cc (find_nonzero_elem_idx): If there are no
+	nonzero elements, return [](0x1) or [](1x0), not [](0x0).
+	Correctly preserve orientation for row vectors.
+
+2004-03-08  Petter Risholm  <risholm@idi.ntnu.no>
+
+	* data.cc (do_cat): Check for length of args before getting dimension.
+	New arg, fname.  Print usage message corresponding to fname.
+	(Fcat): Pass "cat" as fname arg to do_cat.
+	(Fhorzcat): Pass "horzcat" as fname arg to do_cat.
+	(Fvertcat): Pass "vertcat" as fname arg to do_cat.
+
+2004-03-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.56.
+	(OCTAVE_API_VERSION): Now api-v7.
+
+2004-03-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-struct.cc (Frmfield): New function
+
+	* oct-map.h (Octave_map::contains): Return bool, not int.
+
+	* ov-cell.cc (Fiscellstr): No error if arg is not a cell array.
+	(Fcellstr): Return arg if it is already a cell array of character
+	strings.
+
+2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool.cc (octave_bool::load_hdf5, octave_bool::save_hdf5):
+	Avoid unnecessary casts.
+	* ov-bool-mat.cc (octave_bool_matrix::load_hdf5,
+	octave_bool_matrix::save_hdf5): Likewise.
+	* ov-cell.cc (octave_cell::load_hdf5, octave_cell::save_hdf5):
+	Likewise.
+	* ov-complex.cc (octave_complex::load_hdf5,
+	octave_complex::save_hdf5): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::load_hdf5,
+	octave_complex_matrix::save_hdf5): Likewise.
+	* ov-range.cc (octave_range::load_hdf5, octave_range::save_hdf5):
+	Likewise.
+	* ov-re-mat.cc (octave_matrix::load_hdf5, octave_matrix::save_hdf5):
+	Likewise.
+	* ov-scalar.cc (octave_scalar::load_hdf5, octave_scalar::save_hdf5):
+	Likewise.
+	* ov-str-mat.cc (octave_char_matrix_str::load_hdf5,
+	octave_char_matrix_str::save_hdf5): Likewise.
+
+2004-03-03 David Bateman  <dbateman@free.fr>
+
+	* ov-cell.cc (octave_cell::save_hdf5, octave_cell::load_hdf5):
+	Make N-d aware.
+
+2004-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Delete spaces surrounding = in %name-prefix directive.
+
+2004-03-01  Petter Risholm  <risholm@idi.ntnu.no>
+
+	* Cell.cc (Cell::cat): New function.
+	* Cell.h: Provide decl.
+
+	* oct-map.cc (Octave_map::cat): New function.
+	* oct-map.h: Provide decl.
+
+	* data.cc (Fcat): Speedup implementation.
+
+	* data.cc (Fhorzcat, Fvertcat): New functions.
+
+	* Array-tc.cc: Instantiate cat function.
+
+2004-03-01  David Bateman  <dbateman@free.fr>
+
+	* ls-hdf5.cc (save_hdf5_empty, load_hdf5_empty): New functions
+	to save/load empty matrices keeping their dimensions.
+	* ls-hdf5.h (save_hdf5_empty, load_hdf5_empty): Provide decls.
+
+	* ov-re-mat.cc (save_hdf5, load_hdf5): Cleanup, check empty matrix.
+	* ov-cx-mat.cc (save_hdf5, load_hdf5): Ditto.
+	* ov-bool-mat.cc (save_hdf5, load_hdf5): Ditto.
+
+	* ov-str-mat.cc (save_ascoo, load_ascii, save_binary,
+	load_binary, save_hdf5, load_hdf5): Cleanup, check empty matrix,
+	and save/load N-d arrays.
+
+2004-02-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (execute_startup_files): Don't find current directory
+	for absolute name of local_rc until after executing home_rc.
+
+2004-02-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (input_event_hook): Return type is now int.  Return 0.
+
+	* file-io.cc (do_stream_open): Don't call ::error if stream can't
+	be created.  Don't call ::fopen if arch is invalid.  Set error
+	state for stream if fopen fails.
+	* oct-stream.h (octave_stream::error (const char *)): New function.
+	(octave_stream::error (const std::string&)): Now public.
+
+2004-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Fftell): Return long integer instead of streamoff_array.
+	(do_stream_open): Create octave_stdiostream instead of octave_fstream.
+
+	* oct-fstrm.cc (octave_fstream::seek, octave_fstream::tell):
+	Always fail.  Signatures now match C library functionsb.
+	* oct-iostrm.cc (octave_base_iostream::seek,
+	octave_base_iostream::tell): Likewise.
+	* oct-strstrm.cc (octave_base_strstream::seek,
+	octave_base_strstream::tell): Likewise.
+
+	* oct-stream.cc (octave_stream::seek, octave_stream::tell):
+	Signatures now match C-library functions.
+
+	* oct-stdstrm.cc (octave_stdiostream::seek, octave_stdiostream::tell):
+	Call io_c_file_ptr_stream::seek and tell.  Signatures now match
+	C-library functions.
+
+	* c-file-ptr-stream.h (c_file_ptr_buf::seek, c_file_ptr_buf::tell):
+	New functions.
+	(i_c_file_ptr_stream::seek, i_c_file_ptr_stream::tell): Likewise.
+	(o_c_file_ptr_stream::seek, o_c_file_ptr_stream::tell): Likewise.
+	(io_c_file_ptr_stream::seek, io_c_file_ptr_stream::tell): Likewise.
+
+2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.55.
+	(OCTAVE_API_VERSION): Now api-v6.
+
+	* sighandlers.cc (sigfpe_handler, sigpipe_handler):
+	Don't increment	octave_interrupt_state if it is less than 0.
+	(sigint_handler): If octave_interrupt_state is less than zero,
+	reset it.
+
+	* pt-except.cc (do_catch_code): Call OCTAVE_QUIT here so the catch
+	code won't run if an interrupt is pending.  Don't run catch code
+	if octave_interrupt_state is less than zero.
+
+2004-02-20  Per Persson  <persquare@mac.com>
+
+	* Makefile.in (OCT_LINK_DEPS, OCTINTERP_LINK_DEPS):
+	Include	$(LIBS) in the list before $(FLIBS).
+
+2004-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (octave_print_internal (std::ostream&, const
+	Range&, bool, int)): Don't print values beyond the limits of the
+	range.
+
+	* sighandlers.cc (sigint_handler): Print message after two
+	consecutive interrupts, dump core after three or more.
+
+	* load-save.cc (dump_octave_core): Handle core size limit.
+	Rename from save_user_variables.  Change all callers.
+	(Fload, dump_octave_core, Fsave): Open HDF5 fils in binary mode.
+	(do_save): Extract switch over file types to separate function.
+
+	* load-save.cc (Voctave_core_file_limit): New variable.
+	(octave_core_file_limit): New function.
+	(symbols_of_load_save): Add DEFVAR for octave_core_file_limit.
+
+	* load-save.cc (Voctave_core_file_name): New variable.
+	(octave_core_file_name): New function.
+	(symbols_of_load_save): Add DEFVAR for octave_core_file_name.
+
+	* load-save.cc (Voctave_core_file_format):
+	Rename from Voctave_core_format.
+	(octave_core_file_format): Rename from octave_core_format.
+	(symbols_of_load_save): Fix DEFVAR to match.
+
+2004-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc (Fsizeof): New function.
+
+	* ov.h (octave_value::byte_size): New function.
+	* ov-base.h (octave_base_value::byte_size): New function.
+	* ov-base-scalar.h (octave_base_scalar::byte_size): New function.
+	* ov-bool-mat.h (octave_bool_matrix::byte_size): New function.
+	* ov-ch-mat.h (octave_char_matrix::byte_size): New function.
+	* ov-cx-mat.h (octave_complex_matrix::byte_size): New function.
+	* ov-re-mat.h (octave_matrix::byte_size): New function.
+	* ov-range.h (octave_range::byte_size): New function.
+	* ov-cell.cc (octave_cell::byte_size): New function.
+	* ov-cell.h: Provide decl.
+	* ov-struct.cc (octave_struct::byte_size): New function.
+	* ov-struct.h: Provide decl.
+	* ov-streamoff.h (octave_streamoff::byte_size): New function.
+	* ov-list.cc (octave_list::byte_size): New function.
+	* ov-list.h: Provide decl.
+
+	* xpow.cc (elem_xpow (const Matrix&, double)):
+	Convert both operands to Complex if any element of A is negative.
+	(elem_xpow (const NDArray&, double)): Likewise.
+
+2004-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (Voctave_core_format): New static_variable.
+	(octave_core_format): New function.
+	(symbols_of_load_save): Add DEFVAR for octave_core_format.
+	(get_save_format): Rename from get_default_save_format.
+	Pass name of format as arg.  New optional arg, fallback_format.
+	Change all uses.
+	(save_user_variables): Use pass Voctave_core_format to
+	get_save_format here.  Pass LS_BINARY as fallback_format.
+
+	* sighandlers.cc (my_friendly_exit): New optional arg, save_vars.
+	Only call save_user_variables if save_vars is true.
+	(sigint_handler): If interactive, offer to abort and save
+	workspace after three consecutive interrupts.
+	(sigint_handler, sigpipe_handler, sigfpe_handler):
+	Increment octave_interrupt_handler instead of setting it to 1.
+
+2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.54.
+	(OCTAVE_API_VERSION): Now api-v5.
+
+	* Makefile.in (DLD_XSRC): Always include fftw_wisdom.cc.
+
+	* DLD-FUNCTIONS/fftw_wisdom.cc:
+	Rename from DLD-FUNCTIONS/fft_wisdom.cc.
+	(Vfftw_wisdom_prog): Delete extern decl.
+	(Ffftw_wisdom): Rename from Ffft_wisdom.
+	Use Vfftw_wisdom_prog instead of Vwisdom_prog.
+	Always define function.  Signal error if not configured to use FFTW3.
+
+	* defaults.cc (symbols_of_defaults): Rename WISDOM_PROGRAM to be
+	FFTW_WISDOM_PROGRAM.
+	(Vfftw_wisdom_prog): Rename from Vwisdom_prog.
+	(fftw_wisdom_program): Rename from wisdom_program.
+	For simplicity, always define FFTW_WISDOM_PROGRAM even when not
+	using fftw3.
+	(set_default_wisdom_prog): Look for OCTAVE_FFTW_WISDOM_PROGRAM in
+	the environment instead of OCTAVE_WISDOM_PROGRAM.
+	(set_default_fftw_wisdom_prog): Rename from set_default_wisdom_prog.
+	* defaults.h.in (Vfftw_wisdom_prog): Provide extern decl.
+
+2004-02-16 David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/fft.cc: Adapt for Nd arrays, combine with ifft.cc.
+	* DLD-FUNCTIONS/ifft.cc: Delete.
+	* DLD-FUNCTIONS/fft2.cc: Adapt for Nd arrays, combine with ifft.cc.
+	* DLD-FUNCTIONS/ifft2.cc: Delete.
+	* DLD-FUNCTIONS/fftn.cc: New function for Nd FFT and inverse FFT.
+	* DLD-FUNCTIONS/fft_wisdom.cc: New function to manipulate FFTW
+	wisdom.
+
+	* Makefile.in: Remove ifft.cc and ifft2.cc.  Add fftn.cc and
+	ifftn.cc.  Make building of fft-wisdom.cc conditional on the
+	value of FFTW_LIBS.
+	* defaults.cc (Vwisdom_prog): New variable
+	(set_default_wisdom_prog, wisdom_prog): New functions.
+	(symbols_of_defaults): Add DEFVAR for wisdom_prog.
+
+2004-02-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-list.cc (octave_list::subsasgn): Call assign for Cell objects
+	here, not the base octave_value::assign.
+
+2004-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (yywrap): Don't #undef this symbol.
+
+2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* pt-mat.cc: Make [,] concatenation work for N-d arrays.
+
+2004-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (do_cat): Merge with Fcat.
+
+2004-02-15  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ov-cell.cc (Fstruct2cell): New function.
+
+2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTINTERP_LINK_DEPS, OCT_LINK_DEPS): Always define.
+
+	* oct-conf.h.in: Add OCTAVE_CONF_DL_LD, OCTAVE_CONF_DL_LDFLAGS,
+	and OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS.
+	Delete OCTAVE_CONF_MKOCTFILE_SH_LDFLAGS.
+
+	* toplev.cc (octave_config_info): Delete MKOCTFILE_SH_LDFLAGS.
+	Add DL_LD, DL_LDFLAGS, and MKOCTFILE_DL_LDFLAGS to the struct.
+
+2004-02-14  Per Persson  <persquare@mac.com>
+
+	* Makefile.in (%.oct): Use DL_LD instead of SH_LD to build .oct files.
+
+2004-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-scalar.h (octave_base_scalar::squeeze): New function.
+
+2004-02-13  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* data.cc (Fcat): New function.
+	* data.cc (do_cat): New function.
+	* data.cc (cat_add_dims): New function.
+
+2004-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (main_loop): Call octave_parse, not yyparse.
+	* octave.cc (octave_main): Increment octave_debug, not yydebug.
+	* parse.y (%name-prefix): New directive, set to "octave_".
+	* parse.h: Provide declarations for octave_lex and octave_parse
+	instead of yylex and yyparse.
+	* lex.l (%option prefix): New directive, set to "_octave".
+	Define yylval to be octave_lval.
+	Move definitions of YY_INPUT, YY_FATAL_ERROR, TOK_RETURN,
+	TOK_PUSH_AND_RETURN, BIN_OP_RETURN, XBIN_OP_RETURN here.
+	* lex.h: From here.
+
+2004-02-07  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ov-struct.cc (Fcell2struct): New function.
+	(cell2struct_check_args, cell2struct_construct_idx): Likewise.
+
+2004-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-scalar.h (octave_scalar::empty_clone):
+	Return empty octave_matrix, not an octave_scalar object.
+	* ov-complex.h (octave_complex::empty_clone):
+	Return empty octave_complex_matrix, not an octave_complex object.
+
+2004-02-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.h (octave_user_function::function_name): Delete.
+	(octave_user_function::fcn_name): Delete unused data member.
+	(octave_user_function::stash_function_name): Save name in
+	tree_function::my_name instead of fcn_name.
+	Change all uses of fcn_name to be my_name instead.
+
+	* pt.h, pt.cc (tree::break_function): Now pointer to
+	octave_function rather than octave_user_function object.
+
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Use name instead of function_name
+	to get name from curr_function.
+	* pt-pr-code.cc (tree_print_code::visit_octave_user_function_header):
+	likewise.
+	* debug.cc (Fdbwhere, Fdbtype, ): Likewise
+	* error.cc (pr_where): Likewise.
+	* variables.cc (Fmlock, Fmunlock, Fmislocked): Likewise.
+	(lookup_function, lookup_user_function,	link_to_builtin_or_function):
+	Likewise, for curr_parent_function.
+
+	* debug.cc (get_user_function, Fdbwhere):
+	Cast curr_function to pointer to octave_user_function.
+
+	* ov-mapper.cc (octave_mapper::do_multi_index_op):
+	Save and restore curr_function here.
+	* ov-builtin.cc (octave_builtin::do_multi_index_op): Likewise.
+
+	* toplev.h, toplev.cc (curr_function, curr_parent_function): Now
+	pointers to octave_function rather than octave_user_function objects.
+
+	* ov-usr-fcn.h (octave_user_function::is_user_function): New function.
+	* ov-fcn.h (octave_function::takes_varargs,
+	octave_function::octave_va_start, octave_function::octave_va_arg,
+	octave_function::octave_all_va_args,
+	octave_function::takes_var_return, octave_function::octave_vr_val,
+	octave_function::is_user_function): New virtual functions.
+
+2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-struct.cc (Fstruct): Use new Octave_map constructor to create
+	structures with specified sizes but no keys.
+
+	* ov-struct.cc (Fstruct): New function, from Paul Kienzle
+	<pkienzle@users.sf.net> and Petter Risholm  <risholm@stud.ntnu.no>.
+
+	* oct-map.h (Octave_map::Octave_map): Allow dimension to be
+	specified for map with no keys.
+
+	* ov-struct.cc (fieldnames): Return 0x1 cell array if no fieldnames.
+
+2004-02-05  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
+	Don't fail if number of indices is greater than 2.
+
+2004-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fsize): Update for N-d objects.
+
+	* ls-mat5.cc (read_mat5_binary_element): Force conversion.
+
+	* ov-base.cc (octave_base_value::char_matrix_value):
+	Pass force arg to convert_to_str.
+
+	* data.cc (Freshape): Chop trailing singletons from new dimensions.
+
+2004-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (defun_usage_message): Only accept one arg, a const
+	std::string& object.  Change all uses.  Pass nul-terminated string
+	to defun_message_1.
+	(defun_usage_message_1): New function, equivalent to old
+	defun_usage_message.
+
+	* ov-base.cc (nint_value): Use fix, not NINT.
+	(INT_CONV_METHOD): Likewise, use fix instead of just casting.
+
+	* data.cc (make_diag): Use int_value instead of nint_value to
+	extract k for Matlab compatibility.
+	(Flinspace): Likewise, for npoints.
+	(fill_matrix): Likewise, for extracting dims.
+	(Fsize): Likewise, for extracting dim argument.  Require int value.
+	* utils.cc (get_dimensions): Likewise.  Use fix, not NINT.
+
+2004-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (verror, error_1): New arg, os.  Use this instead
+	of always printing to std:cerr.  Change all callers.
+
+	* error.cc (defun_usage_message): New function.
+	* error.h: Provide decl.
+	* defun.cc (print_usage): Use it to display error message.
+
+	* error.cc (verror): New arg, save_last_error.  Change all callers.
+	(usage): Set error_state after calling verror.
+
+	* oct-map.cc (Octave_map::assign (const std::string, const Cell&)):
+	Set dimensions to RHS dimensions, not 1x1.
+
+2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool.cc, ov-cx-mat.cc, ov-re-mat.cc, ov-str-mat.cc:
+	Include <vector>.
+	* file-io.cc, ls-hdf5.cc, ls-mat4.cc, ls-mat5.cc, ls-oct-binary.cc:
+	Include <vector>, not <memory> for new defn of OCTAVE_LOCAL_BUFFER.
+	* load-save.cc, ls-mat-ascii.cc, ls-oct-ascii.cc
+	No need to include <memory> now.
+
+	* DLD-FUNCTIONS/eig.cc (Feig): Use new optional arg for EIG to
+	avoid computing eigenvectors if not requested.
+	Based on a patch from David Bateman  <dbateman@free.fr>.
+
+2004-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (all_strings): Always compute total required length
+	of retval.
+
+2004-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.53.
+	(OCTAVE_API_VERSION): Now api-v4.
+
+	* error.cc (pr_where): New arg, print_code with default value true.
+	(warning): Call pr_where with second arg false.
+
+	* file-io.cc (Ffrewind): Only return value if nargout > 0.
+	(Ffprintf): Likewise.
+	(Fprintf): Likewise.
+
+	* file-io.cc (Ffrewind): Return 0 for success, -1 for failure.
+	Make docs match.
+
+	* Makefile.in (distclean): Remove DOCSTRINGS.
+	(maintainer-clean): Remove $(OPT_HANDLERS).
+
+2004-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (octave_cell::subsref): Make '{' case N-d aware.
+
+	* ov-scalar.cc (streamoff_array_value): New function.
+	* ov-scalar.h: Provide decl.
+
+	* OPERATORS/op-streamoff.cc (STREAMOFF_COMP_OP): New maco.
+	Use it to define streamoff by matrix, streamoff by scalar, scalar
+	by streamoff, and matrix by streamoff comparison operators.
+	(install_streamoff_ops): Install them.
+
+	* Cell.h (Cell::operator ()): Delete (we inherit them from Array<T>).
+	(maybe_resize, elem_internal): Delete unused functions.
+
+	* ls-mat5.cc (write_mat5_cell_array): Cell& arg is now const.
+
+2004-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (is_valid_function): If warn, also print error
+	message if arg is not a string.
+
+	* ov-usr-fcn.cc (Fnargin, Fnargout): New functions.
+
+	* octave.cc (intern_argv): Lookup __nargin__ instead of nargin.
+	* ov-usr-fcn.cc (octave_user_function::install_automatic_vars):
+	Lookup __nargin__ and __nargout__ instead of nargin and nargout.
+
+	* variables.h (at_top_level): Now extern.
+	(lookup_user_function): New function.
+	* variables.cc: Provide decls.
+
+	* ov.h, ov.cc (octave_value::user_function_value):
+	New virtual function.
+	* ov-base.h, ov-base.cc (octave_base_value::user_function_value):
+	Provide default version.
+	* ov-usr-fcn.h (octave_user_function::user_function_value):
+	New function.
+
+	* ov-re-mat.cc (complex_array_value): New function.
+	* ov-re-mat.h: Provide decl.
+
+	* ov-cell.cc (Fiscellstr): Don't return value on usage error.
+
+	* error.cc: (symbols_of_error): Delete DEFVAR for error_text.
+	Define __error_text__ and error_text as aliases for lasterr.
+
+	* error.cc (bind_global_error_variable,	clear_global_error_variable):
+	Delete.
+	* variables.h: Delete decls.
+
+	* parse.y (Feval, Fevalin): Don't call bind_global_error_variable.
+	Don't add clear_global_error_variable to the unwind_protect stack.
+	Increment buffer_error_messages before evaluating "eval" code,
+	decrement it before evaluating "catch" code.
+
+	* pt-except.cc (do_catch_code): Don't call bind_global_error_variable.
+	Don't add clear_global_error_variable to the unwind_protect stack.
+	Decrement buffer_error_messages here.
+	(tree_try_catch_command::eval): Increment buffer_error_messages here.
+
+	* error.cc, error.h (buffer_error_messages): Now an int.
+
+2004-01-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (octave_config_info): Add float_format,
+	words_big_endian, and words_little_endian to the struct.
+
+2004-01-14  David Bateman  <dbateman@free.fr>
+
+	* ov-cell.cc (octave_cell::load_hdf5): Fix for HDF5 version 1.6
+	handling of number of objects in a group.
+	* ov-struct.cc (octave_struct::load_hdf5): Likewise.
+	* ov-list.cc (octave_list::load_hdf5): Likewise.
+	* ls-hdf5.cc (read_hdf5_data): Likewise.
+
+2004-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ls-hdf5.h: Surround contents with #if defined (HAVE_HDF5).
+
+2004-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (convert_to_valid_int, get_size):
+	Use lo_ieee_is_NaN_or_NA instead of xisnan.
+	(octave_base_stream::do_printf): Correct special case check for
+	NA, NaN, Inf, or out of range integers.
+
+	* dirfns.cc (Fglob): Always return list of files as a cell array.
+	(Freaddir): Likewise.
+
+	* dirfns.cc (Fls): If nargout > 0, return ls output.
+
+2004-01-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (Fload): Assume -force by default.
+
+	* oct-stream.cc (octave_base_stream::write):
+	Allow fwrite (fid, "some string") to work.
+
+	* toplev.cc (Fcomputer): Delete.
+	(octave_config_info): Add unix and windows fields to the struct.
+
+2004-01-06  David Bateman  <dbateman@free.fr>
+
+	* ls-hdf5.cc: Fix handle of old versus new format files.
+
+ 	* ls-oct-binary.cc: Split the load/save functionality into the types
+ 	themselves.  Backward compatibility maintained.
+
+ 	* ov-struct.cc (save_binary, load_binary):
+ 	* ov-str-mat.cc (save_binary, load_binary):
+ 	* ov-scalar.cc (save_binary, load_binary):
+ 	* ov-re-mat.cc (save_binary, load_binary):
+ 	* ov-range.cc (save_binary, load_binary):
+ 	* ov-list.cc (save_binary, load_binary):
+ 	* ov-cx-mat.cc (save_binary, load_binary):
+ 	* ov-complex.cc (save_binary, load_binary):
+ 	* ov-cell.cc (save_binary, load_binary):
+ 	* ov-bool.cc (save_binary, load_binary):
+ 	* ov-bool-mat.cc (save_binary, load_binary):
+	New functions for loading and saving structures in octave binary
+	format.
+
+ 	* ov-str-mat.h (save_binary, load_binary):
+ 	* ov-scalar.h (save_binary, load_binary):
+ 	* ov-re-mat.h (save_binary, load_binary):
+ 	* ov-range.h (save_binary, load_binary):
+ 	* ov-list.h (save_binary, load_binary):
+ 	* ov-cx-mat.h (save_binary, load_binary):
+ 	* ov-complex.h (save_binary, load_binary):
+ 	* ov-cell.h (save_binary, load_binary):
+ 	* ov-bool.h (save_binary, load_binary):
+ 	* ov-bool-mat.h (save_binary, load_binary):
+ 	* ov-struct.h (save_binary, load_binary):
+	Provide decls.
+
+ 	* ov.h (save_binary, load_binary): New virtual functions.
+
+ 	* ov-base.cc (save_binary, load_binary): New functions, for fallbacks
+ 	with error message.
+ 	* ov-base.h: Provide decls.
+
+ 	* load-save.cc: Remove "-import" flag and make it the default.
+ 	* load-save.h: Likewise.
+
+ 	* ls-oct-ascii.cc: Split the load/save functionality into the types
+ 	themselves. Save "string" variables with the name "string" rather than
+ 	string array. Backward compatiability maintained in ov-cs-mat.cc.
+ 	Include new version of extract_keyword that halts if the next value is
+ 	invalid rather that searching for the next valid value.
+
+ 	* ls-oct-ascii.h: Extract_keyword header updated.
+	Include definition of OCT_RBV and CELL_ELT_TAG, since they are now
+	used elsewhere.
+
+ 	* ls-hdf5.cc: Split load/save functionality into the types themselves.
+ 	The hdf5 format is changed so that each object is a group with a
+ 	dataset "type" being a string with the octave_value type and the
+ 	dataset or group "value" containing the value of the data, struct, etc.
+ 	This allows extensibility. Backward compatibility is maintained. The
+ 	"import" flag is now assumed to always be true and has been removed.
+
+ 	* ov-struct.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-str-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-scalar.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+	* ov-re-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-range.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-list.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-cx-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-complex.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-cell.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-bool.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-bool-mat.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	New functions for loading and saving structures in octave ascii
+	and hdf5 formatted files.
+
+ 	* ov-struct.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-str-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-scalar.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-re-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-range.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-list.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-cx-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-complex.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-cell.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-bool.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	* ov-bool-mat.h (save_ascii, load_ascii, save_hdf5, load_hdf5):
+ 	Provide decls.
+
+ 	* ov-typeinfo.cc (octave_value_typeinfo::do_lookup_type): Include
+ 	make_unique so that the stored type value is not used for all loaded
+ 	variables.
+
+ 	* ov.h: (save_ascii, load_ascii, save_hdf5 and load_hdf5):
+	New virtual functions.
+
+  	* ov-base.cc (save_ascii, load_ascii, save_hdf5, load_hdf5):
+	New functions, for fallbacks with error message.
+	* ov-base.h: Provide decls.
+
+2003-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cx-mat.cc (octave_complex_matrix::assign): RHS arg is N-d.
+	* ov-cx-mat.h: Fix decl.
+
+	* ops.h (DEFNDASSIGNOP_FN): New macro.
+	* OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
+	OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-m-s.cc: Use it instead of DEFASSIGNOP_FN.
+
+2003-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xpow.cc (xpow (double, double)): Avoid apparent GNU libm bug.
+
+2003-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.cc (symbol_record::print_symbol_info_line):
+	Also check is_static to see if a symbol can be cleared.
+
+2003-12-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (is_keyword): Also allow varargout_kw if
+	lexer_flags.looking_at_return_list is false provided that we are
+	defining a function and we haven't seen the function name yet.
+	* parse.y (return_list): Don't require [] around varargout.
+
+	* DLD-FUNCTIONS/find.cc (DO_FIND_OP): Delete macro.
+	(find_to_fortran_idx): Delete.  Move guts of function to
+	find_nonzero_elem_idx.
+	(find_nonzero_elem_idx): Now a template function.  Handle overall
+	array index here too.  Make it N-d aware.
+
+	* pt-pr-code.cc (tree_print_code::visit_complex_for_command,
+	tree_print_code::visit_octave_user_function_header,
+	tree_print_code::visit_matrix, tree_print_code::visit_cell,
+	tree_print_code::visit_multi_assignment): Keep track of nearest
+	[, {, or ( nesting level.
+	(tree_print_code::visit_index_expression): Likewise.  Check nesting
+	level to decide how to print index.
+	(tree_print_code::reset): Also reset nesting level stack.
+
+	* pt-pr-code.h (tree_print_code::nesting): New data member.
+	(tree_print_code::tree_print_code): Initialize it.
+
+	* ov-base-mat.h (octave_base_matrix::octave_base_matrix (const MT&)):
+	If arg has no dimensions, resize to be 0x0.
+
+2003-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-map.cc (Octave_map::assign): Use Octave_map::contents member
+	function instead of operator [].
+	* ov-struct.cc (octave_struct::subsasgn): Likewise.
+	* DLD-FUNCTIONS/time.cc (extract_tm): Likewise.
+
+	* DLD-FUNCTIONS/time.cc	(mk_tm_map): Use Octave_map::assign member
+	function instead of operator [].
+	* DLD-FUNCTIONS/getrusage.cc (Fgetrusage): Likewise.
+	* DLD-FUNCTIONS/getgrent.cc (mk_gr_map): Likewise.
+	* DLD-FUNCTIONS/getpwent.cc (mk_pw_map): Likewise.
+	* load-save.cc (do_load): Likewise.
+	* ls-hdf5.cc (hdf5_read_next_data): Likewise.
+	* ls-mat5.cc (read_mat5_binary_element): Likewise.
+	* oct-map.cc (Octave_map::reshape): Likewise.
+	* oct-map.cc (Octave_map::index): Likewise.
+	* ov-fcn-handle.cc (Ffunctions): Likewise.
+	* pt-idx.cc (make_arg_struct): Likewise.
+	* sighandlers.cc (make_sig_struct): Likewise.
+	* syscalls.cc (mk_stat_map): Likewise.
+	* toplev.cc (Foctave_config_info): Likewise.
+
+	* ls-hdf5.cc (add_hdf5_data): Temporary Octave_map is now const.
+	* ls-mat5.cc (save_mat5_binary_element): Likewise.
+
+	* oct-map.cc (Octave_map::assign (const std::string&, const
+	octave_value&)): New function.
+	* oct-map.h: Provide decl.
+	(Octave_map::contents (const std::string&)): New function.
+	(Octave_map::operator [] (const std::string&) const): Delete.
+	(Octave_map::operator [] (const std::string&)): Delete.
+
+2003-12-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-cell.cc: Allow transpose for cell arrays.
+	* OPERATORS/op-m-m.cc, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-bm-bm.cc, OPERATORS/op-streamoff.cc,
+	OPERATORS/op-str-str.cc: Improve error message for attempt to
+	transpose N-d object.
+
+2003-11-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-arg-list.cc (F__end__): Handle N-d objects.
+
+2003-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-b-bm.cc: New file.
+
+	* OPERATORS/op-bm-b.cc (op_el_and, op_el_or): Define and install.
+	* OPERATORS/op-bm-bm.cc (op_el_and, op_el_or, assign): Likewise.
+
+	* ov-str-mat.cc (CHAR_MATRIX_CONV): New macro.
+	* ov-str-mat.h (octave_char_matrix_str::double_value,
+	octave_char_matrix_str::matrix_value,
+	octave_char_matrix_str::array_value,
+	octave_char_matrix_str::complex_value,
+	octave_char_matrix_str::complex_matrix_value,
+	(octave_char_matrix_str::complex_array_value): Use it.
+
+	* ov-bool-mat.cc (default_numeric_conversion_function):
+	Convert to NDArray, not Matrix.
+	* ov-str-mat.cc (default_numeric_conversion_function): Likewise.
+
+	* ov-range.h (octave_range::array_value): New function.
+	(octave_range::complex_array_value): Likewise.
+	* ov-ch-mat.h (charNDArray::array_value): New function.
+	(charNDArray::complex_array_value): Likewise.
+	* ov-str-mat.h (octave_char_matrix_str::array_value): Likewise.
+	(octave_char_matrix_str::complex_value): Likewise.
+	(octave_char_matrix_str::complex_matrix_value): Likewise.
+	(octave_char_matrix_str::complex_array_value): Likewise.
+
+	* mappers.cc (acosh, log, log10, sqrt):
+	Use octave_Inf instead of DBL_MAX for range limit.
+
+2003-11-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.52.
+	(OCTAVE_API_VERSION): Now api-v3.
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Pass function name from arg
+	list in calls to error.
+
+	* ov-cs-list.cc, ov-cs-list.h (octave_cs_list::octave_cs_list):
+	Explicitly initialize base class in constructors.
+
+	* ov.h (octave_value::all_strings): Pass second arg to rep function.
+
+	* ov.h (octave_value::string_value): Pass arg to rep function.
+
+	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_f): Delete unused arg names.
+	* DLD-FUNCTIONS/rand.cc (Frand, Frandn): Likewise.
+	* ls-hdf5.h (hdf5_streambase::hdf5_streambase): Likewise.
+	* ls-hdf5.cc (read_hdf5_data): Likewise.
+	* ls-utils.cc (get_save_type): Likewise.
+	* parse.y (Fassignin): Likewise.
+	* utils.cc (empty_arg): Likewise.
+	* ov-usr-fcn.h (octave_user_function::subsref): Likewise.
+	* ov-base-mat.h (octave_base_matrix::subsref): Likewise.
+	* ov-mapper.h (octave_mapper::subsref): Likewise.
+	* ov-builtin.h (octave_builtin::subsref): Likewise.
+	* ov-complex.cc (octave_complex::complex_array_value): Likewise.
+	* ov-cell.h (octave_cell::subsref): Likewise.
+	* ov-base-scalar.h (octave_base_scalar::subsref): Likewise.
+	* ov-struct.h (octave_struct::subsref): Likewise.
+	* ov-range.h (octave_range::subsref): Likewise.
+	* ov-list.h (octave_list::subsref): Likewise.
+	* ov-base.cc (octave_base_value::print_info): Likewise.
+	* pt-check.cc (tree_checker::visit_subplot_axes): Likewise.
+	* pr-output.cc (octave_print_internal (std::ostream&, double, bool),
+	octave_print_internal (std::ostream&, const Complex&, bool),
+	octave_print_internal (std::ostream&, const ArrayN<std::string>&,
+	bool, int): Likewise.
+	* oct-stream.cc (octave_scan<> (std::istream&, const
+	scanf_format_elt&, char*): Likewise
+	* TEMPLATE-INST/Array-tc.cc (resize_fill_value<octave_value>):
+	Likewise.
+	* pt-bp.cc (tree_breakpoint::visit_octave_user_function,
+	tree_breakpoint::visit_octave_user_function_header,
+	tree_breakpoint::visit_octave_user_function_trailer,
+	tree_breakpoint::visit_plot_limits,
+	tree_breakpoint::visit_plot_range,
+	tree_breakpoint::visit_subplot,
+	tree_breakpoint::visit_subplot_axes,
+	tree_breakpoint::visit_subplot_list,
+	tree_breakpoint::visit_subplot_style,
+	tree_breakpoint::visit_subplot_using): Likewise.
+	* ov.cc (octave_value::column_vector_value,
+	(octave_value::complex_column_vector_value,
+	(octave_value::row_vector_value,
+	octave_value::complex_row_vector_value,
+	octave_value::do_non_const_unary_op): Likewise.
+
+	* load-save.cc: Only include ls-hdf5.h if HAVE_HDF5 is defined.
+	From Melqart <melqart@free.fr>.
+
+	* pr-output.h (octave_fcn_handle::print_as_scalar): Delete.
+
+	* pr-output.cc (octave_print_internal): New version for
+	ArrayN<std::string> objects.
+	* pr-output.h: Provide decl.
+	* ov-fcn-handle.cc (octave_fcn_handle::print_raw): Use it.
+
+	* OPERATORS/op-fcn-handle.cc: New file.
+	* Makefile.in (OP_XSRC): Add it to the list.
+
+	* ov-fcn-handle.h, ov-fcn-handle.cc (octave_fcn_handle):
+	Now an array of function handle objects.
+
+	* ov.h, ov.cc (octave_value::octave_value (const fcn_handle_array&),
+	(octave_value::octave_value (octave_function *f, const std::string&)):
+	New constructors.
+	(octave_value::octave_value (const octave_fcn_handle&)): Delete.
+
+	* ov-base-mat.cc (octave_base_matrix<T>::print_as_scalar):
+	Check dims instead of rows and columns.
+
+	* ov.h (octave_value::is_function_handle): New function.
+	* ov-base.h (octave_base_value::is_function_handle): New function.
+
+2003-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool-mat.h (octave_bool_matrix::array_value): Construct return
+	value directly from matrix data member, not matrix.matrix_value ().
+
+	* ov-re-mat.h (octave_matrix::index_vector): Construct idx_vector
+	from NDArray, not Matrix.
+
+	* ov-bool-mat.h (octave_bool_matrix::index_vector): Construct
+	idx_vector from boolNDArray, not boolMatrix.
+
+	* ov.cc (install_types): Also register dld function type.
+
+	* OPERATORS/op-streamoff.cc: Install increment and decrement operators.
+	* ov-streamoff.h (octave_streamoff::increment,
+	octave_streamoff::decrement): New functions.
+
+	* ov-streamoff.h, ov-streamoff.cc: Move streamoff_array class to
+	liboctave/so-array.h and liboctave/so-array.cc.
+
+	* oct-stream.cc (octave_stream::seek): Extract std::streamoff from
+	tc_offset instead of int.
+
+	* ov-re-mat.cc (octave_matrix::double_value): Use numel, not length.
+
+	* ov-re-mat.cc (octave_matrix::streamoff_array_value): New function.
+	* ov-re-mat.h: Provide decl.
+
+	* ov-scalar.cc (octave_scalar::streamoff_value): New function.
+	* ov-scalar.h: Provide decl.
+
+	* ov.cc (octave_value::streamoff_array_value,
+	octave_value::streamoff_value): New functions.
+	* ov.h: Provide decls.
+
+	* ov-base.cc (octave_base_value::streamoff_array_value,
+	octave_base_value::streamoff_value): New functions.
+	* ov-base.h: Provide decls.
+
+	* ov-usr-fcn.cc (install_automatic_vars): Don't do anything unless
+	sym_tab is defined.
+
+	* ov-streamoff.h, ov-streamoff.cc, OPERATORS/op-streamoff.cc:
+	New files.
+
+	* ov-cell.h (octave_value_cell::is_matrix_type): New function.
+
+	* ov-mapper.h (octave_mapper::octave_mapper): No copying.
+	* ov-fcn.h (octave_function::octave_function): Likewise.
+	* ov-usr-fcn.h (octave_function::octave_function): Likewise.
+	* ov-builtin.h (octave_builtin::octave_builtin): Likewise.
+	* ov-dld-fcn.h (octave_dld_function::octave_dld_function): Likewise.
+
+2003-11-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-mapper.h (octave_mapper::octave_mapper): Make public.
+	Provide copy constructor and assignment operator.
+	* ov-fcn.h (octave_function::octave_function): Likewise.
+	* ov-builtin.h (octave_builtin::octave_builtin): Likewise.
+	* ov-dld-fcn.h (octave_dld_function::octave_dld_function): Likewise.
+
+	* ov-typeinfo.cc (octave_value_typeinfo::register_type,
+	octave_value_typeinfo::do_register_type): New arg, val.
+	Save it	in vals array.
+	(octave_value_typeinfo::lookup_type,
+	octave_value_typeinfo::do_lookup_type): New functions.
+	* ov-typeinfo.h: Provide decl.
+	(octave_value_typeinfo::vals): New data member.
+	(octave_value_typeinfo::octave_value_typeinfo): Initialize it.
+
+	* ov.h (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Pass
+
+	* ov.h (DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Define register_type
+	here.  Also pass an empty object of the to-be-registered type to
+	register_type.
+	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Declare register_type
+	here, but don't define it.
+
+2003-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-fcn-handle.h (octave_fcn_handle::octave_fcn_handle (void)):
+	New constructor.
+
+	* ov-usr-fcn.h (octave_user_function::octave_user_function):
+	Delete decl for private constructor.
+
+	* ov-str-mat.cc (octave_char_matrix_str::matrix_value):
+	Conversion to matrix is an error unless explicitly forced.
+
+	* ov-str-mat.cc (octave_char_matrix_str::double_value): New function.
+	* ov-str-mat.h: Provide decl.
+
+	* ov-file.cc (print_raw): Use parens around ?: conditional used on
+	RHS of << output operator.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::seekoff,
+	c_file_ptr_buf::seekpos): Can't use fseek here, so just fail (by
+	returning -1) until we have a better solution.
+
+	* oct-stream.cc (octave_stream::tell): Return std::streamoff, not long.
+	* oct-iostrm.cc (octave_base_iostream::tell): Likewise.
+	* oct-stdstrm.cc (octave_stdiostream::tell): Likewise.
+	* oct-strstrm.cc (octave_base_strstream::tell): Likewise.
+	* oct-stream.h, oct-iostrm.h, oct-stdstrm.h, oct-strstrm.h:
+	Fix decls to match.
+
+2003-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ls-mat-ascii.cc (get_lines_and_columns): Delete second arg in
+	call to istream::seekg.
+
+	* ov-mapper.cc (MAPPER_LOOP_2, any_element_less_than,
+	any_element_greater_than, octave_mapper::apply):
+	Handle N-d arrays.
+
+2003-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ls-mat5.cc (read_mat5_binary_element, save_mat5_binary_element):
+	Handle N-d arrays.
+
+	* lex.l (next_token_is_index_op): New function.
+	(handle_close_bracket): Use it.
+
+	* ls-hdf5.cc, ls-mat-ascii.cc, ls-mat4.cc, ls-mat5.cc,
+	ls-oct-ascii.cc, ls-oct-binary.cc, ls-utils.cc, ls-hdf5.h,
+	ls-mat-ascii.h, ls-mat4.h, ls-mat5.h, ls-oct-ascii.h,
+	ls-oct-binary.h, ls-utils.h: New files, extracted from load-save.cc.
+	* Makefile.in: Add them to the appropriate lists.
+
+2003-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (octave_print_internal): Don't indent rows for
+	plus_format.  Use pr_plus_format for Range type with plus_format.
+	(plus_format_chars): New static variable.
+	(set_format_style): Allow optional arg for plus format to set it.
+	(pr_plus_format): Use it.
+
+	* ov-bool.h (octave_bool::array_value,
+	octave_bool::complex_array_value): New functions.
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op):
+	Ensure correct number of indices for Array indexing code.
+
+2003-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/qz.cc (qz): Use x.data()+offset instead of &a(i,j).
+	First and third args for dlag2 are const.
+
+	* DLD-FUNCTIONS/sort.cc (Fsort): Use const qualifier as appropriate.
+
+	* DLD-FUNCTIONS/balance.cc (balance): Use data() instead of
+	fortran_vec where appropriate in call to dggbak.
+
+	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_j): Simplify inserting x and
+	xdot in arg vector.
+	(dasrt_user_f): Likewise.
+	(dasrt_user_cf): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (dassl_user_function): Likewise.
+	(dassl_user_jacobian): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (lsode_user_function): Likewise.
+	(lsode_user_jacobian): Likewise.
+	* DLD-FUNCTIONS/daspk.cc (daspk_user_function): Likewise.
+	(daspk_user_jacobian): Likewise.
+
+2003-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-range.h (octave_range::reshape): New function.
+
+2003-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.51.
+	(OCTAVE_API_VERSION): Now api-v2.
+
+	* version.h (OCTAVE_BUGS_STATEMENT): Also tell people to look at
+	http://www.octave.org/bugs.html.
+
+	* oct-map.cc (Octave_map::assign): Use resize, not resize and fill.
+	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type): Likewise.
+
+	* Cell.cc (Cell::Cell): Pass dim_vector to resize instead of two ints.
+
+2003-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-liboctave-prereq): New target.
+	($(DEF_FILES), $(MAKEDEPS)): Depend on it.
+	(distclean): Remove it.
+
+	* parse.y (cancel_obj_idx): New rule.
+	(postfix_expr, prefix_expr): Use begin_obj_idx after every
+	postfix_expr on RHS.  Use cancel_obj_idx as soon as possible for
+	cases where we are not working on an index expression.
+
+	* lex.l (maybe_unput_comma, handle_close_bracket):
+	Don't insert comma if we are looking at an object index and the
+	closest nesting level is a brace.
+
+	* parse.y (postfix_expr): Use begin_obj_idx between postfix_expr
+	and the indexing delimiter rather than after it.
+
+	* lex.h (lexical_feedback::braceflag): New member variable.
+	* lex.l	(lexical_feedback::init): Initialize braceflag.
+	(\{{S}*): Increment lexer_flags.braceflag, not
+	lexer_flags.bracketflag.
+	(handle_close_bracket): Handle lexer_flags.braceflag and
+	lexer_flags.bracketflag separately based on bracket_type.
+	Delete unnecesary yyinput/yyunput.
+
+	* lex.l (next_token_is_postfix_unary_op): Also recognize ++ and --.
+
+	* ov-typeinfo.cc (octave_value_typeinfo::register_type,
+	octave_value_typeinfo::do_register_type):
+	New arg, c_name for class name.
+	* ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-builtin.cc,
+	ov-cell.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
+	ov-cs-list.cc, ov-cx-mat.cc, ov-dld-fcn.cc, ov-fcn-handle.cc,
+	ov-file.cc, ov-list.cc, ov-mapper.cc, ov-range.cc, ov-re-mat.cc,
+	ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov-usr-fcn.cc,
+	ov-va-args.cc: Pass class name to DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA.
+	* ov.h (octave_value::class_name): New virtual function.
+	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Define c_name, for class name.
+	Pass c_name to octave_value_typeinfo::register_type.
+	(DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Declare static member
+	c_name for class name.  Provide class_name member function.
+
+	* ov-typeinfo.cc (Fclass): New function.
+
+2003-11-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (Fisvarname): Pass correct name to make_argv.
+
+	* ov-cell.cc (Fiscellstr): New function.
+
+	* ov-file.h (octave_file::all, octave_file::any,
+	octave_file::dims, octave_file::is_real_type,
+	octave_file::ist_real_scalar): New functions.
+
+	* lex.l (bracket_brace_paren_nesting_level::is_bracket_or_brace):
+	New function.
+	(handle_close_bracket): New arg, bracket_type.  Change all uses.
+	First arg is now bool.
+	(<MATRIX_START>{SNLCMT}*\}{S}*): New pattern.
+	(maybe_unput_comma): Handle brace nesting level the same as brackets.
+	(handle_close_brace): Likewise.
+	(<MATRIX_START>{S}+): Likewise.
+	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*): Likewise.
+	(<MATRIX_START>{S}*{NL}{SNLCMT}*): Likewise.
+	({NL}): Likewise.
+	({CCHAR}): Likewise.
+	(")"): Likewise.
+	(\{{S}*): Handle the same as \[{S}*.
+	("}"): Handle the same as \].
+
+	* Makefile.in (stamp-prereq): Add oct-gperf.h, parse.cc, and
+	lex.cc to the list.
+
+2003-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (print_as_scalar): New function.
+	* ov-cell.h: Provide decl.
+
+	* ov-cell.cc (octave_cell::print_name_tag): Delete.
+	* ov-cell.h: Delete decl.
+
+	* ov-base-mat.cc (octave_base_matrix::print_name_tag): Delete.
+	* ov-base-mat.h: Delete decl.
+
+	* ov-base.cc (octave_base_value::print_name_tag):
+	Use print_as_scalar here.
+	* ov.h (octave_base_value::print_as_scalar): New virtual function.
+	* ov-base.h (octave_base_value::print_as_scalar):
+	New default implementation.
+	* ov-base-mat.h (octave_base_matrix::pirnt_as_scalar):
+	Don't declare as virtual here.
+
+	* ov-struct.cc (octave_struct::print_raw): If only printing keys,
+	also print dimensions of fields and overall array.
+
+	* sysdep.cc (Fnative_float_format): New function.
+
+	* input.cc (generate_possible_completions): Also append all
+	possible filename completions here.
+
+2003-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc: Explicitly instantiate octave_scan functions.
+
+	* TEMPLATE-INST/Array-c.cc, TEMPLATE-INST/Array-os.cc,
+	TEMPLATE-INST/Array-sym.cc, ov-typeinfo.cc:
+	Use new INSTANTIATE_ARRAY macro.
+
+	* data.cc (do_permute): New function.
+	(Fpermute, Fipermute): Use it.
+
+	* ov-base.cc (octave_base_value::permute): New function.
+	* ov-base.h: Provide decl.
+
+	* ov.h (octave_value::ipermute): New function.
+
+2003-11-11  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* data.cc (Fpermute, Fipermute): New functions.
+	* ov.h (octave_value::permute): New function.
+	* ov-base-mat.h (octave_base_matrix::permute): New function.
+
+2003-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.h (octave_value_list): Internal representation is now
+	std::vector instead of Array.
+
+	* ov-list.h, ov-list.cc: Internal representation is now Cell, not
+	octave_value_list.
+	(Flist): Print one-time warning.
+
+	* ov.cc (octave_value::octave_value (const octave_value_list&, bool)):
+	Cope with octave_cs_list not being derived from octave_list.
+
+	* ov-cs-list.cc (octave_cs_list): Handle conversion of Cell array
+	to octave_value_list here.
+
+	* ov-cs-list.h (class octave_cs_list): Derive from
+	octave_base_value, not octave_list.
+
+	* ov-cs-list.h, ov-cs-list.cc: Remove commented-out code.
+
+	* TEMPLATE-INST/Array-tc.cc (resize_fill_value): Use modern
+	specialization syntax.
+
+	* ov-cell.cc (octave_cell::print_raw): Use dim_vector::str.
+
+	* Cell.cc, Cell.h, debug.cc, file-io.cc, load-save.cc,
+	oct-fstrm.cc, oct-iostrm.cc, oct-iostrm.h, oct-map.cc, oct-map.h,
+	oct-prcstrm.cc, oct-stdstrm.h, oct-stream.cc, oct-strstrm.h,
+	octave.cc, ov-base.h, ov-cell.cc, ov.cc, ov.h, pt-cell.h,
+	pt-mat.cc, pt-mat.h, pt-plot.cc, pt-stmt.cc, variables.cc,
+	DLD-FUNCTIONS/rand.cc: Avoid -Wshadow warnings.
+
+2003-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_base_value::is_bool_matrix): New virtual function.
+	* ov-base.h (octave_base_value::is_bool_matrix): New function.
+
+2003-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc (octave_value::length): If any dim is zero, return 0.
+
+	* ov-cell.cc (octave_cell::subsref): When indexing with '{', quit
+	early if an error occurs in do_index_op.
+
+	* ov.cc (octave_value::next_subsref): Don't do anything if
+	error_state is true.
+
+	* cutils.c (octave_usleep) [HAVE_SELECT]: Introduce new local
+	scope for declaration of delay.
+	[HAVE_POLL]: Likewise, for delay and pfd.
+
+	* ov-base.cc (octave_base_value::bool_array_value):
+	Function takes no args.
+	* ov-base.h: Likewise, for decl.
+	* ov-bool-mat.h (boolNDArray::bool_array_value): Likewise.
+
+	* ov-fcn.cc, ov-fcn.h (octave_value::clone,
+	octave_value::empty_clone): Return type is octave_value*, not
+	octave_function*.
+
+2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-str-mat.h (octave_char_matrix_str::reshape): New function.
+	Force result to be a string.
+
+2003-10-29  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* data.cc (DATA_REDUCTION): Work on NDArray and ComplexNDArray
+	objects instead of Matrix and ComplexMatrix objects.
+
+2003-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool-mat.h (octave_bool_matrix::NDArray,
+	octave_bool_matrix::ComplexNDArray): New functions.
+
+	* ov-complex.cc (octave_complex::array_value,
+	octave_complex::complex_array_value): New functions.
+	* ov-complex.h: Provide decls.
+
+	* ov-scalar.cc (octave_scalar::array_value,
+	octave_scalar::complex_array_value): New functions.
+	* ov-scalar.h: Provide decls.
+
+	* oct-map.cc (Octave_map::reshape): New function.
+	* oct-map.h: Provide decl.
+
+	* ov-struct.h (octave_struct::reshape): New function.
+
+	* Cell.h (Cell:Cell (const Array<octave_value>&): New constructor.
+
+	* data.cc (Freshape): New function.
+	* ov.h (octave_value::reshape): New function.
+	* ov-base-mat.h (octave_base_matrix::reshape): New function.
+	* ov-base.cc (octave_base_value::reshape): New function.
+	* ov-base.h: Provide decl.
+
+	* DLD-FUNCTIONS/balance.cc: lscale and rscale args for dggbak are
+	const.  Use data() instead of fortran_vec where possible.
+	* DLD-FUNCTIONS/qz.cc: Likewise.
+
+	* data.cc (fill_matrix): Remove trailing singletons before
+	allocating the result matrix.
+
+	* input.cc (get_user_input): Don't forget about the diary here.
+
+2003-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-list.h (octave_list::nelem): Delete.
+	(octave_list::dims): New function.
+	* ov-range.h (octave_list::dims): New function.
+	* ov-struct.h (octave_struct::dims): New function.
+	* ov-base-scalar.h (octave_base_scalar::dims): New function.
+
+	* ov.h (octave_value::rows): No longer virtual.
+	* ov.cc (octave_value::rows): Provide common implementation.
+	* ov-base.h (octave_base_value::rows): Delete.
+	* ov-base-mat.h (octave_base_matrix<T>::rows): Delete.
+	* ov-base-scalar.h (octave_base_scalar<T>::rows): Delete.
+	* ov-struct.h (octave_struct::rows): Delete.
+	* ov-range.h (octave_range::rows): Delete.
+
+	* ov.h (octave_value::columns): No longer virtual.
+	* ov.cc (octave_value::columns): Provide common implementation.
+	* ov-base.h (octave_base_value::columns): Delete.
+	* ov-base-mat.h (octave_base_matrix<T>::columns): Delete.
+	* ov-base-scalar.h (octave_base_scalar<T>::columns): Delete.
+	* ov-struct.h (octave_struct::columns): Delete.
+	* ov-range.h (octave_range::columns): Delete.
+
+	* ov.h (octave_value::numel): No longer virtual.
+	* ov.cc (octave_value::numel): Provide common implementation.
+	* ov-base.h (octave_base_value::numel): Delete.
+	* ov-base-mat.h (octave_base_matrix<T>::numel): Delete.
+	* ov-base-scalar.h (octave_base_scalar<T>::numel): Delete.
+	* ov-struct.h (octave_struct::numel): Delete.
+
+	* ov-cs-list.h (octave_cs_list::dims): New function.
+	(octave_cs_list::length): Delete.
+
+	* ov.h (octave_value::ndims): No longer virtual.
+	* ov.cc (octave_value::ndims): Provide common implementation.
+	* ov-base.h (octave_base_value::ndims): Delete.
+	* ov-base-mat.h (octave_base_matrix<T>::ndims): Delete.
+	* ov-base-scalar.h (octave_base_scalar<T>::ndims): Delete.
+	* ov-struct.h (octave_struct::ndims): Delete.
+
+	* ov-cell.cc (Fcell): Make it work for N-d cells.
+
+	* Cell.h (Cell::Cell  (const dim_vector&, const octave_value&)):
+	New constructor.
+
+	* ov.h (octave_value::length): No longer virtual.
+	* ov.cc (octave_value::length): Provide common implementation.
+	* ov-base.h (octave_base_value::length): Delete.
+	* ov-base-mat.h (octave_base_matrix<T>::length): Delete.
+	* ov-base-scalar.h (octave_base_scalar<T>::length): Delete.
+	* ov-struct.h (octave_struct::length): Delete.
+	* ov-cs-list.h (octave_cs_list::length): Delete.
+	* ov-list.h (octave_list::length): Delete.
+	* ov-range.h (octave_range::length): Delete.
+
+	* load-save.cc (save_mat5_binary_element): Use numel instead of
+	array_length.
+	* ov-struct.cc (octave_struct::print_raw): Likewise.
+	* pt-loop.cc (tree_complex_for_command::eval): Likewise.
+	* oct-map.cc (Octave_map::numel): New function.
+	* oct-map.h: Provide decl.
+
+	* oct-map.cc, oct-map.h (Octave_map::array_length): Delete.
+	(common_size): New static function.
+	(Octave_map::assign): Make resizing work for N-d cell objects.
+
+	* oct-map.cc (Octave_map::dims): New function.
+	* oct-map.h: Provide decl.
+
+	* pr-output.cc 	(print_empty_nd_array): New static function.
+	(PRINT_ND_ARRAY): Use it.
+
+	* ov.h (octave_value::is_empty): No longer virtual.  Return value
+	based on numel.
+	* data.cc (Fisempty): Use it.
+	(Fnumel): New function.
+
+	* ov.h (octave_value::numel): New function.
+	* ov-base.h (octave_base_value::numel): Likewise.
+	* ov-base-mat.h (octave_base_matrix<T>::numel): Likewise.
+	* ov-base-scalar.h  (octave_base_scalar<T>::numel): Likewise.
+
+2003-10-27  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::is_true):
+	Only work for 2-dimensional objects.
+	* data.cc (ANY_ALL (FCN)): Allow dim to take values large than 2.
+
+	* ov.h (octave_value::ndims): New function.
+	* ov-base.h (octave_base_value::ndims): Likewise.
+	* ov-base-scalar.h (octave_base_scalar<T>::ndims): Likewise.
+	* ov-base-mat.cc (octave_base_matrix<MT>::ndims): New function.
+	(octave_base_matrix<MT>::length): Move here from ov-base-mat.h.
+	Make it work for N-d arrays.
+	* ov-base-mat.h (octave_base_matrix<MT>::ndims): Provide decl.
+	* data.cc (Fndims): New built-in function.
+
+2003-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/qz.cc:
+	Use new F77 arg macros in declarations of external Fortran
+	subroutines and for calling them.
+
+	* ops.h (DEFNDUNOP_OP, DEFNDUNOP_FN): New arg e, to name value
+	extractor function prefix.
+	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,	OPERATORS/op-m-m.cc:
+	Change all uses.
+
+	* ov-cx-mat.h (octave_complex_matrix::complex_array_value,
+	octave_char_matrix::char_array_value,
+	octave_bool_matrix::bool_array_value): Rename from array_value.
+	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
+	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-s-cm.cc: Use complex_array, char_array, and
+	bool_array as appropriate (instead of just array).
+
+	* ov-base.cc (octave_base_value::array_value,
+	octave_base_value::bool_array_value,
+	octave_base_value::complex_array_value,
+	octave_base_value::char_array_value): Provide default implementations.
+	* ov-base.h: Provide decls.
+
+	* ov.h (octave_value::array_value, octave_value::bool_array_value,
+	octave_value::complex_array_value, octave_value::char_array_value):
+	New virtual functions.
+
+2003-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-idx.cc (make_subs_cell): Pass dim_vector object to resize.
+
+	* ov-typeinfo.cc (octave_value_typeinfo::do_register_type):
+	Use resize_and_fill for types.
+
+	* oct-obj.h (octave_value_list::maybe_resize): Use resize_and_fill.
+	(octave_value_list::resize (int, const octave_value&)): Likewise.
+
+	* oct-map.cc (Octave_map::assign): Use resize_and_fill as needed.
+
+	* Cell.h (Cell (void)): Default size is now 0x0.
+
+2003-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-cs-m.cc, OPERATORS/op-m-cm.cc, OPERATORS/op-s-cm.cc:
+	Include headers for N-d operators.
+
+2003-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ops.h (DEFNDUNOP_OP, DEFNDUNOP_FN, DEFNDBINOP_OP,
+	DEFNDBINOP_FN): New N-dimensional macros.
+	* OPERATORS/op-bm-bm.cc, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc,
+	OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
+	OPERATORS/op-cs-m.cc, OPERATORS/op-m-cm.cc,
+	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-m-s.cc, OPERATORS/op-s-cm.cc,
+	OPERATORS/op-s-m.cc: Use N-dimensional macros as appropriate.
+
+	* DLD-FUNCTIONS/rand.cc (do_rand, Frand, Frandn):
+	Handle N-dimensions.
+
+	* xpow.cc (elem_xpow (double, const NDArray&),
+	elem_xpow (double, const ComplexNDArray&),
+	elem_xpow (const NDArray&, double),
+	elem_xpow (const NDArray&, const NDArray&),
+	elem_xpow (const NDArray&, const Complex&),
+	elem_xpow (const NDArray&, const ComplexNDArray&),
+	elem_xpow (const Complex&, const NDArray&),
+	elem_xpow (const Complex&, const ComplexNDArray&),
+	elem_xpow (const ComplexNDArray&, double),
+	elem_xpow (const ComplexNDArray&, const NDArray&),
+	elem_xpow (const ComplexNDArray&, const Complex&),
+	elem_xpow (const ComplexNDArray&, const ComplexNDArray&):
+	New functions.
+	* xpow.h: Provide decls.
+
+	* xdiv.cc (x_el_div (double, const NDArray&),
+	x_el_div (double, const ComplexNDArray&),
+	x_el_div (const Complex, const NDArray&),
+	x_el_div (const Complex, const ComplexNDArray&)): New functions.
+	* xdiv.h: Provide decls.
+
+	* ov-bool-mat.h (boolNDArray::array_value): New function.
+	* ov-ch-mat.h (charNDArray::array_value): New function.
+	* ov-cx-mat.h (ComplexNDArray::array_value): New function.
+	* ov-re-mat.h (NDArray::array_value): New function.
+	(NDArray::double_nd_array_value): Delete.
+
+2003-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (text_getc): New static function.
+	(gobble_leading_white_space): Use it to simplify EOL processing.
+
+2003-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (fopen_mode_to_ios_mode): Ignore "t" in mode string.
+
+	* strfns.cc (Fischar): rename from Fisstr.
+
+2003-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (PRINT_ND_ARRAY): New macro.
+	(octave_print_internal): Use it.
+
+2003-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc	(octave_value::octave_value (const ArrayN<octave_value>&,
+	bool)):	New constructor.
+	* ov.h: Provide decl.
+
+	* ov.h (octave_value::squeeze): New virtual function.
+	* ov-base.cc (squeeze): Provide default implementation.
+	* ov-base-mat.h (octave_base_matrix::squeeze): New function.
+	* data.cc (Fsqueeze): New function.
+
+2003-10-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (make_valid_identifier): Return new string.
+	Arg is now string, not char *.
+	(ident_is_all_digits): New function.
+	(hdf5_read_next_data): Use it.
+
+2003-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (input_event_hook): Clear the event hook if hook_fcn
+	does not name a valid function.
+
+2003-10-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mappers.cc (xabs): New function.
+	(install_mapper_functions): Use it instead of abs for complex args
+	in Octave's abs mapper function.
+
+2003-09-27  Joseph P. Skudlarek  <Jskud@Jskud.com>
+
+ 	* DLD-FUNCTIONS/minmax.cc (min, max): Use @deftypefn machinery,
+ 	doc missing semantics, and add more examples to texinfo strings.
+
+2003-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_mat5_binary_element): Return early if the
+	miMATRIX element has length zero.
+
+2003-09-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (octave_cell::subsasgn): Also attempt empty
+	conversion after extracting single element from cell array to
+	allow things like x{i}.elt = rhs to work.
+
+2003-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::dim_vector): New function.
+
+	* ov.h, ov.cc (octave_value::octave_value (const Cell&)):
+	New arg, is_cs_list.
+	(octave_value::octave_value (const NDArray&)):
+	Create octave_matrix object, not octave_double_nd_array object.
+	(octave_value::octave_value (const ComplexNDArray&),
+	octave_value::octave_value (const boolNDArray&),
+	octave_value (const charNDArray&, bool)): New constructors.
+
+	* ov.h, ov.cc (octave_value::nil_rep): New function.
+	(octave_value::octave_value (void)): Use it to initialize empty
+	octave_value objects.
+
+	* ov-list.h, ov-list.cc (octave_list::octave_list (const Cell&)):
+	New constructor.
+	* ov-cs-list.h (octave_cs_list::octave_cs_list (const Cell&)):
+	Likewise.
+
+	* data.cc (Fsize): Handle N-d objects.
+
+	* pr-output.cc (octave_print_internal): New versions for NDArray,
+	ComplexNDArray, boolNDArray, and charNDArray objects.
+	* pr-output.h: Provide decls.
+
+	* ov-re-nd-array.h, ov-re-nd-array.cc: Delete.
+
+	* Cell.h, Cell.cc, ov-base-mat.h, ov-base-mat.cc, ov-bool-mat.h,
+	ov-bool-mat.cc, ov-ch-mat.h, ov-ch-mat.cc, ov-cx-mat.h,
+	ov-cx-mat.cc, ov-re-mat.h, ov-re-mat.cc, ov-str-mat.h,
+	ov-str-mat.cc: Now N-dimensional.
+
+	* oct-map.h, oct-map.cc: Now based on Cell ojects instead of
+	octave_value_list objects.  Change all uses.
+
+	* TEMPLATE-INST/Array-tc.cc: Also instantiate ArrayN objects.
+	Don't instantiate assign funcitons for Array2 objects.
+
+2003-09-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (symbols_of_pt_plot): Default for automatic replot is
+	now true.
+
+	* pr-output.cc (Fformat): Doc fix.
+	(current_output_max_field_width, current_output_precision):
+	New functions.
+	(float_format::float_format (int, int, int)): Use them to provide
+	default values for field width and precision.
+	(print_g): New static variable.
+	(set_real_format, set_real_matrix_format, set_complex_format)
+	(set_complex_matrix_format, set_range_format): Handle print_g.
+	(pr_float, pr_complex): Don't scale if using print_g.
+	(set_format_style): Accept new "g" and "G" modifiers for short and
+	long formats and set print_g.
+	Set default precision and width for short to 5, 10.
+	Set default precision and width for long to 15, 20.
+
+2003-09-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-m-cs.cc (complex_matrix_conv): Delete function.
+	(install_m_cs_ops): Don't install complex_matrix_conv here.
+
+	* OPERATORS/op-s-cs.cc (complex_matrix_conv): Delete function.
+	(install_s_cs_ops): Don't install complex_matrix_conv here.
+
+	* OPERATORS/op-s-s.cc (matrix_conv): Delete function.
+	(install_s_s_ops): Don't install matrix_conv here.
+
+	* OPERATORS/op-cs-s.cc (complex_matrix_conv): Delete function.
+	(install_cs_s_ops): Don't install complex_matrix_conv here.
+
+	* OPERATORS/op-cs-m.cc (complex_matrix_conv): Delete function.
+	(install_cs_m_ops): Don't install complex_matrix_conv here.
+
+	* OPERATORS/op-cs-cs.cc (complex_matrix_conv): Delete function.
+	(install_cs_cs_ops): Don't install complex_matrix_conv here.
+
+	* ov-typeinfo.cc (do_register_unary_op,
+	do_register_non_const_unary_op, do_register_binary_op,
+	do_register_assign_op, do_register_assignany_op,
+	do_register_pref_assign_conv, do_register_widening_op):
+	Print warning if installing a duplicate function.
+
+2003-09-10  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* data.cc, ov-base.cc, ov-base.h, ov.h, ov.cc, ov-re-mat.h,
+	ov-scalar.h, ov-re-nd-array.h, ov-re-nd-array.cc: Use NDArray, not
+	ArrayN<double>.
+
+2003-09-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::double_nd_array_value): New function.
+	(octave_value::is_real_nd_array): New function.
+
+	* ov-base.cc (octave_base_value::double_nd_array_value): New function.
+	* ov-base.h: Provide decl.
+	(octave_base_value::is_real_nd_array): New function.
+
+2003-09-09  Petter Risholm  <risholm@stud.ntnu.no>
+
+	* ov-re-mat.h (octave_matrix::double_nd_array_value): New function.
+	* ov-scalar.h (octave_scalar::double_nd_array_value): New function.
+
+	* ov-re-nd-array.cc (octave_double_nd_array::assign): New function.
+	(octave_double_nd_array::try_narrowing_conversion): Likewise.
+	(octave_double_nd_array::valid_as_scalar_index): Likewise.
+	(octave_double_nd_array::double_value): Likewise.
+	(octave_double_nd_array::matrix_value): Likewise.
+	(octave_double_nd_array::complex_value): Likewise.
+	(octave_double_nd_array::convert_slice_to_matrix): Likewise.
+	* ov-re-nd-array.h: Provide decls.
+	(octave_double_nd_array::is_real_nd_array): New function.
+	(octave_double_nd_array::double_nd_array_value): New function.
+	(octave_double_nd_array::double_nd_array_value): New function.
+
+	* OPERATORS/op-m-nd.cc, OPERATORS/op-nd-m.cc,
+	OPERATORS/op-nd-nd.cc, OPERATORS/op-nd-s.cc, OPERATORS/op-s-nd.cc:
+	New files.
+	* Makefile.in (OP_XSRC): Add them to the list.
+
+2003-09-09  David Bateman  <dbateman@free.fr>
+
+	* OPERATORS/op-cs-s.cc (DEFBINOP): First arg is complex, second is
+	double.
+
+2003-09-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-cell.cc (tree_cell::rvalue): Don't assume that the number of
+	elements in a tree_argument_list is the same as the number of
+	objects it contains (cs-list objects expand to more than one).
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::do_init_element):
+	New function, extracted from tm_row_const::tm_row_const_rep::init.
+	(tm_row_const::tm_row_const_rep::init): Use it.
+	Also handle cs-list objects.
+
+	* ov-cs-list.cc (octave_cs_list::print_raw): New function.
+	* ov-cs-list.h (octave_cs_list::print_raw): Provide decl.
+	* ov-list.h (octave_list::lst): Now protected instead of private.
+
+2003-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (subplot_style::columns_ok): Allow boxes style to
+	have 2 columns as well.
+
+2003-08-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Fls): Check EAGAIN to avoid losing output.
+	* toplev.cc (run_command_and_return_output): Likewise.
+
+2003-08-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-str-s.cc, OPERATORS/op-str-m.cc: New files.
+	* Makefile.in (OP_XSRC): Add them to the list.
+
+2003-08-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (maybe_add_or_del_packages): Use source_file instead
+	of parse_and_execute.
+	* parse.y (source_file): New function.
+	(Fsource): Use it.
+	* parse.h (source_file): Provide decl.
+
+2003-08-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (octave_vsnprintf): Copy va_list to avoid using more
+	than once.
+
+2003-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (octave_vsnprintf): Call octave_raw_vsnprintf instead
+	of calling vsnprintf directly.
+	(octave_vsnprintf) [HAVE_C99_VSNPRINTF]: Declare nchars to be size_t.
+
+2003-08-06  Heine Kolltveit  <kolltvei@idi.ntnu.no>
+
+	* utils.cc (check_dimensions(Array<int>&, char),
+	get_dimensions(octave_value&, char, Array<int>&): New functions.
+	* utils.h (check_dimensions (Array<int>&, char),
+	get_dimensions (octave_value&, char, Array<int>&)): Provide decl.
+
+	* data.cc (fill_matrix): Also create N-d arrays.
+ 	(Fones, Fzeros): Handle more than 2 args to create N-d arrays.
+
+2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (make_diag): Use std::abs instead of our own ABS macro.
+
+	* utils.cc (identity_matrix): Move here from data.cc.
+	(identity_matrix): Use std::min instead of our own MIN macro.
+
+	* utils.h (identity_matrix): Provide decl.
+
+	* DLD-FUNCTIONS/svd.cc (Fsvd): Improve handling of empty matrix arg.
+
+	* ov.cc (octave_value(const ArrayN<Complex>&)): New constructor.
+	* ov.h (octave_value(const ArrayN<Complex>&)): Provide decl.
+
+2003-07-30  Heine Kolltveit  <kolltvei@idi.ntnu.no>
+
+	* ov.cc (octave_value(const ArrayN<double>&)): New constructor.
+	* ov.h (octave_value(const ArrayN<double>&)): Provide decl.
+
+2003-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (Vpropagate_empty_matrices): Delete decl.
+	* ov.cc: (Vpropagate_empty_matrices): Delete.
+	(propagate_empty_matrices): Delete.
+	(symbols_of_ov): Delete DEFVAR for propagate_empty_matrices.
+
+	* utils.cc (empty_arg): Behave as though propagate_empty_matrices
+	is always 1.
+	* ov-range.cc (octave_range::is_true): Likewise.
+	* ov-base-mat.cc (octave_base_matrix<MT>::is_true): Likewise.
+
+	* octave.cc (maximum_braindamage): Also set
+	warn_matlab_incompatible to TRUE.
+
+	* lex.l (Vwhitespace_in_literal_matrix): Delete.
+	(whitespace_in_literal_matrix): Delete.
+	(symbols_of_lex): Delete DEFVAR for whitespace_in_literal_matrix.
+	(<MATRIX_START>{S}*\,{S}*, <MATRIX_START>{S}+,
+	(<MATRIX_START>{S}*{COMMENT}{SNLCMT}*,
+	<MATRIX_START>{S}*{NL}{SNLCMT}*, maybe_unput_comma): Behave as though
+	old Vwhitespace_in_literal_matrix varaible is always 1.
+
+	* octave.cc (maximum_braindamage): Don't set
+	whitespace_in_literal_matrix.
+
+2003-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Use $(INSTALL), not
+	$(INSTALL_PROGRAM) for $(SHLLIB) files.
+
+2003-07-29  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: Don't need special system.c for Cygwin.
+	* oct-procbuf.cc: Use popen rather than fork/exec for Windows.
+
+2003-07-28  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* sysdep.cc (CYGWIN_init): Convert TMPDIR to system agnostic path.
+
+2003-07-25  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* help.cc (try_info, display_help_text):
+	Protect spaces in filenames with quotes.
+	* oct-hist.cc (do_edit_history): Likewise.
+	* pt-plot.cc (open_plot_stream): Likewise.
+
+2003-07-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (get_size, octave_base_stream::error,
+	octave_base_stream::do_gets, octave_base_stream::getl,
+	octave_base_stream::gets, octave_base_stream::do_scanf,
+	octave_base_stream::scanf, octave_base_stream::do_oscanf,
+	octave_base_stream::oscanf, do_printf_conv,
+	octave_base_stream::do_printf, octave_base_stream::printf,
+	octave_base_stream::puts, octave_base_stream::invalid_operation,
+	octave_stream::getl, octave_stream::gets, octave_stream::scanf,
+	octave_stream::oscanf, octave_stream::printf, octave_stream::puts,
+	octave_stream::invalid_stream_error): Handle name of calling
+	function for error messages as a std::string object.  Change all
+	callers.
+
+	* file-io.cc (Fprintf, Fputs): New functions, so we can get
+	function prefixes on error messages right.
+	(Ffgetl, Ffgets, Ffprintf, Fsprintf, Fputs, Ffscanf, Fsscanf):
+	Pass name of calling function to octave_stream method.
+
+	* oct-stream.h (octave_base_stream::do_char_scanf,
+	octave_base_stream::do_real_scanf): Delete unused decls.
+
+	* load-save.cc (read_mat5_binary_element): Correctly read struct
+	arrays.
+
+	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
+	New args, warnfor and nargout.  Change all callers.
+	(symbols_of_pt_misc): New function.
+	(warn_undefined_return_values): New function.
+
+	* octave.cc (maximum_braindamage): Don't set
+	define_all_return_values.
+
+	* ov-usr-fcn.cc (ov_user_function::do_multi_index_op): Always
+	intiialize undefined elements in ret_list to [].
+	Never return last computed value.
+	(Vreturn_last_computed_value, Vdefine_all_return_values): Delete.
+	(return_last_computed_value, define_all_return_values): Delete.
+	(symbols_of_ov_usr_fcn): Delete DEFVARs for
+	return_last_computed_value, define_all_return_values, and
+	default_return_value.
+
+2003-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-misc.cc (tree_parameter_list::convert_to_const_vector):
+	Don't skip undefined elements.
+
+2003-07-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Don't set
+	default_global_variable_value or initialize_global_variables.
+
+	* pt-decl.cc (Vinitialize_global_variables): Delete.
+	(initialize_global_variables): Delete.
+	(symbols_of_pt_decl): Delete.
+	(tree_global_command::do_init): Default initial value is now
+	always [].
+
+2003-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Don't set default_eval_print_flag.
+
+	* parse.y (Vdefault_eval_print_flag): Delete:
+	(default_eval_print_flag): Delete.
+	(symbols_of_parse): Delete DEFVAR for default_eval_print_flag.
+	(Feval, Fevalin): Return empty octave_value_list and turn printing
+	on in eval_string if nargout is zero.
+
+	* ov-list.cc (octave_list::assign): Check
+	Vwarn_resize_on_range_error, not Vresize_on_range_error.
+
+	* ov.cc (Vwarn_resize_on_range_error): New variable.
+	(warn_resize_on_range_error): New function.
+	(symbols_of_ov): Add DEFVAR for warn_resize_on_range_error.
+
+	* ov.cc (Vresize_on_range_error): Delete.
+	(resize_on_range_error): Delete.
+	(symbols_of_ov): Delete DEFVAR for resize_on_range_error.
+
+	* pt-mat.cc (Vwarn_empty_list_elements): New variable.
+	(warn_empty_list_elements): New function.
+	(symbols_of_pt_mat): Add DEFVAR for warn_empty_list_elements.
+	(tm_row_const::tm_row_const_rep::init, tm_const::init):
+	Check Vwarn_empty_list_elements, not Vempty_list_elements_ok.
+
+	* pt-mat.cc (Vempty_list_elements_ok): Delete.
+	(empty_list_elements_ok): Delete.
+	(symbols_of_pt_mat): Delete DEFVAR for empty_list_elements_ok.
+
+2003-07-11  Russell Standish  <R.Standish@unsw.edu.au>
+
+	* TEMPLATE-INST/Array-tc.cc (resize_fill_value): Provide
+	specialization.
+
+2003-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strfns.cc (Fchar): Force string conversions without warnings.
+
+	* ov.h (octave_value::convert_to_str, octave_value::all_strings,
+	octave_value::string_value, octave_value:convert_to_str_internal):
+	New arg, force.  Fix all derived classes to match.
+
+	* strfns.cc (Fchar): Temporarily reset Vwarn_num_to_str to avoid
+	warnings.
+
+	* ov.cc (convert_to_str): New arg, force.
+
+	* octave.cc (maximum_braindamage): Don't set treat_neg_dim_as_zero.
+
+	* utils.cc (Vwarn_neg_dim_as_zero): New variable.
+	(warn_neg_dim_as_zero): New function.
+	(symbols_of_utils): Add DEFVAR for warn_neg_dim_as_zero.
+	(check_dimensions): Check Vwarn_neg_dim_as_zero, not
+	Vtreat_neg_dim_as_zero.
+
+	* utils.cc (Vtreat_neg_dim_as_zero): Delete.
+	(treat_neg_dim_as_zero): Delete.
+	(symbols_of_utils): Delete DEFVAR for treat_neg_dim_as_zero.
+
+2003-07-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Don't set prefer_column_vectors.
+
+	* ov.cc (Vprefer_column_vectors): Delete.
+	(prefer_column_vectors): Delete.
+	(symbols_of_ov): Delete DEFVAR for prefer_column_vectors.
+
+	* octave.cc (maximum_braindamage): Don't set do_fortran_indexing.
+
+	* ov-re-mat.cc (octave_matrix::double_value,
+	octave_matrix::complex_value): Use Vwarn_fortran_indexing, not
+	Vdo_fortran_indexing.
+	* ov-range.cc (octave_range::double_value,
+	octave_range::complex_value): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::double_value,
+	octave_complex_matrix::complex_value): Likewise.
+	* ov-ch-mat.cc (octave_char_matrix::double_value,
+	octave_char_matrix::complex_value): Likewise.
+	* ov-bool-mat.cc (octave_bool_matrix::double_value,
+	octave_bool_matrix::complex_value): Likewise.
+
+	* ov.cc (Vwarn_fortran_indexing): New variable.
+	(warn_fortran_indexing): New function.
+	(symbols_of_ov): Add DEFVAR for warn_fortran_indexing.
+	(octave_value::vector_value, octave_value::int_vector_value,
+	(octave_value::complex_vector_value): Check
+	Vwarn_fortran_indexing, not Vdo_fortran_indexing.
+
+	* ov.h (Vwarn_fortran_indexing): Provide decl.
+
+	* ov.cc (Vdo_fortran_indexing): Delete unused variable.
+	(do_fortran_indexing): Delete unused function.
+	(symbols_of_ov): Delete DEFVAR for do_fortran_indexing.
+	* ov.h (Vdo_fortran_indexing): Delete decl.
+
+	* ov.cc (octave_value::convert_to_str): Call convert_to_str_internal.
+	(octave_value::convert_to_str_internal): New virtual function.
+	Rename all derived class convert_to_str functions to match.
+
+	* variables.cc (generate_struct_completions): Set
+	discard_warning_messages, not Vwarning_option.  Also protect
+	warning_state.
+
+	* parse.y (fold): Temporarily discard warning messages.
+	Also protect warning_state.
+
+	* error.cc (discard_warning_messages): New variable.
+	(vwarning): Use it.
+	(warning): Don't print backtrace if discard_warning_messages is true.
+
+	* ov.cc (octave_value::convert_to_str):
+	Handle type conversion warning here.
+
+	* gripes.cc (gripe_implicit_conversion):
+	New function accepting std::string args.
+
+	* octave.cc (maximum_braindamage): Don't set
+	implicit_num_to_str_ok or implicit_str_to_num_ok.
+
+	* ov-base.cc (octave_base_value::char_matrix_value):
+	Vimplicit_num_to_str_ok no longer exists.
+	(octave_base_value::all_strings): Likewise.
+	(octave_base_value::string_value): Likewise.
+
+	* ov-str-mat.cc (octave_char_matrix_str::matrix_value): Warn based
+	on Vwarn_str_to_num instead of Vimplicit_str_to_num_ok.
+
+	* ov.cc (Vwarn_num_to_str, Vwarn_str_to_num): New variables.
+	(warn_num_to_str, warn_str_to_num): New functions.
+	(symbols_of_ov): Add DEFVARs for warn_num_to_str and Vwarn_str_to_num.
+	* ov.h (Vwarn_num_to_str, Vwarn_str_to_num): Provide decl.
+
+	* ov.cc (Vimplicit_num_to_str_ok, Vimplicit_str_to_num_ok):
+	Delete unused variables.
+	(implicit_num_to_str_ok, implicit_str_to_num_ok):
+	Delete unused functions.
+	(symbols_of_ov): Delete DEFVARs for implicit_num_to_str_ok and
+	implicit_str_to_num_ok.
+	* ov.h (Vimplicit_num_to_str_ok, Vimplicit_str_to_num_ok):
+	Delete decls.
+
+	* pt-mat.cc (tree_matrix::rvalue): Vimplicit_num_to_str_ok no
+	longer exists.
+
+	* ov.cc (Vwarn_imag_to_real): New variable.
+	(warn_imag_to_real): New function.
+	(symbols_of_ov): Add DEFVAR for warn_imag_to_real.
+	* ov.h (Vwarn_imag_to_real): Provide decl.
+
+	* ov.cc (Vok_to_lose_imaginary_part): Delete unused variable.
+	(ok_to_lose_imaginary_part): Delete unused function.
+	(symbols_of_ov): Delete DEFVAR for ok_to_lose_imaginary_part.
+	* ov.h (Vok_to_lose_imaginary_part): Delete decl.
+
+	* ov-complex.cc (octave_complex::double_value): Warn based on
+	Vwarn_imag_to_real instead of Vok_to_lose_imaginary_part.
+	(octave_complex::matrix_value): Likewise.
+	* ov-cx-mat.cc (octave_complex_matrix::double_value): Likewise.
+	(octave_complex_matrix::matrix_value): Likewise.
+
+	* octave.cc (maximum_braindamage): Don't set ok_to_lose_imaginary_part.
+
+2003-07-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (sig_hup_or_term_handler): New function.
+	(install_signal_handlers): Install sig_hup_or_term_handler for
+	SIGHUP and SIGTERM instead of generic_sig_handler.
+	(Vsighup_dumps_octave_core, Vsigterm_dumps_octave_core):
+	New static variables.
+	(sighup_dumps_octave_core, sigterm_dumps_octave_core):
+	New static functions.
+	(symbols_of_sighandlers): Add DEFVARs for sighup_dumps_octave_core
+	and sigterm_dumps_octave_core.
+
+	* defaults.h.in (OCTAVE_LOCALAPIFCNFILEDIR, OCTAVE_LOCALAPIOCTFILEDIR):
+	Subsitute new variables.
+
+	* defun.cc (check_version): Compare version to OCTAVE_API_VERSION,
+	not OCTAVE_VERSION.  Mismatch is now fatal.
+	* defun-int.h (DEFINE_FUN_INSTALLER_FUN3): Pass
+	OCTAVE_API_VERSION instead of OCTAVE_VERSION to check_version.
+	* version.h (OCTAVE_API_VERSION): New macro, initial value api-v1.
+
+	* defaults.cc (Vdefault_exec_path): New static variable.
+	(set_default_default_exec_path): New function.
+	(install_defaults): Call it.
+	(exec_path): Use it.
+	(default_exec_path): New function.
+	(symbols_of_defaults): Add DEFVAR for DEFAULT_EXEC_PATH.
+
+2003-07-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.h.in (OCTAVE_LOCALSTARTUPFILEDIR, OCTAVE_STARTUPFILEDIR):
+	Set values directly instead of constructing them.
+
+2003-06-28  Arno J. Klaassen  <arno@heho.snv.jussieu.fr>
+
+	* toplev.cc (octave_config_info): Key for OCTAVE_CONF_DEFS should
+	be DEFS, not UGLY_DEFS.
+
+2003-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.50.
+
+2003-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (symbol_exist): Distinguish between user and dld
+	functions loaded in memory.
+
+2003-06-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mat.cc (tm_row_const::init, tm_const::init): Don't ignore
+	empty matrices that have one non-zero dimension.
+
+	* variables.cc (symbol_exist): Use dir_path::find_first_of to
+	search for .oct and .m files.
+
+	* ov-base.cc (octave_base_value::subsasgn): Also allow type
+	conversion for empty numeric objects with more than one index.
+	* ov-base-mat.cc (octave_base_matrix<T>::subsasgn): Likewise.
+
+2003-06-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (do_who): New arg, return_list.  If return_list is
+	true, return values in cell or struct arrays instead of printing.
+	(Fwho, Fwhos): If nargout is 1, ask do_who to return lists of values.
+	* oct-map.h (Octave_map (const std::string&, const octave_value_list&):
+	New constructor.
+
+2003-06-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-idx.cc (tree_index_expression::rvalue):
+	Correctly handle index expressions like x(end).f(end).
+	(tree_index_expression::lvalue): Likewise.
+
+	* pt-arg-list.cc (F__end__): Add nr, nc info to error messages.
+
+2003-06-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (set_format (const Matrix&, int&, double&)): Ask
+	any_element_is_negative to return true for negative zero as well.
+	(set_format (const ComplexMatrix&, int&, int&, double&)): Likewise.
+
+2003-06-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (main_loop): Set octave_interrupt_hook and
+	octave_bad_alloc_hook to unwind_protect::run_all here.
+	(recover_from_exception): Don't call unwind_protect::run_all here.
+
+	* pt-except.cc (do_catch_code): Return immediately if
+	octave_interrupt_immediately is nonzero.
+
+	* sighandlers.cc (sigint_handler): If jumping, don't set
+	octave_interrupt_state.
+
+2003-06-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (get_save_type): Avoid all save types other than
+	LS_DOUBLE to avoid apparent Matlab bugs.
+
+2003-06-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (frob_function, parse_fcn_file): Handle help_buf as
+	stack of strings.
+	* lex.l ({CCHAR}): Handle help_buf as stack of strings.
+	Store text returned from grab_help_text in help_buf here.
+	(reset_parser): Handle help_buf as stack of strings.
+	(prep_for_nested_function): Push empty string onto help_buf stack.
+	(grab_help_text): Return help text instead of storing it in help_buf.
+	* parse.h, parse.y (help_buf): Now a stack of strings.
+
+	* oct-stream.cc (printf_value_cache::string_value): Don't attempt
+	to extract values when none are available.
+
+2003-06-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (Vgnuplot_has_multiplot): Delete variable.
+	(gnuplot_has_multiplot): Delete.
+	(symbols_of_pt_plot): Delete DEFVAR for gnuplot_has_multiplot.
+
+2003-05-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.49.
+
+2003-05-28  Teemu Ikonen  <tpikonen@pcu.helsinki.fi>
+
+	* load-save.cc (save_mat5_binary_element, save_mat_binary_data):
+	Allow saving of non-7-bit ASCII characters.
+
+2003-05-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (FINISH_CHARACTER_CONVERSION,
+	octave_base_stream::do_scanf): Do a better job of resizing for
+	charachter conversions.
+
+2003-05-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cx-mat.cc (octave_complex_matrix::assign): Move definition here.
+	* ov-cx-mat.h: From here.
+
+2003-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-range.cc (octave_range::try_narrowing_conversion): Convert to
+	[](1x0) instead of [](0x0) if range is empty.
+
+2003-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Handle DESTDIR.
+
+2003-05-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: Use yyunput (X, yytext) instead of unput (X) for newer
+	versions of flex.
+
+2003-05-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.48.
+
+2003-05-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.47.
+
+2003-05-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_ascii_data): If saving a range with
+	non-integer base, limit, or increment, save as matrix instead.
+	(get_save_type): Avoid unsigned types.
+
+2003-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (initialize_pathsearch): Don't save old and set new
+	value of TEXMFDBS.
+
+	* toplev.cc (restore_texmfdbs_envvar): Delete function.
+	(Fsystem): Don't set and reset TEXMFDBS.
+
+	* toplev.h, toplev.cc (octave_original_texmfdbs): Delete variable.
+
+2003-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/getpwent.cc (Fgetpwnam): Delete unnecessary
+	c_str() method.
+
+2003-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc: Include <memory> for auto_ptr.
+
+2003-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (octave_config_info): Delete LIBKPATHSEA from struct.
+	* oct-conf.h.in: Don't substitute LIBKPATHSEA.
+
+	* octave.cc (octave_main): Don't call dir_path::set_program_name.
+
+2003-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-file.h (octave_file::empty_clone): Create an octave_scalar
+	object, not an octave_file object.
+
+2003-04-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (hdf5_read_next_data): Extract list before
+	assigning to map element.
+	(add_hdf5_data): Prefix faked names with '_' so they are valid
+	identifiers.
+
+2003-03-24  Mats Jansson  <mats.e.jansson@home.se>
+
+	* syscalls.cc (Fkill): Fixed docstring typo.
+
+2003-03-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.h (octave_cell::is_matrix_type): New function.
+
+2003-03-09  Duncan Temple Lang  <duncan@research.bell-labs.com>
+
+	* octave.cc (octave_main): New arg, embedded.
+	* octave.h: Fix decl.
+	* main.c: Pass 0 for embedded here.
+
+2003-03-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.46.
+
+	* oct-conf.h.in: Undo previous change.
+
+	* load-save.cc (read_mat5_binary_element): Handle structure arrays.
+	(save_mat5_binary_element): Likewise.
+
+2003-03-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (octave_cell::subsasgn): Use make_unique in
+	appropriate places to preserve copy on write semantics.
+
+	* oct-conf.h.in: Substitute OCTAVE_CONF_KPATHSEA_INCFLAGS.
+
+	* oct-stdstrm.h (octave_stdiostream::output_stream): Return stream
+	if mode is out, not in.
+
+2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strfns.cc (Fchar): New function.
+
+	* ov-cell.cc (octave_cell::all_strings): Allow elements to be
+	string arrays.
+	* ov.cc (octave_value::all_strings, octave_value::convert_to_str):
+	New optional arg, pad.  Change all derived classes.
+
+	* ov-struct.cc (Ffieldnames, Fisfield): Move here from data.cc.
+
+	* data.cc (Ffieldnames): Rename from Fstruct_elements.  Return
+	cell array instead of a string array.
+	(Fisfield): Rename from struct_contains.
+
+2003-02-22  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* toplev.cc: Put config info in array of strings, then convert to map.
+
+2003-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (symbol_exist): For names like foo.bar, don't omit
+	the part after the dot.
+
+2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (fun_to_call): New static variable.
+	(octave_main): Pass it to main_loop.
+	(long_opts): Accept --funcall.
+	(usage_string, verbose_usage): Add --funcall.
+
+	* toplev.cc (main_loop): New arg, fun_to_call.  If non-empty,
+	evaluate this function before continuing.
+
+2003-02-21  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* file-io.cc (Fmkstemp): Use OCTAVE_LOCAL_BUFFER instead of using
+	std::auto_ptr directly.
+
+2003-02-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h, ov.cc (octave_value (long long int)): New constructor.
+	(octave_value (unsigned long long int)): Likewise.
+
+	* oct-obj.h (octave_value_list::operator delete): Handle systems
+	with or without placement delete.
+
+2003-02-21  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* utils.cc (octave_vsnprintf): Return value of vsnprintf is int,
+	not size_t.  Make sure there is some space left in the buffer for
+	vsnprintf versions which return the number of characters written
+	even when the buffer is too short.
+
+2003-02-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* debug.cc (get_user_function): Use dynamic_cast, not static_cast.
+
+	* ov-usr-fcn.cc (octave_user_function::traceback_error): Now const.
+
+	* ov.cc (octave_value (const octave_fcn_handle&)): New constructor.
+	(octave_value::fcn_handle_value): New virtual function.
+	* ov-base.cc (octave_value::fcn_handle_value): Provide default.
+	* ov-usr-fcn.cc (octave_user_function::stash_fcn_file_name): New
+	arg, nm.  Change all callers.
+	* ov-fcn.h (octave_function::is_nested_function): New virtual function.
+	* parse.y (get_feval_args): New function.
+	(feval (octave_function *, const octave_value_list&, int)): Likewise.
+	(feval (const octave_value_list&, int)): Allow the first arg to be
+	a function handle as well as a string.
+	* variables.cc (load_function): New function.
+	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc, pt-check.h, pt-check.cc,
+	pt-bp.h, pt-bp.cc: Handle new tree_fcn_handle class.
+	* pt-all.h: Include pt-fcn-handle.h.
+	* pt-fcn-handle.h, pt-fcn-handle.cc, ov-fcn-handle.h,
+	ov-fcn-handle.cc: New files.
+
+2003-02-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (FCN_HANDLE): New token type.
+	(fcn_handle): New non-terminal.
+	(primary_expr): Also accept fcn_handle.
+	(tree_fcn_handle_type): New %type.
+	(union): New field, tree_fcn_handle_type.
+	(make_fcn_handle): New function.
+
+	* lex.l (@{IDENT}): Recognize function handle syntax.
+	(@): Don't recognize "@" as a single token.
+
+	* load-save.cc (struct hdf5_callback_data): Provide constructor.
+	(hdf5_callback_data::name, hdf5_callback_data::doc): Now
+	std::string instead of char*.  Change all uses.
+
+2003-02-18  Roger Banks  <rbanks@colsa.com>
+
+	* load-save.cc (read_ascii_data, read_ascii_data,
+	read_mat5_binary_element, save_mat5_binary_element,
+	save_ascii_data): Handle cell arrays.
+	(write_mat5_cell_array): New function.
+
+2003-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DLD_XSRC): Delete log.cc from the list.
+	Add sqrtm.cc to the list.
+
+	* DLD-FUNCTIONS/log.cc: Delete.
+
+2003-02-18  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* DLD-FUNCTIONS/sqrtm.cc: New file.
+
+2003-02-18  David Bateman  <dbateman@free.fr>
+
+	* DLD-FUNCTIONS/lu.cc (Flu): Allow non-square matrices.
+
+2003-02-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_binary_file_header, do_load, do_save,
+	write_header): No longer static.
+	(load_save_format): Move enum decl to load-save.h.
+
+2003-02-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stdstrm.h, oct-stdstrm.cc (octave_base_stdiostream,
+	octave_iostdiostream, octave_istdiostram, octave_ostdiostream):
+	Combine all functionality into one class, octave_stdiostream.
+	Change all uses.
+
+	* file-io.cc (Ftmpfile, Fmkstemp): New functions.
+	* oct-stdstrm.h (octave_iostdiostream): New class.
+	(octave_istdiostream::octave_istdiostream,
+	octave_istdiostream::create,
+	octave_ostdiostream::octave_ostdiostream, octave_ostdiostream::create,
+	octave_iostdiostream::octave_iostdiostream,
+	octave_iostdiostream::create): Make close function the last arg.
+	Change all uses.
+
+	* c-file-ptr-stream.h (io_c_file_ptr_stream): New class.
+
+2003-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Set boolean built-in variables
+	to true and false instead of 1.0 and 0.0.
+	(octave_main): Likewise.
+	* error.cc (Fwarning): Likewise.
+
+	* pager.cc (Fmore): Make the no-arg case work too.
+
+	* ov-str-mat.h (octave_char_matrix_str::is_real_type,
+	octave_char_matrix_str::is_matrix_type,
+	octave_char_matrix_str::is_numeric_type): Always return false.
+
+2003-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (<CCHAR>): If we are parsing a command, reset start state.
+	Use BEGIN (INITIAL) instead of BEGIN 0.  Use parens around start
+	state in BEGIN statements.
+
+2003-02-13  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* variables.cc (Fmlock, Fmunlock, Fmislocked): New functions.
+
+	* variables.cc (mlock, munlock, mislocked): New functions.
+	* variables.h: Provide decls.
+
+	* symtab.h (symbol_record::unmark_static): New function.
+
+2003-02-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (reset_error_handler): New function.
+	* toplev.cc (main_loop): Use it here.
+	* lex.l (reset_parser): Don't set error_state and warning_state here.
+	* parse.y (eval_string): Reset parser before calling yyparse.
+
+2003-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Ffmod): New function.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::underflow_common): New
+	function.
+	* c-file-ptr-stream.h (c_file_ptr_buf::underflow,
+	c_file_ptr_buf::uflow): Use it.
+	(c_file_ptr_buf): Derive from std::streambuf, not OCTAVE_STD_FILEBUF.
+	Don't cache file descriptor.
+
+2003-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/minmax.cc: Move min and max functions from here to
+	liboctave/dMatrix.cc and liboctave/CMatrix.cc.
+
+2003-01-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/rand.cc: Rewrite to use new octave_rand functions.
+
+2003-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_printf): Handle values
+	outside the range of integers in int conversions for
+	compatibilitiy wtih Matlab.
+
+2003-01-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (get_mat_data_input_line): Handle lines with CR
+	only as separator.
+
+	* oct-stream.cc (octave_base_stream::do_printf): Handle Inf and
+	NaN in int conversions for compatibility with Matlab.
+
+	* data.cc (symbols_of_data): Doc fix for realmin.
+
+	* cutils.c (octave_raw_vsnprintf): New function.
+	* utils.cc (octave_snprintf): Move here from cutils.c.
+	(octave_Vsnprintf): Likewise.  Allow octave_raw_vsnprintf to be
+	interrupted.
+	* utils.h (octave_vsnprintf, octave_snprintf): No longer extern "C".
+
+2003-01-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-loop.cc (tree_complex_for_command::eval): Fix typo.
+
+2003-01-16  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* mk-oct-links: Use $SED if set.
+	* mkbuiltins: Likewise.
+	* mkdefs: Likewise.
+	* mkdocs: Likewise.
+	* mkgendoc: Likewise.
+	* mkops: Likewise.
+
+2003-01-11  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in (gendoc$(BUILD_EXEEXT)): Pass $(BUILD_CXXFLAGS) and
+	$(BUILD_LDFLAGS) to compiler.
+
+2003-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (Fassignin): New function.
+
+2003-01-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (make_sig_struct): New function.
+	(symbols_of_sighandlers): Add DEFCONST for SIG struct.
+
+	* syscalls.cc (Fkill): New function.
+
+2003-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (get_size): If only one dimension is specified and
+	it is zero, also set the other dimension to zero instead of one.
+
+2003-01-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc [__DECCXX]: Add a kluge for some missing template
+	functions.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (octave_vr_val): Assert vr_list != 0, not vr_list.
+	* variables.cc (builtin_string_variable, builtin_any_variable,
+	builtin_real_scalar_variable, bind_builtin_variable): Likewise.
+
+	* TEMPLATE-INST/Array-tc.cc: Provide specialization of
+	Array<octave_value>::resize_fill_value before instantiation of
+	Array<octave_value>.
+
+	* oct-obj.h (octave_value_list::operator delete): Define version
+	of delete operator to correspond to placement new operator.
+
+	* mkgendoc: In generated code, define __USE_STD_IOSTREAM if using
+	Compaq C++.
+
+	* Makefile.in (distclean): Also remove doc-files and gendoc.cc.
+
+	* input.cc (initialize_command_input): Use const for
+	initialization of char * from literal string.
+
+	* pt-plot.cc (subplot::extract_plot_data): Call single_subsref,
+	not subsref.
+	* ov.h, ov.cc (single_subsref (const std::string&, const
+	octave_value_list&)): Rename from subsref.
+
+	* symtab.cc (symbol_table::rename): Explicitly convert C string to
+	std::string so type of second arg of ?: matches third.
+	(symbol_table::lookup): Likewise.
+
+	* mappers.cc: Remove std:: qualifiers from C library names.
+
+2003-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-exp.h (tree_expression::has_magic_end): New pure virtual function.
+	* pt-id.h (tree_identifier::has_magic_end): New function.
+	* pt-colon.h (tree_colon_expression::has_magic_end): Likewise.
+	* pt-idx.h (tree_index_expression::has_magic_end): Likewise.
+	* pt-const.h (tree_constant::has_magic_end): Likewise.
+	* pt-unop.h (tree_unary_expression::has_magic_end): Likewise.
+	* pt-binop.h (tree_binary_expression::has_magic_end): Likewise.
+	* pt-assign.h (tree_multi_assignment::has_magic_end): Likewise.
+	(tree_simple_assignment::has_magic_end): Likewise.
+	* pt-mat.cc (tree_matrix::has_magic_end): Likewise.
+	* pt-arg-list.cc (tree_argument_list::has_magic_end): Likewise.
+
+	* pt-arg-list.cc (tree_argument_list::append): Check all
+	expression types for magic end token..
+
+	* file-io.cc (Ftmpnam): Improve error checking.
+	(symbols_of_file_io): Move definition of P_tmpdir here from dirfns.cc.
+
+	* dirfns.cc (symbols_of_dirfns): Install new built-in constant
+	P_tmpdir.
+
+2003-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (symbols_of_dirfns): New function.
+	Install new built-in constant filesep.
+
+	* utils.cc (Fisvaranme): New function.
+	(valid_identifier): Identifiers can't start with digits!  Doh!
+
+	* lex.l (Fiskeyword): New function.
+
+	* Makefile.in (INCLUDES): Don't forget base-list.h.
+
+	* symtab.cc (symbol_record::define): If definition already exists,
+	redefine it instead of replacing it.
+
+	* variables.cc (symbol_exist): Don't use reference when handling
+	sr->def ().
+
+	* pt-plot.cc (save_in_tmp_file): octave_value arg is now const.
+	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
+	Likewise.
+
+	* symtab.cc (symbol_record::clear): Don't do anything if the
+	symbol record is already undefined.
+
+2003-01-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-arg-list.cc (tree_argument_list::append): New function.
+	(tree_argument_list::convert_to_const_vector): Don't save and
+	set pointer to indexed object if list_includes_magic_end is false.
+	* pt-arg-list.h (tree_argument_list::append): Provide decl.
+	(tree_argument_list::list_includes_magic_end): New data member.
+	(tree_argument_list::tree_argument_list): Initialize it.
+
+	* ov-base.cc (octave_base_value::char_matrix_value,
+	octave_base_value::all_strings,	octave_base_value::string_value):
+	Attempt conversions here if Vimplicit_num_to_num_ok is true.
+
+	* ov.cc (Vimplicit_num_to_str_ok): Move here from pt-mat.cc and
+	make extern.
+	* ov.h: Provide decl.
+
+	* oct-stream.cc (printf_value_cache::looking_at_string): Delete.
+	(printf_value_cache::string_value): Just attempt conversion.
+	(octave_base_stream::do_printf): When doing '%s' format,
+	just attempt converstion.
+
+	* file-io.cc (Ffread): Allow size to be omitted even when
+	additional arguments are given.
+
+2002-12-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-arg-list.cc (F__end__): Fail if rows or columns is negative.
+	(tree_argument_list::convert_to_const_vector): Only protect and
+	save pointer to the indexed object if it is a constant.
+
+	* syscalls.cc (Fmkfifo): Use long_value instead of cast.
+
+	* ov.h (octave_value::short_value, octave_value::ushort_value,
+	octave_value::uint_value, octave_value::long_value,
+	octave_value::ulong_value): New functions.
+
+	* syscalls.cc (mk_stat_map, Fgetegid, getgid, geteuid): Likewise.
+	Delete unnecessary casts.
+	* file-io.cc (Ffgetl, Ffgets, Fftell, Fsscanf): Likewise.
+	* toplev.cc (Fsystem): Likewise.
+
+	* ov-file.h (octave_file::double_value,	octave_file::scalar_value):
+	Delete unnecessry cast.
+
+	* ov.cc (octave_value::octave_value): Add constructors for
+	octave_time, short int, unsigned short int, unsigned int, long
+	int, unsigned long int,
+
+	* ov.h (octave_value::do_subsref (const std::string&, const
+	octave_value_list&)): Rename from subsref.  Change all derived classes.
+
+	* input.cc (generate_completion): Delete unused variable prefix_len.
+
+	* ov.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): Delete volatile
+	qualifier for decls of static_type_id and t_id.
+	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Likewise, for def of t_id.
+
+2002-12-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (Ffile_in_path): Index args correctly.
+
+	* utils.cc (Ffile_in_path): Call error, not print_usage, for
+	invalid option error.
+	(Ffile_in_loadpath): Likewise.
+
+	* load-save.cc: Use OCTAVE_LOCAL_BUFFER instead of local automatic
+	arrays or using new/delete.
+
+	* lex.l (.): Try another approach to handling EOF here.
+
+	* load-save.cc (read_mat_ascii_data): Use isalpha and isalnum, not
+	::isalpha and ::isalnum.
+
+	* defaults.cc (maybe_add_or_del_packages): SCRIPT_FILE arg is now
+	a const reference type.
+
+	* ov.h (octave_value::subsref, octave_value::subsasgn,
+	octave_value::assign, octave_value::do_non_const_unary_op,
+	octave_value::numeric_assign): TYPE arg is now a const reference
+	type.  Change all derived classes.
+
+	* ov.cc (octave_value::subsref (const std::string&, const
+	octave_value_list&)): Move body here, from ov.h.
+
+	* octave.cc (octave_main): Return 0 at end of function to avoid
+	compiler warnings.
+
+2002-12-30  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* parse.y: Fix typo in doc string.
+
+2002-12-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/lpsolve.cc (Flpsolve): Rename from Flp_solve.
+	(Flpsolve_options): Rename ffrom Flp_solve_options.
+
+2002-12-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (Fevalin): New function.
+
+	* variables.cc (curr_caller_sym_tab): New global variable.
+	* variables.h: Provide decl.
+	(initialize_symbol_tables): Initialize it.
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Protect	and set it here.
+
+2002-12-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (search_path_for_file): Second arg now string_vector.
+	Use find_first_of, not find.
+	(search_path_for_all_files): Second arg now string_vector.
+	Use find_all_first_of, not find_all.
+	(Ffile_in_path): Accept cell array of strings as first argument.
+	(Ffile_in_loadpath): Likewise.
+
+	* dynamic-ld.cc (octave_dynamic_loader::load): New arg, file_name.
+	(octave_dynamic_loader::do_load): Likewise.  If file_name is not
+	empty, use it instead of searching in path.
+
+	* parse.y (load_fcn_from_file): Use find_first_of to perform search.
+
+	* ov-cell.cc (octave_cell::all_strings): New function.
+	* ov-cell.h: Provide decl.
+
+2002-12-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (function_end): If parsing a nested function, set
+	lexer_flags.parsing_nested_function to -1.
+	(frob_function): If lexer_flags.parsing_nested_function is
+	negative, set it to zero.
+	* lex.h (lexical_feedback::parsing_nested_function): Now int.
+	Change uses as needed.
+
+	* lex.l (NESTED_FUNCTION_BEGIN): Rename from NESTED_FUNCTION_START.
+	Now an exclusive start state.
+	(NESTED_FUNCTION_END): New exclusive start state.
+	(is_keyword): When matching a new function keyword in a nested
+	function context, explicitly return END and set start state to
+	NESTED_FUNCTION_END.
+	(.): Accept EOF here too.
+
+	* variables.cc (link_to_builtin_or_function): Maybe prepend parent
+	function name symbol name.
+
+	* parse.y (parent_function_name): New variable.
+	(fcn_name): New non-terminal.
+	(function2): Use it.
+	(parsed_fcn_name): Fold into fcn_name.
+	(function_end): Don't call check_for_garbage_after_fcn_def.
+	Set lexer_flags.parsing_nested_function on EOF.
+	* parse.h: Provide decl for parent_function_name.
+
+	* ov-usr-fcn.h (octave_user_function::mark_as_nested_function,
+	(octave_user_funciton::is_nested_function): New functions.
+	(octave_user_function::nested_function): New data member.
+	(octave_user_function::do_multi_index_op): Maybe protect and set
+	curr_parent_function pointer.
+	* parse.y (frob_function): Maybe mark as nested function.
+
+	* toplev.cc (curr_parent_function): New global variable.
+	* toplev.h: Provide decl.
+
+	* lex.l (check_for_garbage_after_fcn_def): Delete.
+	* lex.h: Delete decl.
+
+	* lex.l (prep_for_nested_function): New function.
+	(<NESTED_FUNCTION_START>): Use it here.
+	(is_keyword): And here.
+	(lookup_identifier): Maybe prepend parent function name.
+
+	* variables.cc (initialize_symbol_tables): Give names to the three
+	main symbol tables.
+	* symtab.cc (symbol_table::lookup, symbol_table::rename): Print
+	debugging info if Vdebug_symtab_lookups is nonzero.
+	(debug_symtab_lookups): New function.
+	(Vdebug_symtab_lookups): New static varaible.
+	(symbols_of_symtab): DEFVAR it.
+	* symtab.h (symbol_table::table_name): New member variable.
+	(symtab_count): New static member variable.
+	(symbol_table::symbol_table): Handle table name.
+
+2002-12-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (frob_function): Don't give nested functions the same
+	name as the function file.
+
+	* lex.h (lexical_feedback::parsing_nested_function): New data member.
+	* lex.l (lexical_feedback::init): Initialize it to false.
+	(<NESTED_FUNCTION_START>): Set lexer_flags.parsing_nested_function
+	to true.
+
+	* parse.y (symtab_context): Now a stack.  Change all uses.
+
+	* lex.l (NESTED_FUNCTION_START): New start state to handle
+	"function" keyword in a nested function context.
+	(prep_for_function): New function.
+	(is_keyword): Allow functions to be nested in function files.
+
+	* lex.l (is_keyword): Maybe ignore END tokens.
+	Increment and decrement end_tokens_expected as appropriate.
+	(handle_identifier): If is_keyword returns -1, return immediately.
+	({IDENT}{S}*): Do nothing if handle_identifier returns -1.
+
+	* parse.y (end_tokens_expected): New variable.
+	(parse_fcn_file): Protect and set it.
+
+	* parse.y (begin_obj_idx): Increment
+	lexer_flags.looking_at_object_index.
+	(postfix_expr): Decrement it as appropriate here.
+
+	* lex.h (lexical_feedback::looking_at_object_index): Now int.
+
+	* parse.y (postfix_expr): Reset	lexer_flags.looking_at_object_index
+	in () and {} cases too.
+
+2002-12-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-arg-list.cc (indexed_object, indexed_position):
+	New file-scope static variables.
+	(tree_argument_list::convert_to_const_vector): New arg, object.
+	Protect and set indexed_object and indexed_position.
+	(F__end__): New function.
+
+	* octave-lvalue.h (octave_lvalue::object): New member function.
+	* pt-idx.cc (make_value_list): New arg, object.  Change all
+	callers.  Pass object to convert_to_const_vector.
+
+	* lex.h (lexical_feedback.looking_at_object_index): New data member.
+	* lex.l (lexical_feedback::init): Initialize it.
+	(is_keyword): If looking at object index, end is not a keyword.
+	(handle_identifier): If end is not a keyword, transform it to __end__.
+	* parse.y (begin_obj_idx): New non-terminal.
+	(postfix_expr): Use it.
+
+	* defun.cc (install_builtin_function): New arg, can_hide_function.
+	* defun-int.h: Fix decl.
+	(DEFCONSTFUN_INTERNAL): New macro.
+	* defun.h (DEFCONSTFUN): New macro.
+	* mkbuiltins (XDEFCONSTFUN_INTERNAL): New macro.
+	* mkgendoc: Likewise.
+	* Makefile.in (DEFUN_PATTERN): Make it work for DEFCONSTFUN too.
+	* symtab.h (symbol_record::can_hide_function): New data member.
+	(symbol_record::symbol_record): Initialize it.
+	* symtab.cc (symbol_record::variable_reference): Also check
+	can_hide_function flag.
+
+2002-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/time.cc (extract_tm): Use int_value() instead of
+	casting double_value() to int.
+
+	* ov.cc (octave_value::next_subsref): Arg "skip" is now size_t.
+
+	* oct-obj.h (octave_value_list::octave_value_list (double),
+	octave_value_list::octave_value_list (const Matrix&),
+	octave_value_list::octave_value_list (const DiagMatrix&),
+	octave_value_list::octave_value_list (const RowVector&),
+	octave_value_list::octave_value_list (const ColumnVector&),
+	octave_value_list::octave_value_list (const Complex&),
+	octave_value_list::octave_value_list (const ComplexMatrix&),
+	octave_value_list::octave_value_list (const ComplexDiagMatrix&),
+	octave_value_list::octave_value_list (const ComplexRowVector&),
+	octave_value_list::octave_value_list (const ComplexColumnVector&),
+	octave_value_list::octave_value_list (const char *),
+	octave_value_list::octave_value_list (const std::string&),
+	octave_value_list::octave_value_list (const string_vector&),
+	octave_value_list::octave_value_list (double, double, double),
+	octave_value_list::octave_value_list (const Range&): Delete.
+	Adjust uses of octave_value/octave_value_list to handle this change.
+
+	* ov.cc (octave_value::octave_value (int)): New constructor.
+	* ov.h: Provide decl.
+	In files that construct integer-valued octave_value objects, use
+	ints instead of casing to double.
+
+2002-12-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_mat_ascii_data): Allow commas to separate values.
+	Try harder to convert filenames to valid identifiers in a
+	Matlab-compatible way.
+
+2002-12-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: No need to add $(LIBKPATHSEA) to LINK_DEPS, since
+	it is not included in liboctave.
+
+2002-12-18  JD Cole  <jdcole@san.rr.com>
+
+	* pt-check.cc (tree_checker::visit_subplot_axes,
+	tree_checker::visit_do_until_command): New functions.
+	* pt-check.h: Provide decl.
+
+2002-12-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fclear): Fix off-by-one error.
+
+	* oct-stream.cc (octave_base_stream::do_gets): Correctly read
+	last line of file even if it does not end with new line
+	character.
+
+	* pt-select.cc (equal): Don't look up == op, just try it and see
+	whether it works.
+
+	* oct-stream.cc (printf_format_list::printf_format_list):
+	Handle empty format string.
+
+2002-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mat.cc (class tm_row_const::tm_row_const_rep): Derive from
+	octave_base_list instead of SLList.  Fix tm_row_const member
+	functions as needed, change all uses.
+	(class tm_const): Derive from octave_base_list, not SLList.  Fix
+	member functions as needed, change all uses.
+	* pt-mat.h (class tree_matrix): Derive from octave_base_list
+	instead of including SLList object as data member.  Fix member
+	functions as needed, change all uses.
+
+	* pt-idx.h (tree_index_expression::args,
+	tree_index_expression::arg_nm, tree_index_expression::dyn_field):
+	Now std::list, not SLList.  Fix member functions as needed, change
+	all uses.
+
+	* oct-map.h (Octave_map::map): Now std::map instead of CHMap.
+	Fix member functions as needed, change all uses.
+
+	* oct-lvalue.h (octave_lvalue::idx): Now std::list instead of
+	SLList object.  Fix member functions as needed, change all uses.
+
+	* dynamic-ld.cc (octave_shlib_list::lib_list): Now std::list
+	instead of DLList object.  Fix member functions as needed, change
+	all uses.
+
+	* ov.h (octave_value::subsref, octave_value::subsasgn):
+	Index arg is not std::list, not SLList.  Change all derived
+	classes, all uses.
+
+	* pt-stmt.h (tree_statement_list): Derive from base_octave_list
+	object instead of including SLList object as data member.  Fix
+	member functions as needed, change all uses.
+	* pt-select.h (tree_switch_case_list): Likewise.
+	(tree_if_command_list): Likewise.
+	* pt-misc.h (tree_parameter_list, tree_return_list,
+	tree_va_return_list): Likewise.
+	* pt-plot.h (subplot_list): Likewise.
+	* pt-mat.h (tree_matrix): Likewise.
+	* pt-decl.h (tree_decl_init_list): Likewise.
+	* pt-arg-list.h (tree_argument_list): Likewise.
+	* comment-list.h (octave_comment_list): Likewise.
+
+	* BaseSLList.cc, DLList.cc, Map.cc, SLList.cc, SLStack.cc,
+	Stack.cc: Delete.
+	* Makefile.in (DIST_SRC): Delete them from the list.
+
+	* BaseSLList.h, DLList.h, Map.h, Pix.h, SLList.h, SLStack.h,
+	Stack.h: Delete
+	* Makefile.in (INCLUDES): Delete them from the list.
+
+	* Map-oct-obj.cc, SLList-expr.cc, SLList-misc.cc, SLList-plot.cc,
+	SLList-tc.cc, SLList-tm.cc: Delete.
+	* Makefile.in (TI_XSRC): Delete them from the list.
+
+	* ov-base-mat.cc (octave_base_matrix::assign): Pass
+	MT::resize_fill_value () as third arg for ::assign.
+
+	* Cell.h (Cell::resize_fill_value): Use empty Matrix object, not
+	undefined octave_value object.
+	(Cell::Cell (int, int, const octave_value&)): Use
+	resize_fill_value () as default value, not undefined octave_value
+	object.
+
+2002-12-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DEFUN_PATTERN): Make it work for DEFCMD too.
+
+	* base-list.h: New file.
+
+2002-12-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (octave_interpreter_ready): New global variable.
+	* toplev.h: Provide decl.
+
+	* octave.cc (octave_main): Call execute_default_pkg_add_files just
+	before executing startup files.  Set octave_interpreter_ready to
+	true before calling execute_default_pkg_add_files.
+
+	* defaults.cc (maybe_add_or_del_packages, default_load_path,
+	update_load_path_dir_path): New static functions.
+	(set_default_path, loadpath): Call update_load_path_dir_path.
+	(symbols_of_defaults): Use DEFVAR, not DEFCONST for DEFAULT_LOADPATH.
+	(execute_default_pkg_add_files): New function.
+	* defaults.h.in: Provide decl.
+
+	* utils.cc (search_path_for_all_files): New function.
+	(Ffile_in_loadpath, Ffile_in_path): Allow search to return all
+	files in the path.
+
+	* Cell.cc (Cell (const string_vector&)): New constructor.
+
+	* oct-obj.cc (octave_value_list::assign): Allow optional fill
+	value for resizing.
+	* oct-map.cc (Octave_map::assign): Pass fill_value in initial
+	assignment too.
+
+2002-12-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/Map-fnc.cc: Delete.
+	* Makefile.in (TI_XSRC): Delete them from the list.
+
+	* fn-cache.h (octave_fcn_file_name_cache::cache): Now std::map,
+	not CHMap.
+
+	* TEMPLATE-INST/SLStack-i.cc, TEMPLATE-INST/SLStack-ovl.cc,
+	TEMPLATE-INST/SLStack-pc.cc, TEMPLATE-INST/SLStack-str.cc,
+	TEMPLATE-INST/SLStack-sym.cc, TEMPLATE-INST/SLStack-tok.cc,
+	TEMPLATE-INST/SLStack-ue.cc, TEMPLATE-INST/SLStack-ui.cc:
+	Delete unnecessary files.
+	* Makefile.in (TI_XSRC): Delete them from the list.
+
+	* toplev.cc (octave_atexit_functions): Now std::stack, not SLStack.
+	* pt-plot.cc (tmp_files): Likewise.
+	* lex.l (token_stack): Likewise.
+	(class bracket_brace_paren_nesting_level): Make context a data
+	member instead of deriving from SLStack object.
+	Use std::stack instead of SLStack.
+	* ov-usr-fcn.h (octave_user_function::saved_args): Likewise.
+	* symtab.h (symbol_record::context): Likewise.
+	(symbol_record::global_link_context): Likewise.
+
+	* unwind-prot.h (unwind_protect::elt_list): Rename from list.
+	Now std::stack, not SLStack.
+
+	* pt-stmt.h (tree_statement_list): Make list member data instead
+	of deriving from SLList object.
+	* pt-select.h (tree_switch_case_list): Likewise.
+	(tree_if_command_list): Likewise.
+	* pt-plot.h (subplot_list): Likewise.
+	* pt-mat.h (tree_matrix): Likewise.
+	* pt-decl.h (tree_decl_init_list): Likewise.
+	* pt-arg-list.h (tree_argument_list): Likewise.
+	* comment-list.h (octave_comment_list): Likewise.
+
+	* defun.h (DEFCMD): Rename from DEFUN_TEXT.  Provide DEFUN_TEXT as
+	an alias for DEFCMD.  Change all uses.
+
+	* variables.cc (at_top_level): New function.
+	(do_who, Fmark_as_command, Funmark_command): Use it.
+
+	* lex.l (COMMAND_START): Rename from TEXT_FCN.  Change all uses.
+	(MATRIX_START): Rename from MATRIX.  Change all uses.
+	* variables.cc (command_function_set): Rename from
+	text_function_set.
+	(mark_as_command): Rename from mark_as_text_function.
+	(is_marked_as_command): Rename from is_marked_as_text_function.
+	(Fmark_as_command): Rename from Fmark_as_text_function.
+	(Funmark_command): Rename from Funmark_text_function.
+	(is_command_name): Rename from is_text_function_name.
+	* symtab.h (symbol_record::COMMAND): Rename from TEXT_FUNCTION.
+	(symbol_record::mark_as_command): Rename from mark_as_text_function.
+	(symbol_record::unmark_command): Rename from
+	symbol_record::unmark_text_function.
+	(symbol_record::is_command): Rename from
+	symbol_record::is_text_function.
+	(symbol_record::symbol_def::mark_as_command): Rename from
+	symbol_record::symbol_def::mark_as_text_function.
+	(symbol_record::symbol_def::unmark_command): Rename from
+	symbol_record::symbol_def::unmark_text_function.
+	(symbol_record::symbol_def::is_command): Rename from
+	symbol_record::symbol_def::is_text_function.
+
+	* pt-jump.h, pt-jump.cc: Undo previous changes.
+	* parse.y: Undo previous changes for brea, continue, and return.
+
+2002-11-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-stmt.cc (tree_statement::eval): Allow the lookup to execute
+	script files.  If script file has been executed, don't bother to
+	call expr->rvalue ().
+
+2002-11-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTINTERP_LINK_DEPS): Include $(FLIBS) in
+	OCTINTERP_LINK_DEPS.
+
+	* variables.cc (text_function_set): New static data.
+	(mark_as_text_function, unmark_text_function,
+	is_marked_as_text_function, Fmark_as_text_function,
+	Funmark_text_function): New functions.
+	(is_text_function_name): Handle functions marked as text functions
+	in special list, not just those marked in the symbol record.
+	* symtab.h (symbol_record::mark_as_text_function,
+	symbol_record::unmark_text_function,
+	symbol_record::symbol_def::mark_as_text_function,
+	symbol_record::symbol_def::unmark_text_function): New functions.
+
+	* oct-map.h (Octave_map::rows, Octave_map::columns): New functions.
+	* ov-struct.h (octave_struct::rows, octave_struct::columns,
+	octave_struct::length): New functions.
+
+2002-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_SH_LDFLAGS): New macro.
+	* toplev.cc (octave_config_info): Add it to the struct.
+
+	* lex.l (<TEXT_FCN>): If yytext begins with # or %, don't
+	recognize it as a string.
+
+	* oct-map.h (Octave_map::operator[]): New const version.
+	* oct-map.cc (equiv_keys): New function.
+	(assign (const idx_vector&, const Octave_map&)): New function.
+	* ov-struct.cc (octave_struct::subsasgn): Use it.
+
+2002-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.40.
+
+	* p-b-b.cc, op-bm-bm.cc, op-chm.cc, op-cm-cm.cc, op-cm-cs.cc,
+	op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc,
+	op-cs-s.cc, op-fil-b.cc, op-fil-bm.cc, op-fil-cm.cc, op-fil-cs.cc,
+	op-fil-lis.cc, op-fil-m.cc, op-fil-rec.cc, op-fil-s.cc,
+	op-fil-str.cc, op-list.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc,
+	op-m-s.cc, op-range.cc, op-s-cm.cc, op-s-cs.cc, op-s-m.cc,
+	op-s-s.cc, op-str-str.cc, op-bm-b.cc, op-cell.cc, BaseSLList.cc,
+	BaseSLList.h, ChangeLog, Map.cc, Map.h, SLList.cc, SLList.h,
+	SLStack.cc, SLStack.h, Stack.cc, Stack.h, oct-map.cc, oct-map.h,
+	oct-obj.cc, oct-obj.h, c-file-ptr-stream.cc, c-file-ptr-stream.h,
+	ov-base-mat.cc, ov-base-scalar.cc, ov-base-scalar.h, ov-base.cc,
+	ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h,
+	ov-builtin.cc, ov-builtin.h, ov-ch-mat.cc, ov-ch-mat.h,
+	ov-colon.cc, ov-complex.cc, ov-complex.h, ov.h, ov-cx-mat.cc,
+	ov-cx-mat.h, ov-fcn.cc, ov-fcn.h, ov-file.cc, ov-file.h,
+	ov-list.cc, ov-list.h, ov-mapper.cc, ov-mapper.h, ov-range.cc,
+	ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h,
+	ov-str-mat.cc, ov-str-mat.h, ov-struct.cc, ov-struct.h,
+	ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc, ov-usr-fcn.h,
+	ov-va-args.cc, ov.cc, ov-base-mat.h, procstream.cc, procstream.h,
+	pt-arg-list.cc, pt-arg-list.h, pt-binop.cc, pt-binop.h,
+	pt-check.cc, pt-check.h, pt-cmd.cc, pt-cmd.h, pt-colon.cc,
+	pt-colon.h, pt-const.cc, pt-const.h, pt-decl.cc, pt-decl.h,
+	pt-except.cc, pt-except.h, pt-exp.cc, pt-exp.h, pt-id.cc, pt-id.h,
+	pt-idx.cc, pt-idx.h, pt-jump.cc, pt-jump.h, pt-loop.cc, pt-loop.h,
+	pt-mat.cc, pt-mat.h, pt-misc.cc, pt-misc.h, pt-pr-code.cc,
+	pt-pr-code.h, pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h,
+	pt-unop.cc, pt-unop.h, pt.cc, pt.h, symtab.h, token.cc, token.h,
+	unwind-prot.cc, unwind-prot.h, ov-base-nd-array.cc,
+	ov-re-nd-array.h, ov-re-nd-array.cc, ov-base-nd-array.h,
+	comment-list.h, comment-list.cc, DLList.cc, DLList.h,
+	ov-dld-fcn.h, ov-dld-fcn.cc, Cell.cc, Cell.h, pt-cell.h,
+	pt-cell.cc, ov-cell.h, ov-cell.cc, pt-plot.cc, pt-plot.h,
+	pt-assign.cc, pt-assign.h, pt-bp.cc, pt-bp.h, symtab.cc,
+	ov-cs-list.h, ov-cs-list.cc:
+	Use "defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)" instead of
+	"! defined (NO_PRAGMA_INTERFACE_IMPLEMENTATION)".
+
+2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.h (octave_value_list::~octave_value_list): New function.
+
+2002-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/odessa.cc (odessa_user_j): Put T in args(1), not
+	args(0).
+
+2002-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (symtab_context): Now extern.
+	* parse.h: Provide decl.
+	* lex.l (reset_parser): Set it to 0.
+
+2002-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-bp.cc (octave_debug_on_interrupt_state): New global variable.
+	* pt-bp.h: Provide decl.
+	(MAYBE_DO_BREAKPOINT): Check it.
+
+	* sighandlers.cc (sigint_handler): Handle debug_on_interrupt.
+	(Vdebug_on_interrupt): New static variable.
+	(symbols_of_sighandlers): New function.  DEFVAR Vdebug_on_interrupt.
+	(debug_on_interrupt): New function.
+
+	* lex.h (YY_FATAL_ERROR): Use OCTAVE_QUIT here.
+
+	* utils.cc (toplevel): Delete variable.
+
+	* sighandlers.cc (OCTAVE_MEMORY_EXHAUSTED_ERROR): Delete.
+
+2002-11-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (octave_new_handler): Delete.
+	(install_signal_handlers): Don't call set_new_handler.
+	* toplev.cc (main_loop): Handle bad_alloc exception here.
+
+	* sighandlers.cc (octave_new_handler): Allow return after
+	OCTAVE_JUMP_TO_TOP_LEVEL.
+	(sigfpe_handler): Likewise.
+
+2002-11-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (is_variable): New static function.
+	(generate_struct_completions): Only evaluate objects that look
+	like variables.
+
+2002-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-jump.h, pt-jump.cc (tree_break_expression,
+	tree_continue_expression, tree_return_expression): Rename from
+	tree_break_command, tree_continue_command, tree_return_command.
+	Implement as expressions that return TRUE instead of commands.
+	Change all uses.
+	* parse.y (make_break_expression, make_continue_expression,
+	make_return_expression): Rename from make_break_command,
+	make_continue_command, make_return_command.  Change all uses.
+	(jump_expr): Rename from jump_command, type is now expression.
+	Use in simple_expr, not command.
+
+	* toplev.cc (octave_initialized): New global variable.
+	(main_loop): Set it to true here.
+	* sighandlers.cc (sigint_handler): Exit immediately if we have not
+	finished init process.
+
+	* load-save.cc (extract_keyword): Return std::string, not char *.
+	Change all uses.
+	(read_ascii_data): Likewise.
+	(read_binary_data): Likewise.
+	(read_hdf5_data): Likewise.
+	(read_mat_ascii_data): Likewise.
+	(read_mat_binary_data): Likewise.
+	(do_load): Name and doc are now std::string objects, not char *.
+	(install_loaded_variable): Likewise.
+	(read_hdf5_data): Doc is now std::string object, not char *&.
+	(read_mat_ascii_data): Call OCTAVE_QUIT in strategic locations.
+	(get_lines_and_columns): Likewise.
+
+	* toplev.cc (main_loop): Call OCTAVE_QUIT after executing command.
+	* parse.y (parse_and_execute (FILE *)): Likewise.
+
+2002-11-12  Joseph P. Skudlarek  <jskud@jskud.com>
+
+	* input.cc (match_sans_spaces_semi): Rename from match_sans_spaces.
+	Ignore trailing semicolons too.  Change all callers.
+
+2002-11-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.gperf: Allow "persistent" as a synonym for static.
+
+	* defun-int.h (DEFUN_MAPPER_INTERNAL): Don't forget doc string
+	when creating octave_mapper object.
+
+	* sysdep.cc (BSD_init): Avoid failure if FP_X_DNML is not defined.
+
+2002-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c: Be sure to always return buf.
+
+	Undo previous vnprintf changes.  The portable snprintf I found
+	does not handle floating point conversions...
+
+2002-11-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (liboctinterp.$(LIBEXT)): Include $(XERBLA) here.
+	(octave.$(EXEEXT)): Not here.
+	(liboctinterp.$(SHLEXT)): Include $(PIC_XERBLA) here.
+
+	* main.c: Move decl for xerbla here from octave.cc.
+
+	* cutils.c (octave_vsnprintf): Use portable_snprintf to avoid
+	having to cope with all kinds of buggy implementations.
+
+	* snprintf.c: New file.
+	* Makefile.in (DISTFILES): Add it to the list.
+
+	* oct-snprintf.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+	* oct-snprintf.c: New file.
+	* Makefile.in (DIST_SRC): Add it to the list.
+
+	* toplev.cc (main_loop): Use SET_OCTAVE_INTERRUPT_IMMEDIATELY
+	instead of assigning octave_interrupt_immediately.
+
+2002-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (jump_to_top_level): Delete.
+
+	* toplev.cc (toplevel): Delete.
+	(main_loop): Adapt to new signal/exception handling scheme.
+
+	* sighandlers.cc (octave_signal_mask, octave_save_signal_mask,
+	octave_restore_signal_mask): Move to libcruft/misc/quit.cc.
+	(sigint_handler) [USE_EXCEPTIONS_FOR_INTERRUPTS]: set
+	octave_interrupt_state.  Only jump if octave_interrupt_immediately
+	is true, and then only to enclosing context.
+
+	* lex.h (YY_FATAL_ERROR): Use OCTAVE_JUMP_TO_TOP_LEVEL, not
+	jump_to_top_level.
+	* sighandlers.cc (octave_new_handler, sigfpe_handler, endif,
+	sigpipe_handler): Likewise.
+
+	* input.cc (gnu_readline): Surround call to
+	command_editor::readline with
+	BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE and
+	END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE.
+
+	* data.cc, oct-stream.cc, ov-cell.cc, ov-mapper.cc, ov-re-mat.cc,
+	ov.cc, pr-output.cc, pt-loop.cc, pt-stmt.cc, xdiv.cc, xpow.cc,
+	DLD-FUNCTIONS/balance.cc, DLD-FUNCTIONS/besselj.cc,
+	DLD-FUNCTIONS/filter.cc, DLD-FUNCTIONS/find.cc,
+	DLD-FUNCTIONS/kron.cc, DLD-FUNCTIONS/log.cc,
+	DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/qz.cc,
+	DLD-FUNCTIONS/rand.cc, DLD-FUNCTIONS/sort.cc: Sprinkle with
+	OCTAVE_QUIT.
+
+	* DLD-FUNCTIONS/odessa.cc (Fodessa): Correctly extract bsub from
+	function arg.
+
+2002-11-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c (octave_vsnprintf): Handle C99 snprintf semantics.
+
+	* oct-obj.h (octave_value_list::operator =): Copy names too.
+	(octave_value_list::octave_value_list (const octave_value_list&)):
+	Likewise.
+
+2002-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.39.
+
+	* variables.cc (generate_struct_completions): Temporarily reset
+	discard_error_messages and error_state
+	(looks_like_struct): Temporarily reset Vwarning option,
+	error_state, and discard_error_messages.
+
+	* pt-idx.cc (tree_index_expression::eval_error): Now const.
+	(tree_index_expression::get_struct_index): Require valid identifier.
+	(tree_index_expression::make_arg_struct,
+	tree_index_expression::rvalue, tree_index_expression::lvalue):
+	Handle possible error from get_struct_index.
+
+	* utils.cc (valid_identifier): Move here from load-save.cc.
+	* utils.h: Provide decl.
+
+	* input.cc (generate_possible_completions): Call
+	command_editor::filename_completion_desired here.
+	(generate_possible_completions): Don't generate struct completions
+	if text contains directory separator or "..".
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/odessa.cc (odessa_user_f, odessa_user_j,
+	odessa_user_b): Reorder args for consistency with other solvers.
+	(Fodessa): Use extract_function to set args.
+	(odessa_user_j): Rename from odessa_user_mf.
+
+	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function, fsolve_user_jacobian):
+	Print warning if user returns complex value.
+	* DLD-FUNCTIONS/quad.cc (quad_user_function): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (lsode_user_function, lsode_user_jacobian):
+	Likewise.
+	* DLD-FUNCTIONS/dassl.cc (dassl_user_function, dassl_user_jacobian):
+	Likewise.
+	* DLD-FUNCTIONS/dasrt.cc (dasrt_user_f, dasrt_user_cf, dasrt_user_j):
+	Likewise.
+	* DLD-FUNCTIONS/daspk.cc (daspk_user_function, daspk_user_jacobian):
+	Likewise.
+
+	* DLD-FUNCTIONS/daspk.cc (daspk_user_jacobian): New function.
+	(Fdaspk): Handle extracting Jacobian from function argument.
+
+	* DLD-FUNCTIONS/fsolve.cc (fsolve_user_function): New function.
+	(Ffsolve): Handle extracting Jacobian from function argument.
+
+	* Makefile.in (%.oct): Depend on octave$(EXEEXT) so that octave
+	will be built before any .oct files.
+	(all): Depend on stamp-oct-links.
+	(octave$(EXEEXT)): Don't depend on stamp-oct-links.
+
+	* ov-base.cc (octave_base_value::subsasgn): Handle default numeric
+	case here.
+	* ov-base-mat.cc (octave_base_matrix<MT>::subsasgn): Delete.
+
+2002-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCT_LINK_DEPS): Add $(BLAS_LIBS), $(FFTW_LIBS), and
+	$(FLIBS).
+
+2002-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_VERSION): Now 2.1.38.
+
+	* utils.cc (octave_vformat): Get return value from
+	streambuf::vform.
+
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Always return solution.
+	Don't barf on nargout == 3.
+
+	* pt-idx.h (tree_index_expression::dyn_field): New data member.
+	* pt-idx.cc (tree_index_expression::tree_index_expression
+	(tree_expression*, tree_expression*, int, int)): New constructor.
+	(tree_index_expression::append (tree_expression*)): New function.
+	(tree_index_expression::get_struct_index): New function.
+	(tree_index_expression::make_arg_struct): Handle dynamic fields.
+	(tree_index_expression::rvalue): Likewise.
+	(tree_index_expression::lvalue): Likewise.
+
+	* parse.y (make_indirect_ref (tree_expression*, tree_expression*)):
+	New function.
+	(indirect_ref_op): New non-terminal.
+	(postfix_expr): Use it.
+	Recognize dynamic struct field references.
+	(parsing_indir): Delete unused non-terminal.
+
+	* lex.l ("("): Set lexer_flags.looking_at_indirect_ref to false here.
+
+	* pt-idx.cc (tree_index_expression::name): Simplify.
+
+2002-10-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-conf.h.in (OCTAVE_CONF_HAVE_DLOPEN_API,
+	OCTAVE_CONF_HAVE_LOADLIBRARY_API, OCTAVE_CONF_HAVE_SHL_LOAD_API):
+	Delete.
+	* toplev.cc (octave_config_info): Delete them from the struct
+
+	* load-save.cc (read_ascii_data): Use octave_read_double and
+	octave_read_complex so that we handle Inf, NaN, and NA.
+	(read_mat_ascii_data): Likewise.
+	(save_ascii_data): Use octave_write_double andoctave_write_complex.
+
+2002-10-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (octave_config_info): Rename WITH_DYNAMIC_LINKING to
+	ENABLE_DYNAMIC_LINKING.
+	* oct-conf.h.in: Likewise.
+	* mkbuiltins: Likewise.
+	* fn-cache.cc (file_name_cache_elt::update): Likewise.
+	* Makefile.in: Likewise.
+
+2002-10-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c (octave_vsnprintf): Buffer and buffer size now static.
+	* utils.cc (octave_vformat): Don't free buffer returned from
+	octave_vsnprintf here.
+
+	* ov-usr-fcn.cc (va_arg, va_start, vr_val): Only print warning
+	once per session.
+
+	* ov-mapper.cc (octave_mapper::apply): Don't try real_type case if
+	arg is a string and we have a ch_map_fcn.
+
+	* Makefile.in: Add $(LIBKPATHSEA) to $(OCTAVE_LIBS) if
+	$(INCLUDE_LINK_DEPS) is false, not if $(SHARED_LIBS) is false.
+
+2002-10-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/daspk.cc (daspk): Use set_options, not copy.
+	* DLD-FUNCTIONS/dasrt.cc (dasrt): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (dassl): Likewise.
+	* DLD-FUNCTIONS/fsolve.cc (fsolve): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (lsode): Likewise.
+	* DLD-FUNCTIONS/odessa.cc (Fodessa): Likewise.
+	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
+
+2002-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-map.cc (Octave_map::assign): Fix typo in resizing.
+
+	* pt-loop.cc (tree_complex_for_command::eval): Only return list
+	for val if struct array has more than one element.
+	(tree_simple_for_command::eval): Likewise.
+
+	* ov-struct.cc (octave_struct::print_raw): Don't create
+	octave_list directly, use octave_value (const octave_value_list&)
+	constructor instead.
+	Call print_with_name for tmp, not val(0).
+
+	* version.h (OCTAVE_VERSION): Now 2.1.37.
+	(OCTAVE_CONTRIB_STATEMENT): New macro.
+	(OCTAVE_STARTUP_MESSAGE): Use it.
+
+2002-10-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (fill_matrix): If nargin is zero, use val, not 0.0.
+
+	* main.c: New file.
+	* octave.h: New file.
+	* octave.cc (octave_main): Rename from main.
+	Include octave.h.
+	* Makefile.in (OBJECTS): Add octave.o, builtins.o, and ops.o to
+	the list.
+	(octave): Depend on and link main.o, not octave.o, builtins.o, and
+	ops.o (they are now in liboctinterp).
+	(DEP_5): Add main.c here.
+
+	* oct-conf.h.in: No need to substitute OCTAVE_CONF_OCTAVE_LITE.
+	* toplev.cc (octave_config_info): Likewise, don't include it in
+	struct.
+
+	* mkbuiltins: Remove check for OCTAVE_LITE, since it is now
+	implied by WITH_DYNAMIC_LINKING.
+	* Makefile.in: Likewise, replace tests for OCTAVE_LITE with tests
+	for WITH_DYNAMIC_LINKING instead.
+
+	* oct-conf.h.in: Use OCTAVE_CONF_HAVE_DLOPEN_API,
+	OCTAVE_CONF_HAVE_LOADLIBRARY_API, and
+	OCTAVE_CONF_HAVE_SHL_LOAD_API instead of OCTAVE_CONF_WITH_DL and
+	OCTAVE_CONF_WITH_SHL.
+	* toplev.cc (octave_config_info): Likewise.
+
+2002-10-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (display_help_text): Quote output file name for Cygwin.
+
+	* Makefile.in (install-lib): Don't bother with versions for
+	$(SHLBIN) files.
+
+	* help.cc (display_help_text): Match zero or more comment
+	characters instead of one or more.
+
+	* Makefile.in (install-oct): Process files from $(DLD_DEF_FILES),
+	not $(DLD_SRC).  Look for them in current directory, not $(srcdir).
+
+2002-10-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-mapper.cc (octave_mapper::apply): Handle real and complex
+	types first.  If the arg is something else, try ch_map_fcn if it
+	is defined.
+
+2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: If building shared but not static libs, only set
+	XERBLA to the location of the pic object file if FPICFLAG is
+	defined.
+
+2002-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	*  DLD-FUNCTIONS/minmax.cc, DLD-FUNCTIONS/getrusage.cc, data.cc,
+	file-io.cc, ov-base.cc, ov-bool-mat.cc, ov-ch-mat.cc,
+	ov-complex.cc, ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc,
+	ov-re-nd-array.cc: Change all uses of octave_Inf, octave_NA, and
+	octave_NaN to be calls to lo_ieee_Inf_value, lo_ieee_NA_value, and
+	lo_ieee_NaN_value instead of using the constants directly to avoid
+	linking problem with Cygwin.
+
+	* Makefile.in (install): No need to use cd to create links.
+
+2002-10-14  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: Merge liboctave with liboct-readline and
+	liboct-pathsearch.
+	Use link dependencies for shared libs if INCLUDE_LINK_DEPS.
+	(LIBRARIES): If doing shared libs, include versioned library in	list.
+	(liboctinterp.$(SHLEXT), liboctinterp.$(SHLEXT_VER)): Reverse
+	actions -- build unversioned library, symbolic link adds version
+	info.
+	(install, uninstall): Handle link and load forms of the library
+	separately.
+
+	* toplev.cc (octave_config_info): Remove LIBOCT_READLINE and
+	LIBOCT_PATHSEARCH, add LIBREADLINE.
+	* oct-conf.h.in: Likewise.
+
+2002-10-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_identifier): Don't enter token in local symbol
+	table if the following token is a dot and it looks like a binary
+	operator.
+	(force_local_variable): If name is not a variable, clear it before
+	defining.
+
+	* oct-procbuf.cc (Vkluge_procbuf_delay): Make default 0 for all
+	systems.
+
+	* octave.cc (execute_startup_files, initialize_pathsearch):
+	Use file_ops::dir_sep_str instead of OCTAVE_DIR_SEP_STR.
+	(main): Use file_ops::dir_sep_chars instead of OCTAVE_DIR_SEP_CHARS.
+
+	* ov-re-mat.cc (octave_matrix::convert_to_str): Warn for out of
+	range conversions.  For negative values, set to 0.
+	* ov-scalar.cc (octave_scalar:convert_to_str): Likewise.
+
+	* mappers.cc (xabs): New static function.
+	(install_mapper_functions): Use it for abs for character matrices.
+	Handle ch_map_flag separately from can_ret_cmplx_for_real in
+	all uses of DEFUN_MAPPER.
+	* defun.h (DEFUN_MAPPER): Handle ch_map_flag separately from
+	can_ret_cmplx_for_real.
+	* defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise.
+	* mkbuiltins: Likewise.
+	* mkgendoc: Likewise.
+	* ov-mapper.cc (octave_mapper::apply): Use ch_map_flag and
+	can_ret_cmplx_for_real instead of flag.
+	* ov-mapper.h (octave_mapper::ch_map_flag): Rename from flag.
+	(octave_mapper::can_ret_cmplx_for_real): New data member.
+	(octave_mapper::octave_mapper): Handle it here.
+
+2002-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (execute_startup_files): Don't forget directory
+	separator for local initfile.
+
+	* move-if-change: Delete.
+	* Makefile.in (DISTFILES): Delete it from the list.
+
+2002-10-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Use $(EXEEXT) and $(BUILD_EXEEXT) as appropriate.
+
+	* pt-plot.cc (Vgnuplot_binary): Use GNUPLOT_BINARY as default.
+
+	* octave.cc (execute_startup_files):
+	Use octave_env::getcwd instead of "./".
+	Use OCTAVE_DIR_SEP_STR instead of "/".
+	(initialize_pathsearch): Use OCTAVE_DIR_SEP_STR instead of /.
+	(main): Look for OCTAVE_DIR_SEP_CHARS, not '/'.
+
+2002-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (gendoc): Use $(BUILD_CXX), not $(CXX).
+
+2002-10-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (octave_sleep): Cast result of modf to unsigned int.
+
+2002-10-07  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* sighandlers.cc (my_friendly_exit): If kill is unavailable, use
+	raise.
+
+2002-10-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc (CYGWIN_init): New function.
+	(sysdep_init) [__CYGWIN__]: Call it.
+
+	* pt-plot.cc (subplot::handle_plot_data): Surround file names in
+	single quotes, not double (for Windows).
+	(do_external_plotter_cd): Likewise.
+
+2002-10-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c (octave_usleep): Call octave_sleep, not sleep.
+
+	* utils.cc (octave_sleep (double)): New function.
+	* utils.h: Provide decl.
+	* sysdep.cc (Fpause, Fsleep): Use it.
+
+	* cutils.c (do_octave_usleep): Merge with octave_usleep.
+	(octave_usleep): Make it work for Windows systems.  From Paul
+	Kienzle <pkienzle@users.sf.net>.
+
+2002-10-03  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* cutils.c (octave_usleep): Make it work for Windows systems.
+
+	* toplev.cc (Fsystem): Error message if fork is not available.
+
+2002-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c (octave_sleep): Handle Windows, which may not have
+	sleep, but should have Sleep.
+
+	* oct-conf.h.in (OCTAVE_CONF_SED): Add an entry for SED.
+	* toplev.cc (octave_config_info): Likewise.
+	* Makefile.in (oct-gperf.h): Use $(SED), not sed.
+
+2002-09-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (fopen_mode_to_ios_mode): Set ios::ate instead of
+	ios::app for "a+" mode.
+	* oct-stream.cc (octave_stream::mode_as_string): Recognize
+	ios::ate, not ios::app as "a+" mode.
+	(octave_stream::mode_as_string): Use parens since | has lower
+	precedence than ==.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* sysdep.cc: Include conio.h if it exists.
+	(octave_kbhit): Rename from kbhit.  Implement with _kbhit if it
+	exists. Change all callers.
+	* cutils.c (octave_sleep): New function.
+	Change all callers of sleep to use octave_sleep instead.
+
+2002-09-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc,
+	DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc,
+	OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc,
+	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
+	OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
+	OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
+	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
+	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
+	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
+	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc,
+	OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
+	OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc,
+	SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc,
+	c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc,
+	oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h,
+	ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc,
+	ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
+	ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h,
+	ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc,
+	ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h,
+	ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc,
+	ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h,
+	ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc,
+	ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc,
+	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc,
+	ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc,
+	ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc,
+	procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc,
+	pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h,
+	pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc,
+	pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h,
+	pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc,
+	pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc,
+	pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc,
+	pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h,
+	pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc,
+	pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h,
+	unwind-prot.cc, unwind-prot.h:
+	If __GNUG__, use pragma interface/implementation.  Allow this to
+	be turned off by defining NO_PRAGMA_INTERFACE_IMPLEMENTATION.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* mappers.cc (install_mapper_functions): Install erf, not xerf.
+	Install erfc, not xerfc.
+
+	* pt-bp.cc (tree_breakpoint::visit_unwind_protect_command):
+	Rename lst1 and lst2 to avoid dlgs.h conflict.
+
+	* parse.y: Replace TEXT with STRING to avoid winnt.h conflict.
+	* lex.l: Ditto.
+
+	* sysdep.cc (raw_mode): Non-fatal warning if raw_mode is not
+	supported.
+
+	* sighandlers.cc: Don't define handlers for non-existent signals.
+
+	* utils.cc: Don't include unneeded termio headers.
+
+2002-09-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* BaseSLList.cc, BaseSLList.h, Cell.cc, Cell.h, DLList.cc,
+	DLList.h, Map.cc, Map.h, OPERATORS/op-b-b.cc,
+	OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc, OPERATORS/op-cell.cc,
+	OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc, OPERATORS/op-cm-cs.cc,
+	OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc, OPERATORS/op-cs-cm.cc,
+	OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc, OPERATORS/op-cs-s.cc,
+	OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
+	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
+	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
+	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
+	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc,
+	OPERATORS/op-m-cm.cc, OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc,
+	OPERATORS/op-m-s.cc, OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc,
+	OPERATORS/op-s-cs.cc, OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc,
+	OPERATORS/op-str-str.cc, SLList.cc, SLList.h, SLStack.cc,
+	SLStack.h, Stack.cc, Stack.h, c-file-ptr-stream.cc,
+	c-file-ptr-stream.h, comment-list.cc, comment-list.h, oct-map.cc,
+	oct-map.h, oct-obj.cc, oct-obj.h, ov-base-mat.cc, ov-base-mat.h,
+	ov-base-nd-array.cc, ov-base-nd-array.h, ov-base-scalar.cc,
+	ov-base-scalar.h, ov-base.cc, ov-base.h, ov-bool-mat.cc,
+	ov-bool-mat.h, ov-bool.cc, ov-bool.h, ov-builtin.cc, ov-builtin.h,
+	ov-cell.cc, ov-cell.h, ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc,
+	ov-complex.cc, ov-complex.h, ov-cs-list.cc ov-cs-list.h,
+	ov-cx-mat.cc, ov-cx-mat.h, ov-dld-fcn.cc, ov-dld-fcn.h, ov-fcn.cc,
+	ov-fcn.h, ov-file.cc, ov-file.h, ov-list.cc, ov-list.h,
+	ov-mapper.cc, ov-mapper.h, ov-range.cc, ov-range.h, ov-re-mat.cc,
+	ov-re-mat.h, ov-re-nd-array.cc, ov-re-nd-array.h, ov-scalar.cc,
+	ov-scalar.h, ov-str-mat.cc, ov-str-mat.h, ov-struct.cc,
+	ov-struct.h, ov-typeinfo.cc, ov-typeinfo.h, ov-usr-fcn.cc,
+	ov-usr-fcn.h, ov-va-args.cc, ov.cc, ov.h, procstream.cc,
+	procstream.h, pt-arg-list.cc, pt-arg-list.h, pt-assign.cc,
+	pt-assign.h, pt-binop.cc, pt-binop.h, pt-bp.cc, pt-bp.h,
+	pt-cell.cc, pt-cell.h, pt-check.cc, pt-check.h, pt-cmd.cc,
+	pt-cmd.h, pt-colon.cc, pt-colon.h, pt-const.cc, pt-const.h,
+	pt-decl.cc, pt-decl.h, pt-except.cc, pt-except.h, pt-exp.cc,
+	pt-exp.h, pt-id.cc, pt-id.h, pt-idx.cc, pt-idx.h, pt-jump.cc,
+	pt-jump.h, pt-loop.cc, pt-loop.h, pt-mat.cc, pt-mat.h, pt-misc.cc,
+	pt-misc.h, pt-plot.cc, pt-plot.h, pt-pr-code.cc, pt-pr-code.h,
+	pt-select.cc, pt-select.h, pt-stmt.cc, pt-stmt.h, pt-unop.cc,
+	pt-unop.h, pt.cc, pt.h, symtab.cc, symtab.h, token.cc, token.h,
+	unwind-prot.cc, unwind-prot.h:
+	Use USE_PRAGMA_INTERFACE_IMPLEMENTATION instead of __GNUG__ to
+	decide whether to use the interface/implementation pragmas.
+
+2002-09-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc: Undo previous change.
+
+	* ov-struct.cc (octave_struct::subsasgn): Ensure that indexed
+	object is not shared before calling subsasgn.
+
+2002-09-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc: Use % instead of # as comment character in ascii
+	data files.
+
+2002-08-17  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add Intel
+	C++ runtime support.
+
+	* Cell.h, gripes.cc, ov-base-scalar.cc, ov-colon.cc, ov-fcn.cc,
+	ov-file.cc, ov-mapper.h, ov-va-args.cc, token.cc, xpow.cc,
+	OPERATORS/op-b-b.cc, OPERATORS/op-bm-b.cc, OPERATORS/op-bm-bm.cc,
+	OPERATORS/op-cell.cc, OPERATORS/op-chm.cc, OPERATORS/op-cm-cm.cc,
+	OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-m.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-cs.cc, OPERATORS/op-cs-m.cc,
+	OPERATORS/op-cs-s.cc, OPERATORS/op-fil-b.cc, OPERATORS/op-fil-bm.cc,
+	OPERATORS/op-fil-cm.cc, OPERATORS/op-fil-cs.cc,
+	OPERATORS/op-fil-lis.cc, OPERATORS/op-fil-m.cc,
+	OPERATORS/op-fil-rec.cc, OPERATORS/op-fil-s.cc,
+	OPERATORS/op-fil-str.cc, OPERATORS/op-list.cc, OPERATORS/op-m-cm.cc,
+	OPERATORS/op-m-cs.cc, OPERATORS/op-m-m.cc, OPERATORS/op-m-s.cc,
+	OPERATORS/op-range.cc, OPERATORS/op-s-cm.cc, OPERATORS/op-s-cs.cc,
+	OPERATORS/op-s-m.cc, OPERATORS/op-s-s.cc, OPERATORS/op-str-str.cc,
+	TEMPLATE-INST/Array-sym.cc, TEMPLATE-INST/Array-tc.cc,
+	TEMPLATE-INST/Map-tc.cc, TEMPLATE-INST/SLList-expr.cc,
+	TEMPLATE-INST/SLList-tc.cc, TEMPLATE-INST/SLList-tm.cc,
+	TEMPLATE-INST/SLStack-sym.cc: Make the implementation of
+	octave_value_list visibile for template instantiation.
+
+2002-08-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dasrt.cc: Include <iostream> not <iostream.h>.
+
+	* pager.h: Include lo-sstream.h and use macros instead of using
+	strstreambuf class directly.
+
+	* load-save.cc (read_mat_ascii_data): Handle istrstream here too.
+
+	* procstream.h (procstream::procstream): Also accept std::string arg.
+	(iprocstream::iprocstream, iprocstream::open): Likewise.
+	(oprocstream::oprocstream, oprocstream::open): Likewise.
+	(procstreambase::procstreambase, procstreambase::open): Likewise.
+
+	* pt-plot.cc (gnuplot_terminal_type): Now std::string&, not char*.
+	(send_to_plot_stream): Likewise, for cmd arg.
+
+	* pt-plot.h, pt-plot.cc: Include lo-sstream.h and use macros
+	instead of using strstream classes directly.
+	* oct-strstrm.h: Likewise.
+	* error.h, error.cc: Likewise.
+	* oct-stream.h, oct-stream.cc: Likewise.
+	* lex.l: Likewise.
+	* toplev.cc: Likewise.
+	* utils.cc: Likewise.
+	* pt.cc: Likewise.
+	* pr-output.cc: Likewise.
+	* ov-list.cc: Likewise.
+	* ov-cs-list.cc: Likewise.
+	* ov-cell.cc: Likewise.
+	* load-save.cc: Likewise.
+	* help.cc: Likewise.
+	* dirfns.cc: Likewise.
+
+2002-08-15  Paul Kienzle  <pkienzle@jazz.ncnr.nist.gov>
+
+	* input.cc (octave_read): Do a better job of buffering.
+
+2002-08-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DLD_DEF_FILES): New macro.
+	(DEF_5): Delete.
+	(DEF_4): Now only includes $(SOURCES).
+	(DEF_FILES): Append $(DLD_DEF_FILES) here.
+	(stamp-oct-links): Pass $(DLD_DEF_FILES) to mk-oct-links instead
+	of a list of source files.
+	* mk-oct-links: Work on .df files instead of .cc files.
+
+	* parse.y (case_list): Allow it to be empty.
+
+	* ov.cc, ov.h (octave_value::int_vector_value): New function.
+
+2002-08-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTAVE_LIBS): Only include $(LIBKPATHSEA) if not
+	using shared libraries.
+
+	* ov.cc (octave_value::octave_value (const octave_value_list&, bool)):
+	Don't forget to assign rep.
+
+2002-08-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: Warn for various Matlab-incompatibilities.
+	No longer accept <> for NOTEQ.
+	(gripe_matlab_incompatible): New function.
+	(maybe_gripe_matlab_incompatible_comment): Likewise.
+	(gripe_matlab_incompatible_continuation): Likewise.
+	(gripe_matlab_incompatible_operator): Likewise.
+	(warn_matlab_incompatible): New function.
+	(Vwarn_matlab_incompatible): New static variable.
+	(symbols_of_lex): Add a DEFVAR for it.
+
+
+	* file-io.cc (fopen_mode_to_ios_mode): Default value is std::ios::in.
+	Return std::ios::openmode instead of int.
+
+2002-08-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dasrt.cc (DASRT_ABORT1, DASRT_ABORT2):
+	"##" pastes tokens, not strings.
+
+	* DLD-FUNCTIONS/odessa.cc: Add std:: qualifiers as needed.
+
+2002-08-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fisglobal): Rename from Fis_global.
+	* file-io.cc (Fisstream): Rename from Fis_stream.
+	* data.cc (Fisbool): Rename from Fis_bool.
+	(Fiscomplex): Rename from Fis_complex.
+	(Fislist): Rename from Fis_list.
+	(Fismatrix): Rename from Fis_matrix.
+	(Fisstruct): Rename from Fis_struct.
+
+	* parse.y (switch_case): Make list of command optional.
+
+2002-08-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (pr_max_internal): Use octave_is_NaN_or_NA instead
+	of xisnan.
+	(pr_min_internal): Likewise.
+	(output_max_field_width): Likewise.
+	(output_precision): Likewise.
+	(pr_any_float): Handle NA.
+	* mappers.cc (Fisna, F_is_nan_or_na): New functions.
+	* data.cc (symbols_of_data): New constant, NA.
+
+2002-08-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-binop.h (tree_binary_expression::is_binary_expression):
+	New function, return true.
+	(tree_boolean_expression::is_boolean_expression): New function,
+	return true.
+	* pt-exp.h (tree_expression::is_binary_expression): New function.
+	(tree_expression::is_boolean_expression): Likewise.
+	* parse.y (EXPR_OR_OR): Now lower precedence than EXPR_AND_AND.
+	(EXPR_OR): Now lower precedence than EXPR_AND.
+	(make_boolean_op): Maybe warn about change in precedence.
+	(make_binary_op): Likewise.
+	(Vwarn_precedence_change): New static variable.
+	(warn_precedence_change): New function.
+	(Vwarn_precedence_change): New DEFVAR.
+
+2002-08-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (ANY_ALL): Improve arg checks.
+
+2002-08-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::assign_op): New enum values, op_pow_eq and
+	op_el_pow_eq.
+	* ov.cc (octave_value::assign_op_as_string): Handle them here.
+	(ocatave_value::op_eq_to_binary_op): And here.
+	* parse.y (POW_EQ, EPOW_EQ): New tokens.
+	(assign_expr): Handle them here too.
+	(make_assign_op): And here.
+
+	* lex.l: Recognize {POW}= and {EPOW}=.
+
+2002-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-scalar.h (octave_base_scalar::all): New int arg.
+	(octave_base_scalar::any): Likewise.
+	* ov-range.h (octave_range::all): Likewise.
+	(octave_range::any): Likewise.
+
+	* Makefile.in (doc-files): Use mv, not move-if-change here.
+
+	* variables.cc (symbol_exist): New function.
+	(Fexist): Use it.  Handle optional type arg.  Make return codes
+	more compatible with Matlab.
+
+	* data.cc (ANY_ALL): New macro.
+	(Fany, Fall): Replace guts with ANY_ALL.
+
+2002-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fall, Fany): Handle optional DIM argument.
+
+	* ov.h (octave_value::any): New arg, dim.
+	(octave_value::all): Likewise.
+	* ov-base.h (octave_base_value::any): Likewise.
+	(octave_base_value::all): Likewise.
+	* ov-base-mat.h (octave_base_matrix::any): Likewise.
+	(octave_base_matrix::all): Likewise.
+
+	* Makefile.in: Use $@-t instead of $@.t.
+	(doc-files): Use move-if-change when creating doc-files.
+
+	* error.cc (warning): Don't print warning backtrace at top level.
+
+	* ov-cell.cc (octave_cell::print_raw): Print empty dimensions too.
+	(octave_cell::print_name_tag): Don't print new line if cell is empty.
+
+	* octave.cc (intern_argv): Don't install __argv__.
+
+	* defun-int.h (UNDERSCORIFY): Delete.
+	(DEFCONST_INTERNAL): Don't install double underscore versions of
+	constants since they aren't really needed.
+	(DEFCONSTX_INTERNAL): Likewise.
+
+2002-07-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.cc (symbol_table::clear (void)): Clear all records.
+	(symbol_table::clear (const std::string&)): Delete second arg.
+	Clear any symbol that matches, regardless of type.
+
+	* symtab.h (symbol_table::variable_name_list): New function.
+	(symbol_table::global_variable_name_list): Likewise.
+	(symbol_table::user_function_name_list): Likewise.
+
+	* symtab.h, symtab.cc (symbol_table::clear_variables): New function.
+	(symbol_table::clear_functions): Likewise.
+	(symbol_table::clear_globals): Likewise.
+	(symbol_table::clear_variable): New function.
+	(symbol_table::clear_function): Likewise.
+	(symbol_table::clear_global): Likewise.
+	(symbol_table::clear_variable_pattern): New function.
+	(symbol_table::clear_function_pattern): Likewise.
+	(symbol_table::clear_global_pattern): Likewise.
+
+	* variables.cc (name_matches_any_pattern): Rename from
+	var_matches_any_pattern.
+	(is_local_variable): New static inline function.
+	(maybe_warn_exclusive): Likewise.
+	(do_clear_all): Likewise.
+	(do_clear_functions): Likewise.
+	(do_clear_globals): Likewise.
+	(do_clear_variables): Likewise.
+	(do_clear_function): Likewise.
+	(do_clear_global): Likewise.
+	(do_clear_variable): Likewise.
+	(do_clear_symbol): Likewise.
+	(do_clear_function_pattern): Likewise.
+	(do_clear_global_pattern): Likewise.
+	(do_clear_variable_pattern): Likewise.
+	(do_clear_symbol_pattern): Likewise.
+	(do_clear_functions): Likewise.
+	(do_clear_functions): Likewise.
+	(do_clear_globals): Likewise.
+	(do_clear_variables): Likewise.
+	(do_clear_symbols): Likewise.
+	(do_matlab_compatible_clear): Likewise.
+	(CLEAR_OPTION_ERROR): New macro.
+	(Fclear): Rewrite for Matlab compatibility and to cope with new
+	symbol table semantics.
+
+2002-07-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.cc (symbol_table::clear): Simply clear everything.
+	(symbol_table::clear_functions, symbol_table::clear_globals,
+	symbol_table::clear_all): New functions.
+
+	* symtab.h (symbol_record::symbol_def::next_elem): Delete.
+	(symbol_record::symbol_def::symbol_def): Delete intializer.
+
+	* symtab.h, symtab.cc (symbol_record::push_def): Delete.
+	(symbol_record::remove_top_def): Delete.
+	(symbol_record::replace_all_defs): Delete.
+	(symbol_record::hides_fcn): Delete.
+	(symbol_record::hides_builtin): Delete.
+
+	* symtab.h (symbol_table::~symbol_table): Call clear before
+	deleting the table.
+
+	* variables.cc (initialize_symbol_tables): Create fbi_sym_tab too.
+	(Fexist): Look in fbi_sym_tab, not global_sym_tab.
+
+	* parse.y (function_symtab): Rename from global_symtab.
+	Set curr_sym_tab to fbi_sym_tab, not global_sym_tab.
+	Change all uses of global_symtab to be function_symtab instead.
+	(frob_function): Rename and look for function name in fbi_sym_tab,
+	not global_sym_tab.
+	(parse_fcn_file): Clear function name from fbi_sym_tab, not
+	global_sym_tab.
+
+	* load-save.cc (save_vars): Look for built-in vars in fbi_sym_tab.
+	* symtab.cc (symbol_record::link_to_builtin_variable): Likewise.
+	* variables.cc (is_builtin_variable): Likewise.
+	(bind_ans): Likewise.
+	(bind_builtin_constant): Likewise.
+	(bind_builtin_variable): Likewise.
+	(builtin_string_variable): Likewise.
+	(builtin_real_scalar_variable): Likewise.
+	(builtin_any_variable): Likewise.
+	(is_text_function_name): Likewise, for functions.
+	(force_link_to_function): Likewise.
+	(is_builtin_function_name): Likewise.
+	(is_mapper_function_name): Likewise.
+	(is_valid_function): Likewise.
+	(Fclear): Likewise.
+	(F__print_symtab_info__): Likewise.
+	* defun.cc (print_usage): Likewise.
+	(install_builtin_mapper): Likewise.
+	(install_builtin_function): Likewise.
+	(install_dld_function): Likewise.
+	(Falias): Likewise.
+	* dynamic-ld.cc (clear_function): Likewise.
+	* variables.cc (do_who): Likewise, for built-ins and functions.
+	(link_to_builtin_or_function): Likewise.
+	* help.cc (LIST_SYMBOLS): Likewise.
+	(make_name_list): Handle fbi_sym_tab too.
+
+	* variables.cc (fbi_sym_tab): New symbol table.
+	* variables.h (fbi_sym_tab): Provide decl.
+
+2002-07-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.h (symbol_record::alias): Delete unused arg force.
+	Change all callers.
+
+	* variables.cc (link_to_global_variable): Give local variable
+	global value.
+
+	* pt-id.cc (tree_identifier::link_to_global): Warn about global
+	variables that have been defined before being declared global.
+	for a global variable to be used before it is declared global.
+	* pt-decl.cc (tree_global_command::do_init): Handle possible error
+	from tree_identifier::link_to_global.
+
+2002-07-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc (silent_functions, Vsilent_functions): Move here.
+	(octave_value::print_with_name): Don't print anything if we are
+	evaluating a function and Vsilent_functions is true.
+
+	* pt-stmt.cc: From here.
+	(symbols_of_pt_stmt): Delete.
+	(tree_statement_list::eval): Don't bother with Vsilent_functions here.
+
+2002-07-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OPT_HANDLERS): New targets.
+	(doc-files): New target.
+	(gendoc.cc): Depend on doc-files, not $(DOC_FILES).
+
+	* DLD-FUNCTIONS/daspk.cc, DLD-FUNCTIONS/dasrt.cc,
+	DLD-FUNCTIONS/dassl.cc, DLD-FUNCTIONS/fsolve.cc,
+	DLD-FUNCTIONS/lsode.cc, DLD-FUNCTIONS/odessa.cc
+	DLD-FUNCTIONS/quad.cc: Replace option handling code with include
+	directive.
+
+2002-07-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-loop.cc (tree_simple_for_command::eval): Once we know the RHS
+	is a matrix type check for real_type, not real_matrix.
+
+2002-07-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/quad.cc (quad): Cope with changes to Quad constructors.
+
+2002-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/daspk.cc (Fdaspk): Also return istate and error
+	message.  Only generate error if user is not at least requesting
+	the istate output.
+	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (Fodessa): Likewise.
+
+2002-07-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dasrt.cc (Fdasrt): No need to find ng here.
+	(dasrt_user_j): New function.
+	(Fdasrt): Handle Jacobian function.
+
+	* DLD-FUNCTIONS/dassl.cc (dassl_user_jacobian): New function.
+	(Fdassl): Handle Jacobian function.
+
+	* DLD-FUNCTIONS/dasrt.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2002-07-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (@): Handle new token.
+	* parse.y (constant): Accept function handle syntax.
+	(make_constant): Create function handles here.
+
+2002-07-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun.cc (check_version): Improve error message.
+	* error.cc (warning): Only print backtrace once per warning series.
+	Print backtrace before warning messages.
+
+2002-07-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (maybe_unput_comma): Also handle '{' as an indexing op.
+
+	* DLD-FUNCTIONS/odessa.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2002-07-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-assign.cc (tree_multi_assignment::rvalue): Call
+	lhs->nargout_count, not lhs->length.
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector):
+	Handle cs-list objects here.
+	(tree_argument_list::nargout_count): New function.
+	* pt-arg-list.h: Provide decl.
+
+	* ov-cs-list.h, ov-cs-list.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* ov.cc: Include ov-cs-list.h.
+	New arg, is_cs_list for constructor taking octave_value_list arg.
+	(install_types): Register ov_cs_list.
+	* ov.h (octave_value::is_cs_list): New function.
+	* ov-base.h (octave_base_value::is_cs_list): Likewise.
+	* ov-cell.cc (octave_cell::subsref): Return cs-list for "{" indexing.
+
+2002-07-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mat.cc (Vempty_list_elements_ok): Default value is now 1.
+	* octave.cc (maximum_braindamage): No longer need to set value here.
+
+	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Warn that these
+	functions are deprecated.
+	* lex.l (EL): Warn that `...' is deprecated.
+	* ov-usr-fcn.cc (octave_user_function::varargout_to_vr_val,
+	octave_user_function::has_varargout): New functions.
+	(Fvr_val): Ensure varargout is not defined.
+	(octave_user_function::do_multi_index_op): Copy values from
+	varargout here.
+
+2002-07-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.h (octave_user_function::varargin_sr): New data member.
+	* ov-usr-fcn.cc (octave_user_function::octave_user_function):
+	Initialize it.
+	(bind_automatic_vars): Handle varargin.  Change	all callers.
+
+	* octave.gperf: Handle varargin and varargout as keywords.
+	* lex.l (is_keyword): Likewise.
+	(IDENT): Move all actions into handle_identifier.
+	(handle_identifier): Now takes no args.
+
+	* lex.l (EL): Return VARARGIN or VARARGOUT, not ELLIPSIS.
+	* parse.y (param_list): Use VARARGIN instead of ELLIPSIS.
+	(return_list): Use VARARGOUT instead of ELLIPSIS.
+
+	* data.cc (make_diag const octave_value&, const octave_value&):
+	Allow first arg to be 1x0 or 0x1.
+
+2002-07-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (loadpath): Comment out previous change.
+
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Return message too.  Only
+	generate error if user is not at least requesting the info output.
+
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Fix typos in setting return value.
+
+2002-07-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (printf_value_cache::double_value): If the current
+	element is empty and there are no more elements in the value list,
+	set curr_state to conversion_error.
+
+	* input.cc (initialize_command_input): Include (, ), {, and } as
+	word break characters.
+
+	* variables.cc (looks_like_struct): Don't evaluate text if it is a
+	function.  From Ben Sapp <bsapp@lanl.gov>.
+
+	* symtab.h (symbol_record::is_function): Also return true if
+	symbol is a text function or a mapper function.
+
+2002-06-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (loadpath): Warn if loadpath doesn't contain
+	leading, trailing, or doubled colon.
+
+	* pt-decl.cc (tree_static_command::eval, tree_global_command::eval):
+	Call error for any non-zero value of error_state.
+	* pt-select.cc (tree_if_command::eval): Likewise.
+	* pt-loop.cc (tree_while_command::eval_error): Don't check error_state.
+	(tree_do_until_command::eval_error): Likewise.
+	(tree_simple_for_command::eval_error): Likewise.
+	(tree_complex_for_command::eval_error): Likewise.
+	* pt-assign.cc (tree_multi_assignment::eval_error): Likewise.
+	(tree_simple_assignment::eval_error): Likewise.
+	* pt-idx.cc (tree_index_expression::eval_error): Likewise.
+	* pt-colon.cc (tree_colon_expression::eval_error): Likewise.
+	(tree_colon_expression::rvalue): Delete rendundant error_state check.
+
+2002-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-mapper.cc (MAPPER_LOOP, MAPPER_LOOP_1, MAPPER_LOOP_2): New	macros.
+	(octave_mapper::apply): Use them to inline the mapper loops.
+
+	* pt-unop.cc (tree_prefix_expression::rvalue): Ensure that the
+	operand is defined for op_incr and op_decr.
+	(tree_postfix_expression::rvalue): Likewise.
+	From Ben Sapp <bsapp@lanl.gov>.
+
+2002-06-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-mapper.cc (octave_mapper::apply): Exit loops on error.
+
+2002-06-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-struct.cc (octave_struct::print_raw): Print field names with
+	data types if Vstruct_levels_to_print is 0.
+	(octave_struct::print_name_tag): Don't emit newline if
+	Vstruct_levels_to_print is negative.
+	* ov.cc (struct_levels_to_print): Allow negative values too.
+
+2002-05-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Also return istate and error
+	message.  Only generate error if user is not at least requesting
+	the istate output.
+
+	* load-save.cc (hdf5_import_multidim, hdf5_check_attr,
+	hdf5_callback_data, hdf5_read_next_data, read_hdf5_data,
+	add_hdf5_data): Use 0, not NULL in calls to HDF routines.
+
+	* oct-procbuf.cc (octave_procbuf::open): Use NULL, not 0 as last
+	arg in call to execl.
+
+	* debug.cc (get_user_function): Initialise dbg_fcn to 0, not NULL.
+
+2002-05-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/lsode.cc (LSODE_options::da_set_opt_mf,
+	LSODE_options::da_get_opt_mf): New typedefs.
+	(LSODE_OPTIONS::da_set_fcn, LSODE_OPTIONS::da_get_fcn): New fields.
+	(lsode_option_table): Fill them in.
+	(set_lsode_option (const Array<double>&)): New function.
+	(print_lsode_option_list): Handle vector options.
+	(show_lsode_option_list): Likewise.
+	(Flsode_options): Likewise.
+
+	* DLD-FUNCTIONS/lsode.cc (LSODE_options::s_set_opt_mf,
+	LSODE_options::s_get_opt_mf): New typedefs.
+	(LSODE_OPTIONS::s_set_fcn, LSODE_OPTIONS::s_get_fcn): New fields.
+	(lsode_option_table): Fill them in.
+	(set_lsode_option (const std::string&)): New function.
+	(print_lsode_option_list): Handle string options.
+	(show_lsode_option_list): Likewise.
+	(Flsode_options): Likewise.
+
+2002-05-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* c-file-ptr-stream.h (c_file_ptr_buf::fclose): New function.
+	(c_file_ptr_buf::c_file_ptr_buf): Use it as default argument
+	instead of extern "C" fclose function.
+	(i_c_file_ptr_stream::i_c_file_ptr_stream): Likewise.
+	(o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise.
+	* oct-stdstrm.h (octave_istdiostream::octave_istdiostream): Likewise.
+	(octave_istdiostream::create): Likewise.
+	* oct-stdstrm.h (octave_ostdiostream::octave_ostdiostream): Likewise.
+	(octave_ostdiostream::create): Likewise.
+
+	* oct-prcstrm.cc (cxx_pclose): New static function.
+	(octave_iprocstream::octave_iprocstream): Pass it to
+	octave_istdiostream constructor instead of extern "C" pclose function.
+	(octave_oprocstream::octave_oprocstream): Pass it to
+	octave_ostdiostream constructor instead of extern "C" pclose function.
+
+	* debug.cc (Fdbtype): Use C++ strings, not C strings.
+
+2002-05-22  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* debug.cc: Include cstdlib instead of stdlib.h. Include cstring.
+	(dbtype): Use strchr instead of index.
+	* TEMPLATE-INST/Array-tc.cc (Array<octave_value>::resize_fill_value):
+	Fix template specialization syntax.
+
+2002-05-17  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* c-file-ptr-stream.h (OCTAVE_STD_FILEBUF): New macro to handle
+	various forms of extensions to std::filebuf.
+	(c_file_ptr_buf::c_file_ptr_buf): Use.
+	* pt-idx.cc (tree_index_expression::tree_index_expression): Remove
+	default arguments are from definition.
+	* symtab.cc (SYMBOL_DEF::print_info): Add std::.
+	(symbol_record::print_info): Likewise.
+	(symbol_table::print_info): Likewise.
+
+2002-05-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-map.cc (Octave_map::assign): Resize RHS if it is shorter
+	than existing struct array.
+
+	* ov-cell.cc (octave_cell::subsasgn): If an error has occurred,
+	skip final assignment step.
+	* ov-list.cc (octave_list::subsasgn): Likewise.
+	* oct-lvalue.cc (octave_lvalue::assign): Add parens to clarify intent.
+	(octave_lvalue::do_unary_op): Likewise.
+
+	* parse.y (function_end): Also accept end of input as end of
+	function if input is coming from an eval string.
+
+	* pr-output.cc (pr_any_float): Don't convert -0 to 0.
+
+2002-05-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (generate_completion): If it looks like we are
+	completing a struct, set completion append char to '\0'.
+
+	* variables.cc (generate_struct_completions): Temporarily set
+	warnings off here.
+
+	* error.cc (warning): Don't do anything if Vdebug_option == "off".
+	Only print backtrace if Vdebug_option == "backtrace".
+	(handle_message): Now returns a string containing the text of the
+	formatted message.  Change all callers.
+	(Fwarning): Now a text-style function.  Handle Matlab-compatible
+	warning options.
+	(Flasterr, Flastwarn, set_warning_option): New functions.
+	(Vlast_error_message, Vlast_warning_message, Vwarning_frequency,
+	Vwarning_option): New static variables.
+	(vwarning): Set Vlast_warning_message here too.
+	(verror): Set Vlast_error_message here too.
+
+2002-05-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::get_count): Now const.
+
+	* ov.h, ov.cc (octave_value::do_non_const_unary_op,
+	octave_value::assign): Idx is now a list of octave_value_list
+	objects.
+
+	* ov-base.cc, ov-base.h	(octave_base_value::do_struct_elt_index_op,
+	octave_base_value::struct_elt_ref): Delete.
+	* ov-struct.cc, ov-struct.h (octave_sruct::do_struct_elt_index_op,
+	octave_struct::struct_elt_ref): Delete.
+	* ov.cc, ov.h (octave_value::do_struct_elt_index_op,
+	octave_value::struct_elt_ref, octave_value::assign_struct_elt,
+	octave_value::convert_and_assign, octave_value::try_assignment,
+	octave_value::try_assignment_with_conversion,
+	octave_value::simple_assign): Delete.
+
+	* parse.y (make_index_expression): Type is now a single
+	character.  Change all callers.  If expr is already an index
+	expression, append index to it.
+	(make_indirect_ref): Likewise.
+
+	* pt-pr-code.cc (octave_print_internal (std::ostream&, const
+	Cell&, bool, int)): Now just a dummy function, panic if called.
+
+	* pt-idx.cc (tree_index_expression::make_arg_struct): New function.
+	(tree_index_expression::type): Delete enum, rename from itype, now
+	a string.
+	(tree_index_expression::arg_nm): Now a list of string_vector objects.
+	(tree_index_expression::idx): Now a list of tree_argument_list*
+	objects.
+	(tree_index_expression::is_index_expression): Always return true.
+	(tree_index_expression::apend, make_value_list, make_subs_cell):
+	New functions.
+
+	* pt-pr-code.cc (visit_index_expression): Handle new definition of
+	tree_index_expression object.
+	* pt-check.cc (visit_index_expression): Likewise.
+	* pt-bp.cc (visit_index_expression): Likewise.
+
+	* ov-usr-fcn.h (octave_user_function::restore_args_passed):
+	Clear args_passed even if nothing was saved.
+
+	* ov-base.cc (octave_base_value::subsasgn,
+	octave_base_value::map_keys, octave_base_value::print_info):
+	New functions.
+
+	* ov.h, ov.cc (octave_value::map_keys, octave_value::print_info,
+	octave_value::subsref, octave_value::subsasgn,
+	octave_value::numeric_assign, octave_value::next_subsref):
+	New functions.
+	(octave_value::empty_conv): New static function.
+	(octave_value (octave_value *, int)): New arg, count.
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::subsref,
+	octave_base_matrix<MT>::subsasgn): New functions.
+	* ov-base-mat.h: Provide decls.
+
+	* ov-builtin.cc (octave_builtin::subsref): New function.
+	* ov-builtin.h: Provide decl.
+
+	* ov-range.cc (octave_range::subsref): New function.
+	* ov-range.h: Provide decl.
+
+	* ov-cell.cc (octave_cell::subsref, octave_cell::subsasgn,
+	octave_cell::list_value, octave_cell::print,
+	octave_cell::print_raw, octave_cell::print_name_tag): New functions.
+	* ov-cell.h: Provide decls.
+
+	* ov-struct.cc (octave_struct::dotref, octave_struct::subsref,
+	octave_struct::subsasgn, gripe_invalid_index,
+	gripe_invalid_index_for_assignment, grip_invalid_index_type,
+	gripe_failed_assignment): New functions.
+	(octave_struct::numeric_conv): New static function.
+	* ov-struct.h: Provide decls.
+	(octave_struct::is_constant): Return true.
+	(octave_struct::map_keys): New function.
+
+	* ov-list.cc (octave_list::subsref, octave_list::subsasgn):
+	New functions.
+	* ov-list.h: Provide decls.
+
+	* ov-usr-fcn.cc (octave_user_function::subsref,
+	octave_user_function::print_symtab_info): New functions.
+	* ov-usr-fcn.h: Provide decl.
+
+	* ov-mapper.cc (octave_mapper::subsref): New function.
+	* ov-mapper.h: Provide decl.
+
+	* ov-base.cc (octave_base_value::subsref,
+	octave_base_value::subsasgn): New functions.
+	* ov-base.h: Provide decls.
+
+	* ov-base.cc (octave_base_value::do_index_op): New arg, resize_ok.
+	* ov-base-mat.cc (octave_base_matrix<MT>::do_index_op): Likewise.
+	* ov-base-nd-array.cc (octave_base_nd_array<AT>::do_index_op): Ditto.
+	* ov-bool-mat.cc (octave_bool::do_index_op): Ditto.
+	* ov-str-mat.cc (octave_char_matrix_str::do_index_op): Ditto.
+	* ov-range.cc (octave_range::do_index_op): Ditto.
+	* ov-list.cc (octave_list::do_index_op): Ditto.
+	* ov.cc (octave_value::do_index_op): Ditto.
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::print_info): New function.
+
+	* ov-base-mat.h (octave_base_matrix<MT>::empty_clone): New function.
+	* ov-base-nd-array.h (octave_base_nd_array<AT>::empty_clone): Ditto.
+	* ov-base.h (octave_base_value::empty_clone): Ditto.
+	* ov-bool-mat.h (octave_bool::empty_clone): Ditto.
+	* ov-ch-mat.h (octave_char_matrix::empty_clone): Likewise.
+	* ov-colon.h (octave_magic_colon::empty_clone): Likewise.
+	* ov-complex.h (octave_complex::empty_clone): Likewise.
+	* ov-cx-mat.h (octave_complex_matrix::empty_clone): Likewise.
+	* ov-fcn.cc (octave_function::empty_clone): Likewise.
+	* ov-file.h (octave_file::empty_clone): Likewise.
+	* ov-range.h (octave_range::empty_clone): Likewise.
+	* ov-list.h (octave_list::empty_clone): Likewise.
+	* ov-re-mat.h (octave_matrix::empty_clone): Likewise.
+	* ov-re-nd-array.h (octave_double_nd_array::empty_clone): Likewise.
+	* ov-str-mat.h (octave_char_matrix_str::empty_clone): Likewise.
+	* ov-struct.h (octave_struct::empty_clone): Likewise.
+	* ov-va_args.h (octave_all_va_args::empty_clone): Likewise.
+	* ov.h (octave_value::empty_clone): Likewise.
+
+	* ov-base-mat.h (octave_base_matrix<MT>::clone): Now const.
+	* ov-base-nd-array.h (octave_base_nd_array<AT>::clone): Likewise.
+	* ov-base.h (octave_base_value::clone): Likewise.
+	* ov-bool-mat.h (octave_bool::clone): Likewise.
+	* ov-ch-mat.h (octave_char_matrix::clone): Likewise.
+	* ov-colon.h (octave_magic_colon::clone): Likewise.
+	* ov-complex.h (octave_complex::clone): Likewise.
+	* ov-cx-mat.h (octave_complex_matrix::clone): Likewise.
+	* ov-fcn.h (octave_function::clone): Likewise.
+	* ov-file.h (octave_file::clone): Likewise.
+	* ov-range.h (octave_range::clone): Likewise.
+	* ov-list.h (octave_list::clone): Likewise.
+	* ov-re-mat.h (octave_matrix::clone): Likewise.
+	* ov-re-nd-array.h (octave_double_nd_array::clone): Likewise.
+	* ov-str-mat.h (octave_char_matrix_str::clone): Likewise.
+	* ov-struct.h (octave_struct::clone): Likewise.
+	* ov-va_args.h (octave_all_va_args::clone): Likewise.
+	* ov.h (octave_value::clone): Likewise.
+
+	* oct-lvalue.cc (octave_lvalue::assign, octave_lvalue::set_index,
+	octave_lvalue::do_unary_op): Idx is now a list of indices.  Simplify.
+	* oct-lvalue.h (octave_lvalue::value): Simplify.
+	(octave_lvalue::struct_elt_names): Delete data member.
+	(octave_lvalue::type): Now string
+	Update decls.
+
+	* pt-exp.h (tree_expression::is_indirect_ref):
+	Delete virtual function.
+
+	* pt-plot.cc (subplot::extract_plot_data): Use subsref, instead of
+	do_index_op.
+
+	* pt-stmt.cc (tree_statement::eval): Don't try to avoid binding
+	ans for structure references.
+
+	* symtab.cc (symbol_record::symbol_def::print_info): Rename from
+	symbol_record::symbol_def::dump_symbol_info.
+	(symbol_record::print_info): Rename from
+	symbol_record::dump_symbol_info.  Now const..
+	(symbol_record::print_symbol_info_line): Now const.
+	(symbol_table::print_info): Rename from print_stats.  Accept
+	ostream arg.  Now const.  Print more info.
+	* symtab.h: Update decls.
+
+	* toplev.cc (octave_config_info): Indexing a map now returns a
+	list, but we only want to return the first element.
+
+	* variables.cc (generate_struct_completions, looks_like_struct):
+	Simplify using eval_string.
+	(F__print_symtab_info__): Rename from F__dump_symtab_info__.
+	Handle "top-level" and individual function names in addition to
+	"global".
+	(F__print_symbol_info__): Rename from F___dump_symbol_info__.
+
+	* octave.cc (intern_argv): Built-in variable argv is now a cell array.
+
+	* ov-complex.cc (valid_scalar_indices): Delete.
+	* ov-scalar.cc (valid_scalar_indices): Delete.
+
+	* oct-obj.cc (octave_value_list::valid_scalar_indices): New function.
+	(octave_value_list::index): New arg, resize_ok.
+	* oct-obj.h: Provide decls.
+
+	* oct-map.cc (Octave_map::keys): Rename from make_name_list.
+	Change all uses.
+	(Octave_map::assign, Octave_map::index): New functions.
+	* oct-map.h: Provide decls.
+
+	* data.cc (Fstruct_contains): Use map_value instead of
+	do_struct_elt_index_op.
+
+	* Cell.h (Cell (const Array2<octave_value>&, int, int)):
+	New constructor.
+	(Cell::resize_fill_value): New static function.
+
+	* input.cc (initialize_command_input): Set basic and completer
+	word break characters.
+
+2002-05-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::subsref): New function.
+	* ov-base.cc (octave_base_value::subsref): Likewise.
+
+	* ov-struct.cc (octave_struct::print_raw): Print scalar struct
+	arrays more compactly.
+
+	* DLD-FUNCTIONS/time.cc (extract_tm): Handle new struct array def.
+
+	* oct-map.cc (Octave_map::array_len): New data member.
+	(Octave_map::operator[], Octave_map::contsnts): Return
+	octave_value_list, not Octave_value.  Change callers as necessary.
+	(Octave_map::assign): New function.
+	(Octave_map::array_length): New fucntion.
+	* oct-obj.cc (octave_value_list::assign): New function.
+
+2002-05-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* TEMPLATE-INST/Map-oct-obj.cc: New file.
+	* Makefile.in (TI_XSRC): Add it to the list.
+
+	* oct-map.h (Octave_map): Make CHMap<octave_value_list> a data
+	member instead of deriving from CHMap<octave_value>, in
+	preparation for structure arrays.
+
+	* pt-indir.h, pt-indir.cc: Delete.
+
+	* pt-all.h: Don't include pt-indir.h.
+
+	* Makefile.in (PT_SRC): Delete pt-indir.cc from the list.
+	(PT_INCLUDES): Delete pt-indir.h from the list.
+
+	* pt-walk.h (tree_walker::visit_indirect_ref): Delete.
+	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_indirect_ref):
+	Likewise.
+	* pt-check.h, pt-check.cc (tree_checker::visit_indirect_ref): Likewise.
+	* pt-bp.h, pt-bp.cc (tree_breakpoint::visit_indirect_ref): Likewise.
+
+	* pt-walk.h: Delete forward decl for tree_indirect_ref.
+	* variables.h: Likewise.
+
+	* parse.y (make_indirect_ref): Return tree_index_expression, not
+	tree_indirect_ref.
+
+	* pt-idx.h (tree_index_expression::struct_elt_name): New function.
+
+	* pt-idx.cc (tree_index_expression::lvalue): Handle dot case too.
+	(tree_index_expression::name): Likewise.
+	(tree_index_expression rvalue (int)): Likewise.
+	(tree_index_expression::eval_error): Likewise.
+	* pt-pr-code.cc (visit_index_expression): Likewise.
+	* pt-bp.cc (tree_breakpoint::visit_index_expression): Likewise.
+
+	* pt-idx.h (tree_index_expression::dot): New type enum element.
+	(tree_index_expression::expr_type): New function.
+	(tree_index_expression::tree_index_expression (tree_expression*,
+	const std::string&, int, int)): New constructor.
+	(tree_index_expression::is_index_expression): Return value is now
+	conditional on itype.
+	(tree_index_expression::is_indirect_ref): New function.
+	(tree_index_expression::lvalue_ok): Also return true if itype is dot.
+
+2002-05-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (ABORT_PARSE): Maybe restore symbol table context too.
+
+	* pt-idx.h (tree_index_expression::type): New enum.
+	(tree_index_expression::etype): New data member.
+	* pt-idx.h (tree_index_expression::tree_index_expression):
+	New arg, t, to set type of index.
+	* parse.y (make_index_expression): Likewise.
+	Change all callers.
+
+	* ov-base.cc (cell_conv): New conversion function.
+	(install_base_type_conversions): Install it.
+	Install conversion for indexed assignment of octave_cells to
+	undefined values.
+
+	* TEMPLATE-INST/Array-tc.cc: Instantiate assign functions too.
+	(Array<octave_value>::resize_fill_value (void)):
+	Provide specialization for octave_value.
+
+	* ov-cell.cc (octave_cell::assign (const octave_value_list&,
+	const octave_value&)): New function.
+	* Cell.h (Cell::Cell (const octave_value&)): New function.
+
+	* OPERATORS/op-cell.cc (install_list_ops): Use DEFASSIGNANYOP_FN
+	and INSTALL_ASSIGNANYOP, not DEFASSIGNOP_FN and INSTALL_ASSIGNOP.
+
+2002-05-03  Cai Jianming  <caijianming@yahoo.co.uk>
+
+	* OPERATORS/op-cell.cc: New file.
+	* Makefile.in (OP_XSRC): Include it in the list.
+
+	* parse.y (cell): Return a cell type instead of Matrix type.
+
+	* ov.cc (install_types): Install octave_cell type.
+
+	* pr-output.cc (octave_print_internal): Handle Cells.
+	* pr-output.h (octave_print_internal): Provide decl.
+
+	* ov-cell.h (octave_cell): Derive from octave_base_matrix<Cell>.
+	* ov-cell.cc (do_index_op, assign, print, print_raw,
+	print_name_tag): Delete.
+
+	* Cell.cc (allocator, index): Delete.
+	* Cell.h (Cell): Derive from Array2<octave_value>.
+	Most functions removed since we can use those from Array2 instead.
+
+2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
+
+	* ov-base-mat.cc (octave_base_matrix<MT>::assign):
+	New function.
+	* ov-base-mat.h (octave_base_matrix<MT>::assign): Provide decl.
+	* ov-bool-mat.cc (octave_bool_matrix::assign): Delete.
+	* ov-bool-mat.h (octave_bool_matrix:assign): Delete decl
+	* ov-cx-mat.cc (octave_complex_matrix::assign (const
+	octave_value_list& idx, const ComplexMatrix&)): Delete.
+	* ov-cx-mat.h (octave_complex_matrix:assign (const
+	octave_value_list& idx, const ComplexMatrix&)): Replace decl with
+	function.
+	* ov-re-mat.cc (octave_bool_matrix::assign): Delete.
+	* ov-re-mat.h (octave_bool_matrix:assign): Delete decl.
+
+2002-05-02  Cai Jianming  <caijianming@yahoo.co.uk>
+
+	* OPERATORS/op-bm-b.cc: New file.x
+	* Makefile.in (OP_XSRC): Add it to the list.
+
+2002-04-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (print_version_and_exit): Use
+	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not
+	OCTAVE_NAME_AND_VERSION.
+
+	* octave.cc (verbose_usage):
+	Use OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY, not
+	OCTAVE_NAME_VERSION_AND_COPYRIGHT.
+
+	* version.h (OCTAVE_COPYING_STATEMENT, OCTAVE_WARRANTY_STATEMENT,
+	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_AND_WARRANTY,
+	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS,
+	OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS,
+	OCTAVE_BUGS_STATEMENT): New macros.
+	(OCTAVE_STARTUP_MESSAGE): Define in terms of
+	X_OCTAVE_NAME_VERSION_COPYRIGHT_COPYING_WARRANTY_AND_BUGS
+	to include bugs address and amplified warranty information.
+
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Delete unused variable nsteps.
+
+2002-04-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (additional_help_message): Use www.octave.org, not
+	www.che.wisc.edu/octave/octave.html.
+	* octave.cc (verbose_usage): Likewise.
+
+2002-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/daspk.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+2002-04-25  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* DLD-FUNCTIONS/kron.cc: New file.
+	* Makefile.in (DLD_SRC): Add it to the list.
+
+2002-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (save_symtab): New non-terminal.  Save current symbol
+	table context here.
+	(function_beg): Use it.
+	(symtab_context): New file-scope variable.
+	(recover_from_parsing_function): Restore symbol table context here.
+
+2002-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (get_lines_and_columns): Handle CRLF as line
+	separator in addition to LF.
+
+2002-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (hdf5_ofstream::hdf5_ofstream):
+	Explicitly List std::ostream(0) in constructor.
+	(hdf5_ifstream::hdf5_ifstream):
+	Explicitly List std::istream(0) in constructor.
+	(hdf5_fstreambase::hdf5_fstreambase): Use std::ios::setstate, not set.
+	(hdf5_fstreambase::close): Likewise.
+	(hdf5_fstreambase::open): Likewise.
+
+2002-04-10  Ben Sapp  <bsapp@lanl.gov>
+
+	* pt-stmt.cc (delete_breakpoint): List breakpoints if line < 0.
+	* debug.cc (get_user_function): Check symbol by name first.
+	(Fdbstop): Rename from Fdbg_set.
+	(Fdbclear): Rename from Fdbg_delete.
+	(Fdbstatus): Rename from Fdbg_list.
+	(Fdbg_where): Rename from Fdbwhere.
+	(do_dbtype, Fdbtype): New functions.
+
+2002-04-10  Peter Van Wieren  <peter.vanwiere@avlna.com>
+
+	* load-save.cc (save_mat5_binary_element): Save elements of 2d
+	character matrices in proper order.
+
+2002-04-09  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* utils.cc (do_string_escapes): Handle \0 too.
+	(undo_string_escape): Likewise.
+
+2002-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (octave_config_info): Define struct member EXEEXT, not EXE.
+	* Makefile.in (install-bin): Use $(EXEEXT), not $(EXE).
+	* oct-conf.h.in (OCTAVE_CONF_EXEEXT): Define and substitute
+	OCTAVE_CONF_EXEEXT, not OCTAVE_CONF_EXE.
+
+2002-04-03  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* DLD-FUNCTIONS/balance.cc: Use F77_FUNC instead of F77_FCN.
+	* DLD-FUNCTIONS/qz.cc: Likewise.
+	* DLD-FUNCTIONS/rand.cc: Likewise.
+	* octave.cc: Likewise.
+	* toplev.cc (Foctave_config_info): Delete use of FORTRAN_MAIN_FLAG.
+	* oct-conf.h.in: Delete use of OCTAVE_CONF_FORTRAN_MAIN_FLAG.
+	* syscalls.cc (mk_stat_map):
+	Use HAVE_STRUCT_STAT_ST_RDEV instead of HAVE_ST_RDEV.
+	Use HAVE_STRUCT_STAT_ST_BLKSIZE instead of HAVE_ST_BLKSIZE.
+	Use HAVE_STRUCT_STAT_ST_BLOCKS instead of HAVE_ST_BLOCKS.
+
+2002-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l, lex.h (parser_end_of_input): New global variable.
+	(reset_parser): Reset it here.
+	* parse.y (input): Set it to TRUE on EOF.
+	(parse_and_executed): Save and restore it, check it to correctly
+	break out of parse-execute loop.
+	(parse_fcn_file): Likewise.
+	(eval_string): Likewise.
+	* toplev.cc (main_loop): Likewise.
+
+	* parse.y (input): Call YYACCEPT for END_OF_INPUT.
+	Return no-op command for bare newline.
+	(parse_and_execute): Handle change in yyparse return value semantics.
+
+	* toplev.cc (main_loop): Likewise.
+
+2002-03-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (parse_fcn_file): Call error if there is no input file.
+	(parse_and_execute (FILE *): Protect get_input_from_eval_string.
+	Set get_input_from_eval_string to false before calling yyparse.
+	* lex.l (reset_parser): Also skip yyrestart (stdin) if
+	reading_script_file is true.
+
+2002-03-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-loop.cc (evaluating_looping_command): New global.
+	(tree_while_command::eval): Protect evaluating_looping_command.
+	Set it to true while evaluating loop.
+	(tree_do_until_command::eval): Ditto.
+	(tree_simple_for_command::eval): Ditto.
+	(tree_complex_for_command::eval): Ditto.
+	* pt-loop.h (evaluating_looping_command): Provide decl.
+	* parse.y (parse_fcn_file): Protect get_input_from_eval_string.
+	Set get_input_from_eval_string to false before calling yyparse.
+	(make_break_command): Also check evaluating_looping_command.
+	(make_continue_command): Also check evaluating_looping_command.
+	(eval_string (const std::string&, bool, int&, int)): Loop over
+	yyparse to handle multi-line strings.
+	Move call to unwind_protect::run_frame to end of function.
+	Don't reset parser before calling yyparse.
+	Correctly handle return, break, and continue.
+
+	* input.cc (input_from_eval_string_pending): New global variable.
+	(get_usr_input): Use it.
+	* input.h (input_from_eval_string_pending): Provide decl.
+
+2002-03-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Don't unwind_protect num_named_args (it doesn't change on
+	recursive calls).
+	Do re-initialize curr_va_arg_number to num_named_args after
+	unwind_protecting.
+
+	* ov-usr-fcn.h (octave_user_function::clear_args_passed): Delete.
+	(octave_user_function::saved_args): New data member.
+	(octave_user_function::save_args_passed): New function.
+	(octave_user_function::restore_args_passed): Ditto.
+	* ov-usr-fcn.cc (clear_args_passed): Delete.
+	(restore_args_passed): New function.
+	(octave_user_function::do_multi_index_op): Correctly save and
+	restore args passed for recursive calls.
+
+	* TEMPLATE-INST/SLStack-ovl.cc: New file.
+	* Makefile.in: Add it to the list.
+
+2002-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (octave_user_function::do_multi_index_op):
+	Handle define_all_return_values after function is evaluated.
+	From Paul Kienzle <pkienzle@jazz.ncnr.nist.gov>.
+
+	* ov-scalar.cc (convert_to_str): Use octave_value (std::string)
+	constructor instead of octave_value (char *) constructor so that
+	setstr (0) will work.
+
+	* pager.cc (octave_pager_buf::sync): Set pointer to beginning
+	of buffer after calling flush_currnt_contents_to_diary.
+	(octave_diary_buf::sync): Call eback only once.
+
+2002-01-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (.): Remove test for EOF since it is already handled
+	separately.
+
+2001-12-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_mat5_binary_element):
+	Extract dimensions directly from tc.
+	Handle ranges the same as real matrices.
+
+2001-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (DATA_REDUCTION): If no DIM arg, pass -1 to FCN.
+
+2001-11-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-conf.h.in (FFTW_LIBS, LD_CXX, LIBOCT_PATHSEARCH,
+	LIBOCT_READLINE, MKOCTFILE_LFLAGS): Substitute.
+	* toplev.cc (octave_config_info): Add them to the map.
+
+2001-11-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Don't bother to give OUTPUT
+	matrix a size before calling integration function.
+
+2001-11-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	Makefile.in (OCTAVE_LIBS): Add $(LIBOCT_READLINE) and
+	$(LIBOCT_PATHSEARCH) to the list.
+
+2001-10-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dassl.cc (dassl_user_function): Allow user
+	supplied RES function to return IDID as second value.
+
+2001-07-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Clear help_buf after documenting function.
+
+2001-06-29  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* defun-int.h (DEFINE_FUN_INSTALLER_FUN{2,3}): New macros.
+	(DEFINE_FUN_INSTALLER_FUN): Use.
+	* dynamic-ld.cc ({STRINGIFY, STRINGIFY1}): New macros.
+	(octave_dynamic_loader::mangle_name): Support dynamic linking
+	for GNU v3 and Sun C++ ABI.
+
+2001-06-26  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* c-file-ptr-stream.h (c_file_ptr_buf::c_file_ptr_buf): Add GCC3
+	libstdc++-v3 support.
+	* load-save.cc (save_mat5_binary_element): Cast arguments to the
+	correct type.
+	(save_ascii_data): Eliminate compiler warning.
+	* toplev.cc (system): Prefix std::.
+
+2001-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cx-mat.cc: Deleve unnecessary instantiation of assign function.
+	* ov-re-mat.cc: Likewise.
+	* ov-re-nd-array.cc: Likewise.
+	* ov-str-mat.cc: Likewise.
+	* ov-bool-mat.cc: Likewise.
+
+	* load-save.cc (save_ascii_data): When saving string data, get raw
+	string value for matrix row since there may be embedded nuls.
+
+	* pt-mat.cc (Vstring_fill_char): No longer static.
+	* pt-mat.h: Provide declaration.
+
+2001-05-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (initialize_pathsearch): Save initial value of the
+	TEXMFDBS environment variable here.
+	* toplev.cc (restore_texmfdbs_envvar): New function.
+	(Fsystem): Set TEXMFDBS back to original value before running
+	subprocesses.
+
+2001-05-02  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* Makefile.in (octave): Add $(FFTW_LIBS).
+
+2001-04-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/sort.cc (mx_sort): Check for NaNs in comparisons.
+
+2001-04-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTAVE_LIBS): Delete $(LIBREADLINE) from the list.
+	(octave): Delete TERMLIBS from link command.
+	* oct-conf.h.in: Delete references to LIBREADLINE, TERMLIBS.
+	* toplev.cc (octave_config_info): Delete entries for LIBREADLINE,
+	TERMLIBS.
+
+2001-04-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-lib): Don't use mk-libdir-link.
+	(install-inc): Don't use mk-includedir-link.
+
+2001-04-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (fold (tree_binary_expression *)):
+	Set discard_error_messages here instead of buffer_error_messages.
+	Don't add clear_global_error_variable to the unwind_protect stack.
+	(fold (tree_unary_expression *)): Likewise.
+	(finish_colon_expression): Likewise.
+	(finish_matrix): Likewise.
+
+	* error.cc (panic): Set discard_error_messages to false here.
+	(verror): Return immediately if discard_error_messages is true.
+
+	* error.cc (discard_error_messages): New global variable.
+	* error.h: Provide declaration.
+
+2001-04-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: If unexpected character is EOF, report EOF error instead
+	of invalid character error.
+
+2001-04-18  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* load-save.cc (read_mat5_binary_element): Cast arguments to the
+	correct type when adding stream positions.
+	* DLD-FUNCTIONS/det.cc (det): Explicity create a Complex value to
+	work around a Sun C++ type conversion bug.
+
+2001-04-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.cc (define_builtin_const): Don't call replace_all_defs
+	here.
+
+	* error.cc (error_message_buffer): Now static.
+	* error.h (error_message_buffer): Delete extern declaration.
+
+2001-03-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/besselj.cc (besselh): Use K arg.
+	From: Thomas Stuart <tstuart@ing.sun.ac.za>.
+
+	* oct-stream.cc (get_size): Don't allow [Inf, N] as a size
+	specification for the read and scanf functions.
+	(get_size): SIZE is now an Array<double> instead of a Matrix object.
+	(read): Likewise.  Change all callers.
+	(scanf): Likewise.  Change all callers.
+
+2001-03-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Only return rcond if nargout > 1.
+	* DLD-FUNCTIONS/inv.cc (Finv): Only return rcond if nargout > 1.
+
+2001-03-26  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* DLD-FUNCTIONS/det.cc (Fdet): Suppress warning, but return rcond.
+	* DLD_FUNCTIONS/inv.cc (Finv): Return rcond if requested.
+
+2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt.h (tree::break_statement): New static member.
+	(tree::break_function): Make const.
+	* pt.cc (tree::break_statement): Initialize here.
+	(tree::break_function): Make const.
+	* pb-bp.h (break_statement): Delete global varaible declaration.
+	* pt-bp.cc (break_statement): Delete global variable definition.
+
+	* pt-bp.h (tree_breakpoint::bp_list): Rename from lst.
+
+	* pt.h: Don't inlcude ov-usr-fcn.h.
+	Provide forward declaration of octave_user_function class.
+
+2001-02-28  Ben Sapp  <bsapp@lanl.gov>
+
+	* debug.cc (get_user_function): Simplify by using curr_function.
+	(Fdbg_where): New function.
+	(Fdbg_list): Now DLD_TEXT instead of DLD_FCN.
+	(Fdbg_set): Likewise.
+	(Fdbg_delete): Likewise.
+
+	* pt-bp.h (break_statement): New global variable.
+	(MAYBE_DO_BREAKPOINT): Check for dbg_next and dbg_step.
+	Print line, column, and current statement.
+	* pt-bp.cc (break_statement): New global variable
+	(tree_breakpoint::visit_do_until_command): Return immediately if
+	we've already found the line.
+	(tree_breakpoint::visit_colon_expression): Set breakpoint info here.
+	(tree_breakpoint::visit_binary_expression): Recurse here when
+	checking for breakpoints.
+
+	* debug.cc: Move here from DLD-FUNCTIONS/debug.cc.
+	* Makefile.in (DIST_SRC): Add it to the list.
+	(DLD_XSRC): Delete it from the list.
+
+	* pt.h (tree::last_line, tree::break_function): New static members.
+	* pt.cc(tree::last_line, tree::break_function): Initialize them.
+
+	* pt-cell.h (tree_cell::tree_cell): Accept line and column info.
+	* pt-mat.h (tree_matrix::tree_matrix): Likewise.
+
+	* ov-usr-fcn.h (octave_user_function::sym_tab): Delete.
+
+	* input.cc (get_user_input): Handle dbg_next.
+	Set tree:break_function and tree::last_line when doing dbg_step.
+
+2001-02-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_string): Save line and column information in token.
+	(is_keyword): Save line and column information for plot style and
+	axes tokens.
+
+	* toplev.cc (main_loop): Set retval to non-zero value if error
+	occurs when not interactive.
+
+2001-02-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (gobble_leading_white_space): Handle CRLF here too.
+	* lex.l (check_for_garbage_after_fcn_def): Likewise.
+
+	* lex.l: Add numeric value of character to error message for
+	unrecognized characters.
+
+2001-02-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): For empty matrix
+	args, make Octave's min	and max behave like Matlab.
+
+2001-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-s-s.cc (el_or, el_and): Return bool value.
+
+2001-02-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-binop.cc (tree_boolean_expression::rvalue):
+	Don't cast result to double.
+
+	* OPERATORS/op-b-b.cc: Allow & and | operators to return bool values.
+
+2001-02-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (DATA_REDUCTION): Undo previous change.
+
+2001-02-13  Matthew W. Roberts  <matt@nephi.tamu.edu>
+
+	* load-save.cc (Fload): Accept -4 as an alias for -v4 and -mat4-binary.
+	(Fsave): Likewise.
+
+2001-02-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (lexical_feedbac::init):
+	Initialize looking_at_matrix_or_assign_lhs too.
+
+2001-02-09  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (DATA_REDUCTION): Allow FCN(x,0) to be equivalent to FCN(x).
+
+2001-02-06  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* oct-stream.cc (octave_scan): Partially implement and specialize
+	for char*.  Delete the old template instantiations.
+	(BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf.
+	(octave_base_stream::do_scanf): Pass correct parameter to
+	do_scan_conv.
+
+2001-02-05  Mumit Khan  <khan@nanotech.wisc.edu>
+
+	* pr-output.cc (set_format): Add std:: namespace qualifier as
+	needed.
+
+	* oct-stream.cc (octave_scan): Implement, and specialize for
+	char*. Delete the old template instantiations.
+	(BEGIN_S_CONVERSION): Use strings instead of ostrstreambuf.
+	(octave_base_stream::do_scanf): Pass correct parameter to
+	do_scan_conv.
+
+	* Makefile.in (TEMPLATE_AR, TEMPLATE_ARFLAGS): Use to create
+	archive libraries containing templates.
+
+	* c-file-ptr-stream.h: Include <fstream>. Use <cstdio> instead of
+	<stdio.h>
+	(c_file_ptr_buf::int_type): Compat typedef for non-ISO libstdc++.
+	(c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Use.
+	(c_file_ptr_buf::c_file_ptr_buf): Handle various compilers.
+	(c_file_ptr_buf::file_number): New member function.
+	(c_file_ptr_buf::fd): New private data.
+	(i_c_file_ptr_stream::i_c_file_ptr_stream): Initialize stream
+	correctly.
+	(o_c_file_ptr_stream::o_c_file_ptr_stream): Likewise.
+	* c-file-ptr-stream.cc
+	(c_file_ptr_buf::{overflow, underflow, uflow, pbackfail): Add
+	ISO-compliant EOF handling.
+	* oct-stream.cc (octave_base_stream::file_number): Use
+	c_file_ptr_buf::file_number to get underlying file descriptor.
+
+	* comment-list.cc: Add missing class qualifier.
+
+	* file-io.cc, load-save.cc, mappers.cc, oct-fstrm.cc, oct-fstrm.h,
+	oct-iostrm.cc, oct-iostrm.h, oct-stdstrm.cc, oct-stdstrm.h,
+	oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h,
+	ov-base-nd-array.cc, ov-base-scalar.h, ov-complex.cc, ov-cx-mat.cc,
+	pager.cc, pr-output.cc, procstream.h, pt-bp.h, utils.cc:
+	Add std:: namespace qualifier as needed, and replace
+	deprecated or invalid libstdc++-v2 names with standard ones
+	where appropriate.
+
+	* DLD-FUNCTIONS/minmax.cc: Fix docstring.
+
+	* oct-fstrm.cc (octave_fstream::octave_fstream): Maintain fix for
+	libstdc++-v2.
+
+	* oct-stdstrm.cc (octave_ostdiostream::create): Remove default
+	parameter value in definition.
+
+	* oct-stream.cc (octave_stream::mode_as_string): Don't assume
+	std::iso::openmode is an integral quantity.
+
+	* pager.cc, procstream.h: Initialize streams correctly.
+
+	* utils.cc: Use CXX_ISO_COMPLIANT_LIBRARY guard.
+
+	* ov-base-nd-array.cc (idx_list_to_idx_array): Inline.
+
+	* ov-base-scalar.h (octave_base_scalar::octave_base_scalar): Use
+	``const ST& s'' instead of ST to workaround gcc3 complex bug.
+
+2001-02-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (next_token_is_bin_op): Remove Checks for spacing except
+	for ops that begin with +, - but are not ++, --, +=, or -=.
+
+2001-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (get_user_input): Handle dbg_cont and dbg_step here.
+	* debug.cc (Fdbg_cont): Delete.
+	* pt-bp.h (MAYBE_DO_BREAKPOINT): Check tree::break_next here.
+	* pt.h (tree::break_next): New static member.
+	* pt.cc: Initialize it.
+
+	* parse.h (feval (const octave_value_list&, int)):
+	Set default value for nargout.
+	(feval (const std::string&, const octave_value_list&, int)):
+	Set default values for args and nargout.
+
+2001-02-01  Ben Sapp  <bsapp@lanl.gov>
+
+	* DLD-FUNCTIONS/debug.cc: New file.
+	* pt-bp.h, pt-bp.cc: New files, for breakpoints.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* pt-stmt.cc (tree_statement_list::set_breakpoint,
+	tree_statement_list::delete_breakpoint,
+	tree_statement_list::list_breakpoints): New functions.
+
+	* pt.h (tree::break_point): New data member.
+	(tree::set_breakpoint, tree::delete_breakpoint, tree::is_breakpoint):
+	New virtual functions.
+
+	* pt-mat.cc (tree_matrix::rvalue): Check for breakpoint here.
+	* pt-unop.cc (tree_prefix_expression::rvalue): Likewise.
+	(tree_postfix_expression::rvalue): Likewise.
+	* pt-loop.cc (tree_do_until_command::eval): Likewise.
+	(DO_LOOP): Likewise.
+	(tree_simple_for_command::eval): Likewise.
+	(tree_complex_for_command::eval): Likewise.
+	* pt-assign.cc (tree_simple_assignment::rvalue): Likewise.
+	* pt-binop.cc (tree_binary_expression::rvalue): Likewise.
+	(tree_boolean_expression::rvalue): Likewise.
+	* pt-cell.cc (tree_cell::rvalue): Likewise.
+	* pt-colon.cc (tree_colon_expression::rvalue): Likewise.
+	* pt-except.cc (tree_try_catch_command::eval): Likewise.
+	(tree_unwind_protect_command::eval): Likewise.
+	* pt-id.cc (tree_identifier::rvalue): Likewise.
+	(tree_identifier::lvalue): Likewise.
+	* pt-indir.cc (tree_indirect_ref::rvalue): Likewise.
+	* pt-jump.cc (tree_break_command::eval): Likewise.
+	(tree_continue_command::eval): Likewise.
+	(tree_return_command::eval): Likewise.
+
+2001-01-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Map.h, Map.cc (CHMap<C>::operator = (const CHMap&)): New function.
+	(Map<C>::operator = (const Map&)): Likewise.
+	(Map<C> (const Map&)): Likewise.
+
+	* OPERATORS/op-cm-cs.cc, OPERATORS/op-cm-s.cc,
+	OPERATORS/op-m-cs.cc, OPERATORS/op-m-s.cc:
+	Make ldiv operator work for row vector by scalar ops.
+
+	* OPERATORS/op-cs-cm.cc, OPERATORS/op-cs-m.cc,
+	OPERATORS/op-s-cm.cc, OPERATORS/op-s-m.cc:
+	Make div operator work for scalar by column vector ops.
+
+2001-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (safe_fclose): Discard comments at the end of a file.
+
+2001-01-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (pr_where): Call pr_where_1 with two args, not one, to
+	avoid processing format escapes that might appear in formatted code.
+
+2001-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (vwarning): Write to output_buf, then send formatted
+	message to diary and error streams.
+
+2001-01-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cx-mat.cc (octave_complex_matrix::try_narrowing_conversion):
+	Handle empty matrix dimensions correctly.
+
+2000-12-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.h (octave_pager_buf::diary_skip): New data member.
+	(octave_pager_buf::octave_pager_buf): Initialize it.
+	* pager.cc (octave_pager_buf::set_diary_skip): New function.
+	(octave_pager_stream::set_diary_skip): New function.
+	(octave_pager_buf::sync): Call flush_current_contents_to_diary
+	instead of octave_diary.write.
+	(octave_pager_buf::flush_current_contents_to_diary): Use
+	diary_skip, reset when done.
+	(open_diary_file): Call octave_stdout.set_diary_skip here.
+
+2000-12-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/minmax.cc (EMPTY_RETURN_CHECK): New macro.
+	(min, max): Use it.
+
+	* DLD-FUNCTIONS/minmax.cc (MINMAX_BODY): New macro.  If single arg
+	is empty, return empty matrix result and empty matrix for index.
+	(Fmin, Fmax): Use MINMAX_BODY, so we have consistent definition
+	for min and max functions.
+
+2000-11-30  Joerg Specht  <joerg.specht@ins.uni-stuttgart.de>
+
+	* help.cc (display_help_text): Append new line at end of doc string.
+
+2000-11-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/lsode.cc (LSODE_ABORT1, LSODE_ABORT2): Omit `##'
+	in macro definition since they are not needed to paste strings
+	together and picky compilers choke on them.
+	* DLD-FUNCTIONS/quad.cc (QUAD_ABORT1, QUAD_ABORT2): Likewise.
+	* DLD-FUNCTIONS/fsolve.cc (FSOLVE_ABORT1, FSOLVE_ABORT2): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (DASSL_ABORT1, DASSL_ABORT2): Likewise.
+
+2000-11-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkbuiltins (XDEFUNX_INTERNAL): New macro.
+	* mkgendoc (XDEFUNX_INTERNAL): Likewise.
+	* defun-int.h (DEFUNX_INTERNAL): Use it.
+
+	* defun.h (DEFUNX): New macro.
+	* defun-int.h (DEFUNX_INTERNAL, DECLARE_FUNX): New macro.
+	(DECLARE_FUN): Define in terms of DECLARE_FUNX.
+
+	* mkdefs: Read and print one line at a time, so we can force
+	patterns to match only at the beginning of a line.
+
+	* defun-int.h (UNDERSCORIFY): Omit `##' in macro definition since
+	they are not needed to paste strings together and picky compilers
+	choke on them.
+
+2000-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_ascii_data_for_plotting): New function.
+	* pt-plot.cc (save_in_tmp_file): Use it instead of save_ascii_data.
+
+	* load-save.cc (save_ascii_data): Warn if saving Inf or NaN values.
+	New arg, infnan_warned.  Use it to warn just once per set.
+	Now static.
+	(do_save): New arg, infnan_warned.  Pass to save_ascii_data.
+	(save_vars): Initialize infnan_warned here, pass to do_save.
+
+2000-11-16  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* file-io.cc (Ffprintf): If no file id parameter, don't return
+	count of characters if nargout is 0 (for compatibility with
+	Matlab).
+
+2000-11-16  Ben Sapp  <bsapp@lanl.gov>
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Declare loop counter as
+	volatile int, not just volatile.
+
+2000-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (skip_comments): Allow % as comment character too.
+	(extract_keyword): Likewise.
+
+	* Makefile.in (oct-gperf.h): Remove -a, -g, and -p flags for gperf.
+
+2000-10-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (do_load): Allow result to be returned instead of
+	inserting variables in the symbol table.  Change patterned after
+	patch by Kian Ming Adam Chai <caijianming@yahoo.co.uk>.
+
+2000-10-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (ops.cc): Don't substitute BLAS_LIBS and LIBS here.
+
+	* oct-conf.h.in (OCTAVE_CONF_SPECIAL_MATH_LIB): Delete.
+	(OCTAVE_CONF_BLAS_LIBS): Add.
+	* toplev.cc (octave_config_info): Likewise, add BLAS_LIBS and
+	remove SPECIAL_MATH_LIB from the struct.
+
+	* parse.y (feval (const octave_value_list&, int)): Don't panic
+	while processing arg names if arg.length() and arg_names.length()
+	differ.
+
+2000-10-12  Paul Kienzle  <pkienzle@kienzle.powernet.co.uk>
+
+	* ov-cell.h (octave_cell::is_cell): New function.
+
+	* pt-select.cc (equal): New static function.
+	(tree_switch_case::label_matches): Use it to compare case label
+	against arg.  Handle cell arrays as case labels.
+
+2000-10-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	Change patterned after patch by Cai Jianming
+	<caijianming@yahoo.co.uk> to support for DIM arg in 2.0.x sources.
+
+	* data.cc (DATA_REDUCTION): New macro.  Handle second DIM arg here.
+	(Fcumprod): Replace function body with DATA_REDUCTION.
+	(Fcumsum): Likewise.
+	(Fprod): Likewise.
+	(Fsum): Likewise.
+	(Fsumsq): Likewise.
+
+2000-10-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc (pr_where_2): New function.
+	(pr_where_1): Use it instead of error_1 to avoid setting error_state.
+
+2000-10-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xdiv.cc (xdiv): Warn if execution falls through to lssolve.
+
+2000-09-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (FERRNO): New function (currently commented out).
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::close): Call flush here.
+	(c_file_ptr_buf::~c_file_ptr_buf): Not here.
+	* c-file-ptr-stream.h (c_fie_ptr_buf::close_fcn): New typedef.
+	(c_file_ptr_buf::cf): New data member.  Add default constructor arg.
+	(class c_file_ptr_buf): Derive from filebuf, not streambuf.
+	(i_c_file_ptr_stream, o_c_file_ptr_stream): Handle close function here.
+	* oct-procstrm.cc (octave_iprocstream, octave_oprocstream): Likewise.
+	(octave_iprocstream::do_close, octave_oprocstream::do_close): Delete.
+	* oct-stdstrm.cc (octave_base_stdiostream::~octave_base_stdiostream):
+	Don't do anything.
+	(octave_istdiostream::create): Handle close function here.
+	(octave_istdiostream::octave_istdiostream): Likewise.
+	(octave_ostdiostream::create): Likewise.
+	(octave_ostdiostream::octave_ostdiostream): Likewise.
+	(class octave_base_stdiostream): Don't cache FILE pointer here.
+
+2000-09-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* syscalls.cc (Ffcntl): Don't assume that the file id passed in is
+	the same as the underlying system file id.
+
+2000-08-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Use octave_time, not time.
+
+2000-08-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (printf_value_cache::double_value): Also set
+	curr_stat to conversion_error if there are no values at all.
+
+2000-08-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Flink, Fsymlink, Freadlink): New functions.
+
+2000-08-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (Vsave_header_format_string): New variable.
+	(symbols_of_load_save): DEFVAR it.
+	(save_header_format, default_save_header_format): New functions.
+	(write_header): Use Vsave_header_format_string here.
+
+2000-07-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-pr-code.h (tree_print_code::curr_print_indent_level,
+	(tree_print_code::beginning_of_line): No longer static.
+	(tree_print_code::tree_print_code): Initialize them here.
+	* pt-pr-code.cc: Not here.
+
+	* pt-stmt.cc (tree_statement::eval): Set curr_statement here.
+	(tree_statement_list::eval): Not here.
+
+	Debug-on-error stuff based on a patch submitted by Paul Kienzle
+	<pkienzle@kienzle.powernet.co.uk> for 2.0.x.
+
+	* error.cc (Vdebug_on_warning): New static flag variable.
+	(debug_on_warning): New function.
+	(symbols_of_warning): DEFVAR debug_on_warning.
+	(warning): Handle debug_on_warning here.
+
+	* input.cc (do_keyboard): New function.
+	(Fkeyboard): Use it to do the real work.
+	* pt-stmt.cc (curr_statement): New static variable.
+	(tree_statement::eval): Save and restore it here.
+	* error.cc (Vdebug_on_error): New static flag variable.
+	(debug_on_error): New function.
+	(symbols_of_error): DEFVAR debug_on_error.
+	(pr_where, pr_where_1): New functions.
+	(error): Handle debug_on_error here.
+
+2000-07-20  Joao Cardoso  <jcardoso@inescporto.pt>
+
+	* Makefile.in (octave): Link with $(LD_CXX) instead of $(CXX)
+
+2000-07-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::oscanf): Advance to next
+	format element before attempting to pick up any trailing stuff.
+
+2000-07-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (next_token_is_bin_op): Don't recognize `..' as a binary op.
+
+	* load-save.cc (get_file_format): Call read_mat5_binary_file_header
+	with third arg true instead of false, so we don't barf if the file
+	is not a matlab v5 binary file.
+
+2000-07-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (octave): Link to ../libcruft/blas-xtra/xerbla.o here.
+
+	* octave.cc (main): Remove kluge to attempt linking our version of
+	xerbla.
+
+2000-07-07  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* load-save.cc (have_h5giterate_bug): New file-scope variable.
+	(hdf5_read_next_data): Only increment current_item if
+	have_h5giterate_bug is true.
+	(read_hdf5_data): Set have_h5giterate_bug here.
+	Only increment hs.current_item if have_h5giterate_bug is true.
+
+2000-07-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::close):
+	Return -1 if file pointer is NULL.
+	Set file pointer to 0 after closing.
+	(c_file_ptr_buf::~c_file_ptr_buf): Call close after flushing.
+
+2000-07-05  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* Makefile.in (BLAS_LIBS): Substitute here.
+	(octave): Use $(BLAS_LIBS) in the final link command.
+
+2000-06-30  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	* Makefile.in (octave): Link $(FLIBS) last.
+	* octave.cc (main): Force our own xerbla to be linked instead of
+	some system version.
+
+2000-06-29  James R. Van Zandt  <jrv@vanzandt.mv.com>
+
+	* load-save.cc (load_save_format): New value, LS_MAT5_BINARY.
+	(arrayclasstype, mat5_data_type): New enums.
+	(read_mat5_binary_data): New function.
+	(read_mat5_tag): New function.
+	(read_mat5_binary_element): New function.
+	(read_mat5_binary_file_header): New function.
+	(get_file_format): Check for mat5 binary format too.
+	(do_load): Handle mat5 binary format.
+	(write_mat5_tag): New function.
+	(write_mat5_array): New function.
+	(class mat5_callback): New class.
+	(save_mat5_binary_element): New functnon.
+	(do_save): Handle mat5 binary format.
+	(write_header): Handle LS_MAT5_BINARY case too.
+	(save_user_variables): Handle LS_MAT5_BINARY case too.
+	(Fsave): Handle LS_MAT5_BINARY case too.
+	(Fload): Handle LS_MAT5_BINARY case too.
+
+2000-06-29  Steven G. Johnson  <stevenj@alum.mit.edu>
+
+	All of the following changes are protected by #ifdef HAVE_HDF5.
+
+	* load-save.cc (load_save_format): New value, LS_HDF5.
+	(make_valid_identifier): New function.
+	(class hdf5_fstreambase, class hdf5_ifstream, class hdf5_ofstream):
+	New classes for reading and writing hdf5 data.
+	(hdf5_types_compatible): New function.
+	(hdf5_import_multidim): New function.
+	(hdf5_check_attr): New function.
+	(hdf5_read_next_data): New function.
+	(hdf5_make_complex_type): New function.
+	(hdf5_make_range_type): New function.
+	(read_hdf5_data): New function.
+	(get_file_format): Handle HDF5 format.
+	(do_load): Handle LS_HDF5 case.
+	(Fload): Handle HDF5 format.
+	(hdf5_add_attr): New function.
+	(save_type_to_hdf5): New function.
+	(add_hdf5_data): New function.
+	(do_save): Handle HDF5 format.
+	(get_default_save_format): Handle LS_HDF5 case.
+	(write_header): Handle LS_HDF5 case.
+	(save_user_variables): Handle HDF5 format.
+	(Fsave): Handle HDF5 format.
+
+2000-06-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (display_help_text): If writing to filter fails, send
+	unformatted text to output stream.
+
+2000-06-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-bm-bm.cc (eq): Define using mx_el_eq, not operator ==.
+	(ne): Likewise, use mx_el_ne, not operator !=.
+
+	* pr-output.cc (Fdisp): Delete.
+
+2000-06-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (float_format::float_format): Set default values
+	for width and precision to -1.
+	(operator << (ostream&, pr_formatted_float&): Set width and
+	precision if values are >= 0.
+	(set_real_format, set_real_matrix_format, set_range_format,
+	set_complex_format, set_complex_matrix_format): If we have all
+	integers, infinities, or nans, set precision equal to field width.
+
+	* load-save.cc (read_ascii_data): Allow empty strings and string
+	vectors to be restored.
+
+	* variables.cc (var_matches_any_pattern): New function.
+	(Fclear): Use it to make exclusive clear work correctly.
+
+2000-06-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-range.h (octave_range::is_numeric_type): New function.
+
+	* sysdep.cc (Fkbhit): Also ask for input if forced_interactive.
+
+2000-06-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (oct-gperf.h): Use $(GPERF) instead of gperf.
+
+2000-05-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/qz.cc (Fqz): When computing finite generalized
+	eigenvalues, don't write past the end of the array.
+
+2000-05-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-nd-array.h, ov-base-nd-array.cc, ov-re-nd-array.h,
+	ov-re-nd-array.h: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+	* pt-stmt.h, pt-stmt.cc (class tree_statement):
+	Store comments associated with this parse tree element.
+	* pt-select.h, pt-select.cc (class tree_if_clause,
+	class tree_if_command, class tree_switch_case
+	class tree_switch_command): Likewise.
+	* pt-loop.h, pt-loop.cc (class tree_while_command,
+	class tree_do_until_command, class tree_simple_for_command,
+	class tree_complex_for_command): Likewise.
+	* pt-except.h, pt-except.cc (class tree_try_catch_command,
+	class tree_unwind_protect_command): Likewise.
+	* ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Likewise.
+	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::print_comment_elt,
+	tree_print_code::print_comment_list,
+	tree_print_code::print_indented_comment): New functions.
+	(tree_print_code::visit_simple_for_command,
+	tree_print_code::visit_complex_for_command,
+	tree_print_code::visit_octave_user_function_header,
+	tree_print_code::visit_octave_user_function_trailer,
+	tree_print_code::visit_if_command, tree_print_code::visit_statement,
+	tree_print_code::visit_switch_case,
+	tree_print_code::visit_switch_command,
+	tree_print_code::visit_try_catch_command,
+	tree_print_code::visit_unwind_protect_command
+	tree_print_code::visit_while_command,
+	tree_print_code::visit_do_until_command): Handle comments.
+	* lex.l, parse.y: Handle comments in parse trees.
+	* comment-list.h, comment-list.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+
+2000-04-23  etienne grossmann  <etienne@anonimo.isr.ist.utl.pt>
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error):
+	New args x and y, for dimension mismatch info.
+	Change callers where appropriate.
+	(tm_const::init): Report mismatched column dimensions.
+
+2000-04-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc (kbhit): Also clear cin if at EOF.
+
+2000-04-11  Joao Cardoso  <jcardoso@inescn.pt>
+
+	* sysdep.cc (kbhit): New arg, wait.
+	(raw_mode): Ditto.
+	(Fkbhit): If given an arg, call kbhit with wait = false.
+
+	* DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Fix doc string.
+
+2000-04-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load): Undo previous change.
+
+2000-04-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (octave_dynamic_loader::do_load): Also fail with
+	error message if we don't find the mangled function name in the
+	file.
+
+2000-03-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (printf_value_cache::string_value): Return string
+	matrices in a Matlab-compatible way.
+	(printf_value_cache): Redesign the way list_exhausted works.
+
+	* oct-fstrm.cc (octave_fstream::do_close): New function.
+	* oct-stdstrm.cc (octave_istdiostream::do_close): Ditto.
+	(octave_ostdiostream::do_close): Ditto.
+	* c-file-ptr-stream.cc (c_file_ptr_buf::close): Ditto.
+	(i_c_file_ptr_stream::close): Ditto.
+	(o_c_file_ptr_stream::close): Ditto.
+	* oct-prcstrm.cc (octave_iprocstream::do_close): Ditto.
+	(octave_oprocstream::do_close): Ditto.
+	(octave_iprocstram::~octave_iprocstram): Call do_close here.
+	(octave_iprocstram::~octave_oprocstram): Likewise.
+
+	* oct-stream.h (octave_base_stream::do_close): New virtual function.
+	(octave_base_stream::close): If stream is open, call do_close.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::flush): New function.
+	(c_file_ptr_buf::~c_file_ptr_buf): Use it.
+	(c_file_ptr_buf::overflow): Ditto.
+	(c_file_ptr_buf::sync): Ditto.
+
+2000-03-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-procbuf.cc (octave_procbuf::open): Make output streams line
+	buffered.
+
+2000-03-24  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (my_friendly_exit): Prefix failure messages with
+	panic instead of error.
+
+	* c-file-ptr-stream.cc (c_file_ptr_buf::~c_file_ptr_buf):
+	Avoid dereferencing NULL pointer.
+
+	* oct-stream.cc (printf_format_list::add_elt_to_list,
+	printf_format_list::process_conversion,
+	printf_format_list::finish_conversion): New args, flags, fw, and prec.
+	(printf_format_list::printf_format_list): Save more complete info.
+	(printf_format_list::printme): Print flags, fw, and prec.
+	(octave_base_stream::printf): Simplify.
+	(do_printf_conv): Delete have_arg arg, since it is always true now.
+	(octave_base_stream::do_printf): Handle case of no args and %
+	directly instead of using do_printf_conv.
+	(printf_value_cache::exhausted): Rename from no_more_values.
+	(DO_PCT_CONVERSION): New macro
+	(octave_base_streain::do_scanf, octave_base_streain::do_oscanf):
+	Use it.
+	(scanf_format_list::finish_conversion): `%' counts as a conversion too.
+	Also don't forget to set type for it.
+	(OCTAVE_SCAN_0): Delete.
+	(OCTAVE_SCAN): Rename from OCTAVE_SCAN_1.
+	(octave_base_stream::scanf, octave_base_stream::oscanf): Don't
+	special-case number of conversions here.
+	(octave_base_stream::oscanf, octave_base_stream::do_oscanf): Only
+	cycle through fmt elements if the number of conversions is greater
+	than 0.
+
+	* oct-stream.h (scanf_format_list::next): New arg, `cycle'.
+	(printf_format_list::next): New arg, `cycle'.
+	(printf_format_list::last_elt_p): New function.
+	(printf_format_elt): New fields fw, prec, and flags.
+	Define copy constructor and assignment operator.
+	(scanf_format_elt): Define copy constructor and assignment operator.
+
+2000-03-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (OCTAVE_SCAN_0, OCTAVE_SCAN_1): New macros.
+	(do_scanf_conv, BEGIN_S_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION,
+	do_scanf, scanf, do_oscanf, do_oscanf, oscanf): Use them instead
+	of calling istream::scan directly.
+	(octave_scan): New function.
+	(do_scanf_conv): Second arg is now scanf_format_elt instead of char*.
+	Change all callers.
+
+	* oct-procbuf.h, oct-procbuf.cc (octave_procbuf):
+	Derive from c_file_ptr_buf instead of filebuf.
+
+	* oct-stream.cc (octave_base_stream::printf): Use octave_format
+	instead of ostream::form.  Return number of characters written.
+
+2000-03-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (do_printf_conv): Use octave_format instead of
+	ostream::form.  Return number of characters written.
+	(octave_base_stream::do_printf): Return number of characters written.
+
+	* error.cc (verror, vwarning): Use octave_format instead of
+	ostream::vform.
+
+	* utils.cc (octave_format, octave_vformat): New functions.
+	* cutils.c (octave_snprintf, octave_vsnprintf): New functions.
+
+	* oct-lvalue.h (dummy_val): New static variable.
+	(octave_lvalue::octave_lvalue): Use it to initialize val.
+
+	* variables.cc (is_valid_function): Look in the global symbol
+	table for functions.
+
+2000-03-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (LIBRARIES): Conditionally define.
+	(libraries): Depend on $(LIBRARIES).
+	(octave): Depend on $(LIBRARIES), not libraries.  Also depend on
+	stamp-prereq and stamp-oct-links.
+	(all): Don't depend on stamp-prereq or stamp-oct-links.
+	(liboctinterp.$(LIBEXT), liboctinterp.$(SHELXT)): Delete target
+	before rebuilding.
+
+2000-03-21  Ben Sapp  <bsapp@nua.lampf.lanl.gov>:
+
+	* Makefile.in (libraries): Depend only on library targets, not
+	archive members.
+
+2000-03-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (objects): New target
+
+	* c_file_ptr_stream.h, c_file_ptr_stream.cc: New files.
+	* oct-stdstrm.h, oct-stdstrm.cc, oct-prcstrm.cc:
+	Use c_file_ptr_buf, i_c_file_ptr_stream, and o_c_fie_ptr_stream
+	instead of stdiobuf, istdiostream, and ostdiostream.
+
+	* pr-output.cc (set_real_format, set_real_matrix_format,
+	set_complex_format, set_complex_matrix_format, set_range_format):
+	Do the right thing again for int, NaN, and Inf values.
+
+2000-03-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (pr_plus_format): Rename from do_plus_format.
+	Change all callers.
+	(pr_float, pr_complex): New arg, scale.  Handle scaling here.
+	(float_format): New class for managing details of formatting
+	floats.  Use it instead of character string formats and the
+	nonstandard form() function from the GNU iostream library.
+
+2000-02-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): Also delete gendoc.
+
+2000-02-18  James R. Van Zandt  <jrv@vanzandt.mv.com>
+
+	* load-save.cc (Vcrash_dumps_octave_core): Fix comment for this var.
+
+2000-02-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_number): Don't transorm `[Dd]' to `e' if reading
+	hex.
+
+2000-02-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Install files in
+	$(octincludedir)/octave.
+	(uninstall): Remove them from the correct directory too.
+
+	* defaults.h, defaults.cc (Vlocal_ver_arch_lib_dir): New variable.
+	* defaults.cc (set_default_local_ver_arch_lib_dir): New function.
+	(install_defaults): Call it.
+	(exec_path): Prepend the versioned form of the local arch lib
+	directory to the standard path.
+	* defaults.h.in (OCTAVE_LOCALVERARCHLIBDIR,
+	OCTAVE_LOCALVERFCNFILEDIR, OCTAVE_LOCALVEROCTFILEDIR):
+	Substitute these too.
+	* toplev.cc (Foctave_config_info): Add them to the struct.
+
+2000-02-08  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (Foctave_config_info): Add MKOCTFILE_INCFLAGS to the
+	struct.
+	* oct-conf.h.in (OCTAVE_CONF_MKOCTFILE_INCFLAGS): Define.
+
+2000-02-07  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/balance.cc (Fbalance): Explicitly request
+	conversion from Matrix to ComplexMatrix.
+	* DLD-FUNCTIONS/qz.cc (Fqz): Likewise.
+
+	* ov-re-mat.h (octave_matrix::complex_matrix_value): Explicitly
+	request conversion from Matrix type.
+
+	* ov-ch-mat.h (octave_char_matrix::matrix_value): Explicitly
+	request conversion from charMatrix type.
+	(octave_char_matrix::complex_matrix_value): Likewise.
+	* ov-bool-mat.h (octave_bool_matrix::matrix_value): Likewise.
+	(octave_bool_matrix::complex_matrix_value): Likewise.
+
+	* ov-range.h (octave_range::complex_matrix_value): Explicitly
+	request conversion from Matrix type.
+
+	* ov-cx-mat.h, ov-re-mat.h: Explicitly request conversions from
+	diagonal matrix types in constructors.
+
+	* mappers.cc (ximag, xreal): Return double, not Complex.
+
+	* error.cc (panic): Turn off buffering of error messages.
+	Don't call flush_octave_stdout here, verror will do it for us.
+	(verror): Don't call flush_octave_stdout if buffering error messages.
+
+	* pt-except.cc (tree_try_catch_command::eval): Only restore
+	buffer_error_message value (by running the unwind_protect element
+	for it) if it has been saved.
+
+	* help.cc (Ftype): Return value if nargout is NOT equal to zero.
+	Delete unnecessary unwind_protect::begin_frame().
+
+	* toplev.cc (octave_config_info): Stuff lots of new config info in
+	the struct.
+
+	* oct-conf.h.in: Delete TARGET_HOST_TYPE.
+
+2000-02-04  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* siglist.c: Include <signal.h>.
+
+	* lex.l (is_plot_keyword): Add minimum match length in call to
+	almost_match.
+
+	* Makefile.in (%.df : %.cc): Don't pass -c to compiler.
+
+2000-02-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-mat.cc: Include pr-output.h here.
+
+	* DLD-FUNCTIONS/rand.cc (curr_rand_dist): Return const char *
+	instead of char *.
+
+	* oct-fstrm.cc (octave_fstream::seek, octave_fstream::tell):
+	Call pubseekoff instead of seekoff.
+
+	* DLD-FUNCTIONS/dassl.cc (print_dassl_option_list): Use stream
+	manipulators instead of GNU iostream-specific form function.
+	* DLD-FUNCTIONS/fsolve.cc (print_fsolve_option_list): Ditto.
+	* DLD-FUNCTIONS/lsode.cc (print_lsode_option_list): Ditto.
+	* DLD-FUNCTIONS/quad.cc (print_quad_option_list): Ditto.
+	* pr-output.cc (pr_scale_header): Ditto.
+
+	* sighandlers.h: Include signal.h here.
+	* sighandlers.cc: Not here.
+
+	* utils.cc: Include setjmp.h, not csetjmp.
+	* toplev.cc: Ditto.
+
+	* sighandlers.cc: Include signal.h, not csignal.
+
+	* pt-plot.h: Don't include csignal.
+	* toplev.cc: Ditto.
+	* oct-hist.cc: Ditto.
+	* octave.cc: Ditto.
+	* pager.cc: Ditto.
+	* input.cc: Ditto.
+	* help.cc: Ditto.
+
+	* pt-plot.cc (send_to_plot_stream): Use operator== and substr
+	method to do limited-length string comparison.
+	* input.cc (generate_completion): Likewise.
+	* ov-dld-fcn.cc (octave_dld_function::octave_dld_function): Likewise.
+	* ov-usr-fcn.cc (octave_user_function::mark_as_system_fcn_file):
+	Likewise.
+
+	* utils.cc (check_preference): Expect exact string matches.
+	* variables.cc (ignore_function_time_stamp): Likewise.
+	* lex.l (whitespace_in_literal_matrix): Likewise.
+
+	* mappers.cc (xconj, ximag, xreal): New functions.  Use them in
+	DEFUN_MAPPER calls.
+
+	* defun-int.h (DEFUN_MAPPER_INTERNAL): Cast function pointer args
+	to octave_mapper constructor.
+
+2000-02-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* procstream.cc (procstreambase::procstreambase,
+	procstreambase::open, procstreambase::close):
+	Call std::ios::setstate, not set.
+
+	* lex.l (plot_axes_token): Declare plot_axes as const char *.
+	Declare tmp const char **.
+
+	* oct-procbuf.h: Include fstream, not streambuf.h.
+
+	* load-save.cc (Fsave): Call pubseekoff instead of seekoff.
+	* oct-strstrm.cc (octave_base_strstream::tell): Likewise.
+	(octave_base_strstream::seek): Likewise.
+
+	* oct-stream.cc (octave_base_stream::read): Rename count to char_count.
+	(octave_base_stream::do_gets): Likewise.
+
+	* octave-stream.cc (octave_base_stream::write): Rename flt_fmt to ffmt.
+	(octave_base_stream::read): Likewise.
+
+	* TEMPLATE-INST/SLStack-sym.cc: Delete meaningless `extern
+	template' declarations.
+	* TEMPLATE-INST/Array-tc.cc: Ditto.
+
+	* TEMPLATE-INST/Map-fnc.cc: Don't try to instantiate goodCHptr or
+	CHptr_to_index here.
+	* TEMPLATE-INST/Map-tc.cc: Likewise.
+	* Map.h (CHNode::goodCHptr, CHNode::CHptr_to_index): Now member
+	functions.  Change all callers.
+
+	* load-save.cc (read_binary_file_header): Declare magic_len `const'.
+
+	* token.h (token::token (const token&), token::operator=):
+	Delete unnecessary definitions.
+
+	* oct-stream.cc (octave_stream::mode_as_string): Use
+	std::ios::binary, not std::ios::bin.
+	* load-save.cc (Fsave, Fload, save_user_variables): Likewise.
+
+	* DLD-FUNCTIONS/qz.cc (Fqz): Use Array<int> class instead of
+	trying to create automatic int array with variable size.
+
+	* variables.cc (F__dump_symbol_info__): Fix continuation char.
+	* mappers.cc (Ftoupper): Likewise.
+	* DLD-FUNCTIONS/besselj.cc (Fairy, Fbesselj): Likewise.
+	* DLD-FUNCTIONS/chol.cc (Fchol): Likewise.
+	* DLD-FUNCTIONS/det.cc (Fdet): Likewise.
+	* DLD-FUNCTIONS/eig.cc (Feig): Likewise.
+	* DLD-FUNCTIONS/gammainc.cc (gammainc): Likewise.
+	* DLD-FUNCTIONS/givens.cc (givens): Likewise.
+	* DLD-FUNCTIONS/hess.cc (hess): Likewise.
+	* DLD-FUNCTIONS/inv.cc (inv): Likewise.
+	* DLD-FUNCTIONS/log.cc (logm): Likewise.
+	* DLD-FUNCTIONS/lu.cc (lu): Likewise.
+	* DLD-FUNCTIONS/qr.cc (qr): Likewise.
+	* DLD-FUNCTIONS/schur.cc (schur): Likewise.
+	* DLD-FUNCTIONS/balance.cc (balance): Likewise.
+	* DLD-FUNCTIONS/svd.cc (svd): Likewise.
+	* DLD-FUNCTIONS/syl.cc (syl): Likewise.
+	* DLD-FUNCTIONS/expm.cc (Fexpm): Likewise.
+
+	* token.h (token::token_type, token::end_tok_type,
+	token::plot_tok_type): Delete extraneous comma from enum decls.
+	* load-save.cc (load_save_format): Likewise.
+
+	* pt-idx.cc (tree_index_expression::tree_index_expression):
+	Delete default arg values.
+	* oct-fstrm.cc (octave_fstream::octave_fstream): Likewise.
+	* oct-stream.cc (octave_stream::octave_stream): Likewise.
+
+	* siglist.h, siglist.c: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* siglist.c (sys_siglist): Move definition here from sighandlers.cc.
+	* siglist.h (sys_siglist): Move declaration here from sighandlers.h.
+
+	* ov.h, ov-bool.h, ov-bool-mat.h (bool_matrix_value):
+	Delete unnecessary arg.
+
+	* ov.h (octave_value::do_multi_index_op): Rename from do_index_op.
+
+	* ov-fcn.h (octave_function::is_system_fcn_file): Now const.
+
+	* Map.cc (index_to_CHptr): Now a macro.
+	(CHMap<C>::hash): Now a member function.
+
+	* defun-int.h (UNDERSCORIFY): New macro.
+	(DEFCONST_INTERNAL, DEFCONSTX_INTERNAL): Use it.
+
+	* data.cc (Fis_list): Fix continuation char.
+	* defaults.cc (IMAGEPATH): Likewise.
+
+	* Map.cc (CHptr_to_index, goodCHptr): Delete static decl.
+
+	* ov.h (unary_op, binary_op, assign_op): Prepend `op_' to elts.
+	Change all usses
+
+	* All source files: Sprinkle with std:: qualifier as needed.
+
+2000-01-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (install_signal_handlers): Add std:: qualifier
+	for set_net_handler.
+
+	* All source files: Include iostream, fstream, strstream,
+	etc. as needed instead of using forward declarations for these
+	classes.
+
+2000-01-30  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (input_event_hook, Finput_event_hook): New functions.
+	(hook_fcn, user_data): New static variables.
+
+2000-01-28  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-except.cc (do_catch_code): Don't do anything special for
+	tree_return_command::returning, or tree_break_command::breaking.
+
+	* error.cc (vwarning): New function.
+	(warning): Use it instead of calling verror.
+
+	* oct-stream.cc (octave_base_stream::oscanf):
+	Result is now always nconv+1 elements.  Return count of successful
+	conversions in last element.
+	* file-io.cc (Ffscanf, Fsscanf, Fscanf): Fix doc string.
+
+	* pt-except.cc (do_catch_code): Unwind-protect buffer_error_messages.
+	Be sure to run all unwind-protects before returning.
+	(tree_try_catch_command::eval): Add do_catch_code cleanup function
+	to unwind-protect stack before resetting buffer_error_messages.
+	Use unwind-protect to save and restore buffer_error_messages.
+	If there is no catch code, discard the cleanup function and run
+	the unwind-protect for buffer_error_messages.
+
+	* error.cc (bind_global_error_variable): Avoid dereferencing
+	error_message_buffer if it is NULL.
+
+	* parse.y (evaluating_function_body): New global flag.
+	* ov-usr-fcn.cc (octave_user_function::do_index_op):
+	Protect and set it here.
+	* parse.y (make_break_command, make_return_command): Check it here.
+
+	* error.cc (warning_state): New global flag.
+	(warning): Set it here.
+	* lex.l (reset_parser): Clear it here.
+	* parse.y (fold): Check it here.
+
+2000-01-27  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-walk.h (tree_walker::visit_do_until_command): New pure virtual.
+	* pt-pr-code.cc (tree_print_code::visit_do_until_command):
+	New function.
+	* pt-loop.h (tree_do_until_command): New class.
+	(tree_while_command::expr, tree_while_command::list):
+	Now protected instead of private.
+	* parse.y (make_do_until_command): New function.
+	(loop_command): Recognize do-until statement.
+	(DO, UNTIL): New tokens.
+
+	* input.cc (match_sans_spaces): Require non-blank part of test
+	string to match standard string exactly.
+
+2000-01-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.h (scanf_format_elt::char_class): New struct elt.
+	Add arg to constructor.
+	(scanf_format_elt::special_conversion): New enum.
+	* oct-stream.cc (scanf_format_list::add_elt_to_list): New arg,
+	char_class.  Pass it to scanf_format_elt constructor.
+	(scanf_format_list::scanf_format_list): Create separate list
+	elements for whitespace and literal conversions.
+	(expand_char_class): New function.
+	(scanf_format_list::finish_conversion): Extract character class
+	(not including the delimiting brackets) and expand the list of
+	characters.  Pass the result to add_elt_to_list.
+	(scanf_format_list::all_character_conversions): Also accept '^',
+	scanf_format_elt::literal_conversion, and
+	scanf_format_elt::whitespace_conversion types too.
+	(DO_WHITESPACE_CONVERSION, BEGIN_CHAR_CLASS_CONVERSION,
+	BEGIN_C_CONVERSION, BEGIN_S_CONVERSION, DO_LITERAL_CONVERSION):
+	New macros.
+	(octave_base_stream::do_scanf, octave_base_stream::do_oscanf):
+	Use them to avoid code duplication.
+	Handle whitespace, literal text, and character class conversions.
+	(octave_base_stream::oscanf): Loop over all format list elements,
+	not just the first nconv elements.  Clear status flags on is for
+	all streams.
+
+2000-01-25  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xdiv.cc (result_ok): Just check value of info.
+	(solve_singularity_warning): New function.
+	(xleftdiv, xdiv): Pass pointer to solve_singularity_warning to
+	solve function.
+
+	* lex.l (handle_identifier): Set next_tok_is_eq if we are looking
+	at `=', but not if we are looking at `=='.
+
+	* pt-pr-code.cc (tree_print_code::visit_unwind_protect_command):
+	Print `unwind_protect_cleanup', not `cleanup_code'.
+
+	* pager.cc (octave_pager_buf::flush_current_contents_to_diary):
+	New function.
+	(octave_pager_stream::flush_current_contents_to_diary):
+	Ditto.
+	(close_diary_file): Use the new octave_pager_stream function to
+	try to flush the current buffer to the diary when it is closed.
+
+	* variables.cc (Fexist): Return 6 for built-in constants.
+
+	* pt-plot.cc (Fgshow): Don't append " " after last arg.
+	(Fgset): Likewise.
+
+2000-01-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base-mat.h (octave_base_matrix::length): Return 0 for empty
+	arrays.
+
+2000-01-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/time.cc (Fstrptime): New function.
+
+	* load-save.cc (Fsave): Add missing else.
+
+2000-01-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/gammainc.cc (Fgammainc): Texinfoize doc string.
+	* ov-typeinfo.cc (Ftypeinfo): Ditto.
+	* parse.y (Vwarn_future_time_stamp): Ditto.
+	* DLD-FUNCTIONS/minmax.cc (Fmax, Fmin): Ditto.
+	* ov-usr-fcn.cc (Fva_arg, Fva_start, Fvr_val): Ditto.
+	* defaults.cc (VOCTAVE_HOME, Frehash): Ditto.
+	* toplev.cc (Fwarranty, Fcasesen): Ditto.
+	* utils.cc (Fdo_string_escapes, Ffile_in_loadpath): Ditto.
+	* variables.cc (F__dump_symtab_info__, F__dump_symbol_info__): Ditto.
+	* ov-list.cc (Flist, Fappend, Fnth, Freverse, Fsplice): Ditto.
+	* input.cc (Fread_readline_init_file): Ditto.
+	* file-io.cc (Fis_stream): Ditto.
+	* ov-cell.cc (Fiscell, Fcell): Ditto.
+	* pt-assign.cc (Vprint_rhs_assign_val): Ditto.
+	* pt-decl.cc (Vinitialize_global_variables): Ditto.
+	* symtab.cc (Vvariables_can_hide_functions): Ditto.
+
+	* pt-plot.cc (Fgraw, Fgset, Fgshow, Vgnuplot_command_plot,
+	Vgnuplot_command_replot, Vgnuplot_command_splot,
+	Vgnuplot_command_using, Vgnuplot_command_with,
+	Vgnuplot_command_axes, Vgnuplot_command_title,
+	Vgnuplot_command_end): Texinfoize doc strings.
+
+	* oct-procbuf.cc (__kluge_procbuf_delay__): Rename from
+	kluge_procbuf_delay.  Texinfoize doc string.
+
+2000-01-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (gobble_leading_whitespace): Discard first space character
+	after consecutive comment characters.
+	* lex.l (grab_help_text): Ditto.
+
+	* lex.l (Vwhitespace_in_literal_matrix, Vwarn_separator_insert,
+	Vwarn_single_quote_string): Texinfoize doc string.
+
+2000-01-11  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h, ov.cc (octave_value::column_vector_value,
+	octave_value::row_vector_value,
+	octave_value::complex_column_vector_value,
+	octave_value::complex_row_vector_value): New functions.
+	(octave_value::vector_value): Now returns Array<double>.
+	(octave_value::complex_vector_value): Now returns Array<Complex>.
+	Sprinkle conversions where necessary.
+
+	* ov.cc (Vprefer_column_vectors): Now static.
+	* ov.h (octave_value (const ComplexRowVector&),
+	octave_value (const ComplexColumnVector&),
+	octave_value (const RowVector&), octave_value (const ColumnVector&)):
+	Delete second arg.  Change all callers.
+
+	* oct-obj.h (octave_value_list (const RowVector&),
+	octave_value_list (const ColumnVector&),
+	octave_value_list (const ComplexRowVector&),
+	octave_value_list (const ComplexColumnVector&)): Likewise.
+	* ov-cx-mat.h, ov-cx-mat.cc
+	(octave_complex_matrix (const ComplexRowVector&),
+	(octave_complex_matrix (const ComplexColumnVector&)):
+	Delete second arg, simply create object with orientation
+	corresponding to vector arg.  Move constructors to class decl.
+	* ov-re-mat.h, ov-re-mat.cc (octave_matrix (const RowVector&),
+	(octave_matrix (const ColumnVector&)):
+	Delete second arg, simply create object with orientation
+	corresponding to vector arg.  Move constructors to class decl.
+
+2000-01-07  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* mappers.cc (Fconj, Ferf, Ferfc, Fgamma, Fimag, Flgamma, Flog10,
+	Freal, Fround): Add @seealso{...} to doc strings.
+
+2000-01-06  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (do_scanf): Do the right thing again for character
+	conversions.
+
+	* help.cc (display_help_text): Also strip out leading spaces
+	before Texinfo @-commands before sending doc string to makeinfo.
+	(display_help_text): Improve format of `See also' string.
+
+2000-01-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (display_help_text): Pass a definition for @seealso
+	through the filter.
+
+1999-12-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (Vwarn_single_quote_string): New variable.
+	(syms_of_lex): DEFVAR it.
+	(warn_single_quote_string): New function.
+	(gripe_single_quote_string): New function.
+	Use new stuff to allow warnings for code that uses single quote
+	characters to introduce string constants.
+
+1999-12-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkbuiltins: Add #undef quad to generated file.
+
+1999-12-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (Vwarn_separator_insert): New variable.
+	(syms_of_lex): DEFVAR it.
+	(warn_separator_insert): New function.
+	(maybe_warn_separator_insert): New function.
+	Use new stuff to allow warnings for code that might result in
+	auto-insertion of commas or semicolons, depending on the value of
+	whitespace_in_literal_matrix.
+
+	* parse.y (Fsource): Record function file name here too.
+
+1999-12-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (link_to_global_variable): If the local symbol is
+	not a variable, don't bother to clear it.  Instead, just redefine
+	it by aliasing to the global symbol.
+
+1999-11-23  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/balance.cc (Fbalance): Texinfoize doc string.
+	* DLD-FUNCTIONS/det.cc (Fdet): Ditto.
+	* DLD-FUNCTIONS/eig.cc (Feig): Ditto.
+	* DLD-FUNCTIONS/givens.cc (Fgivens): Ditto.
+	* DLD-FUNCTIONS/inv.cc (Finv): Ditto.
+	* DLD-FUNCTIONS/chol.cc (Fchol): Ditto.
+	* DLD-FUNCTIONS/hess.cc (Fhess): Ditto.
+	* DLD-FUNCTIONS/lu.cc (Flu): Ditto.
+	* DLD-FUNCTIONS/qr.cc (Fqr): Ditto.
+	* DLD-FUNCTIONS/schur.cc (Fschur): Ditto.
+	* DLD-FUNCTIONS/svd.cc (Fsvd): Ditto.
+	* DLD-FUNCTIONS/expm.cc (Fexpm): Ditto.
+	* DLD-FUNCTIONS/log.cc (Flogm, Fsqrtm): Ditto.
+	* DLD-FUNCTIONS/syl.cc (Fsyl): Ditto.
+	* DLD-FUNCTIONS/pinv.cc (Fpinv): Ditto.
+	* DLD-FUNCTIONS/qz.cc (Fqz): Ditto.
+	* DLD-FUNCTIONS/dassl.cc (Fdassl, Fdassl_options): Ditto.
+	* DLD-FUNCTIONS/lsode.cc (Flsode, Flsode_options): Ditto.
+	* data.cc (Flength, Fsize, Fisempty): Ditto.
+	* sysdep.cc (Fkbhit): Ditto.
+	* input.cc (Fkeyboard, Finput): Ditto.
+	* variables.cc (ans): Ditto.
+	* pr-output.cc (Fdisp, Fformat): Ditto.
+	* ov.cc (Vprint_answer_id_name): Ditto.
+	* defaults.cc (IMAGEPATH): Ditto.
+	* error.cc (Ferror, Fwarning, Fusage, error_text, beep_on_error):
+	Ditto.
+	* load-save.cc (Fload, Fsave, Vdefault_save_format,
+	Vsave_precision): Ditto.
+	* file-io.cc (Ffflush, Ffopen, Ffclose, Ffputs, Ffgetl, Ffgets,
+	Ffprintf, Fsprintf, Fscanf, Ffscanf, Fsscanf, Ffread, Ffwrite,
+	Ffseek, Fftell, Ffeof, Fferror, Ffreport, Ftmpnam, Vstdin_file,
+	Vstdout_file, Vstderr_file, SEEK_SET, SEEK_CUR, SEEK_END): Ditto.
+	* pager.cc (Vpager_binary, Vpage_output_immediately,
+	Vpage_screen_output, Fmore): Ditto.
+
+1999-11-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (Vtreat_neg_dim_as_zero): Texinfoize doc string.
+	* DLD-FUNCTIONS/find.cc (Ffind): Ditto.
+	* DLD-FUNCTIONS/rand.cc (Frand, Frandn): Ditto.
+	* DLD-FUNCTIONS/sort.cc (Fsort): Ditto.
+	* mappers.cc (Fisinf, Fisnan, Ffinite): Ditto.
+	* data.cc (Fall, Fany, Fdiag, Fones, Fzeros, Feye, Flinspace): Ditto.
+	* defaults.cc (Vloadpath, Vdefault_loadpath): Ditto.
+	* parse.y (Feval, Ffeval, Vdefault_eval_print_flag,
+	Vwarn_missing_semicolon, Vwarn_function_name_clash, Fsource): Ditto.
+	* ov-usr-fcn.cc (Vmax_recursion_depth, Vdefault_return_value,
+	Vdefine_all_return_values, Vreturn_last_computed_value): Ditto.
+	* ov.cc (Vok_to_lose_imaginary_part, Vdo_fortran_indexing,
+	Vprefer_column_vectors, Vresize_on_range_error,
+	Vwarn_divide_by_zero): Ditto.
+	* pt-stmt.cc (Vsilent_functions): Ditto.
+	* variables.cc (Vignore_function_time_stamp): Ditto.
+	* dynamic-ld.cc (Vwarn_reload_forces_clear): Ditto.
+
+1999-11-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/fft.cc (Ffft): Texinfoize doc string.
+	* DLD-FUNCTIONS/ifft.cc (Fifft): Ditto.
+	* DLD-FUNCTIONS/fft2.cc (Ffft2): Ditto.
+	* DLD-FUNCTIONS/ifft2.cc (Fifft2): Ditto.
+	* DLD-FUNCTIONS/filter.cc (Ffilter): Ditto.
+	* DLD-FUNCTIONS/quad.cc (Fquad, Fquad_options): Ditto.
+	* DLD-FUNCTIONS/colloc.cc (Fcolloc): Ditto.
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve, Ffsolve_options): Ditto.
+	* defaults.cc (Veditor): Ditto.
+	* pt-plot.cc (Vautomatic_replot, Vgnuplot_binary,
+	Vgnuplot_has_frames, Vgnuplot_has_multiplot, Fclearplot,
+	Fcloseplot, Fpurge_tmp_files, Fishold, Fhold):
+
+	* Makefile.in (parse.cc): Expect 11 shift/reduce conflicts now.
+
+1999-11-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (Vwarn_assign_as_truth_value,	Vwarn_variable_switch_label):
+	Texinfoize doc strings.
+
+	* DLD-FUNCTIONS/pinv.cc (Fpinv): Texinfoize doc string.
+
+	* defun-int.h (DEFUN_DLD_INTERNAL): New macro.
+	* defun-dld.h [MAKE_BUILTINS] (DEFUN_DLD): Simply expand to
+	DEFUN_DLD_INTERNAL.
+	* mkbuiltins: Generate code to define DEFUN_DLD_INTERNAL.
+	* mkgendoc: Likewise.
+
+	* Makefile.in (gendoc.o): Don't optimize when creating gendoc.
+	(%.dc : %.cc): Delete rule.
+
+	* pt-decl.cc (Vdefault_global_variable_value): Texinofize doc string.
+	* variables.cc (Fclear, Fdocument, Fexist, Fis_global, Fwho): Ditto.
+	* help.cc (Ftype, Fwhich): Ditto.
+	* ov.cc (Vstruct_levels_to_print, Vimplicit_str_to_num_ok): Ditto.
+	* data.cc (Fis_struct, Fstruct_elements, Fstruct_constains): Ditto.
+	* strfns.cc (Fisstr, Fsetstr): Ditto.
+	* pt-mat.cc: (Fimplicit_num_to_str_ok, Fstring_fill_char): Ditto.
+	* utils.cc (Fundo_string_escapes): Ditto.
+	* mappers.cc: (Fisalnum, Fisalpha, Fisascii, Fiscntrl, Fisdigit,
+	Fisgraph, Fislower, Fisprint, Fispunct, Fisspace, Fisupper,
+	Fisxdigit, Ftoascii, Ftolower, Ftoupper): Ditto.
+
+1999-11-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* syscalls.cc (symbols_of_syscalls): Use DEFCONSTX to define
+	Octave constants for C macros like O_WRONLY.
+
+	* oct-lvalue.cc (octave_lvalue::set_index): Disallow expressions
+	like x(i)(j) = rhs.
+
+1999-11-17  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.cc (symbol_record::type_as_string): New function.
+
+	* symtab.cc (symbol_record::which): New functions.
+	* help.cc (do_which): New functions.
+	(Fwhich): Use them.
+
+	* help.cc (help_from_symbol_table, help_from_file): New functions.
+	(builtin_help): Use them.
+
+	* help.cc (do_type): New function.
+	(symbol_record::type): New function.
+	(Ftype): Use them.
+
+	* help.cc (print_symbol_type): Delete.
+
+	* symtab.cc (symbol_table::name_list): Delete count arg.
+	(symbol_table::symbol_list): Likewise.
+	(symbol_table::glob): Likewise.  Also return Array<symbol_record *>
+	instead of symbol_record **.
+	Change all callers.
+	* help.cc (names, display_symtab_names): Delete count arg.
+
+	* help.cc (print_symbol_type, Ftype): No longer need to look up
+	fcn_file_name in the loadpath.
+
+	* help.cc (print_symbol_type): Handle dld functions.
+	(help_from_symbol_table, help_from_file): New functions.
+	(builtin_help): Use them.
+
+1999-11-16  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-cell.cc (Fiscell, Fcell): New Functions.
+	(octave_cell::do_index_op): New function.
+
+	* utils.cc (get_dimensions): Move here from data.cc and make extern.
+	(Vtreat_neg_dim_as_zero, treat_neg_dim_as_zero): Likewise.
+	(symbols_of_utils): New function.
+
+	* data.cc (fill_matrix (const octave_value_list&, double,
+	const char*)): New function.
+	(Fones, Fzeros): Use it to avoid some code duplication.
+
+1999-11-15  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-cell.h, pt-cell.cc, ov-cell.h, ov-cell.cc, Cell.h, Cell.cc:
+	New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* pt-walk.h (visit_cell (tree_cell&): New pure virtual.
+	* pt-pr-code.cc (tree_print_code::visit_cell (tree_cell&)): New
+	function.
+	* TEMPLATE-INST/Array-tc.cc: Instantiate 2D arrays of octave_value
+	objects.
+	* pt-all.h: Include pt-cell.h.
+	* ov.h, ov.cc (octave_value::is_cell, octave_value::cell_value):
+	New functions.
+	* ov-base.h, ov-base.cc (octave_value::is_cell,
+	octave_value::cell_value): Provide defaults.
+	* lex.h, lex.l: Handle `{' and `}' tokens (for cell arrays).
+	(bracketflag): Rename from braceflag.
+	(handle_close_bracket): Rename from handle_close_brace.
+	(class bracket_brace_paren_nesting_level): Rename from
+	brace_paren_nesting_level.
+	(bracket_brace_paren_nesting_level::bracket,
+	bracket_brace_paren_nesting_level::is_bracket): New functions to
+	keep count of nesting level for `[' and `]'.
+	(bracket_brace_paren_nesting_level::brace,
+	bracket_brace_paren_nesting_level::is_brace): Now keeps count of
+	nesting level for `{' and `}'.
+	* parse.y (tree_cell_type): New type.
+	Give '{' the same precedence and associativity as '(' and '.'
+	(matrix_rows, matrix_rows1): Rename from rows, rows1.
+	(cell, cell_rows, cell_rows1): New non-terminals.
+	(cell_or_matrix_row): Rename from matrix_row.
+	(primary_expr): Accept cell here.
+	(postfix_expr): Allow indexing using '{' arg_list '}'.
+	(finish_cell): New function.
+
+1999-11-12  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (jump_to_top_level): No longer declared extern "C".
+
+	* cutils.c (octave_strcasecmp, octave_strncasecmp): New functions.
+	* utils.cc (almost_match): Call octave_strncasecmp instead of
+	calling strncasecmp directly.
+
+1999-11-10  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Don't define warn_reload_forces_clear here.
+
+	* Makefile.in (DISTFILES): Include DOCSTRINGS.
+
+1999-11-05  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (install_signal_handlers): Don't install
+	sigwinch_handler.
+
+	* oct-iostrm.h (octave_istream::eof, octave_ostream::eof): Provide
+	implementation for these.
+
+	* oct-stream.cc (octave_base_stream::do_scanf):
+	The stdin stream is only special if we are interactive.
+	(octave_base_stream::scanf): Ditto.
+	(octave_base_stream::do_oscanf): Ditto.
+	(octave_base_stream::oscanf): Ditto.
+
+	* ov.h (octave_value::is_stream): New predicate.
+	* ov-file.h (octave_file::is_stream): Return true.
+	* file-io.cc (Fis_stream): New function.
+
+	* ov-file.h (class octave_file): stream is now an object instead
+	of pointer.
+	* ov-file.cc (octave_file::print_raw): Handle stream as object
+	instead of pointer.  Also print stream status.
+
+	* ov-base.cc (octave_base_value::stream_value): Return object
+	instead of pointer.
+
+	* ov.cc (octave_value::stream_value): Return object instead of pointer.
+	(octave_value::octave_value (const octave_stream&)): Take const
+	reference instead of pointer arg.
+
+	* TEMPLATE-INST/Array-os.cc: Instantiate Arrays of octave_stream
+	objects, not pointers to them.
+
+	* OPERATORS/op-fil-b.cc: Cope with octave_stream class changes.
+	* OPERATORS/op-fil-bm.cc: Likewise.
+	* OPERATORS/op-fil-cm.cc: Likewise.
+	* OPERATORS/op-fil-cs.cc: Likewise.
+	* OPERATORS/op-fil-lis.cc: Likewise.
+	* OPERATORS/op-fil-m.cc: Likewise.
+	* OPERATORS/op-fil-rec.cc: Likewise.
+	* OPERATORS/op-fil-s.cc: Likewise.
+	* OPERATORS/op-fil-str.cc: Likewise.
+	* file-io.cc: Likewise.
+	* syscalls.cc (Fdup): Likewise.
+
+	* oct-fstrm.cc, oct-fstrm.h, oct-iostrm.cc, oct-iostrm.h,
+	oct-prcstrm.cc, oct-prcstrm.h, oct-stdstrm.cc, oct-stdstrm.h,
+	oct-stream.cc, oct-stream.h, oct-strstrm.cc, oct-strstrm.h:
+	Rewrite to allow octave_stream objects to be used like values
+	instead of having to use pointers.
+
+1999-11-03  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_scanf): If it looks like
+	we have a matching failure, then reset the failbit in the stream
+	state.
+	(octave_base_stream::do_oscanf): Likewise.
+
+1999-11-02  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* help.cc (Fhelp): Texinfoize doc string.
+	* input.cc (Fecho, Fcompletion_matches): Ditto.
+	* oct-hist.cc (Fedit_history, Fhistory, Frun_history): Ditto.
+	* pager.cc (Fdiary): Ditto.
+	* sysdep.cc (Fclc): Ditto.
+	* toplev.cc (Fquit, Fatexit): Ditto.
+
+1999-11-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (yywrap): No longer static.
+	(have_continuation): Declare input character as int, not char, so
+	comparison to EOF will work.
+
+1999-11-01  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun.cc (print_usage): Use display_help_text instead of sending
+	help message directly to octave_stdout.
+
+1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun-dld.h (INSTALL_DLD_FCNS, INSTALL_DLD_FCN): Delete definitions.
+	* DLD-FUNCTIONS/dassl.cc: Don't use INSTALL_DLD_FCN or
+	INSTALL_DLD_FCNS macros.  They are not necessary with the new code
+	in dynamic-ld.cc.
+	* DLD-FUNCTIONS/lsode.cc: Ditto.
+	* DLD-FUNCTIONS/fsolve.cc: Ditto.
+	* DLD-FUNCTIONS/quad.cc: Ditto.
+	* DLD-FUNCTIONS/time.cc: Ditto.
+	* DLD-FUNCTIONS/besselj.cc: Ditto.
+	* DLD-FUNCTIONS/getgrent.cc: Ditto.
+	* DLD-FUNCTIONS/getpwent.cc: Ditto.
+	* DLD-FUNCTIONS/inv.cc: Ditto.
+	* DLD-FUNCTIONS/log.cc: Ditto.
+	* DLD-FUNCTIONS/minmax.cc: Ditto.
+	* DLD-FUNCTIONS/rand.cc: Ditto.
+
+	* dynamic-ld.cc, dynamic-ld.h: Major rewrite to allow reloading of
+	dynamically linked functions.
+
+	* symtab.cc (symbol_record::replace_all_defs): Don't allow top
+	definition to be NULL.
+	(symbol_table::clear): Allow dynamically linked functions to be
+	cleared.
+
+	* symtab.h (TYPE): New enum value, DLD_FUCTION.
+	(symbol_type): Now 8 bits wide.
+	(SYMTAB_ALL_TYPES): Include DLD_FUNCTION.
+	(symbol_record::symbol_def::is_function): Also recognize dld functions.
+	(symbol_record::symbol_def::is_dld_function): New function.
+	(symbol_record::is_dld_function): Ditto.
+
+	* defun.cc (install_dld_function): New function.
+	* defun-int.h: Provide declaration here.
+	(octave_dld_fcn_installer): New typedef.
+	(DEFINE_FUN_INSTALLER_FUN): Installer function now takes an
+	oct_shlib object as an arg.  Allow installation of a function to
+	happen more than once.
+
+	* octave.cc (initialize_error_handlers): Call
+	set_liboctave_warning_handler here too.
+
+	* ov-builtin.h (is_builtin_function): Return true.
+	Data member is now protected, not private.
+
+	* ov-fcn.h (is_dynamically_loaded_function): New predicate.
+	(unload): New function.
+	Data members are now protected, not private.
+
+	* ov.h (is_builtin_function, is_dld_function): New predicates.
+	* ov-base.h (is_builtin_function, is_dld_function): Ditto.
+
+	* parse.y (Vwarn_reload_forces_clear): New static flag.
+	(warn_reload_forces_clear): New function.
+	(symbols_of_parse): DEFVAR warn_reload_forces_clear.
+
+	* variables.cc (Fclear): Look for dld functions too.
+
+	* ov-dld-fcn.cc, ov-dld-fcn.h: New files.
+	* Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists.
+
+	* Makefile.in (DEFVAR_PATTERN): Also match DEFCONSTX.
+
+1999-10-26  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLList.h, DLList.cc: New files.
+	* Makefile.in (INCLUDES, DIST_SRC): Add them to the lists.
+
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Be sure to call
+	unwind_protect::run_frame before returning.
+	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Likewise.
+
+	* load-save.cc (read_mat_ascii_data): When reading from
+	tmp_stream, check its state, not the state of is.
+
+	* defun-dld.h (INSTALL_DLD_FCN, INSTALL_DLD_FCNS): New macros.
+	* DLD-FUNCTIONS/dassl.cc: Use them.
+	* DLD-FUNCTIONS/lsode.cc: Ditto.
+	* DLD-FUNCTIONS/fsolve.cc: Ditto.
+	* DLD-FUNCTIONS/quad.cc: Ditto.
+	* DLD-FUNCTIONS/time.cc: Ditto.
+	* DLD-FUNCTIONS/besselj.cc: Ditto.
+	* DLD-FUNCTIONS/getgrent.cc: Ditto.
+	* DLD-FUNCTIONS/getpwent.cc: Ditto.
+	* DLD-FUNCTIONS/inv.cc: Ditto.
+	* DLD-FUNCTIONS/log.cc: Ditto.
+	* DLD-FUNCTIONS/minmax.cc: Ditto.
+	* DLD-FUNCTIONS/rand.cc: Ditto.
+
+	* data.cc (Flinspace): Let linspace functions handle errors.
+
+	* mkgendoc (print_doc_string): Handle quoted names.
+
+	* file-io.cc (symbols_of_file_io): Use DEFCONSTX for SEEK_SET,
+	SEEK_CUR, and SEEK_END.
+
+	* defun.h (DEFCONST): Just pass name, defn, and doc to
+	DEFCONST_INTERNAL.
+	(DEFCONSTX): Likewise, pass name, defn, and doc to DEFCONSTX_INTERNAL.
+	* defun-int.h [MKBUILTINS] (DEFCONST_INTERNAL): Likewise, pass
+	name, defn, and doc to XDEFCONST_INTERNAL.
+	[MKBUILTINS] (DEFCONSTX_INTERNAL): New macro.
+	(INSTALL_CONST): New macro.
+	[! MKBUILTINS] (DEFCONST_INTERNAL): Use it to handle details here.
+	[! MKBUILTINS] (DEFCONSTX_INTERNAL): Ditto.
+	* mkgendoc: Fix definition of XDEFCONST_INTERNAL to match.
+	* mkbuiltins: Ditto.
+
+	* mkdefs: Match spaces before BEGIN_INSTALL_BUILTIN.
+
+	* Makefile.in (DEFUN_PATTERN): Also match DEFUN_MAPPER.
+
+1999-10-26  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* data.cc (VI, VInf, VJ, VNaN, Ve, Veps, Vfalse, Vi, Vinf, Vj,
+	Vnan, Vpi, Vrealmax, Vrealmin): Texinfoize doc strings.
+	* mappers.cc (Fabs, Facos, Facosh, Fangle, Farg, Fasin, Fasinh,
+	Fatan, Fatanh, Fceil, Fconj, Fcos, Fcosh, Ferf, Ferfc, Fexp,
+	Ffinite, Ffix, Ffloor, Fgamma, Fimag, Flgamma, Flog, Flog10,
+	Freal, Fround, Fsign, Fsin, Fsinh, Fsqrt, Ftan, Ftanh): Ditto.
+
+1999-10-23  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* data.cc (Fis_matrix): Texinfoize doc string.
+	* ov.cc	(Vpropagate_empty_matrices): Ditto.
+	* pt-mat.cc: (Vempty_list_elements_ok): Ditto.
+	* pr-output.cc (Vfixed_point_format, Voutput_max_field_width,
+	Voutput_precision, Vprint_empty_dimensions, Vsplit_long_rows):
+	Ditto.
+
+1999-10-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (octave_user_function::do_index_op): If
+	Vmax_recursion_depth is exceeded, call unwind_protect::run_frame
+	before returning.
+
+1999-10-21  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* cutils.c (do_octave_usleep): Handle useconds > 1e6.
+
+	* variables.h (is_valid_function): Provide default values for the
+	string argument.
+
+	* symtab.cc (variable_reference): Maybe print warning (or error)
+	about variables that hide functions of the same name.
+	(symbol_record::define (const octave_value&, unsigned int)): Ditto.
+	(Vvariables_can_hide_functions): New static variable.
+	(variables_can_hide_functions, symbols_of_symtab): New functions.
+
+	* cutils.c: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+	* utils.h: Declare octave_usleep here.
+	* dirfns.cc (Fls): Simply all octave_usleep.
+	* oct-procbuf.cc (octave_procbuf::open): Ditto.
+	* sysdep.cc (Fusleep): Ditto.
+	* toplev.cc (run_command_and_return_output): Ditto.
+
+1999-10-20  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (make_diag (const octave_value&, const octave_value&)):
+	Delete special cases for scalars and simply attempt conversion of
+	first arg to a matrix value.  If that fails, we will still see an
+	error message.
+
+	* Makefile.in (DISTFILES): Add mkgendoc to the list.
+
+1999-10-19  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stmp-pic): New target.
+	($(PICOBJS)): Depend on stmp-pic, not pic.
+
+	* ov.h (get_rep): New function.
+
+	* help.cc (display_help_text): Pass definitions for VERSION,
+	OCTAVE_HOME, and TARGETHOSTTYPE to makeinfo.
+
+	* DLD-FUNCTIONS/getgrent.cc: Texinfoize all doc strings.
+	* DLD-FUNCTIONS/getpwent.cc: Ditto.
+	* DLD-FUNCTIONS/getrusage.cc: Ditto.
+	* DLD-FUNCTIONS/time.cc: Ditto.
+
+	* defaults.cc (EXEC_PATH, OCTAVE_VERSION): Texinfoize doc strings.
+	* dirfns.cc (Fcd, Fls, Fpwd, Freaddir, Fmkdir, Frmdir, Frename,
+	Fglob, Ffnmatch): Ditto.
+	* file-io.cc (Fpopen, Fpclose, Fumask): Ditto.
+	* sysdep.cc (Fgetenv, Fputenv, Fpause, Fsleep, Fusleep, Fisieee,
+	Ftilde_expand): Ditto.
+	* toplev.cc (Fcomputer, Fsystem, Foctave_config_info): Ditto.
+	* utils.cc (Ffile_in_path): Ditto.
+	* syscalls.cc (Fdup2, Fexec, Ffcntl, Ffork, Fgetpgrp, Fgetpid,
+	Fgetppid, Fgetegid, Fgetgid, Fgeteuid, Fgetuid, Fmkfifo, Fpipe,
+	Fstat, Funlink, Fwaitpid, F): Ditto.
+	(Flstat): Refer to stat for doc.
+
+	* help.cc (looks_like_texinfo): New function.
+	(display_help_text): Use it to see if the doc string looks like
+	Texinfo source.  If so, use makeinfo to format the text before
+	displaying it.
+
+	* mkgendoc: New script.
+	* Makefile.in: Use it to create gendoc.cc, which is compiled and
+	run to create DOCSTRINGS file from sources.
+
+1999-10-18  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (help_from_info): Print `unable to find info' message if
+	try_info returns 127; otherwise, print `not indexed' message.
+	Don't sleep after printing `not indexed' message.
+
+1999-10-14  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (fold (tree_unary_expression *)): New function.
+	(make_prefix_op, make_postfix_op): Use it.
+
+1999-10-13  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (oct-gperf.h): Ask for ANSI-C output from gperf
+	(requires gperf-2.7 or later).
+
+	* sighandlers.cc (sigwinch_handler): New function.
+	(install_signal_handlers): Install it.
+
+Thu Sep 23 19:49:36 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (Fsystem): For async case, use execl instead of
+	system, avoiding the need to exit after executing the subprocess.
+
+Thu Sep  9 17:09:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (get_size): Allow zero values.
+	(get_size): New arg, one_elt_size_spec.
+	(do_scanf_conv): New arg, `conv_count'.  Change instantiation
+	requests and all callers.
+	(octave_base_stream::do_scanf): Improve scanning of strings.
+	(octave_base_stream::do_oscanf): Remove size limit on %s conversions.
+
+	* oct-stream.cc (scanf_format_list::all_character_conversions):
+	Don't count %p as a character conversion.
+
+Tue Sep  7 08:31:04 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (set_real_matrix_format, set_complex_matrix_format):
+	Move check for fixed_point_format ahead of check for
+	int_or_inf_or_nan.
+
+Thu Sep  2 11:54:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.cc (make_argv): Correctly handle empty strings as args.
+
+Fri Aug 20 08:17:52 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/quad.cc (quad): Delete unused label.
+
+	* unwind-prot.cc (saved_variable::~saved_variable): Don't try to
+	delete gen_ptr_value here.
+
+Mon Aug 16 21:34:33 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (next_token_is_sep_op): New function.
+	(handle_close_brace, maybe_unput_comma): Use it.
+	(have_continuation): Also handle CRLF here.
+
+Wed Aug 11 16:06:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffopen): Make fopen ("filename") work and imply that
+	MODE = "r".
+
+Wed Jul 21 15:38:52 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (display_names_from_help_list): Sort names before
+	listing them.
+	(print_symbol_type, Ftype): Also handle built-in constants.
+	(LIST_SYMBOLS): Correct call to symbol_table::name_list.
+	(simple_help): List constants here too.  List constants and
+	variables before functions, not after.  Sort names before listing
+	them.
+
+	* variables.cc (do_who): Display built-in constants in a separate
+	section.
+
+	* error.cc (bind_global_error_variable, clear_global_error_variable):
+	Call bind_builtin_constant, not bind_builtin_variable to set
+	__error_text__.
+	* octave.cc (intern_argv): Likewise, for argv and __argv__.
+
+	* defun.cc (install_builtin_constant): Move function guts to
+	bind_builtin_constant in variables.cc.
+	* variables.cc (bind_builtin_constant): New function.
+
+	* symtab.cc (symbol_record::define, symbol_record::variable_reference):
+	Handle constants the same as functions.
+	(symbol_record::link_to_builtin_variable): New function.
+	(symbol_record::define_builtin_const): New function.
+	(symbol_record::define_as_fcn): Delete unused function.
+	(symbol_record::read_only_error):
+	Handle constants the same as variables.
+	* symtab.h (symbol_record::BUILTIN_CONSTANT): New enum value.
+	(symbol_record::symbol_type): Increase width to 7 bits.
+	(symbol_record::symbol_def::is_constant): New function.
+	(symbol_record::symbol_def::is_builtin_constant): New function.
+	(symbol_record::is_constant): New function.
+	(symbol_record::is_builtin_constant): New function.
+	(SYMTAB_ALL_TYPES): Add symbol_record::BUILTIN_CONSTANT.
+	* variables.cc (link_to_builtin_variable): Delete unused function.
+	(link_to_builtin_or_function): Handle built-in constants here too.
+
+	* defun.cc (install_builtin_variable): Delete inst_as_fcn arg.
+	(install_builtin_constant): New function.
+	(install_builtin_variable_as_function): Delete unused function.
+	* defun.h (DEFVAR_INTERNAL): Delete inst_as_fcn arg.
+	(DEFCONST_INTERNAL): New macro.
+	* defun.h (DEFVAR): Delete inst_as_fcn arg.
+	(DEFCONST, DEFCONSTX): Define using DEFCONST_INTERNAL instead of
+	DEFVAR_INTERNAL.
+	* data.cc, defaults.cc, error.cc, help.cc, input.cc, lex.l,
+	load-save.cc, oct-hist.cc, oct-procbuf.cc, ov-fcn.h,
+	ov-usr-fcn.cc, ov.cc, pager.cc, parse.y, pr-output.cc,
+	pt-assign.cc, pt-decl.cc, pt-mat.cc, pt-plot.cc, pt-stmt.cc,
+	toplev.cc, variables.cc:
+	Change all invocations of DEFVAR to match new definition.
+
+	* data.cc (symbols_of_data): Add DEFCONSTs for true and false.
+
+Thu Jul 15 10:59:42 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fis_bool, Fis_complex, Fisempty, Fisnumeric, Fis_list,
+	Fis_map, Fis_struct): Return bool object.
+	(Fisreal): New function.
+
+	* ov-str-mat.h (octave_char_matrix_str): Only return true if
+	Vimplicit_str_to_num_ok is also true.
+
+	* DLD-FUNCTIONS/time.cc (Ftime): Print usage message if	any
+	arguments are supplied.
+
+	* variables.cc (symbol_out_of_date): Call octave_time for time stamps.
+
+	* fn-cache.h (octave_fcn_file_name_cache::timestamp):
+	Now octave_time object.
+
+	* strftime.c: Move to liboctave directory.
+	* Makefile.in (DIST_SRC): Delete from list.
+
+	* ov-usr-fcn.h (octave_user_function::t_parsed,
+	octave_user_function::t_checked): Now octave_time objects.
+	(octave_user_function::time_parsed,
+	(octave_user_function::time_checked):
+	Return value is now octave_time object.
+	(octave_user_function::mark_fcn_file_up_to_date)):
+	Arg is now octave_time object.
+
+	* ov-fcn.h (octave_function::mark_fcn_file_up_to_date)):
+	Arg is now octave_time object.
+	(octave_function::time_parsed, octave_function::time_checked):
+	Return value is now octave_time object.
+
+	* input.cc (Vlast_prompt_time): Now an octave_time object.
+	(octave_gets): Call octave_time::stamp() to set Vlast_prompt_time.
+
+	* DLD-FUNCTIONS/time.cc (mk_tm_map, extract_tm, Ftime, Fgmtime,
+	Flocaltime, Fmktime, Fstrftime): Use new classes defined in
+	liboctave/oct-time.cc instead of accessing C functions directly.
+
+Wed Jul 14 17:38:46 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* systime.h: Move to liboctave directory.
+	* Makefile.in (INCLUDES): Delete it from the list
+
+Tue Jul 13 14:34:57 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (sigchld_handler): Only wait for processes in
+	octave_child_list.
+	* toplev.cc (cmd_status): Delete unused static variable.
+	(cmd_death_handler): Delete unused function.
+	(run_command_and_return_output): Don't add cmd_death_handler to
+	octave_child_list.  Simply extract command exit status from
+	calling close() on the procstream object.
+
+Mon Jul 12 22:38:50 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun.h (DEFUN_MAPPER): Handle new args, d_b_map and c_b_map.
+	* defun-int.h (DEFUN_MAPPER_INTERNAL): Likewise.
+	* mappers.cc (install_mapper_functions): Supply new args to
+	all uses of DEFUN_MAPPER.
+	* ov-mapper.cc (octave_mapper::apply): Handle mapper functions
+	that return bool objects.
+	* ov-mapper.h (octave_mapper::d_b_mapper, octave_mapper::c_b_mapper):
+	New typedefs.
+	(octave_mapper::octave_mapper): Handle new mapper function types.
+
+	* DLD-FUNCTIONS/minmax.cc: Do a better job of handling NaNs.
+
+Sun Jul 11 13:15:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (do_plus_format (ostream&, double)): New function.
+	(octave_print_internal (ostream&, double, bool)): Use it.
+	(octave_print_internal (ostream&, const Matrix&, bool, int)): Ditto.
+
+	* pr-output.cc (do_plus_format (ostream&, const Complex&)):
+	New function.
+	(octave_print_internal (ostream&, const Complex&, bool)): Use it.
+	(octave_print_internal (ostream&, const ComplexMatrix&, bool, int)):
+	Ditto.
+
+Sun Jun 20 23:04:00 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc: Include sys/ioctl.h if available.
+
+Sat Jun 19 12:07:16 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (do_who): Make pattern and multiple non-option
+	arguments work.
+
+Mon Jun  7 09:54:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (next_token_is_bin_op, next_token_is_postfix_unary_op,
+	handle_number): Delete yytext arg.  Change all callers.
+	(next_token_is_postfix_unary_op): Check the first character
+	obtained from yyinput before calling it again.
+	(next_token_is_bin_op): Do a more thorough check.
+	(handle_identifier): Also enter token in local symbol table if the
+	following token is a dot and it looks like a binary operator.
+	(whitespace_in_literal_matrix): Now static.
+
+	* lex.l: Always use unput, not yyunput.
+
+Fri May 28 11:02:37 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/chol.cc (Fchol): If two output arguments, never
+	produce error message.
+
+Thu May 27 18:28:35 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/chol.cc (Fchol): Also return info as second output.
+
+	* DLD-FUNCTIONS/minmax.cc (max (const ComplexMatrix&, const
+	ComplexMatrix&)): Correct test for real columns only.
+	(min (const ComplexMatrix&, const ComplexMatrix&)): Likewise.
+
+Wed Apr 14 12:54:25 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dassl.cc (Fdassl): Prevent recursive calls.
+	* DLD-FUNCTIONS/fsolve.cc (Ffsolve): Likewise.
+	* DLD-FUNCTIONS/lsode.cc (Flsode): Likewise.
+	* DLD-FUNCTIONS/quad.cc (Fquad): Likewise.
+
+	* file-io.cc (Fsscanf, Ffscanf): Doc fix.
+
+Sat Mar 27 11:07:51 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::count): New function.
+	* symtab.cc (symbol_record::dump_symbol_info): New function.
+	* symtab.cc (symbol_record::symbol_def::dump_symbol_info): Ditto.
+	* variables.cc (F__dump_symbol_info__): Ditto.
+
+	* pt-misc.cc (tree_parameter_list::clear): New function.
+	* ov-usr-fcn.h (octave_user_function::clear_args_passed): Ditto.
+	* ov-usr-fcn.cc (clear_param_list): New function.
+	(clear_args_passed): New function.
+	(octave_user_function::do_index_op): Use them to decrement
+	reference counts on local variables.
+
+Fri Mar 26 00:51:53 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (libraries): Use the libfoo.a(objects) method of
+	creating static libs.
+
+	* defaults.cc (symbols_of_defaults): Initialize LOADPATH to
+	Vload_path, not ":".
+
+Thu Mar 18 12:09:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fisnumeric): Fix typo.
+
+Thu Mar  4 02:17:04 1999  James Macnicol  <jamesm@evans.ee.adfa.oz.au>
+
+	* file-io.cc (Ffread, Ffwrite): Add uint16 and uint32 data types
+	to doc string.
+
+Wed Mar  3 11:55:17 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_string): Allow "" to pass through unchanged if
+	working on a gset command.
+
+Tue Mar  2 01:36:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fexist): If a variable isn't defined, only go on
+	to look for a global by the same name if we are at the top level.
+
+Fri Jan 29 02:18:36 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_NAME_AND_VERSION): Say `GNU Octave', not just
+	Octave.
+
+Thu Jan 28 21:29:16 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (Fcomputer): Use CANONICAL_HOST_TYPE, not TARGET_HOST_TYPE.
+	(octave_config_info): Likewise.
+	* version.h: Ditto.
+
+	* sysdep.cc (Fpause): Flush output before getting user input.
+
+Wed Jan 27 14:18:29 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DEFFUN_PATTERN, DEFVAR_PATTERN): Use egrep again.
+	Make the patterns work with stupid egreps that don't like empty
+	elements in alternation patterns.
+
+Fri Jan 22 04:41:48 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_ascii_data): Check for string type first,
+	then range, then the rest.
+	(save_binary_data): Ditto.
+
+	* pager.cc (more_than_a_screenful): Accept length as second arg.
+	Handle long lines properly, assuming the terminal wraps long lines.
+	(octave_pager_buf::do_sync): Accept length of data as second arg.
+	Use write instead of << to put characters on output stream.
+	(octave_pager_buf::sync): Don't assume data ends at first NUL.
+	(octave_diary_buf::sync): Ditto.
+
+Thu Jan 21 22:15:23 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_mat_binary_data): Check for string type
+	first, then range, then the rest.
+
+Wed Jan 20 12:01:14 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_scanf): Handle short and
+	long ints correctly.
+
+Fri Jan 15 13:04:58 1999  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (end_error): Handle case of endswitch too.
+
+	* Makefile.in: Use basic regular expressions and grep instead of
+	egrep to find files that contain DEFVAR, DEFCONST, or DEFUN.
+
+Wed Dec  9 14:14:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (octave): Add $(RDYNAMIC_FLAG) to link command.
+
+Fri Dec  4 20:26:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/time.cc (Fstrftime): Make it work even when not
+	using the GNU version of strftime, which allows passing NULL for
+	the buffer to determine the required size of the buffer.
+
+Wed Dec  2 22:38:40 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (file_in_loadpath): Expect argc == 2, not 3.
+
+Tue Nov 24 23:38:19 1998  Eric Norum  <eric@skatter.USask.Ca>
+
+	* mkbuiltins: Also strip off leading `./' from file names.
+	* mkops: Ditto.
+
+Tue Nov 24 23:24:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strftime.c: Surround everything with #ifdef HAVE_STRFTIME / #endif.
+
+	* lex.h (YY_FATAL_ERROR): Call yy_falta_error after
+	jump_to_top_level to avoid gcc warning.
+
+Fri Nov 20 13:34:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool.h, ov-bool.cc (class octave_bool): Derive from
+	octave_base_scalar and get common functions via derivation.
+	* ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto.
+	* ov-complex.h, ov-complex.cc (class octave_complex): Ditto.
+
+	* ov-base-scalar.h, ov-base-scalar.cc (class octave_base_scalar):
+	New files for new class definition.  Put common scalar data type
+	stuff here.
+	* Makefile.in (OV_INCLUDES, OV_SRC): Add them to the lists.
+
+Thu Nov 19 14:30:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (octave_dynamic_loader::mangle_name):
+	Prepend underscore here.
+	(octave_dynamic_loader::load_fcn_from_dot_oct_file): Not here.
+
+	* ov-re-mat.h (octave_matrix_value): Delete experimental code for
+	handling structure references for things like .rows, .cols, etc.
+
+Wed Nov 18 01:18:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (VAR_FILES): Be more careful about matching.
+	(DEF_FILES): Likewise.
+
+	* ov-base-mat.h, ov-base-mat.cc, ov-bool-mat.h, ov-bool-mat.cc,
+	ov-ch-mat.h, ov-ch-mat.cc, ov-cx-mat.h, ov-cx-mat.cc,
+	ov-re-mat.h, ov-re-mat.cc: Move default definition of all, any,
+	is_matrix_type, is_numeric_type, valid_as_zero_index, and
+	do_index_op to base class.
+	Provide definitions that override the defaults where necessary.
+
+	* mappers.cc: Don't include lo-specfun.h.
+
+Tue Nov 17 14:35:56 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* besselj.cc (Fbesselh, Fairy); New functions.
+	(Fbesselj, Fbessely, Fbesselk, Fbesseli): Update doc strings.
+	(do_bessel): Handle additional args.
+
+Fri Nov 13 14:47:11 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (NUMBER): Allow hexadecimal constants.
+	(looks_like_hex): New function.
+	(handle_number): Check for hexadecimal constants and convert them
+	to unsigned integer values.
+
+Thu Nov 12 11:13:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (gnu_readline): Check for EOF from command_editor::readline.
+
+	* ov-str-mat.h, ov-str-mat.cc (class octave_char_matrix_str):
+	Get common functions via new derivation scheme.
+
+	* ov-bool-mat.h, ov-bool-mat.cc (class octave_bool_matrix):
+	Derive from octave_base_matrix and get common functions via derivation.
+	* ov-ch-mat.h, ov-ch-mat.cc (class octave_char_matrix): Ditto.
+	* ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto.
+	* ov-re-mat.h, ov-re-mat.cc (class octave_real_matrix): Ditto.
+
+	* ov-base-mat.h, ov-base-mat.cc (class octave_base_matrix): New
+	files  for new class definition.  Put common matrix data type
+	stuff here.
+
+	* ov-list.cc (Fnth): New function.
+
+	* ov-list.cc (octave_list::do_index_op): Allow more complex indexing.
+
+	* oct-obj.cc (octave_value_list::index): New function.
+	(octave_value_list::octve_value_list (Array<octave_value>)):
+	New private constructor.
+
+	* ov-list.cc (Fsplice): Fix docstring to match.
+	* oct-obj.cc (octave_value_list::splice): Allow special case
+	splice (x, length(x)+1, 0, y) to be equivalent to append (x, y).
+
+	* ov-list.cc (Fappend): If an arg is a list, concatenate the lists
+	instead of appending arg as a single element.
+
+Wed Nov 11 14:07:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (get_mat_data_input_line): New function.
+	(get_lines_and_columns): Use it here.
+	(read_mat_ascii_data): And here and do our own reading instead of
+	using Matrix::operator<<.
+
+Tue Nov 10 16:12:25 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (make_constant): Initialize retval to 0.
+
+	* toplev.h (clean_up_and_exit (void)): Delete declaration.
+	* toplev.cc (do_octave_atexit): Move guts of clean_up_for_exit
+	here, but ensure that the actions are only executed once.
+	* octave.cc (main): Don't register cleanup_tmp_files with atexit.
+
+	* ov.h, ov.cc (class octave_value): Use DECLARE_OCTAVE_ALLOCATOR
+	and DEFINE_OCTAVE_ALLOCATOR for uniform declaration and definition
+	of allocator functions.  Use DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA
+	and DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA for uniform declaration
+	and definition of type id functions and data.
+	* ov-usr-fcn.h, ov-usr-fcn.cc (class octave_user_function): Ditto.
+	* ov-scalar.h, ov-scalar.cc (class octave_scalar): Ditto.
+	* ov-re-mat.h ov-re-mat.cc (class octave_matrix): Ditto.
+	* ov-range.h, ov-range.cc (class octave_range): Ditto.
+	* ov-mapper.h, ov-mapper.cc (class octave_mapper): Ditto.
+	* ov-list.h, ov-list.cc (class octave_list): Ditto.
+	* ov-file.h, ov-file.cc (class octave_file): Ditto.
+	* ov-fcn.h, ov-fcn.cc (class octave_function): Ditto.
+	* ov-cx-mat.h, ov-cx-mat.cc (class octave_complex_matrix): Ditto.
+	* ov-complex.h, ov-complex.cc (class octave_complex): Ditto.
+	* ov-ch-mat.h, ov-ch-mat.cc (octave_char_matrix): Ditto.
+	* ov-builtin.h, ov-builtin.cc (class octave_builtin): Ditto.
+	* ov-bool.h, ov-bool.cc (class octave_bool): Ditto.
+	* ov-bool-mat.h, ov-bool-mat.cc (octave_bool_matrix): Ditto.
+
+	* ov.h (DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA): New macro.
+	(DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA): Ditto.
+
+Mon Nov  9 16:12:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (octave_print_internal): Reorder default args for
+	charMatrix version.
+	(octave_print_internal): New function for boolMatrix.
+
+	* version.h (OCTAVE_STARTUP_MESSAGE): Note that this is a
+	development release.
+
+	* toplev.cc (do_octave_atexit): Call flush_octave_stdout here.
+	(clean_up_for_exit): And here.
+
+Mon Nov  9 15:20:53 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (get_user_input): Check retval.length(), not	retval.length.
+
+Sun Nov  8 19:30:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-assign.cc (tree_simple_assignment::rvalue): If etype is
+	asn_eq, don't evaluate ult again because retval is just rhs value.
+	(tree_multi_assignment::rvalue): Likewise.
+
+Fri Nov  6 12:14:29 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-loop.cc (tree_for_command::eval): Move code for string RHS
+	outside if clause for matrix types.
+
+	* pt-idx.cc: Don't forget to define arg_nm.
+	Move contstructor here.
+	* pt-idx.h: From here.
+
+	* data.cc (Fisempty): Also return true for empty strings.
+
+Wed Nov  4 17:21:41 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base.cc (octave_base_value::rows, octave_base_value::columns,
+ 	octave_base_value::length): Delete.
+	* ov-base.h (octave_base_value::rows, octave_base_value::columns,
+ 	octave_base_value::length): Define here.  All return -1 if not
+	defined in a derived class.
+
+	* data.cc (Fis_matrix): Also return true if the arg is a range.
+
+Tue Nov  3 09:40:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fis_bool): New function.
+	Also add alias for islogical.
+
+	* ov.h (octave_value::is_bool_type): New function.
+	* ov-base.h (octave_base_value::is_bool_type): Likewise.
+	* ov-bool.h (octave_bool::is_bool_type): Likewise.
+	* ov-bool-mat.h (octave_bool_matrix::is_bool_type): Likewise.
+
+Mon Nov  2 13:36:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_close_brace): Also handle case of ']' followed by
+	other assignment ops (+=, -=, ...).
+
+	* pt-assign.cc (tree_simple_assignment::rvalue): Correctly handle
+	return value and printing for operators other than `='.
+	(tree_multi_assignment::rvalue): Likewise.
+
+	* pt-assign.h (tree_multi_assignment::etype): New data member.
+	* pt-assign.cc 	(tree_multi_assignment::rvalue): Use it instead of
+	assuming `='.
+	(tree_multi_assignment::oper): New function.
+	* pt-pr-code.cc (tree_print_code::visit_multi_assignment): Use
+	it instead of always printing `='.
+	* parse.y (make_assign_op): Pass expression type to
+	tree_multi_assignment constructor.
+
+	* Makefile.in (stmp-pic): New target.
+	($(PICOBJ)): Depend on stmp-pic, not pic.
+	(clean): Delete stmp-pic.
+
+Sun Nov  1 23:24:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mappers.cc (install_mapper_functions): Add alias for isfinite.
+
+Sat Oct 31 08:46:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fisnumeric): New function.
+
+Fri Oct 30 08:39:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-lvalue.cc (octave_lvalue::do_unary_op): Make it work for
+	indexed ops too.
+	* ov.cc (octave_value::unary_op_to_assign_op): New function.
+	(octave_value::do_non_const_unary_op): New function for	indexed ops.
+
+	* parse.y (LEFTDIV_EQ, ELEFTDIV_EQ): New tokens.
+	(assign_expr): Add rules for them.
+	(make_assign_op): Handle them here too.
+	* lex.l: Recognize them.
+	* ov.h (octave_value::assign_op): Add ldiv_eq and el_ldiv_eq.
+	* ov.cc (octave_value::assign_op_as_string): Ditto.
+	(octave_value::op_eq_to_binary_op): Ditto.
+	(octave_value::assign): Handle OP= style operators with brute force.
+	(octave_value::simple_assign): New function.
+
+	* parse.y (matrix): Dont' forget to reset
+	lexer_flags.looking_at_matrix_or_assign_lhs.
+
+	* oct-lvalue.cc (octave_lvalue::assign): Don't call change
+	function if error occurs.
+	(octave_lvalue::do_unary_op): If we have an index, fail with message.
+
+Thu Oct 29 09:27:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc (do_binary_op): Protect against invalid type conversions.
+	(try_assignment_with_conversion): Likewise.
+	(do_unary_op): Likewise.
+
+	* ov.h (OV_UNOP_FN, OV_UNOP_OP, OV_UNOP_FN_OP): New macros.
+	Use them to define not, uminus, transpose, hermitian functions
+	and operators ! and -.
+	(OV_BINOP_FN, OV_BINOP_OP, OV_BINOP_FN_OP): New macros.
+	Use them to define add, sub, mul, div, pow, ldiv, lshift, rshift,
+	lt, le, eq, ge, gt, ne, el_mul, el_div, el_pow, el_ldiv, el_and,
+	el_or, struct_ref, functions and operators <, <=, ==, >=, >, !=,
+	+, -, *, and /.
+
+	* ops.h (CONVDECLX): New macro.
+	* ov-base.cc (matrix_conv, complex_matrix_conv, string_conv):
+	Use it to declare these functions.
+
+	* ops.h (CONVDECL, INSTALL_WIDENOP):
+	Prefix function name with `oct_conv_'.
+	(INSTALL_BINOP, BINOPDECL): Prefix function name with `oct_binop_'.
+	(INSTALL_ASSIGNOP, INSTALL_ASSIGNANYOP, ASSIGNOPDECL):
+	Prefix function name with `oct_assignop_'.
+	(UNOPDECL, DEFNCUNOP_METHOD, INSTALL_UNOP, INSTALL_NCUNOP):
+	Prefix function name with `oct_unop_'.
+
+	* ov-str-mat.cc (default_numeric_conversion_function):
+	Return 0 if conversion fails.
+
+	* parse.y (make_prefix_op, make_postfix_op): Use
+	octave_value::unary_op enum.
+
+	* pt-unop.cc (tree_prefix_expression::rvalue): Use new unary_op
+	functions from octave_value and octave_lvalue classes.
+	(tree_prefix_expression::rvalue): Likewise.
+
+	* pt-unop.cc (tree_unary_expression::oper): Move here.
+	(tree_prefix_expression::oper, tree_postfix_expression): From here.
+
+	* pt-unop.h (tree_prefix_expression, tree_postfix_expression):
+	Delete enums.
+	(tree_unary_expression): Use octave_value::unary_op enum.
+	* parse.y (make_prefix_op, make_postfix_op): Likewise.
+
+	* oct-lvalue.h (octave_lvalue::do_unary_op): New function.
+	(octave_lvalue::increment, octave_lvalue::decrement): Delete.
+
+	* ov-typeinfo.h (octave_value_typeinfo::non_const_unary_ops):
+	New data member.
+	* ov-typeinfo.h (octave_value_typeinfo::lookup_non_const_unary_op):
+	New function.
+	* ov-typeinfo.cc (octave_value_typeinfo::register_non_const_unary_op):
+	New function.
+	(octave_value_typeinfo::do_register_non_const_unary_op): Ditto.
+	(octave_value_typeinfo::do_lookup_non_const_unary_op): Ditto.
+
+	* ov.cc (octave_value::do_non_const_unary_op): New function.
+
+	* Makefile.in (OP_XSRC): Add op-chm.cc and op-range.cc to the list.
+
+	* OPERATORS/op-str-str.cc: Define string matrix unary operators here.
+	(install_str_str_ops): Install them here.
+	* ov-bool-mat.h (octave_bool_matrix::transpose,
+	octave_bool_matrix_value::hermitian): Delete.
+
+	* OPERATORS/op-chm.cc: New file.  Define char matrix unary operators.
+	(install_chm_ops): Install them here.
+	* ov-ch-mat.h (octave_char_matrix::transpose,
+	octave_char_matrix_value::hermitian): Delete.
+	* ops.cc (install_ops): Call install_chm_ops.
+
+	* OPERATORS/op-bm-bm.cc: Define bool matrix unary operators here.
+	(install_bm_bm_ops): Install them here.
+	* ov-bool-mat.h (octave_bool_matrix::transpose,
+	octave_bool_matrix_value::hermitian): Delete.
+
+	* ov-bool.h (octave_bool::not, octave_bool::uminus,
+	octave_bool::transpose, octave_bool::hermitian): Delete.
+
+	* OPERATORS/op-cs-cs.cc: Define complex scalar unary operators here.
+	(install_cs_cs_ops): Install them here.
+	* ov-complex.h (octave_complex::not, octave_complex::uminus,
+	octave_complex::transpose, octave_complex::hermitian): Delete.
+
+	* OPERATORS/op-cm-cm.cc: Define complex matrix unary operators here.
+	(install_cm_cm_ops): Install them here.
+	* ov-cx-mat.h (octave_complex_matrix::not,
+	octave_complex_matrix::uminus, octave_complex_matrix::transpose,
+ 	octave_complex_matrix::hermitian): Delete.
+
+	* OPERATORS/op-m-m.cc: Define matrix unary operators here.
+	(install_m_m_ops): Install them here.
+	* ov-re-mat.h (octave_matrix::not, octave_matrix::uminus,
+	octave_matrix::transpose, octave_matrix::hermitian): Delete.
+
+	* OPERATORS/op-range.cc: New file.  Define range unary operators.
+	(install_range_ops): Install them here.
+	* ov-range.h (octave_range::not, octave_range::uminus,
+	octave_range::transpose, octave_range::hermitian): Delete.
+	* ops.cc (install_ops): Call install_range_ops.
+
+	* OPERATORS/op-s-s.cc: Define scalar unary operators here.
+	(install_s_s_ops): Install them here.
+	* ov-scalar.h (octave_scalar::not, octave_scalar::uminus,
+	octave_scalar::transpose, octave_scalar::hermitian): Delete.
+
+	* ops.h (INSTALL_UNOP, CAST_UNOP_ARG, UNOPDECL, DEFUNOPX, DEFUNOP,
+	DEFUNOP_OP, DEFUNOP_FN): New macros.
+
+	* ov.h (unary_op_fcn): New typedef.
+	(octave_value::unary_op): New enum.
+	* ov.cc (octave_value::octave_value): New function.
+
+	* ov.h (octave_value::not, octave_value::uminus,
+	octave_value::transpose, octave_value::hermitian,
+	octave_value::increment, octave_value::decrement): Delete.
+
+	* ov-base.cc (octave_base_value::not, octave_base_value::uminus,
+	octave_base_value::transpose, octave_base_value::hermitian,
+	octave_base_value::increment, octave_base_value::decrement): Delete.
+
+	* ov.cc (gripe_unary_op): New function.
+	(do_unary_op): New function.
+	* ov-typeinfo.h (octave_value_typeinfo::unary_ops):
+	New data member.
+	* ov-typeinfo.cc (octave_value_info::register_unary_op,
+	octave_value_info::do_register_unary_op,
+	octave_value_info::lookup_unary_op,
+	octave_value_info::do_lookup_unary_op):
+	New functions.
+
+	* ov-list.cc (Fsplice): Use new octave_value::int_value function here.
+	(octave_list::do_index_op): Likewise.
+	(octave_list::assign): Likewise.
+	* toplev.cc (Fquit): Likewise.
+	* syscalls.cc (Fwaitpid): Likewise.
+	(Ffcntl): Likewise.
+	* file-io.cc (do_fread): Likewise.
+	(do_fwrite): Likewise.
+	* data.cc (make_diag): Likewise.
+	(Fsize): Likewise.
+	(get_dimensions): Likewise.
+	(Flinspace):
+
+	* ov-base.cc (octave_base_value::int_value): New function.
+	(octave_base_value::nint_value): Ditto.
+	* ov.h (octave_value::int_value): Ditto.
+	(octave_value::nint_value): Ditto.
+
+	* ov-list.cc (octave_list::assign): Fix off-by-one error.
+
+Wed Oct 28 11:01:37 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_mat_ascii_data): Try harder to convert file
+	name to valid variable name.
+
+	* data.cc (Fisempty, Fis_matrix): New functions.
+
+	* ov-str-mat.h (octave_char_matrix_str::is_matrix_type): New function.
+
+	* OPERATORS/op-list.cc: New file.
+	* Makefile.in (OP_XSRC): Add it to the list.
+
+	* ov-list.cc (octave_list::assign): New function.
+
+	* ov-typeinfo.h (octave_value_typeinfo::assignany_ops):
+	New data member.
+	* ov-typeinfo.cc (octave_value_info::register_assignany_op,
+	octave_value_info::do_register_assignany_op,
+	octave_value_info::lookup_assignany_op,
+	octave_value_info::do_lookup_assignany_op):
+	New functions.
+	* ov.cc (octave_value::try_assignment (octave_value::assign_op,
+	const octave_value_list&, const octave_value&)): If no assignment
+	operator for particular RHS type exists, try finding one for
+	generic octave_value as RHS type.
+	* ops.h (DEFASSIGNANYOP_FN): New macro.
+
+	* ov-list.cc (Fsplice): New function.
+	* oct-obj.cc (octave_value_list::splice): New function.
+
+	* ov.cc (Vresize_on_range_error): No longer static.
+	* ov.h (Vresize_on_range_error): Provide extern declaration.
+
+	* oct-procbuf.cc (symbols_of_oct_procbuf): Don't declare static.
+
+	* data.cc (Flength): New function.
+	* ov.h (octave_value::length): New virtual function.
+	* ov-base.cc (octave_base_value::length): New function.
+	(octave_base_value::rows, octave_base_value::columns): Move
+	definitions here, from ov-base.h.  Don't return -1.  Instead,
+	gripe about wrong argument type.
+	* ov-bool-mat.h (octave_bool_matrix::length): New function.
+	* ov-bool.h (octave_bool::length): Ditto.
+	* ov-ch-mat.h (octave_char_matrix::length): Ditto.
+	* ov-complex.h (octave_complex::length): Ditto.
+	* ov-cx-mat.h (octave_complex_matrix::length): Ditto.
+	* ov-list.h (octave_list::length): Ditto.
+	* ov-range.h (octave_range::length): Ditto.
+	* ov-re-mat.h (octave_matrix::length): Ditto.
+	* ov-scalar.h (octave_scalar::length): Ditto.
+
+Tue Oct 27 22:19:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-list.cc (octave_list::print_raw): Handle case of empty list.
+	(octave_list::print_name_tag): Likewise.
+
+	* octave.cc (intern_argv): Built-in variable argv is now a list of
+	strings instead of a string vector.
+	Always bind argv, making it an empty list if there are no args.
+
+Mon Oct 26 08:41:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xdiv.cc (mx_leftdiv_conform): Explicitly declare args to be
+	passed as references to const objects.  Fix explicit instantiation
+	requests to match.
+	(mx_div_conform): Likewise.
+
+	* pt-unop.h (tree_prefix_expression): Reorder constructor args to
+	put those with default values last.
+	(tree_postfix_expression): Likewise.
+	* parse.y: Change all callers.
+
+Fri Oct 23 12:07:32 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (Ffile_in_loadpath): New function.
+
+	* defaults.cc (Vload_path, Vdefault_load_path): Now static.
+
+	* help.cc (simple_help): Use Vload_path_dir_path here instead of
+	trying to reconstruct it from Vload_path.
+	* fn-cache.cc (octave_fcn_file_name_cache::do_list): Likewise.
+	(octave_fcn_file_name_cache::update): Likewise.
+
+	* defaults.cc (octave_loadpath): Construct Vload_path_dir_path
+	using Vdefault_load_path.
+	(set_default_path): Likewise.
+
+	* defaults.h, defaults.cc (maybe_add_default_load_path): Delete.
+
+	* defaults.cc (Vdefault_load_path): New static variable.
+	(set_default_path): Set it.
+	(maybe_add_default_load_path): Use it.
+	(symbols_of_defaults): Add DEFCONST for DEFAULT_LOADPATH.
+	Thanks to Rafael Laboissiere <rafael@icp.inpg.fr>.
+
+	* defaults.cc (set_default_path): If OCTAVE_PATH is set in the
+	environment, call maybe_add_default_load_path on it.
+
+Tue Oct 20 20:58:04 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (maybe_add_default_load_path): If LOADPATH contains
+	an embedded "::", insert the default path there too.
+
+Fri Oct 16 00:52:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (in_matrix_or_assign_lhs): New subroutine for lexical
+	feedback.
+	(matrix): Use it.
+	(assign_lhs): Ditto.
+	* lex.h (lexical_feedback::looking_at_matrix_or_assign_lhs): New
+	data member.
+	* lex.l (handle_identifier): Use it to handle keywords like `cd'
+	as variables in contexts like [ab, cd] = foo ().
+
+	* ov-str-mat.h
+	(octave_char_matrix_str::octave_char_matrix_str (char c)):
+	New constructor.
+	* ov-ch-mat.h (octave_char_matrix::octave_char_matrix (char c)):
+ 	New constructor.
+	* ov.cc (octave_value::octave_value (char c): New constructor.
+
+	* pt-loop.cc (tree_simple_for_command::eval): Handle case of RHS
+	as string.
+
+Thu Oct 15 00:56:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/rand.cc: Declare Fortran subroutines as returning
+	int, not int*.
+
+Wed Oct 14 23:51:31 1998  Georg Thimm  <thimm@idiap.ch>
+
+	* load-save.cc (Vcrash_dumps_octave_core): New static variable.
+	(save_user_variables): Only save variables if
+	Vcrash_dumps_octave_core is true.
+	(symbols_of_load_save): Add DEFVAR for it here.
+	(crash_dumps_octave_core): New function.
+	* octave.cc (maximum_braindamage): Bind crash_dumps_octave_core to
+	0.0 here.
+
+Tue Oct 13 22:05:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (read_readline_init_file): New function.
+
+Thu Oct  8 13:47:55 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-procbuf.h (octave_procbuf::wstatus): New data member.
+	Initialize in constructors.
+	(octave_procbuf::wait_status): New member function.
+	* oct-procbuf.cc (octave_procbuf::sys_close): Use class data
+	member wstatus, not local variable.
+	* procstream.cc (procstreambase::close): Don't call sys_close directly.
+	Get subprocess exit status by calling wait_status for our procbuf.
+	* pt-plot.cc (close_plot_stream): Send "quit" command to gnuplot
+	before deleting plot_stream.
+
+Thu Oct  1 22:39:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fis_complex): New function.
+
+Fri Sep 25 11:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (write_header): Rename from write_binary_header.
+	Also write header for Octave ASCII files.
+
+	* load-save.cc (Fsave): Implement -append option.
+
+	* defaults.cc (Frehash): New function.
+
+Fri Sep 25 11:50:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (help_from_info): Improve error message in case that
+	info doesn't work.
+
+Thu Sep 24 10:48:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DLD_XSRC): Replace qzval.cc with qz.cc
+
+	* DLD-FUNCTIONS/balance.cc: Update from A. S. Hodel
+	<scotte@eng.auburn.edu>.
+
+	* DLD-FUNCTIONS/qz.cc: New file.
+
+	* DLD-FUNCTIONS/qzval.cc: Delete.
+
+	* parse.y (plot_command1): Don't allow it to be empty.
+	(plot_command): Handle simple `PLOT' and `PLOT ranges' as special
+	cases here.
+
+Wed Sep 23 21:10:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: Change <MATRIX>{SNLCMT}*\n{SNLCMT}* pattern
+	to <MATRIX>{S}*{COMMENT}{SNLCMT}* | <MATRIX>{S}*{NL}{SNLCMT}*.
+
+Fri Sep  4 10:50:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffwrite): Fix doc string.
+
+Wed Sep  2 16:22:23 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (match_sans_spaces): Make it work.
+
+	* toplev.cc (quit): Require nargout == 0.
+
+	* input.cc (get_user_input): Only try matching "exit", "quit", and
+	"return" if debugging.
+
+Tue Sep  1 12:50:24 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc: Use -H as single character equivalent of --no-history.
+
+Sat Aug 29 12:23:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.cc (octave_value_list::make_argv): If some values are
+	string vectors, insert all the elements, not just the first.
+
+Tue Aug 18 16:39:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_gets): Accept last line of
+	file even if it doesn't end in a newline character.
+
+Tue Aug 18 16:25:49 1998  Mumit Khan  <khan@xraylith.wisc.edu>
+
+	* xdiv.cc (mx_leftdiv_conform, mx_div_conform): Instantiate correct
+	templates.
+
+Thu Jul 30 00:37:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-loop.cc (tree_for_command::eval): Check for range first.
+	If error occurs when extracting matrix value, return early.
+	Don't bother to check for string type.
+
+	* ov-ch-mat.h (octave_char_matrix::is_real_matrix): New function.
+
+Tue Jun 23 15:09:54 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (clear_current_script_file_name): New function.
+	(parse_fcn_file): Bind current_script_file_name while script is
+	executing.  Use unwind_protect to clear it once the script is
+	finished.
+
+	* pt-plot.cc (Fgraw): New function.
+
+Mon Jun 22 22:13:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (is_valid_function): Provide version that takes
+	function name as string.
+
+	* parse.y (binary_expr): Fix thinko that resulted in incorrect
+	evaluation of -x^y.  Thanks to Richard Allan Holcombe
+	<raholcom@unity.ncsu.edu>.
+	(feval): Don't attempt to copy nonexistent arg names.
+
+Mon Jun 22 21:35:50 1998  Richard Allan Holcombe  <raholcom@unity.ncsu.edu>
+
+	* xpow.cc (xpow): Improve efficiency for matrix^(scalar int) case.
+
+Thu Jun  4 12:42:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (octave_user_function::octave_all_va_args):
+	If num_args_passed < num_named_args, create zero length list.
+
+Thu May 14 16:23:15 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/getrusage.cc: Include sys/types.h too.
+
+Mon May 11 00:38:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.cc (Fdiary): Don't forget to set write_to_diary file if
+	just given a file name.
+
+	* input.cc (octave_gets): Only send new line character to
+	octave_diary if current_input_line is empty or doesn't already end
+	with a new line character..
+	Don't send input from function files or	scripts to octave_diary.
+
+Sun May  3 19:54:38 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (reset_parser): Also call yyrestart if forced_interactive
+	is true, but not if input_from_startup_file is true.
+
+Tue Apr 28 14:06:20 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-procbuf.cc (Vkluge_procbuf_delay): New static variable.
+	(kluge_procbuf_delay): New function.
+	(symbols_of_oct_procbuf): New function.
+	(octave_procbuf::open): Delay Vkluge_procbuf_delay microseconds
+	after forking.
+
+Thu Apr 23 15:41:08 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (Vload_path_dir_path): New variable.
+	* utils.cc (file_in_path): Use it.
+
+	* utils.cc (search_path_for_file): Undo previous change.
+	(file_in_path): Undo previous change.
+	* defaults.cc (loadpath): Undo previous change.  Tilde expansion
+	is once again handled correctly by the code in
+	liboctave/pathsearch.cc.
+
+Mon Apr 20 21:50:34 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (get_dimensions): Allow zeros ([], 3) to work, for
+	compatibility with Matlab.
+
+	* dynamic-ld.cc [WITH_DL && ! HAVE_DLFCN_H]: Add declarations for
+	dlopen, dlerror, dlsym, and dlclose.
+
+	* octave.gperf: Handle __FILE__ and __LINE__.
+	* lex.l (is_keyword): Likewise.
+	* Makefile.in (oct-gperf.h): Pass -D option to gperf.
+	Postprocess output of gperf to convert name of static variable
+	from lookup to gperf_lookup, to avoid conflict with our	function
+	of the same name defined in variables.cc.
+
+Sat Apr 18 20:17:10 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (USE_GNU_INFO): Delete uses of this macro.
+
+Thu Apr 16 01:00:12 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc: Only include dlfcn.h if HAVE_DLFCN_H.
+
+Wed Apr 15 01:03:05 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (Vlast_prompt_time): New global variable.
+	(octave_gets): Set it.
+	* ov-fcn.h (octave_function::time_checked): New virtual function
+	(octave_function::mark_fcn_file_up_to_date): Ditto.
+	* ov-usr-fcn.h (octave_user_function::time_checked): New function.
+	(octave_user_function::mark_fcn_file_up_to_date): Ditto.
+	(octave_user_function::t_checked): New data member.
+	* variables.cc (symbol_out_of_date): Only check file time stamp if
+	a prompt has been printed since the last time check.
+
+	* pt-plot.h, pt-plot.cc (subplot_axes): New class.
+	(subplot): Handle axes.
+	(Vgnuplot_command_axes): New static variable.
+	(gnuplot_command_axes): New function.
+	(symbols_of_pt_plot): DEFVAR gnuplot_command_axes.
+	* pt-walk.h (tree_walker::visit_subplot_axes): New virtual function.
+	* parse.y (plot_options): Handle axes.
+	* lex.l (plot_axes_token): New function.
+	(is_keyword): Use it.
+	(is_plot_keyword): Recognize "axes" and "axis".
+	* lex.h (class lexical_feedback): New field, in_plot_axes.
+	(lexical_feedback::init): Reset it.
+
+Tue Apr 14 23:32:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (parse_fcn_file): New arg, force_script.  Change callers.
+
+Fri Apr 10 11:01:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (type): Also print values of variables.
+
+Wed Apr  8 01:00:58 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (set_format): Set scale to 1.0 if all elements are
+	int or inf or nan.
+
+	* parse.y (Vwarn_future_time_stamp): New variable.
+	(symbols_of_parse): Add DEFVAR for it.
+	(warn_future_time_stamp): New function.
+	(frob_function_def): Maybe warn about files with future time stamps.
+
+Thu Apr  2 20:43:45 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-arg-list.cc (tree_argument_list::convert_to_const_vector): In
+	error messages, print element numbers starting with 1, not 0.
+
+Sat Mar 28 15:25:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (clean_up_for_exit): New function.
+	(clean_up_and_exit): Use it.
+	* sighandlers.cc (my_friendly_exit): Call it instead of
+	clean_up_and_exit, then do default action for signal.
+
+	* sighandlers.cc (octave_new_handler): Call my_friendly_exit with
+	signal set to SIGABRT if it is defined, or -1 otherwise.
+
+	* error.cc (verror): Fix thinko in attempt to skip `error: ' tag
+	when buffering error messages.
+	* pt-except.cc (tree_try_catch::eval): Reset buffer_error_messages
+	here if	just discarding unwind_protect frame.
+
+Wed Mar 18 12:35:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xpow.cc (elem_xpow): For real-scalar .^ matrix case, result is
+	complex only if real-scalar is negative and matrix has some
+	non-integer values.
+
+Tue Mar 17 17:47:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (Vgnuplot_command_plot, Vgnuplot_command_replot,
+	Vgnuplot_command_splot, Vgnuplot_command_using,
+	Vgnuplot_command_with, Vgnuplot_command_title,
+	Vgnuplot_command_end): New static variables.
+	(symbols_of_pt_plot): DEFVAR them.
+	(gnuplot_command_plot, gnuplot_command_replot,
+	gnuplot_command_splot, gnuplot_command_using,
+	gnuplot_command_with, gnuplot_command_title,
+	gnuplot_command_end): New functions.
+	(open_plot_stream, send_to_plot_stream, tree_plot_command::eval,
+	subplot_using::print, subplot_style::print, subplot::print,
+	do_external_plotter_cd, Fgset, Fgshow): Use them instead of the
+	GPLOT_CMD_PLOT, GPLOT_CMD_REPLOT, GPLOT_CMD_SPLOT,
+	GPLOT_CMD_USING, GPLOT_CMD_WITH, GPLOT_CMD_TITLE, and
+	GPLOT_CMD_END macros.
+
+Fri Feb 27 12:25:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (additional_help_message): Fix www address.
+
+Tue Feb 24 00:42:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (simple_help): Put additional help message first.
+  	(additional_help_message): Add information about web site and
+	mailing list.
+
+Fri Feb 20 00:41:06 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (GPLOT_CMD_REPLOT): Clear before replot.
+
+	* Makefile.in: Better handling of lib flags for linking.
+
+Thu Feb 19 21:14:30 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-decl.cc (Vinitialize_global_values): New static variable.
+	(initialize_global_variables): New function.
+	(symbols_of_pt_decl): New function.
+	DEFVAR Vinitialize_global_values and initialize_global_variables.
+	(tree_global_command::do_init): If initialize_global_variables is
+	not true and the variable doesn't have an explicit initializer, don't
+	initialize it.  If we are giving it a default value, use the value
+	of the variable defualt_global_variable_value.
+	* octave.cc (maximum_braindamage): Set default_global_variable_value
+	and initialize_global_variables to Matlab-compatible values.
+
+Wed Feb 18 04:35:31 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/besselj.cc: Rename from bessel.cc.
+	* Makefile.in (DLD_XSRC): Likewise.
+
+	* syscalls.cc (Fvfork): Delete.
+
+	* oct-procbuf.cc: Just use fork.
+
+	* parse.y (feval): Provide version that takes function name
+	separate from other args.
+	* parse.h: Declare it.
+
+	* oct-procbuf.cc (octave_procbuf::open): Move declaration of
+	child_std_end outside of child scope and declare volatile.
+
+Mon Feb 16 15:04:28 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Include cstdio, for SEEK_SET.
+
+Thu Feb 12 22:07:00 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* system.c: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+
+Fri Feb  6 01:23:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::file_number): Rename from fileno.
+	Change all uses.
+
+	* fsolve.cc (fsolve_option_table): Add missing & to function names.
+
+Thu Feb  5 02:27:18 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Fls): If first attempt at reading process output
+	fails, sleep once and try again.
+	* toplev.cc (run_command_and_return_output): Likewise.
+
+	* oct-procbuf.cc (octave_procbuf::open): Use vfork if it is available.
+
+	* syscalls.cc (Fvfork): New function.
+
+	* ov-bool-mat.cc: Only declare assign function if
+	CXX_NEW_FRIEND_TEMPLATE_DECL is not defined.
+
+	* ov-base.h, ov-bool-mat.h, ov-bool.h, ov-ch-mat.h, ov-complex.h,
+	ov-cx-mat.h, ov-range.h, ov-re-mat.h, ov-scalar.h: Handle default
+	args for *_value functions consistently.
+
+	* symtab.cc (maybe_list_cmp_fcn): Declare args as void*, not
+	void**, then use X_CAST.
+
+	* OPERATORS/op-s-cm.cc: Include mx-cm-s.h.
+
+	* defun-int.h: Include ov-builtin.h, ov-mapper.h, and symtab.h.
+	(install_builtin_mapper, install_builtin_function,
+	install_builtin_variable) Use specific types rather than void * in
+	declaration.
+	* defun.cc (install_builtin_mapper, install_builtin_function,
+	install_builtin_variable): Likewise.  Eliminate casts.
+
+	* load-save.cc (read_binary_data, read_mat_file_header,
+	save_binary_data): Use X_CAST, not static_cast.
+	* unwind-prot.h (unwind_protect::save_ptr): Likewise.
+	* Map.cc (goodCHptr, index_to_CHptr, CHptr_to_index): Likewise.
+	* dynamic-ld.cc (octave_dlopen_dynamic_loder::resolve_reference):
+	Likewise.
+
+	* pt-mat.cc (tm_const::operator bool ()):
+	(tm_row_const::operator bool ()): Likewise.
+	* oct-stream.cc (printf_value_cache::operator bool ()): Likewise.
+	(scanf_format_list::operator bool ()): Likewise.
+	(printf_format_list::operator bool ()): Likewise.
+	(octave_stream::operator bool ()): Likewise.
+
+Wed Feb  4 13:08:29 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/minmax.cc: Include cmath, not oct-math.h.
+
+	* syscalls.cc (Fdup2): Convert stream to actual system file id.
+
+	* oct-stream.cc (octave_base_stream::fileno, octave_stream::fileno):
+	New functions.
+
+Tue Feb  3 00:24:44 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (exec_path): Append Vbin_dir to std_path.
+
+	* octave.cc (initialize_pathsearch): Set TEXMFDBS, not TEXMF.
+	Look for OCTAVE_DB_PATH in environment.
+	Simplify using Vdata_dir and Vlibexec_dir.
+
+	* defaults.h.in (Vdata_dir, Vlibexecdir): Declare new vars.
+	defaults.cc: Define them.
+	(set_default_data_dir, set_default_libexecdir): New functions.
+	(install_defaults): Call them.
+
+	* defaults.h.in (OCTAVE_LIBEXECDIR): Define.
+
+Mon Feb  2 02:43:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install, uninstall): Use $(octlibdir), not $(libdir).
+	Use mk-libdir-link.
+
+	* defaults.h.in (OCTAVE_OCTLIBDIR): Substitute value.
+	(Vlib_dir): Delete declaration.
+	* defaults.cc (Vlib_dir): Delete.
+	(set_default_lib_dir): Delete.
+	(install_defaults): Don't call set_default_lib_dir.
+	(set_default_info_prog): If oct_info_prog is empty, set default to
+	"info" -- we expect it to be somewhere in the user's path.
+
+	* defun.h (DEFCONST, DEFCONSTX): Eliminate inst_as_fcn and chg_fcn
+	args.  Always pass true for inst_as_fcn and 0 for chg_fcn to
+	DEFVAR when creating built-in values like `e' or `stderr' that can
+	be redefined.  Change all uses.
+
+	* help.cc (Ftype): Handle script files too.
+	(Fwhich): Likewise.
+
+Sat Jan 31 00:00:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-ch-mat.cc (octave_char_matrix::is_true): Make it work.
+	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::is_true):
+	Delete.
+
+	* load-save.cc (read_ascii_data): Allow strings of length 0.
+	If we don't find data on the first call, fail with error message.
+	(do_load): Pass count of items read to read_ascii_data.
+	Allow `load foo xyz' to work when foo contains only numbers.
+
+Fri Jan 30 23:46:42 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-str-mat.h (octave_char_matrix_str::all): Delete.
+	(octave_char_matrix_str::any): Delete.
+	* ov-ch-mat.h (octave_char_matrix::all, octave_char_matrix::any):
+	Call charMatrix::all, charMatrix::any.
+
+Thu Jan 29 16:25:46 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_mat_binary_data): Handle third digit of MOPT
+	as flag indicating row or column major ordering.
+
+Wed Jan 28 00:18:17 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/dassl.cc (lsode_option_table):
+	Add missing & to function names.
+	* DLD-FUNCTIONS/lsode.cc (lsode_option_table): Likewise.
+	* DLD-FUNCTIONS/quad.cc (quad_option_table): Likewise.
+
+	* Makefile.in (oct-gperf.h): Add -G option to gperf.
+
+	* load-save.cc (get_save_type): Add `UL' and `L' suffixes to large
+	constant values.  For LS_INT, use <= and >= for comparison.
+
+Mon Jan 26 13:17:59 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-usr-fcn.cc (Vmax_recursion_depth): New static variable.
+	(max_recursion_depth): New fucnction
+	(symbols_of_ov_usr_fcn): DEFVAR max_recursion_depth.
+	(octave_user_function::do_index_op): Check Vmax_recursion_depth.
+
+Thu Jan 22 13:45:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (make_dynamic_loader): Fix typo.
+
+Tue Jan 20 17:02:19 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fexist): If local symbol is undefined, check
+	global table.
+
+	* pr-output.cc (pr_max_internal): Initial value for result is
+	-DBL_MAX, not DBL_MIN.
+
+Thu Jan  8 11:54:33 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xpow.cc (elem_xpow): If second arg of pow is complex, make sure
+	first arg is also complex.
+
+	* symtab.cc (symbol_table::rename): Properly insert new item at
+	the front of the list to avoid losing the rest of the items.
+
+Thu Dec 11 23:30:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fclear): Increment index to skip -x arg.
+
+Tue Dec  9 02:45:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Don't forget Pix.h.
+
+	* BaseSLList.cc: Don't include nonstandard libg++ header files.
+
+Sun Nov 30 14:58:56 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc: Include cmath, not oct-math.
+	* sysdep.cc: Likewise.
+
+	* DLD-FUNCTIONS/bessel.cc: New file.
+	* Makefile.in (DLD_XSRC): Add it to the list.
+
+Thu Nov 27 23:28:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_string): Constructor for string class takes
+	(size_t, char) args, not (char, size_t).
+
+Wed Nov 26 00:39:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTAVE_LIBS): Include $(SPECIAL_MATH_LIB) just
+	ahead of -lcruft.
+
+Thu Nov 20 15:16:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Bind implicit_num_to_str_ok to 1.
+	* pt-mat.cc (Vimplicit_num_to_str_ok): New static variable.
+	(implicit_num_to_str_ok): New function.
+	(symbols_of_pt_mat): DEFVAR implicit_num_to_str_ok.
+	(tm_row_const::some_str): New data member.
+	(tm_row_const::some_strings_p): New function.
+	(tm_row_const::init): Set some_str.
+	(tm_const::some_str): New data member.
+	(tm_const::some_strings_p): New function.
+	(tm_const::init): Set some_str.
+	(tree_matrix::eval): If Vimplicit_num_to_str_ok is true and some
+	of the elements are strings, force a string conversion before
+	returning.
+
+	* parse.y (fold, finish_colon_expression, finish_matrix):
+	If an error occurs, return the original expression.
+	Use unwind_protect to restore error_state.
+
+	* ov-ch-mat.h (octave_char_matrix::convert_to_str): Result is
+	char_matrix_str, not just char_matrix.
+
+Wed Nov 19 02:05:40 1997  Mumit Khan  <khan@dhaka.xraylith.wisc.edu>
+
+	* DLD-FUNCTIONS/filter.cc: Don't include extern template decls if
+	CXX_NEW_FRIEND_TEMPLATE_DECL is defined.
+	* ov-cx-mat.cc: Likewise.
+	* ov-re-mat.cc: Likewise.
+	* ov-str-mat.cc: Likewise.
+
+	* ov-cx-mat.h (octave_complex_matrix::decrement,
+	octave_complex_matrix):	Use explicit Complex constructor.
+
+Wed Nov 19 00:08:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-decl.cc (tree_global_command::do_init): Initialize global
+	values to `[]'.  Only perform explicit initialization once.
+
+Tue Nov 18 04:27:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (Vfixed_point_format): New variable.
+	(fixed_point_format): New fucntion.
+	(symbols_of_pr_output): Add DEFVAR for fixed_point_format.
+	(set_real_matrix_format): Handle fixed point format
+	(set_complex_matrix_format): Handle fixed point format
+	(set_format): New arg, scale in Matrix, ComplexMatrix, Range versions.
+	(pr_scale_header): New function.
+	(octave_print_internal): Handle fixed point format in Matrix,
+	ComplexMatrix, and Range versions.
+	* octave.cc (maximum_braindamage): Set fixed_point_format to 1.0.
+
+	* utils.cc (do_string_escapes): Move here, from lex.l.
+	Arg is now const string& instead of char*.
+	Return new string object instead of modifying arg in place.
+	(Fdo_string_escapes): New function.
+	* lex.l (handle_string): Use new version of do_string_escapes.
+
+	* lex.l (Vbackslash_escapes): Delete.
+	(backslash_escapes): Delete.
+	(do_string_escapes): Undo previous change.
+	(eat_whitespace, eat_continuation): Undo previous change.
+	(handle_string): Undo previous change.
+	(symbols_of_lex): Undo previous change.
+	* octave.cc (maximum_braindamage): Undo previous change.
+
+Fri Nov 14 01:53:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (eval_string (const string&, bool, int&, int)): No
+	longer static.
+	* parse.h: Provide declaration.
+	* input.cc (get_user_input (const octave_value_list&, bool, int)):
+	New arg, nargout.  Pass it to eval_string.
+	(keyboard): Pass nargout = 0 to get_user_input.
+	(input): Pass nargout to get_user_input.
+
+	* input.cc (get_user_input (const octave_value_list&, bool)):
+	Return octave_value_list() if user enters `quit', `exit', or `return'.
+	If debugging, let eval_string handle the printing chores and
+	reset error_state before asking for more input.
+
+	* input.cc (Fkeyboard): Unconditionally turn on history here.
+
+	* lex.l (have_continuation, have_ellipsis_continuation): Declare
+	arg as bool, not int.  Change callers.
+
+	* lex.l (Vbackslash_escapes): New static variable.
+	(backslash_escapes): New function.
+	(do_string_escapes): Return immediately if ! Vbackslash_escapes.
+	(eat_whitespace, eat_continuation): Only call have_continuation if
+	Vbackslash_escapes.
+	(handle_string): Backslash is only special if Vbackslash_escapes.
+	(symbols_of_lex): Add DEFVAR for backslash_escapes.
+	* octave.cc (maximum_braindamage): Set backslash_escapes to 0.
+
+Thu Nov 13 16:20:40 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fexist): Also return 2 if NAME is a regular file
+	somewhere in the LOADPATH.
+
+	* data.cc (sumsq): Fix doc string.
+
+	* parse.y (Fsource): Call parse_fcn_file, not parse_and_execute.
+
+Tue Oct  7 16:51:01 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun-int.h (DEFINE_FUN_INSTALLER_FUN): Set installed to true
+	after installing the function.
+
+Thu Sep 25 10:17:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/filter.cc (Ffilter): Return second output value
+	even when called with only 3 arguments.
+
+Mon Sep 22 16:44:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/rand.cc (do_rand): Print error if first of two
+	args is a string but doesn't match "seed".
+	(Frand, Frandn): Fix doc string.
+
+Mon Aug 25 10:42:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (get_user_input): Return an empty string if the user
+	just types RET.
+
+Thu Jul 31 22:59:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l <TEXT_FCN>: Ensure that we handle words that begin with
+	single or double quotes as strings.
+
+Thu Jul 17 13:06:48 1997  Klaus Gebhardt  <gebhardt@crunch.ikp.physik.th-darmstadt.de>
+
+	* DLD-FUNCTIONS/rand.cc (Frand): Use F77_XFCN to call getsd,
+	setsd, setall, setcgn, dgenunf, and dgennor since they can call
+	XSTOPX.
+
+Mon Jul 14 12:54:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (octave_dynamic_loader::load_fcn_from_dot_oct_file):
+	If first attempt to load function fails, prepend and underscore
+	and try again.
+
+	* Makefile.in (install-inc): If defaults.h, oct-conf.h, or
+	oct-gperf.h don't exist in the current directory, look in $(srcdir).
+
+Mon Jul  7 21:14:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/qr.cc (Fqr): Correctly handle nargout == 0.
+
+Wed Jul  2 16:47:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* matherr.c: New file.  Move matherr function here.
+	* sysdep.cc: From here.
+	* Makefile.in (DIST_SRC): Add matherr.c to the list.
+
+	* error.cc (handle_message): Avoid bug in g++ snapshot.
+
+Thu Jun 26 22:04:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (file_in_path): Add default load path to PATH arg if
+	it begins or ends with a colon.
+
+Wed Jun 25 13:31:06 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-lvalue.h (octave_lvalue::struct_elt_ref): Ensure val is unique.
+
+Fri Jun 20 12:33:35 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (cmd_death_handler): New function.
+	(run_command_and_return_output): Insert pid of command in
+	octave_child_list along with pointer to cmd_death_handler so we
+	can get the exit status without having to block SIGCHLD.
+	(cleanup_iprocstream): Remove pid of command from octave_child_list.
+
+Sun Jun 15 16:11:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* OPERATORS/op-cs-s.cc (ldiv): Doh, v1 is complex, v2 is real.
+
+	* Makefile.in (DISTFILES): Add mkops to the list.
+	(dist): Correctly link files in DLD-FUNCTIONS, OPERATORS, and
+	TEMPLATE-INST subdirectories.
+
+Fri Jun  6 04:30:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/npsol.cc, DLD-FUNCTIONS/qpsol.cc,
+	DLD-FUNCTIONS/fsqp.cc: Delete.
+	* Makefile.in (DLD_XSRC): Remove them from the list.
+
+	* utils.cc (search_path_for_file): New arg, do_tilde_expansion.
+	If TRUE, perform tilde expansion on path before searching.
+	(file_in_path): Call search_path_for_file with do_tilde_expansion
+	set to false, since we've already performed tilde expansion on the
+	load path.
+
+	* defaults.cc (loadpath): Perform tilde expansion here.
+
+Thu Jun  5 01:42:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Make building of static library optional.
+	(liboctave.$(SHLEXT_VER)): Add $(SONAME_FLAGS) to command.
+
+	* dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference):
+	Call shl_findsym with type set to TYPE_UNDEFINED.
+
+	* Makefile.in (stamp-picdir): Delete.
+	(pic): New target.  Don't worry so much about creating pic
+	directory only when it is really needed.
+	(stamp-interp): Delete.
+	(libraries): New target.  Depend on shared library directly.
+
+Wed Jun  4 00:09:42 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (main): Call dir_path::set_program_name here.
+
+Tue Jun  3 16:47:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (symbol_out_of_date): Make it work again.
+
+	* parse.y (parse_and_execute): Move here from toplev.cc
+	(default_eval_print_flag): Likewise.
+	(safe_fclose): Likewise.
+	(eval_string): Likewise.
+	(Fsource): Likewise.
+	(Ffeval): Likewise.
+	(feval): Likewise.
+	(Feval): Likewise.
+	(symbols_of_parse): Define default_eval_print_flag here instead of
+	in varaibles.cc.
+	(looks_like_octave_copyright): Move here from variables.cc
+	(gobble_leading_whitespace): Likeiwse.
+	(is_function_file): Likewise.
+	(restore_input_stream): Likewise.
+	(parse_fcn_file): Likewise.
+	(load_fcn_from_file): Likewise.
+	(get_help_from_file): Likewise.
+
+	* toplev.cc (syms_of_toplev): Define argv, program_name, and
+	program_invocation_name here instead of in variables.cc.
+
+	* parse.h (line_editing): Move here from toplev.h.  Now bool, not int.
+	(reading_startup_message_printed) Likewise.
+	(input_from_startup_file): Likewise.
+	(input_from_command_line_file): Likewise.
+
+	* load-save.cc: Use bool instead of int where appropriate.
+
+	* input.h (enum echo_state): Move here from variables.h.
+	(Vecho_executing_commands): Likewise.  Now bool, not int.
+	* input.cc (echo_executing_commands): Move here from variables.cc.
+	(symbols_of_input): Define echo_executing_commands here instead of
+	in variables.cc.
+
+	* octave.cc (program_invocation_name): Don't define.
+	(intern_argv): Don't set program_invocation_name here.
+	(main): Call octave_env::set_program_name here, not in intern_argv.
+
+	* toplev.cc (quitting_gracefully): Move here from octave.h and
+	make static bool instead of extern int.
+
+	* error.cc (bind_global_error_variable, clear_global_error_variable):
+	Move here from variables.cc.
+	(symbols_of_error): Define error_text here instead of in variables.cc.
+
+	* pager.cc (write_to_diary_file): Now bool, not int.
+	(really_flush_to_pager): Likewise.
+ 	(flushing_to_pager): Likewise.
+	* sighandlers.h (can_interrupt): Likewise.
+	* error.h (buffer_error_messages): Likewise.
+	* oct-hist.h (input_from_tmp_history_file, Vsaving_history): Likewise.
+	* input.h (forced_interactive): Likewise.
+	(get_input_from_eval_string): Likeiwse.
+	(reading_script_file): Likeiwse.
+	(reading_fcn_file): Likeiwse.
+	(interactive): Likewise.
+
+	* unwind-prot.cc (saved_variable::saved_variable (bool *, bool)):
+	Set type_tag to boolean, not int.
+
+Mon Jun  2 00:40:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.h (Octave_builtin_fcn): Delete typedef.
+
+	* help.cc (make_name_list): Move here from variables.cc.
+	(keyword_help, names): Now static.
+	(struct help_list): Move declaration here from help.h.
+
+	* oct-hist.cc (Vhistory_file, Vhistory_size, Vsaving_history):
+	Move here from variables.cc.
+	(symbols_of_oct_hist): New function.
+
+	* version.h: Protect against multiple inclusion.
+
+	* defun.cc (check_version): New function.
+	* defun-int.h (DEFINE_FUN_INSTALLER_FUN): Use it.
+
+	* help.h, help.cc (additional_help_message): Now extern.
+	(operator_help): Now static.
+
+	* defun.cc (print_usage): Move here from help.cc
+	* DLD-FUNCTIONS/*.cc, data.cc, dirfns.cc, file-io.cc, input.cc,
+	load-save.cc, octave.cc, ov-list.cc, ov-typeinfo.cc,
+	ov-usr-fcn.cc, pager.cc, pr-output.cc, pt-plot.cc, strfns.cc,
+	syscalls.cc, sysdep.cc, utils.cc, toplev.cc:
+	Don't include help.h.
+
+	* TEMPLATE-INST/Array-sym.cc: New file.
+
+	* load-save.cc (do_load): Don't use ostream::form.
+	* pr-output.cc: Likewise, at least where it is easy to do so.
+	* oct-stream.cc: Ditto.
+
+	* symtab.h (symbol_record::symbol_def::rows): New function.
+	(symbol_record::symbol_def::columns): Ditto.
+	(symbol_record::symbol_def::type_name): Ditto.
+	(symbol_record::rows): Ditto
+	(symbol_record::columns): Ditto
+	(symbol_record::type_name): Ditto
+
+	* symtab.h, symtab.cc (symbol_record::hides_fcn): New function.
+	(symbol_record::hides_builtin): Ditto.
+	(symbol_record::print_symbol_info_line): Ditto.
+	(symbol_table::long_list): Delete.
+	(symbol_table::symbol_list): New function.
+	(symbol_table::maybe_list): Delete argc arg.
+	(symbol_table::name_list): Rename from symbol_table::list.
+	Change all callers.
+
+	* symtab.h, symtab.cc (class symbol_record_info): Delete.
+
+	* symtab.cc (matches_patterns): Use vector form of glob_match.
+
+Sun Jun  1 14:04:26 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-check.h, pt-check.cc: New files, for semantic checking of
+	parse trees.
+
+	* symtab.h (class symbol_def): Now nested in symbol_record class.
+	(enum TYPE): Move from symbol_def to symbol record class.  Change
+	all uses.
+
+	* symtab.h, symtab.cc (symbol_table::maybe_list): New function,
+	from variables.cc.  Change all uses.
+
+	* pt-idx.h (tree_identifier::lvalue_ok): New function.
+	* pt-id.h (tree_index_expression::lvalue_ok): Likewise.
+	* pt-indir.h (tree_indirect_ref::lvalue_ok): Likewise.
+
+	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_oct_obj): Delete.
+	* pt-walk.h (tree_walker::visit_oct_obj): Delete declaration.
+
+	* lex.h (class lexical_feedback): Delete maybe_screwed_again.
+	* lex.l (lexical_feedback::init): Don't set it.
+
+Fri May 30 16:07:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mappers.cc: Include <cfloat> here.
+
+Tue May 27 10:08:43 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (eval_string): Don't index tmp if it is empty.
+
+Sat May 24 00:18:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (valid_identifier): Move here and make static.
+	* symtab.h, symtab.cc (valid_identifier): Delete declaration and
+	definition.
+
+Fri May 23 22:54:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* symtab.h (symbol_def::symbol_def): Use initializer list instead
+	of calling init_state.
+	(symbol_def::init_state): Delete.
+
+	* symtab.cc (symbol_table::print_stats): New function.
+	* variables.cc (F__dump_symtab_info__): New function.
+
+	* symtab.h, symtab.cc (symbol_table::hash): Return masked value.
+	(symbol_table::table_size): New data member.
+	(symbol_table::symbol_table): Set size of table in constructor.
+	(HASH_TABLE_SIZE): Replace uses with table_size.
+	(HASH_MASK): Delete.
+	* variables.cc (initialize_symbol_tables): Set top-level and
+	global symbol table sizes here.
+
+Thu May 22 13:32:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc (octave_shl_load_dynamic_loader::resolve_reference):
+	Call shl_findsym with type set to TYPE_PROCEDURE.  Pass the
+	address of the pointer we want to define.
+
+Wed May 21 16:30:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/time.cc (extract_tm): Avoid memory leak in dealing
+	with time zone.
+
+	* Makefile.in (install-in): Use new mk-includedir-link macro.
+	(install-lib): Install in $octlibdir.  Use new mk-libdir-link macro.
+
+Tue May 20 01:24:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-list.cc (Flist): Rename from Fmake_list.
+
+Mon May 19 14:45:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (maximum_braindamage): Set default_eval_print_flag to 0.
+
+Sat May 17 16:32:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (set_default_editor): Default is now Emacs, not vi.
+
+Fri May 16 00:07:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-idx.cc (tree_index_expression::name): New function.
+
+	* pt.cc	(tree::str_print_code): New file, new convenience function.
+	* pt-arg-list.cc (tree_argument_list::get_arg_names): Use it.
+	* pt-assign.cc (tree_simple_assignment::rvalue): Likewise.
+	(tree_multi_assignment::rvalue): Likewise.
+
+	* pt-colon.h (tree_colon_expression::save_base): New data memmber.
+	(tree_colon_expression::preserve_base): New function.
+	* parse.y (finish_colon_expression): When converting to a simple
+	expression, be sure to delete the original colon expression but
+	not the base value.
+
+	* pt-mat.cc (tree_matrix::~tree_matrix): Actually do something.
+
+	* pt-all.h: New file.
+	* parse.y, lex.l, pt-pr-code.cc: Use it.
+
+	* pt.h: Rename from pt-base.h.
+
+	* All parse tree classes: Add private copy constructors and
+	assignment operators to prevent copying.
+
+	* pt-base.cc: Delete.
+
+	* unwind-prot.h, unwind-prot.cc: Make a bit more object-oriented.
+	Change all uses of unwind_protect stuff to match.
+
+	* pt-jump.h, pt-jump.cc (breaking, continuing, returning):
+	Make these flags static members of the corresponding class.
+	Change all uses.
+
+	* pt-assign.cc (tree_simple_assignment_expression::eval,
+	tree_multi_assignment_expression::eval): Clear lvalue index here.
+
+	* oct-lvalue.cc (octave_lvalue::assign): Don't clear index here.
+	* oct-lvalue.h (octave_lvalue::clear_index): New function.
+	(octave_lvalue::set_index): Rename from octave_lvalue::index.
+	Change all callers.
+
+Thu May 15 11:48:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-select.h, pt-select.cc (class tree_if_command_list,
+	class tree_if_clause, class tree_switch_case_list,
+	class tree_switch_case): Move here from pt-misc.h, pt-misc.cc.
+	* pt-decl.h, pt-decl.cc (class tree_decl_init_list,
+	class tree_decl_elt): Move here from pt-mist.h, pt-misc.cc
+
+	* pt-arg-list.h, pt-stmt.h: New files, extracted from pt-misc.h.
+	* pt-arg-list.cc, pt-stmt.cc: New files, extracted from pt-misc.cc.
+
+	* pt-decl.h, pt-except.h, pt-jump.h, pt-loop.h, pt-select.h:
+	New files, extraced from pt-cmd.h.
+	* pt-decl.cc, pt-except.cc, pt-jump.cc, pt-loop.cc, pt-select.cc:
+	New files, extraced from pt-cmd.cc.
+
+	* pt-unop.h, pt-binop.h, pt-colon.h, pt-idx.h, pt-assign.h:
+	New files, extracted from pt-exp.h
+	* pt-unop.cc, pt-binop.cc, pt-colon.cc, pt-idx.cc, pt-assign.cc:
+	New files, extracted from pt-exp.cc
+	* pt-exp.h, pt-exp.cc: Rename from pt-exp-base.h, pt-exp-base.cc.
+
+	* oct-lvalue.h: Rename from oct-var-ref.h.  Rename class from
+	octave_variable_reference to octave_lvalue.  Change all uses.
+	* oct-lvalue.cc: Rename from oct-var-ref.cc.
+
+	* variables.cc (bind_ans): Only bind ans and print result if value
+	is defined.
+
+	* defun.cc: New file.  Move functions for installing objects in
+	the symbol table here from variables.cc.
+
+	* oct-obj.h, oct-obj.cc: Add custom allocator, fwiw.
+
+	* toplev.cc (main_loop): Correctly increment command number.
+
+	* TEMPLATE-INST/SLList-tm.cc: Don't instantiate lists of pointers
+	to tree_matrix_row objects.
+	* TEMPLATE-INST/SLList-misc.cc: Do instantiate lists of pointers
+	to tree_argument_list objects.
+
+	* DLD-FUNCTIONS/dassl.cc: Update to use new octave_function
+	interface to user-supplied functions.
+	* DLD-FUNCTIONS/fsolve.cc: Likewise.
+	* DLD-FUNCTIONS/lsode.cc: Likewise.
+	* DLD-FUNCTIONS/npsol.cc: Likewise.
+	* DLD-FUNCTIONS/quad.cc: Likewise.
+
+	* dynamic-ld.h, dynamic-ld.cc (builtin_fcn_installer typedef):
+	Rename from builtin_fcn.
+	(octave_dynamic_loader::load_fcn_from_dot_oct_file):
+	Simplify by using new installer function defined by DEFUN_DLD.
+
+	* defun-dld.h (DEFUN_DLD): Use DEFINE_FUN_INSTALLER_FUN instead of
+	DEFINE_FUN_STRUCT_FUN.
+	* defun.h (DEFUN_MAPPER): Use DEFUN_MAPPER_INTERNAL.
+	* defun-int.h (DEFVAR_INTERNAL): Rename from DEFVAR_INT and move
+	here from defun.h.  Change all uses.
+	(DEFUN_MAPPER_INTERNAL): New macro.
+	(DEFINE_FUN_INSTALLER_FUN): New macro to define function that the
+	dynamic loader calls to do all the work of installing a new function.
+	(DEFINE_FUN_STRUCT_FUN): Delete.
+
+	* parse.y: Rewrite to handle more general expressions.
+	* lex.l: Corresponding changes.
+
+	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc: Cope with new parse tree
+	object structure.
+
+	* pt-misc.cc (class tree_for_command): Split into
+	tree_simple_for_command and tree_complex_for_command classes.
+
+	* pt-misc.h, pt-misc.cc (tree_statement::eval): Handle identifier
+	lookup and printing and binding ans here.
+	(tree_statement_list::eval): Simplify.
+	(tree_argument_list::all_elements_are_constant): New function.
+	(class tree_decl_elt): Now contains id and expr, not an assignment
+	expression.
+
+	* pt-exp-base.h pt-exp.h pt-id.h pt-indir.h pt-mat.h pt-const.h,
+	pt-exp-base.cc pt-exp.cc pt-id.cc pt-indir.cc pt-mat.cc pt-const.cc:
+	Replace eval functions with rvalue and lvalue functions.
+	Change all uses.
+	(lvalue_ok, rvalue_ok): New functions, for future compile-time
+	semantic checks.
+
+	* oct-var-ref.h (is_defined, is_map): New functions.
+
+	* pt-exp.h (class tree_oct_obj): Delete.
+
+	* variables.cc (extract_function, is_valid_function): Return
+	pointer to octave_function, not octave_symbol.
+	(link_to_global_variable): Rewrite.  Handle errors in
+	symbol_record::mark_as_linked_to_global.
+
+	* symtab.h, symtab.cc (class symbol_def, class symbol_record):
+	Symbols are now stored as octave_value objects only.
+
+	* ov.cc (install_types): Register function types here.
+	* ov-fcn.h, ov-fcn.cc, ov-builtin.h, ov-builtin.cc, ov-mapper.h,
+	ov-mapper.cc, ov-usr-fcn.h, ov-usr-fcn.cc: New classes for
+	functions as values.
+	* ov.h (class octave_value): Don't derive from octave_symbol.
+	* oct-fcn.h, oct-fcn.cc, oct-builtin.h, oct-builtin.cc,
+	oct-mapper.h, oct-mapper.cc, oct-usr-fcn.h, oct-usr-fcn.cc,
+	oct-sym.h, oct-sym.cc: Delete.
+
+Sun May 11 17:51:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (Ftype): Make it work again for functions.
+
+	* pt-pr-code.cc (tree_print_code::print_parens): New function.
+	Use it in other tree_print_code functions to handle printing all
+	the parens that we found when parsing the expression, not just one
+	pair.
+	* pt-exp-base.h (tree_expression::paren_count): Rename from
+	is_in_parens.
+	* parse.y (maybe_warn_assign_as_truth_value): Use new name.
+
+	* parse.y (constant): New non-terminal.
+	(simple_expr1): Use it.
+
+	* parse.y (make_unary_op): Delete.
+	(simple_expr1): Where appropriate, use make_prefix_op and
+	make_postfix_op instead of make_unary_op.  Allow increment and
+	decrement ops to work on expressions, not just identifiers.
+	(make_prefix_op, make_postfix_op): Arg is expression, not identifier.
+	Handle old unary_op cases too.
+	(fold (tree_unary_expression *)): Delete.
+	* pt-exp.h, pt-exp.cc (tree_prefix_expression::eval): Handle unary
+	minus and not here.
+	(tree_postfix_expression::eval): Likewise, for transpose and hermitian.
+	(class tree_prefix_expression, class tree_postfix_expression):
+	Derive from tree_unary_expression.  Delete identifier member.
+	Delete ident member function.
+	(tree_unary_expression): Don't handle evaluation here.
+	* pt-exp-base.h (mark_in_parens): No longer virtual. Return this.
+	(reference): New virtual function.
+	(class tree_expression): Don't handle expression type here.
+	* pt-mvr-base.h (tree_multi_val_ret::tree_multi_val_ret): Likewise.
+	* pt-mvr.h, pt-mvr.cc (tree_multi_assignment_expression): Likewise.
+	* pt-walk.h (visit_unary_expression): Delete declaration.
+	* pt-pr-code.h, pt-pr-code.cc (visit_unary_expression): Delete.
+	(visit_prefix_expression): Use operand(), not ident().
+	new, visit_postfix_expression):
+	* pt-id.h, pt-id.cc (increment, decrement): Delete.
+
+	* pt-misc.cc (tree_parameter_list::define_from_arg_vector): Get a
+	reference to each element and use the assignment operator instead
+	of tree_identifier::define.
+	* pt-id.h, pt-id.cc (tree_identifier::define): Delete versions
+	that take octave_value and octave_symbol args.
+
+Sat May 10 23:32:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-indir.h, pt-indir.cc (tree_indirect_reference::value): Delete.
+
+	* oct-var-ref.cc (octave_variable_ref::assign): Clear idx after
+	assignment.
+
+	* octave_value classes: Add is_constant, is_function, and
+	function_value functions.
+
+	* ov.h, ov.cc (assign): Return void, not reference to octave_value.
+	(do_index_op): Rename, from index.
+	(do_struct_elt_index_op): Rename, from struct_elt_val.
+	Add version that accepts index arg.
+	Change all uses and derived classes to match.
+	* pt-const.h (index): Delete.
+	* oct-var-ref.h, oct-var-ref.cc (value): Handle indexed structure
+	ops here too.
+
+Fri May  9 07:40:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-exp.cc (print_rhs_assign_val, symbols_of_pt_exp): New functions.
+	(Vprint_rhs_assign_val): New static variable.
+	(tree_simple_assignment_expression::eval): Use it to optionally
+	allow the rhs (which is the result) of an assignment to be printed
+	instead of the left.
+
+	* pt-exp.cc (tree_simple_assignment_expression::eval): Use new
+	octave_variabl_reference::index function to handle indexing.
+
+	* oct-var-ref.h, oct-var-ref.cc (idx): New data member.
+	(octave_variable_reference::index): Set it.
+	(octave_variable_reference::assign): Handle indexing here.
+	Delete version of this function htat takes index arg.
+
+	* variables.h (struct builtin_varaible): Delete.
+	* variables.cc (install_builtin_variable): Take all elts of
+	builtin_variable struct directly.
+	* defun.h (DEFVAR_INT): Call install_builtin_variable directly.
+
+	* symtab.h, defun-int.h: Don't include variables.h.
+
+	* symtab.h (symbol_record::sv_function): Move typedef here.
+	* variables.h: From here.
+
+	* oct-var-ref.h, oct-var-ref.cc: New files for
+	octave_variable_reference class, extracted from variables.h and
+	variables.cc
+	* Makefile.in: Add them to the appropriate lists.
+
+	* oct-obj.h (octave_value_list::empty): New function.
+
+	* variables.h (class octave_variable_reference):  Rewrite to work
+	as a proxy class to store a pointer to octave_value and,
+	optionally, the change function to call and the name of the
+	structure element we are referencing.  Handle assignment,
+	increment, decrement, and value operations.
+
+Thu May  8 23:40:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-re-mat.h, ov-re-mat.cc (struct_elt_ref, struct_elt_val,
+	assign_struct_elt): Provide functions for looking up and setting
+	matrix dimensions.
+
+	* symtab.cc (symbol_record::define): Don't call sv_fcn here.
+	Don't save and restore value here.
+	(symbol_record::define_builtin_var): Do call sv_fcn here.
+	(symbol_record::variable_reference): Don't make value unique here.
+	Return pointer to sv_fcn in octave_variable_reference.
+
+	* pt-misc.cc (tree_parameter_list::initialize_undefined_elements):
+	Simplify.
+
+	* pt-id.h, pt-id.cc (tree_identifier::reference): Return
+	octave_variable_reference, not octave_value&.
+	* symtab.h, symtab.cc (symbol_record::variable_reference): Ditto.
+	* pt-indir.h, pt-indir.cc (tree_indirect_ref::reference): Ditto.
+	Simplify too.
+
+	* pt-const.h (tree_constant::reference, tree_constant::value,
+	tree_constant::assign):  Delete unnecessary functions.
+	* pt-id.h, pt-id.cc (tree_identifier::assign): Ditto.
+
+	* pt-cmd.cc (tree_for_command::do_for_loop_once): Simplify.
+
+	* ov.h, ov.cc, ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc
+	(struct_elt_ref): New arg, octave_value* parent.
+	Allow deferred lookup.  Return octave_variable_reference, not
+	octave_value&.
+
+	* ov.h, ov.cc, ov-re-mat.h, ov-re-mat.cc (assign_struct_elt):
+	New virtual functions.
+
+	* ov.h, ov.cc (Vresize_on_range_error): Now static.
+
+	* pt-mvr.cc (tree_index_expression::eval): Delete redundant check
+	of error_state.
+
+Wed May  7 21:17:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (generate_completion): Rename from command_generator.
+	Use string objects instead of char*.
+	(generate_possible_completions): Let qsort also make matches unique.
+	(initialize_command_input): Register generate_completion with the
+	command_editor class.
+	(completion_matches): Simplify using generate_completion.
+
+	* pt-pr-code.cc (tree_print_code::visit_constant): For val, call
+	print_raw, not print.
+
+	* oct-usr-fcn.h (octave_user_function::argn_sr): New data member.
+	(octave_user_function::install_automatic_vars): Rename from
+	install_nargin_and_nargout.
+	(octave_user_function::bind_automatic_vars): Rename from
+	bind_nargin_and_nargout.
+	* oct-usr-fcn.cc (octave_user_function::eval): Extract arg names
+	from args vector and bind them to argn.
+	* oct-obj.h (octave_value_list::names): New data member.
+	* oct-obj.cc (octave_value_list::stash_name_tags): New function.
+	(octave_value_list::name_tags): Ditto.
+	* pt-const.h, pt-const.cc (tree_constant::print_raw): New function.
+	* pt-misc.h, pt-misc.cc (tree_argument_list::get_arg_names):
+	New function.
+	* pt-mvr.h, pt-mvr.cc (class index_expression): Cache arg names.
+	* toplev.cc (feval): Now static.  Handle arg names.
+
+	* mkops: Cope with moving files defining operators to OPERATORS
+	subdirectory.
+
+Tue May  6 00:48:59 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* DLD-FUNCTIONS/getgrent.cc: Use new octave_group class.
+	* DLD-FUNCTIONS/getpwent.cc: Use new octave_passwd class.
+
+	* syscalls.cc: Simplify by using new functions defined in
+	liboctave/oct-syscalls.cc.
+
+	* file-io.cc (Ftmpnam): Accept DIR and PREFIX args.
+
+Mon May  5 00:54:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-str-mat.cc (octave_char_matrix_str::print_name_tag): Print
+	empty strings on one line.
+
+	* DLD-FUNCTIONS, OPERATORS, and	TEMPLATE-INST: New subdirectories.
+	Move appropriate files to new directories.
+	* Makefile.in: Add DLD-FUNCTIONS, OPERATORS, and TEMPLATE-INST
+	directories to VPATH.  Fix rules to work with new directory
+	structure.
+
+Sun May  4 22:40:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	*  input.cc (initialize_command_input): Rename from
+	initialize_readline.
+	(gnu_readline, octave_gets, get_user_input): Simplify, return
+	string, not char *.
+
+	* Many of other files: Miscellaneous changes to go along with the
+	changes described in the liboctave/ChangeLog for May 4.  More code
+	moved from here to liboctave.
+
+Fri May  2 19:50:33 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathlen.h: Move to ../liboctave.
+
+Thu May  1 21:50:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (get_struct_elts): New fucntion.
+	(looks_like_struct, generate_struct_completions): Move here from
+	input.cc, rewrite, and make work again.
+
+Wed Apr 30 00:24:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-base.h, ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h,
+	ov-ch-mat.cc, ov-ch-mat.h, ov-complex.cc, ov-complex.h,
+	ov-cx-mat.cc, ov-cx-mat.h, ov-file.cc, ov-file.h, ov-list.cc,
+	ov-range.cc, ov-range.h, ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc,
+	ov-scalar.h, ov-str-mat.cc, ov-struct.cc, ov.h (scalar_value):
+	New function.  Same as double_value, but name is consistent with
+	octave_scalar class.
+
+	* op-fil-b.cc, op-fil-cm.cc, op-fil-lis.cc, op-fil-rec.cc,
+	op-fil-str.cc, op-fil-bm.cc, op-fil-cs.cc, op-fil-m.cc,
+	op-fil-s.cc: New files.
+
+	* ops.h (ASSIGNOPDECL, DEFASSIGNOP, DEFASSIGNOP_FN, CONVDECL,
+	DEFCONV, BINOPDECL, DEFBINOPX, DEFBINOP, DEFBINOP_OP, DEFBINOP_FN,
+	BINOP_NONCONFORMANT): New macros.
+	* op-b-b.cc, op-bm-bm.cc, op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc,
+	op-cm-s.cc, op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc,
+	op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc, op-s-cm.cc,
+	op-s-cs.cc, op-s-m.cc, op-s-s.cc, op-str-str.cc: Use them.
+
+	* Makefile.in (octave): Also depend on ops.o.
+
+	* builtins.h: Delete.
+	* octave.cc: Add extern declaration here.
+
+	* mappers.h: Delete.
+	* Makefile.in (INCLUDES): Delete from list.
+	* mkbuiltins: Add extern declaration in builtins.cc.
+
+	* mkops: New file.
+	* ops.cc: Delete.
+	* Makefile.in (SOURCES): Delete from the list.
+	(ops.cc): New target.
+	(OP_SOURCES): New list.  Move all op-*.cc files here from SOURCES.
+	Add $(OP_SOURCES) to SOURCES list.
+
+	* variables.cc (symbols_of_variables): No longer static.
+	* ov.cc (symbols_of_ov): Rename from symbols_of_value.
+
+	* ov-base.h: Delete declaration for install_base_type_conversions.
+	* op-b-b.h, op-bm-bm.h, op-cm-cm.h, op-cm-cs.h, op-cm-m.h,
+	op-cm-s.h, op-cs-cm.h, op-cs-cs.h, op-cs-m.h, op-cs-s.h,
+	op-m-cm.h, op-m-cs.h, op-m-m.h, op-m-s.h, op-s-cm.h, op-s-cs.h,
+	op-s-m.h, op-s-s.h, op-str-str.h: Delete.
+	* Makefile.in (INCLUDES): Delete them from the list.
+
+Tue Apr 29 22:27:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.h, variables.cc (install_builtin_variables): Delete.
+	* mkbuiltins: Also generate install_builtin_variables function.
+	* Makefile.in: Fix rule to call mkbuiltins with correct args.
+	(clean): Also delete def-files and var-files.
+	* defaults.h.in, dirfns.h, error.h, file-io.h, help.h, input.h,
+	lex.h, load-save.h, oct-usr-fcn.h, pager.h, parse.h, pr-output.cc,
+	pr-output.h, pt-mat.h, pt-misc.h, pt-plot.h, toplev.h:
+	Delete declarations of symbols_of_* functions.
+	* data.h, syscalls.h: Delete.
+
+	* pr-output.cc (octave_print_internal): Leave printing of final
+	new line up to the caller.
+
+	* ov.h, ov.cc (reset_indent_level, increment_indent_level,
+	decrement_indent_level, newline, indent, reset,
+	curr_print_indent_level, beginning_of_line):
+	New functions and static data to manage indent level for printing.
+	(print_as_scalar): Delete.
+	(print, print_with_name): Always require stream arg.
+	Change all callers.
+
+	* oct-stream.h (octave_stream::input_stream): Make publicly available.
+	(octave_stream::output_stream): Likewise.
+
+	* ov-base.h, ov-base.cc, ov.h, ov.cc, ov-file.h ov-base.h
+	(is_file, stream_value, stream_number): New functions.
+	* ov-file.h, ov-file.cc: New files for value class to manage files.
+	* file-io.cc (symbols_of_file_io): Define stdin, stdout, and
+	stderr as octve_file objects, not just integers.
+	(Ffopen, Fpopen): Return octave_file objects, not integer file ids.
+	* syscalls.cc (Fpipe): Likewise.
+	* oct-stream.h, oct-stream.cc (octave_stream_list::insert):
+	Return octave_file object, not integer file id.
+
+	* ov-base.cc, ov-bool-mat.cc, ov-bool.cc, ov-ch-mat.cc,
+	ov-complex.cc, ov-cx-mat.cc, ov-file.cc, ov-list.cc, ov-range.cc,
+	ov-re-mat.cc, ov-scalar.cc, ov-str-mat.cc, ov-struct.cc, ov.cc
+	(print_name_tag, print_raw): New functions.
+
+	* help.cc (Ftype): Don't cast symbol definition to tree_constant *.
+
+	* variables.cc (link_to_global_variable): Don't try to define
+	symbol with tree_constant objects.
+	(bind_ans): Call symbol_record::define directly and then
+	octave_value::print_with_name instead of creating a temporary
+	assignment expression.
+
+	* pt-pr-code.cc (tree_print_code::indent): Don't use ostream::form.
+
+	* pt-exp-base.h, pt-exp.h, pt-exp.cc (oper): Return string, not
+	char *.  Change all where necessary.
+
+Mon Apr 28 16:33:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value binary_op enum): Add lshift and rshift.
+	(octave_value assign_op enum): Add lshift_eq and rshift_eq.
+	* ov.cc (assign_op_as_string, binary_op_as_string): Include them.
+	* parse.y (LSHIFT_EQ RSHIFT_EQ LSHIFT RSHIFT): New tokens.
+	Add them to the precedence list.
+	(simple_expr): Add new operators.
+	(make_assign_op, make_binary_op): Handle new operators.
+	* lex.l: Recognize new operators.
+
+	* lex.l: Recognize them.
+
+Sun Apr 27 20:17:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-misc.cc (Vsilent_functions, silent_functions):
+	Move here from oct-usr-fcn.cc.
+	(symbols_of_pt_misc): New function.  DEFVAR silent_functions.
+	(tree_statement_list::eval): Handle Vsilent_functions here instead
+	of in octave_user_function::eval.
+	(tree_statement::eval): New functions.
+	(tree_statement_list::eval): Use them.
+	Change print flag arg to silent flag.  Change all callers.
+	* variables.cc (install_builtin_variables): Call symbols_of_pt_misc.
+	* toplev.cc (parse_and_execute): Delete print arg.  Change all callers.
+	(eval_string): Change print flag arg to silent flag.  Change callers.
+
+	* dynamic-ld.h, dynamic-ld.cc: Rewrite to use singleton class.
+	* variables.cc (load_fcn_from_file): Use new dynamic linking class.
+
+	* dynamic-ld.h (Octave_builtin_fcn): Delete typedef.
+	* dynamic-ld.cc: Simplify via the magic of function pointers.
+
+	* pt-fcn.h pt-fcn.cc pt-fvc.h pt-fvc.cc pt-fvc-base.h pt-fvc-base.cc:
+	Delete obsolete files.
+	* Makefile.in: Remove them from various lists.
+
+	* pt-walk.h (visit_octave_user_function): Rename from visit_function.
+	(visit_builtin): Delete.
+	* pt-pr-code.h, pt-pr-code.cc (visit_octave_user_function):
+	Rename from visit_function.
+	(visit_octave_user_function_header): Rename from visit_function_header.
+	(visit_octave_user_function_trailer): Rename from
+	visit_function_trailer.
+
+	* ov.h, ov.cc (eval): New functions.
+
+	* dassl.cc, fsolve.cc, lsode.cc, npsol.cc, qpsol.cc, quad.cc:
+	Declare user-defined functions as a pointer to an octave_symbol
+	object, not as a pointer to a tree_fvc object.
+
+	* symtab.h, symtab.cc: Use new octave_symbol class.
+	* variables.cc (install_builtin_function, install_builtin_mapper,
+	install_builtin_variable, install_builtin_variable_as_function):
+	Make work with new octave_symbol class and symbol table structure.
+
+	* variables.h: Delete declaration of builtin_function struct.
+	* defun-dld.h (DEFUN_DLD): Simplify.
+	* defun-int.h (DEFINE_FUN_STRUCT): Delete.
+	(DEFINE_FUN_STRUCT_FUN): Rewrite to not use static builtin_function
+	object.
+
+	* mappers.h: Delete declaration of builtin_mapper_function struct.
+	* mappers.cc: Declare wrapper functions static.
+	* defun.h (DEFUN_MAPPER): Simplify.
+
+	* oct-sym.h: New file.  Declare base class for Octave symbols.
+	* ov.h: Derive octave_value class from octave_symbol.
+	* oct-fcn.h, oct-fcn.cc: New files to declare and define
+	base class for functions.
+	* oct-builtin.h, oct-builtin.cc: New files to declare and define
+	class for built-in functions.
+	* oct-mapper.h, oct-mapper.cc: New files to declare and define
+	class for mapper functions.
+	* oct-usr-fcn.h, oct-usr-fcn.cc: New files to declare and define
+	base class for user-defined functions.
+	* Makefile.in: Add new files to appropriate lists.
+
+	* pt-id.h, pt-id.cc: Move tree_identifier class here.
+	* pt-fvc.h, pt-fvc.cc: From here.
+
+	* pt-indir.h, pt-indir.cc: Move tree_indirect_ref class here.
+	* pt-fvc.h, pt-fvc.cc: From here.
+
+Thu Apr 24 03:58:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (magic_colon): New nonterminal.
+	(arg_list): Simplify using magic_colon.
+
+	* lex.h (class lexical_feedback): Delete maybe_screwed field.
+	New field, parsed_function name.
+	* lex.l (lexical_feedback::init): Initialize it.
+	(handle_identifier): Don't return SCREW.  Handle switching
+	symbol table context properly for `function f ()' vs `function x ='.
+	(is_keyword): If looking at function keyword, don't set current
+	symbol table to point to the local table.
+	* parse.y (recover_from_parsing_function): New function.
+	(finish_function_def): Use identifier, not token.
+	Simplify parsing of functions.
+
+	* ov-list.h, ov-list.cc: New files to implement generic list type.
+	* ov.cc (list_indent): New global variable.
+	(increment_list_indent, decrement_list_indent): New functions.
+	(install_types): Register octave_list type.
+	* ov-base.cc (octave_base_value::is_list): New function.
+
+	* oct-sym.h: New file.
+	* ov.h (class octave_value): Derive from octave_symbol class.
+
+	* pt-const.h, pt-const.cc: Delete lots of old useless cruft.
+
+	* pt-exp.h, pt-exp.cc (tree_binary_expression): Use type codes for
+	operators from octave_value instead of repeating them here.
+
+	* pt-fvc-base.cc (tree_fvc::increment, tree_fvc::decrement): Delete.
+	* pt-fvc.cc (tree_identifier::increment): Get reference to value
+	and increment that instead of using virutal tree_fvc::increment
+	function.
+
+	* lex.l: Handle +=, -=, *=, /=, .+=, .-=, .*=, ./=, &=, and |= ops.
+	* parse.y (make_assign_op): Rename from make_simple_assignment and
+	handle different op types.
+	(simple_expr1): Do new ops.
+	* pt-misc.cc (initialize_undefined_elements): Pass op to assign.
+	* pt-cmd.cc (tree_for_command::do_for_command_once): Likewise.
+	* pt-fvc.cc (tree_identifier::assign): Pass op.
+	* pt-exp.cc (tree_simple_assignment_expression): Handle new ops.
+	* variables.cc (octave_variable_reference::assign): Likewise.
+	* ov.h (class octave_value): Likewise.
+	* ov.cc (octave_value::assign_op_as_string): New function.
+	(octave_value::assign, octave_value::convert_and_assign,
+	octave_value::try_assignment_with_conversion,
+	octave_value::try_assignment): Pass op.
+	* pt-pr-code.cc (tree_print_code::visit_simple_assignment_expression):
+	Use expr.oper() instead of printing "=".
+	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-m-m.cc,
+	op-m-s.cc, op-str-str.cc: Pass op to INSTALL_ASSIGNOP.
+	* ops.h (INSTALL_ASSIGNOP): Pass op.
+	* ov-typeinfo.cc (do_register_assign_op): Include op type in table.
+	(do_lookup_assign_op): Use op in lookup.
+
+	* ops.h (INSTALL_UNOP): Delete.
+
+	* input.cc (generate_struct_completions, looks_like_struct):
+	Disable, since they don't work now anyway.
+
+	* help.cc (Ftype): Work with octave_value instead of a pointer to
+	tree_constant.
+	* symtab.cc (symbol_record_info::symbol_record_info): Likewise.
+
+Tue Apr 22 22:59:55 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffprintf): If first arg is a string, assume FID = 1.
+
+Fri Apr 18 20:16:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.h, oct-obj.cc: Implement octave_value_list with
+	Array<octave_value> as a data member, not as a class derived from
+	Array<octave_value>.
+	(octave_value_list::length, octave_value_list::resize,
+	octave_value_list::prepend, octave_value_list::append,
+	octave_value_list::reverse): New functions.
+
+	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
+	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
+	op-s-cm.cc, op-s-m.cc: Use new bool ops from liboctave instead of
+	the macros defined in ops.h.
+
+Thu Apr 17 13:12:22 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (ABORT_PARSE): Handle forced_interactive the same as
+	interactive.
+
+Mon Apr 14 01:46:50 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (octave_read): Don't forget to free input buffer if it
+	exists and has zero length.
+	(gnu_readline): Free buf if fgets returns 0.
+
+Wed Apr  9 00:03:57 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time.cc (mk_tm_map): Only set zone field if HAVE_TM_ZONE or
+	HAVE_TZNAME are defined.
+
+Tue Apr  8 12:39:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time.cc (extract_tm): Set tm.tm_zone if HAVE_TM_ZONE is defined,
+	not if HAVE_TMZONE is defined.
+
+	* Makefile.in (%.oct : %.o): Use $(SH_LD), not $(CXX).
+
+Wed Apr  2 21:32:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc, dynamic-ld.h (init_dynamic_linker): Delete
+	function and declaration.
+	* octave.cc (main): Don't call it.
+
+Mon Mar 31 00:37:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-base-exp.h (tree_expression::eval): Give arg a default value.
+	* pt-const.h (tree_constant::eval): Likewise.
+	* pt-exp.h (tree_prefix_expression::eval, tree_colon_expression::eval,
+	tree_postfix_expression::eval, tree_unary_expression::eval,
+	tree_binary_expression::eval, tree_boolean_expression::eval,
+	tree_simple_assignment_expression::eval): Likewise.
+	* pt-fcn.h (tree_function::eval): Likewise.
+	* pt-fvc.h (tree_identifier::eval, tree_indirect_ref::eval,
+	tree_builtin::eval): Likewise.
+	* pt-mat.h (tree_matrix::eval): Likewise.
+	* pt-misc.h (tree_statement_list::eval): Likewise.
+	* pt-mvr-base.h (tree_multi_val_ret::eval): Likewise.
+	* pt-mvr.h (tree_oct_obj::eval, tree_index_expression::eval,
+	tree_multi_assignment_expression::eval): Likewise.
+	* dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, parse.y,
+	pt-cmd.cc, pt-exp-base.cc, pt-exp.cc, pt-fvc.cc, pt-mat.cc,
+	pt-misc.cc, pt-mvr.cc, pt-plot.cc, quad.cc, toplev.cc, variables.cc:
+	Change callers of eval() to use bool instead of int and to make
+	use of default argument value.
+
+	* toplev.h, toplev.cc (parse_and_execute, eval_string): Flag args
+	are now bool instead of int.
+
+	* symtab.h, symtab.cc: Use bool instead of int in more places.
+	* variables.h, variables.cc: Likewise.
+	* lex.h, lex.l: Likewise.
+	* parse.y: Likewise.
+	* help.cc, input.cc, lex.l, load-save.cc, parse.y, pt-fcn.cc:
+	Change callers of symbol_table::lookup to use bool instead of int,
+	and to make use of default arguments.
+
+Fri Mar 28 15:33:11 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (Vwarn_comma_in_declaration): Delete.
+	(symbols_of_parse): Delete DEFVAR for warn_comma_in_declaration.
+	(decl1): Don't allow commas in declarations.
+
+	* lsode.cc (struct LSODE_OPTIONS): Handle integer options.
+	(print_lsode_option_list, set_lsode_option, show_lsode_option): Ditto.
+	(lsode_option_table): Add element for step limit.
+	(lsode_user_jacobian): New function.
+	(Flsode): Allow function name arg to be a 2-element string array
+	specifying the function and jacobian function.
+
+	* variables.cc (get_global_value, set_global_value): New functions.
+
+Wed Mar 26 17:08:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	Implement static variable declaration:
+
+	* lex.l (is_keyword): Handle static.
+	* octave.gperf: Likewise.
+	* parse.y (Vwarn_comma_in_declaration): Rename from
+	Vwarn_comma_in_global_decl.
+	Handle new static command.
+	* pt-cmd.h, pt-cmd.cc (class tree_decl_command): New base class
+	for static and global declaration commands.
+	(class tree_global_command): Derive from tree_decl_command.
+	(class tree_static_command): New class, derived from tree_decl_command.
+	* pt-fvc.cc, pt-fvc.h (tree_identifier::mark_as_static): New function.
+	* pt-misc.h, pt-misc.h (class tree_decl_elt): Rename from tree_global.
+	(class tree_decl_init_list): Rename from tree_global_init_list.
+	* pt-pr-code.cc, pt-pr-code.h (tree_print_code::visit_decl_command):
+	Rename from visit_global_command.
+	(tree_print_code::visit_decl_elt): Rename from visit_global.
+	(tree_print_code::visit_decl_init_list): Rename from
+	visit_global_init_list.
+	* pt-walk.h (tree_walker::visit_decl_command): Rename from
+	visit_global_command.
+	(tree_walker::visit_decl_elt): Rename from visit_tree_global.
+	(tree_walker::visit_decl_init_list): Rename from
+	visit_global_init_list.
+	* variables.cc (link_to_global_variable): Trying to make a static
+	variable global is an error.
+	* SLList-misc.cc: Instantiate lists of pointers to tree_decl_elt
+	objects, not tree_global objects.
+	* symtab.h, symtab.cc (symbol_record::tagged_static): New field.
+	(symbol_record::mark_as_static, symbol_record::is_static):
+	New functions.
+	* symtab.cc (symbol_record::init_state): Initialize tagged_static.
+	(symbol_record::clear): Don't clear static variables.
+	* symtab.cc (push_context): Don't do anything for static variables.
+
+Tue Mar 25 17:17:17 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-bool-mat.cc, ov-bool-mat.h, ov-bool.cc, ov-bool.h: New files.
+
+	* defaults.cc (symbols_of_defaults): DEFCONST OCTAVE_HOME.
+
+	* toplev.cc (octave_config_info): Delete use of CXXLIBS.
+	* oct-conf.h.in: Ditto.
+
+	* octave.cc (maximum_braindamage): Don't bind prefer_zero_one_indexing.
+	* ov.h: Don't declare Vprefer_zero_one_indexing.
+	* ov.cc: Don't define Vprefer_zero_one_indexing.
+	(prefer_zero_one_indexing): Delete.
+	(symbols_of_value): Delete DEFVAR for prefer_zero_one_indexing.
+
+	* ov.h, ov.cc, ov-base.h, ov-base.cc: Add constructors and
+	extractors for bool and boolMatrix types.
+
+	* ov.cc (install_types): Register octave_bool and
+	octave_bool_matrix types.
+
+	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
+	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
+	op-s-cm.cc, op-s-m.cc, op-s-s.cc, ov-re-mat.cc:
+	Return boolMatrix instead of Matrix object.
+	* ops.h (BOOL_OP3, MX_MX_BOOL_OP): Likewise.
+
+	* op-b-b.h, op-b-b.cc, op-bm-bm.h, op-bm-bm.cc: New files.
+	* Makefile.in: Add them to the lists.
+	* ops.cc: Include header files here.
+	(install_ops): Call install_b_b_ops() and install_bm_bm_ops() here.
+
+	* variables.cc (symbols_of_variables): Don't rely on default
+	conversion from int to double for value returned from
+	default_history_size().
+
+	* pr-output.cc: Include cstdio.
+
+	* parse.y (param_list_end): Fix typo in last change.
+
+	* quad.cc (quad): Cast integer return values to double.
+	* npsol.cc (show_npsol_option): Likewise.
+	* qpsol.cc (show_qpsol_option): Likewise.
+	* file-io.cc (Fsprintf, Ffwrite): Likewise.
+
+Mon Mar 24 13:11:47 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-typeinfo.cc (typeinfo): If invoked with an argument, return
+	the type of the argument as a string.  Fix doc string.
+
+Thu Mar 20 14:47:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-oct-links (links_dir): Don't use -h option for grep.  It's
+	not needed since we are working on one file at a time anyway.
+
+Mon Mar 17 10:53:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (handle_identifier): When handling indirect_ref, set
+	lexer_flags.quote_is_transpose to 1 so that a.b' to work as
+	expected.
+
+	* parse.y (param_list_beg, param_list_end): New nonterminals.
+	(param_list, param_list1): Use them.
+
+Wed Mar 12 16:57:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): New target.
+
+Mon Mar 10 22:38:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): Delete .oct files too.
+
+	* toplev.cc (Vdefault_eval_print_flag): New static variable.
+	(eval_string): New arg, print.
+	(Feval): Pass Vdefault_eval_print_flag to eval_string.
+	(default_eval_print_flag): New function.
+	(symbols_of_toplev): New function.
+
+	* variables.cc (install_builtin_variables): Call it.
+
+	* pt-exp.h, pt-exp.cc (class tree_boolean_expression): Rename enum
+	fields `and' and `or' to `bool_and' and `bool_or'.
+	(tree_unary_expression): Rename enum field `not' to `unot'.
+	(class tree_binary_expression): Rename enum fields `and' and `or'
+	to `el_and' and `el_or'.
+	* parse.y: Change all uses.
+
+	* time.cc (extract_tm): Truncate field values instead of rounding.
+	(gmtime, localtime): Likewise, for timeval.
+
+	* ov.h (class octave_value): Delete unused variable freeptr.
+
+	* mappers.cc: Delete functions that are already in
+	liboctave/lo-mappers.cc.
+
+	* oct-strstrm.cc (octave_base_strstream::tell): Use const_cast,
+	not static_cast.
+
+	* help.cc (help_from_list): Add missing const qualifiers.
+	* help.h (struct help_list): Likewise.
+	* lex.l (match_any, plot_style_token): Likewise.
+	* load-save.cc (extract_keyword, ascii_save_type): Likewise.
+	* oct-hist.cc (mk_tmp_hist_file): Likewise.
+	* octave.cc (execute_startup_files): Likewise.
+	* octave.gperf (struct octave_kw): Likewise.
+	* pr-output.cc (pr_any_float): Likewise.
+	* pt-mvr.cc (tree_index_expression::eval_error): Likewise.
+	* pt-exp-base.h, pt-exp.h, pt-exp.cc: Likewise.
+	* parse.y: Likewise.
+
+Sun Mar  9 03:46:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-exp-base.h (tree_expression): Delete extra comma at end of list.
+
+	* dirfns.cc error.cc file-io.cc fsolve.cc input.cc load-save.cc
+	npsol.cc pt-fcn.cc qpsol.cc quad.cc syscalls.cc toplev.cc
+	variables.cc: Eliminate embedded newlines in string constants.
+
+	* Map.cc, data.cc, dirfns.cc, dynamic-ld.cc, file-io.cc,
+	fsolve.cc, getgrent.cc, getpwent.cc, getrusage.cc, help.cc,
+	input.cc, load-save.cc, mappers.cc, minmax.cc, npsol.cc,
+	oct-fstrm.cc, oct-procbuf.h, oct-stdstrm.cc, oct-stdstrm.h,
+	oct-stream.cc, oct-stream.h, oct-strstrm.cc, octave.cc,
+	ov-base.h, ov-range.cc, ov-typeinfo.cc, ov.cc, pr-output.cc,
+	pt-cmd.cc, pt-exp.cc, pt-fcn.cc, pt-fvc.cc, pt-mat.cc,
+	pt-misc.cc, pt-plot.cc, qpsol.cc, quad.cc, sort.cc, strfns.cc,
+	symtab.cc, syscalls.cc, sysdep.cc, time.cc, toplev.cc,
+	unwind-prot.cc, unwind-prot.h, variables.cc, xpow.cc:
+	Use `static_cast<T> (val)' instead of old C-style `(T) val' casts.
+
+Sat Mar  8 02:35:13 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_ascii_data, save_three_d): Where appropriate,
+	use bool instead of int.
+	(save_binary_data, save_mat_binary_data, save_ascii_data):
+	Print warning instead of error for wrong type arg.
+
+	* gripes.cc (gripe_wrong_type_arg): New arg, is_error.
+
+	* pt-plot.cc (save_in_tmp_file): Call save_ascii_data with bool
+	arg, not int.
+
+Fri Mar  7 00:56:16 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dassl.cc (show_dassl_option): For values that are determined
+	automatically, return a string instead of a magic value (-1.0).
+	* fsolve.cc (show_fsolve_option): Likewise.
+	* lsode.cc (show_lsode_option): Likewise.
+	* npsol.cc (show_npsol_option): Likewise.
+	* qpsol.cc (show_qpsol_option): Likewise.
+
+	* variables.cc (extract_function): New function.
+	* dassl.cc (Fdassl): Use it instead of is_valid_function.
+	* fsolve.cc (Ffsolve): Likewise.
+	* npsol.cc (Fnpsol): Likewise.
+	* qpsol.cc (Fqpsol): Likewise.
+	* quad.cc (Fquad): Likewise.
+
+Thu Mar  6 20:07:24 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (my_friendly_exit, octave_new_handler,
+	sigfpe_handler, sigpipe_handler): Don't all error() or warning().
+
+	* pager.cc (pager_death_handler): Don't try to clear pager, just
+	print message to cerr.
+	(do_sync): If the status of the pager is bad or it looks like it
+	is dead, restore the interrupt handler.
+
+	* load-save.cc (extract_keyword (istream&, char*, int&)):
+	Move declaration of buf inside loop, to avoid deleting its guts
+	and then trying to reuse it.
+	(extract_keyword (istream&, char*)): Likewise.
+
+Tue Mar  4 20:36:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-fcn.cc (tree_function::eval): Protect function from being
+	redefined while it is being evaluated.
+	(unprotect_function): New function, for use with unwind_protect stuff.
+	* pt-fcn.h (tree_function::symtab_entry): New data member.
+	(tree_function::init): Initialize it to 0.
+	(tree_function::stash_symtab_ptr): New function.
+	* parse.y (frob_function_def): Stash pointer to function's
+	symbol_record in the function definition.
+
+	* symtab.cc (symbol_record::read_only_error): New argument,
+	action.  Change all callers.
+	(symbol_record::rename): Don't allow read-only symbols to be renamed.
+
+	* variables.cc (Fexist): Don't let files with `.' in their names
+	confuse us.
+
+	* symtab.cc (valid_identifier (const string&)): New function.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Sat Mar  1 01:34:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-oct-links): New target.  Make links in build
+	directory too, so that the tests will work.
+
+	* quad.cc: If quad is defined, undefine it.
+
+	* octave.cc: If WITH_KPATHSEARCH is defined, don't define
+	program_invocation_name or program_invocation_short_name.
+
+	* strftime.c: Update to current version from FSF.
+	* time.cc (Fstrftime): Call strftime with buf = 0 to get buffer
+	size, then call again to actually format the time struct.
+
+Fri Feb 28 01:49:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	Implement switch statement:
+
+	* parse.y (Vwarn_variable_switch_label): New static variable.
+	(warn_variable_switch_label): New function.
+	(symbols_of_parse): Provide warn_variable_switch_label as Octave
+	variable here.
+	(make_switch_case, finish_switch_command): New functions.
+	(maybe_warn_variable_switch_label): New function.
+	(end_error): Handle endswitch.
+	(switch_command, case_list, case_list1, switch_case, default_case):
+	New nonterminals.
+	(command): Add switch_command here.
+	* lex.l	(is_keyword): Handle switch, case, otherwise, and endswitch.
+	* octave_gperf: Recognize switch, case, otherwise, and endswitch.
+	* token.h (end_tok_type): New item, switch_end.
+	* pt-cmd.cc (tree_switch_command): New class.
+	* pt-misc.cc (tree_switch_case, tree_switch_case_list): New classes.
+	* pt-pr-code.cc (tree_print_code::visit_switch_case,
+	tree_print_code::visit_switch_case_list,
+	tree_print_code::visit_switch_command): New functions.
+ 	* pt-walk.h (tree_walker::visit_switch_case,
+	tree_walker::visit_switch_case_list,
+	tree_walker::visit_switch_command): New pure virtual declarations.
+	Implement new switch statement.
+	* SLList-misc.cc: Instantiate lists of pointers to
+	tree_switch_case objects too.
+
+	* lex.h, lex.l, parse.y: Delete all references to lexer_flags::iffing.
+
+	* syswait.h: Include sys/wait.h on NeXT systems, but don't use the
+	WIFEXTED, WEXITSTATUS, and WIFSIGNALLED macros defined there.
+	Also define waitpid in terms of wait4.  From Rex A. Dieter
+	<rdieter@math.unl.edu>.
+
+Wed Feb 26 16:43:31 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_scanf): Don't report an
+	error if a conversion fails or we reach EOF.
+
+Tue Feb 25 22:21:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* time.cc (strftime): increase initial buffer size.
+
+Mon Feb 24 17:49:21 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-fvc.cc (tree_builtin::eval): Enable checking for max number
+	of arguments.
+
+	* error.cc (handle_message): Don't fail if args is empty.
+
+Sun Feb 23 22:42:52 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.h (lexical_feedback::looking_at_return_list): New field.
+	(lexical_feedback::looking_at_parameter_list): Ditto.
+	* lex.l (lexical_feedback::init): Initialize them.
+	(handle_identifier): Use them.
+	* parse.y: Likewise.
+
+Fri Feb 21 15:35:18 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: Require flex 2.5 or later (we really want 2.5.4 or later,
+	but there seems to be no good way to check the patchlevel).
+
+	* oct-stream.cc (octave_base_stream::oscanf): Instead of returning
+	an error, just quit processing after a conversion fails.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Wed Feb 19 10:30:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (octave_ignore_interrupts,
+	octave_catch_interrupts, octave_set_interrupt_handler):
+	Return old value, not pointer to static data.  Fix all uses.
+
+	* sighandlers.h (octave_interrupt_handler): Move declaration here.
+	* sighandlers.cc: From here.
+
+	* toplev.cc: Undo previous change.
+
+	* lex.l (handle_identifier): Allow commands like ls, save, etc. to
+	also be used as simple variable names.  Also make it possible to
+	use the normal function call syntax to invoke them.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (%.oct:%.o, %.oct:pic/%.o): Use $(SH_LDFLAGS) here.
+
+	* Version 2.0.3 released.
+
+Tue Feb 18 00:27:49 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (run_command_and_return_output):
+	Block SIGCHLD while running subprocess.
+	(cleanup_iprocstream): Unblock it here.
+
+	* sighandlers.h (BLOCK_SIGNAL, BLOCK_CHILD, UNBLOCK_CHILD): Move here.
+	* sighandlers.cc: From here.
+
+	* toplev.cc (system): Shift then mask exit status.
+
+	* help.cc (try_info): Shift first, then mask exit status.
+
+	* toplev.cc (octave_config_info): Handle option argument.
+
+Fri Feb 14 16:23:30 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_scanf): Don't forget to
+	check to see if the result matrix needs resizing!
+
+	* Makefile.in (bin-dist): Don't write empty strings to LIBRARIES.
+
+Thu Feb 13 03:02:08 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (stamp-prereq): Depend on stamp-picdir.
+	(all): Don't depend on stamp-prereq or stamp-picdir.
+	(stamp-tinst, stamp-interp, libtinst.a, liboctinterp.a):
+	Do depend on stamp-prereq.
+	(stamp-picdir): Silence noise about making pic.
+	(stamp-tinst, stamp-interp): Use $(SH_LD) $(SH_LDFLAGS) instead of
+	$(CXX) -shared.
+
+	* oct-conf.h.in: Reinstate RLD_FLAG.
+	* toplev.cc (octave_config_info): Likewise.
+
+	* data.cc (map_d_m, map_m_d, map_m_m): Rename from map.
+	(Fatan2): Use new function names.
+
+	* pt-fvc.cc (apply_mapper_fcn): Use member function map() instead
+	of friend function.
+
+	* gripes.cc (gripe_wrong_type_arg (const char*, const string&)):
+	New function.
+
+Wed Feb 12 17:27:53 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* syscalls.cc (symbols_of_syscalls): Add O_ASYNC and O_SYNC.
+
+Mon Feb 10 01:22:27 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Freaddir, Fmkdir, Frmdir, Frename):
+	Also return status and error message.
+
+	* syscalls.cc (Fdup2, Fexec, Ffork, Ffcntl, Funlink, Fmkfifo,
+	Fpipe, Fwaitpid): Also return error message.
+
+Sat Feb  8 17:16:09 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-exp.cc (tree_simple_assignment_expression::eval): Return
+	value of RHS, but (if printing) print complete value of LHS.
+
+	* pr-output.cc (octave_print_internal): Print a new line for empty
+	string matrices.
+
+Wed Feb  5 14:30:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (scanf_format_list::process_conversion): Accept
+	but don't actually use h, l, and L modifiers.  Always insert l
+	modifier for floating point conversions.
+
+Fri Jan 31 13:55:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.cc (do_sync): Always flush the cout stream after writing.
+
+Wed Jan 29 08:25:29 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc (exec_path): Don't include bin_dir in std_path.
+
+	* pager.cc (do_sync): Flush the cout stream after writing if
+	running in interactive or forced_interactive mode.
+
+	* mk-oct-links: Rename from mk-oct-links.in.
+	Don't use symbolic links.
+	* Makefile.in: Distribute mk-oct-links, not mk-oct-links.in
+	(mk-oct-links): Delete target.
+	(install-oct, bin-dist): Don't depend on mk-oct-links.
+	Run $(srcdir)/mk-oct-links, not ./mk-oct-links.
+
+	* qr.cc (qr): Doc fix.
+
+Tue Jan 28 10:48:28 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Create a relative symbolic link.
+	(install-bin): Create a relative symbolic link.
+
+Mon Jan 27 12:12:03 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+	* Makefile.in (CXXFLAGS_NO_PT_FLAGS): Rename from XALL_CXXFLAGS.
+	Substitute bsd_gcc_kluge_targets_frag.
+
+	* sysdep.cc (Fsleep): New function.
+	(Fusleep): New function.
+
+	* toplev.cc (octave_config_info): Don't include RLD_FLAG.
+	* oct-conf.h.in: Don't define RLD_FLAG
+
+Sun Jan 26 19:41:48 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (sigchld_handler): Block SIGCHLD while
+	sigchld_hander is running.
+
+Sat Jan 25 22:36:39 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (bin-dist): Update for 2.x.
+
+Fri Jan 24 10:05:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-oct-links.in: New arg, -p, to just print list of files to link.
+
+	* lex.l (handle_number): Convert `D' or `d' exponents to `e'
+	before scanning.
+
+Thu Jan 23 10:00:00 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-pr-code.h, pt-pr-code.cc (tree_print_code::visit_no_op_command):
+	New function.
+	* pt-cmd.h, pt-cmd.cc (tree_no_op_command): New class.
+	* parse.y (make_break_command, make_continue_command,
+	make_return_command): Where they don't really make sense, turn
+	these commands into no-ops.  Accept return and break if reading a
+	script file.
+	* toplev.cc (parse_and_execute): Handle return and break in script
+	files.  Quit executing commands if an error occurs when reading a
+	script file.  Set global_command to 0 after deleting it.
+	(main_loop): If not interactive or forced_interactive, handle
+	break and return, and quit executing commands if an error occurs.
+	Set global_command to 0 after deleting it.
+	* error.cc (Ferror): Doc fix.
+	* pt-walk.h (tree_walker): Add declaration for visit_no_op_command.
+
+Wed Jan 22 20:54:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (gnu_readline): If not using readline, flush
+	rl_outstream after printing prompt.
+	(octave_gets): Also call flush_octave_stdout() if
+	forced_interactive, not just if interactive.
+	(do_input_echo): If forced_interactive, only echo prompt and
+	command line if also reading a script file.
+
+Tue Jan 21 23:02:34 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* SLList.h: Include "BaseSLList.h", not <BaseSLList.h>.
+
+Mon Jan 20 11:11:12 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (token_stack): Don't declare static.
+	* pt-plot.cc (tmp_files): Likewise.
+	* toplev.cc (octave_atexit_functions): Likewise.
+	* unwind-prot.cc (unwind_protect_list): Likewise.
+
+	* ops.h (MX_MX_BOOL_OP): Correctly handle case of one or both
+	arguments being empty.  Change all callers.
+
+	* oct-stream.cc (printf_value_cache::looking_at_string):
+	Handle empty strings correctly now that they are 0x0.
+
+	* file-io.cc: Don't include "syswait.h" here.
+
+Sun Jan 19 22:38:45 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.h (octave_base_stream::seek): Declare offset arg as
+	streamoff, not streampos.
+	(octave_stream::seek): Likewise.
+	* oct-strstrm.h (octave_base_strstream::seek): Likewise.
+	* oct-stdstrm.h (octave_base_stdiostream::seek): Likewise.
+	* oct-iostrm.h (octave_base_iostream::seek): Likewise.
+	* oct-fstrm.h (octave_fstream::seek): Likewise.
+
+Fri Jan 17 18:13:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffflush): Handle stdout as a special case.
+
+	* oct-stream.cc (octave_stream_list::do_get_file_number):
+	Do the work for octave_stream::get_file_number.
+	(octave_stream_list::get_file_number): Convert to static function.
+
+Wed Jan  8 11:42:44 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* log.cc (sqrtm): For complex arg case, compute sqrt, not log.
+
+Tue Jan  7 00:16:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Mon Jan  6 00:00:07 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mat.cc (tm_row_const_rep::all_mt): New variable.
+	(tm_row_const::all_empty): New function.
+	(tm_row_const::tm_row_const_rep::init): Set all_mt here.
+	(tm_const::all_mt): New variable.
+	(tm_const::all_emtpy): New function.
+	(tm_const::init): Set all_mt here.
+	(tree_matrix::eval): Return an empty matrix if the list contains
+	only empty elements.  If it contains only empty strings, return an
+	empty string.
+
+Sun Jan  5 12:50:25 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ops.h (SC_MX_BOOL_OP, MX_SC_BOOL_OP): New arg, empty_result.
+	* op-cm-cm.cc, op-cm-cs.cc, op-cm-m.cc, op-cm-s.cc, op-cs-cm.cc,
+	op-cs-m.cc, op-m-cm.cc, op-m-cs.cc, op-m-m.cc, op-m-s.cc,
+	op-s-cm.cc, op-s-m.cc, op-str-str.cc: Change all uses of
+	SC_MX_BOOL_OP and MX_SC_BOOL_OP macros.  Return correct results
+	for empty matrix cases.
+
+	* pt-fcn.cc (tree_function::eval): If Vdefine_all_return_values is
+	true, initialize return values before evaluating function, for
+	compatibility with Matlab.
+
+	* oct-stream.cc (get_size): Correctly set size when arg is scalar.
+
+Thu Jan  2 12:40:10 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-oct): Quote $(OCT_FILES) in for loop to
+	avoid syntax error from ksh.
+
+	* pr-output.cc (octave_print_internal): Avoid unused parameter
+	warning from gcc.
+
+Thu Dec 19 12:13:42 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_base_stream::do_scanf):
+	Don't treat %l{e,f,g} differently from %{e,f,g}.
+	(octave_base_stream::do_oscanf): Likewise.
+
+	* sighandlers.cc (sigchld_handler): Fix typos.
+
+Wed Dec 18 20:17:23 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffgetl, Ffgets): Also return number of characters	read.
+
+	* ov-range.cc (octave_range::not): New function.
+	* ov-range.h (octave_range::uminus): New function.
+
+	* BaseSLList.cc: Include error.h.
+	(BaseSLList::error): Call ::error() to process error message.
+
+Fri Dec 13 02:38:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.cc (octave_value::convert_and_assign): Preserve lhs value if
+	assignment fails.
+
+Wed Dec 11 12:33:16 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (GPLOT_CMD_END): Don't put semicolons at the end of
+	each plot command; it causes trouble with gnuplot 3.5.
+
+Tue Dec 10 00:31:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+	* pr-output.cc (set_format_style): Don't try to access argv unless
+	argc > 1.
+
+	* SLList-expr.cc SLList-misc.cc SLList-plot.cc SLList-str.cc
+	SLList-tc.cc SLList-tm.cc SLList.h SLStack-i.cc SLStack-pc.cc
+	SLStack-str.cc SLStack-sym.cc SLStack-tok.cc SLStack-ue.cc
+	SLStack-ui.cc, pt-mat.cc: Include Stack.h, Stack.cc, SLStack.cc,
+	and SLList.cc as necessary.
+
+	* Stack.cc, SLStack.cc, SLList.cc: New files.
+	* Makefile.in (SOURCES): Add them to the list.
+
+Mon Dec  9 12:03:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-bin): Use $(EXE) suffix so install will
+	find the right file on cygwin32 systems.
+
+	* ov.h: Declare proper form of do_binary_op as friend to
+	octave_value class.
+
+Sat Dec  7 22:00:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (do_printf_conv, do_scanf_conv,
+	do_oscanf_num_conv, do_oscanf_str_conv): Convert to real
+	functions instead of CPP macros, using templates where necessary.
+	(do_oscanf_num_conv, do_oscanf_str_conv): Correctly handle
+	discarded values.
+
+Fri Dec  6 00:20:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.94.
+
+	* Map-*.cc, SLList-*.cc, SLStack-*.cc: Include config.h.
+
+	* ov.h: Don't include SLList.h.
+
+	* SLStack.cc: Delete.  Move everything to SLStack.h.
+
+	* BaseSLList.h, BaseSLList.cc: New files.  Split out the
+	non-template base class parts of SLList.
+
+	* Makefile.in (TEMPLATE_SRC): Delete.  Move files to SOURCES.
+	* Map.h, Map.cc: Add #pragma interface/implementation.
+	* SLStack.h, SLStack.cc: Add #pragma interface/implementation.
+
+	* SLList.h, SLList.cc: New files, from libg++, but with #pragma
+	interface/implementation.
+	* Makefile.in (SOURCES): Add SLList.cc.
+	(INCLUDES): Add SLList.h.
+
+Thu Dec  5 18:36:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc: Don't include sun-utils.h.
+
+Tue Dec  3 23:47:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* op-str-str.cc (eq, ne): Handle operations with scalars.
+
+Thu Nov 21 12:30:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-str-mat.h (octave_char_matrix_str): Provide transpose and
+	hermitian operators.
+	* ov-ch-mat.h (octave_char_matrix): Likewise.
+
+Wed Nov 20 00:35:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.h (struct octave_interrupt_handler): Provide
+	forward declaration here.
+	* sighandlers.cc (octave_interrupt_handler): New struct.
+	(octave_catch_interrupts): Rename from catch_interrupts.
+	(octave_ignore_interrupts, octave_set_interrupt_handler):
+	New functions.
+	* help.cc, oct-hist.cc, pager.cc, toplev.cc: Use new functions for
+	handling interrupts so that we can hide the details of whether or
+	not we have to deal with SIGBREAK.
+
+	* pt-plot.cc [! HAVE_POSIX_SIGNALS] (open_plot_stream):
+	Simply ignore and restore the interrupt handler here.
+
+	* sighandlers.cc (MAYBE_REINSTALL_SIGHANDLER): New macro.  Use it
+	instead of always checking MUST_REINSTALL_SIGHANDLERS everywhere.
+	(sigchld_handler): If octave_child_list is empty, wait for any
+	child, but don't hang, and don't collect status info.
+	[__EMX__] (sigchld_handler): Save and restore handlers for SIGINT,
+	SIGBREAK, and SIGCHLD.  Ignore them while waiting on children.
+	(install_signal_handlers): If SIGBREAK exists, handle it like SIGINT.
+
+	* toplev.cc [USE_READLINE] (clean_up_and_exit):
+	Call rl_deprep_terminal() to restore terminal settings.
+
+	* sysdep.cc [__EMX__ && OS2] (Fextproc): New command.
+	[__EMX__ && OS2] (FEXTPROC): Alias for Fextproc.
+
+	* Version 1.93.
+
+	* sysdep.cc (octave_chdir): [__EMX__]: Make copy of string before
+	converting to upper case.
+
+	* getgrent.cc (mk_gr_map): Only set the passwd field if
+	HAVE_GR_PASSWD is defined.
+
+Tue Nov 19 12:01:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc (OS2_init): New function.
+	[__EMX__] (sysdep_init): Call it.
+
+	* lex.l (plot_style_token): Add new plot styles for gnuplot 3.6.
+	* pt-plot.cc (subplot_style::columns_ok): Rename from
+	subplot_style::errorbars. Recognize more styles and do a better
+	job of diagnosing column number/style mismatches.
+
+	* sighandlers.cc (my_friendly_exit): If we are called twice, try
+	to remove the signal handler for SIGABRT and the call abort ().
+
+	* help.cc (Ftype): If a function is defined from a file and
+	transformed text has not been requested, just print the contents
+	of the file.
+
+	* parse.y (fold): New functions for constant folding for binary
+	and unary expressions.  Keep track of original text even when
+	transformations occur.
+	(make_binary_op, make_boolean_op, make_unary_op): Use them.
+	(finish_colon_expression, finish_matrix): Keep track of original
+	text even when transformations occur.
+
+	* help.cc (Ftype): Don't mess with Vps4.
+	Handle new option `-transformed'.
+
+	* pt-const.h, pt-const.cc (tree_constant::print):
+	New arg, pr_orig_text.
+
+	* pt-exp.h, pt-exp.cc (tree_colon_expression::is_range_constant):
+	Delete.
+
+	* pt-exp-base.h (tree_expression::original_text): New virtual function.
+	pt-exp-base.cc (tree_expression::original_text): Default version.
+
+	* pt-pr-code.h (tree_print_code::print_original_text,
+	tree_print_code::prefix): New fields.
+	* pt-pr-code.cc (tree_print_code::visit_constant): Pass
+	print_original_text to tree_constant::print().
+	(tree_print_code::indent): Use prefix instead of Vps4.
+	* pt-fcn.cc (tree_function::print_function_header,
+	tree_function::print_function_trailer): Pass Vps4 to
+	tree_print_code_constructor for prefix.
+	* pt-misc.cc (tree_statement::maybe_echo_code): Pass Vps4 to
+	tree_print_code_constructor for prefix.
+
+	* pt-mat.h, pt-mat.cc (tree_matrix::all_elements_are_constant):
+	Rename from is_matrix_constant.
+	(tree_matrix_row::all_elements_are_constant): Likewise.
+	Change all callers.
+
+Mon Nov 18 14:13:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-inc): Try harder to create the link from
+	include/octave to include/octave-VERSION.
+
+Sun Nov 17 14:14:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (parse.cc): Expect 13 shift/reduce conflicts.
+
+	* parse.y (set_stmt_print_flag): New function.
+	(sep_type): New member for bison %union declaration.
+	Simplify rules for statement lists keeping track of the type of
+	the first separator in the values associated with the
+	nonterminals for the separators.
+
+	* lex.l (handle_identifier): Set lexer_flags.doing_set if the
+	token is "gset", not "set".
+
+Sat Nov 16 21:41:26 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (parse.cc, lex.cc): Add special rules for these files.
+	Delete pattern rules for .y and .l files.
+
+Fri Nov 15 13:48:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc: Put semicolons at the ends of all plot commands.
+
+	* defaults.cc (subst_octave_home): Start subsequent searchs from
+	the end of the replaced text.
+
+	* pr-output.cc (pr_any_float): Kluge for SCO systems.
+
+	* pr-output.cc (pr_any_float, pr_complex): Don't declare inline.
+
+	* mappers.cc: Include lo-ieee.h, for isinf and isnan on SCO
+	systems.
+
+Thu Nov 14 00:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (Fgset, Fgshow): New commands.
+	(Fshow): Print warning and call gshow.
+	(Fset): Print warning and call gset.
+
+	* variables.cc (parse_fcn_file): Add unwind-protect for file
+	pointer, so the file is always closed.
+	(get_help_from_file): Likewise.
+	* toplev.cc (parse_and_execute): Likewise.
+
+	* Makefile.in (install-oct): Depend on mk-oct-links.
+	(mk-oct-links): New target.
+
+	* Version 1.92.
+
+Wed Nov 13 11:13:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sighandlers.cc (sys_siglist): [__EMX__]: Add definitions.
+
+	* octave.cc (execute_startup_files): Allow init file name ot be
+	specified by an environment variable.
+
+	* dirfns.cc (make_absolute): [__EMX__]: Path is already absolute
+	if it begins with any character followed by a colon.
+
+	* load-save.cc (read_mat_ascii_matrix, get_lines_and_columns,
+	get_complete_line): New functions, for reading headless text files.
+	(load_save_format): Add LS_MAT_ASCII, for headless text files.
+	(do_load): Handle LS_MAT_ASCII files.
+	Thanks to Mel Melchner <mjm@research.att.com> for initial version
+	of this code.
+
+	* sysdep.cc: Conditionally include ieeefp.h.
+	(BSD_init, SCO_init): New functions.
+	(sysdep_init): Conditionally call them here.
+
+Tue Nov 12 00:14:56 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc (open_plot_stream): Don't block SIGCHLD.
+
+	* load-save.cc (read_binary_data): When reading string arrays, be
+	sure to create an octave_char_matrix_str object, not just an
+	octave_char_matrix object.
+	(read_ascii_data): Likewise.
+
+Mon Nov 11 22:52:58 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_binary_data): Don't forget teminating NUL for
+	string that we plan to insert.
+	(read_ascii_data): Likewise.
+
+Sun Nov 10 16:58:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Ffnmatch): New function.
+
+	* octave.cc (intern_argv): Use new string_vector constructor.
+
+	* ov-str-mat.cc (octave_char_matrix_str::all_strings): Have
+	charMatrix::row_as_string() strip trailing whitespace.
+
+	* dirfns.cc (Fglob): new function.
+
+	* sysdep.cc (oct_tilde_expand): Provide version that works on
+	string vectors too.
+	(Ftilde_expand): Work on string vector args.
+
+	* load-save.cc (save_binary_data): Call char_matrix_value() to
+	extract charMatrix from octave_value object, not all_strings().
+	(save_ascii_data): Likewise.
+	* pt-mat.cc (tree_matrix::eval): Likewise.
+
+	* ov.h (octave_value::all_strings): Return string_vector, not
+	charMatrix.
+	* ov-base.cc (octave_base_value::all_strings): Likewise.
+	* ov-str-mat.h, ov-str-mat.cc (octave_char_matrix_str::all_strings):
+	Likewise.
+
+Fri Nov  8 09:54:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defaults.cc, dynamic-ld.cc, fn-cache.cc, help.cc, oct-hist.cc,
+	octave.cc, pager.cc, pt-fcn.cc, toplev.cc, utils.cc, variables.cc,
+	lex.l: Change #include "" to #include <> for defaults.h,
+	oct-conf.h, oct-gperf.h, y.tab.h, and version.h, to avoid getting
+	them from $srcdir when we really want the version from the build
+	directory.  (Maybe this should be done for all the include files,
+	not just those that are auto-generated?  Hmm.)
+
+	* defaults.h.in (CXXLIB_LIST, CXXLIB_PATH, FLIB_LIST, FLIB_PATH):
+	Delete.
+
+	* Makefile.in (install-oct): Use $(INSTALL_PROGRAM) for .oct files.
+
+Thu Nov  7 07:59:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (gobble_leading_white_space): New arg, update_pos.
+	* (is_function_file): Don't update file position information here.
+
+	* Version 1.91.
+
+	* pt-fvc.cc (tree_indirect_ref::reference): If the lhs object is
+	not a map, convert it to one.
+
+	* ov-typeinfo.h (init_tab_sz): New static member.
+
+	* ov-struct.cc, ov-struct.h: Add hooks for custom memory management.
+	* ov-scalar.cc, ov-scalar.h: Likewise.
+	* ov-re-mat.cc, ov-re-mat.h: Likewise.
+	* ov-range.cc, ov-range.h: Likewise.
+	* ov-cx-mat.cc, ov-cx-mat.h: Likewise.
+	* ov-complex.cc, ov-complex.h: Likewise.
+	* ov-ch-mat.cc, ov-ch-mat.h: Likewise.
+
+Wed Nov  6 12:32:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.cc (do_sync): Don't call clear_external_pager() here.
+
+	* pt-const.h (tree_constant::allocator) New static member.
+	(tree_constant::operator new, tree_constant::operator delete):
+	Implement with custom allocator.
+
+	* syscalls.cc (Fgetgid, Fgetegid): New functions.
+
+	* sighandlers.cc (sigchld_handler): If necessary, reinstall
+	handler after call to waitpid().
+
+	* pager.cc (pager_death_handler): Don't use warning() to print
+	message.
+
+	* getgrent.cc: New file.
+	* Makefile.in (DLD_SRC): Add it.
+
+	* ov.cc (octave_value::print_with_name): Call is_map() instead of
+	print_as_structure().
+	* ov-struct.cc (octave_struct::print): Likewise.
+
+	* ov.h, ov.cc, pt-const.h: Delete force_numeric(), make_numeric(),
+	convert_to_matrix_type(), print_as_structure() member functions.
+
+	* variables.cc (is_function_file): Call gobble_leading_whitespace
+	here to strip all leading whitespace and comments.
+	(parse_fcn_file): If reading a function file, call
+	gobble_leading_whitespace again after resetting parser state to
+	grab help text.
+
+Tue Nov  5 13:00:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* syscalls.cc (Fgeteuid, Fgetuid): New functions.
+
+	* getpwent.cc: Use gripe_not_supported from gripes.cc, instead of
+	local gripe_not_implemented function.
+
+	* input.cc, sysdep.cc, variables.cc: Only include readline.h and
+	history.h if USE_READLINE is defined.
+
+	* help.cc: Make it compile without warnings even if USE_GNU_INFO
+	is not defined.
+
+	* sighandlers.h (octave_child_list): Don't define
+	HAVE_POSIX_SIGNALS HERE.
+
+	* sighandlers.cc (SIGHANDLER_RETURN): New macro.
+	(generic_sig_handler, sigchld_handler, sigfpe_handler,
+	sigint_handler, sigpipe_handler):  Use it.
+	(sigchld_handler, sigfpe_handler, sigint_handler, sigpipe_handler):
+	Only reinstall signal handler if MUST_REINSTALL_SIGHANDLER is defined.
+
+Sun Nov  3 00:45:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc (tree_constant::print): Just call val.print().
+	* ov-base.cc, ov-ch-mat.cc, ov-colon.cc, ov-complex.cc,
+	ov-cx-mat.cc, ov-range.cc, ov-re-mat.cc, ov-scalar.cc,
+	ov-str-mat.cc, ov-struct.cc ov-va-args.cc, ov.cc (print):
+	Handle pr_as_read_syntax arg.
+
+	* defaults.cc (subst_octave_home): Search for prefix repeatedly in
+	retval, not s.
+
+	* gripes.h: Make declaration of gripes_not_supported match
+	definition.
+
+	* mk-oct-links.in: In sed command, match "DEFUN_DLD *( *", not
+	"DEFUN_DLD_BUILTIN *( *".
+
+	* chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc, expm.cc, fft.cc,
+	fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc, getpwent.cc,
+	getrusage.cc, givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc,
+	log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc,
+	qpsol.cc, qr.cc, quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc,
+	svd.cc, syl.cc, time.cc: Change all uses of DEFUN_DLD_BUILTIN to
+	be just DEFUN_DLD.
+
+	* defun-dld.h: Eliminate DEFUN_DLD_BUILTIN.
+
+	* syswait.h: Use #ifdef HAVE_SYS_WAIT_H, not #if HAVE_SYS_WAIT_H
+	to decide whether to include sys/wait.h.
+
+	* pt-exp-base.h (tree_expression): Declare oper() here as a
+	virtual member function.
+
+	* pt-pr-code.cc (tree_print_code::visit_constant): Check for
+	string before checking for char_matrix.
+
+	* ov-ch-mat.cc (octave_char_matrix::print): Supply correct number
+	of args to octave_print_internal().
+
+Sat Nov  2 20:44:55 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ftmpnam): Rename from Foctave_temp_file_name.
+
+	* Makefile.in (DLD_SRC): Move time.cc and getrusage.cc here from
+	SOURCES.  Add getpwent.cc.
+
+	* getrusage.cc: Rename from resource.cc.  Make getrusage a
+	loadable function.
+
+	* time.cc: Rename from timefns.cc.  Make time functions loadable.
+
+	* getpwent.cc: New file.
+
+Wed Oct 30 01:06:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+	* ov-range.cc (octave_range::convert_to_str): New function.
+
+	* ov-str-mat.h (octave_char_matrix_str::char_matrix_value):
+	Delete function.  Already handled by octave_char_matrix class.
+
+	* ov-ch-mat.h (octave_char_matrix::convert_to_str): New function.
+
+	* pager.cc (Fmore): Set page_screen_output to 1.0 or 0.0, not
+	"true" or "false".
+
+	* ov-ch-mat.cc, ov-struct.cc, ov-struct.h, pr-output.cc,
+	pt-cmd.cc, pt-const.cc, pt-const.h, pt-fcn.cc, pt-fvc-base.cc,
+	pt-fvc-base.h, pt-fvc.cc, pt-fvc.h, rand.cc, sighandlers.cc,
+	variables.cc, variables.h: Delete unused code.
+
+	* octave.cc: Only include pwd.h if HAVE_PWD_H.
+
+	* oct-strstrm.h: Include <string>, not <string.h>.
+
+	* defaults.cc, dirfns.cc, file-io.cc, help.cc, input.cc,
+ 	oct-hist.cc, oct-procbuf.cc, oct-procbuf.h, octave.cc, pager.h,
+ 	procstream.h, pt-misc.cc, pt-plot.cc, sighandlers.cc, strftime.c,
+ 	syscalls.cc, sysdep.cc, syswait.h, toplev.cc, utils.cc,
+ 	variables.cc: Only include sys/types.h if HAVE_SYS_TYPES_H.
+
+	* error.h (panic): Use GCC_ATTR_NORETURN macro, not NORETURN.
+	* toplev.h (clean_up_and_exit): Likewise.
+	* utils.h (jump_to_top_level): Likewise.
+
+	* derfaults.h.in, defaults.cc (local_arch_lib_dir): New variable.
+	* defaults.cc (set_default_local_arch_lib_dir): New function.
+	(install_defaults): Call it.
+	(exec_path): Use Vlocal_arch_lib_dir here.
+	* toplev.cc (octave_config_info): Add localarchlibdir to structure.
+
+Tue Oct 29 15:54:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-oct): Don't do anything if $(OCT_FILES) is
+	empty.
+
+	* ov-range.cc (octave_range::index): New Function.
+	(octave_range::all, octave_range::any, octave_range::is_true):
+	Make these functions work.
+
+	* ov.cc (octave_value::try_assignment_with_conversion): Remove
+	left over debugging print statements.
+
+Mon Oct 28 10:49:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* strftime.c: Add missing #endif for previous change.
+
+Sun Oct 27 14:06:44 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-hist.cc (do_history): Rewite option parsing to avoid
+	(probably bogus) errors from g++ on cygwin32 system.
+
+	* strftime.c: Use autoconf macros TIME_WITH_SYS_TIME and
+	HAVE_SYS_TIME_H to decide which time.h files to include.
+
+	* oct-stream.h, oct-stream.cc (octave_stream::error,
+	octave_base_stream::error): Rename errno => err_num.
+
+Sat Oct 26 10:40:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-hist.cc (do_history): Move declaration of file inside
+	conditional.
+
+	* defun.h (DEFVAR_INT): Set eternal flag with (svc_fcn != 0)
+	instead of (sv_fcn ? 1 : 0)
+
+Fri Oct 25 01:10:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov-ch-mat.h (octave_char_matrix::any): Return 0.0 instead of false.
+	(octave_char_matrix::all): Likewise.
+
+	* input.cc (Fecho): When binding value of echo_executing_commands,
+	cast ECHO_* to double.
+
+	* sighandlers.cc (octave_child_list::do_remove): Delete unused
+	variable `enlarge'.
+
+	* pt-const.h (tree_constant::tree_constant (const tree_constant&)):
+	Don't pass arg to tree_fvc constructor.
+
+	* resource.cc (getrusage): [HAVE_GETRUSAGE && RUSAGE_TIMES_ONLY]:
+	Only fill in time values.
+
+Thu Oct 24 20:37:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y: Comment out the %expect declaration so byacc can
+	compile this file.
+	(if_cmd_list): Add missing semicolon.
+	Include <cstdlib> for getenv if using byacc.
+
+	* ov.h: Move typedefs outside of octave_value class scope to avoid
+	problem with cygwin32 beta16 compiler.
+
+Fri Oct 18 13:44:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::index): Undo previous change.
+	* ov.cc (octave_value constructors): Call maybe_mutate() in most
+	cases.
+
+	* ov-complex.cc (octave_complex::index): Avoid implicit type
+	conversion back to scalar type.
+	* ov-scalar.cc (octave_scalar::index): Likewise.
+
+	* ov.h (octave_value::index): Call maybe_mutate() on retval before
+	returning it.
+
+Wed Oct 16 12:00:11 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* ov.h (octave_value::struct_elt_val): New optional arg, silent.
+	* ov-base.h, ov-base.cc, ov-struct.h, ov-struct.cc: Likewise, but
+	for the derived classes the arg is required.
+
+	* data.cc (Fstruct_contains): Require arguments to be struct and
+	string, respectively.  Call octave_value::struct_elt_val with
+	silent flag set.
+
+	* pt-mat.cc (tm_row_const::tm_row_const_rep::eval_error,
+	tm_row_const::tm_row_const_rep::eval_warning): New functions.
+	(tm_row_const::tm_row_const (const tree_matrix_row&): Use them to
+	give better error messages.
+
+	* pt-fvc.cc (tree_identifier::eval): Avoid dereferencing null
+	object_to_eval.
+
+Tue Oct 15 11:35:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* op-cs-cm.cc, op-cs-cs.cc, op-cs-m.cc, op-cs-s.cc
+	(complex_matrix_conv): New functions.
+	Install preferred assignment conversion and widening ops.
+
+	* op-s-cm.cc, op-s-cs.cc (complex_matrix_conv): New functions.
+	Install preferred assignment conversion and widening ops.
+
+	* op-s-m.cc, op-s-s.cc (matrix_conv): New functions.
+	Install preferred assignment conversion and widening ops.
+
+	* ov.cc (octave_value::try_assignment_with_conversion,
+	octave_value::convert_and_assign, octave_value::try_assignment):
+	New functions.
+	(octave_value::assign): Use them to implement twisted logic for
+	type conversions in assigments.
+
+	* pt-const.h (tree_constant::maybe_mutate): New function.
+	* ov.h (octave_value::maybe_mutate): New function.
+	(octave_value::try_narrowing_conversion): New function.
+	Use just one typedef for widening_op_fcn and numeric_conv_fcn.
+	Change all uses.
+	* ov-base.h, ov-complex.h, ov-complex.cc, ov-cx-mat.h,
+	ov-cx-mat.cc, ov-range.h, ov-range.cc, ov-re-mat.h, ov-re-mat.cc,
+	Provide derived class versions of try try_narrowing_conversion().
+
+	* pr-output.cc (octave_print_internal): Don't bother handing off
+	to scalar/real versions, even when it would seem appropriate.
+
+	* symtab.cc (symbol_def::define (tree_constant *)): Call
+	maybe_mutate on constants here.
+
+Mon Oct 14 11:05:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-fvc.cc (tree_identifier::eval): If retval is undefined and
+	the object to eval is a constant, print	error message.
+
+	* Makefile (distclean): Remove *.oct too.
+
+	* defun-int.h: Include variables.h here.
+
+Sun Oct 13 10:52:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (print_symbol_info_line): Never print negative
+	diminsions.
+
+	* symtab.h (octave_symbol_record_info): Store const_type as string.
+	(octave_symbol_record_info::init): Delete.  Fix constructors.
+	(octave_symbol_record_info::type_name): Handle const_type as string.
+
+	* octave.cc (maximum_braindamage): Replace "true" with 1.0 and
+	"false" with 0.0 in calls to bind_builtin_variable().
+	Include sun-utils.h here.
+	(intern_argv): Also bind __argv__.
+
+Sat Oct 12 13:40:21 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean): Also delete mk-oct-links.
+
+Fri Oct 11 13:13:13 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	Changes for Octave's new type system:
+
+	* arith-ops.cc: Delete.
+	* pt-const.h, pt-const.cc: Massive changes.  Most functionality
+	moved to ov.h, ov.cc, and derived classes.
+
+	* variables.h, variables.cc (octave_variable_reference): New class
+	for getting references to variables and structure elements used in
+	assignments or value contexts.
+
+	* symtab.h, symtab.cc (symbol_record::define (const octave_value&),
+	symbol_record::variable_value, symbol_record::variable_reference):
+	New functions.
+	(symbol_record_info::type_name): Rename from type_as_string.
+
+	* pt-fvc-base.h, pt-fvc-base.cc (tree_fvc::increment,
+	tree_fvc::decrement): New functions to replace
+	tree_fvc::bump_value.
+	#if 0 assign and lookup_map_element functions.
+
+	* pt-mvr.cc (tree_multi_assignment_expression::eval):
+	Generated RHS value is now a tree_constant.
+
+	* pt-exp.h, pt-exp.cc (tree_boolean_expression): New class.
+	(tree_unary_expression, tree_binary_expression,
+	tree_boolean_expression): Move codes here from tree_expression.
+	(tree_simple_assignment_expression): Cope with changes to way of
+	doing assignments.
+
+	* pt-exp-base.h, pt-exp-base.cc (enum type): Delete codes for
+	unary and binary ops.
+	(tree_expression::expression_type): Delete.
+	(tree_expression::is_logically_true): Hand off to
+	octave_value::is_true to do real work.
+
+	* pr-output.h, pr-output.cc (any_element_is_inf_or_nan,
+	all_elements_are_ints): Delete.  Call member new functions for
+	these operations.
+	(free_format, plus_format, bank_format, hex_format,
+	compact_format, print_e, print_big_e): Use bool, not int.
+	(octave_print_internal): Hand off to scalar/real versions when
+	appropriate.
+
+	* octave.cc (main): Call initialize_types() and install_ops().
+	(verbose_usage): Add WWW address to output.
+
+	* parse.y (indirect_ref): Handle by making a tree instead of a
+	list using new version of tree_indirect_ref class.
+
+	* parse.y (make_boolean_op): New function.  Use it instead of
+	make_binary_op to create trees for && and || ops.
+	(make_binary_op): Codes come from tree_binary_expression now,
+	instead of tree_expression.
+	(make_unary_op): Codes come from tree_unary_expression now,
+	instead of tree_expression.
+	(make_boolean_op): Codes come from tree_boolean_expression.
+
+	 *parse.y (tree_constant_type): Change type to tree_constant* from
+	octave_value*, and rename from octave_value_type.  Change uses.
+
+	* defun.h (DEFVAR_INT): Pass octave_value not pointer to
+	octave_value for defn when creating builtin_variable.
+
+	* gripes.h, gripes.cc (gripe_invalid_conversion): Args are
+	strings, not char*.
+	(gripe_implicit_conversion, gripe_divide_by_zero): New extern
+	gripe functions.
+
+	* mkbuiltins: For each file, create a separate static function to
+	install builtins, then create another single extern function to
+	call all of them.
+
+	* pt-fcn.cc (tree_function::bind_nargin_and_nargout):
+	Just pass doubles and let symbol_record::define handle creating
+	new value.
+
+	* pt-pr-code.cc, pt-pr-code.h (visit_constant): Renamed from
+	visit_octave_value.
+	(visit_unary_expression): Use tree_expression::is_prefix_op()
+	instead of switch on op types.
+
+	* pt-walk.h (visit_constant): Renamed from visit_octave_value.
+
+	* pt-misc.cc (initialize_undefined_elements): Get reference to
+	tmp, then assign.
+	* pt-cmd.cc (do_for_loop_once): Likewise, for loop identifier.
+
+	* input.cc (generate_struct_completions, looks_like_struct): Cast
+	tmp_fvc to tree_constant*, not octave_value*.
+	(get_user_input): Call print() on retval, not eval(1).
+
+	* help.cc (Ftype): Cast defn to tree_constant*, not octave_value*.
+
+	* balance.cc: Fix docstring.
+
+	* dassl.cc, fsolve.cc, load-save.cc, lsode.cc, npsol.cc, qpsol.cc,
+	quad.cc:
+	Include pt-fvc.h.
+
+	* data.cc (Fstruct_contains): call octave_value::struct_elt_val,
+	not octave_value::lookup_map_element.
+
+	* dirfns.cc (Fcd): Pass directory name as string directly to
+	bind_builtin_variable instead of creating new octave_value.
+
+	* toplev.cc: Include pt-fvc.h and lo-mappers.h
+
+	* data.cc, error.cc, file-io.cc, load-save.cc, pager.cc,
+	pt-mat.cc, pt-plot.cc, syscalls.cc, toplev.cc:
+	Include variables.h.
+
+	* Array-tc.cc, Map-tc.cc, SLList-misc.cc SLList-tc.cc, data.cc,
+	defaults.cc, dynamic-ld.cc, error.cc, gripes.cc, lex.l, octave.cc,
+	oct-map.h, oct-map.cc, oct-obj.h, pt-cmd.cc, pt-exp.cc, pt-fcn.cc,
+	pt-fvc-base.cc, pt-mat.cc, pt-misc.cc, pt-mvr-base.cc, pt-mvr.h,
+	resource.cc, strfns.cc, sysdep.cc, timefns.cc, toplev.cc:
+	Include ov.h instead of pt-const.h.
+
+	* xpow.cc (any_element_is_negative): Delete.
+	(xpow and elem_xpow functions): Check conformance here.
+
+	* xdiv.cc (mx_leftdiv_conform, mx_div_conform):
+	Now template-based, taking Matrices instead of dimensions as args.
+	Change all callers.
+
+	* op-cm-cm.cc, op-cm-cm.h, op-cm-cs.cc, op-cm-cs.h, op-cm-m.cc,
+ 	op-cm-m.h, op-cm-s.cc, op-cm-s.h, op-cs-cm.cc, op-cs-cm.h,
+ 	op-cs-cs.cc, op-cs-cs.h, op-cs-m.cc, op-cs-m.h, op-cs-s.cc,
+ 	op-cs-s.h, op-m-cm.cc, op-m-cm.h, op-m-cs.cc, op-m-cs.h, op-m-m.cc,
+	op-m-m.h, op-m-s.cc, op-m-s.h, op-s-cm.cc, op-s-cm.h, op-s-cs.cc,
+ 	op-s-cs.h, op-s-m.cc, op-s-m.h, op-s-s.cc, op-s-s.h,
+ 	op-str-str.cc, op-str-str.h, ops.cc, ops.h, ov-base.cc, ov-base.h,
+ 	ov-ch-mat.cc, ov-ch-mat.h, ov-colon.cc, ov-colon.h, ov-complex.cc,
+ 	ov-complex.h, ov-cx-mat.cc, ov-cx-mat.h, ov-range.cc, ov-range.h,
+ 	ov-re-mat.cc, ov-re-mat.h, ov-scalar.cc, ov-scalar.h, ov-str-mat.cc,
+	ov-str-mat.h, ov-struct.cc, ov-struct.h, ov-typeinfo.cc,
+ 	ov-typeinfo.h, ov-va-args.cc, ov-va-args.h, ov.cc, ov.h:
+ 	New files for Octave's new type system.
+	* Makefile.in: Add them to the appropriate lists.
+
+Sat Sep 14 21:58:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mkbuiltins: Use .df instead of .def.
+	Write one function for each .df file, then call them
+	all in install_builtin_functions().
+	* Makefile.in: Handle .df instead of .def.
+
+	* balance.cc (balance): Fix typo in doc string.
+
+Wed Aug 28 21:01:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (verbose_usage): Include WWW address and bug-octave
+	mailing list address.
+
+Tue Aug 20 17:41:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: Only define pattern rules for making .oct files if
+	OCTAVE_LITE is true.
+	Only add pic/ to $(TI_OBJ) if $(SHARED_LIBS) is true.
+	(stamp-picdir): Only create a pic subdirectory if SHARED_LIBS or
+	OCTAVE_LITE is true AND CPICFLAG or CXXPICFLAG is not empty.
+
+	* minmax.cc (Fmin, Fmax): Deal with changes to Matrix class
+	min/max methods.
+
+Thu Jul 25 01:42:38 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (generate_possible_completions): Force the names to be
+	unique.
+
+	* load-save.cc (read_mat_binary_data): Expect to read terminating
+	NUL character in the variable name.
+	(save_mat_binary_data): Likewise, save it here.
+
+Wed Jul 24 05:08:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lsode.cc (Flsode): Don't set the return value if an error
+	occurred during integration.
+	* dassl.cc (Fdassl): Likewise.
+
+	* file-io.cc (symbols_of_file_io): Redefine values of SEEK_SET,
+	SEEK_CUR, and SEEK_END for Matlab compatibility.
+	* oct-stream.cc (seek): Check for compatible values of ORIGIN arg.
+	Also handle "bof", "cof", and "eof".
+
+Fri Jul 19 15:24:36 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc: When creating octave_value_reps from ComplexMatrix
+	values, check to see if all the elements are actually real.
+
+Tue Jul 16 10:53:42 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (decode_prompt_string): Swap meanings of \h and \H.
+
+Mon Jul 15 16:01:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (run_command_and_return_output): Renamed from do_system.
+	(Fsystem): Make `system ("emacs")' work as one would expect.
+
+Sun Jul 14 17:34:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (Ffopen, Ffread, Ffwrite): Update doc strings,
+	correctly handle default architecture and precision args.
+
+	* load-save.cc (mopt_digit_to_float_format): Rename from
+	get_floating_point_format.
+	(float_format_to_mopt_digit): New function.
+
+	* oct-stream.cc (octave_base_stream::read, octave_base_stream::write):
+	Simplify by calling Matrix::read and Matrix::write to do real work
+	of reading, writing, and format conversion.
+
+	* oct-stream.h (octave_base_stream): Move data_type enum to
+	liboctave/data-conv.h.  Use float_format from
+	liboctave/mach-info.h instead of arch_type enum.
+
+	* sysdep.h, sysdep.cc (octave_words_big_endian, ten_little_endians):
+ 	Delete.  Now part of oct_mach_info class in liboctave.
+
+Tue Jul  9 11:18:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* arith-ops.cc, balance.cc, dassl.cc, data.cc, filter.cc, find.cc,
+	fsolve.cc, load-save.cc, log.cc, lsode.cc, minmax.cc, npsol.cc,
+	oct-obj.cc, oct-stream.cc, pr-output.cc, pt-cmd.cc, pt-const.cc,
+	pt-fvc.cc, pt-plot.cc, quad.cc, rand.cc, sighandlers.cc, sort.cc,
+	syscalls.cc, unwind-prot.cc, xdiv.cc, xpow.cc:
+	When indexing arrays, use operator() instead of elem() so that
+	bounds checking can be done consistently.
+
+Mon Jun 24 02:13:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-oct): Use INSTALL_PROGRAM, instead of
+	INSTALL_DATA for installing shared libraries.
+
+	* lex.l (grab_help_text): Ignore all initial comment characters,
+	not just the first.
+	* variables.cc (gobble_leading_white_space): Likewise.
+
+Sat Jun 22 22:43:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.h, input.cc (octave_completion_matches_called): New varaible.
+	(Fcompletion_matches): Set it to true on a successful call.
+	* toplev.cc (main_loop): If octave_completion_matches_called is
+	true, don't increment current_command_number.
+
+Thu Jun 13 03:52:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (is_mapper_function_name,
+	is_builtin_function_name): New functions.
+	(Fdocument): Use them.
+	Define as regular function, not a text style function.
+
+Thu Jun  6 00:09:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-plot.cc: Handle new built-in variable `gnuplot_has_frames'.
+
+Wed Jun  5 14:45:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (decode_prompt_string): \h now means the whole host
+	name and \H is the host name up to the first `.'.
+
+Thu May 30 23:41:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* fn-cache.cc (octave_fcn_file_name_cache::do_list): Always
+	recompute the lists of function files instead of trying to cache
+	them.
+
+Tue May 28 12:05:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (warn_old_style_preference): New function.
+	(check_preference): Use it.
+
+	* fn-cache.h: Include <ctime> here.
+
+Fri May 24 00:57:14 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (completion_matches): Don't return empty string_vectors.
+
+	* octave.cc (long_opts): Add braindead.
+
+Thu May 23 01:49:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (gnu_readline): New optional arg, force_readline.
+	(get_user_input): Use it.
+
+	* pt-const.cc (OCT_VAL_REP::assign): If converting the rhs to a
+	numeric value, convert a copy, not the actual object.
+	(OCT_VAL_REP::do_index): Prevent s([]) from resulting in a string
+	with zero rows.
+
+	* mappers.cc: Handle toascii here.
+	* strfns.cc: Not here.
+
+	* mappers.cc: Handle tolower and toupper here.
+	* mappers.h: Rename can_return_complex_for_real to flag and
+	overload meaning for ch_mapper.
+	* pt-fvc.cc (apply_mapper_fcn): Handle overloaded meaning.
+
+	* syscalls.cc (stat): Return 3 values instead of just 1.
+	(lstat): Likewise.
+
+Wed May 22 02:34:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc (OCT_VAL_REP::make_numeric): For string to number
+	conversions, correctly set type tag before calling force_numeric.
+	(do_binary_op): Force string to number conversion if both args are
+	strings and we are doing some sort of comparison operation.
+
+	* Makefile.in (stamp-tinst, stamp-interp): Use SH_TERMLIBS and
+	SH_LIBS instead of TERMLIBS and LIBS.
+
+	* pt-const.cc (do_unary_op): Add special case to handle
+	transposing strings.
+
+	* pt-mat.cc (Vstring_fill_char): New variable.
+	(symbols_of_pt_mat): DEFVAR it.
+
+	* input.cc (generate_struct_completions,
+	generate_possible_completions):	Return string_vector, not char **.
+	Change all callers.
+
+	* pt-const.cc (lookup_map_element): Use substr() correctly.
+
+Tue May 21 21:37:17 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+
+	* octave.cc: New args --no-site-file and --no-init-file.  Delete
+	--ignore-init-file.  The flag --norc (-f) implies both
+	--no-site-file and --no-init-file.
+
+Fri May 17 01:54:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (Fcompletion_matches): New function.
+
+	* utils.cc (get_fcn_file_names): Delete.
+	* help.cc (simple_help): Use new file name cache instead of
+	calling get_fcn_file_names.
+	* variables.cc (make_name_list): Likewise.
+
+	* fn-cache.h, fn-cache.cc, Map-fnc.cc: New files.
+	* Makefile.in: Add them to the lists.
+
+	* Makefile.in (uninstall): Install in octincludedir, not includedir.
+
+	* pt-plot.h: Include <csignal> here.
+
+Thu May 16 10:52:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (octave_stream::oscanf, octave_base_stream::oscanf,
+ 	octave_base_stream::do_oscanf): New functions for backward
+	compatibility with older versions of Octave.
+	(scanf_format_elt, scanf_format_list): Keep track of width specifier.
+	* file-io.cc (Fscanf): New function.
+	(Fscanf, Ffscanf, Fsscanf): Handle compatibility arg.
+
+Wed May 15 01:00:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-stream.cc (do_scanf): If doing '%c' conversion, unset
+	ios::skipws on input stream.
+
+	* sighandlers.h, sighandlers.cc (octave_child, octave_child_list):
+	New classes for keeping track of the child processes we create.
+	(sigchld_handler): Check in octave_child_list to see if there is
+	anything we can do for the child that died.
+	* pager.cc: Register child pager process.
+	* pt-plot.cc: Likewise, for the plotter.
+	* Array-oc.cc: New file
+	* Makefile.in (TI_SRC): Add it to the list.
+
+	* pager.cc (do_sync): Don't check error_state.
+	(flushing_output_to_pager): New static variable.
+	(flush_octave_stdout): Use it to avoid doing anything if already
+	flushing output.
+
+	* sighandlers.cc (sigchld_handler): Call warning instead of
+	writing directly to cerr.
+	(sigpipe_handler): Call warning instead of message.
+
+	* octave.cc (main): Call install_signal_handlers,
+	initialize_file_io, initialize_symbol_tables, and install_builtins
+	before parsing command line options.
+
+	* user-prefs.h, user-prefs.cc: Delete.
+
+	* utils.cc (check_preference): Move here.
+	* user-prefs.cc: From here.
+
+	* defaults.cc: New file.  Move initialization stuff from
+	variables.cc.  Move DEFVARS for EDITOR, EXEC_PATH, LOADPATH,
+	IMAGEPATH, and OCTAVE_VERSION here.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	INFO_FILE and INFO_PROGRAM.
+	* help.cc: Move all of that here.
+	(symbols_of_help): Add DEFVARS for INFO_FILE and INFO_PROGRAM.
+
+Tue May 14 00:23:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.cc (do_sync): Be more defensive about sending stuff to the
+	external pager.
+	* sighandlers.cc (sigchld_handler): For now, only wait for
+	octave_pager_pid.  Don't call error().  Do set octave_pager_pid to
+	-1 if the pager process no longer exists.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	PWD.
+	* dirfns.cc: Move all of that here.
+	(symbols_of_dirfns): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	default_save_format and save_precision.
+	* load-save.cc: Move all of that here.
+	(symbols_of_load_save): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	warn_divide_by_zero.
+	* arith-ops.cc: Move all of that here.
+	(symbols_of_arith_ops): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* mappers.cc: Add wrappers for ctype is* functions so that they
+	will work on systems that only define them as macros.
+
+Mon May 13 00:27:08 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	suppress_verbose_help_message.
+	* help.cc: Move all of that here.
+	(symbols_of_help): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	treat_neg_dim_as_zero.
+	* pt-const.cc: Move all of that here.
+
+	* pager.cc (octave_pager_stream::do_sync): Don't return early if
+	not interactive.
+
+	* data.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* data.cc (symbols_of_data): New function.  Move definition of I,
+	Inf, J, NaN, e, eps, i, inf, j, nan, pi, realmin, and realmax here.
+	* variables.cc: From here.
+	(install_builtin_variables): Call symbols_of_data.
+
+	* file-io.cc (symbols_of_file_io): New function.  Move definition
+	of SEEK_CUR, SEEK_END, SEEK_SET, stdin, stdout, stderr here.
+	* variables.cc: From here.
+	(install_builtin_variables): Call symbols_of_file_io.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	do_fortran_indexing, implicit_str_to_num_ok,
+	ok_to_lose_imaginary_part, prefer_column_vectors,
+	prefer_zero_one_indexing, print_answer_id_name,
+	propagate_empty_matrices, resize_on_range_error, and
+	struct_levels_to_print.
+	* pt-const.cc: Move all of that here.
+	(symbols_of_pt_const): New function.
+	* variables.cc (install_builtin_variables): Call it.
+	* pt-fvc.cc (tree_identifier::assign): Use Vresize_on_range_error
+	instead of user_pref.resize_on_range_error here.
+	* load-save.cc (save_mat_binary_data): Use Vimplicit_str_to_num_ok
+	instead of user_pref.implicit_str_to_num_ok here.
+	* utils.cc (empty_arg): Use Vpropagate_empty_matrices instead of
+	user_pref.propagate_empty_matrices here.
+	* pt-exp-base.cc (tree_expression::is_logically_true): Likewise..
+
+	* pt-fcn.cc (symbols_of_pt_fcn): Also move DEFVAR for
+	default_return_value here.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	ps1, ps2, ps4, and completion_append_char.
+	* input.cc: Move all of that here.
+	(symbols_of_input): New function.
+	* variables.cc (install_builtin_variables): Call it.
+	* pt-pr-code.cc (indent): Use Vps4 instead of user_pref.ps4 here.
+	* help.cc (Ftype): Also here.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	automatic_replot, gnuplot_binary, and gnuplot_has_multiplot.
+	* pt-plot.cc: Move all of that here.
+	(symbols_of_pt_plot): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	beep_on_error.
+	* error.cc: Move all of that here.
+	(symbols_of_error): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	empty_list_elements_ok.
+	* pt-mat.cc: Move all of that here.
+	(symbols_of_pt_mat): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	define_all_return_values, return_last_computed_value, and
+	silent_functions.
+	* pt-fcn.cc: Move all of that here.
+	(symbols_of_pt_fcn): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	whitespace_in_literal_matrix.
+	* lex.l: Move all of that here.
+	(symbols_of_lex): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	warn_assign_as_truth_value, warn_comma_in_global_decl,
+	warn_function_name_clash, and warn_missing_semicolon.
+	* parse.y: Move all of that here.
+	(symbols_of_parse): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	output_precision, output_max_field_width, print_empty_dimensions,
+	and split_long_rows.
+	* pr-output.cc: Move all of that here.
+	(symbols_of_pr_output): New function.
+	* variables.cc (install_builtin_variables): Call it.
+
+	* user-prefs.h, user-prefs.cc: Delete all stuff related to
+	page_screen_output, page_output_immediately, and pager_binary.
+	* pager.cc: Move all of that here.
+
+	* user-prefs.h (check_preference): Provide declaration.
+	* user-prefs.cc (check_preference): Make external.
+
+	* toplev.cc (Foctave_config_info): New function.
+
+	* oct-conf.h.in: New file
+	* Makefile.in (oct-conf.h): New target.
+	Add it to the appropriate lists.
+
+	* sighandlers.cc (sigchld_handler): Don't complain about wait
+	returning a negative value.
+
+	* file-io.cc (Fsscanf, Fsprintf): Pass true for second arg of
+	octave_stream constructor.
+
+	* oct-stream.h (octave_stream): New field, preserve.
+	(octave_stream::~octave_stream): If preserve, don't delete rep.
+
+	* pager.cc (symbols_of_pager): Set default for
+	page_output_immediately to 0.
+
+	* toplev.cc (do_system): Correctly handle return_output.
+	Append ends to output_buf before calling str().
+
+	* variables.cc: If M_PI and M_E are available, use them.
+
+	* mk-oct-links.in (links_dir): If old link exists, delete it first.
+
+Sun May 12 01:46:07 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (DISTFILES): List defaults.h.in and oct-gperf.h here.
+	(INCLUDES): Not here.
+	(install-inc): New target.
+	(uninstall): Also delete libraries and include files.
+	(install-inc): If linkdir is a directory, leave it alone.
+	(TERMLIBS, LIBPLPLOT, LIBDLFCN): Don't substitute here (now in
+	Makeconf).
+
+	* oct-stream.cc (octave_base_stream::do_read): Provide initial
+	value for tmp var.
+
+	* pt-walk.h, pt-pr-code.h, pt-pr-code.cc: New tree-walking classes.
+	* Makefile.in: Add them to the appropriate lists.
+	* pt-fvc-base.h, pt-exp-base.cc, pt-fvc-base.cc, pt-mvr-base.cc,
+	pt-base.cc, pt-mvr.cc, pt-mat.h, pt-mat.cc, pt-fvc.cc,
+	pt-const.cc, pt-cmd.cc, pt-const.h, pt-misc.cc, pt-plot.cc,
+	pt-fcn.cc, pt-plot.h, pt-mvr.h, pt-mvr-base.h, pt-misc.h,
+	pt-fcn.h, pt-exp.h, pt-exp.cc, pt-exp-base.h, pt-fvc.h, pt-cmd.h,
+	pt-base.h:
+	Replace print_code stuff with accept() functions.
+	Add member access functions where necessary.
+	* help.cc (Ftype): Update to use new method of walking trees to
+	print text representation of user-defined functions.
+
+	* file-io.cc (Ffscanf): Update doc string.
+	(Fsscanf): Likewise.
+
+	* oct-stream.cc (octave_base_stream::do_read): Correctly set max_size.
+	Pad mval with zeros on final resize.
+	(octave_base_stream::do_scanf): Likewise.
+	(do_scanf_conv): Correctly resize mval.
+
+Sat May 11 05:14:09 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pager.cc (octave_pager_buf::sync): Correctly set bypass_pager.
+
+	* lex.l (<MATRIX>{SNLCMT}*\]{S}*): Match SNLCMT, not just SNL.
+
+Fri May  3 11:05:30 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc (OCT_VAL_REP::set_index): Complain if type can't be
+	indexed.
+
+	* input.cc (get_user_input): Don't increment input line number if
+	input is coming from eval string.
+
+	* user-prefs.cc: Allow empty strings for prompts.
+
+Thu May  2 10:50:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mvr.h (class tree_oct_obj): Declare values data member const.
+
+Sun Apr 28 03:16:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* user-prefs.h (user_preferences): New field,
+	`page_output_immediately'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(page_output_immediately): New function.
+	* pager.cc (syms_of_pager): Add DEFVAR.
+	(really_flush_to_pager): New file-scope variable.
+	(flush_octave_stdout): Set and restore it.
+	(octave_pager_buf::sync): Check it, user_pref.page_screen_output,
+	and user_pref.page_output_immediately to decide when to really
+	flush output.
+	(more_than_a_screenful): New function.  If paging but not
+	immediately, then check this too.
+
+	* pager.cc (default_pager): Move here from variables.cc.  If pager
+	is less and LESS is not in the environment, append useful flags.
+	(symbols_of_pager): New function.
+	* variables.cc (install_builtin_variables): Call it.
+	Delete pager-related DEFVARs.
+
+	* syswait.h (WIFSIGNALLED): Define if sys/wait.h doesn't.
+
+	* sighandlers.cc: Handle SIGCHLD.
+
+	* pager.cc, pager.h: Rewrite.
+	* pt-mvr.cc, pt-misc.cc, pt-fcn.cc, pt-const.cc, oct-hist.cc,
+	file-io.cc, help.cc, variables.cc, qpsol.cc, dassl.cc, quad.cc,
+	npsol.cc, lsode.cc, fsolve.cc, load-save.cc, dirfns.cc, octave.cc,
+	toplev.cc, error.cc, input.cc:
+	Write to octave_stdout and octave_diary instead of calling
+	maybe_page_output() or maybe_write_to_diary_file().
+
+	* oct-procbuf.h, oct-procbuf.cc: New files.
+	* procstream.h (class procstreambase): Use octave_procbuf instead
+	of procbuf from libg++, so we can get pids of subprocesses.
+
+Fri Apr 26 01:21:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc (OCT_VAL_REP::do_index): Call maybe_mutate() before
+	returning.
+
+	* mappers.h (struct Mapper_fcn): Delete.
+	(struct builtin_mapper_function): New field ch_mapper.
+	* pt-fvc.h (tree_builtin): Convert type of mapper_fcn from
+	Mapper_fcn to builtin_mapper_function.
+	* variables.cc (install_builtin_mapper): Likewise, for arg.
+	Simplify, since we don't have to do the copying ourselves now.
+	* pt-fvc.cc (apply_mapper_function): Handle ch_mapper case.
+	* defun.h (DEFUN_MAPPER): Likewise.
+	* mappers.cc (install_builtin_mappers): Likewise.
+	Add ctype is* functions here.
+
+Thu Apr 25 00:57:06 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* arith-ops.h, defun-int.h, defun.h, dynamic-ld.h, gripes.h,
+	load-save.h, oct-map.h, oct-obj.h, oct-stream.h, pt-cmd.h,
+	pt-const.h, pt-exp-base.h, pt-exp.h, pt-fcn.h, pt-fvc-base.h,
+	pt-fvc.h, pt-mat.h, pt-misc.h, pt-mvr-base.h, pt-mvr.h, pt-plot.h,
+	symtab.h, toplev.h, utils.h, variables.h, xpow.h, Array-tc.cc,
+	Map-i.cc, Map-tc.cc, SLList-tc.cc, arith-ops.cc, balance.cc,
+	bogus.cc, chol.cc, colloc.cc, dassl.cc, data.cc, det.cc,
+	dirfns.cc, eig.cc, error.cc, expm.cc, fft.cc, fft2.cc, file-io.cc,
+	filter.cc, find.cc, fsolve.cc, fsqp.cc, givens.cc, gripes.cc,
+	help.cc, hess.cc, ifft.cc, ifft2.cc, input.cc, inv.cc,
+	load-save.cc, log.cc, lpsolve.cc, lsode.cc, lu.cc, minmax.cc,
+	npsol.cc, oct-hist.cc, oct-obj.cc, oct-stream.cc, pager.cc,
+	pinv.cc, pr-output.cc, pt-cmd.cc, pt-const.cc, pt-exp-base.cc,
+	pt-exp.cc, pt-fcn.cc, pt-fvc-base.cc, pt-fvc.cc, pt-mat.cc,
+	pt-misc.cc, pt-mvr-base.cc, pt-mvr.cc, pt-plot.cc, qpsol.cc,
+	qr.cc, quad.cc, qzval.cc, rand.cc, resource.cc, schur.cc, sort.cc,
+	strfns.cc, svd.cc, syl.cc, symtab.cc, syscalls.cc, sysdep.cc,
+	timefns.cc, toplev.cc, utils.cc, variables.cc, xpow.cc, parse.y:
+	Rename tree_constant -> octave_value.
+	Rename Octave_object -> octave_value_list.
+
+Wed Apr 24 22:15:34 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (Fsystem): Merge functionality of async_system and
+	sync_system.
+
+	* oct-fstrm.h, oct-iostrm.h, oct-prcstrm.h, oct-stdstrm.h,
+	oct-stream.h, oct-strstrm.h, oct-fstrm.cc, oct-iostrm.cc,
+	oct-prcstrm.cc, oct-stdstrm.cc, oct-stream.cc, oct-strstrm.cc,
+	Array-os.cc: New files.
+	* Makefile.in: Add them to the appropriate lists.
+	* file-io.cc: Rewrite to use new stream classes.
+
+Tue Apr 23 18:59:25 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* gripes.cc (gripe_not_supported): New function.
+
+	* toplev.cc (do_octave_atexit, Fatexit): New functions.
+	(octave_atexit_functions): New file-scope variable.
+	* octave.cc (main): Register do_octave_atexit with atexit.
+
+	* variables.cc (install_builtin_variables): Call
+	symbols_of_syscalls here.
+
+	* syscalls.h, syscalls.cc: New files.
+
+Mon Apr 22 21:14:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* syscalls.cc: New file.
+	(Flstat, Fmkfifo, Fstat, Funlink, Fwait, Fwaitpid): Move here.
+	* file-io.cc: From here.
+	* Makefile.in (SOURCES): Add syscalls.cc to the list.
+
+Wed Apr 17 18:34:10 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-info.h, file-info.cc: Delete files.
+	* Makefile.in: Remove from lists.
+
+	* toplev.cc (Fquit): Accept exit status argument.
+	(Fflops): Delete (now a function file).
+
+Thu Apr 11 16:20:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l: Recognize `.'.
+	Update current_input_column even for unrecognized characters.
+	Return LEXICAL_ERROR for unrecognized characters.
+
+Mon Apr  8 19:59:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (install_builtin_variables): Split into several
+	functions to make compiling with g++ go faster and consume less
+	memory.
+
+Sun Apr  7 16:25:35 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (Fsave): Print usage if i == argc.
+	(Fload): Likewise.
+
+Sat Apr  6 21:26:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (clean): Also delete pic/*.o
+	(maintainer-clean, distclean): Also remove stamp-picdir,
+	stamp-tinst, stamp-interp, and pic directory.
+	(stamp-prereq): New target.
+
+Wed Apr  3 11:19:30 1996  Rick Niles  <niles@axp745.gsfc.nasa.gov>
+
+	* resource.cc: Don't make including sys/resource.h and sys/times.h
+	mutually exclusive.
+
+Fri Mar 29 13:43:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (distclean): Delete so_locations, which is created
+	on DEC Alpha systems.
+
+Thu Mar 28 02:53:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.h (undo_string_escape): Provide extern declaration here.
+
+	* lex.l (NL): Allow \r\n as new line character.
+	(.): Complain if invalid character is found on input
+
+Fri Mar 22 03:47:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* resource.cc (getrusage): If getrusage is missing, try using
+	times to at least fill in the cpu time values.  If neither one is
+	available, return 0 for cpu times instead of NaN.
+
+	* sighandlers.cc (octave_signal_mask): New file-scope variable.
+	(octave_save_signal_mask, octave_restore_signal_mask): New functions.
+	* toplev.cc (main_loop): Use them.
+
+Wed Mar 20 01:21:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (get_fcn_file_names (const string&, int)): Resize
+	retval to value of k, not i.
+	(get_fcn_file_names (int)): In loop for copying names to retval,
+	don't increment j twice.
+
+Mon Mar 18 22:27:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in ($(MAKEDEPS)): Depend on oct-gperf.h.
+
+Fri Mar  1 18:15:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* fsolve.cc (fsolve_options): Delete unused argument nargout.
+
+	* filter.cc: Use MArray instead of Array so that automatic
+	conversions will work again.
+
+Tue Feb 27 04:49:51 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (looks_like_octave_copyright): Make the strings
+	that we are trying to match both have length 29.
+
+	* Makefile.in (install-bin): Use $(INSTALL_PROGRAM), not $(INSTALL).
+
+	* load-save.cc (read_mat_binary_data): Make sure name is
+	NUL terminated.
+
+Mon Feb 26 18:18:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (whos): Make argv from tmp_args, not args.
+
+	* defun.h (DEFCONSTX): Don't stringify name.
+
+Sat Feb 24 01:12:59 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-oct): Make mk-oct-links executable.
+	* mk-oct-links.in (links_dir): Update to match new format of
+	DEFUN_DLD_BUILTIN macro.  Use LN_S, not just LN.
+	(links_dir):
+
+	* pr-output.cc (octave_print_internal): New arg, extra_indent, for
+	versions of this function that take matrices and ranges.
+	* pt-const.cc (TC_REP::print (ostream&)): Fix printing of structures.
+	Pass struct_indent to octave_print_internal as appropriate.
+	(print_with_name (ostream&, const string&, bool)): Handle spacing
+	around `=' differently for structures.
+
+Fri Feb 23 04:51:04 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* token.cc (token (double, const string&, int, int)): Store orig_text.
+
+Tue Feb 20 20:36:01 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fclear): Fix off-by-one error.
+
+Sat Feb 17 16:54:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-hist.cc (default_history_file): Append "/.octave_hist" to
+	return value, not to home_directory.
+
+Fri Feb 16 18:10:46 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc: (NINT, D_NINT): Move to liboctave.
+
+	* sysdep.cc (octave_ieee_init): Move to liboctave.
+
+	* procstream.h, procstream.cc: Rewrite.
+
+	* pager.cc (cleanup_oprocstream): New static function.
+	* toplev.cc (cleanup_iprocstream): Likewise.
+	* dirfns.cc (cleanup_iprocstream): Likewise.
+
+	* unwind-prot.cc (matrix_cleanup, complex_matrix_cleanup): Delete.
+
+Thu Feb 15 22:03:28 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-obj.cc, oct-obj.h: Move most code to the header.
+
+	* oct-obj.cc (make_argv, all_strings): New member functions.
+	* utils.cc: Moved from here.
+
+	* load-save.cc: Move byte swapping stuff to liboctave.
+	Move float format conversion stuff to liboctave.
+	(all_parts_int, too_large_for_float): Move to liboctave.
+
+	* symtab.cc (valid_identifier): Move here.
+	* load-save.cc: From here.
+
+	* sysdep.cc: Move floating-point format stuff to liboctave.
+	* pr-output.cc: Include float-fmt.h here.
+
+Wed Feb 14 01:49:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun.h, defun-dld.h, defun-int.h: Simplify interface for DEFUN,
+	DEFUN_DLD, DEFVAR, and DEFCONST macros.  Change all uses.
+
+	* qzval.cc: Move guts to liboctave.
+
+Tue Feb 13 10:28:27 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (parse_fcn_file): Also avoid saving history if
+	input is from a script file.
+
+	* help.cc (Ftype): Call unwind_protect_str for user_pref.ps4.
+
+	* npsol.cc (nonlinear_constraints_ok): Now static.
+
+	* npsol.cc (linear_constraints_ok): Now static.
+	* qpsol.cc (linear_constraints_ok): Duplicate here.
+
+	* data.cc (Flinspace): Don't print usage message if nargin == 2.
+
+Sun Feb 11 14:20:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-oct-links.in: Rename from mk-oct-links.
+	(LN_S): Use this variable instead of ln.
+	Set -e option for shell.
+	Exit with status of last command.
+	Print message when making link.
+	* Makefile.in (DISTFILES): Add mk-oct-links.in to the list.
+	(install-oct): Run ./mk-oct-links, not $(srcdir)/mk-oct-links.
+
+	* variables.cc (install_builtin_variables): Restore accidentally
+	deleted DEFVAR for save_precision.
+
+Fri Feb  9 11:24:32 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Delete statdefs.h from the list (it's
+	now in the liboctave directory).
+
+	* toplev.cc (toplevel): Define here.
+	* octave.cc (toplevel): Not here.
+
+	* toplev.cc (main_loop): New function.
+	* octave.cc (main): Call it here instead of doing main loop
+	actions here.
+
+	* user-prefs.cc (do_fortran_indexing): Also set liboctave_dfi_flag.
+	(prefer_column_vectors): Also set liboctave_pcv_flag.
+	(prefer_zero_one_indexing): Also set liboctave_pzo_flag.
+	(resize_on_range_error): Also set liboctave_rre_flag.
+
+	* variables.cc (restore_command_history): New function.
+	(parse_fcn_file): Use it here in unwind_protect.
+
+	* dynamic-ld.cc (load_octave_oct_file): Reverse sense of test.
+	(load_octave_builtin): Delete.
+	(mangle_octave_oct_file_name): Delete.
+
+	* pt-fvc.cc (tree_builtin::eval): Don't try to dynamically load
+	functions here.
+
+	* pr-output.cc (set_format_style): Decrement argc for first arg too.
+
+	* input.cc (gnu_readline): If readline returns an empty string,
+	convert it to a string containing a single newline character.
+
+	* octave.cc (octave_argv): Now a static string_vector.
+	(intern_argv): Use string_vector ops, not charMatrix ops.
+	* toplev.cc (octave_argv): Delete definition.
+	* toplev.h (octave_argv): Delete declaration.
+
+Thu Feb  8 10:58:24 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (conf-dist): New target.
+
+Tue Feb  6 10:59:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (Ftype): Correctly handle structure names.
+
+Sun Feb  4 02:02:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* qpsol.cc (Fqpsol): Call set_options(), not copy() to set
+	options for QPSOL objects.
+
+	* npsol.cc (Fnpsol): Call set_options(), not copy() to set
+	options for NPSOL objects.
+
+	* quad.cc (Fquad): Call set_options(), not copy() to set
+	options for Quad objects.
+
+	* dynamic-ld.cc (load_octave_builtin): Don't call destructor on string.
+	(load_octave_oct_file): Likewise.
+	Check oct_file.empty(), not just oct_file.
+
+	* fsolve.cc (Ffsolve): Call set_options(), not copy() to set
+	options for NLEqn object.
+
+	* variables.cc (do_who): Properly set match patterns from argument
+	vector for call to maybe_list.
+
+Sat Feb  3 03:29:33 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (long_opts): Properly set second field using new enum.
+
+	* lsode.cc: Change ODE to LSODE where appropriate.
+	Use LSODE_options, not ODE_options.
+
+	* dassl.cc: Change DAE to DASSL where appropriate.
+	Use DASSL_options, not ODE_options.
+
+Fri Feb  2 01:41:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc: Include unistd.h.
+
+	* parse.y, lex.l: Handle matrix lists without ml or mlnm stacks.
+	* pt-mat.h, pt-mat.cc (tree_matrix):
+	Rewrite to use SLList instead of home brew list.
+	* SLList-tm.cc: New file
+	* Makefile.in: Add it to the lists.
+	* SLStack-tm.cc: Delete.
+	* Makefile.in: Delete it from the lists.
+
+	* All pt-* files: Use bool instead of int where appropriate.
+
+	* Makefile.in (DEP_SOURCES_3): Add octave.cc.
+
+	* pt-const.h (class tree_constant::tree_constant_rep): Make
+	everything in this class public, then it doesn't need to declare
+	the tree_constant class as a friend.
+
+Thu Feb  1 01:42:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.h, lex.l, parse.h, parse.y (class lexical_feedback): New
+	class for lexer flags.  Replace lots of global vars with members
+	of this class.
+
+	* lex.l (class brace_paren_nesting_level): New class to replace
+	nesting_level stack.  nesting_level is now an instance of this
+	class.
+
+	* lex.l (yum_yum): New typedef.
+	(ATE_NOTHING): New global var.
+	(ATE_SPACE_OR_TAB, ATE_NEWLINE): Don't #define these, declare them
+	as const yum_yum.
+	(eat_whitespace, eat_continuation): Return yum_yum, not int.
+
+	* lex.l (SHORT_CIRCUIT_LOGICALS): Delete.  Always do this for ||
+	and && tokens.
+	(yy_flex_alloc, yy_flex_realloc, yy_flex_free, next_char_is_space):
+	Delete.
+
+	* toplev.cc (verbose_flag): Delete definition.
+	* toplev.h (verbose_flag): And declaration.
+	* octave.cc (verbose_flag): Now static.
+
+	* lex.l (lookup_identifier): Arg is now string, not char*.
+	(handle_identifier, is_plot_keyword, is_keyword): Likewise.
+	(strip_trailing_whitespace): Return value is now string, not char*.
+	(plot_style_token): Likewise, for both arg and return value.
+
+	* input.cc (octave_gets_line): Delete.
+	(gnu_readline, octave_gets, octave_read):
+	Properly handle input when using_readline is either true or false.
+	Don't limit length of input lines to flex buffer size.
+	(get_user_input): New function.
+
+	* octave.cc (main): Handle --no-line-editing.
+	* toplev.h (using_readline): Provide external declaration here.
+	* input.h: Not here.
+	* toplev.cc (using_readline): Define here.
+	* input.cc: Not here.
+
+	* toplev.h (no_line_editing): Delete declaration.
+	* input.cc (no_line_editing): Delete definition.
+
+Wed Jan 31 05:28:45 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* input.cc (DEFAULT_ARRAY_SIZE, PROMPT_GROWTH): Delete definitions
+	of unused macros.
+	(read_octal): Now static.
+
+	* givens.cc (Fgivens): Use new functions from matrix classes
+	instead of calling Fortran functions directly.
+	* syl.cc (Fsyl): Likewise.
+	* expm.cc (Fexpm): Likewise.
+
+Mon Jan 29 00:00:48 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc: Use new prog_args class instead of calling getopt
+	directly.
+
+	* getopt.h, getopt.c, getopt1.c: Move to liboctave directory.
+	* Makefile: Remove from lists.
+
+	* utils.cc (strconcat, read_until, discard_until): Delete.
+
+	* pager.cc (terminal_columns, terminal_rows): Move to
+	liboctave/oct-term.cc.
+	* pager.cc, pr-output.cc: Include oct-term.h.
+
+	* utils.cc (list_in_columns): Moved to liboctave/str-vec.cc.
+	Change all callers to use new member function syntax.
+
+	* dirfns.cc (absolute_program): Now static.
+	(absolute_pathname): Delete.
+
+	* pt-plot.cc (save_in_tmp_file): Call oct_tempnam, not
+	octave_tmp_file_name.  Include file-ops.h.
+	* file-io.cc (do_scanf, Foctave_tmp_file_name): Likewise.
+	* oct-hist.cc (mk_tmp_hist_file): Likewise.
+
+	* file-io.cc (Foctave_tmp_file_name): Move here.
+	* utils.cc: From here.
+
+	* utils.cc (octave_tmp_file_name): Move to liboctave/file-ops.cc.
+
+	* tempname.c, tempnam.c: Move to liboctave directory.
+	* Makefile.in: Remove from lists.
+
+Sun Jan 28 19:00:52 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xdiv.cc (all xdiv functions): Return Matrix or ComplexMatrix,
+	not tree_constant.
+
+	* oct-hist.h, oct-hist.cc, toplev.cc, octave.cc, input.cc,
+	file-io.cc, user-prefs.cc: Rewrite to use new command_history
+	class instead of calling readline history functions directly.
+
+	* utils.cc (get_fcn_file_names): Delete num arg.
+
+Thu Jan 25 20:33:54 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (matches_patterns): Use new glob_match class
+	instead of calling fnmatch directly.
+	* symtab.cc (matches_patterns, symbol_table::glob): Likewise.
+	* variables.cc (Fclear): Likewise.
+
+Wed Jan 24 02:05:22 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* fnmatch.h fnmatch.c: Delete.
+	* Makefile.in: Add glob stuff in the appropriate places, remove
+	fnmatch.h and fnmatch.c from lists.
+
+	* octave.cc (program_invocation_name, program_invocation_short_name):
+	Maybe declare.
+	(initialize_globals): Maybe initialize them.
+
+	* octave.cc (initialize_pathsearch): Define here, not in pathsearch.cc.
+	* pathsearch.h, pathsearch.cc: Remove files.
+	* Makefile.in: Remove them from the lists.
+
+	* help.cc (simple_help): Ignore directories that don't have any .m
+	or .oct files.
+
+	* utils.cc (search_path_for_file): Use new dir_path class instead
+	of calling kpathsea routines directly.
+	(get_fcn_file_names): Likewise.
+	* help.cc (simple_help): Likewise.
+
+	* dirfns.cc (make_absolute): Don't convert empty arg to "./".
+
+	* sysdir.h: Move to liboctave directory.
+	* Makefile.in: Remove from lists.
+
+	* dirfns.cc (Freaddir): Use new dir_entry class instead of calling
+	readdir directly.  Include dir-ops.h, not sysdir.h.
+	* utils.cc (get_fcn_file_names): Likewise.  Delete unnecessary
+	first arg, change all callers.
+
+Tue Jan 23 00:43:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* safe-xstat.hin, safe-xstat.cin, statdefs.h, file-ops.h,
+	file-ops.cc, filemode.c, mkdir.c, rmdir.c, rename.c:
+	Files moved to liboctave directory.
+	* Makefile.in: Remove them from lists.  Move appropriate rules.
+
+	* acosh.c, asinh.c, atanh.c, erf.c, erfc.c, gamma.c, lgamma.c:
+	Files moved to liboctave directory.
+	* Makefile.in: Remove them from lists.
+	* missing-math.h: Deleted.
+	* pr-output.cc, sysdep.cc, minmax.cc, mappers.cc, expm.cc,
+	arith-ops.cc: Include oct-math.h, not cmath or missing-math.h.
+
+Mon Jan 22 19:33:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (Fexist): Use file_stat instead of calling stat
+	directly.  Include file-ops.h, not statdefs.h.
+	* octave.cc (execute_startup_files): Likewise.
+	* file-io.cc (file_io_get_file, fopen_internal, popen_internal, Fstat):
+	Likewise.
+	(mk_stat_map): Likewise, use file_stat object, not struct stat.
+	* oct-hist.cc (do_history): Likewise.
+
+	* file-ops.h, file-stat.cc: New files.
+	* Makefile.in: Include them.
+	* dirfns.cc: Delete is_newer.  Don't include statdefs.h.
+	* toplev.cc: Don't include statdefs.h.
+
+Sun Jan 21 22:48:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-mvr.h, pt-fvc.h, Map.cc, Map.h, dynamic-ld.h,
+	pt-fvc-base.cc, SLList-str.cc, pt-fcn.h, pt-fvc-base.h,
+	SLStack-str.cc, pt-mvr.cc, pt-exp.cc, token.h, token.cc,
+	user-prefs.h, pt-base.cc, user-prefs.cc, dirfns.h, sysdep.h,
+	sysdep.cc, input.h, parse.h, lex.l, parse.y, defun.h, mappers.h,
+	pt-fvc.cc, pt-plot.h, load-save.h, octave.cc, defun-int.h, help.h,
+	variables.h, oct-map.h, oct-obj.h, oct-obj.cc, pt-const.cc,
+	oct-map.cc, input.cc, symtab.h, pt-const.h, pathsearch.cc,
+	pr-output.h, pr-output.cc, toplev.h, timefns.cc, schur.cc,
+	pt-plot.cc, pager.cc, load-save.cc, dynamic-ld.cc, dirfns.cc,
+	data.cc, file-info.h, file-info.cc, colloc.cc, utils.h, qpsol.cc,
+	quad.cc, npsol.cc, lsode.cc, fsolve.cc, dassl.cc, file-io.cc,
+	help.cc, utils.cc, oct-hist.h, oct-hist.cc, symtab.cc, toplev.cc,
+	pt-fcn.cc, unwind-prot.h, unwind-prot.cc, variables.cc:
+	Most functions in these files that deal with character strings
+	have been converted to use the string class insatead of char*.  If
+	you want more detailed information, you'll have to figure it out
+	for yourself.
+
+Sat Jan 20 18:19:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc [WITH_DL]: Define RTLD_LAZY to be 1 if it is not
+	already defined.
+
+Sun Jan 14 07:48:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pt-const.cc (print_as_scalar, print_as_structure):
+	Make these member functions.
+	(tree_constant::print_with_name): New function, moved here from
+	old tree-expr.cc file (where it was called print_constant) and
+	converted to member function.  Change all callers.
+
+Fri Jan 12 01:54:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (initialize_globals): Don't do kpathsearch stuff here.
+	(main): Call initialize_pathsearch() here.
+
+	* pathsearch.cc: New file.
+	* Makefile.in (SOURCES): Add it to the list
+
+	* oct-hist.h: Rename from octave-hist.h.
+	* oct-hist.cc: Rename from octave-hist.cc.
+	* Makefile.in, parse.y, other .cc files: Cope with it.
+
+	* dynamic-ld.cc: Avoid warnings if !WITH_DYNAMIC_LINKING.
+
+	* load-save.cc (save_ascii_data): string::data() returns const char*.
+
+	* utils.h: Don't provide forward declaration for tree_constant.
+
+	* oct-obj.h: Don't include mx-base.h or provide forward
+	declarations for Matrix and Range types.
+
+	* file-info.h: Don't include oct-obj.h.  Do include cstdio.
+
+	* symtab.h: Don't provide forward declaration for ostream.
+
+	* variables.h: Don't provide forward declarations for istream,
+	ostrstream, tree, builtin_function, or builtin_variable objects.
+
+	* balance.cc, chol.cc, colloc.cc, dassl.cc, det.cc, eig.cc,
+	expm.cc, fft.cc, fft2.cc, filter.cc, find.cc, fsolve.cc, fsqp.cc,
+	givens.cc, hess.cc, ifft.cc, ifft2.cc, inv.cc, log.cc, lpsolve.cc,
+	lsode.cc, lu.cc, minmax.cc, npsol.cc, pinv.cc, qpsol.cc, qr.cc,
+	quad.cc, qzval.cc, rand.cc, schur.cc, sort.cc, svd.cc, syl.cc:
+	Clean up #include statements.
+
+	* pt-const.h: Don't include oct-obj.h or tree-base.h.
+	Provide forward declaration of Octave_object here.
+	* pt-const.cc: Include oct-obj.h here.
+
+	* pt-mat.h, pt-fcn.h, pt-const.h, pt-misc.h, pt-plot.h,
+	pt-exp-base.h, pt-cmd.h, pt-fvc-base.h, pt-mvr-base.h, pt-exp.h,
+	pt-mvr.h, pt-fvc.h: New files, split from tree-expr.h and/or
+	renamed from other tree-*.h files (pt == parse tree).
+	* pt-base.cc, pt-const.cc, pt-exp.cc, pt-fvc-base.cc, pt-mat.cc,
+	pt-mvr-base.cc, pt-plot.cc, pt-cmd.cc, pt-exp-base.cc, pt-fcn.cc,
+	pt-fvc.cc, pt-misc.cc, pt-mvr.cc: Likewse, split from tree-expr.cc
+	and/or other tree-*.cc files.
+	* Makefile.in: Include them in the appropriate lists.
+	* All: Fix #include statements to match.
+
+	* Array-tc.cc: Don't instantiate ArrayRep objects.
+
+Thu Jan 11 02:35:19 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (tree_constant::eval (int, int, const Octave_object&)):
+	Define here instead of in tree-const.h.
+
+Wed Jan 10 04:34:20 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.h (tree_constant::tree_constant (const string&):
+	* tree-const.cc (TC_REP::tree_constant_rep (const string&)):
+	New constructor.
+
+Tue Jan  9 04:10:29 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* rand.cc (do_rand): Use string_value() result directly instead of
+	c_str() conversion.
+	* balance.cc (Fbalance): Likewise.
+
+	* tree-const.cc (TC_REP::string_value()):
+	Handle new definition of charMatrix::row_as_string()
+	* load-save.cc (save_ascii_data): Ditto.
+	(save_binary_data): Ditto.
+	* pr-output.cc (octave_print_internal): Ditto.
+
+	* balance.cc (Fbalance):
+	Handle new definition of TC_REP::string_value()
+	* colloc.cc (Fcolloc): Ditto.
+	* dassl.cc (Fdassl_options): Ditto.
+	* data.cc (Fstruct_contains): Ditto.
+	* dirfns.cc (Fmkdir): Ditto.
+	(Freaddir): Ditto.
+	(Frmdir): Ditto.
+	(Frename): Ditto.
+	* error.cc (handle_message): Ditto.
+	* file-io.cc (process_printf_format): Ditto.
+	(fopen_internal): Ditto.
+	(file_io_get_file): Ditto.
+	(return_valid_file): Ditto.
+	(Flstat): Ditto.
+	(Fstat): Ditto.
+	(unlink_internal): Ditto.
+	(mkfifo_internal): Ditto.
+	(async_system_internal): Ditto.
+	(sync_system_internal): Ditto.
+	(execute_internal): Ditto.
+	(popen_internal): Ditto.
+	(fwrite_internal): Ditto.
+	(fread_internal): Ditto.
+	(do_printf): Ditto.
+	(do_scanf): Ditto.
+	* input.cc (get_user_input): Ditto.
+	* lsode.cc (Flsode_options): Ditto.
+	* npsol.cc (Fnpsol_options):Ditto.
+	* qpsol.cc (Fqpsol_options):Ditto.
+	* quad.cc (Fquad_options): Ditto.
+	* rand.cc (do_rand): Ditto.
+	* schur.cc (Fschur): Ditto.
+	* sysdep.cc (Fputenv): Ditto.
+	(Fgetenv): Ditto.
+	* timefns.cc (extract_tm): Ditto.
+	(Fstrftime): Ditto.
+	* toplev.cc (Fsource): Ditto.
+	(eval_string): Ditto.
+	(Fsystem): Ditto.
+	* tree-plot.cc (subplot::handle_plot_data): Ditto.
+	* variables.cc (is_valid_function): Ditto.
+	(Fis_global): Ditto.
+	(Fexist): Ditto.
+	(builtin_string_variable): Ditto.
+	* utils.cc (make_argv): Ditto.
+	(Fundo_string_escapes): Ditto.
+
+Mon Jan  8 01:54:50 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-bin): Use $(LN_S), not just ln.
+
+	* variables.cc (octave_fcn_file_dir): New function.
+	* tree-expr.cc (mark_as_system_fcn_file): Use it instead of
+	octave_lib_dir.
+
+	* Makefile.in (clean): If $(SHARED_LIBS), also remove shared libs.
+
+	* pr-output.cc (set_format (const ComplexMatrix&, int&, int&)):
+	Unconditionally call all_elements_are_int_or_inf_or_nan().
+	(set_format (const Matrix&, int&, int&)): Likewise.
+
+Sun Jan  7 19:12:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc (oct_putenv): New function.
+	* sysdep.cc (Fputenv): Use oct_putenv.
+	* octave.cc (initialize_globals): Likewise.
+
+Sat Jan  6 23:22:37 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc (Fputenv): New function.
+
+	* input.cc (initialize_readline): Call rl_initialize() here.
+
+	* octave.cc: Conditionally define atexit to be on_exit here.
+	* toplev.cc: Not here.
+
+Fri Jan  5 14:01:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc: Don't include <pwd.h> here.
+
+	* octave-hist.cc, tree-plot.cc, utils.cc: Do include "sysdep.h".
+
+	* dirfns.cc, file-io.cc, help.cc, load-save.cc, octave.cc,
+	octave-hist.cc, tree-plot.cc, utils.cc:
+	Don't include <readline/tilde.h>.
+	* sysdep.h: Do include it here.
+
+	* tree-const.cc (TC_REP::assign (tree_constant&, Octave_object&)):
+ 	If we have a matrix or range, call maybe_mutate before returning.
+
+Sun Dec 31 15:56:18 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* npsol.cc (Fnpsol): Improve doc string.
+	* qpsol.cc (Fqpsol): Likewise.
+
+Fri Dec 29 21:46:58 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* defun-dld.h: Make work again for OCTAVE_LITE and
+	WITH_DYNAMIC_LINKING.
+
+	* Makefile.in: Handle shared libraries.
+
+Wed Dec 27 17:47:51 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mk-oct-links: New file.
+	* Makefile.in (install-oct): Use it.
+	* f-*.cc: Rename to *.cc.
+
+	* Makefile.in (install-bin, install-lib, install-oct): New targets.
+	(install): Use them.
+
+Tue Dec 26 21:38:22 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* toplev.cc (reading_startup_message_printed): Move initialization
+	here and make extern.
+
+	* dirfns.cc, dynamic-ld.cc, help.cc, input.cc, octave-hist.cc,
+	octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc,
+	utils.cc, variables.cc, parse.y, lex.l: Include toplev.h instead
+	of octave.h.
+	* toplev.h: rename from octave.h.
+
+	* octave.cc (main): Delete unused variable saved_sigint_handler.
+
+Sun Dec 24 00:26:54 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.cc: Massive re-write to handle dlopen/dlsym and
+	shl_load/shl_findsym methods of dynamic linking.
+
+	* utils.cc (get_fcn_file_names): Check for .oct files if
+	WITH_DYNAMIC_LINKING, not WITH_DLD.
+
+	* Makefile.in (LIB, TERMLIBS): Substitute values.
+	(octave): Add $(LIBS) to link command and use $(TERMLIBS) instead
+	of -ltermcap.
+
+Sat Dec 23 21:56:12 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dynamic-ld.h, dynamic-ld.cc: Remove old unused code.
+
+	* variables.cc (load_fcn_from_file):
+	Always call load_octave_oct_file.
+
+Wed Dec 20 00:56:57 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pr-output.cc (set_real_format, set_real_matrix_format,
+	set_complex_format, set_complex_matrix_format, set_range_format):
+	New functions.  Ensure the count of the digits to the right of the
+	decimal point is positive.
+
+	* xpow.cc (xpow (const Matrix&, double)): Print warning if
+	inverting singular matrix (but return value anyway, in the name of
+	compatibility).
+	xpow (const ComplexMatrix&, double)): Likewise.
+
+	* f-inv.cc (Finv): If matrix is singular, return result anyway, in
+	the name of compatibility.
+
+	* symtab.cc (symbol_record::pop_context):
+	Don't assert (! context.empty ()).
+
+	* tree-const.cc (TC_REP::char_matrix_value): Don't complain about
+	type conversion if object is an empty matrix.f
+	(TC_REP::assign): If rhs is a string, don't convert to numeric
+	type if rhs is empty or "".
+	Only widen if rhs is not empty.
+	Don't return 0x0 char_matrix if it is supposed to be a string.
+
+	* arith-ops.h, mappers.h, pr-output.h, xdiv.h, xpow.h: Include
+	oct-cmplx.h in place of forward declaration for class Complex.
+
+	* pr-output.cc, mappers.cc, arith-ops.cc, xdiv.cc, xpow.cc,
+	utils.cc: Include "oct-cmplx.h" instead of <Complex.h>.
+
+	* octave.cc (initialize_error_handlers): Don't call
+	set_Complex_error_handler().
+	(octave_Complex_error_handler): Delete unused function.
+	Delete declaration for set_Complex_error_handler().
+
+	* sighandlers.cc (catch_interrupts): New function.
+	* octave.cc (main): Call catch_interrupts() instead of calling
+	octave_set_signal_handler() directly.
+
+Tue Dec 19 03:22:37 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (looks_like_octave_copyright): Also recognize the
+	string " This program is free software".
+
+Thu Dec 14 01:54:06 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave-hist.cc (clean_up_history): Only write history file if
+	user_pref.saving_history.
+
+	* octave-hist.cc (initialize_history, clean_up_history,
+	do_history): Perform tilde expansion on history file name.
+
+	* octave.cc (main): Check `defined (HAVE_ON_EXIT)' not just
+	`(HAVE_ON_EXIT)'.
+
+	* user-prefs.h (user_preferences): New fields, `history_file' and
+	`history_size'.
+	* user-prefs.cc (init_user_prefs): Initialize them.
+	(sv_history_file, history_size): New functions.
+	* variables.cc (install_builtin_variables): Initialize user-level
+	variables history_file and history_size.
+	* octave-hist.cc (default_history_size): Now extern.
+	(default_history_file): Likewise.
+	(octave_hist_size, octave_hist_file): Use user preference
+	variables instead.
+	* octave.cc (main): Call initialize_history after
+	execute_startup_files.
+
+Fri Dec  8 15:53:59 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* user-prefs.h (user_preferences): New field, `saving_history'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(saving_history): New function.
+	* variables.cc (install_builtin_variables): Initialize user-level
+	variable saving_history.
+	* octave.cc (parse_and_execute): Don't reset value of
+	saving_history here.
+	(main) Use user_pref.saving_history instead of saving_history.
+	* variables.cc (parse_fcn_file): Likewise.
+	* octave-hist.cc (maybe_save_history): Likewise.
+	Don't save history if input_from_startup_file.
+
+Mon Nov 27 23:05:52 1995  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* resource.cc: Include systime.h before <sys/resource.h>.
+
+Tue Nov 14 14:09:40 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* error.cc: Include cstring.
+
+	* tree-expr.cc (print_code): Decrement indent level after printing
+	function body.
+
+	* Makefile.in: Remove references to oct-str.cc, oct-str.h, and
+	Array-string.cc.
+
+	* tree-const.h: Don't include oct-str.h.
+
+Mon Nov  6 11:16:49 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* parse.y (make_plot_command, finish_colon_expression,
+	make_unwind_protect, make_try_command, make_for_command,
+	make_break_command, make_continue_command, make_return_command,
+	start_if_command, finish_if_command, make_elseif_clause,
+	make_simple_assignment, make_multi_val_ret, start_function_def,
+	frob_function_def, finish_function_def, start_matrix,
+	finish_matrix):  New functions.  Use them in the grammar to clean
+	things up a bit.  Possibly convert matrix lists, colon
+	expressions, binary expressions, and unary expressions to constant
+	values.
+	(tree_matrix_type): Delete.
+	(simple_expr1): Handle all expression stuff here, including
+	assignments.
+	(simple_expr): Just check to see that simple_expr1 produced
+	something useful.
+
+	* tree-plot.cc, tree-plot.h: Move most simple constructors to the
+	header file.
+
+	* tree-expr.h (tree_expression::is_constant): Move virtual
+	function definition here.
+	(tree_fvc::is_constant): From here.
+	(tree_expression::is_matrix_constant): New virtual function.
+	(tree_expression::is_range_constant): New virtual function.
+	* tree-expr.cc (tree_matrix::is_matrix_constant): New function.
+	* tree-expr.cc (tree_colon_expression::is_range_constant): New
+	function.
+
+Fri Nov  3 03:42:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.cc, utils.h (jump_to_top_level): Declare as extern "C".
+
+	* tree-const.h (tree_constant::eval ()): Only mutate if printing.
+
+	* tree-const.cc (TC_REP::tree_constant_rep (const Complex&),
+	TC_REP::tree_constant_rep (const ComplexMatrix&),
+	TC_REP::tree_constant_rep (const ComplexDiagMatrix&),
+	TC_REP::tree_constant_rep (const ComplexRowVector&),
+	TC_REP::tree_constant_rep (const ComplexColumnVector&)):
+	Also check to see if we can convert to scalar_constant, not just
+	complex_scalar_constant.
+
+	* user-prefs.h (user_preferences): New field, `exec_path'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(sv_exec_path): New function.
+	* variables.cc (install_builtin_variables): Add DEFUN for EXEC_PATH.
+	(default_exec_path): New function.
+	* octave.cc (exec_path): New global variable.
+	Don't set and putenv() exec path here.
+	(long_opts): Add --exec-path option.
+	(main): Handle it.
+	(initialize_globals): Set default value here.
+
+	* user-prefs.h (user_preferences): New field, `info_prog'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(sv_info_prog): New function.
+	* variables.cc (install_builtin_variables): Add DEFUN for INFO_PROGRAM.
+	(default_info_prog): New function.
+	* octave.cc (info_prog): New global variable.
+	(initialize_globals): Set default value here.
+	(long_opts): Add --info-prog option.
+	(main): Handle it.
+	* help.cc (try_info): Use user_pref.info_prog here.
+
+	* octave.cc (initialize_globals): Put arch_dir and bin_dir ahead
+	of shell_path when resetting PATH.
+
+Thu Nov  2 04:30:13 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-rand.cc (Frandn): New function.
+	(do_initialization): New function.
+	(do_rand): New function for doing the real work.
+	(Frand): Use it.
+
+	* octave.cc (parse_and_execute): New arg, warn_for.  If given,
+	print message if file cannot be opened.
+	Set curr_fcn_file_full_name here.
+	(Fsource): Pass extra arg to parse_and_execute to get warning message.
+
+	* tree-const.h: Handle line and column info for double, Complex,
+	and char* constants.
+
+	* parse.y (maybe_convert_to_ans_assign): Pass along line and
+	column info from expression.
+
+	* parse.y (make_constant): New function.
+	(simple_expr1, word_list): Use it.
+
+	* input.cc, input.h (curr_fcn_file_full_name): New global.
+	* variables.cc (load_fcn_from_file): Set it here.
+	* parse.y (func_def2, yyerror, maybe_warn_missing_semi): Use it.
+	(func_def2): If !reading_fcn_file, don't call strcmp if
+	curr_fcn_file_name is 0.
+
+	* octave.cc (Fsource): New function.
+	(parse_and_execute): Declare file name const char *.
+	* input.cc (get_input_from_file): Likewise.
+
+Wed Nov  1 13:54:34 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-filter.cc: New file.
+	* Makefile.in (DLD_SRC): Add it to the list.
+
+	* sysdep.h (gethostname): Change declaration to match definition
+	in sysdep.cc.
+
+	* resource.cc: Include sysdep.h here, for octave_NaN.
+
+Tue Oct 31 02:12:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (TC_REP::assign): After converting rhs to a
+	numeric type, use the converted value, not the original.
+
+	* dirfns.cc (Fpwd): If nargout == 0, print the directory name
+	instead of returning it.
+
+	* pager.cc (maybe_page_output): Call maybe_write_to_diary_file here.
+	(flush_output_to_pager): Not here.
+
+Mon Oct 30 23:39:43 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (install_builtin_commands): Add DEFVAR for
+	echo_executing_commands.
+
+	* octave-hist.cc (do_edit_history): Handle new echo stuff.
+	* variables.cc (parse_fcn_file): Likewise.
+	* octave.cc (parse_and_execute): Likewise.
+	(main): Likewise.
+	* input.cc (do_input_echo):
+	(Fecho): New function.
+
+	* tree-expr.cc (tree_function::print_code_function_header,
+	tree_function::print_code_function_trailer): New functions.
+	(tree_function::print_code): Use them.
+	(tree_function::eval): Likewise, if echoing commands.
+	* tree-misc.cc (tree_statement::maybe_echo_code): New function.
+
+	* user-prefs.h (user_preferences): New field, echo_executing_commands.
+	(echo_state): New enum, for various types of echoing we do.
+	* user-prefs.cc (echo_executing_commands): New function.
+
+	* tree-base.cc (print_code_indent): Print PS4 as line prefix.
+	* help.cc (Ftype): Add unwind_protect for ps4 and set it to ""
+	before printing code.
+
+	* tree-misc.h (tree_statement_list): New field, function_body.
+	(tree_statement_list::mark_as_function_body): New function.
+	* parse.y (func_def3): Mark function bodies.
+
+	* pr-output.cc (octave_print_internal): Undo string escapes when
+	printing charMatrix as strings.
+
+Sat Oct 28 17:38:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* utils.h (undo_string_escapes): Add missing const in declaration.
+
+Fri Oct 27 03:49:44 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (next_available_file_number): New stack for keeping
+	track of next available file number.
+	(get_next_avail_file_num): New function.
+	(fopen_file_for_user, fopen_internal, popen_internal,
+	execute_internal): Use it.
+
+Mon Oct 23 07:00:09 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (TC_REP::convert_to_matrix_type,
+	tree_constant::convert_to_matrix_type): New arg, make_complex.
+	(TC_REP::set_index): New arg, rhs_is_complex.  Pass it to
+	convert_to_matrix_type.
+	(TC_REP::assign): Pass rhs.is_complex_type() to set_index.
+
+Thu Oct 19 00:38:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xpow.cc: Include <climits>.
+
+	* sysdep.cc (Fpause): Do pause even if not interactive.
+
+	* tree-const.cc (TC_REP::assign): Don't make RHS numeric if both
+	RHS and LHS are strings.
+
+Wed Oct 18 22:19:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-expm.cc (Fexpm): Avoid taking log of negative number.  Also,
+	don't unnecessarily divide the input matrix by 1.0.
+
+	* input.cc (decode_prompt_string): Recognize \[ and \] too.
+	(initialize_readline): Bind M-p to history-search-backward and M-n
+	to history-search-forward.
+
+Tue Oct 17 04:31:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* xpow.cc (xpow): Handle integer powers better for complex^double.
+	(elem_xpow): Likewise.
+
+	* lex.l ({CCHAR}): If nesting_level.top() is BRACE, return ';',
+	not '\n'.
+
+Mon Oct 16 19:03:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* help.cc (Fwhich): Fix doc string.
+
+	* variables.cc (Fexist): Update doc string.
+
+Sun Oct 15 22:19:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Another massive set of changes to support character matrices
+	with indexing.  The Octave_str_object class is no longer used.
+	Anything having to do with Octave_str_object in the following
+	files has been changed to use charMatrix instead: octave.h,
+	load-save.cc, octave.cc, strfns.cc, data.cc, pr-output.h,
+	pr-output.cc, tree-const.h, dirfns.cc, tree-const.cc,
+	tree-expr.cc.
+
+Sat Oct 14 22:28:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-sort.cc (mx_sort): Don't attempt to sort vectors that have
+	only one element, or matrices that have only one row.
+
+Thu Oct 12 02:16:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* mappers.cc (install_mapper_functions): Add gammaln as an alias
+	for lgamma.
+
+	* tree-const.h, tree-const.cc: Massive overhaul of indexing and
+	indexed assignment functions.
+	* tc-inlines.h, tc-rep.h: Remove files.
+	* Makefile.in: Remove mention of them here too.
+
+	* Makefile.in: Include $(TI_SRC) in DEP_SOURCES_3, not
+	$(TI_SOURCES).
+	Include $(DLD_SRC) in DEP_SOURCES_3.
+	Include $(TI_SRC) in DEF_FILES_5.
+
+Wed Oct 11 01:26:18 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (INCLUDES): Remove tc-inlines.h and tc-rep.h from
+	the list.
+
+Mon Oct  9 08:31:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* lex.l (next_token_is_bin_op): Do match `.+', `.*', etc.
+
+Sun Oct  8 18:19:56 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* idx-vector.h, idx-vector.cc: Delete files.
+	* Makefile.in (SOURCES, INCLUDES): Remove them from lists.
+
+Fri Oct  6 00:52:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-svd.cc (Fsvd): If nargout == 0 or nargout == 1, don't ask for
+	U and V.
+
+Wed Oct  4 00:04:57 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-npsol.cc (Fnpsol, Fnpsol_options): Avoid unused variable
+	warnings if NPSOL_MISSING.
+	* f-qpsol.cc (Fqpsol, Fqpsol_options): Likewise for QPSOL_MISSING.
+
+	* Makefile.in (DISTFILES): Add octave.gperf.
+
+	* lex.l (next_token_is_bin_op): Don't ever return true for `.'
+	since that causes problems with things like [ .1 .1 ].
+
+Tue Oct  3 05:30:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (is_valid_function): Avoid setting error_state if
+	argument is not a string.
+
+	* parse.y (maybe_warn_missing_semi): New function.
+	(list1, list): Call it if statement not terminated by semicolon.
+	* tree-misc.h (tree_statement::line, tree_statement::column):
+	New functions.
+	* octave.cc (input_from_command_line_file): New global variable.
+	(main): Set it.
+	(parse_and_execute): Unwind-protect it and set it to zero.
+	(eval_string): Likewise.
+	* variables.cc (parse_fcn_file): Likewise.
+
+	* user-prefs.cc (warn_missing_semicolon): New function.
+	* user-prefs.h (user_preferences): New field, warn_missing_semicolon.
+	* variables.cc (install_builtin_variables): DEFVAR it.
+
+	* tree-expr.cc (tree_expression::is_logically_true): Actually use
+	argument.
+
+Mon Oct  2 19:55:48 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (install_builtin_variables): Reduce the default
+	value of save_precision to 15.
+
+	* variables.cc (builtin_real_scalar_variable): Return 1 for
+	success, 0 for failure.
+
+	* user-prefs.cc (struct_levels_to_print, set_save_precision,
+	set_output_max_field_width, set_output_precision):
+	Change sense of test for builtin_real_scalar_variable return value.
+	(check_preference): Rename from check_str_pref.  Change all callers.
+	Accept value of 0 to be the same as "false" and nonzero to be the
+	same as "true".
+	Delete val to avoid memory leak.
+	* variables.cc (install_builtin_variables): Change initial values
+	from "true" to 1, "false" to 0.
+
+	* variables.cc (install_builtin_variables): Add DEFVAR for
+	gnuplot_has_multiplot.
+
+	* user-prefs.h (user_preferences): New field,
+	`gnuplot_has_multiplot'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(gnuplot_has_multiplot): New function.
+
+Sat Sep 30 16:52:57 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* oct-gperf.h, octave.gperf: Newfiles.
+	* Makefile.in (DISTFILES): Add octave.gperf.
+	(INCLUDES): Add oct-gperf.h.
+	(oct-gperf.h): New rule.
+	(local-dist, dist): Depend on oct-gperf.h.
+	* lex.l (is_keyword): Use perfect hash function to lookup
+	keywords.
+
+Fri Sep 29 04:36:04 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* version.h (OCTAVE_NAME_AND_VERSION): Add TARGET_HOST_TYPE to this.
+
+Thu Sep 28 00:03:51 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-expr.cc (tree_expression::is_logically_true): New function.
+	* tree-cmd.cc (tree_while_command::eval): Use it instead of
+	handling the test directly here.
+	* tree-misc.cc (tree_if_clause::eval): Likewise
+
+	* tree-const.cc (TC_REP::force_numeric): Don't try to print value
+	of str_obj with %s.
+
+	* error.cc (buffer_error_messages): Rename from
+	suppress_octave_error_messages.
+	(error_message_buffer): New global variable.
+	(verror): Handle buffering of messages.
+	(handle_message): New function.
+	(Ferror, Fwarning, Fusage): Use it instead of duplicating code.
+
+	* octave.cc (Feval): Buffer error messages instead of supressing them.
+
+	* lex.l (is_keyword): Recognize `try', `catch', and `end_try_catch'.
+	* parse.y (TRY, CATCH): New tokens.
+	(command): Recognize try-catch block.
+	(end_error): Add cases for unwind_protect_end and try_catch_end.
+	* token.h (end_tok_type): New field, try_catch_end.
+	* tree-cmd.h, tree-cmd.cc (tree_try_catch): New class.
+	* variables.cc (bind_global_error_variable): New Function.
+	(clear_global_error_variable): Likewise.
+	(install_builtin_variables): Add DEFCONST for __error_text__.
+	* help.cc (keywords): Add `try', `catch', and `end_try_catch'.
+
+	* tree-cmd.cc (tree_unwind_protect::eval): Undo previous change.
+
+	* dirfns.cc (Freaddir, Fmkdir, Frmdir):
+	Do tilde expansion on the argument.
+
+Tue Sep 26 00:10:29 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* f-dassl.cc, f-fsolve.cc, f-lsode.cc, f-npsol.cc, f-quad.cc:
+	Don't try to figure out if the user-supplied functions take the
+	correct number of arguments.  Simply let the call fail.
+	* variables.cc (takes_correct_nargs): Delete unused function.
+	* tree-expr.cc (tree_builtin::eval): Don't complain for too many
+	arguments to mapper functions.
+	* tree-expr.h, tree-expr.cc (tree_builtin, tree_function, tree_fvc):
+	Delete unused function max_expected_args.
+
+	* defun.h (DEFUN): Delete unnecessary args nargin_min and nargout_max.
+	New arg unused_arg_flags.
+	(DEFUN_TEXT): Likewise.
+	* defun-dld.h (DEFUN_DLD_BUILTIN): Likewise.
+	* defun-int.h (DEFUN_INTERNAL, DECLARE_FUN, DEFINE_FUN_STRUCT):
+	Do the real work.
+
+	* data.cc, dirfns.cc, dynamic-ld.cc, error.cc, f-balance.cc,
+ 	f-chol.cc, f-colloc.cc, f-dassl.cc, f-det.cc, f-eig.cc, f-expm.cc,
+ 	f-fft.cc, f-fft2.cc, f-find.cc, f-fsolve.cc, f-fsqp.cc,
+ 	f-givens.cc, f-hess.cc, f-ifft.cc, f-ifft2.cc, f-inv.cc, f-log.cc,
+ 	f-lpsolve.cc, f-lsode.cc, f-lu.cc, f-minmax.cc, f-npsol.cc,
+ 	f-pinv.cc, f-qpsol.cc, f-qr.cc, f-quad.cc, f-qzval.cc, f-rand.cc,
+ 	f-schur.cc, f-sort.cc, f-svd.cc, f-syl.cc, file-io.cc, help.cc,
+ 	input.cc, lex.l, load-save.cc, mappers.cc, octave-hist.cc,
+ 	octave.cc, octave.h, pager.cc, pr-output.cc, resource.cc,
+ 	sighandlers.cc, strfns.cc, sysdep.cc, timefns.cc, token.cc,
+ 	tree-const.cc, tree-expr.cc, tree-expr.h, tree-plot.cc,
+ 	unwind-prot.cc, unwind-prot.h, utils.cc, variables.cc,
+ 	variables.h, version.h, xdiv.cc:
+	Avoid unused variable warnings.
+
+	* tree-expr.h (tree_oct_obj::print_value (ostream&)):
+	Delete name of unused arg.
+	(tree_fvc::save (ostream&, int, int): Likewise.
+
+	* tree-const.h (tree_constant::tree_constant (magic_colon)):
+	Delete name of unused arg.
+	(tree_constant::tree_constant (all_va_args)): Likewise
+	(ColumnVector vector_value (int, int)): Likewise.
+	(ComplexColumnVector vector_value (int, int)): Likewise.
+	(Octave_object::eval (int, int, const Octave_object&): Likewise.
+
+	* octave.cc (execute_startup_files): Look for octaverc first in
+	site/m, then in $(version)/m.
+	* variables.cc (get_local_site_defaults): New function.
+	* defaults.h.in (OCTAVE_LOCALFCNFILEDIR, OCTAVE_LOCALSTARTUPFILEDIR):
+	New macros.
+	* Makefile.in (defaults.h): Also substitute ${localfcndir}.
+
+Mon Sep 25 17:01:03 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* variables.cc (install_builtin_variables): Add DEFCONST for "e".
+
+Fri Sep 22 02:18:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* dirfns.cc (Fls): Delete ls_command after using it, not before.
+
+	* input.h, input.cc (gnu_readline): Don't declare gnu_readline
+	`extern "C"'.
+
+	* sysdep.h: Only declare gethostname if it is missing, then don't
+	declare it `extern "C"'.
+
+	* dirfns.cc: Don't declare strerror().
+
+	* input.cc (command_generator): Use malloc, not xmalloc.  Don't
+	declare xmalloc.
+	(gnu_readline): Don't declare this `extern "C"'.
+
+	* octave-hist.cc: Don't declare history_get().  It is now in
+	readline/history.h.
+
+	* input.cc: Don't declare history_get().  It is now in
+	readline/readline.h.
+
+	* resource.cc: Don't surround include of sys/resource.h in
+	`extern	"C" { }'.
+
+	* fnmatch.h [__cplusplus]: Surround contents in `extern "C" { }'.
+	* load-save.cc, symtab.cc, variables.cc: Don't surround
+	fnmatch.h include in `extern "C" { }'.
+
+	* help.cc: Don't #undef __FUNCTION_DEF before including
+	readline/tilde.h.
+
+	* dirfuns.cc, file-io.cc, help.cc, load-save.cc, octave-hist.cc,
+	sysdep.cc, tree-plot.cc, utils.cc, variables.cc:
+	Don't surround readline includes in `extern "C" { }'.
+
+	* sysdep.cc: Move all include statements to top of file.
+
+Tue Sep 19 01:58:21 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.cc (Fsystem): Use iprocstream *, and unwind_protect it.
+	* pager.cc (flush_output_to_pager): Likewise.
+	* dirfns.cc (Fls): Likewise.
+	* tree-plot.cc (plot_stream): Now a pointer.
+	(open_plot_stream): Deal with it.
+	(send_to_plot_stream, cleanup_tmp_files, do_external_plotter_cd):
+	Likewise.
+
+	* procstream.cc (cleanup_iprocstream, cleanup_oprocstream):
+	New functions.
+
+	* procstream.h, procstream.cc (class iprocstream, class oprocstream):
+	Keep track of pbuf.  Initialize it to 0 in default constructors,
+	delete it in destructor.  Don't call close in destructor.
+
+	* sighandlers.cc (octave_set_signal_handler): New function.
+	Use this name instead of signal everywhere.
+	* help.cc (try_info): Likewise.
+	* pager.cc (flush_output_to_pager): Likewise.
+	* octave.cc (main): Likewise.
+	* octave-hist.cc (do_edit_history): Likewise.
+
+	* input.cc (initialize_readline): Set rl_paren_string_delimiters
+	to avoid treating single quotes as string delimiters when doing
+	paren matching.
+
+	* Makefile.in (SOURCES): Don't list Map.cc or SLStack.cc here.
+
+	* tree-const.cc: Do include utils.h.
+
+	* sysdep.cc: Don't surround terminal includes in extern "C".
+	Include them before readline.h.
+
+	* Map.h: Don't include utils.h.
+	(CHNode::CHNode (const char*, const C&, CHNode *t):
+	Do strsave() inline.
+
+	* input.cc (generate_possible_completions): Generate name list
+	even when text == 0.
+	(operate_and_get_next): Don't declare history_stifled, call
+	history_is_stifled () instead.
+	Don't declare history_length, or max_input_history either.
+	Check (where >= history_length - 1) too, as in recent versions of
+	bash.
+
+	* user-prefs.h (user_prefs): New field, `completion_append_char'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(sv_completion_append_char): New function.
+	* variables.cc (install_builtin_variables): Install
+	completion_append_char.
+	* input.cc (command_generator): Use it.
+
+	* SLList-expr.cc, SLList-misc.cc, SLList-plot.cc, SLList-tc.cc,
+	DLList-fi.cc: Include config.h.
+	* DLList-fi.cc: Include file-info.h, not file-io.h.
+
+Mon Sep 18 11:01:24 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.h (clean_up_and_exit): Tag with NORETURN instead of using
+	typedef trick.
+	* error.h (panic): Likewise.
+	* utils.h (jump_to_top_level): Likewise.
+
+	* file-io.h: Protect from multiple includes with octave_file_io,
+	not octave_files.
+
+	* file-info.h (class file_info): Convert to using std C++ string
+	class from char *.
+	* file-info.cc: Likewise.  Don't include utils.h.
+	* file-io.cc (return_valid_file, fopen_file_for_user,
+	fflush_internal, do_scanf): Use operator ==, not strcmp.
+	(close_files): Call error with file.name ().data (),
+	not file.name ().
+	(freport_internal): Call form with file.mode ().data () and
+	file.name ().data ().
+
+	* file-io.cc, file-io.h: Extract file_info class.
+	* file-info.cc, file-info.h: New files for file_info class.
+
+	* user-prefs.h (user_prefs): New field, `beep_on_error'.
+	* user-prefs.cc (init_user_prefs): Initialize it.
+	(beep_on_error): New function.
+	* variables.cc (install_builtin_variables): Install beep_on_error.
+	* octave.cc (maximum_braindamage): Set beep_on_error to "true".
+	* error.cc (verror): Conditionally beep.
+	(error): Don't reset error_state until after verror is called.
+
+Sun Sep 17 16:41:25 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (read_mat_binary_data, read_ascii_data,
+	save_ascii_data, read_binary_data, save_binary_data):
+	Handle string arrays.
+
+Fri Sep 15 00:24:19 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* user-prefs.cc (struct_levels_to_print,
+	set_output_max_field_width, set_output_precision,
+	set_save_precision): Eliminate unecessary kludge variable.
+
+	* variables.cc (gobble_leading_white_space): New arg,
+	in_parts.  Change all callers.
+
+	* lex.l (HELP_FCN): Delete start state.  The `help' command is now
+	handled the same as any other text-style function.
+
+	* gripes.cc (gripe_invalid_value_specified): New function
+	* user-prefs.cc: Use it.
+
+	* sysdep.cc (octave_words_big_endian): New global variable.
+	(ten_little_endians): New function.
+	(sysdep_init): Call it.
+	* load-save.cc (words_big_endian): Use this at run-time instead of
+	depending on WORDS_BIGENDIAN at compile-time.
+
+	* symtab.h (SYMTAB_VARIABLES): New macro.
+	* variables.cc (Fclear): Use it instead of just
+	symbol_def::USER_VARIABLE when looking for variables.
+
+	* octave.cc (main): If there is a file to execute, set
+	program_invocation_name and program_name to the name of the file
+	and argv to the remaining args.
+	(intern_argv): Only define argv if there are some remaining
+	arguments.
+
+	* defun.h (DEFVAR_INT): New macro.
+	(DEFVAR): Define in terms of DEFVAR_INT.  Delete args protect and
+	eternal.
+	(DEFCONST): New macro.
+	* variables.cc (install_builtin_variables): Use DEFCONST where
+	appropriate, change uses of DEFVAR to match new definition.
+
+	* variables.cc (bind_builtin_variable): New variant that accepts
+	const tree_constant& value.
+	(install_builtin_variables): Properly alphabetize DEFVAR for this.
+
+	* octave.cc (short_opts): Prefix with `+' to prevent argv
+	permutation.
+	(main): Don't use readline if forced_interactive.
+	(traditional): New file-scope variable.
+	(long_opts, usage_string, verbose_usage): Add `--traditional'.
+	(maximum_braindamage): New function.
+	(main): Call it if --traditional.
+
+	* input.cc (do_input_echo): Print prompt correctly when
+	forced_interactive is either true or false.
+
+Thu Sep 14 00:54:06 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* data.cc (Fstruct_elements): New function.
+
+	* file-io.cc (Fumask): New function.
+
+	* dirfns.cc (Fmkdir, Frmdir, Frename): New functions.
+
+	* Makefile.in: Add rules and dependencies for building safe-stat.o
+	and safe-lstat.o.
+
+	* mkdir.c, rename.c, rmdir.c: New files.
+	* Makefile.in (SOURCES): Include them in the list.
+
+	* safe-xstat.hin, safe-xstat.cin: New files
+	* Makefile.in (DISTFILES): Include them in the list.
+
+	* sighandlers.cc (octave_new_handler): Try to continue on memory
+	exhausted errors.
+	(sigfpe_handler): Improve error message.
+
+	* Makefile.in: Use `ifndef omit_deps', not `ifndef $(omit_deps)'.
+
+	* dirfns.cc (Freaddir): New function.
+
+	* f-sort.cc: Complete rewrite.  Now uses stable sort algorithm and
+	correctly handles complex matrices containing columns of all real
+	numbers.
+
+Wed Sep 13 03:16:40 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* arith-ops.cc: Unconditionally #define DIVIDE_BY_ZERO_ERROR.
+
+	* variables.cc (install_builtin_variables): Unconditionally
+	install NaN and nan.
+
+	* mappers.cc (xisinf): Don't do bogus things if isinf, isnan, or
+	finite are missing.
+	(xfinite): Likewise.
+
+	* sysdep.cc (octave_ieee_init): Don't set octave_NaN and
+	octave_Inf if values are not available.
+
+	* resource.cc (mk_ru_map): Don't use ru_ or tv_ as prefixes to
+	Octave names for the structure members.
+
+Tue Sep 12 02:04:16 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* procstream.h, procstream.cc: Rewrite.
+
+Mon Sep 11 18:42:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* filemode.c: New file, from Emacs.
+	* Makefile.in (SOURCES): Add it to the list.
+
+	* file-io.cc (Fstat, Flstat, mk_stat_map): New functions.
+
+	* timefns.cc (mk_tm_map): Don't use tm_ as prefix to Octave names
+	for these structure members.
+	(extract_tm): Likewise.
+	(Flocaltime): Fix doc string to match.
+
+Thu Sep  7 02:04:27 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* load-save.cc (save_user_variables): New function.
+	* sighandlers.cc (my_friendly_exit): Call it before exiting.
+	(sigfpe_handler): New function.
+	(install_signal_handlers) [__alpha__]: Install it.
+
+Wed Sep  6 14:35:10 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-cmd.cc (tree_unwind_protect::eval): Ignore errors and
+	suppress error messages while executing first block of
+	unwind_protect commands.
+
+	* parse.y (end_error): Add missing case for unwind_protect_end.
+
+	* tree-expr.cc (tree_builtin::eval): Complain if no arguments
+	given for mapper functions.
+	(tree_fvc::lookup_map_element): Print error message for invalid
+	structure reference.
+
+Tue Sep  5 02:04:12 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc, input.cc, load-save.cc, octave.cc, sysdep.cc,
+	variables.cc, octave-hist.cc, utils.cc, f-schur.cc, f-rand.cc,
+	f-quad.cc, f-qpsol.cc, f-npsol.cc, f-lsode.cc, f-fsolve.cc,
+	f-dassl.cc, f-colloc.cc, f-balance.cc, error.cc, data.cc:
+	Add const qualifiers where appropriate.
+
+	* dirfns.h: Include <ctime>, for time_t.
+
+	* tempname.c, file-io.cc, help.cc, input.cc, octave-hist.cc,
+	octave.cc, sighandlers.cc, sysdep.cc, tree-expr.cc, tree-misc.cc,
+	tree-plot.cc, utils.cc, variables.cc, sysdir.h:
+	Move #include <sys/type.h> inside #ifdef HAVE_UNISTD_H.
+
+	* syswait.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* file-io.cc, sighandlers.cc: Use it instead of including
+	sys/wait.h directly.
+
+	* octave.cc: Include statdefs.h, not sys/stat.h.
+
+	* sysdir.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* dirfns.cc, utils.cc: Use it instead of including the headers
+	directly.
+
+	* pathlen.h: New file.
+	* Makefile.in (INCLUDES): Add it to the list.
+	* dirfns.cc, input.cc: Use it instead of including sys/param.h
+	directly.
+	* utils.cc: Don't include sys/param.h
+
+Sun Sep  3 18:52:59 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (TC_REP::string_value): Return const char*, not
+	char *.
+
+	* All .cc, .y, .l, .y files: Include <cctype>, not <ctype.h>, and
+	so on for all new C++ versions of these standard C headers.
+
+Thu Aug 31 17:09:38 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* pathsearch.h: Also hide `string'.
+
+	* oct-str.cc, oct-str.h: New files.
+	* Makefile.in: Add to the appropriate lists.
+	* tc-rep.h: Change char* to Octave_string* in anonymous union.
+	* tree-expr.cc (tree_matrix::eval): Handle multiple element strings.
+	* strfns.cc (toascii): Likewise.
+	* tree-const.cc (print_as_string): Likewise.
+	(TC_REP::force_numeric, TC_REP::rows, TC_REP::columns,
+	TC_REP::double_value, TC_REP::complex_value, TC_REP::matrix_value,
+	TC_REP::complex_matrix_value, TC_REP::convert_to_str): Likewise.
+	(TC_REP::print): Call octave_print_internal for string case.
+	(all_strings): New function.
+	Fix constructors to use new data structure.
+	* pr-output.cc (octave_print_internal): Add version for strings.
+	* Array-string.cc: New file.
+
+	* octave.cc (octave_argv): New global variable.
+	(intern_argv): New function.
+	(main): Fix argument parsing to do the right thing for arguments
+	to executable scripts.
+	* variables.cc: Add DEFUNs for argv, program_invocation_name, and
+	program_name.
+
+	* defun.h (DEFVAR): Fix comment.
+
+Thu Aug 24 00:02:00 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* file-io.cc (fgets_internal): Make second arg optional.  Add
+	optional arg `strip_final_newline'.
+	(Ffgets): Change to match new definition of fgets_internal.
+	(Ffgetl): Implement using the new fgets_internal.
+
+	* f-rand.cc (Frand): Update code for sizing return value to match
+	that used by ones, zeros, and eye.
+
+Wed Aug 23 19:52:45 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (do_vector_assign): Don't crash for
+	A(range) = scalar, or A(matrix) = scalar.
+
+	* f-dassl.cc (set_dassl_option): Rename from do_dassl_option.
+	(show_dassl_option): New function.
+	(Fdassl_options): Handle single arg.
+	* f-fsolve.cc (set_fsolve_option): Rename from do_fsolve_option.
+	(show_fsolve_option): New function.
+	(Ffsolve_options): Handle single arg.
+	* f-fsqp.cc (set_fsqp_option): Rename from do_fsqp_option.
+	(show_fsqp_option): New function.
+	(Ffsqp_options): Handle single arg.
+	* f-lpsolve.cc (set_lpsolve_option): Rename from do_lpsolve_option.
+	(show_lpsolve_option): New function.
+	(Flpsolve_options): Handle single arg.
+	* f-lsode.cc (set_lsode_option): Rename from do_lsode_option.
+	(show_lsode_option): New function.
+	(Flsode_options): Handle single arg.
+	* f-npsol.cc (set_npsol_option): Rename from do_npsol_option.
+	(show_npsol_option): New function.
+	(Fnpsol_options): Handle single arg.
+	* f-qpsol.cc (set_qpsol_option): Rename from do_qpsol_option.
+	(show_qpsol_option): New function.
+	(Fqpsol_options): Handle single arg.
+	* f-quad.cc: (set_quad_option): Rename from do_quad_option.
+	(show_quad_option): New function.
+	(Fquad_options): Handle single arg.
+	(Fquad): Doc fix.
+
+Tue Aug 22 00:38:05 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-plot.cc (do_external_plotter_cd): New function.
+	* dirfns.cc (octave_change_to_directory): New function.  If cd is
+	successful, also call do_external_plotter_cd().
+	(Fcd): Call octave_change_to_directory(), not change_to_directory().
+
+	* pr-output.cc (pr_any_float): Change declaration of counter to
+	size_t to avoid gcc warnings.
+
+	* idx-vector.cc, octave-hist.cc, tree-const.cc, tree-expr.cc,
+	tree-misc.cc, utils.cc, xpow.cc, Map.cc:
+	Update for change in for loop variable scope for gcc 2.7.0.
+
+Mon Aug 21 19:34:53 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* tree-const.cc (fortran_style_matrix_assignment): Properly handle
+	case of complex LHS, real RHS.
+
+	* Makefile.in: Only include dependency files if $(omit_deps) is
+	not set.
+
+Wed Jul  5 00:03:58 1995  John Eaton  <jwe@bevo.che.wisc.edu>
+
+	* sysdep.cc: Explicitly include string.h.
+
+Sun Jun 25 00:18:10 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* load-save.cc (too_large_for_float (const Matrix&)):
+	Extract elements as doubles, not Complex.
+
+Sat Jun 24 22:59:15 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* pr-output.cc (any_element_is_inf_or_nan): Declare extern, not static.
+	* f-svd.cc (Fsvd): Call here to avoid trying to take SVD of matrix
+	containing Inf or NaN values.
+
+	* pr-output.cc (bit_format): New file-scope variable.
+	(set_format, pr_any_float): Handle bit_format.
+	(octave_print_internal): Handle bit_format like bank_format.
+	(init_format_state): Initialize bit_format.
+	(set_format_style): Allow `format bit' and `format native-bit'.
+
+Thu Jun  8 15:20:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* mappers.cc (arg, imag, signum): If arg is NaN, return NaN.
+
+Mon May 15 14:47:04 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* pager.cc (Fdiary): Initialize diary_file here, not in the
+	file-scope declaration.
+
+	* tree-expr.cc (tree_index_expression::eval):
+	Handle nargin == 0 the same as other cases.
+
+Tue May  2 10:02:23 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* load-save.cc (do_double_format_conversion): Add missing breaks.
+	(do_float_format_conversion): Likewise.
+
+Mon May  1 13:50:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (OCTAVE_LIBS): Add @LIBPLPLOT@ to the list.
+
+	* timefns.cc (Ftime): Handle GETTIMEOFDAY_NO_TZ.
+
+	* Makefile.in (SOURCES): Delete tc-rep.cc, tc-rep-ass.cc, and
+	tc-rep-idx.cc from the list.
+
+	* tree-const.h: Add #pragma interface.
+	* tree-const.cc: Add contents of tc-rep.cc, tc-rep-ass.cc, and
+	tc-idx.cc to this file.  Add #pragma implementation.  This makes
+	tree-const.cc large, but makes the final binary smaller.
+
+	*  unwind-prot.h unwind-prot.cc token.cc token.h procstream.cc
+	procstream.h idx-vector.cc idx-vector.h symtab.cc symtab.h
+	oct-map.cc oct-map.h oct-obj.cc oct-obj.h tree-plot.h tree-plot.cc
+	tree-misc.cc tree-misc.h tree-expr.cc tree-expr.h tree-cmd.cc
+	tree-cmd.h tree-base.cc tree-base.h:
+	Add #pragma interface/implementation.
+
+	* Makefile.in (OCTAVE_LIBS): Delete @LIBINFO@ from list.
+	* help.cc: Don't include info headers or extern declarations for
+	functions from info.
+	(try_info): Call info as a subprocess.	Delete second arg.
+	Handle SIGINT here, not in help_from_info().
+	(help_from_info): Complain if info doesn't work.
+
+	* defun-dld.h (DEFUN_DLD_BUILTIN) [OCTAVE_LITE && MAKE_BUILTINS]:
+	If ! WITH_DLD, simply emit a character string constant.
+
+Fri Apr 28 15:23:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* lex.l ({IDENT}{S}*): Don't delete tok.  That's handled by
+	strip_trailing_whitespace() now.
+	(<HELP_FCN>[^ \t\n]*{S}*|<TEXT_FCN>[^ \t\n\;\,]*{S}*): Ditto.
+
+	* pathsearch.h: Include kpathsea/progname.h.
+	* octave.cc (initialize_globals): Call kpse_set_progname().
+
+	* token.h: Declare copy constructor and operator = private.
+	* token.cc: Abort if copy constructor or operator = is used.
+
+Thu Apr 27 13:54:39 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tree-expr.cc (lookup_map_element): Don't list default argument
+	values here too.
+
+	* pr-output.cc (hex_format): New file-scope variable.
+	(set_format, pr_any_float): Handle hex_format.
+	(octave_print_internal): Handle hex_format like bank_format.
+	(init_format_state): Initialize hex_format.
+	(set_format_style): Allow `format hex' and `format native-hex'.
+
+	* variables.cc (bind_ans): Create ans_id each time with new and
+	ask tree_simple_assignment_expression to handle cleaning it up.
+	This apparently plugs a memory leak.
+
+	* help.cc (Ftype): Don't try to print map constants.  Handle
+	references to structure members.
+
+Wed Apr 26 12:40:59 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* input.cc (generate_struct_completions): New function.
+	(generate_possible_completions): Likewise.
+	(looks_like_struct): Likewise.
+	(command_generator): Handle completion of struct variables.
+
+	* tree-expr.h, tree-expr.cc (tree_fvc::lookup_map_element):
+	Add insert and silent args.
+
+	* oct-map.cc: New file.
+	* Makefile.in (SOURCES): Add it to the list.
+
+Mon Apr 24 09:41:02 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* variables.cc (Fexist): Handle structure references too.
+
+	* tree-const.cc (lookup_map_element (const char*, int, int):
+	New function.
+	(lookup_map_element (SLList<char*>&, int, int): New arg, silent.
+	* tc-rep.cc (lookup_map_element): New arg, silent. If nonzero,
+	don't call error().
+
+	* tc-rep.h (is_empty): Define here.
+	* tree-const.h (is_empty): Hand off to TC_REP::is_empty().
+
+	* data.cc (Fstruct_contains): Call lookup_map_element on args(0)
+	instead of extracting the map and calling contains() on it.
+
+	* parse.y (EPLUS, EMINUS): New tokens.
+	(simple_expr): Handle EPLUS, EMINUS the same as `+' and `-'.
+	* lex.l (".+", ".-"): New patterns.  Match these separately to
+	disallow using them as unary operators.
+
+	* lex.l (next_token_is_bin_op): Simplify by noting that spacing
+	only matters for those tokens that can also be unary ops.
+
+Fri Apr 21 14:34:45 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* load-save.cc (read_ascii_data): Allow reading of empty
+	matrices.
+
+	* tc-rep-ass.cc (vector_assignment): Only assert that we are not
+	doing fortran-style indexing and that nr <= 1 || nc <= 1.
+	(do_vector_assign): Handle assignment of [] when one dimension is
+	zero and the other is anything.
+
+Thu Apr 20 13:56:21 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tc-rep-ass.cc (delete_rows, delete_columns): Simply return if
+	num_to_delete is 0.
+
+	* lex.l (handle_identifier): Don't match plot option keywords
+	inside parentheses or braces.
+
+	* variables.cc (parse_fcn_file): Also delete tmp_help_txt if
+	running a script.
+
+	* tree-cmd.h (tree_command): Add destructor.
+
+	* tree-expr.h tree_simple_assignment_expression (lhs_idx_expr):
+	Hang on to idx_expr, not just its parts so it can be deleted.
+	(init): Initialize it.
+	* tree-expr.cc (~tree_simple_assignment_expression): Delete it.
+
+	* tree-expr.h (tree_multi_val_ret, tree_oct_obj, tree_fvc,
+	tree_identifier, tree_builtin, tree_function): Add destructors.
+	* tree-expr.cc (tree_function::~tree_function): Delete some stuff.
+
+	* tree-misc.h (tree_va_return_list): Add destructor.
+
+	* octave.cc (__builtin_new, __builtin_delete): Provide our own,
+	for debugging.
+
+	* utils.cc (strconcat): Don't depend on the return value from
+	strcat.
+	(file_in_path): Simplify logic.
+
+	* parse.y (maybe_convert_to_ans_assign): Create ans_id each time
+	with new and ask tree_simple_assignment_expression to handle
+	cleaning it up.  This apparently plugs a memory leak.
+
+	* lex.l (strip_trailing_whitespace): Declare retval static.
+	Delete it before saving next string.
+
+	* error.cc (Ferror): Do call error() for empty string args.
+	(error_1): Don't print anything if fmt is "" or "\n", but do set
+	the error state appropriately.
+
+	* tree-cmd.cc (tree_unwind_protect::eval): Handle return and break
+	in the `try' part of the statement.
+
+Mon Apr 10 19:29:44 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* f-expm.cc, f-givens.cc, f-qzval.cc, f-syl.cc, f-rand.cc:
+	Where appropriate, declare Fortran functions to take reference
+	instead of pointer args.  Change callers.
+
+	* mappers.cc: Declare Fortran functions to take reference instead
+	of pointer args.  Change callers.
+
+	* gamma.c, lgamma.c, erfc.c, erf.c, atanh.c, asinh.c, acosh.c:
+	Declare Fortran functions to take reference instead of pointer
+	args.
+
+Sun Apr  9 19:38:53 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* file-io.cc (Fpopen, Fpclose, Fexecute, Fsync_system,
+	Fasync_system, Fwaitpid, Fmkfifo, Funlink): New functions.
+
+	* sighandlers.cc (sigchld_handler): New function.
+	(install_signal_handlers): Add call to install
+	sigchld_handler. (This is #if 0'd out, waiting for code to help
+	determine which child exited and what to do about it).
+
+	* tree-expr.h (tree_oct_obj): New class.
+
+	* tree-expr.h (tree_multi_assignment_expression::preserve): New
+	data member.  Add arg with default value to constructors.  Change
+	callers as necessary.
+	* tree-expr.cc (~tree_multi_assignment_expression): Conditionally
+	delete lhs.
+
+	* parse.y (make_multi_val_ret): Pass matrix instead of getting it
+	from the global matrix list.
+	(expression): Extract matrix from matrix list before calling
+	make_multi_val_ret().
+
+	* parse.y (command): Handle new for loop syntax for structures.
+
+	* tree-plot.h (subplot_list): Include tree_print_code() in
+	initializer lists for constructors.
+	* tree-expr.h (tree_statement_list, tree_argument_list,
+	tree_parameter_list, tree_return_list, tree_global_init_list,
+	tree_if_command_list, ): Likewise.
+
+	* tree-cmd.h (tree_for_command::id_list): New data member.
+	(tree_for_command (tree_return_list*, tree_expression*,
+	tree_statement_list*, int, int)): Likewise.
+	* tree-cmd.cc (tree_for_command::eval): Handle for loops with
+	structures.
+	(do_for_loop_once (tree_return_list*, Octave_object&, int&)):
+	New form for handling for loops with structures.
+
+	* sysdep.cc (octave_ieee_init): Determine floating point format
+	here.
+	(native_float_format): New global variable.
+	(Fisieee): Compute return value from native_float_format, not by
+	using preprocessor macros.
+	* sysdep.h (enum floating_point_format): Move declaration here.
+	* load-save.cc: From here.
+	Always define all floating point format conversion routines.
+	(do_double_format_conversion, do_float_format_conversion):
+	Use native_float_format instead of preprocessor macros.
+
+Sat Apr  8 15:41:35 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile (TEMPLATE_SRC): New variable.
+	(DISTFILES): Add $(TEMPLATE_SRC).
+	(SOURCES): Delete Map.cc and SLStack.cc from here.
+
+	* variables.cc (install_builtin_variables): Use OCTAVE_VERSION
+	instead of version_string to initialize OCTAVE_VERSION.
+	* version.h (version_string): Delete.
+
+	* getopt.c (_getopt_internal): Initialize indfound to avoid warning.
+
+Fri Apr  7 15:29:41 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tc-inlines.h (REP_RHS_MATRIX): Just check to see if tc is real
+	or complex.  If conversion fails, return.
+
+Thu Apr  6 00:10:47 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* data.cc (Fstruct_contains): New function.
+
+	* tc-rep.cc (print_code): Add extra parens around while condition
+	to avoid warning.
+	* utils.cc (undo_string_escapes): Likewise.
+	* input.cc (decode_prompt_string): Likewise.  Also rewrite if
+	statement to avoid warning.
+
+Tue Apr  4 22:54:17 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tree-expr.cc (tree_multi_assignment_expression::eval,
+	tree_simple_assignment_expression::eval):  Call print_constant
+	even if user_pref.print_answer_id_name is false.
+
+Mon Apr  3 17:57:14 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tc-inlines.h (TC_REP): Avoid redefinition.
+
+	* tree-const.h (do_binary_op, do_unary_op): Declare as friends of
+	tree_constant class too.
+
+	* tree-plot.h (subplot_using::have_values): Delete data member.
+	* tree-plot.cc (subplot_using::eval): Always recompute values.
+
+Fri Mar 31 10:18:32 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tc-rep.cc (print): Print open brace for structures here.
+	* tree-expr.cc (print_constant): Not here.
+
+	* symtab.cc (define): Don't delete arg if sv_fcn fails.
+
+	* tree-const.cc (print): New function.  Create ostrstream buffer
+	and pass it to rep->print().
+	* tree-const.h (eval (int)): Call print(), not rep->print().
+	* tc-rep.cc (structure_indent_level): New file-scope variable.
+	(print): New arg, output_buf, is stream to print to.
+	Print values of structure elements too.
+
+	* user-prefs.h (user_preferences): New field, struct_levels_to_print.
+	* user-prefs.cc (struct_levels_to_print): New function.
+	* variables.cc (install_builtin_variables): Add DEFVAR for new
+	variable struct_levels_to_print.
+
+	* tree-const.cc (print_as_scalar, print_as_structure): Move here
+	from tree-expr.cc and make extern.
+
+	* tree-expr.cc (print_as_structure): New function.
+	(print_constant): Use it.
+
+	* tree-expr.cc (print_constant): New arg, print_padding.
+	(tree_simple_assignment_expression::eval): Use print_constant
+	instead of duplicating code here.
+	(tree_multi_assignment_expression::eval): Likewise.
+
+Thu Mar 30 13:24:11 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (SOURCES): Add resource.cc.
+	* resource.cc: New file, extracted from timefns.cc.
+	(Fgetrusage): New function.
+	* timefns.cc (cputime): Delete (now implemented in a function file
+	using new getrusage function).
+
+Wed Mar 29 22:52:42 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* Makefile.in (SOURCES): Add strftime.c.
+	* strftime.c: New file, from sh-utils distribution.
+
+	* timefns.cc (mk_tm_map, extract_tm, Ftime, Fgmtime, Flocaltime,
+	Fmktime, Fstrftime): New basic time functions.
+	(Fclock, Fdate): Delete (now implemented in function files using new
+	time functions).
+
+Tue Mar 28 17:51:51 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* file-io.cc (return_valid_file, do_printf, do_scanf,
+	fclose_internal, feof_internal, ferror_internal, fflush_internal,
+	fgets_internal, fopen_internal, fread_internal, freport_internal,
+	frewind_internal, fseek_internal, ftell_internal,
+	fwrite_internal): Declare static.
+	* file-io.h: Delete extern declarations for them.
+
+Fri Mar 24 09:52:50 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* pr-output.cc (pr_col_num_header): New function.
+	(compact_format): New file-scope variable.
+	(set_format_style): Handle loose and compact formats.
+	(octave_print_internal (ostream&, const ComplexMatrix&, int)):
+	Replace duplicate code with call to pr_col_num_header().
+	(octave_print_internal (ostream&, const Matrix&, int): Likewise.
+	(octave_print_internal (ostream&, const Range&, int): Likewise.
+
+Tue Mar 21 08:44:48 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* mappers.cc (xgamma): Always use Slatec library function.
+	* (xlgamma): Likewise.
+	* Makefile.in (SOURCES): Don't include lgamma.c.
+
+Fri Mar 17 22:38:39 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tc-rep.cc (TC_REP::new): Don't try to keep track of newlist_tail.
+	Explicitly initialize newlist to zero.
+	* tree-const.cc (tree_constant::operator new): Likewise.
+
+Fri Mar 10 12:40:24 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* tree-cmd.cc (quit_loop_now): Declare inline.
+	(tree_for_command::do_for_loop_once): Split into two versions, one
+	for the general case and one for when the loop variable is a
+	simple identifier.
+	(DO_LOOP): New macro.  Move tests outside of loop.
+	(tree_for_command::eval): Speed up by checking to see if loop
+	variable is a simple identifier and by using DO_LOOP.
+
+	* tree-const.h: New union of rep and freeptr.  The freeptr element
+	is used for our custom memory management functions.
+
+	* tc-rep.h: Add freeptr element to anonymous union (for our custom
+	memory management functions).
+
+	* tree-const.cc (newlist, newlist_grow_size, newlist_tail): New
+	static variables.
+	(tree_constant::operator new): Always define to allow more
+	efficient allocation of single tree_constants.
+	(tree_constant::operator delete): Likewise, handle deletion of the
+	memory we allocate.
+
+	* tc-rep.cc (newlist, newlist_grow_size, newlist_tail): New static
+	variables.
+	(tree_constant::operator new): Always define to allow more
+	efficient allocation of single tree_constants.
+	(tree_constant::operator delete): Likewise, handle deletion of the
+	memory we allocate.
+
+Fri Mar  3 14:00:08 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* error.cc (verror): Terminate output_buf with ends.
+
+	* statdefs.h: Use C-style comment in first line instead of
+	C++-style comment.
+
+Mon Feb 27 10:11:18 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* parse.y (maybe_convert_to_ans_assign): Only lookup ans once.
+	* variables.cc (bind_ans): New function.
+	* tree-expr.cc (tree_identifier::eval (int)): Use it here.
+	(tree_identifier::eval (int, int, const Octave_object&): And here.
+
+	* tree-expr.cc (install_nargin_and_nargout): New function.
+	* tree-expr.h (tree_function::tree_function (tree_statement_list *,
+	symbol_table *, int, int)): Call it.
+
+	* tree-expr.cc (tree_function::bind_nargin_and_nargout): New function.
+	(tree_function::eval): Call it insead of the one from variables.cc.
+
+	* variables.cc (bind_nargin_and_nargout): #if 0 out.
+
+Sun Feb 26 00:17:06 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* load-save.cc (Fload, Fsave): Free fname returned by tilde_expand().
+	* dirfns.cc (Fls): Likewise.
+
+	* tree-expr.cc (tree_multi_assignment_expression::eval (int, int,
+	const Octave_object&)): Call tree_return_list::operator () (Pix)
+	explicitly.
+
+	* octave.cc (initialize_globals): Put TEXMF in the environment for
+	kpthsea.
+
+	* Makefile.in (OCTAVE_LIBS): Use @LIBINFO@ and @LIBREADLINE@,
+	substituted by configure.  Use kpathsea.a, not libkpathsea, so we
+	don't have to modify the kpathsea Makefile.
+
+Sat Feb 25 18:59:26 1995  John Eaton  <jwe@schoch.che.utexas.edu>
+
+	* pathsearch.cc: New file.
+	* pathsearch.h: New file.
+	* Makefile.in (INCLUDES): Include it in the list.
+	* dynamic-ld.cc, help.cc, utils.cc: Use it instead of repeating
+	identical code multiple times.
+
+	* variables.cc (install_builtin_variables): Only DEFVAR
+	suppress_verbose_help_message if USE_GNU_INFO.
+
+	* help.cc (Fhelp): Only handle -i if USE_GNU_INFO.
+	(additional_help_message): Only print message if USE_GNU_INFO.
+	(builtin_help): New function.
+	(help_from_info): New function.  Print warning if not USE_GNU_INFO.
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/OLD-ChangeLogs/test-ChangeLog	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,848 @@
+2011-04-03  Rik  <octave@nomad.inbox5.com>
+
+	* test_diag_perm.m: Reverse previous changeset.  Return 3-input form
+	of diag().
+
+2011-04-01  Rik  <octave@nomad.inbox5.com>
+
+	* test_diag_perm.m: Update diag tests to reflect removal of archaic
+	3-input form of diag().
+
+2011-03-18  Rik  <octave@nomad.inbox5.com>
+
+	* test_parser.m: Add operatore precedence tests.
+
+2011-03-01  Rik  <octave@nomad.inbox5.com>
+
+	* test/test_index-wfi-t.m: Use modern warning function
+	rather than deprecated built-in variable to set warning state.
+
+2011-02-22  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Use single quotes around regexp patterns.
+
+2011-02-19  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Use PCRE regular expressions to simplify script.
+
+2011-02-02  Rik  <octave@nomad.inbox5.com>
+
+	* build_sparse_tests.sh: Use testif to only run some sparse tests when
+	necessary libraries are installed.
+
+2011-01-14  John W. Eaton  <jwe@octave.org>
+
+	* Update copyright notices for 2011.
+
+2010-12-13  Rik  <octave@nomad.inbox5.com>
+
+	* test_switch.m : Add test for switch statement with otherwise clause,
+	but no cases.
+
+2010-11-10  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Set warning state off for Octave:deprecated-functions.
+	(run_test_script): Do run tests for deprecated functions.
+
+2010-11-09  John W. Eaton  <jwe@octave.org>
+
+	* test_parser.m: New file.
+	* Makefile.am (FCN_FILES): Add it to the list.
+
+2010-09-29  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Break output text differently for better readability.
+
+2010-09-28  Rik  <octave@nomad.inbox5.com>
+
+	* test/@Gork/set.m, test/fntests.m, test/test_func.m, test/test_io.m:
+	Untabify scripts.
+
+2010-09-27  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Use single quotes for regex when possible.
+
+2010-09-26  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m (has_tests, has_functions): Recode to remove requirement
+	for PCRE.
+
+2010-09-24  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Rephrase output for clarity.
+
+2010-08-17  Rik  <octave@nomad.inbox5.com>
+
+	* fntests.m: Add extra newline for more readable output.
+
+2010-07-30  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: New clean-local target to remove directories
+	created automatically during testing.
+
+2010-04-28  John W. Eaton  <jwe@octave.org>
+
+	* test_struct.m: Update expected error message text.
+
+2010-03-19  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_slice.m: Use ID check rather than message for invalid resizing.
+
+2010-03-05  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_logical-wfi-f.m: Update.
+	* test_logical-wfi-t.m: Update.
+	* test_struct.m Update.
+
+2010-01-29  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (hasfunctions): Only check for DEFUN in .cc files.
+	Return true for all .m files.
+
+2010-01-14  David Grundberg  <davidg@cs.umu.se>
+
+	* fntests.m (run_test_script): Check all *.cc files for tests.
+
+2010-01-13  Rik  <octave@nomad.inbox5.com>
+
+	* build_bc_overload_tests.sh: Correct test syntax (= vs. ==)
+
+2010-01-13  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (test_bc_overloads.m): Accept expected results
+	file as argument.  Style fixes.
+
+2010-01-13  Jaroslav Hajek  <highegg@gmail.com>
+
+	* build_bc_overload_tests.sh: New shell script.
+	* build_bc_overloads_expected.m: New source (not normally used).
+	* bc_overloads_expected: New text file.
+	* Makefile.am: Build test_bc_overloads.m.
+
+2009-12-25  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (hastests): Use regexp instead of findstr and only
+	match tests that appear as the first thing on a line.
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* build_sparse_tests.sh: Use lognrnd instead of deprecated lognormal_rnd
+
+2009-12-19  Rik  <octave@nomad.inbox5.com>
+
+	* Makefile.am: Eliminate TOPDIR variable in favor of built-in automake
+	variables of top_builddir and top_srcdir.
+
+2009-12-17  Rik  <octdev@nomad.inbox5.com>
+
+	* config/unix.exp: Remove obsolete file from repository
+
+2009-12-17  Rik  <octdev@nomad.inbox5.com>
+
+	* @Blork/module.mk, @Cork/module.mk, @Dork/module.mk,
+	@Gork/module.mk, @Pork/module.mk, @Sneetch/module.mk,
+	@Snork/module.mk, @Spork/module.mk, Makefile.am: Distribute private
+	function directories necessary for OOP tests to work in tarballs
+
+2009-12-03  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.am (CLEANFILES, DISTCLEANFILES): New variables.
+
+2009-11-10  John W. Eaton  <jwe@octave.org>
+
+	* @Blork/module.mk, @Cork/module.mk, @Dork/module.mk,
+	@Gork/module.mk, @Pork/module.mk, @Sneetch/module.mk,
+	@Snork/module.mk, @Spork/module.mk, Makefile.am: New files.
+	* Makefile.in: Delete.
+
+2009-10-19  Rik  <octdev@nomad.inbox5.com>
+
+	* fntests.m: .cc files are now included in the list of files requiring
+	tests only if they define a user function (DEFUN or DEFUN_DLD)
+
+2009-10-19  Rik  <octdev@nomad.inbox5.com>
+
+	* fntests.m: Remove deprecated functions from list of functions
+	requiring new tests to be written.
+
+2009-10-08  Rik  <octdev@nomad.inbox5.com>
+
+	* fntests.m: Fix typo of an extra space in instructions to user.
+
+2009-10-05  Rik  <octdev@nomad.inbox5.com>
+
+	* fntests.m: Fix typo directing users to the wrong log file
+
+2009-06-23  Robert T. Short  <octave@phaselockedsystems.com>
+
+	* @Blork/Blork.m, @Blork/bleek.m, @Blork/display.m, @Blork/get.m,
+	@Blork/set.m, @Cork/Cork.m, @Cork/click.m, @Cork/display.m,
+	@Cork/get.m, @Cork/set.m, @Dork/Dork.m, @Dork/bling.m,
+	@Dork/display.m, @Dork/gack.m, @Dork/get.m, @Dork/getStash.m,
+	@Dork/private/myStash.m, @Dork/set.m, @Gork/Gork.m, @Gork/cork.m,
+	@Gork/display.m, @Gork/gark.m, @Gork/get.m, @Gork/set.m,
+	@Gork/subsasgn.m, @Gork/subsref.m, @Pork/Pork.m, @Pork/bling.m,
+	@Pork/display.m, @Pork/get.m, @Pork/gurk.m,
+	@Pork/private/myStash.m, @Pork/set.m, @Sneetch/Sneetch.m,
+	@Sneetch/display.m, @Snork/Snork.m, @Snork/cack.m,
+	@Snork/display.m, @Snork/end.m, @Snork/get.m, @Snork/getStash.m,
+	@Snork/gick.m, @Snork/loadobj.m, @Snork/private/myStash.m,
+	@Snork/saveobj.m, @Snork/set.m, @Snork/subsasgn.m,
+	@Snork/subsindex.m, @Snork/subsref.m, @Spork/Spork.m,
+	@Spork/cack.m, @Spork/display.m, @Spork/geek.m, @Spork/get.m,
+	@Spork/getStash.m, @Spork/loadobj.m, @Spork/private/myStash.m,
+	@Spork/saveobj.m, @Spork/set.m, test_classes.m: New files.
+
+2009-06-22  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_null_assign.m: Fix test.
+
+2009-04-17  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* test_struct.m: Add tests to prevent regression of bug with
+	indexed assignment into empty struct array.
+
+2009-04-15  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* test_struct.m: Add tests for lazy copying in nested assignments
+	of struct elements.
+
+2009-04-12  Thorsten Meyer  <thorsten.meyier@gmx.de>
+
+	* test_contin.m, test_error.m, test_eval-catch.m, test_for.m,
+	test_global.m,  test_if.m, test_index-wfi-f.m,
+	/test_index-wfi-t.m, test_io.m, test_logical-wfi-f.m,
+	test_logical-wfi-t.m, test_prefer.m, test_recursion.m,
+	test_return.m, test_string.m, test_struct.m, test_switch.m,
+	test_system.m, test_transpose.m, test_try.m, test_unwind.m,
+	test_while.m: Remove obsolete comments.
+
+2009-04-07  Carlo de Falco  <kingcrimson@tiscali.it>
+
+	* test_io.m: Add a test for saving and reading a matrix with the
+	"-ascii" format.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* test_diag_perm.m: Add tests for permuting sparse matrices and
+	for the correct types from interactions between
+	pseudo-scalars (1x1 matrices).
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* build_sparse_tests.sh: Add LU tests to the rectangular tests.
+
+2009-03-10  Jason Riedy  <jason@acm.org>
+
+	* test_diag_perm.m: Add a test for conversion to sparse form.
+
+2009-03-09  Jason Riedy  <jason@acm.org>
+
+	* test_diag_perm.m: Add tests for diag + sparse.
+
+2009-03-08  Jason Riedy  <jason@acm.org>
+
+	* test_diag_perm.m: Add tests for inverse scaling and sparse structure.
+
+2009-03-08  Jason Riedy  <jason@acm.org>
+
+	* test_diag_perm.m: Add tests for preserving sparse structure
+	when scaling.
+
+2009-02-25  John W. Eaton  <jwe@octave.org>
+
+	* build_sparse_tests.sh: Note that saving sparse matrices to MAT
+	files fails when using 64-bit indexing.
+
+2009-02-22  John W. Eaton  <jwe@octave.org>
+
+	* build_sparse_tests.sh: Fix diag matrix divide by zero test.
+
+2009-02-18  John W. Eaton  <jwe@octave.org>
+
+	* test_args.m: Don't use assert to test for function handles.
+
+2009-02-15  John W. Eaton  <jwe@octave.org>
+
+	* test_io.m, test_prefer.m: Avoid command-style function call
+	syntax when assigning results.
+
+2009-02-09  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (hastests): Error if fopen fails.
+
+2009-01-29  John W. Eaton  <jwe@octave.org>
+
+	* test_system.m: Use isfield instead of struct_contains.
+
+2009-01-25  Thorsten Meyer  <thorsten@hexe>
+
+	* test_struct.m: Add struct array tests.
+
+2009-01-23  Søren Hauberg  <hauberg@gmail.com>
+
+	* test_prefer.m: Update to match new API of the 'type' function.
+
+2008-12-24  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (hastests): Use fread instead of fscanf to preserve
+	whitespace.
+
+2008-12-02  Jaroslav Hajek  <highegg@gmail.com>
+
+	* build_sparse_tests.sh: Fix test.
+
+2008-10-28  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_logical-wfi-f.m: Fix error messages.
+	* test_logical-wfi-t.m: Fix error messages.
+	* test_slice.m: Fix error messages.
+
+2008-09-26  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_null_assign.m: More test for null assignments.
+
+2008-09-18  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_null_assign.m: New tests.
+
+2008-06-11  John W. Eaton  <jwe@octave.org>
+
+	* test_error.m: Fix tests for usage.
+	* test_eval-catch.m, test_try.m: Fix expected output from lasterr.
+
+2008-06-02  David Bateman  <dbateman@free.fr>
+
+	* test_arith.m: Delete and move tests close to function
+	definitions.
+	* test_func.m: Also test for single precision return values.
+
+	* test_infnan.m, test_linalg.m, test_matrix.m, test_number.m):
+	Delet and move tests close to function definitions.
+	* test_range.m: Also test single precision examples.
+
+2008-05-19  Bill Denney  <bill@denney.ws>
+
+	* test_args.m: Update format to allow running "test test_args"
+	and add default argument tests.
+
+2008-05-09  Rafael Laboissiere  <rafael@debian.org>
+
+	* test_io.m, test_system.m: Use ischar instead of deprecated isstr.
+
+2008-05-06  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Use puts instead of printf where appropriate.
+	Fix missing newline in message.
+
+2008-03-26  David Bateman  <dbateman@free.fr>
+
+	* test_index-wfi-f.m: Split large block of tests.  New tests.
+
+2008-03-26  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (report_files_with_no_tests): New function.
+	Use it to report number of .m and .cc files without tests separately.
+
+2008-03-25  John W. Eaton  <jwe@octave.org>
+
+	* test_index-wfi-f.m: New tests.
+
+2008-03-25  Jaroslav Hajek  <highegg@gmail.com>
+
+	* test_io.m: Add test for save with -struct modifier.
+
+2008-03-20  David Bateman  <dbateman@free.fr>
+
+	* test_func.m: Modify to test for char, cell and structure arrays.
+
+	* test_func.m: New test code that ensures that all operations
+	which work on dimensions alone (squeeze, triu, etc.) work for all
+	objects and preserve type.
+
+2008-04-09  Michael Goffioul  <michael.goffioul@gmail.com>
+
+	* test_string.m: Fix isprint test under Win32, where
+	isprint(setstr(9)) is true.
+	* test_system.m: Add condition for various syscall tests. Make cd test
+	able to deal with drive-letter-only pathnames (e.g. C:\) under Win32.
+
+2008-03-07  John W. Eaton  <jwe@octave.org>
+
+	* test_logical-wfi-t.m, test_logical-wfi-f.m: Update tests for
+	logical indexing bug fix.
+
+2008-03-06  John W. Eaton  <jwe@octave.org>
+
+	* test_eval.m, test_diffeq.m, test_quad.m, test_signal.m:
+	Delete files with no tests.
+
+2008-02-25  Ben Abbott  <bpabbott@mac.com>
+
+	* test_eval-catch.m, test_io.m, test_try.m: Use cstrcat instead of
+	strcat.
+
+2008-02-22  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Replaced removed sparse functions like
+	spdiag with their generic names. Fix lu tests for modified
+	syntax. Test vector and scaling or LU and chol functions.
+	* test_linalg.m: Change error message of failing chol/lu test.
+
+2008-02-19  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Replaced removed spars functions like
+	spmin, with their  generic names.
+
+2008-01-22  John W. Eaton  <jwe@octave.org>
+
+	* test_poly.m, test_set.m, test_stats.m: Delete files with no tests.
+
+2008-01-22  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* test_linalg.m, test_matrix.m, test_number.m, test_poly.m,
+	test_signal.m, test_stats.m, test_string.m, test_system.m:
+	Move tests to individual source files.
+
+2008-01-15  Thomas Weber  <thomas.weber.mail@gmail.com>
+
+	* test_arith.m: Move tests to source files.
+
+2008-01-15  John W. Eaton  <jwe@octave.org>
+
+	* test_audio.m, test_control.m, test_image.m, test_optim.m,
+	test_plot.m, test_unix.m: Delete files with no tests.
+
+2007-12-21  John W. Eaton  <jwe@octave.org>
+
+	Version 3.0.0 released.
+
+2007-12-18  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Add tests for indexing like a([1,1],:),
+	a(:,[1,1]) and sparse(42)([1,1]).
+
+2007-12-11  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Drop argument to Fsparse to force mutation.
+	* test_range.m: Ditto.
+
+2007-12-10  John W. Eaton  <jwe@octave.org>
+
+	* test_nonlin.m: Delete.
+
+2007-12-03  David Bateman  <dbateman@free.fr>
+
+	* fntests.m: Also count the skipped tests.
+	* build_sparse_tests.sh: As appropriate make tests conditional on
+	HAVE_UMFPACK, HAVE_CHOLMOD and HAVE_CXSPARSE.
+
+2007-11-26  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: More care with sparse return values.
+
+2007-10-30  Kim Hansen  <kimhanse@gmail.com>
+
+	* build_sparse_tests.sh: Fix typo.
+
+2007-10-23  John W. Eaton  <jwe@octave.org>
+
+	* build_sparse_tests.sh (gen_sparsesparse_elementop_tests):
+	Use xtest for "assert(as./bs,sparse(af./bf,true),100*eps);" test.
+
+2007-10-12  John W. Eaton  <jwe@octave.org>
+
+	* Change copyright notices in all files that are part of Octave to
+	GPLv3 or any later version.
+
+2007-10-06  John W. Eaton  <jwe@octave.org>
+
+	* test_poly.m: Move residue test to residue.m.
+
+2007-09-29  Kim Hansen  <kimhanse@gmail.com>
+
+	* test_range.m: Test range data
+
+2007-09-21  John W. Eaton  <jwe@octave.org>
+
+	* test_slice.m: Fix test for x = ones ([0, 2]); x(idx) = N case.
+	See change for liboctave/Array.cc.
+
+2007-06-15  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Also report expected failures in summary.
+	Improved wording from Thomas Weber <thomas.weber.mail@gmail.com>.
+
+2007-06-06  John W. Eaton  <jwe@octave.org>
+
+	* test_signal.m: Rename internal assert function to xassert.
+
+2007-04-26  David Bateman  <dbateman@free.fr>
+
+	* test_for.m: Add tests for multi-dimensional matrices and cell
+	arrays.
+
+2007-04-04  Rafael Laboissiere  <rafael@debian.org>
+
+	* Makefile.in (clean): Also remove a.wav file created by
+	testing wavwrite.m.
+
+2007-04-03  Kim Hansen  <kimhanse@gmail.com>
+
+	* test_slice.m: New file.
+
+2007-03-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (dist): Use ln, not $(LN_S).
+
+2007-02-26  From Michael Goffioul  <michael.goffioul@swing.be>
+
+	* Makefile.in: Use $(LN_S) instead of ln or ln -s.
+
+2007-02-20  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (check): Use --norc instead of --no-site-file.
+	From: Alex Zvoleff  <azvoleff@ucsd.edu>
+
+2007-02-19  John W. Eaton  <jwe@octave.org>
+
+	* test_system.m: Handle confirm_recursive_rmdir as function
+	instead of built-in variable.
+
+2007-02-07  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Add plea for help writing tests.
+
+2007-01-11  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Also handle scripts directory in the build tree.
+
+	* Makefile.in (OCTAVE_SCRIPT_PATH): Delete unused variable.
+
+2006-11-14  Luis F. Ortiz  <lortiz@interactivesupercomputing.com>
+
+	* fntests.m: Include liboctave in the list of directories to test.
+
+2006-08-25  John W. Eaton  <jwe@octave.org>
+
+	* test_io.m (testls): Allow for small variance in loaded values
+	for text data formats.  Use persistent local variables instead of
+	resetting rand seed.
+
+2006-08-22  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Don't force conversion to sparse boolean
+	return type for string mapper functions.
+
+2006-08-21  John W. Eaton  <jwe@octave.org>
+
+	* test_io.m: Use isequal (a, b) instead of a != b.  Use isequal
+	for struct and cell tests instead of more complex constructs.
+
+2006-06-27  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (distclean): Also remove test_sparse.m.
+
+2006-06-07  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Keep track of files with tests and report total.
+
+2006-06-01  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m (print_test_file_name, print_pass_fail): New functions.
+	(runtestdir, runtestscript): Use them.  Print info for each file
+	with tests.  Print info about files without tests to log file.
+	(run_test_dir): Rename from runtestdir.  Change all uses.
+	(run_test_script): Rename from runtestscript.  Change all uses.
+	Handle page_screen_output as a function instead of a built-in
+	variable.
+
+2006-05-04  John W. Eaton  <jwe@octave.org>
+
+	* test_prefer.m: Adjust tests for eliminated built-in variables.
+
+2006-04-29  John W. Eaton  <jwe@octave.org>
+
+	* Makefile.in (check): Use run-octave script.
+
+2006-04-28  John W. Eaton  <jwe@octave.org>
+
+	* test_prefer.m: Adjust tests for new way of handling warning state.
+	* build_sparse_tests.sh: Likewise.
+
+2006-04-11  John W. Eaton  <jwe@octave.org>
+
+	* test_system.m, test_struct.m, test_string.m, test_quad.m,
+	test_number.m, test_nonlin.m, test_matrix.m, test_linalg.m,
+	test_io.m, test_diffeq.m, test_arith.m: Update for new usage
+	message format.
+
+2006-04-03  David Bateman  <dbateman@free.fr>
+
+	* test_number.m: Reverse sense of isscalar and isvector tests
+	for recent changes.
+
+2006-03-21  John W. Eaton  <jwe@octave.org>
+
+	* test_system.m: Use cell arrays of character strings in fnmatch
+	tests.
+
+2006-03-16  John W. Eaton  <jwe@octave.org>
+
+	* test_system.m: End all *pwent tests with a call to endpwent.
+	End all *grent tests with a call to endgrent.
+
+2006-03-14  John W. Eaton  <jwe@octave.org>
+
+	* fntests.m: Prettier printing of output.
+	* test_eval.m: Disable chatty tests.
+
+2006-03-08  David Bateman  <dbateman@free.fr>
+
+	* test_system.m: Fix recursive rmdir test for recent change.
+
+2006-02-20  David Bateman  <dbateman@free.fr>
+
+	* build_spase_tests.sh: Add tests for ldiv tests for rectangular
+	diagonal, permuted diagonal, triangular and permuted triangular
+	matrices.
+
+2006-02-09  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: Add tests for sparse QR solvers.
+
+2006-01-21  David Bateman  <dbateman@free.fr>
+
+	* build_sparsetest.sh: Add new un-ordered indexing, assignment and
+	deletion tests.
+
+2006-01-13  Bill Denney  <bill@givebillmoney.com>
+
+	* test_system.m: Use filesep instead of "/" where needed.
+
+2005-12-14  David Bateman  <dbateman@free.fr>
+
+	* build_sparse_tests.sh: New script to build sparse matrix tests.
+	* fntests.m: New script to run the octave test code, with "make check".
+	* Makefile.in (DISTDIRS): Delete.
+	(dist): Simplify.
+	(OCTAVE_SCRIPT_PATH): Include . and $(srcdir).
+	(check): Run tests with fntest.m instead of runtest.
+	(test_sparse.m): New target.
+	(clean): Remove fntests.log instead of octave.log and octave.sum.
+
+	* tests/test_args.m, tests/test_infnan.m, tests/test_set.m,
+	tests/test_arith.m, tests/test_io.m, tests/test_signal.m,
+	tests/test_audio.m, tests/test_linalg.m, tests/test_sparse.m,
+	tests/test_contin.m, tests/test_logical-wfi-f.m, tests/test_stats.m,
+	tests/test_control.m, tests/test_logical-wfi-t.m, tests/test_string.m,
+	tests/test_diffeq.m, tests/test_matrix.m, tests/test_struct.m,
+	tests/test_error.m, tests/test_nonlin.m, tests/test_switch.m,
+	tests/test_eval-catch.m, tests/test_number.m, tests/test_system.m,
+	tests/test_eval.m, tests/test_optim.m, tests/test_transpose.m,
+	tests/test_for.m, tests/test_plot.m, tests/test_try.m,
+	tests/test_global.m, tests/test_poly.m, tests/test_unix.m,
+	tests/test_if.m, tests/test_prefer.m, tests/test_unwind.m,
+	tests/test_image.m, tests/test_quad.m, tests/test_while.m,
+	tests/test_index-wfi-f.m, tests/test_recursion.m,
+	tests/test_index-wfi-t.m, tests/test_return.m: Initial of conversion
+	of DejaGnu tests to test/assert infrastructure.
+
+2005-05-11  John W. Eaton  <jwe@octave.org>
+
+	* config/unix.exp: Start Octave with -H.
+
+2002-10-31  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/arith/prod-4.m, octave.test/arith/sum-4.m:
+	Cover more cases for empty matrices.
+
+2002-10-15  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* Makefile.in: Use @library_path_var@ instead of LD_LIBRARY_PATH.
+
+2002-09-27  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* qr-7.m: Remove randomness from complex matrix generator.
+	Increase tolerance on rosser matrix test.
+
+2002-09-26  Paul Kienzle  <pkienzle@users.sf.net>
+
+	* octave.test/linalg/qr-7.m: Replace large random matrix tests
+	of economy QR decomposition with small predictable tests.
+	Include numerically sensitive rosser matrix test.  Don't
+	report the measured norms.
+
+2002-04-24  Bill Lash  <lash@tellabs.com>
+
+	* test/octave.test/signal/signal.exp: Add unwrap test.
+	* test/octave.test/signal/unwrap-1.m: New file.
+
+2002-04-24  David Billinghurst  <David.Billinghurst@riotinto.com.au>
+
+	* octave.test/signal/signal.exp: Add tests for fft, ifft
+	fft2, ifft2 and detrend.
+	* octave.test/signal/detrend-1.m: New test.
+	* octave.test/signal/detrend-2.m: New test.
+	* octave.test/signal/detrend-3.m: New test.
+	* octave.test/signal/fft-1.m: New test.
+	* octave.test/signal/ifft-1.m: New test.
+	* octave.test/signal/fft2-1.m: New test.
+	* octave.test/signal/ifft2-1.m: New test.
+
+2002-04-22  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/diffeq/dassl-1.m (tol): Use relative tolerance for test.
+	* octave.test/diffeq/dassl-2.m (tol): Likewise.
+	* octave.test/diffeq/lsode-1.m (tol): Likewise.
+	* octave.test/diffeq/lsode-2.m (tol): Likewise.
+	* octave.test/diffeq/lsode-3.m (tol): Likewise.
+
+2002-04-12  Kienzle  <pkienzle@jazz.ncnr.nist.gov>
+
+	* config/unix.exp: Allow running of individual tests with
+	"runtest *.exp" from any of the directories under test/octave.test.
+
+2002-04-02  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/linalg/qr-7.m: New test.
+	From Paul Kienzle <pkienzle@jazz.ncnr.nist.gov>.
+
+2001-04-24  Christoph Spiel  <cspiel@hammersmith-consulting.com>
+
+	* Makefile.in (check): Allow user to specify which .exp file to run.
+	* octave.test/try, octave.test/eval-catch: New directories and tests.
+
+2000-06-07  Ben Sapp  <bsapp@nua.lampf.lanl.gov>
+
+	* octave.test/quad/quad-1.m: Use absolute value of difference
+	from expected value when comparing with sqrt (eps).  Potential
+	problems like this were noticed by Przemek Klosowski
+	<przemek@rrdjazz.nist.gov>.
+	* octave.test/quad/quad-2.m: Likewise.
+	* octave.test/arith/exp-1.m: Likewise.
+	* octave.test/linalg/cond-1.m: Likewise.
+	* octave.test/linalg/eig-1.m: Likewise.
+	* octave.test/linalg/eig-2.m: Likewise.
+	* octave.test/linalg/inv-1.m: Likewise.
+	* octave.test/linalg/lu-2.m: Likewise.
+	* octave.test/linalg/svd-2.m: Likewise.
+	* octave.test/linalg/svd-10.m: Likewise.
+
+1999-10-29  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/system/mktime-1.m (t): Compare whole seconds only.
+
+Fri Dec  4 20:55:47 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/system/clock-1.m: Use standard format specifiers %d
+	and %H instead of %e and %k.
+
+Fri Oct 23 15:53:01 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/arith/exp-5.m: New test.
+
+	* octave.test/stats/mean-3.m: New version of mean accepts a second
+	optional arg.
+
+	* octave.test/system/date-1.m: Correct test for new Y2K-compliant
+	date function.
+
+Wed May 27 00:38:27 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/diffeq/dassl-1.m, octave.test/diffeq/dassl-2.m,
+	octave.test/diffeq/lsode-1.m: New tests, from David Billinghurst
+	<David.Billinghurst@riotinto.com.au>.
+
+	* octave.test/diffeq/lsode-2.m, octave.test/diffeq/lsode-3.m:
+ 	New tests, from Peter Hopfgartner <phopfgartner@memc.inet.it>.
+
+Thu Apr 23 01:45:16 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in: If $(SHARED_LIBS), set LD_LIBRARY_PATH for running
+	Octave before installation is complete.
+
+Wed Apr 15 15:23:43 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/index/dfi-f/m-2.m, octave.test/index/dfi-f/index.exp:
+	Expect this test to succed now.
+
+Thu Mar  5 20:35:26 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/system/gmtime-1.m, octave.test/system/localtime-1.m:
+	Not all systems have time zone info in the struct.
+
+Mon Mar  2 14:36:50 1998  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/io/binary-io-1.m (id): Use binary flag in fopen call.
+
+Wed Apr  2 21:59:15 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/prefer/prefer.exp: Delete prefer-36 and prefer-37.
+	* octave.test/prefer/prefer-36.m, octave.test/prefer/prefer-37.m:
+	Delete test files.
+
+Wed Mar 12 16:56:41 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (install-strip): New target.
+
+Sat Mar  1 15:23:14 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.5 released.
+
+Thu Feb 20 02:58:05 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.4 released.
+
+Tue Feb 18 09:22:04 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.3 released.
+
+Mon Jan 27 15:51:58 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.2 released.
+
+Thu Jan 23 13:48:19 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* octave.test/unwind/unwind-2.m: Scripts now stop executing when
+	errors are encountered.
+
+	* octave.test/return/return.exp: Return at top level is no longer
+	an error.
+
+Tue Jan  7 00:16:23 1997  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0.1 released.
+
+Tue Dec 10 01:43:05 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 2.0 released.
+
+Fri Dec  6 15:23:39 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.94.
+
+Wed Nov 20 01:00:02 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.93.
+
+Thu Nov 14 00:05:57 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.92
+
+Thu Nov  7 12:43:03 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.91.
+
+Wed Oct 30 17:19:12 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Version 1.90.
+
+	* Makefile.in (DISTFILES): Add ChangeLog.
+
+Fri Feb  9 21:40:49 1996  John W. Eaton  <jwe@bevo.che.wisc.edu>
+
+	* Makefile.in (OCTAVE_SCRIPT_PATH): Add ../src directory (for .oct
+	files) and current directory (why not?).
+
+See ChangeLog.1 in the top level directory for earlier changes.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/PROJECTS	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,11 @@
+Octave PROJECTS
+===============
+
+A list of proposed projects is maintained at: 
+             
+             http://wiki.octave.org/wiki.pl?Projects
+
+If you start working steadily on a project, please let
+maintainers@octave.org know.  We might have information that could help
+you.  You should also read the Contributing Guidelines chapter in the
+Octave manual.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.Cygwin	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,51 @@
+Starting with version 3.0.1, Octave is once again part of the normal
+net distribution of Cygwin, available from http://www.cygwin.com.  
+
+It is possible to build Octave from source on Windows systems with Cygwin,
+but with the old gcc-3.4.4-3 compiler there are some performance
+problems related to the way C++ exception handling is implemented.
+This is a known problem with a long history and it is STRONGLY 
+encouraged to use gcc-4.3.2-1 or later.
+
+Current binary versions are built with gcc-4.3.4-3 while 
+binary version 3.0.2-2 was built with gcc-4.3.2-1.
+
+The latest development Octave development sources (octave-3.3.54+)
+are built with:
+
+configure --enable-shared \
+          --enable-float-truncate \
+          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4 
+          lt_cv_deplibs_check_method=pass_all \
+          LDFLAGS=-no-undefined 
+
+"--enable-float-truncate" is needed for the following bug:
+http://thread.gmane.org/gmane.comp.gnu.octave.bugs/12361/focus=12404
+Without it, one of the quadgk test will fail as
+"a=a" could be false due to truncation problems with 
+complex numbers. 
+
+"lt_cv_deplibs_check_method=pass_all"  is needed to bypass
+incorrect libtool detection of system capabilities and
+to allow shared libs building.
+
+
+Octave-3.2.4 was built using:
+
+configure --enable-shared \
+          --without-fltk \
+          --without-framework-opengl \
+          CC=gcc-4 F77=gfortran-4 CXX=g++-4 CPP=cpp-4
+          CFLAGS="-Dtimezone=_timezone"
+
+
+Current Cygwin package maintainer for Octave:
+
+  Marco Atzeri
+  http://matzeri.altervista.org
+
+Marco Atzeri
+marco_atzeri@yahoo.it
+Italy
+
+Last updated: Mon Jan  3 18:53:41 WEST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.Linux	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,10 @@
+There are binary packages for Debian, Fedora, and other GNU/Linux
+distributions.
+
+Octave should build cleanly from source on most GNU/Linux systems.
+
+
+John W. Eaton
+jwe@octave.org
+
+Last updated: Wed, 31 Oct 2007 16:22:26 EDT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.MacOS	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,406 @@
+1. Easy to install Binary Releases
+==================================
+
+A MacOS bundle is available from sourceforge.
+
+  http://octave.sourceforge.net/index.html
+
+There are also Octave packages available from both Fink and MacPorts.  Each
+of these package managers handle the details of compiling Octave from source.
+
+  http://www.finkproject.com
+  http://www.macports.org/
+
+
+2. Building from Source
+=======================
+
+Stable releases, development snapshots as well as the current developers
+sources are available. The sources for stable releases are available from
+the links below.
+
+  ftp://ftp.gnu.org/pub/gnu/octave/
+  http://ftp.gnu.org/pub/gnu/octave/
+
+Development snapshots, intended for testing, are available from the link
+below.
+
+  ftp://alpha.gnu.org/gnu/octave
+
+Links to the stable releases, snap shots, and instructions for obtaining
+the current development sources using mercurial can be found on Octave's 
+web-site below.
+
+  http://www.gnu.org/software/octave/download.html
+
+Building on MacOS can vary significantly between versions.  These
+instructions document the procedure for MacOS 10.6.X.
+
+
+2.1 Developer's Tools
+---------------------
+
+Apple's Xcode Developer's Tools must be installed to build Octave on MacOS X.
+
+A fortran compiler is also required to build Octave.
+
+AT&T Research provides versions of gfortran which have been patched to work
+with gcc tool set bundled with Xcode.
+
+  http://r.research.att.com/tools/
+
+Alternatively, the Fink and MacPorts package managers provide more recent
+versions of gcc which include gfortan.  Those may be used to build the sources
+as well.  However, care must be taken.
+
+  * The same compiler must be used to build all all of Octave's sources.  This
+    is necessary to avoid conflicts between the compiler libraries such as
+    libstdc++.  For a successful build the first file in LDFLAGS must refer to
+    this library.  For example, if building with gcc-4.5 obtained from MacPorts
+    LDFLAGS would begin as,
+
+      export LDFLAGS="/opt/local/lib/gcc45/libstdc++.6.dylib [...]"
+
+  * As of MacOS 10.6.6, the 64-bit BLAS routines that are part of Apple's vecLib
+    (framework accelerate) are not functioning correctly.  As a work around, an
+    alternative BLAS/LAPACK library, such as ATLAS, must be used.  A bug report 
+    has been filed with Apple.
+
+      http://bugreport.apple.com
+      Title: "64 bit ABI issue with libBLAS.dylib"
+      Problem ID: 7850167
+      Date: April 11, 2010 at 12:04 AM
+
+
+2.2 Manual Package Management
+-----------------------------
+
+Instructions for building Octave are available on the web at the link below.
+
+    http://wiki.octave.org/wiki.pl?BuildFromSource
+
+In addition, those wishing to build on MacOS X (10.6.x) should read section
+2.1 above.
+
+2.2.1 Critical Dependencies
+---------------------------
+
+The minimal dependencies needed to build Octave's snap-shots are listed below.
+
+  * Xcode
+
+  * Xcode-compatible gfortran: Available from http://r.reseach.att.com/tools
+
+  * gnu sed: Available from http://www.gnu.org/software/sed/
+
+      ./configure --prefix=/usr
+      make
+      sudo make install
+
+  * gnu pcre: Available from ftp://ftp.gnu.org/
+      The following build instructions will produce a universal binary,
+      allowing both 32- and 64-bit code to link to pcre.  Whenever replacing
+      libraries which came with the OS, it is necessary to compile them as
+      universal binaries (even if you are only going to use one architecture)
+      to avoid disrupting unrelated code which might also link to the library.
+
+      export CFLAGS="-arch i686 -arch x86_64"
+      export LDFLAGS="-arch i686 -arch x86_64"
+      ./configure --prefix=/usr --disable-dependency-tracking
+      make
+      sudo make install
+
+  * flex: Available from http://flex.sourceforge.net/
+
+      ./configure --prefix=/usr
+      make
+      sudo make install
+
+  * blas/lapack
+
+    - The Apple/Intel-provided BLAS works out of the box in 32-bit as long as
+      the -ff2c flag is used.  Alternatively, a wrapper for Apple's vecLib
+      framework may be used, enabling 64-bit.
+
+      https://mailman.cae.wisc.edu/pipermail/octave-maintainers/2011-January/022541.html
+
+A fully functional Octave requires additional dependencies.  Here is an example
+ of how to compile one of them as a universal binary:
+
+  * fftw3: Available from http://www.fftw.org/download.html
+
+      export F77="/usr/bin/gfortran"
+      export CFLAGS="-arch i686 -arch x86_64"
+      export FFLAGS="$CFLAGS"
+      export LDFLAGS="$CFLAGS"
+      ./configure --disable-dependency-tracking
+      make
+      sudo make install
+      make clean
+      ./configure --enable-float --disable-dependency-tracking
+      make
+      sudo make install
+
+See the link below for additional details about optional dependencies.
+
+    http://wiki.octave.org/wiki.pl?BuildFromSource
+
+TODO - Modify the configure script to test for 64 bit vecLib bug.  When the bug
+       is present, apply the wrapper solution.
+
+
+2.2.2 Building Octave as a 32-bit Application
+--------------------------------------------
+
+The commands below are sufficient to build a 32-bit Octave.
+
+  export FC="/usr/bin/gfortran"
+  export CFLAGS="-m32"
+  export FFLAGS="$CFLAGS -ff2c"
+  export CPPFLAGS="$CFLAGS -D_REENTRANT -D__LISTS__"
+  export LDFLAGS="$CFLAGS"
+  ./configure --disable-readline --disable-docs
+  make
+
+Octave provides an integrated tests suite.
+
+  make check
+
+Octave may be run without installing the application using the utility below.
+
+  ./run-octave
+
+2.2.3 Building Octave as a 64-bit Application
+--------------------------------------------
+
+The commands below are sufficient to build a 64-bit Octave.
+
+  export FC="/usr/bin/gfortran"
+  export CFLAGS="-arch x86_64"
+  export FFLAGS="$CFLAGS"
+  export CPPFLAGS="$CFLAGS -D_REENTRANT -D__LISTS__"
+  export LDFLAGS="$CFLAGS"
+  ./configure --disable-readline --disable-docs
+  make
+
+Octave provides an integrated tests suite.
+
+  make check
+
+Octave may be run without installing the application using the utility below.
+
+  ./run-octave
+
+
+2.3 Building With Dependencies Satisfied by Fink
+------------------------------------------------
+
+To install and setup the Fink package manager see the on line documentation.
+
+  http://www.finkproject.org/
+
+Currently, Fink does not have a package available for Octave versions above
+3.0.x.  These instructions will allow the developers sources to be build and
+run, but will not permit Octave to be installed in the usual Fink way.
+
+TODO - When a Fink package is developed for Octave 3.4.x, modify these 
+       instructions to model the MacPorts section.
+
+
+2.3.1 Dependencies
+------------------
+
+To build Octave's sources the list of Fink packages below need to be installed.
+
+  aquaterm
+  arpack
+  autoconf (>= 2.6.0)
+  automake (>= 1.11)
+  fftw3 (>= 3.1.1)
+  fftw3-shlibs (>= 3.1.1)
+  flex >= 2.5.30
+  fltk-aqua-shlibs 
+  glpk-dev
+  glpk-shlibs
+  gnuplot (>= 4.2.6)
+  graphicsmagick (<= 1.3.7)
+  graphicsmagick-shlibs (<= 1.3.7)
+  hdf5 (>= 1.6.5)
+  hdf5-shlibs (>= 1.6.5)
+  libcurl4
+  libcurl4-shlibs
+  libncurses5
+  libncurses5-shlibs
+  libtool >= 2.2.2 
+  ncurses
+  pcre
+  pcre-shlibs
+  qhull
+  qrupdate [1]
+  readline5
+  readline5-shlibs 
+  sed
+  suitesparse (= 3.1.0-1 )
+
+Some of Octave's dependencies are among the default packages for Fink.  These
+include the list below, and possibly others as well.
+
+  tetex
+  texinfo
+
+For fully functional printing (graphics output), the following packages must
+be installed.
+
+  epstool
+  ghostscript
+  pstoedit
+  transfig [2]
+
+[1] Fink does not yet have a package for qrupdate.  However, one is available
+    in the tracker at the link below.
+
+    http://sourceforge.net/tracker/index.php?func=detail&aid=2861045&group_id=17203&atid=414256
+
+[2] Optionally the "xfig" package may be installed.
+
+
+2.3.2 Building With Dependencies Satisfied by Fink
+--------------------------------------------------
+
+After installing each of the dependencies, the sources are compiled by
+setting the proper environment variables and then following the standard build
+sequence.  The following is an example set of variables for a 32-bit build
+using gcc-4.2.  When building from the sources obtained from the mercurial
+archive, ./autogen.sh must be run prior to ./configure.
+
+  export FINK_PREFIX="/sw"
+  export PREFIX="/usr/local/bin"
+
+  export OPTFLAGS="-O2 -g"
+  export LDFLAGS="-L$FINK_PREFIX/lib -L/usr/lib -m32"
+  export CFLAGS="-I$FINK_PREFIX/include $OPTFLAGS -m32"
+  export CXXFLAGS=$CFLAGS
+  export CPPFLAGS="$CXXFLAGS -D__LISTS__"
+  export ACLOCAL_FLAGS="-I$FINK_PREFIX/share/aclocal"
+  export PKG_CONFIG_PATH="$FINK_PREFIX/lib/pkgconfig"
+  export PATH="$FINK_PREFIX/var/lib/fink/path-prefix-10.6/:$PATH"
+  export MACOSX_DEPLOYMENT_TARGET=10.5
+  export PATH="$FINK_PREFIX/lib/flex/bin:$PATH"
+  export CPPFLAGS="-I$FINK_PREFIX/lib/flex/include $CPPFLAGS"
+  export LDFLAGS="-L$FINK_PREFIX/lib/flex/lib $LDFLAGS"
+  export CC="gcc-4.2"
+  export CPP="cpp-4.2"
+  export CXX="g++-4.2"
+  export F77="/usr/bin/gfortran-4.2"
+  export FLIBS="-lgfortran -lgfortranbegin"
+  export FFLAGS="-ff2c $OPTFLAGS -m32"
+  export CPPFLAGS="$CPPFLAGS -I$FINK_PREFIX/include/freetype2 \
+                             -I$FINK_PREFIX/include/qhull \
+                             -I/usr/include"
+  export CXXFLAGS="$CXXFLAGS -D_THREAD_SAFE -D_REENTRANT"
+
+  ./configure --prefix=$PREFIX \
+              --libexecdir='${prefix}/lib' \
+              --with-blas="-Wl,-framework -Wl,vecLib"
+  make
+
+Note: This approach to building Octave does not support "make install".
+
+TODO - Develop a Fink package for Octave 3.4.x.
+
+
+2.4 Building With Dependencies Satisfied by MacPorts
+----------------------------------------------------
+
+To install and setup the MacPorts package manager see the online documentation
+
+    http://guide.macports.org/
+
+Using MacPorts, two approaches are described.  The first describes how to build
+and locally install Octave from a formal snapshot of the developer's sources or
+from the developer's sources themselves.  This is intended to the casual Octave
+developer, or for users who want to live on the bleeding edge.
+
+The second describes an approach for building Octave which is intended for
+active developers.  In this case, MacPorts is used to satisfy Octave's
+dependencies, but MacPorts does not build Octave.  Further a direct install of
+Octave is not possible (i.e., cannot "make install").
+
+
+2.4.1 Building and Installing Octave
+------------------------------------
+
+With MacPorts building the developer's sources is convenient.  MacPorts
+includes a port file for octave-devel.  To build and run the most recent
+development snapshots, enter the commands below.
+
+    sudo port selfupdate
+    sudo port install octave-devel
+
+To build the developers sources in one's own way, or if MacPorts' version is
+outdated, a custom port file can be added.  This requires setting up a local
+port file repository (link below).
+
+    http://guide.macports.org/#development.local-repositories
+
+The octave-devel port file may be used as an initial starting point.  The port
+file is accessible from the web at the link below.
+
+    http://trac.macports.org/browser/trunk/dports/math/octave-devel/Portfile
+
+It is also available locally at the location below.  The parameter ${prefix} is
+corresponds to where MacPorts is install, which by default is "/opt/local".
+
+    ${prefix}/var/macports/sources/rsync.macports.org/release/ports/math/octave-devel/Portfile
+
+The local source tarball must be placed in the location below, where ${name}
+and ${distname} are each specified in the port file.
+
+    ${prefix}/var/macports/distfiles/${name}/${disname}.tar.gz
+
+
+2.4.2 Building for Active Development of Octave
+-----------------------------------------------
+
+To satisfy Octave's dependencies, first install the octave-devel port.
+
+    sudo port selfupdate
+    sudo port install octave-devel
+
+Next run octave to determine the configure options needed to build Octave
+using MacPorts.  At Octave's prompt type the command below and make note of
+the result, ${config_opts}.
+
+    octave:1> octave_config_info.config_opts
+
+Now uninstall the Octave port.
+
+    sudo port deactivate octave-devel
+
+This will remove Octave and leave its dependencies in place.  Now Octave may
+be built from the local mercurial archive by typing the commands below, where
+the configure options mentioned above are substituted for the parameter
+${config_opts}.  If the sources being built are from the mercurial archive,
+then ./autogen.sh must be run prior to ./configure.
+
+    ./configure ${config_opts}
+    make
+
+Octave's integrated tests may be run.
+
+    make check
+
+However, "make install" should not be run as it may damage or corrupt the
+MacPorts installation.  To run Octave, type the command below from the root of
+the mercurial archive.
+
+    ./run-octave
+
+
+John W. Eaton
+jwe@octave.org
+
+Ben Abbott
+bpabbott@mac.com
+
+Last updated: Sat Feb 19 14:15:04 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.MinGW	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,108 @@
+1. General Users
+================
+
+A MInGW bundle is available from sourceforge.
+
+ http://octave.sourceforge.net/index.html
+
+2. Developers
+=============
+
+The process for building Octave from source is as follows.
+
+ * Install development tools and compiler
+ * Install or compile dependencies of Octave
+ * Download Octave source
+ * Configure and compile source
+
+We strongly encourage experienced users to build Octave from the
+testing and development snapshots to try the latest features of Octave.
+
+A good tutorial on building Octave for version 3.2 is available from 
+http://octave.svn.sourceforge.net/viewvc/octave/trunk/octave-forge/admin/Windows/mingw32/HOWTO.txt 
+
+Additional information beyond the tutorial is summarized below.
+
+ 2.1 Development tools and compiler
+ ----------------------
+ Msys + MinGW development Tools
+
+ The Msys + MinGW development Tools are required to build Octave from source.
+
+ The latest version of the Msys system is 1.0.16.  For MinGW, search and use
+ the most recent version available.  Note: The Howto.txt file describing
+ the development tools is rather old.
+
+ The latest GCC (GNU Complier Collection) for MinGW is gcc-4.5.0.  Earlier
+ versions are not recommended for building Octave 3.4.xx.
+
+ The latest Msys, MinGW, and GCC tools can be downloaded from 
+ http://sourceforge.net/projects/mingw/files/ 
+
+ (Compiling for 64-bit binaries requires mingw-64 toolkits.  This has not been
+  tested.)
+
+ 2.2 Dependencies
+ ----------------------
+
+ External program dependencies
+ 
+  * gnuplot (you can build this with the shell script mentioned in Howto.txt)
+  * MikTeX
+  * ghostscript
+  * pstoedit (required for printing using FLTK (OpenGL) graphics)
+  * fig2dev (Optional; better quality for FLTK printing in some file formats)
+  * sed
+  * less
+
+ The tools below are required for building the development sources from
+ the Mercurial archive, but not for simply building Octave from a snapshot
+ tar.gz file.
+
+  * Mercurial
+  * git
+  * automake
+  * autoconf
+
+ Library dependencies
+
+  Please read Howto.txt carefully on how to build them.  The Howto.txt is old
+  so some revisions will be required when using GCC-4.5.0
+
+ 2.3 Download Octave source
+ ----------------------
+
+  The source for testing snapshots can be downloaded from the official Octave
+  web site.  http://www.gnu.org/software/octave/download.html 
+
+  The very latest development code is also available via anonymous access to a
+  read-only Mercurial archive.  The method of download is described on the web
+  site.  You will also need to install gnulib as another dependency.  Please
+  visit http://www.gnu.org/software/gnulib/ and download sources using git.
+
+ 2.4 Configure and compile source
+ ----------------------
+
+  Building from source can be carried out using the script described in
+  Howto.txt.  
+  
+  When using GCC-4.5.0, remove flags for shared libstdc++ because a shared
+  build is already the default.
+
+  When running './configure', you must add '--enable-float-truncate' option. 
+  Please see the following thread for more information: 
+  http://thread.gmane.org/gmane.comp.gnu.octave.bugs/12361/focus=12404
+
+  To build development sources from the Mercurial repository you must run
+  'autogen.sh' (bootstrap) before running configure and make.  This requires
+  that automake and autoconf tools be installed.
+
+
+Tatsuro MATSUOKA
+tmacchant@yahoo.co.jp
+
+Benjamin Lindner
+bjmldn@gmail.com 
+
+
+Last updated: Sat Jan 22 17:29:12 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.Windows	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,11 @@
+See the file README.Cygwin for information about installing the binary
+package of Octave for Cygwin.
+
+See the file README.MinGW for information about Octave on the MinGW platform
+including installation of binaries or compiling Octave from source.
+
+
+John W. Eaton
+jwe@octave.org
+
+Last updated: Sat Jan 22 16:56:05 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.devel	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,82 @@
+This directory contains development releases of Octave.
+
+If you want a stable, well-tested version of Octave, you should be
+looking at ftp://ftp.gnu.org/gnu/octave.
+
+Development releases are provided for people who want to help test,
+debug, and improve Octave.  Very little testing is done before making
+the development releases and they may even be made when Octave is in
+an inconsistent state.  It is possible that you will encounter a
+very obvious bug, such as a failure to compile on *any* machine.  It is
+likely that such bugs will be fixed by the next development release,
+so it really isn't necessary to report them unless they persist over
+more than one release.
+
+Please DO report other bugs in the development releases as soon as you
+find them.  Bugs should be reported to the bug tracker at
+'http://bugs.octave.org'.  Please read read the bug reporting
+guidelines (http://www.gnu.org/software/octave/bugs.html) before
+submitting an item.
+
+If you have a fix for a bug, or an enhancement to submit, send your
+patch to maintainers@octave.org or submit it to the patch
+tracker at 'http://savannah.gnu.org/patch/?group=octave'. 
+
+By adhering to the following guidelines you can minimize the work that
+Octave maintainers need to do to apply your patch.  Maintaining Octave
+is a lot of work in the best of circumstances, and we can't keep up
+unless you do your best to help.
+
+   * Send an explanation with your changes of what problem they fix or
+     what improvement they bring about.  For a bug fix, just include a
+     copy of the bug report, and explain why the change fixes the bug.
+
+   * Always include a proper bug report for the problem you think you
+     have fixed.  We need to convince ourselves that the change is
+     right before installing it.  Even if it is right, we might have
+     trouble judging it if we don't have a way to reproduce the problem.
+
+   * Include all the comments that are appropriate to help people
+     reading the source in the future understand why this change was
+     needed.
+
+   * Don't mix together changes made for different reasons.  Send them
+     _individually_.
+
+     If you make two changes for separate reasons, then we might not
+     want to install them both.  We might want to install just one.
+
+   * Use `diff -c' to make your diffs.  Diffs without context are hard
+     for us to install reliably.  More than that, they make it hard for
+     us to study the diffs to decide whether we want to install them.
+     Unified diff format is better than contextless diffs, but not as
+     easy to read as `-c' format.
+
+     If you have GNU diff, use `diff -cp', which shows the name of the
+     function that each change occurs in.
+
+   * Write the change log entries for your changes.
+
+     Read the `ChangeLog' file to see what sorts of information to put
+     in, and to learn the style that we use.  The purpose of the
+     change log is to show people where to find what was changed.  So
+     you need to be specific about what functions you changed; in
+     large functions, it's often helpful to indicate where within the
+     function the change was made.
+
+     On the other hand, once you have shown people where to find the
+     change, you need not explain its purpose.  Thus, if you add a new
+     function, all you need to say about it is that it is new.  If you
+     feel that the purpose needs explaining, it probably does--but the
+     explanation will be much more useful if you put it in comments in
+     the code.
+
+     If you would like your name to appear in the header line for who
+     made the change, send us the header line.
+
+If you would like to be on the very sharpest part of the bleeding
+edge, you can now use Mercurial to access Octave's current development
+sources.  Instructions for checking out a copy are available on the
+web at http://www.gnu.org/software/octave/download.html.
+
+Last updated: Sat Jan 22 21:26:18 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.ftp	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,38 @@
+This directory contains the source for Octave, a high-level interactive
+language for solving numerical problems.  See the file README for more general
+information, and the file NEWS for a list of recent changes.
+
+Binary distributions:
+--------------------
+
+Octave binaries are not distributed from this site.
+
+Packaged versions of Octave for various GNU/Linux systems are available
+with the major GNU/Linux distributions (Debian, Ubuntu, Red Hat, SUSE, etc.).
+
+Binary distributions of Octave for Mac OS X are available from both Fink
+and MacPorts.
+
+  http://www.finkproject.com
+  http://www.macports.org/
+
+The file README.Windows provides instructions for installing Octave on
+Windows systems.
+
+A note about .gz files:
+----------------------
+
+Files with names ending in `.gz' have been compressed with `gzip'.
+
+Unlike the compress utility, gzip is free of any known software
+patents and tends to compress better anyway.  Gzip can uncompress
+`compress'-compressed files too, so you can install it as "uncompress"
+and use it to handle both types of files.
+
+The gzip program is available in the directory /pub/gnu in shar, tar,
+or gzipped tar format (for those who already have a prior version of
+gzip and want faster data transmission).  It works on virtually every
+unix system, MSDOS, OS/2, and VMS.
+
+
+Last updated: Thu Jan 20 10:14:49 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.gnuplot	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,12 @@
+Octave works best with gnuplot 4.4 or higher, which is available from
+http://www.gnuplot.info.
+
+In versions prior to 4.2.6 it is not possible to use the mouse to zoom in
+on plots.  This is a limitation of earlier versions of gnuplot, which are
+unable to zoom when the data it plots is not stored in a file. 
+
+
+John W. Eaton
+jwe@octave.org
+
+Last updated: Tue Jan  4 18:55:56 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.kpathsea	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,171 @@
+The code in the files
+
+  liboctave/kpse.cc
+  liboctave/kpse-xfns.h
+  liboctave/kpse-xfns.c
+
+was adapted from the kpathsearch library.  We don't use kpathsearch
+directly now because it has too many TeX-specific things that are not
+necessary for Octave, and it also does not implement all the special
+kinds of file searches that Octave needs (mainly for compatibility
+with Matlab).
+
+Original authors of the kpathsearch library
+-------------------------------------------
+
+Karl Berry wrote all files not otherwise marked, with help from Kathryn
+Hargreaves on some of the original versions.
+
+Thomas Esser originated most of the MakeTeX... scripts.
+
+The brace expansion code in expand.c was written by Brian Fox and Chet
+Ramey for Bash, the GNU shell.
+
+The implementation of the link trick in pathsearch.c is taken from GNU
+find, implemented by David MacKenzie from Matthew Farwell's suggestion.
+
+Debugging
+---------
+
+  Kpathsea provides a number of runtime debugging options, detailed
+below by their names and corresponding numeric values.  When the files
+you expect aren't being found, the thing to do is enable these options
+and examine the output.
+
+  You can set these with some runtime argument (e.g., `-d') to the
+program; in that case, you should use the numeric values described in
+the program's documentation (which, for Dvipsk and Xdvik, are different
+than those below).  It's best to give the `-d' (or whatever) option
+first, for maximal output.  Dvipsk and Xdvik have additional
+program-specific debugging options as well.
+
+  You can also set the environment variable `KPATHSEA_DEBUG'; in this
+case, you should use the numbers below.  If you run the program under a
+debugger and set the variable `kpathsea_debug', also use the numbers
+below.
+
+  In any case, by far the simplest value to use is `-1', which will
+turn on all debugging output.  This is usually better than guessing
+which particular values will yield the output you need.
+
+  Debugging output always goes to standard error, so you can redirect it
+easily.  For example, in Bourne-compatible shells:
+     dvips -d -1 ... 2>/tmp/debug
+
+  It is sometimes helpful to run the standalone Kpsewhich utility
+(*note Invoking kpsewhich::.), instead of the original program.
+
+  In any case, you can *not* use the *names* below; you must always use
+somebody's numbers.  (Sorry.)  To set more than one option, just sum
+the corresponding numbers.
+
+`KPSE_DEBUG_STAT (1)'
+     Report `stat'(2) calls.  This is useful for verifying that your
+     directory structure is not forcing Kpathsea to do many additional
+     file tests (*note Slow path searching::., and *note Subdirectory
+     expansion::.).  If you are using an up-to-date `ls-R' database
+     (*note Filename database::.), this should produce no output unless
+     a nonexistent file that must exist is searched for.
+
+`KPSE_DEBUG_HASH (2)'
+     Report lookups in all hash tables: `ls-R' and `aliases' (*note
+     Filename database::.); font aliases (*note Fontmap::.); and config
+     file values (*note Config files::.).  Useful when expected values
+     are not being found, e.g.., file searches are looking at the disk
+     instead of using `ls-R'.
+
+`KPSE_DEBUG_FOPEN (4)'
+     Report file openings and closings.  Especially useful when your
+     system's file table is full, for seeing which files have been
+     opened but never closed.  In case you want to set breakpoints in a
+     debugger: this works by redefining `fopen' (`fclose') to be
+     `kpse_fopen_trace' (`kpse_fclose_trace').
+
+`KPSE_DEBUG_PATHS (8)'
+     Report general path information for each file type Kpathsea is
+     asked to search.  This is useful when you are trying to track down
+     how a particular path got defined--from `texmf.cnf', `config.ps',
+     an environment variable, the compile-time default, etc.  This is
+     the contents of the `kpse_format_info_type' structure defined in
+     `tex-file.h'.
+
+`KPSE_DEBUG_EXPAND (16)'
+     Report the directory list corresponding to each path element
+     Kpathsea searches.  This is only relevant when Kpathsea searches
+     the disk, since `ls-R' searches don't look through directory lists
+     in this way.
+
+`KPSE_DEBUG_SEARCH (32)'
+     Report on each file search: the name of the file searched for, the
+     path searched in, whether or not the file must exist (when drivers
+     search for `cmr10.vf', it need not exist), and whether or not we
+     are collecting all occurrences of the file in the path (as with,
+     e.g., `texmf.cnf' and `texfonts.map'), or just the first (as with
+     most lookups).  This can help you correlate what Kpathsea is doing
+     with what is in your input file.
+
+`KPSE_DEBUG_VARS (64)'
+     Report the value of each variable Kpathsea looks up.  This is
+     useful for verifying that variables do indeed obtain their correct
+     values.
+
+`GSFTOPK_DEBUG (128)'
+     Activates debugging printout specific to `gsftopk' program.
+
+`MAKETEX_DEBUG (512)'
+     If you use the optional `mktex' programs instead of the
+     traditional shell scripts, this will report the name of the site
+     file (`mktex.cnf' by default) which is read, directories created by
+     `mktexdir', the full path of the `ls-R' database built by
+     `mktexlsr', font map searches, `MT_FEATURES' in effect, parameters
+     from `mktexnam', filenames added by `mktexupd', and some
+     subsidiary commands run by the programs.
+
+`MAKETEX_FINE_DEBUG (1024)'
+     When the optional `mktex' programs are used, this will print
+     additional debugging info from functions internal to these
+     programs.
+
+  Debugging output from Kpathsea is always written to standard error,
+and begins with the string `kdebug:'.  (Except for hash table buckets,
+which just start with the number, but you can only get that output
+running under a debugger.  See comments at the `hash_summary_only'
+variable in `kpathsea/db.c'.)
+
+Logging
+-------
+
+  Kpathsea can record the time and filename found for each successful
+search.  This may be useful in finding good candidates for deletion when
+your filesystem is full, or in discovering usage patterns at your site.
+
+  To do this, define the environment or config file variable
+`TEXMFLOG'.  The value is the name of the file to append the
+information to.  The file is created if it doesn't exist, and appended
+to if it does.
+
+  Each successful search turns into one line in the log file: two words
+separated by a space.  The first word is the time of the search, as the
+integer number of seconds since "the epoch", i.e., UTC midnight 1
+January 1970 (more precisely, the result of the `time' system call).
+The second word is the filename.
+
+  For example, after `setenv TEXMFLOG /tmp/log', running Dvips on
+`story.dvi' appends the following lines:
+
+     774455887 /usr/local/share/texmf/dvips/config.ps
+     774455887 /usr/local/share/texmf/dvips/psfonts.map
+     774455888 /usr/local/share/texmf/dvips/texc.pro
+     774455888 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmbx10.600pk
+     774455889 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmsl10.600pk
+     774455889 /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmr10.600pk
+     774455889 /usr/local/share/texmf/dvips/texc.pro
+
+Only filenames that are absolute are recorded, to preserve some
+semblance of privacy.
+
+
+John W. Eaton
+jwe@octave.org
+
+Last updated: Wed, 31 Oct 2007 16:33:13 EDT
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.mirrors	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,12 @@
+If you have trouble transferring Octave from this site, you might try
+one of those listed below.  They mirror the /pub/octave directory on
+ftp.octave.org
+
+FTP:
+
+  site                          directory
+  ----                          ---------
+  ftp.u-aizu.ac.jp              /pub/SciEng/numanal/Octave
+  mirrors.fe.up.pt              /pub/octave
+
+Last updated: Mon Jan 10 21:26:17 PST 2011
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/README.snapshots	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,161 @@
+Octave Snapshots -- general info
+
+Snapshots are an "image" of the main Octave development tree, captured
+at a particular random instant in time.  When you use the snapshots,
+you should be able to maintain a local copy of Octave that is
+reasonably close to the official source tree used by the Octave
+maintainers.
+
+The primary purpose of providing snapshots is to widen the group of
+motivated developers that would like to help test, debug, and enhance
+Octave, by providing you with access to the "latest and greatest"
+source.  This has several advantages, and several disadvantages.
+
+    First the advantages:
+
+    o	Once we have a large base of motivated testers using the
+	snapshots, this should provide good coverage across all
+	currently supported Octave hosts and targets.  If a new bug is
+	introduced in Octave due to fixing another bug or ongoing
+	development, it should become obvious much more quickly and
+	get fixed before the next general net release.  This should
+	help to reduce the chances of Octave being released to the
+	general public with a major bug that went unnoticed during the
+	release cycle testing because they are machine dependent.  We
+	hope to greatly improve Octave's stability and reliability by
+	involving more people and more execution environments in the
+	prerelease testing.
+
+    o	With access to the latest source, any diffs that you send to fix
+	bugs or add new features should be much easier for the Octave
+	maintainers to merge into the official source base (after
+	suitable review of course).  This encourages us to merge your
+	changes quicker, while they are still "fresh".
+
+    o	Once your diffs are merged, you can obtain a new copy of Octave
+	containing your changes almost immediately.  Thus you do not
+	have to maintain local copies of your changes for any longer
+	than it takes to get them merged into the official source
+	base.  This encourages you to send in changes quicker.
+
+    And the disadvantages:
+
+    o	The snapshot you get will be largely untested and of unknown
+	quality.  It may fail to configure or compile.  It may have
+	serious bugs.  You should always keep a copy of the last known
+	working version before updating to the current snapshot, or at
+	least be able to regenerate a working version if the latest
+	snapshot is unusable in your environment for some reason.
+
+	If a production version of Octave has a bug and a snapshot has
+	the fix, and you care about stability, you should put only the
+	fix for that particular problem into your production version.
+	Of course, if you are eager to test Octave, you can use the
+	snapshot versions in your daily work, but users who have not
+	been consulted about whether they feel like testing Octave should
+	generally have something which is at least as bug free as the
+	last released version.
+
+    o	Providing timely response to your questions, bug reports, and
+	submitted patches will require the Octave developers to
+	allocate time from an already thin time budget.  Please try to
+	help us make this time as productive as possible.  See the
+	section below about how to submit changes.
+
+
+How to get the snapshots
+------------------------
+
+The current plan is to provide a full snapshot every week or so.  For
+now, diffs from previous versions will not be available.  The files
+will be available via anonymous ftp from ftp.octave.org, in the
+directory /private/octave in the form of a tar files compressed with
+GNU gzip.  You can ftp gzip from ftp.octave.org in the directory
+/pub/gnu.
+
+Even though the snapshots are available in a public place, we ask that
+recipients not widely publicize the availability of the snapshots.
+The motivation for this request is not to hoard them, but to avoid the
+situation where the general Octave user base naively attempts to use
+the snapshots, has trouble with them, complains publicly, and the
+reputation of Octave declines because of a perception of instability
+or lack of quality control.
+
+
+Octave test suite
+-----------------
+
+A test suite is distributed as an integral part of the snapshots.
+However, to use it you will need to get a copy of the dejagnu testing
+framework.  Snapshots of dejagnu are available alongside the Octave
+snapshots, using the same naming conventions as the Octave snapshots.
+Once you have installed the dejagnu framework, a simple "make check"
+in the Octave directory should be sufficient to run the tests.
+
+Note that the test suite is still quite limited.  The test framework
+itself might not install on your system if you have an environment
+that is not similar to one that the Octave developers already use.
+The tests themselves only cover a small portion of Octave features,
+and what tests do exist for a feature are not exhaustive.  New tests
+are welcomed.
+
+
+Bug reports
+-----------
+
+Send bug reports to maintainers@octave.org.
+
+Note that since no testing is done on the snapshots, and snapshots may
+even be made when Octave is in an inconsistent state, it may not be
+unusual for an occasional snapshot to have a very obvious bug, such as
+failure to compile on *any* machine.  It is likely that such bugs will
+be fixed by the next snapshot, so it really isn't necessary to report
+them unless they persist over more than one snapshot.
+
+Missing files should always be reported, since they usually mean there
+is a problem with the snapshot-generating process and we won't know
+about them unless someone tells us.
+
+Bugs which are non-obvious, such as failure to compile on only a
+specific machine, a new machine dependent or obscure bug (particularly
+one not detected by the testsuite), etc. should be reported when you
+discover them, or have a suggested patch to fix them.
+
+
+FORMAT FOR PATCHES
+------------------
+
+If you have a fix for a bug, or an enhancement to submit, send your
+patch to maintainers@octave.org.  Here are some simple guidelines for
+submitting patches:
+
+    o	Use "context diffs" for patches.  A typical command for
+	generating context diffs is "diff -rc octave-old octave-new".
+
+    o	Use the "minimalist approach" for patches.  That is, each patch
+	should address only one particular bug, new feature, etc.  Do
+	not save up many unrelated changes and submit them all in one
+	big patch, since in general, the larger the patch the more
+	difficult it is for us to decide if the patch is either
+	correct or desirable.  And if we find something about the
+	patch that needs to be corrected before it can be installed,
+	we would have to reject the entire patch, which might contain
+	changes which otherwise would be accepted if submitted
+	separately.
+
+    o	Submit a sample ChangeLog entry with your patch.  See the
+	existing Octave ChangeLog for examples of what a ChangeLog
+	entry should look like.  The emacs command ^X4A will create a
+	ChangeLog entry header for you.
+
+
+Thanks,
+
+John W. Eaton
+jwe@octave.org
+
+Wed, 31 Oct 2007 16:31:54 EDT
+
+This file was adapted from a similar document written by Fred Fish and
+used by the GDB developers.
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/etc/gdbinit	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,48 @@
+## Helpful macros for debugging Octave.
+
+## Display a dim-vector object.
+
+define display-dims
+  echo ndims: \ 
+  output $arg0.rep[-1]
+  echo \ndims: \ 
+  output *$arg0.rep@$arg0.rep[-1]
+  echo \n
+  dont-repeat
+end
+
+## Display a dense array object.
+
+define display-dense-array
+  echo array object: \ 
+  output $arg0
+  echo \ndimensions:\n
+  display-dims $arg0.dimensions
+  echo \nrep = \ 
+  output *$arg0.rep
+  echo \nrep.data = \ 
+  output *$arg0.rep.data@$arg0.rep.len
+  echo \n
+  dont-repeat
+end
+
+## Display a sparse array object.
+
+define display-sparse-array
+  echo sparse object: \ 
+  output $arg0
+  echo \ndimensions.rep[0] = \ 
+  display-dims $arg0.dimensions
+  echo \ndimensions.rep[1] = \ 
+  output $arg0.dimensions.rep[1]
+  echo \nrep = \ 
+  output *$arg0.rep
+  echo \nrep.d = \ 
+  output *$arg0.rep.d@$arg0.rep.nzmx
+  echo \nrep.r = \ 
+  output *$arg0.rep.r@$arg0.rep.nzmx
+  echo \nrep.c = \ 
+  output *$arg0.rep.c@($arg0.rep.ncols+1)
+  echo \n
+  dont-repeat
+end
--- a/examples/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/examples/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 EXTRA_DIST = 
 
--- a/gdbinit	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,48 +0,0 @@
-## Helpful macros for debugging Octave.
-
-## Display a dim-vector object.
-
-define display-dims
-  echo ndims: \ 
-  output $arg0.rep[-1]
-  echo \ndims: \ 
-  output *$arg0.rep@$arg0.rep[-1]
-  echo \n
-  dont-repeat
-end
-
-## Display a dense array object.
-
-define display-dense-array
-  echo array object: \ 
-  output $arg0
-  echo \ndimensions:\n
-  display-dims $arg0.dimensions
-  echo \nrep = \ 
-  output *$arg0.rep
-  echo \nrep.data = \ 
-  output *$arg0.rep.data@$arg0.rep.len
-  echo \n
-  dont-repeat
-end
-
-## Display a sparse array object.
-
-define display-sparse-array
-  echo sparse object: \ 
-  output $arg0
-  echo \ndimensions.rep[0] = \ 
-  display-dims $arg0.dimensions
-  echo \ndimensions.rep[1] = \ 
-  output $arg0.dimensions.rep[1]
-  echo \nrep = \ 
-  output *$arg0.rep
-  echo \nrep.d = \ 
-  output *$arg0.rep.d@$arg0.rep.nzmx
-  echo \nrep.r = \ 
-  output *$arg0.rep.r@$arg0.rep.nzmx
-  echo \nrep.c = \ 
-  output *$arg0.rep.c@($arg0.rep.ncols+1)
-  echo \n
-  dont-repeat
-end
--- a/libcruft/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/libcruft/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 AM_CPPFLAGS = @CPPFLAGS@ -I../libgnu -I$(top_srcdir)/libgnu
 
--- a/liboctave/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/liboctave/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 AM_CPPFLAGS = \
   @CPPFLAGS@ -I../libgnu -I$(top_srcdir)/libgnu \
@@ -551,9 +551,9 @@
 nodist_octinclude_HEADERS = \
   $(BUILT_INCS)
 
-$(OPT_INC) : %.h : %.in $(top_srcdir)/mk-opts.pl
+$(OPT_INC) : %.h : %.in $(top_srcdir)/build-aux/mk-opts.pl
 	@echo making $@ from $<
-	@$(PERL) $(top_srcdir)/mk-opts.pl --opt-class-header $< > $@-t
+	@$(PERL) $(top_srcdir)/build-aux/mk-opts.pl --opt-class-header $< > $@-t
 	mv $@-t $@
 
 $(VX_OP_INC) $(VX_OP_SRC) : $(srcdir)/mk-ops.awk vx-ops
--- a/liboctave/config-ops.sh	Fri Jun 10 11:26:07 2011 -0400
+++ b/liboctave/config-ops.sh	Fri Jun 10 14:35:42 2011 -0400
@@ -22,6 +22,8 @@
   top_srcdir="$1"
 fi
 
+move_if_change="$top_srcdir/build-aux/move-if-change"
+
 liboctave_dir="$top_srcdir/liboctave"
 
 mk_ops="$liboctave_dir/mk-ops.awk"
@@ -33,7 +35,7 @@
       inc | all)
         VX_INC=$($AWK -f $mk_ops prefix=vx list_h_files=1 $liboctave_dir/vx-ops)
         echo "VX_OP_INC = $(echo $VX_INC)" > $liboctave_dir/vx-op-inc.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/vx-op-inc.mk-t $liboctave_dir/vx-op-inc.mk
+        $move_if_change $liboctave_dir/vx-op-inc.mk-t $liboctave_dir/vx-op-inc.mk
       ;;
     esac
   ;;
@@ -45,7 +47,7 @@
       src | all)
         VX_SRC=$($AWK -f $mk_ops prefix=vx list_cc_files=1 $liboctave_dir/vx-ops)
         echo "VX_OP_SRC = $(echo $VX_SRC)" > $liboctave_dir/vx-op-src.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/vx-op-src.mk-t $liboctave_dir/vx-op-src.mk
+        $move_if_change $liboctave_dir/vx-op-src.mk-t $liboctave_dir/vx-op-src.mk
       ;;
     esac
   ;;
@@ -57,7 +59,7 @@
       inc | all)
         MX_INC=$($AWK -f $mk_ops prefix=mx list_h_files=1 $liboctave_dir/mx-ops)
         echo "MX_OP_INC = $(echo $MX_INC)" > $liboctave_dir/mx-op-inc.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/mx-op-inc.mk-t $liboctave_dir/mx-op-inc.mk
+        $move_if_change $liboctave_dir/mx-op-inc.mk-t $liboctave_dir/mx-op-inc.mk
       ;;
     esac
   ;;
@@ -69,7 +71,7 @@
       src | all)
         MX_SRC=$($AWK -f $mk_ops prefix=mx list_cc_files=1 $liboctave_dir/mx-ops)
         echo "MX_OP_SRC = $(echo $MX_SRC)" > $liboctave_dir/mx-op-src.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/mx-op-src.mk-t $liboctave_dir/mx-op-src.mk
+        $move_if_change $liboctave_dir/mx-op-src.mk-t $liboctave_dir/mx-op-src.mk
       ;;
     esac
   ;;
@@ -81,7 +83,7 @@
       inc | all)
         SMX_INC=$($AWK -f $sparse_mk_ops prefix=smx list_h_files=1 $liboctave_dir/sparse-mx-ops)
         echo "SMX_OP_INC = $(echo $SMX_INC)" > $liboctave_dir/smx-op-inc.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/smx-op-inc.mk-t $liboctave_dir/smx-op-inc.mk
+        $move_if_change $liboctave_dir/smx-op-inc.mk-t $liboctave_dir/smx-op-inc.mk
       ;;
     esac
   ;;
@@ -93,7 +95,7 @@
       src | all)
         SMX_SRC=$($AWK -f $sparse_mk_ops prefix=smx list_cc_files=1 $liboctave_dir/sparse-mx-ops)
         echo "SMX_OP_SRC = $(echo $SMX_SRC)" > $liboctave_dir/smx-op-src.mk-t
-        $top_srcdir/move-if-change $liboctave_dir/smx-op-src.mk-t $liboctave_dir/smx-op-src.mk
+        $move_if_change $liboctave_dir/smx-op-src.mk-t $liboctave_dir/smx-op-src.mk
       ;;
     esac
   ;;
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/m4/acinclude.m4	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,1597 @@
+dnl aclocal.m4 -- extra macros for configuring Octave
+dnl
+dnl Copyright (C) 1995-2011 John W. Eaton
+dnl 
+dnl This file is part of Octave.
+dnl 
+dnl Octave is free software; you can redistribute it and/or modify it
+dnl under the terms of the GNU General Public License as published by the
+dnl Free Software Foundation; either version 3 of the License, or (at
+dnl your option) any later version.
+dnl 
+dnl Octave is distributed in the hope that it will be useful, but WITHOUT
+dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+dnl FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+dnl for more details.
+dnl 
+dnl You should have received a copy of the GNU General Public License
+dnl along with Octave; see the file COPYING.  If not, see
+dnl <http://www.gnu.org/licenses/>.
+dnl
+dnl
+dnl Copyright (C) 2008 - 2009 Free Software Foundation, Inc.
+dnl
+dnl If needed, define the m4_ifblank and m4_ifnblank macros from autoconf 2.64
+dnl This allows us to run with earlier Autoconfs as well.
+dnl FIXME: these should go away once Autoconf 2.64 is required or ubiquitous.
+dnl
+ifdef([m4_ifblank],[],[
+m4_define([m4_ifblank],
+[m4_if(m4_translit([[$1]],  [ ][	][
+]), [], [$2], [$3])])])
+dnl
+ifdef([m4_ifnblank],[],[
+m4_define([m4_ifnblank],
+[m4_if(m4_translit([[$1]],  [ ][	][
+]), [], [$3], [$2])])])
+dnl
+dnl ----------------------------------------------------------------------
+dnl
+dnl Figure out the hardware-vendor-os info.
+dnl
+dnl OCTAVE_HOST_TYPE
+AC_DEFUN([OCTAVE_HOST_TYPE],
+[AC_CANONICAL_HOST
+if test -z "$host"; then
+  host=unknown
+fi
+canonical_host_type=$host
+if test "$host" = unknown; then
+  AC_MSG_WARN([configuring Octave for unknown system type
+])
+fi
+AC_SUBST(canonical_host_type)])
+dnl
+dnl Set default value for a variable and substitute it.
+dnl
+dnl OCTAVE_SET_DEFAULT
+AC_DEFUN([OCTAVE_SET_DEFAULT],
+[ifelse($#, 2, [: ${$1=$2}
+])dnl
+AC_MSG_RESULT([defining $1 to be $$1])
+AC_SUBST($1)])
+dnl
+dnl Check for ar.
+dnl
+AC_DEFUN([OCTAVE_PROG_AR],
+[if test -z "$AR"; then
+  AR=ar
+fi
+AC_SUBST(AR)
+
+if test -z "$ARFLAGS"; then
+  ARFLAGS="rc"
+fi
+AC_SUBST(ARFLAGS)
+])
+dnl
+dnl See if the compiler supports placement delete
+dnl
+AC_DEFUN([OCTAVE_PLACEMENT_DELETE],
+[AC_CACHE_CHECK([whether <new> defines placement delete operator],
+octave_cv_placement_delete,
+[AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <new>]],
+[[operator delete((void *)0, (void *)0);]])],
+octave_cv_placement_delete=yes, octave_cv_placement_delete=no)])
+if test $octave_cv_placement_delete = yes; then
+AC_DEFINE(HAVE_PLACEMENT_DELETE,1,[Define if C++ supports operator delete(void *, void *)])
+fi
+AC_LANG_POP(C++)
+])
+dnl
+dnl See if the compiler dynamic auto arrays
+dnl
+AC_DEFUN([OCTAVE_DYNAMIC_AUTO_ARRAYS],
+[AC_CACHE_CHECK([whether C++ supports dynamic auto arrays],
+octave_cv_dynamic_auto_arrays,
+[AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],
+[[void test(char *); int length(); char x[length()]; test(x);]])],
+octave_cv_dynamic_auto_arrays=yes, octave_cv_dynamic_auto_arrays=no)])
+if test $octave_cv_dynamic_auto_arrays = yes; then
+AC_DEFINE(HAVE_DYNAMIC_AUTO_ARRAYS,1,[Define if C++ supports dynamic auto arrays])
+fi
+AC_LANG_POP(C++)
+])
+dnl
+dnl See if the C++ library has functions to set real and imaginary
+dnl parts of complex numbers independently.
+dnl
+AC_DEFUN([OCTAVE_CXX_COMPLEX_SETTERS],
+[AC_CACHE_CHECK([whether complex class can set components independently],
+octave_cv_cxx_complex_setters,
+[AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
+[[std::complex<double> x; x.real (1.0); x.imag (2.0);]])],
+octave_cv_cxx_complex_setters=yes, octave_cv_cxx_complex_setters=no)])
+if test $octave_cv_cxx_complex_setters = yes; then
+AC_DEFINE(HAVE_CXX_COMPLEX_SETTERS,1,[Define if C++ complex class has void real (T) and void imag (T) methods])
+fi
+AC_LANG_POP(C++)
+])
+dnl
+dnl See if the C++ library has functions to access real and imaginary
+dnl parts of complex numbers independently via references.
+dnl
+AC_DEFUN([OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS],
+[AC_CACHE_CHECK([whether complex class can reference components independently],
+octave_cv_cxx_complex_reference_accessors,
+[AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
+[[std::complex<double> x; x.real () = 1.0; x.imag () = 1.0;]])],
+octave_cv_cxx_complex_reference_accessors=yes, octave_cv_cxx_complex_reference_accessors=no)])
+if test $octave_cv_cxx_complex_reference_accessors = yes; then
+AC_DEFINE(HAVE_CXX_COMPLEX_REFERENCE_ACCESSORS,1,[Define if C++ complex class has T& real (void) and T& imag (void) methods])
+fi
+AC_LANG_POP(C++)
+])
+dnl
+dnl The following test is from Karl Berry's Kpathseach library.  I'm
+dnl including it here in case we someday want to make the use of
+dnl kpathsea optional.
+dnl
+dnl Some BSD putenv's, e.g., FreeBSD, do malloc/free's on the environment.
+dnl This test program is due to Mike Hibler <mike@cs.utah.edu>.
+dnl We don't actually need to run this if we don't have putenv, but it
+dnl doesn't hurt.
+AC_DEFUN([OCTAVE_SMART_PUTENV],
+[AC_MSG_CHECKING([whether putenv uses malloc])
+AC_CACHE_VAL(octave_cv_func_putenv_malloc,
+[AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#define VAR	"YOW_VAR"
+#define STRING1 "GabbaGabbaHey"
+#define STRING2 "Yow!!"		/* should be shorter than STRING1 */
+extern char *getenv (); /* in case char* and int don't mix gracefully */
+main ()
+{
+  char *str1, *rstr1, *str2, *rstr2;
+  str1 = getenv (VAR);
+  if (str1)
+    exit (1);
+  str1 = malloc (strlen (VAR) + 1 + strlen (STRING1) + 1);
+  if (str1 == 0)
+    exit (2);
+  strcpy (str1, VAR);
+  strcat (str1, "=");
+  strcat (str1, STRING1);
+  if (putenv (str1) < 0)
+    exit (3);
+  rstr1 = getenv (VAR);
+  if (rstr1 == 0)
+    exit (4);
+  rstr1 -= strlen (VAR) + 1;
+  if (strncmp (rstr1, VAR, strlen (VAR)))
+    exit (5);
+  str2 = malloc (strlen (VAR) + 1 + strlen (STRING2) + 1);
+  if (str2 == 0 || str1 == str2)
+    exit (6);
+  strcpy (str2, VAR);
+  strcat (str2, "=");
+  strcat (str2, STRING2);
+  if (putenv (str2) < 0)
+    exit (7);
+  rstr2 = getenv (VAR);
+  if (rstr2 == 0)
+    exit (8);
+  rstr2 -= strlen (VAR) + 1;
+#if 0
+  printf ("rstr1=0x%x, rstr2=0x%x\n", rstr1, rstr2);
+  /*
+   * If string from first call was reused for the second call,
+   * you had better not do a free on the first string!
+   */
+  if (rstr1 == rstr2)
+          printf ("#define SMART_PUTENV\n");
+  else
+          printf ("#undef SMART_PUTENV\n");
+#endif
+  exit (rstr1 == rstr2 ? 0 : 1);
+}]])], octave_cv_func_putenv_malloc=yes, octave_cv_func_putenv_malloc=no,
+    octave_cv_func_putenv_malloc=no)])dnl
+AC_MSG_RESULT([$octave_cv_func_putenv_malloc])
+if test $octave_cv_func_putenv_malloc = yes; then
+  AC_DEFINE(SMART_PUTENV,1,[To quiet autoheader.])
+fi])
+dnl
+dnl Check to see if C++ compiler needs the new friend template declaration 
+dnl syntax. 
+dnl
+dnl OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL
+AC_DEFUN([OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL], [
+  AC_REQUIRE([AC_PROG_CXX])
+  AC_MSG_CHECKING([for C++ support for new friend template declaration])
+  AC_CACHE_VAL(octave_cv_cxx_new_friend_template_decl, [
+    AC_LANG_PUSH(C++)
+    rm -f conftest.h
+    cat > conftest.h <<EOB
+       struct A {
+	 friend int operator== (const A&, const A&);
+	 A (int) { }
+       };
+
+       template <class T> int
+       operator== (const T&, const T&)
+       {
+	 return 0;
+       }
+EOB
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
+      [[A a (1);
+        return a == A(1);]])],
+      [octave_cv_cxx_new_friend_template_decl=no],
+      [octave_cv_cxx_new_friend_template_decl=yes])
+    AC_LANG_POP(C++)
+  ])
+  AC_MSG_RESULT([$octave_cv_cxx_new_friend_template_decl])
+  if test $octave_cv_cxx_new_friend_template_decl = yes; then
+    AC_DEFINE(CXX_NEW_FRIEND_TEMPLATE_DECL,1,[Define if your compiler supports `<>' stuff for template friends.])
+  fi
+])
+dnl
+dnl Check to see if C compiler handles FLAG command line option.  If
+dnl two arguments are specified, execute the second arg as shell
+dnl commands.  Otherwise, add FLAG to CFLAGS if the compiler accepts
+dnl the flag.
+dnl
+dnl OCTAVE_CC_FLAG
+AC_DEFUN([OCTAVE_CC_FLAG], [
+  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
+  AC_MSG_CHECKING([whether ${CC-cc} accepts $1])
+  AC_CACHE_VAL(octave_cv_cc_flag_$ac_safe, [
+    AC_LANG_PUSH(C)
+    XCFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS $1"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
+      eval "octave_cv_cc_flag_$ac_safe=yes",
+      eval "octave_cv_cc_flag_$ac_safe=no")
+    CFLAGS="$XCFLAGS"
+    AC_LANG_POP(C)
+  ])
+  if eval "test \"`echo '$octave_cv_cc_flag_'$ac_safe`\" = yes"; then
+    AC_MSG_RESULT(yes)
+    ifelse([$2], , [
+      CFLAGS="$CFLAGS $1"
+      AC_MSG_RESULT([adding $1 to CFLAGS])], [$2])
+  else
+    AC_MSG_RESULT(no)
+    ifelse([$3], , , [$3])
+  fi
+])
+dnl
+dnl Check to see if C++ compiler handles FLAG command line option.  If
+dnl two arguments are specified, execute the second arg as shell
+dnl commands.  Otherwise, add FLAG to CXXFLAGS if the compiler accepts
+dnl the flag.
+dnl
+dnl OCTAVE_CXX_FLAG
+AC_DEFUN([OCTAVE_CXX_FLAG], [
+  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
+  AC_MSG_CHECKING([whether ${CXX-g++} accepts $1])
+  AC_CACHE_VAL(octave_cv_cxx_flag_$ac_safe, [
+    AC_LANG_PUSH(C++)
+    XCXXFLAGS="$CXXFLAGS"
+    CXXFLAGS="$CXXFLAGS $1"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
+      eval "octave_cv_cxx_flag_$ac_safe=yes",
+      eval "octave_cv_cxx_flag_$ac_safe=no")
+    CXXFLAGS="$XCXXFLAGS"
+    AC_LANG_POP(C++)
+  ])
+  if eval "test \"`echo '$octave_cv_cxx_flag_'$ac_safe`\" = yes"; then
+    AC_MSG_RESULT(yes)
+    ifelse([$2], , [
+      CXXFLAGS="$CXXFLAGS $1"
+      AC_MSG_RESULT([adding $1 to CXXFLAGS])], [$2])
+  else
+    AC_MSG_RESULT(no)
+    ifelse([$3], , , [$3])
+  fi
+])
+dnl
+dnl Check to see if Fortran compiler handles FLAG command line option.  If
+dnl two arguments are specified, execute the second arg as shell
+dnl commands.  Otherwise, add FLAG to FFLAGS if the compiler accepts
+dnl the flag.
+dnl
+dnl OCTAVE_F77_FLAG
+AC_DEFUN([OCTAVE_F77_FLAG], [
+  ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
+  AC_MSG_CHECKING([whether ${F77-g77} accepts $1])
+  AC_CACHE_VAL(octave_cv_f77_flag_$ac_safe, [
+    AC_LANG_PUSH(Fortran 77)
+    XFFLAGS="$FFLAGS"
+    FFLAGS="$FFLAGS $1"
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
+      eval "octave_cv_f77_flag_$ac_safe=yes",
+      eval "octave_cv_f77_flag_$ac_safe=no")
+    FFLAGS="$XFFLAGS"
+    AC_LANG_POP(Fortran 77)
+  ])
+  if eval "test \"`echo '$octave_cv_f77_flag_'$ac_safe`\" = yes"; then
+    AC_MSG_RESULT(yes)
+    ifelse([$2], , [
+      FFLAGS="$FFLAGS $1"
+      AC_MSG_RESULT([adding $1 to FFLAGS])], [$2])
+  else
+    AC_MSG_RESULT(no)
+    ifelse([$3], , , [$3])
+  fi
+])
+dnl
+dnl Check to see whether the default Fortran INTEGER is 64 bits wide.
+dnl
+AC_DEFUN([OCTAVE_CHECK_FORTRAN_INTEGER_SIZE], [
+  octave_fintsize_save_FFLAGS="$FFLAGS"
+  FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"
+  AC_LANG_PUSH(Fortran 77)
+  AC_CACHE_CHECK([whether $F77 generates correct size integers],
+                 [octave_cv_fortran_integer_size],
+[AC_COMPILE_IFELSE(
+[      subroutine foo(n, in, out)
+      integer n, in(n), out(n)
+      integer i
+      do 10 i = 1, n
+        out(i) = in(i)
+   10 continue
+      return
+      end],
+[mv conftest.$ac_objext fintsize.$ac_objext
+
+  octave_fintsize_save_LIBS="$LIBS"
+  LIBS="fintsize.$ac_objext $[]_AC_LANG_PREFIX[]LIBS"
+  AC_LANG_PUSH(C)dnl
+  AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <assert.h>]], [[
+#ifdef USE_64_BIT_IDX_T
+#if IDX_TYPE_LONG
+  typedef long octave_idx_type;
+#else
+  typedef int octave_idx_type;
+#endif
+#else
+  typedef int octave_idx_type;
+#endif
+  octave_idx_type n = 2;
+  octave_idx_type in[2];
+  octave_idx_type out[2];
+  in[0] = 13;
+  in[0] = 42;
+  F77_FUNC(foo,FOO) (&n, &in, &out);
+  assert (in[0] == out[0] && in[1] == out[1]);
+]])],
+  [octave_cv_fortran_integer_size=yes],
+  [octave_cv_fortran_integer_size=no])
+  AC_LANG_POP(C)dnl
+  LIBS="$octave_fintsize_save_LIBS"
+rm -f conftest.$ac_objext fintsize.$ac_objext
+], [
+  rm -f conftest.$ac_objext
+  AC_MSG_FAILURE([cannot compile a simple Fortran program])
+  octave_cv_fortran_integer_size=no])])
+  AC_LANG_POP(Fortran 77)
+  FFLAGS="$octave_fintsize_save_FFLAGS"
+])
+dnl
+dnl
+dnl
+dnl OCTAVE_CHECK_LIBRARY(LIBRARY, DOC-NAME, WARN-MSG, HEADER, FUNC,
+dnl                      LANG, DOC-STRING, EXTRA-CHECK)
+AC_DEFUN([OCTAVE_CHECK_LIBRARY], [
+  AC_ARG_WITH([$1-includedir],
+    [AS_HELP_STRING([--with-$1-includedir=DIR],
+      [look for $2 include files in DIR])],
+    [m4_toupper([$1])_CPPFLAGS="-I$withval"])
+  AC_SUBST(m4_toupper([$1])_CPPFLAGS)
+
+  AC_ARG_WITH([$1-libdir],
+    [AS_HELP_STRING([--with-$1-libdir=DIR],
+      [look for $2 libraries in DIR])],
+    [m4_toupper([$1])_LDFLAGS="-L$withval"])
+  AC_SUBST(m4_toupper([$1])_LDFLAGS)
+
+  AC_ARG_WITH([$1],
+    [m4_ifblank([$7],
+      [AS_HELP_STRING([--without-$1], [don't use $2 library])],
+      [AS_HELP_STRING([--without-$1], [$7])])],
+    with_$1=$withval, with_$1=yes)
+
+  m4_toupper([$1])_LIBS=
+  case $with_$1 in
+    no)
+      m4_toupper([$1])_LIBS=
+    ;;
+    yes | "")
+      m4_toupper([$1])_LIBS="-l$1"
+    ;;
+    -* | */* | *.a | *.so | *.so.* | *.o)
+      m4_toupper([$1])_LIBS="$with_$1"
+    ;;
+    *)
+      m4_toupper([$1])_LIBS="-l$with_$1"
+    ;;
+  esac
+
+  [TEXINFO_]m4_toupper([$1])=
+  warn_$1="$3"
+  if test -n "$m4_toupper([$1])_LIBS"; then
+    octave_check_library_save_CPPFLAGS="$CPPFLAGS"
+    CPPFLAGS="$m4_toupper([$1])_CPPFLAGS $CPPFLAGS"
+    m4_ifnblank([$6], [AC_LANG_PUSH($6)])
+    octave_$1_check_for_lib=false
+    m4_ifblank([$4], [octave_$1_check_for_lib=true],
+               [AC_CHECK_HEADERS($4, [octave_$1_check_for_lib=true; break])])
+    if $octave_$1_check_for_lib; then
+      octave_check_library_save_LDFLAGS="$LDFLAGS"
+      LDFLAGS="$m4_toupper([$1])_LDFLAGS $LDFLAGS"
+      octave_check_library_save_LIBS="$LIBS"
+      LIBS="$m4_toupper([$1])_LIBS $LIBS"
+      octave_$1_ok=no
+      AC_MSG_CHECKING([for $5 in $m4_toupper([$1])_LIBS])
+      AC_LINK_IFELSE([AC_LANG_CALL([], [$5])],
+	[octave_$1_ok=yes])
+      AC_MSG_RESULT([$octave_$1_ok])
+      if test $octave_$1_ok = yes; then
+	m4_ifblank([$8], [
+	  warn_$1=
+	  AC_DEFINE([HAVE_]m4_toupper([$1]), 1,
+            [Define if $2 is available.])
+	  [TEXINFO_]m4_toupper([$1])="@set [HAVE_]m4_toupper([$1])"], [$8])
+      fi
+      LIBS="$octave_check_library_save_LIBS"
+      LDFLAGS="$octave_check_library_save_LDFLAGS"
+    fi
+    m4_ifnblank([$6], [AC_LANG_POP($6)])
+    CPPFLAGS="$octave_check_library_save_CPPFLAGS"
+  fi
+  AC_SUBST(m4_toupper([$1])_LIBS)
+  AC_SUBST([TEXINFO_]m4_toupper([$1]))
+  if test -n "$warn_$1"; then
+    AC_MSG_WARN([$warn_$1])
+    m4_toupper([$1])_LIBS=
+  fi
+])
+dnl
+dnl Check for flex
+dnl
+AC_DEFUN([OCTAVE_PROG_FLEX], [
+### For now, don't define LEXLIB to be -lfl -- we don't use anything in
+### it, and it might not be installed.
+###
+### Also make sure that we generate an interactive scanner if we are
+### using flex.
+  AC_PROG_LEX
+  case "$LEX" in
+    flex*)
+      LFLAGS="-I"
+      AC_MSG_RESULT([defining LFLAGS to be $LFLAGS])
+      LEXLIB=
+    ;;
+    *)
+      LEX='$(top_srcdir)/missing flex'
+      warn_flex="I didn't find flex, but it's only a problem if you need to reconstruct lex.cc"
+      AC_MSG_WARN([$warn_flex])
+    ;;
+  esac
+  AC_SUBST(LFLAGS)
+])
+dnl
+dnl Check for bison
+dnl
+AC_DEFUN([OCTAVE_PROG_BISON], [
+  AC_PROG_YACC
+  case "$YACC" in
+    bison*)
+    ;;
+    *)
+      YACC='$(top_srcdir)/missing bison'
+      warn_bison="I didn't find bison, but it's only a problem if you need to reconstruct parse.cc"
+      AC_MSG_WARN([$warn_bison])
+    ;;
+  esac
+])
+dnl
+dnl What pager should we use?
+dnl
+AC_DEFUN([OCTAVE_PROG_PAGER],
+[if test "$cross_compiling" = yes; then
+  DEFAULT_PAGER=less
+  AC_MSG_RESULT([assuming $DEFAULT_PAGER exists on $canonical_host_type host])
+  AC_SUBST(DEFAULT_PAGER)
+else
+  octave_possible_pagers="less more page pg"
+  case "$canonical_host_type" in
+    *-*-cygwin* | *-*-mingw32* | *-*-msdosmsvc)
+      octave_possible_pagers="$octave_possible_pagers more.com"
+    ;;
+  esac
+
+  AC_CHECK_PROGS(DEFAULT_PAGER, $octave_possible_pagers, [])
+  if test -z "$DEFAULT_PAGER"; then
+    warn_less="I couldn't find \`less', \`more', \`page', or \`pg'"
+    AC_MSG_WARN([$warn_less])
+  fi
+fi
+])
+dnl
+dnl Does gnuplot exist?
+dnl
+AC_DEFUN([OCTAVE_PROG_GNUPLOT], [
+gp_names="gnuplot"
+gp_default="gnuplot"
+if test "$cross_compiling" = yes; then
+  GNUPLOT="$gp_default"
+  AC_MSG_RESULT([assuming $GNUPLOT exists on $canonical_host_type host])
+else
+  AC_CHECK_PROGS(GNUPLOT, [$gp_names])
+  if test -z "$GNUPLOT"; then
+    warn_gnuplot=yes
+
+    GNUPLOT="$gp_default"
+
+    AC_MSG_WARN([gnuplot not found.  It isn't necessary to have gnuplot])
+    AC_MSG_WARN([installed, but without native graphics or gnuplot])
+	 AC_MSG_WARN([you won't be able to use any of Octave's plotting commands.])
+  fi
+fi
+AC_SUBST(GNUPLOT)
+])
+dnl
+dnl Is gperf installed?
+dnl
+dnl OCTAVE_PROG_GPERF
+AC_DEFUN([OCTAVE_PROG_GPERF], [
+  AC_CHECK_PROG(GPERF, gperf, gperf, [])
+  if test -z "$GPERF"; then
+    GPERF='$(top_srcdir)/missing gperf'
+    warn_gperf="I didn't find gperf, but it's only a problem if you need to reconstruct oct-gperf.h"
+    AC_MSG_WARN([$warn_gperf])
+  fi
+  AC_SUBST(GPERF)
+])
+dnl
+dnl Is ghostscript installed?
+dnl
+dnl OCTAVE_PROG_GHOSTSCRIPT
+AC_DEFUN([OCTAVE_PROG_GHOSTSCRIPT], [
+  case "$canonical_host_type" in
+    *-*-mingw* | *-*-msdosmsvc)
+      gs_names="gswin32c gs"
+    ;;
+    *)
+      gs_names="gs"
+    ;;
+  esac
+  AC_CHECK_PROGS(GHOSTSCRIPT, [$gs_names])
+  if test -z "$GHOSTSCRIPT"; then
+    GHOSTSCRIPT='$(top_srcdir)/missing gs'
+    warn_ghostscript="I didn't find ghostscript, so reconstructing figures for the manual will fail, and saving graphics in some output formats will fail when using Octave"
+    AC_MSG_WARN([$warn_ghostscript])
+  fi
+  AC_SUBST(GHOSTSCRIPT)
+])
+dnl
+dnl Is texi2dvi installed?
+dnl
+dnl OCTAVE_PROG_TEXI2DVI
+AC_DEFUN([OCTAVE_PROG_TEXI2DVI], [
+  AC_CHECK_PROG(TEXI2DVI, texi2dvi, texi2dvi, [])
+  if test -z "$TEXI2DVI"; then
+    TEXI2DVI='$(top_srcdir)/missing texi2dvi'
+    warn_texi2dvi="I didn't find texi2dvi, but it's only a problem if you need to reconstruct the DVI version of the manual"
+    AC_MSG_WARN([$warn_texi2dvi])
+  fi
+  AC_SUBST(TEXI2DVI)
+])
+dnl
+dnl Is texi2pdf installed?
+dnl
+dnl OCTAVE_PROG_TEXI2PDF
+AC_DEFUN([OCTAVE_PROG_TEXI2PDF], [
+  AC_REQUIRE([OCTAVE_PROG_TEXI2DVI])
+  AC_CHECK_PROG(TEXI2PDF, texi2pdf, texi2pdf, [])
+  if test -z "$TEXI2PDF"; then
+    missing=true;
+    if test -n "$TEXI2DVI"; then
+      TEXI2PDF="$TEXI2DVI --pdf"
+      missing=false;
+    fi
+  else
+    missing=false;
+  fi
+  if $missing; then
+    TEXI2PDF='$(top_srcdir)/missing texi2pdf'
+    warn_texi2pdf="I didn't find texi2pdf, but it's only a problem if you need to reconstruct the PDF version of the manual"
+    AC_MSG_WARN([$warn_texi2pdf])
+  fi
+  AC_SUBST(TEXI2PDF)
+])
+dnl
+dnl See if the C++ library is ISO compliant.
+dnl FIXME: This is obviously very simplistic, and trivially fooled.
+dnl
+dnl OCTAVE_CXX_ISO_COMPLIANT_LIBRARY
+AC_DEFUN([OCTAVE_CXX_ISO_COMPLIANT_LIBRARY], [
+  AC_REQUIRE([AC_PROG_CXX])
+  AC_MSG_CHECKING([if C++ library is ISO compliant])
+  AC_CACHE_VAL(octave_cv_cxx_iso_compliant_library, [
+    AC_LANG_PUSH(C++)
+    rm -f conftest.h
+### Omitting cwctype for now, since it is broken with gcc-3.0.x and
+### possibly other versions...
+    for inc in algorithm bitset cassert cctype cerrno cfloat ciso646 \
+	climits clocale cmath complex csetjmp csignal cstdarg cstddef \
+	cstdio cstdlib cstring ctime cwchar deque exception \
+	fstream functional iomanip ios iosfwd iostream istream iterator \
+	limits list locale map memory new numeric ostream queue set \
+	sstream stack stdexcept streambuf string strstream typeinfo \
+	utility valarray vector; do
+      echo "#include <$inc>" >> conftest.h
+    done
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
+      [[std::bitset<50> flags;
+        flags.set();
+        int digits = std::numeric_limits<unsigned long>::digits;
+        digits = 0;]])],
+      [octave_cv_cxx_iso_compliant_library=yes],
+      [octave_cv_cxx_iso_compliant_library=no])
+    AC_LANG_POP(C++)
+  ])
+  AC_MSG_RESULT([$octave_cv_cxx_iso_compliant_library])
+  if test $octave_cv_cxx_iso_compliant_library = yes; then
+    AC_DEFINE(CXX_ISO_COMPLIANT_LIBRARY, 1, [Define if your C++ runtime library is ISO compliant.])
+  fi
+])
+dnl
+dnl Allow the user disable support for command line editing using GNU
+dnl readline.
+dnl
+dnl OCTAVE_ENABLE_READLINE
+AC_DEFUN([OCTAVE_ENABLE_READLINE], [
+  USE_READLINE=true
+  READLINE_LIBS=
+  AC_ARG_ENABLE(readline,
+    [  --enable-readline       use readline library (default is yes)],
+    [if test "$enableval" = no; then
+       USE_READLINE=false
+       warn_readline="command editing and history features require GNU Readline"
+     fi])
+  if $USE_READLINE; then
+    save_LIBS="$LIBS"
+    LIBS="$TERM_LIBS"
+    AC_CHECK_LIB(readline, rl_set_keyboard_input_timeout, [
+      READLINE_LIBS="-lreadline"
+      AC_DEFINE(USE_READLINE, 1, [Define to use the readline library.])
+    ], [
+      AC_MSG_WARN([I need GNU Readline 4.2 or later])
+      AC_MSG_ERROR([this is fatal unless you specify --disable-readline])
+    ])
+    LIBS="$save_LIBS"
+  fi
+  AC_SUBST(READLINE_LIBS)
+])
+dnl
+dnl Check to see if C++ reintrepret cast works for function pointers.
+dnl
+dnl OCTAVE_CXX_BROKEN_REINTERPRET_CAST
+dnl
+AC_DEFUN([OCTAVE_CXX_BROKEN_REINTERPRET_CAST], [
+  AC_REQUIRE([AC_PROG_CXX])
+  AC_LANG_PUSH(C++)
+  AC_CACHE_CHECK([for broken C++ reinterpret_cast],
+    octave_cv_cxx_broken_reinterpret_cast, [
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <cmath>]], [[
+      typedef double (*fptr) (double);
+      fptr psin = sin;
+      void *vptr = reinterpret_cast<void *> (psin);
+      psin = reinterpret_cast<fptr> (vptr);]])],
+      octave_cv_cxx_broken_reinterpret_cast=no,
+      octave_cv_cxx_broken_reinterpret_cast=yes)])
+  if test $octave_cv_cxx_broken_reinterpret_cast = yes ; then
+    AC_DEFINE(CXX_BROKEN_REINTERPRET_CAST, 1, [Define if C++ reinterpret_cast fails for function pointers.])
+fi
+  AC_LANG_POP(C++)])
+dnl
+dnl Find find.
+dnl
+# Prefer GNU find if found.
+AN_MAKEVAR([FIND],  [OCTAVE_PROG_FIND])
+AN_PROGRAM([gfind], [OCTAVE_PROG_FIND])
+AN_PROGRAM([find],  [OCTAVE_PROG_FIND])
+AC_DEFUN([OCTAVE_PROG_FIND],
+[AC_CHECK_PROGS(FIND, gfind find, )])
+dnl
+dnl Find sed.
+dnl
+# Check for a fully-functional sed program, that truncates
+# as few characters as possible and that supports "\(X\|Y\)"
+# style regular expression alternation.  Prefer GNU sed if found.
+AC_DEFUN([OCTAVE_PROG_SED],
+[AC_MSG_CHECKING([for a usable sed])
+if test -z "$SED"; then
+  AC_CACHE_VAL(ac_cv_path_sed, [
+  # Loop through the user's path and test for sed and gsed.
+  # Then use that list of sed's as ones to test for truncation.
+  _AS_PATH_WALK([$PATH],
+    [for ac_prog in sed gsed; do
+      for ac_exec_ext in '' $ac_executable_extensions; do
+	if AS_EXECUTABLE_P(["$as_dir/$ac_prog$ac_exec_ext"]); then
+	  _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
+	fi
+      done
+    done
+    ])
+    AS_TMPDIR(sed)
+    _max=0
+    _count=0
+    # Add /usr/xpg4/bin/sed as it is typically found on Solaris
+    # along with /bin/sed that truncates output.
+    for _sed in $_sed_list /usr/xpg4/bin/sed; do
+      test ! -f ${_sed} && break
+      cat /dev/null > "$tmp/sed.in"
+      _count=0
+      echo $ECHO_N "0123456789$ECHO_C" >"$tmp/sed.in"
+      # Check for GNU sed and select it if it is found.
+      if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
+	octave_cv_path_sed=${_sed}
+	break;
+      fi
+      # Reject if RE alternation is not handled.
+      if test "`echo 'this and that' | ${_sed} -n 's/\(this\|that\).*$/\1/p'`" != "this"; then
+        continue;
+      fi
+      while true; do
+	cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
+	mv "$tmp/sed.tmp" "$tmp/sed.in"
+	cp "$tmp/sed.in" "$tmp/sed.nl"
+	echo >>"$tmp/sed.nl"
+	${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
+	cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
+	# 10000 chars as input seems more than enough
+	test $_count -gt 10 && break
+	_count=`expr $_count + 1`
+	if test $_count -gt $_max; then
+	  _max=$_count
+	  octave_cv_path_sed=$_sed
+	fi
+      done
+    done
+    rm -rf "$tmp"
+  ])
+  SED=$octave_cv_path_sed
+  if test -z "$SED"; then
+    AC_MSG_ERROR([no usable version of sed found])
+  fi
+fi
+AC_SUBST(SED)
+AC_MSG_RESULT([$SED])
+])
+dnl
+dnl Find Perl.
+dnl
+dnl OCTAVE_PROG_PERL
+AC_DEFUN([OCTAVE_PROG_PERL],
+[AC_CHECK_PROG(PERL, perl, perl, [])
+  AC_SUBST(PERL)
+])
+dnl
+dnl Find Python.
+dnl
+dnl OCTAVE_PROG_PYTHON
+AC_DEFUN([OCTAVE_PROG_PYTHON],
+[AC_CHECK_PROG(PYTHON, python, python, [])
+  AC_SUBST(PYTHON)
+])
+dnl
+dnl Find desktop-file-install.
+dnl
+dnl OCTAVE_PROG_DESKTOP_FILE_INSTALL
+AC_DEFUN([OCTAVE_PROG_DESKTOP_FILE_INSTALL],
+[AC_CHECK_PROG(DESKTOP_FILE_INSTALL, desktop-file-install, desktop-file-install, [])
+  AC_SUBST(DESKTOP_FILE_INSTALL)
+])
+dnl
+dnl Check for IEEE 754 data format.
+dnl
+AC_DEFUN([OCTAVE_IEEE754_DATA_FORMAT],
+[AC_MSG_CHECKING([for IEEE 754 data format])
+AC_CACHE_VAL(octave_cv_ieee754_data_format,
+[AC_RUN_IFELSE([AC_LANG_SOURCE([[
+int
+main (void) 
+{
+  typedef union { unsigned char c[8]; double d; } ieeebytes;
+   
+  ieeebytes l = {0x1c, 0xbc, 0x6e, 0xf2, 0x54, 0x8b, 0x11, 0x43};
+  ieeebytes b = {0x43, 0x11, 0x8b, 0x54, 0xf2, 0x6e, 0xbc, 0x1c};
+
+  return l.d != 1234567891234567.0 && b.d != 1234567891234567.0;
+}]])],
+  octave_cv_ieee754_data_format=yes,
+  octave_cv_ieee754_data_format=no,
+  octave_cv_ieee754_data_format=no)])
+if test "$cross_compiling" = yes; then
+  AC_MSG_RESULT([$octave_cv_ieee754_data_format assumed for cross compilation])
+else
+  AC_MSG_RESULT([$octave_cv_ieee754_data_format])
+fi
+if test "$octave_cv_ieee754_data_format" = yes; then
+  AC_DEFINE(HAVE_IEEE754_DATA_FORMAT, 1, [Define if your system uses IEEE 754 data format.])
+else
+  ## If the format is unknown, then you will probably not have a
+  ## useful system, so we will abort here.  Anyone wishing to
+  ## experiment with building Octave on a system without IEEE
+  ## floating point should be capable of removing this check and
+  ## the one in the octave_ieee_init function in liboctave/lo-ieee.cc.
+  AC_MSG_ERROR([IEEE 754 data format required for building Octave])
+fi
+])
+dnl
+dnl Check for UMFPACK seperately split complex matrix and RHS. Note
+dnl that as umfpack.h can be in three different places, rather than
+dnl include it, just declare the functions needed.
+dnl
+dnl Assumes that the check for umfpack has already been performed.
+dnl
+AC_DEFUN([OCTAVE_UMFPACK_SEPERATE_SPLIT],
+[AC_MSG_CHECKING([for UMFPACK seperate complex matrix and rhs split])
+AC_CACHE_VAL(octave_cv_umfpack_seperate_split,
+[AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <stdlib.h>
+#if defined (HAVE_UFSPARSE_UMFPACK_h)
+#include <ufsparse/umfpack.h>
+#elif defined (HAVE_UMFPACK_UMFPACK_H)
+#include <umfpack/umfpack.h>
+#elif defined (HAVE_UMFPACK_H)
+#include <umfpack.h>
+#endif
+int n = 5;
+int Ap[] = {0, 2, 5, 9, 10, 12};
+int Ai[]  = {0, 1, 0, 2, 4, 1, 2, 3, 4, 2, 1, 4};
+double Ax[] = {2., 0., 3., 0., 3., 0., -1., 0., 4., 0., 4., 0., 
+	      -3., 0., 1., 0., 2., 0., 2., 0., 6., 0., 1., 0.};
+double br[] = {8., 45., -3., 3., 19.};
+double bi[] = {0., 0., 0., 0., 0.};
+int main (void)
+{
+  double *null = (double *) NULL ;
+  double *x = (double *)malloc (2 * n * sizeof(double));
+  int i ;
+  void *Symbolic, *Numeric ;
+  (void) umfpack_zi_symbolic (n, n, Ap, Ai, Ax, null, &Symbolic, null, null) ;
+  (void) umfpack_zi_numeric (Ap, Ai, Ax, null, Symbolic, &Numeric, null, null) ;
+  umfpack_zi_free_symbolic (&Symbolic) ;
+  (void) umfpack_zi_solve (0, Ap, Ai, Ax, null, x, null, br, bi, 
+		Numeric, null, null) ;
+  umfpack_zi_free_numeric (&Numeric) ;
+  for (i = 0; i < n; i++, x+=2) 
+    if (fabs(*x - i - 1.) > 1.e-13)
+      return (1);
+  return (0) ;
+}
+]])],
+  octave_cv_umfpack_seperate_split=yes,
+  octave_cv_umfpack_seperate_split=no,
+  octave_cv_umfpack_seperate_split=no)])
+if test "$cross_compiling" = yes; then
+  AC_MSG_RESULT([$octave_cv_umfpack_seperate_split assumed for cross compilation])
+else
+  AC_MSG_RESULT([$octave_cv_umfpack_seperate_split])
+fi
+if test "$octave_cv_umfpack_seperate_split" = yes; then
+  AC_DEFINE(UMFPACK_SEPARATE_SPLIT, 1, [Define if the UMFPACK Complex solver allow matrix and RHS to be split independently])
+fi
+])
+dnl
+dnl Check whether using HDF5 DLL under Windows. This is done by
+dnl testing for a data symbol in the HDF5 library, which would
+dnl requires the definition of _HDF5USEDL_ under MSVC compiler.
+dnl
+AC_DEFUN([OCTAVE_HDF5_DLL], [
+  AC_CACHE_CHECK([if _HDF5USEDLL_ needs to be defined],octave_cv_hdf5_dll, [
+    AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
+      octave_cv_hdf5_dll=no, [
+      save_CFLAGS="$CFLAGS"
+      CFLAGS="$CFLAGS -DWIN32 -D_HDF5USEDLL_"
+      save_LIBS="$LIBS"
+      LIBS="$HDF5_LIBS $LIBS"
+      AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
+        octave_cv_hdf5_dll=yes,
+	octave_cv_hdf5_dll=no)
+      CFLAGS="$save_CFLAGS"
+      LIBS="$save_LIBS"])])
+  if test "$octave_cv_hdf5_dll" = yes; then
+    AC_DEFINE(_HDF5USEDLL_, 1, [Define if using HDF5 dll (Win32)])
+  fi])
+dnl
+dnl Check whether HDF5 library has version 1.6 API functions.
+dnl
+AC_DEFUN([OCTAVE_HDF5_HAS_ENFORCED_16_API], [
+  AC_CACHE_CHECK([whether HDF5 library has enforced version 1.6 API],
+    octave_cv_hdf5_has_enforced_16_api, [
+    AC_TRY_LINK([
+#include <hdf5.h>
+], [
+  H5Eset_auto (0, 0);], [
+      octave_cv_hdf5_has_enforced_16_api=yes], [
+      octave_cv_hdf5_has_enforced_16_api=no])])
+  if test "$octave_cv_hdf5_has_enforced_16_api" != "yes"; then
+    AC_DEFINE(HAVE_HDF5_18, 1, [Define if >=HDF5-1.8 is available.])
+  fi
+])
+dnl
+dnl Check for the QHull version.
+dnl
+AC_DEFUN([OCTAVE_CHECK_QHULL_VERSION],
+  [AC_CACHE_CHECK([for qh_version in $QHULL_LIBS],
+    octave_cv_lib_qhull_version,  [
+      AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+#include <qhull/qhull_a.h>
+]], [[
+const char *tmp = qh_version;
+]])], [octave_cv_lib_qhull_version=yes], [octave_cv_lib_qhull_version=no])])
+  if test "$octave_cv_lib_qhull_version" = no; then
+    AC_DEFINE(NEED_QHULL_VERSION, 1,
+      [Define if the QHull library needs a qh_version variable defined.])
+  fi
+])
+dnl
+dnl Check whether QHull works (does not crash)
+dnl
+AC_DEFUN([OCTAVE_CHECK_QHULL_OK],
+  [AC_CACHE_CHECK([whether the qhull library works],
+    octave_cv_lib_qhull_ok, [
+      AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+#include <stdio.h>
+#include <qhull/qhull.h>
+#ifdef NEED_QHULL_VERSION
+char *qh_version = "version";
+#endif
+]], [[
+int dim = 2;
+int n = 4;
+coordT points[8] = { -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, 0.5, 0.5 };
+boolT ismalloc = 0;
+return qh_new_qhull (dim, n, points, ismalloc, "qhull ", 0, stderr); 
+]])], [octave_cv_lib_qhull_ok=yes], [octave_cv_lib_qhull_ok=no])])
+  if test "$octave_cv_lib_qhull_ok" = "yes"; then
+    $1
+  else
+    $2
+  fi
+])
+dnl
+dnl Check for OpenGL.  If found, define OPENGL_LIBS
+dnl
+dnl FIXME -- the following tests should probably check for the
+dnl libraries separately.
+dnl
+dnl FIXME -- should we allow a way to specify a directory for OpenGL
+dnl libraries and header files?
+dnl
+AC_DEFUN([OCTAVE_OPENGL], [
+OPENGL_LIBS=
+
+### On MacOSX systems the OpenGL framework can be used
+OCTAVE_HAVE_FRAMEWORK(OpenGL, [
+#include <OpenGL/gl.h>
+#include <OpenGL/glu.h> ], [GLint par; glGetIntegerv (GL_VIEWPORT, &par);],
+  [have_framework_opengl="yes"], [have_framework_opengl="no"])
+
+if test $have_framework_opengl = "yes"; then
+  AC_DEFINE(HAVE_FRAMEWORK_OPENGL, 1, [Define if framework OPENGL is available.])
+  OPENGL_LIBS="-Wl,-framework -Wl,OpenGL"
+  AC_MSG_NOTICE([adding -Wl,-framework -Wl,OpenGL to OPENGL_LIBS])
+  OCTAVE_GLUTESSCALLBACK_THREEDOTS
+else
+  case $canonical_host_type in
+    *-*-mingw32* | *-*-msdosmsvc)
+      AC_CHECK_HEADERS(windows.h)
+    ;;
+  esac
+  have_opengl_incs=no
+  AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h], [
+    AC_CHECK_HEADERS([GL/glu.h OpenGL/glu.h], [
+      have_opengl_incs=yes; break], [], [
+#ifdef HAVE_WINDOWS_H
+#include <windows.h>
+#endif
+    ])
+    break
+    ], [], [
+#ifdef HAVE_WINDOWS_H
+#include <windows.h>
+#endif
+    ])
+
+  if test "$have_opengl_incs" = "yes"; then
+    case $canonical_host_type in
+      *-*-mingw32* | *-*-msdosmsvc)
+        save_LIBS="$LIBS"
+        LIBS="$LIBS -lopengl32"
+        AC_MSG_CHECKING([for glEnable in -lopengl32])
+        AC_TRY_LINK([
+#if HAVE_WINDOWS_H
+#include <windows.h>
+#endif
+#if defined (HAVE_GL_GL_H)
+#include <GL/gl.h>
+#elif defined (HAVE_OPENGL_GL_H)
+#include <OpenGL/gl.h>
+#endif
+], [glEnable(GL_SMOOTH);], OPENGL_LIBS="-lopengl32 -lglu32")
+        LIBS="$save_LIBS"
+        if test "x$OPENGL_LIBS" != "x"; then
+          AC_MSG_RESULT(yes)
+        else
+          AC_MSG_RESULT(no)
+        fi
+        ;;
+      *)
+        AC_CHECK_LIB(GL, glEnable, OPENGL_LIBS="-lGL -lGLU")
+        ;;
+    esac
+  fi
+fi
+AC_SUBST(OPENGL_LIBS)
+])
+dnl
+dnl See if function gluTessCallback is called with "(...)"
+dnl
+dnl OCTAVE_GLUTESSCALLBACK_THREEDOTS
+AC_DEFUN([OCTAVE_GLUTESSCALLBACK_THREEDOTS],
+[AC_CACHE_CHECK([whether gluTessCallback is called with "(...)"],
+octave_cv_glutesscallback_threedots,
+[AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#ifdef HAVE_GL_GLU_H
+#include <GL/glu.h>
+#elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
+#include <OpenGL/glu.h>
+#endif]],
+[[GLvoid (*func)(...); gluTessCallback(0, 0, func);]])],
+octave_cv_glutesscallback_threedots="yes", octave_cv_glutesscallback_threedots="no")])
+AC_LANG_POP(C++)
+if test $octave_cv_glutesscallback_threedots = "yes"; then
+  AC_DEFINE(HAVE_GLUTESSCALLBACK_THREEDOTS, 1, 
+    [Define if gluTessCallback is called with (...)])
+fi
+])
+dnl
+dnl Check for support of OpenMP with a given compiler flag. If
+dnl found define HAVE_OPENMP and add the compile flag to CFLAGS
+dnl and CXXFLAGS.
+dnl
+AC_DEFUN([OCTAVE_CHECK_OPENMP],
+[AC_MSG_CHECKING([for support of OpenMP])
+XCFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $1"
+AC_CACHE_VAL(octave_cv_check_openmp,[
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#include <omp.h>
+#include <stdio.h>
+]], [[
+int main(int argc, char* argv[])
+{
+  _Pragma("omp parallel")  
+  printf("Hello, world.\n");
+  return 0;
+}
+]])],octave_cv_openmp=yes, octave_cv_openmmp=no, octave_cv_openmp=no)])
+AC_MSG_RESULT($octave_cv_openmp)
+if test "$octave_cv_openmp" = yes; then
+  AC_DEFINE(HAVE_OPENMP,1,[Define if compiler supports OpenMP])
+  CXXFLAGS="$CXXFLAGS $1"
+else
+  CFLAGS="$XCFLAGS"
+fi
+])
+dnl
+dnl Configure paths for FreeType2
+dnl Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
+dnl
+dnl Copyright 2001, 2003 by
+dnl David Turner, Robert Wilhelm, and Werner Lemberg.
+dnl
+dnl This file is part of the FreeType project, and may only be used, modified,
+dnl and distributed under the terms of the FreeType project license,
+dnl LICENSE.TXT.  By continuing to use, modify, or distribute this file you
+dnl indicate that you have read the license and understand and accept it
+dnl fully.
+dnl
+dnl As a special exception to the FreeType project license, this file may be
+dnl distributed as part of a program that contains a configuration script
+dnl generated by Autoconf, under the same distribution terms as the rest of
+dnl that program.
+dnl
+dnl serial 2
+dnl
+dnl AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
+dnl MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is
+dnl FreeType 2.0.4).
+dnl
+AC_DEFUN([AC_CHECK_FT2],
+  [dnl Get the cflags and libraries from the freetype-config script
+   dnl
+   AC_ARG_WITH([ft-prefix],
+     dnl don't quote AS_HELP_STRING!
+     AS_HELP_STRING([--with-ft-prefix=PREFIX],
+                    [Prefix where FreeType is installed (optional)]),
+     [ft_config_prefix="$withval"],
+     [ft_config_prefix=""])
+  
+   AC_ARG_WITH([ft-exec-prefix],
+     dnl don't quote AS_HELP_STRING!
+     AS_HELP_STRING([--with-ft-exec-prefix=PREFIX],
+                    [Exec prefix where FreeType is installed (optional)]),
+     [ft_config_exec_prefix="$withval"],
+     [ft_config_exec_prefix=""])
+
+   AC_ARG_ENABLE([freetypetest],
+     dnl don't quote AS_HELP_STRING!
+     AS_HELP_STRING([--disable-freetypetest],
+                    [Do not try to compile and run a test FreeType program]),
+     [],
+     [enable_fttest=yes])
+
+   if test x$ft_config_exec_prefix != x ; then
+     ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix"
+     if test x${FT2_CONFIG+set} != xset ; then
+       FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config
+     fi
+   fi
+
+   if test x$ft_config_prefix != x ; then
+     ft_config_args="$ft_config_args --prefix=$ft_config_prefix"
+     if test x${FT2_CONFIG+set} != xset ; then
+       FT2_CONFIG=$ft_config_prefix/bin/freetype-config
+     fi
+   fi
+
+   AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no])
+
+   min_ft_version=m4_if([$1], [], [7.0.1], [$1])
+   AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])
+   no_ft=""
+   if test "$FT2_CONFIG" = "no" ; then
+     no_ft=yes
+   else
+     FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags`
+     FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs`
+     ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+     ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+     ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+     ft_min_major_version=`echo $min_ft_version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
+     ft_min_minor_version=`echo $min_ft_version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
+     ft_min_micro_version=`echo $min_ft_version | \
+       sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
+     if test x$enable_fttest = xyes ; then
+       ft_config_is_lt=""
+       if test $ft_config_major_version -lt $ft_min_major_version ; then
+         ft_config_is_lt=yes
+       else
+         if test $ft_config_major_version -eq $ft_min_major_version ; then
+           if test $ft_config_minor_version -lt $ft_min_minor_version ; then
+             ft_config_is_lt=yes
+           else
+            if test $ft_config_minor_version -eq $ft_min_minor_version ; then
+               if test $ft_config_micro_version -lt $ft_min_micro_version ; then
+                 ft_config_is_lt=yes
+               fi
+             fi
+           fi
+         fi
+       fi
+       if test x$ft_config_is_lt = xyes ; then
+         no_ft=yes
+       else
+         ac_save_CFLAGS="$CFLAGS"
+         ac_save_LIBS="$LIBS"
+         CFLAGS="$CFLAGS $FT2_CFLAGS"
+         LIBS="$FT2_LIBS $LIBS"
+
+         dnl
+         dnl Sanity checks for the results of freetype-config to some extent.
+         dnl
+         AC_RUN_IFELSE([
+             AC_LANG_SOURCE([[
+
+#include <ft2build.h>
+#include FT_FREETYPE_H
+#include <stdio.h>
+#include <stdlib.h>
+
+int
+main()
+{
+  FT_Library library;
+  FT_Error  error;
+
+  error = FT_Init_FreeType(&library);
+
+  if (error)
+    return 1;
+  else
+  {
+    FT_Done_FreeType(library);
+    return 0;
+  }
+}
+
+             ]])
+           ],
+           [],
+           [no_ft=yes],
+           [echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"])
+
+         CFLAGS="$ac_save_CFLAGS"
+         LIBS="$ac_save_LIBS"
+       fi             dnl test $ft_config_version -lt $ft_min_version
+     fi               dnl test x$enable_fttest = xyes
+   fi                 dnl test "$FT2_CONFIG" = "no"
+
+   if test x$no_ft = x ; then
+     AC_MSG_RESULT([yes])
+     m4_if([$2], [], [:], [$2])
+   else
+     AC_MSG_RESULT([no])
+     if test "$FT2_CONFIG" = "no" ; then
+       AC_MSG_WARN([
+
+  The freetype-config script installed by FreeType 2 could not be found.
+  If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in
+  your path, or set the FT2_CONFIG environment variable to the
+  full path to freetype-config.
+       ])
+     else
+       if test x$ft_config_is_lt = xyes ; then
+         AC_MSG_WARN([
+
+  Your installed version of the FreeType 2 library is too old.
+  If you have different versions of FreeType 2, make sure that
+  correct values for --with-ft-prefix or --with-ft-exec-prefix
+  are used, or set the FT2_CONFIG environment variable to the
+  full path to freetype-config.
+         ])
+       else
+         AC_MSG_WARN([
+
+  The FreeType test program failed to run.  If your system uses
+  shared libraries and they are installed outside the normal
+  system library path, make sure the variable LD_LIBRARY_PATH
+  (or whatever is appropiate for your system) is correctly set.
+         ])
+       fi
+     fi
+
+     FT2_CFLAGS=""
+     FT2_LIBS=""
+     m4_if([$3], [], [:], [$3])
+   fi
+
+   AC_SUBST([FT2_CFLAGS])
+   AC_SUBST([FT2_LIBS])])
+dnl end of freetype2.m4
+
+dnl Check whether a math mapper function is available in <cmath>.
+dnl Will define HAVE_CMATH_FUNC if there is a double variant and
+dnl HAVE_CMATH_FUNCF if there is a float variant.
+dnl Currently capable of checking for functions with single 
+dnl argument and returning bool/int/real.
+AC_DEFUN([OCTAVE_CMATH_FUNC],[
+AC_MSG_CHECKING([for std::$1 in <cmath>])
+AC_LANG_PUSH(C++)
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#include <cmath>
+void take_func (bool (*func) (double x));
+void take_func (int (*func) (double x));
+void take_func (double (*func) (double x));
+]],
+[[
+take_func(std::$1);
+]])],
+[AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1),1,[Define if <cmath> provides $1])],
+[AC_MSG_RESULT([no])])
+AC_MSG_CHECKING([for std::$1 (float variant) in <cmath>])
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+#include <cmath>
+void take_func (bool (*func) (float x));
+void take_func (int (*func) (float x));
+void take_func (float (*func) (float x));
+]],
+[[
+take_func(std::$1);
+]])],
+[AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1)F,1,[Define if <cmath> provides float variant of $1])],
+[AC_MSG_RESULT([no])])
+AC_LANG_POP(C++)
+])
+
+dnl Check whether fast signed integer arithmetics using bit tricks
+dnl can be used in oct-inttypes.h. Defines HAVE_FAST_INT_OPS if
+dnl the following conditions hold:
+dnl 1. Signed numbers are represented by twos complement
+dnl    (see <http://en.wikipedia.org/wiki/Two%27s_complement>)
+dnl 2. static_cast to unsigned int counterpart works like interpreting
+dnl    the signed bit pattern as unsigned (and is thus zero-cost).
+dnl 3. Signed addition and subtraction yield the same bit results as unsigned.
+dnl    (We use casts to prevent optimization interference, so there is no
+dnl     need for things like -ftrapv).
+dnl 4. Bit operations on signed integers work like on unsigned integers,
+dnl    except for the shifts. Shifts are arithmetic.
+dnl
+AC_DEFUN([OCTAVE_FAST_INT_OPS],[
+AC_MSG_CHECKING([whether fast integer arithmetics is usable])
+AC_LANG_PUSH(C++)
+AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+#include <limits>
+template<class UT, class ST>
+static bool 
+do_test (UT, ST)
+{
+  volatile ST s = std::numeric_limits<ST>::min () / 3;
+  volatile UT u = static_cast<UT> (s);
+  if (*(reinterpret_cast<volatile ST *> (&u)) != s) return true;
+  
+  u = 0; u = ~u;
+  if (*(reinterpret_cast<volatile ST *> (&u)) != -1) return true;
+  
+  ST sx, sy;
+  sx = std::numeric_limits<ST>::max () / 2 + 1;
+  sy = std::numeric_limits<ST>::max () / 2 + 2;
+  if (static_cast<ST> (static_cast<UT> (sx) + static_cast<UT> (sy))
+      != std::numeric_limits<ST>::min () + 1) return true;
+  if (static_cast<ST> (static_cast<UT> (sx) - static_cast<UT> (sy))
+      != -1) return true;
+  
+  if ((sx & sy) != (static_cast<UT> (sx) & static_cast<UT> (sy)))
+    return true;
+  if ((sx | sy) != (static_cast<UT> (sx) | static_cast<UT> (sy)))
+    return true;
+  if ((sx ^ sy) != (static_cast<UT> (sx) ^ static_cast<UT> (sy)))
+    return true;
+  if ((-1 >> 1) != -1) return true;
+  return false;
+}
+
+#define DO_TEST(T) \
+if (do_test (static_cast<unsigned T> (0), static_cast<signed T> (0))) \
+  return sizeof (T);
+]],[[
+  DO_TEST(char)
+  DO_TEST(short)
+  DO_TEST(int)
+  DO_TEST(long)
+#if (defined(HAVE_LONG_LONG_INT) && defined(HAVE_UNSIGNED_LONG_LONG_INT))
+  DO_TEST(long long)
+#endif
+]])],
+[AC_MSG_RESULT([yes])
+ AC_DEFINE(HAVE_FAST_INT_OPS,1,[Define if signed integers use two's complement])],
+[AC_MSG_RESULT([no])])
+AC_LANG_POP(C++)])
+dnl
+dnl Check to see if the compiler and the linker can handle the flags
+dnl "-framework $1" for the given prologue $2 and the given body $3 of
+dnl a source file.  Arguments 2 and 3 optionally can also be empty.
+dnl Add options (lower case letters $1) "--with-framework-$1" and
+dnl "--without-framework-$1". If this test is successful then perform
+dnl $4, otherwise do $5.
+dnl
+dnl OCTAVE_HAVE_FRAMEWORK
+AC_DEFUN([OCTAVE_HAVE_FRAMEWORK], [
+  AC_MSG_CHECKING([whether ${LD-ld} accepts -framework $1])
+  AC_CACHE_VAL(octave_cv_framework_$1, [
+    XLDFLAGS="$LDFLAGS"
+    LDFLAGS="$LDFLAGS -framework $1"
+    AC_LANG_PUSH(C++)
+    AC_LINK_IFELSE([AC_LANG_PROGRAM([$2], [$3])],
+      eval "octave_cv_framework_$1=yes",
+      eval "octave_cv_framework_$1=no")
+    AC_LANG_POP(C++)
+    LDFLAGS="$XLDFLAGS"
+  ])
+  if test "$octave_cv_framework_$1" = "yes"; then
+    AC_MSG_RESULT(yes)
+    AC_ARG_WITH(framework-m4_tolower($1),
+      [AS_HELP_STRING([--without-framework-m4_tolower($1)], 
+        [don't use framework $1])],
+         with_have_framework=$withval, with_have_framework="yes")
+    if test "$with_have_framework" = "yes"; then
+      [$4]
+    else
+      AC_MSG_NOTICE([framework rejected by --without-framework-m4_tolower($1)])
+      [$5]
+    fi
+  else
+    AC_MSG_RESULT(no)
+    [$5]
+  fi
+])
+
+##############################################################################
+##############################################################################
+
+# pkg.m4 - Macros to locate and utilise pkg-config.            -*- Autoconf -*-
+# 
+# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# PKG_PROG_PKG_CONFIG([MIN-VERSION])
+# ----------------------------------
+AC_DEFUN([PKG_PROG_PKG_CONFIG],
+[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
+m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
+AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
+if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
+	AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
+fi
+if test -n "$PKG_CONFIG"; then
+	_pkg_min_version=m4_default([$1], [0.9.0])
+	AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
+	if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
+		AC_MSG_RESULT([yes])
+	else
+		AC_MSG_RESULT([no])
+		PKG_CONFIG=""
+	fi
+		
+fi[]dnl
+])# PKG_PROG_PKG_CONFIG
+
+# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+#
+# Check to see whether a particular set of modules exists.  Similar
+# to PKG_CHECK_MODULES(), but does not set variables or print errors.
+#
+#
+# Similar to PKG_CHECK_MODULES, make sure that the first instance of
+# this or PKG_CHECK_MODULES is called, or make sure to call
+# PKG_CHECK_EXISTS manually
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_EXISTS],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+if test -n "$PKG_CONFIG" && \
+    AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
+  m4_ifval([$2], [$2], [:])
+m4_ifvaln([$3], [else
+  $3])dnl
+fi])
+
+
+# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
+# ---------------------------------------------
+m4_define([_PKG_CONFIG],
+[if test -n "$PKG_CONFIG"; then
+    if test -n "$$1"; then
+        pkg_cv_[]$1="$$1"
+    else
+        PKG_CHECK_EXISTS([$3],
+                         [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
+			 [pkg_failed=yes])
+    fi
+else
+	pkg_failed=untried
+fi[]dnl
+])# _PKG_CONFIG
+
+# _PKG_SHORT_ERRORS_SUPPORTED
+# -----------------------------
+AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+        _pkg_short_errors_supported=yes
+else
+        _pkg_short_errors_supported=no
+fi[]dnl
+])# _PKG_SHORT_ERRORS_SUPPORTED
+
+
+# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
+# [ACTION-IF-NOT-FOUND])
+#
+#
+# Note that if there is a possibility the first call to
+# PKG_CHECK_MODULES might not happen, you should be sure to include an
+# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
+#
+#
+# --------------------------------------------------------------
+AC_DEFUN([PKG_CHECK_MODULES],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
+AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
+
+pkg_failed=no
+AC_MSG_CHECKING([for $1])
+
+_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
+_PKG_CONFIG([$1][_LIBS], [libs], [$2])
+
+m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
+and $1[]_LIBS to avoid the need to call pkg-config.
+See the pkg-config man page for more details.])
+
+if test $pkg_failed = yes; then
+        _PKG_SHORT_ERRORS_SUPPORTED
+        if test $_pkg_short_errors_supported = yes; then
+	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
+        else 
+	        $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
+        fi
+	# Put the nasty error message in config.log where it belongs
+	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
+
+	ifelse([$4], , [AC_MSG_ERROR(dnl
+[Package requirements ($2) were not met:
+
+$$1_PKG_ERRORS
+
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
+installed software in a non-standard prefix.
+
+_PKG_TEXT
+])],
+		[AC_MSG_RESULT([no])
+                $4])
+elif test $pkg_failed = untried; then
+	ifelse([$4], , [AC_MSG_FAILURE(dnl
+[The pkg-config script could not be found or is too old.  Make sure it
+is in your PATH or set the PKG_CONFIG environment variable to the full
+path to pkg-config.
+
+_PKG_TEXT
+
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
+		[$4])
+else
+	$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
+	$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
+        AC_MSG_RESULT([yes])
+	ifelse([$3], , :, [$3])
+fi[]dnl
+])# PKG_CHECK_MODULES
+
+dnl
+dnl External macros.
+dnl
+
+m4_include([m4/ax_pthread.m4])
+m4_include([m4/ax_blas.m4])
+m4_include([m4/ax_blas_f77_func.m4])
+m4_include([m4/ax_lapack.m4])
--- a/missing	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,367 +0,0 @@
-#! /bin/sh
-# Common stub for a few missing GNU programs while installing.
-
-scriptversion=2006-05-10.23
-
-# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006
-#   Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
-
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-# 02110-1301, USA.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-if test $# -eq 0; then
-  echo 1>&2 "Try \`$0 --help' for more information"
-  exit 1
-fi
-
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, `missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
-
-msg="missing on your system"
-
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
-
-  -h|--h|--he|--hel|--help)
-    echo "\
-$0 [OPTION]... PROGRAM [ARGUMENT]...
-
-Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
-
-Options:
-  -h, --help      display this help and exit
-  -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
-
-Supported PROGRAM values:
-  aclocal      touch file \`aclocal.m4'
-  autoconf     touch file \`configure'
-  autoheader   touch file \`config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all \`Makefile.in' files
-  bison        create \`y.tab.[ch]', if possible, from existing .[ch]
-  flex         create \`lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create \`lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
-  yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
-
-Send bug reports to <bug-automake@gnu.org>."
-    exit $?
-    ;;
-
-  -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
-    echo "missing $scriptversion (GNU Automake)"
-    exit $?
-    ;;
-
-  -*)
-    echo 1>&2 "$0: Unknown \`$1' option"
-    echo 1>&2 "Try \`$0 --help' for more information"
-    exit 1
-    ;;
-
-esac
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).
-case $1 in
-  lex|yacc)
-    # Not GNU programs, they don't have --version.
-    ;;
-
-  tar)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running `$TOOL --version' or `$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $1 in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acinclude.m4' or \`${configure_ac}'.  You might want
-         to install the \`Automake' and \`Perl' packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`${configure_ac}'.  You might want to install the
-         \`Autoconf' and \`GNU m4' packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`acconfig.h' or \`${configure_ac}'.  You might want
-         to install the \`Autoconf' and \`GNU m4' packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-				       sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
-
-  automake*)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
-         You might want to install the \`Automake' and \`Perl' packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-	   sed 's/\.am$/.in/' |
-	   while read f; do touch "$f"; done
-    ;;
-
-  autom4te)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get \`$1' as part of \`Autoconf' from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo "#! /bin/sh"
-	echo "# Created by GNU Automake missing as a replacement of"
-	echo "#  $ $@"
-	echo "exit 0"
-	chmod +x $file
-	exit 1
-    fi
-    ;;
-
-  bison|yacc)
-    echo 1>&2 "\
-WARNING: \`$1' $msg.  You should only need it if
-         you modified a \`.y' file.  You may need the \`Bison' package
-         in order for those modifications to take effect.  You can get
-         \`Bison' from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.y)
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.c
-	    fi
-	    SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" y.tab.h
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f y.tab.h; then
-	echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-	echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex|flex)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.l' file.  You may need the \`Flex' package
-         in order for those modifications to take effect.  You can get
-         \`Flex' from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG="\${$#}"
-	case $LASTARG in
-	*.l)
-	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-	    if test -f "$SRCFILE"; then
-	         cp "$SRCFILE" lex.yy.c
-	    fi
-	  ;;
-	esac
-    fi
-    if test ! -f lex.yy.c; then
-	echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-	 you modified a dependency of a manual page.  You may need the
-	 \`Help2man' package in order for those modifications to take
-	 effect.  You can get \`Help2man' from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-	touch $file
-    else
-	test -z "$file" || exec >$file
-	echo ".ab help2man is required to generate this page"
-	exit 1
-    fi
-    ;;
-
-  makeinfo)
-    echo 1>&2 "\
-WARNING: \`$1' is $msg.  You should only need it if
-         you modified a \`.texi' or \`.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy \`make' (AIX,
-         DU, IRIX).  You might want to install the \`Texinfo' package or
-         the \`GNU make' package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-	/^@setfilename/{
-	  s/.* \([^ ]*\) *$/\1/
-	  p
-	  q
-	}' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  tar)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-	case $firstarg in
-	*o*)
-	    firstarg=`echo "$firstarg" | sed s/o//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-	case $firstarg in
-	*h*)
-	    firstarg=`echo "$firstarg" | sed s/h//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: \`$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the \`README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing \`$1' program."
-    exit 1
-    ;;
-esac
-
-exit 0
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-end: "$"
-# End:
--- a/mk-opts.pl	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1076 +0,0 @@
-#! /usr/bin/perl -w
-#
-# Copyright (C) 2002-2011 John W. Eaton
-#
-# This file is part of Octave.
-#
-# Octave is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by the
-# Free Software Foundation; either version 3 of the License, or (at
-# your option) any later version.
-#
-# Octave is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-# for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with Octave; see the file COPYING.  If not, see
-# <http://www.gnu.org/licenses/>.
-
-# Generate option handling code from a simpler input files for
-# Octave's functions like lsode, dassl, etc.
-
-# FIXME:
-#
-# * Improve default documentation and/or individual documentation
-#   in data files.
-#
-# * Fix print/show code to display/return something more informative
-#   for special values (for example, -1 ==> infinite in some cases).
-#   Probably need more information in the data files for this.
-
-# Input file format:
-#
-# CLASS = string
-# FCN_NAME = string
-# INCLUDE = file
-# DOC_STRING doc END_DOC_STRING
-# OPTION
-#   NAME = string
-#   DOC_ITEM doc END_DOC_ITEM
-#   TYPE = string
-#   SET_ARG_TYPE = string   (optional, defaults to TYPE)
-#   INIT_VALUE = string | INIT_BODY code END_INIT_BODY
-#   SET_EXPR = string | SET_BODY code END_SET_BODY | SET_CODE code END_SET_CODE
-# END_OPTION
-#
-# END_* must appear at beginning of line (whitespace ignored).
-
-################################################################################
-# Load packages to
-# 1) process command line options
-################################################################################
-use Getopt::Long;
-
-################################################################################
-# Extract command line arguments
-&parse_options;
-
-$DEFN_FILE = shift @ARGV;
-open (DEFN_FILE) or die "unable to open input definition file $DEFN_FILE";
-
-################################################################################
-# Initialize variables
-$BLANK_LINE = qr/^\s*$/;
-$COMMENT = qr/^\s*#/;
-
-################################################################################
-# Process file
-$OPT_NUM = 0;
-
-&parse_input;
-
-&process_data;
-
-# Produce desired style of output
-&emit_opt_class_header if $opt_class_header;
-&emit_opt_handler_fcns if $opt_handler_fcns;
-&emit_options_debug if $opt_debug;
-
-# End of main code
-
-################################################################################
-# Subroutines
-################################################################################
-
-sub parse_input
-{
-  LINE: while (<DEFN_FILE>)
-    {
-      next LINE if /$BLANK_LINE/;
-      next LINE if /$COMMENT/;
-
-      if (/^\s*OPTION\s*$/)
-        {
-          &parse_option_block;
-        }
-      elsif (/^\s*CLASS\s*=\s*"(\w+)"\s*$/)
-        {
-          die "duplicate CLASS" if defined $CLASS;
-          $CLASS = $1;
-          $CLASS_NAME = "${CLASS}_options";
-          $STRUCT_NAME = "${CLASS_NAME}_struct";
-          $STATIC_TABLE_NAME = "${CLASS_NAME}_table";
-        }
-      elsif (/^\s*FCN_NAME\s*=\s*"(\w+)"\s*$/)
-        {
-          die "duplicate FCN_NAME" if defined $FCN_NAME;
-          $FCN_NAME = $1;
-        }
-      elsif (/^\s*INCLUDE\s*=\s*"(\S+)"\s*$/)
-        {
-          $INCLUDE .= "#include <$1>\n";
-        }
-      elsif (/^\s*DOC_STRING\s*$/)
-        {
-          die "duplicate DOC_STRING" if defined $DOC_STRING;
-          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_DOC_STRING\s*$/)
-          {
-            $DOC_STRING .= $_;
-          }
-          $DOC_STRING =~ s/\n/\\n\\\n/g;
-        }
-      else
-        {
-          die "mk-opts.pl: unknown command: $_\n"
-        }
-    }
-  $INCLUDE = "" if not defined $INCLUDE;   # Initialize value if required
-}
-
-sub parse_option_block
-{
-  while (<DEFN_FILE>)
-    {
-      next if /$BLANK_LINE/;
-
-      die "missing END_OPTION" if /^\s*OPTION\s*$/;
-
-      last if /^\s*END_OPTION\s*$/;
-
-      if (/^\s*NAME\s*=\s*"(.*)"\s*$/)
-        {
-          die "duplicate NAME" if defined $NAME[$OPT_NUM];
-          $NAME[$OPT_NUM] = $1;
-          ($OPT[$OPT_NUM] = $NAME[$OPT_NUM]) =~ s/\s+/_/g;
-          $OPTVAR[$OPT_NUM] = 'x_' . $OPT[$OPT_NUM];
-          $KW_TOK[$OPT_NUM] = [ split (' ', $NAME[$OPT_NUM]) ];
-          $N_TOKS[$OPT_NUM] = @{$KW_TOK[$OPT_NUM]};
-        }
-      elsif (/^\s*DOC_ITEM\s*$/)
-        {
-          die "duplicate DOC_ITEM" if defined $DOC_ITEM[$OPT_NUM];
-          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_DOC_ITEM\s*$/)
-          {
-            $DOC_ITEM[$OPT_NUM] .= $_;
-          }
-          $DOC_ITEM[$OPT_NUM] =~ s/\n/\\n\\\n/g;
-        }
-      elsif (/^\s*TYPE\s*=\s*"(.*)"\s*$/)
-        {
-          die "duplicate TYPE" if defined $TYPE[$OPT_NUM];
-          $TYPE[$OPT_NUM] = $1;
-        }
-      elsif (/^\s*SET_ARG_TYPE\s*=\s*"(.*)"\s*$/)
-        {
-          die "duplicate SET_ARG_TYPE" if defined $SET_ARG_TYPE[$OPT_NUM];
-          $SET_ARG_TYPE[$OPT_NUM] = $1;
-        }
-      elsif (/^\s*INIT_VALUE\s*=\s*"(.*)"\s*$/)
-        {
-          die "duplicate INIT_VALUE" if defined $INIT_VALUE[$OPT_NUM];
-          $INIT_VALUE[$OPT_NUM] = $1;
-        }
-      elsif (/^\s*SET_EXPR\s*=\s*"(.*)"\s*$/)
-        {
-          die "duplicate SET_EXPR" if defined $SET_EXPR[$OPT_NUM];
-          $SET_EXPR[$OPT_NUM] = $1;
-        }
-      elsif (/^\s*INIT_BODY\s*$/)
-        {
-          die "duplicate INIT_BODY" if defined $INIT_BODY[$OPT_NUM];
-          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_INIT_BODY\s*$/)
-          {
-            $INIT_BODY[$OPT_NUM] .= $_;
-          }
-        }
-      elsif (/^\s*SET_BODY\s*$/)
-        {
-          die "duplicate SET_BODY" if defined $INIT_BODY[$OPT_NUM];
-          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_SET_BODY\s*$/)
-          {
-            $SET_BODY[$OPT_NUM] .= $_;
-          }
-        }
-      elsif (/^\s*SET_CODE\s*$/)
-        {
-          die "duplicate SET_CODE" if defined $SET_CODE[$OPT_NUM];
-          while (defined ($_ = <DEFN_FILE>) and not /^\s*END_SET_CODE\s*$/)
-          {
-            $SET_CODE[$OPT_NUM] .= $_;
-          }
-        }
-    }
-
-  if (not defined $SET_ARG_TYPE[$OPT_NUM])
-    {
-      $SET_ARG_TYPE[$OPT_NUM] = $TYPE[$OPT_NUM];
-    }
-  else
-    {
-      $SET_ARG_TYPE[$OPT_NUM]
-        = substopt ($SET_ARG_TYPE[$OPT_NUM], $OPTVAR[$OPT_NUM],
-                    $OPT[$OPT_NUM], $TYPE[$OPT_NUM]);
-    }
-
-  $OPT_NUM++;
-}
-
-sub process_data
-{
-  $MAX_TOKENS = max (@N_TOKS);
-
-  &get_min_match_len_info;
-
-  $FCN_NAME = lc ($CLASS) if not defined $FCN_NAME;
-
-  $OPT_FCN_NAME = "${FCN_NAME}_options" if not defined $OPT_FCN_NAME;
-
-  $STATIC_OBJECT_NAME = "${FCN_NAME}_opts";
-
-  if (not defined $DOC_STRING)
-    {
-      $DOC_STRING = "Query or set options for the function \@code{$FCN_NAME}.\\n\\
-When called with no arguments, the names of all available options and\\n\\
-their current values are displayed.\\n\\
-Given one argument, return the value of the corresponding option.\\n\\
-When called with two arguments, \@code{$OPT_FCN_NAME} set the option\\n\\
-\@var{opt} to value \@var{val}.";
-    }
-}
-
-#FIXME: What does this routine do?  And can it be simpler to understand?
-sub get_min_match_len_info
-{
-  my ($i, $j, $k);
-
-  for ($i = 0; $i < $OPT_NUM; $i++)
-    {
-      for ($j = 0; $j < $MAX_TOKENS; $j++)
-        {
-          $MIN_TOK_LEN_TO_MATCH[$i][$j] = 0;
-        }
-
-      $MIN_TOKS_TO_MATCH[$i] = 1;
-
-    L1: for ($k = 0; $k < $OPT_NUM; $k++)
-        {
-          my $duplicate = 1;
-
-          if ($i != $k)
-            {
-            L2: for ($j = 0; $j < $MAX_TOKENS; $j++)
-                {
-                  if ($j < $N_TOKS[$i])
-                    {
-                      if ($KW_TOK[$i][$j] eq $KW_TOK[$k][$j])
-                        {
-                          if ($MIN_TOK_LEN_TO_MATCH[$i][$j] == 0)
-                            {
-                              $MIN_TOK_LEN_TO_MATCH[$i][$j] = 1;
-                            }
-
-                          $MIN_TOKS_TO_MATCH[$i]++;
-                        }
-                      else
-                        {
-                          $duplicate = 0;
-
-                          if ($MIN_TOK_LEN_TO_MATCH[$i][$j] == 0)
-                            {
-                              $MIN_TOK_LEN_TO_MATCH[$i][$j] = 1;
-                            }
-
-                          my @s = split (//, $KW_TOK[$i][$j]);
-                          my @t = split (//, $KW_TOK[$k][$j]);
-
-                          my ($n, $ii);
-                          $n = scalar (@s);
-                          $n = scalar (@t) if (@t < $n);
-
-                          for ($ii = 0; $ii < $n; $ii++)
-                            {
-                              if ("$s[$ii]" eq "$t[$ii]")
-                                {
-                                  if ($ii + 2 > $MIN_TOK_LEN_TO_MATCH[$i][$j])
-                                    {
-                                      $MIN_TOK_LEN_TO_MATCH[$i][$j]++;
-                                    }
-                                }
-                              else
-                                {
-                                  last L2;
-                                }
-                            }
-
-                          last L1;
-                        }
-                    }
-                  else
-                    {
-                      die qq|ambiguous options "$NAME[$i]" and "$NAME[$k]"| if $duplicate;
-                    }
-                }
-            }
-        }
-    }
-}  # end of get_min_match_len_info
-
-
-sub emit_copy_body
-{
-  my ($pfx, $var) = @_;
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      print "${pfx}$OPTVAR[$i] = ${var}.$OPTVAR[$i];\n";
-    }
-
-  print "${pfx}reset = ${var}.reset;\n";
-}
-
-## To silence GCC warnings, we create an initialization list even
-## though the init function actually does the work of initialization.
-
-sub emit_default_init_list
-{
-  my ($prefix) = @_;
-
-  print "$OPTVAR[0] (),\n" unless ($OPT_NUM == 0);
-
-  for (my $i = 1; $i < $OPT_NUM; $i++)
-    {
-      print "${prefix}$OPTVAR[$i] (),\n";
-    }
-
-  print "${prefix}reset ()\n";
-}
-
-sub emit_copy_ctor_init_list
-{
-  my ($prefix, $var) = @_;
-
-  print "$OPTVAR[0] ($var.$OPTVAR[0]),\n" unless ($OPT_NUM == 0);
-
-  for (my $i = 1; $i < $OPT_NUM; $i++)
-    {
-      print "${prefix}$OPTVAR[$i] ($var.$OPTVAR[$i]),\n";
-    }
-
-  print "${prefix}reset ($var.reset)\n";
-}
-
-sub emit_opt_class_header
-{
-  my ($i, $s);
-
-  print <<"_END_EMIT_OPT_CLASS_HEADER_";
-// DO NOT EDIT!
-// Generated automatically from $DEFN_FILE.
-
-#if !defined (octave_${CLASS_NAME}_h)
-#define octave_${CLASS_NAME}_h 1
-
-#include <cfloat>
-#include <cmath>
-
-$INCLUDE
-
-class
-$CLASS_NAME
-{
-public:
-
-  $CLASS_NAME (void)
-_END_EMIT_OPT_CLASS_HEADER_
-
-  print '    : ';
-  emit_default_init_list ("      ");
-
-  print "    {
-      init ();
-    }
-
-  $CLASS_NAME (const ${CLASS_NAME}& opt)
-    : ";
-
-  emit_copy_ctor_init_list ("      ", "opt");
-
-  print "    { }
-
-  ${CLASS_NAME}& operator = (const ${CLASS_NAME}& opt)
-    {
-      if (this != &opt)
-        {\n";
-
-  emit_copy_body ('          ', 'opt');
-
-  print "        }
-
-      return *this;
-    }
-
-  ~$CLASS_NAME (void) { }\n";
-
-  print "\n  void init (void)\n    {\n";
-
-  for ($i = 0; $i < $OPT_NUM; $i++)
-    {
-      if ($INIT_VALUE[$i])
-        {
-          print "      $OPTVAR[$i] = $INIT_VALUE[$i];\n";
-        }
-      elsif ($INIT_BODY[$i])
-        {
-          $s = substopt ($INIT_BODY[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
-          chomp ($s);
-          $s =~ s/^\s*/      /g;
-          $s =~ s/\n\s*/\n      /g;
-          print $s,"\n";
-        }
-    }
-
-  print "      reset = true;\n",
-        "    }\n";
-
-  ## For backward compatibility and because set_options is probably
-  ## a better name in some contexts:
-
-  print "\n  void set_options (const ${CLASS_NAME}& opt)\n",
-        "    {\n";
-
-  emit_copy_body ('      ', 'opt');
-
-  print "    }\n\n  void set_default_options (void) { init (); }\n";
-
-  for ($i = 0; $i < $OPT_NUM; $i++)
-    {
-      if ($SET_EXPR[$i])
-        {
-          emit_set_decl ($i);
-
-          print "\n    { $OPTVAR[$i] = $SET_EXPR[$i]; reset = true; }\n";
-        }
-      elsif ($SET_BODY[$i])
-        {
-          emit_set_decl ($i);
-
-          $s = substopt ($SET_BODY[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
-          chomp ($s);
-          $s = '  ' . $s;
-          $s =~ s/\n/\n  /g;
-          print "\n    {\n$s\n      reset = true;\n    }\n";
-        }
-      elsif ($SET_CODE[$i])
-        {
-          $s = substopt ($SET_CODE[$i], $OPTVAR[$i], $OPT[$i], $TYPE[$i]);
-          chomp ($s);
-          $s =~ s/^  //g;
-          $s =~ s/\n  /\n/g;
-          print "\n",$s,"\n";
-        }
-    }
-
-  for ($i = 0; $i < $OPT_NUM; $i++)
-    {
-      print "  $TYPE[$i] $OPT[$i] (void) const\n    { return $OPTVAR[$i]; }\n\n";
-    }
-
-  print "private:\n\n";
-
-  for ($i = 0; $i < $OPT_NUM; $i++)
-    {
-      print "  $TYPE[$i] $OPTVAR[$i];\n";
-    }
-
-  print "\nprotected:\n\n  bool reset;\n};\n\n#endif\n";
-}
-
-sub emit_set_decl
-{
-  my ($i) = @_;
-
-  print "\n  void set_$OPT[$i] ($SET_ARG_TYPE[$i] val)";
-}
-
-sub emit_opt_handler_fcns
-{
-  my $header = $DEFN_FILE;
-  $header =~ s/[.]\w*$/.h/;      # replace .in with .h
-  $header =~ s|^.*/([^/]*)$|$1|; # strip directory part
-
-  print <<"_END_EMIT_OPT_HANDLER_FCNS_";
-// DO NOT EDIT!
-// Generated automatically from $DEFN_FILE.
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <iomanip>
-#include <iostream>
-
-#include "$header"
-
-#include "defun-dld.h"
-#include "pr-output.h"
-
-#include "oct-obj.h"
-#include "utils.h"
-#include "pager.h"
-
-static $CLASS_NAME $STATIC_OBJECT_NAME;
-
-_END_EMIT_OPT_HANDLER_FCNS_
-
-  &emit_struct_decl;
-
-  &emit_struct_def;
-
-  &emit_print_function;
-
-  &emit_set_functions;
-
-  &emit_show_function;
-
-  &emit_options_function;
-}
-
-sub emit_struct_decl
-{
-  print <<"_END_PRINT_STRUCT_DECL_";
-#define MAX_TOKENS $MAX_TOKENS
-
-struct $STRUCT_NAME
-{
-  const char *keyword;
-  const char *kw_tok[MAX_TOKENS + 1];
-  int min_len[MAX_TOKENS + 1];
-  int min_toks_to_match;
-};
-
-_END_PRINT_STRUCT_DECL_
-}
-
-sub emit_struct_def
-{
-  my $i;
-
-  print "#define NUM_OPTIONS $OPT_NUM\n\n";
-
-  print "static $STRUCT_NAME $STATIC_TABLE_NAME [] =\n{\n";
-
-  for ($i = 0; $i < ($OPT_NUM - 1); $i++)
-    {
-      emit_option_table_entry ($i, 0);
-      print "\n";
-    }
-  emit_option_table_entry ($i, 0);
-
-  print "};\n\n";
-}
-
-sub emit_option_table_entry
-{
-  my ($i, $empty) = @_;
-
-  my $k;
-
-  if ($empty)
-    {
-      print "  { 0,\n";
-    }
-  else
-    {
-      print "  { \"$NAME[$i]\",\n";
-    }
-
-  my $n = scalar $#{$KW_TOK[$i]};
-  print "    {";
-  for $k (0 .. $MAX_TOKENS)
-    {
-      if ($empty or $k > $n)
-        {
-          print " 0,";
-        }
-      else
-        {
-          print " \"$KW_TOK[$i][$k]\",";
-        }
-    }
-  print " },\n";
-
-  print "    {";
-  for $k (0 .. $MAX_TOKENS)
-    {
-      if ($empty or $k > $n)
-        {
-          print " 0,";
-        }
-      else
-        {
-          print " $MIN_TOK_LEN_TO_MATCH[$i][$k],";
-        }
-    }
-  print " }, $MIN_TOKS_TO_MATCH[$i], ";
-
-  print "},\n";
-}
-
-sub emit_print_function
-{
-  ## FIXME -- determine the width of the table automatically.
-
-  print qq|static void
-print_$CLASS_NAME (std::ostream& os)
-{
-  std::ostringstream buf;
-
-  os << "\\n"
-     << "Options for $CLASS include:\\n\\n"
-     << "  keyword                                             value\\n"
-     << "  -------                                             -----\\n";
-
-  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n|;
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      print qq|  {\n    os << "  "
-        << std::setiosflags (std::ios::left) << std::setw (50)
-        << list[$i].keyword
-        << std::resetiosflags (std::ios::left)
-        << "  ";\n\n|;
-
-      if ($TYPE[$i] eq "double")
-        {
-          print qq|    double val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    os << val << "\\n";\n|;
-        }
-      elsif ($TYPE[$i] eq "float")
-        {
-          print qq|    float val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    os << val << "\\n";\n|;
-        }
-      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
-        {
-          print qq|    int val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    os << val << "\\n";\n|;
-        }
-      elsif ($TYPE[$i] eq "std::string")
-        {
-          print qq|    os << $STATIC_OBJECT_NAME.$OPT[$i] () << "\\n";\n|;
-        }
-      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
-        {
-          my $elt_type;
-          if ($TYPE[$i] eq "Array<int>")
-            {
-              $elt_type = "int";
-            }
-          else
-            {
-              $elt_type = "octave_idx_type";
-            }
-          print qq|    Array<$elt_type> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    if (val.length () == 1)
-      {
-        os << val(0) << "\\n";
-      }
-    else
-      {
-        os << "\\n\\n";
-        octave_idx_type len = val.length ();
-        Matrix tmp (len, 1);
-        for (octave_idx_type i = 0; i < len; i++)
-          tmp(i,0) = val(i);
-        octave_print_internal (os, tmp, false, 2);
-        os << "\\n\\n";
-      }\n|;
-        }
-      elsif ($TYPE[$i] eq "Array<double>")
-        {
-          print qq|    Array<double> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    if (val.length () == 1)
-      {
-        os << val(0) << "\\n";
-      }
-    else
-      {
-        os << "\\n\\n";
-        Matrix tmp = Matrix (ColumnVector (val));
-        octave_print_internal (os, tmp, false, 2);
-        os << "\\n\\n";
-      }\n|;
-        }
-      elsif ($TYPE[$i] eq "Array<float>")
-        {
-          print qq|    Array<float> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n|;
-          print qq|    if (val.length () == 1)
-      {
-        os << val(0) << "\\n";
-      }
-    else
-      {
-        os << "\\n\\n";
-        FloatMatrix tmp = FloatMatrix (FloatColumnVector (val));
-        octave_print_internal (os, tmp, false, 2);
-        os << "\\n\\n";
-      }\n|;
-        }
-      else
-        {
-          die ("unknown type $TYPE[$i]");
-        }
-
-      print "  }\n\n";
-    }
-
-  print qq|  os << "\\n";\n}\n\n|;
-}
-
-sub emit_set_functions
-{
-  print "static void
-set_$CLASS_NAME (const std::string& keyword, const octave_value& val)
-{
-  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n";
-
-  my $iftok = "if";
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      $iftok = "else if" if ($i > 0);
-
-      print "  $iftok (keyword_almost_match (list[$i].kw_tok, list[$i].min_len,
-           keyword, list[$i].min_toks_to_match, MAX_TOKENS))
-    {\n";
-
-      if ($TYPE[$i] eq "double")
-        {
-          print "      double tmp = val.double_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "float")
-        {
-          print "      float tmp = val.float_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
-        {
-          print "      int tmp = val.int_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "std::string")
-        {
-          print "      std::string tmp = val.string_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
-        {
-          print "      Array<int> tmp = val.int_vector_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "Array<double>")
-        {
-          print "      Array<double> tmp = val.vector_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      elsif ($TYPE[$i] eq "Array<float>")
-        {
-          print "      Array<float> tmp = val.float_vector_value ();\n\n";
-          print "      if (! error_state)
-        $STATIC_OBJECT_NAME.set_$OPT[$i] (tmp);\n";
-        }
-      else
-        {
-          die ("unknown type $TYPE[$i]");
-        }
-
-      print "    }\n";
-    }
-
-  print qq|  else
-    {
-      warning ("$OPT_FCN_NAME: no match for `%s'", keyword.c_str ());
-    }
-}\n\n|;
-}
-
-sub emit_show_function
-{
-  print "static octave_value_list
-show_$CLASS_NAME (const std::string& keyword)
-{
-  octave_value retval;
-
-  $STRUCT_NAME *list = $STATIC_TABLE_NAME;\n\n";
-
-  my $iftok = "if";
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      $iftok = "else if" if ($i > 0);
-
-      print "  $iftok (keyword_almost_match (list[$i].kw_tok, list[$i].min_len,
-           keyword, list[$i].min_toks_to_match, MAX_TOKENS))
-    {\n";
-
-      if ($TYPE[$i] eq "double")
-        {
-          print "      double val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      retval = val;\n";
-        }
-      elsif ($TYPE[$i] eq "float")
-        {
-          print "      float val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      retval = val;\n";
-        }
-      elsif ($TYPE[$i] eq "int" or $TYPE[$i] eq "octave_idx_type")
-        {
-          print "      int val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      retval = static_cast<double> (val);\n";
-        }
-      elsif ($TYPE[$i] eq "std::string")
-        {
-          print "      retval = $STATIC_OBJECT_NAME.$OPT[$i] ();\n";
-        }
-      elsif ($TYPE[$i] eq "Array<int>" or $TYPE[$i] eq "Array<octave_idx_type>")
-        {
-          my $elt_type;
-          if ($TYPE[$i] eq "Array<int>")
-            {
-              $elt_type = "int";
-            }
-          else
-            {
-              $elt_type = "octave_idx_type";
-            }
-          print "      Array<$elt_type> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      if (val.length () == 1)
-        {
-          retval = static_cast<double> (val(0));
-        }
-      else
-        {
-          octave_idx_type len = val.length ();
-          ColumnVector tmp (len);
-          for (octave_idx_type i = 0; i < len; i++)
-            tmp(i) = val(i);
-          retval = tmp;
-        }\n";
-        }
-      elsif ($TYPE[$i] eq "Array<double>")
-        {
-          print "      Array<double> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      if (val.length () == 1)
-        {
-          retval = val(0);
-        }
-      else
-        {
-          retval = ColumnVector (val);
-        }\n";
-        }
-      elsif ($TYPE[$i] eq "Array<float>")
-        {
-          print "      Array<float> val = $STATIC_OBJECT_NAME.$OPT[$i] ();\n\n";
-          print "      if (val.length () == 1)
-        {
-          retval = val(0);
-        }
-      else
-        {
-          retval = FloatColumnVector (val);
-        }\n";
-        }
-      else
-        {
-          die ("unknown type $TYPE[$i]");
-        }
-
-      print "    }\n";
-    }
-
-  print qq|  else
-    {
-      warning ("$OPT_FCN_NAME: no match for `%s'", keyword.c_str ());
-    }
-
-  return retval;\n}\n\n|;
-}
-
-sub emit_options_function
-{
-  print <<"_END_EMIT_OPTIONS_FUNCTION_HDR_";
-DEFUN_DLD ($OPT_FCN_NAME, args, ,
-  "-*- texinfo -*-\\n\\
-\@deftypefn  {Loadable Function} {} $OPT_FCN_NAME ()\\n\\
-\@deftypefnx {Loadable Function} {val =} $OPT_FCN_NAME (\@var{opt})\\n\\
-\@deftypefnx {Loadable Function} {} $OPT_FCN_NAME (\@var{opt}, \@var{val})\\n\\
-$DOC_STRING\\n\\
-\\n\\
-Options include\\n\\
-\\n\\
-\@table \@code\\n\\
-_END_EMIT_OPTIONS_FUNCTION_HDR_
-# FIXME: Add extra newline above
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      print '@item \"', $NAME[$i], '\"\n\\', "\n";
-      print $DOC_ITEM[$i] if $DOC_ITEM[$i];
-    }
-
-  print <<"_END_EMIT_OPTIONS_FUNCTION_BODY_";
-\@end table\\n\\
-\@end deftypefn")
-{
-  octave_value_list retval;
-
-  int nargin = args.length ();
-
-  if (nargin == 0)
-    {
-      print_$CLASS_NAME (octave_stdout);
-    }
-  else if (nargin == 1 || nargin == 2)
-    {
-      std::string keyword = args(0).string_value ();
-
-      if (! error_state)
-        {
-          if (nargin == 1)
-            retval = show_$CLASS_NAME (keyword);
-          else
-            set_$CLASS_NAME (keyword, args(1));
-        }
-      else
-        error ("$OPT_FCN_NAME: expecting keyword as first argument");
-    }
-  else
-    print_usage ();
-
-  return retval;
-}
-_END_EMIT_OPTIONS_FUNCTION_BODY_
-
-}
-
-sub emit_options_debug
-{
-  print qq|CLASS = "$CLASS"\n|;
-
-  for (my $i = 0; $i < $OPT_NUM; $i++)
-    {
-      print "\nOPTION\n";
-      print qq|  NAME = "$NAME[$i]"\n|;
-      print qq|  TYPE = "$TYPE[$i]"\n|;
-      if ($SET_ARG_TYPE[$i])
-        {
-          print eval ("\"  SET_ARG_TYPE = \\\"$SET_ARG_TYPE[$i]\\\"\"") . "\n";
-        }
-      if ($INIT_VALUE[$i])
-        {
-          print qq|  INIT_VALUE = "$INIT_VALUE[$i]"\n|;
-        }
-      if ($INIT_BODY[$i])
-        {
-          print "  INIT_BODY\n";
-          print &substopt ($INIT_BODY[$i]);
-          print "  END_INIT_BODY\n";
-        }
-      if ($SET_EXPR[$i])
-        {
-          print qq|  SET_EXPR = "$SET_EXPR[$i]"\n|;
-        }
-      if ($SET_BODY[$i])
-        {
-          print "  SET_BODY\n";
-          print &substopt ($SET_BODY[$i]);
-          print "  END_SET_BODY\n";
-        }
-      if ($SET_CODE[$i])
-        {
-          print "  SET_CODE\n";
-          print &substopt ($SET_CODE[$i]);
-          print "  END_SET_CODE\n";
-        }
-      print "END_OPTION\n";
-    }
-}
-
-sub substopt
-{
-  my ($string, $optvar, $opt, $type) = @_;
-
-  $string =~ s/\$OPTVAR/$optvar/g;
-  $string =~ s/\$OPT/$opt/g;
-  $string =~ s/\$TYPE/$type/g;
-
-  return $string;
-}
-
-sub max
-{
-  my $max = shift;
-
-  foreach (@_)
-    {
-      $max = $_ if $max < $_;
-    }
-
-  return $max;
-}
-
-################################################################################
-# Subroutine processes any command line arguments
-################################################################################
-sub parse_options
-{
-  my $result;
-
-  $opt_help = 0;
-  $opt_class_header = 0;
-  $opt_handler_fcns = 0;
-  $opt_debug = 0;
-
-  $result = GetOptions ("opt-class-header" => \$opt_class_header,
-                        "opt-handler-fcns" => \$opt_handler_fcns,
-                        "debug" => \$opt_debug,
-                        "help"  => \$opt_help);
-
-  # give user info if options incorrect or -h(elp) given
-  &usage_info if (!$result or (@ARGV != 1) or $opt_help);
-  if ($opt_class_header and $opt_handler_fcns)
-  {
-    die "Only one of [-opt-class-header | -opt-handler-fcns ] may be specified";
-  }
-
-}
-
-################################################################################
-# Subroutine displays usage information
-################################################################################
-sub usage_info
-{
-   warn <<_END_OF_USAGE_;
-//////////////////////////////////////////////////////////////////////////////
-USAGE : mk-opts.pl -opt-class-header|-opt-handler-fcns [-debug] [-help] DEFN_FILE
-//////////////////////////////////////////////////////////////////////////////
-
-Automatically generate C++ code for option handling code (DASSL, DASRT, etc.)
-from definition file.
-
-See the head of mk-opts.pl for a description of the format that is parsed.
-_END_OF_USAGE_
-
-  exit(1);    # exit with error code
-}
-
--- a/mkinstalldirs	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-#!/bin/sh
-# mkinstalldirs --- make directory hierarchy
-# Author: Noah Friedman <friedman@gnu.org>
-# Created: 1993-05-16
-# Last modified: Wed Jan 25 09:35:21 1995
-# Public domain
-
-errstatus=0
-
-dirmode=0755
-
-for file in ${1+"$@"} ; do 
-   set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
-   shift
-
-   pathcomp=
-   for d in ${1+"$@"} ; do
-     pathcomp="$pathcomp$d"
-     case "$pathcomp" in
-       -* ) pathcomp=./$pathcomp ;;
-     esac
-
-     if test ! -d "$pathcomp"; then
-        echo "mkdir $pathcomp" 1>&2
-        mkdir "$pathcomp" || errstatus=$?
-        echo "chmod $dirmode $pathcomp" 1>&2
-        chmod $dirmode "$pathcomp" || errstatus=$?
-     fi
-
-     pathcomp="$pathcomp/"
-   done
-done
-
-exit $errstatus
-
-# mkinstalldirs ends here
--- a/mkoctfile.cc.in	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,778 +0,0 @@
-/*
-
-Copyright (C) 2008-2011 Michael Goffioul
-
-This file is part of Octave.
-
-Octave is free software; you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 3 of the License, or (at your
-option) any later version.
-
-Octave is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with Octave; see the file COPYING.  If not, see
-<http://www.gnu.org/licenses/>.
-
-*/
-
-#if defined (HAVE_CONFIG_H)
-#include <config.h>
-#endif
-
-#include <string>
-#include <map>
-#include <list>
-#include <algorithm>
-#include <iostream>
-#include <fstream>
-#include <vector>
-#include <cstdlib>
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-#include <windows.h>
-#ifdef _MSC_VER
-#define popen _popen
-#define pclose _pclose
-#endif
-#endif
-
-using namespace std;
-
-static bool initialized = false;
-static map<string,string> vars;
-
-static string OCTAVE_VERSION = %OCTAVE_CONF_VERSION%;
-
-static std::string
-substitute_prefix (const std::string& s, const std::string& prefix,
-                   const std::string& new_prefix)
-{
-  std::string retval = s;
-
-  if (!prefix.empty () && new_prefix != prefix)
-    {
-      int len = prefix.length ();
-      if (retval.find (prefix) == 0)
-        retval.replace (0, len, new_prefix);
-    }
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-  std::replace (retval.begin (), retval.end (), '/', '\\');
-#endif
-
-  return retval;
-}
-
-static string
-get_line (FILE *fp)
-{
-  static vector<char> buf (100);
-  int idx = 0;
-  char c;
-
-  while (true)
-    {
-      c = static_cast<char> (fgetc (fp));
-      if (c == '\n' || c == EOF)
-        break;
-      if (buf.size () <= idx)
-        buf.resize (buf.size () + 100);
-      buf[idx++] = c;
-    }
-  if (idx == 0)
-    return string ("");
-  else
-    return string (&buf[0], idx);
-}
-
-
-static string
-get_variable (const char *name, const string& defval)
-{
-  const char *val = getenv (name);
-  if (val == NULL || val[0] == '\0')
-    return defval;
-  else
-    return string (val);
-}
-
-static string
-quote_path (const string& s)
-{
-  if (s.find (' ') != string::npos && s[0] != '"')
-    return "\"" + s + "\"";
-  else
-    return s;
-}
-
-static void
-initialize (void)
-{
-  if (initialized)
-    return;
-
-  initialized = true;
-
-  vars["OCTAVE_HOME"] = get_variable ("OCTAVE_HOME", "");
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-  int n = 1024;
-
-  std::string bin_dir (n, '\0');
-
-  while (true)
-    {
-      int status = GetModuleFileName (0, &bin_dir[0], n);
-
-      if (status < n)
-        {
-          bin_dir.resize (status);
-          break;
-        }
-      else
-        {
-          n *= 2;
-          bin_dir.resize (n);
-        }
-    }
-
-  if (! bin_dir.empty ())
-    {
-      size_t pos = bin_dir.rfind ("\\bin\\");
-
-      if (pos != string::npos)
-        vars["OCTAVE_HOME"] = bin_dir.substr (0, pos);
-    }
-#endif
-
-  vars["SED"] = get_variable ("SED", %OCTAVE_CONF_SED%);
-
-  vars["OCTAVE_PREFIX"] = %OCTAVE_CONF_PREFIX%;
-
-  std::string DEFAULT_OCTINCLUDEDIR = %OCTAVE_CONF_OCTINCLUDEDIR%;
-  std::string DEFAULT_INCLUDEDIR = %OCTAVE_CONF_INCLUDEDIR%;
-  std::string DEFAULT_LIBDIR = %OCTAVE_CONF_LIBDIR%;
-  std::string DEFAULT_OCTLIBDIR = %OCTAVE_CONF_OCTLIBDIR%;
-
-  if (! vars["OCTAVE_HOME"].empty ())
-    {
-      DEFAULT_OCTINCLUDEDIR
-        = substitute_prefix (DEFAULT_OCTINCLUDEDIR, vars["OCTAVE_PREFIX"],
-                             vars["OCTAVE_HOME"]);
-
-      DEFAULT_INCLUDEDIR
-        = substitute_prefix (DEFAULT_INCLUDEDIR, vars["OCTAVE_PREFIX"],
-                             vars["OCTAVE_HOME"]);
-
-      DEFAULT_LIBDIR
-        = substitute_prefix (DEFAULT_LIBDIR, vars["OCTAVE_PREFIX"],
-                             vars["OCTAVE_HOME"]);
-
-      DEFAULT_OCTLIBDIR
-        = substitute_prefix (DEFAULT_OCTLIBDIR, vars["OCTAVE_PREFIX"],
-                             vars["OCTAVE_HOME"]);
-    }
-
-  vars["OCTINCLUDEDIR"] = get_variable ("OCTINCLUDEDIR", DEFAULT_OCTINCLUDEDIR);
-  vars["INCLUDEDIR"] = get_variable ("INCLUDEDIR", DEFAULT_INCLUDEDIR);
-  vars["LIBDIR"] = get_variable ("LIBDIR", DEFAULT_LIBDIR);
-  vars["OCTLIBDIR"] = get_variable ("OCTLIBDIR", DEFAULT_OCTLIBDIR);
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-  std::string DEFAULT_INCFLAGS
-    = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "\\..")
-    + " -I" + quote_path (vars["OCTINCLUDEDIR"]);
-#else
-  std::string DEFAULT_INCFLAGS
-    = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "/..")
-    + " -I" + quote_path (vars["OCTINCLUDEDIR"]);
-#endif
-  if (vars["INCLUDEDIR"] != "/usr/include")
-    DEFAULT_INCFLAGS += " -I" + quote_path (vars["INCLUDEDIR"]);
-
-  std::string DEFAULT_LFLAGS = "-L" + quote_path (vars["OCTLIBDIR"]);
-  if (vars["LIBDIR"] != "/usr/lib")
-    DEFAULT_LFLAGS += " -L" + quote_path (vars["LIBDIR"]);
-
-  vars["CPPFLAGS"] = get_variable ("CPPFLAGS", %OCTAVE_CONF_CPPFLAGS%);
-  vars["INCFLAGS"] = get_variable ("INCFLAGS", DEFAULT_INCFLAGS);
-  vars["F77"] = get_variable ("F77", %OCTAVE_CONF_F77%);
-  vars["FFLAGS"] = get_variable ("FFLAGS", %OCTAVE_CONF_FFLAGS%);
-  vars["FPICFLAG"] = get_variable ("FPICFLAG", %OCTAVE_CONF_FPICFLAG%);
-  vars["CC"] = get_variable ("CC", %OCTAVE_CONF_CC%);
-  vars["CFLAGS"] = get_variable ("CFLAGS", %OCTAVE_CONF_CFLAGS%);
-  vars["CPICFLAG"] = get_variable ("CPICFLAG", %OCTAVE_CONF_CPICFLAG%);
-  vars["CXX"] = get_variable ("CXX", %OCTAVE_CONF_CXX%);
-  vars["CXXFLAGS"] = get_variable ("CXXFLAGS", %OCTAVE_CONF_CXXFLAGS%);
-  vars["CXXPICFLAG"] = get_variable ("CXXPICFLAG", %OCTAVE_CONF_CXXPICFLAG%);
-  vars["XTRA_CFLAGS"] = get_variable ("XTRA_CFLAGS", %OCTAVE_CONF_XTRA_CFLAGS%);
-  vars["XTRA_CXXFLAGS"] = get_variable ("XTRA_CXXFLAGS", %OCTAVE_CONF_XTRA_CXXFLAGS%);
-
-  vars["DEPEND_FLAGS"] = get_variable ("DEPEND_FLAGS", %OCTAVE_CONF_DEPEND_FLAGS%);
-  vars["DEPEND_EXTRA_SED_PATTERN"] = get_variable ("DEPEND_EXTRA_SED_PATTERN", %OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%);
-
-  vars["DL_LD"] = get_variable ("DL_LD", %OCTAVE_CONF_DL_LD%);
-  vars["DL_LDFLAGS"] = get_variable ("DL_LDFLAGS", %OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%);
-
-  vars["RLD_FLAG"] = get_variable ("RLD_FLAG", %OCTAVE_CONF_RLD_FLAG%);
-  vars["RDYNAMIC_FLAG"] = get_variable ("RDYNAMIC_FLAG", %OCTAVE_CONF_RDYNAMIC_FLAG%);
-  vars["LIBOCTAVE"] = "-loctave";
-  vars["LIBOCTINTERP"] = "-loctinterp";
-  vars["READLINE_LIBS"] = "-lreadline";
-  vars["LIBCRUFT"] = "-lcruft";
-  vars["LAPACK_LIBS"] = get_variable ("LAPACK_LIBS", %OCTAVE_CONF_LAPACK_LIBS%);
-  vars["BLAS_LIBS"] = get_variable ("BLAS_LIBS", %OCTAVE_CONF_BLAS_LIBS%);
-  vars["FFTW3_LDFLAGS"] = get_variable ("FFTW3_LDFLAGS", %OCTAVE_CONF_FFTW3_LDFLAGS%);
-  vars["FFTW3_LIBS"] = get_variable ("FFTW3_LIBS", %OCTAVE_CONF_FFTW3_LIBS%);
-  vars["FFTW3F_LDFLAGS"] = get_variable ("FFTW3F_LDFLAGS", %OCTAVE_CONF_FFTW3F_LDFLAGS%);
-  vars["FFTW3F_LIBS"] = get_variable ("FFTW3F_LIBS", %OCTAVE_CONF_FFTW3F_LIBS%);
-  vars["LIBS"] = get_variable ("LIBS", %OCTAVE_CONF_LIBS%);
-  vars["FLIBS"] = get_variable ("FLIBS", %OCTAVE_CONF_FLIBS%);
-  vars["LD_CXX"] = get_variable ("LD_CXX", %OCTAVE_CONF_LD_CXX%);
-  vars["LDFLAGS"] = get_variable ("LDFLAGS", %OCTAVE_CONF_LDFLAGS%);
-  vars["LD_STATIC_FLAG"] = get_variable ("LD_STATIC_FLAG", %OCTAVE_CONF_LD_STATIC_FLAG%);
-  vars["LFLAGS"] = get_variable ("LFLAGS", DEFAULT_LFLAGS);
-  vars["F77_INTEGER8_FLAG"] = get_variable ("F77_INTEGER8_FLAG", %OCTAVE_CONF_F77_INTEGER_8_FLAG%);
-
-  vars["ALL_FFLAGS"] = vars["FFLAGS"] + " " + vars["F77_INTEGER8_FLAG"];
-
-  vars["ALL_CFLAGS"] = vars["INCFLAGS"] + " " + vars["XTRA_CFLAGS"]
-    + " " + vars["CFLAGS"];
-
-  vars["ALL_CXXFLAGS"] = vars["INCFLAGS"] + " " + vars["XTRA_CXXFLAGS"]
-    + " " + vars["CXXFLAGS"];
-
-  vars["ALL_LDFLAGS"] = vars["LD_STATIC_FLAG"] + " " + vars["CPICFLAG"]
-    + " " + vars["LDFLAGS"];
-
-  vars["OCTAVE_LIBS"] = vars["LIBOCTINTERP"] + " " + vars["LIBOCTAVE"]
-    + " " + vars["SPECIAL_MATH_LIB"] + " " + vars["LIBCRUFT"];
-
-  vars["FFTW_LIBS"] = vars["FFTW3_LDFLAGS"] + " " + vars["FFTW3_LIBS"]
-    + " " + vars["FFTW3F_LDFLAGS"] + " " + vars["FFTW3F_LIBS"];
-}
-
-static string usage_msg = "usage: mkoctfile [options] file ...";
-static string version_msg = "mkoctfile, version " + OCTAVE_VERSION;
-static bool debug = false;
-static string help_msg =
-"\n"
-"Options:\n"
-"\n"
-"  -h, -?, --help          Print this message.\n"
-"\n"
-"  -IDIR                   Add -IDIR to compile commands.\n"
-"\n"
-"  -idirafter DIR          Add -idirafter DIR to compile commands.\n"
-"\n"
-"  -DDEF                   Add -DDEF to compile commands.\n"
-"\n"
-"  -lLIB                   Add library LIB to link command.\n"
-"\n"
-"  -LDIR                   Add -LDIR to link command.\n"
-"\n"
-"  -M, --depend            Generate dependency files (.d) for C and C++\n"
-"                          source files.\n"
-"\n"
-"  -RDIR                   Add -RDIR to link command.\n"
-"\n"
-"  -Wl,...                 Pass flags though the linker like -Wl,-rpath=...\n"
-"\n"
-"  -W...                   Pass flags though the compiler like -Wa,OPTION.\n"
-"\n"
-"  -c, --compile           Compile, but do not link.\n"
-"\n"
-"  -o FILE, --output FILE  Output file name.  Default extension is .oct\n"
-"                          (or .mex if --mex is specified) unless linking\n"
-"                          a stand-alone executable.\n"
-"\n"
-"  -g                      Enable debugging options for compilers.\n"
-"\n"
-"  -p VAR, --print VAR     Print configuration variable VAR.  Recognized\n"
-"                          variables are:\n"
-"\n"
-"                           ALL_CFLAGS                FLIBS\n"
-"                           ALL_CXXFLAGS              FPICFLAG\n"
-"                           ALL_FFLAGS                INCFLAGS\n"
-"                           ALL_LDFLAGS               LAPACK_LIBS\n"
-"                           BLAS_LIBS                 LDFLAGS\n"
-"                           CC                        LD_CXX\n"
-"                           CFLAGS                    LD_STATIC_FLAG\n"
-"                           CPICFLAG                  LFLAGS\n"
-"                           CPPFLAGS                  LIBCRUFT\n"
-"                           CXX                       LIBOCTAVE\n"
-"                           CXXFLAGS                  LIBOCTINTERP\n"
-"                           CXXPICFLAG                LIBS\n"
-"                           DEPEND_EXTRA_SED_PATTERN  OCTAVE_LIBS\n"
-"                           DEPEND_FLAGS              RDYNAMIC_FLAG\n"
-"                           DL_LD                     READLINE_LIBS\n"
-"                           DL_LDFLAGS                RLD_FLAG\n"
-"                           F77                       SED\n"
-"                           FFLAGS                    XTRA_CFLAGS\n"
-"                           FFTW_LIBS                 XTRA_CXXFLAGS\n"
-"\n"
-"  --link-stand-alone      Link a stand-alone executable file.\n"
-"\n"
-"  --mex                   Assume we are creating a MEX file.  Set the\n"
-"                          default output extension to \".mex\".\n"
-"\n"
-"  -s, --strip             Strip output file.\n"
-"\n"
-"  -v, --verbose           Echo commands as they are executed.\n"
-"\n"
-"  FILE                    Compile or link FILE.  Recognized file types are:\n"
-"\n"
-"                            .c    C source\n"
-"                            .cc   C++ source\n"
-"                            .C    C++ source\n"
-"                            .cpp  C++ source\n"
-"                            .f    Fortran source (fixed form)\n"
-"                            .F    Fortran source (fixed form)\n"
-"                            .f90  Fortran source (free form)\n"
-"                            .F90  Fortran source (free form)\n"
-"                            .o    object file\n"
-"                            .a    library file\n"
-#ifdef _MSC_VER
-"                            .lib  library file\n"
-#endif
-"\n";
-
-static string
-basename (const string& s, bool strip_path = false)
-{
-  size_t pos = s.rfind ('.');
-  string retval;
-
-  if (pos == string::npos)
-    retval = s;
-  else
-    retval = s.substr (0, pos);
-  if (strip_path)
-    {
-      size_t p1 = retval.rfind ('/'), p2 = retval.rfind ('\\');
-      pos = (p1 != string::npos && p2 != string::npos
-             ? max (p1, p2) : (p2 != string::npos ? p2 : p1));
-      if (pos != string::npos)
-        retval = retval.substr (0, pos);
-    }
-  return retval;
-}
-
-inline bool
-starts_with (const string& s, const string& prefix)
-{
-  return (s.length () >= prefix.length () && s.find (prefix) == 0);
-}
-
-inline bool
-ends_with (const string& s, const string& suffix)
-{
-  return (s.length () >= suffix.length ()
-          && s.rfind (suffix) == s.length () - suffix.length ());
-}
-
-static int
-run_command (const string& cmd)
-{
-  if (debug)
-    cout << cmd << endl;
-  return system (cmd.c_str ());
-}
-
-int
-main (int argc, char **argv)
-{
-  initialize ();
-
-  string file, output_option;
-  list<string> cfiles, ccfiles, f77files;
-  int result = 0;
-
-  string objfiles = "";
-  string libfiles = "";
-  string octfile = "";
-  string outputfile = "";
-  string incflags = "";
-  string defs = "";
-  string ldflags = "";
-  string pass_on_options = "";
-  bool strip = false;
-  bool no_oct_file_strip_on_this_platform = %NO_OCT_FILE_STRIP%;
-  bool link = true;
-  bool link_stand_alone = false;
-  string output_ext = ".oct";
-  bool depend = false;
-  bool compile = true;
-
-  if (argc == 1)
-    {
-      cout << usage_msg << endl;
-      return 1;
-    }
-
-  if (argc == 2 && (!strcmp (argv[1], "-v")
-                    || !strcmp (argv[1], "-version")
-                    || !strcmp (argv[1], "--version")))
-    {
-      cout << version_msg << endl;
-      return 0;
-    }
-
-  for (int i = 1; i < argc; i++)
-    {
-      string arg = argv[i];
-      size_t len = arg.length ();
-
-      if (ends_with (arg, ".c"))
-        {
-          file = arg;
-          cfiles.push_back (file);
-        }
-      else if (ends_with (arg, ".cc") || ends_with (arg, ".C")
-               || ends_with (arg, ".cpp"))
-        {
-          file = arg;
-          ccfiles.push_back (file);
-        }
-      else if (ends_with (arg, ".f") || ends_with (arg, ".F")
-               || ends_with (arg, "f90") || ends_with (arg, ".F90"))
-        {
-          file = arg;
-          f77files.push_back (file);
-        }
-      else if (ends_with (arg, ".o") || ends_with (arg, ".obj"))
-        {
-          file = arg;
-          objfiles += (" " + quote_path (arg));
-        }
-      else if (ends_with (arg, ".lib") || ends_with (arg, ".a"))
-        {
-          file = arg;
-          libfiles += (" " + quote_path (arg));
-        }
-      else if (arg == "-d" || arg == "-debug" || arg == "--debug"
-               || arg == "-v" || arg == "-verbose" ||  arg == "--verbose")
-        {
-          debug = true;
-          if (vars["CC"] == "cc-msvc")
-            vars["CC"] += " -d";
-          if (vars["CXX"] == "cc-msvc")
-            vars["CXX"] += " -d";
-          if (vars["DL_LD"] == "cc-msvc")
-            vars["DL_LD"] += " -d";
-        }
-      else if (arg == "-h" || arg == "-?" || arg == "-help" || arg == "--help")
-        {
-          cout << usage_msg << endl;
-          cout << help_msg << endl;
-          return 0;
-        }
-      else if (starts_with (arg, "-I"))
-        {
-          incflags += (" " + quote_path (arg));
-        }
-      else if (arg == "-idirafter")
-        {
-          if (i < argc-1)
-            {
-              arg = argv[++i];
-              incflags += (" -idirafter " + arg);
-            }
-          else
-            cerr << "mkoctfile: include directory name missing" << endl;
-        }
-      else if (starts_with (arg, "-D"))
-        {
-          defs += (" " + arg);
-        }
-      else if (starts_with (arg, "-Wl,") || starts_with (arg, "-l")
-               || starts_with (arg, "-L") || starts_with (arg, "-R"))
-        {
-          ldflags += (" " + arg);
-        }
-      else if (arg == "-M" || arg == "-depend" || arg == "--depend")
-        {
-          depend = true;
-          compile = false;
-        }
-      else if (arg == "-o" || arg == "-output" || arg == "--output")
-        {
-          if (i < argc-1)
-            {
-              arg = argv[++i];
-              outputfile = arg;
-            }
-          else
-            cerr << "mkoctfile: output file name missing" << endl;
-        }
-      else if (arg == "-p" || arg == "-print" || arg == "--print")
-        {
-          if (i < argc-1)
-            {
-              arg = argv[++i];
-              cout << vars[arg] << endl;
-              return 0;
-            }
-          else
-            cerr << "mkoctfile: --print requires argument" << endl;
-        }
-      else if (arg == "-s" || arg == "-strip" || arg == "--strip")
-        {
-          if (no_oct_file_strip_on_this_platform)
-            cerr << "mkoctfile: stripping disabled on this platform" << endl;
-          else
-            strip = true;
-        }
-      else if (arg == "-c" || arg == "-compile" || arg == "--compile")
-        {
-          link = false;
-        }
-      else if (arg == "-g")
-        {
-          vars["ALL_CFLAGS"] += " -g";
-          vars["ALL_CXXFLAGS"] += " -g";
-          vars["ALL_FFLAGS"] += " -g";
-        }
-      else if (arg == "-link-stand-alone" || arg == "--link-stand-alone")
-        {
-          link_stand_alone = true;
-        }
-      else if (arg == "-mex" || arg == "--mex")
-        {
-          incflags += " -I.";
-#ifdef _MSC_VER
-          ldflags += " -Wl,-export:mexFunction";
-#endif
-          output_ext = ".mex";
-        }
-      else if (starts_with (arg, "-W"))
-        {
-          pass_on_options += (" " + arg);
-        }
-      else
-        {
-          cerr << "mkoctfile: unrecognized argument " << arg;
-          return 1;
-        }
-
-      if (!file.empty () && octfile.empty ())
-        octfile = file;
-    }
-
-  if (link_stand_alone)
-    {
-      if (!outputfile.empty ())
-        output_option = "-o " + outputfile;
-    }
-  else
-    {
-      if (!outputfile.empty ())
-        {
-          octfile = outputfile;
-          size_t len = octfile.length ();
-          size_t len_ext = output_ext.length ();
-          if (octfile.substr (len-len_ext) != output_ext)
-            octfile += output_ext;
-        }
-      else
-        octfile = basename (octfile, true) + output_ext;
-    }
-
-  list<string>::const_iterator it;
-
-  if (depend)
-    {
-      for (it = cfiles.begin (); it != cfiles.end (); ++it)
-        {
-          string f = *it, dfile = basename (f, true) + ".d", line;
-
-          unlink (dfile.c_str ());
-          string cmd = vars["CC"] + " " + vars["DEPEND_FLAGS"] + " "
-            + vars["CPPFLAGS"] + " " + vars["ALL_CFLAGS"] + " "
-            + incflags  + " " + defs + " " + quote_path (f);
-
-          FILE *fd = popen (cmd.c_str (), "r");
-          ofstream fo (dfile.c_str ());
-          int pos;
-          while (!feof (fd))
-            {
-              line = get_line (fd);
-              if ((pos = line.rfind (".o:")) != string::npos)
-                {
-                  int spos = line.rfind ('/', pos);
-                  string ofile = (spos == string::npos ? line.substr (0, pos+2) : line.substr (spos+1, pos-spos+1));
-                  fo << "pic/" << ofile << " " << ofile << " " << dfile << line.substr (pos) << endl;
-                }
-              else
-                fo << line << endl;
-            }
-          pclose (fd);
-          fo.close ();
-        }
-
-      for (it = ccfiles.begin (); it != ccfiles.end (); ++it)
-        {
-          string f = *it, dfile = basename (f, true) + ".d", line;
-
-          unlink (dfile.c_str ());
-          string cmd = vars["CC"] + " " + vars["DEPEND_FLAGS"] + " "
-            + vars["CPPFLAGS"] + " " + vars["ALL_CXXFLAGS"] + " "
-            + incflags  + " " + defs + " " + quote_path (f);
-
-          FILE *fd = popen (cmd.c_str (), "r");
-          ofstream fo (dfile.c_str ());
-          int pos;
-          while (!feof (fd))
-            {
-              line = get_line (fd);
-              if ((pos = line.rfind (".o:")) != string::npos)
-                {
-                  int spos = line.rfind ('/', pos);
-                  string ofile = (spos == string::npos ? line.substr (0, pos+2) : line.substr (spos+1, pos-spos+1));
-                  fo << "pic/" << ofile << " " << ofile << " " << dfile << line.substr (pos+2) << endl;
-                }
-              else
-                fo << line << endl;
-            }
-          pclose (fd);
-          fo.close ();
-        }
-
-      return 0;
-    }
-
-  for (it = f77files.begin (); it != f77files.end (); ++it)
-    {
-      string f = *it, b = basename (f, true);
-      if (!vars["F77"].empty ())
-        {
-          string o;
-          if (!outputfile.empty ())
-            {
-              if (link)
-                o = b + ".o";
-              else
-                o = outputfile;
-            }
-          else
-            o = b + ".o";
-          objfiles += (" " + o);
-          string cmd = vars["F77"] + " -c " + vars["FPICFLAG"] + " "
-            + vars["ALL_FFLAGS"] + " " + incflags + " " + defs + " "
-            + pass_on_options + " " + f + " -o " + o;
-          result = run_command (cmd);
-        }
-      else
-        {
-          cerr << "mkoctfile: no way to compile Fortran file " << f << endl;
-          return 1;
-        }
-    }
-
-  for (it = cfiles.begin (); it != cfiles.end (); ++it)
-    {
-      string f = *it;
-      if (!vars["CC"].empty ())
-        {
-          string b = basename (f, true), o;
-          if (!outputfile.empty ())
-            {
-              if (link)
-                o = b + ".o";
-              else
-                o = outputfile;
-            }
-          else
-            o = b + ".o";
-          objfiles += (" " + o);
-          string cmd = vars["CC"] + " -c " + vars["CPPFLAGS"] + " "
-            + vars["CPICFLAG"] + " " + vars["ALL_CFLAGS"] + " "
-            + pass_on_options + " " + incflags + " " + defs + " "
-            + quote_path (f) + " -o " + quote_path (o);
-          result = run_command (cmd);
-        }
-      else
-        {
-          cerr << "mkoctfile: no way to compile C file " << f << endl;
-          return 1;
-        }
-    }
-
-  for (it = ccfiles.begin (); it != ccfiles.end (); ++it)
-    {
-      string f = *it;
-      if (!vars["CXX"].empty ())
-        {
-          string b = basename (f, true), o;
-          if (!outputfile.empty ())
-            {
-              if (link)
-                o = b + ".o";
-              else
-                o = outputfile;
-            }
-          else
-            o = b + ".o";
-          objfiles += (" " + o);
-          string cmd = vars["CXX"] + " -c " + vars["CPPFLAGS"] + " "
-            + vars["CXXPICFLAG"] + " " + vars["ALL_CXXFLAGS"] + " "
-            + pass_on_options + " " + incflags + " " + defs + " "
-            + quote_path (f) + " -o " + quote_path (o);
-          result = run_command (cmd);
-        }
-      else
-        {
-          cerr << "mkoctfile: no way to compile C++ file " << f << endl;
-          return 1;
-        }
-    }
-
-  if (link && !objfiles.empty ())
-    {
-      if (link_stand_alone)
-        {
-          if (!vars["LD_CXX"].empty ())
-            {
-              string cmd = vars["LD_CXX"] + " " + vars["CPPFLAGS"] + " "
-                + vars["ALL_CXXFLAGS"] + " " + vars["RDYNAMIC_FLAG"]
-                + " " + vars["ALL_LDFLAGS"] + " " +  pass_on_options
-                + " " + output_option + " " + objfiles + " " + libfiles
-                + " " + ldflags + " " + vars["LFLAGS"] + " "
-                + vars["RLD_FLAG"] + " " + vars["OCTAVE_LIBS"] + " "
-                + vars["LAPACK_LIBS"] + " " + vars["BLAS_LIBS"] + " "
-                + vars["FFTW_LIBS"] + " " + vars["READLINE_LIBS"] + " "
-                + vars["LIBS"] + " " + vars["FLIBS"];
-              result = run_command (cmd);
-            }
-          else
-            {
-              cerr << "mkoctfile: no way to link stand-alone executable file"
-                   << endl;
-              return 1;
-            }
-        }
-      else
-        {
-          string LINK_DEPS = vars["LFLAGS"] + " " + vars["OCTAVE_LIBS"]
-            + " " + vars["LDFLAGS"] + " " + vars["BLAS_LIBS"] + " "
-            + vars["FFTW_LIBS"] + " " + vars["LIBS"] + " " + vars["FLIBS"];
-          string cmd = vars["DL_LD"] + " " + vars["DL_LDFLAGS"] + " "
-            + pass_on_options + " -o " + octfile + " " + objfiles + " "
-            + libfiles + " " + ldflags + " " + LINK_DEPS;
-          result = run_command (cmd);
-        }
-
-      if (strip)
-        {
-          string cmd = "strip " + octfile;
-          result = run_command (cmd);
-        }
-    }
-
-  return result;
-}
--- a/mkoctfile.in	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,555 +0,0 @@
-#! /bin/sh
-##
-## mkoctfile -- create a .oct file suitable for dynamic linking by
-## Octave.
-##
-## Copyright (C) 1996-2011 John W. Eaton
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by the
-## Free Software Foundation; either version 3 of the License, or (at
-## your option) any later version.
-##
-## Octave is distributed in the hope that it will be useful, but WITHOUT
-## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-## for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, see
-## <http://www.gnu.org/licenses/>.
-
-# Exit immediately on any error.
-
-set -e
-
-: ${SED=%OCTAVE_CONF_SED%}
-
-OCTAVE_VERSION=%OCTAVE_CONF_VERSION%
-OCTAVE_PREFIX=%OCTAVE_CONF_PREFIX%
-
-DEFAULT_BINDIR=%OCTAVE_BINDIR%
-DEFAULT_INCLUDEDIR=%OCTAVE_CONF_INCLUDEDIR%
-DEFAULT_LIBDIR=%OCTAVE_CONF_LIBDIR%
-DEFAULT_OCTINCLUDEDIR=%OCTAVE_CONF_OCTINCLUDEDIR%
-DEFAULT_OCTLIBDIR=%OCTAVE_CONF_OCTLIBDIR%
-
-if [ -n "$OCTAVE_HOME" ]; then
-  DEFAULT_BINDIR="`echo $DEFAULT_BINDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
-  DEFAULT_INCLUDEDIR="`echo $DEFAULT_INCLUDEDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
-  DEFAULT_LIBDIR="`echo $DEFAULT_LIBDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
-  DEFAULT_OCTINCLUDEDIR="`echo $DEFAULT_OCTINCLUDEDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
-  DEFAULT_OCTLIBDIR="`echo $DEFAULT_OCTLIBDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
-fi
-
-: ${BINDIR=$DEFAULT_BINDIR}
-: ${INCLUDEDIR=$DEFAULT_INCLUDEDIR}
-: ${LIBDIR=$DEFAULT_LIBDIR}
-: ${OCTINCLUDEDIR=$DEFAULT_OCTINCLUDEDIR}
-: ${OCTLIBDIR=$DEFAULT_OCTLIBDIR}
-
-DEFAULT_INCFLAGS="-I$OCTINCLUDEDIR/.. -I$OCTINCLUDEDIR"
-if [ "$INCLUDEDIR" != /usr/include ]; then
-  DEFAULT_INCFLAGS="$DEFAULT_INCFLAGS -I$INCLUDEDIR"
-fi
-
-DEFAULT_LFLAGS="-L$OCTLIBDIR"
-if [ "$LIBDIR" != /usr/lib ]; then
-  DEFAULT_LFLAGS="$DEFAULT_LFLAGS -L$LIBDIR"
-fi
-
-# Default values for these variables are filled in when Octave is
-# compiled.
-
-: ${EXEEXT=%OCTAVE_CONF_EXEEXT%}
-
-: ${CPPFLAGS=%OCTAVE_CONF_CPPFLAGS%}
-: ${INCFLAGS=$DEFAULT_INCFLAGS}
-: ${F77=%OCTAVE_CONF_F77%}
-: ${FFLAGS=%OCTAVE_CONF_FFLAGS%}
-: ${FPICFLAG=%OCTAVE_CONF_FPICFLAG%}
-: ${CC=%OCTAVE_CONF_CC%}
-: ${CFLAGS=%OCTAVE_CONF_CFLAGS%}
-: ${CPICFLAG=%OCTAVE_CONF_CPICFLAG%}
-: ${CXX=%OCTAVE_CONF_CXX%}
-: ${CXXFLAGS=%OCTAVE_CONF_CXXFLAGS%}
-: ${CXXPICFLAG=%OCTAVE_CONF_CXXPICFLAG%}
-: ${XTRA_CFLAGS=%OCTAVE_CONF_XTRA_CFLAGS%}
-: ${XTRA_CXXFLAGS=%OCTAVE_CONF_XTRA_CXXFLAGS%}
-
-: ${DEPEND_FLAGS=%OCTAVE_CONF_DEPEND_FLAGS%}
-: ${DEPEND_EXTRA_SED_PATTERN=%OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%}
-
-: ${DL_LD=%OCTAVE_CONF_DL_LD%}
-: ${DL_LDFLAGS=%OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%}
-
-: ${RLD_FLAG=%OCTAVE_CONF_RLD_FLAG%}
-: ${RDYNAMIC_FLAG=%OCTAVE_CONF_RDYNAMIC_FLAG%}
-: ${LIBOCTAVE=-loctave}
-: ${LIBOCTINTERP=-loctinterp}
-: ${READLINE_LIBS=-lreadline}
-: ${LIBCRUFT=-lcruft}
-: ${LAPACK_LIBS=%OCTAVE_CONF_LAPACK_LIBS%}
-: ${BLAS_LIBS=%OCTAVE_CONF_BLAS_LIBS%}
-: ${FFTW3_LDFLAGS=%OCTAVE_CONF_FFTW3_LDFLAGS%}
-: ${FFTW3_LIBS=%OCTAVE_CONF_FFTW3_LIBS%}
-: ${FFTW3F_LDFLAGS=%OCTAVE_CONF_FFTW3F_LDFLAGS%}
-: ${FFTW3F_LIBS=%OCTAVE_CONF_FFTW3F_LIBS%}
-: ${LIBS=%OCTAVE_CONF_LIBS%}
-: ${FLIBS=%OCTAVE_CONF_FLIBS%}
-: ${LD_CXX=%OCTAVE_CONF_LD_CXX%}
-: ${LDFLAGS=%OCTAVE_CONF_LDFLAGS%}
-: ${LD_STATIC_FLAG=%OCTAVE_CONF_LD_STATIC_FLAG%}
-: ${LFLAGS=$DEFAULT_LFLAGS}
-: ${F77_INTEGER_8_FLAG=%OCTAVE_CONF_F77_INTEGER_8_FLAG%}
-
-: ${ALL_FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"}
-
-: ${ALL_CFLAGS="$INCFLAGS $XTRA_CFLAGS $CFLAGS"}
-
-: ${ALL_CXXFLAGS="$INCFLAGS $XTRA_CXXFLAGS $CXXFLAGS"}
-
-: ${ALL_LDFLAGS="$LD_STATIC_FLAG $CPICFLAG $LDFLAGS"}
-
-: ${OCTAVE_LIBS="$LIBOCTINTERP $LIBOCTAVE $SPECIAL_MATH_LIB $LIBCRUFT"}
-
-# Local variables.
-
-FFTW_LIBS="$FFTW3_LDFLAGS $FFTW3_LIBS $FFTW3F_LDFLAGS $FFTW3F_LIBS"
-
-usage_msg="usage: mkoctfile [options] file ..."
-
-version_msg="mkoctfile, version $OCTAVE_VERSION"
-
-cfiles=
-ccfiles=
-f77files=
-objfiles=
-libfiles=
-octfiles=
-octfile=
-outputfile=
-incflags=
-defs=
-ldflags=
-dbg=:
-pass_on_options=
-strip=false
-no_oct_file_strip_on_this_platform=%NO_OCT_FILE_STRIP%
-link=true
-link_stand_alone=false
-output_ext=".oct"
-depend=false
-compile=true
-
-if [ $# -eq 0 ]; then
-  echo $usage_msg 1>&2
-  exit 1
-fi
-
-if [ $# -eq 1 ]; then
-  case "$1" in
-    -v | -version | --version)
-      echo $version_msg 1>&2
-      exit 0
-    ;;
-  esac
-fi
-
-while [ $# -gt 0 ]; do
-  file=
-  case "$1" in
-    *.c)
-      file=$1
-      cfiles="$cfiles $file"
-    ;;
-    *.cc | *.C | *.cpp)
-      file=$1
-      ccfiles="$ccfiles $file"
-    ;;
-    *.f | *.F | *.f90 | *.F90)
-      file=$1
-      f77files="$f77files $file"
-    ;;
-    *.o)
-      file=$1
-      objfiles="$objfiles $file"
-    ;;
-    *.a)
-      file=$1
-      libfiles="$libfiles $file"
-    ;;
-    -d | -debug | --debug | -v | -verbose | --verbose)
-      dbg=echo
-    ;;
-    -h | -\? | -help | --help)
-      echo $usage_msg 1>&2
-      cat << EOF
-
-Options:
-
-  -h, -?, --help          Print this message.
-
-  -IDIR                   Add -IDIR to compile commands.
-
-  -idirafter DIR          Add -idirafter DIR to compile commands.
-
-  -DDEF                   Add -DDEF to compile commands.
-
-  -lLIB                   Add -lLIB to link command.
-
-  -LDIR                   Add -LDIR to link command.
-
-  -RDIR                   Add -RDIR to link command.
-
-  -g                      Enable debugging option for all compilers.
-
-  -pthread                Add -pthread to link command.
-
-  -W...                   Pass flags to the compiler such as -Wa,OPTION.
-
-  -Wl,...                 Pass flags to the linker such as -Wl,-rpath=...
-
-  -M, --depend            Generate dependency files (.d) for C and C++
-                          source files.
-
-  -c, --compile           Compile, but do not link.
-
-  --link-stand-alone      Link a stand-alone executable file.
-
-  -s, --strip             Strip output file.
-
-  --mex                   Create a MEX file.  
-                          Set the default output extension to ".mex".
-
-  -o FILE, --output FILE  Output file name.  Default extension is .oct
-                          (or .mex if --mex is specified) unless linking
-                          a stand-alone executable.
-
-  -p VAR, --print VAR     Print configuration variable VAR.  Recognized
-                          variables are:
-
-                            ALL_CFLAGS                FFTW3F_LDFLAGS
-                            ALL_CXXFLAGS              FFTW3F_LIBS
-                            ALL_FFLAGS                FLIBS
-                            ALL_LDFLAGS               FPICFLAG
-                            BLAS_LIBS                 INCFLAGS
-                            CC                        LAPACK_LIBS
-                            CFLAGS                    LDFLAGS
-                            CPICFLAG                  LD_CXX
-                            CPPFLAGS                  LD_STATIC_FLAG
-                            CXX                       LFLAGS
-                            CXXFLAGS                  LIBCRUFT
-                            CXXPICFLAG                LIBOCTAVE
-                            DEPEND_EXTRA_SED_PATTERN  LIBOCTINTERP
-                            DEPEND_FLAGS              LIBS
-                            DL_LD                     OCTAVE_LIBS
-                            DL_LDFLAGS                RDYNAMIC_FLAG
-                            EXEEXT                    READLINE_LIBS
-                            F77                       RLD_FLAG
-                            F77_INTEGER_8_FLAG        SED
-                            FFLAGS                    XTRA_CFLAGS
-                            FFTW3_LDFLAGS             XTRA_CXXFLAGS
-                            FFTW3_LIBS
-
-  -v, --verbose           Echo commands as they are executed.
-
-  FILE                    Compile or link FILE.  Recognized file types are:
-
-                            .c    C source
-                            .cc   C++ source
-                            .C    C++ source
-                            .cpp  C++ source
-                            .f    Fortran source (fixed form)
-                            .F    Fortran source (fixed form)
-                            .f90  Fortran source (free form)
-                            .F90  Fortran source (free form)
-                            .o    object file
-                            .a    library file
-
-EOF
-      exit 0
-    ;;
-    -I*)
-      incflags="$incflags $1"
-    ;;
-    -idirafter)
-      shift
-      if [ $# -gt 0 ]; then
-        incflags="$incflags -idirafter $1"
-      else
-        echo "mkoctfile: include directory name missing" 1>&2
-      fi
-    ;;
-    -D*)
-      defs="$defs $1"
-    ;;
-    -[lLR]* | -Wl,*)
-      ldflags="$ldflags $1"
-    ;;
-    -pthread)
-      ldflags="$ldflags $1"
-    ;;
-    -M | -depend | --depend)
-      depend=true
-      compile=false
-    ;;
-    -o | -ouput | --output)
-      shift
-      if [ $# -gt 0 ]; then
-        outputfile="$1"
-      else
-        echo "mkoctfile: output file name missing" 1>&2
-      fi
-    ;;
-    -p | -print | --print)
-      shift
-      if [ $# -gt 0 ]; then
-        eval echo \${$1}
-        exit 0
-      else
-        echo "mkoctfile: --print requires argument" 1>&2
-        exit 1
-      fi
-    ;;
-    -s | -strip | --strip)
-      if $no_oct_file_strip_on_this_platform; then
-        echo "mkoctfile: stripping disabled on this platform" 1>&2
-      else
-        strip=true
-      fi
-    ;;
-    -c | -compile | --compile)
-      link=false
-    ;;
-    -g)
-      ALL_CFLAGS="$ALL_CFLAGS -g"
-      ALL_CXXFLAGS="$ALL_CXXFLAGS -g"
-      ALL_FFLAGS="$ALL_FFLAGS -g"
-    ;;
-    -link-stand-alone | --link-stand-alone)
-      link_stand_alone=true
-    ;;
-    -mex | --mex)
-      incflags="$incflags -I."
-      output_ext=".mex"
-    ;;
-    -W,*)
-      pass_on_options="$pass_on_options ${1:3}"
-    ;;
-    *)
-      echo "mkoctfile: unrecognized argument $1" 1>&2
-      exit 1
-    ;;
-  esac
-  if [ -n "$file" ]; then
-    if [ -z "$octfile" ]; then
-      octfile="$file"
-    fi
-  fi
-  shift
-done
-
-if $link_stand_alone; then
-  if [ -n "$outputfile" ]; then
-    output_option="-o $outputfile"
-  fi
-else
-  if [ -n "$outputfile" ]; then
-    octfile="$outputfile"
-    case "$octfile" in
-      *$output_ext)
-      ;;
-      *)
-        octfile="$octfile$output_ext"
-      ;;
-    esac
-  else
-    octfile=`basename $octfile`
-    octfile=`echo $octfile | $SED 's,\.[^.]*$,,'`$output_ext
-  fi
-fi
-
-# Generate dependency files for C and C++ files.
-
-if $depend; then
-  if [ -n "$cfiles" ]; then
-    for f in $cfiles; do
-      b=`echo $f | $SED 's,\.c$,,'`
-      d=$b.d
-      cmd="rm -f $d"
-      $dbg $cmd
-      eval $cmd
-      cmd="$CC $DEPEND_FLAGS $CPPFLAGS $ALL_CFLAGS $incflags $def $f | $SED $DEPEND_EXTRA_SED_PATTERN -e 's,^[^:]*/\(.*\.o\):,\1:,' -e 's,$b\.o,pic/& & $d,g' > $d-t && mv $d-t $d"
-      $dbg $cmd
-      eval $cmd
-    done
-  fi
-
-  if [ -n "$ccfiles" ]; then
-    for f in $ccfiles; do
-      case $f in
-        *.cc)
-          b=`echo $f | $SED 's,\.cc$,,'`
-        ;;
-        *.C)
-          b=`echo $f | $SED 's,\.C$,,'`
-        ;;
-        *.cpp)
-          b=`echo $f | $SED 's,\.cpp$,,'`
-        ;;
-      esac
-      d=$b.d
-      cmd="rm -f $d"
-      $dbg $cmd
-      eval $cmd
-      cmd="$CXX $DEPEND_FLAGS $CPPFLAGS $ALL_CXXFLAGS $incflags $defs $f | $SED $DEPEND_EXTRA_SED_PATTERN -e 's,^[^:]*/\(.*\.o\):,\1:,' -e 's,$b\.o,pic/& & $d,g' > $d-t && mv $d-t $d"
-      $dbg $cmd
-      eval $cmd
-    done
-  fi
-  # If generating dependencies, that's all we do.
-  exit 0
-fi
-
-# Compile Fortran, C, and C++ files.  Add the name of each object file
-# that is produced to the overall list of object files.
-
-if [ -n "$f77files" ]; then
-  for f in $f77files; do
-    case $f in
-      *.f)
-        b=`echo $f | $SED 's,.*/,,; s,\.f$,,'`
-      ;;
-      *.F)
-        b=`echo $f | $SED 's,.*/,,; s,\.F$,,'`
-      ;;
-      *.f90)
-        b=`echo $f | $SED 's,.*/,,; s,\.f90$,,'`
-      ;;
-      *.F90)
-        b=`echo $f | $SED 's,.*/,,; s,\.F90$,,'`
-      ;;
-    esac
-    if [ -n "$F77" ]; then
-      if [ -n "$outputfile" ]; then
-        if $link; then
-          o=$b.o
-        else
-          o=$outputfile
-        fi
-      else
-        o=$b.o
-      fi
-      objfiles="$objfiles $o"
-      cmd="$F77 -c $FPICFLAG $ALL_FFLAGS $incflags $defs $pass_on_options $f -o $o"
-      $dbg $cmd
-      eval $cmd
-    else
-      echo "mkoctfile: no way to compile Fortran file $f" 1>&2
-    fi
-  done
-fi
-
-if [ -n "$cfiles" ]; then
-  for f in $cfiles; do
-    if [ -n  "$CC" ]; then
-      b=`echo $f | $SED 's,.*/,,; s,\.c$,,'`
-      if [ -n "$outputfile" ]; then
-        if $link; then
-          o=$b.o
-        else
-          o=$outputfile
-        fi
-      else
-        o=$b.o
-      fi
-      objfiles="$objfiles $o"
-      cmd="$CC -c $CPPFLAGS $CPICFLAG $ALL_CFLAGS $pass_on_options $incflags $defs $f -o $o"
-      $dbg $cmd
-      eval $cmd
-    else
-      echo "mkoctfile: no way to compile C++ file $f" 1>&2
-    fi
-  done
-fi
-
-if [ -n "$ccfiles" ]; then
-  for f in $ccfiles; do
-    if [ -n "$CXX" ]; then
-      case $f in
-        *.cc)
-          b=`echo $f | $SED 's,.*/,,; s,\.cc$,,'`
-        ;;
-        *.C)
-          b=`echo $f | $SED 's,.*/,,; s,\.C$,,'`
-        ;;
-        *.cpp)
-          b=`echo $f | $SED 's,.*/,,; s,\.cpp$,,'`
-        ;;
-      esac
-      if [ -n "$outputfile" ]; then
-        if $link; then
-          o=$b.o
-        else
-          o=$outputfile
-        fi
-      else
-        o=$b.o
-      fi
-      objfiles="$objfiles $o"
-      cmd="$CXX -c $CPPFLAGS $CXXPICFLAG $ALL_CXXFLAGS $pass_on_options $incflags $defs $f -o $o"
-      $dbg $cmd
-      eval $cmd
-    else
-      echo "mkoctfile: no way to compile C++ file $f" 1>&2
-    fi
-  done
-fi
-
-## Uncomment the following group of lines if you get `Text file busy'
-## errors from ld.  This may happen if the .oct file is currently
-## running while you are trying to recompile it.  We try moving first,
-## since on some systems (HP-UX, maybe others) it is possible to
-## rename running programs but not remove them.
-
-## if [ -f "$octfile" ]; then
-##   cmd="mv $octfile $octfile.bak"
-##   $dbg $cmd
-##   eval $cmd
-##   cmd="rm -f $octfile.bak"
-##   $dbg $cmd
-##   eval $cmd
-## fi
-
-# Link all the object files.
-
-if $link && [ -n "$objfiles" ]; then
-  if $link_stand_alone; then
-    if [ -n "$LD_CXX" ]; then
-      cmd="$LD_CXX $CPPFLAGS $ALL_CXXFLAGS $RDYNAMIC_FLAG $ALL_LDFLAGS $pass_on_options $output_option $objfiles $libfiles $ldflags $LFLAGS $RLD_FLAG $OCTAVE_LIBS $LAPACK_LIBS $BLAS_LIBS $FFTW_LIBS $READLINE_LIBS $LIBS $FLIBS"
-      $dbg $cmd
-      eval $cmd
-    else
-      echo "mkoctfile: no way to link stand-alone executable file" 1>&2
-      exit 1
-    fi
-  else
-    LINK_DEPS="$LFLAGS $OCTAVE_LIBS $LDFLAGS $LAPACK_LIBS $BLAS_LIBS $FFTW_LIBS $LIBS $FLIBS"
-    cmd="$DL_LD $DL_LDFLAGS $pass_on_options -o $octfile $objfiles $libfiles $ldflags $LINK_DEPS"
-    $dbg $cmd
-    eval $cmd
-  fi
-
-# Maybe strip it.
-
-  if $strip; then
-    cmd="strip $octfile"
-    $dbg $cmd
-    eval $cmd
-  fi
-fi
-
-exit 0
--- a/move-if-change	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,15 +0,0 @@
-#!/bin/sh
-#
-# Like mv $1 $2, but if the files are the same, just delete $1.
-# Status is 0 if $2 is changed, 1 otherwise.
-
-if test -r $2; then
-  if cmp $1 $2 > /dev/null; then
-    echo $2 is unchanged
-    rm -f $1
-  else
-    mv -f $1 $2
-  fi
-else
-  mv -f $1 $2
-fi
--- a/octave-config.cc.in	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,224 +0,0 @@
-/*
-
-Copyright (C) 2008-2011 Michael Goffioul
-
-This file is part of Octave.
-
-Octave is free software; you can redistribute it and/or modify it
-under the terms of the GNU General Public License as published by the
-Free Software Foundation; either version 3 of the License, or (at your
-option) any later version.
-
-Octave is distributed in the hope that it will be useful, but WITHOUT
-ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-for more details.
-
-You should have received a copy of the GNU General Public License
-along with Octave; see the file COPYING.  If not, see
-<http://www.gnu.org/licenses/>.
-
-*/
-
-#if defined (HAVE_CONFIG_H)
-#include <config.h>
-#endif
-
-#include <string>
-#include <map>
-#include <iostream>
-#include <algorithm>
-#include <cstdlib>
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-#include <windows.h>
-#endif
-
-static bool initialized = false;
-static std::map<std::string,std::string> vars;
-static std::string OCTAVE_HOME, PREFIX;
-static std::string usage_msg = "usage: octave-config [options]";
-static std::string help_msg =
-"\n"
-"Options:\n"
-"\n"
-"  -h, -?, --help        Print this message.\n"
-"\n"
-"  --m-site-dir          Print the name of the directory where Octave\n"
-"                        expects to find locally installed .m files.\n"
-"\n"
-"  --oct-site-dir        Print the name of the directory where Octave\n"
-"                        expects to find locally installed .oct files.\n"
-"\n"
-"  -p VAR, --print VAR   Print the value of the given configuration\n"
-"		        variable VAR.  Recognized variables are:\n"
-"\n"
-"			  API_VERSION	         LOCALAPIARCHLIBDIR\n"
-"			  CANONICAL_HOST_TYPE	 LOCALAPIFCNFILEDIR\n"
-"			  DEFAULT_PAGER	         LOCALAPIOCTFILEDIR\n"
-"			  ARCHLIBDIR	         LOCALARCHLIBDIR\n"
-"			  BINDIR	         LOCALFCNFILEDIR\n"
-"			  DATADIR	         LOCALOCTFILEDIR\n"
-"			  DATAROOTDIR	         LOCALSTARTUPFILEDIR\n"
-"			  EXEC_PREFIX	         LOCALVERARCHLIBDIR\n"
-"			  FCNFILEDIR		 LOCALVERFCNFILEDIR\n"
-"			  LOCALVEROCTFILEDIR	 MAN1DIR\n"
-"			  IMAGEDIR	         MANDIR\n"
-"			  MAN1EXT	         OCTFILEDIR\n"
-"			  INCLUDEDIR	         OCTINCLUDEDIR\n"
-"			  INFODIR	         OCTLIBDIR\n"
-"			  INFOFILE	         PREFIX\n"
-"			  LIBDIR	         STARTUPFILEDIR\n"
-"			  LIBEXECDIR		 VERSION\n"
-"\n"
-"  -v, --version         Print the Octave version number.\n"
-"\n";
-
-static std::string
-substitute_prefix (const std::string& s, const std::string& prefix,
-		   const std::string new_prefix)
-{
-  std::string retval = s;
-
-  if (!prefix.empty () && new_prefix != prefix)
-    {
-      int len = prefix.length ();
-      if (retval.find (prefix) == 0)
-	retval.replace (0, len, new_prefix);
-    }
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-  std::replace (retval.begin (), retval.end (), '/', '\\');
-#endif
-
-  return retval;
-}
-
-static void
-initialize (void)
-{
-  if (initialized)
-    return;
-
-  initialized = true;
-
-  const char *homestr = getenv ("OCTAVE_HOME");
-  OCTAVE_HOME = (homestr ? homestr : "");
-  PREFIX = %OCTAVE_PREFIX%;
-
-#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
-  int n = 1024;
-
-  std::string bin_dir (n, '\0');
-
-  while (true)
-    {
-      int status = GetModuleFileName (0, &bin_dir[0], n);
-
-      if (status < n)
-	{
-	  bin_dir.resize (status);
-	  break;
-	}
-      else
-	{
-	  n *= 2;
-	  bin_dir.resize (n);
-	}
-    }
-
-  if (! bin_dir.empty ())
-    {
-      size_t pos = bin_dir.rfind ("\\bin\\");
-
-      if (pos != std::string::npos)
-	OCTAVE_HOME = bin_dir.substr (0, pos);
-    }
-#endif
-
-  vars["API_VERSION"] = %OCTAVE_API_VERSION%;
-  vars["CANONICAL_HOST_TYPE"] = %OCTAVE_CANONICAL_HOST_TYPE%;
-  vars["DEFAULT_PAGER"] = %OCTAVE_DEFAULT_PAGER%;
-  vars["ARCHLIBDIR"] = substitute_prefix (%OCTAVE_ARCHLIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["BINDIR"] = substitute_prefix (%OCTAVE_BINDIR%, PREFIX, OCTAVE_HOME);
-  vars["DATADIR"] =substitute_prefix (%OCTAVE_DATADIR%, PREFIX, OCTAVE_HOME);
-  vars["DATAROOTDIR"] =substitute_prefix (%OCTAVE_DATAROOTDIR%, PREFIX, OCTAVE_HOME);
-  vars["EXEC_PREFIX"] =substitute_prefix (%OCTAVE_EXEC_PREFIX%, PREFIX, OCTAVE_HOME);
-  vars["FCNFILEDIR"] =substitute_prefix (%OCTAVE_FCNFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["IMAGEDIR"] =substitute_prefix (%OCTAVE_IMAGEDIR%, PREFIX, OCTAVE_HOME);
-  vars["INCLUDEDIR"] =substitute_prefix (%OCTAVE_INCLUDEDIR%, PREFIX, OCTAVE_HOME);
-  vars["INFODIR"] =substitute_prefix (%OCTAVE_INFODIR%, PREFIX, OCTAVE_HOME);
-  vars["INFOFILE"] =substitute_prefix (%OCTAVE_INFOFILE%, PREFIX, OCTAVE_HOME);
-  vars["LIBDIR"] =substitute_prefix (%OCTAVE_LIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["LIBEXECDIR"] =substitute_prefix (%OCTAVE_LIBEXECDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALAPIARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALAPIARCHLIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALAPIFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALAPIFCNFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALAPIOCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALAPIOCTFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALARCHLIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALFCNFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALOCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALOCTFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALSTARTUPFILEDIR"] =substitute_prefix (%OCTAVE_LOCALSTARTUPFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALVERARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALVERARCHLIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALVERFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALVERFCNFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["LOCALVEROCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALVEROCTFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["MAN1DIR"] =substitute_prefix (%OCTAVE_MAN1DIR%, PREFIX, OCTAVE_HOME);
-  vars["MAN1EXT"] = %OCTAVE_MAN1EXT%;
-  vars["MANDIR"] =substitute_prefix (%OCTAVE_MANDIR%, PREFIX, OCTAVE_HOME);
-  vars["OCTFILEDIR"] =substitute_prefix (%OCTAVE_OCTFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["OCTINCLUDEDIR"] =substitute_prefix (%OCTAVE_OCTINCLUDEDIR%, PREFIX, OCTAVE_HOME);
-  vars["OCTLIBDIR"] =substitute_prefix (%OCTAVE_OCTLIBDIR%, PREFIX, OCTAVE_HOME);
-  vars["PREFIX"] = (OCTAVE_HOME.empty() ? PREFIX : OCTAVE_HOME);
-  vars["STARTUPFILEDIR"] =substitute_prefix (%OCTAVE_STARTUPFILEDIR%, PREFIX, OCTAVE_HOME);
-  vars["VERSION"] = %OCTAVE_VERSION%;
-}
-
-int
-main (int argc, char **argv)
-{
-  initialize ();
-
-  if (argc == 1)
-    {
-      std::cout << usage_msg << std::endl;
-      return 1;
-    }
-
-  for (int i = 1; i < argc; i++)
-    {
-      std::string arg (argv[i]);
-
-      if (arg == "-h" || arg == "-?" || arg == "--help")
-	{
-	  std::cout << usage_msg << std::endl;
-	  std::cout << help_msg;
-	  return 0;
-	}
-      else if (arg == "--m-site-dir")
-	std::cout << vars["LOCALVERFCNFILEDIR"] << std::endl;
-      else if (arg == "--oct-site-dir")
-	std::cout << vars["LOCALVEROCTFILEDIR"] << std::endl;
-      else if (arg == "-v" || arg == "--version")
-	std::cout << vars["VERSION"] << std::endl;
-      else if (arg == "-p" || arg == "--print")
-	{
-	  if (i < argc-1)
-	    {
-	      arg = argv[++i];
-	      std::cout << vars[arg] << std::endl;
-	    }
-	  else
-	    {
-	      std::cerr << "octave-config: " << arg
-			<< " options requires argument" << std::endl;
-	      return 1;
-	    }
-	}
-      else
-	{
-	  std::cerr << "octave-config: unrecognized argument " << arg << std::endl;
-	  return 1;
-	}
-    }
-  
-  return 0;
-}
--- a/octave-config.in	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,168 +0,0 @@
-#! /bin/sh -
-##
-## octave-config - reports some configuration values for Octave
-##
-## Copyright (C) 2001-2011 John W. Eaton
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 3 of the License, or (at
-## your option) any later version.
-##
-## Octave is distributed in the hope that it will be useful, but
-## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-## General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, see
-## <http://www.gnu.org/licenses/>.
-## 
-## Original version by Rafael Laboissiere <rafael@laboissiere.net>
-## distributed as free software in the public domain.
-
-API_VERSION=%OCTAVE_API_VERSION%
-CANONICAL_HOST_TYPE=%OCTAVE_CANONICAL_HOST_TYPE%
-DEFAULT_PAGER=%OCTAVE_DEFAULT_PAGER%
-ARCHLIBDIR=%OCTAVE_ARCHLIBDIR%
-BINDIR=%OCTAVE_BINDIR%
-DATADIR=%OCTAVE_DATADIR%
-DATAROOTDIR=%OCTAVE_DATAROOTDIR%
-EXEC_PREFIX=%OCTAVE_EXEC_PREFIX%
-FCNFILEDIR=%OCTAVE_FCNFILEDIR%
-IMAGEDIR=%OCTAVE_IMAGEDIR%
-INCLUDEDIR=%OCTAVE_INCLUDEDIR%
-INFODIR=%OCTAVE_INFODIR%
-INFOFILE=%OCTAVE_INFOFILE%
-LIBDIR=%OCTAVE_LIBDIR%
-LIBEXECDIR=%OCTAVE_LIBEXECDIR%
-LOCALAPIARCHLIBDIR=%OCTAVE_LOCALAPIARCHLIBDIR%
-LOCALAPIFCNFILEDIR=%OCTAVE_LOCALAPIFCNFILEDIR%
-LOCALAPIOCTFILEDIR=%OCTAVE_LOCALAPIOCTFILEDIR%
-LOCALARCHLIBDIR=%OCTAVE_LOCALARCHLIBDIR%
-LOCALFCNFILEDIR=%OCTAVE_LOCALFCNFILEDIR%
-LOCALOCTFILEDIR=%OCTAVE_LOCALOCTFILEDIR%
-LOCALSTARTUPFILEDIR=%OCTAVE_LOCALSTARTUPFILEDIR%
-LOCALVERARCHLIBDIR=%OCTAVE_LOCALVERARCHLIBDIR%
-LOCALVERFCNFILEDIR=%OCTAVE_LOCALVERFCNFILEDIR%
-LOCALVEROCTFILEDIR=%OCTAVE_LOCALVEROCTFILEDIR%
-MAN1DIR=%OCTAVE_MAN1DIR%
-MAN1EXT=%OCTAVE_MAN1EXT%
-MANDIR=%OCTAVE_MANDIR%
-OCTFILEDIR=%OCTAVE_OCTFILEDIR%
-OCTINCLUDEDIR=%OCTAVE_OCTINCLUDEDIR%
-OCTLIBDIR=%OCTAVE_OCTLIBDIR%
-PREFIX=%OCTAVE_PREFIX%
-STARTUPFILEDIR=%OCTAVE_STARTUPFILEDIR%
-VERSION=%OCTAVE_VERSION%
-
-if [ -n "$OCTAVE_HOME" ]; then
-  ARCHLIBDIR="`echo $ARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  BINDIR="`echo $BINDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  DATADIR="`echo $DATADIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  DATAROOTDIR="`echo $DATAROOTDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  EXEC_PREFIX="`echo $EXEC_PREFIX | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  FCNFILEDIR="`echo $FCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  IMAGEDIR="`echo $IMAGEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  INCLUDEDIR="`echo $INCLUDEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  INFODIR="`echo $INFODIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  INFOFILE="`echo $INFOFILE | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LIBDIR="`echo $LIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LIBEXECDIR="`echo $LIBEXECDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALAPIARCHLIBDIR="`echo $LOCALAPIARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALAPIFCNFILEDIR="`echo $LOCALAPIFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALAPIOCTFILEDIR="`echo $LOCALAPIOCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALARCHLIBDIR="`echo $LOCALARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALFCNFILEDIR="`echo $LOCALFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALOCTFILEDIR="`echo $LOCALOCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALSTARTUPFILEDIR="`echo $LOCALSTARTUPFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALVERARCHLIBDIR="`echo $LOCALVERARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALVERFCNFILEDIR="`echo $LOCALVERFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  LOCALVEROCTFILEDIR="`echo $LOCALVEROCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  MAN1DIR="`echo $MAN1DIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  MANDIR="`echo $MANDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  OCTFILEDIR="`echo $OCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  OCTINCLUDEDIR="`echo $OCTINCLUDEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  OCTLIBDIR="`echo $OCTLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-  STARTUPFILEDIR="`echo $STARTUPFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
-
-  PREFIX="$OCTAVE_HOME"
-fi
-
-usage_msg="usage: octave-config [options]"
-
-if [ $# -eq 0 ]; then
-  echo "$usage_msg" 1>&2
-  exit 1
-fi
-
-while [ $# -gt 0 ]
-do
-  case "$1" in
-    -h | -\? | --help)
-      echo "$usage_msg"
-      cat << EOF
-
-Options:
-
-  -h, -?, --help        Print this message.
-
-  --m-site-dir          Print the name of the directory where Octave
-                        expects to find locally installed .m files.
-
-  --oct-site-dir        Print the name of the directory where Octave
-                        expects to find locally installed .oct files.
-
-  -p VAR, --print VAR   Print the value of the given configuration
-		        variable VAR.  Recognized variables are:
-
-                          API_VERSION             LOCALAPIOCTFILEDIR
-                          ARCHLIBDIR              LOCALARCHLIBDIR
-                          BINDIR                  LOCALFCNFILEDIR
-                          CANONICAL_HOST_TYPE     LOCALOCTFILEDIR
-                          DATADIR                 LOCALSTARTUPFILEDIR
-                          DATAROOTDIR             LOCALVERARCHLIBDIR
-                          DEFAULT_PAGER           LOCALVERFCNFILEDIR
-                          EXEC_PREFIX             LOCALVEROCTFILEDIR
-                          FCNFILEDIR              MAN1DIR
-                          IMAGEDIR                MAN1EXT
-                          INCLUDEDIR              MANDIR
-                          INFODIR                 OCTFILEDIR
-                          INFOFILE                OCTINCLUDEDIR
-                          LIBDIR                  OCTLIBDIR
-                          LIBEXECDIR              PREFIX
-                          LOCALAPIARCHLIBDIR      STARTUPFILEDIR
-                          LOCALAPIFCNFILEDIR      VERSION
-
-  -v, --version         Print the Octave version number.
-
-EOF
-      exit 0
-    ;;
-    --m-site-dir)
-      echo $LOCALVERFCNFILEDIR
-    ;;
-    --oct-site-dir)
-      echo $LOCALVEROCTFILEDIR
-    ;;
-    -v | --version)
-      echo $VERSION
-    ;;
-    -p | --print)
-      opt="$1"
-      shift
-      if [ $# -eq 0 ]; then
-        echo "octave-config: $opt option requires argument" 1>&2
-        exit 1
-      fi
-      eval echo \${$1}
-    ;;
-    *)
-      echo "octave-config: unrecognized argument $1" 2>&1
-      exit 1
-    ;;
-  esac
-  shift
-done
--- a/octave-sh	Fri Jun 10 11:26:07 2011 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-#!/bin/sh
-#
-# Wrapper for octave for binary installations that can't install
-# octave in /usr/local/bin.
-#
-# The real binary should be installed in as octave.bin, and this file
-# should be installed in the same directory as octave.
-
-if test -n "$LD_LIBRARY_PATH"; then
-  LD_LIBRARY_PATH="@LD_LIBRARY_PATH@:$LD_LIBRARY_PATH"
-else
-  LD_LIBRARY_PATH="@LD_LIBRARY_PATH@"
-fi
-export LD_LIBRARY_PATH
-
-OCTAVE_HOME=@OCTAVE_HOME@
-export OCTAVE_HOME
-
-exec $OCTAVE_HOME/bin/octave.bin $*
--- a/scripts/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/scripts/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 AUTOMAKE_OPTIONS = subdir-objects
 
@@ -324,7 +324,7 @@
 	fi
 	@echo "creating .DOCSTRINGS from .m script files"
 	@$(srcdir)/mkdoc "$(srcdir)" $(FCN_FILES) -- $(GEN_FCN_FILES) > $@
-	$(top_srcdir)/move-if-change $@ DOCSTRINGS
+	$(top_srcdir)/build-aux/move-if-change $@ DOCSTRINGS
 	touch $@
 
 $(GEN_FCN_FILES) : %.m : %.in Makefile
--- a/src/DLD-FUNCTIONS/config-module.sh	Fri Jun 10 11:26:07 2011 -0400
+++ b/src/DLD-FUNCTIONS/config-module.sh	Fri Jun 10 14:35:42 2011 -0400
@@ -10,8 +10,10 @@
   top_srcdir="../.."
 fi
 
+move_if_change="$top_srcdir/build-aux/move-if-change"
+
 dld_dir=$top_srcdir/src/DLD-FUNCTIONS
 
 $AWK -f $dld_dir/config-module.awk < $dld_dir/module-files > $dld_dir/module.mk-t
 
-$top_srcdir/move-if-change $dld_dir/module.mk-t $dld_dir/module.mk
+$move_if_change $dld_dir/module.mk-t $dld_dir/module.mk
--- a/src/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/src/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 AM_CPPFLAGS = \
   @CPPFLAGS@ -I../libgnu -I$(top_srcdir)/libgnu \
@@ -30,10 +30,35 @@
 
 octlib_LTLIBRARIES = liboctinterp.la
 
+if AMCOND_BUILD_COMPILED_AUX_PROGRAMS
+bin_PROGRAMS = \
+  mkoctfile \
+  octave \
+  octave-config
+
+mkoctfile_SOURCES =
+nodist_mkoctfile_SOURCES = mkoctfile.cc
+
+octave_config_SOURCES =
+nodist_octave_config_SOURCES = octave-config.cc
+
+BUILT_SOURCES_EXTRA = \
+  mkoctfile.cc \
+  octave-config.cc
+else
+bin_PROGRAMS = \
+  octave
+
+bin_SCRIPTS = \
+  mkoctfile \
+  octave-config
+endif
+
 ## Order matters here.  Leave builtins.cc last, because it depends on 
 ## $(DEF_FILES), and building those requires all the sources
 ## (except builtins.cc) to be available.
 BUILT_SOURCES = \
+  $(BUILT_SOURCES_EXTRA) \
   defaults.h \
   graphics.h \
   graphics-props.cc \
@@ -79,10 +104,14 @@
   mkbuiltins \
   mkdefs \
   mkgendoc \
+  mkoctfile.cc.in \
+  mkoctfile.in \
   mkops \
   mxarray.h.in \
   oct-conf.h.in \
   oct-errno.cc.in \
+  octave-config.cc.in \
+  octave-config.in \
   octave.gperf \
   version.h.in \
   $(BUILT_DISTFILES)
@@ -654,8 +683,6 @@
 DLD_FUNCTIONS_fftw_la_LIBADD += $(FFTW_XLDFLAGS) $(FFTW_XLIBS)
 
 
-bin_PROGRAMS = octave
-
 octave_SOURCES = main.c
 
 octave_LDADD = $(OCTAVE_LIBS)
@@ -749,8 +776,8 @@
 	fi
 	mv $@-t $@
 
-$(OPT_HANDLERS) : %.cc : $(top_srcdir)/liboctave/%.in $(top_srcdir)/mk-opts.pl
-	$(PERL) $(top_srcdir)/mk-opts.pl --opt-handler-fcns $< > $@-t
+$(OPT_HANDLERS) : %.cc : $(top_srcdir)/liboctave/%.in $(top_srcdir)/build-aux/mk-opts.pl
+	$(PERL) $(top_srcdir)/build-aux/mk-opts.pl --opt-handler-fcns $< > $@-t
 	mv $@-t $@
 
 $(OPT_INC) : %.h : %.in
@@ -776,7 +803,7 @@
 	fi
 	@echo "creating .DOCSTRINGS from .cc source files"
 	@./gendoc > $@
-	$(top_srcdir)/move-if-change $@ DOCSTRINGS
+	$(top_srcdir)/build-aux/move-if-change $@ DOCSTRINGS
 	touch $@
 
 doc-files: $(ALL_DEF_FILES)
@@ -793,6 +820,22 @@
 
 all-local: $(OCT_STAMP_FILES) DLD-FUNCTIONS/PKG_ADD .DOCSTRINGS
 
+if AMCOND_BUILD_COMPILED_AUX_PROGRAMS
+octave-config.cc: octave-config.cc.in Makefile
+	@$(do_subst_default_vals)
+
+mkoctfile.cc: mkoctfile.cc.in Makefile
+	@$(do_subst_config_vals)
+else
+octave-config: octave-config.in Makefile
+	@$(do_subst_default_vals)
+	chmod a+rx $@
+
+mkoctfile: mkoctfile.in Makefile
+	@$(do_subst_config_vals)
+	chmod a+rx $@
+endif
+
 install-exec-hook: make-version-links
 
 install-data-hook: install-oct
@@ -811,7 +854,7 @@
 
 if AMCOND_ENABLE_DYNAMIC_LINKING
 install-oct:
-	$(top_srcdir)/mkinstalldirs $(DESTDIR)$(octfiledir)
+	$(top_srcdir)/build-aux/mkinstalldirs $(DESTDIR)$(octfiledir)
 	if [ -n "`cat DLD-FUNCTIONS/PKG_ADD`" ]; then \
 	  $(INSTALL_DATA) DLD-FUNCTIONS/PKG_ADD $(DESTDIR)$(octfiledir)/PKG_ADD; \
 	fi
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mkoctfile.cc.in	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,778 @@
+/*
+
+Copyright (C) 2008-2011 Michael Goffioul
+
+This file is part of Octave.
+
+Octave is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 3 of the License, or (at your
+option) any later version.
+
+Octave is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with Octave; see the file COPYING.  If not, see
+<http://www.gnu.org/licenses/>.
+
+*/
+
+#if defined (HAVE_CONFIG_H)
+#include <config.h>
+#endif
+
+#include <string>
+#include <map>
+#include <list>
+#include <algorithm>
+#include <iostream>
+#include <fstream>
+#include <vector>
+#include <cstdlib>
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+#include <windows.h>
+#ifdef _MSC_VER
+#define popen _popen
+#define pclose _pclose
+#endif
+#endif
+
+using namespace std;
+
+static bool initialized = false;
+static map<string,string> vars;
+
+static string OCTAVE_VERSION = %OCTAVE_CONF_VERSION%;
+
+static std::string
+substitute_prefix (const std::string& s, const std::string& prefix,
+                   const std::string& new_prefix)
+{
+  std::string retval = s;
+
+  if (!prefix.empty () && new_prefix != prefix)
+    {
+      int len = prefix.length ();
+      if (retval.find (prefix) == 0)
+        retval.replace (0, len, new_prefix);
+    }
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+  std::replace (retval.begin (), retval.end (), '/', '\\');
+#endif
+
+  return retval;
+}
+
+static string
+get_line (FILE *fp)
+{
+  static vector<char> buf (100);
+  int idx = 0;
+  char c;
+
+  while (true)
+    {
+      c = static_cast<char> (fgetc (fp));
+      if (c == '\n' || c == EOF)
+        break;
+      if (buf.size () <= idx)
+        buf.resize (buf.size () + 100);
+      buf[idx++] = c;
+    }
+  if (idx == 0)
+    return string ("");
+  else
+    return string (&buf[0], idx);
+}
+
+
+static string
+get_variable (const char *name, const string& defval)
+{
+  const char *val = getenv (name);
+  if (val == NULL || val[0] == '\0')
+    return defval;
+  else
+    return string (val);
+}
+
+static string
+quote_path (const string& s)
+{
+  if (s.find (' ') != string::npos && s[0] != '"')
+    return "\"" + s + "\"";
+  else
+    return s;
+}
+
+static void
+initialize (void)
+{
+  if (initialized)
+    return;
+
+  initialized = true;
+
+  vars["OCTAVE_HOME"] = get_variable ("OCTAVE_HOME", "");
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+  int n = 1024;
+
+  std::string bin_dir (n, '\0');
+
+  while (true)
+    {
+      int status = GetModuleFileName (0, &bin_dir[0], n);
+
+      if (status < n)
+        {
+          bin_dir.resize (status);
+          break;
+        }
+      else
+        {
+          n *= 2;
+          bin_dir.resize (n);
+        }
+    }
+
+  if (! bin_dir.empty ())
+    {
+      size_t pos = bin_dir.rfind ("\\bin\\");
+
+      if (pos != string::npos)
+        vars["OCTAVE_HOME"] = bin_dir.substr (0, pos);
+    }
+#endif
+
+  vars["SED"] = get_variable ("SED", %OCTAVE_CONF_SED%);
+
+  vars["OCTAVE_PREFIX"] = %OCTAVE_CONF_PREFIX%;
+
+  std::string DEFAULT_OCTINCLUDEDIR = %OCTAVE_CONF_OCTINCLUDEDIR%;
+  std::string DEFAULT_INCLUDEDIR = %OCTAVE_CONF_INCLUDEDIR%;
+  std::string DEFAULT_LIBDIR = %OCTAVE_CONF_LIBDIR%;
+  std::string DEFAULT_OCTLIBDIR = %OCTAVE_CONF_OCTLIBDIR%;
+
+  if (! vars["OCTAVE_HOME"].empty ())
+    {
+      DEFAULT_OCTINCLUDEDIR
+        = substitute_prefix (DEFAULT_OCTINCLUDEDIR, vars["OCTAVE_PREFIX"],
+                             vars["OCTAVE_HOME"]);
+
+      DEFAULT_INCLUDEDIR
+        = substitute_prefix (DEFAULT_INCLUDEDIR, vars["OCTAVE_PREFIX"],
+                             vars["OCTAVE_HOME"]);
+
+      DEFAULT_LIBDIR
+        = substitute_prefix (DEFAULT_LIBDIR, vars["OCTAVE_PREFIX"],
+                             vars["OCTAVE_HOME"]);
+
+      DEFAULT_OCTLIBDIR
+        = substitute_prefix (DEFAULT_OCTLIBDIR, vars["OCTAVE_PREFIX"],
+                             vars["OCTAVE_HOME"]);
+    }
+
+  vars["OCTINCLUDEDIR"] = get_variable ("OCTINCLUDEDIR", DEFAULT_OCTINCLUDEDIR);
+  vars["INCLUDEDIR"] = get_variable ("INCLUDEDIR", DEFAULT_INCLUDEDIR);
+  vars["LIBDIR"] = get_variable ("LIBDIR", DEFAULT_LIBDIR);
+  vars["OCTLIBDIR"] = get_variable ("OCTLIBDIR", DEFAULT_OCTLIBDIR);
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+  std::string DEFAULT_INCFLAGS
+    = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "\\..")
+    + " -I" + quote_path (vars["OCTINCLUDEDIR"]);
+#else
+  std::string DEFAULT_INCFLAGS
+    = "-I" + quote_path (vars["OCTINCLUDEDIR"] + "/..")
+    + " -I" + quote_path (vars["OCTINCLUDEDIR"]);
+#endif
+  if (vars["INCLUDEDIR"] != "/usr/include")
+    DEFAULT_INCFLAGS += " -I" + quote_path (vars["INCLUDEDIR"]);
+
+  std::string DEFAULT_LFLAGS = "-L" + quote_path (vars["OCTLIBDIR"]);
+  if (vars["LIBDIR"] != "/usr/lib")
+    DEFAULT_LFLAGS += " -L" + quote_path (vars["LIBDIR"]);
+
+  vars["CPPFLAGS"] = get_variable ("CPPFLAGS", %OCTAVE_CONF_CPPFLAGS%);
+  vars["INCFLAGS"] = get_variable ("INCFLAGS", DEFAULT_INCFLAGS);
+  vars["F77"] = get_variable ("F77", %OCTAVE_CONF_F77%);
+  vars["FFLAGS"] = get_variable ("FFLAGS", %OCTAVE_CONF_FFLAGS%);
+  vars["FPICFLAG"] = get_variable ("FPICFLAG", %OCTAVE_CONF_FPICFLAG%);
+  vars["CC"] = get_variable ("CC", %OCTAVE_CONF_CC%);
+  vars["CFLAGS"] = get_variable ("CFLAGS", %OCTAVE_CONF_CFLAGS%);
+  vars["CPICFLAG"] = get_variable ("CPICFLAG", %OCTAVE_CONF_CPICFLAG%);
+  vars["CXX"] = get_variable ("CXX", %OCTAVE_CONF_CXX%);
+  vars["CXXFLAGS"] = get_variable ("CXXFLAGS", %OCTAVE_CONF_CXXFLAGS%);
+  vars["CXXPICFLAG"] = get_variable ("CXXPICFLAG", %OCTAVE_CONF_CXXPICFLAG%);
+  vars["XTRA_CFLAGS"] = get_variable ("XTRA_CFLAGS", %OCTAVE_CONF_XTRA_CFLAGS%);
+  vars["XTRA_CXXFLAGS"] = get_variable ("XTRA_CXXFLAGS", %OCTAVE_CONF_XTRA_CXXFLAGS%);
+
+  vars["DEPEND_FLAGS"] = get_variable ("DEPEND_FLAGS", %OCTAVE_CONF_DEPEND_FLAGS%);
+  vars["DEPEND_EXTRA_SED_PATTERN"] = get_variable ("DEPEND_EXTRA_SED_PATTERN", %OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%);
+
+  vars["DL_LD"] = get_variable ("DL_LD", %OCTAVE_CONF_DL_LD%);
+  vars["DL_LDFLAGS"] = get_variable ("DL_LDFLAGS", %OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%);
+
+  vars["RLD_FLAG"] = get_variable ("RLD_FLAG", %OCTAVE_CONF_RLD_FLAG%);
+  vars["RDYNAMIC_FLAG"] = get_variable ("RDYNAMIC_FLAG", %OCTAVE_CONF_RDYNAMIC_FLAG%);
+  vars["LIBOCTAVE"] = "-loctave";
+  vars["LIBOCTINTERP"] = "-loctinterp";
+  vars["READLINE_LIBS"] = "-lreadline";
+  vars["LIBCRUFT"] = "-lcruft";
+  vars["LAPACK_LIBS"] = get_variable ("LAPACK_LIBS", %OCTAVE_CONF_LAPACK_LIBS%);
+  vars["BLAS_LIBS"] = get_variable ("BLAS_LIBS", %OCTAVE_CONF_BLAS_LIBS%);
+  vars["FFTW3_LDFLAGS"] = get_variable ("FFTW3_LDFLAGS", %OCTAVE_CONF_FFTW3_LDFLAGS%);
+  vars["FFTW3_LIBS"] = get_variable ("FFTW3_LIBS", %OCTAVE_CONF_FFTW3_LIBS%);
+  vars["FFTW3F_LDFLAGS"] = get_variable ("FFTW3F_LDFLAGS", %OCTAVE_CONF_FFTW3F_LDFLAGS%);
+  vars["FFTW3F_LIBS"] = get_variable ("FFTW3F_LIBS", %OCTAVE_CONF_FFTW3F_LIBS%);
+  vars["LIBS"] = get_variable ("LIBS", %OCTAVE_CONF_LIBS%);
+  vars["FLIBS"] = get_variable ("FLIBS", %OCTAVE_CONF_FLIBS%);
+  vars["LD_CXX"] = get_variable ("LD_CXX", %OCTAVE_CONF_LD_CXX%);
+  vars["LDFLAGS"] = get_variable ("LDFLAGS", %OCTAVE_CONF_LDFLAGS%);
+  vars["LD_STATIC_FLAG"] = get_variable ("LD_STATIC_FLAG", %OCTAVE_CONF_LD_STATIC_FLAG%);
+  vars["LFLAGS"] = get_variable ("LFLAGS", DEFAULT_LFLAGS);
+  vars["F77_INTEGER8_FLAG"] = get_variable ("F77_INTEGER8_FLAG", %OCTAVE_CONF_F77_INTEGER_8_FLAG%);
+
+  vars["ALL_FFLAGS"] = vars["FFLAGS"] + " " + vars["F77_INTEGER8_FLAG"];
+
+  vars["ALL_CFLAGS"] = vars["INCFLAGS"] + " " + vars["XTRA_CFLAGS"]
+    + " " + vars["CFLAGS"];
+
+  vars["ALL_CXXFLAGS"] = vars["INCFLAGS"] + " " + vars["XTRA_CXXFLAGS"]
+    + " " + vars["CXXFLAGS"];
+
+  vars["ALL_LDFLAGS"] = vars["LD_STATIC_FLAG"] + " " + vars["CPICFLAG"]
+    + " " + vars["LDFLAGS"];
+
+  vars["OCTAVE_LIBS"] = vars["LIBOCTINTERP"] + " " + vars["LIBOCTAVE"]
+    + " " + vars["SPECIAL_MATH_LIB"] + " " + vars["LIBCRUFT"];
+
+  vars["FFTW_LIBS"] = vars["FFTW3_LDFLAGS"] + " " + vars["FFTW3_LIBS"]
+    + " " + vars["FFTW3F_LDFLAGS"] + " " + vars["FFTW3F_LIBS"];
+}
+
+static string usage_msg = "usage: mkoctfile [options] file ...";
+static string version_msg = "mkoctfile, version " + OCTAVE_VERSION;
+static bool debug = false;
+static string help_msg =
+"\n"
+"Options:\n"
+"\n"
+"  -h, -?, --help          Print this message.\n"
+"\n"
+"  -IDIR                   Add -IDIR to compile commands.\n"
+"\n"
+"  -idirafter DIR          Add -idirafter DIR to compile commands.\n"
+"\n"
+"  -DDEF                   Add -DDEF to compile commands.\n"
+"\n"
+"  -lLIB                   Add library LIB to link command.\n"
+"\n"
+"  -LDIR                   Add -LDIR to link command.\n"
+"\n"
+"  -M, --depend            Generate dependency files (.d) for C and C++\n"
+"                          source files.\n"
+"\n"
+"  -RDIR                   Add -RDIR to link command.\n"
+"\n"
+"  -Wl,...                 Pass flags though the linker like -Wl,-rpath=...\n"
+"\n"
+"  -W...                   Pass flags though the compiler like -Wa,OPTION.\n"
+"\n"
+"  -c, --compile           Compile, but do not link.\n"
+"\n"
+"  -o FILE, --output FILE  Output file name.  Default extension is .oct\n"
+"                          (or .mex if --mex is specified) unless linking\n"
+"                          a stand-alone executable.\n"
+"\n"
+"  -g                      Enable debugging options for compilers.\n"
+"\n"
+"  -p VAR, --print VAR     Print configuration variable VAR.  Recognized\n"
+"                          variables are:\n"
+"\n"
+"                           ALL_CFLAGS                FLIBS\n"
+"                           ALL_CXXFLAGS              FPICFLAG\n"
+"                           ALL_FFLAGS                INCFLAGS\n"
+"                           ALL_LDFLAGS               LAPACK_LIBS\n"
+"                           BLAS_LIBS                 LDFLAGS\n"
+"                           CC                        LD_CXX\n"
+"                           CFLAGS                    LD_STATIC_FLAG\n"
+"                           CPICFLAG                  LFLAGS\n"
+"                           CPPFLAGS                  LIBCRUFT\n"
+"                           CXX                       LIBOCTAVE\n"
+"                           CXXFLAGS                  LIBOCTINTERP\n"
+"                           CXXPICFLAG                LIBS\n"
+"                           DEPEND_EXTRA_SED_PATTERN  OCTAVE_LIBS\n"
+"                           DEPEND_FLAGS              RDYNAMIC_FLAG\n"
+"                           DL_LD                     READLINE_LIBS\n"
+"                           DL_LDFLAGS                RLD_FLAG\n"
+"                           F77                       SED\n"
+"                           FFLAGS                    XTRA_CFLAGS\n"
+"                           FFTW_LIBS                 XTRA_CXXFLAGS\n"
+"\n"
+"  --link-stand-alone      Link a stand-alone executable file.\n"
+"\n"
+"  --mex                   Assume we are creating a MEX file.  Set the\n"
+"                          default output extension to \".mex\".\n"
+"\n"
+"  -s, --strip             Strip output file.\n"
+"\n"
+"  -v, --verbose           Echo commands as they are executed.\n"
+"\n"
+"  FILE                    Compile or link FILE.  Recognized file types are:\n"
+"\n"
+"                            .c    C source\n"
+"                            .cc   C++ source\n"
+"                            .C    C++ source\n"
+"                            .cpp  C++ source\n"
+"                            .f    Fortran source (fixed form)\n"
+"                            .F    Fortran source (fixed form)\n"
+"                            .f90  Fortran source (free form)\n"
+"                            .F90  Fortran source (free form)\n"
+"                            .o    object file\n"
+"                            .a    library file\n"
+#ifdef _MSC_VER
+"                            .lib  library file\n"
+#endif
+"\n";
+
+static string
+basename (const string& s, bool strip_path = false)
+{
+  size_t pos = s.rfind ('.');
+  string retval;
+
+  if (pos == string::npos)
+    retval = s;
+  else
+    retval = s.substr (0, pos);
+  if (strip_path)
+    {
+      size_t p1 = retval.rfind ('/'), p2 = retval.rfind ('\\');
+      pos = (p1 != string::npos && p2 != string::npos
+             ? max (p1, p2) : (p2 != string::npos ? p2 : p1));
+      if (pos != string::npos)
+        retval = retval.substr (0, pos);
+    }
+  return retval;
+}
+
+inline bool
+starts_with (const string& s, const string& prefix)
+{
+  return (s.length () >= prefix.length () && s.find (prefix) == 0);
+}
+
+inline bool
+ends_with (const string& s, const string& suffix)
+{
+  return (s.length () >= suffix.length ()
+          && s.rfind (suffix) == s.length () - suffix.length ());
+}
+
+static int
+run_command (const string& cmd)
+{
+  if (debug)
+    cout << cmd << endl;
+  return system (cmd.c_str ());
+}
+
+int
+main (int argc, char **argv)
+{
+  initialize ();
+
+  string file, output_option;
+  list<string> cfiles, ccfiles, f77files;
+  int result = 0;
+
+  string objfiles = "";
+  string libfiles = "";
+  string octfile = "";
+  string outputfile = "";
+  string incflags = "";
+  string defs = "";
+  string ldflags = "";
+  string pass_on_options = "";
+  bool strip = false;
+  bool no_oct_file_strip_on_this_platform = %NO_OCT_FILE_STRIP%;
+  bool link = true;
+  bool link_stand_alone = false;
+  string output_ext = ".oct";
+  bool depend = false;
+  bool compile = true;
+
+  if (argc == 1)
+    {
+      cout << usage_msg << endl;
+      return 1;
+    }
+
+  if (argc == 2 && (!strcmp (argv[1], "-v")
+                    || !strcmp (argv[1], "-version")
+                    || !strcmp (argv[1], "--version")))
+    {
+      cout << version_msg << endl;
+      return 0;
+    }
+
+  for (int i = 1; i < argc; i++)
+    {
+      string arg = argv[i];
+      size_t len = arg.length ();
+
+      if (ends_with (arg, ".c"))
+        {
+          file = arg;
+          cfiles.push_back (file);
+        }
+      else if (ends_with (arg, ".cc") || ends_with (arg, ".C")
+               || ends_with (arg, ".cpp"))
+        {
+          file = arg;
+          ccfiles.push_back (file);
+        }
+      else if (ends_with (arg, ".f") || ends_with (arg, ".F")
+               || ends_with (arg, "f90") || ends_with (arg, ".F90"))
+        {
+          file = arg;
+          f77files.push_back (file);
+        }
+      else if (ends_with (arg, ".o") || ends_with (arg, ".obj"))
+        {
+          file = arg;
+          objfiles += (" " + quote_path (arg));
+        }
+      else if (ends_with (arg, ".lib") || ends_with (arg, ".a"))
+        {
+          file = arg;
+          libfiles += (" " + quote_path (arg));
+        }
+      else if (arg == "-d" || arg == "-debug" || arg == "--debug"
+               || arg == "-v" || arg == "-verbose" ||  arg == "--verbose")
+        {
+          debug = true;
+          if (vars["CC"] == "cc-msvc")
+            vars["CC"] += " -d";
+          if (vars["CXX"] == "cc-msvc")
+            vars["CXX"] += " -d";
+          if (vars["DL_LD"] == "cc-msvc")
+            vars["DL_LD"] += " -d";
+        }
+      else if (arg == "-h" || arg == "-?" || arg == "-help" || arg == "--help")
+        {
+          cout << usage_msg << endl;
+          cout << help_msg << endl;
+          return 0;
+        }
+      else if (starts_with (arg, "-I"))
+        {
+          incflags += (" " + quote_path (arg));
+        }
+      else if (arg == "-idirafter")
+        {
+          if (i < argc-1)
+            {
+              arg = argv[++i];
+              incflags += (" -idirafter " + arg);
+            }
+          else
+            cerr << "mkoctfile: include directory name missing" << endl;
+        }
+      else if (starts_with (arg, "-D"))
+        {
+          defs += (" " + arg);
+        }
+      else if (starts_with (arg, "-Wl,") || starts_with (arg, "-l")
+               || starts_with (arg, "-L") || starts_with (arg, "-R"))
+        {
+          ldflags += (" " + arg);
+        }
+      else if (arg == "-M" || arg == "-depend" || arg == "--depend")
+        {
+          depend = true;
+          compile = false;
+        }
+      else if (arg == "-o" || arg == "-output" || arg == "--output")
+        {
+          if (i < argc-1)
+            {
+              arg = argv[++i];
+              outputfile = arg;
+            }
+          else
+            cerr << "mkoctfile: output file name missing" << endl;
+        }
+      else if (arg == "-p" || arg == "-print" || arg == "--print")
+        {
+          if (i < argc-1)
+            {
+              arg = argv[++i];
+              cout << vars[arg] << endl;
+              return 0;
+            }
+          else
+            cerr << "mkoctfile: --print requires argument" << endl;
+        }
+      else if (arg == "-s" || arg == "-strip" || arg == "--strip")
+        {
+          if (no_oct_file_strip_on_this_platform)
+            cerr << "mkoctfile: stripping disabled on this platform" << endl;
+          else
+            strip = true;
+        }
+      else if (arg == "-c" || arg == "-compile" || arg == "--compile")
+        {
+          link = false;
+        }
+      else if (arg == "-g")
+        {
+          vars["ALL_CFLAGS"] += " -g";
+          vars["ALL_CXXFLAGS"] += " -g";
+          vars["ALL_FFLAGS"] += " -g";
+        }
+      else if (arg == "-link-stand-alone" || arg == "--link-stand-alone")
+        {
+          link_stand_alone = true;
+        }
+      else if (arg == "-mex" || arg == "--mex")
+        {
+          incflags += " -I.";
+#ifdef _MSC_VER
+          ldflags += " -Wl,-export:mexFunction";
+#endif
+          output_ext = ".mex";
+        }
+      else if (starts_with (arg, "-W"))
+        {
+          pass_on_options += (" " + arg);
+        }
+      else
+        {
+          cerr << "mkoctfile: unrecognized argument " << arg;
+          return 1;
+        }
+
+      if (!file.empty () && octfile.empty ())
+        octfile = file;
+    }
+
+  if (link_stand_alone)
+    {
+      if (!outputfile.empty ())
+        output_option = "-o " + outputfile;
+    }
+  else
+    {
+      if (!outputfile.empty ())
+        {
+          octfile = outputfile;
+          size_t len = octfile.length ();
+          size_t len_ext = output_ext.length ();
+          if (octfile.substr (len-len_ext) != output_ext)
+            octfile += output_ext;
+        }
+      else
+        octfile = basename (octfile, true) + output_ext;
+    }
+
+  list<string>::const_iterator it;
+
+  if (depend)
+    {
+      for (it = cfiles.begin (); it != cfiles.end (); ++it)
+        {
+          string f = *it, dfile = basename (f, true) + ".d", line;
+
+          unlink (dfile.c_str ());
+          string cmd = vars["CC"] + " " + vars["DEPEND_FLAGS"] + " "
+            + vars["CPPFLAGS"] + " " + vars["ALL_CFLAGS"] + " "
+            + incflags  + " " + defs + " " + quote_path (f);
+
+          FILE *fd = popen (cmd.c_str (), "r");
+          ofstream fo (dfile.c_str ());
+          int pos;
+          while (!feof (fd))
+            {
+              line = get_line (fd);
+              if ((pos = line.rfind (".o:")) != string::npos)
+                {
+                  int spos = line.rfind ('/', pos);
+                  string ofile = (spos == string::npos ? line.substr (0, pos+2) : line.substr (spos+1, pos-spos+1));
+                  fo << "pic/" << ofile << " " << ofile << " " << dfile << line.substr (pos) << endl;
+                }
+              else
+                fo << line << endl;
+            }
+          pclose (fd);
+          fo.close ();
+        }
+
+      for (it = ccfiles.begin (); it != ccfiles.end (); ++it)
+        {
+          string f = *it, dfile = basename (f, true) + ".d", line;
+
+          unlink (dfile.c_str ());
+          string cmd = vars["CC"] + " " + vars["DEPEND_FLAGS"] + " "
+            + vars["CPPFLAGS"] + " " + vars["ALL_CXXFLAGS"] + " "
+            + incflags  + " " + defs + " " + quote_path (f);
+
+          FILE *fd = popen (cmd.c_str (), "r");
+          ofstream fo (dfile.c_str ());
+          int pos;
+          while (!feof (fd))
+            {
+              line = get_line (fd);
+              if ((pos = line.rfind (".o:")) != string::npos)
+                {
+                  int spos = line.rfind ('/', pos);
+                  string ofile = (spos == string::npos ? line.substr (0, pos+2) : line.substr (spos+1, pos-spos+1));
+                  fo << "pic/" << ofile << " " << ofile << " " << dfile << line.substr (pos+2) << endl;
+                }
+              else
+                fo << line << endl;
+            }
+          pclose (fd);
+          fo.close ();
+        }
+
+      return 0;
+    }
+
+  for (it = f77files.begin (); it != f77files.end (); ++it)
+    {
+      string f = *it, b = basename (f, true);
+      if (!vars["F77"].empty ())
+        {
+          string o;
+          if (!outputfile.empty ())
+            {
+              if (link)
+                o = b + ".o";
+              else
+                o = outputfile;
+            }
+          else
+            o = b + ".o";
+          objfiles += (" " + o);
+          string cmd = vars["F77"] + " -c " + vars["FPICFLAG"] + " "
+            + vars["ALL_FFLAGS"] + " " + incflags + " " + defs + " "
+            + pass_on_options + " " + f + " -o " + o;
+          result = run_command (cmd);
+        }
+      else
+        {
+          cerr << "mkoctfile: no way to compile Fortran file " << f << endl;
+          return 1;
+        }
+    }
+
+  for (it = cfiles.begin (); it != cfiles.end (); ++it)
+    {
+      string f = *it;
+      if (!vars["CC"].empty ())
+        {
+          string b = basename (f, true), o;
+          if (!outputfile.empty ())
+            {
+              if (link)
+                o = b + ".o";
+              else
+                o = outputfile;
+            }
+          else
+            o = b + ".o";
+          objfiles += (" " + o);
+          string cmd = vars["CC"] + " -c " + vars["CPPFLAGS"] + " "
+            + vars["CPICFLAG"] + " " + vars["ALL_CFLAGS"] + " "
+            + pass_on_options + " " + incflags + " " + defs + " "
+            + quote_path (f) + " -o " + quote_path (o);
+          result = run_command (cmd);
+        }
+      else
+        {
+          cerr << "mkoctfile: no way to compile C file " << f << endl;
+          return 1;
+        }
+    }
+
+  for (it = ccfiles.begin (); it != ccfiles.end (); ++it)
+    {
+      string f = *it;
+      if (!vars["CXX"].empty ())
+        {
+          string b = basename (f, true), o;
+          if (!outputfile.empty ())
+            {
+              if (link)
+                o = b + ".o";
+              else
+                o = outputfile;
+            }
+          else
+            o = b + ".o";
+          objfiles += (" " + o);
+          string cmd = vars["CXX"] + " -c " + vars["CPPFLAGS"] + " "
+            + vars["CXXPICFLAG"] + " " + vars["ALL_CXXFLAGS"] + " "
+            + pass_on_options + " " + incflags + " " + defs + " "
+            + quote_path (f) + " -o " + quote_path (o);
+          result = run_command (cmd);
+        }
+      else
+        {
+          cerr << "mkoctfile: no way to compile C++ file " << f << endl;
+          return 1;
+        }
+    }
+
+  if (link && !objfiles.empty ())
+    {
+      if (link_stand_alone)
+        {
+          if (!vars["LD_CXX"].empty ())
+            {
+              string cmd = vars["LD_CXX"] + " " + vars["CPPFLAGS"] + " "
+                + vars["ALL_CXXFLAGS"] + " " + vars["RDYNAMIC_FLAG"]
+                + " " + vars["ALL_LDFLAGS"] + " " +  pass_on_options
+                + " " + output_option + " " + objfiles + " " + libfiles
+                + " " + ldflags + " " + vars["LFLAGS"] + " "
+                + vars["RLD_FLAG"] + " " + vars["OCTAVE_LIBS"] + " "
+                + vars["LAPACK_LIBS"] + " " + vars["BLAS_LIBS"] + " "
+                + vars["FFTW_LIBS"] + " " + vars["READLINE_LIBS"] + " "
+                + vars["LIBS"] + " " + vars["FLIBS"];
+              result = run_command (cmd);
+            }
+          else
+            {
+              cerr << "mkoctfile: no way to link stand-alone executable file"
+                   << endl;
+              return 1;
+            }
+        }
+      else
+        {
+          string LINK_DEPS = vars["LFLAGS"] + " " + vars["OCTAVE_LIBS"]
+            + " " + vars["LDFLAGS"] + " " + vars["BLAS_LIBS"] + " "
+            + vars["FFTW_LIBS"] + " " + vars["LIBS"] + " " + vars["FLIBS"];
+          string cmd = vars["DL_LD"] + " " + vars["DL_LDFLAGS"] + " "
+            + pass_on_options + " -o " + octfile + " " + objfiles + " "
+            + libfiles + " " + ldflags + " " + LINK_DEPS;
+          result = run_command (cmd);
+        }
+
+      if (strip)
+        {
+          string cmd = "strip " + octfile;
+          result = run_command (cmd);
+        }
+    }
+
+  return result;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mkoctfile.in	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,555 @@
+#! /bin/sh
+##
+## mkoctfile -- create a .oct file suitable for dynamic linking by
+## Octave.
+##
+## Copyright (C) 1996-2011 John W. Eaton
+##
+## This file is part of Octave.
+##
+## Octave is free software; you can redistribute it and/or modify it
+## under the terms of the GNU General Public License as published by the
+## Free Software Foundation; either version 3 of the License, or (at
+## your option) any later version.
+##
+## Octave is distributed in the hope that it will be useful, but WITHOUT
+## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+## for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
+
+# Exit immediately on any error.
+
+set -e
+
+: ${SED=%OCTAVE_CONF_SED%}
+
+OCTAVE_VERSION=%OCTAVE_CONF_VERSION%
+OCTAVE_PREFIX=%OCTAVE_CONF_PREFIX%
+
+DEFAULT_BINDIR=%OCTAVE_BINDIR%
+DEFAULT_INCLUDEDIR=%OCTAVE_CONF_INCLUDEDIR%
+DEFAULT_LIBDIR=%OCTAVE_CONF_LIBDIR%
+DEFAULT_OCTINCLUDEDIR=%OCTAVE_CONF_OCTINCLUDEDIR%
+DEFAULT_OCTLIBDIR=%OCTAVE_CONF_OCTLIBDIR%
+
+if [ -n "$OCTAVE_HOME" ]; then
+  DEFAULT_BINDIR="`echo $DEFAULT_BINDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
+  DEFAULT_INCLUDEDIR="`echo $DEFAULT_INCLUDEDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
+  DEFAULT_LIBDIR="`echo $DEFAULT_LIBDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
+  DEFAULT_OCTINCLUDEDIR="`echo $DEFAULT_OCTINCLUDEDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
+  DEFAULT_OCTLIBDIR="`echo $DEFAULT_OCTLIBDIR | $SED "s,^$OCTAVE_PREFIX,$OCTAVE_HOME,"`"
+fi
+
+: ${BINDIR=$DEFAULT_BINDIR}
+: ${INCLUDEDIR=$DEFAULT_INCLUDEDIR}
+: ${LIBDIR=$DEFAULT_LIBDIR}
+: ${OCTINCLUDEDIR=$DEFAULT_OCTINCLUDEDIR}
+: ${OCTLIBDIR=$DEFAULT_OCTLIBDIR}
+
+DEFAULT_INCFLAGS="-I$OCTINCLUDEDIR/.. -I$OCTINCLUDEDIR"
+if [ "$INCLUDEDIR" != /usr/include ]; then
+  DEFAULT_INCFLAGS="$DEFAULT_INCFLAGS -I$INCLUDEDIR"
+fi
+
+DEFAULT_LFLAGS="-L$OCTLIBDIR"
+if [ "$LIBDIR" != /usr/lib ]; then
+  DEFAULT_LFLAGS="$DEFAULT_LFLAGS -L$LIBDIR"
+fi
+
+# Default values for these variables are filled in when Octave is
+# compiled.
+
+: ${EXEEXT=%OCTAVE_CONF_EXEEXT%}
+
+: ${CPPFLAGS=%OCTAVE_CONF_CPPFLAGS%}
+: ${INCFLAGS=$DEFAULT_INCFLAGS}
+: ${F77=%OCTAVE_CONF_F77%}
+: ${FFLAGS=%OCTAVE_CONF_FFLAGS%}
+: ${FPICFLAG=%OCTAVE_CONF_FPICFLAG%}
+: ${CC=%OCTAVE_CONF_CC%}
+: ${CFLAGS=%OCTAVE_CONF_CFLAGS%}
+: ${CPICFLAG=%OCTAVE_CONF_CPICFLAG%}
+: ${CXX=%OCTAVE_CONF_CXX%}
+: ${CXXFLAGS=%OCTAVE_CONF_CXXFLAGS%}
+: ${CXXPICFLAG=%OCTAVE_CONF_CXXPICFLAG%}
+: ${XTRA_CFLAGS=%OCTAVE_CONF_XTRA_CFLAGS%}
+: ${XTRA_CXXFLAGS=%OCTAVE_CONF_XTRA_CXXFLAGS%}
+
+: ${DEPEND_FLAGS=%OCTAVE_CONF_DEPEND_FLAGS%}
+: ${DEPEND_EXTRA_SED_PATTERN=%OCTAVE_CONF_DEPEND_EXTRA_SED_PATTERN%}
+
+: ${DL_LD=%OCTAVE_CONF_DL_LD%}
+: ${DL_LDFLAGS=%OCTAVE_CONF_MKOCTFILE_DL_LDFLAGS%}
+
+: ${RLD_FLAG=%OCTAVE_CONF_RLD_FLAG%}
+: ${RDYNAMIC_FLAG=%OCTAVE_CONF_RDYNAMIC_FLAG%}
+: ${LIBOCTAVE=-loctave}
+: ${LIBOCTINTERP=-loctinterp}
+: ${READLINE_LIBS=-lreadline}
+: ${LIBCRUFT=-lcruft}
+: ${LAPACK_LIBS=%OCTAVE_CONF_LAPACK_LIBS%}
+: ${BLAS_LIBS=%OCTAVE_CONF_BLAS_LIBS%}
+: ${FFTW3_LDFLAGS=%OCTAVE_CONF_FFTW3_LDFLAGS%}
+: ${FFTW3_LIBS=%OCTAVE_CONF_FFTW3_LIBS%}
+: ${FFTW3F_LDFLAGS=%OCTAVE_CONF_FFTW3F_LDFLAGS%}
+: ${FFTW3F_LIBS=%OCTAVE_CONF_FFTW3F_LIBS%}
+: ${LIBS=%OCTAVE_CONF_LIBS%}
+: ${FLIBS=%OCTAVE_CONF_FLIBS%}
+: ${LD_CXX=%OCTAVE_CONF_LD_CXX%}
+: ${LDFLAGS=%OCTAVE_CONF_LDFLAGS%}
+: ${LD_STATIC_FLAG=%OCTAVE_CONF_LD_STATIC_FLAG%}
+: ${LFLAGS=$DEFAULT_LFLAGS}
+: ${F77_INTEGER_8_FLAG=%OCTAVE_CONF_F77_INTEGER_8_FLAG%}
+
+: ${ALL_FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"}
+
+: ${ALL_CFLAGS="$INCFLAGS $XTRA_CFLAGS $CFLAGS"}
+
+: ${ALL_CXXFLAGS="$INCFLAGS $XTRA_CXXFLAGS $CXXFLAGS"}
+
+: ${ALL_LDFLAGS="$LD_STATIC_FLAG $CPICFLAG $LDFLAGS"}
+
+: ${OCTAVE_LIBS="$LIBOCTINTERP $LIBOCTAVE $SPECIAL_MATH_LIB $LIBCRUFT"}
+
+# Local variables.
+
+FFTW_LIBS="$FFTW3_LDFLAGS $FFTW3_LIBS $FFTW3F_LDFLAGS $FFTW3F_LIBS"
+
+usage_msg="usage: mkoctfile [options] file ..."
+
+version_msg="mkoctfile, version $OCTAVE_VERSION"
+
+cfiles=
+ccfiles=
+f77files=
+objfiles=
+libfiles=
+octfiles=
+octfile=
+outputfile=
+incflags=
+defs=
+ldflags=
+dbg=:
+pass_on_options=
+strip=false
+no_oct_file_strip_on_this_platform=%NO_OCT_FILE_STRIP%
+link=true
+link_stand_alone=false
+output_ext=".oct"
+depend=false
+compile=true
+
+if [ $# -eq 0 ]; then
+  echo $usage_msg 1>&2
+  exit 1
+fi
+
+if [ $# -eq 1 ]; then
+  case "$1" in
+    -v | -version | --version)
+      echo $version_msg 1>&2
+      exit 0
+    ;;
+  esac
+fi
+
+while [ $# -gt 0 ]; do
+  file=
+  case "$1" in
+    *.c)
+      file=$1
+      cfiles="$cfiles $file"
+    ;;
+    *.cc | *.C | *.cpp)
+      file=$1
+      ccfiles="$ccfiles $file"
+    ;;
+    *.f | *.F | *.f90 | *.F90)
+      file=$1
+      f77files="$f77files $file"
+    ;;
+    *.o)
+      file=$1
+      objfiles="$objfiles $file"
+    ;;
+    *.a)
+      file=$1
+      libfiles="$libfiles $file"
+    ;;
+    -d | -debug | --debug | -v | -verbose | --verbose)
+      dbg=echo
+    ;;
+    -h | -\? | -help | --help)
+      echo $usage_msg 1>&2
+      cat << EOF
+
+Options:
+
+  -h, -?, --help          Print this message.
+
+  -IDIR                   Add -IDIR to compile commands.
+
+  -idirafter DIR          Add -idirafter DIR to compile commands.
+
+  -DDEF                   Add -DDEF to compile commands.
+
+  -lLIB                   Add -lLIB to link command.
+
+  -LDIR                   Add -LDIR to link command.
+
+  -RDIR                   Add -RDIR to link command.
+
+  -g                      Enable debugging option for all compilers.
+
+  -pthread                Add -pthread to link command.
+
+  -W...                   Pass flags to the compiler such as -Wa,OPTION.
+
+  -Wl,...                 Pass flags to the linker such as -Wl,-rpath=...
+
+  -M, --depend            Generate dependency files (.d) for C and C++
+                          source files.
+
+  -c, --compile           Compile, but do not link.
+
+  --link-stand-alone      Link a stand-alone executable file.
+
+  -s, --strip             Strip output file.
+
+  --mex                   Create a MEX file.  
+                          Set the default output extension to ".mex".
+
+  -o FILE, --output FILE  Output file name.  Default extension is .oct
+                          (or .mex if --mex is specified) unless linking
+                          a stand-alone executable.
+
+  -p VAR, --print VAR     Print configuration variable VAR.  Recognized
+                          variables are:
+
+                            ALL_CFLAGS                FFTW3F_LDFLAGS
+                            ALL_CXXFLAGS              FFTW3F_LIBS
+                            ALL_FFLAGS                FLIBS
+                            ALL_LDFLAGS               FPICFLAG
+                            BLAS_LIBS                 INCFLAGS
+                            CC                        LAPACK_LIBS
+                            CFLAGS                    LDFLAGS
+                            CPICFLAG                  LD_CXX
+                            CPPFLAGS                  LD_STATIC_FLAG
+                            CXX                       LFLAGS
+                            CXXFLAGS                  LIBCRUFT
+                            CXXPICFLAG                LIBOCTAVE
+                            DEPEND_EXTRA_SED_PATTERN  LIBOCTINTERP
+                            DEPEND_FLAGS              LIBS
+                            DL_LD                     OCTAVE_LIBS
+                            DL_LDFLAGS                RDYNAMIC_FLAG
+                            EXEEXT                    READLINE_LIBS
+                            F77                       RLD_FLAG
+                            F77_INTEGER_8_FLAG        SED
+                            FFLAGS                    XTRA_CFLAGS
+                            FFTW3_LDFLAGS             XTRA_CXXFLAGS
+                            FFTW3_LIBS
+
+  -v, --verbose           Echo commands as they are executed.
+
+  FILE                    Compile or link FILE.  Recognized file types are:
+
+                            .c    C source
+                            .cc   C++ source
+                            .C    C++ source
+                            .cpp  C++ source
+                            .f    Fortran source (fixed form)
+                            .F    Fortran source (fixed form)
+                            .f90  Fortran source (free form)
+                            .F90  Fortran source (free form)
+                            .o    object file
+                            .a    library file
+
+EOF
+      exit 0
+    ;;
+    -I*)
+      incflags="$incflags $1"
+    ;;
+    -idirafter)
+      shift
+      if [ $# -gt 0 ]; then
+        incflags="$incflags -idirafter $1"
+      else
+        echo "mkoctfile: include directory name missing" 1>&2
+      fi
+    ;;
+    -D*)
+      defs="$defs $1"
+    ;;
+    -[lLR]* | -Wl,*)
+      ldflags="$ldflags $1"
+    ;;
+    -pthread)
+      ldflags="$ldflags $1"
+    ;;
+    -M | -depend | --depend)
+      depend=true
+      compile=false
+    ;;
+    -o | -ouput | --output)
+      shift
+      if [ $# -gt 0 ]; then
+        outputfile="$1"
+      else
+        echo "mkoctfile: output file name missing" 1>&2
+      fi
+    ;;
+    -p | -print | --print)
+      shift
+      if [ $# -gt 0 ]; then
+        eval echo \${$1}
+        exit 0
+      else
+        echo "mkoctfile: --print requires argument" 1>&2
+        exit 1
+      fi
+    ;;
+    -s | -strip | --strip)
+      if $no_oct_file_strip_on_this_platform; then
+        echo "mkoctfile: stripping disabled on this platform" 1>&2
+      else
+        strip=true
+      fi
+    ;;
+    -c | -compile | --compile)
+      link=false
+    ;;
+    -g)
+      ALL_CFLAGS="$ALL_CFLAGS -g"
+      ALL_CXXFLAGS="$ALL_CXXFLAGS -g"
+      ALL_FFLAGS="$ALL_FFLAGS -g"
+    ;;
+    -link-stand-alone | --link-stand-alone)
+      link_stand_alone=true
+    ;;
+    -mex | --mex)
+      incflags="$incflags -I."
+      output_ext=".mex"
+    ;;
+    -W,*)
+      pass_on_options="$pass_on_options ${1:3}"
+    ;;
+    *)
+      echo "mkoctfile: unrecognized argument $1" 1>&2
+      exit 1
+    ;;
+  esac
+  if [ -n "$file" ]; then
+    if [ -z "$octfile" ]; then
+      octfile="$file"
+    fi
+  fi
+  shift
+done
+
+if $link_stand_alone; then
+  if [ -n "$outputfile" ]; then
+    output_option="-o $outputfile"
+  fi
+else
+  if [ -n "$outputfile" ]; then
+    octfile="$outputfile"
+    case "$octfile" in
+      *$output_ext)
+      ;;
+      *)
+        octfile="$octfile$output_ext"
+      ;;
+    esac
+  else
+    octfile=`basename $octfile`
+    octfile=`echo $octfile | $SED 's,\.[^.]*$,,'`$output_ext
+  fi
+fi
+
+# Generate dependency files for C and C++ files.
+
+if $depend; then
+  if [ -n "$cfiles" ]; then
+    for f in $cfiles; do
+      b=`echo $f | $SED 's,\.c$,,'`
+      d=$b.d
+      cmd="rm -f $d"
+      $dbg $cmd
+      eval $cmd
+      cmd="$CC $DEPEND_FLAGS $CPPFLAGS $ALL_CFLAGS $incflags $def $f | $SED $DEPEND_EXTRA_SED_PATTERN -e 's,^[^:]*/\(.*\.o\):,\1:,' -e 's,$b\.o,pic/& & $d,g' > $d-t && mv $d-t $d"
+      $dbg $cmd
+      eval $cmd
+    done
+  fi
+
+  if [ -n "$ccfiles" ]; then
+    for f in $ccfiles; do
+      case $f in
+        *.cc)
+          b=`echo $f | $SED 's,\.cc$,,'`
+        ;;
+        *.C)
+          b=`echo $f | $SED 's,\.C$,,'`
+        ;;
+        *.cpp)
+          b=`echo $f | $SED 's,\.cpp$,,'`
+        ;;
+      esac
+      d=$b.d
+      cmd="rm -f $d"
+      $dbg $cmd
+      eval $cmd
+      cmd="$CXX $DEPEND_FLAGS $CPPFLAGS $ALL_CXXFLAGS $incflags $defs $f | $SED $DEPEND_EXTRA_SED_PATTERN -e 's,^[^:]*/\(.*\.o\):,\1:,' -e 's,$b\.o,pic/& & $d,g' > $d-t && mv $d-t $d"
+      $dbg $cmd
+      eval $cmd
+    done
+  fi
+  # If generating dependencies, that's all we do.
+  exit 0
+fi
+
+# Compile Fortran, C, and C++ files.  Add the name of each object file
+# that is produced to the overall list of object files.
+
+if [ -n "$f77files" ]; then
+  for f in $f77files; do
+    case $f in
+      *.f)
+        b=`echo $f | $SED 's,.*/,,; s,\.f$,,'`
+      ;;
+      *.F)
+        b=`echo $f | $SED 's,.*/,,; s,\.F$,,'`
+      ;;
+      *.f90)
+        b=`echo $f | $SED 's,.*/,,; s,\.f90$,,'`
+      ;;
+      *.F90)
+        b=`echo $f | $SED 's,.*/,,; s,\.F90$,,'`
+      ;;
+    esac
+    if [ -n "$F77" ]; then
+      if [ -n "$outputfile" ]; then
+        if $link; then
+          o=$b.o
+        else
+          o=$outputfile
+        fi
+      else
+        o=$b.o
+      fi
+      objfiles="$objfiles $o"
+      cmd="$F77 -c $FPICFLAG $ALL_FFLAGS $incflags $defs $pass_on_options $f -o $o"
+      $dbg $cmd
+      eval $cmd
+    else
+      echo "mkoctfile: no way to compile Fortran file $f" 1>&2
+    fi
+  done
+fi
+
+if [ -n "$cfiles" ]; then
+  for f in $cfiles; do
+    if [ -n  "$CC" ]; then
+      b=`echo $f | $SED 's,.*/,,; s,\.c$,,'`
+      if [ -n "$outputfile" ]; then
+        if $link; then
+          o=$b.o
+        else
+          o=$outputfile
+        fi
+      else
+        o=$b.o
+      fi
+      objfiles="$objfiles $o"
+      cmd="$CC -c $CPPFLAGS $CPICFLAG $ALL_CFLAGS $pass_on_options $incflags $defs $f -o $o"
+      $dbg $cmd
+      eval $cmd
+    else
+      echo "mkoctfile: no way to compile C++ file $f" 1>&2
+    fi
+  done
+fi
+
+if [ -n "$ccfiles" ]; then
+  for f in $ccfiles; do
+    if [ -n "$CXX" ]; then
+      case $f in
+        *.cc)
+          b=`echo $f | $SED 's,.*/,,; s,\.cc$,,'`
+        ;;
+        *.C)
+          b=`echo $f | $SED 's,.*/,,; s,\.C$,,'`
+        ;;
+        *.cpp)
+          b=`echo $f | $SED 's,.*/,,; s,\.cpp$,,'`
+        ;;
+      esac
+      if [ -n "$outputfile" ]; then
+        if $link; then
+          o=$b.o
+        else
+          o=$outputfile
+        fi
+      else
+        o=$b.o
+      fi
+      objfiles="$objfiles $o"
+      cmd="$CXX -c $CPPFLAGS $CXXPICFLAG $ALL_CXXFLAGS $pass_on_options $incflags $defs $f -o $o"
+      $dbg $cmd
+      eval $cmd
+    else
+      echo "mkoctfile: no way to compile C++ file $f" 1>&2
+    fi
+  done
+fi
+
+## Uncomment the following group of lines if you get `Text file busy'
+## errors from ld.  This may happen if the .oct file is currently
+## running while you are trying to recompile it.  We try moving first,
+## since on some systems (HP-UX, maybe others) it is possible to
+## rename running programs but not remove them.
+
+## if [ -f "$octfile" ]; then
+##   cmd="mv $octfile $octfile.bak"
+##   $dbg $cmd
+##   eval $cmd
+##   cmd="rm -f $octfile.bak"
+##   $dbg $cmd
+##   eval $cmd
+## fi
+
+# Link all the object files.
+
+if $link && [ -n "$objfiles" ]; then
+  if $link_stand_alone; then
+    if [ -n "$LD_CXX" ]; then
+      cmd="$LD_CXX $CPPFLAGS $ALL_CXXFLAGS $RDYNAMIC_FLAG $ALL_LDFLAGS $pass_on_options $output_option $objfiles $libfiles $ldflags $LFLAGS $RLD_FLAG $OCTAVE_LIBS $LAPACK_LIBS $BLAS_LIBS $FFTW_LIBS $READLINE_LIBS $LIBS $FLIBS"
+      $dbg $cmd
+      eval $cmd
+    else
+      echo "mkoctfile: no way to link stand-alone executable file" 1>&2
+      exit 1
+    fi
+  else
+    LINK_DEPS="$LFLAGS $OCTAVE_LIBS $LDFLAGS $LAPACK_LIBS $BLAS_LIBS $FFTW_LIBS $LIBS $FLIBS"
+    cmd="$DL_LD $DL_LDFLAGS $pass_on_options -o $octfile $objfiles $libfiles $ldflags $LINK_DEPS"
+    $dbg $cmd
+    eval $cmd
+  fi
+
+# Maybe strip it.
+
+  if $strip; then
+    cmd="strip $octfile"
+    $dbg $cmd
+    eval $cmd
+  fi
+fi
+
+exit 0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/octave-config.cc.in	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,224 @@
+/*
+
+Copyright (C) 2008-2011 Michael Goffioul
+
+This file is part of Octave.
+
+Octave is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 3 of the License, or (at your
+option) any later version.
+
+Octave is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+for more details.
+
+You should have received a copy of the GNU General Public License
+along with Octave; see the file COPYING.  If not, see
+<http://www.gnu.org/licenses/>.
+
+*/
+
+#if defined (HAVE_CONFIG_H)
+#include <config.h>
+#endif
+
+#include <string>
+#include <map>
+#include <iostream>
+#include <algorithm>
+#include <cstdlib>
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+#include <windows.h>
+#endif
+
+static bool initialized = false;
+static std::map<std::string,std::string> vars;
+static std::string OCTAVE_HOME, PREFIX;
+static std::string usage_msg = "usage: octave-config [options]";
+static std::string help_msg =
+"\n"
+"Options:\n"
+"\n"
+"  -h, -?, --help        Print this message.\n"
+"\n"
+"  --m-site-dir          Print the name of the directory where Octave\n"
+"                        expects to find locally installed .m files.\n"
+"\n"
+"  --oct-site-dir        Print the name of the directory where Octave\n"
+"                        expects to find locally installed .oct files.\n"
+"\n"
+"  -p VAR, --print VAR   Print the value of the given configuration\n"
+"		        variable VAR.  Recognized variables are:\n"
+"\n"
+"			  API_VERSION	         LOCALAPIARCHLIBDIR\n"
+"			  CANONICAL_HOST_TYPE	 LOCALAPIFCNFILEDIR\n"
+"			  DEFAULT_PAGER	         LOCALAPIOCTFILEDIR\n"
+"			  ARCHLIBDIR	         LOCALARCHLIBDIR\n"
+"			  BINDIR	         LOCALFCNFILEDIR\n"
+"			  DATADIR	         LOCALOCTFILEDIR\n"
+"			  DATAROOTDIR	         LOCALSTARTUPFILEDIR\n"
+"			  EXEC_PREFIX	         LOCALVERARCHLIBDIR\n"
+"			  FCNFILEDIR		 LOCALVERFCNFILEDIR\n"
+"			  LOCALVEROCTFILEDIR	 MAN1DIR\n"
+"			  IMAGEDIR	         MANDIR\n"
+"			  MAN1EXT	         OCTFILEDIR\n"
+"			  INCLUDEDIR	         OCTINCLUDEDIR\n"
+"			  INFODIR	         OCTLIBDIR\n"
+"			  INFOFILE	         PREFIX\n"
+"			  LIBDIR	         STARTUPFILEDIR\n"
+"			  LIBEXECDIR		 VERSION\n"
+"\n"
+"  -v, --version         Print the Octave version number.\n"
+"\n";
+
+static std::string
+substitute_prefix (const std::string& s, const std::string& prefix,
+		   const std::string new_prefix)
+{
+  std::string retval = s;
+
+  if (!prefix.empty () && new_prefix != prefix)
+    {
+      int len = prefix.length ();
+      if (retval.find (prefix) == 0)
+	retval.replace (0, len, new_prefix);
+    }
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+  std::replace (retval.begin (), retval.end (), '/', '\\');
+#endif
+
+  return retval;
+}
+
+static void
+initialize (void)
+{
+  if (initialized)
+    return;
+
+  initialized = true;
+
+  const char *homestr = getenv ("OCTAVE_HOME");
+  OCTAVE_HOME = (homestr ? homestr : "");
+  PREFIX = %OCTAVE_PREFIX%;
+
+#if defined (__WIN32__) && ! defined (_POSIX_VERSION)
+  int n = 1024;
+
+  std::string bin_dir (n, '\0');
+
+  while (true)
+    {
+      int status = GetModuleFileName (0, &bin_dir[0], n);
+
+      if (status < n)
+	{
+	  bin_dir.resize (status);
+	  break;
+	}
+      else
+	{
+	  n *= 2;
+	  bin_dir.resize (n);
+	}
+    }
+
+  if (! bin_dir.empty ())
+    {
+      size_t pos = bin_dir.rfind ("\\bin\\");
+
+      if (pos != std::string::npos)
+	OCTAVE_HOME = bin_dir.substr (0, pos);
+    }
+#endif
+
+  vars["API_VERSION"] = %OCTAVE_API_VERSION%;
+  vars["CANONICAL_HOST_TYPE"] = %OCTAVE_CANONICAL_HOST_TYPE%;
+  vars["DEFAULT_PAGER"] = %OCTAVE_DEFAULT_PAGER%;
+  vars["ARCHLIBDIR"] = substitute_prefix (%OCTAVE_ARCHLIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["BINDIR"] = substitute_prefix (%OCTAVE_BINDIR%, PREFIX, OCTAVE_HOME);
+  vars["DATADIR"] =substitute_prefix (%OCTAVE_DATADIR%, PREFIX, OCTAVE_HOME);
+  vars["DATAROOTDIR"] =substitute_prefix (%OCTAVE_DATAROOTDIR%, PREFIX, OCTAVE_HOME);
+  vars["EXEC_PREFIX"] =substitute_prefix (%OCTAVE_EXEC_PREFIX%, PREFIX, OCTAVE_HOME);
+  vars["FCNFILEDIR"] =substitute_prefix (%OCTAVE_FCNFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["IMAGEDIR"] =substitute_prefix (%OCTAVE_IMAGEDIR%, PREFIX, OCTAVE_HOME);
+  vars["INCLUDEDIR"] =substitute_prefix (%OCTAVE_INCLUDEDIR%, PREFIX, OCTAVE_HOME);
+  vars["INFODIR"] =substitute_prefix (%OCTAVE_INFODIR%, PREFIX, OCTAVE_HOME);
+  vars["INFOFILE"] =substitute_prefix (%OCTAVE_INFOFILE%, PREFIX, OCTAVE_HOME);
+  vars["LIBDIR"] =substitute_prefix (%OCTAVE_LIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["LIBEXECDIR"] =substitute_prefix (%OCTAVE_LIBEXECDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALAPIARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALAPIARCHLIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALAPIFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALAPIFCNFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALAPIOCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALAPIOCTFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALARCHLIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALFCNFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALOCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALOCTFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALSTARTUPFILEDIR"] =substitute_prefix (%OCTAVE_LOCALSTARTUPFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALVERARCHLIBDIR"] =substitute_prefix (%OCTAVE_LOCALVERARCHLIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALVERFCNFILEDIR"] =substitute_prefix (%OCTAVE_LOCALVERFCNFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["LOCALVEROCTFILEDIR"] =substitute_prefix (%OCTAVE_LOCALVEROCTFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["MAN1DIR"] =substitute_prefix (%OCTAVE_MAN1DIR%, PREFIX, OCTAVE_HOME);
+  vars["MAN1EXT"] = %OCTAVE_MAN1EXT%;
+  vars["MANDIR"] =substitute_prefix (%OCTAVE_MANDIR%, PREFIX, OCTAVE_HOME);
+  vars["OCTFILEDIR"] =substitute_prefix (%OCTAVE_OCTFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["OCTINCLUDEDIR"] =substitute_prefix (%OCTAVE_OCTINCLUDEDIR%, PREFIX, OCTAVE_HOME);
+  vars["OCTLIBDIR"] =substitute_prefix (%OCTAVE_OCTLIBDIR%, PREFIX, OCTAVE_HOME);
+  vars["PREFIX"] = (OCTAVE_HOME.empty() ? PREFIX : OCTAVE_HOME);
+  vars["STARTUPFILEDIR"] =substitute_prefix (%OCTAVE_STARTUPFILEDIR%, PREFIX, OCTAVE_HOME);
+  vars["VERSION"] = %OCTAVE_VERSION%;
+}
+
+int
+main (int argc, char **argv)
+{
+  initialize ();
+
+  if (argc == 1)
+    {
+      std::cout << usage_msg << std::endl;
+      return 1;
+    }
+
+  for (int i = 1; i < argc; i++)
+    {
+      std::string arg (argv[i]);
+
+      if (arg == "-h" || arg == "-?" || arg == "--help")
+	{
+	  std::cout << usage_msg << std::endl;
+	  std::cout << help_msg;
+	  return 0;
+	}
+      else if (arg == "--m-site-dir")
+	std::cout << vars["LOCALVERFCNFILEDIR"] << std::endl;
+      else if (arg == "--oct-site-dir")
+	std::cout << vars["LOCALVEROCTFILEDIR"] << std::endl;
+      else if (arg == "-v" || arg == "--version")
+	std::cout << vars["VERSION"] << std::endl;
+      else if (arg == "-p" || arg == "--print")
+	{
+	  if (i < argc-1)
+	    {
+	      arg = argv[++i];
+	      std::cout << vars[arg] << std::endl;
+	    }
+	  else
+	    {
+	      std::cerr << "octave-config: " << arg
+			<< " options requires argument" << std::endl;
+	      return 1;
+	    }
+	}
+      else
+	{
+	  std::cerr << "octave-config: unrecognized argument " << arg << std::endl;
+	  return 1;
+	}
+    }
+  
+  return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/octave-config.in	Fri Jun 10 14:35:42 2011 -0400
@@ -0,0 +1,168 @@
+#! /bin/sh -
+##
+## octave-config - reports some configuration values for Octave
+##
+## Copyright (C) 2001-2011 John W. Eaton
+##
+## This file is part of Octave.
+##
+## Octave is free software; you can redistribute it and/or modify it
+## under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or (at
+## your option) any later version.
+##
+## Octave is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
+## 
+## Original version by Rafael Laboissiere <rafael@laboissiere.net>
+## distributed as free software in the public domain.
+
+API_VERSION=%OCTAVE_API_VERSION%
+CANONICAL_HOST_TYPE=%OCTAVE_CANONICAL_HOST_TYPE%
+DEFAULT_PAGER=%OCTAVE_DEFAULT_PAGER%
+ARCHLIBDIR=%OCTAVE_ARCHLIBDIR%
+BINDIR=%OCTAVE_BINDIR%
+DATADIR=%OCTAVE_DATADIR%
+DATAROOTDIR=%OCTAVE_DATAROOTDIR%
+EXEC_PREFIX=%OCTAVE_EXEC_PREFIX%
+FCNFILEDIR=%OCTAVE_FCNFILEDIR%
+IMAGEDIR=%OCTAVE_IMAGEDIR%
+INCLUDEDIR=%OCTAVE_INCLUDEDIR%
+INFODIR=%OCTAVE_INFODIR%
+INFOFILE=%OCTAVE_INFOFILE%
+LIBDIR=%OCTAVE_LIBDIR%
+LIBEXECDIR=%OCTAVE_LIBEXECDIR%
+LOCALAPIARCHLIBDIR=%OCTAVE_LOCALAPIARCHLIBDIR%
+LOCALAPIFCNFILEDIR=%OCTAVE_LOCALAPIFCNFILEDIR%
+LOCALAPIOCTFILEDIR=%OCTAVE_LOCALAPIOCTFILEDIR%
+LOCALARCHLIBDIR=%OCTAVE_LOCALARCHLIBDIR%
+LOCALFCNFILEDIR=%OCTAVE_LOCALFCNFILEDIR%
+LOCALOCTFILEDIR=%OCTAVE_LOCALOCTFILEDIR%
+LOCALSTARTUPFILEDIR=%OCTAVE_LOCALSTARTUPFILEDIR%
+LOCALVERARCHLIBDIR=%OCTAVE_LOCALVERARCHLIBDIR%
+LOCALVERFCNFILEDIR=%OCTAVE_LOCALVERFCNFILEDIR%
+LOCALVEROCTFILEDIR=%OCTAVE_LOCALVEROCTFILEDIR%
+MAN1DIR=%OCTAVE_MAN1DIR%
+MAN1EXT=%OCTAVE_MAN1EXT%
+MANDIR=%OCTAVE_MANDIR%
+OCTFILEDIR=%OCTAVE_OCTFILEDIR%
+OCTINCLUDEDIR=%OCTAVE_OCTINCLUDEDIR%
+OCTLIBDIR=%OCTAVE_OCTLIBDIR%
+PREFIX=%OCTAVE_PREFIX%
+STARTUPFILEDIR=%OCTAVE_STARTUPFILEDIR%
+VERSION=%OCTAVE_VERSION%
+
+if [ -n "$OCTAVE_HOME" ]; then
+  ARCHLIBDIR="`echo $ARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  BINDIR="`echo $BINDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  DATADIR="`echo $DATADIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  DATAROOTDIR="`echo $DATAROOTDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  EXEC_PREFIX="`echo $EXEC_PREFIX | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  FCNFILEDIR="`echo $FCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  IMAGEDIR="`echo $IMAGEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  INCLUDEDIR="`echo $INCLUDEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  INFODIR="`echo $INFODIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  INFOFILE="`echo $INFOFILE | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LIBDIR="`echo $LIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LIBEXECDIR="`echo $LIBEXECDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALAPIARCHLIBDIR="`echo $LOCALAPIARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALAPIFCNFILEDIR="`echo $LOCALAPIFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALAPIOCTFILEDIR="`echo $LOCALAPIOCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALARCHLIBDIR="`echo $LOCALARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALFCNFILEDIR="`echo $LOCALFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALOCTFILEDIR="`echo $LOCALOCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALSTARTUPFILEDIR="`echo $LOCALSTARTUPFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALVERARCHLIBDIR="`echo $LOCALVERARCHLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALVERFCNFILEDIR="`echo $LOCALVERFCNFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  LOCALVEROCTFILEDIR="`echo $LOCALVEROCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  MAN1DIR="`echo $MAN1DIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  MANDIR="`echo $MANDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  OCTFILEDIR="`echo $OCTFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  OCTINCLUDEDIR="`echo $OCTINCLUDEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  OCTLIBDIR="`echo $OCTLIBDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+  STARTUPFILEDIR="`echo $STARTUPFILEDIR | sed "s,^$PREFIX,$OCTAVE_HOME,"`"
+
+  PREFIX="$OCTAVE_HOME"
+fi
+
+usage_msg="usage: octave-config [options]"
+
+if [ $# -eq 0 ]; then
+  echo "$usage_msg" 1>&2
+  exit 1
+fi
+
+while [ $# -gt 0 ]
+do
+  case "$1" in
+    -h | -\? | --help)
+      echo "$usage_msg"
+      cat << EOF
+
+Options:
+
+  -h, -?, --help        Print this message.
+
+  --m-site-dir          Print the name of the directory where Octave
+                        expects to find locally installed .m files.
+
+  --oct-site-dir        Print the name of the directory where Octave
+                        expects to find locally installed .oct files.
+
+  -p VAR, --print VAR   Print the value of the given configuration
+		        variable VAR.  Recognized variables are:
+
+                          API_VERSION             LOCALAPIOCTFILEDIR
+                          ARCHLIBDIR              LOCALARCHLIBDIR
+                          BINDIR                  LOCALFCNFILEDIR
+                          CANONICAL_HOST_TYPE     LOCALOCTFILEDIR
+                          DATADIR                 LOCALSTARTUPFILEDIR
+                          DATAROOTDIR             LOCALVERARCHLIBDIR
+                          DEFAULT_PAGER           LOCALVERFCNFILEDIR
+                          EXEC_PREFIX             LOCALVEROCTFILEDIR
+                          FCNFILEDIR              MAN1DIR
+                          IMAGEDIR                MAN1EXT
+                          INCLUDEDIR              MANDIR
+                          INFODIR                 OCTFILEDIR
+                          INFOFILE                OCTINCLUDEDIR
+                          LIBDIR                  OCTLIBDIR
+                          LIBEXECDIR              PREFIX
+                          LOCALAPIARCHLIBDIR      STARTUPFILEDIR
+                          LOCALAPIFCNFILEDIR      VERSION
+
+  -v, --version         Print the Octave version number.
+
+EOF
+      exit 0
+    ;;
+    --m-site-dir)
+      echo $LOCALVERFCNFILEDIR
+    ;;
+    --oct-site-dir)
+      echo $LOCALVEROCTFILEDIR
+    ;;
+    -v | --version)
+      echo $VERSION
+    ;;
+    -p | --print)
+      opt="$1"
+      shift
+      if [ $# -eq 0 ]; then
+        echo "octave-config: $opt option requires argument" 1>&2
+        exit 1
+      fi
+      eval echo \${$1}
+    ;;
+    *)
+      echo "octave-config: unrecognized argument $1" 2>&1
+      exit 1
+    ;;
+  esac
+  shift
+done
--- a/test/Makefile.am	Fri Jun 10 11:26:07 2011 -0400
+++ b/test/Makefile.am	Fri Jun 10 14:35:42 2011 -0400
@@ -18,7 +18,7 @@
 # along with Octave; see the file COPYING.  If not, see
 # <http://www.gnu.org/licenses/>.
 
-include $(top_srcdir)/common.mk
+include $(top_srcdir)/build-aux/common.mk
 
 FCN_FILES = \
   fntests.m \